@charset "utf-8";

.ttl {}
.ttl p { margin-bottom: 8px; color: #575757; font-size: 12px; text-align: center;}
.ttl h2 { position: relative; line-height: 1; color: #3B1904; font-size:  clamp(20px,3.0vw,30px); font-weight: 700; letter-spacing: 0.08rem; text-align: center;}
.ttl h2.line span { position: relative; display: inline-block; padding: 0 20px; background: #fff; z-index: 2;}
.ttl h2.line:after { content: ''; display: block; width: 65%; max-width: 320px; height: 3px; background: #CA2C55;
 position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
}
.ttl h2.icn:before { content: ''; display: inline-block; width: 60px; height: 60px; vertical-align: middle; margin-right: 10px;}
.ttl h2.icn span { display: inline-block; vertical-align: middle;}
@media (max-width: 481px) {
	.ttl p { margin-bottom: 4px;}
	.ttl h2.line span { padding: 0 12px;}
	.ttl h2.icn:before { width: 40px; height: 40px;}
}


#kv .inner-kv { padding-top: 72px;}
#kv picture { display: block; width: 100%;}
#kv picture img { width: 100%;}
#kv .btn-bloc { padding: 30px 0; background: #666;}
#kv .btn-bloc a { position: relative; display: block; width: 88%; max-width: 400px; margin: 0 auto; padding: 12px 24px; background: #CA2C55; border: solid 2px #EE7393; border-radius: 50px;
 color: #fff; font-size: 23px; font-weight: 700; text-align: center; text-decoration: none; text-indent: -20px;
}
#kv .btn-bloc a:hover { opacity: 0.8;}
#kv .btn-bloc a:after { content: ''; display: block; width: 21px; height: 21px;
	 background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><path d="M25,0C11.2,0,0,11.2,0,25s11.2,25,25,25,25-11.2,25-25S38.8,0,25,0ZM25,39.4l-13.4-23.2h26.8l-13.4,23.2Z" fill="%23ffffff" /></svg>');
 background-size: 100% auto; background-repeat: no-repeat; background-position: 50% 50%;
 position: absolute; right: 16px; top: 50%; transform: translateY(-50%);
}
@media (max-width: 641px) {
	#kv .btn-bloc { padding: 12px 0 16px;}
}
@media (max-width: 481px) {
	#kv .inner-kv { padding-top: 48px;}
	#kv .btn-bloc a { font-size: 18px; text-align: center; text-indent: -10px;}
	#kv .btn-bloc a span { display: inline-block; margin-right: 10px; vertical-align: middle;}
	#kv .btn-bloc a:after { display: inline-block; vertical-align: middle;}
}


#bnr-area {}
#bnr-area .inner { padding: 50px 0 80px;}
#bnr-area h3 { margin-bottom: 20px; font-size: clamp(18px,3.0vw,30px); font-weight: 700; text-align: center; }
#bnr-area h3:before,
#bnr-area h3:after { content: ''; position: relative; display: inline-block; width: 2px; height: 32px; background: #CA2C55; vertical-align: middle;}
#bnr-area h3:before{ transform: rotate(-35deg);}
#bnr-area h3:after { transform: rotate(35deg);}
#bnr-area h3 span { display: inline-block; margin: 0 20px; vertical-align: middle;}
#bnr-area h3 em { color: #CA2C55;}
#bnr-area .slider span,
#bnr-area .slider a { display: block; width: 96%; max-width: 480px; margin: 0 auto;}
#bnr-area .slider span img,
#bnr-area .slider a img { width: 100%;}
@media (max-width: 481px) {
	#bnr-area .inner { padding: 40px 0;}
	#bnr-area h3:before,
	#bnr-area h3:after { height: 28px;}
}


#market { background: #000;}
#market .ttl { padding: 20px 0; background: #C09A35;}
#market .ttl h2 { color: #fff; font-weight: 700; text-align: center;}
#market .ttl h2 img { width: 80%; max-width: 420px;}
#market .inner-sct { background: url('../img/bg/1.jpg') no-repeat 50% 100% / auto auto}
#market .bg { padding-bottom: 40px; background: linear-gradient(rgba(0,0,0,1), rgba(0,0,0,0.6));}
#market .bg:before { content: ''; display: block; width: 0px; height: 0px; margin: 0px auto;
	border: solid 10px transparent; border-top: solid 10px #C09A35; border-bottom: 0;
}
#market .ctn { width: 92%; max-width: 780px; margin: 0 auto; padding: 40px 0 30px;}
#market .ctn .tit { margin-bottom: 20px;}
#market .ctn .tit:after { content: ''; display: block; width: 92%; max-width: 400px; height: 3px; margin: 0 auto; background: #C09A35;}
#market .ctn .tit h3 { margin-bottom: 4px; color: #C09A35; font-size: 16px; text-align: center;}
#market .ctn .tit h3 span { display: inline-block; font-size: clamp(21px,3.0vw,30px); margin-right: 20px; font-weight: 700;}
#market .ctn ul { margin-bottom: 20px; font-size: 0px; text-align: center;}
#market .ctn ul li { padding: 8px 0;}
#market .ctn ul li dl { display: table; width: 100%; background: #fff; border-radius: 8px;}
#market .ctn ul li dl.gd { border: solid 1px #C09A35;}
#market .ctn ul li dl.pt { border: solid 1px #53B1C4;}
#market .ctn ul li dl.sv { border: solid 1px #989898;}

