
/* main_visual
----------------------------------- */
#sub_visual {padding-top:100px; height:250px;position:relative;z-index:0;margin-top:0px;overflow: hidden;text-align: center;}
#sub_visual .img { height:250px; position: absolute; top: 0; width:100%;z-index:-1;margin: 0 auto;text-align: center;align-items: center;height: 90%;}
#sub_visual .img img{width:100%;height:100%;object-fit: cover;object-position: center;margin: 0 auto;}
#sub_visual .h1_container{max-width:94%;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container h1{font-size:30px; line-height: 180%;font-weight: 400;letter-spacing: 4px;font-weight: bold;color: #fff;font-family: "Kaisei Opti", serif;text-shadow: 2px 2px 20px #000;text-align: center;}


/* sub_contents 
----------------------------------- */
#sub_contents {font-size: 14px; position: relative;padding:5px 0px;background-attachment: fixed; }
#sub_contents p{font-size: 14px;}
#sub_contents .section{max-width: 94%; margin: 30px auto 50px;position: relative;}
#sub_contents .scroll_section{width: 100%;margin: 50px auto 50px;position: relative;}
#sub_contents h2{ text-align: center;font-size:24px;  position: relative; line-height: 180%; padding:15px auto 10px;margin-top: 0px; color: #f6fd1c; margin-bottom: 50px;font-weight: bold;text-shadow: 3px 3px 5px #000000;z-index: 1;font-family: "Kaisei Opti", serif;}

#sub_contents h2:before{position: absolute;content: "";background: url(../images/sub_h2_icon.png) no-repeat center center / contain ;width:50%;height:70px;left: 50%;transform: translate(-50%, -50%);-webkit-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);z-index: -1;top: 25px;}

#sub_contents h3{ text-align: center;font-size:30px; margin-bottom:15px; position: relative; font-weight: bold;      margin-top: 40px;}
#sub_contents .mb20{margin-bottom: 15px;}
#sub_contents .mb30{margin-bottom: 20px;}
#sub_contents .mb50{margin-bottom: 30px;}
#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: 180%;font-size: 15px;font-weight:bold;}
#sub_contents .txt_cen em{font-style: normal !important;display: inline;}
#sub_contents .sub_bg{background:#000;z-index:-1;padding: 10px 0px 50px;}
#sub_contents .sub_bg_02{background:url(../images/sub_bg_02.png) repeat top;width: 100%; padding: 10px 0px 50px;z-index: 0;  z-index: -1;position: relative;background-size: cover;}
#sub_contents .dis-none{display: none!important;}

/* bread_crumb_list
----------------------------------- */
#sub_contents .bread_crumb_list{ position: relative; margin-bottom: 50px;color:#fff;max-width: 100%;align-items: left;}
#sub_contents .bread_crumb{text-align:left;padding:10px 15px 10px 15px;margin-right: auto;background: #00000099;position:relative;top: -60px;left: 0;}
#sub_contents .bread_crumb li { display:inline;}
#sub_contents .bread_crumb li:after {content : 'ー';padding-left:10px; font-family: inherit;}
#sub_contents .bread_crumb li:last-child:after { content : '';}
#sub_contents .bread_crumb li a {text-decoration:underline; color:#fff;}
#sub_contents .bread_crumb li a:hover{ text-decoration:none;}
#sub_contents .bread_crumb li.current { font-weight: normal;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:10px;color:#fff;}
#sub_contents .bread_crumb p a{color:#fff;}

/* btn
----------------------------------- */
#sub_contents .anker__items{column-gap: 2%;row-gap: 10px;}
#sub_contents .anker__item{width: 48%;height: 40px;position: relative;display: block;}
#sub_contents .anker__item.w50{width: 100%;}
#sub_contents .anker__item.w30{width: 48%;}
#sub_contents .anker__item a:hover{opacity:.8;}
#sub_contents .anker__item a {display: block;text-align: center;line-height: 40px;background: #d81416;color: #fff;}
#sub_contents .anker__item a:hover {background: #fff;color:#d81416;}
#sub_contents .anker__item p {line-height: 40px;}
#sub_contents .anker__item em{  display:block;font-style:normal;font-weight:normal;}
#sub_contents .anker__item.menu_btn{width:100%;}
#link01,#link02,#link03,#link04,#link05,#link06,#link07,#link08,#link09,#link10,#link11,#link12{margin-top:-60px;padding-top:60px;}

