@charset "utf-8";

/*------------------------------------------------------------------------------
　Layout
-------------------------------------------------------------------------------*/

/* Background Image
---------------------------------------------------------------------- */
body#product { background:#FFF url(../images/product/bg.jpg) no-repeat center top;}
body#product.danmaru { background:#FFF url(../images/product/danmaru/bg.jpg) no-repeat center top;}
body#product.nukumaru { background:#FFF url(../images/product/nukumaru/bg.jpg) no-repeat center top;}
body#product.wasou { background:#FFF url(../images/product/wasou/bg.jpg) no-repeat center top;}
body#product.hanatatami { background:#FFF url(../images/product/hanatatami/bg.jpg) no-repeat center top;}
body#product.color { background:#FFF url(../images/product/color/bg.jpg) no-repeat center top;}
body#product.araeru { background:#FFF url(../images/product/araeru/bg.jpg) no-repeat center top;}
body#product.ryukyu { background:#FFF url(../images/product/ryukyu/bg.jpg) no-repeat center top;}
body#product.price { background:#FFF url(../images/price/bg.jpg) no-repeat center top;}
body#product.fuku { background:#FFF url("../images/product/fuku/bg.jpg") no-repeat center top;}
body#product.sarari { background:#FFF url("../images/product/sarari/bg.jpg") no-repeat center top;}
body#company { background:#FFF url(../images/company/bg.jpg) no-repeat center top;}
body#policy { background:#FFF url(../images/policy/bg.jpg) no-repeat center top;}
body#care { background:#FFF url(../images/care/bg.jpg) no-repeat center top;}
body#sekou { background:#FFF url(../images/sekou/bg.jpg) no-repeat center top;}
body#privacy { background:#FFF url(../images/privacy/bg.jpg) no-repeat center top;}

@media only screen and (max-width:768px) {
body#product { background:#000 url(../images/product/bg_sp.jpg) no-repeat center top;}
body#product.danmaru { background:#F9CFBC url(../images/product/danmaru/bg_sp.jpg) no-repeat center top;}
body#product.nukumaru { background:#E7E4E1 url(../images/product/nukumaru/bg_sp.jpg) no-repeat center top;}
body#product.wasou { background:#B4CBD1 url(../images/product/wasou/bg_sp.jpg) no-repeat center top;}
body#product.hanatatami { background:#FFF url(../images/product/hanatatami/bg_sp.jpg) no-repeat center top;}
body#product.color { background:#F9CFBC url(../images/product/color/bg_sp.jpg) no-repeat center top;}
body#product.araeru { background:#B6CA80 url(../images/product/araeru/bg_sp.jpg) no-repeat center top;}
body#product.ryukyu { background:#B8AAA2 url(../images/product/ryukyu/bg_sp.jpg) no-repeat center top;}
body#product.price { background:#000 url(../images/price/bg_sp.jpg) no-repeat center top;}
body#product.fuku { background:#000 url(../images/product/fuku/bg_sp.jpg) no-repeat center top;}
body#product.sarari { background:#000 url(../images/product/sarari/bg_sp.jpg) no-repeat center top;}
body#company { background:#000 url(../images/company/bg_sp.jpg) no-repeat center top;}
body#policy { background:#000 url(../images/policy/bg_sp.jpg) no-repeat center top;}
body#care { background:#000 url(../images/care/bg_sp.jpg) no-repeat center top;}
body#sekou { background:#000 url(../images/sekou/bg_sp.jpg) no-repeat center top;}
body#privacy { background:#000 url(../images/privacy/bg_sp.jpg) no-repeat center top;}
}


/* Wrap
---------------------------------------------------------------------- */
@media only screen and (max-width:1200px) {
#wrap { margin-top:65px;}
}

/* Main
---------------------------------------------------------------------- */
body#product #main { background:#EBE3D1;}

#main .innerBlock {
 clear:both; width:100%; max-width:1200px; margin:0 auto; padding:70px 0 80px 0; box-sizing:border-box; }
#main .innerBlock:after { clear:both; display:block; content:" ";}

@media only screen and (max-width:1200px) {
#main .innerBlock { width:calc(100% - 30px);}
}

@media only screen and (max-width:768px) {
#main .innerBlock { padding:40px 0 50px 0;}
}

#product.sarari .innerBlock > div { display: flex; gap: 30px; margin-top: 50px;}
#product.sarari .innerBlock.o-i { position: relative;}
#product.sarari .innerBlock.o-i:before { content: ""; display: block; background: url( "../images/product/sarari/image_leaf2.png") no-repeat; background-size: contain; height: calc((140 / 1920) * 100vw); width: calc((140 / 1920) * 100vw); position: absolute; top: -15px; right: calc((110 / 1920) * 100vw);}

#product.sarari .innerBlock > div > div { background: #E2E736; padding: 50px 30px 30px; margin: 30px 0; position: relative;}
#product.sarari .innerBlock > div > div:first-of-type { margin: 60px 0 60px 60px;}
#product.sarari .innerBlock > div > div:first-of-type:before { content:""; display: block; background: url("../images/product/sarari/image_leaf1.png") no-repeat; background-size: contain; height: 103px; width: 102px; position: absolute; top: -60px; left: -25px;}
#product.sarari .innerBlock > div > div:last-of-type { margin: 60px 60px 60px 0px;}
#product.sarari .innerBlock > div > div:last-of-type:before { content:""; display: block; background: url("../images/product/sarari/image_leaf2.png") no-repeat; background-size: contain; height: 103px; width: 102px; position: absolute; bottom: -40px; right: 20px;}
#product.sarari .innerBlock > div > div h6 { color: #000; font-size: 26px;}

#product.sarari .innerBlock > div img { max-width: 50%;}

@media only screen and (max-width:768px) {
	#product.sarari .innerBlock > div { flex-direction: column; gap: 0; margin: 15px auto 0;}
	#product.sarari .innerBlock > div img { margin: 25px auto;}
	#product.sarari .innerBlock > div > div:first-of-type { margin: 60px 30px 30px;}
	#product.sarari .innerBlock > div > div:last-of-type { margin: 30px 30px 60px;}
	#product.sarari .innerBlock > div img { max-width: 75%;}

}

#product.sarari .innerBlock dl { display: flex; padding: 0 0 5px 0; border-bottom: 1px dotted #999; gap: 50px;}
#product.sarari .innerBlock dt,
#product.sarari .innerBlock dd { margin: 0; font-size: 28px; line-height: 1; color: #000; height: 36px;}
#product.sarari .innerBlock dt span,
#product.sarari .innerBlock dd span { font-size: 22px;}

@media only screen and (max-width:768px) {
	#product.sarari .innerBlock dl { flex-direction: column; gap: 0;}
	#product.sarari .innerBlock dt, #product.sarari .innerBlock dd { font-size: 26px;}
	#product.sarari .innerBlock dt span, #product.sarari .innerBlock dd span { font-size: 18px;}
}
/* PageTitle
---------------------------------------------------------------------- */
.pageTitle { clear:both; width:100%; margin:0; padding:0; background:rgba(0,0,0,0.3);}
.pageTitle:after { clear:both; display:block; content:" ";}
.pageTitle .titleInner {
 clear:both; width:100%; max-width:1200px; height:130px; margin:0 auto; padding:15px 0; box-sizing:border-box;}
.pageTitle .titleInner:after { clear:both; display:block; content:" ";}
.pageTitle .titleInner h2 {
 clear:both; margin:0; padding:0; text-align:center; color:#FFF; font-size:40px; font-weight:normal;}

.pageTitle .titleInner .pankuzu { clear:both; margin:0 0 5px 0; padding:0; text-align:right; color:#FFF; font-size:13px;}
.pageTitle .titleInner .pankuzu a { color:#FFF; text-decoration:none;}
.pageTitle .titleInner .pankuzu a:hover { text-decoration:underline;}

@media only screen and (max-width:1200px) {
.pageTitle .titleInner { width:calc(100% - 30px);}
}

@media only screen and (max-width:768px) {
.pageTitle .titleInner { height:165px;}
.pageTitle .titleInner h2 { font-size:40px;}
.pageTitle .titleInner .pankuzu { margin-bottom:30px;}
}

@media only screen and (max-width:568px) {
.pageTitle .titleInner { height:110px;}
.pageTitle .titleInner h2 { font-size:22px;}
.pageTitle .titleInner .pankuzu { margin-bottom:15px;}
}

/* Visual
---------------------------------------------------------------------- */
#visual .visualInner { width:1200px; height:490px; margin:0 auto; padding:100px 0 0 0;}

#visual .visualInner h3 { float:right; width:130px;
 margin:0 30px 0 0; padding:0; font-size:40px; font-weight:normal; line-height:1.5;
 text-shadow:1px 1px 4px rgba(255, 255, 255, 0.8), -1px 1px 4px rgba(255, 255, 255, 0.8), 1px -1px 4px rgba(255, 255, 255, 0.8), -1px -1px 4px rgba(255, 255, 255, 0.8);}
#visual .visualInner p { width:calc(100% - 220px);
 margin:0; padding:0; font-size:20px; line-height:2.5;
 text-shadow:1px 1px 4px rgba(255, 255, 255, 0.8), -1px 1px 4px rgba(255, 255, 255, 0.8), 1px -1px 4px rgba(255, 255, 255, 0.8), -1px -1px 4px rgba(255, 255, 255, 0.8);}

body#product #visual .visualInner { padding:20px 15px;}
body#product #visual .visualInner h3 { float:none!important; width:auto!important; margin:100px auto 10px auto;}
body#product #visual .visualInner p { width:100%; font-size:20px;}
body#product.inside #visual .visualInner { padding-top:0;}
body#product.productIndex #visual .visualInner { padding:150px 15px 0 600px;}

body#company #visual .visualInner, body#policy #visual .visualInner,
body#sekou #visual .visualInner { padding-top:60px;}
body#company #visual .visualInner .block, body#policy #visual .visualInner .block,
body#sekou #visual .visualInner .block {}
body#company #visual .visualInner h3, body#policy #visual .visualInner h3,
body#sekou #visual .visualInner h3 { margin-left:40px; -webkit-writing-mode:vertical-rl; -ms-writing-mode:tb-rl; writing-mode:vertical-rl;}
body#policy #visual .visualInner p,
body#company #visual .visualInner p,
body#sekou #visual .visualInner p { padding-top:40px;}

body#company #visual .visualInner h3 { width:180px;}
body#company #visual .visualInner p { width:calc(100% - 250px);}

body#company #visual .visualInner p, body#policy #visual .visualInner p,
body#sekou #visual .visualInner p { font-size:20px; -webkit-writing-mode:vertical-rl; -ms-writing-mode:tb-rl; writing-mode:vertical-rl;}
body#sekou #visual .visualInner h3 {
 color:#FFF; text-shadow:1px 1px 4px rgba(0, 0, 0, 0.8), -1px 1px 4px rgba(0, 0, 0, 0.8), 1px -1px 4px rgba(0, 0, 0, 0.8), -1px -1px 4px rgba(0, 0, 0, 0.8);}
body#sekou #visual .visualInner p {
 color:#FFF; text-shadow:1px 1px 4px rgba(0, 0, 0, 0.8), -1px 1px 4px rgba(0, 0, 0, 0.8), 1px -1px 4px rgba(0, 0, 0, 0.8), -1px -1px 4px rgba(0, 0, 0, 0.8);}

body#care #visual .visualInner {
 height:190px; padding-top:10px;}
