/* main_visual
----------------------------------- */
#sub_visual.kv{padding: 0;padding-top:123px;background: url(../images/sub_visual.jpg) no-repeat center top 120%;background-size:  100%;height: 260px;}
#sub_visual .b{position: relative; z-index: 2; max-width:1280px;padding-left:0;margin: 0 auto;}
#sub_visual .span{position:absolute;display: block;width:100%;font-size: 26px;text-align: center;letter-spacing: .1em;line-height: 200%; z-index: 2;font-family: 'Montserrat', sans-serif;text-transform: uppercase;color: #fff;}
#sub_visual p{position:absolute;display: block;width:100%;font-size: 18px; text-align: center; font-weight: 600;letter-spacing: .1em; line-height: 200%; margin: 46px 0 0 0; z-index: 2;color: #fff;}

/* bread_crumb_list
----------------------------------- */
#sub_contents .bread_crumb {background:none;text-align:left;padding:0px;width:94%;max-width: 1280px;margin:0 auto;margin-bottom:30px;margin-top:15px;}
#sub_contents .bread_crumb div { display:inline;color:#fdfcf8;}
#sub_contents .bread_crumb div:after {content : '＞';padding-left:10px; font-family: inherit; font-size:13px;}
#sub_contents .bread_crumb div:last-child:after { content : '';}
#sub_contents .bread_crumb a {text-decoration:underline;font-size:12px;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:12px;}

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 15px; position: relative;padding:0px;background-attachment: inherit;}
#sub_contents .section{max-width: 1280px;width: 94%;margin: 50px auto 50px;position: relative; padding: 0;}
#sub_contents h2{text-align: center;font-size:20px;font-weight: 500;margin-bottom:10px;position: relative;line-height: 150%;padding-top: 0;letter-spacing: 0.1em;text-transform:capitalize;}
#sub_contents h2 span{font-weight: bold;font-size:19px; display: block;margin-bottom:0px;font-family: 'EB Garamond', serif;}
#sub_contents h2:before {content: '';position: absolute;top: -20px;display: inline-block;width: 30px;height: 30px;background: url(../images/sub_ttl_icon.png)no-repeat;right: 0;left: 0;margin: 0 auto;background-size:contain;}
#sub_contents h3{ text-align: center;font-size:17px; font-weight: bold; position: relative; line-height: 100%; padding-top: 20px;}
#sub_contents .txt_cen{ text-align: center; font-size:18px; line-height: 180%;font-weight: bold;}
#sub_contents .mb10{margin-bottom: 10px;}
#sub_contents .mb20{margin-bottom: 15px;}
#sub_contents .mb30{margin-bottom: 20px;}
#sub_contents .mb40{margin-bottom: 30px;}
#sub_contents .mb50{margin-bottom: 30px;}
#sub_contents .mb80{margin-bottom: 60px;}
#sub_contents .mb100{margin-bottom: 50px;}
#sub_contents .mb150{margin-bottom: 100px;}
#sub_contents .sp_br{display:block;}
#sub_contents .h2-small{letter-spacing: 0.1em;text-transform: uppercase;font-family: 'Montserrat', sans-serif;}
#sub_contents .bold{font-weight:bold;}
#sub_contents .sub_bg{background: url(../images/sub_bg.png) no-repeat top center / cover ; background-size: cover; padding: 30px 0px;}
/*#sub_contents .sub_bg02{background: #ECE6D7; padding: 30px 0px;}*/
#link01 {margin-top:-80px;padding-top:80px;}
#link02 {margin-top:-80px;padding-top:80px;}
#link03 {margin-top:-80px;padding-top:80px;}
#link04 {margin-top:-80px;padding-top:80px;}
#link05 {margin-top:-80px;padding-top:80px;}
#link06 {margin-top:-80px;padding-top:80px;}
#link07 {margin-top:-80px;padding-top:80px;}
#link08 {margin-top:-80px;padding-top:80px;}
#link09 {margin-top:-80px;padding-top:80px;}
#link10 {margin-top:-80px;padding-top:80px;}
#link11 {margin-top:-80px;padding-top:80px;}
#link12 {margin-top:-80px;padding-top:80px;}
#link13 {margin-top:-80px;padding-top:80px;}

