/* main_visual
----------------------------------- */
#sub_visual {height:250px;position:relative;z-index:0;margin-top:0px;overflow: hidden;text-align: center;padding-top: 140px;}
#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:.5;}
#sub_visual .h1_container{max-width:94%;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container h1{font-size:26px; line-height: 130%;font-weight: normal;letter-spacing: 4px;color: #fff;text-align: center;position: relative;font-family: "Yuji Syuku", serif;border-bottom: solid 1px #fff;width: fit-content;margin: 0 auto 0.1em;text-shadow: 0px 0px 20px #332218;}

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 14px; position: relative;padding:5px 0px;background-attachment: fixed; }
#sub_contents .sub_bg {background-color: #0c0b0b;color: #fff;}
#sub_contents p{font-size: 13px;line-height: 1.8em;}
#sub_contents p.colwhite{color: #fff;}
#sub_contents .sub_bg p {color: #fff;}
#sub_contents .sub_bg a {color: #ae8c67;}
#sub_contents .sub_bg a:hover {color: #ae8c67;}
#sub_contents .section{max-width: 94%; margin: 40px auto 50px;position: relative;width: 94%;}
#sub_contents .section.colwhite p {color: #111;}
#sub_contents .sub_ttl{scroll-margin-top: 80px;}
#sub_contents .sub_ttl h2{ text-align: center;font-size:20px;  position: relative; line-height: 180%; padding:15px 0px 15px;margin: 0px auto 40px; font-weight: normal;font-family: "Noto Serif JP", serif;border-top: solid 1px #ae8c67;border-bottom: solid 1px #ae8c67;width: 90%; color:#ae8c67;}
#sub_contents .sub_bg .sub_ttl h2{ border-top: solid 1px #ae8c67;border-bottom: solid 1px #ae8c67;color: #fff;}
#sub_contents .section.colwhite .sub_ttl h2{border-top: solid 1px #ae8c67;border-bottom: solid 1px #ae8c67;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_st{ text-align: left; line-height: 200%;}
#sub_contents .sub_bg .txt_st a{color: #f73245;}
#sub_contents .sub_bg{background-color: #262626;padding: 30px 0px;}
#sub_contents .sub_bg02{width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;}
#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:right;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:12px;}
#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:12px;padding:0 2%;}
#sub_contents .sub_bg .bread_crumb p.bread a{color:#fff;}

