@charset "utf-8";
/* ▼全ページ共通 */
.bgGradient {
    position: relative;
    overflow: visible;
    border-radius: 10rem;
    padding-top: 0.6rem;
}
.bgGradient::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-image: linear-gradient(to bottom right, var(--bgGradientColor) 15%, var(--bgGradientColor02) 100%);
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    z-index: -999;
    pointer-events: none;
}
@media only screen and (max-width:1215px) {
    .bgGradient {
        order: 1;
        padding-top: 11.4rem;
    }
    .bgGradient::before {
        background-image: linear-gradient(to bottom right, var(--bgGradientColor) 15%, var(--bgGradientColor02) 100%);
    }
}


/*-----------------------------------------------
    index
-----------------------------------------------*/
.Index_Page #container{
    background: url(../img/environment/bg.jpg) center top no-repeat;
    color: var(--privacyColor);
}
@media only screen and (min-width:1216px) {
    .Index_Page .cmnRecruit_title .title_eng{
        font-size: var(--pcFontSize80);
        margin-bottom: 2.7rem;
    }
    .Index_Page .cmnRecruit_title .title_jpn{
        font-size: var(--pcFontSize18);
        line-height: var(--pcLineHeight18_22);
        margin-left: 1.4rem;
    }
    .Index_Page .cmnRecruit_title .title_jpn::before{
        top: 0;
        left: 0.6rem;
    }
}

.secEnvironment{
    padding-top: 9.9rem;
    padding-bottom: 20rem;
}
.secTop{
    width: 100%;
    overflow: hidden;
    color: var(--privacyColor);
}
.secTop .imgtitle{
    max-width: 94.9rem;
    margin: 0 auto;
}
.secTop .toptxt{
    font-size: var(--pcFontSize24);
    line-height: var(--pcLineHeight24_50);
    text-align: center;
    margin-top: 2.1rem;
}
.secTop .slidebox{
    width: 100%;
    margin-top: 8.7rem;
}
.secTop .swiper{
    overflow: visible;
    width: 132rem;
    max-width: 100%;
}
.secTop .swiper-wrapper{
    transition-timing-function: linear;
}
.secTop .imgflex{
    display: flex;
}
.secTop .imgBox{
    position: relative;
    border-radius:5rem;
    overflow: hidden;
}
.secTop .imgBox.large{
    width: calc(800 / 1320 * 100%);
}
.secTop .imgBox.small{
    width: calc(500 / 1320 * 100%);
    margin-left: calc(20 / 1320 * 100%);
}
.secTop .imgBox .img{
    width: 100%;
    height: 0;
    padding-top: calc(600 / 800 * 100%);
}
.secTop .imgBox.small .img{
    padding-top: calc(600 / 500 * 100%);
}
@media only screen and (max-width:1215px) {
    .Index_Page #container{
        background-image: url(../img/environment/img_bg_sp.jpg);
        background-size: 100% auto;
    }
    .secEnvironment{
        padding-top: 9.8rem;
        position: relative;
        padding-bottom: 8rem;
    }
    .secTop{
    }
    .secTop .imgtitle{
        width: calc(332 / 350 * 100%);
        max-width: 33.2rem;
    }
    .secTop .toptxt{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_28);
        margin-top: 1.7rem;
    }
    .secTop .slidebox{
        width: 100%;
        margin-top: 7.4rem;
    }
    .secTop .swiper{
        width: calc(585 / 390 * 100%);
        max-width: unset;
        margin: 0 auto;
    }
    .secTop .imgBox{
        border-radius:2rem;
    }
}

