@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');

.disnone{display:none !important;}
/* main_visual
----------------------------------- */
#sub_visual {padding-top:100px; height:260px;position:relative;z-index:0;overflow: hidden;}
#sub_visual .img { height:200px; position: absolute; top: 0; width:100%;z-index:-1;text-align: center; }
#sub_visual .img img{width:100%;height:100%;object-fit: cover;object-position: center;margin: 0 auto;position:relative;text-align: center;}
#sub_visual .h1_container{max-width:94%;width:94%;margin:0 auto;padding-left:0;text-align: center;height: 100%;}
#sub_visual .h1_container h1{font-size:18px;line-height:100%;color:#ffc010;font-family:"Lato",sans-serif;font-weight:bold;text-transform:uppercase; margin-bottom:10px;}
#sub_visual .h1_container .ttl{font-size:30px;line-height:100%;color:#fff;text-align: center;font-weight: bold;}

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

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 16px; position: relative;z-index:0;background: #fffbe9}
#sub_contents section{max-width: 100%; margin: 50px auto 80px;position: relative;width:94%;}
#sub_contents .section{max-width: 100%; margin: 0px auto 80px;position: relative;padding-bottom: 50px;width:94%;}
#sub_contents .scroll_section { width: 100%;margin: 0px 0 50px;position: relative; }
#sub_contents .h2 {text-align: center;margin-bottom:80px; position: relative; line-height: 100%;}
#sub_contents .h2 .en{font-family: "Josefin Slab", serif;text-align: center;font-size:17px; margin-bottom:10px; position: relative; line-height: 100%; letter-spacing: 2px;font-weight:300;color: #e75219;font-weight: bold;text-transform: uppercase;}
#sub_contents .h2 .ja{font-size:26px;padding-top: 0px;line-height: 100%;font-weight: bold;letter-spacing: 0.5px;}
#sub_contents .h2::before{content:"●●●";position:absolute;bottom:-30px;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:6px;color:#e75219;}
#sub_contents h3{margin: 50px auto 30px; padding: 5px 15px;font-size: 18px;font-weight: bold;line-height: 1.4; border-left: 6px solid #e75219;}
#sub_contents .txt_cen{ text-align: center; font-size:20px; line-height: 200%;}
#sub_contents .txt_st{ text-align: center; line-height: 200%;}
#sub_contents .mb10{margin-bottom: 10px;}
#sub_contents .mb20{margin-bottom: 20px;}
#sub_contents .mb30{margin-bottom: 30px;}
#sub_contents .mb50{margin-bottom: 40px;}
#sub_contents .mb80{margin-bottom: 60px;}
#sub_contents .mb100{margin-bottom: 80px;}
#sub_contents .mb150{margin-bottom: 100px;}
#sub_contents .sub_bg{padding: 30px 0;z-index:0;background: url(../images/bg01.png); background-size:cover;}


/* btn
----------------------------------- */
#sub_contents .anker__items{column-gap: 10px;row-gap: 10px;}
#sub_contents .anker__item{width: 100%;position: relative;display: block;}
#sub_contents .anker__item.w50{width: 100%;position: relative;display: block;}
#sub_contents .anker__item a:hover{opacity:.8;}
#sub_contents .anker__item a {display: block;text-align: center;color: #1a1b18;border: solid 1px #1a1b18;text-transform: capitalize;padding: 0.5em;}
#sub_contents .anker__item a:hover {background-color: #eec0ca;}

/* reason
----------------------------------- */
#sub_contents .com_txtbox {margin:0px 0 40px 0;}
#sub_contents .com_txtbox .txt {width:100%;}
#sub_contents .com_txtbox .img {width:100%;margin-bottom:20px;}
#sub_contents .com_txtbox .txt .ttl{display:flex;align-items:center;margin-bottom:20px;}
#sub_contents .com_txtbox .txt .ttl .num{font-size:40px;font-family: "Lato", serif;font-weight:300;display:inline-block;padding-right:15px;border-right:1px solid #e75219;line-height:1;margin-right:15px;color: #e75219;font-weight: bold;}
#sub_contents .com_txtbox .txt .ttl .ja{font-size:18px;display:inline-block;font-weight: bold;}