body#care #visual .visualInner h3 { float:none; width:auto; font-size:50px; text-align:center;}

body#privacy #visual .visualInner { height:190px; padding-top:50px;}
body#privacy #visual .visualInner p { width:100%; text-align:center; font-size:18px; line-height:2;}

body#product.price #visual .visualInner { height:190px; padding-top:12px;}
body#product.price #visual .visualInner p { text-align:center; font-size:18px; line-height:2;}

@media only screen and (max-width:1200px) {
#visual .visualInner { width:100%;}
body#product.productIndex #visual .visualInner { padding:100px 15px 0 50%;}
}

@media only screen and (max-width:768px) {
#visual { background:rgba(0,0,0,0.7);}
body#product #visual .visualInner h3 { margin:0 auto 10px auto;}
body#product.danmaru #visual, body#product.nukumaru #visual, body#product.wasou #visual,
body#product.hanatatami #visual, body#product.color #visual, body#product.araeru #visual,
body#product.ryukyu #visual, body#product.fuku #visual, body#product.sarari #visual { background:rgba(255,255,255,0.7);}
#visual .visualInner { height:auto; padding:0;}
#visual .visualInner h3 { margin:0; padding:0 15px; color:#FFF; font-size:26px;
 text-shadow:1px 1px 4px rgba(0, 0, 0, 0.8), -1px 1px 4px rgba(0, 0, 0, 0.8), 1px -1px 4px rgba(0, 0, 0, 0.8), -1px -1px 4px rgba(0, 0, 0, 0.8);}
#visual .visualInner h3 br,
#visual .visualInner p br.br_pc { display:none;}
#visual .visualInner p { width:100%; margin-top:0!importantimportant; padding:0 15px; color:#FFF; font-size:16px; line-height:1.6;
 text-shadow:1px 1px 4px rgba(0, 0, 0, 0.8), -1px 1px 4px rgba(0, 0, 0, 0.8), 1px -1px 4px rgba(0, 0, 0, 0.8), -1px -1px 4px rgba(0, 0, 0, 0.8);}
body#product #visual .visualInner { padding-top:40px;}
body#product.productIndex #visual .visualInner { padding:30px 0;}
body#product.danmaru #visual .visualInner h3, body#product.nukumaru #visual .visualInner h3,
body#product.wasou #visual .visualInner h3, body#product.hanatatami #visual .visualInner h3,
body#product.color #visual .visualInner h3, body#product.araeru #visual .visualInner h3,
body#product.ryukyu #visual .visualInner h3 { width:65%; margin-bottom:20px;}
body#product.danmaru #visual .visualInner p, body#product.nukumaru #visual .visualInner p,
body#product.wasou #visual .visualInner p, body#product.hanatatami #visual .visualInner p,
body#product.color #visual .visualInner p, body#product.araeru #visual .visualInner p,
body#product.ryukyu #visual .visualInner p {
 color:#000; font-size:16px; text-shadow:1px 1px 4px rgba(255, 255, 255, 0.8), -1px 1px 4px rgba(255, 255, 255, 0.8), 1px -1px 4px rgba(255, 255, 255, 0.8), -1px -1px 4px rgba(255, 255, 255, 0.8);}
body#product.inside #visual .visualInner { padding:30px 0;}
body#company #visual .visualInner, body#policy #visual .visualInner,
body#sekou #visual .visualInner { height:auto; padding:35px 0;}
body#company #visual .visualInner .block, body#policy #visual .visualInner .block,
body#sekou #visual .visualInner .block { width:100%;}
body#company #visual .visualInner h3, body#policy #visual .visualInner h3,
body#sekou #visual .visualInner h3 {
 width:100%; margin-left:0; margin-bottom:20px; line-height:1.4;
 -webkit-writing-mode:horizontal-tb; -ms-writing-mode:lr-tb; writing-mode:horizontal-tb;}
body#company #visual .visualInner h3 { margin-top:0px;}
body#company #visual .visualInner p, body#policy #visual .visualInner p,
body#sekou #visual .visualInner p {
 width:100%; font-size:16px; -webkit-writing-mode:horizontal-tb; -ms-writing-mode:lr-tb; writing-mode:horizontal-tb;}
body#care #visual .visualInner { height:auto; padding:30px 0;}
body#care #visual .visualInner h3 { font-size:26px;}
body#privacy #visual .visualInner { height:auto; padding:35px 0;}
body#privacy #visual .visualInner p { text-align:left; font-size:16px;}
body#product.price #visual .visualInner { height:auto; padding:35px 0;}
body#product.price #visual .visualInner p { text-align:left; font-size:16px;}
}

@media only screen and (max-width:568px) {
#visual .visualInner { padding:25px 0;}
#visual .visualInner h3 { font-size:20px;}
#visual .visualInner p { font-size:14px;}
body#product #visual .visualInner { padding-top:20px;}
body#product.danmaru #visual .visualInner h3, body#product.nukumaru #visual .visualInner h3,
body#product.wasou #visual .visualInner h3, body#product.hanatatami #visual .visualInner h3,
body#product.color #visual .visualInner h3, body#product.araeru #visual .visualInner h3,
body#product.ryukyu #visual .visualInner h3 { width:100%; margin-bottom:15px;}
body#product.danmaru #visual .visualInner p, body#product.nukumaru #visual .visualInner p,
body#product.wasou #visual .visualInner p, body#product.hanatatami #visual .visualInner p,
body#product.color #visual .visualInner p, body#product.araeru #visual .visualInner p,
body#product.ryukyu #visual .visualInner p { font-size:14px;}
body#product #visual .visualInner p { font-size:14px;}
body#product.inside #visual .visualInner { padding:25px 0;}
body#company #visual .visualInner, body#policy #visual .visualInner,
body#sekou #visual .visualInner { padding:25px 0;}
body#company #visual .visualInner p, body#policy #visual .visualInner p,
body#sekou #visual .visualInner p { font-size:14px;}
body#care #visual .visualInner h3 { font-size:20px;}
body#privacy #visual .visualInner { padding:25px 0;}
body#privacy #visual .visualInner p { font-size:14px;}
body#price #visual .visualInner { padding:25px 0;}
body#price #visual .visualInner p { font-size:14px;}
}

/*------------------------------------------------------------------------------
　Policy Page
-------------------------------------------------------------------------------*/

#artisan {
 clear:both; width:100%; margin:0; padding:0;
 background:#FFF url(../images/policy/bg_artisan.jpg) no-repeat center top;}
#artisan:after { clear:both; display:block; content:" ";}

#artisan .innerBlock { height:570px; padding-bottom:70px;}

#artisan h3 { margin:0 0 40px 0; padding:0; font-size:40px; font-weight:normal;}
#artisan p { clear:both; width:64%; margin:0; padding:0;}

#robot { width:100%; margin:0; padding:0; background:#EBE3D1;}
#robot:after { clear:both; display:block; content:" ";}

#robot .innerBlock { padding-bottom:70px;}

#robot h3 { float:right;
 width:158px; margin:0 30px 0 60px; padding:5px 23px 5px 20px; box-sizing:border-box; font-size:40px; line-height:1.4; font-weight:normal;
 border-right:1px solid #000; border-left:1px solid #000;
 -webkit-writing-mode:vertical-rl; -ms-writing-mode:tb-rl; writing-mode:vertical-rl;}
#robot p { float:left; width:calc(100% - 260px); margin:0; padding:0; -webkit-order:1; -ms-flex-order:1; order:1;}

#robot .gallery { clear:both; width:100%; margin:0; padding:0;}
#robot .gallery:after { clear:both; display:block; content:" ";}
#robot .gallery ul {
 clear:both; margin:0; padding:0;
 display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
#robot .gallery ul li {
 width:calc(100% / 4); max-width:480px; margin:0; padding:0;}

@media only screen and (min-width:1921px) {
#artisan { background-size:100%!important;}
}

@media only screen and (max-width:1920px) {
#artisan { background-size:auto!important;}
}

@media only screen and (max-width:1200px) {
#artisan p { clear:both; width:80%; margin:0; padding:0;}
#robot h3 { margin-right:0; margin-left:30px;}
#robot p { width:calc(100% - 188px);}
}

@media only screen and (max-width:768px) {
#artisan {
 background:#FFF url(../images/policy/bg_artisan_sp.jpg) no-repeat center bottom; background-size:100%!important;}
#artisan .innerBlock, #robot .innerBlock { height:auto; padding-bottom:40px;}
#artisan h3 { width:100%; margin-bottom:25px; font-size:26px;}
#artisan p { width:100%;}
#robot h3 {
 width:100%; margin:0 0 25px 0; padding:20px 10px; font-size:26px;
 border-top:1px solid #000; border-right:none; border-bottom:1px solid #000; border-left:none;
 -webkit-order:1; -ms-flex-order:1; order:1;
 -webkit-writing-mode:horizontal-tb; -ms-writing-mode:lr-tb; writing-mode:horizontal-tb;}
#robot h3 br { display:none;}
#robot p { width:100%; -webkit-order:2; -ms-flex-order:2; order:2;}
#robot .gallery ul { -webkit-box-pack:start; -ms-flex-pack:start; justify-content:flex-start;}
#robot .gallery ul li { width:calc(100% / 2);}
}

/*------------------------------------------------------------------------------
　Company Page
-------------------------------------------------------------------------------*/

#idea h3, #overview h3, #access h3, #enterprise h3 {
 clear:both; width:100%; margin:0 0 45px 0; padding:35px 0 0 0; text-align:center;
 font-size:32px; font-weight:normal;
 background:url(../images/bg_h3.png) no-repeat center top;}

#idea { clear:both; width:100%; margin:0; padding:0; background:#FFF;}
#idea:after { clear:both; display:block; content:" ";}
#idea .innerBox {
 clear:both; margin:0; padding:50px 70px; border-top:1px solid #000; border-bottom:1px solid #000;}