#market .ctn ul li dl dt,
#market .ctn ul li dl dd { display: table-cell; padding: 20px 0; vertical-align: middle;}
#market .ctn ul li dl dt { position: relative; width: 48%; padding-left: 100px; font-size: clamp(15px,3.0vw,30px); font-weight: 700;}
#market .ctn ul li dl.gd dt { background: #FBF2CF; border-right: solid 1px #C09A35; color: #C09A35;}
#market .ctn ul li dl.pt dt { background: #DEEDF9; border-right: solid 1px #53B1C4; color: #53B1C4;}
#market .ctn ul li dl.sv dt { background: #efefef; border-right: solid 1px #989898; color: #4F506D;}
#market .ctn ul li dl dt img { position: absolute; left: 8%; top: 50%; transform: translateY(-50%); width: 80px; }
#market .ctn ul li dl dd { width: 52%; color: #613A22; font-size: 14px; font-weight: 700; line-height: 1.4;}
#market .ctn ul li dl dd span { display: block; font-size: clamp(16px,2.0vw,20px); }
#market .ctn ul li dl dd span em { font-size: clamp(24px,3.6vw,36px); letter-spacing: 0.1rem;}
#market .ctn ul li dl dd em.plus { color: #CA2C55; letter-spacing: 0.05rem;}
#market .ctn ul li dl dd em.minus{ color: #5373C4; letter-spacing: 0.05rem;}
#market .ctn ul li dl dd em.zero { letter-spacing: 0.05rem;}
#market .ctn p { color: #fff; font-size: 16px; text-align: center;}

#market .caution { width: 90%; max-width: 720px; margin: 0 auto; padding: 30px; border: solid 1px #fff;}
#market .caution ul { color: #fff; text-align: center;}
@media (max-width: 801px) {
	#market .ctn ul li dl dt,
	#market .ctn ul li dl dd { padding: 12px 0;}
	#market .ctn ul li dl dt { padding-left: 72px;}
	#market .ctn ul li dl dt img { width: 60px; left: 5%;}
	#market .caution { padding: 20px 0;}
	#market .caution ul { font-size: 13px;}
}
@media (max-width: 481px) {
	#market .ttl { padding: 12px 0 8px;}
	#market .ctn { padding: 20px 0 12px;}
	#market .ctn .tit:after { height: 2px;}
	#market .ctn ul { margin-bottom: 10px;}
	#market .ctn ul li { padding: 5px 0;}
	#market .ctn ul li dl dt { padding-left: 52px;}
	#market .ctn ul li dl dt img { width: 45px; left: 4%;}
	#market .ctn ul li dl dd { font-size: 12px;}
	#market .ctn p { font-size: 13px;}
	#market .caution { padding: 16px 0;}
	#market .caution ul { font-size: 10px;}
}




#purchase { position: relative; background: #fff; z-index: 2;}
#purchase .inner-sct { padding: 60px 0px;}
#purchase .ttl {}
#purchase .ctn { width: 88%; max-width: 1000px; margin: 0 auto; padding: 40px 0;}
#purchase .ctn ul { font-size: 0;}
#purchase .ctn ul li { display: inline-block;}
#purchase .ctn ul.main-cate { margin-bottom: 12px;}
#purchase .ctn ul.main-cate li { width: 33.33335%; padding: 8px;}
#purchase .ctn ul.main-cate li span { display: block; width: 100%; border: solid 2px #CDB6A1; border-radius: 10px; background: #F7F1E7; box-shadow: inset 0px 0px 8px #fff;}
#purchase .ctn ul.main-cate li span img { width: 100%;}
#purchase .ctn ul.sub-cate li { width: 25%; padding: 8px;}
#purchase .ctn ul.sub-cate li span { display: block; width: 100%;}
#purchase .ctn ul.sub-cate li span img { display: block; width: 100%; border-radius: 10px;}
@media (max-width: 801px) {
	#purchase .ctn ul.main-cate li{ width: 50%;}
	#purchase .ctn ul.sub-cate li { width: 33.33335%;}
}
@media (max-width: 641px) {
	#purchase .ctn { padding: 20px 0;}
}
@media (max-width: 481px) {
	#purchase .inner-sct { padding: 40px 0px 20px;}
	#purchase .ctn ul.main-cate { margin-bottom: 8px;}
	#purchase .ctn ul.main-cate li { padding: 4px;}
	#purchase .ctn ul.main-cate li span { border-width: 1px;}
	#purchase .ctn ul.sub-cate li { padding: 4px;}
}



#reason { position: relative; background: #F7F1E7; z-index: 1;}
#reason .inner-sct { position: relative; padding: 220px 0 60px;}
#reason .inner-sct:after { content: ''; display: block; width: 100%; height: 300px;
 position: absolute; left: 0; top: -200px; background: #fff;
 transform: skewY(-8deg);
}
#reason .ttl { margin-bottom: 20px;}
#reason .ttl h2 { margin-bottom: 20px;}
#reason .ttl h2 img { width: 54%; max-width: 400px;}
#reason .ttl:after { content: ''; display: block; width: 40px; height: 3px; margin: 0 auto; background: #CA2C55;}
#reason .bloc { position: relative; z-index: 2; padding: 20px 0;}
#reason .box { width: 88%; max-width: 800px; margin: 0 auto; padding: 40px 30px; background: #fff; border-radius: 20px;}
#reason .box h3 { margin-bottom: 20px; text-align: center;}
#reason .box h3 img { width: 100%;}
#reason .box .txt p { font-size: clamp(14px,1.8vw,18px); letter-spacing: 0.05rem;}
#reason .box .txt p span { font-weight: 700;}
@media (max-width: 641px) {
	#reason .inner-sct { padding: 120px 0 60px;}
	#reason .inner-sct:after { height: 20vw; top: -10vw;}
	#reason .bloc { padding: 12px 0;}
	#reason .box { padding: 30px 20px;}
	#reason .box .txt p br.pc { display: none;}
}
@media (max-width: 481px) {
	#reason .inner-sct { padding: 100px 0 40px;}
	#reason .bloc { padding: 6px 0;}
	#reason .box { padding: 30px 12px;}
	#reason .box h3 { margin-bottom: 12px;}
	#reason .box .txt p { font-size: 12px;}
}


#service { background: url('../img/bg/service.jpg') no-repeat 50% 0 / 1200px auto;}
#service .read { width: 92%; max-width: 680px; margin: 0 auto 40px;}
#service .read.mb { margin-bottom: 60px;}
#service .read p { color: #000; font-size: 18px; line-height: 2;}
#service .read p span { display: inline-block; padding: 0 6px; background: #F7F1E7; font-weight: 700;}