/* tab
-----------------------------*/
#sub_contents .tab_area {display: block; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));column-gap: 10px;row-gap: 10px;}
#sub_contents .tab {padding: 10px 0; font-size: 18px;text-align: center;cursor: pointer;transition: all ease 0.3s; position: relative; border: 1px solid #665241; margin-bottom: 10px;}
#sub_contents .tab p {font-size: 16px;display: inline; font-weight: bold;}
#sub_contents .tab.is-active {padding: 10px 0; background: #665241;color: #fdfcf8; margin-bottom: 10px;}
#sub_contents .panel {display: none;}
#sub_contents .panel.is-active {display: block;background-size: cover;padding: 30px 0 0;}

/* btn
-----------------------------*/
#sub_contents .anker__items{column-gap: 1%;row-gap: 10px;}
#sub_contents .anker__item{width: 100%;height: 45px;position: relative;display: block; margin-bottom:10px;}
#sub_contents .anker__item a{display: block;text-align: center;line-height: 30px; transition: all .5s; padding: 14px 0;background: #fdfcf8;color: #665241;border: 1px solid #665241;border-radius: 100vh;}
#sub_contents .anker__item a:hover{background: #665241;color: #fdfcf8;border: 1px solid #665241;}
#sub_contents .anker__item p{font-size: 14px;}

/* about
-----------------------------*/ 
#sub_contents .info_area{text-align: center;}
#sub_contents .info_area .img{width: 100%;text-align: center;margin: 0 auto;}
#sub_contents .info_area .img img{width: 100%;height: 200px;object-fit: cover;margin-bottom: 10px;border-radius: 20px;}

/* menu
-----------------------------*/
#sub_contents .menu_txt{text-align: left;font-size: 14px;}

/* repairtreatment spa haircolor
-----------------------------*/
#sub_contents .concept_g_area{align-items: center;}
#sub_contents .concept_g_area .txt_area {width: 100%;}
#sub_contents .concept_g_area .img img{width: 100%;border-radius: 20px;}
#sub_contents .concept_g_area .img{position: relative;margin-bottom: 10px;}
#sub_contents .feature_txt{font-size: 15px;text-align: left;}
#sub_contents .feature_txt .ul{font-size: 18px;margin: 30px 0;display: inline-block;text-align: left;text-align: left;width: 100%;}
#sub_contents .feature_txt .ul p{font-size: 14px;margin-top: 5px;}
#sub_contents .feature_txt .ul .li{border-bottom: 1px solid #665241;padding-bottom: 5px;}
#sub_contents .feature_txt .ul .li .span{font-weight: bold;font-size: 16px;letter-spacing: -0.5px;}
#sub_contents .feature_txt .ul .li .span::first-letter{font-size: 26px;color: #665241;padding-right: 5px;font-family: 'Montserrat', sans-serif;display: block;}
#sub_contents .image_txt{text-align: center;font-size: 16px;}
#sub_contents .image_txt .item .span{background:#665241;color:#fff;display: inline-block;padding:20px;border-radius: 50%;font-size:24px;line-height: 1.1;font-weight: 700;font-family: 'Montserrat', sans-serif;margin-bottom: 20px;}
#sub_contents .image_txt .item .b{margin-top: 5px;font-weight: 500;letter-spacing: 0;}
#sub_contents .image_txt .item{display: block;width:100%;text-align: center;margin-bottom:50px;}
#sub_contents .recommended_txt{text-align: left;font-size: 14px;}
#sub_contents .recommended_txt .ul{font-size: 16px;display: inline-block;}
#sub_contents .recommended_txt .ul .li{border-bottom: 1px solid #665241;margin-top: 10px;padding-bottom: 5px;}
#sub_contents .recommended_txt .ul .li .span{display: block;letter-spacing: -1.9px;}
#sub_contents .recommended_txt .ul .li::before{content: ""; background:url(../images/sub_repairtreatment04_01.png) no-repeat center center; background-size: contain; width: 25px; height:25px; display: inline-block; vertical-align: middle; margin-right: 10px;}