/* 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;text-transform: capitalize;padding: 5px;border: solid 1px #ae8c67;line-height: 40px;}
#sub_contents .sub_bg .anker__item a {color:#fff;border: solid 1px #fff;}
#sub_contents .anker__item a:hover {background: #ae8c67;color:#fff;opacity:.8;}
#sub_contents .sub_bg .anker__item a:hover {background: #fff;color:#ae8c67 !important;opacity:.8;}
#sub_contents .sub_bg .anker__item a:hover p {color:#ae8c67 !important;}
#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: #ae8c67}
#sub_contents .box_greeting{padding: 10px 10px 10px;background:url("../images/sub_con_img01.jpg")repeat center center; background-attachment: fixed;}
#sub_contents .box_greeting .inner{background: #000000cc;padding: 10px 10px; position: relative;text-align: center; margin:0 auto; width:100%; max-width:100%;border: solid 1px #ae8c67;}
#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;}
#sub_contents .box_greeting .inner p.ttl{font-size:15px; font-weight: normal;line-height: 200%;color: #ae8c67;font-weight: bold;display: block;}
#sub_contents .box_greeting.drm .inner p.span,#sub_contents .box_greeting.kmtk .inner p.span{color:#111}
#sub_contents .comm_textBox {position: relative;}
#sub_contents .comm_textBox .img{width: 100%;margin-bottom: 10px;position:relative;}
#sub_contents .comm_textBox .img .sub_shadow{box-shadow: 10px 10px 0px #ae8c67;}
#sub_contents .comm_textBox .textarea {width: 100%;margin-bottom:10px;}
#sub_contents .comm_textBox .textarea p.ex {line-height:2;}
#sub_contents .comm_textBox .textarea .ttl {border-bottom: solid 1px #ae8c67;margin-bottom: 10px;font-weight: normal;font-size: 16px;padding-bottom:5px;letter-spacing: 0.2em;}
#sub_contents .comm_textBox .textarea .ttl.colgold {color: #ae8c67}
#sub_contents .comm_textBox .textarea p.number {font-size: 16px;text-transform: capitalize;font-weight: normal;color: #ae8c67;}
#sub_contents .comm_textBox .textarea p.number.colred {color: #910f13;}
#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-size: contain;}
#sub_contents img.sub_ill_01  { width: 20%; right: 1%;bottom: -2%;transform: translate(0, -50%);z-index: 0;position: absolute;opacity: .1;}
#sub_contents img.sub_ill_02  { width: 20%; right: 1%;bottom: -2%;transform: translate(0, -50%);z-index: 0;position: absolute;opacity: .1;}
#sub_contents .sub_img_box{padding:0;}
#sub_contents .sub_img_box img{width:100%;}
#sub_contents .sub_black_box{width:100%;background-color:#000000cc;padding:20px;}

/* menu
-----------------------------*/
#sub_contents .sub_menu_img {width:100%;}
#sub_contents .sub_menu_img img{width:100%;margin-bottom: 20px;}
#sub_contents .menu__items .menu__item{width: 100%;}
#sub_contents .menu__items .menu__item .menu_h3{position: relative;font-size:24px;font-weight:bold;color:#9f0000;padding-left:40px;margin-bottom:10px;}
#sub_contents .menu__items .menu__item .menu_h3:before{content: '';position: absolute;top: 0;display: inline-block;width: 30px;height: 30px;left: 0;background-size:contain;}
#sub_contents .menu__items .menu__item .menu {border-bottom:1px solid #ddd;padding:20px 0;display:flex;}
#sub_contents .menu__items .menu__item .menu .menu_name{display: block; width: 75%;}
#sub_contents .menu__items .menu__item .menu .menu_name .menu_txt {font-size:13px; margin:10px 0;text-align: right;margin-left:auto; }
#sub_contents .menu__items .menu__item .menu .menu_name .menu_p {font-size:16px; font-weight:bold;}
#sub_contents .menu__items .menu__item .menu .menu__price{display: block;width:25%; text-align: right;font-size:15px;}
#sub_contents .wh_bg {padding:20px 20px 40px 20px;margin-bottom:50px;background:#fffef9}
#sub_contents .menu_name p{width:100%;margin:0 auto;font-size:15px;line-height:2.4;}
#sub_contents .menu_name strong{display:block;font-size:18px;font-weight:700;margin:40px 0 15px;letter-spacing:.06em}
#sub_contents .menu_name strong::after{content:"";display:block;width:36px;height:2px;background:#ae8c67;margin-top:10px}
#sub_contents .menu_name em{float:right;font-style:normal;font-weight:700;color:#c40c0c;padding-left:10px;}
#sub_contents .menu_name br{clear:both;}
#sub_contents .menu_name p{background:none;}

/* faq
----------------------------------- */
#sub_contents .faq__item {padding:10px;border-radius:0px;width:100%;margin:0 auto;background:#000;color: #fff;}
#sub_contents .faq__item p{color: #fff;}
#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 #ae8c67;font-weight:bold;}
#sub_contents .faq__item .dd {padding: 15px 5px 15px 40px;position: relative;color: #fff;}
#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: "Cormorant Infant", serif;color:#9f0000;}
#sub_contents .faq__item .dd::before {content: "A.";font-size: 20px;font-weight:600;color:#ae8c67;font-family: "Cormorant Infant", serif;}

/* recruit
-----------------------------*/
#sub_contents .sub_map{width:100%;}
#sub_contents .tbl_info {width: 100%;margin-inline: auto;position: relative;}
#sub_contents .tbl_info.white {background-color: #fff;padding: 10px;}
#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;background: #000;}
#sub_contents .tbl_info .th p.ttl {font-weight: normal;line-height: 2em;color: #fff;}
#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;}
#sub_contents .tbl_info .td a {border-bottom: solid 1px #000;}
#sub_contents.col_black .tbl_info .td a {border-bottom: solid 1px #000;}
#sub_contents .sub_bg .tbl_info .td a {border-bottom: solid 1px #000;}
#sub_contents .bene_list {padding: 10px 20px;position: relative;background-color: #000;}
#sub_contents .bene_list p {font-size:14px; display: block;padding-left: 30px;color: #fff !important;}
#sub_contents .bene_list p::before {content: "";position: absolute;left: 20px;top: 50%;transform: translateY(-50%);display: inline-block;width: 20px;height: 20px;background: url(../images/sub_check_icon.png) no-repeat;background-size: contain;}
#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: #910f13;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;}
#sub_contents .r_flow .li .dl {padding-left: 0px;position: relative;}
#sub_contents .r_flow .li .dl .dt {font-size: 14px;margin-bottom: 20px;font-weight:bold;}
#sub_contents .r_flow .li p.ex {margin-top: 0px;font-size: 13px;padding: 1.5em;border: solid 1px #000;}