/* tab
----------------------------------- */
#sub_contents .tab_area {gap:15px;}
#sub_contents .tab {position: relative;width:45%; padding: 10px 0;font-size: 15px;text-align: center;cursor: pointer;transition: all ease 0.3s;border-bottom:2px solid #d81416;}
#sub_contents .tab p {font-size: 15px;display: inline;font-family: "Zen Kaku Gothic New", sans-serif;}
#sub_contents .tab p:hover {color:#d81416;}
#sub_contents .tab.is-active::after {position: absolute;bottom: -10px;left: 50%;transform: translateX(-50%);width: 18px;height: 9px;background-color: #d81416;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 .concept_area {background:url(../images/sub_con_img01.jpg) repeat center center; background-size:cover; padding:10px;background-attachment: fixed; height:auto;text-align: center;position: relative;}
#sub_contents .concept_area.company {background:url(../images/sub_com_img01.jpg) repeat center center; background-size:cover; padding:10px;background-attachment: fixed; height:auto;text-align: center;position: relative;}
#sub_contents .concept_area .box {background:rgba(0, 0, 0, 0.8);padding:10px;}
#sub_contents .concept_area .box p.ttl {font-size:17px;font-family: "Kaisei Opti", serif;font-weight: bold;color: #d81416;text-shadow: 1px 1px 0px #330201;}
#sub_contents .concept_area .box p {font-size:13px;line-height:2;}
#sub_contents .sub_illust_01  { width: calc((110/375)*100%); left: -5%;top: 12%;transform: translate(0, -50%);}
#sub_contents .sub_illust_02  { width: calc((70/375)*100%); right: 0;top: 100%;transform: translate(0, -50%);}
#sub_contents .sub_illust_03  { width: calc((100/375)*100%); right: 0;top: -4%;transform: translate(0, -50%);}
#sub_contents .sub_illust_04  { width: calc((60/375)*100%); right: 0;top: 14%;transform: translate(0, -50%);}
#sub_contents .sub_illust_05  { width: calc((80/375)*100%); left: -5%;top: 12%;transform: translate(0, -50%);}
#sub_contents .sub_illust_06  { width: calc((60/375)*100%); right: 0;top: 14%;transform: translate(0, -50%);}
#sub_contents .sub_illust_07  { width: calc((50/375)*100%); right: 0;top: 110%;transform: translate(0, -50%);}
#sub_contents .sub_illust_08  { width: calc((80/375)*100%); left: 0;top: 110%;transform: translate(0, -50%);}
#sub_contents .sub_illust_09  { width: calc((70/375)*100%); right: 0;top: 110%;transform: translate(0, -50%);}

/* company
----------------------------------- */
#sub_contents .sub_history_wrapper {position: relative; padding-left: 30px; display: block;border-left: 1px solid #d81416;}
#sub_contents .sub_history {position: relative; padding: 30px 0 30px;}

#sub_contents .sub_history::before  { content: '...'; position: absolute; left: -20px; top: 0px; color: #d81416; font-size: 50px;}
#sub_contents .sub_history::after { content: ''; position: absolute; left: -35px; top: 30%; width: 12px; height: 12px; background-color: #d81416; border-radius: 50%; border: 2px solid #d81416; box-shadow: 0 0 0 2px #d81416;  }
#sub_contents .sub_history p.year  {margin: 0 0 5px 0;font-family: "Kaisei Opti", serif;font-size: 17px;color: #f6fd1c;padding-left: 30px;}
#sub_contents .sub_history p.small  {margin: 0;padding-left: 30px;font-size: 12px;line-height:1.6em;}

/* recruit
----------------------------------- */
#sub_contents .staff_sub_img {position: relative;width: 100%;margin-top: 20px;}
#sub_contents .staff_sub_img img {width: 48%;object-fit: cover;border: solid 2px #fff;display: inline-block;height: 120px;margin-bottom:10px;}

