@charset "UTF-8";
/*============================================================================================
      Header
=============================================================================================*/
/*    Navigation
=====================================================*/
.w_Header{
      position: fixed;
      padding-top: 30px;
      z-index: 999999;
      background-color: #fff;
      transition: box-shadow .2s,padding .2s;
}
.w_Header::before{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 30px;
      background-color: #F4A700;
}
.header_cont{
      padding: 20px;
      transition: padding .2s;
}
.header_logo{
      padding: 10px;
      width: 180px;
}
.header_nav{
      padding-right: 180px;
      transition: padding .2s;
}
.header_nav_lst_itm_home_img{
      width: 40px;
}
.header_nav_lst_itm_home_en{
      font-size: 1.2rem;
      font-weight: bold;
      color: #F18D09;
      padding-top: 10px;
      line-height: 1;
}
.header_nav_lst_itm + .header_nav_lst_itm{
      margin-left: 30px;
      margin-bottom: 2px;
}
.header_nav_lst_itm_inr{
      position: relative;
}
.header_nav_lst_itm_inr::before{
      content: "";
      display: block;
      position: absolute;
      width: 100%;
      height: 1px;
      bottom: 0;
      left: 0;
      background-color: #000;
}
.header_nav_lst_itm_home_inr{
      transition: opacity .2s;
}
.header_nav_lst_itm_home_inr:hover{
      opacity: .6;
}
.header_nav_lst_itm_home_inr::before{
      display: none;
}
.header_nav_lst_itm_en{
      font-size: 1rem;
      font-weight: bold;
      color: #F18D09;
}
.header_nav_lst_itm_ja{
      font-weight: bold;
      padding-bottom: 5px;
      transition: color .2s;
}
.header_nav_lst_itm_inr:hover .header_nav_lst_itm_ja{
      color: #F18D09;
}
.header_recruit{
      position: absolute;
      right: 0;
      top: 30px;
      width: 120px;
      z-index: 1;
      transition: width .2s;
}
.header_nav_lst_itm_sp{
      display: none;
}
.w_Header.js_fixed{
      box-shadow: 0 3px 6px #00000016;
}
.w_Header.js_fixed .header_cont{
      padding: 15px;
}
.w_Header.js_fixed .header_recruit{
      width: 80px;
      z-index: 1;
}
.w_Header.js_fixed .header_nav {
      padding-right: 140px;
  }
@media (max-width: 1180px){
      .header_logo {
            padding: 0px;
            width: 160px;
      }
      .header_recruit{
            display: none;
      }
      .header_nav_cont{
            position: absolute;
            top: 100%;
            left: 0;
            width: 100%;
            height: 120vh;
            padding-bottom: 20vh;
            background-color: #fff;
      }
      .header_nav{
            padding-right: 0 !important;
            padding: 0 20px !important;
            padding-top: 40px !important;
      }
      .header_nav_lst_itm_home{
            display: none;
      }
      .header_nav_lst_itm_sp{
            display: block;
      }
      .header_nav_lst_itm{
            margin-left: 0 !important;
            width: 48.5%;
            margin-right: 3%;
      }
      .header_nav_lst_itm:nth-child(2n+1){
            margin-right: 0;
      }
      .header_nav_lst_itm:nth-child(n+4){
            margin-top: 20px;
      }
      .header_nav_lst_itm_inr{
            display: block;
            padding-top: 20px;
      }
      .header_nav_lst_itm_inr::before {
            content: "";
            display: block;
            position: absolute;
            width: 100%;
            height: 1px;
            bottom: initial;
            top: 0;
            left: 0;
            background-color: #000;
      }
}
@media (max-width: 576px){
      .w_Header {
            padding-top: 20px;
      }
      .w_Header::before{
            height: 20px;
            background-color: #F4A700;
      }
      .header_logo {
            width: 140px;
      }
}

