/* main_visual
----------------------------------- */
#sub_visual {height:250px;position:relative;z-index:0;margin-top:0px;overflow: hidden;text-align: center;padding-top: 120px;background-color: #111;}
#sub_visual .img {position: absolute;top: 0;left: 0;width: 100%;height: 100%;transform: none;z-index: -1;text-align: center;}
#sub_visual .img img{width: 100%;height: 100%;object-fit: cover;object-position: center center;display: block;margin: 0 auto;opacity: .6;}
#sub_visual .h1_container{max-width:94%;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container .ttl{font-size:15px;line-height:100%;font-weight: normal;letter-spacing: 0.1em;text-align: center;margin-bottom: 10px;color: #ad9250;text-transform: uppercase;}
#sub_visual .h1_container h1{font-size:26px; line-height: 130%;font-weight: normal;letter-spacing: 4px;color: #fff;text-align: center;position: relative;text-shadow: 2px 2px 10px #000;}

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 14px; position: relative;padding:5px 0px;background-attachment: fixed;background:url(../images/sub_bg03.png) repeat top; }
#sub_contents p{font-size: 13px;line-height: 1.8em;}
#sub_contents p.colwhite{color: #fff !important;}
#sub_contents.col_black p {color: #fff;}
#sub_contents .section{max-width: 94%; margin: 40px auto 50px;position: relative;width: 94%;}
#sub_contents .sub_ttl{scroll-margin-top: 80px;}
#sub_contents h2{ text-align: center;font-size:20px;  position: relative; line-height: 180%; padding:15px auto 15px;margin: 0px auto 40px; font-weight: normal;font-family: "Noto Serif JP", serif;border-top: solid 1px #111;border-bottom: solid 1px #111;width: 90%;}
#sub_contents .sub_ttl.colwhite h2{ border-top: solid 1px #fff;border-bottom: solid 1px #fff;width: 90%;color: #fff;}
#sub_contents.col_black h2{ border-top: solid 1px #fff;border-bottom: solid 1px #fff;color: #fff;}
#sub_contents .section.colwhite h2{border-top: solid 1px #111;border-bottom: solid 1px #111;color: #111;}
#sub_contents h3{ text-align: center;font-size:18px; margin-bottom:15px; position: relative; font-weight: bold;margin-top: 40px;}
#sub_contents .mb10{margin-bottom: 10px;}
#sub_contents .mb20{margin-bottom: 15px;}
#sub_contents .mb30{margin-bottom: 20px;}
#sub_contents .mb50{margin-bottom: 30px;}
#sub_contents .mb80{margin-bottom: 40px;}
#sub_contents .mb100{margin-bottom: 50px;}
#sub_contents .mb150{margin-bottom: 100px;}
#sub_contents .mt80{margin-top: 50px;} 
#sub_contents .mt30{margin-top: 20px;}
#sub_contents .txt_cen{ text-align: left;  line-height: 200%;font-size: 15px;font-weight: bold;}
#sub_contents .txt_cen a{ color: #fff;}
#sub_contents .txt_cen a:hover{ color: #920000;}
#sub_contents .txt_st{ text-align: left; line-height: 200%;}
#sub_contents.col_black .txt_st a{color: #920000;}
#sub_contents .sub_bg{background-color: #000;padding: 30px 0px;}
#sub_contents .sub_bg02{background:url(../images/sub_bg.png) repeat top;width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;background-attachment: fixed;}
#sub_contents .sub_bg03{background:url(../images/sub_bg02.png) repeat top;width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;background-attachment: fixed;}
#sub_contents .sub_bg04{background:url(../images/sub_bg04.png) repeat top;width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;background-attachment: fixed;}
#sub_contents .sub_bg03 p{color: #fff !important;}
#sub_contents .sub_bg02:before,#sub_contents .sub_bg05:before {content: '';position: absolute;top: -15px;left: 50%;transform: translateX(-50%);width: 100%;  height: 30px;background-size: contain;z-index: 1;}