@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 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 .sub_ttl 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 #ae8c67;border-bottom: solid 1px #ae8c67;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: "";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{width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;}
#sub_contents .sub_bg03{width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;}
#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:#fff;}
#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:#fff;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: #000;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: #ae8c67}
#sub_contents .box_greeting{padding: 20px;background:url("../images/sub_con_img01.jpg")repeat center center; background-attachment: fixed;}
#sub_contents .box_greeting .inner{background: #000000cc;padding: 20px; 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;font-weight: bold;display: inline-block;}
#sub_contents .comm_textBox {position: relative;}
#sub_contents .comm_textBox .img{width: 100%;margin-bottom: 10px;position:relative;}
#sub_contents .comm_textBox .img .sub_shadow{box-shadow: 15px 15px 0px #ae8c67;}
#sub_contents .comm_textBox .textarea {width: 100%;margin-bottom:10px;}
#sub_contents .comm_textBox .textarea p.ex {line-height:2;}
#sub_contents .comm_textBox .textarea .ttl {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 img.sub_ill_01  { width: 20%; right: 1%;bottom: -15%;transform: translate(0, -50%);z-index: 0;position: absolute;opacity: .1;}
#sub_contents img.sub_ill_02  { width: 20%; right: 1%;bottom: -15%;transform: translate(0, -50%);z-index: 0;position: absolute;opacity: .1;}
#sub_contents .sub_black_box {width: 100%;background-color: #000000cc;padding: 40px;}

/* menu
-----------------------------*/
#sub_contents .sub_menu_img{width:100%;}
#sub_contents .sub_menu_img img{width:48%;}
#sub_contents .menu__items .menu__item{width: 48%;}
#sub_contents .menu__items .menu__item{width: 48%;}
#sub_contents .menu__items .menu__item .menu_h3{position: relative;font-size:24px;font-weight:bold;padding-left:40px;margin-bottom:10px;}
#sub_contents .menu__items .menu__item .menu_h3:before{content: '';position: absolute;top: 0;display: inline-block;width: 30px;height: 30px;left: 0;background-size:contain;}
#sub_contents .menu__items .menu__item .menu {border-bottom:1px solid #ddd;padding:20px 0;display:flex;}
#sub_contents .menu__items .menu__item .menu .menu_name{display: block; width: 75%;}
#sub_contents .menu__items .menu__item .menu .menu_name .menu_txt {font-size:13px; margin:10px 0;text-align: right;margin-left:auto; }
#sub_contents .menu__items .menu__item .menu .menu_name .menu_p {font-size:16px; font-weight:bold;}
#sub_contents .menu__items .menu__item .menu .menu__price{display: block;width:25%; text-align: right;font-size:15px;}
#sub_contents .wh_bg {padding:60px 40px 40px 40px;margin-bottom:50px;color:#000;}
#sub_contents .sub_bg .menu__items,
#sub_contents .sub_bg .menu__items *{color:#111;}

#sub_contents .menu_name p{max-width:720px;margin:0 auto;font-size:15px;line-height:2.4;}
#sub_contents .menu_name strong{display:block;font-size:24px;font-weight:700;margin:40px 0 10px;letter-spacing:.06em}
#sub_contents .menu_name strong::after{content:"";display:block;width:36px;height:2px;margin-top:5px}

#sub_contents .menu_name em{float:right;font-style:normal;font-weight:700;padding-left:10px;}
#sub_contents .menu_name br{clear:both;}
#sub_contents .menu_name p{background:none;}

/* faq
----------------------------------- */
#sub_contents .faq__item {padding:20px;border-radius:0px;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: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;}
#sub_contents .faq__item .dd::before {content: "A.";font-size: 20px;font-weight:600;}