/* flow
----------------------------------- */
#sub_contents .flow_g_area .ttl {border-bottom:1px solid #ffc010;margin-bottom:20px;}
#sub_contents .flow_g_area .num {font-size:20px;color:#ffc010;padding-right:10px;display:inline-block;font-weight: bold;font-family: "Lato", sans-serif;}
#sub_contents .flow_g_area .txt {font-size:18px;display:inline-block;font-weight:bold;}
#sub_contents .flow_g_area{background: url(../images/bg02.png);padding:30px;position:relative;margin-bottom:50px; border-radius:10px; background-size:cover;}
#sub_contents .flow_g_area:not(:last-child):before{display: block;content: "";width: 0;height: 0;width: 0;height: 0;border-top: 15px solid #e75219;border-right: 15px solid transparent;border-left: 15px solid transparent;position: absolute;bottom: -11%;right: 0;left: 0;margin: 0 auto;}
#sub_contents .flow_g_area .img{width: 100%;margin-bottom: 20px;position:relative;}
#sub_contents .flow_g_area .txt_area {width: 100%;}
#sub_contents .flow_g_area .txt_area p.lh {font-size:16px;}

#sub_contents .faq__item {padding: 20px; width:100%;margin:0 auto;background:#fff;border-radius:10px; box-shadow:3px 3px 10px #ddd}
#sub_contents .faq__item:not(:last-of-type) {margin-bottom: 20px;}
#sub_contents .faq__item .dt {padding: 15px 0px 25px 30px;position: relative;border-bottom:1px solid #e75219;color:#e75219;font-weight: bold;}
#sub_contents .faq__item .dd {padding: 15px 0px 15px 30px;position: relative;font-size: 15px;}
#sub_contents .faq__item .dt::before,#sub_contents .faq__item .dd::before {position: absolute;left: 0px;top: 8px;}
#sub_contents .faq__item .dt::before {content: "Q.";font-size: 22px;font-weight:400;color:#e75219;font-family: "Lato", sans-serif;}
#sub_contents .faq__item .dd::before {content: "A.";font-size: 22px;font-weight:400;font-family: "Lato", sans-serif;}

/* voice
----------------------------------- */
#sub_contents .sub__voice-list{display:grid;grid-template-columns:repeat(1,1fr);gap:20px;}
#sub_contents .sub__voice-list .li{padding:20px;background:#fff; box-shadow:3px 3px 10px #ddd; border-radius:10px;}
#sub_contents .sub__voice-list .li .img{width:30%;margin:0 auto 15px;}
#sub_contents .sub__voice-list .li .b{display:block;width:100%;font-family:"Lato",sans-serif;color:#e75219;font-weight:700;text-align:center;}
#sub_contents .sub__voice-list .li .b .span{font-weight:500;font-size:16px;display:block;color:#000;line-height:1.6;}

/* recruit
----------------------------------- */
#sub_contents .box_recruit_com{padding: 50px 20px;background:url("../images/sub_recruit_img01.png")repeat center center; background-attachment: fixed;}
#sub_contents .box_recruit_com .inner{background:rgba(255,255,255,.8);padding: 30px 20px; position: relative;text-align: center; margin:0 auto; width:100%; max-width:100%;}
#sub_contents .box_recruit_com .inner p.content{font-size:15px; font-weight: normal;line-height: 150%;display: inline-block;}
#sub_contents .box_recruit_com .inner p.ttl{font-size:26px; font-weight: normal;line-height: 200%;display: block;}

/* company
----------------------------------- */
#sub_contents .box_greeting_com{padding: 50px 20px;background:url("../images/sub_company_img01.png")repeat center center; background-attachment: fixed;}
#sub_contents .box_greeting_com .inner{background: #ffffffcc;padding: 30px 20px; position: relative;text-align: center; margin:0 auto; width:100%; max-width:100%;}
#sub_contents .box_greeting_com .inner p.content{font-size:15px; font-weight: normal;line-height: 230%;display: inline-block;}
#sub_contents .box_greeting_com .inner p.ttl{font-size:26px; font-weight: normal;line-height: 200%;display: block;}