/* 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:#111;}
#sub_contents .bread_crumb div:after {content : '＞';padding-left:10px; font-family: inherit; font-size:12px;}
#sub_contents .bread_crumb div:last-child:after { content : '';}
#sub_contents .bread_crumb div a {text-decoration:underline;color:#111;font-size:13px;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:12px;padding:0 2%;}
#sub_contents.col_black .bread_crumb p.bread a{color:#111;}

/* 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.w100{width: 100%;}
#sub_contents .anker__item.w50{width: 100%;}
#sub_contents .anker__item.w30{width: 100%;}
#sub_contents .anker__item.w20{width: 48%;}
#sub_contents .anker__item a {display: block;text-align: center;color:#111;text-transform: capitalize;padding: 5px;border: solid 1px #fff;line-height: 40px;background: #fff;}
#sub_contents .anker__item a:hover {background: #111;color:#fff;opacity:.8;}
#sub_contents .anker__item p {font-size: 13px;line-height: 40px;}

/* concept
-----------------------------*/
#sub_contents .sub_cen_img {width: 100%;text-align: center;}
#sub_contents .sub_cen_img img {object-fit: cover;width: 100px;}
#sub_contents .sub_catch_box {width: 100%;text-align: center;}
#sub_contents .sub_catch {display: block;}
#sub_contents .sub_catch_box p{display: inline-block;font-size: 17px;font-weight: bold;}
#sub_contents .sub_catch_box p.colgold{display: inline-block;background: linear-gradient(to right, #d5b201, #ffeb9f);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}
#sub_contents .sub_black_box {background-color: #111111;padding: 20px;position: relative;}
#sub_contents .box_greeting{padding: 10px 10px 10px;background:url("../images/sub_con_img01.png")repeat center center; background-attachment: fixed;}
#sub_contents .box_greeting .inner{background: #000000cc;padding: 2em 1em 1em; position: relative;text-align: center; margin:0 auto; width:100%; max-width:100%;}
#sub_contents .box_greeting.drm .inner,#sub_contents .box_greeting.kmtk .inner{background: #ffffffdd;}
#sub_contents .box_greeting .inner .txt_box{width: 100%;}
#sub_contents .box_greeting .inner p.span{font-size:13px; font-weight: normal;line-height: 220%;color: #fff;display: block;margin-bottom: 1em;}
#sub_contents .box_greeting .inner p.ttl{font-size:15px; font-weight: normal;line-height: 200%;color: #fff;font-weight: bold;display: block;}
#sub_contents .sub_black_box {width: 100%;background-color: #000000cc;padding: 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{width: 100%;object-fit: cover;}
#sub_contents .comm_textBox .textarea {width: 100%;margin-bottom:0px;}
#sub_contents .comm_textBox .textarea p.ex {line-height:2;}
#sub_contents .comm_textBox .textarea p.ttl {border-bottom: solid 1px #111;margin-bottom: 10px;font-weight: normal;font-size: 16px;padding-bottom:5px;letter-spacing: 0.2em;}
#sub_contents .comm_textBox .textarea p.sub_point {padding: 0.2em 1em;color: #fff;width: fit-content;border: solid 1px #920000;}
#sub_contents .comm_textBox .textarea p.sub_price {background-color: #111;padding: 0.2em 1em;color: #fff;text-align: right;width: fit-content;margin-right: 0;margin-left: auto;z-index: 5;position: relative;}
#sub_contents.col_black .comm_textBox .textarea p.ttl {border-bottom: solid 1px #111;}
#sub_contents .comm_textBox .textarea p.ttl.colwhite {border-bottom: solid 1px #fff;}
#sub_contents .comm_textBox .textarea p.number {font-size: 16px;text-transform: capitalize;font-weight: normal;background: linear-gradient(to right, #d5b201, #ffeb9f);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}
#sub_contents.col_black .comm_textBox .textarea p.number {color: #920000;}
#sub_contents .check_area {width: 100%;padding: 0px;border: none;}
#sub_contents .check_area .sub_check { padding-left: 20px;display: block;position: relative;margin-bottom: 7px;font-size: 14px;margin-right: 10px;font-weight: bold;}
#sub_contents .check_area .sub_check::before {content: "";position: absolute;left: 0;top: 50%;transform: translateY(-50%);display: inline-block;width: 13px;height: 13px;background: url(../images/sub_check.png) no-repeat;background-size: contain;}
#sub_contents img.sub_ill_01  { width: 30%; right: 1%;bottom: -16%;transform: translate(0, -50%);z-index: 0;position: absolute;opacity: .2;}
#sub_contents img.sub_ill_02  { width: 30%; right: 1%;bottom: -16%;transform: translate(0, -50%);z-index: 0;position: absolute;opacity: .2;}

