@charset "UTF-8";
/* ==========================================================
Name:
    module.css

Description:
    サイトで共通使用する汎用モジュール及びページ固有のスタイルを記述する
    汎用モジュールは、アルファベット降順(A->Z)に記述する
    ページ固有のスタイルは、ディレクトリ名のアルファベット降順(A->Z)、
    ファイル名のアルファベット降順(A->Z)にそれぞれ記述する

Contents:
    module
    page
    utility
========================================================== */
/* ==========================================================
*
*   module
*
========================================================== */
/* ---------------------------------------------
*   Buttons
--------------------------------------------- */
.mod-body-btn {
    position: relative;
    display: inline-block;
    background-color: #000;
    margin-top: 44px;
    height: 55px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-body-btn {
        margin-top: 3.25926vw;
        height: 4.07407vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-body-btn {
        margin-top: 6.875vw;
        height: 10.625vw;
    }
}

.mod-body-btn--2 {
    margin-top: 37px;
}

@media screen and (max-width: 750px) {
    .mod-body-btn--2 {
        display: block;
        width: 65.625vw;
        height: 12.5vw;
        margin: 7.5vw auto 0;
    }
}

.mod-body-btn__txt {
    position: absolute;
    top: 50%;
    left: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 99;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-body-btn__txt {
        left: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-body-btn__txt {
        font-size: 3.75vw;
        left: 7.03125vw;
    }
}

.contact .mod-body-btn__txt {
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.entry .mod-body-btn__txt {
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 750px) {
    .mod-body-btn--2 .mod-body-btn__txt {
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
}

.mod-index .mod-body-btn {
    margin-left: 5px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-index .mod-body-btn {
        margin-left: 0.37037vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-index .mod-body-btn {
        margin-left: 0;
    }
}

.mod-btn {
    display: inline-block;
    position: relative;
    padding: 1.2em 4em 1.3em 3.2em;
    border: 1px solid #000;
    -webkit-transition: color .2s linear;
    transition: color .2s linear;
}

.header .mod-btn {
    margin-left: 22px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .header .mod-btn {
        margin-left: 1.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .header .mod-btn {
        margin-left: 0;
        border: none;
        padding: 4.6875vw 0;
    }
}

.mod-body-btn .mod-btn {
    width: 220px;
    height: 55px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-body-btn .mod-btn {
        width: 16.2963vw;
        height: 4.07407vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-body-btn .mod-btn {
        width: 46.875vw;
        height: 10.625vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-body-btn--2 .mod-btn {
        width: 100%;
        height: 100%;
    }
}

.contact .mod-btn {
    width: 760px;
    height: 125px;
    font-size: 22px;
    letter-spacing: 0.25em;
    padding: 1.8em 4em 1.8em 4.1em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact .mod-btn {
        width: 56.2963vw;
        height: 9.25926vw;
        font-size: 1.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .contact .mod-btn {
        width: 84.375vw;
        height: 19.53125vw;
        letter-spacing: 0;
        font-size: 3.75vw;
    }
}

.mod-btn:before {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    width: 0;
    height: 100%;
    background-color: #000;
    -webkit-transition: width 0.2s cubic-bezier(0, 0, 1, 0), border 0.2s linear;
    transition: width 0.2s cubic-bezier(0, 0, 1, 0), border 0.2s linear;
    z-index: -1;
}

.mod-btn:after {
    position: absolute;
    top: 50%;
    right: 9px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3px 0 3px 4px;
    border-color: transparent transparent transparent #000;
    -webkit-transition: border .2s linear;
    transition: border .2s linear;
    z-index: 99;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-btn:after {
        right: 0.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-btn:after {
        right: 3.125vw;
        border-width: 0.9375vw 0 0.9375vw 1.09375vw;
    }
}

@media screen and (max-width: 750px) {
    .header .mod-btn:after {
        position: absolute;
        top: auto;
        bottom: 1em;
        left: 0;
        letter-spacing: .05em;
        font-size: 2.8125vw;
        font-weight: bold;
        color: #808080;
        content: attr(data-text);
        border: none;
    }
}

.contact .mod-btn:after {
    right: 23px;
    border-width: 5px 0 5px 5px;
}

@media screen and (max-width: 750px) {
    .contact .mod-btn:after {
        right: 4.6875vw;
        border-width: 1.25vw 0 1.25vw 1.71875vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-body-btn--2 .mod-btn:after {
        right: 4.6875vw;
        border-width: 1.25vw 0 1.25vw 1.5625vw;
    }
}

@media screen and (min-width: 751px) {
    .mod-btn:hover {
        color: #fff;
        opacity: 1;
    }
    .mod-btn:hover:before {
        width: 100%;
    }
    .mod-btn:hover:after {
        border-color: transparent transparent transparent #fff;
    }
}

.mod-btn--green {
    border: none;
    color: #fff;
    -webkit-transition: background .2s;
    transition: background .2s;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-btn--green {
        font-size: 1.03704vw;
    }
}

.mod-btn--green:before {
    width: 0;
    background-color: #479A4D;
    -webkit-transition: width 0.2s cubic-bezier(0, 0, 1, 0);
    transition: width 0.2s cubic-bezier(0, 0, 1, 0);
    z-index: 1;
}

.mod-btn--green:after {
    border-color: transparent transparent transparent #fff;
}

@media screen and (min-width: 751px) {
    .mod-btn--green:hover:before {
        width: 100%;
    }
}

/* ---------------------------------------------
*   module
--------------------------------------------- */
.mod-ttl {
    position: relative;
    padding-bottom: 1em;
    font-size: 54px;
    font-family: 'montserrat-bold';
    line-height: 1;
    letter-spacing: -0.01em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-ttl {
        font-size: 4vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-ttl {
        font-size: 7.8125vw;
        letter-spacing: 0em;
        padding-left: 0.625vw;
    }
}

.mod-ttl:after {
    position: absolute;
    bottom: 2em;
    left: 5px;
    letter-spacing: .05em;
    font-size: 14px;
    font-weight: bold;
    color: #808080;
    content: attr(data-text);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-ttl:after {
        left: 0.37037vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-ttl:after {
        bottom: .7em;
        left: 1.71875vw;
        font-size: 3.59375vw;
    }
}

.mod-ttl--thin {
    font-family: 'Montserrat-el';
}

.mod-ttl--small {
    font-size: 25px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-ttl--small {
        font-size: 1.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-ttl--small {
        font-size: 5.625vw;
        text-align: center;
    }
}

.mod-ttl--small:after {
    font-size: 12px;
    bottom: .4em;
    left: 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-ttl--small:after {
        font-size: 0.88889vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-ttl--small:after {
        font-size: 3.4375vw;
        bottom: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        letter-spacing: .18em;
    }
}

@media screen and (max-width: 750px) {
    .profile .mod-ttl--small:after {
        left: 1.25vw;
        -webkit-transform: none;
        transform: none;
    }
}

@media screen and (max-width: 750px) {
    .profile .mod-ttl--small {
        position: relative;
        top: 29.6875vw;
        left: 60%;
        display: inline-block;
    }
}

.mod-ttl--center {
    text-align: center;
}

.mod-ttl--center:after {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.mod-ttl--middle {
    font-size: 43px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-ttl--middle {
        font-size: 3.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-ttl--middle {
        font-size: 7.65625vw;
        padding-left: 0;
    }
}

.mod-ttl--middle:after {
    bottom: 1em;
}

@media screen and (max-width: 750px) {
    .mod-ttl--middle:after {
        bottom: .5em;
    }
}

.mod-ttl--recruit:after {
    left: 0;
    bottom: 1.5em;
}

@media screen and (max-width: 750px) {
    .mod-ttl--recruit:after {
        left: 0.9375vw;
        bottom: .6em;
        letter-spacing: .12em;
    }
}

.mod-lead-container {
    text-align: center;
    margin-top: 20px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-lead-container {
        margin-top: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-lead-container {
        margin-top: 5.15625vw;
    }
}

.mod-subttl {
    font-size: 25px;
    letter-spacing: .13em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-subttl {
        font-size: 1.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-subttl {
        font-size: 5.625vw;
        line-height: 1.8;
        letter-spacing: 0;
    }
}

.mod-leadtxt {
    font-size: 16px;
    margin-top: 27px;
    line-height: 2.2;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-leadtxt {
        font-size: 1.18519vw;
        margin-top: 2vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-leadtxt {
        font-size: 3.75vw;
        margin-top: 6.25vw;
        padding: 0 7.03125vw;
        -webkit-font-feature-settings: 'palt';
        font-feature-settings: 'palt';
        text-align: left;
        line-height: 2.06;
        letter-spacing: 0.02em;
    }
}

.top-service .mod-index {
    margin-left: 173px;
    padding-top: 76px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-service .mod-index {
        margin-left: 12.81481vw;
        padding-top: 5.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .top-service .mod-index {
        margin-left: 14.0625vw;
        padding-top: 62.8125vw;
    }
}

.top-quality .mod-index {
    margin-left: 855px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-quality .mod-index {
        margin-left: 63.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .top-quality .mod-index {
        margin-top: 62.8125vw;
        margin-left: 14.0625vw;
    }
}

.top-company .mod-index {
    margin-top: 134px;
    margin-left: 180px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-company .mod-index {
        margin-top: 9.92593vw;
        margin-left: 13.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .top-company .mod-index {
        margin-top: 8.125vw;
        margin-left: 14.0625vw;
    }
}

.top-recruit .mod-index {
    position: absolute;
    top: 125px;
    left: 835px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-recruit .mod-index {
        top: 9.25926vw;
        left: 61.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .top-recruit .mod-index {
        top: 63.125vw;
        left: 14.0625vw;
    }
}

.mod-index-body__txt {
    font-size: 20px;
    letter-spacing: .01em;
    padding-left: 5px;
    margin-top: 20px;
    line-height: 1.6;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-index-body__txt {
        font-size: 1.48148vw;
        padding-left: 0.37037vw;
        margin-top: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-index-body__txt {
        font-size: 4.21875vw;
        padding-left: 1.5625vw;
        letter-spacing: .1em;
    }
}

@media screen and (max-width: 750px) {
    .top-quality .mod-index-body__txt {
        -webkit-font-feature-settings: 'palt';
        font-feature-settings: 'palt';
        letter-spacing: .18em;
    }
}

@media screen and (max-width: 750px) {
    .top-company .mod-index-body__txt {
        letter-spacing: .16em;
    }
}

/* ---------------------------------------------
*   下層共通モジュール
--------------------------------------------- */
.mod-head {
    position: relative;
    height: 300px;
    margin-left: calc(100vw - 70.81%);
}

.mod-head--contact {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 250px;
    padding-top: 110px;
    margin-left: 0;
    text-align: center;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-head {
        height: 22.22222vw;
    }
    .mod-head--contact {
        height: 18.51852vw;
        padding-top: 8.14815vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-head {
        margin-left: 0;
        height: 31.25vw;
    }
    .mod-head--contact {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        height: 31.25vw;
        padding-top: 0;
    }
}

.company .mod-head {
    background: url(../img/company/kv_head.jpg) right top no-repeat;
    background-size: cover;
}

@media screen and (max-width: 750px) {
    .company .mod-head {
        background: url(../img/company/sp/kv_head.jpg) 0 0 no-repeat;
        background-size: 100% auto;
    }
}

.service .mod-head {
    background: url(../img/service/kv_head.jpg) right top no-repeat;
    background-size: cover;
}

@media screen and (max-width: 750px) {
    .service .mod-head {
        background: url(../img/service/sp/kv_head.jpg) 0 0 no-repeat;
        background-size: 100% auto;
    }
}

.quality .mod-head {
    background: url(../img/quality/kv_head.jpg) right top no-repeat;
    background-size: cover;
}

@media screen and (max-width: 750px) {
    .quality .mod-head {
        background: url(../img/quality/sp/kv_head.jpg) 0 0 no-repeat;
        background-size: 100% auto;
    }
}

.recruit .mod-head {
    background: url(../img/recruit/kv_head.jpg) right top no-repeat;
    background-size: cover;
}

@media screen and (max-width: 750px) {
    .recruit .mod-head {
        background: url(../img/recruit/sp/kv_head.jpg) 0 0 no-repeat;
        background-size: 100% auto;
    }
}

.voice .mod-head {
    height: auto;
    margin-top: 130px;
    margin-left: 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .voice .mod-head {
        margin-top: 9.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .voice .mod-head {
        margin-top: 14.375vw;
    }
}

.mod-head__ttl {
    position: absolute;
    top: 37%;
    left: -220px;
    padding-bottom: 1em;
    font-size: 54px;
    font-family: 'montserrat-bold';
    line-height: 1;
    letter-spacing: -0.01em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-head__ttl {
        font-size: 4vw;
        left: -16.2963vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-head__ttl {
        font-size: 8.4375vw;
        left: 7.1875vw;
        top: auto;
        bottom: -13.4375vw;
    }
}

.mod-head__ttl:after {
    position: absolute;
    bottom: 2em;
    left: 5px;
    letter-spacing: .05em;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "meiryo", sans-serif;
    font-size: 14px;
    font-weight: bold;
    color: #808080;
    content: attr(data-text);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-head__ttl:after {
        left: 0.37037vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .mod-head__ttl:after {
        bottom: .7em;
        font-size: 3.75vw;
    }
}

.mod-head__ttl--contact {
    position: static;
    top: auto;
    left: auto;
}

.mod-head__ttl--contact:after {
    position: static;
    display: block;
    margin-top: 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mod-head__ttl--contact {
        left: auto;
    }
}

@media screen and (max-width: 750px) {
    .mod-head__ttl--contact {
        left: auto;
        bottom: auto;
        padding-bottom: 0;
    }
    .mod-head__ttl--contact:after {
        margin-top: 1.5625vw;
    }
}

.voice .mod-head__ttl {
    font-size: 40px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .voice .mod-head__ttl {
        font-size: 2.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .voice .mod-head__ttl {
        font-size: 8.4375vw;
        position: relative;
        top: 0;
        text-align: center;
    }
}

.voice .mod-head__ttl:after {
    bottom: .7em;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.main-lead {
    text-align: center;
    margin-top: 142px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .main-lead {
        margin-top: 10.51852vw;
    }
}

@media screen and (max-width: 750px) {
    .main-lead {
        text-align: center;
        margin-top: 31.25vw;
    }
}

.main-lead__ttl {
    font-size: 18px;
    line-height: 2;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .3em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .main-lead__ttl {
        font-size: 1.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .main-lead__ttl {
        font-size: 4.6875vw;
        letter-spacing: 0;
        line-height: 1.8;
    }
}

@media screen and (max-width: 750px) {
    .service .main-lead__ttl {
        letter-spacing: .1em;
    }
}

.main-lead__txt {
    font-size: 14px;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    margin-top: 25px;
    line-height: 2;
    letter-spacing: .08em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .main-lead__txt {
        font-size: 1.03704vw;
        margin-top: 1.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .main-lead__txt {
        font-size: 3.75vw;
        padding: 0 7.8125vw;
        letter-spacing: 0;
        margin-top: 7.03125vw;
    }
}

@media screen and (max-width: 750px) {
    .recruit .main-lead__txt {
        text-align: left;
    }
}

@media screen and (max-width: 750px) {
    .service .main-lead__txt {
        margin-top: 3.125vw;
    }
}

/*  section
--------------------------------------------- */
.section__ttl {
    position: relative;
    font-size: 24px;
    font-weight: bold;
    padding-bottom: 1em;
    letter-spacing: 0.05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .section__ttl {
        font-size: 1.77778vw;
    }
}

@media screen and (max-width: 750px) {
    .section__ttl {
        font-size: 5.78125vw;
    }
}

.section__ttl:after {
    display: block;
    content: attr(data-text);
    font-size: 12px;
    color: #808080;
    letter-spacing: 0;
}

@media screen and (max-width: 750px) {
    .section__ttl:after {
        font-size: 3.75vw;
    }
}

.section__container {
    max-width: 1350px;
    margin: 0 auto;
}

@media screen and (max-width: 750px) {
    .section__container {
        max-width: auto;
        max-width: initial;
        text-align: center;
    }
}

.section__container--right {
    position: relative;
    padding-left: 775px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .section__container--right {
        padding-left: 57.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .section__container--right {
        padding: 29.0625vw 0 0 0;
    }
}

.section__container--left {
    position: relative;
    padding-left: 236px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .section__container--left {
        padding-left: 17.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .section__container--left {
        padding: 29.0625vw 0 0 0;
    }
}

.section__container--recruit {
    position: relative;
    padding-top: 148px;
    padding-left: 175px;
    padding-bottom: 47px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .section__container--recruit {
        padding-top: 10.96296vw;
        padding-left: 12.96296vw;
        padding-bottom: 3.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .section__container--recruit {
        padding: 23.125vw 0 15.625vw;
    }
}

.section__copy {
    width: 365px;
    margin-top: 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .section__copy {
        width: 27.03704vw;
        margin-top: 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .section__copy {
        width: 100%;
        margin-top: 69.53125vw;
    }
}

.section__lead {
    font-size: 18px;
    line-height: 1.8;
    letter-spacing: .18em;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .section__lead {
        font-size: 1.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .section__lead {
        font-size: 4.6875vw;
        letter-spacing: .15em;
    }
}

.section__lead--ls-mid {
    letter-spacing: .08em;
}

@media screen and (max-width: 750px) {
    .hygiene .section__lead {
        text-align: left;
        padding-left: 7.8125vw;
    }
}

@media screen and (max-width: 750px) {
    .kit .section__lead {
        text-align: left;
        padding-left: 7.03125vw;
    }
}

.features .section__lead {
    margin-top: 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features .section__lead {
        margin-top: 0.74074vw;
    }
}

.section__txt {
    line-height: 2.2;
    margin-top: 30px;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .05em;
    font-size: 14px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .section__txt {
        margin-top: 2.22222vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .section__txt {
        margin-top: 8.75vw;
        font-size: 3.75vw;
        letter-spacing: 0;
    }
}

@media screen and (max-width: 750px) {
    .hygiene .section__txt {
        padding: 0 6.25vw;
        text-align: left;
    }
    .android .hygiene .section__txt {
        padding: 0 4.6875vw;
    }
}

.section__copy-img {
    width: 355px;
    margin-top: 58px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .section__copy-img {
        width: 26.2963vw;
        margin-top: 4.2963vw;
    }
}

.section__under-txt {
    position: absolute;
    bottom: 80px;
    left: 320px;
    line-height: 2.2;
    letter-spacing: -.05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .section__under-txt {
        bottom: 5.92593vw;
        left: 23.7037vw;
    }
}

/* ---------------------------------------------
*   staffvoice
--------------------------------------------- */
.staffvoice {
    text-align: center;
    padding: 170px 0 230px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staffvoice {
        padding: 12.59259vw 0 17.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .staffvoice {
        padding: 28.59375vw 0 31.25vw;
    }
}

.voice .staffvoice {
    padding: 98px 0 45px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .voice .staffvoice {
        padding: 7.25926vw 0 3.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .voice .staffvoice {
        padding: 9.375vw 0 7.03125vw;
    }
}

.staffvoice-list {
    margin: 22px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staffvoice-list {
        margin: 1.62963vw auto 0;
    }
}

@media screen and (max-width: 750px) {
    .staffvoice-list {
        max-width: auto;
        max-width: initial;
        width: 100%;
    }
}

.staffvoice-list__item {
    width: calc(50% - 1px);
    height: 300px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staffvoice-list__item {
        height: 22.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .staffvoice-list__item {
        height: 21.42857rem;
    }
}

@media screen and (max-width: 750px) and (orientation: landscape) {
    .staffvoice-list__item {
        width: calc(50% - 1.5px);
    }
}

.staffvoice-list__item--1 {
    background: url(../img/recruit/bnr_staff1.jpg) center no-repeat;
    background-size: 100% auto;
    margin-bottom: 2px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staffvoice-list__item--1 {
        margin-bottom: 0.14815vw;
    }
}

@media screen and (max-width: 750px) {
    .staffvoice-list__item--1 {
        background: url(../img/recruit/sp/bnr_staff1.jpg) center no-repeat;
        background-size: 100% auto;
        margin-bottom: 0.3125vw;
    }
}

.staffvoice-list__item--2 {
    background: url(../img/recruit/bnr_staff2.jpg) center no-repeat;
    background-size: 100% auto;
    margin-bottom: 2px;
    margin-left: 2px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staffvoice-list__item--2 {
        margin-bottom: 0.14815vw;
        margin-left: 0.14815vw;
    }
}

@media screen and (max-width: 750px) {
    .staffvoice-list__item--2 {
        background: url(../img/recruit/sp/bnr_staff2.jpg) center no-repeat;
        background-size: 100% auto;
        margin-bottom: 0.3125vw;
        margin-left: 0.3125vw;
    }
}

.staffvoice-list__item--3 {
    background: url(../img/recruit/bnr_staff3.jpg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .staffvoice-list__item--3 {
        background: url(../img/recruit/sp/bnr_staff3.jpg) center no-repeat;
        background-size: 100% auto;
        margin-bottom: 0.3125vw;
    }
}

.staffvoice-list__item--4 {
    background: url(../img/recruit/bnr_staff4.jpg) center no-repeat;
    background-size: 100% auto;
    margin-left: 2px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staffvoice-list__item--4 {
        margin-left: 0.14815vw;
    }
}

@media screen and (max-width: 750px) {
    .staffvoice-list__item--4 {
        background: url(../img/recruit/sp/bnr_staff4.jpg) center no-repeat;
        background-size: 100% auto;
        margin-bottom: 0.3125vw;
        margin-left: 0.3125vw;
    }
}

.staffvoice-list__link {
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    display: inline-block;
    width: 100%;
    height: 100%;
    text-align: left;
    padding-top: 9em;
    padding-left: 4.6em;
    background-color: rgba(0, 0, 0, 0.4);
    -webkit-transition: background .3s, color .3s;
    transition: background .3s, color .3s;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staffvoice-list__link {
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .staffvoice-list__link {
        font-size: 4.375vw;
        background: none;
        padding: 16.40625vw 4.375vw;
        letter-spacing: .08em;
    }
}

.staffvoice-list__link--small {
    font-size: 14px;
    font-weight: normal;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staffvoice-list__link--small {
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .staffvoice-list__link--small {
        font-size: 3.75vw;
        display: block;
        margin-top: 0.9375vw;
    }
}

@media screen and (min-width: 751px) {
    .staffvoice-list__link:hover {
        color: #000;
        background-color: rgba(0, 0, 0, 0);
    }
}

/* ---------------------------------------------
*   entry list
--------------------------------------------- */
.entry-list {
    max-width: 1350px;
    margin: 18px auto 72px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-list {
        margin: 1.33333vw auto 5.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-list {
        max-width: auto;
        max-width: initial;
        display: block;
        padding-bottom: 14.375vw;
    }
}

.voice .entry-list {
    margin: 135px auto 152px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .voice .entry-list {
        margin: 10vw auto 11.25926vw;
    }
}

@media screen and (max-width: 750px) {
    .voice .entry-list {
        margin: 30vw auto 31.71875vw;
    }
}

.entry-list__item {
    position: relative;
    margin: 0 5px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-list__item {
        margin: 0 0.37037vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-list__item {
        margin: 0 auto;
        width: 84.375vw;
        height: 35vw;
    }
}

.entry-list__item--newgraduates {
    background: url(../img/recruit/bnr_new_graduates.jpg) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .entry-list__item--newgraduates {
        background: url(../img/recruit/sp/bnr_new_graduates.jpg) 0 0 no-repeat;
        background-size: 100% auto;
    }
}

.entry-list__item--career {
    background: url(../img/recruit/bnr_career.jpg) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .entry-list__item--career {
        background: url(../img/recruit/sp/bnr_career.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        margin-top: 1.5625vw;
    }
}

.entry-list__item--part {
    background: url(../img/recruit/bnr_part.jpg) 0 0 no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .entry-list__item--part {
        background: url(../img/recruit/sp/bnr_part.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        margin-top: 1.5625vw;
    }
}

.entry-list__link {
    width: 326px;
    height: 170px;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .02em;
    -webkit-transition: background .3s;
    transition: background .3s;
    background-color: rgba(0, 0, 0, 0);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-list__link {
        width: 24.14815vw;
        height: 12.59259vw;
        font-size: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-list__link {
        width: 100%;
        height: 100%;
        font-size: 5vw;
    }
}

@media screen and (min-width: 751px) {
    .entry-list__link:hover {
        background-color: rgba(0, 0, 0, 0.7);
    }
}

/* ==========================================================
*
*   page
*
========================================================== */
/* ---------------------------------------------
*   Index Page
--------------------------------------------- */
/*  main-visual
--------------------------------------------- */
.main-visual {
    width: 100vw;
    height: 51.85185vw;
}

@media screen and (max-width: 750px) {
    .main-visual {
        height: 109.375vw;
    }
}

@media screen and (max-width: 750px) {
    .main-visual--fukushima {
        height: 89.84375vw;
    }
}

.main-visual__item {
    position: relative;
    height: 51.85185vw;
    overflow: hidden !important;
}

@media screen and (max-width: 750px) {
    .main-visual__item {
        height: 109.375vw;
    }
}

.main-visual__copy {
    width: 100%;
    font-size: 36px;
    font-weight: bold;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1;
    text-align: center;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .main-visual__copy {
        font-size: 2.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .main-visual__copy {
        -webkit-font-feature-settings: 'palt';
        font-feature-settings: 'palt';
        font-size: 6.5625vw;
        top: 49%;
        line-height: 1.6;
        letter-spacing: .15em;
    }
}

.main-visual__copy--1 {
    color: #fff;
    text-shadow: 6px 6px 12px #795427, -6px -6px 12px #795427, 6px -6px 12px #795427, -6px 6px 12px #795427;
}

.main-visual__copy--2 {
    color: #000;
    text-shadow: 6px 6px 12px #fff, -6px -6px 12px #fff, 6px -6px 12px #fff, -6px 6px 12px #fff;
}

.main-visual__copy--3 {
    color: #fff;
    text-shadow: 6px 6px 12px #795427, -6px -6px 12px #795427, 6px -6px 12px #795427, -6px 6px 12px #795427;
}

.main-visual__copy--4 {
    color: #000;
    text-shadow: 6px 6px 12px #fff, -6px -6px 12px #fff, 6px -6px 12px #fff, -6px 6px 12px #fff;
}

.slide-img img {
    display: block;
}

.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img {
    -webkit-animation: fadezoom 10s 0s forwards;
    animation: fadezoom 10s 0s forwards;
}

@-webkit-keyframes fadezoom {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    100% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
}

@keyframes fadezoom {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    100% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
}

.swiper-pagination {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 1;
    margin-top: 20px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .swiper-pagination {
        margin-top: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .swiper-pagination {
        margin-top: 3.59375vw;
    }
}

.swiper-pagination-bullet {
    background-color: #CCC;
    outline: none;
    opacity: 1;
    margin: 0 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .swiper-pagination-bullet {
        margin: 0 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .swiper-pagination-bullet {
        width: 1.875vw;
        height: 1.875vw;
        margin: 0 2.1875vw;
    }
}

.swiper-pagination-bullet-active {
    background-color: #000;
}

/*  top-about
--------------------------------------------- */
.top-about {
    padding-top: 158px;
    background: url(../img/index/bg_silhouette.png) left -113px top -161px no-repeat;
    background-size: 120% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-about {
        padding-top: 11.7037vw;
        background: url(../img/index/bg_silhouette.png) left -8.37037vw top -11.92593vw no-repeat;
        background-size: 120% auto;
    }
}

@media screen and (max-width: 750px) {
    .top-about {
        padding-top: 28.125vw;
        background: url(../img/index/sp/bg_silhouette.png) left -20.3125vw top -22.34375vw no-repeat;
        background-size: 140% auto;
    }
}

.top-about__body {
    max-width: 1350px;
    height: 510px;
    margin: 110px auto 0;
    position: relative;
    background: url(../img/index/img_about.jpg) right 695px top 0 no-repeat;
    background-size: 655px auto;
    padding: 70px 0 0 715px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-about__body {
        height: 37.77778vw;
        margin: 8.14815vw auto 0;
        background: url(../img/index/img_about.jpg) right 51.481vw top 0 no-repeat;
        background-size: 48.51852vw auto;
        padding: 5.18519vw 0 0 52.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .top-about__body {
        max-width: auto;
        max-width: initial;
        width: 100%;
        height: auto;
        margin: 18.75vw auto 0;
        padding: 76.25vw 7.8125vw 0;
        background: url(../img/index/sp/img_about.jpg) center top no-repeat;
        background-size: 83.59375vw auto;
    }
}

.top-about__img {
    width: 655px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-about__img {
        width: 48.51852vw;
    }
}

.top-about__txtimg {
    position: absolute;
    bottom: -54px;
    width: 648px;
    left: 40.7%;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-about__txtimg {
        bottom: -4vw;
        width: 48vw;
    }
}

@media screen and (max-width: 750px) {
    .top-about__txtimg {
        top: 50vw;
        left: 13%;
        bottom: auto;
        width: 70.3125vw;
    }
}

.top-about__body-head {
    font-size: 20px;
    letter-spacing: .15em;
    line-height: 1.9;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-about__body-head {
        font-size: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .top-about__body-head {
        font-size: 4.53125vw;
        letter-spacing: .12em;
        line-height: 2;
    }
}

.top-about__body-txt {
    line-height: 2.2;
    margin-top: 24px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: .07em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-about__body-txt {
        margin-top: 1.77778vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .top-about__body-txt {
        font-size: 3.59375vw;
        letter-spacing: .04em;
        margin-top: 6.5625vw;
    }
}

/*  top-service
--------------------------------------------- */
.top-service {
    position: relative;
    padding-top: 187px;
    height: 830px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-service {
        padding-top: 13.85185vw;
        height: 61.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .top-service {
        padding-top: 28.90625vw;
        height: auto;
    }
}

@media screen and (max-width: 750px) {
    .top-service:before {
        position: absolute;
        top: 28.90625vw;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        content: '';
        width: 28.125vw;
        height: 0.3125vw;
        background-color: #808080;
    }
}

.top-service__bg {
    display: inline-block;
    position: absolute;
    top: 290px;
    right: 44.4444%;
    width: calc(100vw - 600px);
    height: 365px;
    background-color: #F2F5F5;
    z-index: -1;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-service__bg {
        top: 21.48148vw;
        width: calc(100vw - 44.444vw);
        height: 27.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .top-service__bg {
        top: 100.3125vw;
        right: auto;
        left: 0;
        width: 57.8125vw;
        height: 45vw;
    }
}

.top-service__container {
    position: relative;
    max-width: 1350px;
    margin: 0 auto;
}

@media screen and (max-width: 750px) {
    .top-service__container {
        max-width: auto;
        max-width: initial;
        padding-top: 38.59375vw;
        padding-bottom: 19.84375vw;
    }
}

.top-service__img {
    position: absolute;
    top: 0;
    left: 580px;
    width: 398px;
    height: 292px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-service__img {
        left: 42.96296vw;
        width: 29.48148vw;
        height: 21.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .top-service__img {
        width: 85.9375vw;
        height: auto;
        top: 38.59375vw;
        right: 0;
        left: auto;
    }
}

.top-service__items {
    position: absolute;
    top: 0;
    right: 0;
    overflow: hidden;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.top-service__item {
    position: absolute;
    right: 0;
    z-index: 9;
}

.top-service__item--1 {
    width: 254px;
    top: 4px;
    right: 15px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-service__item--1 {
        width: 18.81481vw;
        top: 0.2963vw;
        right: 1.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .top-service__item--1 {
        width: 30.46875vw;
        top: 3.75vw;
        right: -7.34375vw;
    }
}

.top-service__item--2 {
    top: 227px;
    width: 135px;
    right: 175px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-service__item--2 {
        width: 10vw;
        top: 16.81481vw;
        right: 12.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .top-service__item--2 {
        top: 32.8125vw;
        width: 15.78125vw;
        right: 12.96875vw;
    }
}

.top-service__item--3 {
    top: 315px;
    right: -40px;
    width: 203px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-service__item--3 {
        width: 15.03704vw;
        top: 23.33333vw;
        right: -2.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .top-service__item--3 {
        top: 41.40625vw;
        right: auto;
        width: 24.21875vw;
        left: -6.09375vw;
    }
}

.top-service__item--4 {
    top: 502px;
    right: 180px;
    width: 240px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-service__item--4 {
        width: 17.77778vw;
        top: 37.18519vw;
        right: 13.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .top-service__item--4 {
        top: 149.21875vw;
        right: -8.4375vw;
        width: 32.03125vw;
    }
}

.top-service__item--5 {
    top: 592px;
    width: 255px;
    right: 26px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-service__item--5 {
        width: 18.88889vw;
        top: 43.85185vw;
        right: 1.92593vw;
    }
}

@media screen and (max-width: 750px) {
    .top-service__item--5 {
        top: 177.34375vw;
        width: 27.34375vw;
        right: 4.84375vw;
        -webkit-transform: translate(0, 80px) rotate(22deg);
        transform: translate(0, 80px) rotate(22deg);
    }
    .top-service__item--5.js-scroll-in {
        -webkit-transform: translate(0, 0) rotate(22deg);
        transform: translate(0, 0) rotate(22deg);
    }
}

/*  top-quality
--------------------------------------------- */
.top-quality__container {
    position: relative;
    background: url(../img/index/img_quality.jpg) left top 67px no-repeat;
    background-size: 56% auto;
    max-width: 1350px;
    margin: 0 auto;
    padding: 91px 0 132px;
    overflow: hidden;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-quality__container {
        background: url(../img/index/img_quality.jpg) left top 4.963vw no-repeat;
        background-size: 56% auto;
        padding: 6.74074vw 0 9.77778vw;
    }
}

@media screen and (max-width: 750px) {
    .top-quality__container {
        background-position: left top 10.46875vw;
        max-width: none;
        max-width: initial;
    }
}

@media screen and (max-width: 750px) {
    .top-quality__container {
        background-size: 85.9375vw auto;
        padding: 10.46875vw 0 20.625vw;
    }
}

.top-quality__bg {
    display: inline-block;
    position: absolute;
    top: 0;
    left: 380px;
    width: 620px;
    height: 430px;
    background-color: #F7F3EE;
    z-index: -1;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-quality__bg {
        left: 28.14815vw;
        width: 45.92593vw;
        height: 31.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .top-quality__bg {
        top: 51.5625vw;
        right: 0;
        left: auto;
        width: 58.59375vw;
        height: 41.875vw;
    }
}

/*  top-company
--------------------------------------------- */
.top-company {
    max-width: 1350px;
    margin: 125px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-company {
        margin: 9.25926vw auto 0;
    }
}

@media screen and (max-width: 750px) {
    .top-company {
        position: relative;
        max-width: auto;
        max-width: initial;
        margin: 9.375vw 0 0 auto;
        display: block;
    }
}

@media screen and (max-width: 750px) {
    .top-company:after {
        position: absolute;
        top: 40.625vw;
        left: 0;
        content: '';
        width: 29.6875vw;
        height: 46.875vw;
        background-color: #F2F5F5;
        z-index: -1;
    }
}

.top-company__img {
    width: 750px;
    margin-left: 135px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-company__img {
        width: 55.55556vw;
        margin-left: 10vw;
    }
}

@media screen and (max-width: 750px) {
    .top-company__img {
        width: auto;
        margin-left: 14.375vw;
        height: 55vw;
        overflow: hidden;
    }
}

.mod-ttl mod-ttl--small mod-ttl--center js-scroll::before {
content: attr(data-label);
white-space: pre
}



/*  top-recruit
--------------------------------------------- */
.top-recruit {
    position: relative;
}

.top-recruit__container {
    position: relative;
    max-width: 1350px;
    margin: 130px auto 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-recruit__container {
        margin: 9.62963vw auto 0;
    }
}

@media screen and (max-width: 750px) {
    .top-recruit__container {
        max-width: auto;
        max-width: initial;
        margin-top: 30.15625vw;
        padding-bottom: 65.9375vw;
    }
}

@media screen and (max-width: 750px) {
    .top-recruit:after {
        position: absolute;
        top: 40.625vw;
        right: 6.25vw;
        content: '';
        width: 52.34375vw;
        height: 46.09375vw;
        background-color: #F7F3EE;
        z-index: -1;
    }
}

.top-recruit__img {
    width: 880px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .top-recruit__img {
        width: 65.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .top-recruit__img {
        width: 85.9375vw;
    }
}

/*  access
--------------------------------------------- */
.access {
    padding: 142px 0 160px;
    text-align: center;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .access {
        padding: 10.51852vw 0 11.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .access {
        padding: 22.1875vw 0 27.03125vw;
    }
}

.company .access {
    padding-top: 177px;
    padding-bottom: 182px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company .access {
        padding-top: 13.11111vw;
        padding-bottom: 13.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .company .access {
        padding-top: 26.875vw;
        padding-bottom: 28.4375vw;
    }
}

.access__wrap {
    position: relative;
    width: 74.07407%;
    height: 0;
    padding-top: 26%;
    margin: 0 auto;
}

@media screen and (max-width: 750px) {
    .access__wrap {
        width: 84.375vw;
        padding-top: 78%;
        margin: 3.125vw auto 0;
    }
}

.access__wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.company .access__wrap {
    margin-top: 45px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company .access__wrap {
        margin-top: 3.33333vw;
    }
}

.access__txt {
    display: block;
    font-size: 14px;
    margin-top: 16px;
    letter-spacing: .08em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .access__txt {
        font-size: 1.03704vw;
        margin-top: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .access__txt {
        font-size: 1.71429rem;
        margin-top: 4.6875vw;
        letter-spacing: 0.04em;
    }
}

.access__txt:hover {
    text-decoration: underline;
}

/*  contact
--------------------------------------------- */
.contact {
    text-align: center;
    background-color: #F2F5F5;
}

.contact__container {
    padding: 150px 0 180px;
    background: #F2F5F5 url(../img/common/bg_contact.jpg) center bottom 244px no-repeat;
    background-size: 100% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact__container {
        padding: 11.11111vw 0 13.33333vw;
        background-size: 100% auto;
        background-position: center bottom 18.07407vw;
    }
}

@media screen and (max-width: 750px) {
    .contact__container {
        padding: 18.90625vw 0 35.9375vw;
        background: #F2F5F5 url(../img/common/sp/bg_contact.jpg) center top no-repeat;
        background-size: 100% auto;
    }
}

.contact__container--fukushima {
    background-color: #eaebe7;
}

.contact__ttl {
    color: #fff;
}

.contact__ttl:after {
    color: #fff;
}

.contact__btn {
    margin-top: 70px;
    height: 125px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact__btn {
        margin-top: 5.18519vw;
        height: 9.25926vw;
    }
}

@media screen and (max-width: 750px) {
    .contact__btn {
        margin-top: 10.9375vw;
        height: 19.53125vw;
    }
}

/* ---------------------------------------------
*   fukushima 追加
--------------------------------------------- */
@media screen and (max-width: 750px) {
    .fukushima {
        overflow: hidden;
    }
}

.mv-fukushima {
    position: relative;
    height: 100%;
    background: url(../img/fukushima/kv_1.jpg) right top no-repeat;
    background-size: auto 100%;
}

@media screen and (max-width: 750px) {
    .mv-fukushima {
        background: url(../img/fukushima/sp/kv_1.jpg) right top no-repeat;
        background-size: auto 100%;
    }
}

.mv-fukushima__txt {
    position: absolute;
    top: 50%;
    left: 8.51852vw;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 34px;
    font-weight: bold;
    letter-spacing: .16em;
    line-height: 1.8;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mv-fukushima__txt {
        font-size: 2.51852vw;
    }
}

@media screen and (max-width: 750px) {
    .mv-fukushima__txt {
        top: -5%;
        left: 7.8125vw;
        font-size: 6.25vw;
        letter-spacing: 0;
    }
}

.mv-fukushima__txt-space {
    display: inline-block;
    margin-left: .5em;
}

.firstview-bg {
    background: url(../img/fukushima/bg_about.jpg) center bottom no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width: 750px) {
    .firstview-bg {
        padding-top: 19.375vw;
        background: url(../img/fukushima/sp/bg_about.jpg) center bottom no-repeat;
        background-size: 100% auto;
    }
}

/*  fukushima-about
--------------------------------------------- */
.fukushima-about {
    position: relative;
    width: 100%;
    height: 59.25926vw;
    padding-top: 17.03704vw;
    background: none;
}

@media screen and (max-width: 750px) {
    .fukushima-about {
        height: 159.375vw;
        padding-top: 28.125vw;
    }
}

/*  box-section
--------------------------------------------- */
.box-section {
    position: relative;
    width: 100%;
    height: 650px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .box-section {
        height: 48.14815vw;
    }
}

@media screen and (max-width: 750px) {
    .box-section {
        padding-top: 62.5vw;
        height: 182.5vw;
    }
}

.box-section__contents {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: rgba(255, 255, 255, 0.85);
    width: 500px;
    height: 480px;
    padding: 85px 0 60px;
    text-align: center;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .box-section__contents {
        width: 37.03704vw;
        height: 33.33333vw;
        padding: 6.2963vw 0 4.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .box-section__contents {
        position: static;
        -webkit-transform: none;
        transform: none;
        width: 84.375vw;
        height: auto;
        margin: 0 auto;
        padding: 15.46875vw 7.5vw 12.5vw;
        background-color: rgba(242, 245, 245, 0.85);
    }
}

.box-section__body {
    margin-top: 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .box-section__body {
        margin-top: 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .box-section__body {
        margin-top: 3.125vw;
    }
}

.box-section__lead {
    font-size: 20px;
    line-height: 1.7;
    letter-spacing: .24em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .box-section__lead {
        font-size: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .box-section__lead {
        font-size: 4.375vw;
        letter-spacing: .12em;
    }
}

.box-section__txt {
    margin-top: 17px;
    font-size: 14px;
    line-height: 2;
    letter-spacing: .05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .box-section__txt {
        margin-top: 1.25926vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .box-section__txt {
        font-size: 3.75vw;
        text-align: left;
        line-height: 2.1;
        letter-spacing: -0.03em;
    }
}

/*  fukushima-service
--------------------------------------------- */
.fukushima-service {
    background: url(../img/fukushima/bg_service.jpg) 0 0 no-repeat;
    background-size: cover;
}

@media screen and (max-width: 750px) {
    .fukushima-service {
        background: url(../img/fukushima/sp/bg_service.jpg) top center no-repeat;
        background-size: 100% auto;
    }
}

/*  fukushima-quality
--------------------------------------------- */
.fukushima-quality {
    margin-top: 10px;
    background: url(../img/fukushima/bg_quality.jpg) 0 0 no-repeat;
    background-size: cover;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .fukushima-quality {
        margin-top: 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .fukushima-quality {
        margin-top: 0;
        background: url(../img/fukushima/sp/bg_quality.jpg) top center no-repeat;
        background-size: 100% auto;
    }
}

/*  fukushima-company
--------------------------------------------- */
.fukushima-company {
    max-width: 1350px;
    margin: 195px auto 0;
    padding-bottom: 55px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .fukushima-company {
        margin: 14.44444vw auto 0;
        padding-bottom: 4.07407vw;
    }
}

@media screen and (max-width: 750px) {
    .fukushima-company {
        margin-top: 6.875vw;
    }
}

.fukushima-company__img {
    margin-top: 35px;
    max-width: 900px;
    width: 66.66667vw;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .fukushima-company__img {
        margin-top: 2.59259vw;
    }
}

@media screen and (max-width: 750px) {
    .fukushima-company__img {
        margin-top: 5.46875vw;
        width: 85.9375vw;
    }
}

/*  fukushima-profile
--------------------------------------------- */
.fukushima-profile {
    padding-top: 147px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .fukushima-profile {
        padding-top: 10.88889vw;
    }
}

@media screen and (max-width: 750px) {
    .fukushima-profile {
        padding-top: 28.59375vw;
    }
}

.fukushima-profile__list {
    max-width: 630px;
    width: 46.66667%;
    margin: 70px auto 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .fukushima-profile__list {
        margin: 5.18519vw auto 0;
    }
}

@media screen and (max-width: 750px) {
    .fukushima-profile__list {
        width: 100%;
        margin-top: 1.5625vw;
    }
}

/*  floating-container
--------------------------------------------- */
.floating-container__inner {
    position: relative;
    max-width: 1350px;
    margin: 0 auto;
}

@media screen and (min-width: 1351px) {
    .floating-container__inner {
        overflow: visible;
    }
}

.floating-container__item {
    position: absolute;
}

.floating-container__item--1 {
    top: -260px;
    right: 49px;
    width: 203px;
    z-index: 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .floating-container__item--1 {
        top: -19.25926vw;
        right: 3.62963vw;
        width: 15.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .floating-container__item--1 {
        top: -50.15625vw;
        right: -9.0625vw;
        width: 31.71875vw;
    }
}

.floating-container__item--2 {
    top: -13px;
    right: 230px;
    width: 133px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .floating-container__item--2 {
        top: -0.96296vw;
        right: 17.03704vw;
        width: 9.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .floating-container__item--2 {
        top: 304.375vw;
        width: 19.53125vw;
        right: -0.9375vw;
    }
}

.floating-container__item--3 {
    top: 112px;
    right: -66px;
    width: 290px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .floating-container__item--3 {
        top: 8.2963vw;
        right: -4.88889vw;
        width: 21.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .floating-container__item--3 {
        width: 44.84375vw;
        top: 328.90625vw;
        right: -19.6875vw;
    }
}

.floating-container__item--4 {
    top: 537px;
    right: 87px;
    width: 212px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .floating-container__item--4 {
        top: 39.77778vw;
        right: 6.44444vw;
        width: 15.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .floating-container__item--4 {
        top: -19.6875vw;
        right: auto;
        left: -11.40625vw;
        width: 34.53125vw;
    }
}

.floating-container__item--5 {
    top: 1087px;
    left: -87px;
    width: 317px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .floating-container__item--5 {
        top: 80.51852vw;
        left: -6.44444vw;
        width: 23.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .floating-container__item--5 {
        width: 49.0625vw;
        top: 53.4375vw;
        right: -27.65625vw;
        left: auto;
    }
}

.floating-container__item--6 {
    top: 1382px;
    left: 175px;
    width: 135px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .floating-container__item--6 {
        top: 102.37037vw;
        left: 12.96296vw;
        width: 10vw;
    }
}

@media screen and (max-width: 750px) {
    .floating-container__item--6 {
        top: -37.65625vw;
        width: 21.09375vw;
        left: 10.3125vw;
    }
}

/*  fukushima-access
--------------------------------------------- */
@media screen and (max-width: 750px) {
    .fukushima-access {
        padding-bottom: 30.46875vw;
    }
}

.fukushima-access__map {
    margin-top: 43px;
    padding-top: 23.2%;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .fukushima-access__map {
        margin-top: 3.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .fukushima-access__map {
        margin-top: 6.71875vw;
        padding-top: 78%;
    }
}

/*  fukushima-recruit
--------------------------------------------- */
.fukushima-recruit {
    height: 600px;
    background: url(../img/fukushima/bg_recruit.jpg) 0 0 no-repeat;
    background-size: 100% auto;
    padding-top: 93px;
    margin-bottom: 150px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .fukushima-recruit {
        height: 44.44444vw;
        padding-top: 6.88889vw;
        margin-bottom: 11.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .fukushima-recruit {
        background: url(../img/fukushima/sp/bg_recruit.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        padding-top: 20vw;
        height: 182.8125vw;
        margin-bottom: 0;
    }
}

.fukushima-recruit__contents {
    margin-left: calc(50vw + 60px);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .fukushima-recruit__contents {
        margin-left: calc(50vw + 4.444vw);
    }
}

@media screen and (max-width: 750px) {
    .fukushima-recruit__contents {
        margin: 0 auto 0 54.21875vw;
    }
}

.fukushima-recruit__txt {
    margin-top: 10px;
    font-size: 21px;
    letter-spacing: 0.15em;
    line-height: 1.6;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .fukushima-recruit__txt {
        margin-top: 0.74074vw;
        font-size: 1.55556vw;
    }
}

@media screen and (max-width: 750px) {
    .fukushima-recruit__txt {
        font-size: 4.21875vw;
        letter-spacing: .12em;
        padding-left: 0.78125vw;
        margin-top: 2.65625vw;
        line-height: 1.7;
    }
}

/* -- human-resources -- */
.human-resources {
    margin-top: 23px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .human-resources {
        margin-top: 1.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .human-resources {
        margin-top: 30.625vw;
        padding: 0 8.75vw 0 7.8125vw;
    }
}

.human-resources__ttl {
    display: inline-block;
    position: relative;
    font-size: 16px;
    font-weight: bold;
    color: #479a4d;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .human-resources__ttl {
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .human-resources__ttl {
        font-size: 4.375vw;
        letter-spacing: -0.05em;
    }
}

.human-resources__ttl:after {
    position: absolute;
    top: 50%;
    left: calc(100% + .5em);
    content: '';
    width: 36px;
    height: 1px;
    background-color: #479a4d;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .human-resources__ttl:after {
        width: 2.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .human-resources__ttl:after {
        left: calc(100% + .3em);
        width: 9.375vw;
    }
}

.human-resources__txt {
    margin-top: 8px;
    line-height: 2.2;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .human-resources__txt {
        margin-top: 0.59259vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .human-resources__txt {
        margin-top: 3.90625vw;
        font-size: 3.75vw;
        line-height: 2.1;
        -webkit-font-feature-settings: 'palt';
        font-feature-settings: 'palt';
    }
}

/* ---------------------------------------------
*   #mailformpro
--------------------------------------------- */
#mailformpro {
    margin: -200px 0 0 0;
    padding: 200px 0 0 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    #mailformpro {
        margin: -7.40741vw 0 0 0;
        padding: 7.40741vw 0 0 0;
    }
}

@media screen and (max-width: 750px) {
    #mailformpro {
        margin: -15.625vw 0 0 0;
        padding: 15.625vw 0 0 0;
    }
}

#mfp_phase_confirm h4 {
    display: none;
}

/* ---------------------------------------------
*   contact-form
--------------------------------------------- */
.contact-form {
    max-width: 840px;
    width: 100%;
    padding-right: 30px;
    padding-left: 30px;
    margin-right: auto;
    margin-left: auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-form {
        width: 85%;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-form {
        font-size: 1.71429rem;
        padding-right: 6.25vw;
        padding-left: 6.25vw;
    }
}

.contact-form__lead {
    text-align: center;
    line-height: 2.2;
}

@media screen and (max-width: 750px) {
    .contact-form__lead {
        padding-bottom: 13.28125vw;
        border-bottom: 1px solid #999;
        text-align: left;
        line-height: 1.8;
    }
    .contact-form__lead--no-border {
        padding-bottom: 0;
        border-bottom: 0;
    }
}

.contact-form__input-text, .contact-form__textarea, .contact-form__select {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    width: 100% !important;
    padding: 10px 20px;
    font-size: inherit;
    background-color: #F2F5F5;
}

.contact-form__input-text::-webkit-input-placeholder, .contact-form__textarea::-webkit-input-placeholder {
    color: #b6b6b6;
    font-size: 1.0rem;
}

.contact-form__input-text:-moz-placeholder, .contact-form__textarea:-moz-placeholder {
    color: #b6b6b6;
    font-size: 1.0rem;
}

.contact-form__input-text::-moz-placeholder, .contact-form__textarea::-moz-placeholder {
    color: #b6b6b6;
    font-size: 1.0rem;
}

.contact-form__input-text:-ms-input-placeholder, .contact-form__textarea:-ms-input-placeholder {
    color: #b6b6b6;
    font-size: 1.0rem;
}

.contact-form__input-text:focus, .contact-form__textarea:focus {
    outline: none;
    background-color: #e3e9e9;
}

.contact-form__input-text:focus::-webkit-input-placeholder, .contact-form__textarea:focus::-webkit-input-placeholder {
    color: #e3e9e9;
}

.contact-form__input-text:focus:-moz-placeholder, .contact-form__textarea:focus:-moz-placeholder {
    color: #e3e9e9;
}

.contact-form__input-text:focus::-moz-placeholder, .contact-form__textarea:focus::-moz-placeholder {
    color: #e3e9e9;
}

.contact-form__input-text:focus:-ms-input-placeholder, .contact-form__textarea:focus:-ms-input-placeholder {
    color: #e3e9e9;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-form__input-text, .contact-form__textarea, .contact-form__select {
        font-size: 1.18519vw;
    }
    .contact-form__input-text::-webkit-input-placeholder, .contact-form__textarea::-webkit-input-placeholder {
        font-size: 1.03704vw;
    }
    .contact-form__input-text:-moz-placeholder, .contact-form__textarea:-moz-placeholder {
        font-size: 1.03704vw;
    }
    .contact-form__input-text::-moz-placeholder, .contact-form__textarea::-moz-placeholder {
        font-size: 1.03704vw;
    }
    .contact-form__input-text:-ms-input-placeholder, .contact-form__textarea:-ms-input-placeholder {
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-form__input-text, .contact-form__textarea, .contact-form__select {
        padding: 4.6875vw 6.25vw;
        font-size: 1.85714rem;
    }
    .contact-form__input-text::-webkit-input-placeholder, .contact-form__textarea::-webkit-input-placeholder {
        font-size: 1.71429rem;
    }
    .contact-form__input-text:-moz-placeholder, .contact-form__textarea:-moz-placeholder {
        font-size: 1.71429rem;
    }
    .contact-form__input-text::-moz-placeholder, .contact-form__textarea::-moz-placeholder {
        font-size: 1.71429rem;
    }
    .contact-form__input-text:-ms-input-placeholder, .contact-form__textarea:-ms-input-placeholder {
        font-size: 1.71429rem;
    }
}

.contact-form__textarea {
    width: 100% !important;
    height: 210px !important;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-form__textarea {
        height: 15.55556vw !important;
    }
}

@media screen and (max-width: 750px) {
    .contact-form__textarea {
        height: 56.25vw !important;
    }
}

.contact-form__checkbox {
    cursor: pointer;
}

@media screen and (max-width: 750px) {
    .contact-form__checkbox {
        font-size: 1.71429rem;
    }
}

.contact-form__checkbox input {
    opacity: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.contact-form__checkbox input ~ span {
    position: relative;
    display: inline-block;
    padding-left: 30px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-form__checkbox input ~ span {
        padding-left: 2.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-form__checkbox input ~ span {
        padding-left: 7.03125vw;
    }
}

.contact-form__checkbox input ~ span:before, .contact-form__checkbox input ~ span:after {
    content: "";
    position: absolute;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
}

.contact-form__checkbox input ~ span:before {
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    border: 2px solid #333;
}

.contact-form__checkbox input ~ span:after {
    top: -5px;
    left: 9px;
    width: 10px;
    height: 20px;
    border-right: 2px solid #666;
    border-bottom: 2px solid #666;
    -webkit-transform: rotateZ(45deg);
    transform: rotateZ(45deg);
    opacity: 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-form__checkbox input ~ span:before {
        top: 0;
        left: 0;
        width: 1.48148vw;
        height: 1.48148vw;
        border: 0.14815vw solid #333;
    }
    .contact-form__checkbox input ~ span:after {
        top: -0.37037vw;
        left: 0.66667vw;
        width: 0.74074vw;
        height: 1.48148vw;
        border-right: 0.14815vw solid #666;
        border-bottom: 0.14815vw solid #666;
        -webkit-transform: rotateZ(45deg);
        transform: rotateZ(45deg);
        opacity: 0;
    }
}

@media screen and (max-width: 750px) {
    .contact-form__checkbox input ~ span:before {
        top: 0.46875vw;
        left: 0;
        width: 4.6875vw;
        height: 4.6875vw;
    }
    .contact-form__checkbox input ~ span:after {
        top: -1.25vw;
        left: 2.03125vw;
        width: 2.34375vw;
        height: 4.6875vw;
        border-right: 0.46875vw solid #666;
        border-bottom: 0.46875vw solid #666;
    }
}

.contact-form__checkbox input:checked ~ span:after {
    opacity: 1;
}

/*  contact-buttons
--------------------------------------------- */
.contact-buttons,
.mfp_buttons {
    text-align: center;
    margin-top: 55px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-buttons,
    .mfp_buttons {
        margin-top: 4.07407vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-buttons,
    .mfp_buttons {
        margin-top: 12.5vw;
    }
}

/*  contact-button
--------------------------------------------- */
.contact-button {
    width: 340px;
    height: 60px;
    text-align: center;
    font-size: 1.14286rem;
    cursor: pointer;
    background-color: #000;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-button {
        width: 25.18519vw;
        height: 4.44444vw;
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-button {
        width: 75vw;
        height: 10.9375vw;
        font-size: 1.85714rem;
    }
}

.contact-button:after {
    content: none;
}

.contact-button .mod-body-btn__txt {
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

/*  contact-button-send
--------------------------------------------- */
.contact-button-send {
    width: 280px;
    height: 60px;
    text-align: center;
    font-size: 1.14286rem;
    cursor: pointer;
    background-color: #000;
    margin: 0 2px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-button-send {
        width: 20.74074vw;
        height: 4.44444vw;
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-button-send {
        width: 75vw;
        height: 10.9375vw;
        font-size: 1.85714rem;
        margin-top: 3.125vw;
    }
}

.contact-button-send:after {
    content: none;
}

.contact-button-send .mod-body-btn__txt {
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

/*  contact-button-cancel
--------------------------------------------- */
.contact-button-cancel {
    width: 280px;
    height: 60px;
    text-align: center;
    font-size: 1.14286rem;
    cursor: pointer;
    margin: 0 2px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-button-cancel {
        width: 20.74074vw;
        height: 4.44444vw;
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-button-cancel {
        width: 75vw;
        height: 10.9375vw;
        font-size: 1.85714rem;
    }
}

.contact-button-cancel:after {
    content: none;
}

.contact-button-cancel .mod-body-btn__txt {
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

/*  contact-table
--------------------------------------------- */
.contact-table,
#mfp_confirm_table {
    width: 100%;
    margin-top: 55px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-table,
    #mfp_confirm_table {
        margin-top: 4.07407vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-table,
    #mfp_confirm_table {
        display: block;
        margin-top: 3.90625vw;
    }
    .contact-table thead, .contact-table tbody, .contact-table tfoot,
    #mfp_confirm_table thead,
    #mfp_confirm_table tbody,
    #mfp_confirm_table tfoot {
        display: block;
    }
}

@media screen and (max-width: 750px) {
    .contact-table__row,
    .contact-table tr,
    #mfp_confirm_table__row,
    #mfp_confirm_table tr {
        display: block;
    }
}

.contact-table__row-head, .contact-table__row-body,
.contact-table th, .contact-table td,
#mfp_confirm_table__row-head,
#mfp_confirm_table__row-body,
#mfp_confirm_table th,
#mfp_confirm_table td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 20px;
    padding-bottom: 20px;
    text-align: left;
    vertical-align: top;
    font-size: 1.14286rem;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-table__row-head, .contact-table__row-body,
    .contact-table th, .contact-table td,
    #mfp_confirm_table__row-head,
    #mfp_confirm_table__row-body,
    #mfp_confirm_table th,
    #mfp_confirm_table td {
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-table__row-head, .contact-table__row-body,
    .contact-table th, .contact-table td,
    #mfp_confirm_table__row-head,
    #mfp_confirm_table__row-body,
    #mfp_confirm_table th,
    #mfp_confirm_table td {
        display: block;
        padding-top: 9.375vw;
        padding-bottom: 0;
        font-size: 1.85714rem;
    }
}

.contact-table__row-head,
.contact-table th,
#mfp_confirm_table__row-head,
#mfp_confirm_table th {
    width: 260px;
    padding-right: 23px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-table__row-head,
    .contact-table th,
    #mfp_confirm_table__row-head,
    #mfp_confirm_table th {
        width: 19.25926vw;
        padding-right: 1.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-table__row-head,
    .contact-table th,
    #mfp_confirm_table__row-head,
    #mfp_confirm_table th {
        width: 100%;
        padding-right: 0;
    }
}



.contact-table__row-head[id*="th_mfp_element"] .contact-table__row-head-text,
.contact-table th[id*="th_mfp_element"] .contact-table__row-head-text,
#mfp_confirm_table__row-head[id*="th_mfp_element"] .contact-table__row-head-text,
#mfp_confirm_table th[id*="th_mfp_element"] .contact-table__row-head-text, .contact-table__row-head[id*="th_mfp_element"]
.contact-table th-text,
.contact-table th[id*="th_mfp_element"]
.contact-table th-text,
#mfp_confirm_table__row-head[id*="th_mfp_element"]
.contact-table th-text,
#mfp_confirm_table th[id*="th_mfp_element"]
.contact-table th-text, .contact-table__row-head[id*="th_mfp_element"]
#mfp_confirm_table__row-head-text,
.contact-table th[id*="th_mfp_element"]
#mfp_confirm_table__row-head-text,
#mfp_confirm_table__row-head[id*="th_mfp_element"]
#mfp_confirm_table__row-head-text,
#mfp_confirm_table th[id*="th_mfp_element"]
#mfp_confirm_table__row-head-text, .contact-table__row-head[id*="th_mfp_element"]
#mfp_confirm_table th-text,
.contact-table th[id*="th_mfp_element"]
#mfp_confirm_table th-text,
#mfp_confirm_table__row-head[id*="th_mfp_element"]
#mfp_confirm_table th-text,
#mfp_confirm_table th[id*="th_mfp_element"]
#mfp_confirm_table th-text {
    padding-top: 0;
}

.contact-table__row-head#th_mfp_element_0 .contact-table__row-head-text:after,
.contact-table__row-head#th_mfp_element_2 .contact-table__row-head-text:after,
.contact-table__row-head#th_mfp_element_4 .contact-table__row-head-text:after,
.contact-table th#th_mfp_element_0 .contact-table__row-head-text:after,
.contact-table th#th_mfp_element_2 .contact-table__row-head-text:after,
.contact-table th#th_mfp_element_4 .contact-table__row-head-text:after,
#mfp_confirm_table__row-head#th_mfp_element_0 .contact-table__row-head-text:after,
#mfp_confirm_table__row-head#th_mfp_element_2 .contact-table__row-head-text:after,
#mfp_confirm_table__row-head#th_mfp_element_4 .contact-table__row-head-text:after,
#mfp_confirm_table th#th_mfp_element_0 .contact-table__row-head-text:after,
#mfp_confirm_table th#th_mfp_element_2 .contact-table__row-head-text:after,
#mfp_confirm_table th#th_mfp_element_4 .contact-table__row-head-text:after, .contact-table__row-head#th_mfp_element_0
.contact-table th-text:after,
.contact-table__row-head#th_mfp_element_2
.contact-table th-text:after,
.contact-table__row-head#th_mfp_element_4
.contact-table th-text:after,
.contact-table th#th_mfp_element_0
.contact-table th-text:after,
.contact-table th#th_mfp_element_2
.contact-table th-text:after,
.contact-table th#th_mfp_element_4
.contact-table th-text:after,
#mfp_confirm_table__row-head#th_mfp_element_0
.contact-table th-text:after,
#mfp_confirm_table__row-head#th_mfp_element_2
.contact-table th-text:after,
#mfp_confirm_table__row-head#th_mfp_element_4
.contact-table th-text:after,
#mfp_confirm_table th#th_mfp_element_0
.contact-table th-text:after,
#mfp_confirm_table th#th_mfp_element_2
.contact-table th-text:after,
#mfp_confirm_table th#th_mfp_element_4
.contact-table th-text:after, .contact-table__row-head#th_mfp_element_0
#mfp_confirm_table__row-head-text:after,
.contact-table__row-head#th_mfp_element_2
#mfp_confirm_table__row-head-text:after,
.contact-table__row-head#th_mfp_element_4
#mfp_confirm_table__row-head-text:after,
.contact-table th#th_mfp_element_0
#mfp_confirm_table__row-head-text:after,
.contact-table th#th_mfp_element_2
#mfp_confirm_table__row-head-text:after,
.contact-table th#th_mfp_element_4
#mfp_confirm_table__row-head-text:after,
#mfp_confirm_table__row-head#th_mfp_element_0
#mfp_confirm_table__row-head-text:after,
#mfp_confirm_table__row-head#th_mfp_element_2
#mfp_confirm_table__row-head-text:after,
#mfp_confirm_table__row-head#th_mfp_element_4
#mfp_confirm_table__row-head-text:after,
#mfp_confirm_table th#th_mfp_element_0
#mfp_confirm_table__row-head-text:after,
#mfp_confirm_table th#th_mfp_element_2
#mfp_confirm_table__row-head-text:after,
#mfp_confirm_table th#th_mfp_element_4
#mfp_confirm_table__row-head-text:after, .contact-table__row-head#th_mfp_element_0
#mfp_confirm_table th-text:after,
.contact-table__row-head#th_mfp_element_2
#mfp_confirm_table th-text:after,
.contact-table__row-head#th_mfp_element_4
#mfp_confirm_table th-text:after,
.contact-table th#th_mfp_element_0
#mfp_confirm_table th-text:after,
.contact-table th#th_mfp_element_2
#mfp_confirm_table th-text:after,
.contact-table th#th_mfp_element_4
#mfp_confirm_table th-text:after,
#mfp_confirm_table__row-head#th_mfp_element_0
#mfp_confirm_table th-text:after,
#mfp_confirm_table__row-head#th_mfp_element_2
#mfp_confirm_table th-text:after,
#mfp_confirm_table__row-head#th_mfp_element_4
#mfp_confirm_table th-text:after,
#mfp_confirm_table th#th_mfp_element_0
#mfp_confirm_table th-text:after,
#mfp_confirm_table th#th_mfp_element_2
#mfp_confirm_table th-text:after,
#mfp_confirm_table th#th_mfp_element_4
#mfp_confirm_table th-text:after {
    content: "必須";
    width: 54px;
    text-align: center;
    color: #fff;
    font-size: 0.85714rem;
    background-color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-table__row-head#th_mfp_element_0 .contact-table__row-head-text:after,
    .contact-table__row-head#th_mfp_element_2 .contact-table__row-head-text:after,
    .contact-table__row-head#th_mfp_element_4 .contact-table__row-head-text:after,
    .contact-table th#th_mfp_element_0 .contact-table__row-head-text:after,
    .contact-table th#th_mfp_element_2 .contact-table__row-head-text:after,
    .contact-table th#th_mfp_element_4 .contact-table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_0 .contact-table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_2 .contact-table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_4 .contact-table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_0 .contact-table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_2 .contact-table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_4 .contact-table__row-head-text:after, .contact-table__row-head#th_mfp_element_0
    .contact-table th-text:after,
    .contact-table__row-head#th_mfp_element_2
    .contact-table th-text:after,
    .contact-table__row-head#th_mfp_element_4
    .contact-table th-text:after,
    .contact-table th#th_mfp_element_0
    .contact-table th-text:after,
    .contact-table th#th_mfp_element_2
    .contact-table th-text:after,
    .contact-table th#th_mfp_element_4
    .contact-table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_0
    .contact-table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_2
    .contact-table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_4
    .contact-table th-text:after,
    #mfp_confirm_table th#th_mfp_element_0
    .contact-table th-text:after,
    #mfp_confirm_table th#th_mfp_element_2
    .contact-table th-text:after,
    #mfp_confirm_table th#th_mfp_element_4
    .contact-table th-text:after, .contact-table__row-head#th_mfp_element_0
    #mfp_confirm_table__row-head-text:after,
    .contact-table__row-head#th_mfp_element_2
    #mfp_confirm_table__row-head-text:after,
    .contact-table__row-head#th_mfp_element_4
    #mfp_confirm_table__row-head-text:after,
    .contact-table th#th_mfp_element_0
    #mfp_confirm_table__row-head-text:after,
    .contact-table th#th_mfp_element_2
    #mfp_confirm_table__row-head-text:after,
    .contact-table th#th_mfp_element_4
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_0
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_2
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_4
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_0
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_2
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_4
    #mfp_confirm_table__row-head-text:after, .contact-table__row-head#th_mfp_element_0
    #mfp_confirm_table th-text:after,
    .contact-table__row-head#th_mfp_element_2
    #mfp_confirm_table th-text:after,
    .contact-table__row-head#th_mfp_element_4
    #mfp_confirm_table th-text:after,
    .contact-table th#th_mfp_element_0
    #mfp_confirm_table th-text:after,
    .contact-table th#th_mfp_element_2
    #mfp_confirm_table th-text:after,
    .contact-table th#th_mfp_element_4
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_0
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_2
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_4
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table th#th_mfp_element_0
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table th#th_mfp_element_2
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table th#th_mfp_element_4
    #mfp_confirm_table th-text:after {
        width: 4vw;
        font-size: 0.88889vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-table__row-head#th_mfp_element_0 .contact-table__row-head-text:after,
    .contact-table__row-head#th_mfp_element_2 .contact-table__row-head-text:after,
    .contact-table__row-head#th_mfp_element_4 .contact-table__row-head-text:after,
    .contact-table th#th_mfp_element_0 .contact-table__row-head-text:after,
    .contact-table th#th_mfp_element_2 .contact-table__row-head-text:after,
    .contact-table th#th_mfp_element_4 .contact-table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_0 .contact-table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_2 .contact-table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_4 .contact-table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_0 .contact-table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_2 .contact-table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_4 .contact-table__row-head-text:after, .contact-table__row-head#th_mfp_element_0
    .contact-table th-text:after,
    .contact-table__row-head#th_mfp_element_2
    .contact-table th-text:after,
    .contact-table__row-head#th_mfp_element_4
    .contact-table th-text:after,
    .contact-table th#th_mfp_element_0
    .contact-table th-text:after,
    .contact-table th#th_mfp_element_2
    .contact-table th-text:after,
    .contact-table th#th_mfp_element_4
    .contact-table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_0
    .contact-table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_2
    .contact-table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_4
    .contact-table th-text:after,
    #mfp_confirm_table th#th_mfp_element_0
    .contact-table th-text:after,
    #mfp_confirm_table th#th_mfp_element_2
    .contact-table th-text:after,
    #mfp_confirm_table th#th_mfp_element_4
    .contact-table th-text:after, .contact-table__row-head#th_mfp_element_0
    #mfp_confirm_table__row-head-text:after,
    .contact-table__row-head#th_mfp_element_2
    #mfp_confirm_table__row-head-text:after,
    .contact-table__row-head#th_mfp_element_4
    #mfp_confirm_table__row-head-text:after,
    .contact-table th#th_mfp_element_0
    #mfp_confirm_table__row-head-text:after,
    .contact-table th#th_mfp_element_2
    #mfp_confirm_table__row-head-text:after,
    .contact-table th#th_mfp_element_4
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_0
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_2
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_4
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_0
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_2
    #mfp_confirm_table__row-head-text:after,
    #mfp_confirm_table th#th_mfp_element_4
    #mfp_confirm_table__row-head-text:after, .contact-table__row-head#th_mfp_element_0
    #mfp_confirm_table th-text:after,
    .contact-table__row-head#th_mfp_element_2
    #mfp_confirm_table th-text:after,
    .contact-table__row-head#th_mfp_element_4
    #mfp_confirm_table th-text:after,
    .contact-table th#th_mfp_element_0
    #mfp_confirm_table th-text:after,
    .contact-table th#th_mfp_element_2
    #mfp_confirm_table th-text:after,
    .contact-table th#th_mfp_element_4
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_0
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_2
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table__row-head#th_mfp_element_4
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table th#th_mfp_element_0
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table th#th_mfp_element_2
    #mfp_confirm_table th-text:after,
    #mfp_confirm_table th#th_mfp_element_4
    #mfp_confirm_table th-text:after {
        width: 14.0625vw;
        font-size: 3.75vw;
        margin-left: 1.5em;
    }
}

.ie .contact-table__row-head#th_mfp_element_0 .contact-table__row-head-text:after, .ie
.contact-table__row-head#th_mfp_element_2 .contact-table__row-head-text:after, .ie
.contact-table__row-head#th_mfp_element_4 .contact-table__row-head-text:after, .ie
.contact-table th#th_mfp_element_0 .contact-table__row-head-text:after, .ie
.contact-table th#th_mfp_element_2 .contact-table__row-head-text:after, .ie
.contact-table th#th_mfp_element_4 .contact-table__row-head-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_0 .contact-table__row-head-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_2 .contact-table__row-head-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_4 .contact-table__row-head-text:after, .ie
#mfp_confirm_table th#th_mfp_element_0 .contact-table__row-head-text:after, .ie
#mfp_confirm_table th#th_mfp_element_2 .contact-table__row-head-text:after, .ie
#mfp_confirm_table th#th_mfp_element_4 .contact-table__row-head-text:after, .ie .contact-table__row-head#th_mfp_element_0
.contact-table th-text:after, .ie
.contact-table__row-head#th_mfp_element_2
.contact-table th-text:after, .ie
.contact-table__row-head#th_mfp_element_4
.contact-table th-text:after, .ie
.contact-table th#th_mfp_element_0
.contact-table th-text:after, .ie
.contact-table th#th_mfp_element_2
.contact-table th-text:after, .ie
.contact-table th#th_mfp_element_4
.contact-table th-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_0
.contact-table th-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_2
.contact-table th-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_4
.contact-table th-text:after, .ie
#mfp_confirm_table th#th_mfp_element_0
.contact-table th-text:after, .ie
#mfp_confirm_table th#th_mfp_element_2
.contact-table th-text:after, .ie
#mfp_confirm_table th#th_mfp_element_4
.contact-table th-text:after, .ie .contact-table__row-head#th_mfp_element_0
#mfp_confirm_table__row-head-text:after, .ie
.contact-table__row-head#th_mfp_element_2
#mfp_confirm_table__row-head-text:after, .ie
.contact-table__row-head#th_mfp_element_4
#mfp_confirm_table__row-head-text:after, .ie
.contact-table th#th_mfp_element_0
#mfp_confirm_table__row-head-text:after, .ie
.contact-table th#th_mfp_element_2
#mfp_confirm_table__row-head-text:after, .ie
.contact-table th#th_mfp_element_4
#mfp_confirm_table__row-head-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_0
#mfp_confirm_table__row-head-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_2
#mfp_confirm_table__row-head-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_4
#mfp_confirm_table__row-head-text:after, .ie
#mfp_confirm_table th#th_mfp_element_0
#mfp_confirm_table__row-head-text:after, .ie
#mfp_confirm_table th#th_mfp_element_2
#mfp_confirm_table__row-head-text:after, .ie
#mfp_confirm_table th#th_mfp_element_4
#mfp_confirm_table__row-head-text:after, .ie .contact-table__row-head#th_mfp_element_0
#mfp_confirm_table th-text:after, .ie
.contact-table__row-head#th_mfp_element_2
#mfp_confirm_table th-text:after, .ie
.contact-table__row-head#th_mfp_element_4
#mfp_confirm_table th-text:after, .ie
.contact-table th#th_mfp_element_0
#mfp_confirm_table th-text:after, .ie
.contact-table th#th_mfp_element_2
#mfp_confirm_table th-text:after, .ie
.contact-table th#th_mfp_element_4
#mfp_confirm_table th-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_0
#mfp_confirm_table th-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_2
#mfp_confirm_table th-text:after, .ie
#mfp_confirm_table__row-head#th_mfp_element_4
#mfp_confirm_table th-text:after, .ie
#mfp_confirm_table th#th_mfp_element_0
#mfp_confirm_table th-text:after, .ie
#mfp_confirm_table th#th_mfp_element_2
#mfp_confirm_table th-text:after, .ie
#mfp_confirm_table th#th_mfp_element_4
#mfp_confirm_table th-text:after {
    padding-top: 2px;
}

.contact-table__row-head-text,
#mfp_confirm_table__row-head-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding-top: 10px;
    white-space: nowrap;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-table__row-head-text,
    #mfp_confirm_table__row-head-text {
        padding-top: 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-table__row-head-text,
    #mfp_confirm_table__row-head-text {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        padding-top: 0;
    }
}

.contact-table__row-head-text:after,
#mfp_confirm_table__row-head-text:after {
    content: "";
}

.contact-table__row-head-text[data-required="1"]:after,
#mfp_confirm_table__row-head-text[data-required="1"]:after {
    content: "必須";
    width: 54px;
    text-align: center;
    color: #fff;
    font-size: 0.85714rem;
    background-color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-table__row-head-text[data-required="1"]:after,
    #mfp_confirm_table__row-head-text[data-required="1"]:after {
        width: 4vw;
        font-size: 0.88889vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-table__row-head-text[data-required="1"]:after,
    #mfp_confirm_table__row-head-text[data-required="1"]:after {
        width: 14.0625vw;
        font-size: 3.75vw;
        margin-left: 1.5em;
    }
}

.ie .contact-table__row-head-text[data-required="1"]:after, .ie
#mfp_confirm_table__row-head-text[data-required="1"]:after {
    padding-top: 2px;
}

.contact-table__row-body,
.contact-table td,
#mfp_confirm_table__row-body,
#mfp_confirm_table td {
    padding-left: 23px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-table__row-body,
    .contact-table td,
    #mfp_confirm_table__row-body,
    #mfp_confirm_table td {
        padding-left: 1.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-table__row-body,
    .contact-table td,
    #mfp_confirm_table__row-body,
    #mfp_confirm_table td {
        padding-top: 4.375vw;
        padding-left: 0;
    }
}

.contact-table__row-body[id*="td_mfp_element"],
.contact-table td[id*="td_mfp_element"],
#mfp_confirm_table__row-body[id*="td_mfp_element"],
#mfp_confirm_table td[id*="td_mfp_element"] {
    padding-left: 43px;
    color: #4d4d4d;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-table__row-body[id*="td_mfp_element"],
    .contact-table td[id*="td_mfp_element"],
    #mfp_confirm_table__row-body[id*="td_mfp_element"],
    #mfp_confirm_table td[id*="td_mfp_element"] {
        padding-left: 3.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-table__row-body[id*="td_mfp_element"],
    .contact-table td[id*="td_mfp_element"],
    #mfp_confirm_table__row-body[id*="td_mfp_element"],
    #mfp_confirm_table td[id*="td_mfp_element"] {
        padding-top: 7.03125vw;
        padding-bottom: 3.125vw;
        padding-left: 0;
        color: #808080;
    }
}

/*  contact-privacy
--------------------------------------------- */
.contact-privacy {
    margin-top: 100px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-privacy {
        margin-top: 7.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-privacy {
        margin-top: 15.625vw;
    }
}

.contact-privacy__box {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 290px;
    border: 1px solid #b6b6b6;
    overflow-y: auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-privacy__box {
        height: 21.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-privacy__box {
        height: 55.46875vw;
    }
}

.contact-privacy__box-inner {
    max-width: 580px;
    width: 100%;
    padding-top: 55px;
    padding-bottom: 70px;
    margin-right: auto;
    margin-left: auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-privacy__box-inner {
        padding: 4.07407vw 2.22222vw 5.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-privacy__box-inner {
        padding: 7.03125vw 6.25vw 9.375vw;
    }
}

.contact-privacy__box-head {
    text-align: center;
    font-size: 1.28571rem;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-privacy__box-head {
        font-size: 1.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-privacy__box-head {
        font-size: 2.14286rem;
    }
}

.contact-privacy__box-body {
    margin-top: 20px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-privacy__box-body {
        margin-top: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-privacy__box-body {
        margin-top: 4.6875vw;
    }
}

.contact-privacy__box-pragraph {
    margin-top: 35px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-privacy__box-pragraph {
        margin-top: 2.59259vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-privacy__box-pragraph {
        margin-top: 10.15625vw;
    }
}

.contact-privacy__box-pragraph-head {
    border-top: 0;
    font-weight: bold;
}

.contact-privacy__box-pragraph-head:before {
    content: "■";
}

.contact-privacy__box-pragraph-body {
    margin-top: 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-privacy__box-pragraph-body {
        margin-top: 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-privacy__box-pragraph-body {
        margin-top: pxtovw "20, " sp;
    }
}

.contact-privacy__box-list-item {
    position: relative;
    padding-left: 1.0em;
    margin-top: 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-privacy__box-list-item {
        margin-top: 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-privacy__box-list-item {
        margin-top: 3.125vw;
    }
}

.contact-privacy__box-list-item:before {
    content: "・";
    position: absolute;
}

.contact-privacy__agree {
    text-align: center;
    margin-top: 70px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-privacy__agree {
        margin-top: 5.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-privacy__agree {
        margin-top: 10.9375vw;
    }
}

/*  contact-tel
--------------------------------------------- */
.contact-tel {
    position: relative;
    padding-top: 90px;
    margin-top: 150px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-tel {
        padding-top: 6.66667vw;
        margin-top: 11.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-tel {
        padding-top: 31.25vw;
        margin-top: 23.4375vw;
    }
}

.contact-tel__box {
    position: absolute;
    top: 0;
    left: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 760px;
    width: 100%;
    height: 180px;
    letter-spacing: .05em;
    color: #fff;
    font-weight: bold;
    background: url(../img/contact/contact-tel.jpg) 50% 50% no-repeat;
    background-size: cover;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-tel__box {
        width: 56.2963vw;
        height: 13.33333vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-tel__box {
        width: 84.53125vw;
        height: 43.59375vw;
        background-image: url(../img/contact/contact-tel-sp.jpg);
    }
}

.contact-tel__ttl {
    margin-top: 10px;
    color: #fff;
    font-size: calc((22 / 16) * 1rem);
    letter-spacing: 0.2em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-tel__ttl {
        margin-top: calc((10 * 100 / 1350) * 1vw);
        font-size: calc((22 * 100 / 1350) * 1vw);
    }
}

@media screen and (max-width: 750px) {
    .contact-tel__ttl {
        margin-top: calc((48 * 100 / 1350) * 1vw);
        font-size: calc((35 * 100 / 750) * 1vw);
    }
}

.contact-tel__lead {
    font-size:  calc((14 / 16) * 1rem);
    font-weight: 400;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-tel__lead {
        font-size: calc((14 * 100 / 1350) * 1vw);
    }
}

@media screen and (max-width: 750px) {
    .contact-tel__lead {
        font-size: calc((21 * 100 / 750) * 1vw);
    }
}

.contact-tel__call {
    position: relative;
    letter-spacing: 0.1em;
    color: #fff;
    font-size: calc((34 / 16) * 1rem);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-tel__call {
        font-size: calc((34 * 100 / 1350) * 1vw);
    }
}

@media screen and (max-width: 750px) {
    .contact-tel__call {
        font-size: calc((55 * 100 / 750) * 1vw);
        letter-spacing: 0.06em;
    }
}

.contact-tel__call:before {
    content: "tel. ";
    font-size:  calc((22 / 16) * 1rem);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-tel__call:before {
        font-size: calc((22 * 100 / 1350) * 1vw);
    }
}

@media screen and (max-width: 750px) {
    .contact-tel__call:before {
        font-size: calc((34 * 100 / 750) * 1vw);
    }
}

/* .contact-tel__call::after {
    content: " (通話無料)";
    font-size: calc((14 / 16) * 1rem);
    letter-spacing: 0.05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-tel__call::after {
        font-size: calc((14 * 100 / 1350) * 1vw);
    }
}

@media screen and (max-width: 750px) {
    .contact-tel__call::after {
        position: absolute;
        width: calc((128 * 100 / 750) * 1vw);
        top: calc((78 * 100 / 750) * 1vw);
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
        font-size: calc((24 * 100 / 750) * 1vw);
    }
} */

.contact-tel__business-hour {
    font-size: calc((12 / 16) * 1rem);
    letter-spacing: 0.05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-tel__business-hour {
        font-size: calc((12 * 100 / 1350) * 1vw);
    }
}

@media screen and (max-width: 750px) {
    .contact-tel__business-hour {
        margin-top: calc((30 * 100 / 750) * 1vw);
        font-size: calc((24 * 100 / 750) * 1vw);
        letter-spacing: -0.05em;
    }
}

.contact-tel:after {
    content: "";
    display: block;
    height: 270px;
    background-color: #eaebe7;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .contact-tel:after {
        height: 20vw;
    }
}

@media screen and (max-width: 750px) {
    .contact-tel:after {
        height: 48.4375vw;
    }
}

/* ---------------------------------------------
*   company
--------------------------------------------- */
/*  company-msg
--------------------------------------------- */
.company-msg {
    padding-top: 150px;
    margin-bottom: 175px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company-msg {
        padding-top: 11.11111vw;
        margin-bottom: 12.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .company-msg {
        padding-top: 23.4375vw;
        margin-bottom: 32.1875vw;
    }
}

.company-msg__container {
    max-width: 1350px;
    margin: 0 auto;
    padding-top: 48px;
    padding-left: 625px;
    background: url(../img/company/img_message.jpg) left top no-repeat;
    background-size: 660px auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company-msg__container {
        padding-top: 3.55556vw;
        padding-left: 46.2963vw;
        background-size: 48.88889vw auto;
    }
}

@media screen and (max-width: 750px) {
    .company-msg__container {
        max-width: auto;
        max-width: initial;
        padding: 8.59375vw 0 0;
        background: url(../img/company/img_message.jpg) left top 28.4375vw no-repeat;
        background-size: 82.03125vw auto;
    }
}

.company-msg__body {
    margin-top: 37px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company-msg__body {
        margin-top: 2.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .company-msg__body {
        margin-top: 82.8125vw;
    }
}

.company-msg__body-head {
    font-size: 18px;
    line-height: 1.9;
    letter-spacing: 0.4em;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company-msg__body-head {
        font-size: 1.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .company-msg__body-head {
        font-size: 5vw;
        letter-spacing: .08em;
        padding-left: 7.8125vw;
    }
}

.company-msg__body-txt {
    font-size: 14px;
    line-height: 2.2;
    margin-top: 34px;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company-msg__body-txt {
        font-size: 1.03704vw;
        margin-top: 2.51852vw;
    }
}

@media screen and (max-width: 750px) {
    .company-msg__body-txt {
        font-size: 3.75vw;
        padding: 0 7.8125vw;
        margin-top: 7.34375vw;
        line-height: 2.1;
        letter-spacing: 0.02em;
    }
}

.company-msg__body-txt + .company-msg__body-txt {
    margin-top: 1.8em;
}

@media screen and (max-width: 750px) {
    .company-msg__body-txt + .company-msg__body-txt {
        margin-top: 1.3em;
    }
}

.company-msg__signature {
    position: relative;
    margin-top: 5em;
}

@media screen and (max-width: 750px) {
    .company-msg__signature {
        padding-left: 7.8125vw;
        margin-top: 4em;
    }
}

.company-msg__post {
    font-size: 14px;
    letter-spacing: .1em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company-msg__post {
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .company-msg__post {
        font-size: 3.75vw;
    }
}

.company-msg__name {
    font-size: 16px;
    letter-spacing: .1em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company-msg__name {
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .company-msg__name {
        font-size: 4.0625vw;
        letter-spacing: .15em;
    }
}

.company-msg__txtimg {
    position: absolute;
    bottom: -48px;
    right: 205px;
    width: 237px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company-msg__txtimg {
        bottom: -3.55556vw;
        right: 15.18519vw;
        width: 17.55556vw;
    }
}

@media screen and (max-width: 750px) {
    .company-msg__txtimg {
        bottom: -13.28125vw;
        right: 7.5vw;
        width: 46.875vw;
    }
}

/*  company-policy
--------------------------------------------- */
.company-policy {
    background-color: #F2F5F5;
    padding: 85px 0 130px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company-policy {
        padding: 6.2963vw 0 9.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .company-policy {
        padding: 20vw 0 25.78125vw;
    }
}

.company-policy--full {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
}

.company-policy--fukushima {
    padding-top: 242px;
    margin-top: -157px;
}

@media screen and (max-width: 750px) {
    .company-policy--fukushima {
        padding-top: 47.1875vw;
        margin-top: -27.34375vw;
    }
}

.company-policy__container {
    max-width: 1350px;
    margin: 10px auto 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .company-policy__container {
        margin: 4vw auto 0;
    }
}

@media screen and (max-width: 750px) {
    .company-policy__container {
        max-width: auto;
        max-width: initial;
    }
}

.company-policy__container--narrow {
    margin-top: 35px;
}

@media screen and (max-width: 750px) {
    .company-policy__container--narrow {
        margin-top: 7.8125vw;
    }
}

.policy-list {
  list-style: none;
  padding: 0;
  margin: 0px 20px 0px 20px;
}

/* スマホ（～750px） → 縦1列 */
@media screen and (max-width: 750px) {
  .policy-list {
    display: grid;
    grid-template-columns: 1fr; /* 1列固定 */
    gap: 60px; /* スマホ用に間隔少なめ */
    text-align: center;
  }
}

/* PC（751px～） → 横1列で5個均等 */
@media screen and (min-width: 751px) {
  .policy-list {
    display: grid;
    grid-template-columns: repeat(5, 1fr); /* 5列均等配置 */
    gap: 40px;
    text-align: center;
  }
}

/* スマホ（～750px） → 縦1列 */
@media screen and (max-width: 750px) {
  .policy-list_fukushima {
    display: grid;
    grid-template-columns: 1fr; /* 1列固定 */
    gap: 60px; /* スマホ用に間隔少なめ */
    text-align: center;
  }
}

/* PC（751px～） → 横1列で5個均等 */
@media screen and (min-width: 751px) {
  .policy-list_fukushima {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 5列均等配置 */
    gap: 40px;
    text-align: center;
  }
}

/* アイコン画像の微調整 */
.icosociety{
    max-height: 100%;
}

/* 企業理念部分、装飾 */
.policy-list__item {
  position: relative;
}

.policy-list__item {
  position: relative;
}

/* デフォルト（スマホ用: 非表示） */
.hover-bubble {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  margin-top: 6px;

  color: #000;
  font-size: 0.9vw;
  white-space: nowrap;
  z-index: 10;

  background: transparent;
  padding: 4px 8px;

  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* タップ時に表示（スマホ用） */
.hover-bubble.visible {
  opacity: 1;
  visibility: visible;
}

/* PC（751px以上）では常に表示 */
@media screen and (min-width: 751px) {
  .hover-bubble {
    opacity: 1 !important;
    visibility: visible !important;
  }
}

@media screen and (max-width: 750px) {
  .hover-bubble {
    font-size: 13px;
  }
}

/* 表示状態 */
.hover-bubble.visible {
  opacity: 1;
  visibility: visible;
}

.comphilosophy{
    text-align: center;
    font-weight: 600;
    color: #808080;
    font-size: 160%;
}

.comphilosophy2{
    text-align: center;
    font-weight: 600;
    color: #808080;
    font-size: 80%;
    margin-top: 30px;
}

@media screen and (max-width: 750px) {
.comphilosophy2
 {
    text-align: center;
    font-weight: 600;
    color: #808080;
    font-size: 130%;
    margin-top: 20px;
}
}

.policy-list__num {
    color: #808080;
    font-size: 20px;
    font-family: 'montserrat-semibold';
    line-height: 2;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__num {
        font-size: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .policy-list__num {
        font-size: 4.6875vw;
    }
}

.policy-list__ico {
    margin: 15px auto 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__ico {
        margin: 1.11111vw auto 0;
    }
}

.policy-list__ico--1 {
    width: 52px;
    height: 54px;
    margin-bottom: 32px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__ico--1 {
        width: 3.85185vw;
        height: 4vw;
        margin-bottom: 2.37037vw;
    }
}

@media screen and (max-width: 750px) {
    .policy-list__ico--1 {
        width: 10.15625vw;
        height: auto;
        margin-bottom: 6.71875vw;
    }
}

.policy-list__ico--2 {
    width: 45px;
    height: 60px;
    margin-bottom: 26px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__ico--2 {
        width: 3.33333vw;
        height: 4.44444vw;
        margin-bottom: 1.92593vw;
    }
}

@media screen and (max-width: 750px) {
    .policy-list__ico--2 {
        width: 8.75vw;
        height: auto;
        margin-bottom: 6.09375vw;
    }
}

.policy-list__ico--3 {
    width: 45px;
    height: 54px;
    margin-bottom: 33px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__ico--3 {
        width: 3.33333vw;
        height: 4vw;
        margin-bottom: 2.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .policy-list__ico--3 {
        width: 9.375vw;
        height: auto;
        margin-top: 3.4375vw;
        margin-bottom: 5.15625vw;
    }
}

.policy-list__ico--4 {
    width: 64px;
    height: 64px;
    margin-bottom: 23px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__ico--4 {
        width: 4.74074vw;
        height: 4.74074vw;
        margin-bottom: 1.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .policy-list__ico--4 {
        width: 11.5625vw;
        height: auto;
        margin-top: 3.28125vw;
        margin-bottom: 5.78125vw;
    }
}

.policy-list__ico--5 {
    width: 64px;
    height: 64px;
    margin-bottom: 23px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__ico--5 {
        width: 4.74074vw;
        height: 4.74074vw;
        margin-bottom: 1.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .policy-list__ico--5 {
        width: 11.5625vw;
        margin-top: 3.28125vw;
        margin-bottom: 5.78125vw;
    }
}

.policy-list__ttl {
    color: #479A4D;
    font-size: 26px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: .25em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__ttl {
        font-size: 1.92593vw;
    }
}

@media screen and (max-width: 750px) {
    .policy-list__ttl {
        font-size: 6.25vw;
        letter-spacing: .3em;
    }
}

.policy-list__ttl--pos {
    padding-left: 8px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__ttl--pos {
        padding-left: 0.59259vw;
    }
}

@media screen and (max-width: 750px) {
    .policy-list__ttl--pos {
        padding-left: 1.25vw;
    }
}

.policy-list__ttl-en {
    display: inline-block;
    position: relative;
    font-size: 12px;
    padding: 0 25px;
    margin-top: 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__ttl-en {
        font-size: 0.88889vw;
        padding: 0 1.85185vw;
        margin-top: 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .policy-list__ttl-en {
        font-size: 3.28125vw;
    }
}

.policy-list__ttl-en:before, .policy-list__ttl-en:after {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '';
    width: 18px;
    height: 1px;
    background-color: #000;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__ttl-en:before, .policy-list__ttl-en:after {
        width: 1.33333vw;
    }
}

.policy-list__ttl-en:before {
    left: 0;
}

.policy-list__ttl-en:after {
    right: 0;
}

.policy-list__txt {
    font-size: 16px;
    margin-top: 18px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .policy-list__txt {
        font-size: 1.18519vw;
        margin-top: 1.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .policy-list__txt {
        font-size: 4.0625vw;
        line-height: 1.4;
    }
}

/*  history
--------------------------------------------- */
.history {
    padding-top: 170px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .history {
        padding-top: 12.59259vw;
    }
}

@media screen and (max-width: 750px) {
    .history {
        padding-top: 26.5625vw;
    }
}

.history__container {
    max-width: 1350px;
    margin: 0 auto;
    background: url(../img/company/img_history.jpg) top right no-repeat;
    background-size: 655px auto;
    padding-top: 25px;
    padding-left: 175px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .history__container {
        background-size: 48.51852vw auto;
        padding-top: 1.85185vw;
        padding-left: 12.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .history__container {
        max-width: auto;
        max-width: initial;
        padding: 0.9375vw 0 0;
        background: url(../img/company/img_history.jpg) right top 23.90625vw no-repeat;
        background-size: 87.5vw auto;
    }
}

.history-list {
    display: block;
    margin-top: 40px;
    line-height: 1.8;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .history-list {
        margin-top: 2.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .history-list {
        margin-top: 87.1875vw;
        padding: 0 7.8125vw;
    }
}

.history-list__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 750px) {
    .history-list__item {
        display: block;
    }
}

.history-list__item + .history-list__item {
    margin-top: 30px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .history-list__item + .history-list__item {
        margin-top: 2.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .history-list__item + .history-list__item {
        margin-top: 9.84375vw;
    }
}

.history-list__date {
    width: 162px;
    position: relative;
    font-size: 14px;
    font-weight: bold;
    padding-right: 52px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .history-list__date {
        width: 12vw;
        font-size: 1.03704vw;
        padding-right: 3.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .history-list__date {
        display: inline-block;
        width: auto;
        font-size: 3.75vw;
        padding-right: 12.5vw;
    }
}

.history-list__date:after {
    position: absolute;
    top: 11px;
    right: 25px;
    content: '';
    width: 26px;
    height: 1px;
    background-color: #808080;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .history-list__date:after {
        top: 0.81481vw;
        right: 1.85185vw;
        width: 1.92593vw;
    }
}

@media screen and (max-width: 750px) {
    .history-list__date:after {
        height: 0.3125vw;
        width: 9.375vw;
        top: 3.28125vw;
        right: 0;
    }
}

.history-list__txt {
    width: 446px;
    font-size: 14px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .history-list__txt {
        width: 33.03704vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .history-list__txt {
        width: 100%;
        font-size: 3.59375vw;
        margin-top: 2.8125vw;
    }
}

.history-list__txt--mt {
    display: inline-block;
    margin-top: 15px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .history-list__txt--mt {
        margin-top: 1.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .history-list__txt--mt {
        margin-top: 0;
    }
}

/*  profile
--------------------------------------------- */
.profile {
    padding-top: 190px;
}

@media screen and (max-width: 750px) {
    .profile {
        padding-top: 31.875vw;
    }
}

.profile__container {
    position: relative;
    max-width: 1350px;
    margin: 0 auto;
    padding: 12px 140px 0 545px;
    background: url(../img/company/img_profile.jpg) 0 127px no-repeat;
    background-size: 476px auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .profile__container {
        padding: 0.88889vw 10.37037vw 0 40.37037vw;
        background-position: 0 9.40741vw;
        background-size: 35.25926vw auto;
    }
}

@media screen and (max-width: 750px) {
    .profile__container {
        max-width: auto;
        max-width: initial;
        padding: 0;
        background: url(../img/company/img_profile.jpg) 0 6.25vw no-repeat;
        background-size: 52.5vw auto;
    }
}

.profile__bg {
    display: inline-block;
    position: absolute;
    top: -48px;
    left: 300px;
    width: 365px;
    height: 395px;
    background-color: #F2F5F5;
    z-index: -1;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .profile__bg {
        top: -3.55556vw;
        left: 22.22222vw;
        width: 27.03704vw;
        height: 29.25926vw;
    }
}

@media screen and (max-width: 750px) {
    .profile__bg {
        right: 10.9375vw;
        left: auto;
        width: 51.5625vw;
        height: 60.9375vw;
    }
}

.profile-list {
    display: block;
    margin-top: 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .profile-list {
        margin-top: 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .profile-list {
        margin-top: 70.3125vw;
        padding: 0 7.8125vw;
    }
}

@media screen and (max-width: 750px) {
    .profile-list--fukushima {
        margin-top: 0;
        padding: 0 7.5vw;
    }
}

.profile-list__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 45px;
    padding-bottom: 15px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .profile-list__item {
        padding-top: 3.33333vw;
        padding-bottom: 1.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .profile-list__item {
        padding-top: 7.8125vw;
        padding-bottom: 8.90625vw;
    }
}

.profile-list__item + .profile-list__item {
    border-top: 1px solid #B3B3B3;
    padding-top: 60px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .profile-list__item + .profile-list__item {
        padding-top: 4.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .profile-list__item + .profile-list__item {
        padding-top: 9.6875vw;
    }
}

.profile-list__item + .profile-list__item--column {
    padding-top: 45px;
    line-height: 2;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .profile-list__item + .profile-list__item--column {
        padding-top: 3.33333vw;
    }
}

.profile-list__item:last-child {
    padding-top: 38px;
    border-bottom: 1px solid #B3B3B3;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .profile-list__item:last-child {
        padding-top: 2.81481vw;
    }
}

@media screen and (max-width: 750px) {
    .profile-list__item:last-child {
        padding-top: 9.6875vw;
    }
}

.profile-list__item + .profile-list__item--2 {
    padding-top: 60px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .profile-list__item + .profile-list__item--2 {
        padding-top: 4.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .profile-list__item + .profile-list__item--2 {
        padding-top: 9.6875vw;
    }
}

.profile-list__head {
    width: 147px;
    font-size: 14px;
    font-weight: bold;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .profile-list__head {
        width: 10.88889vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .profile-list__head {
        width: 21.875vw;
        font-size: 3.75vw;
    }
}

.profile-list__txt {
    font-size: 14px;
    width: 490px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: 0.04em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .profile-list__txt {
        font-size: 1.03704vw;
        width: 36.2963vw;
    }
}

@media screen and (max-width: 750px) {
    .profile-list__txt {
        width: 62.5vw;
        font-size: 3.75vw;
        letter-spacing: 0;
        line-height: 1.7;
    }
}

/* ---------------------------------------------
*   service
--------------------------------------------- */
@media screen and (max-width: 750px) {
    .service {
        overflow: hidden;
    }
}

/*  kit
--------------------------------------------- */
.kit {
    position: relative;
    padding-top: 136px;
    padding-bottom: 200px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit {
        padding-top: 10.07407vw;
        padding-bottom: 14.81481vw;
    }
}

@media screen and (max-width: 750px) {
    .kit {
        padding-top: 19.84375vw;
        padding-bottom: 16.40625vw;
    }
}

.kit:after {
    position: absolute;
    bottom: 2px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    content: '';
    width: 180px;
    height: 1px;
    background-color: #000;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit:after {
        width: 13.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .kit:after {
        width: 28.125vw;
    }
}

.kit__container {
    position: relative;
    background: url(../img/service/img_kit.jpg) 0 7px no-repeat;
    background-size: 675px auto;
    padding-bottom: 65px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit__container {
        background-position: 0 0.51852vw;
        background-size: 50vw auto;
        padding-bottom: 4.81481vw;
    }
}

@media screen and (max-width: 750px) {
    .kit__container {
        padding-top: 0;
        background-position: 0 19.53125vw;
        background-size: 82.03125vw;
    }
}

@media screen and (max-width: 750px) {
    .kit__wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

@media screen and (max-width: 750px) {
    .kit__wrap-txt {
        width: 46%;
        padding-left: 7.8125vw;
        font-size: 3.75vw;
        text-align: left;
        margin-top: 6.875vw;
        line-height: 2.1;
    }
}

@media screen and (max-width: 750px) {
    .kit__wrap-img {
        width: 50vw;
        height: 50vw;
        margin-top: 8.75vw;
        margin-left: 4.6875vw;
    }
}

.kit__under-txt {
    font-size: 14px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit__under-txt {
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .kit__under-txt {
        bottom: auto;
        left: 7.8125vw;
        text-align: left;
        margin-top: 8.125vw;
        font-size: 3.75vw;
        padding-right: 10.15625vw;
        letter-spacing: -0.1em;
    }
}

.kit__bg {
    position: absolute;
    bottom: 0;
    left: 144px;
    width: 720px;
    height: 500px;
    background-color: #F2F5F5;
    z-index: -1;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit__bg {
        left: 10.66667vw;
        width: 53.33333vw;
        height: 37.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .kit__bg {
        bottom: auto;
        top: 34.375vw;
        width: 64.84375vw;
        height: 70.3125vw;
        left: 31.25vw;
    }
}

.kit-merit {
    text-align: center;
    margin-top: 70px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit-merit {
        margin-top: 5.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .kit-merit {
        margin-top: 33.125vw;
    }
}

.kit-merit__ttl {
    display: inline-block;
    padding: 0 48px;
    position: relative;
    color: #479A4D;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: -0.05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit-merit__ttl {
        padding: 0 3.55556vw;
        font-size: 1.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .kit-merit__ttl {
        font-size: 4.6875vw;
    }
}

.kit-merit__ttl:before, .kit-merit__ttl:after {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '';
    width: 30px;
    height: 2px;
    background-color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit-merit__ttl:before, .kit-merit__ttl:after {
        width: 2.22222vw;
        height: 0.14815vw;
    }
}

@media screen and (max-width: 750px) {
    .kit-merit__ttl:before, .kit-merit__ttl:after {
        content: none;
    }
}

.kit-merit__ttl:before {
    left: 0;
}

.kit-merit__ttl:after {
    right: 0;
}

.kit-merit__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 1350px;
    margin: 20px auto 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit-merit__list {
        margin: 1.48148vw auto 0;
    }
}

@media screen and (max-width: 750px) {
    .kit-merit__list {
        max-width: auto;
        max-width: initial;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 4.6875vw auto 0;
    }
}

.kit-merit__item {
    width: 160px;
    margin: 0 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit-merit__item {
        width: 11.85185vw;
        margin: 0 1.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .kit-merit__item {
        width: 33%;
        margin: 0 6.25vw 6.25vw;
    }
}

.kit-merit__item-txt {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.7;
    margin-top: 20px;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    white-space: nowrap;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .kit-merit__item-txt {
        font-size: 1.18519vw;
        margin-top: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .kit-merit__item-txt {
        margin: 3.125vw -3.125vw;
        font-size: 3.75vw;
    }
}

.kit-merit__item-txt--underline {
    padding-bottom: 1px;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #E0D7C5));
    background: linear-gradient(transparent 60%, #E0D7C5 60%);
}

/*  features
--------------------------------------------- */
.features {
    text-align: center;
    padding-top: 190px;
    padding-bottom: 108px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features {
        padding-top: 14.07407vw;
        padding-bottom: 8vw;
    }
}

@media screen and (max-width: 750px) {
    .features {
        padding-top: 29.6875vw;
        padding-bottom: 31.25vw;
    }
}

.features__txt {
    line-height: 2;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features__txt {
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .features__txt {
        font-size: 3.75vw;
        padding: 0 8.125vw 0 7.8125vw;
        text-align: left;
        margin-top: 11.5625vw;
        letter-spacing: 0;
    }
}

.features-illustration {
    max-width: 1350px;
    margin: 0 auto;
    position: relative;
    padding-top: 180px;
    padding-bottom: 150px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-illustration {
        padding-top: 13.33333vw;
        padding-bottom: 11.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .features-illustration {
        max-width: auto;
        max-width: initial;
        padding-top: 28.125vw;
        padding-bottom: 23.4375vw;
    }
}

.features-illustration__fig {
    width: 426px;
    margin: 0 auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-illustration__fig {
        width: 31.55556vw;
    }
}

@media screen and (max-width: 750px) {
    .features-illustration__fig {
        width: 54.6875vw;
        margin-top: 4.375vw;
    }
}

.features-illustration__content {
    display: inline-block;
    position: absolute;
}

.features-illustration__head {
    color: #479A4D;
    font-weight: bold;
    font-size: 22px;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-illustration__head {
        font-size: 1.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .features-illustration__head {
        font-size: 3.4375vw;
        line-height: 1.4;
    }
}

.features-illustration__list {
    margin-top: 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-illustration__list {
        margin-top: 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .features-illustration__list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.features-illustration__list--market {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 750px) {
    .features-illustration__list--market {
        margin-top: 0.3125vw;
    }
}

.features-illustration__list--test {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.features-illustration__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 106px;
    height: 32px;
    border-radius: 16px;
    background-color: #DAE3E3;
    font-size: 16px;
    margin: 0 2px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-illustration__item {
        width: 7.85185vw;
        height: 2.37037vw;
        border-radius: 1.18519vw;
        font-size: 1.18519vw;
        margin: 0 0.14815vw;
    }
}

@media screen and (max-width: 750px) {
    .features-illustration__item {
        width: 16.5625vw;
        height: 5vw;
        font-size: 2.8125vw;
        margin-top: 0.78125vw;
        background-color: #DAE3E3;
    }
}

.features-illustration__item + .features-illustration__item {
    margin-top: 5px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-illustration__item + .features-illustration__item {
        margin-top: 0.37037vw;
    }
}

@media screen and (max-width: 750px) {
    .features-illustration__item + .features-illustration__item {
        margin-top: 0.78125vw;
    }
}

.market .features-illustration__item {
    margin-top: 0;
}

@media screen and (max-width: 750px) {
    .market .features-illustration__item {
        margin-top: 0.78125vw;
    }
}

@media screen and (max-width: 750px) {
    .merchandising .features-illustration__item {
        margin-left: 1.875vw;
    }
}

.market {
    top: 85px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .market {
        top: 6.2963vw;
    }
}

@media screen and (max-width: 750px) {
    .market {
        top: 13.28125vw;
        width: 35.9375vw;
    }
}

.strategy {
    text-align: left;
    top: 250px;
    right: 270px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .strategy {
        top: 18.51852vw;
        right: 20vw;
    }
}

@media screen and (max-width: 750px) {
    .strategy {
        width: 17.96875vw;
        top: 20.3125vw;
        top: 24.6875vw;
        right: 2.8125vw;
    }
}

.development {
    text-align: left;
    bottom: 148px;
    right: 302px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .development {
        bottom: 10.96296vw;
        right: 22.37037vw;
    }
}

@media screen and (max-width: 750px) {
    .development {
        width: 17.96875vw;
        bottom: 19.6875vw;
        right: 2.8125vw;
    }
}

.test {
    bottom: 53px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .test {
        bottom: 3.92593vw;
    }
}

@media screen and (max-width: 750px) {
    .test {
        width: 35.9375vw;
        bottom: 9.375vw;
    }
}

.merchandising {
    text-align: right;
    bottom: 180px;
    left: 347px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .merchandising {
        bottom: 13.33333vw;
        left: 25.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .merchandising {
        width: 17.96875vw;
        bottom: 27.5vw;
        left: 2.8125vw;
    }
}

.feedback {
    text-align: right;
    top: 280px;
    left: 316px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .feedback {
        top: 20.74074vw;
        left: 23.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .feedback {
        top: 46.25vw;
        left: 10.15625vw;
    }
}

.features-contents {
    margin-top: 113px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-contents {
        margin-top: 113px;
    }
}

@media screen and (max-width: 750px) {
    .features-contents {
        margin-top: 17.65625vw;
    }
}

.features-contents__list {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-bottom: 100px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-contents__list {
        padding-bottom: 7.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .features-contents__list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding-bottom: 18.75vw;
    }
}

.features-contents__list:before, .features-contents__list:after {
    position: absolute;
    bottom: 22px;
    content: '';
    width: 36px;
    height: 1px;
    background-color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-contents__list:before, .features-contents__list:after {
        bottom: 1.62963vw;
        width: 2.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .features-contents__list:before, .features-contents__list:after {
        bottom: -0.9375vw;
        width: 5.625vw;
    }
}

.features-contents__list:before {
    left: calc(50% - .5px);
    -webkit-transform: rotate(-38deg);
    transform: rotate(-38deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
}

.features-contents__list:after {
    right: calc(50% - .5px);
    -webkit-transform: rotate(38deg);
    transform: rotate(38deg);
    -webkit-transform-origin: top right;
    transform-origin: top right;
}

.features-contents__item {
    width: 220px;
    margin: 0 20px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-contents__item {
        width: 16.2963vw;
        margin: 0 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .features-contents__item {
        width: 43.75vw;
        margin: 0 0;
    }
    .features-contents__item:nth-of-type(n+3) {
        margin-top: 10.9375vw;
    }
}

@media screen and (max-width: 750px) {
    .features-contents__item:nth-of-type(2n) {
        margin-left: 3.125vw;
    }
}

.features-contents__img {
    width: 220px;
    height: 168px;
    margin-bottom: 24px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-contents__img {
        width: 16.2963vw;
        height: 12.44444vw;
        margin-bottom: 1.77778vw;
    }
}

@media screen and (max-width: 750px) {
    .features-contents__img {
        width: 100%;
        height: auto;
        margin-bottom: 3.75vw;
    }
}

.features-contents__head {
    font-size: 18px;
    font-weight: bold;
    color: #479A4D;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .04em;
    margin-bottom: 10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-contents__head {
        font-size: 1.33333vw;
        margin-bottom: 0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .features-contents__head {
        font-size: 4.375vw;
        margin-bottom: 3.125vw;
        line-height: 1;
    }
}

@media screen and (max-width: 750px) {
    .features-contents__head--small {
        font-size: 3.75vw;
    }
}

.features-contents__txt {
    letter-spacing: 0.01em;
    font-size: 14px;
    text-align: left;
    line-height: 1.9;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-contents__txt {
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .features-contents__txt {
        font-size: 3.4375vw;
    }
}

.features-contents__ttl {
    font-size: 20px;
    font-weight: bold;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .16em;
    color: #479A4D;
    margin-top: 14px;
}

@media screen and (min-width: 1351px) {
    .features-contents__ttl {
        font-size: 1.48148vw;
        margin-top: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .features-contents__ttl {
        font-size: 4.6875vw;
        margin-top: 15.625vw;
        letter-spacing: .06em;
    }
}

.features-contents__bottom-txt {
    text-align: center;
    line-height: 2;
    margin-top: 18px;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .07em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .features-contents__bottom-txt {
        margin-top: 1.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .features-contents__bottom-txt {
        font-size: 3.4375vw;
        padding: 0 7.03125vw;
        margin-top: 1.5625vw;
        line-height: 1.9;
    }
}

/*  flow
--------------------------------------------- */
.flow {
    background-color: #F2F5F5;
    text-align: center;
    padding-top: 130px;
    padding-bottom: 166px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow {
        padding-top: 9.62963vw;
        padding-bottom: 12.2963vw;
    }
}

@media screen and (max-width: 750px) {
    .flow {
        padding-top: 28.125vw;
        padding-bottom: 30.625vw;
    }
}

.flow__container {
    position: relative;
    max-width: 1350px;
    margin: 0 auto;
}

@media screen and (min-width: 1351px) {
    .flow__container {
        overflow: visible;
    }
}

@media screen and (max-width: 750px) {
    .flow__container {
        max-width: auto;
        max-width: initial;
    }
}

.flow__bg-item {
    position: absolute;
    content: '';
}

.flow__bg-item--1 {
    top: -13px;
    left: -128px;
    width: 340px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow__bg-item--1 {
        top: -0.96296vw;
        left: -9.48148vw;
        width: 25.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .flow__bg-item--1 {
        width: 37.5vw;
        top: -11.5625vw;
        left: -17.5vw;
    }
}

.flow__bg-item--2 {
    top: 534px;
    width: 132px;
    left: 46px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow__bg-item--2 {
        top: 39.55556vw;
        width: 9.77778vw;
        left: 3.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .flow__bg-item--2 {
        top: 210.625vw;
        width: 14.0625vw;
        left: auto;
        right: 0vw;
    }
}

.flow__bg-item--3 {
    top: 648px;
    left: 93px;
    width: 290px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow__bg-item--3 {
        top: 48vw;
        left: 6.88889vw;
        width: 21.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .flow__bg-item--3 {
        width: 29.6875vw;
        top: 220.46875vw;
        left: -7.5vw;
    }
}

.flow__bg-item--4 {
    top: 1000px;
    left: -80px;
    width: 215px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow__bg-item--4 {
        top: 74.07407vw;
        left: -5.92593vw;
        width: 15.92593vw;
    }
}

@media screen and (max-width: 750px) {
    .flow__bg-item--4 {
        width: 22.1875vw;
        left: auto;
        right: 9.21875vw;
        top: 242.96875vw;
    }
}

.flow__bg-item--5 {
    top: -255px;
    right: -92px;
    width: 317px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow__bg-item--5 {
        top: -18.88889vw;
        right: -6.81481vw;
        width: 23.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .flow__bg-item--5 {
        width: 36.875vw;
        top: -45.3125vw;
        right: -9.84375vw;
    }
}

.flow__bg-item--6 {
    top: 51px;
    right: 130px;
    width: 136px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow__bg-item--6 {
        top: 3.77778vw;
        right: 9.62963vw;
        width: 10.07407vw;
    }
}

@media screen and (max-width: 750px) {
    .flow__bg-item--6 {
        top: 46.40625vw;
        right: 6.875vw;
        width: 15.9375vw;
    }
}

.flow__bg-item--7 {
    top: 156px;
    right: -50px;
    width: 187px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow__bg-item--7 {
        top: 11.55556vw;
        right: -3.7037vw;
        width: 13.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .flow__bg-item--7 {
        top: 61.25vw;
        right: -9.375vw;
        width: 22.96875vw;
        -webkit-transform: translate(0, 80px) rotate(5deg);
        transform: translate(0, 80px) rotate(5deg);
    }
}

.flow__bg-item--7.js-scroll2.js-scroll-in {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

@media screen and (max-width: 750px) {
    .flow__bg-item--7.js-scroll2.js-scroll-in {
        -webkit-transform: translate(0, 0) rotate(5deg);
        transform: translate(0, 0) rotate(5deg);
    }
}

.flow__bg-item--8 {
    bottom: 120px;
    right: 90px;
    width: 270px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow__bg-item--8 {
        bottom: 8.88889vw;
        right: 6.66667vw;
        width: 20vw;
    }
}

@media screen and (max-width: 750px) {
    .flow__bg-item--8 {
        width: 36.71875vw;
        bottom: 54.6875vw;
        right: -15.625vw;
    }
}

.flow-list {
    margin-top: 60px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list {
        margin-top: 4.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list {
        margin-top: 13.4375vw;
    }
}

.flow-list__item {
    position: relative;
    width: 740px;
    margin: 0 auto;
    padding: 50px 70px;
    background-color: #fff;
    -webkit-box-shadow: 2px 2px 6px 0px #ddd;
    box-shadow: 2px 2px 6px 0px #ddd;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__item {
        width: 54.81481vw;
        padding: 3.7037vw 5.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__item {
        padding: 8.59375vw 7.03125vw;
        width: 84.375%;
    }
}

.flow-list__item:after {
    position: absolute;
    bottom: -42px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 7.5px 0 7.5px;
    border-color: #479A4D transparent transparent transparent;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__item:after {
        bottom: -3.11111vw;
        border-width: 0.74074vw 0.55556vw 0 0.55556vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__item:after {
        bottom: -10.3125vw;
        border-width: 2.34375vw 2.1875vw 0 2.1875vw;
    }
}

.flow-list__item + .flow-list__item {
    margin-top: 70px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__item + .flow-list__item {
        margin-top: 5.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__item + .flow-list__item {
        margin-top: 17.96875vw;
    }
}

.flow-list__item + .flow-list__item--last {
    margin-top: 150px;
    background-color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__item + .flow-list__item--last {
        margin-top: 11.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__item + .flow-list__item--last {
        margin-top: 28.90625vw;
    }
}

.flow-list__item + .flow-list__item--last:after {
    content: none;
}

.flow-list__condition {
    position: absolute;
    top: -70px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    font-size: 22px;
    font-weight: bold;
    color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__condition {
        top: -5.18519vw;
        font-size: 1.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__condition {
        top: -11.875vw;
        font-size: 4.6875vw;
    }
}

.flow-list__condition.js-scroll.js-scroll-in {
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

.flow-list__num {
    position: absolute;
    top: -0.5em;
    left: .5em;
    font-size: 40px;
    font-family: 'montserrat-semibold';
    line-height: 1;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__num {
        font-size: 2.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__num {
        font-size: 7.8125vw;
    }
}

.flow-list__ttl {
    position: relative;
    display: inline-block;
    font-size: 24px;
    font-weight: bold;
    color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__ttl {
        font-size: 1.77778vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__ttl {
        font-size: 4.6875vw;
    }
}

.flow-list__ttl--1 {
    padding-left: 2.6em;
}

.flow-list__ttl--1:before {
    position: absolute;
    top: -3px;
    left: 0;
    content: '';
    width: 44px;
    height: 44px;
    background: url(../img/service/ico_flow1.svg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__ttl--1:before {
        top: -0.22222vw;
        width: 3.25926vw;
        height: 3.25926vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__ttl--1:before {
        top: -0.46875vw;
        width: 8.59375vw;
        height: 8.59375vw;
    }
}

.flow-list__ttl--2 {
    padding-left: 3.2em;
}

.flow-list__ttl--2:before {
    position: absolute;
    top: -2px;
    left: 0;
    content: '';
    width: 60px;
    height: 45px;
    background: url(../img/service/ico_flow2.svg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__ttl--2:before {
        top: -0.14815vw;
        width: 4.44444vw;
        height: 3.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__ttl--2:before {
        top: -1.25vw;
        width: 11.25vw;
        height: 9.375vw;
    }
}

.flow-list__ttl--3 {
    padding-left: 2.8em;
}

.flow-list__ttl--3:before {
    position: absolute;
    top: -2px;
    left: 0;
    content: '';
    width: 56px;
    height: 41px;
    background: url(../img/service/ico_flow3.svg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__ttl--3:before {
        top: -0.14815vw;
        width: 4.14815vw;
        height: 3.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__ttl--3:before {
        top: -1.25vw;
        width: 10.9375vw;
        height: 8.28125vw;
    }
}

.flow-list__ttl--4 {
    color: #fff;
    padding-left: 2.8em;
}

.flow-list__ttl--4:before {
    position: absolute;
    top: -2px;
    left: 0;
    content: '';
    width: 60px;
    height: 40px;
    background: url(../img/service/ico_flow4.svg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__ttl--4:before {
        top: -0.14815vw;
        width: 4.44444vw;
        height: 2.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__ttl--4:before {
        top: -0.3125vw;
        left: -0.78125vw;
        width: 12.1875vw;
        height: 7.8125vw;
    }
}

.flow-list__txt {
    margin-top: 17px;
    line-height: 2.2;
    font-size: 14px;
    text-align: left;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__txt {
        margin-top: 1.25926vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__txt {
        line-height: 2;
        font-size: 3.75vw;
        letter-spacing: 0;
    }
}

.flow-list__txt--center {
    text-align: center;
}

@media screen and (max-width: 750px) {
    .flow-list__txt--center {
        text-align: left;
    }
}

.flow-list__item--last .flow-list__txt {
    color: #fff;
}

.flow-list__merit {
    position: relative;
    padding-top: 55px;
    line-height: 2.2;
    font-weight: bold;
    letter-spacing: 0.08em;
    font-size: 16px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__merit {
        padding-top: 4.07407vw;
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__merit {
        font-size: 3.75vw;
        letter-spacing: 0;
    }
}

.flow-list__merit--underline {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #E0D7C5));
    background: linear-gradient(transparent 60%, #E0D7C5 60%);
}

.flow-list__merit:before, .flow-list__merit:after {
    position: absolute;
    top: 36px;
    content: '';
    width: 24px;
    height: 1px;
    background-color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .flow-list__merit:before, .flow-list__merit:after {
        top: 2.66667vw;
        width: 1.77778vw;
    }
}

@media screen and (max-width: 750px) {
    .flow-list__merit:before, .flow-list__merit:after {
        top: 5.625vw;
        width: 3.75vw;
    }
}

.flow-list__merit:before {
    left: calc(50% - .5px);
    -webkit-transform: rotate(-38deg);
    transform: rotate(-38deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
}

.flow-list__merit:after {
    right: calc(50% - .5px);
    -webkit-transform: rotate(38deg);
    transform: rotate(38deg);
    -webkit-transform-origin: top right;
    transform-origin: top right;
}

/*  mealkit
--------------------------------------------- */
.mealkit {
    position: relative;
    padding-top: 193px;
    padding-bottom: 140px;
    text-align: center;
    overflow: hidden;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit {
        padding-top: 14.2963vw;
        padding-bottom: 10.37037vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit {
        padding-top: 28.125vw;
        padding-bottom: 21.875vw;
    }
}

.mealkit__container {
    position: relative;
    max-width: 1350px;
    margin: 0 auto;
}

@media screen and (max-width: 750px) {
    .mealkit__container {
        max-width: auto;
        max-width: initial;
        padding: 0 4.6875vw;
    }
}

.mealkit__msg {
    margin-top: 116px;
    font-size: 18px;
    line-height: 2;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: 0.18em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit__msg {
        margin-top: 8.59259vw;
        font-size: 1.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit__msg {
        padding: 0 4.6875vw;
        font-size: 4.6875vw;
        letter-spacing: 0.08em;
        margin-top: 20vw;
    }
}

.mealkit__msg + .mealkit__msg {
    margin-top: 15px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit__msg + .mealkit__msg {
        margin-top: 1.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit__msg--pn {
        padding: 0;
    }
}

.mealkit-contents {
    width: 1000px;
    margin: 12px auto 0;
    background-color: #F7F3EE;
    padding: 80px 80px 560px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-contents {
        width: 74.07407vw;
        margin: 0.88889vw auto 0;
        padding: 5.92593vw 5.92593vw 41.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-contents {
        width: 100%;
        padding: 15.625vw 5.9375vw 77.34375vw;
    }
}

.mealkit-contents__copy {
    font-size: 18px;
    font-weight: bold;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: 0.12em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-contents__copy {
        font-size: 1.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-contents__copy {
        font-size: 3.75vw;
        letter-spacing: 0;
    }
}

.mealkit-contents__ttl {
    color: #A67C52;
    font-size: 24px;
    font-weight: bold;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    line-height: 2.4em;
    letter-spacing: 0.12em;
    white-space: nowrap;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-contents__ttl {
        font-size: 1.77778vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-contents__ttl {
        font-size: 5.625vw;
        letter-spacing: 0;
    }
}

.mealkit-box {
    margin: 50px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-box {
        margin: 3.7037vw auto 0;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-box {
        display: block;
        margin: 6.25vw auto 0;
    }
}

.mealkit-box__fig {
    width: 420px;
    margin-left: 40px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-box__fig {
        width: 31.11111vw;
        margin-left: 2.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-box__fig {
        width: 100%;
        margin-left: 0;
    }
}

.mealkit-box__txt-wrap {
    width: 360px;
    text-align: left;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-box__txt-wrap {
        width: 26.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-box__txt-wrap {
        margin-top: 4.6875vw;
        width: 100%;
    }
}

.mealkit-box__head {
    font-size: 18px;
    line-height: 1.9;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: 0.18em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-box__head {
        font-size: 1.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-box__head {
        font-size: 4.6875vw;
    }
}

.mealkit-box__txt {
    font-size: 14px;
    line-height: 2;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: 0.05em;
    margin-top: 14px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-box__txt {
        font-size: 1.03704vw;
        margin-top: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-box__txt {
        font-size: 3.75vw;
    }
}

.mealkit-merit {
    margin-top: 60px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-merit {
        margin-top: 4.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-merit {
        margin-top: 9.375vw;
    }
}

.mealkit-merit__ttl {
    display: inline-block;
    position: relative;
    font-size: 22px;
    font-weight: bold;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    color: #A67C52;
    padding: 0 50px;
    letter-spacing: 0.05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-merit__ttl {
        font-size: 1.62963vw;
        padding: 0 3.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-merit__ttl {
        font-size: 4.6875vw;
        white-space: nowrap;
        width: auto;
    }
}

.mealkit-merit__ttl:before, .mealkit-merit__ttl:after {
    position: absolute;
    top: 45%;
    content: '';
    width: 30px;
    height: 1px;
    background-color: #A67C52;
}

.mealkit-merit__ttl:before {
    left: 0;
}

.mealkit-merit__ttl:after {
    right: 0;
}

.mealkit-merit__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 30px;
    line-height: 1.4;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-merit__list {
        margin-top: 2.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-merit__list {
        margin-top: 3.90625vw;
        margin-right: -3.75vw;
        margin-left: -3.75vw;
    }
}

.mealkit-merit__item {
    width: 162px;
    height: 162px;
    margin: 0 10px;
    background-color: #fff;
    border-radius: 50%;
    color: #A67C52;
    font-size: 22px;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-merit__item {
        margin: 0 0.74074vw;
        width: 12vw;
        height: 12vw;
        font-size: 1.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-merit__item {
        margin: 0 1.25vw;
        width: 25vw;
        height: 25vw;
        border-radius: 12.5vw;
        font-size: 3.75vw;
    }
}

.mealkit-gallery {
    position: absolute;
    bottom: 130px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .mealkit-gallery {
        width: 100%;
        bottom: 9.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .mealkit-gallery {
        width: 100%;
        bottom: 18.75vw;
    }
}

@media screen and (min-width: 751px) {
    .mealkit-gallery.js-scroll.js-scroll-in {
        opacity: 1;
        -webkit-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
    }
}

.slick-slides {
    max-width: 1350px;
    margin: 0 auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .slick-slides {
        max-width: 100%;
    }
}

@media screen and (max-width: 750px) {
    .slick-slides {
        max-width: initial;
        max-width: auto;
    }
}

.slick-slides__item {
    width: 585px !important;
    height: 350px;
    padding: 0 30px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .slick-slides__item {
        width: 43.33333vw !important;
        height: 25.92593vw;
        padding: 0 2.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .slick-slides__item {
        width: 70.3125vw !important;
        height: 45vw;
        padding: 0 3.125vw;
    }
}

.slick-list {
    overflow: visible;
}

/* ---------------------------------------------
*   quality
--------------------------------------------- */
/*  safety
--------------------------------------------- */
.safety {
    margin-top: 113px;
    text-align: center;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety {
        margin-top: 8.37037vw;
    }
}

@media screen and (max-width: 750px) {
    .safety {
        margin-top: 20.3125vw;
    }
}

@media screen and (max-width: 750px) {
    .safety__lead-ttl {
        text-align: left;
        padding-left: 7.8125vw;
    }
}

.safety-chart {
    position: relative;
    max-width: 1350px;
    height: 800px;
    margin: 15px auto 0;
    background: url(../img/quality/bg_policy.png) center no-repeat;
    background-size: 800px auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart {
        height: 59.25926vw;
        margin: 1.11111vw auto 0;
        background-size: 59.25926vw auto;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart {
        max-width: auto;
        max-width: initial;
        height: 91.40625vw;
        background-position: center top;
        background-size: 90% auto;
        margin: 2.34375vw auto 0;
    }
}

.safety-chart__ttl {
    color: #479A4D;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-size: 20px;
    font-family: 'montserrat-semibold';
    line-height: 1.3;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__ttl {
        font-size: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__ttl {
        font-size: 3.4375vw;
    }
}

.safety-chart__content {
    display: inline-block;
    text-align: center;
    position: absolute;
}

.safety-chart__content--compliance {
    width: 235px;
    top: 100px;
    left: 711px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__content--compliance {
        width: 17.40741vw;
        top: 7.40741vw;
        left: 52.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__content--compliance {
        width: 36.71875vw;
        top: 13.4375vw;
        left: 49%;
    }
}

.safety-chart__content--management {
    width: 175px;
    top: 378px;
    left: 833px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__content--management {
        width: 12.96296vw;
        top: 28vw;
        left: 61.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__content--management {
        width: 27.34375vw;
        top: 44.84375vw;
        left: 64%;
    }
}

.safety-chart__content--communication {
    width: 245px;
    bottom: 70px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__content--communication {
        width: 18.14815vw;
        bottom: 5.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__content--communication {
        width: 38.28125vw;
        bottom: 8.125vw;
    }
}

.safety-chart__content--maintenance {
    width: 165px;
    top: 375px;
    left: 353px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__content--maintenance {
        width: 12.22222vw;
        top: 27.77778vw;
        left: 26.14815vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__content--maintenance {
        width: 25.78125vw;
        top: 45.3125vw;
        left: 10%;
    }
}

.safety-chart__content--reveal {
    width: 200px;
    top: 100px;
    left: 426px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__content--reveal {
        width: 14.81481vw;
        top: 7.40741vw;
        left: 31.55556vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__content--reveal {
        width: 31.25vw;
        top: 14.375vw;
        left: 17%;
    }
}

.safety-chart__ico {
    margin: 0 auto;
}

.safety-chart__ico--1 {
    width: 36px;
    height: 45px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__ico--1 {
        width: 2.66667vw;
        height: 3.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__ico--1 {
        width: 5.15625vw;
        height: auto;
    }
}

.safety-chart__ico--2 {
    width: 40px;
    height: 46px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__ico--2 {
        width: 2.96296vw;
        height: 3.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__ico--2 {
        width: 5.78125vw;
        height: auto;
    }
}

.safety-chart__ico--3 {
    width: 45px;
    height: 50px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__ico--3 {
        width: 3.33333vw;
        height: 3.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__ico--3 {
        width: 6.25vw;
        height: auto;
    }
}

.safety-chart__ico--4 {
    width: 46px;
    height: 46px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__ico--4 {
        width: 3.40741vw;
        height: 3.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__ico--4 {
        width: 6.25vw;
        height: auto;
    }
}

.safety-chart__ico--5 {
    width: 61px;
    height: 42px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__ico--5 {
        width: 4.51852vw;
        height: 3.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__ico--5 {
        width: 8.59375vw;
        height: auto;
    }
}

.safety-chart__head {
    margin-top: 10px;
    font-size: 16px;
    font-weight: bold;
    color: #479A4D;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    white-space: nowrap;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__head {
        margin-top: 0.74074vw;
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .safety-chart__head {
        font-size: 3.4375vw;
        text-align: center;
        line-height: 1.3;
    }
}

.safety-chart__txt {
    margin-top: 8px;
    text-align: left;
    font-size: 14px;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: 0.08em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .safety-chart__txt {
        margin-top: 0.59259vw;
        font-size: 1.03704vw;
    }
}

.chart-txt-box {
    margin-top: 9.375vw;
    padding: 0 7.03125vw 0 7.8125vw;
}

.chart-txt-box__item {
    position: relative;
    padding-left: 15.625vw;
}

.chart-txt-box__item:before {
    position: absolute;
    top: 3.8em;
    left: 3.4375vw;
    content: '';
    width: 15.625vw;
    height: 15.625vw;
}

.chart-txt-box__item + .chart-txt-box__item {
    margin-top: 6.5625vw;
}

.chart-txt-box__item--1:before {
    width: 6.5625vw;
    background: url(../img/quality/ico_1.svg) 0 0 no-repeat;
    background-size: 100% auto;
}

.chart-txt-box__item--2:before {
    width: 6.875vw;
    background: url(../img/quality/ico_2.svg) 0 0 no-repeat;
    background-size: 100% auto;
}

.chart-txt-box__item--3:before {
    left: 3.4375vw;
    width: 7.1875vw;
    background: url(../img/quality/ico_3.svg) 0 0 no-repeat;
    background-size: 100% auto;
}

.chart-txt-box__item--4:before {
    top: 3.1em;
    left: 3.125vw;
    width: 8.28125vw;
    background: url(../img/quality/ico_4.svg) 0 0 no-repeat;
    background-size: 100% auto;
}

.chart-txt-box__item--5:before {
    top: 2.1em;
    left: 1.09375vw;
    width: 11.5625vw;
    background: url(../img/quality/ico_5.svg) 0 0 no-repeat;
    background-size: 100% auto;
}

.chart-txt-box__head {
    font-size: 4.375vw;
    font-weight: bold;
    text-align: left;
    color: #479A4D;
    letter-spacing: .02em;
}

.chart-txt-box__txt {
    font-size: 3.4375vw;
    text-align: left;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    margin-top: 1.5625vw;
    line-height: 1.6;
}

/*  control
--------------------------------------------- */
.control {
    padding-top: 193px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .control {
        padding-top: 14.2963vw;
    }
}

@media screen and (max-width: 750px) {
    .control {
        padding-top: 30.15625vw;
        position: relative;
    }
}

@media screen and (max-width: 750px) {
    .control:before {
        position: absolute;
        top: 30.15625vw;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        content: '';
        width: 28.4375vw;
        height: 0.3125vw;
        background-color: #808080;
    }
}

.control__container {
    position: relative;
    background: url(../img/quality/img_1.jpg) 0 7px no-repeat;
    background-size: 675px auto;
    padding-bottom: 240px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .control__container {
        background-position: 0 0.51852vw;
        background-size: 50vw auto;
        padding-bottom: 17.77778vw;
    }
}

@media screen and (max-width: 750px) {
    .control__container {
        padding-bottom: 37.5vw;
        background: url(../img/quality/img_1.jpg) 0 52.03125vw no-repeat;
        background-size: 82% auto;
    }
}

.control__copy {
    position: relative;
}

@media screen and (max-width: 750px) {
    .control__copy {
        text-align: left;
        padding: 0 6.25vw;
    }
    .android .control__copy {
        padding: 0 4.6875vw;
    }
}

.control__copy-txt {
    margin-top: 32px;
    line-height: 2.2;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .07em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .control__copy-txt {
        margin-top: 2.37037vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .control__copy-txt {
        font-size: 3.75vw;
        margin-top: 8.59375vw;
        letter-spacing: -0.03em;
    }
}

.control__copy-img {
    width: 396px;
    margin-top: 76px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .control__copy-img {
        width: 29.33333vw;
        margin-top: 5.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .control__copy-img {
        width: 100%;
        margin-top: 50vw;
    }
}

.control__copy-img--2 {
    width: 210px;
    position: absolute;
    bottom: -90px;
    left: -171px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .control__copy-img--2 {
        width: 15.55556vw;
        bottom: -6.66667vw;
        left: -12.66667vw;
    }
}

.control__under-txt {
    position: absolute;
    top: 500px;
    bottom: auto;
    left: 236px;
    font-size: 14px;
    line-height: 2.2;
    width: 322px;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: 0.05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .control__under-txt {
        top: 37.03704vw;
        bottom: auto;
        left: 17.48148vw;
        font-size: 1.03704vw;
        width: 23.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .control__under-txt {
        width: 100%;
        padding: 0 6.25vw;
        top: 181.25vw;
        bottom: auto;
        left: 0;
        font-size: 3.75vw;
        text-align: left;
        letter-spacing: 0;
    }
    .android .control__under-txt {
        padding: 0 4.6875vw;
    }
}

.control__bg {
    display: inline-block;
    position: absolute;
    top: 144px;
    left: 455px;
    z-index: -1;
    width: 510px;
    height: 375px;
    background-color: #F2F5F5;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .control__bg {
        top: 10.66667vw;
        left: 33.7037vw;
        width: 37.77778vw;
        height: 27.77778vw;
    }
}

@media screen and (max-width: 750px) {
    .control__bg {
        top: 65.15625vw;
        left: auto;
        right: 4.6875vw;
        width: 65vw;
        height: 70.625vw;
    }
}

/*  hygiene
--------------------------------------------- */
.hygiene {
    padding-bottom: 142px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .hygiene {
        padding-bottom: 10.51852vw;
    }
}

@media screen and (max-width: 750px) {
    .hygiene {
        position: relative;
        padding-bottom: 31.25vw;
    }
}

@media screen and (max-width: 750px) {
    .hygiene:before {
        position: absolute;
        top: -6.25vw;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        content: '';
        width: 28.4375vw;
        height: 0.3125vw;
        background-color: #808080;
    }
}

.hygiene__container {
    background: url(../img/quality/img_4.jpg) right top no-repeat;
    background-size: 675px auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .hygiene__container {
        background-size: 50vw auto;
    }
}

@media screen and (max-width: 750px) {
    .hygiene__container {
        background: url(../img/quality/img_4.jpg) right top 44.375vw no-repeat;
        background-size: 81.875vw auto;
        padding-top: 22.65625vw;
    }
}

.hygiene__copy-img {
    width: 455px;
    margin-top: 122px;
    margin-left: -100px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .hygiene__copy-img {
        width: 33.7037vw;
        margin-top: 9.03704vw;
        margin-left: -7.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .hygiene__copy-img {
        width: 84.375vw;
        margin-top: 45.3125vw;
        margin-left: 7.8125vw;
    }
}

.hygiene__under-txt {
    position: absolute;
    top: 502px;
    left: 743px;
    width: 360px;
    line-height: 2.2;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .hygiene__under-txt {
        top: 37.18519vw;
        left: 55.03704vw;
        width: 26.66667vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .hygiene__under-txt {
        left: 6.25vw;
        top: 181.875vw;
        font-size: 3.75vw;
        width: 87%;
        text-align: left;
        -webkit-font-feature-settings: 'palt';
        font-feature-settings: 'palt';
    }
    .android .hygiene__under-txt {
        left: 4.6875vw;
    }
}

.hygiene__bg {
    position: absolute;
    top: 138px;
    left: 355px;
    width: 575px;
    height: 410px;
    background-color: #F2F5F5;
    z-index: -1;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .hygiene__bg {
        top: 10.22222vw;
        left: 26.2963vw;
        width: 42.59259vw;
        height: 30.37037vw;
    }
}

@media screen and (max-width: 750px) {
    .hygiene__bg {
        top: 58.59375vw;
        left: 5.15625vw;
        width: 64.84375vw;
        height: 75vw;
    }
}

/*  iso
--------------------------------------------- */
.iso {
    text-align: center;
    background-color: #F2F5F5;
    padding: 124px 0 160px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .iso {
        padding: 9.18519vw 0 11.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .iso {
        padding: 28.4375vw 0 26.875vw;
    }
}

.iso__container {
    width: 645px;
    margin: 10px auto 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .iso__container {
        width: 47.77778vw;
        margin: 0.74074vw auto 0;
    }
}

@media screen and (max-width: 750px) {
    .iso__container {
        width: 100%;
        margin: 0;
    }
}

@media screen and (max-width: 750px) {
    .iso__lead {
        letter-spacing: .08em;
    }
}

.iso__txt {
    text-align: left;
    margin-top: 25px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .iso__txt {
        margin-top: 1.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .iso__txt {
        padding: 0 7.8125vw;
    }
}

.iso-logos {
    width: 294px;
    margin: 67px auto 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .iso-logos {
        width: 21.77778vw;
        margin: 4.96296vw auto 0;
    }
}

@media screen and (max-width: 750px) {
    .iso-logos {
        width: 74.21875vw;
        margin: 10vw auto 0;
    }
}

/* ---------------------------------------------
*   recruit
--------------------------------------------- */
/*  greetings
--------------------------------------------- */
@media screen and (max-width: 750px) {
    .greetings {
        position: relative;
    }
    .greetings:before {
        position: absolute;
        top: 29.375vw;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        content: '';
        width: 28.125vw;
        height: 0.3125vw;
        background-color: #808080;
    }
}

.greetings__container {
    background: url(../img/recruit/img_msg.png) top 130px right no-repeat;
    background-size: 1038px auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .greetings__container {
        background-position: top 9.62963vw right;
        background-size: 76.88889vw auto;
    }
}

@media screen and (max-width: 750px) {
    .greetings__container {
        background: url(../img/recruit/sp/img_msg.png) bottom right no-repeat;
        background-size: 100% auto;
        padding-top: 58.59375vw;
        padding-bottom: 58.4375vw;
    }
}

.greetings__copy {
    width: 532px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .greetings__copy {
        width: 39.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .greetings__copy {
        width: 100%;
        margin-top: 0;
    }
}

.greetings__lead {
    letter-spacing: .18em;
    margin-top: 13px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .greetings__lead {
        margin-top: 0.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .greetings__lead {
        text-align: left;
        padding: 0 0 0 7.8125vw;
        letter-spacing: 0.08em;
    }
    .android .greetings__lead {
        letter-spacing: 0.04em;
    }
}

.greetings__lead--mt {
    margin-top: 30px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .greetings__lead--mt {
        margin-top: 2.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .greetings__lead--mt {
        text-align: left;
        padding: 0 7.8125vw;
    }
}

.greetings__txt {
    margin-top: 30px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .greetings__txt {
        margin-top: 2.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .greetings__txt {
        text-align: left;
        padding: 0 7.8125vw;
    }
}

.greetings-signature {
    margin-top: 40px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .greetings-signature {
        margin-top: 2.96296vw;
    }
}

.greetings-signature__post {
    font-size: 14px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .greetings-signature__post {
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .greetings-signature__post {
        font-size: 3.75vw;
        text-align: left;
        padding-left: 7.8125vw;
    }
}

.greetings-signature__name {
    font-size: 16px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .greetings-signature__name {
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .greetings-signature__name {
        font-size: 4.375vw;
        text-align: left;
        padding-left: 7.8125vw;
    }
}

.job {
    text-align: center;
    margin-top: 187px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job {
        margin-top: 13.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .job {
        margin-top: 29.21875vw;
    }
}

.job__ttl {
    letter-spacing: 0;
}

.job__lead-ttl {
    margin-top: 11px;
    letter-spacing: 0.18em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job__lead-ttl {
        margin-top: 0.81481vw;
    }
}

@media screen and (max-width: 750px) {
    .job__lead-ttl {
        text-align: left;
        padding-left: 7.8125vw;
        letter-spacing: 0.12em;
    }
}

.job-chart {
    position: relative;
    max-width: 1350px;
    height: 930px;
    margin: 0 auto;
    padding-top: 120px;
    background: url(../img/recruit/bg_job.png) center top 204px no-repeat;
    background-size: 838px auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart {
        height: 68.88889vw;
        padding-top: 8.88889vw;
        background-position: center top 15.11111vw;
        background-size: 62.07407vw auto;
    }
}

@media screen and (max-width: 750px) {
    .job-chart {
        max-width: auto;
        max-width: initial;
        margin-top: 8.4375vw;
        height: 254.6875vw;
        background: none;
        padding-top: 7.34375vw;
        padding-left: 7.8125vw;
    }
    .job-chart:after {
        position: absolute;
        top: 7.8125vw;
        left: 19.53125vw;
        content: '';
        width: 1px;
        height: 246.09375vw;
        background-color: #479A4D;
        z-index: -1;
    }
}

.job-chart__content {
    position: absolute;
    width: 260px;
    text-align: center;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__content {
        width: 19.25926vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__content {
        position: static;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .job-chart__content + .job-chart__content {
        margin-top: 8.59375vw;
    }
}

.job-chart__content--contract {
    top: 124px;
    left: 300px;
    width: 195px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__content--contract {
        top: 9.18519vw;
        left: 22.22222vw;
        width: 14.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__content--contract {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.job-chart__content--development {
    top: 124px;
    left: 550px;
    width: 250px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__content--development {
        top: 9.18519vw;
        left: 40.74074vw;
        width: 18.51852vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__content--development {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.job-chart__content--prototyping {
    top: 124px;
    left: 860px;
    width: 195px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__content--prototyping {
        top: 9.18519vw;
        left: 63.7037vw;
        width: 14.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__content--prototyping {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.job-chart__content--merchandising {
    top: 404px;
    left: 716px;
    width: 195px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__content--merchandising {
        top: 29.92593vw;
        left: 53.03704vw;
        width: 14.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__content--merchandising {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.job-chart__content--material {
    top: 404px;
    left: 436px;
    width: 202px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__content--material {
        top: 29.92593vw;
        left: 32.2963vw;
        width: 14.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__content--material {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.job-chart__content--order {
    top: 680px;
    left: 306px;
    width: 180px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__content--order {
        top: 50.37037vw;
        left: 22.66667vw;
        width: 13.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__content--order {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.job-chart__content--production {
    top: 680px;
    left: 583px;
    width: 180px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__content--production {
        top: 50.37037vw;
        left: 43.18519vw;
        width: 13.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__content--production {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.job-chart__content--delivery {
    top: 680px;
    left: 862px;
    width: 185px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__content--delivery {
        top: 50.37037vw;
        left: 63.85185vw;
        width: 13.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__content--delivery {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.job-chart__start, .job-chart__goal {
    position: absolute;
    top: -1.5em;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    font-family: 'montserrat-semibold';
    font-size: 20px;
    color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__start, .job-chart__goal {
        font-size: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__start, .job-chart__goal {
        left: 20%;
        font-size: 3.4375vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__start {
        top: 0;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__goal {
        top: auto;
        bottom: -2.3em;
    }
}

.job-chart__ico {
    width: 160px;
    height: 160px;
    margin: 0 auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__ico {
        width: 11.85185vw;
        height: 11.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__ico {
        width: 23.4375vw;
        height: 23.4375vw;
        margin: 0;
    }
}

.job-chart__txt {
    margin-top: 15px;
    text-align: left;
    font-size: 14px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__txt {
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__txt {
        width: 62.5vw;
        font-size: 3.75vw;
        margin-top: 0;
        padding-left: 3.125vw;
    }
}

.job-chart__txt--pl {
    padding-left: 8px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .job-chart__txt--pl {
        padding-left: 0.59259vw;
    }
}

@media screen and (max-width: 750px) {
    .job-chart__txt--pl {
        padding-left: 3.125vw;
    }
}

/*  environment
--------------------------------------------- */
.environment {
    padding-top: 190px;
    padding-bottom: 180px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .environment {
        padding-top: 14.07407vw;
        padding-bottom: 13.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .environment {
        padding-top: 39.53125vw;
        padding-bottom: 25vw;
        position: relative;
    }
    .environment:before {
        position: absolute;
        top: 36.25vw;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        content: '';
        width: 28.125vw;
        height: 0.3125vw;
        background-color: #808080;
    }
}

.environment__container {
    position: relative;
    max-width: 1350px;
    background: url(../img/recruit/img_1.jpg) 0 0 no-repeat;
    background-size: 789px auto;
    padding: 55px 0 220px 745px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .environment__container {
        background-size: 58.44444vw auto;
        padding: 4.07407vw 0 16.2963vw 55.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .environment__container {
        max-width: auto;
        max-width: initial;
        padding: 24.21875vw 0 0;
        background: url(../img/recruit/img_1.jpg) 0 49.21875vw no-repeat;
        background-size: 82.1875vw auto;
    }
}

.environment__copy {
    width: 430px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .environment__copy {
        width: 31.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .environment__copy {
        width: 100%;
        text-align: left;
        padding: 0 7.5vw;
    }
}

.environment__copy-lead {
    letter-spacing: .08em;
}

.environment__copy-txt {
    margin-top: 25px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .environment__copy-txt {
        margin-top: 1.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .environment__copy-txt {
        margin-top: 8.90625vw;
        line-height: 2.1;
    }
}

.environment__bg {
    position: absolute;
    top: 230px;
    left: 614px;
    width: 444px;
    height: 360px;
    background-color: #F2F5F5;
    z-index: -1;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .environment__bg {
        top: 17.03704vw;
        left: 45.48148vw;
        width: 32.88889vw;
        height: 26.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .environment__bg {
        left: auto;
        top: 61.71875vw;
        right: 6.5625vw;
        width: 62.96875vw;
        height: 69.84375vw;
    }
}

.environment-catch {
    text-align: center;
    padding-top: 20px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .environment-catch {
        padding-top: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .environment-catch {
        padding-top: 0;
        margin-top: 15.3125vw;
    }
}

.environment-catch__ttl {
    font-size: 22px;
    font-weight: bold;
    color: #479A4D;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .environment-catch__ttl {
        font-size: 1.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .environment-catch__ttl {
        font-size: 4.6875vw;
    }
}

.environment-catch__txt {
    line-height: 2;
    font-size: 14px;
    margin-top: 20px;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .environment-catch__txt {
        font-size: 1.03704vw;
        margin-top: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .environment-catch__txt {
        font-size: 3.75vw;
        padding: 0 7.5vw;
        text-align: left;
        margin-top: 3.125vw;
    }
}

.welfare {
    text-align: center;
    padding-top: 120px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare {
        padding-top: 8.88889vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare {
        padding-top: 18.75vw;
    }
}

.welfare__ttl {
    font-size: 22px;
    font-weight: bold;
    color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__ttl {
        font-size: 1.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__ttl {
        font-size: 4.6875vw;
    }
}

.welfare__list {
    margin-top: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__list {
        margin-top: 2.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: 7.8125vw;
    }
}

.welfare__item {
    position: relative;
    width: 176px;
    height: 176px;
    background-color: #F2F5F5;
    text-align: center;
    padding-top: 48px;
    margin: 0 15px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__item {
        width: 13.03704vw;
        height: 13.03704vw;
        padding-top: 3.55556vw;
        margin: 0 1.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__item {
        width: 37.5vw;
        height: 37.5vw;
        margin: 0 3.125vw 7.8125vw;
        padding-top: 8.125vw;
    }
    .welfare__item:first-child {
        padding-top: 4.375vw;
    }
    .welfare__item:nth-of-type(2) {
        padding-top: 4.375vw;
    }
}

.welfare__num {
    position: absolute;
    top: -0.5em;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    color: #808080;
    font-size: 26px;
    font-family: 'montserrat-semibold';
    line-height: 1;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__num {
        font-size: 1.92593vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__num {
        font-size: 6.25vw;
    }
}

.welfare__ico {
    margin: 0 auto;
}

.welfare__ico--1 {
    width: 42px;
    height: 46px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__ico--1 {
        width: 3.11111vw;
        height: 3.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__ico--1 {
        width: 9.84375vw;
        height: 10.46875vw;
        margin-top: 3.4375vw;
    }
}

.welfare__ico--2 {
    width: 44px;
    height: 40px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__ico--2 {
        width: 3.25926vw;
        height: 2.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__ico--2 {
        width: 10.3125vw;
        height: 9.375vw;
        margin-top: 4.375vw;
    }
}

.welfare__ico--3 {
    width: 38px;
    height: 42px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__ico--3 {
        width: 2.81481vw;
        height: 3.11111vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__ico--3 {
        width: 8.75vw;
        height: 9.6875vw;
    }
}

.welfare__ico--4 {
    width: 31px;
    height: 47px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__ico--4 {
        width: 2.2963vw;
        height: 3.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__ico--4 {
        width: 7.1875vw;
        height: 10.9375vw;
    }
}

.welfare__ico--5 {
    width: 46px;
    height: 47px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__ico--5 {
        width: 3.40741vw;
        height: 3.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__ico--5 {
        width: 10.9375vw;
        height: 10.9375vw;
    }
}

.welfare__txt {
    color: #479A4D;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.3;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__txt {
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__txt {
        font-size: 4.0625vw;
    }
}

.welfare__txt--1 {
    margin-top: 14px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__txt--1 {
        margin-top: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__txt--1 {
        margin-top: 3.4375vw;
    }
}

.welfare__txt--2 {
    margin-top: 20px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__txt--2 {
        margin-top: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__txt--2 {
        margin-top: 4.375vw;
    }
}

.welfare__txt--3 {
    margin-top: 17px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__txt--3 {
        margin-top: 1.25926vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__txt--3 {
        margin-top: 4.6875vw;
    }
}

.welfare__txt--4 {
    margin-top: 12px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__txt--4 {
        margin-top: 0.88889vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__txt--4 {
        margin-top: 3.59375vw;
    }
}

.welfare__txt--5 {
    margin-top: 12px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .welfare__txt--5 {
        margin-top: 0.88889vw;
    }
}

@media screen and (max-width: 750px) {
    .welfare__txt--5 {
        margin-top: 4.0625vw;
    }
}

/*  entry
--------------------------------------------- */
.entry {
    background-color: #F2F5F5;
    text-align: center;
    padding: 144px 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry {
        padding: 10.66667vw 0;
    }
}

@media screen and (max-width: 750px) {
    .entry {
        padding: 29.0625vw 0 31.25vw;
    }
}

.new-graduates__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 425px;
    background: url(../img/recruit/bg_new_graduates.jpg) center center no-repeat;
    background-size: cover;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .new-graduates__bg {
        height: 31.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .new-graduates__bg {
        background: url(../img/recruit/sp/bg_new_graduates.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 78.125vw;
    }
}

.career__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 425px;
    background: url(../img/recruit/bg_career.jpg) center center no-repeat;
    background-size: cover;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .career__bg {
        height: 31.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .career__bg {
        background: url(../img/recruit/sp/bg_career.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 78.125vw;
    }
}

.part__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 425px;
    background: url(../img/recruit/bg_part.jpg) center center no-repeat;
    background-size: cover;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .part__bg {
        height: 31.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .part__bg {
        background: url(../img/recruit/sp/bg_part.jpg) 0 0 no-repeat;
        background-size: 100% auto;
        height: 78.125vw;
    }
}

.entry-section {
    padding-top: 72px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section {
        padding-top: 5.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section {
        padding-top: 14.375vw;
    }
}

.entry-section__ttl {
    position: relative;
    display: inline-block;
    color: #479A4D;
    font-size: 24px;
    font-weight: bold;
    padding: 0 55px;
    letter-spacing: .08em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__ttl {
        font-size: 1.77778vw;
        padding: 0 4.07407vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__ttl {
        padding: 0 8.59375vw;
        font-size: 5.625vw;
    }
}

.entry-section__ttl:before, .entry-section__ttl:after {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '';
    width: 30px;
    height: 1px;
    background-color: #479A4D;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__ttl:before, .entry-section__ttl:after {
        width: 2.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__ttl:before, .entry-section__ttl:after {
        width: 6.25vw;
    }
}

.entry-section__ttl:before {
    left: 0;
}

.entry-section__ttl:after {
    right: 0;
}

.entry-section__container {
    position: relative;
    margin-top: 60px;
    padding: 425px 0 127px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__container {
        margin-top: 4.44444vw;
        padding: 31.48148vw 0 9.40741vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__container {
        margin-top: 9.375vw;
        padding: 66.40625vw 0 14.375vw;
    }
}

.entry-section__contents {
    position: relative;
    width: 740px;
    margin: -50px auto;
    padding: 82px 70px 78px 78px;
    background-color: rgba(255, 255, 255, 0.9);
    -webkit-box-shadow: 2px 2px 6px 0px #ddd;
    box-shadow: 2px 2px 6px 0px #ddd;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__contents {
        width: 54.81481vw;
        margin: -3.7037vw auto;
        padding: 6.07407vw 5.18519vw 5.77778vw 5.77778vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__contents {
        width: 84.375vw;
        padding: 9.375vw 7.8125vw;
        margin: -0.78125vw auto;
    }
}

.entry-section__txt-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 750px) {
    .entry-section__txt-area {
        display: block;
    }
}

.entry-section__txt-head {
    width: 80px;
    font-size: 16px;
    font-weight: bold;
    color: #479A4D;
    white-space: nowrap;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__txt-head {
        width: 5.92593vw;
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__txt-head {
        width: auto;
        font-size: 4.0625vw;
    }
}

.entry-section__txt {
    width: 460px;
    font-size: 14px;
    margin-left: 50px;
    text-align: left;
    line-height: 1.9;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .05em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__txt {
        width: 34.07407vw;
        font-size: 1.03704vw;
        margin-left: 3.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__txt {
        width: auto;
        font-size: 3.75vw;
        margin-left: 0;
        margin-top: 15px;
        line-height: 2.1;
        letter-spacing: -0.03em;
    }
}

.entry-section__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 33px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__list {
        margin-top: 2.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__list {
        margin-top: 7.1875vw;
    }
}

.entry-section__item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 188px;
    height: 42px;
    margin: 0 0 6px 8px;
    background-color: #479A4D;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__item {
        width: 13.92593vw;
        height: 3.11111vw;
        font-size: 1.03704vw;
        margin: 0 0 0.44444vw 0.59259vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__item {
        width: 33.90625vw;
        height: 9.375vw;
        margin-left: 0;
        font-size: 3.75vw;
    }
}

.entry-section__item:first-child {
    margin-left: 0;
}

@media screen and (max-width: 750px) {
    .entry-section__item:nth-of-type(2n) {
        margin-left: 0.9375vw;
    }
}

.entry-section__item:nth-of-type(4) {
    margin-left: 0;
}

@media screen and (max-width: 750px) {
    .entry-section__item:nth-of-type(4) {
        margin-left: 0.9375vw;
    }
}

.entry-section__item:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '';
}

.entry-section__item--contract {
    padding-left: 2em;
}

.entry-section__item--contract:before {
    left: 53px;
    width: 22px;
    height: 23px;
    background: url(../img/recruit/ico_recruit1.svg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__item--contract:before {
        left: 3.92593vw;
        width: 1.62963vw;
        height: 1.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__item--contract:before {
        left: 5.9375vw;
        width: 5vw;
        height: 4.84375vw;
    }
}

.entry-section__item--development {
    padding-left: 2em;
}

.entry-section__item--development:before {
    left: 53px;
    width: 22px;
    height: 23px;
    background: url(../img/recruit/ico_recruit2.svg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__item--development:before {
        left: 3.92593vw;
        width: 1.62963vw;
        height: 1.7037vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__item--development:before {
        left: 6.5625vw;
        width: 4.84375vw;
        height: 4.6875vw;
    }
}

.entry-section__item--prototyping {
    padding-left: 2.5em;
}

.entry-section__item--prototyping:before {
    top: 47%;
    left: 49px;
    width: 26px;
    height: 25px;
    background: url(../img/recruit/ico_recruit3.svg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__item--prototyping:before {
        left: 3.62963vw;
        width: 1.92593vw;
        height: 1.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__item--prototyping:before {
        left: 4.84375vw;
        width: 5.78125vw;
        height: 5.46875vw;
    }
}

.entry-section__item--material {
    padding-left: 2em;
}

.entry-section__item--material:before {
    top: 48%;
    left: 54px;
    width: 21px;
    height: 21px;
    background: url(../img/recruit/ico_recruit4.svg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__item--material:before {
        left: 4vw;
        width: 1.55556vw;
        height: 1.55556vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__item--material:before {
        left: 6.5625vw;
        width: 4.6875vw;
        height: 4.6875vw;
    }
}

.entry-section__item--production {
    padding-left: 2.6em;
}

.entry-section__item--production:before {
    top: 48%;
    left: 64px;
    width: 29px;
    height: 22px;
    background: url(../img/recruit/ico_recruit5.svg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__item--production:before {
        left: 4.74074vw;
        width: 2.14815vw;
        height: 1.62963vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__item--production:before {
        left: 9.0625vw;
        width: 6.71875vw;
        height: 4.84375vw;
    }
}

.entry-section__btn {
    height: 63px;
    margin-top: 35px;
    text-align: left;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__btn {
        height: 4.66667vw;
        margin-top: 2.59259vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__btn {
        height: 10.9375vw;
        margin-top: 5.46875vw;
    }
}

.entry-section__link {
    font-size: 14px;
    width: 580px;
    height: 63px;
    background-color: #000;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .entry-section__link {
        font-size: 1.03704vw;
        width: 42.96296vw;
        height: 4.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .entry-section__link {
        width: 68.75vw;
        height: 10.9375vw;
    }
}

/* ---------------------------------------------
*   staff voice
--------------------------------------------- */
.staff-intro {
    padding: 150px 0 240px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro {
        padding: 11.11111vw 0 17.77778vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro {
        padding: 23.4375vw 0 28.59375vw;
    }
}

.staff-intro.reverse {
    background-color: #F2F5F5;
}

@media screen and (max-width: 750px) {
    .staff-intro.reverse {
        padding-top: 30.9375vw;
        padding-bottom: 34.375vw;
    }
}

.staff-intro__inner {
    max-width: 1350px;
    margin: 0 auto;
}

@media screen and (max-width: 750px) {
    .staff-intro__inner {
        max-width: auto;
        max-width: initial;
    }
}

.staff-intro__head {
    position: relative;
    padding: 0 120px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__head {
        padding: 0 8.88889vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__head {
        padding: 0;
    }
}

.staff-intro__fig {
    width: 768px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__fig {
        width: 56.88889vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__fig {
        width: 100%;
    }
}

.reverse .staff-intro__fig {
    margin-left: auto;
}

.staff-intro__box {
    position: absolute;
    top: 75px;
    left: 807px;
    width: 405px;
    height: 345px;
    padding: 42px 0 42px 52px;
    background-color: #F2F5F5;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__box {
        top: 5.55556vw;
        left: 59.77778vw;
        width: 30vw;
        height: 25.55556vw;
        padding: 3.11111vw 0 3.11111vw 3.85185vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__box {
        position: relative;
        top: 8.59375vw;
        left: 0;
        width: 100%;
        height: auto;
        padding-right: 7.03125vw;
        padding-left: 7.8125vw;
        background: none;
        padding-top: 0;
        padding-top: 2.1875vw;
    }
}

.reverse .staff-intro__box {
    background-color: #fff;
    left: 136px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .reverse .staff-intro__box {
        left: 10.07407vw;
    }
}

@media screen and (max-width: 750px) {
    .reverse .staff-intro__box {
        left: 0;
        background: none;
    }
}

.staff-intro__num {
    font-size: 40px;
    font-family: 'montserrat-bold';
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__num {
        font-size: 2.96296vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__num {
        position: absolute;
        top: -81.25vw;
        font-size: 10.9375vw;
    }
}

.staff-intro__copy {
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: .18em;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__copy {
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__copy {
        font-size: 4.6875vw;
        letter-spacing: .08em;
    }
}

.staff-intro__box-body {
    margin-top: 36px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__box-body {
        margin-top: 2.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__box-body {
        margin-top: 2.8125vw;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.staff-intro__tag {
    display: inline-block;
    padding: .5em .6em;
    letter-spacing: .13em;
    font-size: 12px;
    font-weight: bold;
    background-color: #479A4D;
    color: #fff;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__tag {
        font-size: 0.88889vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__tag {
        font-size: 3.125vw;
        padding: 0.2em 0.3em 0.1em 0.3em;
        letter-spacing: 0.1em;
    }
}

.staff-intro__name {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.9;
    margin-top: 1em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__name {
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__name {
        font-size: 4.0625vw;
        display: inline-block;
        margin-top: 0;
        margin-left: .8em;
    }
}

.staff-intro__name--normal {
    font-size: 14px;
    font-weight: normal;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__name--normal {
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__name--normal {
        font-size: 4.0625vw;
        margin-left: .5em;
    }
}

.staff-intro__name--large {
    font-size: 16px;
    font-family: 'Montserrat-regular';
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__name--large {
        font-size: 1.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__name--large {
        font-size: 4.0625vw;
    }
}

.staff-intro__body {
    margin-top: 130px;
    padding-left: 165px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__body {
        margin-top: 9.62963vw;
        padding-left: 12.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__body {
        padding-left: 0;
        margin-top: 10.15625vw;
    }
}

.reverse .staff-intro__body {
    padding-right: 165px;
    padding-left: 0;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .reverse .staff-intro__body {
        padding-right: 12.22222vw;
    }
}

@media screen and (max-width: 750px) {
    .reverse .staff-intro__body {
        padding: 0;
    }
}

.staff-intro__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .staff-intro__container {
        display: block;
    }
    .staff-intro__container--zi-2 {
        position: relative;
        z-index: 2;
    }
}

.reverse .staff-intro__container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.staff-intro__container--bottom {
    position: relative;
    margin-top: 18px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    z-index: 1;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__container--bottom {
        margin-top: 1.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__container--bottom {
        display: block;
        z-index: -2;
        margin-top: 11.40625vw;
    }
}

.reverse .staff-intro__container--bottom {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

@media screen and (max-width: 750px) {
    .reverse .staff-intro__container--bottom {
        z-index: 1;
        top: 5.3125vw;
        margin-top: 5.9375vw;
    }
}

.staff-intro__container-fig {
    width: 558px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__container-fig {
        width: 41.33333vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__container-fig {
        margin-left: auto;
        width: 82.03125vw;
        margin-right: 0;
    }
}

.reverse .staff-intro__container-fig {
    margin-right: auto;
}

@media screen and (max-width: 750px) {
    .reverse .staff-intro__container-fig {
        margin-left: 0;
    }
}

.staff-intro__container--bottom .staff-intro__container-fig {
    width: 502px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__container--bottom .staff-intro__container-fig {
        width: 37.18519vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__container--bottom .staff-intro__container-fig {
        width: 81.875vw;
        margin-right: auto;
        margin-left: 0;
    }
}

.reverse .staff-intro__container--bottom .staff-intro__container-fig {
    margin-left: 84px;
    margin-right: 20px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .reverse .staff-intro__container--bottom .staff-intro__container-fig {
        margin-left: 6.22222vw;
        margin-right: 1.48148vw;
    }
}

@media screen and (max-width: 750px) {
    .reverse .staff-intro__container--bottom .staff-intro__container-fig {
        margin-left: auto;
        margin-right: 0;
    }
}

.staff-intro__txt-wrap {
    text-align: left;
    width: 520px;
    padding-left: .8em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__txt-wrap {
        width: 38.51852vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__txt-wrap {
        padding: 0 7.8125vw;
        width: 100%;
        margin-top: 11.25vw;
    }
}

.staff-intro__container--bottom .staff-intro__txt-wrap {
    width: 463px;
    padding: 123px 0 0 60px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__container--bottom .staff-intro__txt-wrap {
        width: 34.2963vw;
        padding: 9.11111vw 0 0 4.44444vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__container--bottom .staff-intro__txt-wrap {
        width: 100%;
        padding: 0 7.8125vw;
    }
}

.staff-intro__sub-ttl {
    font-size: 18px;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    line-height: 2;
    letter-spacing: .18em;
    margin-top: -10px;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__sub-ttl {
        font-size: 1.33333vw;
        margin-top: -0.74074vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__sub-ttl {
        font-size: 4.6875vw;
        margin-top: 0;
        line-height: 1.8;
        letter-spacing: .12em;
    }
}

.staff-intro__txt {
    margin-top: 23px;
    font-size: 14px;
    line-height: 2.25;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    letter-spacing: .06em;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__txt {
        margin-top: 1.7037vw;
        font-size: 1.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__txt {
        font-size: 3.75vw;
        line-height: 2.1;
        margin-top: 5.46875vw;
        letter-spacing: 0;
    }
}

.staff-intro__bg {
    position: absolute;
    top: 115px;
    left: 190px;
    width: 450px;
    height: 345px;
    background-color: #F2F5F5;
    z-index: -1;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .staff-intro__bg {
        top: 8.51852vw;
        left: 14.07407vw;
        width: 33.33333vw;
        height: 25.55556vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__bg {
        top: -25.625vw;
        left: auto;
        right: 0;
        width: 78.125vw;
        height: 109.375vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__bg--2 {
        height: 78.125vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__bg--3 {
        top: 4.6875vw;
        height: 78.125vw;
    }
}

@media screen and (max-width: 750px) {
    .staff-intro__bg--4 {
        top: -15.625vw !important;
    }
}

.reverse .staff-intro__bg {
    left: 500px;
    background-color: #fff;
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
    .reverse .staff-intro__bg {
        left: 37.03704vw;
    }
}

@media screen and (max-width: 750px) {
    .reverse .staff-intro__bg {
        left: 0;
        top: 5vw;
    }
}

/* ==========================================================
*
*   utility
*
========================================================== */
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

.mgt-pc--5 {
    margin-top: 5px !important;
}

.mgt-pc--10 {
    margin-top: 10px !important;
}

.mgt-pc--15 {
    margin-top: 15px !important;
}

.mgt-pc--20 {
    margin-top: 20px !important;
}

.mgt-pc--25 {
    margin-top: 25px !important;
}

.mgt-pc--30 {
    margin-top: 30px !important;
}

.mgt-pc--35 {
    margin-top: 35px !important;
}

.mgt-pc--40 {
    margin-top: 40px !important;
}

.mgt-pc--45 {
    margin-top: 45px !important;
}

.mgt-pc--50 {
    margin-top: 50px !important;
}

.mgt-pc--55 {
    margin-top: 55px !important;
}

.mgt-pc--60 {
    margin-top: 60px !important;
}

.mgt-pc--65 {
    margin-top: 65px !important;
}

.mgt-pc--70 {
    margin-top: 70px !important;
}

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

.mgt-pc--205 {
    margin-top: 205px !important;
}

.mgt-pc--210 {
    margin-top: 210px !important;
}

.mgt-pc--215 {
    margin-top: 215px !important;
}

.mgt-pc--220 {
    margin-top: 220px !important;
}

.mgt-pc--225 {
    margin-top: 225px !important;
}

.mgt-pc--230 {
    margin-top: 230px !important;
}

.mgt-pc--235 {
    margin-top: 235px !important;
}

.mgt-pc--240 {
    margin-top: 240px !important;
}

.mgt-pc--245 {
    margin-top: 245px !important;
}

.mgt-pc--250 {
    margin-top: 250px !important;
}

@media screen and (max-width: 750px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: 0.78125vw !important;
    }
    .mgt-sp--10 {
        margin-top: 1.5625vw !important;
    }
    .mgt-sp--15 {
        margin-top: 2.34375vw !important;
    }
    .mgt-sp--20 {
        margin-top: 3.125vw !important;
    }
    .mgt-sp--25 {
        margin-top: 3.90625vw !important;
    }
    .mgt-sp--30 {
        margin-top: 4.6875vw !important;
    }
    .mgt-sp--35 {
        margin-top: 5.46875vw !important;
    }
    .mgt-sp--40 {
        margin-top: 6.25vw !important;
    }
    .mgt-sp--45 {
        margin-top: 7.03125vw !important;
    }
    .mgt-sp--50 {
        margin-top: 7.8125vw !important;
    }
    .mgt-sp--55 {
        margin-top: 8.59375vw !important;
    }
    .mgt-sp--60 {
        margin-top: 9.375vw !important;
    }
    .mgt-sp--65 {
        margin-top: 10.15625vw !important;
    }
    .mgt-sp--70 {
        margin-top: 10.9375vw !important;
    }
    .mgt-sp--75 {
        margin-top: 11.71875vw !important;
    }
    .mgt-sp--80 {
        margin-top: 12.5vw !important;
    }
    .mgt-sp--85 {
        margin-top: 13.28125vw !important;
    }
    .mgt-sp--90 {
        margin-top: 14.0625vw !important;
    }
    .mgt-sp--95 {
        margin-top: 14.84375vw !important;
    }
    .mgt-sp--100 {
        margin-top: 15.625vw !important;
    }
    .mgt-sp--105 {
        margin-top: 16.40625vw !important;
    }
    .mgt-sp--110 {
        margin-top: 17.1875vw !important;
    }
    .mgt-sp--115 {
        margin-top: 17.96875vw !important;
    }
    .mgt-sp--120 {
        margin-top: 18.75vw !important;
    }
    .mgt-sp--125 {
        margin-top: 19.53125vw !important;
    }
    .mgt-sp--130 {
        margin-top: 20.3125vw !important;
    }
    .mgt-sp--135 {
        margin-top: 21.09375vw !important;
    }
    .mgt-sp--140 {
        margin-top: 21.875vw !important;
    }
    .mgt-sp--145 {
        margin-top: 22.65625vw !important;
    }
    .mgt-sp--150 {
        margin-top: 23.4375vw !important;
    }
    .mgt-sp--155 {
        margin-top: 24.21875vw !important;
    }
    .mgt-sp--160 {
        margin-top: 25vw !important;
    }
    .mgt-sp--165 {
        margin-top: 25.78125vw !important;
    }
    .mgt-sp--170 {
        margin-top: 26.5625vw !important;
    }
    .mgt-sp--175 {
        margin-top: 27.34375vw !important;
    }
    .mgt-sp--180 {
        margin-top: 28.125vw !important;
    }
    .mgt-sp--185 {
        margin-top: 28.90625vw !important;
    }
    .mgt-sp--190 {
        margin-top: 29.6875vw !important;
    }
    .mgt-sp--195 {
        margin-top: 30.46875vw !important;
    }
    .mgt-sp--200 {
        margin-top: 31.25vw !important;
    }
    .mgt-sp--205 {
        margin-top: 32.03125vw !important;
    }
    .mgt-sp--210 {
        margin-top: 32.8125vw !important;
    }
    .mgt-sp--215 {
        margin-top: 33.59375vw !important;
    }
    .mgt-sp--220 {
        margin-top: 34.375vw !important;
    }
    .mgt-sp--225 {
        margin-top: 35.15625vw !important;
    }
    .mgt-sp--230 {
        margin-top: 35.9375vw !important;
    }
    .mgt-sp--235 {
        margin-top: 36.71875vw !important;
    }
    .mgt-sp--240 {
        margin-top: 37.5vw !important;
    }
    .mgt-sp--245 {
        margin-top: 38.28125vw !important;
    }
    .mgt-sp--250 {
        margin-top: 39.0625vw !important;
    }
}

/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
    margin-bottom: 0 !important;
}

.mgb-pc--5 {
    margin-bottom: 5px !important;
}

.mgb-pc--10 {
    margin-bottom: 10px !important;
}

.mgb-pc--15 {
    margin-bottom: 15px !important;
}

.mgb-pc--20 {
    margin-bottom: 20px !important;
}

.mgb-pc--25 {
    margin-bottom: 25px !important;
}

.mgb-pc--30 {
    margin-bottom: 30px !important;
}

.mgb-pc--35 {
    margin-bottom: 35px !important;
}

.mgb-pc--40 {
    margin-bottom: 40px !important;
}

.mgb-pc--45 {
    margin-bottom: 45px !important;
}

.mgb-pc--50 {
    margin-bottom: 50px !important;
}

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

.mgb-pc--60 {
    margin-bottom: 60px !important;
}

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

.mgb-pc--70 {
    margin-bottom: 70px !important;
}

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

.mgb-pc--205 {
    margin-bottom: 205px !important;
}

.mgb-pc--210 {
    margin-bottom: 210px !important;
}

.mgb-pc--215 {
    margin-bottom: 215px !important;
}

.mgb-pc--220 {
    margin-bottom: 220px !important;
}

.mgb-pc--225 {
    margin-bottom: 225px !important;
}

.mgb-pc--230 {
    margin-bottom: 230px !important;
}

.mgb-pc--235 {
    margin-bottom: 235px !important;
}

.mgb-pc--240 {
    margin-bottom: 240px !important;
}

.mgb-pc--245 {
    margin-bottom: 245px !important;
}

.mgb-pc--250 {
    margin-bottom: 250px !important;
}

@media screen and (max-width: 750px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: 0.78125vw !important;
    }
    .mgb-sp--10 {
        margin-bottom: 1.5625vw !important;
    }
    .mgb-sp--15 {
        margin-bottom: 2.34375vw !important;
    }
    .mgb-sp--20 {
        margin-bottom: 3.125vw !important;
    }
    .mgb-sp--25 {
        margin-bottom: 3.90625vw !important;
    }
    .mgb-sp--30 {
        margin-bottom: 4.6875vw !important;
    }
    .mgb-sp--35 {
        margin-bottom: 5.46875vw !important;
    }
    .mgb-sp--40 {
        margin-bottom: 6.25vw !important;
    }
    .mgb-sp--45 {
        margin-bottom: 7.03125vw !important;
    }
    .mgb-sp--50 {
        margin-bottom: 7.8125vw !important;
    }
    .mgb-sp--55 {
        margin-bottom: 8.59375vw !important;
    }
    .mgb-sp--60 {
        margin-bottom: 9.375vw !important;
    }
    .mgb-sp--65 {
        margin-bottom: 10.15625vw !important;
    }
    .mgb-sp--70 {
        margin-bottom: 10.9375vw !important;
    }
    .mgb-sp--75 {
        margin-bottom: 11.71875vw !important;
    }
    .mgb-sp--80 {
        margin-bottom: 12.5vw !important;
    }
    .mgb-sp--85 {
        margin-bottom: 13.28125vw !important;
    }
    .mgb-sp--90 {
        margin-bottom: 14.0625vw !important;
    }
    .mgb-sp--95 {
        margin-bottom: 14.84375vw !important;
    }
    .mgb-sp--100 {
        margin-bottom: 15.625vw !important;
    }
    .mgb-sp--105 {
        margin-bottom: 16.40625vw !important;
    }
    .mgb-sp--110 {
        margin-bottom: 17.1875vw !important;
    }
    .mgb-sp--115 {
        margin-bottom: 17.96875vw !important;
    }
    .mgb-sp--120 {
        margin-bottom: 18.75vw !important;
    }
    .mgb-sp--125 {
        margin-bottom: 19.53125vw !important;
    }
    .mgb-sp--130 {
        margin-bottom: 20.3125vw !important;
    }
    .mgb-sp--135 {
        margin-bottom: 21.09375vw !important;
    }
    .mgb-sp--140 {
        margin-bottom: 21.875vw !important;
    }
    .mgb-sp--145 {
        margin-bottom: 22.65625vw !important;
    }
    .mgb-sp--150 {
        margin-bottom: 23.4375vw !important;
    }
    .mgb-sp--155 {
        margin-bottom: 24.21875vw !important;
    }
    .mgb-sp--160 {
        margin-bottom: 25vw !important;
    }
    .mgb-sp--165 {
        margin-bottom: 25.78125vw !important;
    }
    .mgb-sp--170 {
        margin-bottom: 26.5625vw !important;
    }
    .mgb-sp--175 {
        margin-bottom: 27.34375vw !important;
    }
    .mgb-sp--180 {
        margin-bottom: 28.125vw !important;
    }
    .mgb-sp--185 {
        margin-bottom: 28.90625vw !important;
    }
    .mgb-sp--190 {
        margin-bottom: 29.6875vw !important;
    }
    .mgb-sp--195 {
        margin-bottom: 30.46875vw !important;
    }
    .mgb-sp--200 {
        margin-bottom: 31.25vw !important;
    }
    .mgb-sp--205 {
        margin-bottom: 32.03125vw !important;
    }
    .mgb-sp--210 {
        margin-bottom: 32.8125vw !important;
    }
    .mgb-sp--215 {
        margin-bottom: 33.59375vw !important;
    }
    .mgb-sp--220 {
        margin-bottom: 34.375vw !important;
    }
    .mgb-sp--225 {
        margin-bottom: 35.15625vw !important;
    }
    .mgb-sp--230 {
        margin-bottom: 35.9375vw !important;
    }
    .mgb-sp--235 {
        margin-bottom: 36.71875vw !important;
    }
    .mgb-sp--240 {
        margin-bottom: 37.5vw !important;
    }
    .mgb-sp--245 {
        margin-bottom: 38.28125vw !important;
    }
    .mgb-sp--250 {
        margin-bottom: 39.0625vw !important;
    }
}

@media screen and (min-width: 751px) {
    .pc-hide {
        display: none !important;
    }
}

@media screen and (max-width: 750px) {
    .sp-hide {
        display: none !important;
    }
    .android-hide {
        display: none !important;
    }
}
