/* main_visual
----------------------------------- */
#sub_visual {padding-top:100px; height:250px;position:relative;z-index:0;overflow: hidden;}
#sub_visual .img_01 { height:auto; position: absolute; top: -5%; width:40%;z-index:-1;left: -10%;}
#sub_visual .img_01 img{width:100%;height:100%;object-fit: cover;position:relative;}
#sub_visual .img_02 { height:auto; position: absolute; bottom: -10%; width:40%;z-index:-1;right: -10%;}
#sub_visual .img_02 img{width:100%;height:100%;object-fit: cover;position:relative;}
#sub_visual .h1_container{max-width:94%;width:94%;margin:0 auto;padding-left:0;position:relative;text-align: left;color:#60611d;}
#sub_visual .h1_container h1{font-size:32px; line-height: 100%;letter-spacing: 0.1em;font-weight: 600;text-transform: capitalize;margin-bottom: 10px;}
#sub_visual .h1_container .ttl{font-size:15px;line-height:100%;font-weight: normal;}

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

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 14px; position: relative;padding:0px 0px 50px 0;z-index:0;}
#sub_contents section{max-width: 94%; margin: 50px auto 50px;position: relative;}
#sub_contents .section{max-width: 94%; margin: 100px auto 80px;position: relative;}
#sub_contents .section.mt0{max-width: 94%; margin: 0px auto 80px;position: relative;}
#sub_contents .section_line {border:1px solid #e0e0e0;margin:100px 0;}
#sub_contents .sub_ttl {text-align:center;margin-top:50px;scroll-margin-top: 80px;}
#sub_contents .sub_ttl h2{ text-align: center;font-size:20px; margin-bottom:10px; position: relative; line-height: 100%; padding-top: 25px;letter-spacing: 0.08em;font-weight: 600; scroll-margin-top: 150px;text-transform: capitalize;color: #596232;}
#sub_contents .sub_ttl h2:before{position: absolute;content: "";background: url(../images/sub_h2_icon02.png) no-repeat center center / cover ;width:30px;height:30px;top: -2%;left: 50%;transform: translate(-50%, -50%);-webkit-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);z-index: 1;}
#sub_contents .sub_ttl .span{font-size:13px; display: block;margin-bottom:0px;color: #596232;}
#sub_contents .txt_cen{ text-align: center; font-size:17px; line-height: 200%;}
#sub_contents .txt_cen em{ display:inline;font-style:normal;}
#sub_contents .txt_st{ text-align: center; line-height: 200%;}
#sub_contents .tcen{text-align:center;}
#sub_contents .f13 {font-size:14px;}
#sub_contents .mb10{margin-bottom: 10px;}
#sub_contents .mb20{margin-bottom: 20px;}
#sub_contents .mb30{margin-bottom: 30px;}
#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 .sub_bg{background:#e0e7bf ;padding: 20px 0;z-index:0;}
#sub_contents .link_area a{padding:5px;}
#sub_contents .sp_br{display:block;}

/* btn
----------------------------------- */
#sub_contents .anker__items{column-gap: 10px;row-gap: 10px;}
#sub_contents .anker__item{width: 100%;position: relative;display: block;}
#sub_contents .anker__item.w20{width: 48%;position: relative;display: block;}
#sub_contents .anker__item.w100{width: 100%;}
#sub_contents .anker__item a:hover{opacity:.8;}
#sub_contents .anker__item a {display: block;text-align: center;color: #596232;border: solid 1px #596232;text-transform: capitalize;padding: 1em;border-radius: 9999px;}
#sub_contents .anker__item a:hover {background-color: #596232;color:#fff;}

/* tab
----------------------------------- */
#sub_contents .tab_area {gap:30px;}
#sub_contents .tab {position: relative;width:100%; padding: 20px 0;font-size: 18px;text-align: center;cursor: pointer;transition: all ease 0.3s;background-color: #e3d124;border-radius: 9999px;}
#sub_contents .tab.w40 {position: relative;width:40%; padding: 20px 0;font-size: 18px;text-align: center;cursor: pointer;transition: all ease 0.3s;}
#sub_contents .tab p.ttl {font-size: 20px;display: inline;}
#sub_contents .tab.is-active::after {position: absolute;bottom: -10px;left: 50%;transform: translateX(-50%);width: 20px;height: 10px;background-color: #e3d124;content: '';clip-path: polygon(0 0, 100% 0, 50% 100%);}
#sub_contents .panel {display: none;}
#sub_contents .panel.is-active {display: block;background-size: cover;padding: 0px 0 0;}