/* menu
-----------------------------*/
#sub_contents .sub_menu_img {width: 100%;row-gap: 10px;}
#sub_contents .sub_menu_img img {width: 49%;object-fit: cover;height: 140px;}
#sub_contents .tbl_menu {width: 100%;margin-inline: auto;display: inline-block;font-size:14px;}
#sub_contents .tbl_menu .tr {display: block;}
#sub_contents .tbl_menu .th {width: 100%;padding: 5px 0;line-height: 1.6;position: relative;}
#sub_contents .tbl_menu .th::before {content: "";display: inline-block;width: 13px;height: 13px;background-image: url(../images/sub_ill02.png);background-size: contain;background-repeat: no-repeat;position: absolute;top: 50%;transform: translateY(-50%);}
#sub_contents .tbl_menu .th .menu_name {font-weight: bold;padding-left: 22px;}
#sub_contents .tbl_menu .th .menu_name.sub_small {font-size: 12px;}
#sub_contents .tbl_menu .th.oshi {padding-bottom: 0px;margin-bottom: -15px;}
#sub_contents .tbl_menu .th.oshi .menu_name{font-size: 10px;background-color: #920000;color: #000;padding: 2px 1em;margin-bottom: 6px;width: fit-content;padding-bottom: 0;}
#sub_contents .tbl_menu .td {width: 100%;text-align: right;line-height: 1.6;padding: 5px 0;}
#sub_contents .tbl_menu .td .menu_price {font-weight: normal;}

/* guide
-----------------------------*/
#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: left;align-items: center;vertical-align: middle;}
#sub_contents .tbl_info .th p.ttl {font-weight: bold;line-height: 2em;}
#sub_contents .tbl_info .td {width: 100%;text-align: left;padding: 1em;}
#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;}

/* faq
----------------------------------- */
#sub_contents .faq__item {padding:10px;border-radius:0px;width:100%;margin:0 auto;background:#ffffffcc;color:#7b0000;}
#sub_contents .faq__item:not(:last-of-type) {margin-bottom: 30px;}
#sub_contents .faq__item .dt {padding: 15px 5px 15px 40px;position: relative;border-bottom:1px solid #7b0000;font-weight:bold;}
#sub_contents .faq__item .dd {padding: 15px 5px 15px 40px;position: relative;color: #111111;}
#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: 20px;font-weight:600;font-family: "Noto Sans JP", sans-serif;}
#sub_contents .faq__item .dd::before {content: "A.";font-size: 20px;font-weight:600;color:#111111;font-family: "Noto Sans JP", sans-serif;}
#sub_contents .sub_bg .faq__item,
#sub_contents .sub_bg .faq__item *{color:#7b0000;}
#sub_contents .sub_bg .faq__item .dd{color:#111 !important;}