/* commitment
----------------------------------- */
#sub_contents .comm_textBox.menu{background-color: #31010150;padding: 20px 20px;} 
#sub_contents .comm_textBox.staff{background-color: #ffffff10;padding: 20px 20px;} 
#sub_contents .comm_textBox .img{width: 100%;margin-bottom: 10px;position:relative;} 
#sub_contents .comm_textBox .img img{border: solid 3px #fff;box-shadow: 3px 3px 5px #000;} 
#sub_contents .comm_textBox .textarea {width: 100%;margin-bottom:10px;}
#sub_contents .comm_textBox .textarea p {line-height:1.8;}
#sub_contents .comm_textBox .textarea p.staff_name {border-bottom: solid 2px #fff;margin-bottom: 10px;font-weight: bold;font-size: 17px;font-family: "Kaisei Opti", serif;color: #f6fd1c;text-shadow: 3px 3px 5px #000;} 
#sub_contents .comm_textBox .textarea p.staff_number {color:#fff;font-size: 15px;margin-bottom: 5px;text-transform: capitalize;font-family: "Kaisei Opti", serif;} 
#sub_contents .comm_textBox .textarea p.menu_name {border-bottom: none;margin-bottom: 5px;font-weight: bold;font-size: 20px;font-family: "Kaisei Opti", serif;color: #f6fd1c;text-shadow: 3px 3px 5px #000;line-height: 1.6em;} 
#sub_contents .comm_textBox .textarea p.menu_price {color:#d81416;font-size: 17px;margin-bottom: 10px;text-transform: capitalize;font-family: "Kaisei Opti", serif;background-color: #fff;padding: 2px 15px;text-shadow: 1px 1px 0px #000;width: fit-content;font-weight: bold;line-height: 1.5em;} 
#sub_contents .comm_textBox .textarea p.menu_name strong{display:block; font-size:20px;}

#sub_contents .comm_textBox .textarea p.job {border-bottom: solid 2px #f6fd1c;margin-bottom: 10px;font-weight: bold;font-size: 17px;font-family: "Kaisei Opti", serif;color: #fff;text-shadow: 0px 0px 0px #000;} 
#sub_contents .comm_textBox .textarea p.recruit {border-bottom: solid 2px #fff;margin-bottom: 10px;font-weight: bold;font-size: 15px;font-family: "Kaisei Opti", serif;color: #f6fd1c;text-shadow: 1px 1px 0px #000;} 

#sub_contents .sub_illust_left{text-align:left;width:100%;padding:0px;max-width: 100%;position: relative;}
#sub_contents .sub_illust_left img{text-align:left;width:20%;padding:0px;left: 0;max-width: 1280px;}
#sub_contents .sub_illust_right{text-align:right;width:100%;padding:0px;max-width: 100%;position: relative;}
#sub_contents .sub_illust_right img{text-align:right;width:20%;padding:0px;right: 0;max-width: 1280px;}
#sub_contents .sub_illust_right.small img{text-align:right;width:15%;padding:0px;right: 0;max-width: 1280px;}

/* access
----------------------------------- */
#sub_contents .tbl_info .tr{width:100%;background:#fff;margin-bottom:10px; box-shadow:1px 1px 10px #00000020;}
#sub_contents .tbl_info .tr:nth-child(2n){background:#fff;}
#sub_contents .tbl_info .th{width:100%;padding:10px 15px;background:#d81416;color:#fff; text-align:center;font-weight: bold; letter-spacing: 0.1em;line-height: 2em;}
#sub_contents .tbl_info .td{width:100%;padding:10px 15px;color: #000;line-height: 2em;}
#sub_contents .tbl_info .td a{color:#111;}
#sub_contents .sub_map{width:100%;height: 200px;}

#sub_contents .center_img {width: 100%;text-align: center;}
#sub_contents .center_img img{margin: 0 auto;width: 30%;object-fit: cover;}