/* concept
-----------------------------*/
#sub_contents .comm_textBox {position: relative;}
#sub_contents .comm_textBox .img{width: 100%;margin-bottom: 10px;position:relative;}
#sub_contents .comm_textBox .img img{border-radius: 20px;object-fit: cover;}
#sub_contents .comm_textBox .textarea {width: 100%;margin-bottom:0px;}
#sub_contents .comm_textBox .textarea p.span {border-bottom: solid 1px #596232;margin-bottom: 10px;font-weight: normal;font-size: 17px;padding-bottom:5px;color: #596232;}
#sub_contents .comm_textBox .textarea p.num {font-size: 13px;margin-bottom: 5px;text-transform: capitalize;font-weight: 600;color: #7b6106;}
#sub_contents .comm_textBox .textarea p.catch {font-size: 14px;margin-bottom: 10px;font-weight: 600;}
#sub_contents .comm_textBox .textarea p.ex {line-height:2;}
#sub_contents .comm_textBox .textarea p.staff {color: #596232;margin-bottom: 0.5em;font-weight: bold;}

#sub_contents .sub_ill_box{width:100%;position: relative;}
#sub_contents img.sub_illust_left {width:40%;padding:0px;max-width:1140px;position: absolute;left: -30%;top: 5%;z-index: -1;}
#sub_contents img.sub_illust_right {width:40%;padding:0px;max-width:1140px;position: absolute;right: -30%;top: 5%;z-index: -1;}

#sub_contents .ranking_check_area {width: 100%;position: relative;}
#sub_contents .ranking_check_area .catch {font-size: 17px;margin-bottom: 10px;font-weight: bold;text-align: center;}
#sub_contents .ranking_check_area .check { padding-left: 30px;display: block;position: relative;margin-bottom: 20px;font-size: 14px;margin-right: 10px;padding-bottom: 5px;background-color: #60611d;border-radius: 10px;color: #fff;padding: 0.5em 2em 0.5em 3em;}
#sub_contents .ranking_check_area .check::before {content: "";position: absolute;left: 10px;top: 50%;transform: translateY(-50%);display: inline-block;width: 20px;height: 20px;background: url(../images/sub_check.png) no-repeat;background-size: contain;}
#sub_contents .ranking_check_area .check p.span { font-size: 15px;display: block;}

/* about
-----------------------------*/
#sub_contents .sub_voices {position: relative;width: 100%;}
#sub_contents .sub_voice {width: 100%;border-radius: 20px; background-color: #fff;border: solid 2px #596232;padding: 20px;margin-bottom: 10px;}
#sub_contents .sub_voice img {width: 200px;object-fit: contain;margin: 0 auto 10px;}
#sub_contents .sub_voice .txtarea {width: 100%;}
#sub_contents .sub_voice .txtarea p.ttl {font-weight: 18px;font-weight: 600;margin-bottom: 16px;}
#sub_contents .sub_voice .txtarea p.voice {font-weight: 14px;background-color: #e0e7bf;border-radius: 20px; padding: 1em;}

#sub_contents .faq__item:not(:last-of-type) {margin-bottom: 20px;}
#sub_contents .faq__item .dt {padding: 15px 20px 15px 50px;background: #e0e7bf;position: relative;color:#596232;border-radius: 10px 10px 0 0;font-weight: bold;}
#sub_contents .faq__item .dd {padding: 15px 20px 15px 50px;position: relative;border: 1px solid #dce9c3;background:#fff;border-radius: 0 0 10px 10px;}
#sub_contents .faq__item .dt::before,
#sub_contents .faq__item .dd::before {position: absolute;left: 20px;top: 8px;}
#sub_contents .faq__item .dt::before {content: "Q.";font-size: 20px;color:#596232;font-family: "Montserrat", sans-serif;}
#sub_contents .faq__item .dd::before {content: "A.";font-size: 20px;color: #596232;font-family: "Montserrat", sans-serif;font-weight: bold;}

