@charset "utf-8";


/*----------------------------------------------
	Overall settings
-----------------------------------------------*/

body{ font-family: "Hiragino Sans", Meiryo, sans-serif; min-width: 1100px; color: #000; text-align: center;}
body.ovh{ position: fixed; left: 0; top: 0; width: 100%; height: 100vh;}
a{ color: #000; text-decoration:none; -webkit-transition: all .2s; transition: all .2s;}
a:hover{ opacity: .7; text-decoration:none;}
.underline{ text-decoration: underline;}
/* font */
.noto-serif{ font-family: "Noto Serif JP", serif;}
/* bg */
.bg-white{ background: #fff;}
/* color */
.white{ color: #fff;}
.red{ color: #c00;}
.red2{ color: #f00;}
.blue{ color: #00f;}


/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	body{ min-width: inherit;}
	a:hover{ opacity: 1;}
}
@media screen and (max-width: 350px) {
	html{ font-size: 50%;}
}



/*----------------------------------------------
	header
-----------------------------------------------*/

header{
	width: 100%;
	height: 100px;
	margin: 0 auto;
	top: 0;
	z-index: 99;
	background: #fff;
	padding: 0 3%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
}
header .logo{ padding: 16px 0;}
header .spmenu{ display: none;}
header nav{
	display: flex;
	align-items: center;
	font-size: 18px;
}
header nav ul{ display: flex;}
header nav ul li{ padding: 40px 0;}
header nav ul li a{
	padding: 0 25px;
	display: block;
	line-height: 1;
	border-right: 1px solid #000;
}
header nav ul li.nav-cart a{
	padding-left: 50px;
	background: url("../img/nav-cart.svg") left 25px center / 23px auto no-repeat;
}
header nav .header-sns{
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
}
header nav .header-sns p{ margin-left: 35px;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	header{
		padding: 0;
		height: 80px;
	}
	header .headerwrap{
		width: 100%;
		background: #fff;
		position: relative;
		z-index: 99;
		display: flex;
		justify-content: space-between;
	}
	header .logo{ padding-left: 3%;}
	header .spmenu{
		color: #fff;
		font-size: 1.6rem;
		display: block;
		float: right;
		width: 80px;
		height: 80px;
		cursor: pointer;
		z-index: 101;
		position: relative;
		background: #fff;
	}
	header .spmenu span,
	header .spmenu span:before,
	header .spmenu span:after{
		position: absolute;
		display: block;
		background: #022f63;
		width: 40px;
		height: 4px;
		transition: all .5s;
	}
	header .spmenu span{
		top: 30px;
		left: 15px;
	}
	header .spmenu span:before,header .spmenu span:after{
		content: "";
		left: 0;
	}
	header .spmenu span:before{ top: 10px;}
	header .spmenu span:after{ top: 20px;}
	header.open .spmenu span{
		top: 20px;
		-webkit-transform: translateY(20px) rotate(-45deg);
		transform: translateY(20px) rotate(-45deg);
	}
	header.open .spmenu span:before{ opacity: 0;}
	header.open .spmenu span:after{
		-webkit-transform: translateY(-20px) rotate(90deg);
		transform: translateY(-20px) rotate(90deg);
		top: 20px;
	}
	/* nav */
	header nav{
		font-size: 16px;
		z-index: 1;
		width: 100%;
		text-align: left;
		overflow: auto;
		display: block;
		position: absolute;
		top: 81px;
		left: 0;
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		-webkit-transform-origin: center top;
		transform-origin: center top;
		opacity: 0;
		transition-property: opacity, transform, -webkit-transform;
		transition-duration: .5s, 0s, 0s;
		transition-delay: 0s, .5s, .5s;
		box-shadow: 0 0 0 100vh #022f63;
		background: #022f63;
		height: calc(100vh - 80px);
	}
	header.open nav{
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
		transition-delay: 0s, 0s, 0s;
	}
	header nav ul{
		display: block;
		background: #fff;
		overflow: clip;
	}
	header nav ul li{
		padding: 0;
		border-bottom: 1px solid #022f63;
	}
	header nav ul li a{ padding: 15px;}
	header nav ul li.nav-cart a{
		padding-left: 45px;
		background: url("../img/nav-cart.svg") left 15px center / 23px auto no-repeat;
	}
	header nav .header-sns{
		background: #fff;
		border-bottom: 1px solid #022f63;
	}
	header nav .header-sns p{ margin: 10px;}
}



/*----------------------------------------------
	section
-----------------------------------------------*/

section{}
.wrap{ clear: both; box-sizing: content-box; max-width: 1080px; margin-left: auto; margin-right: auto; padding-left: 5%; padding-right: 5%;}
.w100p{ width: 100%;}
.subt1{
	color: #fff;
	font-size: 30px;
	font-weight: 500;
	font-family: "Noto Serif JP", serif;
	text-align: center;
	background: url("../img/ttl1-bg.png") center / 240px auto no-repeat;
	width: 240px;
	line-height: 240px;
	margin: 0 auto 50px;
}
.subt2{
	font-size: 21px;
	font-weight: normal;
	line-height: 1.4;
	text-align: left;
	background: #f2f2f2;
	padding: 15px 20px;
}
.subt3{
	font-size: 30px;
	line-height: 1.4;
	font-weight: normal;
	text-align: center;
}
.subt3 span{
	display: inline-block;
	position: relative;
	padding: 0 2em;
}
.subt3 span:before,.subt3 span:after{
	content: "●";
	color: #9a8134;
	font-size: 36px;
	position: absolute;
	top: -0.13em;
}
.subt3 span:before{ left: 0;}
.subt3 span:after{ right: 0;}
.subt4{
	color: #022f63;
	font-size: 20px;
	font-weight: bold;
}
.btn1{
	color: #fff;
	font-size: 16px;
	line-height: 1.3;
	text-align: center;
	display: inline-block;
	background: #022f63;
	padding: 18px;
	border-radius: 99px;
	min-width: 400px;
}
.btn1.back{
	background: #ccc;
}
.btn2{
	font-size: 18px;
	line-height: 1.4;
	text-align: center;
	display: inline-block;
	background: #fff;
	border: 1px solid #000;
	padding: 25px;
	min-width: 360px;
}
.btn3{
	font-size: 21px;
	line-height: 1.4;
	text-align: center;
	display: block;
	background: #f2f2f2;
	padding: 15px;
}
.btn2.insta{
	padding: 25px 60px;
	background: url("../img/ic-instagram.png") right 35px center / 24px auto no-repeat #fff;
}
.lower-main{
	position: relative;
	margin-bottom: 100px;
}
.lower-main div{
	color: #fff;
	font-size: 30px;
	font-weight: 600;
	line-height: 1.4;
	padding: 35px;
	min-width: 700px;
	background: rgba(0,0,0,.7);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.lower-main.parts-main{ padding-top: 100px;}
.lower-main.parts-main div{
	position: static;
	transform: translate(0, 0);
}
.made-in-japan{
	text-align: left;
	display: flex;
	justify-content: space-between;
}
.made-in-japan .leftcol{
	flex: 1;
	margin-right: 10px;
}
.made-in-japan .leftcol ul li{
	padding-left: .8em;
	position: relative;
}
.made-in-japan .leftcol ul li:before{
	content: "";
	position: absolute;
	top: .8em;
	left: .2em;
	width: 5px;
	height: 5px;
	display: block;
	background: #000;
}
.made-in-japan .rightcol{ text-align: right;}
.bg-gray{
	text-align: left;
	line-height: 1.8;
	padding: 40px;
	background: #f2f2f2;
}
.tb1{
	width: 100%;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.tb1 th,.tb1 td{
	font-size: 18px;
	line-height: 1.4;
	padding: 10px 15px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.tb1 th{
	color: #fff;
	text-align: center;
	vertical-align: middle;
	background: #808080;
}
.tb1 td{ text-align: left;}
.tb1 td.w70p{ width: 70%;}
.tb1 td.t-center{ text-align: center;}
.tb1 td.t-right{ text-align: right;}
.tb2{ width: 100%;}
.tb2 th,.tb2 td{
	font-size: 18px;
	line-height: 1.4;
	padding: 15px 20px;
	background: #f0f5fa;
	border-bottom: 1px solid #fff;
}
.tb3{
	width: 100%;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.tb3 th,.tb3 td{
	padding: 7px 12px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.tb3 td{ background: #f0f5fa;}
.tb4{
	width: 100%;
	border-top: 1px solid #ccc;
}
.tb4 th,.tb4 td{
	padding: 10px 0;
	border-bottom: 1px solid #ccc;
}
ol.pan{
	color: #fff;
	display: flex;
	flex-wrap: wrap;
	padding: 20px 40px;
	background: #022f63;
}
ol.pan a{ color: #fff;}
ol.pan li:after{
	content: ">";
	margin: 0 .5em;
}
ol.pan li:last-child:after{ content: none;}

@media screen and (max-width: 768px){
	.wrap.sp-wrap{ padding-right: 2%; padding-left: 2%;}
	.subt1{
		font-size: 22px;
		background: url("../img/ttl1-bg.png") center / 180px auto no-repeat;
		width: 180px;
		line-height: 180px;
		margin: 0 auto 50px;
	}
	.subt2{ font-size: 17px;}
	.subt3{ font-size: 22px;}
	.subt3 span{ padding: 0 1.5em;}
	.subt3 span:before,.subt3 span:after{ font-size: 24px;}
	.btn1{
		font-size: 14px;
		padding: 10px 30px;
		min-width: inherit;
	}
	.btn2{
		font-size: 16px;
		padding: 15px 20px;
		min-width: inherit;
	}
	.btn2.insta{
		padding: 15px 40px;
		background: url("../img/ic-instagram.png") right 10px center / 20px auto no-repeat #fff;
	}
	.btn3{
		font-size: 18px;
		padding: 10px;
	}
	.lower-main{ margin-bottom: 50px;}
	.lower-main div{
		font-size: 22px;
		padding: 20px;
		min-width: inherit;
		width: 92%;
	}
	.lower-main.parts-main{ padding-top: 10px;}
	.lower-main.parts-main div{ width: 100%;}
	.made-in-japan{ display: block;}
	.made-in-japan .leftcol{ margin: 0 0 10px;}
	.made-in-japan .rightcol{ text-align: center;}
	.bg-gray{ padding: 20px;}
	.tb1 th,.tb1 td{
		font-size: 16px;
		padding: 3px 5px;
	}
	.tb1 td.w70p{ width: auto;}
	.tb2 th,.tb2 td{
		font-size: 16px;
		padding: 10px;
	}
	.tb3 th,.tb3 td{ padding: 5px 10px;}
	.tb4{
		width: 100%;
		border-top: 1px solid #ccc;
	}
	.tb4 th,.tb4 td{
		padding: 10px 0;
		border-bottom: 1px solid #ccc;
	}
	table.tb-sp th,table.tb-sp td{ display: block;} 
	table.tb4.tb-sp th{
		padding: 8px 0 0;
		border-bottom: none;
	}
	table.tb4.tb-sp td{ padding: 2px 0 8px;}
	table.tb4 td.sp-bd-no{
		border-bottom: none;
		padding-bottom: 2px;
	}
	ol.pan{ padding: 10px 20px;}
}

/* wpeditor */
.wpeditor{ text-align: left; clear: both;}
.wpeditor *:first-child{ margin-top: 0!important;}
.wpeditor h1,.wpeditor h2,.wpeditor h3,.wpeditor h4,.wpeditor h5,.wpeditor h6,.wpeditor a{ color: #0F3286; line-height: 1.4; margin-top: 2em;}
.wpeditor a{ text-decoration: underline;}
.wpeditor h1{ font-size: 32px;}
.wpeditor h2{ font-size: 30px;}
.wpeditor h3{ font-size: 28px;}
.wpeditor h4{ font-size: 24px;}
.wpeditor h5{ font-size: 20px;}
.wpeditor h6{ font-size: 18px;}
.wpeditor p, .wpeditor ul, .wpeditor ol, .wpeditor table{ margin-top: 2em;}
.wpeditor figure{ text-align: center;}
.wpeditor img{ display: block; margin: 2em auto 0;}
.wpeditor p.date{ text-align: right;}
@media screen and (max-width: 768px){
	.wpeditor{ padding-top: 15px;}
	.wpeditor h1{ font-size: 20px;}
	.wpeditor h2{ font-size: 18px;}
	.wpeditor h3{ font-size: 16px;}
	.wpeditor h4{ font-size: 15px;}
	.wpeditor h5{ font-size: 14px;}
	.wpeditor h6{ font-size: 13px;}
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
}



/*----------------------------------------------
	footer
-----------------------------------------------*/

footer .footer-cont{
	color: #fff;
	text-align: left;
	padding: 75px 0 80px;
	background: #022f63;
}
footer .footer-cont a{ color: #fff;}
footer .footer-cont .footer-cart a{
	border: 1px solid #fff;
	padding: 10px 42px;
	display: inline-block;
}
footer .footer-cont .wrap{
	display: flex;
	justify-content: space-between;
}
footer .footer-cont .wrap .footer-logo{
	padding-top: 10px;
	margin-right: 100px;
}
footer .footer-cont .wrap div ul li a{
	padding-left: 1em;
	position: relative;
	display: inline-block;
}
footer .footer-cont .wrap div ul li a:before{
	content: "・";
	position: absolute;
	top: 0;
	left: -.3em;
}
footer .footer-cont .wrap a.footer-btn{
	text-align: center;
	border: 1px solid #fff;
	display: inline-block;
	padding: 7px;
	min-width: 180px;
	background: #022f63;
	margin-bottom: 5px;
}
footer .copy{
	font-size: 18px;
	padding: 25px;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	footer .footer-cont{ padding: 35px 0 40px;}
	footer .footer-cont .wrap{ display: block;}
	footer .footer-cont .wrap .footer-logo{
		text-align: center;
		padding-top: 10px;
		margin: 0 0 20px;
	}
	footer .footer-cont .wrap div{ margin-bottom: 1em;}
	footer .footer-cont .wrap a.footer-btn{ padding: 5px;}
	footer .footer-cont .footer-cart a{ padding: 5px 35px;}
	footer .copy{
		font-size: 16px;
		line-height: 1.4;
		padding: 20px;
	}
}



/* top */
.top-product{ padding-top: 75px;}
.top-product ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.top-product ul li{
	width: 46.3%;
	margin-bottom: 55px;
}
.top-product ul li figure{
	margin-bottom: 15px;
}
.top-product ul li dl{
	text-align: left;
	font-size: 16px;
	margin-bottom: 20px;
}
.top-product ul li dl dt{
	font-size: 24px;
	line-height: 1.4;
}
.top-product ul li .btn1{
	padding: 15px;
	min-width: 240px;
}
.top-order{ margin-bottom: 120px;}
.top-order .gallery{
	display: flex;
	margin-bottom: 50px;
}
.top-room .cont{
	display: flex;
	justify-content: space-between;
}
.top-room .cont .leftcol{ width: 62%;}
.top-room .cont ul{ width: 37%;}
.top-room .cont ul li{ margin-bottom: 10px;}



/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.top-product{ padding-top: 35px;}
	.top-product ul{ display: block;}
	.top-product ul li{
		width: 100%;
		margin-bottom: 35px;
	}
	.top-product ul li figure{ margin-bottom: 10px;}
	.top-product ul li dl{
		font-size: 14px;
		margin-bottom: 10px;
	}
	.top-product ul li dl dt{ font-size: 20px;}
	.top-product ul li .btn1{
		padding: 10px 20px;
		min-width: inherit;
	}
	.top-order{ margin-bottom: 80px;}
	.top-order .gallery{ margin-bottom: 30px;}
	.top-room .cont{ display: block;}
	.top-room .cont .leftcol{ width: 100%; margin-bottom: 10px;}
	.top-room .cont ul{ width: 100%;}
}



/* illumination */
.illumination1{
	text-align: left;
	margin-bottom: 110px;
}
.illumination1 .clm4{ display: flex;}
.illumination2{
	text-align: left;
	margin-bottom: 85px;
}
.illumination2 ul.illumination2-list{
	display: flex;
	flex-wrap: wrap;
}
.illumination2 ul.illumination2-list li{
	width: 31.48%;
	margin: 0 2.7% 55px 0;
}
.illumination2 ul.illumination2-list li.w480{ width: 44.44%;}
.illumination2 ul.illumination2-list li:nth-child(3n){ margin-right: 0;}
.illumination2 ul.illumination2-list li figure{ margin-bottom: 15px;}
.illumination3{ margin-bottom: 60px;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.illumination1{ margin-bottom: 60px;}
	.illumination2{ margin-bottom: 45px;}
	.illumination2 ul.illumination2-list{ display: block;}
	.illumination2 ul.illumination2-list li{
		width: 100%;
		margin: 0 0 35px;
	}
	.illumination2 ul.illumination2-list li.w480{ width: 100%;}
	.illumination2 ul.illumination2-list li figure{ margin-bottom: 10px;}
	.illumination3{ margin-bottom: 40px;}
}



/* lantern */
.lantern2{
	text-align: left;
	margin-bottom: 110px;
}
.lantern2 .lantern2-box{
	font-size: 18px;
	line-height: 1.6;
	position: relative;
}
.lantern2 .lantern2-box .abs{
	position: absolute;
	top: 0;
	right: 0;
}
.lantern2 .lantern2-box .abs p{ margin-bottom: 1em;}
.lantern2 .lantern2-box ul{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.lantern2 .lantern2-box ul li{ width: 22%;}
.lantern2 .lantern2-box ul li:nth-child(3){ margin-bottom: 38px;}
.lantern2 .lantern2-box ul li:nth-child(4){
	margin-bottom: 38px;
	width: 26%;
}
.lantern2 .lantern2-box ul li figure{ margin-bottom: 20px;}
.lantern2 .lantern2-box ul li span{
	text-align: center;
	border: 1px solid #999;
	display: inline-block;
	padding: 3px;
	margin-left: 10px;
	min-width: 150px;
}
.lantern2 ul.clm6{
	display: flex;
	justify-content: space-between;
}
.lantern2 ul.clm6 li{
	font-size: 18px;
	text-align: center;
	width: 16%;
}
.lantern2 ul.clm6 li figure{ margin-bottom: 5px;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.lantern2{ margin-bottom: 40px;}
	.lantern2 .lantern2-box{ font-size: 16px;}
	.lantern2 .lantern2-box .abs{
		position: static;
	}
	.lantern2 .lantern2-box ul{
		flex-wrap: wrap;
	}
	.lantern2 .lantern2-box ul li{ width: 48%; margin-bottom: 40px;}
	.lantern2 .lantern2-box ul li:nth-child(3){ margin-bottom: 40px;}
	.lantern2 .lantern2-box ul li:nth-child(4){
		width: 48%;
		margin-bottom: 40px;
	}
	.lantern2 .lantern2-box ul li figure{ margin-bottom: 15px;}
	.lantern2 .lantern2-box ul li span{ width: 100%; margin-left: 0;}
	.lantern2 ul.clm6{ flex-wrap: wrap;}
	.lantern2 ul.clm6 li{
		font-size: 16px;
		width: 48%;
		margin-bottom: 20px;
	}
}



/* kumiko */
.kumiko1{ margin-bottom: 100px;}
.kumiko1 .kumiko-list{
	text-align: left;
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;
}
.kumiko1 .kumiko-list li p{ margin-bottom: 10px;}
.kumiko2{ margin-bottom: 60px;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.kumiko1{ margin-bottom: 60px;}
	.kumiko1 .kumiko-list{
		display: block;
		margin-bottom: 20px;
	}
	.kumiko1 .kumiko-list li{ margin-bottom: 30px;} 
	.kumiko2{ margin-bottom: 40px;}
}



/* hdu-hcz */
.hdu-hcz-anc{ margin-bottom: 80px;}
.hdu-hcz-anc .anc-cont{
	display: flex;
	justify-content: center;
}
.hdu-hcz-anc .anc-cont a{
	display: block;
	width: 306px;
	margin:  0 20px 20px;
	border: 3px solid #fff;
}
.hdu-hcz-anc .anc-cont a:hover{ border: 3px solid #9a8134;}
.hdu-hcz-anc .anc-cont a p{
	font-size: 18px;
	padding: 5px;
	background: #f0f5fa;
}
.hdu-hcz1{
	margin-bottom: 60px;
}
.hdu-hcz1 .f18{ line-height: 1.4;}
.hdu-hcz1 ul.clm2{
	display: flex;
	justify-content: space-between;
}
.hdu-hcz1 ul.clm2 li{
	line-height: 1.4;
	text-align: center;
	width: 48%;
	margin-bottom: 35px;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.hdu-hcz-anc{ margin-bottom: 20px;}
	.hdu-hcz-anc .anc-cont{
		display: flex;
		justify-content: center;
	}
	.hdu-hcz-anc .anc-cont a{
		width: 306px;
		margin: 0 3px 20px;
		border: 2px solid #fff;
	}
	.hdu-hcz-anc .anc-cont a:hover{ border: 2px solid #9a8134;}
	.hdu-hcz-anc .anc-cont a p{
		font-size: 14px;
		line-height: 1.2;
		padding: 10px 5px;
	}
	.hdu-hcz1{ margin-bottom: 40px;}
	.hdu-hcz1 ul.clm2{ display: block;}
	.hdu-hcz1 ul.clm2 li{
		width: 100%;
		margin-bottom: 30px;
	}
}



/* product-cart */
.product-cart{
	text-align: left;
	border-top: 1px solid #cdcdcd;
	padding-top: 100px;
}
.product-cart .tb2 select{ width: 100%;}
.product-cart .tb2 select.w160{ width: 160px;}
.product-cart .tb2 input[type="text"]{ width: 220px;}
.maxw-750{
	max-width: 750px;
	margin-right: auto;
	margin-left: auto;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.product-cart{ padding-top: 50px;}
	.product-cart .tb2 select.w160{ width: 120px;}
	.product-cart .tb2 input[type="text"]{ width: 120px;}
}



/* cart */
.cart1{
	padding-top: 140px;
	margin-bottom: 120px;
}
.cart1 .cart1-tb{ width: calc(100% - 65px);}
.cart1 .cart1-tb .tb1 td{
	text-align: center;
	vertical-align: middle;
	position: relative;
	padding-right: 11px;
	padding-left: 11px;
}
.cart1 .cart1-tb .tb1 td .abs{
	position: absolute;
	top: 0;
	right: -65px;
	bottom: 0;
	margin: auto 0;
	display: flex;
	align-items: center;
}
.cart1 .cart1-tb .tb1 td .abs button{
	border: 1px solid #b3b3b3;
	border-radius: 4px;
	padding: 2px 5px;
}
.cart1 select{
	text-align: center;
	width: 80px;
}
.cart1 .cart1-tb .tb1 .w110{ width: 110px;}
.cart1 .cart1-tb .tb1 .w150{ width: 150px;}
.cart1 .cart1-tb .tb1 td.t-left{ text-align: left;}
.cart1 .cart1-tb .tb1 td.t-right{ text-align: right;}
.cart1 .cart1-tb .tb1 td.bd-right-no{
	border-right: none;
	padding-left: 0;
}
.cart1 .price{
	text-align: right;
	border: 1px solid #ccc;
	border-top: none;
	display: flex;
	width: 100%;
}
.cart1 .price div,.cart1 .price .yen{ padding: 10px;}
.cart1 .price .yen{ width: 110px;}
.cart1 .price.bg-aqua{ background: #f0f5fa;}
.cart1 .price div{ flex: 1;}
.cart1 .price div p{
	display: inline-block;
	width: 100px;
	text-align: left;
}
.cart2{ margin-bottom: 60px;}
.cart2 .tb3{ text-align: left;}
.cart2 .tb3 th,.cart2 .tb3 td{ vertical-align: top;}
.cart2 .tb3 th{ width: 32%;}
.cart2 .tb3 td{ width: 68%;}
.cart2 .tb3 label{
	display: inline-block;
	margin-right: 1em;
}
.cart2 .tb3 input[type="text"]{
	height: 32px;
	line-height: 32px;
	border: none;
}
.cart2 .tb3 input.w130{ max-width: 130px;}
.cart2 .tb3 input.w180{ max-width: 180px;}
.cart2 .tb3 input.w200{ max-width: 200px;}
.cart2 .tb3 input.w280{ max-width: 280px;}
.cart2 .tb3 input.w300{ max-width: 300px;}
.cart2 .tb3 input.w400{ max-width: 400px;}
.cart2 .tb3 .add{ display: flex;}
.cart1 select,.cart2 select{
	height: 32px;
	line-height: 32px;
	margin-right: 8px;
	border: 1px solid #ccc;
}
.cart1 select{ width: 80px;}
.cart2 select{ width: 200px;}
.cart2 .tb3 dl dd .add select{ width: 128px;}
.cart2 .tb3 .add input{ flex: 1;}
.cart2 .tb3 dl{
	display: flex;
	align-items: center;
	margin-bottom: 5px;
}
.cart2 .tb3 dl dt{ width: 150px;}
.cart2 .tb3 dl dd{ flex: 1;}
.cart2 .tb3 textarea{
	height: 132px;
	border: none;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.cart1{
		padding-top: 20px;
		margin-bottom: 70px;
	}
	.cart1 .cart1-tb{
		font-size: 12px;
		width: calc(100% - 25px);
	}
	.cart1 .cart1-tb.confirm{
		width: calc(100%);
	}
	.cart1 .cart1-tb .tb1 td.bd-right-no{ padding-left: 2px;}
	.cart1 .cart1-tb th,.cart1 .cart1-tb td{ font-size: 10px;}
	.cart1 .cart1-tb .tb1 td{
		padding-right: 5px;
		padding-left: 5px;
	}
	.cart1 .cart1-tb .tb1 td .abs{ right: -30px;}
	.cart1 .cart1-tb .tb1 td .abs button{ padding: 1px 2px;}
	.cart1 select,.cart2 select{
		font-size: 12px;
		width: 40px;
		padding: 0 2px;
	}
	.cart1 .cart1-tb .tb1 .w110{ width: auto;}
	.cart1 .cart1-tb .tb1 .w150{ width: auto;}
	.cart1 .cart1-tb .tb1 td.yen{ padding-right: 3px;}
	.cart2{ margin-bottom: 40px;}
	.cart2 .tb3{ font-size: 12px;}
	.cart2 .tb3 th,.cart2 .tb3 td{
		padding: 3px 5px;
		vertical-align: middle;
		width: auto;
	}
	.cart2 .tb3 label{ margin-right: .5em;}
	.cart2 .tb3 input.w130{ max-width: 80px;}
	.cart2 .tb3 input.w180{ max-width: 100px;}
	.cart2 .tb3 input.w200{ max-width: 120px;}
	.cart2 .tb3 input.w280{ max-width: 200px;}
	.cart2 .tb3 input.w300{ max-width: 240px;}
	.cart2 .tb3 input.w400{ max-width: 280px;}
	.cart2 .tb3 .add{ display: block;}
	.cart1 select,.cart2 select{ margin-right: 4px;}
	.cart1 .price .yen{ width: 150px;}
	.cart1 .price div,.cart1 .price .yen{ padding: 3px;}
	.cart1 .price div{ text-align: left;}
	.cart2 select{
		width: 8.5em;
		margin-bottom: 5px;
	}
	.cart2 .tb3 dl dd .add select{ width: 8.5em;}
}

button:disabled {
  background-color: #ccc;     /* 背景色を薄いグレーに */
}



/* guide */
.guide1{
	font-size: 18px;
	text-align: left;
	padding-top: 140px;
	margin-bottom: 125px;
}
.guide2{
	font-size: 18px;
	text-align: left;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.guide1{
		font-size: 16px;
		padding-top: 20px;
		margin-bottom: 60px;
	}
	.guide2{
		font-size: 16px;
		line-height: 1.6;
	}
}