@media screen and (min-width: 768px) {
/* main_visual
----------------------------------- */
#sub_visual {height:300px;position:relative;z-index:0;margin-top:0px;overflow: hidden;text-align: center;padding-top: 140px;}
#sub_visual .h1_container{max-width:1140px;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container .ttl{font-size:18px;line-height:100%;font-weight: normal;letter-spacing: 0.1em;text-align: center;margin-bottom: 10px;}
#sub_visual .h1_container h1{font-size:40px; line-height: 150%;font-weight: normal;letter-spacing: 4px;text-align: center;position: relative;}

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 16px; position: relative;padding:5px 0px;background-attachment: fixed; }
#sub_contents p{font-size: 16px;line-height: 1.8em;}
#sub_contents .section{max-width: 1140px; margin: 70px auto 80px;position: relative;width: 94%;}
#sub_contents .scroll_section{width: 100%;margin: 50px auto 50px;position: relative;}
#sub_contents .sub_ttl{scroll-margin-top: 80px;}
#sub_contents h2{ text-align: center;font-size:24px;  position: relative; line-height: 180%; padding:15px auto 15px;margin: 0px auto 50px;font-family: "Zen Old Mincho", serif;border-top: solid 1px #111111;border-bottom: solid 1px #111111;width: 600px;}
#sub_contents h3{ text-align: center;font-size:30px; margin-bottom:15px; position: relative; font-weight: bold; margin-top: 40px;}
#sub_contents .sub_ttl_02_box{ text-align: center; position: relative;width: 100%;}
#sub_contents .sub_ttl_02_box p.sub_ttl_02{ text-align: center;  line-height: 180%;font-size: 18px;z-index: 2;position: relative;}
#sub_contents .sub_ttl_02::before{position: absolute;content: "";background: url(../images/sub_ill_01.png) no-repeat center center / cover ;width:70px;height:70px;bottom: -55px;left: 50%;transform: translate(-50%, -50%);z-index: -1;}
#sub_contents .mb20{margin-bottom: 20px;}
#sub_contents .mb30{margin-bottom: 30px;}
#sub_contents .mb50{margin-bottom: 50px;}
#sub_contents .mb80{margin-bottom: 60px;}
#sub_contents .mb100{margin-bottom: 50px;}
#sub_contents .mb150{margin-bottom: 100px;}
#sub_contents .mt80{margin-top: 80px;}
#sub_contents .mt30{margin-top: 30px;}
#sub_contents .gap-20{gap: 30px;}
#sub_contents .txt_cen{ text-align: center;  line-height: 200%;font-size: 20px;font-weight: bold;}
#sub_contents .txt_st{ text-align: center;}
#sub_contents .sub_bg02{background:url(../images/sub_bg.png) repeat top;width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;background-attachment: fixed;}
#sub_contents .sub_bg03{background:url(../images/sub_bg02.png) repeat top;width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;background-attachment: fixed;}
#sub_contents .sub_bg04{background:url(../images/sub_bg04.png) repeat top;width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;background-attachment: fixed;}
#sub_contents .sub_bg02:before,#sub_contents .sub_bg05:before {content: '';position: absolute;top: -30px;left: 50%;transform: translateX(-50%);width: 100%;  height: 50px;background-size: contain;z-index: 1;}