/* product
-----------------------------*/
#sub_contents .product_txt{text-align: left;font-size: 14px;}
#sub_contents .product_txt .img{margin-bottom: 30px;}
#sub_contents .product_txt .img img{max-width: 900px;width: 100%;border-radius: 20px;}
#sub_contents .product_txt .ul{font-size: 16px;display: block;}
#sub_contents .product_txt .ul .li{border-bottom: 1px solid #665241;margin-top: 10px;padding-bottom: 5px;}
#sub_contents .product_txt .ul .li .span{display: inline-block;}
#sub_contents .product_txt .ul .li::before{content: ""; background:url(../images/sub_product01_02.png) no-repeat center center; background-size: contain; width: 30px; height:40px; display: inline-block;margin-right: 10px;}
#sub_contents .product_ttl {margin-top:5px;padding: 0 0 5px 15px;font-size: 20px;font-weight:bold;text-align: left;border-left: 5px solid #665241; line-height: 1.5;position: relative;font-weight: bold;}
#sub_contents .tbl_menu {width: 100%;margin-inline: auto;font-size: 14px;}
#sub_contents .tbl_menu .tr {display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding-bottom: 20px;}
#sub_contents .tbl_menu .tr p{padding-left: 5px;padding-top: 5px;}
#sub_contents .tbl_menu .th {width: 100%;padding: 10px 0 0 0;border-bottom: none;line-height: 1.6;}
#sub_contents .tbl_menu .span {font-size: 12px;}
#sub_contents .tbl_menu .td {width: 100%;text-align: left;padding: 0 0 10px 0;line-height: 1.6;border-bottom: 1px solid #665241;}
#sub_contents .tbl_menu .th p{font-weight:600;padding-left: 5px;}
#sub_contents .tbl_menu .td p{font-weight:500;text-align: right;font-weight: bold;padding-right: 5px;}

/* recruit
-----------------------------*/
#sub_contents .recruit_txt{text-align: left;font-size: 14px;}
#sub_contents .recruit_txt .ul{font-size: 16px;display: inline-block;}
#sub_contents .recruit_txt .ul .li{border-bottom: 1px solid #665241;margin-top: 10px;padding-bottom: 5px;}
#sub_contents .recruit_txt .ul .li .span{display: block;}
#sub_contents .recruit_txt .ul .li::before{content: ""; background:url(../images/sub_recruit01_01.png) no-repeat center center; background-size: contain; width: 25px; height:25px; display: inline-block; vertical-align: middle; margin-right: 10px;}
#sub_contents .tbl_info {margin-bottom:60px;}
#sub_contents .tbl_info .tr{width:100%;background:#fff;margin-bottom:0px;}
#sub_contents .tbl_info .th{width:100%;padding:10px 10px; background: #665241; color: #fff; text-align:center;}
#sub_contents .tbl_info .th p{font-weight: bold;}
#sub_contents .tbl_info .td{width:100%;padding:10px 10px;}
#sub_contents .tbl_info .td a{text-decoration: underline;}

/* contact
-----------------------------*/
#sub_contents .contact_txt{text-align: center;font-size: 14px;}

/* PC  */

