/* p-recruit
   ----------------------------------------------------------------- */
@media screen and (max-width: 767px)
{
    .p-page__heading .c-title__en
    {
        font-size: clamp(40px, 40px + .0952380952 * (100vw - 600px), 56px);
    }
}
@media screen and (max-width: 767px)
{
    .p-page__heading .c-title__jp
    {
        font-size: clamp(17px, 17px + .0297619048 * (100vw - 600px), 22px);
    }
}

.p-recruit__topText
{
    font-size: clamp(22px, 22px + .0089285714 * (100vw - 1024px), 30px);
    font-weight: 500;

    margin-bottom: 70px;

    text-align: center;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-recruit__topText
    {
        margin-bottom: 3.6627906977vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-recruit__topText
    {
        margin-bottom: 3.7837837838vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-recruit__topText
    {
        margin-bottom: 7.51953125vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-recruit__topText
    {
        margin-bottom: 10.0260416667vw;
    }
}
@media screen and (max-width: 1024px)
{
    .p-recruit__topText
    {
        font-size: clamp(20px, 20px + .0476190476 * (100vw - 600px), 28px);
    }
}
.p-recruit__mainImage
{
    position: relative;
    z-index: 1;
}
.p-recruit__mainImage__inner
{
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;

    -webkit-transform: translate(-50%, -52%);

            transform: translate(-50%, -52%);
}
.p-recruit__subCatch
{
    font-size: clamp(20px, 20px + .0078125 * (100vw - 1024px), 27px);
    font-weight: 400;
    line-height: 1;

    text-align: center;

    color: #fff;
}
@media screen and (max-width: 1024px)
{
    .p-recruit__subCatch
    {
        font-size: clamp(25px, 25px + .0078125 * (100vw - 768px), 27px);
    }
}
@media screen and (max-width: 767px)
{
    .p-recruit__subCatch
    {
        font-size: clamp(20px, 20px + .0297619048 * (100vw - 600px), 25px);

        margin-bottom: .5em;
    }
}
.p-recruit__catch
{
      margin-bottom: .1em;
    text-align: center;
    color: #fff;
    display: flex;
    justify-content: center;
}
.p-recruit__catch__line
{
    font-size: clamp(75px, 75px + .0390625 * (100vw - 1024px), 110px);
    font-weight: 500;
    line-height: 1.35;
}
@media screen and (min-width: 1025px)
{
    .p-recruit__catch
    {   
      transform: translateX(2.5%);
    }
}
@media screen and (max-width: 1024px)
{
    .p-recruit__catch
    {
        margin-bottom: .75em;
        flex-direction: column;
    }
    .p-recruit__catch__line{
        font-size: clamp(45px, 45px + .3154761905 * (100vw - 600px), 98px);
      line-height: 1.2;
    }
    .p-recruit__catch__line:last-of-type
    {
        transform: translateX(3.9%);
    }
}
@media screen and (max-width: 767px)
{
    .p-recruit__catch__line
    {
        font-size: clamp(52px, 52px + .2738095238 * (100vw - 600px), 98px);
      line-height: 1.15;
    }
}
.p-recruit__text
{
    font-size: clamp(22px, 22px + .0089285714 * (100vw - 1024px), 30px);
    font-weight: 500;
    line-height: 1.2;

    text-align: center;

    color: #fff;
}
@media screen and (max-width: 1024px)
{
    .p-recruit__text
    {
        font-size: 28px;
        line-height: 1.35;
    }
}
@media screen and (max-width: 767px)
{
    .p-recruit__text
    {
        font-size: clamp(17px, 17px + .0476190476 * (100vw - 600px), 25px);
        font-weight: 600;

        white-space: nowrap;
    }
}
.p-recruit__mainBg
{
    position: relative;
    z-index: 1;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
}
.p-recruit__mainBg::before
{
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;

    display: inline-block;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(0, 36, 0, .4);
}
.p-recruit__image
{
    width: 100%;
    height: 100%;

    -o-object-fit: cover;

       object-fit: cover;
}
.p-recruit__bgImage
{
    overflow: hidden;

    width: 33.3333333333%;

    aspect-ratio: 64/42;
}
@media screen and (max-width: 1024px)
{
    .p-recruit__bgImage
    {
        width: 50%;
    }
}
@media screen and (max-width: 767px)
{
    .p-recruit__bgImage
    {
      aspect-ratio: 64/58;
    }
}
.p-recruit__outlineList
{
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    margin-bottom: 80px;

    border: 1px solid #009844;
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-recruit__outlineList
    {
        margin-bottom: 4.1860465116vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-recruit__outlineList
    {
        margin-bottom: 4.3243243243vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-recruit__outlineList
    {
        margin-bottom: 8.59375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-recruit__outlineList
    {
        margin-bottom: 11.4583333333vw;
    }
}
.p-recruit__outlineRow
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}
.p-recruit__outlineRow:not(:last-of-type)
{
    border-bottom: 1px solid #009844;
}
.p-recruit__outlineDt
{
    font-size: clamp(17px, 17px + .0178571429 * (100vw - 600px), 20px);

    width: 21.66%;
    padding: clamp(17px, 17px + .0188679245 * (100vw - 600px), 25px) 0;

    background-color: #f6fbf4;
}
@media screen and (min-width: 768px)
{
    .p-recruit__outlineDt
    {
        min-width: 180px;
        padding-left: clamp(25px, 25px + .0217013889 * (100vw - 768px), 50px);

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

        text-align: center;
    }
}
.p-recruit__outlineDd
{
    font-size: clamp(17px, 17px + .0178571429 * (100vw - 600px), 20px);

    width: 78.34%;
    padding: clamp(17px, 17px + .0188679245 * (100vw - 600px), 25px) clamp(20px, 20px + .0173611111 * (100vw - 768px), 40px);
}
@media screen and (min-width: 768px)
{
    .p-recruit__outlineDd
    {
        max-width: calc(100% - 180px);
    }
}
@media screen and (max-width: 767px)
{
    .p-recruit__outlineDd
    {
        width: 100%;
    }
}