@media screen and (min-width:768px) {
#sub_visual {padding-top:120px; height:400px;position:relative;z-index:0;margin-top:0px;overflow: hidden;text-align: center;}
#sub_visual .img { height:400px; position: absolute; top: 0; width:100%;z-index:-1;margin: 0 auto;text-align: center;align-items: center;height: 90%;}
#sub_visual .img img{width:100%;height:100%;object-fit: cover;object-position: center;margin: 0 auto;}
#sub_visual .h1_container{max-width:94%;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container h1{font-size:44px; line-height: 180%;font-weight: 400;letter-spacing: 4px;font-weight: bold;color: #fff;font-family: "Kaisei Opti", serif;text-shadow: 2px 2px 20px #000;text-align: center;}


/* sub_contents 
----------------------------------- */
#sub_contents {font-size: 16px; position: relative;padding:5px 0px;background-attachment: fixed; }
#sub_contents p{font-size: 16px;}
#sub_contents .section{max-width: 94%; margin: 50px auto 50px;position: relative;padding: 0px 0 40px;}
#sub_contents .scroll_section{width: 100%;margin: 50px auto 50px;position: relative;}
#sub_contents h2{ text-align: center;font-size:36px;  position: relative; line-height: 180%; padding:15px auto 10px;margin-top: 0px; color: #f6fd1c; margin-bottom: 50px;font-weight: bold;text-shadow: 3px 3px 5px #000000;z-index: 1;font-family: "Kaisei Opti", serif;}

#sub_contents h2:before{position: absolute;content: "";background: url(../images/sub_h2_icon.png) no-repeat center center / contain ;width:30%;height:70px;left: 50%;transform: translate(-50%, -50%);-webkit-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);z-index: -1;top: 40px;}

#sub_contents h3{ text-align: center;font-size:30px; margin-bottom:15px; position: relative; font-weight: bold;      margin-top: 40px;}
#sub_contents .mb20{margin-bottom: 20px;}
#sub_contents .mb30{margin-bottom: 30px;}
#sub_contents .mb50{margin-bottom: 50px;}
#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: 180%;font-size: 22px;}
#sub_contents .txt_cen em{font-style: normal !important;display: inline;}
#sub_contents .sub_bg{background:#000;z-index:0;}
#sub_contents .sub_bg_02{background:url(../images/sub_bg_02.png) repeat top;width: 100%; padding: 10px 0px 50px;z-index: 0;  z-index: 0;position: relative;background-size: contain;}

/* bread_crumb_list
----------------------------------- */
#sub_contents .bread_crumb_list{position: relative; margin-bottom: 50px;color:#fff;max-width: 100%;align-items: left;}
#sub_contents .bread_crumb{text-align:left;padding:20px 30px 20px 30px;margin-right: auto;background: #00000099;position:relative;top: -95px;left: 0;}
#sub_contents .bread_crumb li { display:inline;}
#sub_contents .bread_crumb li:after {content : 'ー';padding-left:10px; font-family: inherit;}
#sub_contents .bread_crumb li:last-child:after { content : '';}
#sub_contents .bread_crumb li a {text-decoration:underline; color:#fff;}
#sub_contents .bread_crumb li a:hover{ text-decoration:none;}
#sub_contents .bread_crumb li.current { font-weight: normal;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:12px;color:#fff;}
#sub_contents .bread_crumb p a{color:#fff;}

/* btn
----------------------------------- */
#sub_contents .anker__items{column-gap: 2%;row-gap: 10px;}
#sub_contents .anker__item{width: 24%;height: 50px;position: relative;display: block;}
#sub_contents .anker__item.w50{width: 45%;}
#sub_contents .anker__item a:hover{opacity:.8;}
#sub_contents .anker__item a {display: block;text-align: center;line-height: 50px;background: #d81416;color: #fff;}
#sub_contents .anker__item a:hover {background: #fff;color:#d81416;}
#sub_contents .anker__item p {line-height: 50px;}
#sub_contents .anker__item em{  display:block;font-style:normal;font-weight:normal;}
#sub_contents .anker__item.menu_btn{width:100%;}
#link01,#link02,#link03,#link04,#link05,#link06,#link07,#link08,#link09,#link10,#link11,#link12{margin-top:-60px;padding-top:60px;}

/* tab
----------------------------------- */
#sub_contents .tab_area {gap:15px;}
#sub_contents .tab {position: relative;width:30%; padding: 20px 0;font-size: 20px;text-align: center;cursor: pointer;transition: all ease 0.3s;border-bottom:2px solid #d81416;}
#sub_contents .tab p {font-size: 20px;display: inline;font-family: "Zen Kaku Gothic New", sans-serif;}
#sub_contents .tab p:hover {color:#d81416;}
#sub_contents .tab.is-active::after {position: absolute;bottom: -10px;left: 50%;transform: translateX(-50%);width: 18px;height: 9px;background-color: #d81416;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 .concept_area {background:url(../images/sub_con_img01.jpg) repeat center center; background-size:cover; padding:30px;background-attachment: fixed; height:auto;text-align: center;position: relative;}
#sub_contents .concept_area.company {background:url(../images/sub_com_img01.jpg) repeat center center; background-size:cover; padding:30px;background-attachment: fixed; height:auto;text-align: center;position: relative;}
#sub_contents .concept_area .box {background:rgba(0, 0, 0, 0.8);padding:30px;}
#sub_contents .concept_area .box p.ttl {font-family: "Kaisei Opti", serif;font-weight: bold;color: #d81416;text-shadow: 1px 1px 0px #330201;font-size: 32px;}
#sub_contents .concept_area .box p {font-size:18px;line-height:2;}
#sub_contents .sub_illust_02  { width: calc((60/375)*100%); right: 0;top: 95%;transform: translate(0, -50%);}
#sub_contents .sub_illust_05  { width: calc((70/375)*100%); right: 0;top: 2%;transform: translate(0, -50%);}
#sub_contents .sub_illust_07  { width: calc((40/375)*100%); right: 0;top: 98%;transform: translate(0, -50%);}
#sub_contents .sub_illust_08  { width: calc((80/375)*100%); left: 0;top: 100%;transform: translate(0, -50%);}

/* company
----------------------------------- */
#sub_contents .sub_history_wrapper {position: relative; padding-left: 30px; display: block;border-left: 1px solid #d81416;}
#sub_contents .sub_history {position: relative; padding: 30px 0 30px;}

#sub_contents .sub_history::before  { content: '...'; position: absolute; left: -20px; top: 0px; color: #d81416; font-size: 50px;}
#sub_contents .sub_history::after { content: ''; position: absolute; left: -35px; top: 30%; width: 12px; height: 12px; background-color: #d81416; border-radius: 50%; border: 2px solid #d81416; box-shadow: 0 0 0 2px #d81416;  }
#sub_contents .sub_history p.year  {margin: 0 0 5px 0;font-family: "Kaisei Opti", serif;font-size: 20px;color: #f6fd1c;padding-left: 30px;}
#sub_contents .sub_history p.small  {margin: 0;padding-left: 30px;}

/* recruit
----------------------------------- */
#sub_contents .staff_sub_img {position: relative;width: 100%;margin-top: 20px;}
#sub_contents .staff_sub_img img {width: 48%;object-fit: cover;border: solid 2px #fff;display: inline-block;height: 180px;margin-bottom: 20px;}

/* commitment
----------------------------------- */
#sub_contents .comm_textBox.menu{background-color: #31010150;padding: 30px 40px;} 
#sub_contents .comm_textBox.staff{background-color: #ffffff10;padding: 30px 40px;} 
#sub_contents .comm_textBox .img{width: 100%;margin-bottom:10px;position:relative;} 
#sub_contents .comm_textBox .img img{border: solid 3px #fff;box-shadow: 3px 3px 5px #000;} 
#sub_contents .comm_textBox .textarea {width: 100%;margin-bottom:10px;}
#sub_contents .comm_textBox .textarea p {line-height:2;}
#sub_contents .comm_textBox .textarea p.staff_name {border-bottom: solid 2px #fff;margin-bottom: 10px;font-weight: bold;font-size: 26px;font-family: "Kaisei Opti", serif;color: #f6fd1c;text-shadow: 3px 3px 5px #000;} 
#sub_contents .comm_textBox .textarea p.staff_number {color:#fff;font-size: 22px;margin-bottom: 5px;text-transform: capitalize;font-family: "Kaisei Opti", serif;} 
#sub_contents .comm_textBox .textarea p.menu_name {border-bottom: none;margin-bottom: 5px;font-weight: bold;font-size: 38px;font-family: "Kaisei Opti", serif;color: #f6fd1c;text-shadow: 3px 3px 5px #000;line-height: 1.6em;} 
#sub_contents .comm_textBox .textarea p.menu_price {color:#d81416;font-size: 28px;margin-bottom: 10px;text-transform: capitalize;font-family: "Kaisei Opti", serif;background-color: #fff;padding: 2px 15px;text-shadow: 1px 1px 0px #000;width: fit-content;font-weight: bold;line-height: 1.5em;} 

#sub_contents .comm_textBox .textarea p.job {border-bottom: solid 2px #f6fd1c;margin-bottom: 10px;font-weight: bold;font-size: 26px;font-family: "Kaisei Opti", serif;color: #fff;text-shadow: 0px 0px 0px #000;} 
#sub_contents .comm_textBox .textarea p.recruit {border-bottom: solid 2px #fff;margin-bottom: 10px;font-weight: bold;font-size: 22px;font-family: "Kaisei Opti", serif;color: #f6fd1c;text-shadow: 1px 1px 0px #000;} 

#sub_contents .sub_illust_left{text-align:left;width:100%;padding:0px;max-width: 100%;position: relative;}
#sub_contents .sub_illust_left img{text-align:left;width:20%;padding:0px;left: 0;max-width: 1280px;}
#sub_contents .sub_illust_right{text-align:right;width:100%;padding:0px;max-width: 100%;position: relative;}
#sub_contents .sub_illust_right img{text-align:right;width:20%;padding:0px;right: 0;max-width: 1280px;}

/* access
----------------------------------- */
#sub_contents .tbl_info .tr{width:100%;background:#fff;margin-bottom:15px; box-shadow:1px 1px 10px #00000020;}
#sub_contents .tbl_info .tr:nth-child(2n){background:#fff;}
#sub_contents .tbl_info .th{width:24%;padding:15px 40px;background:#d81416;color:#fff; text-align:center;font-weight: bold; letter-spacing: 0.1em;line-height: 2em;}
#sub_contents .tbl_info .td{width:75%;padding:15px 15px;color: #000;line-height: 2em;}
#sub_contents .sub_map{width:100%;height:300px;}

#sub_contents .center_img {width: 100%;text-align: center;}
#sub_contents .center_img img{margin: 0 auto;width: 30%;object-fit: cover;}
}