/* recruit
-----------------------------*/
#sub_contents .tbl_info {width: 100%;margin-inline: auto;position: relative;}
#sub_contents .tbl_info.white {background-color: #fff;padding: 30px;}
#sub_contents .tbl_info .tr {display: flex;align-items: center;position: relative;align-items: stretch;border-bottom: 1px solid #000;padding-bottom: 7px;padding-top: 7px;}
#sub_contents .tbl_info .tr:first-child {border-top: 1px solid #000;}
#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 .bene_list {padding: 10px 30px;position: relative;}
#sub_contents .bene_list p {font-size:18px; display: inline-block;padding-left: 40px;color: #fff !important;}
#sub_contents .bene_list p.span {padding-left: 0px;}
#sub_contents .bene_list p::before {content: "";position: absolute;left: 30px;top: 50%;transform: translateY(-50%);display: inline-block;width: 20px;height: 20px;background: url(../images/sub_check_icon.png) no-repeat;background-size: contain;}
#sub_contents .r_flow { width: 100%;padding-left: 120px;position: relative}
#sub_contents .r_flow::before {content: "";width: 15px;height: 100%;background: #000;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:#910f13;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 #000000;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: #910f13;border-radius: 50%;left: 195px;}
#sub_contents .r_flow .li .dl::after {width: 30%;border-bottom: 1px solid #910f13;position: absolute;left: 0px;}
#sub_contents .r_flow .li .dl .dt {font-size: 15px;margin-bottom: 1vh;letter-spacing: -0.01em;}
#sub_contents .r_flow .li p.ex {margin-top: 0px;background-color: #000;}
}

@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: 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.colwhite h1{margin-top: -30px;}
#sub_visual .h1_container .ttl{font-size:20px; line-height: 180%;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: calc(1280px + 2%); margin: 0 auto; padding: 100px 1%;}
#sub_contents .scroll_section{width: 100%;margin: 50px auto 50px;position: relative;}
#sub_contents .sub_ttl 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 #ae8c67;border-bottom: solid 1px #ae8c67;width: 600px; color:#ae8c67;}
#sub_contents h3{ text-align: center;font-size:30px; margin-bottom:15px; position: relative;margin-top: 40px;}
#sub_contents .sub_ttl{scroll-margin-top: 220px;}
#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: "";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{width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;}
#sub_contents .sub_bg03{width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;}
#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:#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%;}

/* 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 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: #ae8c67}
#sub_contents .box_greeting{padding: 20px;background:url("../images/sub_con_img01.jpg")repeat center center; background-attachment: fixed;}
#sub_contents .box_greeting .inner{background: #000000cc;padding: 20px; 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;font-weight: bold;display: inline-block;}
#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.ex {line-height:2;}
#sub_contents .comm_textBox .textarea .ttl {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%;}
#sub_contents .sub_black_box{width:100%;background-color:#000000cc;padding:20px;}

/* menu
-----------------------------*/
#sub_contents .sub_menu_img img {width: 49%;object-fit: cover;margin-bottom: 20px;}
#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-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;}

/* faq
----------------------------------- */
#sub_contents .faq__item:not(:last-of-type) {margin-bottom: 20px;}
#sub_contents .faq__item .dt {padding: 25px 20px 25px 60px;position: relative;font-weight: bold;}
#sub_contents .faq__item .dd {padding: 25px 20px 25px 60px;position: relative;}
#sub_contents .faq__item .dt::before,
#sub_contents .faq__item .dd::before {position: absolute;left: 20px;top: 18px;}
#sub_contents .faq__item .dt::before {content: "Q.";font-size: 30px;}
#sub_contents .faq__item .dd::before {content: "A.";font-size: 30px;}

/* recruit
-----------------------------*/
#sub_contents .tbl_info {width: 100%;margin-inline: auto;position: relative;}
#sub_contents .tbl_info.white {background-color: #fff;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 .bene_list {padding: 10px 30px;position: relative;}
#sub_contents .bene_list p {font-size:18px; display: inline-block;padding-left: 40px;color: #fff !important;}
#sub_contents .bene_list p.span {padding-left: 0px;}
#sub_contents .bene_list p::before {content: "";position: absolute;left: 30px;top: 50%;transform: translateY(-50%);display: inline-block;width: 20px;height: 20px;background: url(../images/sub_check_icon.png) no-repeat;background-size: contain;}
#sub_contents .r_flow {width: 100%;padding-left: 120px;position: relative;}
#sub_contents .r_flow::before {content: "";width: 15px;height: 100%;background: #000;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;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 #910f13;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: #910f13;border-radius: 50%;left: 195px;}
#sub_contents .r_flow .li .dl::after {width: 22%;border-bottom: 1px solid #910f13;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;}
}

@media screen and (min-width: 1025px) {
/* sub_contents
----------------------------------- */
#sub_contents {padding-left: 200px;}

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