#idea .innerBox:after { clear:both; display:block; content:" ";}
#idea ul { clear:both; margin:0 0 10px 0; padding:0; overflow:hidden;}
#idea ul li {
 margin:0 0 20px 0; padding:0 0 0 35px;
 font-size:25px; font-weight:normal;
 background:url(../images/icon_shape_bw.png) no-repeat left 11px;}
#idea ul li span { font-size:16px;}
#idea p { clear:both; margin:0; padding:0 0 0 35px; font-size:20px;}

#overview { clear:both; width:100%; margin:0; padding:0; background:#FFF;}
#overview:after { clear:both; display:block; content:" ";}
#overview table {
 width:100%; margin:0 0 40px 0; padding:0;
 border-collapse:separate; border-top:1px solid #AB946B; border-bottom:1px solid #AB946B;}
#overview table th, #overview table td {
 margin:0; padding:10px 20px 10px 20px; vertical-align:top;}
#overview table th { width:230px; border-right:2px solid #FFF;}
#overview table thead th, #overview table thead td {
 color:#FFF; border-top:2px solid #FFF; background:#AB946B;}
#overview table td { font-weight:normal; color:#000;}
#overview table tbody tr:nth-child(odd) th,
#overview table tbody tr:nth-child(odd) td { background:#FFF;}
#overview table tbody tr:nth-child(even) th,
#overview table tbody tr:nth-child(even) td { background:#EEEAE1;}
#overview table tbody tr:last-of-type th,
#overview table tbody tr:last-of-type td { border-bottom:2px solid #FFF;}
#overview ul {
 clear:both; margin:0; padding:0;
 display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;}
#overview ul li { margin:0; padding:0;}

#access { clear:both; width:100%; margin:0; padding:0; background:#EBE3D1;}
#access:after { clear:both; display:block; content:" ";}
#access .gmap {
 height:0; margin:0 0 40px 0; padding-bottom:56.25%; padding-top:30px; position:relative; overflow:hidden;
 border:10px solid #FFF;}
#access .gmap iframe, #access .gmap object, #access .gmap embed {
 width:100%; height:100%; position:absolute; top:0; left:0;}
#access ul { clear:both; margin:0; padding:0;}
#access ul li {
 margin:0 0 10px 0; padding:0 30px 10px 65px;
 font-size:20px; font-weight:normal; border-bottom:1px dashed #999;
 background:url(../images/icon_shape_bw.png) no-repeat 30px 8px;}
#access ul li:after { clear:both; display:block; content:" ";}
#access ul li .btMap {
 float:right; width:200px; height:31px; margin:4px 0 0 0; padding:8px 20px 0 0;
 display:block; box-sizing:border-box; text-align:center;
 color:#FFF; font-size:14px; line-height:1; text-decoration:none;
 background:#3D4E41 url(../images/foot_icon_arrow.png) no-repeat right 8px top 7px;}
#access ul li .btMap:hover { background-color:#6C716C;}

#enterprise { clear:both; width:100%; margin:0; padding:0; background:#FFF;}
#enterprise:after { clear:both; display:block; content:" ";}
#enterprise h4 {
 width:100%; margin:20px 0 20px 0; padding:0 0 5px 15px; font-size:28px; font-weight:normal;
 border-left:7px solid #2D352E; border-bottom:1px solid #2D352E;}
#enterprise .innerBlock { padding-bottom:30px;}
#enterprise .innerBlock:after { clear:both; display:block; content:" ";}
#enterprise .box { width:48.33%; height:auto!important; margin:0; padding:0 0 40px 0;}
#enterprise .box:after { clear:both; display:block; content:" ";}
#enterprise .box:nth-child(odd) { clear:left; float:left;}
#enterprise .box:nth-child(even) { float:right;}
#enterprise .box img { margin:0 0 15px 0; padding:0;}

#greeting {
 clear:both; width:100%; height:1111px; margin:0; padding:0;
 background:#FFF url(../images/company/bg_greeting.jpg) no-repeat center top;}
#greeting:after { clear:both; display:block; content:" ";}
#greeting .innerBlock { padding:110px 0;}
#greeting .message01 {
 margin:0 0 80px 0; padding:0;
 display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;
 -webkit-box-align:center; -ms-flex-align:center; align-items:center;
 -webkit-align-content:center; -ms-flex-line-pack:center; align-content:center;}
#greeting .message01 h3 {
 margin:0 30px 0 0; padding:0 35px; text-align:center;
 color:#000; font-size:36px; line-height:1.4; font-weight:normal;
 border-right:1px solid #000; border-left:1px solid #000;
 -webkit-align-self:stretch; -ms-flex-item-align:stretch; align-self:stretch;
 -webkit-writing-mode:vertical-rl; -ms-writing-mode:tb-rl; writing-mode:vertical-rl;}
#greeting .message01 p {
 margin:0 0px 0 0; padding:0; font-size:18px; line-height:2;
 text-shadow:1px 1px 4px rgba(255, 255, 255, 0.8), -1px 1px 4px rgba(255, 255, 255, 0.8), 1px -1px 4px rgba(255, 255, 255, 0.8), -1px -1px 4px rgba(255, 255, 255, 0.8);}
#greeting .message01 p br.br_sp { display:none;}

#greeting .message02 {
 clear:both; width:100%; margin:0 0 20px 0; padding:35px 40px; background:rgba(255, 255, 255, 0.8);}
#greeting .message02 p { margin:0 0 30px 0; padding:0;}
#greeting .message02 p:last-child { margin-bottom:0;}
#greeting .message02 img { display:none;}

@media only screen and (min-width:1921px) {
#artisan { background-size:100%!important;}
#greeting { background-size:100%!important;}
}

@media only screen and (max-width:1920px) {
#artisan { background-size:auto!important;}
#greeting { background-size:auto!important;}
}

@media only screen and (max-width:1100px) {
#greeting .message01 p br.br_sp { display:block;}
#greeting .message01 img { width:20%;}
}

@media only screen and (max-width:768px) {
#idea h3, #overview h3, #access h3, #enterprise h3 { margin-bottom:30px; font-size:30px;}
#idea .innerBox { padding:30px 0;}
#idea ul li { margin-bottom:15px; font-size:20px; background-position:left 6px;}
#idea ul li span { font-size:14px;}
#idea p { font-size:16px;}
#overview .innerBlock { padding-top:0;}
#overview table th { width:200px;}
#access .gmap { margin-bottom:40px;}
#access ul li { padding:0 5px 14px 35px; font-size:18px; background-position:left 5px;}
#access ul li .btMap { margin-top:10px}
#enterprise h4 { padding-left:10px; font-size:22px;}
#enterprise .innerBlock { padding-bottom:20px;}
#enterprise .box { width:48%; padding-bottom:30px;}
#greeting {
 height:auto; background:#FFF url(../images/company/bg_greeting_sp.jpg) no-repeat center top; background-size:100%!important;}
#greeting .innerBlock { padding:40px 0;}
#greeting .message01 {
 margin-bottom:30px; padding:0;
 -webkit-box-pack:start; -ms-flex-pack:start; justify-content:flex-start;}
#greeting .message01 h3 {
 width:100%; margin:0 0 25px 0; padding:15px 10px 13px 10px; text-align:left; font-size:26px;
 border-top:1px solid #000; border-right:none; border-bottom:1px solid #000; border-left:none;
 -webkit-writing-mode:horizontal-tb; -ms-writing-mode:lr-tb; writing-mode:horizontal-tb;}
#greeting .message01 p { margin:0 0 30px 0; font-size:16px; line-height:1.8;}
#greeting .message01 img { width:30%;}
#greeting .message02 { width:calc(100% + 30px); margin:0 -15px; padding:15px; background:#FFF;}
}

@media only screen and (max-width:568px) {
#overview table thead td { border-top:1px solid #FFF;}
#overview table th, #overview table td { display:block; border-top:none;}
#overview table th { width:100%; border-right:none;}
#overview table tbody tr:nth-child(odd) th { border-bottom:1px solid #AB946B;}
#overview table tbody tr:nth-child(even) th { border-bottom:1px solid #FFF;}
#overview table tbody tr:last-of-type th { border-bottom:1px solid #AB946B;}
#overview table tbody tr:last-of-type td { border-bottom:none;}
#enterprise .box { width:100%; padding-bottom:20px;}
#enterprise .box:nth-child(odd) { clear:both; float:none;}
#enterprise .box:nth-child(even) { float:none;}
#greeting .message01 img { display:none;}
#greeting .message02 img { display:block; float:right; margin:0 0 10px 10px; width:33%;}
}

/*------------------------------------------------------------------------------
　Product List Page
-------------------------------------------------------------------------------*/
#productIndex { clear:both; width:100%; margin:0; padding:0; background:#FFF;}
#productIndex:after { clear:both; display:block; content:" ";}

#productIndex .innerBlock { display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 justify-content:space-between; align-items:stretch;}
#productIndex .listBox { display:flex; flex-direction:column; width:23%;}

#productIndex .listBox img { margin:0 0 20px 0; padding:0; height:auto;}
#productIndex .listBox h3 { clear:both; margin:0 0 15px 0; padding:0 0 12px 0; text-align:center;
 font-size:20px; border-bottom:1px solid #000;}
#productIndex .listBox p { clear:both; margin:0; padding:0; font-size:16px;}

#productIndex .listBox .btDetail { margin-top: auto; margin-bottom:50px; padding-top:1em;}
#productIndex .listBox .btDetail a { display: block; padding:12px 16px 12px 8px;
 display:block; box-sizing:border-box; text-align:center;
 color:#FFF; font-size:16px; line-height:1; text-decoration:none;
 background:#2D352E url(../images/icon_arrow.png) no-repeat right 12px center;}
#productIndex .listBox .btDetail a:hover { background-color:#6C716C;}