@media screen and (min-width: 768px) {
/* main_visual
-----------------------------*/
#sub_visual.kv{padding: 0;padding-top:180px; background: url(../images/sub_visual.jpg) no-repeat center center; background-size: cover; height: 500px;}
#sub_visual .b{position: relative; z-index: 2; max-width:1280px;padding-left:0;margin: 0 auto;}
#sub_visual .span{position:absolute;display: block;width:100%;font-size: 55px;text-align: center;letter-spacing: .15em; line-height: 200%; z-index: 2;font-family: 'Montserrat', sans-serif;text-transform: uppercase;color: #fff;}
#sub_visual p{position:absolute;display: block;width:100%;font-size: 30px; text-align: center; font-weight: 600;letter-spacing: .15em; line-height: 200%; margin: 76px 0 0 0;z-index: 2;color: #fff;}

/* bread_crumb_list
-----------------------------*/
#sub_contents .bread_crumb{text-align:left;padding:0px;max-width:1280px;width:94%;margin:0 auto;margin-bottom:30px; margin-top:15px;}
#sub_contents .bread_crumb div { display:inline;color:#fdfcf8;}
#sub_contents .bread_crumb div:after {content : '＞';padding-left:10px; font-family: inherit; font-size:13px;}
#sub_contents .bread_crumb div:last-child:after { content : '';}
#sub_contents .bread_crumb a {text-decoration:underline;font-size:13px;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:13px;}

/* sub_contents
-----------------------------*/
#sub_contents {font-size: 16px; position: relative;padding:0;}
#sub_contents .section{max-width: 1280px;width: 94%;position: relative;margin: 50px auto 50px;}
#sub_contents h2{text-align: center;font-size:30px; margin-bottom:10px; position: relative; line-height: 150%; padding-top: 25px; text-transform: capitalize; letter-spacing: 0.1em;}
#sub_contents h2 span{font-weight: bold;font-size:24px; display: block;margin-bottom:0px;font-family: 'EB Garamond', serif;}
#sub_contents h2:before {content: '';position: absolute;top: -20px;display: inline-block;width: 30px;height: 30px;background: url(../images/sub_ttl_icon.png)no-repeat;right: 0;left: 0;margin: 0 auto;background-size:contain;}
#sub_contents h3{ text-align: center;font-size:22px; font-weight: bold; position: relative; line-height: 100%; padding-top: 20px;}
#sub_contents .txt_cen{ text-align: center; font-size:22px; line-height: 200%;font-weight: bold;}
#sub_contents .mb10{margin-bottom: 10px;}
#sub_contents .mb20{margin-bottom: 20px;}
#sub_contents .mb30{margin-bottom: 30px;}
#sub_contents .mb40{margin-bottom: 40px;}
#sub_contents .mb50{margin-bottom: 50px;}
#sub_contents .mb80{margin-bottom: 80px;}
#sub_contents .mb100{margin-bottom: 100px;}
#sub_contents .mb150{margin-bottom: 150px;}
#sub_contents .sp_br{display:inline-block;}
#sub_contents .sub_bg{background: url(../images/sub_bg.png) no-repeat top center / cover ; background-size: cover; padding: 30px 0px;}
/*#sub_contents .sub_bg02{background: #ECE6D7; padding: 30px 0px;}*/
#sub_contents .h2-small{letter-spacing: 0.1em;text-transform: uppercase;font-family: 'Montserrat', sans-serif;}
#sub_contents .bold{font-weight: bold;}
#link01 {margin-top:-150px;padding-top:150px;}
#link02 {margin-top:-150px;padding-top:150px;}
#link03 {margin-top:-150px;padding-top:150px;}
#link04 {margin-top:-150px;padding-top:150px;}
#link05 {margin-top:-150px;padding-top:150px;}
#link06 {margin-top:-150px;padding-top:150px;}
#link07 {margin-top:-150px;padding-top:150px;}
#link08 {margin-top:-150px;padding-top:150px;}
#link09 {margin-top:-150px;padding-top:150px;}
#link10 {margin-top:-150px;padding-top:150px;}
#link11 {margin-top:-150px;padding-top:150px;}
#link12 {margin-top:-150px;padding-top:150px;}
#link13 {margin-top:-150px;padding-top:150px;}

/* tab
-----------------------------*/
#sub_contents .tab_area {display: grid;grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));column-gap: 10px;row-gap: 10px;}
#sub_contents .tab {padding: 15px 0; font-size: 18px;text-align: center;cursor: pointer;transition: all ease 0.3s; position: relative; border: 1px solid #665241; margin-bottom: 0px;}
#sub_contents .tab p {font-size: 18px;display: inline; font-weight: bold;}
#sub_contents .tab.is-active {padding: 15px 0; background: #665241;color: #fdfcf8; margin-bottom: 0px;}
#sub_contents .panel {display: none;}
#sub_contents .panel.is-active {display: block;background-size: cover;padding: 30px 0 0;}

/* btn
-----------------------------*/
#sub_contents .anker__items{column-gap: 1%;row-gap: 10px;}
#sub_contents .anker__item{width: 24%;height: 45px;position: relative;display: block; margin-bottom:20px;}
#sub_contents .anker__item a{display: block;text-align: center;line-height: 30px; transition: all .5s; padding: 14px 0;background: #fdfcf8;color: #665241;border: 1px solid #665241;border-radius: 100vh;}
#sub_contents .anker__item a:hover{background: #665241;color: #fdfcf8;;border: 1px solid #665241;}

/* about
-----------------------------*/ 
#sub_contents .info_area{text-align: center;}
#sub_contents .info_area .img{width: 100%;text-align: center;margin: 0 auto;}
#sub_contents .info_area .img img{width: 49%;height: 300px;object-fit: cover;margin-bottom: 0px;} 
  
/* menu
-----------------------------*/
#sub_contents .menu_txt{text-align: center;font-size: 15px;}

/* repairtreatment spa haircolor
-----------------------------*/
#sub_contents .concept_g_area .txt_area {width: 100%;}
#sub_contents .concept_g_area .img{width: 100%;margin-bottom: 10px;}
#sub_contents .feature_txt{font-size: 15px;text-align: center;}
#sub_contents .feature_txt .ul{font-size: 18px;margin: 30px 0;display: inline-block;text-align: left;text-align: left;width: 100%;}
#sub_contents .feature_txt .ul p{font-size: 15px;margin-top: 10px;padding-left: 5px;}
#sub_contents .feature_txt .ul .li{border-bottom: 1px solid #665241;padding-bottom: 5px;padding-left: 5px;}
#sub_contents .feature_txt .ul .li .span{font-weight: bold;font-size: 24px;letter-spacing: 1.2px;}
#sub_contents .feature_txt .ul .li .span::first-letter{font-size: 45px;color: #665241;padding-right: 10px;font-family: 'Montserrat', sans-serif;display: inline-block;}
#sub_contents .image_txt{text-align: center;font-size: 16px;}
#sub_contents .image_txt .item{display: block;width:30%;text-align: center;font-size: 16px;}
#sub_contents .image_txt .item .span{background:#665241;color:#fff;display: inline-block;padding:20px;border-radius: 50%;font-size:24px;line-height: 1.1;font-weight: 700;font-family: 'Montserrat', sans-serif;margin-bottom: 20px;}
#sub_contents .image_txt .item .b{margin-top: 5px;font-weight: 500;font-size: 15px;}
#sub_contents .recommended_txt{text-align: center;font-size: 16px;}
#sub_contents .recommended_txt .ul{font-size: 20px;display: inline-block;text-align-last: left;}
#sub_contents .recommended_txt .ul .li{border-bottom: 1px solid #665241;;margin-top: 10px;padding-bottom: 5px;padding: 5px;}
#sub_contents .recommended_txt .ul .li .span{display: inline-block;letter-spacing: 1px;}
#sub_contents .recommended_txt .ul .li::before{content: ""; background:url(../images/sub_repairtreatment04_01.png) no-repeat center center; background-size: contain; width: 25px; height:25px; display: inline-block; vertical-align: middle; margin-right: 10px;}


/* product
-----------------------------*/
#sub_contents .product_txt{text-align: left;font-size: 15px;}
#sub_contents .product_txt .img{margin-bottom: 30px;}
#sub_contents .product_txt .img img{max-width: 900px;width: 100%;border-radius: 20px;}
#sub_contents .product_txt .ul{font-size: 18px;display: block;text-align-last: left;}
#sub_contents .product_txt .ul .li{border-bottom: 1px solid #665241;;margin-top: 10px;padding-bottom: 5px;padding: 5px;}
#sub_contents .product_txt .ul .li .span{display: inline-block;}
#sub_contents .product_txt .ul .li::before{content: ""; background:url(../images/sub_product01_02.png) no-repeat center center; background-size: contain; width: 35px; height:50px; display: inline-block; vertical-align: baseline; margin-right: 10px;}
#sub_contents .sub_illust_concept{text-align:center;width:24%; margin-left: auto; margin-right: auto;}
#sub_contents .product_ttl {font-size: 25px;margin-top:5px;}
#sub_contents .tbl_menu {width: 100%;margin-inline: auto;}
#sub_contents .tbl_menu .tr {display: flex;align-items: flex-end;border-bottom: none;padding-bottom: 0;}
#sub_contents .tbl_menu .tr p{padding-left: 10px;padding-top: 5px;}
#sub_contents .tbl_menu .th {width: 70%;padding: 15px 0;border-bottom: 1px solid #665241;line-height: 1.6;}
#sub_contents .tbl_menu .span {font-size: 14px;}
#sub_contents .tbl_menu .td {width: 30%;text-align: right;padding: 15px 0;line-height: 1.6;border-bottom: 1px solid #665241;}
#sub_contents .tbl_menu .th p{font-weight:600;font-size: 18px;padding-left: 10px;}
#sub_contents .tbl_menu .td p{font-weight:500;text-align: right;font-weight: bold;font-size: 16px;padding-right: 10px;}

/* recruit
-----------------------------*/
#sub_contents .recruit_txt{text-align: center;font-size: 16px;}
#sub_contents .recruit_txt .ul{font-size: 18px;display: inline-block;text-align-last: left;}
#sub_contents .recruit_txt .ul .li{border-bottom: 1px solid #665241;;margin-top: 10px;padding-bottom: 5px;padding: 5px;}
#sub_contents .recruit_txt .ul .li .span{display: inline-block;}
#sub_contents .recruit_txt .ul .li::before{content: ""; background:url(../images/sub_recruit01_01.png) no-repeat center center; background-size: contain; width: 25px; height:25px; display: inline-block; vertical-align: middle; margin-right: 10px;}
#sub_contents .tbl_info .tr{width:100%;background:#fff;margin-bottom:15px;}
#sub_contents .tbl_info .th{width:22%;padding:15px 10px;text-align:center;}
#sub_contents .tbl_info .td{width:77%;padding:15px 0px;}
#sub_contents .tbl_info .td a{text-decoration: underline;}
#sub_contents .sub_illust_concept{text-align:center;width:24%; margin-left: auto; margin-right: auto;}

/* contact
-----------------------------*/
#sub_contents .contact_txt{text-align: center;font-size: 16px;}

}

@media screen and (min-width: 1024px) {

/* menu
-----------------------------*/
#sub_contents .menu_txt{text-align: center;font-size: 16px;}

/* repairtreatment
-----------------------------*/
#sub_contents .concept_g_area .txt_area {width: 48%;margin-bottom: 0;}
#sub_contents .concept_g_area .img{width: 48%;}

/* product
-----------------------------*/
#sub_contents .product_txt{text-align: center;font-size: 16px;}
#sub_contents .product_txt .ul{font-size: 18px;display: inline-block;text-align-last: left;}

}