#service .case-1 { padding: 60px 0px; background: linear-gradient(rgba(200,45,85,0.85),rgba(200,45,85,1) 50%);}
#service .case-1 h2 { margin-bottom: 30px; text-align: center;}
#service .case-1 h2 img { width: 90%; max-width: 600px;}
#service .case-1 .read p { color: #fff; text-align: center;}
#service .case-1 .box { position: relative; width: 92%; max-width: 720px; margin: 0 auto; padding: 50px 20px 30px; background: #fff;}
#service .case-1 .box .badge { width: 120px; position: absolute; right: -20px; top: -30px;}
#service .case-1 .box .badge img { width: 100%; border-radius: 50%;}
#service .case-1 .box .box-tit { text-align: center;}
#service .case-1 .box .box-tit:after { content: ''; display: block; width: 0px; height: 0px; margin: 0 auto;
 border: solid 10px transparent; border-top: solid 15px #C09A35; border-bottom: 0;
}
#service .case-1 .box .box-tit h3 { display: inline-block; width: 70%; max-width: 450px; padding: 5px; border-bottom: solid 3px #C09A35; text-align: center;}
#service .case-1 .box .box-tit h3 img { width: 100%;}
#service .case-1 .box ul.item { padding: 10px; font-size: 0;}
#service .case-1 .box ul.item li { display: inline-block; width: 50%; padding: 10px; vertical-align: top;}
#service .case-1 .box ul.item li dl { display: block; width: 100%; background: #fff; box-shadow: 0 4px 15px rgba(0,0,0,0.25);}
#service .case-1 .box ul.item li dl dt img { width: 100%;}
#service .case-1 .box ul.item li dl dd { padding: 20px; line-height: 1.2;}
#service .case-1 .box ul.item li dl dd.name { padding-bottom: 0px; color: #000; font-size: clamp(16px,2.2vw,20px); font-weight: 700;}
#service .case-1 .box ul.item li dl dd.price{ padding-top: 8px; color: #CA2C55; font-size: 14px; font-weight: 700;}
#service .case-1 .box ul.item li dl dd.price span { display: inline-block; vertical-align: middle;}
#service .case-1 .box ul.item li dl dd.price span.icn { display: inline-block; width: 80px; margin-right: 10px; padding: 2px 0; background: #CA2C55; border-radius: 50px;
 color: #fff; font-size: 16px; text-align: center;
}
#service .case-1 .box ul.item li dl dd.price span.yen em { margin-right: 4px; font-size: clamp(16px,3.2vw,30px);}

#service .case-1 .box .btn-more { width: 80%; max-width: 450px; margin: 0 auto;}
#service .case-1 .box .btn-more a { position: relative; display: block; padding: 15px; background: #CA2C55; border-radius: 50px;
 color: #fff; font-size: clamp(16px,2.2vw,20px); font-weight: 700; letter-spacing: 0.1rem; text-align: center; text-decoration: none;
}
#service .case-1 .box .btn-more a:after { content: ''; display: block; width: 21px; height: 21px;
	 background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><path d="M25,0C11.2,0,0,11.2,0,25s11.2,25,25,25,25-11.2,25-25S38.8,0,25,0ZM25,39.4l-13.4-23.2h26.8l-13.4,23.2Z" fill="%23ffffff" /></svg>');
 background-size: 100% auto; background-repeat: no-repeat; background-position: 50% 50%;
 position: absolute; right: 16px; top: 50%; transform: translateY(-50%) rotate(-90deg);
}
#service .case-1 .box .btn-more a:hover { opacity: 0.8;}


#service .case-2 { padding: 40px 0; background: #fff;}
#service .case-2 .topics { position: relative; width: 92%;  max-width: 720px; margin: 0 auto 40px; padding-top: 80px; padding-right: 30px;}
#service .case-2 .topics:after { content: ''; display: block; width: 200px; height: 160px;
 background: url('../img/contents/lady-1.png') no-repeat 50% 0 / 100% auto;
 position: absolute; right: 0; bottom: 0;
}
#service .case-2 .topics h3 { position: relative; display: block; width: 100%; padding: 20px 50px; background: #C09A35;}
#service .case-2 .topics h3:before,
#service .case-2 .topics h3:after { content: ''; display: block; width: 0px; height: 0px; position: absolute; }
#service .case-2 .topics h3:before{ border: solid 10px transparent; border-top: solid 10px #fff; border-left: solid 10px #fff;
	top: -2px; left: -2px;
}
#service .case-2 .topics h3:after{ border: solid 8px transparent; border-bottom: solid 8px #fff; border-right: solid 8px #fff;
	top: 3px; left: 3px;
}
#service .case-2 .topics h3 img { width: 80%; max-width: 300px;}
#service .case-2 .box { position: relative; width: 92%; max-width: 720px; margin: 0 auto; padding: 30px; background: #fff; border: solid 2px #CA2C55;}
#service .case-2 .box .box-tit { position: absolute; left: 0; top: -30px; width: 100%; padding: 0 50px;}
#service .case-2 .box .box-tit h4 { position: relative; background: #fff; color: #CA2C55; font-size: clamp(20px,3.6vw,30px); font-weight: 700; line-height: 1; text-align: center;}
#service .case-2 .box .box-tit h4:before,
#service .case-2 .box .box-tit h4:after { content: ''; position: relative; display: inline-block; width: 2px; height: 50px; background: #CA2C55; vertical-align: middle;}
#service .case-2 .box .box-tit h4:before{ transform: rotate(-30deg);}
#service .case-2 .box .box-tit h4:after { transform: rotate(30deg);}
#service .case-2 .box .box-tit h4 span { display: inline-block; margin: 0 20px; vertical-align: middle;}
#service .case-2 .box .row { padding: 20px 0; border-bottom: solid 2px #DADADA;}
#service .case-2 .box .row.bottom { margin-bottom: 50px; border-bottom: none;}
#service .case-2 .box .check { margin-bottom: 20px;}
#service .case-2 .box .check p { color: #CA2C55; font-size: clamp(16px,3.0vw,24px); font-weight: 700; text-align: center;}
#service .case-2 .box .check p img { display: inline-block; width: 40px; vertical-align: middle; margin-right: 10px;}
#service .case-2 .box .check p span{ display: inline-block; vertical-align: middle;}
#service .case-2 .box .flex { display: flex; justify-content: space-between;}
#service .case-2 .box .pht { width: 30%;}
#service .case-2 .box .txt { width: 70%; padding-left: 10px;}
#service .case-2 .box .pht figure img { width: 100%;}
#service .case-2 .box .txt .inner { position: relative; height: 100%; padding-left: 24px;}
#service .case-2 .box .txt .inner:after { content: ''; display: block; width: 0px; height: 0px;
 position: absolute; left: 0; bottom: 30px; transform: rotate(-10deg);
 border: solid 24px transparent; border-right: 24px #F7F1E7; border-bottom: solid 12px #F7F1E7;
}
#service .case-2 .box .txt .inner div { display: flex; align-items: center; position: relative; height: 100%; padding: 20px; background: #F7F1E7; border-radius: 20px;}
#service .case-2 .box .txt p span { font-weight: 700;}
#service .case-2 .box .comment { position: relative; width: 100%; max-width: 540px; margin: 0 auto; padding: 30px 50px; padding-right: 200px; background: #FFF3F6; border-radius: 20px;}
#service .case-2 .box .comment:after { content: ''; display: block; width: 180px; height: 220px;
 background: url('../img/contents/lady-2.png') no-repeat 50% 0 / 100% auto;
 position: absolute; right: 20px; bottom: 0;
}
#service .case-2 .box .comment p { font-size: clamp(14px,2.0vw,20px); font-weight: 700; letter-spacing: 0.1rem;}
#service .case-2 .box .comment p span { color: #CA2C55; }


