body:not(.home) .header{background:#fff;}
body:not(.home) .header.active{background:#fff;box-shadow:10px 10px 15px rgba(0,0,0,.1);}

/* main_visual
----------------------------------- */
#sub_visual {height: 250px;position: relative;z-index: 0;margin-top: 0px;overflow: hidden;text-align: center;padding-top: 110px;background-color: #4f443a;}
#sub_visual::before {content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: -1;background: url(../images/sub_visual.png) no-repeat center center; background-size: cover;opacity: .6;}
#sub_visual .h1_container{max-width:94%;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container .span {font-weight: 400;font-size:26px; line-height: 180%;text-align: center;position: relative;text-shadow:3px 3px 30px #4f443a; color:#fff;letter-spacing: 0.1em;}
#sub_visual .h1_container .small{font-size:26px;line-height:100%;font-weight: normal;text-align: center;margin-bottom: 0px;font-family: "Cormorant", serif;color:#fff;text-shadow:3px 3px 30px #4f443a; text-transform: capitalize;}

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 14px; position: relative;}
#sub_contents p{font-size: 14px;line-height: 1.8em;}
#sub_contents .section{max-width: 94%; margin: 70px auto 80px;position: relative;width: 94%;}
#sub_contents h2{ text-align: center;font-size:20px;  position: relative; line-height: 180%; padding:15px auto 15px;margin: 0px auto 80px;border-top: solid 1px #a28a6b;border-bottom: solid 1px #a28a6b;width: 100%; color:#4f443a;scroll-margin-top: 100px;}
#sub_contents .h2_container{border:0px; margin-bottom:50px; position:relative;scroll-margin-top:110px;}
#sub_contents .h2_container .span{border:none; margin:0 auto; color:#4f443a; font-weight:400;}
#sub_contents .h2_container .span::before{content:""; background:#a28a6b; position:absolute; left:0; right:0; top:-10px; width:50px; height:1px; margin:0 auto;}
#sub_contents .h2_container .small{color:#a28a6b; font-family: "Cormorant", serif;text-align:center; text-transform:capitalize;}
#sub_contents h3{ text-align: center;font-size:30px; margin-bottom:15px; position: relative;margin-top: 40px;}
#sub_contents .mb20{margin-bottom: 15px !important;}
#sub_contents .mb30{margin-bottom: 20px !important;}
#sub_contents .mb50{margin-bottom: 30px !important;}
#sub_contents .mb80{margin-bottom: 50px !important;}
#sub_contents .mb100{margin-bottom: 70px !important;}
#sub_contents .mb150{margin-bottom: 100px !important;}
#sub_contents .txt_cen{ text-align: center;  line-height: 200%;font-size: 17px;font-weight: 400;}
#sub_contents .sub_bg{ padding:20px 0px; background-color: #f5f2eb;}
#sub_contents .sub_bg02{ padding: 20px 0px;background-image: url('../images/sub_bg.png');background-repeat: repeat;background-position: center center cover;background-size: 100% auto;}
#sub_contents .pc_only{ display: none;}
#sub_contents .sp_only{ display: block;}
#sub_contents .deco_ttl::before { content: ""; position: absolute; left: 50%; bottom: 0; width: 7px; height: 7px; background-color: #77614e; transform: translateX(-50%) rotate(45deg);}
#sub_contents .deco_ttl { position: relative; margin: 0 0 22px; padding: 0 0 18px; color: #a59087; font-family: "Shippori Mincho", "Noto Serif JP", serif;font-size: 16px;font-weight: 500;line-height: 1.5;  letter-spacing: .1em; border-bottom: none;text-align: center;}
#sub_contents .deco_ttl::after {content: "";position: absolute;left: 50%;  bottom: 3px;  width: 100px;  height: 1px; background: linear-gradient(to right, transparent, #77614e 40%, transparent 40%, transparent 60%, #77614e 60%, transparent);transform: translateX(-50%);}

/* bread_crumb_list
----------------------------------- */
#sub_contents .bread_crumb{text-align:right;padding:10px 0 0 0;margin:0 auto;margin-bottom:30px;}
#sub_contents .bread_crumb .bread{ max-width:94%; margin:0 auto;}
#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 div a {text-decoration:underline;font-size:13px;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:13px;padding:0 0;}

/* btn
----------------------------------- */
#sub_contents .anker__items{column-gap: 0.5%;row-gap: 10px;}
#sub_contents .anker__item{width: 100%;position: relative;display: block;}
#sub_contents .anker__item.w100{width: 100%;}
#sub_contents .anker__item a {display: block;text-align: center;text-transform: capitalize;padding: 10px;background: #a28a6b;color: #fff !important;text-decoration: none !important; }
#sub_contents .anker__item a:hover {background: #4f443a;color:#fff;opacity:.8;}

/* concept
----------------------------------- */
#sub_contents .img-line {position: relative;padding: 5px;background-color: #f5f3ef;border: 1px solid #77614e;box-shadow: 0 10px 25px #77614e20;overflow: hidden;width: fit-content;margin: 0 auto;}
#sub_contents .img-line::before {content: "";position: absolute;top: 10px;right: 10px; bottom: 10px; left: 10px; border: 1px solid rgba(184, 145, 72, .45); pointer-events: none; z-index: 2;}

/* private
----------------------------------- */
#sub_contents .w100_img{ width: 100%;object-fit: cover;aspect-ratio: 2 / 1;max-width: 800px;}
#sub_contents .enzyme-wrap {max-width:1000px;margin:0 auto;}
#sub_contents .enzyme-head {text-align:center;margin-bottom:40px;}
#sub_contents .enzyme-en {font-family:"Cormorant",serif;font-size:14px;letter-spacing:2px;color:#a28a6b;margin-bottom:5px;}
#sub_contents .enzyme-title {font-size:24px;font-weight:bold;color:#77614e;margin-bottom:10px;}
#sub_contents .enzyme-lead {color:#4f443a;}
#sub_contents .enzyme-grid {margin-bottom:50px;}
#sub_contents .enzyme-card {background-color:#ffffff;padding:30px 20px;margin-bottom:24px;border-top:1px solid #77614e;border-left:1px solid #d5c4a8;border-right:1px solid #d5c4a8;border-bottom:1px solid #d5c4a8;box-shadow:0 4px 15px rgba(119,97,78,0.04);}
#sub_contents .enzyme-img-box {width:200px;height:200px;border-radius:50%;margin:0 auto 20px auto;overflow:hidden;background-color:#e2dfd7;}
#sub_contents .enzyme-img {width:100%;height:100%;object-fit:cover;display:block;}
#sub_contents .enzyme-num-box {margin-bottom:15px;}
#sub_contents .enzyme-num {font-family:"Cormorant",serif;font-size:28px;font-weight:bold;color:#a28a6b;line-height:1;}
#sub_contents .enzyme-card-title {font-size:18px;font-weight:bold;color:#77614e;margin-bottom:15px;line-height:1.4;}
#sub_contents .enzyme-desc {color:#4f443a;line-height:1.7;}
#sub_contents .enzyme-target-box {background-color:#ffffff;padding:40px 20px;border-top:1px solid #77614e;border-left:1px solid #d5c4a8;border-right:1px solid #d5c4a8;border-bottom:1px solid #d5c4a8;box-shadow:0 4px 20px rgba(119,97,78,0.06);}
#sub_contents .enzyme-target-head {text-align:center;margin-bottom:30px;}
#sub_contents .enzyme-target-title {font-size:20px;font-weight:bold;color:#77614e;line-height:1.4;}
#sub_contents .enzyme-message-box {background:linear-gradient(135deg,#77614e,#a28a6b);padding:30px 20px;text-align:center;border:1px solid #77614e;}
#sub_contents .enzyme-message-text {color:#ffffff;font-weight:bold;line-height:1.6;}
#sub_contents .enzyme-case-grid {margin-bottom:40px;}
#sub_contents .enzyme-case-item {background-color:#ffffff;padding:20px;margin-bottom:12px;position:relative;border:1px solid #d5c4a8;}
#sub_contents .enzyme-case-num {font-family:"Cormorant",serif;font-weight:bold;color:#a28a6b;margin-bottom:4px;}
#sub_contents .enzyme-case-text {color:#4f443a;font-weight:500;position: relative;padding-left: 30px;}
#sub_contents .enzyme-case-text::before {content:"";position:absolute;left:0px;top:50%;width:18px;height:18px;background:url('../images/sub_pri_img03_05.png') no-repeat center;background-size:contain;transform: translateY(-50%);}

/* map
----------------------------------- */
#sub_contents .sub_map_btns{column-gap: 20px;row-gap: 10px;}
#sub_contents .map_btn{width: 100%;position: relative;display: block;}
#sub_contents .map_btn a {display: block;text-align: center;text-transform: capitalize;padding: 10px 40px 10px 10px;background: #fff;color: #4f443a;position: relative;transition: background-color 0.3s ease;border: solid 1px #a28a6b;}
#sub_contents .map_btn a::after {content: "";position: absolute;top: 50%;right: 15px; width: 8px; height: 8px;border-right: 2px solid #a28a6b;border-bottom: 2px solid #a28a6b;transform: translateY(-70%) rotate(45deg);transition: transform 0.3s ease;}
#sub_contents .map_btn a:hover::after { animation: arrowMove 0.6s infinite alternate;}
@keyframes arrowMove { 0% { transform: translateY(-70%) rotate(45deg);}100% {transform: translateY(-20%) rotate(45deg);}}
#sub_contents .map_menu_box {width: 100%; }
#sub_contents .map_menu {display: block;background: #fff;color: #4f443a;padding: 20px;width: 100%; box-shadow: 10px 10px 6px #1a161610;}
#sub_contents .map_menu .ttl {display: block;color: #77614e; border-bottom: double 4px #e2dfd7;margin-bottom: 20px;padding-bottom: 10px;font-size: 15px;}

/* faq
----------------------------------- */
#sub_contents .faq__item{padding:16px;width:100%;margin:0 auto;background:#ffffff;}
#sub_contents .faq__item:not(:last-of-type){margin-bottom:20px;}
#sub_contents .faq__item .dt{padding:12px 8px 12px 40px;position:relative;border-bottom:4px double #e2dfd7;font-weight:700;line-height:1.7;}
#sub_contents .faq__item .dd{padding:12px 8px 12px 40px;position:relative;line-height:1.8;}
#sub_contents .faq__item .dt::before,#sub_contents .faq__item .dd::before{position:absolute;left:10px;top:8px;}
#sub_contents .faq__item .dt::before{content:"Q.";font-size:18px;color:#77614e;font-family: "Cormorant", serif;}
#sub_contents .faq__item .dd::before{content:"A.";font-size:18px;color:#a28a6b;font-family: "Cormorant", serif;}

/* concerns
-----------------------------*/
#sub_contents .graybox {background-color: #f8f7f7;padding: 20px 20px;}
#sub_contents .comm_textBox {position: relative;}
#sub_contents .comm_textBox .img{width: 100%;margin-bottom: 10px;position:relative;}
#sub_contents .comm_textBox .img.img-frame::before {content: ""; position: absolute;top: -10px;left: -10px;width: 100%;height: 100%;border: 1px solid #a59087;z-index: 1;pointer-events: none;}
#sub_contents .comm_textBox .img.img-frame img {display: block;width: 100%;height: 100%; object-fit: cover;}
#sub_contents .comm_textBox .img.img-sha img {box-shadow: 10px 10px 0px #e2dfd7;}
#sub_contents .comm_textBox .textarea {width: 100%;margin-bottom:0px;}
#sub_contents .comm_textBox .textarea p.b {font-size: 15px;margin-bottom: 5px;text-transform: capitalize;font-weight: normal;color: #a59087;}
#sub_contents .comm_textBox .textarea p.ttl {border-bottom: solid 1px #e2dfd7;margin-bottom: 10px;font-weight: normal;font-size: 17px;padding-bottom:5px;}
#sub_contents .comm_textBox .textarea p.ttl.doubleline {border-bottom: double 4px #a59087;}
#sub_contents .comm_textBox .textarea p.ex {line-height:2;font-size: 13px;}
#sub_contents .sub_large_txt {position: absolute;color: #e2dfd789;font-size: 50px;right: 10px;bottom: -40px;text-transform: capitalize;}
#sub_contents .sub_voice_ttl{color: #77614e;font-size: 18px;position: relative; margin-bottom: 10px;font-weight: bold;background: linear-gradient(transparent 50%, #d5c4a850 50%); width: -moz-fit-content; width: fit-content;}
#sub_contents .sub_voice_menu{color: #77614e;font-size: 16px;padding-left: 10px;border-left: solid 3px #77614e;}
#sub_contents .sub_voice_note{color: #333333;font-size: 12px;}
#sub_contents .sub_white_box{position:relative;padding:25px 20px;background-color:#fff;box-shadow: 0 10px 25px #77614e20;}
#sub_contents .sub_white_box .ttl{color: #a59087; font-size: 18px;margin-bottom: 10px;border-bottom:solid 1px #e2dfd7;}
#sub_contents .sub_voice_box{display:flex;flex-direction:column;align-items:center;gap:20px;}
#sub_contents .sub_voice_img{width:110px;min-width:110px;text-align:center;}
#sub_contents .sub_voice_img img{display:block;width:100%;height:auto;margin:0 auto;}
#sub_contents .sub_voice_content{width:100%;min-width:0;flex:none;}
#sub_contents .sub_voice_ttl{color:#77614e;font-size:18px;position:relative;margin:0 auto 10px;font-weight:bold;text-align:center;background:linear-gradient(transparent 50%,#d5c4a850 50%);width:-moz-fit-content;width:fit-content;}
#sub_contents .sub_voice_menu{color:#77614e;font-size:15px;line-height:1.6;padding-left:10px;border-left:solid 3px #77614e;}
#sub_contents .sub_voice_note{color:#333333;font-size:11px;line-height:1.6;}

/* reserve
----------------------------------- */
#sub_contents .flow_g_area{background-color: #fff;padding:20px;position:relative;box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.10);margin-bottom:45px;}
#sub_contents .flow_g_area .ttl::before{content:""; width:8px; height:8px; background:#a59087;border-radius:50px; position:absolute; left:0; top:50%;transform: translateY(-50%);}
#sub_contents .flow_g_area .ttl {border-bottom:4px double #e2dfd7;margin-bottom:20px;padding-left: 14px;position: relative;}
#sub_contents .flow_g_area .num {font-size:18px;color:#77614e;padding-right:10px;display:inline-block;}
#sub_contents .flow_g_area .txt {font-size:16px;display:inline-block;font-weight:500;}
#sub_contents .flow_g_area .txt_area {width: 100%;}
#sub_contents .flow_g_area .txt_area p.lh {font-size:12px;}

/* coupon
-----------------------------*/
#sub_contents img.sub_cen_img{width: auto;object-fit: cover;max-height: 30px;}

/* contact
-----------------------------*/
#sub_contents .sub_business{position: relative; padding: 20px 10px; background-color: #ffffff;font-weight: normal;text-align: center;}
#sub_contents .sub_business::before { position: absolute;top: -5px; left: -5px;width: 100%;height: 100%; border: 1px solid #d5c4a8;transition: .3s;content: '';}
#sub_contents .sub_business a{z-index: 2;position: relative;display: inline-block;}
#sub_contents .sub_business p.ttl{font-size: 16px;color:#77614e;}
#sub_contents .con_img img{width: 100%;object-fit: cover;margin-bottom: 10px;aspect-ratio: 3 / 2;}
#sub_contents .sub_business a{text-decoration: underline;color: #77614e;}
#sub_contents .sub_map{width:100%;}
#sub_contents .tbl_info {width: 100%;margin-inline: auto;position: relative;}
#sub_contents .tbl_info .tr {display: block;align-items: center;position: relative;align-items: stretch;}
#sub_contents .tbl_info .th {width: 100%;padding: 1em;border-bottom: none;text-align: center;align-items: center;vertical-align: middle;}
#sub_contents .tbl_info .th p.ttl {font-weight: normal;line-height: 2em;}
#sub_contents .tbl_info .th p.ttl.tbl_note {font-size: 12px;}
#sub_contents .tbl_info .td {width: 100%;text-align: left;padding: 1em;border-bottom: 1px solid #e2dfd7;}
#sub_contents .tbl_info .td p.info {font-weight: normal;display: inline-block;line-height: 2em;}
#sub_contents .tbl_info .td p.info.block {display: block;}
#sub_contents .tbl_info .td a {color: #77614e;border-bottom: solid 1px #77614e;}
#sub_contents .tbl_info.sub_menu .th {background-color: #4f443a;}
#sub_contents .tbl_info.sub_menu .th p.ttl {color: #ffffff;}
#sub_contents .tbl_info.sub_menu .td {background-color: #ffffff;}
#sub_contents .tbl_menu {width: 100%;margin-inline: auto;position: relative;}
#sub_contents .tbl_menu .tr {display: block;align-items: center;position: relative;align-items: stretch;}
#sub_contents .tbl_menu .th {width: 100%;padding: 1em;border-bottom: none;text-align: center;align-items: center;vertical-align: middle;background: #77614e;}
#sub_contents .tbl_menu .th p.ttl {font-weight: normal;line-height: 2em;color: #fff;}
#sub_contents .tbl_menu .td {width: 100%;text-align: left;padding: 1em;background-color: #ffffff;}
#sub_contents .tbl_menu .td p.info {font-weight: normal;display: inline-block;line-height: 2em;}
#sub_contents .tbl_menu .td p.info.block {display: block;}
#sub_contents .tbl_menu .td a {border-bottom: solid 1px #77614e;}

/* news
----------------------------------- */
#sub_contents .subnews_flex{display:flex;align-items:center;width:100%;box-sizing:border-box;padding:1.5em 0 1em;border-bottom:solid 1px #e2dfd7;}
#sub_contents .webgene-blog:has(.news__item){display:block;justify-content:flex-start;flex-wrap:wrap;position:relative;row-gap:40px;}
#sub_contents .webgene-blog .news__item .news__title{display:-webkit-box;width:auto;margin:0;font-size:14px;font-weight:normal;line-height:1.5;overflow:hidden;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:3;flex:1;min-width:0;}
#sub_contents .webgene-blog .news__item .news__date{width:95px;min-width:95px;box-sizing:border-box;margin:0 10px 0 0;padding-left:15px;position:relative;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;}
#sub_contents .webgene-blog .news__item .news__date::before{content:"";width:6px;height:6px;background:#a59087;border-radius:50%;position:absolute;left:0;top:50%;transform:translateY(-50%);}
#sub_contents .webgene-blog .news__cate{display:block;width:75px;min-width:75px;box-sizing:border-box;margin:0 10px 0 0;padding:2px 5px;font-size:12px;line-height:1.5;text-align:center;border-radius:0;color:#fff;background-color:#77614e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;}
#sub_contents .webgene-pagination{display:block;width:100%;margin-top:50px;text-align:center;margin-top:15px;}
#sub_contents .webgene-pagination ul{display:flex;justify-content:center;column-gap:10px;}
#sub_contents .webgene-pagination ul li a{display:inline-block;padding:5px 20px;background:#a28a6b;color:#fff;}
#sub_contents .cateList{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:10px;width:100%;max-width:100%;margin:0 0 50px;padding:0;}
#sub_contents .cateList section.webgene-blog{display:contents;}
#sub_contents .cateList .webgene-item{margin:0;padding:0;}
#sub_contents .cateList p{margin:0;padding:0;line-height:inherit;}
#sub_contents .cateList .webgene-item.categorylist,#sub_contents .cateList article.webgene-item.categorylist{width:calc(50% - 5px);max-width:calc(50% - 5px);flex:0 0 calc(50% - 5px);}
#sub_contents .cateList .webgene-item.categorylist a{display:flex;align-items:center;justify-content:center;width:100%;height:50px;box-sizing:border-box;margin:0;padding:8px 5px;border:1px solid #77614e;color:#77614e;font-size:15px;font-weight:500;line-height:1.4;text-align:center;text-transform:capitalize;}
#sub_contents .webgene-item.categorylist a:hover{background:#77614e;border-color:#77614e;color:#fff;}
#sub_contents .cateList .c3035{padding:0.5em;}

/* detail_news
----------------------------------- */
#sub_contents .new_ttl {text-align: center;font-size:20px;font-weight:500;position: relative;}
#sub_contents .new_ttl span{text-align: center;font-size:21px;font-weight:normal;line-height: 1.8em;margin-bottom: 20px;}
#sub_contents .news_detail .news_img {text-align: center;margin: 0 auto;width: 100%;}
#sub_contents .news_detail .news_img img { width: auto; text-align: center; margin: 0 auto 30px; object-fit: cover; padding: 10px; background: #fff; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15), inset 0 0 0 1px rgba(0, 0, 0, 0.05), inset 0 0 20px rgba(206, 196, 196, 0.03); border: 1px solid #e3d0af; }
#sub_contents .news_detail .news_date{text-align: center; display: block;margin: 0 auto 20px;font-size: 17px;font-family: "Cormorant", serif;}
#sub_contents .news_text{border: solid 1px #d5c4a8; padding:15px 15px;line-height: 2em;}
#sub_contents .new_ttl span{text-align: center;font-size:28px;font-weight:normal;}

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

/* sub_contents
----------------------------------- */
#sub_contents .pc_only{ display: block;}
#sub_contents .sp_only{ display: none;}
#sub_contents .sub_white_box{position: relative; padding: 30px 40px;background-color: #fff;}
#sub_contents .deco_ttl {position: relative;margin: 0 0 28px;padding: 0 0 22px;color: #a59087;font-size: 22px; font-weight: 500; line-height: 1.5; letter-spacing: .1em; border-bottom: none;}
#sub_contents .deco_ttl::before {content: ""; position: absolute; left: 50%; bottom: 0; width: 7px; height: 7px; background-color: #e2dfd7; transform: translateX(-50%) rotate(45deg);}
#sub_contents .deco_ttl::after { content: ""; position: absolute; left: 50%; bottom: 3px; width: 130px; height: 1px; background: linear-gradient(to right, transparent, #e2dfd7 40%, transparent 40%, transparent 60%, #e2dfd7 60%, transparent);transform: translateX(-50%);}

/* btn
----------------------------------- */
#sub_contents .anker__items{column-gap: 0.5%;row-gap: 10px;}
#sub_contents .anker__item{width: 48%;position: relative;display: block;}
#sub_contents .anker__item.w50{width: 48%;}
#sub_contents .anker__item.w30{width: 32%;}
#sub_contents .anker__item.w25{width: 23%;}
#sub_contents .anker__item a {display: block;text-align: center;text-transform: capitalize;padding: 10px;background: #a28a6b;color: #fff; }
#sub_contents .anker__item a:hover {background: #4f443a;color:#fff;opacity:.8;}

/* concept
----------------------------------- */
#sub_contents .img-line {position: relative;background-color: #f5f3ef; border: 1px solid #77614e30;box-shadow: 0 18px 40px #77614e20;overflow: hidden;padding: 8px;}
#sub_contents .img-line::before { content: ""; position: absolute; top: 18px;right: 18px;bottom: 18px;left: 18px; border: 1px solid #d5c4a8;pointer-events: none;z-index: 2;}

/* faq
----------------------------------- */
#sub_contents .faq__item {padding:20px;width:100%;margin:0 auto;}
#sub_contents .faq__item:not(:last-of-type) {margin-bottom: 30px;}
#sub_contents .faq__item .dt {padding: 15px 10px 15px 50px;position: relative;font-weight:700;}
#sub_contents .faq__item .dd {padding: 15px 10px 15px 50px;position: relative;}
#sub_contents .faq__item .dt::before,#sub_contents .faq__item .dd::before {position: absolute;left: 15px;top: 8px;}
#sub_contents .faq__item .dt::before {content: "Q.";font-size: 20px;font-weight:bold;}
#sub_contents .faq__item .dd::before {content: "A.";font-size: 20px; font-weight:bold;}

/* concerns
-----------------------------*/
#sub_contents .whitebox {background-color: #fff;padding: 20px 20px;}
#sub_contents .comm_textBox {position: relative;}
#sub_contents .comm_textBox .img{width: 100%;margin-bottom: 20px;position:relative;object-fit: cover;}
#sub_contents .comm_textBox.sub_staff .img{width: 100%;margin: 0 auto 20px;max-width: 560px;text-align: center;}
#sub_contents .comm_textBox .img.img-sha img {box-shadow: 15px 15px 0px #e2dfd7;}
#sub_contents .comm_textBox .img.img-frame::before {content: ""; position: absolute;top: -10px;left: -10px;width: 100%;height: 100%;border: 1px solid #a59087;z-index: 1;pointer-events: none;}
#sub_contents .comm_textBox .img.img-frame img {display: block;width: 100%;height: 100%; object-fit: cover;}
#sub_contents .comm_textBox .textarea {width: 100%;margin-bottom:0px;}
#sub_contents .comm_textBox .textarea p.b {font-size: 16px;margin-bottom: 5px;text-transform: capitalize;font-weight: normal;color: #a59087;}
#sub_contents .comm_textBox .textarea p.ttl {border-bottom: solid 1px #e2dfd7;margin-bottom: 10px;font-weight: normal;font-size: 20px;padding-bottom:5px;}
#sub_contents .comm_textBox .textarea p.ex {line-height:2;font-size: 13px;}
#sub_contents .sub_large_txt {position: absolute;font-size: 80px;right: 20px;bottom: -70px;text-transform: capitalize;}
#sub_contents .sub_voice_ttl{color: #77614e;font-size: 22px;position: relative; margin-bottom: 10px;font-weight: bold;background: linear-gradient(transparent 50%, #d5c4a850 50%); width: -moz-fit-content; width: fit-content;}
#sub_contents .sub_voice_menu{color: #77614e;font-size: 18px;padding-left: 10px;border-left: solid 3px #77614e;}
#sub_contents .sub_voice_note{color: #333333;font-size: 13px;}
#sub_contents .sub_white_box{position:relative;padding:30px 40px;background-color:#fff;}
#sub_contents .sub_white_box p.ttl{ font-size: 22px;margin-bottom: 10px;}
#sub_contents .sub_voice_box{display:flex;flex-direction:row;align-items:center;gap:35px;}
#sub_contents .sub_voice_img{width:150px;min-width:150px;text-align:center;}
#sub_contents .sub_voice_img img{display:block;width:100%;height:auto;margin:0 auto;}
#sub_contents .sub_voice_content{flex:1;width:auto;min-width:0;}
#sub_contents .sub_voice_ttl{color:#77614e;font-size:22px;position:relative;margin-bottom:10px;font-weight:bold;background:linear-gradient(transparent 50%,#d5c4a850 50%);width:-moz-fit-content;width:fit-content;}
#sub_contents .sub_voice_menu{color:#77614e;font-size:18px;padding-left:10px;border-left:solid 3px #77614e;}
#sub_contents .sub_voice_note{color:#333333;font-size:13px;} 

/* reserve
----------------------------------- */
#sub_contents .flow_g_area{background-color: #fff;padding:40px;position:relative;box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.10);margin:0 auto 45px;width: 80%;}
#sub_contents .flow_g_area .num {font-size:20px;padding-right:10px;}
#sub_contents .flow_g_area .txt {font-size:20px;padding-bottom:5px;}
#sub_contents .flow_g_area .txt_area p.lh {font-size:15px;}

/* coupon
-----------------------------*/
#sub_contents img.sub_cen_img {width: auto;object-fit: cover;max-height: 60px;}

/* contact
-----------------------------*/
#sub_contents .sub_business{position: relative; padding: 30px 40px;font-weight: normal;text-align: center;}
#sub_contents .sub_business::before { position: absolute;top: -10px; left: -10px;width: 100%;height: 100%;transition: .3s;content: '';}
#sub_contents .sub_business p.ttl{font-size: 16px;color:#77614e;}
#sub_contents .con_img img{width: 33%;}
#sub_contents .sub_map{width:100%;}
#sub_contents .tbl_info {width: 100%;margin-inline: auto;position: relative;}
#sub_contents .tbl_info .tr {display: flex;align-items: center;position: relative;align-items: stretch;border-bottom: 1px solid #e2dfd7;}
#sub_contents .tbl_info .tr:first-child {border-top: 1px solid #e2dfd7;}
#sub_contents .tbl_info .th {width: 20%;padding: 20px;text-align: left;align-items: left;vertical-align: middle;}
#sub_contents .tbl_info .th p.ttl {font-weight: normal;line-height: 2em;}
#sub_contents .tbl_info .th p.ttl.tbl_note {font-size: 13px;}
#sub_contents .tbl_info .td {width: 80%;text-align: left;padding: 20px;}
#sub_contents .tbl_info .td p.info {font-weight: normal;display: inline-block;line-height: 2em;}
#sub_contents .tbl_info .td p.info.block {display: block;}
#sub_contents .tbl_menu {width: 100%;margin-inline: auto;position: relative;}
#sub_contents .tbl_menu .tr {display: flex;align-items: center;position: relative;align-items: stretch;border-bottom: 1px solid #77614e;padding-bottom: 7px;padding-top: 7px;}
#sub_contents .tbl_menu .tr:first-child {border-top: 1px solid #77614e;}
#sub_contents .tbl_menu .th {width: 40%;padding: 20px;text-align: center;align-items: center;vertical-align: middle;}
#sub_contents .tbl_menu .th p.ttl {font-weight: normal;line-height: 2em;}
#sub_contents .tbl_menu .td {width: 60%;text-align: left;padding: 20px;}
#sub_contents .tbl_menu .td p.info {font-weight: normal;display: inline-block;line-height: 2em;}
#sub_contents .tbl_menu .td p.info.block {display: block;}

/* news
-----------------------------*/
#sub_contents .subnews_flex{display:flex;align-items:center;width:100%;box-sizing:border-box;padding:15px 0 1em;border-bottom:solid 1px #e2dfd7;}
#sub_contents .webgene-blog:has(.news__item){display:block;justify-content:flex-start;flex-wrap:wrap;position:relative;row-gap:40px;}
#sub_contents .webgene-blog .news__item .news__title{display:-webkit-box;width:auto;margin:0;font-size:15px;font-weight:normal;line-height:1.5;overflow:hidden;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:3;flex:1;min-width:0;}
#sub_contents .webgene-blog .news__item .news__date{width:150px;min-width:150px;box-sizing:border-box;margin:0 30px 0 0;padding-left:25px;position:relative;font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;font-size:16px;}
#sub_contents .webgene-blog .news__item .news__date::before{content:"";width:8px;height:8px;background:#a59087;border-radius:50%;position:absolute;left:0;top:50%;transform:translateY(-50%);}
#sub_contents .webgene-blog .news__cate{display:block;width:140px;min-width:140px;box-sizing:border-box;margin:0 15px 0 0;padding:2px 10px;font-size:15px;line-height:1.5;text-align:center;border-radius:0;color:#fff;background-color:#77614e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;}
#sub_contents .webgene-pagination{display:block;width:100%;margin-top:50px;text-align:center;}
#sub_contents .webgene-pagination ul{display:flex;justify-content:center;column-gap:20px;}
#sub_contents .webgene-pagination ul li a{display:inline-block;padding:5px 30px;background:#a28a6b;color:#fff;}
#sub_contents .cateList{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:20px;width:100%;margin:0 0 50px;padding:0;}
#sub_contents .cateList section.webgene-blog{display:contents;}
#sub_contents .cateList .webgene-item{margin:0;padding:0;}
#sub_contents .cateList p{margin:0;padding:0;line-height:inherit;}
#sub_contents .cateList .webgene-item.categorylist,#sub_contents .cateList article.webgene-item.categorylist{width:calc(30% - 16px);max-width:calc(30% - 16px);flex:0 0 calc(30% - 16px);}
#sub_contents .cateList .webgene-item.categorylist a{display:flex;align-items:center;justify-content:center;width:100%;height:50px;box-sizing:border-box;margin:0;padding:0.5em;font-weight:500;line-height:1.4;text-align:center;text-transform:capitalize;border:1px solid #77614e;color:#77614e;}
#sub_contents .webgene-item.categorylist a:hover{background:#77614e;border-color:#77614e;color:#fff;}
#sub_contents .cateList .c3035{padding:0.5em;}  
}