.price-button { width: 50%; max-width: 600px; min-width: 400px; margin: 0 auto; padding: 0px 0 80px 0; box-sizing: border-box;}
.price-button a { display: block; position: relative;}
.price-button a:before { content: " "; position: absolute; right: 36px; top: 50%; color: #fff; border-top: 1px solid #fff; width: 17px; border-right: 1px solid #fff; height: 17px; transform: rotate(45deg) translateY(-70%); z-index: 1;}
.price-button a:after { content: " "; position: absolute; right: 25px; top: 50%; transform: translateY(-50%); color: #fff; border-bottom: 1px solid #fff; width: 27px}
.price-button img { width: 100%; max-height: 150px; object-fit: cover; padding: 0 2.5%;}
.price-button h3 { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 27px; color: #fff; font-weight: 400; min-width: 7em;}
.price-button p { padding: 10px 2.5%;}

#productSublist .price-button {padding: 50px 0 0;}

@media only screen and (max-width:768px) {
#productIndex .listBox { width:32%;}
#productIndex .listBox h3 { font-size:18px;}
#productIndex .listBox p { font-size:14px;}
}

@media only screen and (max-width:568px) {
#productIndex .listBox { width:48%;}
#productIndex .listBox .btDetail a { font-size:14px;}
.price-button { width: 100%; min-width: auto;}
.price-button img { padding: 0 15px;}
.price-button p { padding: 10px 15px;}
}


/*------------------------------------------------------------------------------
　Product Detail Page
-------------------------------------------------------------------------------*/

/* Product List
---------------------------------------------------------------------- */
#productList { clear:both; width:100%; margin:0; padding:0 0 30px 0; background:#FFF;}
#productList:after { clear:both; display:block; content:" ";}

#productList .innerBlock { padding:0 0 40px 0;}
#productList .innerBlock:first-child { padding-top:80px; padding-bottom:60px;}
#productList .innerBlock {
 display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
#productList .innerBlock.sp-only { display: none;}
body.hanatatami #productList .innerBlock { padding-bottom:60px;}
body.hanatatami #productList .innerBlock:last-of-type { padding-bottom:40px;}
#productList .innerBlock.mbL { margin-bottom:60px;}
#productList .innerBlock.mbM { margin-bottom:40px;}
#productList .innerBlock.subImage { margin-top:30px; margin-bottom:70px;}

#productList .box {
 margin-bottom:40px; display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
#productList .box:last-of-type { margin-bottom:0;}

#productList .order1 {
 margin:0; -webkit-box-ordinal-group:0; -ms-flex-order:0; -webkit-order:0; order:0;}
#productList .order2 {
 margin-left:20px; -webkit-box-ordinal-group:1; -ms-flex-order:1; -webkit-order:1; order:1;}

#productList h4 { width:100%; margin-bottom:30px; font-size:34px; font-weight:normal; line-height:1.5;}
#productList h4 span { font-size:28px;}
body.hanatatami #productList h4 { margin-bottom:20px;}
body.fuku #productList h4 { margin-top:80px;}
#productList h5 { width:100%; margin:0 0 25px 0; padding:0 0 0 20px; font-size:28px; border-left:7px solid #2D352E;}
#productList h5 span { font-size:22px;}
#productList h6 { width:100%; margin:0 0 20px 0; padding:0 0 8px 0; color:#8C7850; font-size:20px; font-weight:normal;}
#productList .boxS h6 { text-align: center; background: #AB946B; color: #ffffff; padding: 10px}

#productList .priceList h6 { margin-bottom:10px; padding-bottom:0; color:#000; font-size:22px; font-weight:normal; border-bottom:none;}
#productList .priceList h6 span { font-size:14px;}

#productList p { margin-bottom:10px; font-size:18px; line-height:1.75;}
#productList p.appeal { font-size:18px; line-height:1.75;}
#productList p.example { font-size:16px;}
body.hanatatami #productList p.caution { color:#000; font-size:14px;}

body.hanatatami #productList em { color:#F00; font-weight:normal;}

#productList img {
 -webkit-align-self:start; -ms-flex-item-align:start; align-self:flex-start;}
#productList .mainImage { margin-bottom:30px;}

#productList ol { margin:0; padding:0 0 0 22px;}
#productList ol li {
 margin-bottom:5px; font-size:16px; text-indent:-22px; list-style-position:outside; counter-increment:cnt;}
#productList ol li:before { display:marker; content:"" counter(cnt) "．";}

#productList table {
 width:100%; margin:0 0 60px 0; padding:0; font-size:16px;
 border-collapse:separate; border-top:1px solid #3D4E41; border-bottom:1px solid #3D4E41;}
#productList .blockL:last-of-type table { margin-bottom:20px;}
#productList table th, #productList table td {
 margin:0; padding:5px 10px; text-align:center; font-weight:normal;
 border-bottom:2px solid #FFF;}
#productList table thead th, #productList table thead td { color:#FFF; border-left:2px solid #FFF;}
#productList table thead th { border-top:2px solid #FFF; background:#3D4E41;}
#productList table thead th:first-of-type { border-left:none;}
#productList table thead td { background:#AB946B;}
#productList table tbody th { background:#EEEAE1;}
#productList table tbody th, #productList table tbody td { border-right:2px solid #FFF;}
#productList table tbody td:last-of-type { border-right:none;}
#productList table tbody tr:nth-child(odd) td { background:#FFF;}
#productList table tbody tr:nth-child(even) td { background:#EEEAE1;}
#productList table tbody tr:last-of-type th,
#productList table tbody tr:last-of-type td { border-bottom:2px solid #FFF;}

#productList .listBox {
 width:calc(calc(100% - calc(15px * 4)) / 3); max-width:360px; margin:0; padding:0;
 display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:start; -ms-flex-pack:start; justify-content:flex-start;
 -webkit-box-align:start; -ms-flex-align:start; align-items:flex-start;
 -webkit-align-content:start; -ms-flex-line-pack:start; align-content:flex-start;}
#productList .listBox img { margin:0 0 10px 0; padding:0;}
#productList .listBox h4 {
 clear:both; width:100%; margin:0 0 20px 0; padding:10px; text-align:center;
 color:#FFF; font-size:20px; font-weight:normal; background:#AB946B;
 -webkit-align-self:stretch; -ms-flex-item-align:stretch; align-self:stretch;}
#productList .listBox p {
 clear:both; width:100%; margin:0 0 20px 0; padding:0; text-align:right; font-size:14px;}
#productList .listBox dl { clear:both; width:100%; margin:0 0 10px 0; padding:0;}
#productList .listBox dl dt { clear:left; float:left; width:80px; margin:0 0 5px 0; padding:3px; text-align:center;}
#productList .listBox dl dt.black { color:#FFF; background:#000;}
#productList .listBox dl dt.white { color:#000; border:1px solid #000;}
#productList .listBox dl dd { margin:0 0 5px 140px; padding:5px 0 0 0; font-size:22px; line-height:1.4;}
#productList .listBox dl dd span { margin:0; padding:0; display:inline-block; font-size:28px; line-height:1;}
#productList .listBox ul { clear:both; width:100%; margin:0; padding:0;}
#productList .listBox ul li {
 clear:both; margin:0 0 10px 0; padding:0 0 0 20px;
 background:url(../images/icon_shape.png) no-repeat left 7px;}
#productList .listBox ul li:last-child { margin-bottom:0;}

#productList .boxL { width:65.833%; margin:0; padding:0;}
body.hanatatami #productList .boxL p { margin-bottom:25px;}
body.hanatatami #productList .boxL p:last-child { margin-bottom:0;}
#productList .boxL dl { clear:both; margin-bottom:30px;}
#productList .boxL dl dt { clear:left; float:left; width:100px; height:36px; text-align:center; color:#FFF; font-size:20px; font-weight:bold; background:#AB946B;}
#productList .boxL.fuku dl dt { width: 100%; color: #AB946B; background: none; text-align: left; border-bottom: 1px dotted #999; font-weight: 600; margin-bottom: 20px; height: auto;}
#productList .boxL dl dd { height:36px; margin:0 0 15px 115px; padding:0 0 5px 0; font-size:18px; border-bottom:1px dotted #999;}
#productList .boxL.fuku dl dd { height: auto; border-bottom: none; margin: 0; font-size: 1rem;}
#productList .boxL.fuku dl dd span { color: #ff0000; font-size: 18px;} 
#productList .boxL dl dd p { float:left; width:480px; margin:0; padding:0; display:inline-block;}
#productList .boxL dl dd em {
 margin:13px 20px 0 0; display:inline-block; vertical-align:top; color:#000; font-size:14px; font-weight:normal;}
#productList .boxL dl dd .price {
 display:inline-block; float:right; margin:-11px 0 0 0; padding:0; font-size:28px; font-weight:bold;}
#productList .boxL dl dd .price span { text-align:right; font-size:22px;}
#productList .boxL dl dd:after { clear:both; height:0px; display:block; visibility:hidden; content:".";}
#productList .boxL .mainImage { margin-bottom:55px;}
#productList .boxL .subImage { margin-top:15px;}

#productList .boxR { width:65.833%; margin:0; padding:0;}
#productList .boxR dl { clear:both; margin-bottom:20px;}
#productList .boxR dl dt {
 height:36px; margin:0 0 20px 0; padding:0 10px; display:inline-block; text-align:center;
 color:#FFF; font-size:20px; font-weight:bold; background:#AB946B;}
#productList .boxR dl dd { margin:0; padding:0; font-size:18px;}

#productList .boxS { width:30%; margin:0 0 0 45px; padding:0;}
#productList .boxS.order1 { margin:0 45px 0 0;} 
body.hanatatami #productList .boxS.variation { padding-top:46px;}
body.hanatatami #productList .boxS p { margin-bottom:30px;}
body.fuku #productList .boxS p { margin-bottom:30px; font-size: 14px;}
body.hanatatami #productList .boxS p:last-child { margin-bottom:0;}
body.hanatatami #productList .boxS.variation p { margin-bottom:20px;}
body.hanatatami #productList .boxS.variation p.caution { margin-bottom:10px;}
#productList .boxS ul { margin-top:20px;}
#productList .boxS dl { clear:both; margin-top:20px; border-top:1px solid #000; border-bottom:1px solid #000;}
#productList .boxS dl dt { clear:left; float:left; width:120px; padding:5px; border-top:1px dotted #000;}
#productList .boxS dl dd { margin:0 0 0 120px; padding:5px; border-top:1px dotted #000;}
#productList .boxS dl dt:first-child,
#productList .boxS dl dt:first-child + dd { border:none;}
#productList .boxS .subImage { margin-top:0; margin-bottom:15px;}

#productList .boxSL { width:30%; margin:0 45px 0 0; padding:0;}

#productList .blockL { width:calc(50% - 30px); margin:0 30px 0 0; padding:0;}
#productList .blockR { width:calc(50% - 30px); margin:0 0 0 30px; padding:0;}
#productList .blockL p, #productList .blockR p { margin-bottom:30px; font-size:16px;}
#productList .blockL p:last-child, #productList .blockR p:last-child { margin-bottom:0;}
#productList .blockL dl, #productList .blockR dl {
 clear:both; width:100%; margin-bottom:20px; font-size:18px; border-top:1px dotted #999;}
#productList .blockL dl:after, #productList .blockR dl:after {
 display:block; clear:both; height:0px; visibility:hidden; content:".";}
#productList .blockL dl dt, #productList .blockR dl dt {
 display:block; clear:left; float:left; width:56%; height:60px; line-height:60px; border-bottom:1px dotted #999;}
#productList .blockL dl dd, #productList .blockR dl dd {
 display:block; float:left; width:44%; height:60px; line-height:60px; font-size:28px; font-weight:bold;
 text-align:right; border-bottom:1px dotted #999;}