#service .howto { padding: 60px 0 150px; background: #fff;}
#service .howto h3 { margin-bottom: 40px; text-align: center;}
#service .howto h3 img { width: 72%; max-width: 450px;}
#service .howto ul { width: 92%; max-width: 680px; margin: 0 auto; text-align: center;}
#service .howto ul li { padding: 8px 0;}
#service .howto ul li dl { display: block; padding: 20px 0 12px; background: #C09A35; border: solid 1px #F0D899; border-radius: 12px;}
#service .howto ul li dl dt { margin-bottom: 8px; color: #fff; font-size: clamp(16px,2.4vw,20px); font-weight: 700;}
#service .howto ul li dl dt span { display: inline-block; padding: 2px 10px; border-bottom: solid 1px #fff;}
#service .howto ul li dl dd { color: #fff; font-size: clamp(24px,3.6vw,36px); font-weight: 700;}
#service .howto ul li dl dd img { display: inline-block; width: 50px; margin-right: 18px; vertical-align: middle}
#service .howto ul li dl dd span { display: inline-block; vertical-align: middle}

@media (max-width: 801px) {
	#service { background-size: 100% auto;}
	#service .read p { font-size: 16px;}
}
@media (max-width: 641px) {
	#service .read { margin-bottom: 30px;}
	#service .read.mb { margin-bottom: 40px;}
	#service .read p { font-size: 14px;}
	#service .read p br.pc { display: none;}
	#service .case-1 h2 { margin-bottom: 20px;}
	#service .case-1 .box .badge { width: 100px; right: -12px; top: -20px;}
	#service .case-1 .box .box-tit:after { border: solid 8px transparent; border-top: solid 12px #C09A35; border-bottom: 0;}
	#service .case-1 .box ul.item { padding: 8px;}
	#service .case-1 .box ul.item li dl dd { padding: 12px;}
	#service .case-1 .box ul.item li dl dd.price { padding-top: 6px; font-size: 12px;}
	#service .case-1 .box ul.item li dl dd.price span.icn { width: 60px; font-size: 12px;}

	#service .case-2 .topics { padding-top: 32px;}
	#service .case-2 .topics:after { width: 120px; height: 100px;}
	#service .case-2 .topics h3 { padding: 12px 40px;}

	#service .case-2 .box .row { padding: 12px 0; border-width: 1px;}
	#service .case-2 .box .box-tit { top: -18px;}
	#service .case-2 .box .box-tit h4:before,
	#service .case-2 .box .box-tit h4:after { height: 30px;}
	#service .case-2 .box .check p img { width: 30px;}
	#service .case-2 .box .pht { width: 40%;}
	#service .case-2 .box .txt { width: 60%; padding-left: 6px;}

	#service .case-2 .box .comment { padding: 20px 30px; padding-right: 150px;}
	#service .case-2 .box .comment:after { width: 140px; height: 168px; right: 12px;}
	
	#service .howto h3 { margin-bottom: 30px;}
	#service .howto ul li { padding: 6px 0;}
	#service .howto ul li dl { padding: 12px 0px;}
}
@media (max-width: 481px) {
	#service .read p { font-size: 13px; line-height: 1.8;}
	#service .case-1 h2 { margin-bottom: 12px;}
	#service .case-1 .box .badge { width: 72px;}
	#service .case-1 .box { padding: 30px 0px 20px;}
	#service .case-1 .box ul.item li { padding: 5px;}
	#service .case-1 .box ul.item li dl { box-shadow: 0 2px 8px rgba(0,0,0,0.25);}
	#service .case-1 .box ul.item li dl dd { padding: 8px;}
	#service .case-1 .box ul.item li dl dd.price { padding-top: 4px; font-size: 10px;}
	#service .case-1 .box ul.item li dl dd.price span.icn { width: 48px; margin-right: 4px; font-size: 11px;}
	#service .case-1 .box .btn-more a { padding: 9px 0;}

	#service .case-2 { padding: 20px 0 40px;}
	#service .case-2 .topics { margin-bottom: 20px;}
	#service .case-2 .topics:after { content: ''; display: block; width: 100px; height: 84px;}
	#service .case-2 .topics h3 { padding-left: 25px;}
	#service .case-2 .topics h3:before{ border: solid 8px transparent; border-top: solid 8px #fff; border-left: solid 8px #fff;}
	#service .case-2 .topics h3:after{ border: solid 5px transparent; border-bottom: solid 5px #fff; border-right: solid 5px #fff;}
	#service .case-2 .box { padding: 20px;}
	#service .case-2 .box .box-tit { padding: 0 12px;}
	#service .case-2 .box .box-tit h4 span { margin: 0 15px;}
	#service .case-2 .box .row.bottom { margin-bottom: 30px;}
	#service .case-2 .box .check { margin-bottom: 12px;}
	#service .case-2 .box .check p img { width: 21px;}
	
	#service .case-2 .box .txt .inner { padding-left: 12px;}
	#service .case-2 .box .txt .inner:after { left: -8px; transform: rotate(-10deg);}
	#service .case-2 .box .txt .inner div { padding: 12px; border-radius: 12px;}
	#service .case-2 .box .txt p { font-size: 12px;}

	#service .howto { padding: 40px 0 80px;}
	#service .howto ul li { padding: 2px 0;}
	#service .howto ul li dl dd img { width: 40px; margin-right: 10px; }

	#service .case-2 .box .comment { padding: 12px 24px; border-radius: 12px;}
	#service .case-2 .box .comment:after { content: ''; display: block; width: 90px; height: 110px; right: 10px;}

}