/* data
-----------------------------*/
#sub_contents .sub_data_box {width: 100%;position: relative;}
#sub_contents .sub_data {margin-bottom: 20px;width: 100%;background-color: #fff;border: 2px solid #dce9c3;border-radius: 10px;padding: 0 0 10px;text-align: center;}
#sub_contents .sub_data p.ttl {width: 100%;background-color: #dce9c3;border: 2px solid #dce9c3;border-radius: 10px 10px 0px 0px;color: #596232;font-size: 16px;margin-bottom: 20px;padding: 0.5em 1em;}
#sub_contents .sub_data p {padding: 0 10px;}
#sub_contents .sub_data p.data {color: #596232;border-radius: 10px;font-size: 20px;margin-bottom: 20px;padding: 0 10px;font-weight: bold;}

#sub_contents .r_flow {width: 100%;margin-bottom: 100px;padding-left: 0px;position: relative;}
#sub_contents .r_flow .li { position: relative;padding: 20px 0px;}
#sub_contents .r_flow .li .icon {font-size: 16px;color: #fff;background: #596232;padding: 5px 1em 5px;display: block;position: relative;top: 5px;margin-bottom: 10px;left: 0px;z-index: 100;border-radius:0;text-align:center;text-transform: capitalize;border-radius: 10px;}
#sub_contents .r_flow .li .dl {padding-left: 0px;position: relative;}
#sub_contents .r_flow .li .dl .dt {font-size: 15px;margin-bottom: 20px;}
#sub_contents .r_flow .li p.ex {margin-top: 0px;font-size: 14px;padding: 1.5em;border: solid 1px #e0e7bf;}

/* shop
-----------------------------*/
#sub_contents .con_img img{width: 100%;margin-bottom: 10px;}
#sub_contents .sub_map{width:100%;}
#sub_contents .sub_shop {width: 100%;background-color: #e0e7bf;padding: 20px;border-radius: 20px;}
#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: left;align-items: center;vertical-align: middle;border-bottom: 0px solid #fff;}
#sub_contents .tbl_info .th p.ttl {font-weight: normal;line-height: 2em;}
#sub_contents .tbl_info .td {width: 100%;text-align: left;padding: 1em;border-bottom: 1px solid #fff;}
#sub_contents .tbl_info.colgreen .td {border-bottom: 1px solid #596232;}
#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: #596232;border-bottom: solid 1px #596232;}

#sub_contents .sub_ttl_02{ text-align: left;font-size:18px; position: relative; line-height: 100%; padding-top: 25px;letter-spacing: 0.08em;scroll-margin-top: 100px;text-transform: capitalize;}
#sub_contents .sub_ttl_02:before{position: absolute;content: "";background: url(../images/sub_h2_icon.png) no-repeat center center / cover ;width:50px;height:50px;top: 20%;left: 0;transform: translate(-50%, 0);-webkit-transform: translate(0, -50%);-ms-transform: translate(-50%, -50%);z-index: 1;}