#productList .blockL dl.long dt, #productList .blockR dl.long dt { width:28%;}
#productList .blockL dl.long dd, #productList .blockR dl.long dd { width:72%;}
#productList .blockL dl dd em, #productList .blockR dl dd em {
 margin:1px 10px 0 0; vertical-align:top; display:inline-block; font-size:14px; color:#000; font-weight:normal;}
#productList .blockL dl dd span, #productList .blockR dl dd span { font-size:22px;}
#productList .blockL p span, #productList .blockR p span,
#productList .blockL p span, #productList .blockR p span { font-size:15px; font-weight:normal; color:000;}
#productList .blockL ul,
#productList .blockR ul { margin-bottom:20px;}

#productList .point { padding:10px 20px; border:1px solid #F00;}
#productList .point p { margin:0; padding:0; font-size:16px;}

@media only screen and (max-width:1200px) {
#productList .boxL { width:calc(65% - 15px);}
#productList .boxL dl dd p { width:auto;}
#productList .boxR { width:calc(65% - 15px);}
#productList .boxS { margin-left:0;}
#productList .boxSL { margin-left:0;}
#productList .order2 { margin-left:0;}
}

@media only screen and (max-width:1100px) {
#productList .blockL { width:calc(50% - 15px); margin-right:15px;}
#productList .blockR { width:calc(50% - 15px); margin-left:15px;}
#productList .blockL dl dt, #productList .blockR dl dt { width:59%; height:auto; min-height:60px;}
#productList .blockL dl dd, #productList .blockR dl dd { width:41%; height:auto; min-height:60px; line-height:58px;}
}

@media only screen and (max-width:980px) {
#productList { padding-bottom:0;}
#productList .innerBlock { padding-bottom:30px;}
#productList .innerBlock:first-child { padding-top:50px;}
body.hanatatami #productList .innerBlock { padding-bottom:40px;}
#productList .innerBlock.mbL { margin-bottom:20px;}
#productList .innerBlock .box { margin-bottom:30px;}
#productList .innerBlock .box:last-of-type { margin-bottom:0;}
#productList .order1 { -webkit-box-ordinal-group:1; -ms-flex-order:1; -webkit-order:1; order:1;}
#productList .order2 { -webkit-box-ordinal-group:0; -ms-flex-order:0; -webkit-order:0; order:0;}
#productList table { margin-bottom:0;}
#productList .blockL:last-of-type table { margin-bottom:0;}
#productList .blockR table { margin-bottom:30px;}
#productList .listBox { width:calc(calc(100% - calc(10px * 4)) / 3);}
#productList .listBox dl dt { width:70px;}
#productList .listBox dl dd { min-height:36px; margin-left:80px; padding:7px 0 0 0; text-align:center;}
#productList .boxL { width:100%; margin-bottom:30px;}
#productList .boxL img { margin:0 auto; padding:0; display:block;}
#productList .boxL dl dt { width:100px; height:36px;}
#productList .boxL dl dd { height:auto; margin:0 0 15px 115px; padding:3px 0 0 0;}
#productList .boxL .mainImage { margin-bottom:30px;}
#productList .boxL .subImage { margin-bottom:30px;}
#productList .boxR { width:100%; margin-bottom:40px;}
#productList .boxR:last-of-type { margin-bottom:0;}
#productList .boxR img { margin:0 auto; padding:0; display:block;}
#productList .boxS { width:100%; margin-left:0;}
#productList .boxS.order1 { margin-right:0;}
body.hanatatami #productList .boxS.variation { padding-top:0;}
#productList .boxS img { margin:0 auto; padding:0; display:block;}
#productList .boxSL { width:100%; margin-left:0; margin-bottom:35px;}
#productList .boxSL img { margin:0 auto; padding:0; display:block;}
#productList .blockL { width:100%; margin-right:0; margin-bottom:60px;}
body.hanatatami #productList .blockL:last-of-type { margin-bottom:30px;}
#productList .blockL img { margin:0 auto; padding:0; display:block;}
#productList .blockR { width:100%; margin-left:0; margin-bottom:30px;}
#productList .blockR img { margin:0 auto; padding:0; display:block;}
}

@media only screen and (max-width:768px) {
#productList .innerBlock:first-child { padding-top:40px; padding-bottom:30px;}
#productList .innerBlock.sp-only { display: block;}
#productList .innerBlock.sp-only img { width:90%; margin: 20px auto 0 auto; display: block;}
#productList .innerBlock.mbL { margin-bottom:0;}
#productList .innerBlock.mbM { margin-bottom:0;}
#productList h4 { margin-bottom:20px; font-size:26px;}
body.fuku #productList h4 { margin-top:0;}
#productList h4 span { font-size:22px;}
#productList h5 { padding-left:15px; font-size:22px;}
#productList h5 span { font-size:18px;}
#productList h6 { font-size:17px;}
#productList .priceList h6 { font-size:18px;}
#productList .priceList h6 span { font-size:13px;}
#productList p { font-size:15px;}
#productList p.appeal { font-size:16px;}
#productList p.example { font-size:14px;}
#productList table { font-size:15px;}
#productList ul li, #productList ul li { font-size:15px;}
#productList ol li { font-size:15px;}
#productList .mainImage { margin-bottom:20px;}
#productList .listBox h4 { font-size:16px;}
#productList .listBox dl dt { font-size:15px;}
#productList .listBox dl dd { font-size:18px;}
#productList .listBox dl dd span { font-size:23px;}
#productList .listBox ul li { font-size:15px; background-position:left 6px;}
#productList .boxL dl:last-of-type { margin-bottom:0;}
#productList .boxL.fuku dl:last-of-type { margin-bottom: 30px;}
#productList .boxL dl dt { padding-top:2px; font-size:17px;}
#productList .boxL dl dd { font-size:15px;}
#productList .boxL dl dd p { padding-top:2px;}
#productList .boxL dl dd em { margin-top:14px; font-size:13px;}
#productList .boxL dl dd .price { margin:-11px 0 0 0; font-size:28px;}
#productList .boxL dl dd .price span { font-size:18px;}
#productList .boxR dl dt { padding-top:2px; font-size:17px;}
#productList .boxR dl dd { font-size:15px;}
body.hanatatami #productList .boxS.variation p.caution { margin-bottom:0;}
#productList .boxS dl dt { font-size:15px;}
#productList .boxS dl dd { font-size:15px;}
#productList .blockL { margin-bottom:30px;}
body.hanatatami #productList .blockL.priceList { margin-bottom:40px;}
body.hanatatami #productList .blockL.priceList:last-of-type { margin-bottom:10px;}
#productList .blockL p, #productList .blockR p { font-size:15px;}
#productList .blockL dl, #productList .blockR dl { font-size:15px;}
#productList .blockL dl dd, #productList .blockR dl dd { font-size:28px; line-height:56px;}
#productList .blockL dl dd em, #productList .blockR dl dd em { font-size:13px;}
#productList .blockL dl dd span, #productList .blockR dl dd span { font-size:18px;}
#productList .point { padding:10px 15px;}
#productList .point p { font-size:15px;}
}

@media only screen and (max-width:568px) {
#productList .innerBlock {
 -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;}
#productList .innerBlock:first-child { padding-top:30px;}
body.danmaru #productList .innerBlock:first-child { padding-bottom:0;}
#productList table { font-size:14px; line-height:1.4;}
#productList .innerBlock.subImage { margin-top:0; margin-bottom:20px;}
#productList .listBox { width:100%; margin-bottom:30px;}
#productList .boxL dl dt { clear:left; float:none; margin-bottom:7px;}
#productList .boxL dl dd { margin-left:0;}
#productList .boxL dl dd .price { margin-top:-7px;}
#productList .boxL dl dd em { margin-right:10px;}
#productList .blockR { margin-bottom:10px;}
#productList .blockL dl dt, #productList .blockR dl dt {
 clear:both; float:none; width:100%; min-height:auto; padding-top:5px; line-height:1.8; border-bottom:none;}
#productList .blockL dl dd, #productList .blockR dl dd {
 clear:both; float:none; width:100%; min-height:auto; padding-bottom:5px; font-size:24px; line-height:1.4;}
#productList .blockL dl dd em, #productList .blockR dl dd em { margin-top:9px; margin-right:5px;}
#productList .blockL dl dd span, #productList .blockR dl dd span { font-size:16px;}
#productList .blockL dl.long dt, #productList .blockR dl.long dt { width:100%;}
#productList .blockL.wasou dl.long dt, #productList .blockR.wasou dl.long dt { width: 28%; padding: 7.5px 0 0; float: left;}
#productList .blockL dl.long dd, #productList .blockR dl.long dd { width:100%;}
#productList .blockL.wasou dl.long dd, #productList .blockR.wasou dl.long dd { clear: initial; padding: 5px 0 0;}
}

/* Product Summary
---------------------------------------------------------------------- */
#productSummary { clear:both; width:100%; margin:0; padding:0;}
#productSummary:after { clear:both; display:block; content:" ";}

#productSummary .innerBlock { padding-bottom:70px;}
#productSummary .innerBlock.flex { display: flex; flex-wrap: wrap;}

#productSummary .summaryBox {
 display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}

#productSummary .summaryBox .flex .blockL { width: calc(50% - 30px); margin: 0 30px 0 0; padding: 0;}
#productSummary .flex .blockL .boxL { margin: 0;}
#productSummary .flex .blockL .boxL li { margin-bottom: 30px; padding-left: 0px; font-size: 17px; line-height: 150%; background: none;}
#productSummary .flex .blockL .boxL dl.long { border-top: none;}
#productSummary .flex .blockL .boxL dl.long dt { display: block; clear: left; float: left; width: 22%; height: 40px; line-height: 40px;}
#productSummary .flex .blockL .boxL dl.long dd { display: block; float: left; width: 78%; height: 40px; line-height: 40px; font-size: 28px; font-weight: bold; text-align: right; border-bottom: 1px dotted #999;}

#productSummary .flex .blockL dl, #productSummary .flex .blockR dl { clear: both; width: 100%; margin-bottom: 60px; font-size: 18px; border-top: 1px dotted #999; display: flex; flex-wrap: wrap;}
#productSummary .flex .blockL dl.long dt { display: block; clear: left; float: left; width: 100%; height: 60px; line-height: 60px;}
#productSummary .flex .blockR dl.long dt { display: block; clear: left; float: left; width: 37%; height: 60px; line-height: 60px; border-bottom: 1px dotted #999;}
#productSummary .flex .blockL dl.long dd { display: block; float: left; width: 100%; height: 60px; line-height: 60px; font-size: 28px; font-weight: bold; text-align: right; border-bottom: 1px dotted #999;}
#productSummary .flex .blockR dl.long dd { display: block; float: left; width: 63%; height: 60px; line-height: 60px; font-size: 28px; font-weight: bold; text-align: right; border-bottom: 1px dotted #999;}
#productSummary .flex .blockL dl dd em, #productSummary .flex .blockR dl dd em { margin: 1px 10px 0 0; vertical-align: top; display: inline-block; font-size: 14px; color: #000; font-weight: normal;}