#shop { background: #F7F1E7;}
#shop .inner-sct { position: relative; padding: 100px 0px 80px;}
#shop .logo { position: absolute; left: 0; top: -72px; width: 100%;}
#shop .logo div { width: 25%; max-width: 150px; margin: 0 auto;}
#shop .logo div figure { position: relative; width: 100%; padding-top: 90%; background: #fff; border: solid 6px #F7F1E7; border-radius: 50%;}
#shop .logo div figure img { position: absolute; left: 50%; top: 50%; width: 80%; transform: translate(-50%,-50%);}
#shop .title { margin-bottom: 30px;}
#shop .title h2 { color: #000; font-size: clamp(14px,2.0vw,20px); text-align: center;}
#shop .title h2 img { display: block; width: 80%; max-width: 400px; margin: 0 auto 8px;}
#shop .slider { margin-bottom: 40px;}
#shop .slider figure { padding: 0 15px;}
#shop .slider figure img { margin: 0 auto; width: 100%;}
#shop .info { position: relative; width: 88%; max-width: 720px; margin: 0 auto 40px; padding: 40px 0; background: #fff; background: #fff;}
#shop .info:before,
#shop .info:after { content: ''; display: block; width: 100px; height: 60px; position: absolute;}
#shop .info:before{ top: 0; left: 0; border-top: solid 2px #C09A35; border-left: solid 2px #C09A35; }
#shop .info:after { right: 0; bottom: 0; border-right: solid 2px #C09A35; border-bottom: solid 2px #C09A35; }
#shop .info p { color: #000; text-align: center;}
#shop .info p.tel { margin-bottom: 8px; font-size: clamp(21px,3.0vw,30px); font-weight: 700;
}

#shop .map { width: 88%; max-width: 720px; margin: 0 auto 40px;}
#shop .map .view { width: 100%; height: 360px; background: #eee;}
#shop .map .view iframe { width: 100%; height: 100%; border: none;}

#shop .box { position: relative; width: 92%; max-width: 720px; margin: 0 auto; padding: 30px; background: #fff;}
#shop .box .badge { width: 120px; position: absolute; right: -20px; top: -30px;}
#shop .box .badge img { width: 100%; border-radius: 50%;}
#shop .box .box-tit { text-align: center;}
#shop .box .box-tit:after { content: ''; display: block; width: 0px; height: 0px; margin: 0 auto;
 border: solid 10px transparent; border-top: solid 15px #CA2C55; border-bottom: 0;
}
#shop .box .box-tit p { color: #000; font-size: clamp(18px,3.0vw,24px); font-weight: 700;}
#shop .box .box-tit h3 { color: #CA2C55; font-size: clamp(21px,3.6vw,30px); font-weight: 700;}
#shop .box .box-tit h3 { display: inline-block; width: 72%; max-width: 450px; padding: 5px; border-bottom: solid 3px #CA2C55; text-align: center;}

#shop .box .sale { margin-bottom: 20px;}
#shop .box .sale ul { font-size: 0;}
#shop .box .sale ul li { display: inline-block; width: 50%; padding: 10px; vertical-align: top;}
#shop .box .sale ul li dl { display: block; width: 100%; background: #fff; box-shadow: 0 4px 15px rgba(0,0,0,0.25);}
#shop .box .sale li dl dt img { width: 100%;}
#shop .box .sale ul li dl dd { padding: 20px; line-height: 1.2;}
#shop .box .sale ul li dl dd.name { padding-bottom: 0px; color: #000; font-size: clamp(14px,2.4vw,20px); font-weight: 700;}
#shop .box .sale ul li dl dd.price{ padding-top: 8px; color: #C09A35; font-size: 14px; font-weight: 700;}
#shop .box .sale ul li dl dd.price span { display: inline-block; vertical-align: middle;}
#shop .box .sale ul li dl dd.price span.icn { display: inline-block; width: 80px; margin-right: 10px; padding: 1.5px 0 3px; background: #C09A35; border-radius: 50px;
 color: #fff; font-size: 16px; text-align: center;
}
#shop .box .sale ul li dl dd.price span.yen em { margin-right: 4px; font-size: clamp(16px,3.2vw,30px);}
#shop .box .bnr { width: 100%; padding: 10px;}
#shop .box figure img { width: 100%;}