/* 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:right;padding:10px 0 0 0;max-width:94%;margin:0 auto;margin-bottom:30px;}
#sub_contents .bread_crumb div { display:inline;color:#111;}
#sub_contents .bread_crumb div:after {content : '＞';padding-left:10px; font-family: inherit; font-size:12px;}
#sub_contents .bread_crumb div:last-child:after { content : '';}
#sub_contents .bread_crumb div a {text-decoration:underline;color:#111;font-size:13px;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:12px;padding:0 2%;}

/* 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.w100{width: 100%;}
#sub_contents .anker__item.w50{width: 100%;}
#sub_contents .anker__item.w30{width: 48%;}
#sub_contents .anker__item.w20{width: 32%;}
#sub_contents .anker__item a {display: block;text-align: center;text-transform: capitalize;padding: 1em;}
#sub_contents .anker__item a:hover {background: #111111;color:#fff;opacity:.8;}
#sub_contents .anker__item a p{font-size:16px;}

/* concept
-----------------------------*/
#sub_contents .sub_cen_img {width: 100%;text-align: center;}
#sub_contents .sub_cen_img img {width: 100px;object-fit: cover;}
#sub_contents .sub_catch_box {width: 100%;text-align: center;}
#sub_contents .sub_catch {display: block;}
#sub_contents .sub_catch_box p{display: inline-block;font-size: 20px;font-weight: bold;}
#sub_contents .sub_catch_box p.colgold{display: inline-block;background: linear-gradient(to right, #d5b201, #ffeb9f);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}
#sub_contents .box_greeting{padding: 20px;background:url("../images/sub_con_img01.png")repeat center center; background-attachment: fixed;}
#sub_contents .box_greeting .inner{background: #000000cc; position: relative;text-align: center; margin:0 auto; width:100%; max-width:100%;}
#sub_contents .box_greeting .inner .txt_box{width: 100%;}
#sub_contents .box_greeting .inner p.span{font-size:15px; font-weight: normal;color: #fff;display: inline-block;}
#sub_contents .box_greeting .inner p.ttl{font-size:18px; font-weight: normal;color: #fff;font-weight: bold;display: inline-block;}
#sub_contents .sub_black_box {background-color: #000000cc;padding: 30px;}
#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.ex {line-height:2;}
#sub_contents .comm_textBox .textarea p.ttl {border-bottom: solid 1px #111;margin-bottom: 10px;font-weight: normal;font-size: 20px;padding-bottom:5px;letter-spacing: 0.2em;}
#sub_contents .comm_textBox .textarea p.number {font-size: 24px;text-transform: capitalize;font-weight: normal;}
#sub_contents .comm_textBox.colwhite .textarea p.number {color: #920000;}
#sub_contents img.sub_ill_01  { width: 20%; right: 1%;bottom: -15%;transform: translate(0, -50%);z-index: 0;position: absolute;opacity: .3;}
#sub_contents img.sub_ill_02  { width: 20%; right: 1%;bottom: -15%;transform: translate(0, -50%);z-index: 0;position: absolute;opacity: .3;}

/* menu
-----------------------------*/
#sub_contents .sub_menu_img  {row-gap: 20px;}
#sub_contents .sub_menu_img img {width: 49%;object-fit: cover;height: 300px;}
#sub_contents .tbl_menu {width: 45%;margin-inline: auto;display: inline-block;font-size:15px;}
#sub_contents .tbl_menu.w100 {width: 100%;}
#sub_contents .tbl_menu .tr {display: flex;align-items: flex-start;}
#sub_contents .tbl_menu .th {width: 100%;padding: 15px 0;line-height: 1.6;position: relative;}
#sub_contents .tbl_menu .th::before {content: "";display: inline-block;width: 15px;height: 15px;background-image: url(../images/sub_ill02.png);background-size: contain;background-repeat: no-repeat;position: absolute;top: 50%;transform: translateY(-50%);}
#sub_contents .tbl_menu .th .menu_name {font-weight: bold;padding-left: 20px;}
#sub_contents .tbl_menu .th .menu_name.sub_small {font-size: 13px;}
#sub_contents .tbl_menu .th.oshi .menu_name {font-size: 15px;padding: 4px 1em;margin-bottom: 6px;width: fit-content;}
#sub_contents .tbl_menu .td {width: 39%;text-align: right;padding: 15px 0;line-height: 1.6;}
#sub_contents .tbl_menu .td .menu_price {font-weight: normal;}

/* guide
-----------------------------*/
#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: 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;}

/* faq
----------------------------------- */
#sub_contents .faq__item {padding:20px;border-radius:0px;width:100%;margin:0 auto;background:#ffffffcc;color:#7b0000;}
#sub_contents .faq__item:not(:last-of-type) {margin-bottom: 30px;}
#sub_contents .faq__item .dt {padding: 15px 10px 15px 50px;position: relative;border-bottom:1px solid #7b0000;font-weight:bold;}
#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:600;font-family: "Noto Sans JP", sans-serif;}
#sub_contents .faq__item .dd::before {content: "A.";font-size: 20px;font-weight:600;color:#111;font-family: "Noto Sans JP", sans-serif;}
#sub_contents .sub_bg .faq__item,
#sub_contents .sub_bg .faq__item *{color:#7b0000;}
}