#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: 25%;padding:20px 0;border-bottom: 1px solid #ddd;text-align: left;align-items: center;vertical-align: middle;}
#sub_contents .tbl_info .th p.ttl {line-height: 2em;font-weight: bold;font-size:15px;}
#sub_contents .tbl_info .td {width: 75%;text-align: left;padding: 20px 0 0 5px;border-bottom: 1px solid #ddd;}
#sub_contents .tbl_info .td p.info {font-weight: normal;display: inline-block;line-height: 2em;font-size:15px}
#sub_contents .tbl_info .td p.info.block {display: block;}
#sub_contents .tbl_info .td a {color: #e75219;border-bottom: solid 1px #e75219;font-weight: bold;}

/* works
----------------------------------- */
#sub_contents .webgene-blog:has(.categorylist){display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:0px;}
#sub_contents .webgene-item.categorylist{width:calc(50% - 5px);margin-right:0;margin-bottom:0px !important;}
#sub_contents .webgene-item.categorylist a{display:block;width:100%;text-align:center;padding:12px 8px;transition:.3s;color:#fff;background:#e75219;font-weight:bold;text-decoration:none;line-height:1.2;margin-bottom:0;border:1px solid transparent;font-size:13px; border-radius:100px;}
#sub_contents .webgene-item.categorylist a:hover{background:#fff;color:#e75219;border:1px solid #e75219;}
#sub_contents .cateList{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:0 auto;padding:0;}
#sub_contents .cateList section.webgene-blog{display:contents;}
#sub_contents .cateList .webgene-item{width:calc(50% - 5px);margin:0;padding:0;}
#sub_contents .cateList p{margin:0;padding:0;line-height:inherit;font-weight:bold;}
#sub_contents .cateList .webgene-item.categorylist,#sub_contents .cateList article.webgene-item.categorylist{flex:0 0 calc(50% - 5px);max-width:none;}

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

/* sub_contents
----------------------------------- */
#sub_contents {font-size: 16px; position: relative;z-index:0;background: #fffbe9}
#sub_contents section{max-width: 1280px; margin: 80px auto 80px;position: relative;width:94%;}
#sub_contents .section{max-width: 1280px; margin: 80px auto 80px;position: relative;padding-bottom: 50px;width:94%;}
#sub_contents .scroll_section { width: 100%;margin: 50px 0 50px;position: relative; }
#sub_contents .h2 {text-align: center;margin-bottom:80px; position: relative; line-height: 100%;}
#sub_contents .h2 .en{font-family: "Josefin Slab", serif;text-align: center;font-size:22px; margin-bottom:15px; position: relative; line-height: 100%; letter-spacing: 2px;font-weight:300;color: #e75219;font-weight: bold;text-transform: uppercase;}
#sub_contents .h2 .ja{font-size:34px;padding-top: 0px;line-height: 100%;font-weight: bold;letter-spacing: 0.5px;}
#sub_contents .h2::before{content:"●●●";position:absolute;bottom:-35px;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:6px;color:#e75219;}
#sub_contents h3{margin: 50px auto 30px; padding: 5px 15px;font-size: 22px;font-weight: bold;line-height: 1.4; border-left: 6px solid #e75219;}
#sub_contents .txt_cen{ text-align: center; font-size:20px; line-height: 200%;}
#sub_contents .txt_st{ text-align: center; line-height: 200%;}
#sub_contents .mb10{margin-bottom: 10px;}
#sub_contents .mb20{margin-bottom: 20px;}
#sub_contents .mb30{margin-bottom: 30px;}
#sub_contents .mb50{margin-bottom: 50px;}
#sub_contents .mb80{margin-bottom: 80px;}
#sub_contents .mb100{margin-bottom: 100px;}
#sub_contents .mb150{margin-bottom: 150px;}
#sub_contents .sub_bg{padding: 30px 0;z-index:0;background: url(../images/bg01.png); background-size:cover;}
#sub_contents img{border-radius: 10px;}