/*============================================================================================
      Footer
=============================================================================================*/
.w_Footer{
      padding-top: 80px;
}
.footer_logo_cont{
      padding-top: 13px;
}
.footer_logo{
      width: 160px;
}
.footer_sns{
      margin-top: 30px;
      width: 30px;
      transition: opacity .2s;
}
.footer_sns:hover{
      opacity: .6;
}
.footer_btn_lst{
      width: calc(100% - 160px);
      padding-left: 10px;
      margin-left: auto;
}
.footer_btn_lst_itm{
      margin-right: 20px;
}
.footer_btn_lst_itm:nth-child(2n){
      margin-right: 0;
}
.footer_cont_div{
      width: 30%;
      margin-right: 5%;
}
.footer_cont_div:nth-child(3n){
      margin-right: 0;
}
.footer_cont_dt{
      font-size: 1.8rem;
      font-weight: bold;
}
.footer_cont_dd{
      position: relative;
      padding-top: 20px;
      margin-top: 20px;
}
.footer_cont_dd::before{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #000000;
      z-index: 1;
}
.footer_cont_dd::after{
      content: "";
      display: block;
      position: absolute;
      height: 3px;
      width: 50px;
      top: -1px;
      left: 0;
      background-color: #F18D09;
      z-index: 2;
}
.footer_map{
      height: 210px;
}
.footer_nav_lst_itm{
      width: 48.5%;
      margin-right: 3%;
}
.footer_nav_lst_itm:nth-child(2n){
      margin-right: 0;
}
.footer_nav_lst_itm:nth-child(n+3){
      margin-top: 20px;
}
.footer_nav_lst_itm_inr{
      position: relative;
      display: block;
}
.footer_nav_lst_itm_inr::before{
      content: "";
      display: block;
      position: absolute;
      width: 100%;
      height: 1px;
      bottom: 0;
      left: 0;
      background-color: #000;
}
.footer_nav_lst_itm_home_inr::before{
      display: none;
}
.footer_nav_lst_itm_en{
      font-size: 1rem;
      font-weight: bold;
      color: #F18D09;
}
.footer_nav_lst_itm_ja{
      font-weight: bold;
      padding-bottom: 5px;
}
.footer_copy{
      padding: 8px;
      margin-top: 80px;
      background-color: #F18D09;
      color: #fff;
      font-size: 1.2rem;
}
@media (max-width: 1080px){
      .footer_nav_lst_itm {
            width: 100%;
            margin-right: 0%;
      }
      .footer_nav_lst_itm:nth-child(n+2){
            margin-top: 20px;
      }
      .footer_nav_lst_itm_inr{
            display: block;
      }
}
@media (max-width: 896px){
      .footer_logo_cont{
            padding-top: 60px;
            order: 2;
      }
      .footer_sns {
            margin-top: 20px;
      }
      .footer_btn_lst{
            width: 100%;
            padding-left: 0;
            order: 1;
      }
      .footer_btn_lst_itm{
            width: 48.5%;
            margin-right: 3%;
            max-width: 100%;
      }
      .footer_btn_lst_itm:nth-child(2n){
            margin-right: 0;
      }
}
@media (max-width: 576px){
      .footer_btn_lst_itm{
            width: 100%;
            margin-right: 0%;
            max-width: 100%;
      }
      .footer_btn_lst_itm:nth-child(2n){
            margin-right: 0;
            margin-top: 20px;
      }
      .footer_cont_div {
            width: 100%;
            margin-right: 0%;
      }
      .footer_cont_div + div{
            margin-top: 50px;
      }
      .footer_nav_lst_itm {
            width: 48.5%;
            margin-right: 3%;
      }
      .footer_nav_lst_itm:nth-child(n+2){
            margin-top: 0px;
      }
      .footer_nav_lst_itm:nth-child(n+3){
            margin-top: 20px;
      }
      .footer_nav_lst_itm_inr{
            display: block;
      }
}
/*============================================================================================
      Contents
=============================================================================================*/
/*    MV
=====================================================*/
.top_mv_sec{
      position: relative;
      height: 100vh;
      padding-top: 130px;
}
.top_mv_cont{
      height: 100%;
}
.top_mv_ttl{
      font-size: 5rem;
      font-weight: bold;
      color: #F18D09;
      width: 45%;
      /* padding-left: 8%; */
      padding-left: 5%;
}
.top_mv_lst{
      width: 55%;
      height: 100%;
}
.top_mv_lst_itm{
      margin-top: -2px;
}
.slick-list{
      height: 100% !important;
}
.top_mv_scroll{
      position: absolute;
      bottom: 80px;
      left: -60px;
      font-size: 1.2rem;
      font-weight: bold;
      width: 185px;
      transform: rotate(90deg);
      letter-spacing: 1px;
}
.top_mv_scroll::before{
      content: "";
      display: block;
      position: absolute;
      height: 1px;
      width: 115px;
      background-color: #000;
      right: 0;
      top: 0;
      bottom: 0;
      margin: auto;
      z-index: 1;
}
.top_mv_scroll::after{
      content: "";
      display: block;
      position: absolute;
      height: 17px;
      width: 20px;
      top: 0;
      bottom: 0;
      right: 100px;
      margin: auto;
      background: url(../img/common/scroll_tri.svg) no-repeat;
      background-size: contain;
      background-position: center;
      transform: rotate(-90deg);
      z-index: 2;
      animation-name: head;
      animation-duration:2s;
      animation-iteration-count:infinite;
}
@keyframes head {
      0% {
            right: 100px;
      }
      100% {
            right: 0px;
      }
      }
@media (max-width: 896px){
      .top_mv_sec{
            max-height: 800px;
            min-height: 750px;
            padding-top: 110px;
      }
      .top_mv_cont{
            position: relative;
      }
      .top_mv_ttl {
            order: 2;
            padding-left: 0;
            padding-right: 20px;
            text-align: right;
            width: 100%;
            margin: auto;
      }
      .top_mv_lst {
            width: 100%;
            height: 100%;
            max-height: 400px;
            margin-left: auto;
            order:1;
      }
}
@media (max-width: 576px){
      .top_mv_ttl {
            font-size: 4rem;
      }
}