@media screen and (min-width: 767px) {
/* main_visual
----------------------------------- */
#sub_visual {padding-top:100px; height:350px;position:relative;z-index:0;overflow: hidden;}
#sub_visual .img_01 { height:auto; position: absolute; top: -25%; width:40%;z-index:-1;left: -10%;}
#sub_visual .img_01 img{width:100%;height:100%;object-fit: cover;position:relative;}
#sub_visual .img_02 { height:auto; position: absolute; bottom: -30%; width:40%;z-index:-1;right: -10%;}
#sub_visual .img_02 img{width:100%;height:100%;object-fit: cover;position:relative;}
#sub_visual .h1_container{max-width:1140px;width:94%;margin:0 auto;padding-left:0;position:relative;}
#sub_visual .h1_container h1{font-size:50px; line-height: 100%;letter-spacing: 0.2em;text-transform: capitalize;margin-bottom: 10px;}
#sub_visual .h1_container .ttl{font-size:20px;line-height:100%;}

/* bread_crumb_list
----------------------------------- */
#sub_contents .bread_crumb_list{position:absolute;width:94%; top:-53px;line-height:100%;padding:0 2%;max-width:1140px;}
#sub_contents .bread_crumb{text-align:left;padding:10px 0 0 0;max-width:1140px;margin:0 auto;margin-bottom:30px;}
#sub_contents .bread_crumb div { display:inline;color:#fff;}
#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;color:#fff;font-size:13px;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:13px;padding:0 2%;}

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 15px; position: relative;padding:0px 0px 50px 0;z-index:0;}
#sub_contents section{max-width: 94%; margin: 100px auto 80px;position: relative;}
#sub_contents .section{max-width: 94%; margin: 100px auto 80px;position: relative;}
#sub_contents .section.mt0{max-width: 94%; margin: 0px auto 80px;position: relative;}
#sub_contents .section_line {border:1px solid #e0e0e0;margin:100px 0;}
#sub_contents .sub_ttl {text-align:center;margin-top:50px;}
#sub_contents .sub_ttl h2{ text-align: center;font-size:20px; margin-bottom:10px; position: relative; line-height: 100%; padding-top: 25px;letter-spacing: 0.08em; scroll-margin-top: 150px;text-transform: capitalize;}
#sub_contents .sub_ttl h2:before{position: absolute;content: "";background: url(../images/sub_h2_icon02.png) no-repeat center center / cover ;width:30px;height:30px;top: -2%;left: 50%;transform: translate(-50%, -50%);-webkit-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);z-index: 1;}
#sub_contents .sub_ttl .span{font-size:13px; display: block;margin-bottom:0px;}
#sub_contents .txt_cen{ text-align: center; font-size:19px; line-height: 200%;}
#sub_contents .txt_cen em{ display:inline;font-style:normal;}
#sub_contents .txt_st{ text-align: center; line-height: 200%;}
#sub_contents .tcen{text-align:center;}
#sub_contents .mb10{margin-bottom: 10px;}
#sub_contents .mb20{margin-bottom: 20px;}
#sub_contents .mb30{margin-bottom: 30px;}
#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 .sub_bg{padding: 30px 0;z-index:0;}
#sub_contents .link_area a{padding:5px;}
#sub_contents .sp_br{display:inline-block;}

/* tab
----------------------------------- */
#sub_contents .tab_area {gap:30px;}
#sub_contents .tab {position: relative;width:30%; padding: 20px 0;font-size: 18px;text-align: center;cursor: pointer;transition: all ease 0.3s;}
#sub_contents .tab.w40 {position: relative;width:40%; padding: 20px 0;font-size: 18px;text-align: center;cursor: pointer;transition: all ease 0.3s;}
#sub_contents .tab p.ttl {font-size: 20px;display: inline;}
#sub_contents .tab.is-active::after {position: absolute;bottom: -10px;left: 50%;transform: translateX(-50%);width: 20px;height: 10px;content: '';clip-path: polygon(0 0, 100% 0, 50% 100%);}
#sub_contents .panel {display: none;}
#sub_contents .panel.is-active {display: block;background-size: cover;padding: 0px 0 0;}

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

/* concept
-----------------------------*/
#sub_contents .comm_textBox {position: relative;}
#sub_contents .comm_textBox .img{width: 100%;margin-bottom: 10px;position:relative;}
#sub_contents .comm_textBox .textarea {width: 100%;margin-bottom:0px;}
#sub_contents .comm_textBox .textarea p.span {margin-bottom: 10px;font-size: 24px;padding-bottom:5px;}
#sub_contents .comm_textBox .textarea p.num {font-size: 18px;margin-bottom: 5px;}
#sub_contents .comm_textBox .textarea p.catch {font-size: 18px;margin-bottom: 15px;margin-top: 24px;}
#sub_contents .comm_textBox .textarea p.ex {line-height:2;}

#sub_contents .sub_ill_box{width:100%;position: relative;}
#sub_contents img.sub_illust_left {width:20%;padding:0px;max-width:1140px;position: absolute;left: -10%;top: 5%;z-index: -1;}
#sub_contents img.sub_illust_right {width:20%;padding:0px;max-width:1140px;position: absolute;right: -10%;top: 65%;z-index: -1;}