@media screen and (min-width: 1024px) {
/* main_visual
----------------------------------- */
#sub_visual {height:350px;position:relative;z-index:0;margin-top:0px;overflow: hidden;text-align: center;padding-top: 140px;}
#sub_visual .h1_container{max-width:1200px;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container .span {font-weight: 500;font-size:42px; line-height: 180%;text-align: center;position: relative;}
#sub_visual .h1_container .small{font-size:28px;line-height:100%;font-weight: normal;text-align: center;margin-bottom: 0px;font-family: "Cormorant", serif; }

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 16px; position: relative;}
#sub_contents p{font-size: 16px;line-height: 1.8em;}
#sub_contents .section{max-width: 1200px; margin: 70px auto 80px;position: relative;width: 94%;}
#sub_contents h2{ text-align: center;font-size:32px;  position: relative; line-height: 180%; padding:15px auto 15px;margin: 0px auto 80px;border-top: solid 1px #a28a6b;border-bottom: solid 1px #a28a6b;width: 600px; color:#4f443a;scroll-margin-top: 40px;}
#sub_contents .h2_container{border:0px; margin-bottom:50px; position:relative;}
#sub_contents .h2_container .span{border:none; margin:0 auto; color:#4f443a; font-weight:400;}
#sub_contents .h2_container .span::before{content:""; background:#a28a6b; position:absolute; left:0; right:0; top:-10px; width:50px; height:1px; margin:0 auto;}
#sub_contents .h2_container .small{color:#a28a6b; font-family: "Cormorant", serif; text-align:center; text-transform:capitalize;}
#sub_contents h3{ text-align: center;font-size:30px; margin-bottom:15px; position: relative;margin-top: 20px;}
#sub_contents .mb20{margin-bottom: 20px !important;}
#sub_contents .mb30{margin-bottom: 30px !important;}
#sub_contents .mb50{margin-bottom: 50px !important;}
#sub_contents .mb80{margin-bottom: 80px !important;}
#sub_contents .mb100{margin-bottom: 100px !important;}
#sub_contents .mb150{margin-bottom: 150px !important;}
#sub_contents .txt_cen{ text-align: center;  line-height: 200%;font-size: 20px;font-weight: 400;}
#sub_contents .sub_bg{ padding:20px 0px; }

