/*===========================================================================*/
/*  mv  */
/*===========================================================================*/
.bg-noise {
    width: 100%;
    height: 100vh;
    background: rgba(217, 217, 217, 0.02);
    backdrop-filter: blur(22px);
    position: absolute;
    left: 0;
    top: 0;
    z-index: 99;
    pointer-events: none;
}

.p-recruitMv__bg {
    position: sticky;
    top: 0;
    height: 100vh;
    overflow: hidden;
    z-index: 0;
}

.p-recruitMv__bg--slides {
    position: relative;
    height: 100vh;
    overflow: hidden;
    display: flex;
    position: absolute;
    z-index: 6;
    gap: 1px;
    transition: opacity .6s 0s cubic-bezier(.4,.53,.41,.95);
}

.p-recruitMv__bg--slide {
    height: 100vh;
    aspect-ratio: 2058/1014;
}

.p-recruitMv__bg--mask {
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(18, 18, 18, 0.70);
    backdrop-filter: blur(7.6px);
}

.p-recruitMv__bg--img {
    position: absolute;
    width: 100%;
    height: 100%;
    transition: opacity .6s 0s cubic-bezier(.4,.53,.41,.95);
    left: 0;
    top: 0;
}

#mv-bg02 {
    z-index: 5;
}
#mv-bg03 {
    z-index: 4;
}
#mv-bg04 {
    z-index: 3;
}
#mv-bg05 {
    z-index: 2;
}
#mv-bg06 {
    z-index: 1;
}

.p-recruitMv__bg--img img {
    height: 100%;
    object-fit: cover;
}

.p-recruitMv__content01 {
    position: relative;
    z-index: 1;
    margin-top: -100vh;
    height: 100vh;
}

.p-recruitMv__head {
    position: absolute;
    width: 111.2rem;
    right: 4rem;
    bottom: 3.7rem;
}

.p-recruitMv__txt {
    position: absolute;
    width: 20rem;
    left: 4rem;
    bottom: 17rem;
}

.p-recruitMv__subHead {
    color: #fff;
    position: absolute;
    left: 4rem;
    bottom: 4rem;
    font-size: 3.4rem;
    line-height: .99;
    letter-spacing: -.03em;
}

.p-recruitMv__content02 {
    margin-top: 8rem;
    position: relative;
    z-index: 1;
    padding: 21rem 14.5rem 21rem 15.5rem;
}

.p-recruitSv__head {
    width: 56.2rem;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
    margin: 0 0 0 auto;
}

.p-recruitSv__head img {
    width: 16rem;
}

.p-recruitSv__txts {
    margin-top: -5.3rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2.7rem;
}

.p-recruitSv__txt {
    color: #fff;
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 1.6;
    letter-spacing: -.02em;
}

.p-recruitMv__create--wrapper {
    position: relative;
    z-index: 1;
}

.p-recruitMv__create--wrapper02 {
    display: none;
}

.p-recruitMv__createMain {
    height: 100vh;
    display: flex;
    align-items: center;
    position: sticky;
    z-index: 0;
    top: 0;
    padding-top: 8.61%;
}

.p-recruitMv__createMain--content {
    width: 100%;
    padding-left: 15.7rem;
}

.p-recruitMv__createMain--img {
    width: 53.2rem;
}

.p-recruitMv__create {
    height: 200vh;
}
#mv-content03.p-recruitMv__create {
    margin-top: -100vh;
    height: 170vh;
}

.p-recruitMv__create--contents {
    height: 100vh;
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    padding-top: 9.58%;
}

.p-recruitMv__create--content {
    width: 100%;
    padding: 0 10.8rem 0 16.8rem;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.p-recruitMv__create--head {
    width: 24.9rem;
    padding-top: .6%;
}

#mv-content03 .p-recruitMv__create--head {
    width: 23.8rem;
    margin-left: .6rem;
}