#sub_contents .ranking_check_area {width: 100%;position: relative;text-align: center;align-items: center;}
#sub_contents .ranking_check_area .check { padding-left: 30px;display: block;position: relative;margin-bottom: 20px;font-size: 17px;margin-right: 10px;padding: 0.5em 2em 0.5em 3em;margin: 0 auto 10px;width: fit-content;}
#sub_contents .ranking_check_area .check::before {content: "";position: absolute;left: 1em;top: 50%;transform: translateY(-50%);display: inline-block;width: 20px;height: 20px;background: url(../images/sub_check.png) no-repeat;background-size: contain;}
#sub_contents .ranking_check_area .check p.span { font-size: 17px;display: inline;}

/* about
-----------------------------*/
#sub_contents .sub_voices {position: relative;width: 100%;}
#sub_contents .sub_voice {width: 48%;border-radius: 20px; background-color: #fff;border: solid 2px #0b961b;padding: 30px;}
#sub_contents .sub_voice img {width: 40%;object-fit: cover;}
#sub_contents .sub_voice .txtarea {width: 55%;}
#sub_contents .sub_voice .txtarea p.ttl {font-weight: 18px;font-weight: 600;margin-bottom: 30px;}
#sub_contents .sub_voice .txtarea p.voice {font-weight: 16px;background-color: #e0e7bf;border-radius: 20px; padding: 1em;}

/* data
-----------------------------*/
#sub_contents .sub_data_box {width: 100%;position: relative;}
#sub_contents .sub_data {margin-bottom: 20px;width: 100%;background-color: #fff;border: 2px solid #dce9c3;border-radius: 10px;padding: 0 0 30px;text-align: center;}
#sub_contents .sub_data p.ttl {width: 100%;background-color: #dce9c3;border: 2px solid #dce9c3;border-radius: 10px 10px 0px 0px;color: #596232;font-size: 22px;margin-bottom: 20px;padding: 0.5em 1em;}
#sub_contents .sub_data p {padding: 0 30px;}
#sub_contents .sub_data p.data {color: #596232;border-radius: 10px;font-size: 26px;margin-bottom: 20px;padding: 0 30px;font-weight: bold;}

#sub_contents .r_flow { width: 100%;padding-left: 120px;position: relative}
#sub_contents .r_flow::before {content: "";width: 15px;height: 100%;background: #e0e7bf;margin-left: -8px;display: block;position: absolute;top: 0;left: 320px;}
#sub_contents .r_flow .li {position: relative;padding: 30px 0px;}
#sub_contents .r_flow .li .icon {font-size: 18px;color: #fff;background:#596232;padding: 0px 65px 0px;display: block;position: absolute;top: 30px;margin-bottom: 0px;left: -110px;z-index: 100;border-radius:0;text-align:center;}
#sub_contents .r_flow .li .icon::after {width: 50%;content: "";border-style: solid;border-width: 5px 0 5px 10px;border-color: transparent transparent transparent #596232;position: absolute;top: 50%;left: 100%;-webkit-transform: translateY(-50%);transform: translateY(-50%);}
#sub_contents .r_flow .li .dl {padding-left: 240px;position: relative;}
#sub_contents .r_flow .li .dl::before,
#sub_contents .r_flow .li .dl::after {content: "";display: block;position: absolute;top: 16px;}
#sub_contents .r_flow .li .dl::before {width: 7px;height: 7px;margin-top: -3px;background: #596232;border-radius: 50%;left: 195px;}
#sub_contents .r_flow .li .dl::after {width: 30%;border-bottom: 1px solid #596232;position: absolute;left: 0px;}
#sub_contents .r_flow .li .dl .dt {font-size: 18px;margin-bottom: 1vh;}
#sub_contents .r_flow .li p {margin-top: 0px;}

