@charset "UTF-8";
/* CSS Document */
@media screen and (max-width: 1240px) {
  
  .page-service-inner{
    margin-left: 5%;
  }
  #operation.page-service-box .cmnt-area{
    padding-right: 5%;
  }
  #offer.page-service-box{
    padding-right: 0%;
  }
  #offer.page-service-box .page-service-inner{
    padding-right: 5%
  }
  #offer.page-service-box .cmnt-area{
    padding-right: 0;
  }
  
}
@media screen and (max-width: 1040px) {
  .header__nav{
    padding: 2em 20px;
  }
  nav > ul > li > *{
    padding-left: 1em;
    padding-right: 1em;
  }
  #header-hum{
    right: 20px
  }
  .head-btn{
    margin-right: 70px;
  }
  .header__nav h1{
    width: 20%;
  }
  .key-wrap
  ,.sec-title{
    padding-left: 5%;
  }
  #key h2{
    font-size: 6.5rem;
  }
  
  .sec-title span{
    font-size: 6rem;
  }
  ul.foot-nav{
    width: 65%;
  }
  
  /*Under*/
  .page-service-box::before{
    height: calc(100% - 5em);
  }
  
  .page-service-box h3{
    font-size: 2.44em;
  }
  .page-service-inner .thumb-area{
    width: 48%;
  }
  .page-service-box .cmnt-area{
    padding-top: 7em;
  }
  #operation.page-service-box .cmnt-area{
    padding-right: 0;
  }
  #operation.page-service-box .page-service-inner .thumb-area{
    right: 0;
  }
}
/*TABLET*/
@media screen and (max-width: 768px) {
  .sp_br{ display: inherit;}
	.pc_br{ display: none;}
  
  .header__nav h1{
    width: 30%;
  }
  header nav
  ,.head-btn{
    display: none;
    opacity: 0;
  }
  .slide-menu__inner{
    padding-top: 150px;
  }
  #slide-menu-block #g-nav{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  #slide-menu-block #g-nav li + li{
    margin-top: 3em;
  }
  #slide-menu-block #g-nav li{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    -ms-align-items: center;
    align-items: center;
  }
  .slide-link__main{
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    -o-flex-direction: row;
    flex-direction: row;
    -ms-align-items: center;
    align-items: center;
    justify-content: center;
  }
  .slide-link__main::after{
    left: 50%;
    transform: translateX(-50%);
  }
  .slide-link__main span.jp{
    margin-left: 2em;
  }
  .slide-link__under{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    -ms-align-items: center;
    align-items: center;
  }
  .slide-menu__bottom{
    margin-top: 100px;
  }
  .sec-mission-box h3{
    font-size: 3.2rem;
  }
  #key{
    aspect-ratio:auto;
  }
  #key
  ,.swiper-container{
    height: 80vh;
  }
  /*#key .key-txt::before{
    content: "";
    width: 100vw;
    height: calc(100% + 40px);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background: rgba(255,255,255,.65);
    z-index: -1;
  }*/
  
  .swiper-slide .slide-img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: right center;
  }

  .swiper-slide .slide-img img{
    display: none;
  }
  .swiper-slide-0 p.slide-img{
    background-image: url("../../imgs/corporate/key.jpg");
  }
  .swiper-slide-1 p.slide-img{
    background-image: url("../../imgs/corporate/key02.jpg");
  }
  .swiper-slide-2 p.slide-img{
    background-image: url("../../imgs/corporate/key03.jpg");
  }
  
  .sec-contact-blc{
    padding-bottom: 200px;
  }
  .sec-contact-box > div{
    padding-left: 0;
    padding-right: 0;
  }
  .dial-area .inbox p{
    font-size: .92em;
    padding-left: 0;
  }
  .dial-area a{
    font-size: 2em;
  }
  .mail-area a{
    font-size: 1em;
  }
  .dial-area .icn{
    width: 2.66em;
    margin-right: 5px;
  }
  .dial-area .inbox{
    max-width: calc(100% - 3.2em);
  }
  .mail-area a{
    padding-left: 1em;
    padding-right: 2.5em;
  }
  .sec-foot-area{
    padding-top: 50px;
    padding-bottom: 50px;
    padding-left: 5%;
    padding-right: 5%;
  }
  .sec-foot-inner .logo-area{
    width: 100%;
  }
  .sec-foot-inner .logo-area{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    -ms-align-items: flex-end;
    align-items: flex-end;
  }
  ul.foot-nav{
    display: none;
  }
  .sec-foot-area .tree{
    top: -204px
  }
  
  /*UNDER
  =========================================================*/
  
  .page-title span{
    font-size: 5rem;
  }
  .page-service-box::before {
    height: calc(100% - 25em);
}
  .page-service-inner{
    -ms-align-items: center;
    align-items: center;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .page-service-box h3{
    position: relative;
  }
  .page-service-box h3
  ,.page-service-inner .cmnt-area{
    width: 100%;
  }
  .page-service-inner div.thumb-area{
    position: absolute;
    top: 7em;
    left: 50%;
    width: 80%;
    transform: translateX(-50%);
  }
  .page-service-inner .cmnt-area{
    margin-top: 65vw;
  }
  #offer.page-service-box h3{
    width: 100%;
    left: 0;
  }
  
  /*Mission
  ==========================*/
  .under-contents.page-mission-blc{
    margin-top: 100px;
  }
  .mission-top-box h4{
    font-size: 1.333em;
  }
  .mission-top-cat .thumb-area{
    width: 25%;
    position: absolute;
    top: -55%;
    right: 0;
  }
  .mission-message-cmnt{
    padding-left: 8vw;
    padding-right: 5vw;
  }
  .mission-top-cat .cmnt-area{
    padding-right: 0;
    width: 100%;
  }
  .mission-message-cmnt .inbox{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    padding-right: 8vw;
    padding-left: 0;
    padding-bottom: 50px;
  }
  .mission-message-cmnt .inbox .cmnt-area{
    width: 100%;
    max-width: 100%;
    padding-right: 0;
  }
  .mission-message-cmnt .inbox .sign-area{
    margin-top: 30px;
  }
  .mission-office::before{
    padding-top: 40%;
  }
  .mission-office p{
    top: 0;
  }
  
  /*Company
  ==========================*/
  
  .company-map-box{
    margin-top: 100px;
  }
  
  /*Recruit
  ==========================*/
  
  .under-contents.page-recruit-blc{
    margin-top: 80px;
  }
  .recruit-inner{
    padding-top: 80px;
  }
  .recruit-inner .top-text{
    text-align: justify;
  }
  .recruit__cat ul.link-list li{
    width: auto;
    min-width: 8em;
  }
  .forture__cat .in-box{
    width: calc((100% / 3) - 15px)
  }
  .forture__cat .icn-area > div p.text{
    font-size: 1.125em;
  }
  .recruit-inner > div + div,
  .recruit-inner > div:first-of-type{
    margin-top: 60px;
  }
  
  /*Contact
  ==========================*/
  .contact-head{
    width: 100%;
  }
  .contact-head .dial-area{
    justify-content: center;
  }
  .contact-in .step-area{
    width: 20%;
  }
  .step-cat .step{
    font-size: 1.44em;
  }
  .contact-in .form-area{
    width: 76%;
  }

}