@media screen and (min-width:1024px) {
#sub_visual {padding-top:240px; height:580px;position:relative;z-index:0;margin-top:0px;overflow: hidden;text-align: center;}
#sub_visual .img { height:500px; position: absolute; top: 0; width:100%;z-index:-1;margin: 0 auto;text-align: center;align-items: center;height: 90%;}
#sub_visual .img img{width:100%;height:100%;object-fit: cover;object-position: center;margin: 0 auto;}
#sub_visual .h1_container{max-width:1140px;width:94%;margin:0 auto;text-align: center;}
#sub_visual .h1_container h1{font-size:64px; line-height: 180%;font-weight: 400;letter-spacing: 4px;font-weight: bold;color: #fff;font-family: "Kaisei Opti", serif;text-shadow: 2px 2px 20px #000;text-align: center;}
#sub_visual .h1_container .ttl{font-size:38px;line-height:100%;font-family: "Zen Old Mincho", serif;font-weight: normal;color:#fff;text-shadow: 2px 2px 20px #000;text-align: center;letter-spacing: 0.1em;text-transform: uppercase;}


/* sub_contents 
----------------------------------- */
#sub_contents {font-size: 16px; position: relative;padding:5px 0px;background-attachment: fixed; }
#sub_contents p{font-size: 20px;}
#sub_contents .section{max-width: 1140px; margin: 50px auto 50px;position: relative;padding: 0px 0 40px;width: 94%;}
#sub_contents .scroll_section{width: 100%;margin: 50px auto 50px;position: relative;}
#sub_contents h2{ text-align: center;font-size:46px;  position: relative; line-height: 180%; padding:15px auto 10px;margin-top: 0px; color: #f6fd1c; margin-bottom: 50px;font-weight: bold;text-shadow: 3px 3px 5px #000000;z-index: 1;font-family: "Kaisei Opti", serif;}

#sub_contents h2:before{position: absolute;content: "";background: url(../images/sub_h2_icon.png) no-repeat center center / cover ;width:30%;height:70px;left: 50%;transform: translate(-50%, -50%);-webkit-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);z-index: -1;top: 40px;}

#sub_contents h3{ text-align: center;font-size:30px; margin-bottom:15px; position: relative; font-weight: bold;      margin-top: 40px;}
#sub_contents .mb20{margin-bottom: 20px;}
#sub_contents .mb30{margin-bottom: 30px;}
#sub_contents .mb50{margin-bottom: 50px;}
#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: 180%;font-size: 22px;}
#sub_contents .txt_cen em{font-style: normal !important;display: inline;}
#sub_contents .sub_bg{background:#000;z-index:0;}
#sub_contents .sub_bg_02{background:url(../images/sub_bg_02.png) repeat top;width: 100%; padding: 10px 0px;z-index: 0;  z-index: 0;position: relative;background-size: cover;height: auto;}

/* bread_crumb_list
----------------------------------- */
#sub_contents .bread_crumb_list{font-size: 12px; position: relative; margin-bottom: 50px;color:#fff;max-width: 100%;align-items: left;}
#sub_contents .bread_crumb{text-align:left;padding:30px 15px 30px 30px;margin-right: auto;background: #00000099;position:relative;top: -130px;left: 0;}
#sub_contents .bread_crumb li { display:inline;}
#sub_contents .bread_crumb li:after {content : 'ー';padding-left:10px; font-family: inherit;}
#sub_contents .bread_crumb li:last-child:after { content : '';}
#sub_contents .bread_crumb li a {text-decoration:underline; color:#fff;}
#sub_contents .bread_crumb li a:hover{ text-decoration:none;}
#sub_contents .bread_crumb li.current { font-weight: normal;}
#sub_contents .bread_crumb p{margin-bottom:0px; font-size:15px;color:#fff;}
#sub_contents .bread_crumb p a{color:#fff;}

/* btn
----------------------------------- */
#sub_contents .anker__items{column-gap: 2%;row-gap: 10px;}
#sub_contents .anker__item{width: 23%;height: 50px;position: relative;display: block;}
#sub_contents .anker__item.w50{width: 45%;}
#sub_contents .anker__item a:hover{opacity:.8;}
#sub_contents .anker__item a {display: block;text-align: center;line-height: 50px;background: #d81416;color: #fff;}
#sub_contents .anker__item a:hover {background: #fff;color:#d81416;}
#sub_contents .anker__item p {line-height: 50px;}
#sub_contents .anker__item em{  display:block;font-style:normal;font-weight:normal;}
#sub_contents .anker__item.menu_btn{width:100%;}
#link01,#link02,#link03,#link04,#link05,#link06,#link07,#link08,#link09,#link10,#link11,#link12{margin-top:-150px;padding-top:150px;}

/* tab
----------------------------------- */
#sub_contents .tab_area {gap:30px;}
#sub_contents .tab {position: relative;width:22%; padding: 20px 0;font-size: 15px;text-align: center;cursor: pointer;transition: all ease 0.3s;border-bottom:2px solid #d81416;}
#sub_contents .tab p {font-size: 20px;display: inline;font-weight: bold;}
#sub_contents .tab.is-active::after {position: absolute;bottom: -11px;left: 50%;transform: translateX(-50%);width: 20px;height: 10px;background-color: #d81416;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 .concept_area {background:url(../images/sub_con_img01.jpg) repeat center center; background-size:cover; padding:40px;background-attachment: fixed; height:auto;text-align: center;position: relative;}
#sub_contents .concept_area.company {background:url(../images/sub_com_img01.jpg) repeat center center; background-size:cover; padding:40px;background-attachment: fixed; height:auto;text-align: center;position: relative;}
#sub_contents .concept_area .box {background:rgba(0, 0, 0, 0.8);padding:40px;}
#sub_contents .concept_area .box p.ttl {font-size:26px;font-family: "Kaisei Opti", serif;font-weight: bold;color: #d81416;text-shadow: 1px 1px 0px #330201;font-size: 36px;}
#sub_contents .concept_area .box p {font-size:22px;line-height:2;}
#sub_contents .sub_illust_02  { width: calc((60/375)*100%); right: 0;top: 95%;transform: translate(0, -50%);}
#sub_contents .sub_illust_08  { width: calc((60/375)*100%); right: 0;top: 92%;transform: translate(0, -50%);}

/* company
----------------------------------- */
#sub_contents .sub_history_wrapper {position: relative; padding-left: 30px; display: block;border-left: 1px solid #d81416;}
#sub_contents .sub_history {position: relative; padding: 30px 0 30px;}

#sub_contents .sub_history::before  { content: '...'; position: absolute; left: -20px; top: 0px; color: #d81416; font-size: 50px;}
#sub_contents .sub_history::after { content: ''; position: absolute; left: -35px; top: 30%; width: 12px; height: 12px; background-color: #d81416; border-radius: 50%; border: 2px solid #d81416; box-shadow: 0 0 0 2px #d81416;  }
#sub_contents .sub_history p.year  {margin: 0 0 5px 0;font-family: "Kaisei Opti", serif;font-size: 24px;color: #f6fd1c;padding-left: 30px;}
#sub_contents .sub_history p.small  {margin: 0;padding-left: 30px;}

/* recruit
----------------------------------- */
#sub_contents .staff_sub_img {position: relative;width: 100%;margin-top: 20px;}
#sub_contents .staff_sub_img img {width: 23%;object-fit: cover;border: solid 2px #fff;display: inline-block;height: 180px;}

/* commitment
----------------------------------- */
#sub_contents .comm_textBox.menu{background-color: #31010150;padding: 40px 60px;} 
#sub_contents .comm_textBox.staff{background-color: #ffffff10;padding: 40px 60px;} 
#sub_contents .comm_textBox .img{width: 48%;margin-bottom: 0px;position:relative;} 
#sub_contents .comm_textBox .img img{border: solid 3px #fff;box-shadow: 3px 3px 5px #000;} 
#sub_contents .comm_textBox .textarea {width: 48%;margin-bottom:20px;}
#sub_contents .comm_textBox .textarea p {line-height:2;}
#sub_contents .comm_textBox .textarea p.staff_name {border-bottom: solid 2px #fff;margin-bottom: 10px;font-weight: bold;font-size: 26px;font-family: "Kaisei Opti", serif;color: #f6fd1c;text-shadow: 3px 3px 5px #000;} 
#sub_contents .comm_textBox .textarea p.staff_number {color:#fff;font-size: 22px;margin-bottom: 5px;text-transform: capitalize;font-family: "Kaisei Opti", serif;} 
#sub_contents .comm_textBox .textarea p.menu_name {border-bottom: none;margin-bottom: 5px;font-weight: bold;font-size: 34px;font-family: "Kaisei Opti", serif;color: #f6fd1c;text-shadow: 3px 3px 5px #000;line-height: 1.6em;} 
#sub_contents .comm_textBox .textarea p.menu_price {color:#d81416;font-size: 28px;margin-bottom: 10px;text-transform: capitalize;font-family: "Kaisei Opti", serif;background-color: #fff;padding: 2px 15px;text-shadow: 1px 1px 0px #000;width: fit-content;font-weight: bold;line-height: 1.5em;} 
#sub_contents .comm_textBox .textarea p.menu_name strong{display:block; font-size:26px;}

#sub_contents .comm_textBox .textarea p.job {border-bottom: solid 2px #f6fd1c;margin-bottom: 10px;font-weight: bold;font-size: 26px;font-family: "Kaisei Opti", serif;color: #fff;text-shadow: 0px 0px 0px #000;} 
#sub_contents .comm_textBox .textarea p.recruit {border-bottom: solid 2px #fff;margin-bottom: 10px;font-weight: bold;font-size: 22px;font-family: "Kaisei Opti", serif;color: #f6fd1c;text-shadow: 1px 1px 0px #000;} 

#sub_contents .sub_illust_left{text-align:left;width:100%;padding:0px;max-width: 100%;position: relative;}
#sub_contents .sub_illust_left img{text-align:left;width:20%;padding:0px;left: 0;max-width: 1280px;}
#sub_contents .sub_illust_right{text-align:right;width:100%;padding:0px;max-width: 100%;position: relative;}
#sub_contents .sub_illust_right img{text-align:right;width:20%;padding:0px;right: 0;max-width: 1280px;}

/* access
----------------------------------- */
#sub_contents .tbl_info .tr{width:100%;background:#fff;margin-bottom:15px; box-shadow:1px 1px 10px #00000020;}
#sub_contents .tbl_info .tr:nth-child(2n){background:#fff;}
#sub_contents .tbl_info .th{width:24%;padding:15px 40px;background:#d81416;color:#fff; text-align:center;font-weight: bold; letter-spacing: 0.1em;line-height: 2em;}
#sub_contents .tbl_info .td{width:75%;padding:15px 15px;color: #000;line-height: 2em;}
#sub_contents .sub_map{width:100%;}

#sub_contents .center_img {width: 100%;text-align: center;}
#sub_contents .center_img img{margin: 0 auto;width: 30%;object-fit: cover;}
}