/* shop
-----------------------------*/
#sub_contents .brsp {display: inline-block;}
#sub_contents .con_img img{width: 49%;}
#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 .sub_shop {width: 100%;padding: 30px;border-radius: 20px;}
#sub_contents .tbl_info {width: 100%;margin-inline: auto;position: relative;}
#sub_contents .tbl_info.white {padding: 30px;}
#sub_contents .tbl_info .tr {display: flex;align-items: center;position: relative;align-items: stretch;}
#sub_contents .tbl_info .th {width: 30%;padding: 20px;text-align: center;align-items: center;vertical-align: middle;border-bottom:1px solid #fff;}
#sub_contents .tbl_info .th p.ttl {font-weight: normal;line-height: 2em;}
#sub_contents .tbl_info .td {width: 70%;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 .sub_ttl_02{ text-align: left;font-size:20px; margin-bottom:10px; position: relative; line-height: 100%; padding-top: 25px;letter-spacing: 0.08em;scroll-margin-top: 100px;text-transform: capitalize;}
#sub_contents .sub_ttl_02:before{position: absolute;content: "";background: url(../images/sub_h2_icon.png) no-repeat center center / cover ;width:50px;height:50px;top: -2%;left: 0;transform: translate(-50%, 0);-webkit-transform: translate(0, -50%);-ms-transform: translate(-50%, -50%);z-index: 1;}
}

@media screen and (min-width: 1024px) {
/* main_visual
----------------------------------- */
#sub_visual {padding-top:270px; height:450px;position:relative;z-index:0;overflow: hidden;text-align:center;}
#sub_visual .img_01 { height:auto; position: absolute; top: -35%; width:25%;z-index:-1;left: -10%;}
#sub_visual .img_01 img{width:100%;height:100%;object-fit: cover;position:relative;}
#sub_visual .img_02 { height:auto; position: absolute; bottom: -70%; width:25%;z-index:-1;right: -10%;}
#sub_visual .img_02 img{width:100%;height:100%;object-fit: cover;position:relative;}
#sub_visual .h1_container{max-width:1140px;width:94%;margin:0 auto;padding-left:0;position:relative;text-align:center;}
#sub_visual .h1_container h1{font-size:60px; line-height: 100%;letter-spacing: 0.2em;text-transform: capitalize;margin-bottom: 10px;}
#sub_visual .h1_container .ttl{font-size:24px;line-height:100%;}

/* bread_crumb_list
----------------------------------- */
#sub_contents .bread_crumb_list{position:absolute;width:94%; top:-53px;line-height:100%;padding:0 2%;max-width:1140px;}
#sub_contents .bread_crumb{text-align:left;padding:10px 0 0 0;max-width:1140px;margin:0 auto;margin-bottom:30px;}
#sub_contents .bread_crumb div { display:inline;color:#fff;}
#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;color:#fff;font-size:13px;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:13px;padding:0 2%;}

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 16px; position: relative;padding:0px 0px 50px 0;z-index:0;}
#sub_contents.menu .section{margin: 50px auto 0px;}
#sub_contents.menu .section .tbl_menu.mb100{margin-bottom:0px;}
#sub_contents.menu .sub_bg{padding: 10px 0px 10px;}    
#sub_contents .section{max-width: 1140px; margin: 70px auto 80px;position: relative;padding-bottom: 100px;width:94%;}
#sub_contents .sub_ttl {text-align:center;margin-top:50px;scroll-margin-top: 210px;}
#sub_contents .sub_ttl h2{ text-align: center;font-size:30px; margin-bottom:10px; position: relative; line-height: 100%; padding-top: 25px;letter-spacing: 0.08em;text-transform: capitalize;}
#sub_contents .sub_ttl h2:before{position: absolute;content: "";background: url(../images/sub_h2_icon02.png) no-repeat center center / cover ;width:50px;height:50px;top: -2%;left: 50%;transform: translate(-50%, -50%);-webkit-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);z-index: 1;}
#sub_contents .sub_ttl .span{font-size:15px; display: block;margin-bottom:0px;}
#sub_contents .txt_cen{ text-align: center; font-size:19px; line-height: 200%;font-weight: 600;}
#sub_contents .txt_cen.large{font-size: 26px;}
#sub_contents .txt_st{ text-align: center; line-height: 180%;}
#sub_contents .tcen{text-align:center;}
#sub_contents .mb10{margin-bottom: 10px;}
#sub_contents .mb20{margin-bottom: 20px;}
#sub_contents .mb30{margin-bottom: 30px;}
#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 .sub_bg{padding: 10px 0 40px;z-index:0;}
#sub_contents .link_area a{padding:5px;}

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