/*spphone*/
@media screen and (max-width: 480px) {
  html{font-size: 100%;}
  body{ font-size: 3.8vw;}
  .sp_br{ display: inherit;}
	.pc_br{ display: none;}
  
  .load-txt{
    font-size: 1.71em;
  }
  .header__nav h1{
    width: 40%;
  }
  #header-hum{
    top: 20px;
    margin-right: 0;
  }
  #header-hum.open{
    top: 10px;
    right: 10px;
  }
  header.is-show .header__nav{
    padding-bottom: 15px;
  }

  .key-wrap, .sec-title{
    padding: 0 20px;
  }
  #key h2{
    font-size: 3.4em;
  }
  #key .key-txt{
    font-size: 1.125em;
  }
  
  .slide-menu__inner{
    padding: 80px 20px 30vw;
  }
  .slide-menu__inner p.logo{
    width: 40%;
    top: 20px;
    left: 20px;
  }
  .slide-link__main span.en{
    font-size: 2.24em;
  }
  .slide-link__under a{
    font-size: 1.125em;
  }
  .slide-link__main{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .slide-link__main span.jp{
    margin-left: 0;
  }
  .slide-menu__bottom{
    margin-top: 15vw;
  }
  /*Contents
  =========================*/
  #content.top-page{
    padding-top: 20vw;
  }
  .sec-title span{
    font-size: 2.6em;
  }
  #dot{
    margin-top: 20vw;
  }
  
  h3{
    font-size: 1.71em;
  }
  /*===section============*/
  .sec-mission-blc{
    padding-bottom: 15vw;
  }
  .sec-mission-box h3{
    font-size: 2.4em;
  }
  .sec-mission-box .top-txt{
    text-align: justify;
  }
  
  .sec-service-blc{
    padding-top: 15vw;
    padding-bottom: 15vw;
    background-size: auto 75%;
    background-position: center bottom;
  }
  .sec-service-box{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    margin-top: 15vw;
  }
  .sec-service-box > div{
    width: 100%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
  }
  .sec-service-box > div:nth-child(2){
    margin-top: 10vw;
  }
  .service-cat .thumb{
    width: 40%;
  }
  .service-cat .cmnt{
    width: 60%;
    padding-left: 20px;
    margin-top: 0;
  }
  .sec-notice-blc {
    padding-top: 20vw;
  }
  .sec-notice-box{
    padding-top: 20vw;
    padding-bottom: 20vw;
  }
  
  .sec-contact-blc{
    padding-bottom: 40vw;
  }
  .sec-foot-area .tree{
    width: 30vw;
  }
  .sec-contact-box{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .sec-contact-box > div{
    width: 100%;
  }
  .sec-contact-box > div + div{
    padding-top: 0;
  }
  .sec-foot-area{
    padding-left: 20px;
    padding-right: 20px;
  }
  .sec-foot-inner{
    padding: 0;
    
  }
  .sec-foot-area .tree{
    top: calc((-48px + -30vw))
  }
  .sec-foot-inner .logo-area{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    -ms-align-items: flex-start;
    align-items: flex-start;
  }
  .sec-foot-inner .logo-area p.logo{
    font-size: 2em;
  }
  .sec-foot-inner .logo-area .data{
    margin-top: 8vw;
  }
  
  /*UNDER
  =======================================*/
  
  main.under #content{
    padding-top: 10vw;
  }
  .page-title span{
    font-size: 3em;
  }
  .page-title span{
    padding-right: .25em;
  }
  .under-head{
    padding-left: 20px;
  }
  .under-head .title-jp{
    margin-top: 5vw;
    font-size: 1.24em;
  }
  .under-contents{
    margin-top: 15vw;
  }
  main.under .sec-contact-blc{
    margin-top: 20vw;
  }
  
  /*Service===========*/
  
  .page-service-box{
    padding-bottom: 15vw;
  }
  .page-service-box h3{
    font-size:  2em;
  }
  .page-service-box::before {
    height: calc(100% - 15em);
  }
  .page-service-inner{
    margin-left: 0;
    padding-right: 20px;
    padding-left: 20px;
  }
  .page-service-inner div.thumb-area{
    top: 5em;
  }
  .page-service-inner .cmnt-area{
    margin-top: 75vw;
    padding-top: 0;
  }
  
  .service-bnr{
    margin-top: 8vw;
  }
  .page-service-inner .cmnt-area .intext{
    padding-top: 8vw;
  }
  #offer.page-service-box{
    margin-top: 15vw;
  }

  /*foot*/
  .sec-foot-area .tree{
    left: -10px;
  }
  
  /*misson
  ==========================*/
  
  .under-contents.page-mission-blc{
    margin-top: 15vw;
  }
  .mission-top-box{
    background: url("../../imgs/corporate/clr_logo.svg") no-repeat 95% bottom/35%;
  }
  .mission-top-cat .thumb-area{
    display: none;
  }
  .mission-message-box{
    padding-top: 25vw;
    padding-bottom: 15vw;
  }
  .mission-message-cmnt .inbox .sign-area .ruby{
    font-size: .88em;
  }
  .mission-message-cmnt .inbox .sign-area .name{
    font-size: 1.66em;
  }
  .mission-office::before{
    padding-top: 60%;
  }
  .mission-office p{
    top: -15%;
    height: 110%;
    background: url("../../imgs/corporate/office.jpg") no-repeat 55% center/cover;
  }
  .mission-office p img{
    display: none;
  }

  /*company
  ==========================*/
  .under-contents.page-company-blc
  ,.company-map-box{
    margin-top: 15vw;
  }
  .company-map-box h3{
    margin-left: 20px;
  }
  .company-data-box dl > div{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .company-data-box dl dt
  ,.company-data-box dl dd{
    width: 100%;
  }
  .company-data-box dl dd{
    margin-top: 15px;
  }
  .company-map-box .map-area{
    margin-top: 10vw;
  }
  .page-mission-blc .btn-wrap-about{
    margin-top: 20vw;
  }
  
  /*recruit
  ==========================*/
  .recruit-key::after{
    padding-top: 45%;
  }
  .recruit-key p{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 150%;
    top: -30%;
  }
  .recruit-key p img{
    display: none;
  }
  .recruit-key.staff p{
   background-image: url("../../imgs/corporate/key_recruit_staff.jpg");
    background-position: right center;
  }
  .recruit-key.fortune p{
   background-image: url("../../imgs/corporate/key_recruit_fortune.jpg");
    background-position: left bottom;
  }
  .under-contents.page-recruit-blc{
    margin-top: 15vw;
  }
  .recruit-inner{
    transform: translateY(-8vw);
    padding-left: 10px;
    padding-right: 10px;
  }
  .recruit-inner h3{
    font-size: 1.71em;
  }
  .page-recruit-box.bk_gry{
    padding-top: 20vw;
  }
  .page-recruit-box.bk_gry::before{
    height: 20vw;
  }
  .recruit-inner
  ,.page-recruit-box.bk_gry .recruit-inner{
    padding-top: 10vw;
    padding-bottom: 8vw;
  }
  .recruit-inner .top-text
  , .recruit-inner .top-text.cnt{
    text-align: justify;
  }
  .recruit-inner > div:first-of-type
  ,.recruit-inner > div + div{
    margin-top: 10vw;
  }
  .recruit__cat{
    padding:0;
  }
  .recruit__cat ul.box-list
  ,.recruit__cat ul.link-list{
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .recruit__cat ul.box-list li{
    width: calc((100% / 2) - 20px);
  }
  .recruit__cat ul.box-list li:nth-child(1)
  ,.recruit__cat ul.box-list li:nth-child(2){
    margin-right: auto;
  }
  .recruit__cat ul.box-list li:nth-child(n + 3){
    margin-left: auto;
  }
  .recruit__cat ul.link-list li{
    width: calc((100% / 2) - 5px);
  }
   .recruit__cat ul.box-list li:nth-child(n+3)
  ,.recruit__cat ul.link-list li:nth-child(n+3){
    margin-top: 10px;
  }
  .recruit__cat h4.flr_title{
    padding-bottom: 1em;
  }
  .recruit__cat .clm_cmnt{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .recruit__cat .clm_cmnt .in-box{
    width: 100%;
  }
  /*feature*/
  .forture__cat {
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    padding: 0;
  }
  .forture__cat > div + div{
    margin-top: 8vw;
    
  }
  .forture__cat .in-box{
    width: 100%;
    padding: 20px;
    border: 1px solid #dedddd;
    border-radius: 10px;
  }
  .forture__cat .icn-area{
    border: none;
    border-radius: 0;
  }
  .forture__cat .icn-area::before{
    content: none;
    
  }
  .forture__cat .icn-area > div{
    position: relative;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    -o-flex-direction: row;
    flex-direction: row;
  }
  .forture__cat .icn-area > div p.icn{
    width: 25%;
  }
  .forture__cat .icn-area > div p.text{
    text-align: left;
    padding-left: 1em;
    font-weight: 700;
  }
  .forture__cat .icn-area > div p.text br{
    display: none;
  }
  .forture__cat .cmnt{
    margin-top: 1em;
  }
  .forture__about{
    padding: 0 10px;
  }
  .recruit-inner .forture__about h3{
    font-size: 1.44em;
  }
  .forture__about ul.check-list{
    margin-top: 8vw;
  }
  .page-recruit-box.bk_gry .recruit-inner h3 br.sp_br{
    display: none;
  }
  
  /*Contact
  ==========================*/
  
  .contact-head .dial-area{
    padding: 20px;
  }
  .contact-head .dial-area .icn{
    display: none;
  }
  .contact-head .dial-area .cmnt{
    margin-left: 0;
  }
  .contact-head .dial-area .cmnt p.intitle{
    font-size: 1em;
  }
  .contact-head .dial-area .cmnt .num{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    margin-top: 5px;
  }
  .contact-head .dial-area a{
    padding-left: 1.125em;
  }
  .contact-head .dial-area a::before{
    content: "";
    width: 1em;
    height: 1em;
    background: url("../../imgs/corporate/icn_dial.svg") no-repeat center/100%;
    display: block;
    position: absolute;
    left: 0;
    top: 45%;
    transform: translateY(-50%);
  }
  
  .contact-body{
    margin-top: 10vw;
    padding-bottom: 40vw;
  }
  .contact-in{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .contact-in .step-area
  ,.contact-in .form-area{
    width: 100%;
  }
  .contact-in .step-area{
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    -o-flex-direction: row;
    flex-direction: row;
    justify-content: space-between;
  }
  .step-cat{
    width: calc((100%/3) - 15px);
  }
  .step-cat .text{
    font-size: .88em;
  }
  .step-cat .step{
    padding-top: .45em;
    padding-bottom: .5em;
    font-size: 1.125em;
  }
  .contact-in .step-area > div + div{
    margin-top: 0;
    margin-left: 15px;
  }
  .contact-in .step-area > div + div::before{
    border-color: transparent transparent transparent #e9eaea;
    border-width: 8px 0 8px 10px;
    left: -10%;
    top: 55%;
    transform: translateX(-50%);
  }
  .contact-in .form-area{
    margin-top: 8vw;
  }
  .form-list > div{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  dl.form-list dt
  ,dl.form-list dd{
    width: 100%;
  }
  dl.form-list dt p{
    font-weight: 700;
  }
  dl.form-list dd{
    margin-top: 10px;
  }
  dl.form-list > div + div{
    margin-top: 5vw;
  }
  .input.radio{
    padding-top: 0;
  }
  .input.radio{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .input.radio > div{
  }
  
  .agree{
    margin-top: 10vw;
  }
  
  /*thanks*/
  .thanks-text{
    text-align: justify;
  }
  .thanks-area .btn-wrap-about{
    margin-top: 8vw;
  }
  
  /*エントリーフォーム
  ===========================================*/
  
  .input.radio.entry-radio{
    margin-top: 0;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    -o-flex-direction: row;
    flex-direction: row;
  }
  .input.radio.entry-radio > div{
    width: 50%;
    margin: 0;
    font-size: 1em;
  }
  .input.radio.entry-radio > div + div{
    margin: 0;
  }
  .input.radio.entry-radio > div + div,
  .input.radio.entry-radio > div:nth-child(n+3){
    margin-top: .5em;
  }
  
  /*エントリー確認*/
  .table-bordered tr{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .table-bordered th
  ,.table-bordered td{
    width: 100%;
  }
  .table-bordered th{
    font-weight: 700;
  }
  .table-bordered td{
    margin-top: .5em;
  }

}
  
 