@media (max-width: 801px) {
	#shop .box .sale ul li dl dd.price { font-size: 12px;}
	#shop .box .sale ul li dl dd.price span.icn { width: 60px; font-size: 13px;}
}
@media (max-width: 641px) {
	#shop .map .view { height: 250px;}
	#shop .box { padding: 20px;}
	#shop .box .badge { width: 80px; right: -12px; top: -20px;}
	#shop .box .box-tit:after { border: solid 8px transparent; border-top: solid 10px #CA2C55; border-bottom: 0;}
	#shop .box .sale ul li { padding: 8px;}
	#shop .box .sale ul li dl dd { padding: 12px;}
	#shop .box .sale ul li dl dd.price { padding-top: 6px; font-size: 12px;}
	#shop .box .sale ul li dl dd.price span.icn { width: 60px; font-size: 12px;}
}
@media (max-width: 481px) {
	#shop .inner-sct { position: relative; padding: 100px 0px 60px;}
	#shop .logo { top: -36px;}
	#shop .slider figure { padding: 0 6px;}
	#shop .info { padding: 12px 0 20px;}
	#shop .info p { font-size: 13px;}
	#shop .box .sale { margin-bottom: 12px;}
	#shop .box { padding: 12px;}
	#shop .box .badge { width: 72px;}
	#shop .box .sale ul li { padding: 5px;}
	#shop .box .sale ul li dl { box-shadow: 0 2px 8px rgba(0,0,0,0.25);}
	#shop .box .sale ul li dl dd { padding: 8px;}
	#shop .box .sale ul li dl dd.price { padding-top: 4px; font-size: 10px;}
	#shop .box .sale ul li dl dd.price span.icn { width: 48px; margin-right: 4px; font-size: 11px;}
	#shop .box .bnr { padding: 5px;}
	#shop .map .view { height: 200px;}
}



#staff { background: #fff;}
#staff .inner-sct { padding: 60px 0px;}
#staff .read { padding: 20px 0;}
#staff .read h3 { color: #C09A35; font-size: clamp(18px,3.0vw,24px); font-weight: 700; text-align: center;}
#staff .bloc { padding: 20px 0;}
#staff .box { width: 92%; max-width: 720px; margin: 0 auto; padding: 30px; border: solid 2px #C09A35; box-shadow: 4px 4px 0 #C09A35; background: #FFFAF3;}
#staff .box .prof { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;}
#staff .box .pht { width: 50%;}
#staff .box .txt { width: 50%;}
#staff .box .pht figure img { width: 90%; border-radius: 20px;}
#staff .box .txt p.logo { margin-bottom: 10px;}
#staff .box .txt p.logo img { width: 100%;}
#staff .box .txt p.status { font-size: 16px; font-weight: 700;}
#staff .box .txt .name { position: relative; padding-bottom: 10px; }
#staff .box .txt .name:before,
#staff .box .txt .name:after { content: ''; display: block; height: 4px; position: absolute; left: 0; bottom: 0;}
#staff .box .txt .name:before{ width: 100%; background: #A4A4A4;}
#staff .box .txt .name:after{ width: 40%; background: #C09A35;}
#staff .box .txt .name p { font-size: clamp(14px,1.8vw,18px); font-weight: 700;}
#staff .box .txt .name p span { font-size: clamp(16px,2.1vw,21px);}
#staff .box .ctn { }
#staff .box .ctn ul {}
#staff .box .ctn ul li { padding: 10px 0; border-bottom: dashed 2px #C09A35;}
#staff .box .ctn ul li:last-child { border-bottom: 0px;}
#staff .box .ctn ul li dl { display: table; width: 100%;}
#staff .box .ctn ul li dl dt,
#staff .box .ctn ul li dl dd { display: table-cell;}
#staff .box .ctn ul li dl dt { width: 200px; color: #CA2C55; font-size: 20px; font-weight: 700;}
#staff .box .ctn ul li dl dd { width: auto; color: #000; font-size: 18px;}
@media (max-width: 801px) {
	#staff .read { padding: 12px 0;}
	#staff .box { padding: 20px;}
}
@media (max-width: 481px) {
	#staff .inner-sct { padding: 40px 0px;}
	#staff .read { padding: 6px 0;}
	#staff .bloc { padding: 12px 0;}
	#staff .box { border-width: 1px;}
	#staff .box .pht figure img { border-radius: 12px;}
	#staff .box .txt p.status { font-size: 12px;}

	#staff .box .ctn ul li { padding: 8px 0;}
	#staff .box .ctn ul li dl dt { width: 130px; font-size: 13px;}
	#staff .box .ctn ul li dl dd { font-size: 13px;}
}


#voice { background: #f7f7f7;}
#voice .inner-sct { padding: 80px 0 60px;}
#voice .ttl {}
#voice .ttl p { margin-bottom: 0px;}
#voice .ttl h2 { color: #ca2c55;}
#voice .ttl h2.icn:before {
 background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80"><g fill="%23ca2c55"><path d="M67.2,24.3c-1.1-1.1-2.6-1.7-4.1-1.7h-2.9v20.3c0,1.5-.6,3-1.7,4.1s-2.6,1.7-4.1,1.7h-31.8v2.9c0,1.5.6,3,1.7,4.1,1.1,1.1,2.6,1.7,4.1,1.7h28.9l11.6,11.6V28.4c0-1.5-.6-3-1.7-4.1Z"/><path d="M51.6,45.8c3.2,0,5.8-2.6,5.8-5.8v-23.1c0-3.2-2.6-5.8-5.8-5.8H16.9c-3.2,0-5.8,2.6-5.8,5.8v40.5l11.6-11.6h28.9Z"/></g></svg>');
 background-size: 100% auto; background-repeat: no-repeat; background-position: 50% 50%;
}
#voice .bloc { padding: 16px 0px;}
#voice .box { position: relative; width: 88%; max-width: 680px; margin: 0 auto; border: solid 1px #ca2c55; border-radius: 20px; overflow: hidden;}
#voice .box .box-tit { position: relative; padding: 20px; padding-left: 200px; background: #ca2c55;}
#voice .box .box-tit .pht { width: 140px; position: absolute; left: 30px; top: 25px;}
#voice .box .box-tit .pht figure img { width: 100%; border-radius: 50%;}
#voice .box .box-tit p { position: relative; color: #fff; font-size: 16px;}
#voice .box .box-tit p span{ display: block; font-size: clamp(15px,2.1vw,21px); font-weight: 700;}
#voice .box .tit { position: relative; min-height: 80px; padding: 20px; padding-left: 200px; }
#voice .box .tit h3 { color: #ca2c55; font-size: clamp(20px,3.0vw,24px); font-weight: 700; line-height: 1.4;}
#voice .box .txt { position: relative; width: 90%; margin: 0 auto; padding: 20px 0; border-top: dashed 1px #DADADA;}
#voice .box .txt p { color: #000; font-size: 18px;}
@media (max-width: 641px) {
	#voice .box .box-tit .pht { width: 120px; left: 20px; top: 18px;}
	#voice .box .box-tit { padding: 12px; padding-left: 160px;}
	#voice .box .tit { padding: 12px; padding-left: 160px;}
	#voice .box .txt p { font-size: 16px;}
}
@media (max-width: 481px) {
	#voice .inner-sct { padding: 40px 0px;}
	#voice .bloc { padding: 12px 0px;}
	#voice .box { border-radius: 12px;}
	#voice .box .box-tit { padding: 10px; padding-left: 100px;}
	#voice .box .box-tit .pht { width: 80px; left: 10px; top: 24px;}
	#voice .box .box-tit p { font-size: 13px;}
	#voice .box .tit { min-height: auto; padding: 12px 0; padding-left: 100px;}
	#voice .box .tit h3 { font-size: 16px;}
	#voice .box .txt p { font-size: 13px;}
}