/* tab
----------------------------------- */
#sub_contents .tab_area {gap:30px;}
#sub_contents .tab {position: relative;width:24%; padding: 20px 0;font-size: 18px;text-align: center;cursor: pointer;transition: all ease 0.3s;}
#sub_contents .tab.w40 {position: relative;width:40%; padding: 20px 0;font-size: 18px;text-align: center;cursor: pointer;transition: all ease 0.3s;}
#sub_contents .tab p.ttl {font-size: 20px;display: inline;}
#sub_contents .tab.is-active::after {position: absolute;bottom: -10px;left: 50%;transform: translateX(-50%);width: 20px;height: 10px;content: '';clip-path: polygon(0 0, 100% 0, 50% 100%);}
#sub_contents .panel {display: none;}
#sub_contents .panel.is-active {display: block;background-size: cover;padding: 0px 0 0;}

/* about
-----------------------------*/
#sub_contents .sub_voices {position: relative;width: 100%;}
#sub_contents .sub_voice {width: 48%;border-radius: 20px; background-color: #fff;border: solid 2px #0b961b;padding: 30px;}
#sub_contents .sub_voice img {width: 40%;object-fit: contain;}
#sub_contents .sub_voice .txtarea {width: 55%;}
#sub_contents .sub_voice .txtarea p.ttl {font-weight: 18px;font-weight: 600;margin-bottom: 30px;}
#sub_contents .sub_voice .txtarea p.voice {font-weight: 16px;background-color: #e0e7bf;border-radius: 20px; padding: 1em;}

/* data
-----------------------------*/
#sub_contents .sub_data_box {width: 100%;position: relative;}
#sub_contents .sub_data {margin-bottom: 20px;width: 48%;background-color: #fff;border: 2px solid #dce9c3;border-radius: 10px;padding: 0 0 30px;text-align: center;}
#sub_contents .sub_data p.ttl {width: 100%;background-color: #dce9c3;border: 2px solid #dce9c3;border-radius: 10px 10px 0px 0px;color: #596232;font-size: 20px;margin-bottom: 20px;padding: 0.5em 1em;}
#sub_contents .sub_data p {padding: 0 20px;}
#sub_contents .sub_data p.data {color: #596232;border-radius: 10px;font-size: 22px;margin-bottom: 20px;padding: 0 30px;font-weight: bold;}

#sub_contents .r_flow {width: 100%;padding-left: 120px;position: relative;}
#sub_contents .r_flow::before {content: "";width: 15px;height: 100%;background: #dce9c3;margin-left: -8px;display: block;position: absolute;top: 0;left: 320px;}
#sub_contents .r_flow .li {position: relative;padding: 30px 0px;}
#sub_contents .r_flow .li .icon {color: #fff;background:#596232;padding: 0px 65px 0px;display: block;position: absolute;top: 20px;margin-bottom: 0px;left: -110px;z-index: 100;border-radius:0;text-align:center;}
#sub_contents .r_flow .li .icon::after {content: "";border-style: solid;border-width: 5px 0 5px 10px;border-color: transparent transparent transparent #596232;position: absolute;top: 50%;left: 100%;-webkit-transform: translateY(-50%);transform: translateY(-50%);}
#sub_contents .r_flow .li .icon p{font-size: 18px;}
#sub_contents .r_flow .li .dl {padding-left: 240px;position: relative;}
#sub_contents .r_flow .li .dl::before,
#sub_contents .r_flow .li .dl::after {content: "";display: block;position: absolute;top: 16px;}
#sub_contents .r_flow .li .dl::before {width: 7px;height: 7px;margin-top: -3px;background: #596232;border-radius: 50%;left: 195px;}
#sub_contents .r_flow .li .dl::after {width: 22%;border-bottom: 1px solid #596232;position: absolute;left: 0px;}
#sub_contents .r_flow .li .dl .dt { font-size: 21px;margin-bottom: 1vh;}
#sub_contents .r_flow .li p {margin-top: 0px;}