/*    About
=====================================================*/
.top_about_sec{
      position: relative;
      overflow: hidden;
      padding-top: 215px;
}
.top_about_sec::before{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      transform: translateY(-47%);
      height: 900px;
      width: 100%;
      max-width: 820px;
      background: url(../img/common/big_tri.svg) no-repeat;
      background-size: contain;
      background-position: center left;
      z-index: -1;
}
.top_about_left_cont{
      position: relative;
      width: 47.5%;
}
.top_about_ttl_en{
      font-size: 10rem;
      font-weight: bold;
      position: absolute;
      transform: translate(50%,50%) rotate(90deg);
      top: 0;
      right: 0;
      color: #F18D09;
      letter-spacing: 10px;
      white-space: nowrap;
      text-shadow: 0 3px 6px #00000020;
      z-index: 3;
}
.top_about_left_img{
      height: 100%;
}
.top_about_left_img img{
      height: 100%;
      object-fit: cover;
}
.top_about_right_cont{
      width: 43.5%;
      margin-left: 9%;
}
.top_about_ttl{
      font-size: 4rem;
      font-weight: bold;
}
.top_about_right_img{
      padding-top: 40px;
      margin-top: auto;
}
.top_about_lst{
      position: relative;
      margin-top: -40px;
      padding: 0 40px;
      padding-bottom: 100px;
}
.top_about_lst::before{
      content: "";
      display: block;
      position: absolute;
      bottom: 0px;
      left: 0;
      width: 100%;
      height: 750px;
      background-color: #F4A700;
      z-index: -1;
}
.top_about_lst_itm{
      position: relative;
      width: 32%;
      background-color: #fff;
      border: 1px solid #000;
      border-radius: 10px;
      border-top-left-radius: 0;
      padding: 25px;
      margin-right: 2%;
}
.top_about_lst_itm:nth-child(3n){
      margin-right: 0;
}
.top_about_lst_tag{
      width: 40px;
      position: absolute;
      top: -1px;
      left: -1px;
}
.top_about_lst_num{
      position: absolute;
      top: 0;
      transform: translate(65px,-50%);
      font-size: 6rem;
      font-weight: bold;
      color: #F18D09;
}
.top_about_lst_img{
      padding: 40px;
      padding-right: 0px;
      padding-bottom: 0;
}
.top_about_lst_img img{
      border-radius: 10px;
}
.top_about_lst_txt{
      font-size: 2rem;
      font-weight: bold;
      padding-top: 40px;
}
.top_minato_mv{
      width: 100%;
      max-width: 1050px;
      margin: auto;
      margin-top: 100px;
}
.top_minato_txt{
      font-size: 2rem;
      font-weight: bold;
      text-align: center;
}
@media (max-width: 896px){
      .top_about_left_cont{
            width: 96%;
      }
      .top_about_right_cont {
            width: 100%;
            margin-left: 0%;
      }
      .top_about_ttl_en {
            top: 0%;
            right: 2%;
      }
      .top_about_left_img{
            max-width: 96%;
            padding-bottom: 80px;
      }
      .top_about_right_img{
            position: absolute;
            bottom: 0;
            right: -4%;
            width: 60%;
            max-width: 400px;
      }
      .top_about_ttl{
            font-size: 3rem;
            font-weight: bold;
            padding-top: 60px;
      }
      .top_about_lst{
            position: relative;
            margin-top: 80px;
            padding: 0px;
            padding-bottom: 80px;
      }
      .top_about_lst::before{
            content: "";
            display: block;
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 120vw;
            height: 400px;
            background-color: #F4A700;
            z-index: -1;
            margin-right: calc(50% - 50vw);
            margin-left: calc(50% - 50vw);
      }
      .top_about_lst_itm{
            position: relative;
            width: 100%;
            max-width: 400px;
            margin-right: 0%;
      }
      .top_about_lst_itm:nth-child(n+2){
            margin-top: 60px;
      }
      .top_about_lst_num {
            right: 20px;
            transform: translate(0px,-50%);
            font-size: 5rem;
      }
      .top_minato_mv{
            margin-top: 80px;
      }
}
@media (max-width: 576px){
      .top_about_sec{
            padding-top: 140px;
      }
      .top_about_ttl_en {
            font-size: 7rem;
      }
      .top_about_lst{
            margin-top: 60px;
      }
      .top_minato_mv{
            max-width: 400px;
      }
      .top_minato_txt {
            padding-top: 20px;
            border-top: 2px solid #707070;
            max-width: 320px;
            margin: auto;
            margin-top: 20px;
      }
}


/*    Strength
=====================================================*/
.top_st_sec{
      position: relative;
      border-top: 2px solid #000;
      border-bottom: 2px solid #000;
      background-color: #FFFAF0;
      overflow: hidden;
}
.top_st_sec::before{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      transform: translateY(-47%);
      height: 900px;
      width: 100%;
      max-width: 820px;
      background: url(../img/common/big_tri.svg) no-repeat;
      background-size: contain;
      background-position: center left;
      z-index: 0;
}
.top_st_sec::after{
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      transform: translateY(75%);
      height: 900px;
      width: 100%;
      max-width: 820px;
      background: url(../img/common/big_tri_wh.svg) no-repeat;
      background-size: contain;
      background-position: center left;
      z-index: 0;
}
.top_st_cont{
      position: relative;
      z-index: 1;
}
.top_st_name_dt{
      font-weight: bold;
}
.top_st_name_dd{
      margin-left: 60px;
      padding-left: 60px;
      border-left: 1px solid #000;
      font-weight: 500;
}
.top_st_main_dl{
      position: relative;
      width: 45%;
      max-width: 480px;
      padding-bottom: 70px;
}
.top_st_main_dl::before{
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto;
      height: 40px;
      width: 1px;
      border-left: 1px dotted #000;
}
.top_strength_mv{
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      margin: auto;
      width: 58%;
      max-width: 780px;
      height: 960px;
}
.top_strength_mv img{
      height: 100%;
      object-fit: contain;
}
@media (max-width: 896px){
}
@media (max-width: 576px){
      .top_st_sec::after{
            transform: translateY(48%);
      }
      .top_strength_mv{
            position: absolute;
            top: 250px;
            bottom: initial;
            right: 0;
            margin: auto;
            width: 96%;
            max-width: 100%;
            height: 960px;
      }
      .top_strength_mv img{
            height: 100%;
            object-fit: contain;
            object-position: top;
      }
      .top_st_name_dl{
            padding-top: 120vw;
      }
      .top_st_main_dl {
            position: relative;
            width: 100%;
            max-width: 100%;
            padding-bottom: 70px;
      }
}