/* bread_crumb_list
----------------------------------- */
#sub_contents .bread_crumb{text-align:right;padding:10px 0 0 0;margin:0 auto;margin-bottom:30px;}
#sub_contents .bread_crumb .bread{ max-width:1200px; margin:0 auto;}
#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 div a {text-decoration:underline;font-size:13px;}
#sub_contents .bread_crumb p{margin:0 0 0 20px; font-size:13px;padding:0 0;}

/* btn
----------------------------------- */
#sub_contents .anker__items{column-gap: 0.5%;row-gap: 10px;}
#sub_contents .anker__item{width: 31%;position: relative;display: block;}
#sub_contents .anker__item.w100{width: 100%;}
#sub_contents .anker__item.w50{width: 48%;}
#sub_contents .anker__item.w30{width: 31%;}
#sub_contents .anker__item.w20{width: 19%;}
#sub_contents .anker__item a {display: block;text-align: center;text-transform: capitalize;padding: 1em;}
#sub_contents .anker__item a:hover {opacity:.8;}

/* private
----------------------------------- */
#sub_contents .enzyme-wrap {max-width:1050px;}
#sub_contents .enzyme-card {padding:40px 30px;}
#sub_contents .enzyme-case-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:15px;}
#sub_contents .enzyme-case-item {margin-bottom:0;}