/* 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: 32%;position: relative;display: block;}
#sub_contents .anker__item.w50{width: 47%;position: relative;display: block;}
#sub_contents .anker__item a:hover{opacity:.8;}
#sub_contents .anker__item a {display: block;text-align: center;color: #1a1b18;border: solid 1px #1a1b18;text-transform: capitalize;padding: 0.5em;}
#sub_contents .anker__item a:hover {background-color: #eec0ca;}

/* reason
----------------------------------- */
#sub_contents .com_txtbox {margin:80px 0 50px 0;}
#sub_contents .com_txtbox .txt {width:55%;}
#sub_contents .com_txtbox .img {width:40%;}
#sub_contents .com_txtbox .txt .ttl{display:flex;align-items:center;margin-bottom:40px;}
#sub_contents .com_txtbox .txt .ttl .num{font-size:30px;font-family: "Lato", serif;font-weight:300;display:inline-block;padding-right:20px;border-right:1px solid #e75219;line-height:1;margin-right:20px;color: #e75219;font-weight: bold;}
#sub_contents .com_txtbox .txt .ttl .ja{font-size:20px;display:inline-block;font-weight: bold;}

/* flow
----------------------------------- */
#sub_contents .flow_g_area .ttl {border-bottom:1px solid #ffc010;margin-bottom:20px;}
#sub_contents .flow_g_area .num {font-size:20px;color:#ffc010;padding-right:10px;display:inline-block;font-weight: bold;font-family: "Lato", sans-serif;}
#sub_contents .flow_g_area .txt {font-size:18px;display:inline-block;font-weight:bold;}
#sub_contents .flow_g_area{background: url(../images/bg02.png);padding:30px;position:relative;margin-bottom:45px;}
#sub_contents .flow_g_area:not(:last-child):before{display: block;content: "";width: 0;height: 0;width: 0;height: 0;border-top: 15px solid #e75219;border-right: 15px solid transparent;border-left: 15px solid transparent;position: absolute;bottom: -11%;right: 0;left: 0;margin: 0 auto;}
#sub_contents .flow_g_area .img{width: 26%;margin-bottom: 20px;position:relative;}
#sub_contents .flow_g_area .txt_area {width: 70%;}
#sub_contents .flow_g_area .txt_area p.lh {font-size:16px;}

#sub_contents .faq__item {padding: 20px 30px; width:100%;margin:0 auto;background:#fff; border-radius:10px; box-shadow:3px 3px 10px #ddd;}
#sub_contents .faq__item:not(:last-of-type) {margin-bottom: 40px;}
#sub_contents .faq__item .dt {padding: 25px 20px 25px 60px;position: relative;border-bottom:1px solid #e75219;color:#e75219;font-weight: bold;}
#sub_contents .faq__item .dd {padding: 25px 20px 25px 60px;position: relative;font-size: 16px;}
#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: 30px;font-weight:400;color:#e75219;font-family: "Lato", sans-serif;}
#sub_contents .faq__item .dd::before {content: "A.";font-size: 30px;font-weight:400;font-family: "Lato", sans-serif;}

/* voice
----------------------------------- */
#sub_contents .sub__voice-list {display: grid;grid-template-columns: repeat(2,1fr);gap:30px;}
#sub_contents .sub__voice-list .li {padding:30px;}
#sub_contents .sub__voice-list .li .img {width: 15%;}
#sub_contents .sub__voice-list .li .b {display: block;width: 80%;font-family: "Lato", sans-serif;color:#e75219;font-weight: 700;}
#sub_contents .sub__voice-list .li .b .span {font-weight: 500;font-size: 20px;display: block;color:#000;}

/* recruit
----------------------------------- */
#sub_contents .box_recruit_com{padding: 30px 30px 30px;background:url("../images/sub_recruit_img01.png")repeat center center; background-attachment: fixed;}
#sub_contents .box_recruit_com .inner{padding: 30px 30px; position: relative;text-align: center; margin:0 auto; width:100%; max-width:100%;}
#sub_contents .box_recruit_com .inner p.content{font-size:16px; font-weight: normal;line-height: 230%;display: inline-block;}
#sub_contents .box_recruit_com .inner p.ttl{font-size:26px; font-weight: normal;line-height: 200%;display: block;}