/*    Greeting
=====================================================*/
.g_greeting_txtarea{
      width: 47.5%;
}
.g_greeting_img{
      width: 47.5%;
      margin-left: 5%;
}
@media (max-width: 896px){

}
@media (max-width: 576px){
      .g_greeting_txtarea{
            width: 100%;
      }
      .g_greeting_img{
            width: 100%;
            margin-left: 0%;
      }
}

/*    Recruit
=====================================================*/
.top_recruit_sec{
      overflow: hidden;
      padding-top: 250px;
}
.top_recruit_mv_cont{
      position: relative;
}
.top_recruit_mv_cont::before{
      content: "";
      display: block;
      position: absolute;
      left: 0;
      bottom: -100px;
      height: 300px;
      width: 260px;
      background: url(../img/top/recruit_tri_left.svg) no-repeat;
      background-size: contain;
      z-index: 2;
}
.top_recruit_mv{
      position: relative;
      width: 100vw;
      margin-right: calc(50% - 50vw);
      margin-left: calc(50% - 50vw);
}
.top_recruit_mv::before{
      content: "";
      display: block;
      position: absolute;
      bottom: -1px;
      left: 0;
      width: 100%;
      height: 100px;
      background: url(../img/top/recruit_huti.svg) no-repeat;
      background-size: contain;
      background-position: bottom;
      z-index: 1;
}
.top_recruit_mv::after{
      content: "";
      display: block;
      position: absolute;
      bottom: -60px;
      left: 0;
      right: 0;
      margin: auto;
      width: 135px;
      height: 145px;
      background: url(../img/top/recruit_tri_more.svg) no-repeat;
      background-size: contain;
      background-position: bottom;
      z-index: 1;
}
.top_recruit_mv img{
      max-height: 670px;
      object-fit: cover;
      object-position: top left;
}
.top_recruit_ttl_cont{
      position: absolute;
      top: -60px;
      right: 100px;
      width: 250px;
      height: 550px;
      background-color: #F18D0940;
      z-index: 2;
}
.top_recruit_ttl_cont::before{
      content: "";
      display: block;
      position: absolute;
      top: -90px;
      right: -100px;
      height: 300px;
      width: 260px;
      background: url(../img/top/recruit_tri_right.svg) no-repeat;
      background-size: contain;
      background-position: top right;
}
.top_recruit_ttl_en{
      color: #fff;
      font-size: 8rem;
      font-weight: bold;
      transform: rotate(90deg);
      position: absolute;
      bottom: 195px;
      right: -195px;
      margin: auto;
      letter-spacing: 10px;
      text-shadow: 0 3px 6px #00000020;
      z-index: 2;
}
.top_recruit_ttl_ja{
      color: #fff;
      font-weight: bold;
      position: absolute;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      letter-spacing: 2px;
      bottom: 80px;
      right: 30px;
      z-index: 2;
}
.top_recruit_ttl_txtarea{
      position: absolute;
      flex-direction:row-reverse;
      left: -10px;
      bottom: -30px;
}
.top_recruit_ttl_txt{
      display: inline-block;
      font-size: 1.8rem;
      font-weight: bold;
      background-color: #fff;
      padding: 15px 5px;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      letter-spacing: 3px;
      box-shadow: 0 3px 6px #00000020;
}
.top_recruit_ttl_txt:nth-child(n+2){
      margin-right: 10px;
}
.top_recruit_lst{
      margin-top: 170px;
      padding-bottom: 5px;
}
.top_recruit_lst_itm{
      width: 47.5%;
      border: 1px solid #000;
      border-radius: 10px;
      border-top-left-radius: 0;
      margin-right: 5%;
}
.top_recruit_lst_itm:nth-child(2n){
      margin-right: 0;
}
.top_recruit_lst_itm:nth-child(n+3){
      margin-top: 80px;
}
.top_recruit_lst_itm_inr{
      display: block;
      padding: 25px;
      padding-left: 65px;
}
.top_recruit_lst_tag{
      position: absolute;
      top: -1px;
      left: -1px;
      width: 40px;
}
.top_recruit_lst_num{
      position: absolute;
      left: 65px;
      top: -70px;
      font-size: 8rem;
      color: #F18D09;
      font-weight: bold;
}
.top_recruit_lst_img{
      margin-top: 50px;
      border-radius: 10px;
      overflow: hidden;
}
.top_recruit_lst_img img{
      /* border-radius: 10px; */
}
.top_recruit_lst_txt{
      font-size: 2.6rem;
      font-weight: bold;
      padding-top: 20px;
}
.top_recruit_lst_itm_detail{
      position: relative;
      padding-right: 20px;
      padding-bottom: 2px;
      border-bottom: 1px solid #000;
      width: 50px;
      margin-left: auto;
}
.top_recruit_lst_itm_detail::after {
      content: "";
      display: block;
      position: absolute;
	width: 6px;
	height: 6px;
	top: 0;
	bottom: 2px;
	right: 0;
      margin: auto;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
@media (max-width: 991px){}
@media (max-width: 896px){
      .top_recruit_sec {
            padding-top: 220px;
      }
      .top_recruit_mv::after{
            bottom: -50px;
            left: 0;
            right: 0;
            margin: auto;
            width: 100px;
            height: 115px;
            z-index: 1;
      }
      .top_recruit_mv_cont::before {
            left: 0;
            bottom: -80px;
            height: 200px;
            width: 160px;
      }
      .top_recruit_ttl_cont{
            position: absolute;
            top: -60px;
            right: 7vw;
            width: 150px;
            height: 400px;
            background-color: #F18D0940;
            z-index: 2;
      }
      .top_recruit_ttl_cont::before {
            top: -90px;
            right: -60px;
            height: 200px;
            width: 160px;
      }
      .top_recruit_ttl_en{
            font-size: 6rem;
            bottom: 145px;
            right: -160px;
            margin: auto;
            letter-spacing: 10px;
      }
      .top_recruit_ttl_ja{
            color: #fff;
            font-weight: bold;
            position: absolute;
            -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
            letter-spacing: 2px;
            bottom: 50px;
            right: 20px;
            z-index: 2;
      }
      .top_recruit_ttl_txtarea{
            position: absolute;
            flex-direction:row-reverse;
            left: -10px;
            bottom: -30px;
      }
      .top_recruit_ttl_txt{
            font-size: 1.5rem;
            padding: 10px 3px;
      }
      .top_recruit_ttl_txt:nth-child(n+2){
            margin-right: 5px;
      }
      .top_recruit_lst_itm:nth-child(n+3) {
            margin-top: 60px;
      }
      .top_recruit_lst_tag {
            width: 25px;
      }
      .top_recruit_lst_num{
            top: -55px;
            font-size: 6rem;
      }
      .top_recruit_lst_img{
            margin-top: 40px;
      }
      .top_recruit_lst_txt{
            font-size: 2.2rem;
      }
}
@media (max-width: 576px){
      .top_recruit_sec {
            padding-top: 140px;
        }
      .top_recruit_mv img{
      }
      .top_recruit_mv::after{
            bottom: -30px;
            left: 0;
            right: 0;
            margin: auto;
            width: 60px;
            height: 95px;
            z-index: 1;
      }
      .top_recruit_mv_cont::before {
            left: 0;
            bottom: -55px;
            height: 120px;
            width: 80px;
      }
      .top_recruit_ttl_cont{
            position: absolute;
            top: -40px;
            right: 2vw;
            width: 110px;
            height: 300px;
            background-color: #F18D0940;
            z-index: 2;
      }
      .top_recruit_ttl_cont::before {
            top: -20px;
            right: -20px;
            height: 120px;
            width: 80px;
      }
      .top_recruit_ttl_en{
            font-size: 4rem;
            bottom: 125px;
            right: -120px;
            margin: auto;
            letter-spacing: 10px;
      }
      .top_recruit_ttl_ja{
            color: #fff;
            font-weight: bold;
            position: absolute;
            -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
            letter-spacing: 2px;
            bottom: 50px;
            right: 10px;
            z-index: 2;
            font-size: 1.2rem;
      }
      .top_recruit_ttl_txtarea{
            position: absolute;
            flex-direction:row-reverse;
            left: -10px;
            bottom: -30px;
      }
      .top_recruit_ttl_txt{
            font-size: 1.5rem;
            padding: 10px 0px;
      }
      .top_recruit_ttl_txt:nth-child(n+2){
            margin-right: 4px;
      }
      .top_recruit_lst {
            margin-top: 150px;
      }
      .top_recruit_lst_itm{
            width: 100%;
            border: 1px solid #000;
            border-radius: 10px;
            margin-right: 0%;
      }
      .top_recruit_lst_itm_inr {
            display: block;
            padding: 20px;
            padding-left: 45px;
      }
      .top_recruit_lst_itm:nth-child(2n){
            margin-right: 0;
      }
      .top_recruit_lst_itm:nth-child(n+2){
            margin-top: 60px;
      }
      .top_recruit_lst_img {
            margin-top: 30px;
      }
      .top_recruit_lst_num {
            left: initial;
            right: 25px;
      }
      .top_recruit_lst_tag {
            width: 6.4vw;
      }
}

/*    SNS
=====================================================*/
.top_sns_lst_cont{
      width: 100%;
      /* max-width: 800px; */
      margin: auto;
      background-color: #FFFAF0;
}
.top_sns_lst{
      /* max-width: 450px; */
      padding: 60px 30px;
      margin: auto;
}
.top_sns_lst_itm{
      height: 32%;
      width: 32%;
      margin-right: 2%;
      background-color: #fff;
}
.top_sns_lst_itm:nth-child(3n){
      margin-right: 0;
}
.top_sns_lst_itm:nth-child(n+4){
      margin-top: 2%;
}

/*    トップ共通
=====================================================*/
.top_g_ttl_en{
      font-size: 10rem;
      font-weight: bold;
      letter-spacing: 5px;
      text-shadow: 0 3px 6px #00000020;
}
.top_g_ttl_ja{
      font-size: 4rem;
      font-weight: bold;
}
@media (max-width: 896px){
      .top_g_ttl_en{
            font-size: 7rem;
      }
      .top_g_ttl_ja{
            font-size: 3rem;
            font-weight: bold;
      }
}
@media (max-width: 576px){
      .top_g_ttl_en{
            font-size: 5.5rem;
      }
      .top_g_ttl_ja{
            font-size: 2.6rem;
            font-weight: bold;
      }
}

/*============================================================================================
      下層ページ
===========================================================================================*/
/*    ABOUT
=====================================================*/
.about_lst_itm + .about_lst_itm{
      margin-top: 100px;
}
.about_top_img{
      position: relative;
      width: 100%;
      max-width: 410px;
      margin: auto;
      z-index: 1;
}
.about_lst_num{
      color: #F18D09;
      font-weight: bold;
      letter-spacing: 1px;
}
.about_lst_txt{
      font-size: 1.8rem;
}
.about_txtbox{
      padding: 20px;
      background-color: #FEFCEE;
      border: 1px solid #F18D09;
}

@media (max-width: 896px){
      .about_lst_txtarea{
            order: 1;
            margin-top: 0 !important;
      }
      .about_lst_img_cont{
            order: 2;
            margin-top: 40px !important;
      }
      .about_lst_img img{
            max-height: 400px;
            object-fit: cover;
      }
      .about_lst_itm + .about_lst_itm{
            margin-top: 80px;
      }
}
@media (max-width: 576px){
      .about_lst_img img{
            max-height: 300px;
            object-fit: cover;
      }
}

/*    
=====================================================*/
.strength_txt_sec + .strength_txt_sec{
      margin-top: 130px;
}
.strength_name{
      font-size: 2.6rem;
      font-weight: bold;
      padding-top: 20px;
}
.strength_txt_cont{
      padding: 120px;
      background-color: #FEFCEE;
      border: 2px solid #F18D09;
      width: 100%;
      max-width: 900px;
      margin: auto;
      margin-top: 100px;
}
.strength_txt_ttl{
      position: relative;
      font-size: 2.6rem;
      z-index: 1;
      font-weight: bold;
}
.strength_txt_ttl::before{
      content: "";
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      margin: auto;
      transform: translateX(-40%);
      height: 175px;
      width: 150px;
      background: url(../img/strength/strength_tri_left.svg) no-repeat;
      background-size: contain;
      background-position: center;
      z-index: -1;
}
.strength_txt_sec:nth-child(even) .strength_txt_ttl::before{
      left: initial;
      right: 0;
      top: 0;
      bottom: 0;
      margin: auto;
      transform: translateX(40%);
      background: url(../img/strength/strength_tri_right.svg) no-repeat;
      background-size: contain;
      background-position: center;
      z-index: -1;
}
@media (max-width: 896px){
      .strength_txt_sec + .strength_txt_sec{
            margin-top: 80px;
      }
      .strength_name{
            font-size: 2.2rem;
      }
      .strength_txt_cont{
            padding: 60px;
            margin-top: 80px;
      }
      .strength_txt_ttl{
            font-size: 2.2rem;
      }
      .strength_txt_ttl::before{
            height: 135px;
            width: 110px;
      }
}
@media (max-width: 576px){
      .strength_txt_cont{
            padding: 20px;
            padding-top: 60px;
            padding-bottom: 60px;
      }
      .strength_txt_ttl{
            font-size: 2rem;
            margin-left: 30px;
      }
      .strength_txt_sec:nth-child(even) .strength_txt_ttl{
            margin-left: 0;
            margin-right: 30px;
      }
      .strength_txt_ttl::before{
            height: 105px;
            width: 80px;
      }
      .g_st_dd {
            padding-left: 25px;
            padding-top: 5px;
        }
}

/*    会社概要
=====================================================*/
.company_phi_lst{
      margin: auto;
      width: 100%;
      max-width: 800px;
      border: 1px solid #CCCCCC;
      border-top: 1px solid #F18D09;
      padding: 40px;
}
.company_phi_lst_itm{
      font-size: 2rem;
      font-weight: 500;
}

.company_about_lst_itm{
      width: 30%;
      margin-right: 5%;
}
.company_about_lst_itm:nth-child(3n){
      margin-right: 0;
}
.company_about_lst_itm:nth-child(n+4){
      margin-top: 5%;
}
.company_about_lst_ttl{
      position: relative;
      font-size: 2.2rem;
      font-weight: bold;
      padding-bottom: 15px;
      margin-bottom: 20px;
}
.company_about_lst_ttl::before{
      content: "";
      display: block;
      position: absolute;
      width: 100%;
      height: 1px;
      left: 0;
      bottom: 0;
      background-color:#CCCCCC;
}
.company_about_lst_ttl::after{
      content: "";
      display: block;
      position: absolute;
      width: 50px;
      height: 3px;
      left: 0;
      bottom: -1px;
      background-color:#F18D09;
      z-index: 1;
}
.company_about_lst_img img{
      height: 220px;
      object-fit: cover;
      object-position: center;
}
.company_office_ttl{
      position: relative;
      margin-top: 80px;
      padding-top: 30px;
      font-size: 2.6rem;
      font-weight: bold;
      text-align: center;
}
.company_office_ttl::before{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      margin: auto;
      height: 3px;
      width: 100px;
      background-color: #F18D09;
}
@media (max-width: 1024px){
      .company_about_lst_itm{
            width: 47.5%;
            margin-right: 5%;
      }
      .company_about_lst_itm:nth-child(3n){
            margin-right: 5%;
      }
      .company_about_lst_itm:nth-child(2n){
            margin-right: 0;
      }
      .company_about_lst_itm:nth-child(n+4){
            margin-top: 0%;
      }
      .company_about_lst_itm:nth-child(n+3){
            margin-top: 5%;
      }
}
@media (max-width: 896px){
      .company_phi_lst_itm{
            font-size: 1.8rem;
            font-weight: 500;
      }
      .company_about_lst_ttl{
            font-size: 1.8rem;
      }
}
@media (max-width: 576px){
      .company_phi_lst{
            padding: 20px;
      }
      .company_about_lst_itm{
            width: 100%;
            margin-right: 0%;
      }
      .company_about_lst_itm:nth-child(3n){
            margin-right: 0%;
      }
      .company_about_lst_itm:nth-child(2n){
            margin-right: 0;
      }
      .company_about_lst_itm:nth-child(n+2){
            margin-top: 5%;
      }
}

.recruit_about_txt{
      width: 100%;
      max-width: 800px;
      margin: auto;
      margin-top: 60px;
}
.recruit_feature_lst_itm + .recruit_feature_lst_itm{
      margin-top: 60px;
}
.recruit_works_lst_itm{
      position: relative;
}
.recruit_works_lst_itm:nth-child(2){
      margin-top: 40px;
}
.recruit_works_lst_ttl_en{
      position: absolute;
      transform: rotate(90deg);
      font-size: 5rem;
      font-weight: bold;
      color: #F18D09;
      top:65px;
      left: -60px;
}
.recruit_works_lst_img img{
      height: 360px;
      object-fit: cover;
}
.recruit_works_lst_ttl_ja{
      font-size: 2.2rem;
      font-weight: bold;
      padding-top: 30px;
}
.recruit_works_lst_txt{
      padding-top: 20px;
}
@media (max-width: 896px){
      .recruit_works_lst_ttl_en{
            font-size: 4rem;
            font-weight: bold;
            color: #F18D09;
            top:50px;
            left: -60px;
      }
      .recruit_works_lst_itm:nth-child(2){
            margin-top: 60px;
      }
}
@media (max-width: 576px){
      .recruit_works_lst_img img{
            height: 220px;
            object-fit: cover;
      }
}
.recruit_interview_mv_cont_outer{
      position: relative;
}
.recruit_interview_mv_cont_outer::before{
      content: "";
      display: block;
      position: absolute;
      width: 360px;
      height: 550px;
      background-color: #F18D09;
      left: calc(-4vw + 1px);
      top: -80px;
}
.recruit_interview_mv_cont_outer::after{
      content: "";
      display: block;
      position: absolute;
      width: 260px;
      height: 300px;
      background: url(../img/common/recruit_tri_right.png) no-repeat;
      background-size: contain;
      right: -4vw;
      bottom: 0;
      transform: translate(-20px,40%);
}
.recruit_interview_cont{
      background-color: #FEFCEE;
}
.recruit_interview_mv_cont{
      position: relative;
      width: 100%;
      max-width: 1000px;
      padding-left: 60px;
      margin-left: auto;
      margin-right: -4vw;
}
.recruit_interview_ttl_en{
      position: absolute;
      transform: rotate(90deg) ;
      top: 43%;
      left: -130px;
      font-size: 5rem;
      font-weight: bold;
      letter-spacing: 5px;
      color: #fff;
      z-index: 1;
      text-shadow: 0 3px 6px #00000020;
}
.recruit_interview_mv img{
      height: 450px;
      object-fit: cover;
}
.recruit_interview_dl{
      width: 100%;
      max-width: 800px;
      background-color: #fff;
      padding: 60px 50px;
      margin: auto;
      margin-top: 80px;
}
.recruit_interview_div + .recruit_interview_div{
      margin-top: 50px;
}
.recruit_interview_dt{
      position: relative;
      font-size: 1.8rem;
      font-weight: bold;
      padding-left: 60px;
}
.recruit_interview_dt::before{
      content: "";
      display: block;
      position: absolute;
      top: 12px;
      left: 0;
      width: 40px;
      height: 2px;
      background-color: #F18D09;
}
.recruit_interview_dd{
      margin-top: 30px;
}
@media (max-width: 896px){
      .recruit_interview_mv_cont_outer::after{
            width: 180px;
            height: 220px;
      }
      .recruit_interview_mv_cont {
            padding-left: 20px;
      }
      .recruit_interview_ttl_en{
            left: -170px;
      }
}
@media (max-width: 576px){
      .recruit_interview_mv_cont_outer::before{
            width: 40vw;
            height: 400px;
      }
      .recruit_interview_mv img{
            height: 300px;
            object-fit: cover;
      }
      .recruit_interview_mv_cont_outer::after{
            width: 100px;
            height: 120px;
      }
      .recruit_interview_ttl_en{
            font-size: 3rem;
            left: -110px;
      }
      .recruit_interview_dl{
            padding: 30px 20px;
      }
      .recruit_interview_dt{
            padding-left: 40px;
      }
      .recruit_interview_dt::before{
            width: 25px;
      }
}
.recruit_greeting_ttl_area{
      border-top: 2px solid #F18D09;
      border-bottom: 2px solid #F18D09;
      background-color: #fff;
}
.recruit_greeting_ttl_area::before{
      display: none;
}

.page-id-16{
      position: relative;
      z-index: -1;
}
.page-id-14{
      position: relative;
      z-index: -1;
}
.recruit_cct_sec{
      position: relative;
      z-index: 99;
}
.contact_cont{
      position: relative;
      z-index: 99;
      /* background-color: #fff;
      max-width: 980px; */
}
.contact_lead_txt{
      font-size: 2rem;
      font-weight: bold;
}

/*    ContactForm7カスタマイズ
=====================================================*/
.contact_txt_req{
      display: inline-block;
      padding: 0px 8px;
      border-radius: 5px;
      background-color: #EB6100;
      margin-right: 5px;
      color: #fff;
}

table.CF7_table{
	width:100%;
	margin:0 auto;
      max-width: 800px;
	/* border: 3px solid #e5e5e5; */
}

table.CF7_table tr{
	border-top: 1px dotted #99999990;
}
table.CF7_table tr:last-child{
	border-bottom: 1px dotted #99999990;
}
.contact_txtarea{
      vertical-align:top !important;
}

::-webkit-full-page-media, :future, :root .contact_txtarea{
      padding-bottom: 0;
      position: relative;
      top: 0px;
}

table.CF7_table th{
      /* display: flex; */
      width: 270px;
      height: 100%;
      align-items: center;
      background-color: initial;
      padding: 20px 0;
      vertical-align: top;
      font-weight: bold;
      border: none !important;
      padding-right: 16px;
      vertical-align:middle;
}
table.CF7_table td{
      border: none;
      padding: 20px 0;
}

.single .entry-content table.CF7_table,
.page .entry-content table.CF7_table{
	display:table;
}

/*入力欄*/
.CF7_table input, .CF7_table textarea {
	/* border: 1px solid #d8d8d8; */
}

.CF7_table ::placeholder {
	color:#797979;
}

.CF7_table th p{
      width: 100%;
      display: flex;
      justify-content: space-between;
}
/*「必須」文字*/
.CF7_req{
	font-size:.9em;
	padding: 3px 8px;
	background: #EB6100;/*オレンジ*/
	color: #fff;
	margin-left:1em;
      border-radius: 5px;
}

/*「任意」文字*/
.CF7_unreq{
	font-size:.9em;
	padding: 3px 8px;
	background: #bdbdbd;/*グレー*/
	color: #fff;
	border-radius: 3px;
	margin-left:1em;
      border-radius: 5px;
}

.wpcf7-list-item{
      margin-left: 0;
      margin-right: 15px;
}
.has-free-text{
      display: block;
      margin-right: 0;
}
.contact_policy_td{
      border-bottom: none;
}
.contact_policy_tr{
      border-bottom: none !important;
}
.contact_policy_td p{
      text-align: center;
}
/* タイトル列 */
@media screen and (min-width: 768px){
	.CF7_table th{
	width:30%;/*横幅*/
	background-color:#ebedf5;/*ブルーグレー*/
	}
}

/* レスポンシブ */
@media screen and (max-width: 896px){
      table.CF7_table{
            width:100%;
            margin:0 auto;
            max-width: 100%;
            /* border: 3px solid #e5e5e5; */
      }
}
@media screen and (max-width: 768px){
	table.CF7_table{
	width:100%;
	}
	.CF7_table tr, .CF7_table td, table.CF7_table th{
	display: block;
	width: 100%;
	line-height:2.5em;
	}
	.CF7_table th{
      display: block !important;
	background-color:#ebedf5;
      padding-bottom: 0 !important;
	}
      .contact_txtarea{
      position: static !important;
      top: 0 !important;
      }
      .CF7_table th p{
            width: auto;
            display: block;
      }
      table.CF7_table td{
            padding-top: 15px;
      }
}

/* 「送信する」ボタン */
.wpcf7 input.wpcf7-submit {
	width: 100%;
	max-width: 300px;
	position: relative;
	display: block;
	color: #fff;
	background-color: #F18D09;
	border: 2px solid #F18D09;
	border-radius: 37px;
	transition: color .2s, background .2s;
	-webkit-transition: color .2s, background .2s;
	box-shadow: 0 3px 6px #00000020;
}
.wpcf7 input.wpcf7-submit:hover{
      color: #F18D09;
      background-color: #fff;
}
.CF7_btn{
	text-align:center;
	margin-top:40px;
}
.CF7_btn{
	width: 100%;
	max-width: 300px;
	position: relative;
	display: block;
	color: #fff;
	background-color: #F18D09;
	border: 1px solid #F18D09;
	border-radius: 37px;
	transition: color .2s, background .2s;
	-webkit-transition: color .2s, background .2s;
	box-shadow: 0 3px 6px #00000020;
}
.CF7_btn input{
	width: 100%;
	height: 100%;
	padding: 22px 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-size: 1.5rem;
	font-weight: bold;
}


.CF7_btn.u_ic::after {
	width: 30px;
	height: 30px;
	top: 0;
	bottom: 0;
	right: 20px;
	background: url(../img/common/btn_arrow_wh.svg) no-repeat;
	background-size: contain;
	background-position: center;
}

.wpcf7-spinner{
      display: none;
	width:0;
	margin:0;
}
.screen-reader-response p{
      text-align: center;
      margin-bottom: 20px;
}
.screen-reader-response ul{
      display: none;
}
.wpcf7-response-output{
      text-align: center;
      margin-top: 20px;
}
.wpcf7-textarea{
      color: #222;
}
.wpcf7-not-valid-tip{
      display: block;
      color: #D90A27;
}

.wpcf7-response-output{
      /* position: fixed;
      width: 92vw;
      max-width: 1110px;
      top: 100px;
      left: 50%;
      transform: translateX(-50%);
      background-color: #fff;
      z-index: 999;
      border-width: 4px !important;
      box-shadow: 0 3px 6px #00000020;
      margin: 0 !important; */
}
@media screen and (max-width: 768px){
      /* .wpcf7-response-output{
            top: 100px;
      } */
}

#sbi_mod_error{
      display: none !important;
}