/* private
----------------------------------- */
#sub_contents .enzyme-title {font-size:28px;}
#sub_contents .enzyme-grid {display:table;width:100%;table-layout:fixed;border-spacing:20px 0;margin-bottom:50px;}
#sub_contents .enzyme-card {display:table-cell;vertical-align:top;margin-bottom:0;padding:35px 25px;}
#sub_contents .enzyme-target-box {padding:50px 40px;}
#sub_contents .enzyme-target-title {font-size:24px;}

/* concerns
-----------------------------*/
#sub_contents .graybox {background-color: #f8f7f7;padding: 30px 40px;scroll-margin-top:40px;}
#sub_contents .comm_textBox {position: relative;scroll-margin-top:120px;}
#sub_contents .comm_textBox .img{width: 50%;margin-bottom: 0px;position:relative;}
#sub_contents .comm_textBox.sub_staff .img{width: 30%;max-width: 600px;}
#sub_contents .comm_textBox .img img{object-fit: cover;}
#sub_contents .comm_textBox .textarea {width: 45%;}
#sub_contents .comm_textBox.sub_staff .textarea {width: 65%;margin-bottom: 0;}
#sub_contents .comm_textBox.sub_staff .img {margin-bottom: 0;}
#sub_contents .comm_textBox .textarea p.b {font-size: 18px;margin-bottom: 5px;text-transform: capitalize;font-weight: normal;color: #a59087;}
#sub_contents .comm_textBox .textarea p.ttl {margin-bottom: 20px;font-weight: normal;font-size: 22px;padding-bottom:10px;}
#sub_contents .comm_textBox .textarea p.ex {line-height:2;font-size: 16px;text-align: left;}
#sub_contents .sub_large_txt {position: absolute;font-size: 100px;right: 20px;bottom: 0px;text-transform: capitalize;}
#sub_contents .sub_large_txt.sub_left {left: 20px;}

