@media screen and (min-width: 769px), print {
  a[href^=tel] {
    pointer-events: none;
    text-decoration: none;
    cursor: default !important;
  }
  .show_sp {
    display: none !important;
  }
  .container {
    overflow: hidden;
  }
  .row {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
  }
}

@media screen and (min-width: 769px) and (max-width: 1199px) and (min-width: 769px) {
  .row {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .inner {
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
  }
}

@media screen and (min-width: 769px) and (max-width: 1199px) and (min-width: 769px) {
  .inner {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .txt_en {
    font-family: "Outfit", serif;
  }
  img {
    max-width: 100%;
    width: auto;
    height: auto;
  }
  .hvr-pop {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    -moz-transform: perspective(1px) translateZ(0);
         transform: perspective(1px) translateZ(0);
    -moz-box-shadow: 0 0 1px rgba(0, 0, 0, 0);
         box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  }
  .hvr-pop:hover, .hvr-pop:focus, .hvr-pop:active {
    -webkit-animation-name: hvr-pop;
    -moz-animation-name: hvr-pop;
         animation-name: hvr-pop;
    -webkit-animation-duration: 0.3s;
    -moz-animation-duration: 0.3s;
         animation-duration: 0.3s;
    -webkit-animation-timing-function: linear;
    -moz-animation-timing-function: linear;
         animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
         animation-iteration-count: 1;
  }
  body {
    padding-top: 104px;
  }
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    -webkit-transition: background-color 0.3s;
    -moz-transition: background-color 0.3s;
    transition: background-color 0.3s;
    background-color: #fff;
    height: 104px;
    padding: 0 40px 0 25px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media screen and (min-width: 769px) and (max-width: 1199px) and (min-width: 769px) {
  .header {
    padding: 0 15px;
  }
}

@media screen and (min-width: 769px), print {
  .header.changeBg {
    background-color: rgba(255, 255, 255, 0.95) !important;
  }
  .header h1 {
    font-size: 0;
    line-height: 0;
  }
  .header h1 img {
    width: 318px;
    vertical-align: bottom;
  }
  .header .header_menuSub {
    margin-left: auto;
  }
  .header .header_menuSub .header_menuSub_main {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding-left: 15px;
  }
  .header .header_menuSub .header_menuSub_main li:not(:last-child) {
    margin-right: 40px;
  }
  .header .header_menuSub .header_menuSub_main li a {
    display: block;
    font-style: normal;
    font-weight: bold;
    font-size: 16px;
  }
  .footer {
    padding: 27px;
    -moz-border-radius: 20px 20px 0px 0px;
         border-radius: 20px 20px 0px 0px;
    background: -webkit-gradient(linear, left top, right top, from(#38baff), to(#115fdd));
    background: -webkit-linear-gradient(left, #38baff 0%, #115fdd 100%);
    background: -moz- oldlinear-gradient(left, #38baff 0%, #115fdd 100%);
    background: linear-gradient(to right, #38baff 0%, #115fdd 100%);
  }
  .footer ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 42px;
  }
  .footer ul li {
    margin: 0 20px;
    font-size: 16px;
    font-weight: bold;
  }
  .footer ul li a {
    color: #fff;
  }
  .footer p {
    font-size: 16px;
    text-align: center;
    color: #fff;
  }
  .ttl {
    text-align: center;
    padding: 0 25px;
    margin-bottom: 60px;
  }
  .ttl_inner {
    padding: 50px 15px;
    -moz-border-radius: 20px;
         border-radius: 20px;
    background: -webkit-gradient(linear, left top, left bottom, from(#38baff), to(#115fdd));
    background: -webkit-linear-gradient(#38baff 0%, #115fdd 100%);
    background: -moz- oldlinear-gradient(#38baff 0%, #115fdd 100%);
    background: linear-gradient(#38baff 0%, #115fdd 100%);
  }
  .ttl h2 small {
    display: block;
    font-weight: 900;
    font-size: 28px;
    line-height: 1.42857;
    color: #fff;
  }
  .ttl h2 span {
    display: block;
    font-weight: 900;
    font-size: 47px;
    line-height: 1.46809;
    color: #fff;
  }
  .wp-pagenavi {
    margin-top: 44px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .wp-pagenavi .pages {
    display: none;
  }
  .wp-pagenavi .page {
    margin: 0 3px;
    width: 43px;
    height: 43px;
    background: #E2E2E2;
    font-weight: 500;
    font-size: 23px;
    font-family: "Outfit", serif;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -moz-border-radius: 9999px;
         border-radius: 9999px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .wp-pagenavi .page:hover {
    background-color: #000;
    opacity: 1;
    color: #fff;
  }
  .wp-pagenavi .dots {
    background-color: transparent;
    border: none;
  }
  .wp-pagenavi .dots:hover {
    background-color: transparent;
    color: #000;
  }
  .wp-pagenavi .current {
    margin: 0 3px;
    width: 43px;
    height: 43px;
    background: #000;
    font-weight: 500;
    font-size: 23px;
    font-family: "Outfit", serif;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -moz-border-radius: 9999px;
         border-radius: 9999px;
    color: #fff;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .wp-pagenavi .nextpostslink {
    width: 43px;
    height: 43px;
    text-indent: -9999px;
    display: block;
    -webkit-transition: background-color .3s ease-out;
    -moz-transition: background-color .3s ease-out;
    transition: background-color .3s ease-out;
    background-image: url("../img/page_ar.svg");
    background-repeat: no-repeat;
    background-position: center;
    -moz-background-size: 15px 29px;
         background-size: 15px 29px;
    display: none;
  }
  .wp-pagenavi .prevpostslink {
    width: 43px;
    height: 43px;
    text-indent: -9999px;
    display: block;
    -webkit-transition: background-color .3s ease-out;
    -moz-transition: background-color .3s ease-out;
    transition: background-color .3s ease-out;
    background-image: url("../img/page_ar.svg");
    background-repeat: no-repeat;
    background-position: center;
    -moz-background-size: 15px 29px;
         background-size: 15px 29px;
    -webkit-transform: rotate(180deg);
       -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);
    display: none;
  }
  a.btn, button.btn {
    min-width: 225px;
    min-height: 58px;
    padding: 0 30px;
    font-weight: 700;
    font-size: 16px;
    color: #FFFFFF;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #000;
    -moz-border-radius: 9999px;
         border-radius: 9999px;
    outline: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: 0;
    cursor: pointer;
  }
  .breadcrumb {
    padding: 5px 0;
    font-size: 16px;
  }
  .breadcrumb ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .breadcrumb ul li:not(:last-child) {
    position: relative;
    margin-right: 20px;
  }
  .breadcrumb ul li:not(:last-child)::after {
    content: ">";
    position: absolute;
    top: 50%;
    right: -15px;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .t_ttl {
    font-weight: 900;
    margin-bottom: 32px;
  }
  .t_ttl span {
    display: block;
    font-size: 90px;
    display: block;
    line-height: 1;
  }
  .t_ttl small {
    font-weight: 900;
    font-size: 20px;
  }
  .p_top .mv {
    padding: 0 25px;
  }
  .p_top .mv .mv_inner {
    background-image: -webkit-gradient(linear, left top, right top, from(#38BAFF), to(#115FDD));
    background-image: -webkit-linear-gradient(left, #38BAFF, #115FDD);
    background-image: -moz- oldlinear-gradient(left, #38BAFF, #115FDD);
    background-image: linear-gradient(to right, #38BAFF, #115FDD);
    overflow: hidden;
    -moz-border-radius: 20px;
         border-radius: 20px;
    position: relative;
    position: relative;
  }
  .p_top .mv .mv_inner::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 656px;
    height: 100%;
    background: url(../img/mv_mask.png) center/100% 100% no-repeat;
    display: block;
    z-index: 1;
  }
  .p_top .mv .mv_txt {
    position: absolute;
    top: 30px;
    left: 40px;
    width: 100%;
    height: 100%;
    z-index: 2;
  }
  .p_top .mv .mv_txt h2 small {
    min-width: 154px;
    min-height: 48px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #fff;
    padding: 0 14px;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_top .mv .mv_txt h2 small em {
    font-size: 24px;
    font-weight: 900;
    background: -webkit-gradient(linear, left top, right top, from(#39BAFF), to(#125fdd));
    background: -webkit-linear-gradient(left, #39BAFF, #125fdd);
    background: -moz- oldlinear-gradient(left, #39BAFF, #125fdd);
    background: linear-gradient(90deg, #39BAFF, #125fdd);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-align: center;
    font-style: normal;
  }
  .p_top .mv .mv_txt h2 span {
    display: block;
    font-weight: 900;
    font-size: 64px;
    line-height: 1.4375;
    text-align: left;
    color: #fff;
  }
  .p_top .mv .carousel {
    width: 100%;
    overflow: hidden;
  }
  .p_top .mv .carousel .main_carousel {
    overflow: hidden;
    position: relative;
    height: 518px;
  }
  .p_top .mv .carousel .main_carousel ul {
    position: absolute;
    height: 468px;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0;
  }
  .p_top .mv .carousel .main_carousel ul:after {
    content: '';
    display: table;
    clear: both;
  }
  .p_top .mv .carousel .main_carousel ul li {
    float: left;
    width: 328px;
    height: 468px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    overflow: hidden;
    padding: 30px 13px;
  }
  .p_top .mv .carousel .main_carousel ul li img {
    -moz-border-radius: 10px;
         border-radius: 10px;
    overflow: hidden;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -moz-box-shadow: 0px 0px 30px rgba(2, 44, 101, 0.37);
         box-shadow: 0px 0px 30px rgba(2, 44, 101, 0.37);
  }
  .p_top .worries {
    padding: 50px 0;
  }
  .p_top .worries .w_list {
    display: -ms-grid;
    display: grid;
    gap: 12px 16px;
    -ms-grid-columns: (minmax(0, 1fr))[2];
        grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 52px;
  }
  .p_top .worries .w_list li {
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #23253c;
    padding: 10px 26px;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.625;
    text-align: left;
    color: #fff;
  }
  .p_top .worries .w_tt3 {
    font-weight: 900;
    font-size: 42px;
    line-height: 1.45238;
    color: #23253c;
    margin-bottom: 23px;
    text-align: center;
  }
  .p_top .worries .w_list02 {
    display: -ms-grid;
    display: grid;
    gap: 4px;
    -ms-grid-columns: (minmax(0, 1fr))[3];
        grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 60px;
  }
  .p_top .worries .w_list02 li figure {
    position: relative;
    height: 299px;
    margin-bottom: 20px;
  }
  .p_top .worries .w_list02 li figure img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p_top .worries .w_list02 li figure figcaption {
    line-height: 1.5;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    background: rgba(37, 140, 238, 0.78);
    font-weight: bold;
    font-size: 25px;
    text-align: center;
    color: #fff;
    padding: 10px;
    z-index: 2;
  }
  .p_top .worries .w_list02 li p {
    padding: 0 30px;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.44444;
  }
  .p_top .worries .w_df {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_top .worries .w_df figure {
    width: 441px;
  }
  .p_top .worries .w_df .txt p {
    font-weight: 900;
    font-size: 31px;
    line-height: 1.45161;
    padding-right: 40px;
  }
  .p_top .worries .w_df .txt p span {
    font-size: 37px;
    color: #166BE2;
  }
  .p_top .area {
    padding-bottom: 35px;
  }
  .p_top .area .df {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p_top .area .df .txt {
    width: 100%;
  }
  .p_top .area .df .txt p {
    font-weight: 900;
    font-size: 26px;
    line-height: 1.42308;
  }
  .p_top .area .df .txt p + p {
    margin-top: 30px;
  }
  .p_top .area .df figure {
    width: 519px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  a.btn, button.btn {
    width: 748px;
    min-height: 119px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #ff9300;
    max-width: 100%;
    font-weight: 900;
    font-size: 24px;
    color: #fff;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    position: relative;
  }
  a.btn::after, button.btn::after {
    content: ">";
    position: absolute;
    top: 50%;
    right: 40px;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .c_recruit {
    text-align: center;
    padding: 50px 0 68px;
  }
  .p_company .company .dlist {
    margin-bottom: 35px;
  }
  .p_company .company .dlist dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 16px;
    line-height: 1.625;
    padding: 25px 0 15px;
    border-bottom: 1px solid #000;
  }
  .p_company .company .dlist dl dt {
    font-weight: bold;
    text-align: left;
    color: #2e325d;
    width: 173px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .p_company .company .dlist dl dd {
    font-weight: 500;
    color: #000;
  }
  .p_company .company .dlist dl dd a {
    color: #000;
  }
  .p_company .company_top {
    margin-bottom: 40px;
  }
  .p_company .company_top .df {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p_company .company_top .df .txt {
    width: 45.8%;
  }
  .p_company .company_top .df .map {
    width: 50%;
  }
  .p_company .company_bot .df {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p_company .company_bot .df .it {
    width: 48.75%;
  }
  .p_company .company_bot .df .it .dlist {
    margin-bottom: 25px;
    min-height: 134px;
  }
  .p_company .company_bot .df .it h3 {
    background: #23253c;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
    color: #fff;
    padding: 25px;
  }
  .boxoverlay {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1900;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    background: rgba(0, 0, 0, 0.7);
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
  }
  .modal {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 50%;
    width: 1100px;
    height: auto;
    z-index: 2000;
    visibility: hidden;
    -webkit-transform: translateX(-50%) translateY(-50%);
       -moz-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
  }
  .modal.open {
    visibility: visible;
  }
  .modal.open .m_in {
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  .modal .wrap_modal {
    max-height: 80vh;
    overflow: auto;
  }
  .modal .m_in {
    background: #fff;
    -webkit-transform: scale(2);
       -moz-transform: scale(2);
        -ms-transform: scale(2);
            transform: scale(2);
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    background: #fff;
    padding: 30px;
  }
  .modal .m_area {
    position: relative;
  }
  .modal .btn_close {
    position: absolute;
    top: -90px;
    right: -30px;
    width: 50px;
    height: 50px;
    cursor: pointer;
  }
  .p_recruit .recruit .intro {
    margin-bottom: 38px;
    margin-top: 80px;
  }
  .p_recruit .recruit .intro_main {
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #f4f7fc;
    padding: 40px 70px;
  }
}

@media screen and (min-width: 769px) and (max-width: 1199px) and (min-width: 769px) {
  .p_recruit .recruit .intro_main {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .p_recruit .recruit .intro_main .df {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p_recruit .recruit .intro_main .df figure {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 319px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    overflow: hidden;
    margin-top: -70px;
  }
  .p_recruit .recruit .intro_main .df figure img {
    -moz-border-radius: 10px;
         border-radius: 10px;
    overflow: hidden;
    -moz-box-shadow: 0px 0px 15px rgba(24, 110, 225, 0.2);
         box-shadow: 0px 0px 15px rgba(24, 110, 225, 0.2);
  }
  .p_recruit .recruit .intro_main .df .txt {
    width: 100%;
    padding-right: 46px;
    font-size: 16px;
    line-height: 1.625;
  }
  .p_recruit .recruit .intro_main .df .txt .it_tt {
    font-weight: bold;
    font-size: 24px;
    line-height: 1.45833;
    color: #23253c;
    position: relative;
    padding-left: 23px;
    margin-bottom: 23px;
  }
  .p_recruit .recruit .intro_main .df .txt .it_tt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 13px;
    height: 13px;
    background: #23253c;
    -moz-border-radius: 9999px;
         border-radius: 9999px;
    display: block;
  }
  .p_recruit .recruit .intro_main .df .txt .it_list {
    margin-top: 20px;
    max-width: 592px;
    width: 100%;
  }
  .p_recruit .recruit .intro_main .df .txt .it_list li {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #23253c;
    padding: 10px 18px;
    font-size: 16px;
    line-height: 1.625;
    color: #fff;
    font-weight: bold;
    margin-bottom: 4px;
  }
  .p_recruit .recruit .intro_main .df .txt .it_list li span {
    width: 45px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .p_recruit .recruit .data_top {
    position: relative;
    z-index: 2;
    padding: 50px 15px 110px;
    -moz-border-radius: 20px;
         border-radius: 20px;
    background: -webkit-gradient(linear, left top, right top, from(#38baff), to(#115fdd));
    background: -webkit-linear-gradient(left, #38baff 0%, #115fdd 100%);
    background: -moz- oldlinear-gradient(left, #38baff 0%, #115fdd 100%);
    background: linear-gradient(to right, #38baff 0%, #115fdd 100%);
  }
  .p_recruit .recruit .data_top .t_ttl {
    color: #fff;
    text-align: center;
  }
  .p_recruit .recruit .data_top .dt_list {
    width: 974px;
    max-width: 100%;
    display: -ms-grid;
    display: grid;
    gap: 60px 42px;
    -ms-grid-columns: (minmax(0, 1fr))[3];
        grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 0 auto;
  }
}

@media screen and (min-width: 769px) and (max-width: 1199px) and (min-width: 769px) {
  .p_recruit .recruit .data_top .dt_list {
    gap: 60px 15px;
  }
}

@media screen and (min-width: 769px), print {
  .p_recruit .recruit .data_top .dt_list li {
    padding: 34px 22px 40px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #fff;
    text-align: center;
    position: relative;
  }
  .p_recruit .recruit .data_top .dt_list li .it_tt {
    font-weight: 900;
    font-size: 24px;
    color: #23253c;
  }
  .p_recruit .recruit .data_top .dt_list li figure {
    margin: 15px 0;
    text-align: center;
  }
  .p_recruit .recruit .data_top .dt_list li figure img {
    width: 119px;
    display: inline-block;
  }
  .p_recruit .recruit .data_top .dt_list li .txt01 {
    font-weight: 900;
    font-size: 28px;
  }
  .p_recruit .recruit .data_top .dt_list li .txt01 i {
    font-family: "Bebas Neue", sans-serif;
    font-weight: bold;
    font-size: 107px;
    line-height: 1;
    font-style: normal;
    display: inline-block;
    margin: 0 5px;
  }
  .p_recruit .recruit .data_top .dt_list li .txt01 .pos {
    position: relative;
  }
  .p_recruit .recruit .data_top .dt_list li .txt01 .pos small {
    position: absolute;
    top: -28px;
    left: 8px;
    font-weight: normal;
    font-size: 14px;
    line-height: 1.14286;
    text-align: left;
  }
  .p_recruit .recruit .data_top .dt_list li .txt02 {
    position: absolute;
    left: 50%;
    bottom: -37px;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 253px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #fff500;
    max-width: 100%;
    font-weight: bold;
    font-size: 19px;
    color: #23253c;
    padding: 10px 0;
  }
  .p_recruit .recruit .data_top .dt_list li .txt02 small {
    display: block;
    font-size: 16px;
  }
  .p_recruit .recruit .data_mid {
    margin-top: -50px;
    position: relative;
  }
  .p_recruit .recruit .data_mid > figure img {
    min-height: 385px;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p_recruit .recruit .data_mid h3 {
    position: absolute;
    left: 50%;
    top: 21px;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 100%;
    text-align: center;
    z-index: 3;
  }
  .p_recruit .recruit .data_mid h3 span {
    position: relative;
    padding: 10px 30px;
    -moz-border-radius: 36px;
         border-radius: 36px;
    background: #23253c;
    font-weight: bold;
    font-size: 32px;
    color: #fff;
    display: block;
  }
}

@media screen and (min-width: 769px) and (max-width: 1199px) and (min-width: 769px) {
  .p_recruit .recruit .data_mid h3 span {
    font-size: 23px;
  }
}

@media screen and (min-width: 769px), print {
  .p_recruit .recruit .data_mid h3 span::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -11px;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 12px solid #23253c;
  }
  .p_recruit .recruit .data_bot {
    -moz-border-radius: 0 0 10px 10px;
         border-radius: 0 0 10px 10px;
    background: #f4f7fc;
    -moz-box-shadow: 0px 0px 15px rgba(16, 93, 196, 0.16);
         box-shadow: 0px 0px 15px rgba(16, 93, 196, 0.16);
    padding-bottom: 136px;
  }
  .p_recruit .recruit .data_bot .db_list {
    width: 1028px;
    max-width: 100%;
    margin: 0 auto;
    margin-top: -64px;
    margin-bottom: 30px;
    position: relative;
    z-index: 4;
  }
  .p_recruit .recruit .data_bot .db_list li {
    padding: 25px 0 25px 74px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #166be2;
    font-weight: bold;
    font-size: 24px;
    color: #fff;
    position: relative;
    margin-bottom: 11px;
  }
  .p_recruit .recruit .data_bot .db_list li span {
    color: #FFEB00;
  }
  .p_recruit .recruit .data_bot .db_list li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 30px;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 30px;
    height: 33px;
    background: url(../img/recruit/ic_check.png) center/100% 100% no-repeat;
    display: block;
  }
  .p_recruit .recruit .data_bot h3 {
    font-weight: bold;
    font-size: 32px;
    text-align: center;
    color: #23253c;
    margin-bottom: 13px;
  }
  .p_recruit .recruit .data_bot .box {
    width: 792px;
    max-width: 100%;
    margin: 0 auto;
    padding: 17px 25px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #166be2;
    text-align: center;
  }
  .p_recruit .recruit .data_bot .box ul {
    display: -ms-grid;
    display: grid;
    gap: 12px;
    -ms-grid-columns: (minmax(0, 1fr))[4];
        grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .p_recruit .recruit .data_bot .box ul li {
    padding: 13px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_recruit .recruit .data_bot .box ul li.two_row {
    grid-row: 1 / 3;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk {
    font-size: 14px;
    line-height: 1.28571;
    text-align: center;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk p {
    min-height: 36px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk > span {
    font-weight: bold;
    font-size: 24px;
    color: #166be2;
    margin-bottom: 10px;
    display: block;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk > span.sm {
    font-size: 21px;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk .num {
    font-weight: bold;
    font-size: 24px;
    line-height: 1;
    margin-top: 10px;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk .num i {
    font-style: normal;
    font-family: "Bebas Neue", sans-serif;
    font-weight: bold;
    font-size: 53px;
    color: #23253c;
    line-height: 1;
  }
  .p_recruit .recruit .questionnaire {
    padding: 50px 0 84px;
  }
  .p_recruit .recruit .questionnaire .t_ttl {
    color: #166be2;
    margin-bottom: 70px;
  }
  .p_recruit .recruit .questionnaire .t_ttl span {
    line-height: 1.5;
  }
}

@media screen and (min-width: 769px) and (max-width: 1199px) and (min-width: 769px) {
  .p_recruit .recruit .questionnaire .t_ttl span {
    font-size: 80px;
    white-space: nowrap;
  }
}

@media screen and (min-width: 769px), print {
  .p_recruit .recruit .questionnaire .df {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p_recruit .recruit .questionnaire .df + .df {
    margin-top: 48px;
  }
  .p_recruit .recruit .questionnaire .df > span {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 316px;
    line-height: 1.45833;
    font-weight: 900;
    font-size: 24px;
    color: #23253c;
  }
  .p_recruit .recruit .questionnaire .df ul {
    width: 760px;
    max-width: 100%;
  }
  .p_recruit .recruit .questionnaire .df ul.st2 li {
    background-color: #2f325d;
  }
  .p_recruit .recruit .questionnaire .df ul li {
    font-weight: bold;
    font-size: 16px;
    line-height: 1.625;
    text-align: left;
    color: #fff;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #23253c;
    padding: 22px 32px;
  }
  .p_recruit .recruit .questionnaire .df ul li + li {
    margin-top: 10px;
  }
  .p_recruit .recruit .application .tab_content {
    display: none;
  }
  .p_recruit .recruit .application .tab_content.active {
    display: block;
  }
  .p_recruit .recruit .application h3 {
    font-weight: 900;
    font-size: 42px;
    color: #166be2;
    margin-bottom: 55px;
  }
  .p_recruit .recruit .application .tabs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-bottom: 10px;
  }
  .p_recruit .recruit .application .tabs ~ .tabs {
    margin-top: 194px;
  }
  .p_recruit .recruit .application .tabs li {
    width: -webkit-calc((100% - 10px) / 2);
    width: -moz-calc((100% - 10px) / 2);
    width: calc((100% - 10px) / 2);
  }
  .p_recruit .recruit .application .tabs li a {
    min-height: 89px;
    background: #6e74b9;
    font-weight: 900;
    font-size: 24px;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_recruit .recruit .application .tabs li a.active {
    min-height: 108px;
    background: #2e325d;
  }
  .p_recruit .recruit .application .dlist dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 1px;
  }
  .p_recruit .recruit .application .dlist dl:nth-child(odd) dd {
    background-color: #edeef5;
  }
  .p_recruit .recruit .application .dlist dl dt {
    width: 274px;
    background: #2e325d;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    font-weight: bold;
    font-size: 20px;
    padding: 20px 32px;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_recruit .recruit .application .dlist dl dd {
    padding: 20px 32px;
    width: -webkit-calc(100% - 280px);
    width: -moz-calc(100% - 280px);
    width: calc(100% - 280px);
    font-weight: 500;
    font-size: 16px;
    line-height: 1.625;
    text-align: left;
  }
  .p_recruit .recruit .entry {
    padding: 130px 0 0;
  }
  .p_recruit .recruit .entry .t_ttl {
    text-align: center;
  }
  .p_404 {
    text-align: center;
    font-size: 16px;
    line-height: 1.73;
    min-height: -webkit-calc(100vh - 248px);
    min-height: -moz-calc(100vh - 248px);
    min-height: calc(100vh - 248px);
  }
  .p_404 h3 {
    font-weight: bold;
    font-size: 161px;
    line-height: 1.4472;
  }
  .p_404 .btn {
    margin-top: 50px;
  }
  .p_contact .contact .row {
    max-width: 883px;
  }
  .p_contact .contact .completed {
    text-align: center;
    font-size: 16px;
    line-height: 1.73;
    padding-bottom: 120px;
    min-height: -webkit-calc(100vh - 517px);
    min-height: -moz-calc(100vh - 517px);
    min-height: calc(100vh - 517px);
  }
  .p_contact .contact .completed h3 {
    font-weight: 700;
    font-size: 32px;
    line-height: 1.20833;
    margin-bottom: 22px;
  }
  .p_contact .contact .completed .f_btn {
    margin-top: 167px;
  }
  .p_contact .contact .f_btn {
    padding: 0;
    outline: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: 0;
    cursor: pointer;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #ef9021;
    font-size: 24px;
    font-weight: bold;
    width: 410px;
    height: 109px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #fff;
    border: 3px solid #ef9021;
    margin: 35px auto 0;
    -moz-box-shadow: 0 3px 0px 0px #ef9021;
         box-shadow: 0 3px 0px 0px #ef9021;
    max-width: 100%;
  }
  .p_contact .contact .form {
    padding-bottom: 120px;
  }
  .p_contact .contact .form .f_txtError {
    font-size: 14px;
    letter-spacing: 0.07em;
    margin-bottom: 4px;
    color: #f00;
  }
  .p_contact .contact .form dl + dl {
    margin-top: 27px;
  }
  .p_contact .contact .form dl dt {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: bold;
    font-size: 18px;
    color: #2f2f2f;
    margin-bottom: 11px;
  }
  .p_contact .contact .form dl dt span {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: normal;
    font-size: 16px;
    text-align: center;
    color: #fff;
    width: 42px;
    height: 25px;
    -moz-border-radius: 6px;
         border-radius: 6px;
    background: #ef8021;
    margin-left: 14px;
  }
  .p_contact .contact .form dl dt small {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: normal;
    font-size: 16px;
    text-align: center;
    color: #fff;
    width: 42px;
    height: 25px;
    -moz-border-radius: 6px;
         border-radius: 6px;
    background: #9f9f9f;
    margin-left: 14px;
  }
  .p_contact .contact .form dl dd input {
    width: 100%;
    padding: 0 15px;
    outline: none;
    font-size: 18px;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    -moz-border-radius: 11px;
         border-radius: 11px;
    height: 60px;
    background: #fff;
    border: 1px solid #bcbcbc;
  }
  .p_contact .contact .form dl dd input::-webkit-input-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd input::-moz-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd input:-ms-input-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd input::placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd textarea {
    width: 100%;
    padding: 10px 15px;
    outline: none;
    font-size: 18px;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    height: 219px;
    -moz-border-radius: 11px;
         border-radius: 11px;
    background: #fff;
    border: 1px solid #bcbcbc;
  }
  .p_contact .contact .form dl dd textarea::-webkit-input-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd textarea::-moz-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd textarea:-ms-input-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd textarea::placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd .f_df {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_contact .contact .form dl dd .f_df > span {
    margin-left: 8px;
    font-size: 18px;
    color: #2f2f2f;
  }
  .p_contact .contact .form dl dd .select label {
    display: block;
    position: relative;
    -moz-border-radius: 11px;
         border-radius: 11px;
    -webkit-perspective: 1px;
       -moz-perspective: 1px;
            perspective: 1px;
    width: 261px;
    height: 60px;
    background: #fff;
    border: 1px solid #bcbcbc;
    position: relative;
  }
  .p_contact .contact .form dl dd .select label::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 5px;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 26px;
    height: 10px;
    background: url(../img/ic_select.svg) center/100% 100% no-repeat;
    display: block;
  }
  .p_contact .contact .form dl dd .select label select {
    width: 100%;
    height: 100%;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    outline: none;
    border: none;
    padding: 0 35px 0 26px;
    background: transparent;
    font-weight: 400;
    font-size: 18px;
    color: #2f2f2f;
    cursor: pointer;
    position: relative;
    z-index: 3;
  }
  .p_contact .contact .form dl dd .select label select::-ms-expand {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  img {
    width: 100%;
    height: auto;
  }
  .container {
    overflow: hidden;
  }
  .show_pc {
    display: none !important;
  }
  .row {
    padding-left: 3.62319vw;
    padding-right: 3.62319vw;
  }
  .inner {
    padding-left: 3.62319vw;
    padding-right: 3.62319vw;
  }
  body {
    padding-top: 22.22222vw;
  }
  .header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    width: 100%;
    background-color: #fff;
    height: 22.22222vw;
    padding: 0 3.62319vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .header.changeBg {
    background-color: rgba(255, 255, 255, 0.95) !important;
  }
  .header .row {
    padding: 0;
  }
  .header h1 {
    font-size: 0;
    line-height: 0;
  }
  .header h1 img {
    width: 60.38647vw;
    vertical-align: bottom;
  }
  .header .header_menuSub {
    position: fixed;
    height: 0;
    opacity: 0;
    top: 0;
    left: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    overflow-y: auto;
    width: 100%;
    z-index: 1001;
    padding: 1.93237vw;
  }
  .header .header_menuSub.active {
    opacity: 1;
    visibility: visible;
  }
  .header .header_menuSub .header_menuSub_inner {
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: rgba(35, 37, 60, 0.87);
    padding: 16.90821vw 10.86957vw 9.66184vw;
  }
  .header .header_menuSub .header_menuSub_inner .h_bot {
    margin-top: 9.66184vw;
    text-align: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .header .header_menuSub .header_menuSub_inner .h_bot .h_bot_logo {
    display: block;
    width: 63.04348vw;
  }
  .header .header_menuSub .header_menuSub_inner .h_bot .h_bot_tel {
    font-weight: bold;
    font-size: 40px;
    line-height: 1.625;
    text-align: left;
    color: #fff;
    position: relative;
    padding-left: 50px;
    white-space: nowrap;
  }
  .header .header_menuSub .header_menuSub_inner .h_bot .h_bot_tel::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 8.69565vw;
    height: 8.69565vw;
    background: url(../img/ic_tel.png) center/100% 100% no-repeat;
    display: block;
  }
  .header .header_menuSub .header_menuSub_main li a {
    display: block;
    font-weight: bold;
    font-size: 4.34783vw;
    text-align: left;
    color: #fff;
    padding: 4.83092vw 0 2.41546vw;
    border-bottom: 1px solid;
  }
  .header .menu_icon {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    position: fixed;
    top: 5.7971vw;
    right: 3.62319vw;
    z-index: 9999;
    width: 7.97101vw;
    height: 8.9372vw;
  }
  .header .menu_icon::after {
    content: "MENU";
    display: block;
    font-weight: normal;
    font-size: 2.657vw;
    text-align: center;
    color: #23253c;
  }
  .header .menu_icon.active {
    right: 4.83092vw;
  }
  .header .menu_icon.active::after {
    color: #fff;
  }
  .header .menu_icon.active .menu_icon_in .menu-trigger span {
    background-color: #fff;
  }
  .header .menu_icon.active .menu_icon_in .menu-trigger span:nth-of-type(1) {
    -webkit-transform: translateY(0vw) rotate(-25deg);
       -moz-transform: translateY(0vw) rotate(-25deg);
        -ms-transform: translateY(0vw) rotate(-25deg);
            transform: translateY(0vw) rotate(-25deg);
  }
  .header .menu_icon.active .menu_icon_in .menu-trigger span:nth-of-type(2) {
    opacity: 0;
  }
  .header .menu_icon.active .menu_icon_in .menu-trigger span:nth-of-type(3) {
    -webkit-transform: translateY(0vw) rotate(25deg);
       -moz-transform: translateY(0vw) rotate(25deg);
        -ms-transform: translateY(0vw) rotate(25deg);
            transform: translateY(0vw) rotate(25deg);
  }
  .header .menu_icon_in {
    width: 7.97101vw;
    height: 3.86473vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .header .menu_icon_in .menu-trigger,
  .header .menu_icon_in .menu-trigger span {
    display: inline-block;
    -webkit-transition: all .4s;
    -moz-transition: all .4s;
    transition: all .4s;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
  }
  .header .menu_icon_in .menu-trigger {
    position: relative;
    width: 100%;
    height: 6.03865vw;
  }
  .header .menu_icon_in .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 0.48309vw;
    min-height: 1px;
    background-color: #23253C;
    -webkit-transform-origin: 100% 0;
       -moz-transform-origin: 100% 0;
        -ms-transform-origin: 100% 0;
            transform-origin: 100% 0;
  }
  .header .menu_icon_in .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  .header .menu_icon_in .menu-trigger span:nth-of-type(2) {
    top: 1.69082vw;
  }
  .header .menu_icon_in .menu-trigger span:nth-of-type(3) {
    bottom: 0;
    width: 100%;
  }
  .footer {
    padding: 6.52174vw 3.62319vw 2.41546vw;
    -moz-border-radius: 4.83092vw 4.83092vw 0vw 0vw;
         border-radius: 4.83092vw 4.83092vw 0vw 0vw;
    background: -webkit-gradient(linear, left top, right top, from(#38baff), to(#115fdd));
    background: -webkit-linear-gradient(left, #38baff 0%, #115fdd 100%);
    background: -moz- oldlinear-gradient(left, #38baff 0%, #115fdd 100%);
    background: linear-gradient(to right, #38baff 0%, #115fdd 100%);
  }
  .footer ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 14.00966vw;
  }
  .footer ul li {
    margin: 0 4.83092vw;
    font-size: 3.86473vw;
    font-weight: bold;
  }
  .footer ul li a {
    color: #fff;
  }
  .footer p {
    font-size: 3.38164vw;
    text-align: center;
    color: #fff;
  }
  .ttl {
    text-align: center;
    padding: 0 3.62319vw;
    margin-bottom: 7.24638vw;
  }
  .ttl_inner {
    padding: 5.55556vw 3.62319vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: -webkit-gradient(linear, left top, left bottom, from(#38baff), to(#115fdd));
    background: -webkit-linear-gradient(#38baff 0%, #115fdd 100%);
    background: -moz- oldlinear-gradient(#38baff 0%, #115fdd 100%);
    background: linear-gradient(#38baff 0%, #115fdd 100%);
  }
  .ttl h2 small {
    display: block;
    font-weight: 900;
    font-size: 4.83092vw;
    line-height: 1.42857;
    color: #fff;
  }
  .ttl h2 span {
    display: block;
    font-weight: 900;
    font-size: 7.97101vw;
    line-height: 1.46809;
    color: #fff;
  }
  .wp-pagenavi {
    margin-top: 7.24638vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .wp-pagenavi .pages {
    display: none;
  }
  .wp-pagenavi .page {
    margin: 0 0.72464vw;
    width: 10.38647vw;
    height: 10.38647vw;
    background: #E2E2E2;
    font-weight: 500;
    font-size: 5.55556vw;
    font-family: "Outfit", serif;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -moz-border-radius: 2415.21739vw;
         border-radius: 2415.21739vw;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .wp-pagenavi .page:hover {
    background-color: #000;
    opacity: 1;
    color: #fff;
  }
  .wp-pagenavi .dots {
    background-color: transparent;
    border: none;
  }
  .wp-pagenavi .dots:hover {
    background-color: transparent;
    color: #000;
  }
  .wp-pagenavi .current {
    margin: 0 0.72464vw;
    width: 10.38647vw;
    height: 10.38647vw;
    background: #000;
    font-weight: 500;
    font-size: 5.55556vw;
    font-family: "Outfit", serif;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -moz-border-radius: 2415.21739vw;
         border-radius: 2415.21739vw;
    color: #fff;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .wp-pagenavi .nextpostslink {
    width: 10.38647vw;
    height: 10.38647vw;
    text-indent: -2415.21739vw;
    display: block;
    -webkit-transition: background-color .3s ease-out;
    -moz-transition: background-color .3s ease-out;
    transition: background-color .3s ease-out;
    background-image: url("../img/page_ar.svg");
    background-repeat: no-repeat;
    background-position: center;
    -moz-background-size: 3.62319vw 7.00483vw;
         background-size: 3.62319vw 7.00483vw;
    display: none;
  }
  .wp-pagenavi .prevpostslink {
    width: 10.38647vw;
    height: 10.38647vw;
    text-indent: -2415.21739vw;
    display: block;
    -webkit-transition: background-color .3s ease-out;
    -moz-transition: background-color .3s ease-out;
    transition: background-color .3s ease-out;
    background-image: url("../img/page_ar.svg");
    background-repeat: no-repeat;
    background-position: center;
    -moz-background-size: 3.62319vw 7.00483vw;
         background-size: 3.62319vw 7.00483vw;
    -webkit-transform: rotate(180deg);
       -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);
    display: none;
  }
  a.btn, button.btn {
    min-width: 54.34783vw;
    min-height: 14.00966vw;
    padding: 0 7.24638vw;
    font-weight: 700;
    font-size: 3.86473vw;
    color: #FFFFFF;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #000;
    -moz-border-radius: 2415.21739vw;
         border-radius: 2415.21739vw;
    outline: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: 0;
    cursor: pointer;
  }
  .btn_wr {
    text-align: center;
  }
  .breadcrumb {
    padding: 2.41546vw 0;
    font-size: 3.86473vw;
  }
  .breadcrumb ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .breadcrumb ul li:not(:last-child) {
    position: relative;
    margin-right: 4.83092vw;
  }
  .breadcrumb ul li:not(:last-child)::after {
    content: ">";
    position: absolute;
    top: 50%;
    right: -3.62319vw;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .t_ttl {
    font-weight: 900;
    margin-bottom: 4.34783vw;
  }
  .t_ttl span {
    display: block;
    font-size: 14.97585vw;
    display: block;
    line-height: 1;
  }
  .t_ttl small {
    font-weight: 900;
    font-size: 4.34783vw;
  }
  .p_top .mv {
    padding: 0 3.62319vw;
  }
  .p_top .mv .mv_inner {
    background-image: -webkit-gradient(linear, left top, right top, from(#38BAFF), to(#115FDD));
    background-image: -webkit-linear-gradient(left, #38BAFF, #115FDD);
    background-image: -moz- oldlinear-gradient(left, #38BAFF, #115FDD);
    background-image: linear-gradient(to right, #38BAFF, #115FDD);
    overflow: hidden;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    position: relative;
    position: relative;
    padding-top: 41.0628vw;
  }
  .p_top .mv .mv_txt {
    position: absolute;
    top: 7.24638vw;
    left: 4.83092vw;
    width: 100%;
    height: 100%;
    z-index: 2;
  }
  .p_top .mv .mv_txt h2 small {
    min-width: 29.4686vw;
    min-height: 9.17874vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #fff;
    padding: 0 3.38164vw;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 2.41546vw;
  }
  .p_top .mv .mv_txt h2 small em {
    font-size: 4.58937vw;
    font-weight: 900;
    background: -webkit-gradient(linear, left top, right top, from(#39BAFF), to(#125fdd));
    background: -webkit-linear-gradient(left, #39BAFF, #125fdd);
    background: -moz- oldlinear-gradient(left, #39BAFF, #125fdd);
    background: linear-gradient(90deg, #39BAFF, #125fdd);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-align: center;
    font-style: normal;
  }
  .p_top .mv .mv_txt h2 span {
    display: block;
    font-weight: 900;
    font-size: 7.97101vw;
    line-height: 1.45455;
    text-align: left;
    color: #fff;
  }
  .p_top .mv .carousel {
    width: 100%;
    overflow: hidden;
  }
  .p_top .mv .carousel .main_carousel {
    overflow: hidden;
    position: relative;
    height: 57.00483vw;
  }
  .p_top .mv .carousel .main_carousel ul {
    position: absolute;
    height: 57.00483vw;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0;
  }
  .p_top .mv .carousel .main_carousel ul:after {
    content: '';
    display: table;
    clear: both;
  }
  .p_top .mv .carousel .main_carousel ul li {
    float: left;
    width: 33.09179vw;
    height: 57.00483vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    overflow: hidden;
    padding: 7.24638vw 1.20773vw;
  }
  .p_top .mv .carousel .main_carousel ul li img {
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    overflow: hidden;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -moz-box-shadow: 0vw 0vw 7.24638vw rgba(2, 44, 101, 0.37);
         box-shadow: 0vw 0vw 7.24638vw rgba(2, 44, 101, 0.37);
  }
  .p_top .worries {
    padding: 12.07729vw 0;
  }
  .p_top .worries .w_list {
    display: -ms-grid;
    display: grid;
    gap: 2.17391vw;
    -ms-grid-columns: (minmax(0, 1fr))[1];
        grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 14.00966vw;
  }
  .p_top .worries .w_list li {
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #23253c;
    padding: 2.41546vw 6.28019vw;
    font-weight: bold;
    font-size: 3.86473vw;
    line-height: 1.625;
    text-align: left;
    color: #fff;
  }
  .p_top .worries .w_tt3 {
    font-weight: 900;
    font-size: 6.76329vw;
    line-height: 1.45238;
    color: #23253c;
    margin-bottom: 5.55556vw;
    text-align: center;
  }
  .p_top .worries .w_list02 {
    display: -ms-grid;
    display: grid;
    gap: 7.24638vw;
    -ms-grid-columns: (minmax(0, 1fr))[1];
        grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 14.49275vw;
  }
  .p_top .worries .w_list02 li figure {
    position: relative;
    height: 69.32367vw;
    margin-bottom: 4.83092vw;
  }
  .p_top .worries .w_list02 li figure img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p_top .worries .w_list02 li figure figcaption {
    line-height: 1.5;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    background: rgba(37, 140, 238, 0.78);
    font-weight: bold;
    font-size: 6.03865vw;
    text-align: center;
    color: #fff;
    padding: 2.41546vw;
    z-index: 2;
  }
  .p_top .worries .w_list02 li p {
    padding: 0 6.03865vw;
    font-weight: 500;
    font-size: 4.34783vw;
    line-height: 1.44444;
  }
  .p_top .worries .w_df .txt {
    margin-bottom: 3.38164vw;
  }
  .p_top .worries .w_df .txt p {
    font-weight: 900;
    font-size: 6.76329vw;
    line-height: 1.45161;
  }
  .p_top .worries .w_df .txt p span {
    font-size: 8.21256vw;
    color: #166BE2;
  }
  .p_top .area {
    padding-bottom: 3.62319vw;
  }
  .p_top .area .df .txt {
    margin-bottom: 7.24638vw;
  }
  .p_top .area .df .txt p {
    font-weight: 900;
    font-size: 4.83092vw;
    line-height: 1.45;
  }
  .p_top .area .df .txt p + p {
    margin-top: 6.03865vw;
  }
  .p_top .area .df figure {
    text-align: center;
  }
  .p_top .area .df figure img {
    display: inline-block;
    width: 78.26087vw;
  }
  a.btn, button.btn {
    min-height: 24.63768vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #ff9300;
    max-width: 100%;
    font-weight: 900;
    font-size: 5.7971vw;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    position: relative;
  }
  a.btn::after, button.btn::after {
    content: ">";
    position: absolute;
    top: 50%;
    right: 4.83092vw;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .c_recruit {
    text-align: center;
    padding: 12.07729vw 0;
  }
  .p_company .company .dlist {
    margin-bottom: 8.45411vw;
  }
  .p_company .company .dlist dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 3.86473vw;
    line-height: 1.625;
    padding: 6.03865vw 0 3.62319vw;
    border-bottom: 1px solid #000;
  }
  .p_company .company .dlist dl dt {
    font-weight: bold;
    text-align: left;
    color: #2e325d;
    width: 27.77778vw;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .p_company .company .dlist dl dd {
    font-weight: 500;
    color: #000;
  }
  .p_company .company .dlist dl dd a {
    color: #000;
  }
  .p_company .company_top {
    margin-bottom: 7.24638vw;
  }
  .p_company .company_top .df .txt {
    margin-bottom: 6.52174vw;
  }
  .p_company .company_top .df .map iframe {
    height: 78.98551vw;
  }
  .p_company .company_bot .df .it + .it {
    margin-top: 6.03865vw;
  }
  .p_company .company_bot .df .it .map iframe {
    height: 78.98551vw;
  }
  .p_company .company_bot .df .it .dlist {
    margin-bottom: 4.10628vw;
  }
  .p_company .company_bot .df .it h3 {
    background: #23253c;
    font-weight: bold;
    font-size: 4.83092vw;
    text-align: center;
    color: #fff;
    padding: 6.03865vw;
  }
  .boxoverlay {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1900;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    background: rgba(0, 0, 0, 0.7);
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
  }
  .modal {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 50%;
    width: 265.70048vw;
    height: auto;
    z-index: 2000;
    visibility: hidden;
    -webkit-transform: translateX(-50%) translateY(-50%);
       -moz-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
  }
  .modal.open {
    visibility: visible;
  }
  .modal.open .m_in {
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  .modal .wrap_modal {
    max-height: 80vh;
    overflow: auto;
  }
  .modal .m_in {
    background: #fff;
    -webkit-transform: scale(2);
       -moz-transform: scale(2);
        -ms-transform: scale(2);
            transform: scale(2);
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    background: #fff;
    padding: 7.24638vw;
  }
  .modal .m_area {
    position: relative;
  }
  .modal .btn_close {
    position: absolute;
    top: -21.73913vw;
    right: -7.24638vw;
    width: 12.07729vw;
    height: 12.07729vw;
    cursor: pointer;
  }
  .p_recruit .recruit .intro {
    margin-bottom: 28.98551vw;
  }
  .p_recruit .recruit .intro_main {
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #f4f7fc;
    padding: 5.31401vw 5.31401vw 0;
  }
  .p_recruit .recruit .intro_main .df figure {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 55.55556vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    overflow: hidden;
    margin-bottom: -13.04348vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 6.76329vw;
  }
  .p_recruit .recruit .intro_main .df figure img {
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    overflow: hidden;
    -moz-box-shadow: 0vw 0vw 3.62319vw rgba(24, 110, 225, 0.2);
         box-shadow: 0vw 0vw 3.62319vw rgba(24, 110, 225, 0.2);
  }
  .p_recruit .recruit .intro_main .df .txt {
    width: 100%;
    font-size: 3.86473vw;
    line-height: 1.625;
  }
  .p_recruit .recruit .intro_main .df .txt .it_tt {
    font-weight: bold;
    font-size: 5.7971vw;
    line-height: 1.45833;
    color: #23253c;
    position: relative;
    padding-left: 5.55556vw;
    margin-bottom: 5.55556vw;
  }
  .p_recruit .recruit .intro_main .df .txt .it_tt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 3.1401vw;
    height: 3.1401vw;
    background: #23253c;
    -moz-border-radius: 2415.21739vw;
         border-radius: 2415.21739vw;
    display: block;
  }
  .p_recruit .recruit .intro_main .df .txt .it_list {
    margin-top: 4.83092vw;
    width: 142.99517vw;
    max-width: 100%;
  }
  .p_recruit .recruit .intro_main .df .txt .it_list li {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #23253c;
    padding: 2.41546vw 4.34783vw;
    font-size: 3.86473vw;
    line-height: 1.625;
    color: #fff;
    font-weight: bold;
    margin-bottom: 1.93237vw;
  }
  .p_recruit .recruit .intro_main .df .txt .it_list li span {
    width: 10.86957vw;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .p_recruit .recruit .data .row {
    padding: 0;
  }
  .p_recruit .recruit .data_top {
    position: relative;
    z-index: 2;
    padding: 12.07729vw 3.62319vw 26.57005vw;
    -moz-border-radius: 4.83092vw;
         border-radius: 4.83092vw;
    background: -webkit-gradient(linear, left bottom, left top, from(#38baff), to(#115fdd));
    background: -webkit-linear-gradient(bottom, #38baff 0%, #115fdd 100%);
    background: -moz- oldlinear-gradient(bottom, #38baff 0%, #115fdd 100%);
    background: linear-gradient(to top, #38baff 0%, #115fdd 100%);
  }
  .p_recruit .recruit .data_top .t_ttl {
    color: #fff;
    text-align: center;
  }
  .p_recruit .recruit .data_top .dt_list {
    width: 235.2657vw;
    max-width: 100%;
    display: -ms-grid;
    display: grid;
    gap: 9.17874vw 2.89855vw;
    -ms-grid-columns: (minmax(0, 1fr))[2];
        grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0 auto;
  }
  .p_recruit .recruit .data_top .dt_list li {
    padding: 5.07246vw 5.31401vw 4.83092vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #fff;
    text-align: center;
    position: relative;
  }
  .p_recruit .recruit .data_top .dt_list li .it_tt {
    font-weight: 900;
    font-size: 3.62319vw;
    color: #23253c;
  }
  .p_recruit .recruit .data_top .dt_list li figure {
    margin: 2.41546vw 0;
    text-align: center;
  }
  .p_recruit .recruit .data_top .dt_list li figure img {
    width: 14.37198vw;
    display: inline-block;
  }
  .p_recruit .recruit .data_top .dt_list li .txt01 {
    font-weight: 900;
    font-size: 4.10628vw;
  }
  .p_recruit .recruit .data_top .dt_list li .txt01 i {
    font-family: "Bebas Neue", sans-serif;
    font-weight: bold;
    font-size: 16.18357vw;
    line-height: 1;
    font-style: normal;
    display: inline-block;
    margin: 0 1.20773vw;
  }
  .p_recruit .recruit .data_top .dt_list li .txt01 .pos {
    position: relative;
  }
  .p_recruit .recruit .data_top .dt_list li .txt01 .pos small {
    position: absolute;
    top: -4.83092vw;
    left: 0.72464vw;
    width: 100%;
    font-weight: normal;
    font-size: 2.41546vw;
    line-height: 1.1;
    text-align: left;
  }
  .p_recruit .recruit .data_top .dt_list li .txt02 {
    position: absolute;
    left: 50%;
    bottom: -5.55556vw;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 38.4058vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #fff500;
    max-width: 100%;
    font-weight: bold;
    font-size: 2.89855vw;
    color: #23253c;
    padding: 1.20773vw 0;
  }
  .p_recruit .recruit .data_top .dt_list li .txt02 small {
    display: block;
    font-size: 2.41546vw;
  }
  .p_recruit .recruit .data_mid {
    margin-top: -7.24638vw;
    position: relative;
  }
  .p_recruit .recruit .data_mid h3 {
    position: absolute;
    left: 50%;
    top: -1.93237vw;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 92.75362vw;
    text-align: center;
    z-index: 3;
  }
  .p_recruit .recruit .data_mid h3 span {
    position: relative;
    padding: 2.41546vw 7.24638vw;
    -moz-border-radius: 8.69565vw;
         border-radius: 8.69565vw;
    background: #23253c;
    font-weight: bold;
    font-size: 4.34783vw;
    line-height: 1.44444;
    color: #fff;
    display: block;
  }
  .p_recruit .recruit .data_mid h3 span::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -2.657vw;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 2.41546vw solid transparent;
    border-right: 2.41546vw solid transparent;
    border-top: 2.89855vw solid #23253c;
  }
  .p_recruit .recruit .data_bot {
    -moz-border-radius: 0 0 2.41546vw 2.41546vw;
         border-radius: 0 0 2.41546vw 2.41546vw;
    background: #f4f7fc;
    -moz-box-shadow: 0vw 0vw 3.62319vw rgba(16, 93, 196, 0.16);
         box-shadow: 0vw 0vw 3.62319vw rgba(16, 93, 196, 0.16);
    padding-bottom: 8.21256vw;
  }
  .p_recruit .recruit .data_bot .db_list {
    width: 92.75362vw;
    max-width: 100%;
    margin: 0 auto;
    margin-top: -15.45894vw;
    margin-bottom: 10.38647vw;
    position: relative;
    z-index: 4;
  }
  .p_recruit .recruit .data_bot .db_list li {
    padding: 4.34783vw 4.34783vw 4.34783vw 16.18357vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #166be2;
    font-weight: bold;
    font-size: 4.34783vw;
    line-height: 1.44444;
    color: #fff;
    position: relative;
    margin-bottom: 2.657vw;
  }
  .p_recruit .recruit .data_bot .db_list li span {
    color: #FFEB00;
  }
  .p_recruit .recruit .data_bot .db_list li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 4.83092vw;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 7.24638vw;
    height: 7.97101vw;
    background: url(../img/recruit/ic_check.png) center/100% 100% no-repeat;
    display: block;
  }
  .p_recruit .recruit .data_bot h3 {
    font-weight: bold;
    font-size: 7.72947vw;
    text-align: center;
    color: #23253c;
    margin-bottom: 3.1401vw;
  }
  .p_recruit .recruit .data_bot .box {
    width: 92.75362vw;
    max-width: 100%;
    margin: 0 auto;
    padding: 3.1401vw 2.41546vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #166be2;
    text-align: center;
  }
  .p_recruit .recruit .data_bot .box ul {
    display: -ms-grid;
    display: grid;
    gap: 2.41546vw;
    -ms-grid-columns: (minmax(0, 1fr))[2];
        grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .p_recruit .recruit .data_bot .box ul li {
    padding: 3.1401vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk {
    font-size: 3.38164vw;
    line-height: 1.28571;
    text-align: center;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk p {
    min-height: 8.69565vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk > span {
    font-weight: bold;
    font-size: 5.7971vw;
    color: #166be2;
    margin-bottom: 2.41546vw;
    display: block;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk > span.sm {
    font-size: 5.07246vw;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk .num {
    font-weight: bold;
    font-size: 5.7971vw;
    line-height: 1;
    margin-top: 2.41546vw;
  }
  .p_recruit .recruit .data_bot .box ul li .txt_blk .num i {
    font-style: normal;
    font-family: "Bebas Neue", sans-serif;
    font-weight: bold;
    font-size: 12.80193vw;
    color: #23253c;
    line-height: 1;
  }
  .p_recruit .recruit .questionnaire {
    padding: 12.07729vw 0 20.28986vw;
  }
  .p_recruit .recruit .questionnaire .t_ttl {
    color: #166be2;
    margin-bottom: 16.90821vw;
  }
  .p_recruit .recruit .questionnaire .t_ttl span {
    line-height: 1.5;
  }
  .p_recruit .recruit .questionnaire .df + .df {
    margin-top: 11.5942vw;
  }
  .p_recruit .recruit .questionnaire .df > span {
    display: block;
    line-height: 1.45833;
    font-weight: 900;
    font-size: 4.83092vw;
    color: #23253c;
    margin-bottom: 4.83092vw;
  }
  .p_recruit .recruit .questionnaire .df ul {
    width: 183.57488vw;
    max-width: 100%;
  }
  .p_recruit .recruit .questionnaire .df ul.st2 li {
    background-color: #2f325d;
  }
  .p_recruit .recruit .questionnaire .df ul li {
    font-weight: bold;
    font-size: 3.86473vw;
    line-height: 1.625;
    text-align: left;
    color: #fff;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #23253c;
    padding: 5.31401vw 7.72947vw;
  }
  .p_recruit .recruit .questionnaire .df ul li + li {
    margin-top: 2.41546vw;
  }
  .p_recruit .recruit .application .tab_content {
    display: none;
  }
  .p_recruit .recruit .application .tab_content.active {
    display: block;
  }
  .p_recruit .recruit .application h3 {
    font-weight: 900;
    font-size: 10.14493vw;
    color: #166be2;
    margin-bottom: 13.28502vw;
  }
  .p_recruit .recruit .application .tabs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-bottom: 4.34783vw;
  }
  .p_recruit .recruit .application .tabs ~ .tabs {
    margin-top: 23.42995vw;
  }
  .p_recruit .recruit .application .tabs li {
    width: -webkit-calc((100% - 2.41546vw) / 2);
    width: -moz-calc((100% - 2.41546vw) / 2);
    width: calc((100% - 2.41546vw) / 2);
  }
  .p_recruit .recruit .application .tabs li a {
    min-height: 13.04348vw;
    background: #6e74b9;
    font-weight: 900;
    font-size: 4.83092vw;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_recruit .recruit .application .tabs li a.active {
    min-height: 15.94203vw;
    background: #2e325d;
  }
  .p_recruit .recruit .application .dlist dl:nth-child(odd) dd {
    background-color: #edeef5;
  }
  .p_recruit .recruit .application .dlist dl dt {
    background: #2e325d;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    font-weight: bold;
    font-size: 4.83092vw;
    padding: 4.83092vw 7.72947vw;
    color: #fff;
  }
  .p_recruit .recruit .application .dlist dl dd {
    padding: 4.83092vw 7.72947vw;
    font-weight: 500;
    font-size: 3.86473vw;
    line-height: 1.625;
    text-align: left;
  }
  .p_recruit .recruit .entry {
    padding: 15.70048vw 0 0;
  }
  .p_recruit .recruit .entry .t_ttl {
    text-align: center;
  }
  .p_404 {
    text-align: center;
    font-size: 3.86473vw;
    line-height: 1.73;
    min-height: -webkit-calc(100vh - 56.03865vw);
    min-height: -moz-calc(100vh - 56.03865vw);
    min-height: calc(100vh - 56.03865vw);
  }
  .p_404 h3 {
    font-weight: bold;
    font-size: 25.92593vw;
    line-height: 1.4472;
  }
  .p_404 .btn {
    margin-top: 12.07729vw;
  }
  .p_contact .contact .row {
    max-width: 181.88406vw;
  }
  .p_contact .contact .completed {
    text-align: center;
    font-size: 3.86473vw;
    line-height: 1.73;
    min-height: -webkit-calc(100vh - 92.51208vw);
    min-height: -moz-calc(100vh - 92.51208vw);
    min-height: calc(100vh - 92.51208vw);
  }
  .p_contact .contact .completed h3 {
    font-weight: 700;
    font-size: 5.7971vw;
    line-height: 1.20833;
    margin-bottom: 5.31401vw;
  }
  .p_contact .contact .completed .f_btn {
    margin-top: 40.33816vw;
  }
  .p_contact .contact .f_btn {
    padding: 0;
    outline: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: 0;
    cursor: pointer;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #ef9021;
    font-size: 4.83092vw;
    font-weight: bold;
    width: 78.98551vw;
    height: 21.73913vw;
    -moz-border-radius: 2.41546vw;
         border-radius: 2.41546vw;
    background: #fff;
    border: 0.72464vw solid #ef9021;
    margin: 8.45411vw auto 0;
    -moz-box-shadow: 0 0.72464vw 0vw 0vw #ef9021;
         box-shadow: 0 0.72464vw 0vw 0vw #ef9021;
    max-width: 100%;
  }
  .p_contact .contact .form {
    padding-bottom: 16.90821vw;
  }
  .p_contact .contact .form .f_txtError {
    font-size: 3.38164vw;
    letter-spacing: 0.07em;
    margin-bottom: 0.96618vw;
    color: #f00;
  }
  .p_contact .contact .form dl + dl {
    margin-top: 6.03865vw;
  }
  .p_contact .contact .form dl dt {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: bold;
    font-size: 4.34783vw;
    color: #2f2f2f;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin-bottom: 2.657vw;
  }
  .p_contact .contact .form dl dt span {
    width: 10.14493vw;
    height: 6.03865vw;
    -moz-border-radius: 1.44928vw;
         border-radius: 1.44928vw;
    background: #ef8021;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: normal;
    font-size: 3.38164vw;
    text-align: center;
    color: #fff;
    margin-left: 3.38164vw;
  }
  .p_contact .contact .form dl dt small {
    width: 10.14493vw;
    height: 6.03865vw;
    -moz-border-radius: 1.44928vw;
         border-radius: 1.44928vw;
    background: #9f9f9f;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: normal;
    font-size: 3.38164vw;
    text-align: center;
    color: #fff;
    margin-left: 3.38164vw;
  }
  .p_contact .contact .form dl dd {
    width: 100%;
  }
  .p_contact .contact .form dl dd input {
    width: 100%;
    padding: 0 3.62319vw;
    outline: none;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    height: 14.49275vw;
    background: #fff;
    -moz-border-radius: 2.657vw;
         border-radius: 2.657vw;
    font-size: -webkit-calc(max(4.34783vw, 16px));
    font-size: -moz-calc(max(4.34783vw, 16px));
    font-size: calc(max(4.34783vw, 16px));
    border: 1px solid #bcbcbc;
  }
  .p_contact .contact .form dl dd input::-webkit-input-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd input::-moz-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd input:-ms-input-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd input::placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd textarea {
    width: 100%;
    padding: 2.41546vw 3.62319vw;
    outline: none;
    font-size: -webkit-calc(max(4.34783vw, 16px));
    font-size: -moz-calc(max(4.34783vw, 16px));
    font-size: calc(max(4.34783vw, 16px));
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    height: 52.89855vw;
    border: 1px solid #bcbcbc;
    background: #fff;
    -moz-border-radius: 2.657vw;
         border-radius: 2.657vw;
  }
  .p_contact .contact .form dl dd textarea::-webkit-input-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd textarea::-moz-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd textarea:-ms-input-placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd textarea::placeholder {
    color: #939393;
    opacity: 1;
  }
  .p_contact .contact .form dl dd .f_df {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_contact .contact .form dl dd .f_df > span {
    margin-left: 1.93237vw;
    font-size: 4.34783vw;
    color: #2f2f2f;
  }
  .p_contact .contact .form dl dd .select label {
    display: block;
    position: relative;
    -moz-border-radius: 2.657vw;
         border-radius: 2.657vw;
    -webkit-perspective: 0.24155vw;
       -moz-perspective: 0.24155vw;
            perspective: 0.24155vw;
    width: 63.04348vw;
    height: 14.49275vw;
    background: #fff;
    border: 1px solid #bcbcbc;
    position: relative;
  }
  .p_contact .contact .form dl dd .select label::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 1.20773vw;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 6.28019vw;
    height: 2.41546vw;
    background: url(../img/ic_select.svg) center/100% 100% no-repeat;
    display: block;
  }
  .p_contact .contact .form dl dd .select label select {
    width: 100%;
    height: 100%;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    outline: none;
    border: none;
    padding: 0 8.45411vw 0 6.28019vw;
    background: transparent;
    font-weight: 400;
    font-size: -webkit-calc(max(4.34783vw, 16px));
    font-size: -moz-calc(max(4.34783vw, 16px));
    font-size: calc(max(4.34783vw, 16px));
    color: #2f2f2f;
    cursor: pointer;
    position: relative;
    z-index: 3;
  }
  .p_contact .contact .form dl dd .select label select::-ms-expand {
    display: none;
  }
}
.error {
  color: #ff0000;
  display: block;
  width: 100%;
}
.wpcf7-not-valid-tip,.wpcf7-response-output {
  display: none!important;
}