#productSummary .flex .blockR p { padding: 0;}
#productSummary .flex .blockR p em { color:#B22C00;}
#productSummary .flex .blockR h5 + p { padding: 0; margin-bottom: 60px;}

#productSummary .flex .boxL dl { margin-bottom: 0px; }
#productSummary .flex .boxL dl dt { clear: left; float: left; width: 100px; height: 36px; text-align: center; color: #FFF; font-size: 20px; font-weight: bold; background: #AB946B;}

body.hanatatami #productSummary .summaryBox { margin-bottom:60px;}
body.hanatatami #productSummary .summaryBox:last-of-type { margin-bottom:0;}

#productSummary .summaryBox .box { clear:both; margin:0; padding:0;}
body.hanatatami #productSummary .summaryBox .box { margin-bottom:50px;}
body.hanatatami #productSummary .summaryBox .box:last-of-type { margin-bottom:0;}

#productSummary .summaryBox h3 {
 clear:both; margin:0 0 20px 0; padding:25px 25px 12px 25px;
 font-size:34px; font-weight:normal; border-bottom:1px solid #000;}
#productSummary .summaryBox h4 {
 width:100%; margin-bottom:30px; font-size:34px; font-weight:normal; line-height:1.5;}
body.hanatatami #productSummary .summaryBox h4 { margin-bottom:20px;}
#productSummary .summaryBox h5 {
 width:100%; margin:0 0 20px 0; padding:0 0 0 20px; font-size:28px; border-left:7px solid #2D352E;}
#productSummary .summaryBox h5 span { font-size:22px;}
#productSummary .summaryBox h6 {
 width:100%; margin:0 0 20px 0; padding:0 0 8px 0;
 color:#8C7850; font-size:20px; font-weight:normal; border-bottom:1px dotted #999;}
#productSummary .summaryBox .priceList h6 {
 margin-bottom:10px; padding-bottom:0; color:#000; font-size:22px; font-weight:normal; border-bottom:none;}
#productSummary .summaryBox .priceList h6 span { font-size:14px;}

#productSummary .summaryBox p {
 clear:both; margin:0 0 25px 0; padding:0 25px; font-size:16px;}
#productSummary .summaryBox.fuku p { padding: 0;}

#productSummary .summaryBox p:last-child { margin-bottom:0;}
body.hanatatami #productSummary .summaryBox p { padding:0; font-size:18px;}
#productSummary .summaryBox p.caution { margin-bottom:0; color:#8D7850; font-size:16px;}
body.hanatatami #productSummary .summaryBox p.caution { color:#000; font-size:14px;}
body.hanatatami #productSummary .summaryBox p.alignR { font-size:16px;}

#productSummary .summaryBox em { color:#26602C; font-weight:bold;}
body.hanatatami #productSummary .summaryBox em { color:#F00; font-weight:normal;}

#productSummary .summaryBox img {
 -webkit-align-self:start; -ms-flex-item-align:start; align-self:flex-start;}
#productSummary .summaryBox .mainImage { margin-bottom:30px;}
#productSummary .summaryBox .subImage { margin-bottom:15px;}
#productSummary .summaryBox .sample { margin:0 auto; padding:0; display:block;}

#productSummary .summaryBox table {
 width:100%; margin:0 0 10px 0; padding:0; font-size:16px;
 border-collapse:separate; border-top:1px solid #3D4E41; border-bottom:1px solid #3D4E41;}
#productSummary .summaryBox table th, #productSummary .summaryBox table td {
 margin:0; padding:5px 10px; text-align:center; font-weight:normal;
 border-bottom:2px solid #FFF;}
#productSummary .summaryBox table thead th,
#productSummary .summaryBox table thead td { color:#FFF; border-left:2px solid #FFF;}
#productSummary .summaryBox table thead th { border-top:2px solid #FFF; background:#3D4E41;}
#productSummary .summaryBox table thead th:first-of-type { border-left:none;}
#productSummary .summaryBox table thead td { background:#AB946B;}
#productSummary .summaryBox table tbody th { background:#EEEAE1;}
#productSummary .summaryBox table tbody th,
#productSummary .summaryBox table tbody td { border-right:2px solid #FFF;}
#productSummary .summaryBox table tbody td:last-of-type { border-right:none;}
#productSummary .summaryBox table tbody tr:nth-child(odd) td { background:#FFF;}
#productSummary .summaryBox table tbody tr:nth-child(even) td { background:#EEEAE1;}
#productSummary .summaryBox table tbody tr:last-of-type th,
#productSummary .summaryBox table tbody tr:last-of-type td { border-bottom:2px solid #FFF;}

#productSummary .summaryBox .blockL { width:50%; margin:0; padding:0;}
#productSummary .summaryBox .blockL.priceList { width:calc(50% - 20px); margin-right:20px;}
#productSummary .summaryBox .blockL h3 { padding:25px 25px 12px 15px;}
#productSummary .summaryBox .blockL p { padding:0 30px 0 15px;}
#productSummary .summaryBox.fuku .blockL p { padding: 0;}
#productSummary .summaryBox .blockR { width:50%; margin:0; padding:0;}
#productSummary .summaryBox .blockR.priceList { width:calc(50% - 20px); margin-left:20px;}

#productSummary .summaryBox .wide { width:65.833%; margin:0; padding:0;}
#productSummary .summaryBox .narrow { width:30%; margin:0 0 0 45px; padding:46px 0 0 0;}
#productSummary .summaryBox .narrow .subImage { margin-bottom:15px;}

#productSummary .ul_block { border:1px solid #000; padding:20px;}

#productSummary .summaryBox ul { margin:40px 10px 0 30px;}
#productSummary .summaryBox ul li { margin-bottom:30px; padding-left:33px; font-size:17px; line-height:150%; background:url(../images/icon_shapeL.png) no-repeat left top;}
#productSummary .summaryBox .blockL ul { margin-left:0; margin-right:35px;}

#productSummary .summaryBox ol { margin:0; padding:0 0 0 22px;}
#productSummary .summaryBox ol li {
 margin-bottom:5px; font-size:16px; text-indent:-22px; list-style-position:outside; counter-increment:cnt;}
#productSummary .summaryBox ol li:before { display:marker; content:"" counter(cnt) "．";}

@media only screen and (max-width:1200px) {
#productSummary .summaryBox .wide { width:calc(65% - 15px);}
#productSummary .summaryBox .narrow { margin-left:0;}
}

@media only screen and (max-width:980px) {
#productSummary .innerBlock { padding-bottom:40px;}
#productSummary .summaryBox {
 -webkit-box-pack:start; -ms-flex-pack:start; justify-content:flex-start;}
body.hanatatami #productSummary .summaryBox { margin-bottom:20px;}
body.hanatatami #productSummary .summaryBox:first-of-type { margin-bottom:50px;}
#productSummary .summaryBox .blockL {
 width:100%; margin-bottom:30px; -ms-flex-order:1; -webkit-order:1; order:1;}
#productSummary .summaryBox.fuku .blockL { width:100%; margin:0 0 30px; -ms-flex-order:1; -webkit-order:1; order:1;}
#productSummary .summaryBox .blockL.priceList { width:100%; margin-right:0;}
#productSummary .summaryBox .blockL img { margin:0 auto; padding:0; display:block;}
#productSummary .summaryBox .blockR {
 width:100%; margin-bottom:30px; -ms-flex-order:1; -webkit-order:1; order:1;}
#productSummary .summaryBox .blockR.priceList { width:100%; margin-left:0;}
#productSummary .summaryBox .blockR img { margin:0 auto; padding:0; display:block;}
#productSummary .summaryBox .wide { width:100%; margin-bottom:20px;}
#productSummary .summaryBox .wide img { margin:0 auto; padding:0; display:block;}
#productSummary .summaryBox .narrow { width:100%; margin-left:0; padding-top:0;}
#productSummary .summaryBox .narrow img { margin:0 auto; padding:0; display:block;}
#productSummary .summaryBox .box { margin-bottom:30px;}
#productSummary .summaryBox .box:last-of-type { margin-bottom:0;}
#productSummary .summaryBox .blockL.photo, #productSummary .summaryBox .blockR.photo {
 margin-bottom:10px; -ms-flex-order:0; -webkit-order:0; order:0;}
body.hanatatami #productSummary .summaryBox .blockL.photo { margin-bottom:30px;}
#productSummary .ul_block { margin-bottom:30px;}
#productSummary .summaryBox ul { margin:20px 0 0 0;}
#productSummary .summaryBox ul li { margin-bottom:30px;}
#productSummary .summaryBox ul li:last-child { margin-bottom:0;}
#productSummary .summaryBox .blockL ul { margin-top:0; margin-left:0; margin-right:0;}
#productSummary .summaryBox .blockL ul li:last-child { margin-bottom:0;}
#productSummary .summaryBox.ul_block ul { margin:0;}
#productSummary .summaryBox.ul_block .blockL,
#productSummary .summaryBox.ul_block .blockR { margin-bottom:0;}
#productSummary .summaryBox.ul_block .blockL ul { margin-top:0; margin-left:0; margin-right:0;}
#productSummary .summaryBox.ul_block .blockL ul li:last-child { margin-bottom:30px;}
#productSummary .summaryBox.ul_block .blockR ul li:last-child { margin-bottom:0;}
}

@media only screen and (max-width:768px) {
body.danmaru #productSummary .innerBlock { padding-bottom:0;}
body.wasou #productSummary .summaryBox:first-of-type .blockL { margin-bottom:15px;}
body.hanatatami #productSummary .summaryBox:first-of-type { margin-bottom:40px;}
body.wasou #productSummary .summaryBox .blockR { margin-bottom:10px;}
#productSummary .summaryBox h3 { padding:20px 10px 10px 10px; font-size:26px;}
#productSummary .summaryBox h4 { margin-bottom:20px; font-size:26px;}
#productSummary .summaryBox h5 { padding-left:15px; font-size:22px;}
#productSummary .summaryBox h5 span { font-size:18px;}
#productSummary .summaryBox h6 { font-size:17px;}
#productSummary .summaryBox .priceList h6 { font-size:18px;}
#productSummary .summaryBox .priceList h6 span { font-size:13px;}
#productSummary .summaryBox p { margin:0 0 20px 0; padding:0 10px; font-size:15px;}
#productSummary .summaryBox p.caution { margin-bottom:0; font-size:14px;}
body.hanatatami #productSummary .summaryBox p { font-size:15px;}
body.hanatatami #productSummary .summaryBox p.alignR { font-size:14px;}
#productSummary .summaryBox table { font-size:15px;}
#productSummary .summaryBox .mainImage { margin-bottom:20px;}
#productSummary .summaryBox ul li { margin-bottom:20px; font-size:15px;}
#productSummary .summaryBox ol li { font-size:15px;}
#productSummary .summaryBox .blockL h3 { padding:20px 10px 10px 10px;}
#productSummary .summaryBox .narrow { margin-bottom:20px;}
#productSummary .ul_block { margin-bottom:0; padding:20px 15px;}
#productSummary .summaryBox.fuku .blockL p { margin-top: 10px;}
#productSummary .flex .blockR h5 + p { margin-bottom: 30px;}
#productSummary .flex .blockR dl { margin-bottom: 30px;}
}