/* secCompany_content */
.secCompany_content{
    margin-top: 10rem;
}
.secCompany_content .OnArea{
    border-radius: 10rem;
    color: var(--Colorwhite);
}
.secCompany_content.lazyloaded .OnArea{
    background: url(../img/environment/imgBg_company.jpg) center top no-repeat var(--Colorwhite);
}
.secCompany_content .OnInner{
    padding: 10rem 5rem 10rem;
    height: 124.7rem;
}
.secCompany_content .imgLogo{
    width: 48.7rem;
    margin: 0 auto;
}
.secCompany_content .ontitle{
    font-size: var(--pcFontSize32);
    line-height: var(--pcLineHeight32_60);
    text-align: center;
    margin-top: 3.5rem;
}
.secCompany_content .ontxtbox{
    text-align: center;
    margin-top: 3.6rem;
    font-weight: bold;
}
.secCompany_content .ontxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_30);
}
/* underArea */
.secCompany_content .underArea{
    position: relative;
    width: 100%;
    margin-top:calc(0% - 16rem);
    padding: 0 5rem;
}
.secCompany_content .list{
    display: flex;
}
.secCompany_content .item{
    width: calc((100% - 5rem) / 3);
}
.secCompany_content .item + .item{
    margin-left: 2.5rem;
}
.secCompany_content .imgArea{
    width: 100%;
    border-radius: 5rem;
    overflow: hidden;
    z-index: 1;
}
.secCompany_content .imgBox{
    width: 100%;
    height: 0;
    padding-top: calc(350 / 483 * 100%);
    overflow: hidden;
}
.secCompany_content .txtArea{
    width: 100%;
    text-align: center;
    padding-top: 3.5rem;
}
.secCompany_content .txt_eng{
    font-size: var(--pcFontSize40);
    line-height: var(--pcLineHeight40_60);
}
.secCompany_content .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_30);
    margin-top: 1.4rem;
}
@media only screen and (max-width:1620px) {
    .secCompany_content .txt{
        font-size: var(--pcFontSize14);
    }
}
@media only screen and (max-width:1215px) {
    .secCompany_content{
        margin-top: 8rem;
        border-radius: 4.5rem;
        background-color: var(--Colorwhite);
        overflow: hidden;
        padding-bottom: 7.3rem;
    }
    .secCompany_content .OnArea{
        border-radius: 0;
    }
    .secCompany_content.lazyloaded .OnArea{
        background: url(../img/environment/imgBg_company_sp.jpg) center bottom no-repeat var(--bgEnvironment02);
        background-size: 100% auto;
    }
    .secCompany_content .OnInner{
        padding: 6rem 2rem calc(3.5rem + 21.3rem);
        height: auto;
    }
    .secCompany_content .imgLogo{
        width: 24.6rem;
    }
    .secCompany_content .ontitle{
        font-size: var(--spFontSize18);
        line-height: var(--spLineHeight18_36);
        margin-top:20px;
    }
    .secCompany_content .ontxtbox{
        margin-top: 1.5rem;
    }
    .secCompany_content .ontxt{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_26);
    }
    /* underArea */
    .secCompany_content .underArea{
        width: 100%;
        padding: 0;
        margin-top: 3.8rem;
    }
    .secCompany_content .list{
        display: block;
    }
    .secCompany_content .item{
        width: 100%;
    }
    .secCompany_content .item + .item{
        margin-left: 0;
        margin-top: 5.3rem;
    }
    .secCompany_content .imgArea{
        border-radius: 3rem;
        width:calc(290 / 390 * 100%);
        margin: 0 auto;
    }
    .secCompany_content .txtArea{
        padding-top: 1.5rem;
    }
    .secCompany_content .txt_eng{
        font-size: var(--spFontSize26);
        line-height: var(--spLineHeight26_30);
    }
    .secCompany_content .txt{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_26);
        margin-top: 1.5rem;
    }
}
@media only screen and (max-width:400px) {
    .secCompany_content .OnInner{
        padding: 6rem 1rem calc(3.5rem + (213 / 390 * 100vw));
        height: auto;
    }
}

/* secLinklist */
.secLinklist{
    margin-top: 19rem;
}
.secLinklist .list{
    width: 100%;
}
.secLinklist .item{
    width: 100%;
}
.secLinklist .item + .item{
    margin-top: 8rem;
}
.secLinklist .itemInner{
    display: flex;
    align-items: center;
}
.secLinklist .imgArea{
    position: relative;
    overflow: hidden;
    width: 59rem;
    border-radius: 5rem;
    box-shadow: 0 1.5rem 0 0 rgba(0, 0, 0, 0.05);
}
.secLinklist .imgBox{
    width: 100%;
    height: 0;
    padding-top: calc(750 / 590 * 100%);
    overflow: hidden;
    z-index: 2;
}
.secLinklist .txtArea{
    flex: 1;
}
.secLinklist .listTitlebox{
    text-align: left;
}
.secLinklist .title_eng{
    font-size: var(--pcFontSize110);
}
.secLinklist .title_jpn{
    position: relative;
    font-size: var(--pcFontSize22);
    line-height: var(--pcLineHeight22_40);
    margin-top: 2.7rem;
    margin-left: 3.5rem;
    padding-left: 2.5rem;
}
.secLinklist .title_jpn::before{
    content: "";
    position: absolute;
    left:0;
    top:calc(50% - 1.5rem);
    width:1px;
    height: 3rem;
    background-color: var(--textColor);
    transform: rotate(20deg);
}
.secLinklist .txtbox{
    text-align: left;
    padding-left: 3rem;
    margin-top: 3.8rem;
}
.secLinklist .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_30);
}
.secLinklist .btnbox{
    margin-top: 4rem;
}
@media only screen and (max-width:1620px) {
    .secLinklist .title_eng{
        font-size: var(--pcFontSize80);
    }
}
@media only screen and (min-width:1216px) {
    .secLinklist .item:nth-child(2n + 1) .itemInner{
        flex-direction: row-reverse;
    }
    .secLinklist .item:nth-child(2n + 1) .txtArea{
        padding-right: 10rem;
    }
    .secLinklist .item:nth-child(2n) .txtArea{
        padding-left: 10rem;
    }
}
@media only screen and (max-width:1215px) {
    .secLinklist{
        margin-top: 10rem;
    }
    .secLinklist .item + .item{
        margin-top: 6rem;
    }
    .secLinklist .itemInner{
        display: block;
    }
    .secLinklist .imgArea{
        border-radius: 3rem;
        width: 100%;
    }
    .secLinklist .txtArea{
        width: 100%;
        padding-top: 3.4rem;
    }
    .secLinklist .title_eng{
        font-size: var(--spFontSize52);
    }
    .secLinklist .item:nth-child(2) .title_eng{
        font-size: var(--spFontSize48);
    }
    .secLinklist .title_jpn{
        font-size: var(--spFontSize22);
        margin-top: 0.9rem;
        margin-left: 0;
        padding-left: 0;
    }
    .secLinklist .title_jpn::before{
        display: none;
    }
    .secLinklist .txtbox{
        padding-left: 0;
        margin-top: 1.4rem;
    }
    .secLinklist .txt{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_26);
    }
    .secLinklist .btnbox{
        margin-top: 2.4rem;
    }
    .secLinklist .viewMoreButton{
        margin: 0 auto;
    }
}