@charset 'UTF-8';
/* ==========================================================================
   toppage
   ========================================================================== */
body .c-hamburger.outer .text
{
    display: none !important;
}
@media screen and (max-width: 1024px)
{
    body.is-fixed #entryButton
    {
        position: fixed;
        top: clamp(10px, 10px + .0235849057 * (100vw - 600px), 20px);
        bottom: unset;
    }
    body.is-fixed #entryButton.fixed
    {
        top: clamp(10px, 10px + .0235849057 * (100vw - 600px), 20px);
    }
}

/* p-mv
   ----------------------------------------------------------------- */
.p-mv
{
    position: relative;
    z-index: 100000;

    overflow: hidden;

    width: 100%;
    height: 100dvh; /* 動的に追従したいならこっち（環境で挙動差あり） */
    height: 100svh; /* “見えている”高さ基準（URLバーで暴れにくい） */
}
.p-mv__top
{
    position: absolute;
    z-index: 10;
    top: 0;
    left: 50%;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 90%;
    max-width: 1500px;
    height: 90%;
    /* padding-bottom: clamp(100px, 100px + .0535714286 * (100vw - 1024px), 148px); */

    -webkit-transform: translateX(-50%);

            transform: translateX(-50%);

            align-items: center;
}
@media screen and (max-width: 1024px)
{
    .p-mv__top
    {
        height: 100%;
    }
}
@media all and (max-width: 1181px) and (max-height: 821px)
{
    .p-mv__top
    {
        height: 100%;
    }
}
.p-mv__mainCatch
{
    position: relative;
    z-index: 1;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}