@media only screen and (max-width:568px) {
#productSummary .summaryBox table { font-size:14px; line-height:1.4;}
#productSummary .flex .blockL .boxL dl.long dt,
#productSummary .flex .blockL .boxL dl.long dd { width: 100%;}
#productSummary .flex .blockL .boxL dl.long dd { text-align: center; padding: 15px 0 10px; line-height: inherit; height: inherit;}
#productSummary .flex .blockL dl.long dt { height: inherit;}
#productSummary .flex .blockR dl.long dt { width: 100%; border-bottom: none;}
#productSummary .flex .blockR dl.long dd { width: 100%;}
}

/* Product Sublist
---------------------------------------------------------------------- */
#productSublist {
 clear:both; width:100%; margin:0; padding:70px 2% 50px 2%; background:url(../images/top/product_bg.jpg) repeat;}
#productSublist:after { clear:both; display:block; content:" ";}
#productSublist ul { width:100%; text-align:center; line-height:1.3; display: flex; flex-wrap: wrap;}
#productSublist ul li { float:left; width:calc(100% / 9); margin:0; padding:0; font-size:15px;}
#productSublist ul li img { width:100%; max-width:260px; margin:0 5% 5px 0; padding:0 5%; display:block;}
#productSublist ul li p { width:100%; margin:0; display:block;}

@media only screen and (max-width:980px) {
#productSublist { padding:40px 2% 40px 2%;}
#productSublist ul li { width:calc(100% / 4); margin-bottom:30px;}
#productSublist .price-button { padding: 0px 0 0;}
}

@media only screen and (max-width:768px) {
#productSublist ul li { font-size:14px;}
}

@media only screen and (max-width:568px) {
#productSublist ul li { width:calc(100% / 2);}
#productSublist ul li:nth-child(odd) { clear:left;}
#productSublist .price-button { min-width: 100%;}
}

/*------------------------------------------------------------------------------
　Sekou Page
-------------------------------------------------------------------------------*/

#example h3, #achievement h3 {
 clear:both; margin:0 0 40px 0; padding:35px 0 0 0; text-align:center;
 font-size:32px; font-weight:normal;
 background:url(../images/bg_h3.png) no-repeat center top;}

#example { clear:both; width:100%; margin:0; padding:0; background:#FFF;}
#example:after { clear:both; display:block; content:" ";}

#example .gallery { clear:both; width:100%; margin:0; padding:0;}
#example .gallery:after { clear:both; display:block; content:" ";}
#example .gallery ul {
 clear:both; margin:0; padding:0;
 display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
#example .gallery ul li {
 width:calc(100% / 2); max-width:600px; margin:0 0 2px 0; padding:0; box-sizing:border-box;}
#example .gallery ul li:nth-child(odd) { padding-right:1px;}
#example .gallery ul li:nth-child(even) { padding-left:1px;}

#achievement {
 clear:both; width:100%; margin:0; padding:0;
 background:#FFF url(../images/sekou/bg_achievement.jpg) repeat center top;}
#achievement:after { clear:both; display:block; content:" ";}

#achievement h4 { margin:0 0 20px 0; padding:0 0 0 15px; font-size:28px; font-weight:normal; border-left:7px solid #2D352E;}

#achievement ul {
 clear:both; margin:0 0 50px 0; padding:15px 20px 10px 20px; box-sizing:border-box; background:rgba(255, 255, 255, 0.8);
 display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:start; -ms-flex-pack:start; justify-content:flex-start;}
#achievement ul li {
 width:calc(100% / 3); margin:0 0 5px 0; padding:0 30px 0 15px; box-sizing:border-box;
 background:url(../images/icon_circle.png) no-repeat left 10px;}
#achievement ul li:nth-child(3n) { padding-right:0;}

#achievement dl {
 clear:both; margin:0; padding:15px 20px 10px 20px; box-sizing:border-box; background:rgba(255, 255, 255, 0.8);
 display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
#achievement dl dt {
 width:20%; margin:0 0 5px 0; padding:0 20px 0 15px; box-sizing:border-box;
 background:url(../images/icon_circle.png) no-repeat left 10px;}
#achievement dl dd { width:78%; margin:0 0 5px 0; padding:0;}

@media only screen and (min-width:1921px) {
#achievement { background-size:100%;}
}

@media only screen and (max-width:1920px) {
#achievement { background-size:auto;}
}

@media only screen and (max-width:768px) {
#example h3, #achievement h3 { margin-bottom:30px; font-size:30px;}
#achievement { background-size:100%;}
#achievement h4 { padding-left:10px; font-size:22px;}
#achievement ul li { width:calc(100% / 2);}
#achievement ul li:nth-child(3n) { padding-right:30px;}
#achievement ul li:nth-child(2n) { padding-right:0;}
#achievement dl { padding-bottom:5px; -webkit-box-pack:start; -ms-flex-pack:start; justify-content:flex-start;}
#achievement dl dt { width:100%; margin-bottom:3px; padding:0 20px 0 15px;}
#achievement dl dd { width:100%; margin-bottom:10px;}
}

@media only screen and (max-width:568px) {
#example .gallery ul { -webkit-box-pack:start; -ms-flex-pack:start; justify-content:flex-start;}
#example .gallery ul li { width:100%;}
#example .gallery ul li:nth-child(odd) { padding-right:0;}
#example .gallery ul li:nth-child(even) { padding-left:0;}
#achievement ul { padding-bottom:5px;}
#achievement ul li { width:100%; padding-right:0; margin-bottom:10px;}
#achievement ul li:nth-child(3n) { padding-right:0;}
#achievement ul li:nth-child(2n) { padding-right:0;}
}

/*------------------------------------------------------------------------------
　Care Page
-------------------------------------------------------------------------------*/

#case h3, #features h3, #course h3 {
 clear:both; margin:0 0 40px 0; padding:35px 0 0 0; text-align:center;
 font-size:32px; font-weight:normal;
 background:url(../images/bg_h3.png) no-repeat center top;}

#case { clear:both; width:100%; margin:0; padding:0; background:#FFF;}
#case:after { clear:both; display:block; content:" ";}
#case .blockL { float:left; width:730px; margin:0; padding:0;}
#case .blockL ul { clear:both; margin:0 0 50px 0; padding:0;}
#case .blockL ul li {
 margin:0 0 14px 0; padding:0 0 8px 35px; font-size:22px; font-weight:normal;
 border-bottom:1px solid #000;
 background:url(../images/icon_drop.png) no-repeat 10px 4px;}
#case ul li:nth-child(even) { margin-left:30px;}
#case .blockR { float:right; width:400px; margin:0; padding:10px 0 0 0;}
#case .blockR img { clear:both; margin:0 0 50px 0; padding:0;}
#case .blockR img:last-child { margin-bottom:0;}

#features { clear:both; width:100%; margin:0; padding:0; background:#EBE3D1;}
#features:after { clear:both; display:block; content:" ";}
#features .blockL { float:left; width:400px; margin:0; padding:0;}
#features .blockR { float:right; width:770px; margin:0; padding:25px; border:1px solid #000;}
#features .blockR ul { clear:both; margin:0 0 40px 0; padding:0;}
#features .blockR ul li {
 margin:0 0 15px 0; padding:0 0 0 35px; font-size:22px; font-weight:normal;
 background:url(../images/icon_shape_bw.png) no-repeat left 8px;}

#course { clear:both; width:100%; margin:0; padding:0; background:#FFF;}
#course:after { clear:both; display:block; content:" ";}
#course h4 {
 margin:0 0 20px 0; padding:0 0 0 15px; font-size:28px; font-weight:normal; border-left:7px solid #2D352E;}
#course h4 span { font-size:22px;}
#course ul { clear:both; margin:0 0 60px 0; padding:0;}
#course ul li {
 margin:0 0 10px 0; padding:0 0 0 35px; font-size:20px; font-weight:normal; color:#111;
 background:url(../images/icon_shape_bw.png) no-repeat left 8px;}

#course .box { clear:both; margin:0 0 50px 0; padding:20px 20px 12px 20px; border:1px solid #000;}
#course .box:after { clear:both; display:block; content:" ";}
#course .box ul { clear:both; margin:0; padding:0;}
#course .box ul li { width:calc(50% - 15px); height:40px; margin:0 0 10px 0; padding:0 15px 8px 20px; font-size:18px;
 border-bottom:1px dashed #999; background:url(../images/icon_circle.png) no-repeat left 11px;}
#course .box ul li:nth-child(odd) { float:left;}
#course .box ul li:nth-child(even) { float:right;}
#course .box ul li:nth-child(5),
#course .box ul li:nth-child(6) { margin-bottom:0; padding-bottom:0; border-bottom:none;}
#course .box ul li span.price { float:right; display:inline-block; font-size:16px;}
#course .box ul li span.price strong { font-size:20px;}
#course .box p { clear:both; margin:0; padding:10px 20px 0 20px;}

#course .option { clear:both; margin:0 0 50px 0; padding:0;}
#course .option h5 { margin:0 0 30px 0; padding:0; font-size:22px; font-weight:normal;}
#course .option p { clear:both; margin:0 0 15px 0; padding:0 20px;}

#course .omote {
 clear:both; min-height:90px; margin:0; padding:23px 10px; text-align:center;
 font-size:26px; font-weight:normal;
 background:url(../images/care/omote_bg.jpg) repeat-y left top;}

@media only screen and (max-width:1200px) {
#case .blockL { width:54%;}
#case .blockR { width:42%;}
#features .blockL { width:42%;}
#features .blockR { width:54%;}
#course .box ul li { width:calc(49% - 15px);}
}

@media only screen and (max-width:1000px) {
#course .box ul li { width:100%; padding-right:0; overflow:hidden;}
#course .box ul li:nth-child(odd) { float:none;}
#course .box ul li:nth-child(even) { float:none;}
#course .box ul li:nth-child(5) { margin-bottom:10px; padding-bottom:8px; border-bottom:1px dashed #999;}
}