/* map
----------------------------------- */
#sub_contents .sub_map_btns{column-gap: 1%;row-gap: 10px;}
#sub_contents .map_btn{width: 49%;position: relative;display: block;}
#sub_contents .map_btn a {display: block;text-align: center;text-transform: capitalize;padding: 10px 40px 10px 10px;background: #fff;color: #4f443a;position: relative;transition: background-color 0.3s ease;border: solid 1px #a28a6b;}
#sub_contents .map_btn a::after {content: "";position: absolute;top: 50%;right: 15px; width: 8px; height: 8px;border-right: 2px solid #a28a6b;border-bottom: 2px solid #a28a6b;transform: translateY(-70%) rotate(45deg);transition: transform 0.3s ease;}
#sub_contents .map_btn a:hover::after { animation: arrowMove 0.6s infinite alternate;}
@keyframes arrowMove { 0% { transform: translateY(-70%) rotate(45deg);}100% {transform: translateY(-20%) rotate(45deg);}}
#sub_contents .map_menu_box {width: 100%; }
#sub_contents .map_menu {display: block;background: #fff;color: #4f443a;padding: 40px;width: 48%; }
#sub_contents .map_menu .ttl {display: block;color: #77614e;;margin-bottom: 20px;padding-bottom: 10px;font-size: 19px;}