.p-recruitMv__create--txts {
    width: 51.4rem;
    height: 28.8rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.p-recruitMv__create--headEn {
    color: #fff;
    font-size: 4.4rem;
    line-height: .99;
    letter-spacing: -.03em;
    text-transform: capitalize;
}

.p-recruitMv__create--txt {
    color: #fff;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: -.02em;
}

@media screen and (max-width: 900px) {
    .p-recruitMv__bg--slide {
        aspect-ratio: 878/696;
    }

    .p-recruitMv__content01 {
        position: relative;
        z-index: 1;
        margin-top: -100vh;
        height: 100vh;
    }

    .p-recruitMv__head {
        position: absolute;
        width: 36rem;
        right: 1rem;
        bottom: 11rem;
    }

    .p-recruitMv__txt {
        width: 24.7rem;
        left: 10.9rem;
        bottom: 3.5rem;
    }

    .p-recruitMv__subHead {
        left: 2rem;
        bottom: 7.4rem;
        font-size: 1.6rem;
    }

    .p-recruitMv__content02 {
        margin-top: 4rem;
        padding: 13rem 2rem;
    }

    .p-recruitSv__head {
        width: 22.1rem;
        margin: 0 auto;
    }

    .p-recruitSv__head img {
        width: 6.3rem;
    }

    .p-recruitSv__txts {
        margin: 3.5rem auto 0;
        width: 22.5rem;
        gap: 1.6rem;
    }

    .p-recruitSv__txt {
        font-size: 1.6rem;
    }

    .p-recruitMv__createMain {
        padding-top: 0;
        padding-bottom: 19.2%;
    }

    .p-recruitMv__createMain--content {
        width: 100%;
        padding-left: 2rem;
    }

    .p-recruitMv__createMain--img {
        width: 33.4rem;
    }

    .p-recruitMv__create {
        height: 200vh;
    }
    #mv-content03.p-recruitMv__create {
        height: 170vh;
    }

    .p-recruitMv__create--contents {
        padding-top: 19.67%;
    }

    .p-recruitMv__create--content {
        width: 100%;
        padding: 0 2rem;
        flex-direction: column;
        gap: 12.5rem;
    }

    .p-recruitMv__create--head {
        width: 15rem;
        padding-top: 0;
        margin-left: .8rem;
    }

    #mv-content03 .p-recruitMv__create--head {
        width: 14.4rem;
        margin-left: 1.3rem;
    }

    .p-recruitMv__create--txts {
        width: 100%;
        height: auto;
        gap: 1.5rem;
    }

    .p-recruitMv__create--headEn {
        font-size: 2.2rem;
    }

    .p-recruitMv__create--txt {
        font-size: 1.4rem;
        height: 6.6rem;
    }
}

@media screen and (min-width: 600px) and (max-width: 900px) {
    .p-recruitMv__create--wrapper {
        display: none;
    }

    .p-recruitMv__create--wrapper02 {
        display: block;
        position: relative;
        z-index: 2;
    }
}

/*===========================================================================*/
/*  message  */
/*===========================================================================*/
.p-recruitMessage {
    background-color: #cc0700;
    padding: 18rem 9rem 18rem 4rem;
    position: relative;
    overflow: hidden;
    color: #d2d2d2;
}
.p-recruitMessage::before {
    background: url('../../img/recruit/top/ceo-bg.webp') no-repeat center center/contain;
    content: '';
    height: 56.4rem;
    left: -6.8rem;
    position: absolute;
    bottom: 0;
    width: 150.9rem;
    opacity: .75;
}

