@charset "UTF-8";
/*▽▽▽▽▽▽---------- max-width: 1280px ----------▽▽▽▽▽▽*/
@media only screen and (max-width: 1440px) {
  /*--------------------- .basic_table ---------------------*/
  .basic_table th, .basic_table td {
    font-size: 16px;
  }
}

/*▽▽▽▽▽▽---------- max-width: 1280px ----------▽▽▽▽▽▽*/
@media only screen and (max-width: 1280px) {
  /*--------------------- .header ---------------------*/
  
  /*--------------------- .header_logo ---------------------*/
  .header_logo {
    margin-left: 15px;
    width: 120px;
  }
  
  .gnav {
    margin-left: 30px;
  }
  .gnav_list a {
    font-size: 14px;
    padding: 0 5px;
  }
  
  /*--------------------- ..entry_btn ---------------------*/
  .entry_btn {
    width: 180px;
  }
  .entry_btn a {
    padding: 15px;
  }
  
  /*--------------------- .section ---------------------*/
  .section {
    padding: 60px 0;
  }
  
  /*--------------------- .inr ---------------------*/
  .inr_w {
    padding: 0 15px;
    width: 100%;
  }
}


/*▽▽▽▽▽▽---------- max-width: 1080px ----------▽▽▽▽▽▽*/
/*--------------------- .mv ---------------------*/
@media only screen and (max-width: 1080px) {
  /*--------------------- .inr ---------------------*/
  .inr {
    padding: 0 15px;
    width: 100%;
  }
}

/*▽▽▽▽▽▽---------- max-width: 960px ----------▽▽▽▽▽▽*/
@media only screen and (max-width: 960px) {
  /*--------------------- .header ---------------------*/
  .header {
    height: 64px;
  }
  
  /*--------------------- .gnav ---------------------*/
  .gnav, .gnav li, .entry_btn {
    display: none;
  }
  
  /*--------------------- .hamburger ---------------------*/
  .menu_trigger {
    display: inline-block;
    cursor: pointer;
    height: 25px;
    position: fixed;
    top: 10px;
    right: 10px;
    width: 25px;
    vertical-align: middle;
    z-index: 111;
  }
  .menu_trigger::before {
    background-color: #edc441;
    content: "";
    display: block;
    height: 64px;
    position: fixed;
    top: 0;
    right: 0;
    width: 64px;
  }
  .menu_trigger span {
    background-color: #fff;
    display: inline-block;
    position: absolute;
    right: 9px;
    height: 2px;
    transition: all .5s;
    width: 100%;
  }
  .menu_trigger span:nth-of-type(1) {
    top: 10px;
  }
  .menu_trigger.active span:nth-of-type(1) {
    transform: translateY(11px) rotate(-45deg);
  }
  .menu_trigger span:nth-of-type(2) {
    top: 21px;
    width: 70%;
  }
  .menu_trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  .menu_trigger span:nth-of-type(3) {
    top: 32px;
  }
  .menu_trigger.active span:nth-of-type(3) {
    transform: translateY(-11px) rotate(45deg);
  }

  /*--------------------- .ham_menu ---------------------*/
  .ham_menu {
    background-color: #edc441;
    display: block;
    height: 100%;
    position: fixed;
    top: 0;
    right: 0;
    transform: translate(100%);
    transition: transform 0.5s ease;
    width: 100%;
    z-index: 110;
  }
  .ham_menu.open {
    right: 0;
    transform: translateZ(0);
  }
  .scroll-prevent .ham_menu {
    overflow: scroll;
  }
  .ham_menu_inr {
    padding: 80px 20px;
  }
  .ham_menu_list a {
    border-bottom: 1px solid #fff;
    color: #fff;
    display: block;
    padding: 15px 8px;
    position: relative;
  }
  .ham_menu_list:first-child {
    border-top: 1px solid #fff;
  }
  .ham_menu_list a::before {
    content: "\f105";
    font-family: FontAwesome;
    font-size: 24px;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -21px;
  }
  
  .entry_btn_sp, .top_back_btn {
    margin-top: 30px;
    width: 100%;
  }
  .entry_btn_sp a, .top_back_btn a {
    background-color: #fff;
    color: #edc441;
    display: block;
    font-family: 'Roboto Slab', serif;
    font-size: 20px;
    letter-spacing: 0.25em;
    padding: 15px 20px;
    position: relative;
    text-align: center;
  }
  .entry_btn_sp a::before, .top_back_btn a::before {
    content: "\f105";
    font-family: FontAwesome;
    font-size: 24px;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -21px;
  }
  
  
  /*--------------------- .top_back_btn ---------------------*/
  .top_back_btn {
    margin-top: 20px;
  }
  .top_back_btn a {
    background-color: #29a480;
    color: #fff;
    font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
  }
  
  
  /*--------------------- .mv ---------------------*/
  .mv {
    height: 280px;
    margin-top: 64px;
  }
  .mv_ttl {
    font-size: 18px;
  }
  .mv_ttl .en {
    font-size: 50px;
  }
  .mv_ttl::before {
    height: 60px;
    width: 60px;
  }
  
  
  /*--------------------- .inr ---------------------*/
  .inr_s {
    padding: 0 15px;
    width: 100%;
  }
  
  
  /*--------------------- .ttl02 ---------------------*/
  .ttl02 {
    font-size: 16px;
    margin-bottom: 35px;
  }
  .ttl02 .en {
    font-size: 40px;
  }
  .ttl02 b {
    font-size: 60px;
  }
}


/*▽▽▽▽▽▽---------- SP ----------▽▽▽▽▽▽*/
@media only screen and (max-width: 768px) {
  /*--------------------- .inr ---------------------*/
  .inr, .inr_b {
    padding: 0 15px;
  }
  
  /*--------------------- .btn_clm ---------------------*/
  .btn_clm {
    display: block;
  }
  .btn_clm .basic_btn {
    margin: 0 0 15px 0;
  }
  
  /*--------------------- .sp_tel ---------------------*/
  a[href^="tel:"].sp_tel {
    pointer-events: auto;
    text-decoration: underline;
  }
  
  /*--------------------- other ---------------------*/
  .wide_txt {
    letter-spacing: 0.15em;
    line-height: 1.7;
  }
  .pc_br {
    display: none;
  }
  .sp_br {
    display: block;
  }
  .pc_none {
    display: none;
  }
  .sp_block {
    display: block;
  }
}

@media only screen and (max-width: 600px) {
  /*--------------------- .mv ---------------------*/
  .mv {
    background: url(/recruit/img/a_mv_sp.jpg) center center no-repeat;
    background-size: cover;
  }
  .mv_ttl .en {
    font-size: 40px;
  }
  .mv_ttl::before {
    height: 50px;
    width: 50px;
  }
  
  /*--------------------- .basic_btn ---------------------*/
  .basic_btn, .basic_btn.big {
    width: 100%;
  }
  
  /*--------------------- .basic_table ---------------------*/
  .basic_table th {
    padding: 15px;
    width: 70px;
  }
  .basic_table td {
    padding: 15px;
  }
  
  /*--------------------- .footer_box02 ---------------------*/
  .footer_logo {
    padding: 20px 15px;
    width: 100px;
  }
  .footer .inr_s {
    display: block;
    padding: 20px 60px 20px 15px;
  }
  .top_back {
    margin-bottom: 10px;
  }
  .copy_txt {
    text-align: left;
  }
}