@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: 120px;}
#sub_visual .h1_container{max-width:1140px;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container h1{font-size:58px; line-height: 180%;font-weight: normal;letter-spacing: 4px;text-align: center;position: relative;}
#sub_visual .h1_container .ttl{font-size:32px;line-height:100%;font-weight: normal;letter-spacing: 0.1em;text-align: center;margin-bottom: 0px;}
#sub_visual .h1_container.colwhite h1{margin-top: -30px;}

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 16px; position: relative;padding:5px 0px;background-attachment: fixed;}
#sub_contents p{font-size: 16px;line-height: 1.8em;}
#sub_contents .section{max-width: 1140px; margin: 70px auto 80px;position: relative;width: 94%;}
#sub_contents .scroll_section{width: 100%;margin: 50px auto 50px;position: relative;}
#sub_contents h2{ text-align: center;font-size:28px;  position: relative; line-height: 180%; padding:15px auto 15px;margin: 0px auto 80px;font-family: "Zen Old Mincho", serif;border-top: solid 1px #111111;border-bottom: solid 1px #111111;width: 600px;}
#sub_contents h3{ text-align: center;font-size:30px; margin-bottom:15px; position: relative;margin-top: 40px;}
#sub_contents .sub_ttl{scroll-margin-top: 80px;}
#sub_contents .sub_ttl_02_box{ text-align: center; position: relative;width: 100%;}
#sub_contents .sub_ttl_02_box p.sub_ttl_02{ text-align: center;  line-height: 180%;font-size: 20px;z-index: 2;position: relative;}
#sub_contents .sub_ttl_02::before{position: absolute;content: "";background: url(../images/sub_ill_01.png) no-repeat center center / cover ;width:100px;height:100px;bottom: -80px;left: 50%;transform: translate(-50%, -50%);}
#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 .mt80{margin-top: 80px;} 
#sub_contents .mt30{margin-top: 30px;} 
#sub_contents .gap-20{gap: 30px;} 
#sub_contents .txt_cen{ text-align: center;  line-height: 200%;font-size: 20px;font-weight: bold;}
#sub_contents .sub_bg02{background:url(../images/sub_bg.png) repeat top;width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;background-attachment: fixed;}
#sub_contents .sub_bg03{background:url(../images/sub_bg02.png) repeat top;width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;background-attachment: fixed;}
#sub_contents .sub_bg04{background:url(../images/sub_bg04.png) repeat top;width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;background-attachment: fixed;}
#sub_contents .sub_bg02:before,#sub_contents .sub_bg05:before {content: '';position: absolute;top: -60px;width: 100%;height: 120px;right: 0;left: 50%;z-index: 1;}

/* 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:right;padding:10px 0 0 0;max-width:1140px;margin:0 auto;margin-bottom:30px;}
#sub_contents .bread_crumb div { display:inline;color:#111;}
#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:#111;font-size:13px;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:13px;padding:0 2%;}

/* btn
----------------------------------- */
#sub_contents .anker__items{column-gap: 10px;row-gap: 10px;}
#sub_contents .anker__item{width: 23%;position: relative;display: block;}
#sub_contents .anker__item.w100{width: 100%;}
#sub_contents .anker__item.w50{width: 48%;}
#sub_contents .anker__item.w30{width: 32%;}
#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 {background: #111111;color:#fff;opacity:.8;}
#sub_contents .anker__item p.small {font-size: 13px;}