@media screen and (max-width: 767px)
{
    .p-mv__mainCatch
    {
        grid-gap: 17px;
    }
}
.p-mv__mainCatch::after
{
    position: absolute;
    z-index: -1;
    top: -32%;
    left: 26.7%;

    display: inline-block;

    width: 50%;
    max-width: 380px;

    content: '';

    opacity: .3;
    background: url(../image/logo_only.svg);

    aspect-ratio: 380/274;
}
@media screen and (max-width: 767px)
{
    .p-mv__mainCatch::after
    {
        top: 50%;
        left: 50%;

        width: 70%;

        -webkit-transform: translateX(-30%);

                transform: translateX(-30%);
    }
}
.p-mv__mainCatch *
{
    color: #fff;
}
.p-mv__mainCatch__en
{
    font-size: clamp(46px, 46px + .0546875 * (100vw - 768px), 60px);
    font-weight: 500;
    line-height: 1;
}
@media (min-width: 1025px) and (max-width: 1600px) and (min-aspect-ratio: 2/1)
{
    .p-mv__mainCatch__en
    {
        font-size: clamp(46px, 46px + .015625 * (100vw - 1024px), 60px);
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__mainCatch__en
    {
        font-size: clamp(24px, 24px + .1845238095 * (100vw - 600px), 55px);
    }
}
.p-mv__mainCatch__main
{
    font-size: clamp(120px, 120px + .1171875 * (100vw - 768px), 150px);
    font-weight: 500;
    line-height: 1;
}
@media (min-width: 1025px) and (max-width: 1600px) and (min-aspect-ratio: 2/1)
{
    .p-mv__mainCatch__main
    {
        font-size: clamp(100px, 100px + .0446428571 * (100vw - 1024px), 140px);
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__mainCatch__main
    {
        font-size: clamp(60px, 60px + .3571428571 * (100vw - 600px), 120px);
    }
}
.p-mv__mainCatch__sub
{
    font-size: clamp(36px, 36px + .0546875 * (100vw - 768px), 50px);
    font-weight: bold;
}
@media (min-width: 1025px) and (max-width: 1600px) and (min-aspect-ratio: 2/1)
{
    .p-mv__mainCatch__sub
    {
        font-size: clamp(30px, 30px + .0223214286 * (100vw - 1024px), 50px);
    }
}
@media screen and (max-width: 767px)
{
    .p-mv__mainCatch__sub
    {
        font-size: clamp(19px, 19px + .1845238095 * (100vw - 600px), 50px);
    }
}
@media screen and (max-width: 1024px)
{
    .p-mv #entryButton
    {
        position: absolute;
        top: unset;
        bottom: clamp(20px, 20px + .0471698113 * (100vw - 600px), 40px);
    }
    .p-mv #entryButton.fixed
    {
        position: fixed;
        top: clamp(20px, 20px + .0471698113 * (100vw - 600px), 40px);
        bottom: unset;
    }
}

/* p-sliderArea
   ----------------------------------------------------------------- */
.p-sliderArea
{
    background: linear-gradient(135deg, #001496 0%, #001496 46%, #132073 100%);
}
@media screen and (max-width: 768px)
{
    .p-sliderArea
    {
        margin-bottom: clamp(58px, 58px + .130952381 * (100vw - 600px), 80px);
    }
}
.p-sliderArea .c-bigText
{
    left: -1.15%;
}

.p-slider
{
    width: 95%;
    max-width: 1820px;
    margin: 0 auto;
}
.p-slider__image
{
    overflow: hidden;

    border-radius: clamp(15px, 15px + .0353773585 * (100vw - 600px), 30px);

    aspect-ratio: 44/34;
}
.p-slider .swiper-wrapper
{
    -webkit-transition-timing-function: linear;
            transition-timing-function: linear;
}
.p-slider .swiper-button-next,
.p-slider .swiper-rtl .swiper-button-prev,
.p-slider .swiper-button-prev,
.p-slider .swiper-rtl .swiper-button-next
{
    top: 50%;

    width: clamp(32px, 32px + .078125 * (100vw - 768px), 52px);
    height: auto;
    margin: 0;

    -webkit-transform: translateY(-50%);

            transform: translateY(-50%);

    aspect-ratio: 52/100;
}
@media screen and (max-width: 768px)
{
    .p-slider .swiper-button-next,
    .p-slider .swiper-rtl .swiper-button-prev,
    .p-slider .swiper-button-prev,
    .p-slider .swiper-rtl .swiper-button-next
    {
        width: clamp(22px, 22px + .0595238095 * (100vw - 600px), 32px);
    }
}
.p-slider .swiper-button-next::after,
.p-slider .swiper-rtl .swiper-button-prev::after,
.p-slider .swiper-button-prev::after,
.p-slider .swiper-rtl .swiper-button-next::after
{
    display: inline-block;

    width: 100%;
    height: 100%;

    content: '';

    background: url(../image/arrow_slider.svg) center/100% no-repeat;
}
.p-slider .swiper-button-next::after,
.p-slider .swiper-rtl .swiper-button-prev::after
{
    -webkit-transform: scaleX(-1);
            transform: scaleX(-1);
}

/* p-concept
----------------------------------------------------------------- */
.p-concept
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    grid-gap: clamp(24px, 24px + .0357142857 * (100vw - 600px), 30px) 0;
}
@media screen and (max-width: 768px)
{
    .p-concept
    {
        margin-bottom: clamp(58px, 58px + .130952381 * (100vw - 600px), 80px);
    }
}
.p-concept__textArea
{
    position: relative;
    z-index: 1;

    width: 50%;
    margin-top: 73px;
    padding-top: 60px;
    padding-bottom: 50px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-concept__textArea
    {
        margin-top: 3.8197674419vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-concept__textArea
    {
        margin-top: 3.9459459459vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-concept__textArea
    {
        margin-top: 7.841796875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-concept__textArea
    {
        margin-top: 10.4557291667vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-concept__textArea
    {
        padding-top: 3.1395348837vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-concept__textArea
    {
        padding-top: 3.2432432432vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-concept__textArea
    {
        padding-top: 6.4453125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-concept__textArea
    {
        padding-top: 8.59375vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-concept__textArea
    {
        padding-bottom: 2.6162790698vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-concept__textArea
    {
        padding-bottom: 2.7027027027vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-concept__textArea
    {
        padding-bottom: 5.37109375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-concept__textArea
    {
        padding-bottom: 7.1614583333vw;
    }
}
@media screen and (max-width: 1024px)
{
    .p-concept__textArea
    {
        width: 100%;
    }
}
.p-concept__textArea::before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    display: inline-block;

    width: 114.8%;
    height: 100%;

    content: '';

    opacity: .05;
    background: url(../image/logo_only.svg) center bottom/contain no-repeat;
}
@media screen and (max-width: 767px)
{
    .p-concept__textArea::before
    {
        top: unset;
        bottom: 0;

        width: 100%;
        height: auto;

        aspect-ratio: 60/43;
    }
}
.p-concept__textArea::after
{
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;

    display: inline-block;

    width: 100vw;
    height: 100%;

    content: '';

    border-top: 2px solid #ccc;
}
@media screen and (min-width: 1025px)
{
    .p-concept__textArea::after
    {
        border-bottom: 2px solid #ccc;
    }
}
.p-concept__textArea__inner
{
    padding-right: min(3.125vw, 60px);
    padding-left: 5vw;
}
@media screen and (min-width: 1666px)
{
    .p-concept__textArea__inner
    {
        max-width: 750px;
        margin-left: auto;
        padding-left: 0;
    }
}
@media screen and (max-width: 1024px)
{
    .p-concept__textArea__inner
    {
        padding: 0 5%;
    }
}
.p-concept__title
{
    font-size: clamp(19px, 19px + .0178571429 * (100vw - 600px), 22px);
    font-weight: 600;
    line-height: 1.53;

    display: block;

    letter-spacing: .05em;
}
@media screen and (min-width: 1025px)
{
    .p-concept__title:not(:first-of-type)
    {
        margin-top: 21px;
    }
}
.p-concept__text
{
    margin-bottom: clamp(24px, 24px + .0476190476 * (100vw - 600px), 32px);
}
.p-concept__text__line
{
    font-size: 17px;
    line-height: 1.53;

    display: block;

    letter-spacing: .05em;
}
@media screen and (min-width: 1025px)
{
    .p-concept__text__line
    {
        display: inline;
    }
}
.p-concept__text__line.mb
{
    margin-bottom: 1.25em;
}
.p-concept .c-title
{
    margin-bottom: clamp(24px, 24px + .0476190476 * (100vw - 600px), 32px);
}
.p-concept .c-title *
{
    color: #001496;
}
.p-concept .c-button
{
    max-width: 300px;
    margin-left: auto;
}
@media screen and (max-width: 1024px)
{
    .p-concept .c-button
    {
        margin-right: auto;
    }
}
.p-concept__imageArea
{
    position: relative;
    z-index: 2;

    width: 50%;
}
@media screen and (max-width: 1024px)
{
    .p-concept__imageArea
    {
        width: 100%;
        padding-bottom: clamp(25px, 25px + .0353773585 * (100vw - 600px), 40px);
        padding-left: 5%;

        border-bottom: 2px solid #ccc;
    }
}

/* p-movieArea
----------------------------------------------------------------- */
.p-movieArea
{
    background: linear-gradient(135deg, #001496 0%, #001496 46%, #132073 100%);
}
@media screen and (max-width: 1024px)
{
    .p-movieArea
    {
        padding-bottom: 20.7421875vw !important;
    }
}
.p-movieArea .c-topText
{
    margin-bottom: 73px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-movieArea .c-topText
    {
        margin-bottom: 3.8197674419vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-movieArea .c-topText
    {
        margin-bottom: 3.9459459459vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-movieArea .c-topText
    {
        margin-bottom: 7.841796875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-movieArea .c-topText
    {
        margin-bottom: 10.4557291667vw;
    }
}
.p-movieArea__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    grid-gap: clamp(28px, 28px + .0238095238 * (100vw - 600px), 32px) 4%;
}
@media screen and (max-width: 1024px)
{
    .p-movieArea__list
    {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}
.p-movieArea__box
{
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}
.p-movieArea__image
{
    overflow: hidden;

    border-radius: clamp(10px, 10px + .0595238095 * (100vw - 600px), 20px);

    aspect-ratio: 16/9;
}
.p-movieArea__link
{
    display: block;
}
.p-movieArea__text
{
    font-size: 17px;
    font-weight: 300;

    display: block;

    margin-top: clamp(12px, 12px + .0297619048 * (100vw - 600px), 17px);

    text-align: center;

    color: #fff;
}
@media screen and (max-width: 600px)
{
    .p-movieArea__text
    {
        text-align: left;
    }
}

/* p-openPositions
----------------------------------------------------------------- */
.p-openPositions .c-topText
{
    margin-top: -18px;
    margin-bottom: 68px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-openPositions .c-topText
    {
        margin-bottom: 3.5581395349vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-openPositions .c-topText
    {
        margin-bottom: 3.6756756757vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-openPositions .c-topText
    {
        margin-bottom: 7.3046875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-openPositions .c-topText
    {
        margin-bottom: 9.7395833333vw;
    }
}
.p-openPositions__box
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    display: flex;

    padding: clamp(20px, 20px + .0952380952 * (100vw - 600px), 36px) clamp(20px, 20px + .119047619 * (100vw - 600px), 40px);

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    grid-gap: clamp(24px, 24px + .0476190476 * (100vw - 600px), 32px) 0;
}
.p-openPositions__box::before
{
    position: absolute;
    z-index: -1;
    top: 0;

    display: inline-block;

    width: 100vw;
    height: 100%;

    content: '';

    border-top: 3px solid #001496;
    border-bottom: 3px solid #001496;
    border-radius: clamp(15px, 15px + .0892857143 * (100vw - 600px), 30px);
}
.p-openPositions__box:nth-of-type(odd)
{
    padding-right: 0;
}
.p-openPositions__box:nth-of-type(odd)::before
{
    left: 0;

    border-left: 3px solid #001496;
}
.p-openPositions__box:nth-of-type(even)
{
    padding-left: 0;
}
.p-openPositions__box:nth-of-type(even)::before
{
    right: 0;

    border-right: 3px solid #001496;
}
.p-openPositions__textArea
{
    width: 53.5%;
}
@media screen and (max-width: 1024px)
{
    .p-openPositions__textArea
    {
        width: 100%;
    }
}
.p-openPositions__title
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 25px;
    padding-bottom: 26px;

    border-bottom: #ccc solid 2px;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    grid-gap: clamp(12px, 12px + .0297619048 * (100vw - 600px), 17px) 0;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-openPositions__title
    {
        padding-bottom: 1.3604651163vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-openPositions__title
    {
        padding-bottom: 1.4054054054vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-openPositions__title
    {
        padding-bottom: 2.79296875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-openPositions__title
    {
        padding-bottom: 3.7239583333vw;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-openPositions__title
    {
        margin-bottom: 1.3081395349vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-openPositions__title
    {
        margin-bottom: 1.3513513514vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-openPositions__title
    {
        margin-bottom: 2.685546875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-openPositions__title
    {
        margin-bottom: 3.5807291667vw;
    }
}
.p-openPositions__title__left
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    grid-gap: clamp(17px, 17px + .0178571429 * (100vw - 600px), 20px);
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.p-openPositions__icon
{
    width: clamp(50px, 50px + .119047619 * (100vw - 600px), 70px);

    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;

    aspect-ratio: 1/1;
}
.p-openPositions__icon.sales
{
    background-image: url(../image/icon_sales.svg);
}
.p-openPositions__icon.super
{
    background-image: url(../image/icon_supervisor.svg);
}
.p-openPositions__icon.design
{
    background-image: url(../image/icon_design.svg);
}
.p-openPositions__icon.renovation
{
    background-image: url(../image/icon_renovation.svg);
}
.p-openPositions__titleText
{
    font-size: clamp(32px, 32px + .0200892857 * (100vw - 1024px), 50px);
    font-weight: 400;
}
@media screen and (max-width: 1024px)
{
    .p-openPositions__titleText
    {
        font-size: clamp(28px, 28px + .130952381 * (100vw - 600px), 50px);
    }
}
.p-openPositions__titleEn
{
    font-size: clamp(20px, 20px + .0297619048 * (100vw - 600px), 25px);
    font-weight: 500;
    line-height: 1;

    margin-left: auto;

    text-align: right;

    color: #001496;
}
@media screen and (max-width: 767px)
{
    .p-openPositions__titleEn
    {
        width: 100%;
    }
}
.p-openPositions__text
{
    font-size: 17px;

    margin-bottom: 55px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-openPositions__text
    {
        margin-bottom: 2.8779069767vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-openPositions__text
    {
        margin-bottom: 2.972972973vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-openPositions__text
    {
        margin-bottom: 5.908203125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-openPositions__text
    {
        margin-bottom: 7.8776041667vw;
    }
}
.p-openPositions__pointList
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
    grid-gap: 10px 1.315%;
}
.p-openPositions__point
{
    font-size: clamp(20px, 20px + .0111607143 * (100vw - 1024px), 30px);
    font-weight: 500;
    line-height: 1.25;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    width: 49.3425%;
    padding: clamp(8px, 8px + .0238095238 * (100vw - 600px), 12px);

    text-align: center;

    color: #001496;
    border: 1px solid #001496;
    border-radius: 10px;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
.p-openPositions__point.small
{
    font-size: clamp(20px, 20px + .0078125 * (100vw - 1024px), 27px);
}
@media screen and (min-width: 768px)
{
    .p-openPositions__point:nth-of-type(1),
    .p-openPositions__point:nth-of-type(4)
    {
        color: #fff;
        background-color: #001496;
    }
}
@media screen and (max-width: 1024px)
{
    .p-openPositions__point
    {
        font-size: clamp(27px, 27px + .01171875 * (100vw - 768px), 30px);
    }
    .p-openPositions__point.small
    {
        font-size: clamp(22px, 22px + .01953125 * (100vw - 768px), 27px);
    }
}
@media screen and (max-width: 767px)
{
    .p-openPositions__point
    {
        font-size: clamp(20px, 20px + .0595238095 * (100vw - 600px), 30px);

        width: 100%;
    }
    .p-openPositions__point.small
    {
        font-size: clamp(20px, 20px + .0416666667 * (100vw - 600px), 27px);
    }
    .p-openPositions__point:nth-of-type(even)
    {
        color: #fff;
        background-color: #001496;
    }
}
.p-openPositions__imageArea
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;

    width: 43.6%;

    border-radius: clamp(15px, 15px + .0892857143 * (100vw - 600px), 30px);

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}
@media screen and (max-width: 1024px)
{
    .p-openPositions__imageArea
    {
        width: 100%;
    }
}
.p-openPositions__image
{
    overflow: hidden;

    width: 50%;

    aspect-ratio: 310/255;
}

/* p-jobOverview
----------------------------------------------------------------- */
.p-jobOverview .c-topText
{
    margin-bottom: 58px;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-jobOverview .c-topText
    {
        margin-bottom: 3.0348837209vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-jobOverview .c-topText
    {
        margin-bottom: 3.1351351351vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-jobOverview .c-topText
    {
        margin-bottom: 6.23046875vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-jobOverview .c-topText
    {
        margin-bottom: 8.3072916667vw;
    }
}
.p-jobOverview__outline
{
    border-top: 3px solid #001496;
    border-bottom: 3px solid #001496;
}
.p-jobOverview__outlineRow
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}
.p-jobOverview__outlineRow:not(:last-of-type)
{
    border-bottom: 1px solid #001496;
}
.p-jobOverview__outlineRow:nth-of-type(even)
{
    background-color: rgba(0, 20, 150, .03);
}
.p-jobOverview__outlineDt
{
    font-size: 17px;
    font-weight: 400;

    width: 18.53%;
    padding-top: clamp(17px, 17px + .0476190476 * (100vw - 600px), 25px);
    padding-bottom: clamp(17px, 17px + .0476190476 * (100vw - 600px), 25px);
}
@media screen and (min-width: 768px)
{
    .p-jobOverview__outlineDt
    {
        padding-left: clamp(17px, 17px + .0789930556 * (100vw - 768px), 108px);

        border-right: 1px solid #001496;
    }
}
@media screen and (max-width: 1024px)
{
    .p-jobOverview__outlineDt
    {
        width: 22%;
    }
}
@media screen and (max-width: 767px)
{
    .p-jobOverview__outlineDt
    {
        width: 100%;

        text-align: center;

        border-bottom: 1px solid #ccc;
    }
}
.p-jobOverview__outlineDd
{
    font-size: 17px;
    font-weight: 300;

    width: 81.47%;
    padding-top: clamp(17px, 17px + .0476190476 * (100vw - 600px), 25px);
    padding-bottom: clamp(17px, 17px + .0476190476 * (100vw - 600px), 25px);
    padding-left: clamp(17px, 17px + .0286458333 * (100vw - 768px), 50px);
}
@media screen and (max-width: 1024px)
{
    .p-jobOverview__outlineDd
    {
        width: 78%;
        padding-right: clamp(17px, 17px + .0286458333 * (100vw - 768px), 50px);
    }
}
@media screen and (max-width: 767px)
{
    .p-jobOverview__outlineDd
    {
        width: 100%;
    }
}

.p-snsArea__inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    grid-gap: clamp(25px, 25px + .0416666667 * (100vw - 600px), 32px) 4.6%;
}
.p-snsArea__title
{
    font-size: clamp(50px, 50px + .119047619 * (100vw - 600px), 70px);
    font-weight: 500;

    color: #001496;
}
.p-snsArea__list
{
    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;
    grid-gap: 0 clamp(30px, 30px + .0303030303 * (100vw - 600px), 70px);
}
.p-snsArea__image img
{
    width: auto;
    height: clamp(60px, 60px + .119047619 * (100vw - 600px), 80px);
}

.p-cvArea
{
    width: 94.8%;
    margin-right: auto;
    margin-left: auto;

    border-radius: clamp(15px, 15px + .0892857143 * (100vw - 600px), 30px);
    background-color: #001496;
}
.p-cvArea__inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: clamp(28px, 28px + .0416666667 * (100vw - 600px), 35px) clamp(0px, 0px + .0814732143 * (100vw - 1024px), 73px);

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    grid-gap: clamp(24px, 24px + .0476190476 * (100vw - 600px), 32px) 0;
}
@media screen and (min-width: 1025px)
{
    .p-cvArea__inner::before
    {
        display: inline-block;

        width: clamp(70px, 70px + .0454545455 * (100vw - 600px), 130px);

        content: '';

        background: url(../image/slash.svg) center/100% no-repeat;

        aspect-ratio: 1/1;
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
    }
}
@media screen and (max-width: 1024px)
{
    .p-cvArea__inner
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
@media screen and (min-width: 1025px)
{
    .p-cvArea__mailArea
    {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
    }
}
@media screen and (max-width: 1024px)
{
    .p-cvArea__mailArea
    {
        width: 100%;
    }
}
.p-cvArea__mailArea .c-title__en
{
    font-size: clamp(50px, 50px + .0446428571 * (100vw - 1024px), 90px);

    color: #fff;
}
@media screen and (max-width: 1024px)
{
    .p-cvArea__mailArea .c-title__en
    {
        font-size: clamp(50px, 50px + .1785714286 * (100vw - 600px), 80px);
    }
}
.p-cvArea__mailArea .c-button__arrow
{
    width: clamp(20px, 20px + .0223214286 * (100vw - 1024px), 40px);
}
.p-cvArea__mailArea .c-button__arrow::before,
.p-cvArea__mailArea .c-button__arrow::after
{
    background-color: #fff;
}
.p-cvArea__link
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    grid-gap: 0 clamp(20px, 20px + .0227272727 * (100vw - 600px), 50px);
}
@media screen and (min-width: 1025px)
{
    .p-cvArea__link:hover
    {
        opacity: 1;
    }
    .p-cvArea__link:hover .c-button__arrow::after
    {
        -webkit-transform: translate(-50%, -50%) rotate(0deg);
                transform: translate(-50%, -50%) rotate(0deg);
    }
}
@media screen and (max-width: 767px)
{
    .p-cvArea__link
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}
.p-cvArea__jp
{
    font-size: clamp(24px, 24px + .0178571429 * (100vw - 1024px), 40px);
    font-weight: 500;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    color: #fff;

    grid-gap: clamp(20px, 20px + .0595238095 * (100vw - 600px), 30px);
}
@media screen and (max-width: 1024px)
{
    .p-cvArea__jp
    {
        font-size: clamp(30px, 30px + .0595238095 * (100vw - 600px), 40px);
    }
}
@media screen and (min-width: 1025px)
{
    .p-cvArea .c-telArea
    {
        -webkit-box-ordinal-group: 4;
            -ms-flex-order: 3;
                order: 3;
    }
}
@media screen and (max-width: 1024px)
{
    .p-cvArea .c-telArea
    {
        width: 100%;
    }
}

.c-tabList
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
    grid-gap: clamp(8px, 8px + .0714285714 * (100vw - 600px), 20px) 1.3333%;
}

.c-tabBox
{
    font-size: clamp(17px, 17px + .0089285714 * (100vw - 1024px), 25px);
    font-weight: 600;

    position: relative;

    padding: clamp(12px, 12px + .0178571429 * (100vw - 600px), 15px);

    -webkit-transition: all .5s;

    transition: all .5s;
    text-align: center;

    color: #fff;
    border-radius: 10px;
    background-color: #ccc;
}
@media screen and (min-width: 1025px)
{
    .c-tabBox
    {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
    }
    .c-tabBox:hover
    {
        background-color: #001496;
    }
}
@media screen and (max-width: 1024px)
{
    .c-tabBox
    {
        font-size: clamp(15px, 15px + .0595238095 * (100vw - 600px), 25px);

        width: 49.3335%;
    }
}
.c-tabBox.active
{
    background-color: #001496;
}
.c-tabBox:not(.active)
{
    cursor: pointer;
}
.c-tabBox:not(.active)::after
{
    position: absolute;
    top: 50%;
    right: clamp(8px, 8px + .0714285714 * (100vw - 600px), 20px);

    display: inline-block;

    width: clamp(15px, 15px + .0133928571 * (100vw - 1024px), 27px);

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background-color: #fff;

    aspect-ratio: 27/24;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
}
@media screen and (max-width: 1024px)
{
    .c-tabBox:not(.active)::after
    {
        width: clamp(10px, 10px + .0595238095 * (100vw - 600px), 20px);
    }
}

.c-topText
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: -8px;
    margin-bottom: 50px;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .c-topText
    {
        margin-bottom: 2.6162790698vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .c-topText
    {
        margin-bottom: 2.7027027027vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-topText
    {
        margin-bottom: 5.37109375vw;
    }
}
@media screen and (max-width: 767px)
{
    .c-topText
    {
        margin-bottom: 7.1614583333vw;
    }
}
@media screen and (max-width: 1024px)
{
    .c-topText
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        grid-gap: clamp(24px, 24px + .0476190476 * (100vw - 600px), 32px);
    }
}
.c-topText__text
{
    font-size: clamp(17px, 17px + .0178571429 * (100vw - 600px), 20px);

    width: 45%;
    max-width: 570px;
}
@media screen and (min-width: 1025px)
{
    .c-topText__text
    {
        margin-top: -1em;
    }
}
@media screen and (max-width: 1024px)
{
    .c-topText__text
    {
        width: 100%;
        max-width: unset;
    }
}
.c-topText:has(.white) .c-topText__text
{
    color: #fff;
}

.l-main div:has(.c-bigText),
.l-main section:has(.c-bigText)
{
    position: relative;
    z-index: 1;

    overflow: hidden;
}

.c-bigText
{
    font-size: 13.54166vw;
    font-weight: 600;
    line-height: 1;

    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;

    -webkit-transform: translateY(.17em);

            transform: translateY(.17em);
    white-space: nowrap;

    opacity: .4;
    color: #061a5a;
}
@media screen and (max-width: 1024px)
{
    .c-bigText
    {
        font-size: 27vw;
    }
}

.c-telArea__text
{
    font-size: clamp(20px, 20px + .0055803571 * (100vw - 1024px), 25px);
    font-weight: 500;

    display: block;

    margin-bottom: clamp(17px, 17px + .0297619048 * (100vw - 600px), 22px);

    color: #fff;
}
@media screen and (max-width: 1024px)
{
    .c-telArea__text
    {
        font-size: clamp(20px, 20px + .0297619048 * (100vw - 600px), 25px);

        text-align: center;
    }
}
@media screen and (max-width: 1024px)
{
    .c-telArea__link
    {
        width: 100%;

        text-align: center;
    }
}
.c-telArea__en
{
    font-size: clamp(40px, 40px + .0111607143 * (100vw - 1024px), 50px);
    font-weight: 500;
    line-height: 1;

    color: #fff;
}
@media screen and (max-width: 1024px)
{
    .c-telArea__en
    {
        font-size: clamp(36px, 36px + .1428571429 * (100vw - 600px), 60px);
    }
}
