@charset "UTF-8";


/*パソコン*/

@media screen and (min-width:601px) {
	body {
		margin: 0;
		box-sizing: border-box;
		overflow: auto;
		font: 15px/1.8 serif;
		font-family: 'Noto Sans JP', "YuGothic M";
	}
	p{
		margin:15px 0;
	}
	h2 {
		font-size: 26px;
		font-weight: bold;
		color: #0F1E79;
		display: inline-block;
	}
	h4 {
		font-size: 24px;
		font-weight: bold;
		text-align: center;
		line-height: 60px;
	}
	h5 {
		font-size: 15px;
		font-weight: bold;
		text-align: center;
	}
	input[type="checkbox"] {
		display: none;
	}
	.inner{
		margin:0 auto;
	}
	.inner_top{
		width: 100%;
		max-width: 1100px;
		margin: 0px auto;
		padding: 20px;
	}
	hr {
		height: 0px;
		margin: 0px 0;
		border: none;
		border-top: 1px solid #000;
	}
	div {
		overflow: hidden;
	}
	strong {
		font-weight: bold;
	}
	.pc {
		display: block !important;
	}
	.sp {
		display: none !important;
	}
	.linktitle {
		font-size: 21px;
		font-weight: bold;
		padding: 0px;
		display: inline-block;
	}
	.hidden_show {
		width: 100%;
	}
	.red {
		color: #AF0000;
	}
	.left {
		float: left;
		margin-left: 20px;
	}
	.right {
		float: right;
		margin-right: 20px;
	}
	#tel {
		width: 100%;
		padding: 20px 0px;
		font-size: 20px;
		text-align: center;
		border: 1px solid;
	}
	.reception {
		font-size: 30px;
	}
	.reception_asti {
		text-align: center;
	}
	.phone_number {
		font-size: 25px;
		sfont-weight: bold;
	}
	.wrap {
		height: calc(100vh - 4rem - 40px);
		padding: 4rem;
		scroll-behavior: smooth;
	}
	.row {
		margin-right: -15px;
		margin-left: -15px;
	}
	.hr0 {
		border-top: 1px dotted #bbb;
	}
	.hr1 {
		padding: 1% 0% 1% 0%;
		border-top: 1px dashed #8c8b8b;
		margin: 8% 0px 5% 0px;
	}
	.br-sp {
		display: none;
	}
	#main {
		width: 100%;
		max-width: 1100px;
		margin: auto;
	}
	.price {
		color: #ff0000;
		font-size: 30px;
		font-weight: bold;
		text-align:right;
		width:100%;
	}
	/************************
		Header
	*************************/
	header {
		width: 100%;
		background-color: #FFFFFF;
		position: fixed;
		top: 0;
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
		padding: 10px;
		color: #FFF;
		font-weight: bold;
		z-index: 3;
		
	}
	header .a1 {
		font-family:'Open Sans', sans-serif;
		color:#1F4A96;
		font-weight:800;
		line-height:1.2;
		font-size:27px;
		float : left;
		margin:0;
	}
	header .inner {
		margin:0 auto;
		padding:0;
	}
	.header{
		margin-bottom:30px;
	}
	.headerbuttonpc {
		margin-top: 64px;
		margin-left: 950px;
		position: fixed;
		z-index: 3;
	}
	.nav {
		padding-top:20px;
		width:1100px;
		display: block;
		margin-left: auto;
	}
	.nav ul {
		font-size: 14px;
		padding: 0; /* リストのマーク分の余白ができるので消すために 0 としています */
		list-style: none;
	}
	.nav li {
		margin: 0 -2px; /* リストとリストの間の空白を消すため */
		padding: 0 10px;
		display: inline;
		border-right:1px solid #000;
	}
	.nav li:last-child {
		border-right: none;
	}
	.nav li a {
		color: #000;
		text-decoration: none;
	}
	.nav li a:hover {
		color: #f00;
		text-decoration: underline;
	}
	.top_img {
		background: url("../img/top_back.png") no-repeat;
		background-size: cover;
	}
	#news_area{
		margin:30px 0;
	}
	.navbar-brand {

	    height: 35px;
	    width: 180px;
	}
	.navbar-light .navbar-nav .nav-link {
		background:#003190;
	    color: #fff;
	    display:flex;
	    justify-content:center;
	    align-items:center;
	    margin-left:10px;
        padding: 5px 15px;
	}
	.navbar-light .navbar-nav .nav-link svg{
		margin-right:15px;
	}
	.ec-cartNavi__badge{
		margin-right:15px;
	}
	.ec-sliderItemRole {
    	width: 300px;
    	margin-right:40px;
    	
    }
    .col-lg-6 {
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		width: auto;
	}
	/************************
		Footer
	*************************/
	footer{
		margin-top:30px;
		background: #466FAC;
	}
	.footer_1 {
		width:100%;
		padding: 30px;
	}
	.footer_p,
	.footer_p a,
	footer ul,
	footer li,
	footer li a ,
	footer p{
		color: #fff;
	}
	footer ul {
		margin-left: 250px;
		float: left;
	}
	.footer_center {
		text-align: center;
		font-size: 11px;
		height: 20px;
	}
	
	/*ボタンについて*/
	.square_btn0 {
		margin:10px 0;
		display: inline-block;
		padding: 15px 65px 15px 65px;
		text-decoration: none;
		background: #FF9800;
		/*ボタン色*/
		color: #FFFFFF;
		transition: .4s;
		float: right;
		font-size: 24px;
		font-weight: bold;
		box-shadow: 0 2px 2px rgba(0, 0, 0, 0.28);
	}
	.square_btn0:hover {
		background: #FFCC80;
		color: #FFFFFF;
		text-decoration: none;
	}
	.square_btn0:active {
		text-decoration: none;
		color: #FFFFFF;
		-webkit-transform: translateY(2px);
		transform: translateY(5px);
		/*沈むように*/
		box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
		text-decoration: none;
		background-image: linear-gradient(#3F5D5 0%, #3F5DC5 100%);
		/*グラデーションを明るく*/
	}
	#order_sheet_btn {
		display: inline-block;
		text-decoration: none;
		color: #FFFFFF;
		width: 220px;
		height: 50px;
		line-height: 50px;
		text-align: center;
		font-weight: bold;
		background-color: #3F5DC5;
		box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
		margin-bottom: 5px;
	}
	#order_sheet_btn:hover {
		text-decoration: none;
		background-color: #95A5DF;
		transition: .4s;
	}
	#order_sheet_btn:active {
		-webkit-transform: translateY(2px);
		transform: translateY(2px);
		/*沈むように*/
		box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
		text-decoration: none;
		background-image: linear-gradient(#3F5D5 0%, #3F5DC5 100%);
		/*グラデーションを明るく*/
	}
	#necessary_square_btn {
		display: inline-block;
		text-decoration: none;
		color: #FFFFFF;
		width: 220px;
		height: 50px;
		line-height: 50px;
		text-align: center;
		font-weight: bold;
		background-color: #007C21;
		box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
	}
	#necessary_square_btn:hover {
		text-decoration: none;
		transition: .4s;
		background-color: #75A682;
	}
	#necessary_square_btn:active {
		-webkit-transform: translateY(2px);
		transform: translateY(4px);
		/*沈むように*/
		box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
		text-decoration: none;
		background-image: linear-gradient(#3F5D5 0%, #3F5DC5 100%);
	}
	.pt-4, .py-4,
	.col-12,.col-lg-6{
		padding:0 !important;
	}
	.ec-footerTitle {
	    width: 300px;
	    margin:0 auto 40px;
	}
	.trouble_banner {
	    text-align: center;
	    margin-bottom: 50px;
	}
	/***********************************
	*			TOP
	***********************************/
	.h2_box h2{
		background:#0F1E79;
		color:#fff;
		width:100%;
		padding:10px;
		display:flex;
		align-items:center;
		margin-bottom:50px;
	}
	.top_sparekey{
		margin:0;
		max-width:none;
	}
	.pc {
	    width: 100%;
	}
	/*商品*/
	.top_order_item {
		margin-top: 5px;
	}
	.top_order_item .order_img{
		width: 40%;
	}
	.top_order_item h2{
		background: linear-gradient(transparent 80%, #3F5DC5 80%);
		font-size: 26px;
		font-weight: bold;
		text-align: center;
		display:block;
	}
	.top_order_item h3 {
		font-size: 26px;
		font-weight: bold;
		color: #0F1E79;
		display: inline-block;
		width: 100%;
    	text-align: right;
	}
	.box1_order_text {
		float: right;
		padding: 0;
	}
	.box1_inner_item {
		width: 33%;
		float: left;
		display: inline;
		text-align: center;
	}
	.box1_inner_item img{
		height:200px;
		width:auto;
	}
	.box1_inner h3 {
		font-size: 24px;
		font-weight: bold;
		text-align: center;
		line-height: 60px;
		position: relative;
		margin-top: 30px;
	}
	.box1_inner h3 span {
		position: relative;
		display: inline-block;
		margin: 0 4em;
		padding: 0 1em;
		background-color: #FFFFFF;
		text-align: left;
	}
	.box1_inner h3::before {
		position: absolute;
		top: 50%;
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		background: #FFFFFF;
		background: -webkit-linear-gradient(-45deg, transparent, #3F5DC5 10%, #3F5DC5 90%, transparent);
		background: linear-gradient(-45deg, transparent, #3F5DC5 10%, #3F5DC5 90%, transparent);
	}
	.box1_order_text p.subText{
		background:#eee;
		padding:10px;
		display:inline-block;
	}
	/********納期について********/
	.about_delivery {
		margin-top: 30px;
		background-color: #E4F6FF;
		padding: 10px 40px 40px;
	}	
	.about_delivery h3 {
		font-size: 24px;
		font-weight: bold;
		text-align: center;
		line-height: 60px;
		position: relative;
		text-align: center;
		margin-top: 30px;
	}
	.about_delivery h3 span {
		position: relative;
		display: inline-block;
		margin: 0 4em;
		padding: 0 1em;
		background-color: #E4F6FF;
		text-align: left;
	}
	.about_delivery h3::before {
		position: absolute;
		top: 50%;
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		background: #E4F6FF;
		background: -webkit-linear-gradient(-45deg, transparent, #3F5DC5 10%, #3F5DC5 90%, transparent);
		background: linear-gradient(-45deg, transparent, #3F5DC5 10%, #3F5DC5 90%, transparent);
	}
	/*********郵送************/
	.post {
		margin-top: 50px;
		text-align: center;
		padding: 20px 0;
	}
	.post img {
		margin: 40px;
	}
	.post h3 {
		font-size: 24px;
		font-weight: bold;
		text-align: center;
		line-height: 60px;
		position: relative;
		text-align: center;
	}
	.post h3 span {
		position: relative;
		display: inline-block;
		margin: 0 4em;
		padding: 0 1em;
		background-color: #EDFFE0;
		text-align: left;
	}
	.post h3::before {
		position: absolute;
		top: 50%;
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		background: #EDFFE0;
		background: -webkit-linear-gradient(-45deg, transparent, #007C21 10%, #007C21 90%, transparent);
		background: linear-gradient(-45deg, transparent, #007C21 10%, #007C21 90%, transparent);
	}
	/*郵送の表*/
	.post_td_1 {
		text-align: center;
		background: #007C21;
		color: #FFF;
		padding: 15px;
		border: solid 2px #EDFFE0;
	}
	.post_td_2 {
		text-align: center;
		padding: 15px;
		width: 25%;
		background-color: #FFFFFF;
		border: solid 2px #EDFFE0;
	}
	.post_text_1 {
		float: left;
		margin-left: 25px;
		text-align: left;
		width: 70%;
	}
	.post:after {
		display: block;
		clear: both;
		content: "";
	}
	.post_button1 {
		padding-left: 10px;
	}
	.post_button2 {
		padding-left: 10px;
		height: 110px;
	}
	.post_text_2 {
		text-align: left;
		margin-left: 25px;
	}
	#forwarding_address {
		font-size: 25px;
		font-weight: bold;
		margin: 10px;
		text-align: center;
	}
	/*ステップフローのCSS*/
	ul.stepflow {
		border: none;
		list-style: none;
	}
	ul.stepflow > li:before, ol.stepflow > li:before {
		background-color:#007C21;
	}
	.stepflow_item{
	    position: relative;
	    border-top: solid 2px #007C21;
	    background: #EDFFE0;
	    padding:10px;
	}
	.stepflow_item:before {
		content: "";
		width: 5px;
		display: block;
		position: absolute;
		top: 28px;
		bottom: 8px;
		left: 23px;
	}
	.stepflow-black {
		content: '';
		display: inline-block;
		position: absolute;
		top: 5px;
		left: 5px;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		border: solid 3px #007C21;
		background-color: #007C21;
		color: #FFFFFF;
		font-size: 28px;
		line-height: 36px;
		font-weight: bold;
		text-align:center;
	}
	.stepflow_label {
		padding: 8px 0px 0px 30px;
		margin:0 0 0 10px;
		color: #007C21;
		font-size: 22px;
		font-weight: bold;
		text-align: left;
		border-bottom: dashed 1px #007C21;
	}
	.stepflow_content {
		margin:0 0 0 20px;
		font-size: .9em;
		line-height: 1.5;
		margin-top: .5em;
		text-align: left;
		padding: 10 0px;
		
	}
	.stepflow_content p{
		padding:10px;
	}
	.sankaku {
		width: 0;
		height: 0;
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #007C21;
		position:absolute;
		left:15px;
		bottom:5px;
	}
	.stepflow_item_ok{
		border-top: solid 2px #FF9800;
		background:#fdf3e4;
	}
	.stepflow-black_ok {
		border: solid 3px #FF9800;
		background-color: #FF9800;
		font-size:100%;
	}
	.stepflow_label_ok {
		color: #FF9E00;;
		border-bottom: dashed 1px #FF9800;
	}
	.stepflow_item_ok:before {
		background-color: #EDFFE0!important;
	}
	/**********マルチロックとは**************/
	.about_ml {
		text-align: center;
		margin-top: 30px;
	}
	/**********オーナーカードをお持ちでない場合*********/
	.attention {
		margin: 30px auto;
		padding: 0 10px 10px 10px;
		text-align: center;
		background-color: #FFAFB1;
	}
	.attention > h4 {
		margin: 0px;
		padding: 0px;
		font-size: 22px;
		color: #FF0000;
	}
	/*********シリンダー交換*********/
	.sub_contents {
		margin: 30px auto;
		width: 100%;
		padding: 0 10px 10px 10px;
		text-align: center;
		background-color: #AFDBFF;
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	.sub_contents > h4 {
		margin: 0px;
		padding: 0px;
		font-size: 22px;
		color: #001DFF;
		width:100%;
	}
	.sub_contents > p {
		width: 48%;
		text-align:left;
	}
	.sub_contents > img{
		width: 48%;
	}
	/*表について*/
	table {
		width: 100%;
	}
	.delivery_table {
		border: solid 2px #E4F6FF;
	}
	.delivery_td_1 {
		color: #FFF;
		background: #3F5DC5;
		border: solid 2px #E4F6FF;
		text-align: center;
		font-weight: bold;
	}
	.delivery_td_2 {
		width: 50%;
		border: solid 2px #E4F6FF;
		text-align: center;
		background-color: #FFFFFF;
		padding: 15px;
	}
	.delivery_th {
		text-align: center;
		padding: 15px;
		width: 25%;
		font-weight: bold;
		border: solid 2px #E4F6FF;
		background: #3F5DC5;
		color: #FFF;
	}
	.delivery_td_3 {
		text-align: center;
		padding: 15px;
		width: 25%;
		background-color: #FFFFFF;
		border: solid 2px #E4F6FF;
	}
	td[rowspan] {
		text-align: center;
		background-color: #C7CFD3;
	}
	/*納期の表について*/
	.receipt_td_1 {
		width: 10%;
		color: #FFF;
		background: #3F5DC5;
		border: solid 2px #E4F6FF;
		text-align: center;
		font-weight: bold;
	}
	.receipt_td_2 {
		text-align: left;
		padding: 15px;
		width: 25%;
		background-color: #FFFFFF;
		border: solid 2px #E4F6FF;
	}
	.ec-newsRole{
		padding:0;
	}
	.ec-role{
		padding:0;
		max-width:none;
	}
	h1 {
	    border: 5px solid #F4F3F0;
	    padding: 15px;
	    font-size: 20px;
	    margin: 30px 0;
	}
	.ec-rectHeading h2 {
	    width: 100%;
	}
	.ec-orderAccount__account,
	.ec-orderDelivery__title,
	.ec-orderDelivery__address,
	.ec-orderDelivery__actions,
	.ec-orderPayment .ec-radio,
	#shopping_order_payment_type_0_body .dl_table
	{
		padding:15px;
	}
	.ec-orderConfirm h2{
		margin-bottom:15px;
	}
	.ec-inlineBtn{
		margin:15px;
	}
	.about_ml{
		display:flex;
		flex-wrap:wrap;
	}
	.about_ml>h2,
	.about_ml>div{
		width:100%;
	}
	.about_ml>a{
		width:50%;
		display: block;
	}
	.ec-guest {
    	margin: auto;
    }
    
}

.ec-select__delivery{
	display:none;
}











/*スマートフォン*/

@media screen and (max-width:600px) {
	body {
		margin: 0;
		box-sizing: border-box;
		overflow: auto;
		font: 14px/1.8 serif;
		font-family:'Noto Sans JP', 'Open Sans', sans-serif;
		font-size:3.5vw;
	}
	h2 {
		font-weight: bold;
		font-size: 18px;
		text-align: center;
		color: #0F1E79;
	}
	h3 {
		text-align: center;
		font-size: 15px;
		font-weight: bold;
	}
	h4 {
		text-align: center;
		font-size: 15px;
		font-weight: bold;
	}
	h5 {
		text-decoration-line: underline;
		font-weight: bold;
	}
	img {
		width: auto;
		max-width: 100%;
		float: none;
	}
	strong {
		font-weight: bold;
	}
	hr {
		margin: 8% 0% 0% 0%;
		border-top: 1px dashed #8c8b8b;
	}
	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
	.inner {
		width: 100%;
		margin: 0px auto;
		padding: 10px;
	}
	.br-pc {
		display: none;
	}
	#main {
		padding: 10px;
	}
	#contents {
		margin-top: 60px;
	}
	.container{
		padding:0;
	}
	/********************************
				header
	*********************************/
	header {
		width: 100%;
		background-color:#FFFFFF;
		position: fixed;
		top:0;
		box-shadow: 0 3px 6px rgba(0,0,0,0.2);
		color: #FFF;
		font-weight: bold;
		z-index: 3;
	}
	header>.inner{
		display:flex;
		padding:5px;
	}
	header .a1 {
		color:#1F4A96;
		font-weight:800;
		line-height:1.2;
		font-size:15px;
		font-family:'Open Sans', sans-serif;
		margin:0;
		flex-shrink: 0;
		width: calc(100% - 50px);
		line-height: 25px;
	}
	.header{
		background:#fff;
	}
	#nav-drawer {
		position: relative;
		padding:10px;
	}
	/*アイコンのスペース*/
	#nav-open {
		display: inline-block;
		width: 30px;
		height: 30px;
		vertical-align: middle;
	}
	/*ハンバーガーアイコンをCSSだけで表現*/
	#nav-open span,
	#nav-open span:before,
	#nav-open span:after {
		position: absolute;
		height: 3px;
		/*線の太さ*/
		width: 30px;
		/*長さ*/
		border-radius: 3px;
		background: #555;
		display: block;
		content: '';
		cursor: pointer;
	}
	#nav-open span:before {
		bottom: -10px;
	}
	#nav-open span:after {
		bottom: -20px;
	}
	/*閉じる用の薄黒カバー*/
	#nav-close {
		display: none;
		/*はじめは隠しておく*/
		position: fixed;
		z-index: 99;
		top: 0;
		/*全体に広がるように*/
		left: 0;
		width: 100%;
		height: 100%;
		background: black;
		opacity: 0;
		transition: .3s ease-in-out;
	}
	/*中身*/
	#nav-content {
		overflow: auto;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
		/*最前面に*/
		width: 90%;
		/*右側に隙間を作る*/
		max-width: 330px;
		/*最大幅*/
		height: 100%;
		background: #fff;
		/*背景色*/
		transition: .3s ease-in-out;
		/*滑らかに表示*/
		-webkit-transform: translateX(-105%);
		transform: translateX(-105%);
		/*左に隠しておく*/
	}
	#nav-input {
		display:none;
	}
	/*チェックが入ったらもろもろ表示*/
	#nav-input:checked ~ #nav-close {
		display: block;
		/*カバーを表示*/
		opacity: .5;
	}
	#nav-input:checked ~ #nav-content {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);
		/*中身を表示*/
		box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
	}
	.navbar{
		padding:2.5vw;
	}
	.navbar-brand{
		width: 55vw;
		height:10vw;
		margin-right: 30vw;
	}
	.navbar-toggler{
		width: 10vw;
		height:10vw;
	}
	/*******************************************
					TOP
	********************************************/
	.col-12{
		padding:0;
	}
	.pb-3, .py-3 {
		padding:0 !important;
	}
	.box1 {
		margin:10px 20px;
	}
	.box1 .order_img {
		height: auto;
		width: auto;
	}
	.box1_inner input {
		display: none;
	}
	.box1_order_text {
		font-size: 11px;
	}
	.box1_order_text p {
		background-color: #ECECEC;
		padding:5vw;
		font-size:3.5vw;
		margin:20px 0;
	}
	.top_order_item h2{
		color: #FFFFFF;
		font-weight: bold;
		text-align: center;
		font-size: 14px;
		font-weight: bold;
		text-align: center;
		position: relative;
		padding: 10px 0;
		background-color: #4667CD;
		border-radius: 6px;
	}
	.top_order_item h2:after{
		position: absolute;
		top: 100%;
		left: 30px;
		content: '';
		width: 0;
		height: 0;
		border: 10px solid transparent;
		border-top: 15px solid #4667CD;
	}
	.top_order_item h3{
		    font-size: 5.2vw;
		    margin-bottom:3vw;
	}
	.attention {
		background-color: #FFBFBF;
		padding: 5vw;
		margin: 25px 0px;
		text-align: center;
	}
	.attention h4{
		color: #ff0f0f;
		margin-bottom: 5vw;
		font-size:5.2vw;
	}	
	.attention p{
		text-align:left;
	}
	.sub_contents {
		background-color: #CCEEFF;
		padding: 10px;
		margin: 25px 0px;
		text-align: center;
	}
	.about_delivery {
		background-color: #E4F6FF;
		padding: 10px;
		margin: 10px 0px;
	}
	.about_ml {
		text-align: center;
		padding: 10px;
		margin: 10px 0px;
	}
	.about_ml img {
		margin-top: 10px;
	}
	.about_delivery h2 {
		font-size: 20px;
		text-align: center;
		color: #00005F;
		font-weight: bold;
	}
	.about_delivery h3 {
		text-align: center;
		font-size: 15px;
		font-weight: bold;
		margin-top: 20px;
	}		
	.post h2 {
		font-size: 20px;
		text-align: center;
		color: #004B0D;
		font-weight: bold;
	}
	.post h3 {
		text-align: center;
		font-size: 15px;
		font-weight: bold;
		margin-top: 20px;
	}
	.post img {
		margin: 15px 0px;
	}

	.about_ml h2 {
		font-size: 18px;
		text-align: center;
		color: #000000;
		font-weight: bold;
	}
	.top_img {
		background: url("../img/top_back2.png") no-repeat;
		background-size: cover;
		height: 100%;
		width: 100%;
	}

	.inner_top {
		width: 100%;
		padding: 20px 20px 0px 20px;
	}

	.sp_box1 {
		text-align: left;
		margin: 0% 2% 0% 2%;
	}

	.price {
		color: #ff0000;
		font-size: 22px;
		font-weight: bold;
		text-align: center;
	}

	.box2 {
		margin-bottom: 20px;!important;
		padding-top: 20px;!important;
	}
	

	ul.list {
		list-style-type: none;
		margin: 10px;
		padding: 0;
	}

	ul.list li {
		line-height: 2.0;

		border-bottom: 1px solid #ddd;
	}

	li a:link {
		color: #337ab7;
	}

	li a:visited {
		color: #337ab7;
	}

	li a:hover {
		color: #87ceeb;
	}

	footer li a:link,
	footer li a:visited,
	footer li a:hover {
		color: #fff;
	}

	li a:active {
		color: #7cfc00;
	}

	#nav-content li {
		overflow: hidden;
	}

	#nav-content li a {
		width: 100%;
		padding: 10px 0 10px 3rem;
		display: block;
		float: left;
	}

	#nav-content li a:before {
		content: "■";
		display: inline-block;
		width: 1.5em;
		margin-left: -1.5em;
		color: #069;
	}

	.center {
		text-align: center;
		padding: 10px 0px;
	}

	.section {
		height: 100px;
	}

	.product-detail {
		margin: 0px auto;
	}

	.title {
		font-size: 1.2em;
		font-family: sans-serif;
		width: 95%;
		display: inline-block;
		padding: 10px 30px 10px 30px;
		text-align: center;
		margin: 2% 2% 2% 2%;
		border-radius: 4px;
		color: #ffffff;
		background-image: -webkit-linear-gradient(#6795fd 0%, #67ceff 100%);
		background-image: linear-gradient(#6795fd 0%, #67ceff 100%);
		box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
		border-bottom: solid 3px #5e7fca;
	}

	.hidden_show {
		height: 0px;
		padding: 0 8px;
		transition: .2s;
		overflow: hidden;
		background: #E5F5FD;
	}

	.title0 {
		text-decoration: none;
		display: flex;
		align-items:center;
		justify-content:center;
		height:50px;
		color: #fff;
		background-color: #3F5DC5;
		box-shadow: 0px 4px 0 #0F1E79;
		transition: 0.2s all ease 0s;
		margin: 10 0 0 0px;
		padding: 5px 0;
	}

	input:checked + .hidden_show {
		height: auto;
		padding: 8px;
	}

	.title2 {
		font-size: 1.2em;
		font-family: sans-serif;
		margin: 2% 2% 2% 2%;
		font-weight: bold;
		text-decoration: none;
		display: block;
		text-align: center;
		padding: 8px 0 10px;
		color: #fff;
		background-color: #49a9d4;
		border-radius: 25px;
		box-shadow: 2px 2px 5px #555;
	}

	.hidden_show3 {
		height: 0;
		padding: 0 8px;
		transition: .2s;
		overflow: hidden;
		background: #E4F3FC;
	}

	input:checked + .hidden_show2 {
		height: auto;
		padding: 8px;
	}

	input:checked + .hidden_show3 {
		height: auto;
		padding: 8px;
	}

	.boxsp {
		position: relative;
		margin: 2% 2% 2% 2%;
	}

	.boxsp_inner {
		width: 90%;
		position: absolute;
		top: 65%;
		left: 50%;
		-ms-transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}

	.boxsp p {
		text-align: center;
		/*一応BOX内の文字も中央寄せ*/
		color: #5A5A5A;
	}

	em {
		font-size: 1.5em;
		color: #334454;
		font-weight: bold;
	}

	.background {
		background-color: #E4F3FC;
	}

	.box0 {
		width: 100%;
		padding-bottom: 5%;
	}

	.box0 h3 {
		padding: 0px 20px;
	}

	.box0-img {
		height: auto;
		margin: 0 auto;
	}

	.box0-text {
		font-size: 1em;
		padding: 15px 25px 0px 25px;
	}



	img.mult_key2 {
		border: 1px #EBEBEB solid;
		box-shadow: 0px 0px 5px #D8D8D8 inset;
	}



	footer {
		background: #466FAC;
		padding-bottom: 10px;
	}

	.footer_1 {
		padding: 10px;
	}

	.footer_p,
	.footer_p a {
		color: #FFFFFF;
	}

	footer ul,
	footer li {
		color: #fff;
	}

	footer ul {
		margin: 0;
	}

	.footer_center {
		text-align: center;
		font-size: 11px;
		height: 20px;
		background: #466FAC;
		color: #FFFFFF;
	}

	.address {
		margin: 10px 10px 10px 10px;
	}

	.red {
		color: #AF0000;
	}

	.right {
		width: 100%;
	}

	.square_btn0 {
		width: 100%;
		display: flex;
		align-items:center;
		justify-content:center;
		height:50px;
		text-decoration: none;
		background: #FFA500;
		color: #FFF;
		transition: .4s;
		font-size: 18px;
		font-weight: bold;
		margin: 10px 0;
		text-align: center;
		box-shadow: 0 2px 2px rgba(0, 0, 0, 0.28);
	}

	.square_btn0:hover {
		color: #FFFFFF;
		text-decoration: none;
		background-color: #FFCC80;
	}


	#order_sheet_btn {
		display: flex;
		align-items:center;
		justify-content:center;
		height:50px;
		color: #FFFFFF;
		width: 100%;
		font-weight: bold;
		background-color: #668AD8;
		box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
	}

	#order_sheet_btn:active {
		text-decoration: none;
		color:#FFFFFF;
		background-color: #95A5DF;
	}

	#necessary_square_btn {
		display: flex;
		align-items:center;
		justify-content:center;
		height:50px;
		position: relative;
		text-decoration: none;
		color: #FFFFFF;
		width: 100%;
		margin: 5px 0px;
		font-weight: bold;
		background-color: #00CB04;
		box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
	}

	#necessary_square_btn:active {
		text-decoration: none;
		color:#FFFFFF;
		background-color: #75A682;
	}

	.square_btn {
		width: 60%;
		margin: 0;
		text-align: center;
		display: inline-block;
		padding: 10px 10px 10px 10px;
		text-decoration: none;
		background: #2662e2;
		color: #FFF;
		border-bottom: solid 4px #133a8e;
		border-radius: 5px;
		transition: .4s;
	}

	.square_btn:active {
		background: #b25413;
	}

	.square_btn_2 {
		width: 100%;
		margin: 0;
		text-align: center;
		display: inline-block;
		padding: 10px 35px 10px 35px;
		text-decoration: none;
		background: #668ad8;
		color: #FFF;
		border-bottom: solid 4px #627295;
		border-radius: 3px;
		transition: .4s;
	}

	.square_btn_2:hover {
		background: #6183ce;
	}

	.square_btn_3 {
		width: 100%;
		margin: 0;
		text-align: center;
		display: inline-block;
		padding: 15px 45px 15px 45px;
		text-decoration: none;
		background: #668ad8;
		color: #FFF;
		border-bottom: solid 4px #627295;
		border-radius: 3px;
		font-size: 17px;
		transition: .4s;
	}

	.square_btn_3:hover {
		background: #00bcd4;
	}

	.square_btn_4 {
		width: 100%;
		margin: 0px 0px 0px 0px;
		display: inline-block;
		padding: 10px 35px 10px 35px;
		text-decoration: none;
		background: #668ad8;
		color: #FFF;
		border-bottom: solid 4px #627295;
		border-radius: 3px;
		transition: .4s;
	}

	.square_btn_4:hover {
		background: #6183ce;
	}

	.square_btn_4:active {
		-ms-transform: translateY(2px);
		-webkit-transform: translateY(2px);
		transform: translateY(2px);
		border-bottom: none;
	}

	.btn_border {
		border: solid 1px #FFFFFF;
		width: 100%;
	}


	.right {
		float: right;
	}

	.reception_asti {
		text-align: center;
	}

	.reception {
		font-size: 18px;
		font-weight: bold;
	}

	#tel {
		text-align: center;
		background: #FFFFFF;
		padding: 5px;
		border: #000000 solid 1px;
		margin: 10 0px;
	}

	.phone_number {
		font-size: 20px;
		font-weight: bold;
	}

	.wrap {
		height: calc(100vh - 4rem - 40px);
		padding: 4rem;
		scroll-behavior: smooth;
	}