#faq .inner-sct { padding: 60px 0 80px; background: #fff;}
#faq .ttl { margin-bottom: 12px;}
#faq .ttl h2 {}
#faq .ctn { width: 88%; max-width: 720px; margin: 0 auto;}
#faq .ctn ul li { padding: 15px 0;}
#faq .ctn ul li dl dt { position: relative; padding: 12px; padding-left: 80px; background: #F7F1E7; color: #000; font-size: 20px; font-weight: 700; letter-spacing: 0.1rem; cursor: pointer;}
#faq .ctn ul li dl dd { position: relative; display: none; padding: 30px; padding-left: 80px; border: solid 1px #CDB6A1; border-top: none; color: #000; font-size: 18px;}
#faq .ctn ul li dl dt:before,
#faq .ctn ul li dl dd:before { content: ''; display: block; position: absolute;}
#faq .ctn ul li dl dt:before { width: 60px; height: 100%; top: 0px; left: 0; background: #CDB6A1;}
#faq .ctn ul li dl dd:before { width: 25px; height: 25px; top: 32px; left: 30px; background: url('../img/icn/a.svg') no-repeat 50% 50% / 100% auto;}

#faq .ctn ul li dl dt:after { content: '+'; display: block; position: absolute; right: 10px; top: 50%; transform: translateY(-50%);
 width: 16px; color: #613A22; font-size: 16px; font-weight: 700; line-height: 1; text-align: center;
}
#faq .ctn ul li dl dt.open:after { content: '-';}

#faq .ctn ul li dl dt i { display: block; width: 25px; height: 25px; position: absolute; left: 18px; top: 50%; transform: translateY(-50%);
 background: url('../img/icn/q.svg') no-repeat 50% 50% / 100% auto;
}
@media (max-width: 801px) {
	#faq .ctn ul li dl dt { padding-right: 40px;}
}
@media (max-width: 641px) {
	#faq .ctn ul li { padding: 8px 0;}
	#faq .ctn ul li dl dt { padding: 10px; padding-left: 72px; padding-right: 40px;}
	#faq .ctn ul li dl dd { padding: 15px 20px; padding-left: 72px; font-size: 16px;}
	#faq .ctn ul li dl dt:before { width: 55px;}
	#faq .ctn ul li dl dd:before { top: 18px; left: 20px;}
	#faq .ctn ul li dl dt i { left: 15px;}
}
@media (max-width: 481px) {
	#faq .inner-sct { padding: 40px 0px;}
	#faq .ttl { margin-bottom: 18px;}
	#faq .ctn ul li { padding: 4px 0;}
	#faq .ctn ul li dl dt { padding: 8px; padding-left: 60px; padding-right: 30px; font-size: 14px; letter-spacing: 0.05rem;}
	#faq .ctn ul li dl dt:before { width: 42px;}
	#faq .ctn ul li dl dt i { width: 20px; height: 20px; left: 10px;}
	#faq .ctn ul li dl dd { padding: 12px 15px; padding-left: 60px; font-size: 12px;}
	#faq .ctn ul li dl dd:before { width: 20px; height: 20px; left: 16px;}
}



#contact { background: #CA2C55;}
#contact .inner-sct { padding: 40px 0 80px;}
#contact .ttl { margin-bottom: 20px;}
#contact .ttl h2 { color: #fff; font-size: clamp(24px,2.6vw,36px); font-weight: 700; text-align: center;}
#contact .ctn { width: 88%; max-width: 800px; margin: 0 auto;}
#contact .ctn ul li { padding: 12px 0;}
#contact .ctn ul li dl { display: table; width: 100%;}
#contact .ctn ul li dl dt,
#contact .ctn ul li dl dd { display: table-cell; vertical-align: top;}
#contact .ctn ul li dl dt { width: 260px; padding-top: 8px; color: #fff; font-size: 18px; font-weight: 700;}
#contact .ctn ul li dl dd { width: auto;}
#contact .ctn ul li dl dt span.required { display: inline-block; width: 80px; margin-right: 10px; padding: 2px; border-radius: 8px; background: #C09A35; font-size: 14px; letter-spacing: 0.2rem; text-align: center;}

#contact .ctn ul li ul.addr li { padding: 4px 0;}
#contact .ctn ul li ul.addr li:first-child { padding-top: 0;}
#contact .ctn ul li ul.addr li:last-child { padding-bottom: 0;}
#contact .ctn ul li ul.addr li dl { display: block;}
#contact .ctn ul li ul.addr li dl dt,
#contact .ctn ul li ul.addr li dl dd { display: block; width: 100%;}
#contact .ctn ul li ul.addr li dl dt { padding-bottom: 4px; color: #fff;}