/* contact
-----------------------------*/
#sub_contents .sub_business{position: relative; padding: 30px 40px 70px;font-weight: normal;text-align: center;}
#sub_contents .sub_business::before { position: absolute;top: -10px; left: -10px;width: 100%;height: 100%;transition: .3s;content: '';}
#sub_contents .sub_business p.ttl{font-size: 24px;color:#77614e;}
#sub_contents .con_img {height: 350px;}
#sub_contents .con_img img{width: 33%;}
#sub_contents .center_icon {width: 100%;text-align: center;position: relative;}
#sub_contents .center_icon img{width: 100px;text-align: center;margin: 0 auto;}
#sub_contents .sub_map{width:100%;}
#sub_contents .tbl_info {width: 100%;margin-inline: auto;position: relative;}
#sub_contents .tbl_info .tr {display: flex;align-items: center;position: relative;align-items: stretch;}
#sub_contents .tbl_info .th {width: 20%;padding: 20px;text-align: left;vertical-align: middle;}
#sub_contents .tbl_info .th p.ttl {font-weight: normal;line-height: 2em;}
#sub_contents .tbl_info .th p.ttl.tbl_note {font-size: 13px;}
#sub_contents .tbl_info .td {width: 80%;text-align: left;padding: 20px;}
#sub_contents .tbl_info .td p.info {font-weight: normal;display: inline-block;line-height: 2em;}
#sub_contents .tbl_info .td p.info.block {display: block;}