/* company
----------------------------------- */
#sub_contents .box_greeting_com{padding: 30px 30px 30px;background:url("../images/sub_company_img01.png")repeat center center; background-attachment: fixed;}
#sub_contents .box_greeting_com .inner{background: #ffffffcc;padding: 30px 30px; position: relative;text-align: center; margin:0 auto; width:100%; max-width:100%;}
#sub_contents .box_greeting_com .inner p.content{font-size:16px; font-weight: normal;line-height: 230%;display: inline-block;}
#sub_contents .box_greeting_com .inner p.ttl{font-size:26px; font-weight: normal;line-height: 200%;display: block;}

#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;border-bottom: 1px solid #ddd;text-align: center;align-items: center;vertical-align: middle;}
#sub_contents .tbl_info .th p.ttl {line-height: 2em;font-weight: bold;font-size:16px;}
#sub_contents .tbl_info .td {width: 80%;text-align: left;padding: 20px;border-bottom: 1px solid #ddd;}
#sub_contents .tbl_info .td p.info {font-weight: normal;display: inline-block;line-height: 2em;font-size:16px;}
#sub_contents .tbl_info .td p.info.block {display: block;}
#sub_contents .tbl_info .td a {color: #e75219;border-bottom: solid 1px #e75219;font-weight: bold;}

/* works
----------------------------------- */
#sub_contents .webgene-blog:has(.categorylist){display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:50px;}
#sub_contents .webgene-item.categorylist{width:20%;margin-right:1%;margin-bottom:0;}
#sub_contents .webgene-item.categorylist a{display:block;width:auto;text-align:center;padding:14px 10px;transition:.3s;font-weight:bold;text-decoration:none;line-height:1.2;margin-bottom:40px;border:1px solid transparent;}
#sub_contents .cateList{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:0 auto;padding:0;}
#sub_contents .cateList section.webgene-blog{display:contents;}
#sub_contents .cateList .webgene-item{width:auto;margin:0;padding:0;}
#sub_contents .cateList p{margin:0;padding:0;line-height:inherit;font-weight:bold;}
#sub_contents .cateList .webgene-item.categorylist,#sub_contents .cateList article.webgene-item.categorylist{flex:1 1 auto;max-width:200px;}

}
@media screen and (min-width: 1024px) {
/* main_visual
----------------------------------- */
#sub_visual{padding-top:160px;height:400px;position:relative;z-index:0;overflow:hidden;}
#sub_visual .img { height:350px; position: absolute; top: 0; width:100%;z-index:-1;text-align: center;right: 0;}
#sub_visual .img img{width:100%;height:100%;object-fit: cover;object-position: center;margin: 0 auto;position:relative;text-align: center;}
#sub_visual .h1_container{max-width:1140px;width:94%;margin:0 auto;padding-left:0;position:relative;text-align: center;}
#sub_visual .h1_container h1{font-size:40px; line-height: 100%;;margin-top:10px;}
#sub_visual .h1_container .ttl{font-size:50px;line-height:100%;background-color: none;padding: 0;text-align: center;  margin-top: 20px;font-weight: bold;}

/* 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:20px 0 20px 0;max-width:1140px;margin:0 auto;margin-bottom:0px;}
#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%;}

/* reason
----------------------------------- */
#sub_contents .com_txtbox {margin:80px 0 50px 0;}
#sub_contents .com_txtbox .txt {width:45%;}
#sub_contents .com_txtbox .img {width:50%;}
#sub_contents .com_txtbox .txt .ttl{display:flex;align-items:center;margin-bottom:40px;}
#sub_contents .com_txtbox .txt .ttl .num{font-size:60px;font-family: "Lato", serif;font-weight:300;display:inline-block;padding-right:20px;border-right:1px solid #e75219;line-height:1;margin-right:20px;color: #e75219;font-weight: bold;}
#sub_contents .com_txtbox .txt .ttl .ja{font-size:20px;display:inline-block;font-weight: bold;}

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