#contact .ctn ul li dl dd select { width: 100%; max-width: 400px; padding: 8px; border: none; border-radius: 10px; background: #fff; font-size: 16px;}
#contact .ctn ul li dl dd input[type="text"],
#contact .ctn ul li dl dd input[type="email"],
#contact .ctn ul li dl dd input[type="tel"] { width: 100%; padding: 8px; border: none; border-radius: 10px; background: #fff; font-size: 18px;}
#contact .ctn ul li dl dd input.zip { display: inline-block; width: 180px; margin-right: 20px; vertical-align: middle;}
#contact .ctn ul li dl dd textarea { width: 100%; height: 180px; padding: 8px; border: none; border-radius: 10px; background: #fff; }

#contact .ctn ul li dl dd button.js-input-address { display: inline-block; padding: 5px 10px; background: #EB840C; border-radius: 5px;
 color: #fff; font-weight: 700; vertical-align: middle; cursor: pointer;
}


#contact .ctn .assess { padding: 40px 0;}
#contact .ctn .assess p { font-size: 18px;}
#contact .ctn .assess p.mb { margin-bottom: 30px; color: #fff; font-size: 20px; font-weight: 700;}


.lp-contact-multifile-item { display: none;}
.lp-contact-multifile-item.is-show { display: flex; align-items: center;}
.lp-contact-multifile-item__label { color: #fff; font-weight: 700; letter-spacing: 0.05em; margin-right: 10px; flex: 0 0 120px;}
.lp-contact-multifile-item__btn { padding: 0 14px; height: 40px; border: none; border-radius: 5px; background: #fff;
 color: #000; font-size: 16px;
}
.lp-contact-multifile-item__field input[type=file] { display: none !important;}
.lp-contact-multifile-item + .lp-contact-multifile-item { margin-top: 5px;}

.lp-contact-multifile p { text-align: center;}
.lp-contact-multifile .lp-contact-multifile__add { width: 100%; height: 40px; margin-top: 8px; padding: 0 14px; background: #fff; border: none; border-radius: 5px;
  color: #000; font-size: 16px; font-weight: 700;
}
@media screen and (max-width: 750px) {
  .lp-contact-multifile__add {
    font-size: 13px;
  }
}

.cotactform7-file-delete { background: none; cursor: pointer; visibility: hidden;}

#contact .ctn .policy { margin-bottom: 30px;}
#contact .ctn .policy p { margin-bottom: 12px; font-size: 14px;}
#contact .ctn .policy p span.required { display: inline-block; width: 80px; margin-right: 10px; padding: 2px; border-radius: 8px; background: #C09A35; color: #fff; font-weight: 700; letter-spacing: 0.2rem; text-align: center;}

#contact .ctn .policy .box { width: 100%; background: #fff;}
#contact .ctn .policy .scroll { width: 100%; height: 200px; padding: 20px; margin: 0 auto; overflow-y: scroll;}
#contact .ctn .policy .box h4 { margin-bottom: 12px; font-size: 14px;}
#contact .ctn .policy .box p { margin-bottom: 0px; font-size: 14px;}
#contact .ctn .policy .box ul li { font-size: 14px;}
#contact .ctn .policy .box ul li span { display: block;}

#contact .ctn .confirm { margin-bottom: 20px;}
#contact .ctn .confirm p { color: #fff; font-size: 18px; font-weight: 700; text-align: center;}
#contact .ctn .confirm p input { width: 15px; height: 15px; margin-right: 10px; background: #fff; vertical-align: baseline; 
 appearance: checkbox; -webkit-appearance: checkbox;
}
#contact .ctn .btn-submit { position: relative; width: 88%; max-width: 400px; margin: 0 auto; }
#contact .ctn .btn-submit input[type="submit"] { width: 100%; padding: 15px 0;
 background: #C09A35; border: none; border-radius: 50px;  box-shadow: 3px 4px 0 #BF4600;
 color: #fff; font-size: 20px; font-weight: 700; text-align: center;
}
#contact .ctn .btn-submit input[type="submit"]:hover { background: #cdae5d;}

@media (max-width: 801px) {
	#contact .ctn ul li dl dt { width: 240px; padding-top: 8px; font-size: 16px;}
	#contact .ctn ul li dl dt span.required { width: 72px; font-size: 12px;}
	#contact .ctn ul li dl dd { font-size: 14px;}
	#contact .ctn ul li dl dd input.zip { margin-right: 10px;}

	#contact .ctn .assess p.mb { font-size: 16px;}
  .lp-contact-multifile-item { font-size: 13px;}
  .lp-contact-multifile-item__label { flex: 0 0 100px; }
  .lp-contact-multifile-item__btn { font-size: 12px; height: 28px; padding: 0 7px;}

	#contact .ctn .policy p { font-size: 12px;}
}
@media (max-width: 641px) {
	#contact .ctn ul li dl dt,
	#contact .ctn ul li dl dd { display: block;}
	#contact .ctn ul li dl dt { width: 100%; margin-bottom: 8px; padding-top: 0px;}
	
	#contact .ctn ul li ul.addr li dl dt { padding-bottom: 0px;}

	#contact .ctn .assess { padding: 20px 0;}
}
@media (max-width: 481px) {
	#contact .inner-sct {}

	#contact .ctn ul li dl dt { margin-bottom: 6px; font-size: 14px;}
	#contact .ctn ul li dl dd { font-size: 13px;}
	#contact .ctn ul li ul.addr li dl dt { margin-bottom: 3px;}

	#contact .ctn ul li dl dd input[type="text"],
	#contact .ctn ul li dl dd input[type="email"],
	#contact .ctn ul li dl dd input[type="tel"] { border-radius: 6px; font-size: 16px;}
	#contact .ctn ul li dl dd textarea { height: 150px; border-radius: 6px;}

	#contact .ctn .assess p.mb { margin-bottom: 20px; font-size: 14px;}

	#contact .ctn .policy { margin-bottom: 20px;}
	#contact .ctn .policy p { font-size: 12px;}
	#contact .ctn .policy .box h4{ margin-bottom: 8px; font-size: 13px;}
	#contact .ctn .policy .box p { font-size: 12px;}
	#contact .ctn .policy .box ul li { font-size: 12px;}

	#contact .ctn .confirm p { font-size: 14px;}
	#contact .ctn .btn-submit input[type="submit"] { padding: 10px; font-size: 18px;}


}