/* concept
-----------------------------*/
#sub_contents .comm_textBox {position: relative;}
#sub_contents .comm_textBox .img{width: 45%;margin-bottom: 10px;position:relative;}
#sub_contents .comm_textBox .textarea {width: 50%;margin-bottom:0px;}
#sub_contents .comm_textBox .textarea p.span {margin-bottom: 10px;font-size: 26px;padding-bottom:5px;}
#sub_contents .comm_textBox .textarea p.num {font-size: 18px;margin-bottom: 5px;}
#sub_contents .comm_textBox .textarea p.catch {font-size: 18px;margin-bottom: 18px;}
#sub_contents .comm_textBox .textarea p.ex {line-height:2;}

#sub_contents .sub_ill_box{width:100%;position: relative;}
#sub_contents img.sub_illust_left {width:15%;padding:0px;max-width:1140px;position: absolute;left: -5%;top: 5%;}
#sub_contents img.sub_illust_right {width:15%;padding:0px;max-width:1140px;position: absolute;right: -5%;top: 5%;}

#sub_contents .ranking_check_area {width: 100%;position: relative;}
#sub_contents .ranking_check_area .check { padding-left: 30px;display: block;position: relative;margin-bottom: 20px;font-size: 20px;padding: 0.5em 2em 0.5em 3em;}
#sub_contents .ranking_check_area .check::before {content: "";position: absolute;left: 1em;top: 50%;transform: translateY(-50%);display: inline-block;width: 20px;height: 20px;background: url(../images/sub_check.png) no-repeat;background-size: contain;}
#sub_contents .ranking_check_area .check p.span { font-size: 20px;display: inline;}

/* shop
-----------------------------*/
#sub_contents .con_img img{width: 49%;}
#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 .sub_shop {padding: 40px;border-radius: 20px;}
#sub_contents .tbl_info {width: 100%;margin-inline: auto;position: relative;}
#sub_contents .tbl_info.white {padding: 30px;}
#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: center;align-items: center;vertical-align: middle;}
#sub_contents .tbl_info .th p.ttl {font-weight: normal;line-height: 2em;}
#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_info.sub_price .th {width: 80%;}
#sub_contents .tbl_info.sub_price .td {width: 20%;}
#sub_contents .sub_ttl_02{ text-align: left;font-size:22px;position: relative; line-height: 100%; padding-top: 25px;letter-spacing: 0.08em;scroll-margin-top: 130px;text-transform: capitalize;font-weight: 800;}
#sub_contents .sub_ttl_02:before{position: absolute;content: "";background: url(../images/sub_h2_icon.png) no-repeat center center / cover ;width:50px;height:50px;top: -2%;left: 0;transform: translate(-50%, 0);-webkit-transform: translate(0, -50%);-ms-transform: translate(-50%, -50%);z-index: 1;}
}

@media screen and (min-width: 1025px) {
  
#sub_contents .sub_data {margin-bottom: 20px;width: 48%;background-color: #fff;border: 2px solid #dce9c3;border-radius: 10px;padding: 0 0 30px;text-align: center;}
  
/* data
----------------------------------- */
#sub_contents .r_flow {width: 100%;padding-left: 120px;position: relative;}
#sub_contents .r_flow::before { content: "";width: 15px; height: 100%;margin-left: -8px; display: block; position: absolute; top: 0; left: 320px;}
#sub_contents .r_flow .li {position: relative;padding: 30px 0px;}
#sub_contents .r_flow .li .icon {padding: 0px 65px 0px;display: flex;align-items: center; justify-content: center;position: absolute;top: 27px; margin-bottom: 0px; left: -110px; z-index: 100;border-radius:0;text-align:center;height: 40px;}
#sub_contents .r_flow .li .icon::after {content: "";border-style: solid;border-width: 5px 0 5px 10px;position: absolute;top: 50%;left: 100%; -webkit-transform: translateY(-50%); transform: translateY(-50%);}
#sub_contents .r_flow .li .dl {padding-left: 240px;position: relative;}
#sub_contents .r_flow .li .dl::before,
#sub_contents .r_flow .li .dl::after {content: "";display: block;position: absolute;top: 16px;}
#sub_contents .r_flow .li .dl::before {width: 7px;height: 7px;margin-top: -3px;border-radius: 50%;left: 195px;}
#sub_contents .r_flow .li .dl::after {width: 18%;position: absolute;left: 0px;}
#sub_contents .r_flow .li .dl .dt {font-size: 21px;margin-bottom: 1vh;}
}