@media only screen and (max-width:768px) {
#case h3, #features h3, #course h3 { margin-bottom:30px; font-size:30px;}
#case .blockL { float:none; width:100%; margin-bottom:30px;}
#case .blockL ul { margin-bottom:40px;}
#case .blockL ul li { font-size:18px; background-position:10px 2px;}
#case .blockR { float:none; width:100%; padding:10px 0 0 0;}
#case .blockR img { margin:0 auto 30px auto; display:block;}
#features .blockL { float:none; width:100%; margin-bottom:40px;}
#features .blockL img { margin:0 auto; display:block;}
#features .blockR { float:none; width:100%; padding:20px;}
#features .blockR ul { margin-bottom:10px;}
#features .blockR ul li { font-size:18px; background-position:left 5px;}
#course h4 { padding-left:10px; font-size:22px;}
#course h4 span { font-size:18px;}
#course ul { margin-bottom:40px;}
#course ul li { font-size:18px; background-position:left 5px;}
#course .box { margin-bottom:40px;}
#course .box ul li { height:auto; font-size:16px; background-position:left 10px;}
#course .box ul li span.price { font-size:14px;}
#course .box ul li span.price strong { font-size:18px;}
#course .box p { padding-top:2px;}
#course .option { margin-bottom:40px;}
#course .option h5 { margin-bottom:20px; font-size:18px;}
#course .option p { padding:0 10px;}
#course .omote { min-height:auto; padding:15px 10px; text-align:left; font-size:20px; line-height:1.4;}
}

@media only screen and (max-width:568px) {
#case ul li:nth-child(even) { margin-left:0;}
}

/*------------------------------------------------------------------------------
　Privacy Policy Page
-------------------------------------------------------------------------------*/

#privacyIndex { clear:both; width:100%; margin:0; padding:0; background:#FFF;}
#privacyIndex:after { clear:both; display:block; content:" ";}

#privacyIndex .innerBlock {
 display:-webkit-box; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}

#privacyIndex p { clear:both; width:100%; margin:0; padding:0; text-align:right;}

#privacyIndex .blockL {
 width:50%; margin:0; padding:0 50px 0 0; box-sizing:border-box;}
#privacyIndex .blockR {
 width:50%; margin:0; padding:0 0 0 50px; box-sizing:border-box; border-left:1px dashed #999;}
#privacyIndex .blockL h3, #privacyIndex .blockR h3 {
 clear:both; margin:0 0 20px 0; padding:0 0 12px 0;
 font-size:22px; font-weight:normal; border-bottom:1px solid #000;}
#privacyIndex .blockL p, #privacyIndex .blockR p { clear:both; margin:0 0 50px 0; padding:0; text-align:left;}
#privacyIndex .blockL p:last-child, #privacyIndex .blockR p:last-child { margin-bottom:0;}

@media only screen and (max-width:1000px) {
#privacyIndex .blockL { padding-right:30px;}
#privacyIndex .blockR { padding-left:30px;}
}

@media only screen and (max-width:768px) {
#privacyIndex .innerBlock { -webkit-box-pack:start; -ms-flex-pack:start; justify-content:flex-start;}
#privacyIndex .blockL { width:100%; padding-right:0; padding-bottom:40px;}
#privacyIndex .blockR { width:100%; padding-left:0; border-left:none;}
#privacyIndex .blockL h3, #privacyIndex .blockR h3 { margin-bottom:15px; padding-bottom:10px; font-size:20px;}
#privacyIndex .blockL p, #privacyIndex .blockR p { margin-bottom:40px;}
}

/*------------------------------------------------------------------------------
　Price Page
-------------------------------------------------------------------------------*/

#mainCourse h3, #excellenceMenu h3, #insideOut h3 {
 clear:both; width:100%; margin:0 0 50px 0; padding:35px 0 0 0; text-align:center;
 font-size:32px; font-weight:normal;
 background:url(../images/bg_h3.png) no-repeat center top;}

#mainCourse ul.fact, #excellenceMenu ul.fact {
 clear:both; margin:0 0 45px 0; padding:0; overflow:hidden;}
#mainCourse ul.fact li, #excellenceMenu ul.fact li {
 margin-bottom:20px; padding-left:35px; font-size:18px; line-height:1.5;
 background:url(../images/icon_shapeL.png) no-repeat left top;}
#mainCourse ul.fact li:last-child, #excellenceMenu ul.fact li:last-child { margin-bottom:0;}

.priceBlock { clear:both; margin:0; padding:20px;}

.priceBlock .priceBox { clear:both; margin:0 0 20px 0; padding:25px 20px 20px 20px; background:#FFF;}
.priceBlock .priceBox:last-of-type { margin-bottom:0;}
.priceBlock .priceBox h4 {
 clear:both; width:100%; margin:0 0 20px 0; padding:0 0 10px 0;
 font-size:22px; font-weight:normal; border-bottom:1px solid #999;}
.priceBlock .priceBox h4 span { font-size:14px;}

.priceBlock .priceBox p { clear:both; margin:5px 0; padding:0; font-size:16px;}
.priceBlock .priceBox li p { margin: 0 1em 0 0; display: inline-block;}

.priceBlock .priceBox .price { font-size:24px; font-weight:bold; line-height:1.2;}

.priceBlock .priceBox ul {
 clear:both; margin:25px 0 0 0; padding:0; overflow:hidden;}
.priceBlock .priceBox ul li { margin-bottom:12px; padding:8px 20px 7px 20px; font-size:18px; background:#EEE; display: flex; align-items: baseline; flex-wrap: wrap;}
.priceBlock .priceBox ul li:last-child { margin-bottom:0;}

.priceBlock .priceBox ul li ul { margin:-38px 0 0 70px;}
.priceBlock .priceBox ul li ul li { margin-bottom:5px; padding:8px 20px 0 20px;}

.priceBlock .priceBox dl { clear:both; margin:25px 0 0 0; padding:0; overflow:hidden;}
#mainCourse .priceBlock .priceBox dl { margin-top:30px;}
.priceBlock .priceBox dl dt {
 clear:left; float:left; width:160px; height:36px; margin:0; padding:2px 0 0 0; text-align:center;
 color:#FFF; font-size:18px; font-weight:normal; background:#AB946B;}
.priceBlock .priceBox dl dd {
 min-height:36px; margin:0 0 10px 175px; padding:3px 10px 5px 10px; position:relative;
 font-size:16px; line-height:1.8; border-bottom:1px dotted #999; display: flex;}
.priceBlock .priceBox dl dd:last-child { margin-bottom:0;}
.priceBlock .priceBox dl dd p { margin: 0; width: 15em;}
.priceBlock .priceBox dl dd:nth-of-type(4) p { width: auto; margin-right: 3em;}
.priceBlock .priceBox dl dd:last-of-type .menuName { display: flex; align-items: center;}
.priceBlock .priceBox dl dd .menuName > span { white-space: nowrap; display: inline-flex;}
.priceBlock .priceBox dl dd .menuName > span:nth-of-type(1) { margin-right: 1em;}

#priceInfo { clear:both; width:100%; margin:0; padding:0; background:#FFF;}
#priceInfo:after { clear:both; display:block; content:" ";}
#priceInfo .innerBlock { padding-top:80px;}
#priceInfo ul { clear:both; margin:0; padding:0; overflow:hidden;}
#priceInfo ul li {
 margin:0 0 15px 0; padding:0 0 0 35px;
 font-size:20px; font-weight:normal;
 background:url(../images/icon_shape_bw.png) no-repeat left 7px;}
#priceInfo ul li:last-child { margin-bottom:0;}

#mainCourse { clear:both; width:100%; margin:0; padding:0; background:#EBE3D1;}
#mainCourse:after { clear:both; display:block; content:" ";}
#mainCourse .priceBlock.highQuality { background:#444;}
#mainCourse .priceBlock.standard { background:#D9A300;}
#mainCourse .priceBlock.economy { background:#85B200;}

#excellenceMenu { clear:both; width:100%; margin:0; padding:0; background:#FFF;}
#excellenceMenu:after { clear:both; display:block; content:" ";}
#excellenceMenu .priceBlock { background:#B25900;}

#insideOut { clear:both; width:100%; margin:0; padding:0; background:#EBE3D1;}
#insideOut:after { clear:both; display:block; content:" ";}
#insideOut .priceBlock { background:#0085B2;}

@media only screen and (max-width:1000px) {
.priceBlock .priceBox dl dd .menuName { right:10px;}
}

@media only screen and (max-width:768px) {
#mainCourse h3, #excellenceMenu h3, #insideOut h3 { margin-bottom:35px; font-size:30px;}
#mainCourse ul.fact, #excellenceMenu ul.fact { margin-bottom:35px;}
#mainCourse ul.fact li, #excellenceMenu ul.fact li { font-size:16px;}
.priceBlock .priceBox h4 { margin-bottom:15px; font-size:18px;}
.priceBlock .priceBox h4 span { font-size:13px;}
.priceBlock .priceBox p { font-size:15px;}
.priceBlock .priceBox .price { font-size:22px;}
.priceBlock .priceBox ul { margin-top:15px;}
.priceBlock .priceBox ul li { font-size:16px;}
.priceBlock .priceBox li p:nth-of-type(1) { width: 100%;}
.priceBlock .priceBox dl { margin-top:15px;}
.priceBlock .priceBox dl dt { padding-top:3px; font-size:16px;}
.priceBlock .priceBox dl dd { font-size:15px;}
#mainCourse .priceBlock .priceBox dl dt { clear:both; float:none; margin-bottom:3px;}
#mainCourse .priceBlock .priceBox dl dd { margin-left:0; display: grid;}
.priceBlock .priceBox dl dd .menuName { float:right; margin-top:-2px; position:static;}
#priceInfo .innerBlock { padding-top:50px; padding-bottom:40px;}
#priceInfo ul li { font-size:17px; background-position:left 4px;}
}

@media only screen and (max-width:505px) {
.priceBlock .priceBox dl dd:last-of-type .menuName { clear:both; float:none; margin:0; padding:0;}
}

@media only screen and (max-width:480px) {
.priceBlock .priceBox dl dd { min-height:auto;}
.priceBlock .priceBox dl dd .menuName { clear:both; float:none; margin:0; padding:0; display:block;}
.priceBlock .priceBox dl dd:last-of-type .menuName { display:inline-block;}
}

@media only screen and (max-width:430px) {
#insideOut .priceBlock .priceBox dl dt { clear:both; float:none; margin-bottom:3px;}
#insideOut .priceBlock .priceBox dl dd { margin-left:0;}
}