/* news
----------------------------------- */
#sub_contents .subnews_flex{padding:0 0 1em;;}
#sub_contents .webgene-blog:has(.news__item) {display: block; justify-content: flex-start; flex-wrap: wrap; position: relative; row-gap: 40px;}
#sub_contents .webgene-blog .news__item .news__title {  font-weight: normal;   width: 100%; line-height: 1.5; overflow: hidden; display: -webkit-box; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 3;  margin-top: 1.2em; font-size: 15px;font-weight: normal;}
#sub_contents .webgene-blog .news__item .news__date {margin: 0 30px 0px 0px;  padding-left:25px; position:relative;}
#sub_contents .webgene-blog .news__item .news__date::before{content:""; width:8px; height:8px; background:#a59087;border-radius:50px; position:absolute; left:0; top:30%;}
#sub_contents .webgene-pagination{margin-top: 50px;text-align: center;display: block;width: 100%;}
#sub_contents .webgene-pagination ul{display: flex;justify-content: center;column-gap: 20px;}
#sub_contents .webgene-pagination ul li a{display: inline-block;padding: 5px 30px;background: #a28a6b;color:#fff;}
#sub_contents .subnews_flex{display: flex;align-items: baseline;}
#sub_contents .cateList{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;margin:0 0;padding:0; margin-bottom:50px;}
#sub_contents .cateList section.webgene-blog{display:contents; }
#sub_contents .cateList .webgene-item{width:auto;margin:0;padding:0;}
#sub_contents .cateList p{margin:0;padding:0;line-height:inherit;}
#sub_contents .cateList .webgene-item.categorylist,#sub_contents .cateList article.webgene-item.categorylist{flex:1 1 auto;max-width:20%;}
#sub_contents .cateList .webgene-item.categorylist a{justify-content:center;display: block;text-align: center;color: #fff;;text-transform: capitalize;padding: 1em;font-weight: 500; border:1px solid #77614e;color:#77614e; margin:10px; height:50px;}
#sub_contents .webgene-item.categorylist a:hover{background:#77614e;border-color:#77614e;color:#fff;}
#sub_contents .cateList .c3035{padding:0.5em;} 
#sub_contents .webgene-blog .news__cate{margin-right: 15px;display:inline-block;padding:2px 20px;font-size:15px;border-radius:0px;margin-bottom:0;}