/* concept
-----------------------------*/
#sub_contents .sub_cen_img {width: 100%;text-align: center;}
#sub_contents .sub_cen_img img {width: 100px;object-fit: cover;}
#sub_contents .sub_catch_box {width: 100%;text-align: center;}
#sub_contents .sub_catch {display: block;}
#sub_contents .sub_catch_box p{display: inline-block;font-size: 28px;font-weight: bold;}
#sub_contents .sub_catch_box p.colgold{display: inline-block;background: linear-gradient(to right, #d5b201, #ffeb9f);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}
#sub_contents .box_greeting{padding: 20px;background:url("../images/sub_con_img01.png")repeat center center; background-attachment: fixed;}
#sub_contents .box_greeting .inner{background: #000000cc;position: relative;text-align: center; margin:0 auto; width:100%; max-width:100%;}
#sub_contents .box_greeting .inner .txt_box{width: 100%;}
#sub_contents .box_greeting .inner p.span{font-size:16px; font-weight: normal;color: #fff;display: inline-block;}
#sub_contents .box_greeting .inner p.ttl{font-size:24px; font-weight: normal;color: #fff;font-weight: bold;display: inline-block;}
#sub_contents .sub_black_box {width: 100%;background-color: #000000cc;padding: 40px;}
#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.w100  .textarea{width: 100%;}
#sub_contents .comm_textBox .textarea p.ex {line-height:2;}
#sub_contents .comm_textBox .textarea p.ttl {border-bottom: solid 1px #111;margin-bottom: 10px;font-weight: normal;font-size: 24px;padding-bottom:5px;letter-spacing: 0.2em;}
#sub_contents .comm_textBox .textarea p.number {font-size: 36px;text-transform: capitalize;font-weight: normal;}
#sub_contents img.sub_ill_01  { width:20%; right: 0%;bottom: -30%;}
#sub_contents img.sub_ill_02  { width:20%; left: 0%;bottom: -30%;}

/* menu
-----------------------------*/
#sub_contents .sub_menu_img img {width: 49%;object-fit: cover;height: 350px;}
#sub_contents .tbl_menu {width: 45%;margin-inline: auto;display: inline-block;font-size:15px;}
#sub_contents .tbl_menu.w100 {width: 100%;}
#sub_contents .tbl_menu .tr {display: flex;align-items: flex-start;}
#sub_contents .tbl_menu .th {width: 100%;padding: 15px 0;line-height: 1.6;position: relative;}
#sub_contents .tbl_menu .th::before {content: "";display: inline-block;width: 25px;height: 25px;background-image: url(../images/sub_ill02.png);background-size: contain;background-repeat: no-repeat;position: absolute;top: 50%;transform: translateY(-50%);}
#sub_contents .tbl_menu .th .menu_name {font-weight: bold;padding-left: 30px;}
#sub_contents .tbl_menu .th .menu_name.sub_small {font-size: 13px;}
#sub_contents .tbl_menu .th.oshi .menu_name {font-size: 15px;padding: 4px 1em;margin-bottom: 6px;width: fit-content;}
#sub_contents .tbl_menu .td {width: 39%;text-align: right;padding: 15px 0;line-height: 1.6;}
#sub_contents .tbl_menu .td .menu_price {font-weight: normal;}

/* guide
-----------------------------*/
#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: 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;}

/* faq
----------------------------------- */
#sub_contents .faq__item {padding:20px;border-radius:0px;width:100%;margin:0 auto;background:#ffffffcc;color:#7b0000;}
#sub_contents .faq__item:not(:last-of-type) {margin-bottom: 30px;}
#sub_contents .faq__item .dt {padding: 15px 10px 15px 50px;position: relative;border-bottom:1px solid #7b0000;font-weight:bold;}
#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:600;font-family: "Noto Sans JP", sans-serif;}
#sub_contents .faq__item .dd::before {content: "A.";font-size: 20px;font-weight:600;color:#111;font-family: "Noto Sans JP", sans-serif;}
#sub_contents .sub_bg .faq__item,
#sub_contents .sub_bg .faq__item *{color:#7b0000;}
}

@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: 120px;}
#sub_visual .h1_container{max-width:1140px;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container h1{font-size:58px; line-height: 180%;font-weight: normal;letter-spacing: 4px;text-align: center;position: relative;}
#sub_visual .h1_container .ttl{font-size:28px;line-height:100%;font-weight: normal;letter-spacing: 0.1em;text-align: center;margin-bottom: 0px;}
#sub_visual .h1_container.colwhite h1{margin-top: -30px;}
#sub_visual .h1_container .ttl{font-size:30px; line-height: 180%;font-weight: normal;letter-spacing: 4px;text-align: center;position: relative;}

/* sub_contents
----------------------------------- */
#sub_contents {padding-left: 250px;}
#sub_contents .sub_ttl{scroll-margin-top: 0px;}
}