.p-recruitMessage__inner {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.p-recruitMessage__link {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3.5rem;
    width: 16.8rem;
    margin-top: 6.5rem;
}

.p-recruitMessage__head {
    font-size: 4rem;
    line-height: .8;
}

.p-recruitMessage__link .h-arrow-wrap {
    background-color: #d2d2d2;
}

.p-recruitMessage__txts {
    width: 100.8rem;
    position: relative;
    z-index: 1;
}

.p-recruitMessage__txts--head {
    pointer-events: none;
}

.p-recruitMessage__imgs {
    position: absolute;
    z-index: -1;
    width: 43rem;
    top: 16rem;
    left: -.4rem;
}

.p-recruitMessage__img01 {
    overflow: hidden;
}

.p-recruitMessage__img02 {
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 0;
    transition: opacity .6s 0s cubic-bezier(.4,.53,.41,.95);
}

.p-recruitMessage__txt {
    padding-left: 51.9rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: -.02em;
    margin-top: 3.9rem;
    pointer-events: none;
}

.p-recruitMessage__names {
    margin-top: 5rem;
    padding-left: 51.9rem;
    position: relative;
    z-index: 1;
    pointer-events: none;
}

.p-recruitMessage__post {
    color: #cc0700;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.12em;
}

.p-recruitMessage__post .--txt {
    position: relative;
    padding-right: .2rem;
}
.p-recruitMessage__post .--txt::before {
    background-color: #d2d2d2;
    content: '';
    height: 1.5rem;
    left: 0;
    position: absolute;
    top: .1rem;
    width: 100%;
    z-index: -1;
}

.p-recruitMessage__name {
    color: #cc0700;
    font-size: 5.8rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.12em;
    margin-top: -.2rem;
}

.p-recruitMessage__name .--txt {
    position: relative;
    padding-right: .4rem;
}
.p-recruitMessage__name .--txt::before {
    background-color: #d2d2d2;
    content: '';
    height: 5.5rem;
    left: 0;
    position: absolute;
    top: 1.1rem;
    width: 100%;
    z-index: -1;
}

.p-recruitMessage__name .--space {
    width: 2rem;
}

.p-recruitMessage__nameEn {
    font-size: 6.2rem;
    line-height: .79;
    position: absolute;
    top: -1.1rem;
    left: 77.3rem;
    z-index: -1;
}

@media screen and (min-width: 901px) {
    .p-recruitMessage__link:hover .h-arrow-wrap {
        background-color: #a4a4a4;
    }

    .p-recruitMessage__imgs:hover .p-recruitMessage__img02 {
        opacity: 0;
    }
}

@media screen and (max-width: 900px) {
    .p-recruitMessage {
        padding: 8rem 2rem;
    }
    .p-recruitMessage::before {
        height: 15.9rem;
        left: -1.8rem;
        bottom: 1.6;
        width: 42.5rem;
    }

    .p-recruitMessage__inner {
        display: block;
    }

    .p-recruitMessage__link {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: unset;
        width: 100%;
        margin-top: 0;
    }

    .p-recruitMessage__head {
        font-size: 4.8rem;
    }

    .p-recruitMessage__txts {
        width: 100%;
        margin-top: 2.4rem;
    }

    .p-recruitMessage__txts--head {
        width: 34.6rem;
    }

    .p-recruitMessage__imgs {
        width: 24.7rem;
        top: 10.5rem;
        left: 0;
    }

    .p-recruitMessage__txt {
        padding-left: 6rem;
        margin-top: 25.8rem;
        font-size: 1.4rem;
    }

    .p-recruitMessage__names {
        margin-top: 3rem;
        padding-left: 6rem;
    }

    .p-recruitMessage__post {
        font-size: 1.2rem;
        letter-spacing: -.08em;
    }

    .p-recruitMessage__post .--txt::before {
        height: 1.3rem;
    }

    .p-recruitMessage__name {
        font-size: 3.2rem;
        font-weight: 700;
        line-height: 1.2;
        letter-spacing: -.12em;
        margin-top: -.1rem;
    }

    .p-recruitMessage__name .--txt {
        position: relative;
        padding-right: .4rem;
    }
    .p-recruitMessage__name .--txt::before {
        background-color: #d2d2d2;
        content: '';
        height: 3.3rem;
        left: 0;
        position: absolute;
        top: .5rem;
        width: 100%;
        z-index: -1;
    }

    .p-recruitMessage__name .--space {
        width: 1rem;
    }

    .p-recruitMessage__nameEn {
        font-size: 2rem;
        top: 2.1rem;
        left: 19.5rem;
    }
}

/*===========================================================================*/
/*  build  */
/*===========================================================================*/
.p-recruitBuild {
    padding: 15rem 4rem;
    border-bottom: #cc0700 solid .2rem;
}

.p-recruitBuild__upper {
    display: flex;
    align-items: center;
    gap: 2.6rem;
}

.p-recruitBuild__head {
    font-size: 20rem;
    line-height: .8;
    letter-spacing: -.04em;
}

.p-recruitBuild__txt {
    width: 50.1rem;
    transform: translate(0, -.8rem);
}

.p-recruitBuild__lower {
    margin-top: 4rem;
    display: flex;
    justify-content: space-between;
}

.p-recruitBuild__content {
    width: 48.5%;
}

.p-recruitBuild__link {
    position: relative;
    display: flex;
    align-items: flex-start;
}

.p-recruitBuild__headEn {
    width: 14.1rem;
    padding-top: 2.2rem;
    font-size: 3.2rem;
    line-height: .8;
    letter-spacing: -.04em;
}

.p-recruitBuild__link .h-arrow-wrap {
    position: absolute;
    right: 0;
    bottom: .4rem;
}

.p-recruitBuild__txts {
    width: calc(100% - 14.1rem);
}

.p-recruitBuild__heads {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding-bottom: 2.2rem;
    border-bottom: .2rem solid #cc0700;
}

.p-recruitBuild__head02 {
    font-size: 5rem;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -.02em;
}

.p-recruitBuild__txt02 {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.02em;
    transform: translate(0, .2rem);
}

.p-recruitBuild__list {
    margin-top: 2.2rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.02em;
}

.p-recruitBuild__img {
    position: relative;
    overflow: hidden;
    margin-top: 3rem;
}

.p-recruitBuild__img::before {
    background-color: #cc0700;
    content: '';
    height: 100%;
    left: 0;
    position: absolute;
    top: -.1rem;
    width: 100%;
    transition: transform .8s cubic-bezier(.76,0,.24,1);
    z-index: 2;
}
.p-recruitBuild__img.is-shown::before {
    transform: translateY(-100%);
}

@media screen and (max-width: 900px) {
    .p-recruitBuild {
        padding: 5rem 2rem;
    }

    .p-recruitBuild__upper {
        display: block;
    }

    .p-recruitBuild__head {
        font-size: 8.2rem;
        line-height: .8;
        letter-spacing: -.04em;
    }

    .p-recruitBuild__txt {
        width: 24.2rem;
        transform: translate(0, 0);
        margin-top: 1rem;
    }

    .p-recruitBuild__lower {
        margin-top: 3.5rem;
        flex-direction: column;
        gap: 3rem;
    }

    .p-recruitBuild__content {
        width: 100%;
    }

    .p-recruitBuild__headEn {
        width: 7.2rem;
        padding-top: 1.3rem;
        font-size: 1.4rem;
    }

    .p-recruitBuild__link .h-arrow-wrap {
        right: unset;
        bottom: unset;
        left: 0;
        top: 3.8rem;
    }

    .p-recruitBuild__txts {
        width: calc(100% - 7.2rem);
    }

    .p-recruitBuild__heads {
        align-items: flex-start;
        flex-direction: column;
        gap: .8rem;
        padding-bottom: 1.5rem;
        border-bottom: .1rem solid #cc0700;
    }

    .p-recruitBuild__head02 {
        font-size: 3rem;
    }

    .p-recruitBuild__txt02 {
        font-size: 1.4rem;
        transform: translate(0, 0);
    }

    .p-recruitBuild__list {
        margin-top: 1.5rem;
        gap: .6rem;
        font-size: 1.4rem;
    }

    .p-recruitBuild__img {
        position: relative;
        overflow: hidden;
        margin-top: 1.5rem;
        margin-left: 7.2rem;
    }
}