/* detail_news
----------------------------------- */
#sub_contents .new_ttl {text-align: center;font-size:20px;font-weight:500;position: relative;}
#sub_contents .new_ttl span{text-align: center;font-size:21px;font-weight:normal;line-height: 1.8em;margin-bottom: 20px;}
#sub_contents .news_detail .news_img {text-align: center;margin: 0 auto;width: 80%;}
#sub_contents .news_detail .news_img img { width: auto; text-align: center; margin: 0 auto 30px; object-fit: cover; padding: 20px; background: #fff; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15), inset 0 0 0 1px rgba(0, 0, 0, 0.05), inset 0 0 20px rgba(0, 0, 0, 0.03); border: 1px solid #e3d0af; }
#sub_contents .news_detail .news_date{text-align: center; display: block;margin: 0 auto 20px;font-size: 17px;font-family: "Cormorant", serif;}
#sub_contents .news_text{border: solid 1px #d5c4a8; padding:15px 15px;line-height: 2em;}
#sub_contents .new_ttl span{text-align: center;font-size:28px;font-weight:normal;}
}


@media screen and (min-width: 1025px) {
/* main_visual
----------------------------------- */
#sub_visual {height:350px;position:relative;z-index:0;margin-top:0px;overflow: hidden;text-align: center;padding-top: 110px;padding-left: 200px;}
#sub_visual .h1_container{max-width:1200px;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container .span {font-weight: 500;font-size:42px; line-height: 180%;text-align: center;position: relative;}
#sub_visual .h1_container .small{font-size:28px;line-height:100%;font-weight: normal;text-align: center;margin-bottom: 0px;font-family: "Cormorant", serif; }

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 16px; position: relative;padding-left: 200px;}
}