/*表について*/
	table {
		width: 100%;
		font-size: 12px;
	}

	.delivery_table {
		border: solid 2px #E4F6FF;
	}
	
	.delivery_td_1 {
		width: 50%;
		color: #FFF;
		background: #3F5DC5;
		border: solid 2px #E4F6FF;
		text-align: center;
		font-weight: bold;
	}
	
	.delivery_td_2 {
		text-align: center;
		border: solid 2px #E4F6FF;
		background-color: #FFFFFF;
	}
	
	
	.delivery_th {
		text-align: center;
		width: 25%;
		padding: 2px;
		font-weight: bold;
		border: solid 2px #E4F6FF;
		background: #3F5DC5;
		color: #FFF;
	}

	.delivery_td_3 {
		text-align: center;
		padding: 5px;
		width: 25%;
		border: solid 2px #E4F6FF;
		background-color: #FFFFFF;
	}

	td[rowspan] {
		text-align: center;
		background-color: #C7CFD3;
	}

	
	
	/*納期の表について*/
	.receipt_td_1 {
		width: 10%;
		color: #FFF;
		background: #3F5DC5;
		border: solid 2px #E4F6FF;
		text-align: center;
		font-weight: bold;
	}

	.receipt_td_2 {
		text-align: left;
		padding: 4px;
		width: 25%;
		background-color: #FFFFFF;
		border: solid 2px #E4F6FF;
	}

	
	
	
	
	
	/************郵送**********/
	#forwarding_address {
		font-weight: bold;
		margin: 10px;
	}
	
	ul.stepflow {
		border: none;
		list-style: none;
		}
	ul.stepflow > li:before, ol.stepflow > li:before {
		background-color:#007C21;
	}
	
	
	.sankaku {
		width: 0;
		height: 0;
		border-left: 6vw solid transparent;
		border-right: 6vw solid transparent;
		border-top: 6vw solid #007C21;
		position:absolute;
		bottom:1vw;
		left:0;
		z-index:999;
	}
	.stepflow_item{
	    position: relative;
	    padding-bottom:10px;
	    border-top: solid 2px #007C21;
	    background-color: #EDFFE0;
	}
	.stepflow_item:before {
		content: "";
    	width: 2vw;
    	display: block;
    	position: absolute;
    	top: 1vw;
    	bottom: 2vw;
    	left: 4.5vw
	}
	.stepflow-black {
		    position: absolute;
    		top: 1vw;
    		left: 0;
    		width: 11vw;
    		height: 11vw;
    		border-radius: 50%;
    		content: '';
    		display: flex;
    		justify-content:center;
    		align-items:center;
    		border: solid 3px #007C21;
    		background-color: #007C21;
    		text-align: center;
    		color: #FFFFFF;
    		font-weight: bold;
    		font-size: 180%;
	}
	.stepflow_label {
		padding: 8px 0px 0px 12vw;
		margin:0 0 0 10px;
		color: #007C21;
		font-size: 18px;
		font-weight: bold;
		text-align: left;
		border-bottom: dashed 1px #007C21;
	}
	.stepflow_content {
		margin:0 0 0 9vw;
		font-size: .9em;
		line-height: 1.5;
		margin-top: .5em;
		text-align: left;
		padding: 10 0px;
		
	}
	.stepflow_content p{
		padding:5px;
	}
	.stepflow_item_ok{
		border-top: solid 2px #FF9800;
		background: #fdf3e4;
	}
	.stepflow_item_ok:before {
		background-color: #FF9800!important;
	}
	.stepflow-black_ok {
		border: solid 3px #FF9800;
		background-color: #FF9800;
		font-size:100%;
	}
	.stepflow_label_ok {
		color: #FF9800;
		border-bottom: dashed 1px #FF9800;
	}
	
	/*郵送の表*/
	.post_td_1 {
		text-align: center;
		background: #007C21;
		color: #FFF;
		padding: 5px;
		border: solid 2px #EDFFE0;
	}
	
	.post_td_2 {
		text-align: center;
		padding: 5px;
		width: 25%;
		background-color: #FFFFFF;
		border: solid 2px #EDFFE0;
	}

	div.form-group.form-inline > div {
		float: none !important;
		margin-bottom: 20px;
	}
	/**********************
			ECCUBE
	**************************/
	.sale_price{
		text-align:right;
	}
	.row{
		margin:0;
	}
	.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
		padding:0;
	}
	.pb-4, .py-4{
		padding:0 !important;
	}
	.ec-price{
		text-align:right;
	}
	.ec-price .ec-price__price {
		font-size: 8vw;
	}
	.ec-price .ec-price__tax {
		font-size: 4vw;;
	}
	.ec-productRole .ec-productRole__priceRegular {
		text-align: right;
	}
	
	.ec-productRole__description{
		background: #ebeef3;
    	padding: 4vw;
    	font-size: 3.5vw;
	}
	.ec-footerTitle__logo svg{
		width:60%;
		margin-bottom:5vw;
	}
	.trouble_banner {
	    width: 60%;
	    margin: 3vw auto;
	    background: #fff;
	    padding: 2.5vw;
	}
	li.nav-item a.nav-link{
	    padding: 2.5vw;
	}
	.feather-home{
		margin-right:30px;
	}
	.header .ec-cartNavi__badge.ec-cartNavi__badge{
		display:flex;
		align-items:center;
		justify-content:center;
		height:20px;
		margin:0;
		line-height:normal;
	}
	.h1_box h1,
	.h2_box h2{
		font-size: 5.2vw;
    	height: 13vw;
    	display: flex;
    	justify-content: center;
    	align-items: center;
    	background: #003190;
    	color: #fff;
    	font-weight: bold;
	}
	.top_sparekey p{
		padding:4vw;
	}
	table {
		font-size: 3.5vw;
	}
	
	.ec-orderAccount__account,
	.ec-orderDelivery__address,
	.ec-orderDelivery__actions,
	.ec-orderPayment .ec-radio,
	#shopping_order_payment_type_0_body,
	.ec-orderConfirm .ec-input{
		padding:3vw;
	}
	.ec-orderPayment .ec-radio>div {
		height: 50px;
		display: flex !important;
		width: 100%;
		align-items: center;
		flex-wrap: wrap;
	}
	.ec-orderPayment .ec-radio>div input,
	.ec-orderPayment .ec-radio>div label{
		margin:0;
	}
	.ec-orderPayment .ec-radio>div input{
		width:20%;
	}
	.ec-orderPayment .ec-radio>div label{
		width:80%;
	}
	#gmo_payment_gateway_credit_form .dl_table {
		border-top: 0;
	}
	#gmo_payment_gateway_credit_form .dl_table dl{
		
	}
	.ec-orderRole .ec-inlineBtn {
	    margin: 2vw;
	}
	.ec-totalBox .ec-totalBox__paymentTotal,
	.ec-totalBox .ec-totalBox__price {
	    font-size: 5vw;
	}
	.ec-role{
		padding:0;
	}
	.ec-newsRole {
	    padding: 3vw 0 0;
	}
	.ec-secHeading {
    	margin-bottom: 0;
    	padding: 3vw;
    }
    .ec-newsRole__newsItem{
    	margin-bottom:0;
    }
    .ec-newsRole .ec-newsRole__newsHeading {
	    padding: 3vw;
	    margin-bottom:0;
	}
	.ec-newsRole__newsDescription{
		background:#e8f0ff;
		padding:5vw;
	}
	.ec-newsRole .ec-newsRole__newsItem:last-of-type {
	    margin-bottom: 0;
	}
	.ec-borderedDefs {
	    margin: 0;
	    padding: 3vw;
	}

}



/**ECCUBEシステムCSS**/

.page-heading {
	width: 100%;
}