@charset "UTF-8";
@media screen and (max-width: 1199px) {
    .pcOnly {
        display: none;
    }
}

@media screen and (min-width: 1200px) {
    .mdOnly {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .mdOnly {
        display: none;
    }
}

@media screen and (min-width: 768px) {
    .spOnly {
        display: none;
    }
}

@media screen and (min-width: 1200px) {
    .spMdOnly {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .pcMdOnly {
        display: none;
    }
}

/* 既存スタイル */
#wrapper {
    min-width: auto;
}

.lpKeyImage {
    display: table;
    width: 100%;
    height: 400px;
    overflow: hidden;
}

.lpTitleBox {
    display: table-cell;
    vertical-align: middle;
    padding: 0 0 0 14%;
}

.lpTitle {
    font-size: 2.3076923077em;
    color: #777;
    font-weight: bold;
    margin: 0 0 30px;
}

.lpButton {
    display: inline-block;
    border-radius: 8px;
    width: 260px;
    letter-spacing: 0.03em;
    padding: 16px 0;
    line-height: 1;
    font-size: 1.5384615385em;
    z-index: 2;
    font-weight: bold;
    text-align: center;
    box-sizing: border-box;
    margin: 0 20px;
}

.lpButton:hover {
    text-decoration: none;
}

.lpButton-small {
    font-size: 1.2307692308em;
    padding: 15px 25px;
    width: auto;
}

.lpButton-white {
    background: #fff;
    border: 1px solid #289b1e;
    color: #289b1e;
}

.lpButton-white:hover {
    background: #f7f7f7;
}

.lpButton-green {
    background: #289b1e;
    border: 1px solid #fff;
    color: #fff;
}

.lpButton-green:hover {
    background: #218a18;
}

.lpButton-green-footerCta {
    border: 1px solid #289b1e;
}

.lpButton-blue {
    background: #fff;
    border: 1px solid #1b7fbe;
    color: #1b7fbe;
}

.lpButton-blue:hover {
    opacity: 0.7;
}

@media screen and (max-width: 999px) {
    .lpKeyImage {
        padding: 0 15px;
        height: 200px;
        box-sizing: border-box;
    }
    .lpTitleBox {
        padding: 0;
        text-align: center;
    }
    .lpTitle {
        font-size: 1.5384615385em;
        margin: 0 0 15px;
    }
    .lpButton-white {
        width: 250px;
        font-size: 1.1538461538em;
        margin: 0 10px 15px;
    }
    .lpButton-green {
        width: 250px;
        font-size: 1.1538461538em;
        margin: 0 10px 15px;
    }
}
/* セクション */
.lpSection {
    padding: 70px 0;
    text-align: center;
}

.lpSection-gray {
    background: #f8f9fa;
}

.lpSection-navy {
    background: #2a578a;
}

.lpSection-blue {
    background: #0876c2;
}

.lpSectionTitle {
    margin: 0 0 40px;
    font-size: 2em;
    color: #333;
    text-align: center;
}

.lpSectionTitle::after {
    content: "";
    display: block;
    width: 40px;
    height: 4px;
    margin: 15px auto 0;
    background: #1b7fbe;
    border-radius: 2px;
}

.lpSectionText {
    font-size: 1.2307692308em;
    color: #555;
}

.lpSectionText + .lpSectionText {
    margin: 5px 0 0;
}

.lpSection-blue .recLpCommon-headline,
.lpSection-blue .lpSectionText {
    color: #fff;
}

.recLpCommon-headline {
    margin: 0 0 40px;
    text-align: center;
    font-size: 32px;
    font-weight: bold;
    line-height: 1.24;
    color: #222;
}

@media screen and (max-width: 599px) {
    .recLpCommon-headline {
        font-size: 24px;
    }
}
@media screen and (max-width: 499px) {
    .recLpCommon-headline {
        font-size: 24px;
        margin: 0 0 20px;
    }
}
.recLpCommon-headline-white {
    color: #fff;
}

.catchText {
    font-size: 1.3846153846em;
    color: #777;
    margin: 25px 35px;
    font-weight: bold;
}

.lpImageMax {
    max-width: 90%;
    padding: 30px 0;
}

.lpLogoList {
    margin: 0 auto;
    max-width: 1070px;
    padding: 0 20px;
    box-sizing: border-box;
}

.lpLogoList-top {
    text-align: center;
    display: flex;
    justify-content: space-evenly;
    flex-wrap: nowrap;
    padding: 6px;
}

@media all and (-ms-high-contrast: none) {
    *::-ms-backdrop,
    .lpLogoList-top {
        justify-content: space-around;
    }
}
.lpLogoList_item {
    display: inline-block;
    width: 20%;
    padding: 10px 0;
}

.lpLogoList-top_item {
    max-width: 130px;
    padding: 5px 10px;
}

.lpLogoLink {
    display: inline-block;
}

.lpLogoLink:hover {
    text-decoration: none;
    opacity: 0.5;
}

.lpLogoLink_image {
    width: 100%;
    max-width: 180px;
}

@media screen and (max-width: 767px) {
    .lpLogoList-top {
        flex-wrap: wrap;
    }
    .lpLogoList-top_item {
        width: 20%;
        padding: 8px 0;
    }
    .lpLogoList-top_item.lpLogoList-top_item-pc {
        display: none;
    }
}
@media screen and (max-width: 599px) {
    .lpLogoList_item {
        width: 33.3333333333%;
    }
    .lpLogoLink_image {
        max-width: 160px;
    }
}
@media screen and (max-width: 399px) {
    .lpLogoList {
        padding: 0;
    }
}
.lpButtonList {
    width: 100%;
    padding: 100px 0;
    border-top: 1px solid #e9e9e9;
    border-bottom: 1px solid #e9e9e9;
    text-align: center;
}

@media screen and (max-width: 999px) {
    .lpSection {
        padding: 40px 0;
    }
    .lpSectionTitle {
        margin: 0 15px 20px;
        font-size: 1.3846153846em;
    }
    .lpSectionText {
        padding: 0 15px;
        font-size: 1.0769230769em;
    }
    .lpSectionTitle::after {
        margin: 10px auto 0;
    }
    .lpSectionText {
        font-size: 1.0769230769em;
    }
    .catchText {
        font-size: 1.2307692308em;
    }
    .lpSimpleButton {
        font-size: 1em;
        margin: 10px 0 0;
    }
    .copyright {
        font-size: 0.9230769231em;
    }
}
@media screen and (max-width: 499px) {
    .lpButton-small {
        font-size: 1em;
        margin: 10px 0;
    }
}
.lpSection-footerCta_buttonBox {
    display: flex;
    justify-content: center;
}

@media screen and (max-width: 799px) {
    .lpSection-footerCta_buttonBox {
        flex-direction: column;
        align-items: center;
    }
    .lpButton-green-footerCta {
        margin: 0;
    }
}
.footer {
    background: #fff;
}

/* /既存スタイル */
.commonCta {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 40px 0 56px 0;
}
@media screen and (max-width: 1199px) {
    .commonCta {
        padding: 48px 0;
    }
}

@media screen and (max-width: 1199px) {
    .commonCta-adjustMarginSp {
        width: calc(100% - 20px);
        padding: 48px 10px;
    }
}

.commonCta_title {
    color: #222;
    text-align: center;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.6px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 20px;
}
@media screen and (max-width: 1199px) {
    .commonCta_title {
        color: #444;
        font-size: 0.875rem;
        line-height: 1.5;
        letter-spacing: 0.42px;
        gap: unset;
    }
}

.commonCta_title::before,
.commonCta_title::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-cta-bubble.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 16px;
    height: 18px;
    transform: translateY(-10px);
}
@media screen and (max-width: 1199px) {
    .commonCta_title::before,
    .commonCta_title::after {
        transform: translateX(10px);
    }
}

.commonCta_title::after {
    transform: scale(-1, 1) translateY(-10px);
}
@media screen and (max-width: 1199px) {
    .commonCta_title::after {
        transform: scale(-1, 1) translateX(10px);
    }
}

.commonCta_btns {
    display: flex;
    gap: 16px;
    justify-content: center;
    margin: 15px 0 0 0;
}
@media screen and (max-width: 1199px) {
    .commonCta_btns {
        gap: 10px;
        margin: 10px 0 0 0;
    }
}

.commonCta_dlBtn {
    background-color: #0e6eab;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .commonCta_dlBtn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.commonCta_dlBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-dl-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .commonCta_dlBtn::before {
        width: 13px;
        height: 13px;
    }
}
.commonCta_dlBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.commonCta_dlBtn {
    width: 320px;
    height: 60px;
}
@media screen and (max-width: 1199px) {
    .commonCta_dlBtn {
        width: 170px;
        height: 40px;
    }
}
@media screen and (max-width: 767px) {
    .commonCta_dlBtn {
        width: 50%;
    }
}

.commonCta_mailBtn {
    background-color: #3aa131;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .commonCta_mailBtn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.commonCta_mailBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-mail-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .commonCta_mailBtn::before {
        width: 13px;
        height: 13px;
    }
}
.commonCta_mailBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.commonCta_mailBtn {
    width: 320px;
    height: 60px;
}
@media screen and (max-width: 1199px) {
    .commonCta_mailBtn {
        width: 170px;
        height: 40px;
    }
}
@media screen and (max-width: 767px) {
    .commonCta_mailBtn {
        width: 50%;
    }
}

.commonCta-blue {
    padding: 40px 0 56px 0;
    background: #f2f6fa;
}
@media screen and (max-width: 1199px) {
    .commonCta-blue {
        padding: 40px 10px 60px;
    }
}

.commonCta-blue_box {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.commonCta-blue_title {
    color: #222;
    text-align: center;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.6px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 20px;
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_title {
        color: #444;
        font-size: 0.875rem;
        line-height: 1.5;
        letter-spacing: 0.42px;
        gap: unset;
    }
}

.commonCta-blue_title::before,
.commonCta-blue_title::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-cta-bubble.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 16px;
    height: 18px;
    transform: translateY(-10px);
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_title::before,
    .commonCta-blue_title::after {
        transform: translateX(10px);
    }
}

.commonCta-blue_title::after {
    transform: scale(-1, 1) translateY(-10px);
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_title::after {
        transform: scale(-1, 1) translateX(10px);
    }
}

.commonCta-blue_btns {
    display: flex;
    gap: 16px;
    justify-content: center;
    margin: 15px 0 0 0;
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_btns {
        gap: 10px;
        margin: 10px 0 0 0;
    }
}

.commonCta-blue_dlBtn {
    background-color: #0e6eab;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_dlBtn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.commonCta-blue_dlBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-dl-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_dlBtn::before {
        width: 13px;
        height: 13px;
    }
}
.commonCta-blue_dlBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.commonCta-blue_dlBtn {
    width: 320px;
    height: 60px;
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_dlBtn {
        width: 170px;
        height: 40px;
    }
}
@media screen and (max-width: 767px) {
    .commonCta-blue_dlBtn {
        width: 50%;
    }
}

@media screen and (max-width: 1199px) {
    .commonCta-blue_dlBtn::before {
        width: 13px;
        height: 13px;
    }
}

.commonCta-blue_mailBtn {
    background-color: #3aa131;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_mailBtn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.commonCta-blue_mailBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-mail-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_mailBtn::before {
        width: 13px;
        height: 13px;
    }
}
.commonCta-blue_mailBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.commonCta-blue_mailBtn {
    width: 320px;
    height: 60px;
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_mailBtn {
        width: 170px;
        height: 40px;
    }
}
@media screen and (max-width: 767px) {
    .commonCta-blue_mailBtn {
        width: 50%;
    }
}

.commonCta-blue_text {
    color: #222;
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.64px;
    text-align: center;
    margin: 25px 0 0;
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_text {
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

.commonCta-blue_text::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-search.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    margin-right: 4px;
    transform: translateY(7px);
}
@media screen and (max-width: 1199px) {
    .commonCta-blue_text::before {
        width: 20px;
        height: 20px;
    }
}

.commonCta-blue_textLink {
    color: #0e6eab;
}

.commonCta-blue_textLink:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.commonHeader {
    box-shadow: 1px 1px 10px 0 rgba(0, 0, 0, 0.1);
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 100;
    transition-duration: 0.2s;
}
@media screen and (max-width: 1199px) {
    .commonHeader {
        border-bottom: 1px solid #d1dae1;
    }
}

.commonHeader.is-scrolled {
    transform: translateY(-58px);
}

.commonHeader_content {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.commonHeader_logo {
    width: 155px;
    height: 0;
    display: block;
    margin: 18px 40px 20px;
    padding: 50px 0 0;
    overflow: hidden;
    line-height: 2;
    background: url(../../img/recruiting/logo-openwork-wordbreak.png) no-repeat;
    background-size: contain;
    background-position: center;
    transition-duration: 0.2s;
}
@media screen and (max-width: 1550px) {
    .commonHeader_logo {
        width: 150px;
        margin: 18px 30px 20px;
        padding: 50px 0 0;
    }
}
@media screen and (min-width: 1171px) and (max-width: 1350px) {
    .commonHeader_logo {
        width: 120px;
        margin: 18px 10px 20px;
        padding: 50px 0 0;
    }
}
@media screen and (min-width: 768px) and (max-width: 1170px) {
    .commonHeader_logo {
        width: 438px;
        height: 0;
        display: block;
        margin: 10px auto;
        padding: 16px 0 0;
        background: url(../../img/recruiting/logo_recruiting.svg) no-repeat;
        background-position: center;
    }
}
@media screen and (max-width: 767px) {
    .commonHeader_logo {
        width: 218px;
        height: 0;
        display: block;
        margin: 10px 0 4px 24px;
        padding: 22px 0 0;
        background: url(../../img/recruiting/logo_recruiting.svg) no-repeat;
    }
}

.commonHeader.is-scrolled .commonHeader_logo {
    background: url(../../img/recruiting/logo-openwork-oneline.jpg) no-repeat;
    background-size: contain;
    background-position: bottom;
    margin: 18px 15px 18px;
    width: 205px;
}
@media screen and (min-width: 1171px) and (max-width: 1550px) {
    .commonHeader.is-scrolled .commonHeader_logo {
        width: 120px;
        height: 0;
        display: block;
        margin: 0px 10px 5px;
        padding: 50px 0 0;
        overflow: hidden;
        line-height: 2;
        background: url(../../img/recruiting/logo-openwork-wordbreak.png) no-repeat;
        background-size: contain;
        background-position: center;
        transition-duration: 0.2s;
    }
}

.commonHeader_navigation {
    width: calc(100% - 235px);
    height: 88px;
    border-left: #d1dae1 1px solid;
}
@media screen and (max-width: 1550px) {
    .commonHeader_navigation {
        width: 100%;
    }
}
@media screen and (max-width: 1170px) {
    .commonHeader_navigation {
        display: none;
    }
}

.commonHeader_navigationUpper {
    display: flex;
    justify-content: flex-end;
    gap: 24px;
    align-items: center;
    margin: 10px 56px 0 0;
}

.commonHeader_navigationUpper_itemLink {
    color: #222;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.39px;
}

.commonHeader_navigationUpper_itemLink:hover {
    opacity: 1;
    color: #0e6eab;
    text-decoration: none;
}

.commonHeader_navigationUpper_itemLink-targetBlank::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    vertical-align: middle;
}

.commonHeader_navigationUpper_item-demo .commonHeader_navigationUpper_itemLink::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-search.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    transform: translateY(2px);
}

.commonHeader_navigationUpper_item-login .commonHeader_navigationUpper_itemLink::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-login.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    transform: translateY(2px);
}

.commonHeader_navigationUpper_item-border {
    display: flex;
    align-items: center;
}

.commonHeader_navigationUpper_item-border::before {
    content: "";
    display: inline-block;
    width: 1px;
    height: 20px;
    background: #d1dae1;
    margin: 0 24px 0 0;
}

.commonHeader_navigationLower {
    display: flex;
    justify-content: flex-end;
    gap: 18px;
    align-items: center;
    margin: 10px 28px 0 0;
}
@media screen and (min-width: 1171px) and (max-width: 1550px) {
    .commonHeader_navigationLower {
        gap: 14px;
    }
}
@media screen and (min-width: 1171px) and (max-width: 1350px) {
    .commonHeader_navigationLower {
        gap: 10px;
        margin-right: 20px;
    }
}

.commonHeader_navigationLower_item {
    padding: 0 0 10px;
    position: relative;
}

.commonHeader_navigationLower_item.is-current::after {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 3px;
    width: 100%;
    background: #0e6eab;
}

.commonHeader_navigationLower_itemText {
    color: #222;
    font-size: 0.9375rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: -0.6px;
    cursor: pointer;
    white-space: nowrap;
}
@media screen and (max-width: 1550px) {
    .commonHeader_navigationLower_itemText {
        font-size: 0.8125rem;
    }
}
@media screen and (min-width: 1171px) and (max-width: 1350px) {
    .commonHeader_navigationLower_itemText {
        font-size: 0.75rem;
    }
}

.commonHeader_navigationLower_link {
    height: 36px;
    display: flex;
    align-items: center;
}

.commonHeader_navigationLower_link:hover {
    opacity: 1;
    text-decoration: none;
}

.commonHeader_navigationLower_link:hover .commonHeader_navigationLower_itemText {
    color: #0e6eab;
}

.commonHeader_navigationLower_link-targetBlank::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    vertical-align: middle;
}

.commonHeader_navigationLower_item-toggle {
    position: relative;
    cursor: pointer;
}

.commonHeader_navigationLower_item-toggle .commonHeader_navigationLower_itemText {
    display: inline-flex;
    align-items: center;
}

.commonHeader_navigationLower_item-toggle .commonHeader_navigationLower_itemText::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 13px;
    transform: rotate(90deg);
    transition-duration: 0.2s;
    margin: 0 0 0 5px;
}

.commonHeader_navigationLower_item-toggle:hover .commonHeader_navigationLower_itemText::after {
    transform: rotate(270deg);
}

.commonHeader_navigationLower_item-toggle:hover .commonHeader_navigationLower_itemText {
    opacity: 1;
    color: #0e6eab;
}

.commonHeader_navigationLower_dropdown {
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
    position: absolute;
    width: -moz-max-content;
    width: max-content;
    border-radius: 5px;
    border: 1px solid #d1dae1;
    background: #fff;
    box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.1);
    z-index: 10;
    opacity: 0;
    visibility: hidden;
    transition:
        opacity 0.3s,
        visibility 0.3s;
}

.commonHeader_navigationLower_dropdown li + li {
    border-top: #d1dae1 1px solid;
}

.commonHeader_navigationLower_dropdownLink {
    color: #0e6eab;
    font-size: 0.9375rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.45px;
    padding: 13px 24px;
    display: inline-block;
    width: calc(100% - 48px);
}

.commonHeader_navigationLower_dropdownLink:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.commonHeader_navigationLower_item-toggle:hover .commonHeader_navigationLower_dropdown {
    opacity: 1;
    visibility: visible;
}

.commonHeader_navigationLower_item-buttons {
    display: flex;
    gap: 8px;
}

.commonHeader_navigationLower_dlButton {
    background: #0c7bc9;
    border-radius: 100px;
    width: 136px;
    height: 34px;
    padding: 2px 0 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 0.8125rem;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.39px;
}

.commonHeader_navigationLower_dlButton:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.commonHeader_navigationLower_mailButton {
    background: #3aa131;
    border-radius: 100px;
    width: 136px;
    height: 34px;
    padding: 2px 0 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 0.8125rem;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.39px;
}

.commonHeader_navigationLower_mailButton:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
@media screen and (min-width: 1171px) and (max-width: 1350px) {
    .commonHeader_navigationLower_dlButton,
    .commonHeader_navigationLower_mailButton {
        width: 120px;
        font-size: 0.75rem;
    }
}

.commonHamburgerMenu {
    border-top: 1px solid #d1dae1;
    overflow: scroll;
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    background: #fff;
    z-index: 99;
    padding: 35px 0 0;
    /* ★初期状態の非表示とアニメーションの設定★ */
    opacity: 0;
    visibility: hidden;
    height: 0;
    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        height 0.3s ease;
}

.commonHamburgerMenu.is-open {
    opacity: 1;
    visibility: visible;
    height: calc(100vh - 35px);
}

.commonHamburgerMenu_inner {
    padding: 10px 32px 20px;
}

@media screen and (max-width: 1199px) {
    .commonHamburgerMenu_inner {
        padding-bottom: 80px;
    }
}

.commonHamburgerMenu .commonFooter_cta-linkList-box {
    margin-top: 16px;
}

.commonHamburgerMenu .commonFooter_cta-linkList-box .commonFooter_cta-linkList {
    margin-top: 0;
}
.commonHamburgerMenu_item {
    border-bottom: 1px solid #d1dae1;
}

.commonHamburgerMenu_item:last-child {
    border: none;
}

.commonHamburgerMenu_link {
    color: #222;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 2;
    letter-spacing: 0.54px;
    padding: 9px 0 12px;
    position: relative;
    display: inline-block;
    width: 100%;
}

.commonHamburgerMenu_link::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-circle-arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 19px;
    right: 9px;
}

.commonHamburgerMenu_link-targetBlank span::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    transform: translateY(2px);
}

.commonHamburgerMenu_linkTable {
    padding: 10px 0;
}

.commonHamburgerMenu_linkTableTerm {
    color: #222;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 2;
    letter-spacing: 0.54px;
}

.commonHamburgerMenu_linkTableDescription-afterTerm {
    margin: 5px 0 0;
}

.commonHamburgerMenu_linkTableDescription-afterDescription {
    margin: 5px 0 0;
}

.commonHamburgerMenu_linkTableLink {
    color: #222;
    font-size: 0.875rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.42px;
    display: block;
}

.commonHamburgerMenu_linkTableLink-targetBlank::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    transform: translateY(2px);
}

.commonHamburgerMenu_otherList {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding: 10px 0;
}

.commonHamburgerMenu_otherListItem {
    width: calc(50% - 10px);
}

.commonHamburgerMenu_otherListLink {
    color: #222;
    font-size: 0.875rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.42px;
    display: block;
}

.commonHamburgerMenu_otherListLink-targetBlank::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    transform: translateY(2px);
}

.commonHamburgerMenu_otherLink-search::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-search.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    transform: translateY(2px);
}

.commonHamburgerMenu_otherLink-login::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-login.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    transform: translateY(2px);
}

.common_floatingBnr {
    position: fixed;
    bottom: 50px;
    right: 12px;
    z-index: 100;
    display: none;
}

.common_floatingBnr.is-visible {
    display: block;
}
@media screen and (max-width: 1199px) {
    .common_floatingBnr.is-visible {
        display: none;
    }
}

.common_floatingBnrInner {
    position: relative;
}

.common_floatingBnrLink:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.common_floatingBnrCloseBtn {
    width: 26px;
    height: 26px;
    position: absolute;
    bottom: calc(100% + 4px);
    right: 0;
    background: none;
}

.common_floatingBnrCloseBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.common_floatingBnrCloseBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/floating-bnr-close-icon.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    cursor: pointer;
}

.common_fixed_btns {
    display: none;
}
@media screen and (max-width: 1199px) {
    .common_fixed_btns {
        display: flex;
        border-top: 1px solid #d1dae1;
        gap: 10px;
        justify-content: center;
        position: fixed;
        bottom: 0;
        left: 0;
        z-index: 100;
        width: 100%;
        padding: 10px 0;
        background-color: #fff;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .common_fixed_btns {
        margin: 50px 0 0;
    }
}
@media screen and (max-width: 767px) {
    .common_fixed_btns {
        margin: 20px 0 0;
    }
}

.common_fixed_dlBtn {
    background-color: #0e6eab;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .common_fixed_dlBtn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.common_fixed_dlBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-dl-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .common_fixed_dlBtn::before {
        width: 13px;
        height: 13px;
    }
}
.common_fixed_dlBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.common_fixed_mailBtn {
    background-color: #3aa131;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .common_fixed_mailBtn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.common_fixed_mailBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-mail-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .common_fixed_mailBtn::before {
        width: 13px;
        height: 13px;
    }
}
.common_fixed_mailBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.commonFooter {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    border-top: 1px solid #d1dae1;
    display: flex;
    justify-content: space-between;
    padding: 31px 20px;
    box-sizing: border-box;
}
@media screen and (max-width: 1199px) {
    .commonFooter {
        flex-wrap: wrap;
        gap: 56px;
        width: 100%;
        margin: 0 auto;
        padding: 48px 24px 100px;
        flex-direction: column;
    }
}

@media screen and (max-width: 1199px) {
    .commonFooter_copyright {
        order: 2;
    }
}

.commonFooter_copyrightText {
    color: #2d2d2d;
    font-size: 0.6875rem;
    font-weight: 450;
    line-height: 1.8;
}

.commonFooterMenu {
    display: flex;
    gap: 32px;
    margin: 0 48px 0 0;
}
@media screen and (max-width: 1199px) {
    .commonFooterMenu {
        order: 1;
        flex-wrap: wrap;
        gap: 16px;
    }
}

@media screen and (max-width: 1199px) {
    .commonFooterMenu_item {
        width: 100%;
    }
}

.commonFooterMenu_link {
    color: #222;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.39px;
}
@media screen and (max-width: 1199px) {
    .commonFooterMenu_link {
        font-size: 0.75rem;
        line-height: 1.75;
        letter-spacing: 0.36px;
    }
}

.commonFooterMenu_link:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

@media screen and (min-width: 1200px) {
    .commonFooter {
        flex-wrap: nowrap;
    }

    .commonFooter_copyright,
    .commonFooterMenu {
        flex-shrink: 0;
    }

    .commonFooter_copyrightText,
    .commonFooterMenu_link {
        white-space: nowrap;
    }

    .commonFooterMenu {
        flex-wrap: nowrap;
    }
}

.commonFooterMenu_link-targetBlank::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    transform: translateY(2px);
}

.commonFooter_about {
    padding: 32px 0;
}
@media screen and (max-width: 1199px) {
    .commonFooter_about {
        padding: 48px 0 40px;
    }
}

.commonFooter_aboutBox {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px 32px;
    align-items: center;
    padding-inline: 20px;
    box-sizing: border-box;
}
@media screen and (max-width: 767px) {
    .commonFooter_aboutBox {
        width: 100%;
        margin: 0 auto;
        padding-inline: 24px;
        gap: 16px;
        grid-template-columns: 1fr;
    }
}

/* .commonFooter_aboutCol {
    width: calc(50% - 16px);
} */
@media screen and (max-width: 1199px) {
    .commonFooter_aboutCol {
        width: 100%;
    }
}

@media screen and (max-width: 1199px) {
    .commonFooter_logoImg {
        width: 231px;
        height: auto;
    }
}

.commonFooter_aboutText {
    margin: 16px 0 0;
    color: #222;
    font-size: 1.0625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .commonFooter_aboutText {
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}

.commonFooter_aboutTable {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 24px;
}
@media screen and (max-width: 1199px) {
    .commonFooter_aboutTable {
        gap: 10px 32px;
    }
}

.commonFooter_aboutTableTerm {
    width: 56px;
    color: #444;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.39px;
}
@media screen and (max-width: 1199px) {
    .commonFooter_aboutTableTerm {
        width: 50px;
        color: #222;
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

.commonFooter_aboutTableDescription {
    width: calc(100% - 80px);
    color: #222;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.39px;
}
@media screen and (max-width: 1199px) {
    .commonFooter_aboutTableDescription {
        width: calc(100% - 82px);
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

.commonFooter_aboutLink {
    border-radius: 5px;
    overflow: hidden;
    border: 1px solid #fff;
    background: #e6edf5;
    display: flex;
    gap: 16px;
    align-items: center;
}
@media screen and (max-width: 1199px) {
    .commonFooter_aboutLink {
        gap: 7px;
    }
}

.commonFooter_ctaCol:first-child {
    flex-shrink: 0;
}

.commonFooter_ctaCol.-column2 {
    flex: 1;
    min-width: 0;
    margin-top: 8px;
}
@media screen and (max-width: 767px) {
    .commonFooter_ctaCol {
        width: 100%;
        flex: none;
    }
    /* 法人TOPフッターに合わせて全幅の区切り線を入れる */
    .commonFooter_ctaCol.-column2 {
        margin-inline: -24px;
        padding: 10px 24px 0;
    }
}

.commonFooter_aboutLink:hover {
    opacity: 1;
    text-decoration: none;
}

.commonFooter_aboutLink_col-first {
    width: 106px;
}
@media screen and (max-width: 1199px) {
    .commonFooter_aboutLink_col-first {
        width: 100px;
    }
}

.commonFooter_aboutLink_col-second {
    width: calc(100% - 176px);
}
@media screen and (max-width: 1199px) {
    .commonFooter_aboutLink_col-second {
        width: calc(100% - 116px);
    }
}

.commonFooter_aboutLinkImg {
    width: 100%;
    height: auto;
}

.commonFooter_aboutLink_title {
    color: #166c9d;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: -0.3px;
}
@media screen and (max-width: 1199px) {
    .commonFooter_aboutLink_title {
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

.commonFooter_aboutLink_title:hover {
    color: #0e6eab;
    text-decoration: underline;
}

.commonFooter_aboutLink_title::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    transform: translateY(2px);
}

@media screen and (max-width: 1199px) {
    .commonFooter_aboutLink_title::after {
        margin-left: 0;
    }
}

.commonFooter_aboutLink_text {
    color: #222;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.42px;
    margin: 4px 0 0;
}
@media screen and (max-width: 767px) {
    .commonFooter_aboutLink_text {
        display: none;
    }
}

.commonFooter_aboutLink:hover .commonFooter_aboutLink_text {
    text-decoration: none;
}

.commonFooter_cta {
    border-top: 1px solid #d1dae1;
    padding: 64px 0 56px;
}
@media screen and (max-width: 1199px) {
    .commonFooter_cta {
        padding: 72px 0 24px;
    }
}
@media screen and (max-width: 767px) {
    /* サービスロゴ上の余白は40px */
    .commonFooter_cta {
        padding: 40px 0 24px;
    }
}

.commonFooter_ctaBox {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: 50px;
    padding-inline: 20px;
    box-sizing: border-box;
}
@media screen and (max-width: 767px) {
    .commonFooter_ctaBox {
        flex-wrap: wrap;
        /* ロゴ列とメニュー列の間は法人TOPフッターと同じ40px */
        gap: 0 40px;
        width: 100%;
        margin: 0 auto;
        padding-inline: 24px;
    }
}

.commonFooter_ctaLogoImg {
    max-width: 100%;
    height: auto;
}

@media screen and (max-width: 1199px) {
    .commonFooter_ctaLogoImg {
        width: 314px;
        max-width: 100%;
    }
}

.commonFooter_ctaListBox {
    display: flex;
    gap: 72px;
}
@media screen and (max-width: 767px) {
    .commonFooter_ctaListBox {
        flex-wrap: wrap;
        gap: 24px;
    }
}

.commonFooter_ctaListBox.commonFooter_ctaListBox-recruiting {
}

.commonFooter_ctaListBox.commonFooter_ctaListBox-recruiting .commonFooter_ctaList {
    display: block;
}

.commonFooter_ctaListBox.commonFooter_ctaListBox-recruiting li + li {
    margin: 20px 0 0;
}
@media screen and (max-width: 767px) {
    .commonFooter_ctaListBox.commonFooter_ctaListBox-recruiting li + li {
        margin: 10px 0 0;
    }
}

.commonFooter_ctaMailBtn {
    background-color: #3aa131;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 56px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
    white-space: nowrap;
}
.commonFooter_ctaMailBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-mail-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
.commonFooter_ctaMailBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.commonFooter_ctaMailBtn {
    margin: 32px 0 0;
}
@media screen and (max-width: 767px) {
    .commonFooter_ctaMailBtn {
        display: none;
    }
}

.commonFooter_ctaDlBtn {
    background-color: #0e6eab;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 56px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
    white-space: nowrap;
}
.commonFooter_ctaDlBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-dl-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
.commonFooter_ctaDlBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.commonFooter_ctaDlBtn {
    margin: 10px 0 0;
}
@media screen and (max-width: 767px) {
    .commonFooter_ctaDlBtn {
        display: none;
    }
}

.commonFooter_ctaList {
    display: flex;
    gap: 20px;
}

.commonFooter_ctaList li + li {
    /* margin: 20px 0 0; */
}

@media screen and (max-width: 767px) {
    .commonFooter_ctaListBox:not(.commonFooter_ctaListBox-recruiting) .commonFooter_ctaList {
        display: flex;
        flex-wrap: wrap;
        gap: 16px 0;
        width: 100%;
    }
    .commonFooter_ctaListBox:not(.commonFooter_ctaListBox-recruiting) .commonFooter_ctaListItem {
        width: 50%;
    }
    .commonFooter_ctaListBox:not(.commonFooter_ctaListBox-recruiting) .commonFooter_ctaList li + li {
        margin: 0;
    }
}

.commonFooter_ctaListLink {
    color: #222;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.48px;
}

.commonFooter_ctaListLink:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.commonFooter_ctaListLink-targetBlank::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin-left: 4px;
    transform: translateY(2px);
}

.commonFooter_ctaListDescription-afterTerm {
    margin: 20px 0 0;
}
@media screen and (max-width: 1199px) {
    .commonFooter_ctaListDescription-afterTerm {
        margin: 10px 0 0;
    }
}

.commonFooter_ctaListTerm {
    color: #222;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .commonFooter_ctaListTerm {
        font-size: 1rem;
        line-height: 1.75;
        letter-spacing: 0.48px;
        display: block;
    }
}

.commonFooter_ctaListDescription-afterDescription {
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .commonFooter_ctaListDescription-afterDescription {
        margin: 10px 0 0;
    }
}

.commonFooter_ctaListDescription .commonFooter_ctaListLink {
    color: #222;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 1;
}
@media screen and (max-width: 1199px) {
    .commonFooter_ctaListDescription .commonFooter_ctaListLink {
        font-size: 0.75rem;
        line-height: 1.5;
        letter-spacing: 0.36px;
    }
}

.commonFooter_ctaLogo {
    display: block;
    margin-top: 3px;
}

.commonFooter_ctaLogo:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.commonFooter_cta-linkList {
    margin-top: 28px;
    list-style: none;
    padding: 0;
    margin-left: 0;
}
.commonFooter_cta-linkList-item {
    margin-top: 10px;
    display: flex;
    border-radius: 5px;
    overflow: hidden;
    background: #e9f0f7;
}
.commonFooter_cta-linkList-item:first-child {
    margin-top: 0;
}
.commonFooter_cta-linkList-item.-inactive dt a {
    color: #888;
    pointer-events: none;
}
.commonFooter_cta-linkList-fig {
    flex-shrink: 0;
    width: 106px;
}
.commonFooter_cta-linkList-fig img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.commonFooter_cta-linkList-item dl {
    padding: 13px 18px;
    margin: 0;
}
.commonFooter_cta-linkList-item dt {
    color: #0e6eab;
    font-size: 15px;
    font-weight: 600;
}
.commonFooter_cta-linkList-item dt a {
    color: inherit;
    text-decoration: none;
}
.commonFooter_cta-linkList-item dt a:hover {
    text-decoration: underline;
}
.commonFooter_cta-linkList-item dd {
    font-size: 13px;
    font-weight: 300;
    line-height: 1.5;
    margin: 0;
}
.commonFooter_cta-linkList-item dd a {
    color: #0e6eab;
    text-decoration: underline;
}
@media screen and (max-width: 767px) {
    .commonFooter_cta-linkList {
        margin-top: 24px;
    }
    .commonFooter_cta-linkList-item dt {
        font-size: 0.75rem;
        line-height: 1.5;
    }
    .commonFooter_cta-linkList-item dd {
        font-size: 0.75rem;
    }
}
@media screen and (max-width: 767px) {
    .commonFooter_cta-linkList-item {
        margin-top: 8px;
    }
}

@media screen and (max-width: 1170px) {
    #hamburger {
        position: fixed;
        top: 0;
        right: 0;
        z-index: 999;
        width: 25px;
        padding: 10px 10px 2px;
        cursor: pointer;
        border-left: 1px solid #d1dae1;
        overflow: hidden;
    }
}

@media screen and (max-width: 1170px) {
    .hamburgerBar {
        height: 2px;
        background: #fff;
        display: block;
        margin-bottom: 6px;
        transition: all 400ms cubic-bezier(1, 0, 0, 1);
        transition-timing-function: cubic-bezier(1, 0, 0, 1);
    }
}

@media screen and (max-width: 1170px) {
    .hamburgerBar {
        background: #1b7fbe;
        transition-duration: 0.5s;
    }
}

@media screen and (max-width: 1170px) {
    #hamburger.is-open .hamburgerBar-first {
        transform: translate(0, 8px) rotate(45deg);
        -webkit-transform: translate(0, 8px) rotate(45deg);
    }
}

@media screen and (max-width: 1170px) {
    #hamburger.is-open .hamburgerBar-second {
        transform: translate(-20px, 0);
        -webkit-transform: translate(-20px, 0);
        opacity: 0;
    }
}

@media screen and (max-width: 1170px) {
    #hamburger.is-open .hamburgerBar-third {
        transform: translate(0, -8px) rotate(-45deg);
        -webkit-transform: translate(0, -8px) rotate(-45deg);
    }
}

.commonHeaderBelt {
    width: 100%;
    min-height: 174px;
    background-image: url(../../img/recruiting/common-header-belt-bg.png);
    background-size: cover;
    background-position: center;
    padding: 0 0 36px;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt {
        width: calc(100% - 48px);
        min-height: 156px;
        background-image: url(../../img/recruiting/common-header-belt-bg-sp.png);
        padding: 0 24px 24px;
    }
}

/* 縦に長いバージョン */
.commonHeaderBelt-verticalExpansion {
    background-image: url(../../img/recruiting/common-header-belt-vertical-expansion-bg.png);
    background-size: cover;
    background-position: center;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt-verticalExpansion {
        background-image: url(../../img/recruiting/common-header-belt-vertical-expansion-bg-sp.png);
    }
}

.commonBreadcrumb {
    padding: 16px 30px 0;
    display: flex;
}
@media screen and (max-width: 1199px) {
    .commonBreadcrumb {
        padding: 15px 0 0;
    }
}

.commonBreadcrumb_item {
    color: #444;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.39px;
}
@media screen and (max-width: 1199px) {
    .commonBreadcrumb_item {
        font-size: 0.625rem;
        letter-spacing: 0.3px;
    }
}

.commonBreadcrumb_item-arrow::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-white.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 5px;
    height: 8.5px;
    margin: 0 8px 1px;
}
@media screen and (max-width: 1199px) {
    .commonBreadcrumb_item-arrow::before {
        margin: 0 6px 1px;
    }
}

.commonBreadcrumb_link {
    color: #444;
}

.commonHeaderBelt_title {
    color: #222;
    text-align: center;
    font-size: 2.5rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.2px;
    margin: 18px 0 0;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        margin: 23px 0 0;
    }
}

.commonHeaderBelt_title-afterSubTitle {
    margin: 2px 0 0;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt_title-afterSubTitle {
        margin: 4px 0 0;
    }
}

.commonHeaderBelt_subTitle {
    color: #0e6eab;
    text-align: center;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.54px;
    margin: 21px 0 0;
    display: block;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt_subTitle {
        font-size: 0.75rem;
        letter-spacing: 0.36px;
        margin: 24px 0 0;
    }
}

.commonHeaderBelt_box {
    max-width: 1200px;
    width: 100%;
    margin: 36px auto 0;
    padding: 64px 0 24px;
    border-radius: 16px;
    background: #fff;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .commonHeaderBelt_box {
        width: calc(100% - 48px);
        padding: 40px 24px 24px;
    }
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_box {
        margin: 24px auto;
        padding: 14px 16px;
        width: calc(100% - 32px + 24px);
        transform: translateX(-12px);
    }
}

.commonHeaderBelt_block {
    display: flex;
    justify-content: center;
    gap: 80px;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_block {
        flex-wrap: wrap;
        gap: 0;
    }
}

.commonHeaderBelt_col-first {
    width: 360px;
    text-align: center;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .commonHeaderBelt_col-first {
        width: 40%;
    }
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_col-first {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}

.commonHeaderBelt_col-first_question {
    color: #222;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: -0.5px;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_col-first_question {
        font-size: 1.125rem;
        line-height: 1.75;
        letter-spacing: 0.54px;
    }
}

.commonHeaderBelt_col-first_img {
    margin: 36px 0 0;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_col-first_img {
        margin: unset;
        width: 47px;
        height: auto;
    }
}

.commonHeaderBelt_col-second {
    width: calc(100% - 600px);
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .commonHeaderBelt_col-second {
        width: 60%;
    }
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_col-second {
        width: 100%;
    }
}

.commonHeaderBelt_col-first_example {
    color: #222;
    font-size: 1.25rem;
    line-height: 1;
    letter-spacing: 0.6px;
    display: inline-block;
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .commonHeaderBelt_col-first_example {
        display: inline;
    }
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_col-first_example {
        font-size: 0.875rem;
        line-height: 1;
        letter-spacing: 0.42px;
    }
}

.commonHeaderBelt_col-first_example-afterList {
    margin: 24px 0 0;
}

.commonHeaderBelt_col-first_exampleList {
    margin: 10px 0 0;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_col-first_exampleList {
        margin: 8px 0 0;
    }
}

.commonHeaderBelt_col-first_exampleList li + li {
    margin: 4px 0 0;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_col-first_exampleList li + li {
        margin: 8px 0 0;
    }
}

.commonHeaderBelt_col-first_exampleItem {
    color: #222;
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: -0.1px;
    position: relative;
    padding: 0 0 0 23px;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_col-first_exampleItem {
        font-size: 0.875rem;
        line-height: 1.5;
        letter-spacing: 0.42px;
        padding: 0 0 0 19px;
    }
}

.commonHeaderBelt_col-first_exampleItem::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-check-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 6px;
    left: 0;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_col-first_exampleItem::before {
        top: 0;
    }
}

.commonHeaderBelt_cta {
    min-width: 800px;
    width: -moz-fit-content;
    width: fit-content;
    margin: 50px auto 0;
    padding: 42px 80px 40px;
    border-radius: 8px;
    background: #f2f6fa;
    position: relative;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .commonHeaderBelt_cta {
        min-width: unset;
        width: auto;
        padding: 42px 16px 40px;
    }
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta {
        min-width: unset;
        width: calc(100% - 32px);
        margin: 32px 0 0;
        padding: 16px;
    }
}

.commonHeaderBelt_cta::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-chevron-double-right-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 29px;
    height: 40px;
    position: absolute;
    bottom: calc(100% - 14.5px);
    left: calc(50% - 20px);
    transform: rotate(90deg);
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta::before {
        width: 15px;
        height: 20px;
        bottom: calc(100% - 7.5px);
        left: calc(50% - 10px);
    }
}

.commonHeaderBelt_cta_logoImg {
    mix-blend-mode: multiply;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_logoImg {
        width: 210px;
        height: auto;
    }
}

.commonHeaderBelt_cta_title {
    color: #222;
    font-size: 1.25rem;
    font-weight: 300;
    line-height: 1.5;
    text-align: center;
    letter-spacing: -0.1px;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_title {
        font-size: 0.875rem;
    }
}

.commonHeaderBelt_cta_titleStrong {
    font-size: 1.5rem;
    font-weight: bold;
    margin: 0 0 0 9px;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_titleStrong {
        font-size: 0.875rem;
    }
}

@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_title-upper {
        display: inline-block;
        margin: 0 0 10px;
    }
}

.commonHeaderBelt_cta_marker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.commonHeaderBelt_cta_bubble {
    margin: 30px 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_bubble {
        margin: 8px 0 0;
    }
}

.commonHeaderBelt_cta_bubbleText {
    color: #222;
    text-align: center;
    font-size: 1.0625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_bubbleText {
        color: #444;
        font-size: 0.75rem;
        line-height: 1.5;
        letter-spacing: 0.36px;
    }
}

.commonHeaderBelt_cta_bubble::before,
.commonHeaderBelt_cta_bubble::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-cta-bubble.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 16px;
    height: 18px;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_bubble::before,
    .commonHeaderBelt_cta_bubble::after {
        width: 13px;
    }
}

.commonHeaderBelt_cta_bubble::after {
    transform: scale(-1, 1);
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_bubble::after {
        transform: scale(-1, 1);
    }
}

.commonHeaderBelt_cta_btns {
    display: flex;
    gap: 16px;
    justify-content: center;
    margin: 15px 0 0 0;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_btns {
        gap: 10px;
        margin: 10px 0 0 0;
    }
}

.commonHeaderBelt_cta_dlBtn {
    background-color: #0e6eab;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt_cta_dlBtn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.commonHeaderBelt_cta_dlBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-dl-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt_cta_dlBtn::before {
        width: 13px;
        height: 13px;
    }
}
.commonHeaderBelt_cta_dlBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_dlBtn {
        letter-spacing: -0.4px;
        font-size: 0.75rem;
        height: 36px;
    }
}

@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_dlBtn::before {
        display: none;
    }
}

.commonHeaderBelt_cta_mailBtn {
    background-color: #3aa131;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt_cta_mailBtn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.commonHeaderBelt_cta_mailBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-mail-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt_cta_mailBtn::before {
        width: 13px;
        height: 13px;
    }
}
.commonHeaderBelt_cta_mailBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_mailBtn {
        letter-spacing: -0.4px;
        font-size: 0.75rem;
        height: 36px;
    }
}

@media screen and (max-width: 767px) {
    .commonHeaderBelt_cta_mailBtn::before {
        display: none;
    }
}

.commonHeaderBelt_cta_notion {
    padding: 0 0 0 18px;
    position: relative;
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.36px;
    width: -moz-fit-content;
    width: fit-content;
    margin: 16px auto 0;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt_cta_notion {
        line-height: 1.5;
    }
}

.commonHeaderBelt_cta_notion::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.commonHeaderBelt_text {
    color: #222;
    text-align: center;
    font-size: 1.0625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.51px;
    margin: 10px 0 0;
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_text {
        font-size: 0.75rem;
        letter-spacing: 0.36px;
        margin: 23px 0 0;
    }
}

.commonHeaderBelt_point {
    max-width: 800px;
    width: 100%;
    margin: 24px auto 0;
    border-radius: 8px;
    background: #fff;
    padding: 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .commonHeaderBelt_point {
        max-width: 460px;
        width: 428px;
        padding: 16px;
    }
}
@media screen and (max-width: 767px) {
    .commonHeaderBelt_point {
        margin: 10px auto 0;
        padding: 16px;
        width: calc(100% - 32px);
        gap: 13px;
    }
}

.commonHeaderBelt_point::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-discovery-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 40px;
    height: 44px;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt_point::before {
        width: 26px;
        height: 28px;
    }
}

.commonHeaderBelt_pointText {
    color: #222;
    font-size: 1.25rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.6px;
}
@media screen and (max-width: 1199px) {
    .commonHeaderBelt_pointText {
        font-size: 0.875rem;
        line-height: 1.5;
        letter-spacing: 0.42px;
        width: calc(100% - 39px);
    }
}

.commonHeaderBelt_pointTextMarker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.common_jobInformation {
    max-width: 1200px;
    width: 100%;
    margin: 16px auto 0;
    display: flex;
    justify-content: flex-start;
    gap: 56px 48px;
    flex-wrap: wrap;
}
@media screen and (max-width: 1299px) {
    .common_jobInformation {
        max-width: 1000px;
    }
}
@media screen and (max-width: 999px) {
    .common_jobInformation {
        max-width: 460px;
        gap: 24px;
    }
}
@media screen and (max-width: 767px) {
    .common_jobInformation {
        margin: 16px auto 0;
        padding: 0 24px;
        width: calc(100% - 48px);
    }
}

.common_jobInformation_column {
    width: calc((100% - 96px) / 3);
}
@media screen and (max-width: 999px) {
    .common_jobInformation_column {
        width: 100%;
    }
}

.common_jobInformation_columnInner:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.common_jobInformation_img {
    width: 100%;
    height: auto;
    border-radius: 8px;
}

.common_jobInformation_imgBox {
    position: relative;
}

.common_jobInformation_logoThumb {
    position: absolute;
    bottom: -1px;
    right: 0;
    width: 104px;
    height: 56px;
    background: #fff;
    border-radius: 5px 0 8px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 767px) {
    .common_jobInformation_logoThumb {
        width: 76px;
        height: 37px;
        padding: 6px 8px;
    }
}

@media screen and (max-width: 767px) {
    .common_jobInformation_logoThumbImg {
        height: auto;
        width: auto;
        max-width: 100%;
        max-height: 100%;
    }
}

.common_jobInformation_companyName {
    display: inline-block;
    margin: 16px 0 0;
    color: #222;
    font-size: 0.75rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.36px;
}

.common_jobInformation_title {
    margin: 8px 0 0;
    color: #222;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.48px;
    padding: 0 0 0 24px;
    position: relative;
}

.common_jobInformation_title::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-circle-arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 18px;
    height: 18px;
    margin: 0 8px 0 0;
    transform: translateY(3px);
    position: absolute;
    top: 0;
    left: 0;
}

.common_jobInformation_table {
    margin: 16px 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 4px 24px;
}

.common_jobInformation_tableTerm {
    width: 50px;
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.36px;
}

.common_jobInformation_tableDescription {
    width: calc(100% - 74px);
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.36px;
}

.common_jobInformation_tableIcon-blue {
    background-color: #0e6eab;
    border-radius: 100px;
    padding: 2px 10px 3px;
    color: #fff;
    font-size: 0.75rem;
    font-weight: bold;
    line-height: 1;
}

.common_jobInformation_tableIcon-orange {
    background-color: #d38137;
    border-radius: 100px;
    padding: 2px 10px 3px;
    color: #fff;
    font-size: 0.75rem;
    font-weight: bold;
    line-height: 1;
}

@media screen and (max-width: 767px) {
    .common_problemSolving {
        padding: 0 24px;
    }
}

.common_problemSolving_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    margin: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        margin: 60px 0 24px;
    }
}

.common_problemSolving_box {
    max-width: 1200px;
    width: 100%;
    display: flex;
    gap: 20px;
    margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .common_problemSolving_box {
        max-width: 460px;
        flex-wrap: wrap;
    }
}
@media screen and (max-width: 767px) {
    .common_problemSolving_box {
        flex-wrap: wrap;
    }
}

.common_problemSolving_box-has3Items {
    gap: 48px;
}
@media screen and (min-width: 768px) and (max-width: 1299px) {
    .common_problemSolving_box-has3Items {
        max-width: 1000px;
    }
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_box-has3Items {
        max-width: 460px;
        gap: 16px;
    }
}

.common_problemSolving_col {
    flex: 1 1 0;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_col {
        flex: 0 1 auto;
    }
}

.common_problemSolving_colInner {
    border-radius: 4px;
    border: 1px solid #d1dae1;
    background: #fff;
    padding: 24px 28px;
    display: block;
}

.common_problemSolving_colInner:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.common_problemSolving_colTitle {
    margin: 10px 0 0;
    color: #0e6eab;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.6px;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_colTitle {
        margin: 12px 0 0;
    }
}

.common_problemSolving_text {
    color: #222;
    font-size: 0.9375rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.45px;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_text {
        margin: 12px 0 0;
    }
}

.common_problemSolving_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .common_problemSolving_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.common_problemSolving_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.common_problemSolving_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.common_problemSolving_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.common_problemSolving_button {
    padding: 10px 30px;
    width: 100%;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_button {
        margin: 12px 0 0;
    }
}

.common_problemSolving_button::before {
    width: 11px;
    height: 11px;
    top: calc(50% - 5.5px);
    right: 27px;
}

.common_problemSolving_button:hover {
    opacity: 1;
}

.common_problemSolving_checkPoint {
    max-width: 1200px;
    width: 1080px;
    margin: 56px auto 0;
    border-radius: 4px;
    background: #f2f6fa;
    padding: 32px 40px 32px 80px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .common_problemSolving_checkPoint {
        max-width: 460px;
        width: 412px;
        padding: 24px;
    }
}
@media screen and (max-width: 767px) {
    .common_problemSolving_checkPoint {
        width: calc(100% - 96px);
        padding: 24px;
        margin: 40px 24px 0;
    }
}
@media screen and (max-width: 767px) {
    .common_problemSolving_checkPoint img {
        width: 100%;
        height: auto;
    }
}

.common_problemSolving_checkPointBox {
    display: flex;
    gap: 40px;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_checkPointBox {
        display: block;
    }
}

.common_problemSolving_checkPointQuestion {
    color: #222;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: 0.54px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_checkPointQuestion {
        line-height: 1.5;
        gap: 8px;
    }
}

.common_problemSolving_checkPointQuestion::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-discovery.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 33px;
    height: 35px;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_checkPointQuestion::before {
        width: 32px;
        height: 32px;
    }
}

.common_problemSolving_checkPointAnswer {
    color: #222;
    font-size: 1rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.48px;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_checkPointAnswer {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
    }
}

.common_problemSolving_checkPointAnswer-afterText {
    margin: 0;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_checkPointAnswer-afterText {
        margin: 10px 0 0;
    }
}

.common_problemSolving_checkPointNotice {
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1.4;
    letter-spacing: 0.24px;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .common_problemSolving_checkPointNotice {
        line-height: 1.5;
        letter-spacing: -0.03em;
        margin: 10px 0 0;
    }
}

.common_problemSolving_checkPointButton {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
}
@media screen and (max-width: 767px) {
    .common_problemSolving_checkPointButton {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.common_problemSolving_checkPointButton::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.common_problemSolving_checkPointButton[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.common_problemSolving_checkPointButton:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.common_problemSolving_checkPointButton {
    padding: 16px 26px 16px 12px; /* 文言調整のため独自の余白 */
    margin: 24px 0 0;
    letter-spacing: 0;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .common_problemSolving_checkPointButton {
        margin: 26px auto 0;
    }
}
@media screen and (max-width: 767px) {
    .common_problemSolving_checkPointButton {
        margin: 26px 0 0;
        line-height: 1.5;
        padding: 10px 60px 10px 32px;
    }
}

@media screen and (max-width: 767px) {
    .common_problemSolving_checkPointButton::before {
        right: 29px;
    }
}

@media screen and (max-width: 1199px) {
    .common_problemSolving_checkPointImg {
        margin: 10px auto 0;
        display: block;
    }
}

.common_problemSolving_marker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.common_faq {
    padding: 0 0 72px 0;
}
@media screen and (max-width: 767px) {
    .common_faq img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .common_faq {
        padding: 0 24px 60px;
    }
}

.common_faq_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    margin: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .common_faq_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        margin: 40px 0 16px;
    }
}

.common_faq_box {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (max-width: 1199px) {
    .common_faq_box {
        max-width: 460px;
    }
}

.common_faq_block {
    border-bottom: #d1dae1 1px solid;
}

.common_faq_block:first-child {
    border-top: #d1dae1 1px solid;
}

.common_faq_question {
    color: #222;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.48px;
    padding: 16px 0;
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}
@media screen and (max-width: 1199px) {
    .common_faq_question {
        padding: 8px 0 16px 16px;
        font-size: 1rem;
        align-items: start;
    }
}

.common_faq_question::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/faq-question-icon-before.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
}
@media screen and (max-width: 1199px) {
    .common_faq_question::before {
        margin-top: 4px;
    }
}

.common_faq_question::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-circle-arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 16px;
    height: 16px;
    position: absolute;
    top: calc(50% - 8px);
    right: 16px;
    transform: rotate(90deg);
}
@media screen and (max-width: 1199px) {
    .common_faq_question::after {
        top: 12px;
    }
}

@media screen and (max-width: 1199px) {
    .common_faq_questionText {
        padding: 0 40px 0 0;
        width: calc(100% - 66px);
    }
}

.common_faq_block.is-active .common_faq_question::after {
    transform: rotate(270deg);
}

.common_faq_answer {
    padding: 0 35px 40px;
    display: none;
}
@media screen and (max-width: 1199px) {
    .common_faq_answer {
        padding: 0 16px 24px 40px;
    }
}

.common_faq_answer::after {
    content: "";
    display: block;
    clear: both;
}

.common_faq_answer p + p {
    margin: 8px 0 0;
}

.common_faq_block.is-active .common_faq_answer {
    display: block;
}

.common_faq_answerText {
    color: #222;
    font-size: 0.9375rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.45px;
}

.common_faq_answerTextLink {
    color: #0e6eab;
    text-decoration: underline;
}
@media screen and (max-width: 1199px) {
    .common_faq_answerTextLink {
        text-decoration: none;
    }
}

.common_faq_answerButton-green {
    background-color: #3aa131;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .common_faq_answerButton-green {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.common_faq_answerButton-green::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-mail-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .common_faq_answerButton-green::before {
        width: 13px;
        height: 13px;
    }
}
.common_faq_answerButton-green:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.common_faq_answerButton-green {
    height: 56px;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .common_faq_answerButton-green {
        width: -moz-fit-content;
        width: fit-content;
        padding: 0 15px;
        height: 40px;
    }
}

.common_faq_answerButton-blue {
    background-color: #0e6eab;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .common_faq_answerButton-blue {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.common_faq_answerButton-blue::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-dl-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .common_faq_answerButton-blue::before {
        width: 13px;
        height: 13px;
    }
}
.common_faq_answerButton-blue:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.common_faq_answerButton-blue {
    height: 56px;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .common_faq_answerButton-blue {
        width: -moz-fit-content;
        width: fit-content;
        padding: 0 15px;
        height: 40px;
    }
}

.common_faq_answerImg {
    float: right;
    margin: 0 0 0 78px;
}
@media screen and (max-width: 1199px) {
    .common_faq_answerImg {
        float: unset;
        margin: 0;
    }
}

@media screen and (max-width: 1199px) {
    .common_faq_answerText-afterImg {
        margin: 16px 0 0;
    }
}

.common_faq_heading {
    padding: 40px 0 16px;
    color: #222;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.72px;
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (max-width: 1199px) {
    .common_faq_heading {
        font-size: 1.125rem;
        line-height: 1.5;
        letter-spacing: 0.54px;
        padding: 24px 0 16px;
        max-width: 460px;
    }
}

.common_companyLogo {
    margin: 40px 0 0;
}

.common_companyLogo_text {
    color: #222;
    text-align: center;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.6px;
}
@media screen and (max-width: 767px) {
    .common_companyLogo_text {
        font-size: 0.9375rem;
        padding: 0 18px;
    }
}

.common_companyLogo_box {
    margin: 0 auto;
    max-width: 1300px;
    width: 100%;
}
@media screen and (min-width: 768px) and (max-width: 1299px) {
    .common_companyLogo_box {
        max-width: 1000px;
    }
}
@media screen and (max-width: 767px) {
    .common_companyLogo_box {
        display: flex;
        max-width: 460px;
        overflow: hidden;
    }
}

.common_companyLogo_img {
    width: 100%;
    height: auto;
}
@media screen and (max-width: 767px) {
    .common_companyLogo_img {
        width: auto;
        max-width: -moz-fit-content;
        max-width: fit-content;
        height: 90px;
        will-change: transform;
    }
}

@media screen and (max-width: 767px) {
    .common_companyLogo_img-first {
        animation: loop-1 100s linear -50s infinite;
        backface-visibility: hidden;
        will-change: transform;
    }
}

@media screen and (max-width: 767px) {
    .common_companyLogo_img-second {
        animation: loop-2 100s linear infinite;
    }
}

@keyframes loop-1 {
    0% {
        transform: translateX(100%);
    }
    100% {
        transform: translateX(-100%);
    }
}
@keyframes loop-2 {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-200%);
    }
}
.common_companyLogo_box.is-paused .common_companyLogo_img-first,
.common_companyLogo_box.is-paused .common_companyLogo_img-second {
    animation-play-state: paused;
}

.common_companyLogo_playButton {
    display: block;
    margin: 16px 30px 16px auto;
    background: none;
}
@media screen and (min-width: 768px) {
    .common_companyLogo_playButton {
        display: none;
    }
}

.common_companyLogo_playButton::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/company-logo-stop-button.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 60px;
    height: 40px;
}

.common_companyLogo_playButton.is-paused::before {
    background-image: url(../../img/recruiting/company-logo-play-button.svg);
}

.common_usefulData_img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    border: 6px solid #fff;
    box-sizing: border-box;
}

.common_usefulData_box {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: flex-start;
    gap: 56px 48px;
    flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
    .common_usefulData_box img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1299px) {
    .common_usefulData_box {
        max-width: 1000px;
    }
}
@media screen and (max-width: 999px) {
    .common_usefulData_box {
        max-width: 460px;
        gap: 24px;
    }
}
@media screen and (max-width: 767px) {
    .common_usefulData_box {
        padding: 0 24px;
        width: calc(100% - 48px);
    }
}

.common_usefulData_col {
    width: calc((100% - 96px) / 3);
}
@media screen and (max-width: 999px) {
    .common_usefulData_col {
        width: 100%;
    }
}

.common_usefulData_colInner {
    display: block;
}

.common_usefulData_colInner:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.common_usefulData_text {
    margin: 24px 0 0;
    color: #222;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.48px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    height: 48px; /* 2行分の高さ */
}
@media screen and (max-width: 999px) {
    .common_usefulData_text {
        display: inline-block;
        -webkit-box-orient: initial;
        overflow: auto;
        -webkit-line-clamp: auto;
        height: unset;
    }
}

.common_usefulData_btn {
    background-color: #0e6eab;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .common_usefulData_btn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.common_usefulData_btn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-dl-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .common_usefulData_btn::before {
        width: 13px;
        height: 13px;
    }
}
.common_usefulData_btn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.common_usefulData_btn {
    width: 200px;
    height: 44px;
    font-size: 1rem;
    margin: 16px 0 0;
}

.common_usefulData_btn:hover {
    opacity: 1;
}

.commonTab_container {
    margin: 72px 0 0;
}
@media screen and (max-width: 1199px) {
    .commonTab_container {
        margin: 0;
    }
}

.commonTab_navWrapper {
    position: relative;
}

.commonTab_navWrapper::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    border-bottom: 1px solid #0e6eab;
    z-index: 3;
}

.commonTab_nav {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0 auto;
    max-width: 1200px;
    gap: 10px;
}
@media screen and (max-width: 1199px) {
    .commonTab_nav {
        padding: 6px 8px 0;
        background: #0e6eab;
        gap: 6px;
    }
}

.commonTab_navItem {
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: center;
    height: 50px;
    cursor: pointer;
    background-color: #f0f0f0;
    border-top: 1px solid #f0f0f0;
    border-left: 1px solid #f0f0f0;
    border-right: 1px solid #f0f0f0;
    border-radius: 4px 4px 0 0;
    position: relative;
    z-index: 1;
    top: 1px;
}
@media screen and (max-width: 1199px) {
    .commonTab_navItem {
        height: 44px;
        border: none;
        background: none;
    }
}

.commonTab_navItem:hover {
    background-color: #e6edf5;
    border-top: 1px solid #e6edf5;
    border-left: 1px solid #e6edf5;
    border-right: 1px solid #e6edf5;
    transition-duration: 0.2s;
}

.commonTab_navItem.is-active {
    background-color: white;
    border-top: 1px solid #0e6eab;
    border-left: 1px solid #0e6eab;
    border-right: 1px solid #0e6eab;
    border-bottom: none;
    z-index: 3;
}
@media screen and (max-width: 1199px) {
    .commonTab_navItem.is-active {
        border: none;
    }
}

.commonTab_navItemText {
    color: #0e6eab;
    text-align: center;
    font-size: 15px;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.45px;
}
@media screen and (max-width: 1199px) {
    .commonTab_navItemText {
        color: #fff;
        font-size: 10px;
        font-weight: bold;
        line-height: 1.5;
        letter-spacing: -0.5px;
    }
}

.commonTab_navItem.is-active .commonTab_navItemText {
    color: #222;
    font-weight: bold;
    margin-top: -1px; /* 押下時、字が下がって見えるため調整 */
}
@media screen and (max-width: 1199px) {
    .commonTab_navItem.is-active .commonTab_navItemText {
        color: #0e6eab;
    }
}

.commonTab_contentPane {
    display: none;
}

.commonTab_contentPane.is-active {
    display: block;
}

.commonTab_content {
    position: relative;
    z-index: 1;
}

.recTop_fv {
    background-image: url(../../img/recruiting/fv-bg.png);
    background-size: cover;
    background-position: center;
    overflow-x: clip;
}
@media screen and (max-width: 1199px) {
    .recTop_fv {
        background-image: unset;
    }
}

.recTop_fv_box {
    max-width: 1180px;
    width: 100%;
    margin: 0 auto;
    height: 480px;
}
@media screen and (max-width: 1199px) {
    .recTop_fv_box {
        margin: unset;
        height: unset;
        text-align: center;
    }
}

.recTop_fv_mainImg {
    position: relative;
}

.recTop_fv_mainImg::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/fv-main-img.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 516px;
    height: 523px;
    position: absolute;
    bottom: -43px;
    right: -60px;
}
@media screen and (min-width: 830px) and (max-width: 1199px) {
    .recTop_fv_mainImg::before {
        display: none;
    }
}
@media screen and (max-width: 829px) {
    .recTop_fv_mainImg::before {
        width: 370px;
        height: 470px;
        top: 456px;
        right: calc(50% - 185px);
    }
}

.recTop_fv_contents {
    padding: 60px 0 0 26px;
}
@media screen and (min-width: 830px) and (max-width: 1199px) {
    .recTop_fv_contents {
        background-image: url(../../img/recruiting/fv-bg-md.png);
        background-size: cover;
        height: 466px;
        padding: 48px 0 0;
    }
}
@media screen and (max-width: 829px) {
    .recTop_fv_contents {
        padding: 0;
        background-image: url(../../img/recruiting/fv-bg-sp.png);
        background-size: cover;
        margin: -10px 0 0;
        height: 800px;
    }
}
.recTop_fv_contentsImg-second {
    padding-top: 7px;
}
@media screen and (min-width: 830px) and (max-width: 1199px) {
    .recTop_fv_contentsImg-second {
        padding-left: 25px;
    }
}
@media screen and (max-width: 829px) {
    .recTop_fv_contentsImg-second {
        padding-left: 0;
        padding-top: 13px;
    }
}
@media screen and (min-width: 830px) and (max-width: 1199px) {
    .recTop_fv_contentsImg-first,
    .recTop_fv_contentsImg-second,
    .recTop_fv_contentsImg-third {
        display: block;
    }
}
@media screen and (max-width: 829px) {
    .recTop_fv_contentsImg-first,
    .recTop_fv_contentsImg-second,
    .recTop_fv_contentsImg-third {
        transform: translateY(42px);
        display: block;
        margin: 0 auto;
    }
}

@media screen and (max-width: 1199px) {
    .recTop_fv_contentsImg-first {
        width: 375px;
        height: 128px;
    }
}

@media screen and (max-width: 1199px) {
    .recTop_fv_contentsImg-second {
        width: 314px;
        height: 105px;
    }
}

@media screen and (max-width: 1199px) {
    .recTop_fv_contentsImg-third {
        width: 340px;
        height: 75px;
    }
}

.recTop_fv_stats {
    display: flex;
    align-items: flex-end;
    gap: 10px;
    margin-top: 11px;
}
@media screen and (min-width: 830px) and (max-width: 1199px) {
    .recTop_fv_stats {
        align-items: flex-start;
        flex-direction: column;
        padding-top: 24px;
        gap: 0;
        margin-top: 0;
    }
}
@media screen and (max-width: 829px) {
    .recTop_fv_stats {
        align-items: center;
        flex-direction: column;
        padding-top: 24px;
        gap: 0;
        margin-top: 0;
    }
}
@media screen and (max-width: 829px) {
    .recTop_fv_stats {
        transform: translateY(42px);
    }
    .recTop_fv_contentsImg-third {
        transform: none;
    }
}

.recTop_fv_user {
    margin: 0;
}
@media screen and (min-width: 830px) and (max-width: 1199px) {
    .recTop_fv_user {
        padding-left: 25px;
    }
}
@media screen and (max-width: 829px) {
    .recTop_fv_user {
        padding-left: 0;
    }
}
.recTop_fv_user > span {
    display: flex;
    align-items: flex-end;
    background: #fff;
    width: fit-content;
    border-radius: 5px;
    height: 30px;
    color: #0e6eab;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.2;
    padding: 0 10px 4px;
}
@media screen and (max-width: 1199px) {
    .recTop_fv_user > span {
        font-size: 16px;
        justify-content: center;
        white-space: nowrap;
        width: 314px;
        box-sizing: border-box;
        padding-bottom: 5px;
        height: 41px;
        letter-spacing: 0.1em;
    }
}
.recTop_fv_user .num {
    font-size: 52px;
    font-family: "Oswald", sans-serif;
    letter-spacing: 0.03em;
    -webkit-text-stroke: 8px #fff;
    text-stroke: 8px #fff;
    paint-order: stroke;
    padding: 0 10px;
    margin-bottom: -4px;
}
@media screen and (max-width: 1199px) {
    .recTop_fv_user .num {
        font-size: 44px;
        position: relative;
        top: 4px;
        margin-bottom: 0;
        letter-spacing: 0.1em;
        padding: 0 5px 0 10px;
    }
}
.recTop_fv_user sup {
    font-size: 10px;
    margin: 0;
    position: relative;
    top: -1.5em;
    vertical-align: baseline;
}
@media screen and (max-width: 1199px) {
    .recTop_fv_user sup {
        font-size: 12px;
        top: -1.4em;
    }
}
.recTop_fv_contentsImg-third {
    margin-bottom: -8px;
}
@media screen and (max-width: 1199px) {
    .recTop_fv_contentsImg-third {
        margin-bottom: 0;
        width: 339px;
        margin-left: 20px;
    }
}

@media screen and (min-width: 830px) and (max-width: 1199px) {
    .recTop_fv_contentsInner {
        width: 100%;
        max-width: 830px;
        margin: 0 auto;
        position: relative;
    }
}

@media screen and (min-width: 830px) and (max-width: 1199px) {
    .recTop_fv_contentsInner::before {
        content: "";
        display: inline-block;
        background-image: url(../../img/recruiting/fv-main-img.png);
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        width: 493px;
        height: 519px;
        bottom: -129px;
        right: -32px;
    }
}

.recTop_fv_btns {
    margin: 25px 0 0;
    display: flex;
    gap: 16px;
}
@media screen and (max-width: 1199px) {
    .recTop_fv_btns {
        display: none;
        margin-top: 17px;
    }
}

.recTop_fv_dlBtn {
    background-color: #0e6eab;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recTop_fv_dlBtn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.recTop_fv_dlBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-dl-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .recTop_fv_dlBtn::before {
        width: 13px;
        height: 13px;
    }
}
.recTop_fv_dlBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.recTop_fv_mailBtn {
    background-color: #3aa131;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recTop_fv_mailBtn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.recTop_fv_mailBtn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-mail-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .recTop_fv_mailBtn::before {
        width: 13px;
        height: 13px;
    }
}
.recTop_fv_mailBtn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.recTop_fv_notice {
    color: #444;
    font-family: "Hiragino Kaku Gothic Pro";
    font-size: 0.625rem;
    font-weight: 300;
    line-height: 150%;
    letter-spacing: 0.3px;
    margin: 24px 0 0;
}
@media screen and (min-width: 830px) and (max-width: 1199px) {
    .recTop_fv_notice {
        margin: 9px 0 0 28px;
        text-align: left;
    }
}
@media screen and (max-width: 829px) {
    .recTop_fv_notice {
        transform: translate(-28px, 26px);
    }
}

.recTop_reason {
    margin: 40px 0 0;
    padding: 72px 0 0;
    background: #f2f6fa;
}
@media screen and (max-width: 767px) {
    .recTop_reason {
        padding: 60px 24px 20px;
    }
}
@media screen and (max-width: 767px) {
    .recTop_reason img {
        width: 100%;
        height: auto;
    }
}

.recTop_reason_title {
    text-align: center;
    color: #222;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
}
@media screen and (max-width: 1199px) {
    .recTop_reason_title {
        margin: 0 0 24px;
    }
}

.recTop_reason_titleImg {
    mix-blend-mode: multiply;
}

.recTop_reason_block {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto; /*吹き出し画像分*/
}
@media screen and (max-width: 1199px) {
    .recTop_reason_block {
        max-width: 460px;
    }
}

.recTop_reason_block-afterBlock {
    margin: 40px auto 0; /*吹き出し画像分*/
}

.recTop_reason_block-last {
    margin: 40px auto;
}
@media screen and (max-width: 1199px) {
    .recTop_reason_block-last {
        margin: 40px auto 0;
    }
}

.recTop_reason_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    gap: 80px;
}
@media screen and (max-width: 1199px) {
    .recTop_reason_box {
        flex-wrap: wrap;
        gap: 16px;
    }
}

.recTop_reason_textCol {
    width: calc(100% - 700px);
}
@media screen and (max-width: 1199px) {
    .recTop_reason_textCol {
        width: 100%;
        order: 1;
    }
}

.recTop_reason_imgCol {
    width: 620px;
    margin: 40px 0 -40px; /*吹き出し画像分*/
}
@media screen and (max-width: 1199px) {
    .recTop_reason_imgCol {
        margin: 0;
        order: 2;
    }
}

.recTop_reason_imgColImg {
    width: 100%;
    height: auto;
}

.recTop_reason_blockTitle {
    color: #222;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
}
@media screen and (max-width: 767px) {
    .recTop_reason_blockTitle {
        font-size: 1.5rem;
        margin: 24px 0 16px;
    }
}

.recTop_reason_text {
    color: #222;
    font-size: 1rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.48px;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .recTop_reason_text {
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}

.recTop_reason_marker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.recTop_reason_notion {
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.36px;
    counter-reset: recTop_reason_notionCounter;
    margin: 16px 0 0;
}

.recTop_reason_notionItem {
    padding: 0 0 0 24px;
    position: relative;
}

.recTop_reason_notionItem::before {
    content: "※" counter(recTop_reason_notionCounter);
    counter-increment: recTop_reason_notionCounter;
    position: absolute;
    top: 0;
    left: 0;
}

.recTop_reason_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .recTop_reason_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recTop_reason_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recTop_reason_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recTop_reason_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.recTop_reason_button {
    margin: 24px 0 0;
}
@media screen and (max-width: 1199px) {
    .recTop_reason_button {
        margin: 16px auto 0;
    }
}

@media screen and (max-width: 1199px) {
    .recTop_reason_button.pcOnly {
        display: none;
    }
}

@media screen and (min-width: 1200px) {
    .recTop_reason_button.spMdOnly {
        display: none;
    }
}

.recTop_reason_checkPoint {
    max-width: 1200px;
    width: 100%;
    margin: 56px auto 0;
    border-radius: 8px;
    background: #e6edf5;
}
@media screen and (max-width: 1199px) {
    .recTop_reason_checkPoint {
        max-width: 460px;
    }
}

@media screen and (max-width: 1199px) {
    .recTop_reason_block-afterCheckPoint {
        margin: 40px auto 0;
    }
}

.recTop_reason_checkPointBox {
    display: flex;
    gap: 32px;
    padding: 32px 64px;
}
@media screen and (max-width: 1199px) {
    .recTop_reason_checkPointBox {
        display: block;
        padding: 24px;
    }
}

.recTop_reason_checkPointQuestion {
    color: #444;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: 0.54px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 8px;
}

.recTop_reason_checkPointQuestion::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/reason-check-point-question-icon.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 35px;
    height: 34px;
    margin: 2px 0 0;
}
@media screen and (max-width: 1199px) {
    .recTop_reason_checkPointQuestion::before {
        width: 50px;
        height: 50px;
    }
}

.recTop_reason_checkPointAnswer {
    color: #222;
    font-size: 0.9375rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.48px;
    width: 720px;
}
@media screen and (max-width: 1199px) {
    .recTop_reason_checkPointAnswer {
        width: 100%;
        margin: 16px 0 0;
        font-size: 15px;
        line-height: 1.5;
        letter-spacing: 0.45px;
    }
}

.recTop_reason_checkPointLink {
    color: #0c7bc9;
    font-size: 0.875rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.42px;
    text-decoration-line: underline;
    margin: 8px 0 0;
}
@media screen and (max-width: 1199px) {
    .recTop_reason_checkPointLink {
        margin: 10px 0 0;
        display: inline-block;
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recTop_priceImg {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recTop_priceImg {
        width: auto;
        height: 438px;
        padding: 0 24px;
    }
}

.recTop_price_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    margin: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recTop_price_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        margin: 60px 0 24px;
    }
}

.recTop_price_box {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recTop_price_box {
        margin: 10px 0 10px;
    }
}
@media screen and (max-width: 767px) {
    .recTop_price_box {
        overflow-x: auto;
        display: block;
        margin: 8px auto 0;
    }
}

.recTop_price_guide {
    display: none;
}
@media screen and (max-width: 767px) {
    .recTop_price_guide {
        margin: 0 0 0 29px;
        display: flex;
        gap: 3px;
        align-items: center;
        justify-content: flex-start;
    }
}

.recTop_price_guide::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-price-guide.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 27px;
    height: 26px;
}

.recTop_price_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .recTop_price_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recTop_price_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recTop_price_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recTop_price_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
@media screen and (max-width: 767px) {
    .recTop_price_button {
        width: calc(100% - 48px);
        margin: 24px 24px 0;
    }
}

.recTop_introductionExample {
    padding: 0 0 64px 0;
}

.recTop_introductionExample_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    margin: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recTop_introductionExample_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        margin: 60px 0 24px;
    }
}

.recTop_introductionExample_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .recTop_introductionExample_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recTop_introductionExample_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recTop_introductionExample_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recTop_introductionExample_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
@media screen and (max-width: 767px) {
    .recTop_introductionExample_button {
        width: calc(100% - 48px);
        margin: 24px 24px 0;
    }
}

.recTop_flow {
    padding: 1px 0 64px;
    background: #f2f6fa;
}
@media screen and (max-width: 1199px) {
    .recTop_flow {
        padding: 1px 0 60px;
    }
}
@media screen and (max-width: 767px) {
    .recTop_flow {
        padding: 1px 26px 60px;
    }
}

.recTop_flow_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    margin: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recTop_flow_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        margin: 60px 0 24px;
    }
}

.recTop_flow_box {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: 66.67px;
}
@media screen and (max-width: 1199px) {
    .recTop_flow_box {
        max-width: 460px;
        flex-wrap: wrap;
        gap: 60px;
    }
}

.recTop_flow_col {
    width: 250px;
    text-align: center;
    position: relative;
}
@media screen and (max-width: 1199px) {
    .recTop_flow_col {
        width: 100%;
    }
}

.recTop_flow_col-arrow::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 25px;
    height: 16px;
    position: absolute;
    top: 110px;
    left: -18%;
}
@media screen and (max-width: 1199px) {
    .recTop_flow_col-arrow::before {
        top: unset;
        bottom: calc(100% + 20px);
        left: calc(50% - 12.5px);
        transform: rotate(90deg);
    }
}

.recTop_flow_colTitle {
    color: #222;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.6px;
    margin: 20px 0 0;
}
@media screen and (max-width: 1199px) {
    .recTop_flow_colTitle {
        margin: 16px 0 0;
    }
}

.recTop_flow_colText {
    color: #222;
    font-size: 0.9375rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.45px;
    text-align: left;
    margin: 5px 0 0;
}
@media screen and (max-width: 1199px) {
    .recTop_flow_colText {
        margin: 16px 0 0;
    }
}

.recTop_flow_tips {
    max-width: 1200px;
    width: 1184px;
    padding: 8px;
    margin: 40px auto 0;
    border-radius: 8px;
    background: #e6edf5;
    display: flex;
    gap: 38px;
    justify-content: flex-start;
    align-items: center;
}
@media screen and (max-width: 1199px) {
    .recTop_flow_tips {
        padding: 16px;
        max-width: 460px;
        width: 428px;
        display: block;
    }
}
@media screen and (max-width: 767px) {
    .recTop_flow_tips {
        max-width: 100%;
        width: calc(100% - 32px);
    }
}

@media screen and (max-width: 1199px) {
    .recTop_flow_tipsColImg {
        width: 100%;
        height: auto;
    }
}

.recTop_flow_tipsTitle {
    color: #222;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.72px;
}
@media screen and (max-width: 1199px) {
    .recTop_flow_tipsTitle {
        font-size: 1.25rem;
        margin: 24px 0 0;
        letter-spacing: 0.6px;
    }
}

.recTop_flow_tipsText {
    color: #222;
    font-size: 0.9375rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.45px;
    margin: 8px 0 0;
    max-width: 720px;
}
@media screen and (max-width: 1199px) {
    .recTop_flow_tipsText {
        line-height: 1.75;
    }
}

.recTop_flow_tipsNotion {
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.36px;
    margin: 8px 0 0;
}
@media screen and (max-width: 1199px) {
    .recTop_flow_tipsNotion {
        color: #222;
        font-size: 0.75rem;
        line-height: 2;
        margin: 16px 0 0;
    }
}

.recTop_flow_tipsNotionItem {
    padding: 0 0 0 16px;
    position: relative;
}

.recTop_flow_tipsNotionItem::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.recTop_flow_tipsButton {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .recTop_flow_tipsButton {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recTop_flow_tipsButton::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recTop_flow_tipsButton[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recTop_flow_tipsButton:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
@media screen and (max-width: 767px) {
    .recTop_flow_tipsButton {
        margin: 24px auto 0;
    }
}

.recTop_serviceFeatures {
    border-bottom: #d1dae1 solid 1px;
    padding: 0 0 64px 0;
}
@media screen and (max-width: 767px) {
    .recTop_serviceFeatures img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recTop_serviceFeatures {
        padding: 0 24px 60px;
    }
}

.recTop_serviceFeatures_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    margin: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recTop_serviceFeatures_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        margin: 64px 0 24px;
    }
}

.recTop_serviceFeatures_box {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: 48px;
}
@media screen and (max-width: 1199px) {
    .recTop_serviceFeatures_box {
        max-width: 460px;
        flex-wrap: wrap;
        gap: 24px;
    }
}

.recTop_serviceFeatures_col {
    width: calc((100% - 96px) / 3);
}
@media screen and (max-width: 1199px) {
    .recTop_serviceFeatures_col {
        width: 100%;
    }
}

.recTop_serviceFeatures_img {
    width: 100%;
    height: auto;
}

.recTop_serviceFeatures_caption {
    display: inline-block;
    margin: 16px 0 0;
    color: #222;
    font-size: 0.75rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.36px;
}
@media screen and (max-width: 1199px) {
    .recTop_serviceFeatures_caption {
        color: #444;
    }
}

.recTop_serviceFeatures_colTitle {
    margin: 8px 0 0;
    color: #222;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recTop_serviceFeatures_colTitle {
        margin: 8px 0 0;
    }
}

/* TODO: 対象にリンクが付与されたらオンにする
.recTop_serviceFeatures_colTitle::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-circle-arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 18px;
    height: 18px;
    margin: 0 8px 0 0;
    transform: translateY(3px);
}
*/
.recTop_serviceFeatures_text {
    color: #222;
    font-size: 0.9375rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.45px;
    margin: 8px 0 0;
    display: inline-block;
}
@media screen and (max-width: 1199px) {
    .recTop_serviceFeatures_text {
        margin: 16px 0 0;
    }
}

.recTop_serviceFeatures_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .recTop_serviceFeatures_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recTop_serviceFeatures_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recTop_serviceFeatures_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recTop_serviceFeatures_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
@media screen and (max-width: 767px) {
    .recTop_serviceFeatures_button {
        margin: 24px auto 0;
    }
}

.recTop_report {
    background-image: url(../../img/recruiting/report-bg.png);
    background-size: cover;
    padding: 1px 0 64px 0;
}
@media screen and (max-width: 1199px) {
    .recTop_report {
        padding: 1px 24px 60px;
        background-position: -300px;
    }
}

.recTop_report_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    margin: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recTop_report_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        margin: 60px 0 24px;
    }
}

.recTop_report_text {
    color: #222;
    text-align: center;
    font-size: 1rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recTop_report_text {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
    }
}

.recTop_report_box {
    max-width: 1200px;
    width: 100%;
    margin: 32px auto 0;
    display: flex;
    flex-wrap: wrap;
    gap: 16px 32px;
}
@media screen and (max-width: 1199px) {
    .recTop_report_box {
        max-width: 460px;
        margin: 16px auto 0;
        gap: 8px;
        flex-wrap: wrap;
    }
}

.recTop_report_block {
    border-radius: 8px;
    background: #fff;
    display: flex;
    width: calc(50% - 32px);
    padding: 8px;
    align-items: center;
    gap: 20px;
}
@media screen and (max-width: 1199px) {
    .recTop_report_block {
        width: calc(100% - 16px);
    }
}

@media screen and (max-width: 1199px) {
    .recTop_report_blockCol-first {
        width: 100px;
        height: 66px;
        position: relative;
        overflow: hidden;
    }
}

@media screen and (max-width: 1199px) {
    .recTop_report_blockCol-second {
        width: calc(100% - 120px);
    }
}

@media screen and (max-width: 1199px) {
    .recTop_report_blockImg {
        width: auto;
        height: 100%;
        max-width: none;
        max-height: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
}

.recTop_report_blockTitle {
    color: #222;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.2;
    padding: 0 10px 0 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
}
@media screen and (max-width: 1199px) {
    .recTop_report_blockTitle {
        font-size: 0.75rem;
        line-height: 1.5;
        letter-spacing: 0.36px;
    }
}

.recTop_report_blockTitle::after {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    margin: 0 0 0 5px;
}
@media screen and (max-width: 1199px) {
    .recTop_report_blockTitle::after {
        margin: 0;
        transform: translateY(2px);
    }
}

.recTop_report_blockDate {
    color: #222;
    font-size: 0.625rem;
    font-weight: 300;
    line-height: 1.5;
}
@media screen and (max-width: 1199px) {
    .recTop_report_blockDate {
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

.recTop_report_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
}
@media screen and (max-width: 767px) {
    .recTop_report_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recTop_report_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recTop_report_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recTop_report_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
@media screen and (max-width: 767px) {
    .recTop_report_button {
        margin: 24px auto 0;
    }
}

.recTop_news {
    padding: 0 0 72px 0;
}
@media screen and (max-width: 1199px) {
    .recTop_news {
        padding: 0 24px 40px;
    }
}

.recTop_news_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    margin: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recTop_news_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
    }
}

.recTop_news_list {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (max-width: 1199px) {
    .recTop_news_list {
        max-width: 460px;
    }
}

.recTop_news_listItem {
    border-bottom: #d1dae1 1px solid;
}

.recTop_news_listItem:first-child {
    border-top: #d1dae1 1px solid;
}

.recTop_news_listLink {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 72px;
    padding: 16px 0;
}
@media screen and (max-width: 1199px) {
    .recTop_news_listLink {
        display: block;
        padding: 8px 0;
    }
}

.recTop_news_listDate {
    color: #0c7bc9;
    font-family: "Futura PT";
    font-size: 0.9375rem;
    font-style: normal;
    font-weight: 450;
    line-height: 1.3;
}

.recTop_news_listTitle {
    color: #222;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recTop_news_listTitle {
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        display: block;
        margin: 8px 0 0;
    }
}

.recService_about,
.recService_feature {
    counter-reset: recService_headingCounter;
}
@media screen and (max-width: 767px) {
    .recService_about img,
    .recService_feature img {
        width: 100%;
        height: auto;
    }
}

.recService_about_inner {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recService_about_inner {
        max-width: 460px;
    }
}
@media screen and (max-width: 767px) {
    .recService_about_inner {
        width: calc(100% - 48px);
        margin: 0 24px;
    }
}

.recService_about_title {
    padding: 72px 0 48px;
    text-align: center;
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
}
@media screen and (max-width: 1199px) {
    .recService_about_title {
        padding: 60px 0 24px;
        font-size: 1.25rem;
        letter-spacing: 0.6px;
    }
}

@media screen and (max-width: 1199px) {
    .recService_about_titleImg {
        width: 255px;
        height: auto;
    }
}

.recService_about_text {
    color: #222;
    text-align: center;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recService_about_text {
        font-size: 0.9375rem;
        line-height: 1.5;
        letter-spacing: 0.45px;
    }
}

.recService_about_textMarker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.recService_aboutImg {
    margin: 40px auto 0;
    display: block;
}
@media screen and (max-width: 1199px) {
    .recService_aboutImg {
        margin: 16px auto 0;
        width: 100%;
        height: auto;
    }
}

.recService_anchor {
    margin: 40px auto 0;
    max-width: 1064px;
    width: 100%;
    display: flex;
}
@media screen and (max-width: 1199px) {
    .recService_anchor {
        margin: 24px auto 0;
    }
}

.recService_anchorList {
    display: flex;
    gap: 8px;
    counter-reset: recService_anchorCounter;
    width: 100%;
}
@media screen and (max-width: 1199px) {
    .recService_anchorList {
        flex-wrap: wrap;
        gap: 16px;
        max-width: 260px;
        margin: 0 auto;
    }
}

.recService_anchorListItem {
    text-align: center;
    border-radius: 8px;
    border: 1px solid #d1dae1;
    background: #fff;
    width: calc((100% - 24px) / 3);
}
@media screen and (max-width: 1199px) {
    .recService_anchorListItem {
        width: 100%;
    }
}

.recService_anchorListLink {
    width: calc(100% - 40px);
    padding: 18px 20px 35px;
    display: block;
}
@media screen and (max-width: 1199px) {
    .recService_anchorListLink {
        padding: 11px 20px;
    }
}

.recService_anchorListLink::before {
    content: counter(recService_anchorCounter) ".";
    counter-increment: recService_anchorCounter;
    display: block;
    color: #0e6eab;
    font-size: 2.25rem;
    font-weight: bold;
    letter-spacing: 1.08px;
}
@media screen and (max-width: 1199px) {
    .recService_anchorListLink::before {
        font-size: 2rem;
        letter-spacing: 0.96px;
    }
}

.recService_anchorListLink:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.recService_anchorListText {
    color: #222;
    text-align: center;
    font-size: 1.0625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recService_anchorListText {
        font-size: 1rem;
        letter-spacing: 0.48px;
    }
}

.recService_textBlock {
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
}

.recService_textBlock p + p {
    margin: 16px 0 0;
}

.recService_heading {
    margin: 56px 0 24px;
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: flex-start;
}
@media screen and (max-width: 1199px) {
    .recService_heading {
        margin: 60px 0 16px;
        gap: 8px;
        align-items: flex-start;
    }
}

.recService_headingText {
    color: #222;
    font-size: 1.875rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.9px;
}
@media screen and (max-width: 1199px) {
    .recService_headingText {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        width: calc(100% - 50px);
    }
}

.recService_heading::before {
    content: counter(recService_headingCounter);
    counter-increment: recService_headingCounter;
    background-image: url(../../img/recruiting/heading-bg-circle.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 71px;
    height: 70px;
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width: 1199px) {
    .recService_heading::before {
        width: 34px;
        height: 34px;
        font-size: 1.25rem;
        font-weight: 450;
    }
}

.recService_text {
    color: #222;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recService_text {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
    }
}

.recService_textMarker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.recService_imgBlock {
    margin: 40px auto 0;
    max-width: 1200px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 24px 10px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recService_imgBlock img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recService_imgBlock img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recService_imgBlock {
        margin: 16px auto 0;
        gap: 16px;
    }
}

.recService_textBlock-afterImgBlock {
    margin: 40px auto 0;
}
@media screen and (max-width: 1199px) {
    .recService_textBlock-afterImgBlock {
        margin: 16px auto 0;
    }
}

.recService_notion {
    padding: 0 0 0 24px;
    position: relative;
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.36px;
}
@media screen and (max-width: 1199px) {
    .recService_notion {
        line-height: 1.5;
    }
}

.recService_notion::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.recService_notion-numbered {
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.36px;
    counter-reset: recService_notionCounter;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .recService_notion-numbered {
        line-height: 1.75;
    }
}

.recService_notion-numbered_item {
    padding: 0 0 0 24px;
    position: relative;
}

.recService_notion-numbered_item::before {
    content: "※" counter(recService_notionCounter);
    counter-increment: recService_notionCounter;
    position: absolute;
    top: 0;
    left: 0;
}

.recService_notion-numbered li + li {
    margin: 8px 0 0;
}

.recService_feature {
    background: #f2f6fa;
    padding: 0 0 72px;
    border-bottom: 3px solid #fff;
}
@media screen and (max-width: 1199px) {
    .recService_feature {
        padding: 0 0 40px;
        border-bottom: 2px solid #fff;
    }
}

.recService_feature_inner {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recService_feature_inner {
        max-width: 460px;
        padding: 0 24px;
    }
}
@media screen and (max-width: 767px) {
    .recService_feature_inner {
        width: calc(100% - 48px);
        padding: 0 24px;
    }
}

.recService_feature_title {
    padding: 72px 0 48px 0;
    text-align: center;
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
}
@media screen and (max-width: 1199px) {
    .recService_feature_title {
        padding: 60px 0 24px;
        font-size: 1.25rem;
        letter-spacing: 0.6px;
    }
}

.recService_feature_titleImg {
    mix-blend-mode: multiply;
}
@media screen and (max-width: 1199px) {
    .recService_feature_titleImg {
        width: 255px;
        height: auto;
    }
}

.recService_feature_anchor {
    margin: 0 -41px;
    max-width: 1282px;
    width: 1282px;
    display: flex;
}
@media screen and (max-width: 1281px) {
    .recService_feature_anchor {
        /*. ここの大きさのみイレギュラーなのでメディアクエリを変数化しない */
        max-width: unset;
        width: 100%;
        margin: 0 auto;
    }
}

.recService_feature_anchorList {
    display: flex;
    gap: 8px;
    counter-reset: recService_anchorCounter;
    width: 100%;
}
@media screen and (max-width: 1199px) {
    .recService_feature_anchorList {
        flex-wrap: wrap;
        gap: 8px;
        max-width: 260px;
        margin: 0 auto;
    }
}

.recService_feature_anchorListItem {
    text-align: center;
    border-radius: 8px;
    border: 1px solid #d1dae1;
    background: #fff;
    width: calc((100% - 32px) / 4);
}
@media screen and (max-width: 1199px) {
    .recService_feature_anchorListItem {
        width: 100%;
    }
}

.recService_feature_anchorListText {
    color: #222;
    text-align: center;
    font-size: 1.0625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: normal;
}
@media screen and (max-width: 1199px) {
    .recService_feature_anchorListText {
        font-size: 1rem;
    }
}

.recService_checkPoint {
    max-width: 1000px;
    width: 800px;
    padding: 40px 100px;
    background-color: #fff;
    border-radius: 8px;
    margin: 40px auto 0;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recService_checkPoint img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recService_checkPoint img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint {
        width: calc(100% - 48px);
        padding: 24px;
    }
}

.recService_checkPoint_heading1 {
    color: #444;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.6px;
    padding: 13px 0 0 65px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_heading1 {
        color: #222;
        font-size: 1.125rem;
        letter-spacing: 0.54px;
        width: calc(100% - 40px);
        padding: 13px 0 0 40px;
    }
}

.recService_checkPoint_heading1::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-discovery.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 33px;
    height: 35px;
    margin: 15px;
    position: absolute;
    top: 0;
    left: 0;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_heading1::before {
        width: 32px;
        height: 32px;
        margin: 15px 8px 0 0;
    }
}

.recService_checkPoint_box1 {
    display: flex;
    gap: 50px;
    margin: 40px 0 0;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_box1 {
        gap: 10px;
        margin: 16px 0 0;
        flex-wrap: wrap;
    }
}

.recService_checkPoint_box1Col-first {
    width: calc(100% - 370px);
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_box1Col-first {
        width: 100%;
    }
}

.recService_checkPoint_box1Col-second {
    width: 320px;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_box1Col-second {
        width: 100%;
    }
}

.recService_checkPoint_text {
    color: #222;
    font-size: 1rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_text {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
    }
}

.recService_checkPoint_text-afterText {
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_text-afterText {
        margin: 10px 0 0;
    }
}

.recService_checkPoint_marker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.recService_checkPoint_heading2 {
    color: #222;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.54px;
    margin: 40px 0 0;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_heading2 {
        font-size: 1rem;
        letter-spacing: 0.48px;
        margin: 26px 0 0;
    }
}

.recService_checkPoint_list {
    margin: 8px 0 0;
}

.recService_checkPoint_listItem {
    color: #242422;
    font-size: 0.9375rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.45px;
    position: relative;
    padding: 0 0 0 16px;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_listItem {
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

.recService_checkPoint_listItem::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    background: #ccc;
    border-radius: 7px;
    position: absolute;
    top: calc(50% - 3.5px);
    left: 0;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_listItem::before {
        width: 4px;
        height: 4px;
        border-radius: 4px;
        top: 8px;
        left: 2px;
    }
}

.recService_checkPoint_list li + li {
    margin: 8px 0 0;
}

.recService_checkPoint_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
}
@media screen and (max-width: 767px) {
    .recService_checkPoint_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recService_checkPoint_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recService_checkPoint_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recService_checkPoint_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.recService_checkPoint_button {
    margin: 40px 0 0;
    width: 426px;
    padding: 16px 26px 16px 12px;
    letter-spacing: 0.6px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recService_checkPoint_button {
        margin: 26px auto 0;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .recService_checkPoint_button {
        margin: 26px 0 0;
        line-height: 1.5;
        padding: 10px 60px 10px 32px;
        width: 100%;
    }
}

.recService_list {
    margin: 16px 0 0;
}

.recService_listItem {
    color: #242422;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.51px;
    position: relative;
    padding: 0 0 0 16px;
}
@media screen and (max-width: 1199px) {
    .recService_listItem {
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

.recService_listItem::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    background: #ccc;
    border-radius: 7px;
    position: absolute;
    top: calc(50% - 3.5px);
    left: 0;
}
@media screen and (max-width: 1199px) {
    .recService_listItem::before {
        width: 4px;
        height: 4px;
        border-radius: 4px;
        top: 8px;
        left: 2px;
    }
}

.recService_list li + li {
    margin: 8px 0 0;
}

.recService_checkPoint_box2 {
    display: flex;
    gap: 16px;
    align-items: center;
    margin: 58px 0 0;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_box2 {
        flex-wrap: wrap;
        margin: 16px 0 0;
    }
}

.recService_checkPoint_box2-afterBox {
    margin: 16px 0 0;
}

.recService_checkPoint_box2Col-first {
    width: 300px;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_box2Col-first {
        width: 100%;
    }
}

.recService_checkPoint_box2Col-second {
    width: calc(100% - 316px);
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_box2Col-second {
        width: 100%;
    }
}

.recService_checkPoint_box2Text {
    color: #222;
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_box2Text {
        font-size: 0.875rem;
        letter-spacing: 0.42px;
    }
}

.recService_checkPoint_box2Notion {
    padding: 0 0 0 18px;
    position: relative;
    color: #222;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.36px;
}
@media screen and (max-width: 1199px) {
    .recService_checkPoint_box2Notion {
        line-height: 1.5;
    }
}

.recService_checkPoint_box2Notion::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.recPricing_headerBelt {
    height: 134px;
    min-height: 134px;
}
@media screen and (max-width: 1199px) {
    .recPricing_headerBelt {
        height: 118px;
        min-height: 118px;
    }
}

.recPricing_about {
    padding: 72px 0 0;
}
@media screen and (max-width: 1199px) {
    .recPricing_about {
        padding: 60px 0 0;
    }
}
@media screen and (max-width: 767px) {
    .recPricing_about {
        width: calc(100% - 48px);
        margin: 0 24px;
    }
}

.recPricing_about_text {
    color: #222;
    text-align: center;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recPricing_about_text {
        text-align: left;
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
        margin: 0 0 16px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recPricing_about_text {
        text-align: center;
        padding: 0 10px;
    }
}

.recPricing_about_textMarker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
}

.recPricing_about_notion {
    margin: 16px 0 0;
}

@media screen and (max-width: 1199px) {
    .recPricing_about_notion li + li {
        margin: 8px 0 0;
    }
}

.recPricing_about_notionItem {
    padding: 0 0 0 16px;
    position: relative;
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.36px;
}
@media screen and (max-width: 1199px) {
    .recPricing_about_notionItem {
        font-size: 0.625rem;
        letter-spacing: 0.3px;
    }
}

.recPricing_about_notionItem::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recPricing_tableImg {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recPricing_tableImg {
        width: auto;
        height: 700px;
        padding: 0 20px;
    }
}

@media screen and (max-width: 1199px) {
    .recPricing_tableImgSub {
        width: 100%;
        height: auto;
    }
}

.recPricing_tableBoxMain {
    max-width: 1200px;
    width: 100%;
    margin: 16px auto 0;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recPricing_tableBoxMain {
        margin: 10px 0 10px;
    }
}
@media screen and (max-width: 767px) {
    .recPricing_tableBoxMain {
        overflow-x: auto;
        display: block;
        margin: 8px -20px 0;
        width: calc(100% + 40px);
    }
}

.recPricing_tableBoxSub {
    max-width: 1200px;
    width: 100%;
    margin: 16px auto 0;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recPricing_tableBoxSub {
        max-width: 460px;
        margin: 10px auto 10px;
    }
}

.recPricing_tableGuide {
    display: none;
}
@media screen and (max-width: 767px) {
    .recPricing_tableGuide {
        margin: 0 auto 0 0;
        display: flex;
        gap: 3px;
        align-items: center;
        justify-content: flex-start;
    }
}

.recPricing_tableGuide::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-price-guide.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 27px;
    height: 26px;
}

.recPricing_checkPoint {
    max-width: 1200px;
    width: 1110px;
    padding: 32px 40px 32px 50px;
    background-color: #f2f6fa;
    border-radius: 8px;
    margin: 40px auto 0;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recPricing_checkPoint img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recPricing_checkPoint img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recPricing_checkPoint {
        width: calc(100% - 32px - 16px);
        padding: 32px 16px;
        margin: 40px 8px 0;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recPricing_checkPoint {
        width: 428px;
        max-width: 460px;
        margin: 40px auto 0;
    }
}

.recPricing_checkPoint_box1 {
    display: flex;
    gap: 70px;
}
@media screen and (max-width: 1199px) {
    .recPricing_checkPoint_box1 {
        gap: 24px;
        flex-wrap: wrap;
    }
}

.recPricing_checkPoint_box1Col-first {
    width: calc(100% - 556px);
}
@media screen and (max-width: 1199px) {
    .recPricing_checkPoint_box1Col-first {
        width: 100%;
    }
}

.recPricing_checkPoint_box1Col-second {
    width: 486px;
}
@media screen and (max-width: 1199px) {
    .recPricing_checkPoint_box1Col-second {
        width: 100%;
    }
}

.recPricing_checkPoint_box1ColImg {
    width: 100%;
    height: auto;
}

.recPricing_checkPoint_heading1 {
    color: #222;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.54px;
    padding: 0 0 20px 41px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    .recPricing_checkPoint_heading1 {
        color: #222;
        font-size: 1.125rem;
        letter-spacing: 0.54px;
        width: calc(100% - 40px);
        padding: 4px 0 0 40px;
    }
}

.recPricing_checkPoint_heading1::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/pricing/icon-scout.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 33px;
    height: 33px;
    position: absolute;
    top: -4px;
    left: 0;
}
@media screen and (max-width: 1199px) {
    .recPricing_checkPoint_heading1::before {
        width: 32px;
        height: 32px;
        top: 0;
    }
}

.recPricing_checkPoint_text {
    color: #222;
    font-size: 1rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recPricing_checkPoint_text {
        font-size: 0.9375rem;
        line-height: 2;
        letter-spacing: 0.45px;
        margin: 20px 0 0;
    }
}

.recPricing_feature {
    counter-reset: recPricing_headingCounter;
}
@media screen and (max-width: 767px) {
    .recPricing_feature img {
        width: 100%;
        height: auto;
    }
}
.recPricing_feature {
    background: #f2f6fa;
    padding: 0 0 72px;
    border-bottom: 3px solid #fff;
}
@media screen and (max-width: 1199px) {
    .recPricing_feature {
        border-bottom: 2px solid #fff;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recPricing_feature {
        padding: 0 0 40px;
    }
}
@media screen and (max-width: 767px) {
    .recPricing_feature {
        padding: 0 24px 24px;
        width: calc(100% - 48px);
    }
}

.recPricing_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    padding: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recPricing_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        padding: 60px 0 24px;
    }
}

.recPricing_anchor {
    margin: 0 auto;
    max-width: 800px;
    width: 100%;
    display: flex;
}
@media screen and (max-width: 1199px) {
    .recPricing_anchor {
        margin: 24px auto 0;
    }
}

.recPricing_anchorList {
    display: flex;
    gap: 8px;
    counter-reset: recPricing_anchorCounter;
    width: 100%;
}
@media screen and (max-width: 1199px) {
    .recPricing_anchorList {
        flex-wrap: wrap;
        gap: 16px;
        max-width: 260px;
        margin: 0 auto;
    }
}

.recPricing_anchorListItem {
    text-align: center;
    border-radius: 8px;
    border: 1px solid #d1dae1;
    background: #fff;
    width: calc((100% - 24px) / 3);
}
@media screen and (max-width: 1199px) {
    .recPricing_anchorListItem {
        width: 100%;
    }
}

.recPricing_anchorListLink {
    width: calc(100% - 40px);
    padding: 18px 20px 35px;
    display: block;
}
@media screen and (max-width: 1199px) {
    .recPricing_anchorListLink {
        padding: 11px 20px;
    }
}

.recPricing_anchorListLink:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}

.recPricing_anchorListLink::before {
    content: counter(recPricing_anchorCounter) ".";
    counter-increment: recPricing_anchorCounter;
    display: block;
    color: #0e6eab;
    font-size: 2.25rem;
    font-weight: bold;
    letter-spacing: 1.08px;
}
@media screen and (max-width: 1199px) {
    .recPricing_anchorListLink::before {
        font-size: 2rem;
        letter-spacing: 0.96px;
    }
}

.recPricing_anchorListText {
    color: #222;
    text-align: center;
    font-size: 1.0625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: -0.4px;
}
@media screen and (max-width: 1199px) {
    .recPricing_anchorListText {
        font-size: 1rem;
        letter-spacing: 0.48px;
    }
}

.recPricing_textBlock {
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recPricing_textBlock {
        max-width: 460px;
    }
}

.recPricing_textBlock p + p {
    margin: 16px 0 0;
}

.recPricing_heading {
    margin: 56px 0 24px;
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: flex-start;
}
@media screen and (max-width: 1199px) {
    .recPricing_heading {
        margin: 60px 0 16px;
        gap: 8px;
        align-items: flex-start;
    }
}

.recPricing_headingText {
    color: #222;
    font-size: 1.875rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.9px;
}
@media screen and (max-width: 1199px) {
    .recPricing_headingText {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        width: calc(100% - 50px);
    }
}

.recPricing_heading::before {
    content: counter(recPricing_headingCounter);
    counter-increment: recPricing_headingCounter;
    background-image: url(../../img/recruiting/heading-bg-circle.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 71px;
    height: 70px;
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width: 1199px) {
    .recPricing_heading::before {
        width: 34px;
        height: 34px;
        font-size: 1.25rem;
        font-weight: 450;
    }
}

.recPricing_text {
    color: #222;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recPricing_text {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
    }
}

.recPricing_textMarker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
}

.recPricing_imgBlock {
    margin: 40px auto 0;
    max-width: 1200px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 24px 10px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recPricing_imgBlock img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recPricing_imgBlock img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recPricing_imgBlock {
        margin: 16px auto 0;
        gap: 16px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recPricing_imgBlock {
        max-width: 460px;
    }
}

.recPricing_notion {
    padding: 0 0 0 16px;
    position: relative;
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.36px;
}
@media screen and (max-width: 1199px) {
    .recPricing_notion {
        line-height: 1.5;
    }
}

.recPricing_notion::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.recPricing_textBlock-afterImgBlock {
    margin: 40px auto 0;
}
@media screen and (max-width: 1199px) {
    .recPricing_textBlock-afterImgBlock {
        margin: 16px auto 0;
    }
}

.recPricing_notion-numbered {
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.36px;
    counter-reset: recPricing_notionCounter;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .recPricing_notion-numbered {
        line-height: 1.75;
    }
}

.recPricing_notion-numbered_item {
    padding: 0 0 0 24px;
    position: relative;
}

.recPricing_notion-numbered_item::before {
    content: "※" counter(recPricing_notionCounter);
    counter-increment: recPricing_notionCounter;
    position: absolute;
    top: 0;
    left: 0;
}

.recPricing_notion-numbered li + li {
    margin: 8px 0 0;
}

.recRbr_flow {
    padding: 0 0 40px;
}

.recRbr_flow_title {
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
    padding: 72px 0 48px;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    .recRbr_flow_title {
        font-size: 1.25rem;
        letter-spacing: 0.6px;
        padding: 60px 0 24px;
    }
}

.recRbr_flow_box {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: 60px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_flow_box img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recRbr_flow_box img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recRbr_flow_box {
        flex-wrap: wrap;
        gap: 62px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_flow_box {
        max-width: 460px;
        margin: 0 auto;
    }
}
@media screen and (max-width: 767px) {
    .recRbr_flow_box {
        width: calc(100% - 48px);
        margin: 0 24px;
    }
}

.recRbr_flow_col {
    width: calc((100% - 120px) / 3);
}
@media screen and (max-width: 1199px) {
    .recRbr_flow_col {
        width: 100%;
    }
}

.recRbr_flow_colText {
    margin: 16px 0 0;
    color: #222;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recRbr_flow_colText {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
    }
}

.recRbr_flow_col-afterCol {
    position: relative;
}

.recRbr_flow_col-afterCol::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-chevron-double-right-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 30px;
    height: 38px;
    position: absolute;
    top: 71px;
    right: calc(100% + 15px);
}
@media screen and (max-width: 1199px) {
    .recRbr_flow_col-afterCol::before {
        top: unset;
        left: calc(50% - 19px);
        bottom: calc(100% + 16px);
        transform: rotate(90deg);
    }
}

.recRbr_about {
    background: #f2f6fa;
    padding: 0 0 72px;
}
@media screen and (max-width: 1199px) {
    .recRbr_about {
        padding: 0 24px 60px;
    }
}

.recRbr_about_title {
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
    padding: 56px 0 0;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    .recRbr_about_title {
        font-size: 1.25rem;
        letter-spacing: 0.6px;
        padding: 60px 0 24px;
    }
}

.recRbr_about_imgBlock {
    margin: 40px auto 0;
    max-width: 1200px;
    width: 100%;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_about_imgBlock img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recRbr_about_imgBlock img {
        width: 100%;
        height: auto;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_about_imgBlock {
        max-width: 460px;
    }
}
@media screen and (max-width: 1199px) {
    .recRbr_about_imgBlock {
        margin: 24px auto 0;
    }
}

@media screen and (max-width: 1199px) {
    .recRbr_about_imgBlock-afterTitle {
        margin: 0 auto;
    }
}

@media screen and (max-width: 767px) {
    .recRbr_about_imgBlock-expansionWidthSp {
        width: calc(100% + 32px);
        transform: translateX(-16px);
    }
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_about_block {
        max-width: 460px;
    }
}
@media screen and (max-width: 1199px) {
    .recRbr_about_block {
        margin: 0 auto;
    }
}

.recRbr_about_textBlock {
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
}

.recRbr_heading {
    color: #222;
    font-size: 1.875rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.9px;
    padding: 56px 0 24px;
}
@media screen and (max-width: 1199px) {
    .recRbr_heading {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        padding: 60px 0 16px;
    }
}

.recRbr_text {
    color: #222;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recRbr_text {
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}

.recRbr_textMarker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.recRbr_text-afterText {
    margin: 16px 0 0;
}

.recRbr_notionBox {
    border-radius: 8px;
    border: 6px solid #fff;
    padding: 24px 34px;
    margin: 40px 0 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_notionBox {
        padding: 24px 14px;
        margin: 24px 0 0;
    }
}

.recRbr_notionList li + li {
    margin: 8px 0 0;
}

.recRbr_notionItem {
    color: #242422;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.54px;
    position: relative;
    padding: 0 0 0 16px;
}
@media screen and (max-width: 1199px) {
    .recRbr_notionItem {
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

.recRbr_notionItem::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    background: #ccc;
    border-radius: 7px;
    position: absolute;
    top: calc(50% - 3.5px);
    left: 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_notionItem::before {
        width: 4px;
        height: 4px;
        border-radius: 4px;
        top: 8px;
        left: 2px;
    }
}

.recRbr_text-afterBox {
    margin: 40px 0 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_text-afterBox {
        margin: 24px 0 0;
    }
}

.recRbr_textLink {
    color: #0e6eab;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
    text-decoration: underline;
    display: inline-block;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_textLink {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
    }
}

.recRbr_about_block-afterBlock {
    margin: 40px 0 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_about_block-afterBlock {
        margin: 0 auto;
    }
}

@media screen and (max-width: 1199px) {
    .recRbr_merit {
        margin: 0 24px;
    }
}

.recRbr_merit_title {
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
    padding: 56px 0 40px;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_title {
        font-size: 1.25rem;
        letter-spacing: 0.6px;
        padding: 60px 0 24px;
    }
}

.recRbr_merit_point {
    display: flex;
    max-width: 800px;
    width: 100%;
    padding: 32px 0;
    margin: 0 auto;
    justify-content: center;
    align-items: center;
    gap: 22px;
    border-radius: 6px;
    border: 6px solid #e7eff2;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_point {
        padding: 16px;
        gap: 13px;
        border-radius: 8px;
        border: 4px solid #e7eff2;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_merit_point {
        max-width: 460px;
        width: 428px;
    }
}
@media screen and (max-width: 767px) {
    .recRbr_merit_point {
        width: calc(100% - 40px);
    }
}

.recRbr_merit_point::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-discovery-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 44px;
    height: 48px;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_point::before {
        width: 26px;
        height: 28px;
    }
}

.recRbr_merit_pointText {
    color: #222;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.6px;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_pointText {
        font-size: 1rem;
        letter-spacing: 0.48px;
        width: calc(100% - 39px);
    }
}

.recRbr_merit_block {
    border-radius: 8px;
    background: #f2f6fa;
    max-width: 1200px;
    width: 100%;
    margin: 40px auto 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_block {
        margin: 16px auto 0;
        width: calc(100% + 32px);
        transform: translateX(-16px);
    }
}

.recRbr_merit_block-afterBlock {
    margin: 24px auto 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_block-afterBlock {
        margin: 16px auto 0;
    }
}

.recRbr_merit_block-last {
    margin: 24px auto 40px;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_block-last {
        margin: 16px auto 0;
    }
}

.recRbr_merit_blockUpper {
    padding: 30px 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_blockUpper {
        padding: 30px 16px;
    }
}

.recRbr_merit_blockUpperBox {
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: 20px;
    align-items: center;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_merit_blockUpperBox {
        max-width: 460px;
        width: calc(100% - 32px);
    }
}
@media screen and (max-width: 767px) {
    .recRbr_merit_blockUpperBox {
        width: 100%;
    }
}

.recRbr_merit_blockUpperTitleText {
    color: #222;
    font-size: 1.875rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.9px;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_blockUpperTitleText {
        font-size: 1.25rem;
        letter-spacing: 0.6px;
        width: calc(100% - 110px);
    }
}

.recRbr_merit_blockUpperTitle-forRecruiter,
.recRbr_merit_blockUpperTitle-forJobSeeker {
    display: flex;
    gap: 20px;
    align-items: center;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_blockUpperTitle-forRecruiter,
    .recRbr_merit_blockUpperTitle-forJobSeeker {
        justify-content: flex-start;
    }
}

.recRbr_merit_blockUpperTitle-forRecruiter::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/review_based_recruiting/merit-block-upper-title-img01.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 90px;
    height: 90px;
}

.recRbr_merit_blockUpperTitle-forJobSeeker::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/review_based_recruiting/merit-block-upper-title-img02.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 90px;
    height: 90px;
}

.recRbr_merit_blockLower {
    border-top: 1px solid #d1dae1;
    padding: 50px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_blockLower {
        padding: 24px 16px 48px;
    }
}

.recRbr_merit_blockLowerBox {
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_merit_blockLowerBox {
        max-width: 460px;
        width: calc(100% - 32px);
    }
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_blockLowerBox {
        width: 100%;
    }
}

.recRbr_merit_blockLowerTitle {
    color: #0e6eab;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.72px;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_blockLowerTitle {
        font-size: 1rem;
        line-height: 1.75;
        letter-spacing: 0.48px;
    }
}

.recRbr_merit_blockLowerText {
    color: #222;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
    margin: 20px 0 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_blockLowerText {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
        margin: 8px 0 0;
    }
}

.recRbr_merit_blockLowerBox-afterBox {
    margin: 40px auto 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_merit_blockLowerBox-afterBox {
        margin: 24px auto 0;
    }
}

.recRbr_merit_blockLowerText-afterText {
    margin: 16px 0 0;
}

.recRbr_reviews {
    border-top: 1px solid #d1dae1;
    padding: 0 0 72px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_reviews img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recRbr_reviews img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews {
        padding: 0 24px 60px;
    }
}

.recRbr_reviews_title {
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
    padding: 56px 0 40px;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_title {
        font-size: 1.25rem;
        letter-spacing: 0.6px;
        padding: 45px 0 8px;
        text-align: left;
        margin: 0 auto;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_reviews_title {
        max-width: 460px;
    }
}

.recRbr_reviews_text {
    color: #222;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
    display: block;
    max-width: 800px;
    margin: 0 auto;
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_text {
        font-size: 0.9375rem;
        line-height: 1.5;
        letter-spacing: 0.45px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_reviews_text {
        max-width: 460px;
    }
}

.recRbr_reviews_notion {
    padding: 0 0 0 18px;
    position: relative;
    color: #222;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.36px;
    display: block;
    max-width: 800px;
    width: 782px;
    margin: 16px auto 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_notion {
        line-height: 1.5;
        width: unset;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_reviews_notion {
        max-width: 460px;
    }
}

.recRbr_reviews_notion::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.recRbr_reviews_box {
    margin: 40px 0 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_box {
        margin: 16px 0 0;
    }
}

.recRbr_reviews_block {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 40px;
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_block {
        flex-wrap: wrap;
        gap: 16px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_reviews_block {
        max-width: 460px;
    }
}

.recRbr_reviews_block-afterBlock {
    margin: 24px auto 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_block-afterBlock {
        margin: 40px auto 0;
    }
}

.recRbr_reviews_col-first {
    width: 374px;
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_col-first {
        width: 100%;
    }
}

.recRbr_reviews_col-second {
    width: calc(100% - 414px);
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_col-second {
        width: 100%;
    }
}

.recRbr_reviews_colTitle {
    color: #222;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_colTitle {
        font-size: 1rem;
        letter-spacing: 0.48px;
    }
}

.recRbr_reviews_colText {
    color: #222;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
    margin: 22px 0 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_colText {
        font-size: 0.75rem;
        line-height: 1.75;
        letter-spacing: 0.36px;
        margin: 8px 0 0;
    }
}

.recRbr_reviews_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
}
@media screen and (max-width: 767px) {
    .recRbr_reviews_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recRbr_reviews_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recRbr_reviews_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recRbr_reviews_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.recRbr_reviews_button {
    margin: 72px auto 0;
    width: 414px;
    padding: 16px 26px 16px 12px;
    letter-spacing: 0.2px;
}
@media screen and (max-width: 1199px) {
    .recRbr_reviews_button {
        max-width: 460px;
        width: 100%;
        margin: 26px auto 0;
    }
}
@media screen and (max-width: 767px) {
    .recRbr_reviews_button {
        line-height: 1.5;
        padding: 10px 60px 10px 32px;
    }
}

.recRbr_message {
    background-image: url(../../img/recruiting/review_based_recruiting/message-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 0 0 72px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_message img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recRbr_message img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recRbr_message {
        padding: 0 24px 60px;
    }
}

.recRbr_message_title {
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
    padding: 56px 0 40px;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    .recRbr_message_title {
        font-size: 1.25rem;
        letter-spacing: 0.1px;
        padding: 60px 0 24px;
        text-align: left;
        margin: 0 auto;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_message_title {
        max-width: 460px;
    }
}

.recRbr_message_box {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: 50px;
}
@media screen and (max-width: 1199px) {
    .recRbr_message_box {
        margin: 24px auto 0;
        flex-wrap: wrap;
        gap: 40px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recRbr_message_box {
        max-width: 460px;
    }
}

.recRbr_message_col-first {
    width: calc(100% - 430px);
}
@media screen and (max-width: 1199px) {
    .recRbr_message_col-first {
        width: 100%;
    }
}

.recRbr_message_col-first p + p {
    margin: 14px 0 0;
}
@media screen and (max-width: 1199px) {
    .recRbr_message_col-first p + p {
        margin: 16px 0 0;
    }
}

.recRbr_message_colText {
    color: #222;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recRbr_message_colText {
        font-size: 0.9375rem;
        line-height: 1.5;
        letter-spacing: 0.45px;
    }
}

.recRbr_message_col-second {
    width: 380px;
}
@media screen and (max-width: 1199px) {
    .recRbr_message_col-second {
        width: 100%;
    }
}

.recRbr_message_colImg {
    box-shadow: 0 0 20px 0 rgba(17, 68, 117, 0.1);
}

/*. 解決できる課題１〜４の範囲で使用 */
.recSolution_reason {
    background: #f2f6fa;
    counter-reset: recSolution_headingCounter;
}
@media screen and (max-width: 1199px) {
    .recSolution_reason {
        padding: 0 24px;
        width: calc(100% - 48px);
    }
}

.recSolution_reason-first {
    border-bottom: 1px solid #d1dae1;
    padding: 0 0 60px;
}
@media screen and (max-width: 1199px) {
    .recSolution_reason-first {
        padding: 0 24px 40px;
    }
}

.recSolution_reason_title {
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
    padding: 56px 0 40px;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    .recSolution_reason_title {
        padding: 60px 0 24px;
        font-size: 1.25rem;
        letter-spacing: 0.6px;
    }
}

.recSolution_reason_title-first {
    padding: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recSolution_reason_title-first {
        padding: 60px 0 24px;
    }
}

.recSolution_textBlock {
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_textBlock {
        max-width: 460px;
    }
}

.recSolution_textBlock-afterImgBlock {
    margin: 40px auto 0;
}
@media screen and (max-width: 1199px) {
    .recSolution_textBlock-afterImgBlock {
        margin: 16px auto 0;
    }
}

.recSolution_textBlock p + p {
    margin: 16px 0 0;
}

.recSolution_heading {
    color: #222;
    font-size: 1.875rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.9px;
    margin: 0 0 24px;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    .recSolution_heading {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        margin: 24px 0 16px;
        text-align: left;
    }
}

.recSolution_heading-numbered {
    margin: 0 0 24px;
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: flex-start;
}
@media screen and (max-width: 1199px) {
    .recSolution_heading-numbered {
        margin: 24px 0 16px;
        gap: 8px;
        align-items: flex-start;
    }
}

.recSolution_heading-numbered::before {
    content: counter(recSolution_headingCounter);
    counter-increment: recSolution_headingCounter;
    background-image: url(../../img/recruiting/heading-bg-circle.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 71px;
    height: 70px;
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width: 1199px) {
    .recSolution_heading-numbered::before {
        width: 34px;
        height: 34px;
        font-size: 1.25rem;
        font-weight: 450;
    }
}

.recSolution_heading-numbered_text {
    color: #222;
    font-size: 1.875rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.9px;
}
@media screen and (max-width: 1199px) {
    .recSolution_heading-numbered_text {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        width: calc(100% - 50px);
    }
}

.recSolution_heading-afterCheckPointBlock {
    padding: 70px 0 0;
}
@media screen and (max-width: 1199px) {
    .recSolution_heading-afterCheckPointBlock {
        padding: 24px 0 0;
    }
}

.recSolution_text {
    color: #222;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recSolution_text {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
    }
}

.recSolution_textMarker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.recSolution_notion {
    padding: 0 0 0 18px;
    position: relative;
    color: #222;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.36px;
}
@media screen and (max-width: 1199px) {
    .recSolution_notion {
        line-height: 1.5;
    }
}

.recSolution_notion::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.recSolution_notion-numbered {
    color: #222;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.36px;
    counter-reset: recService_notionCounter;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .recSolution_notion-numbered {
        line-height: 1.75;
    }
}

.recSolution_notion-numbered_item {
    padding: 0 0 0 32px;
    position: relative;
}

.recSolution_notion-numbered_item::before {
    content: "※" counter(recService_notionCounter);
    counter-increment: recService_notionCounter;
    position: absolute;
    top: 0;
    left: 0;
}

.recSolution_notion-numbered li + li {
    margin: 8px 0 0;
}

.recSolution_checkPoint_list {
    margin: 8px 0 0;
}

.recSolution_checkPoint_listItem {
    color: #242422;
    font-size: 0.9375rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.45px;
    position: relative;
    padding: 0 0 0 16px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_listItem {
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

.recSolution_checkPoint_listItem::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    background: #ccc;
    border-radius: 7px;
    position: absolute;
    top: calc(50% - 3.5px);
    left: 0;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_listItem::before {
        width: 4px;
        height: 4px;
        border-radius: 4px;
        top: 8px;
        left: 2px;
    }
}

.recSolution_checkPoint_list li + li {
    margin: 8px 0 0;
}

.recSolution_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
}
@media screen and (max-width: 767px) {
    .recSolution_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recSolution_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recSolution_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recSolution_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.recSolution_button {
    width: -moz-fit-content;
    width: fit-content;
    padding: 16px 42px 16px 26px;
}
@media screen and (max-width: 1199px) {
    .recSolution_button {
        line-height: 1.5;
    }
}

.recSolution_imgBlock {
    margin: 40px auto 0;
    max-width: 1200px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 24px 10px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_imgBlock img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recSolution_imgBlock img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recSolution_imgBlock {
        margin: 24px auto 0;
        gap: 16px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_imgBlock {
        max-width: 460px;
    }
}

@media screen and (max-width: 1199px) {
    .recSolution_solution {
        padding: 0 24px;
        width: calc(100% - 48px);
    }
}

.recSolution_solution_title {
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 2;
    letter-spacing: 0.78px;
    padding: 56px 0 40px;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    .recSolution_solution_title {
        padding: 40px 0 24px;
        color: #0e6eab;
        font-size: 1.25rem;
        line-height: 1.5;
        letter-spacing: 0.6px;
    }
}

.recSolution_solution_block {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto 40px;
    padding: 40px 0 0;
    border-top: 1px solid #d1dae1;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_solution_block img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recSolution_solution_block img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recSolution_solution_block {
        padding: 20px 0 0;
        margin: 0 auto 20px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_solution_block {
        max-width: 460px;
    }
}

.recSolution_solution_heading {
    display: flex;
    gap: 23px;
    align-items: center;
    margin: 0 0 20px;
}
@media screen and (max-width: 1199px) {
    .recSolution_solution_heading {
        gap: 8px;
        margin: 0 0 16px;
    }
}

.recSolution_solution_heading::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/candidate_pool/solution-heading-icon.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 80px;
    height: 80px;
}
@media screen and (max-width: 1199px) {
    .recSolution_solution_heading::before {
        width: 40px;
        height: 40px;
    }
}

.recSolution_solution_headingText {
    color: #222;
    font-size: 1.875rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.9px;
}
@media screen and (max-width: 1199px) {
    .recSolution_solution_headingText {
        width: 100%;
        font-size: 1rem;
        letter-spacing: 0.1px;
    }
}

.recSolution_solution_box {
    display: flex;
    gap: 120px;
}
@media screen and (max-width: 1199px) {
    .recSolution_solution_box {
        flex-wrap: wrap;
        gap: 16px;
    }
}

.recSolution_solution_col-first {
    width: calc(100% - 480px);
}
@media screen and (max-width: 1199px) {
    .recSolution_solution_col-first {
        width: 100%;
        order: 2;
    }
}

.recSolution_solution_col-second {
    width: 360px;
}
@media screen and (max-width: 1199px) {
    .recSolution_solution_col-second {
        width: 100%;
        order: 1;
    }
}

.recSolution_solution_colImg {
    width: 100%;
    height: auto;
}

.recSolution_solution_img {
    margin: 40px auto 0;
}
@media screen and (max-width: 1199px) {
    .recSolution_solution_img {
        margin: 16px auto 0;
    }
}

.recSolution_checkPoint {
    margin: 20px 0 0;
    padding: 32px 64px;
    border-radius: 8px;
    background: #f2f6fa;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_checkPoint img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recSolution_checkPoint img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint {
        margin: 16px 0 0;
        padding: 24px;
    }
}

.recSolution_checkPoint-borderBlue {
    border: 6px solid #d9e3ef;
}

.recSolution_checkPoint-whenSmallWidthBlock {
    padding: 32px 48px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint-whenSmallWidthBlock {
        padding: 24px;
    }
}

.recSolution_checkPointBlock {
    max-width: 1200px;
    margin: 30px auto 0;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_checkPointBlock {
        max-width: 460px;
    }
}

.recSolution_checkPointBlock-smallWidth {
    max-width: 800px;
    margin: 30px auto 0;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_checkPointBlock-smallWidth {
        max-width: 460px;
    }
}

.recSolution_checkPoint_indentBox {
    margin: 20px 0 0 43px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_indentBox {
        margin: 16px 0 0;
    }
}

.recSolution_checkPoint_indentBox-whenSmallWidthBlock {
    margin: 20px 0 0;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_indentBox-whenSmallWidthBlock {
        margin: 16px 0 0;
    }
}

.recSolution_checkPoint_heading {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_heading {
        gap: 8px;
    }
}

.recSolution_checkPoint_heading::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-discovery.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 33px;
    height: 35px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_heading::before {
        width: 32px;
        height: 32px;
    }
}

.recSolution_checkPoint_heading-noIcon::before {
    display: none;
}

.recSolution_checkPoint_headingText {
    color: #444;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 2;
    letter-spacing: -0.1px;
    width: calc(100% - 43px);
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_headingText {
        padding: 5px 0 0;
        color: #222;
        font-size: 1rem;
        line-height: 1.5;
        letter-spacing: -0.7px;
        width: calc(100% - 40px);
    }
}

.recSolution_checkPoint_text {
    color: #222;
    font-size: 1rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.48px;
    margin: 20px 0 0;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_text {
        font-size: 0.875rem;
        line-height: 1.75;
        letter-spacing: 0.42px;
        margin: 16px 0 0;
    }
}

.recSolution_checkPoint_textLink {
    color: #0c7bc9;
    font-size: 1rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.48px;
    text-decoration: underline;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_textLink {
        font-size: 0.875rem;
        line-height: 1.75;
        letter-spacing: 0.42px;
        margin: 10px 0 0;
        display: inline-block;
    }
}

.recSolution_solution_contentsInner {
    margin: 0 0 0 100px;
}
@media screen and (max-width: 1199px) {
    .recSolution_solution_contentsInner {
        margin: 0 0 0 40px;
    }
}

.recSolution_solution_contentsInner p + p {
    margin: 16px 0 0;
}

.recSolution_checkPoint_box1 {
    display: flex;
    gap: 20px;
    align-items: center;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_box1 {
        flex-wrap: wrap;
    }
}

.recSolution_checkPoint_box1Col-first {
    width: 300px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_box1Col-first {
        width: 100%;
    }
}

.recSolution_checkPoint_box1Col-second {
    width: calc(100% - 320px);
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_box1Col-second {
        width: 100%;
    }
}

.recSolution_checkPoint_box1Text {
    color: #222;
    font-size: 1rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_box1Text {
        font-size: 0.875rem;
        line-height: 1.75;
        letter-spacing: 0.42px;
    }
}

.recSolution_checkPoint_box1Notion {
    padding: 0 0 0 18px;
    position: relative;
    color: #222;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.36px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_box1Notion {
        line-height: 1.5;
    }
}

.recSolution_checkPoint_box1Notion::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.recSolution_checkPoint_box1-afterBox {
    margin: 8px 0 0;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_box1-afterBox {
        margin: 16px 0 0;
    }
}

.recSolution_checkPoint_box2 {
    display: flex;
    gap: 40px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_box2 {
        flex-wrap: wrap;
        gap: 10px;
    }
}

.recSolution_checkPoint_box2 p + p {
    margin: 16px 0 0;
}

.recSolution_checkPoint_box2Col-first {
    width: auto;
}

.recSolution_checkPoint_box2Text {
    color: #000;
    font-size: 1rem;
    line-height: 2;
}

.recSolution_checkPoint_box2TextMarker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.recSolution_checkPoint_box2Notion {
    padding: 0 0 0 18px;
    position: relative;
    color: #000;
    font-size: 0.8125rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.36px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_box2Notion {
        line-height: 1.5;
    }
}

.recSolution_checkPoint_box2Notion::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.recSolution_checkPoint_box2Col-second {
    width: 460px;
}

.recSolution_checkPoint_box2Img {
    border-radius: 8px;
    box-shadow: 0 0 20px 0 rgba(0, 55, 103, 0.05);
}

.recSolution_checkPoint_box2Img-multiply {
    mix-blend-mode: multiply;
    box-shadow: unset;
}

.recSolution_checkPoint_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
}
@media screen and (max-width: 767px) {
    .recSolution_checkPoint_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recSolution_checkPoint_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recSolution_checkPoint_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recSolution_checkPoint_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.recSolution_checkPoint_button {
    margin: 24px 0 0;
    width: -moz-fit-content;
    width: fit-content;
    padding: 16px 40px 16px 16px;
    letter-spacing: 0.1px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_checkPoint_button {
        margin: 16px auto 0;
        width: 100%;
        font-size: 0.875rem;
    }
}
@media screen and (max-width: 767px) {
    .recSolution_checkPoint_button {
        font-size: 0.875rem;
        margin: 16px 0 0;
        line-height: 1.5;
        padding: 10px 40px 10px 25px;
        width: 100%;
    }
}

.recSolution_checkPoint_notionList {
    margin: 8px 0 0;
}

.recSolution_checkPoint_notionItem {
    color: #242422;
    font-size: 0.9375rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.45px;
    position: relative;
    padding: 0 0 0 16px;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_notionItem {
        font-size: 0.75rem;
        letter-spacing: 0.36px;
    }
}

.recSolution_checkPoint_notionItem::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    background: #818a93;
    border-radius: 7px;
    position: absolute;
    top: calc(50% - 3.5px);
    left: 0;
}
@media screen and (max-width: 1199px) {
    .recSolution_checkPoint_notionItem::before {
        width: 4px;
        height: 4px;
        border-radius: 4px;
        top: 8px;
        left: 2px;
    }
}

.recSolution_checkPoint_notionList li + li {
    margin: 8px 0 0;
}

.recSolution_cta-borderTop {
    border-top: 1px solid #d1dae1;
}

.recSolution_introductionExample {
    border-top: 1px solid #d1dae1;
    padding: 0 0 60px;
}

.recSolution_introductionExample_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    padding: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recSolution_introductionExample_title {
        font-size: 1.25rem;
        letter-spacing: 0.6px;
        padding: 40px 0 16px;
    }
}

.recSolution_introductionExample_text {
    color: #242422;
    text-align: center;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recSolution_introductionExample_text {
        color: #222;
        text-align: left;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
        padding: 0 24px 16px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_introductionExample_text {
        text-align: center;
    }
}

.recSolution_companyLogo_box {
    margin: 40px auto;
    max-width: 1200px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_companyLogo_box {
        max-width: 1000px;
    }
}
@media screen and (max-width: 767px) {
    .recSolution_companyLogo_box {
        max-width: 460px;
        margin: 16px auto;
    }
}

@media screen and (max-width: 767px) {
    .recSolution_companyLogo_img {
        height: 45px;
    }
}

.recSolution_otherSolution {
    padding: 0 0 60px;
    border-top: 1px solid #d1dae1;
}
@media screen and (max-width: 1199px) {
    .recSolution_otherSolution {
        padding: 0 24px 40px;
    }
}

.recSolution_otherSolution_title {
    padding: 50px 0;
    color: #222;
    text-align: center;
    font-size: 1.875rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.9px;
}
@media screen and (max-width: 1199px) {
    .recSolution_otherSolution_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        padding: 40px 0 16px;
    }
}

.recSolution_usefulData {
    background: #f2f6fa;
    padding: 0 0 60px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recSolution_usefulData img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recSolution_usefulData img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recSolution_usefulData {
        padding: 0 0 40px;
    }
}

.recSolution_usefulData_title {
    padding: 50px 0;
    color: #222;
    text-align: center;
    font-size: 1.875rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.9px;
}
@media screen and (max-width: 1199px) {
    .recSolution_usefulData_title {
        padding: 40px 0 16px;
        font-size: 1.5rem;
        letter-spacing: 0.72px;
    }
}

.recDownload_usefulData_section {
    padding: 0 0 72px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recDownload_usefulData_section img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recDownload_usefulData_section img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recDownload_usefulData_section {
        padding: 0 0 60px;
    }
}

.recDownload_usefulData_section-afterSection {
    border-top: #d1dae1 1px solid;
}

.recDownload_usefulData_title {
    padding: 72px 0 48px;
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
}
@media screen and (max-width: 1199px) {
    .recDownload_usefulData_title {
        padding: 60px 0 24px;
        font-size: 1.5rem;
        letter-spacing: 0.72px;
    }
}

.recGuide_headerBelt {
    height: 134px;
    min-height: 134px;
}
@media screen and (max-width: 1199px) {
    .recGuide_headerBelt {
        height: 118px;
        min-height: 118px;
    }
}

.recGuide_flow {
    padding: 0 0 72px;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow {
        padding: 0 24px 40px;
    }
}

.recGuide_flow-afterFlowSection {
    border-top: 1px solid #d1dae1;
}

@media screen and (max-width: 1199px) {
    .recGuide_flow-lastSection {
        padding: 0 24px; /*. sp用CTAの余白分を縮める */
    }
}

.recGuide_flow_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    padding: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        padding: 60px 0 24px;
    }
}

.recGuide_flow_text {
    color: #222;
    text-align: center;
    font-size: 1.0625rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_text {
        text-align: left;
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recGuide_flow_text {
        text-align: center;
    }
}

.recGuide_flow_textMarker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.recGuide_flow_box {
    max-width: 1200px;
    width: 100%;
    margin: 32px auto 0;
    display: flex;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_box {
        margin: 16px auto 0;
        flex-wrap: wrap;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recGuide_flow_box {
        max-width: 460px;
    }
}

.recGuide_flow_box-has3Items {
    gap: 90px;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_box-has3Items {
        gap: 73px;
    }
}

.recGuide_flow_box-has4Items {
    gap: 40px;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_box-has4Items {
        gap: 45px;
    }
}

.recGuide_flow_col {
    flex: 1 1 0;
    border-radius: 8px;
    background-color: #f2f6fa;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_col {
        flex: 1 1 auto;
    }
}

.recGuide_flow_colUpper {
    border-bottom: 1px dashed #ccc;
    display: flex;
    align-items: center;
    justify-content: center;
}

.recGuide_flow_colUpperInner {
    padding: 24px 0 16px;
}

.recGuide_flow_colText {
    color: #222;
    font-size: 1rem;
    line-height: 2;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_colText {
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}

.recGuide_flow_heading {
    color: #222;
    text-align: center;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.6px;
}

.recGuide_flow_img {
    display: block;
    margin: 8px auto 0;
}

.recGuide_flow_colLower {
    padding: 16px 30px 34px;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_colLower {
        padding: 16px 24px 34px;
    }
}

.recGuide_flow_btn {
    background-color: #3aa131;
    border-radius: 100px;
    display: flex;
    width: 280px;
    height: 64px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_btn {
        width: 170px;
        height: 40px;
        font-size: 0.875rem;
        letter-spacing: 0.42px;
        gap: 3px;
    }
}
.recGuide_flow_btn::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-fv-mail-btn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_btn::before {
        width: 13px;
        height: 13px;
    }
}
.recGuide_flow_btn:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.recGuide_flow_btn {
    height: 44px;
    margin: 24px 0 0;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_btn {
        width: 100%;
        padding: 0;
    }
}

.recGuide_flow_col-beforeLongArrow {
    position: relative;
}

.recGuide_flow_col-beforeLongArrow::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/guide/icon-flow-long-arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 57px;
    height: 11px;
    position: absolute;
    top: 110px;
    left: -21%;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_col-beforeLongArrow::before {
        top: unset;
        bottom: calc(100% + 27px);
        left: calc(50% - 80px);
        transform: rotate(90deg);
    }
}

.recGuide_flow_col-beforeShortArrow {
    position: relative;
}

.recGuide_flow_col-beforeShortArrow::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/guide/icon-flow-short-arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 29px;
    height: 18px;
    position: absolute;
    top: 172px;
    left: -12%;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_col-beforeShortArrow::before {
        top: unset;
        bottom: calc(100% + 12px);
        left: calc(50% - 14.5px);
        transform: rotate(90deg);
    }
}

.recGuide_flow_addDaysText::after {
    content: "1〜2営業日";
    display: inline-block;
    width: 50px;
    color: #222;
    text-align: center;
    font-size: 0.9375rem;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.45px;
    position: absolute;
    top: 46%;
    right: 106%;
}
@media screen and (max-width: 1199px) {
    .recGuide_flow_addDaysText::after {
        width: 100px;
        top: unset;
        right: calc(50% - 60px);
        bottom: calc(100% + 20px);
    }
}

.recGuide_support {
    background-color: #f2f6fa;
    padding: 0 0 72px;
}
@media screen and (max-width: 1199px) {
    .recGuide_support {
        padding: 0 24px 40px;
    }
}

.recGuide_support_title {
    color: #222;
    text-align: center;
    font-size: 2.125rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 1.02px;
    padding: 72px 0 48px;
}
@media screen and (max-width: 1199px) {
    .recGuide_support_title {
        font-size: 1.5rem;
        letter-spacing: 0.72px;
        padding: 60px 0 24px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recGuide_support_title {
        max-width: 460px;
        margin: 0 auto;
    }
}

.recGuide_support_text {
    color: #222;
    text-align: center;
    font-size: 1.0625rem;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recGuide_support_text {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
        text-align: left;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recGuide_support_text {
        max-width: 460px;
        margin: 0 auto;
    }
}

.recGuide_support_notion {
    width: -moz-fit-content;
    width: fit-content;
    margin: 16px auto 0;
    padding: 0 0 0 16px;
    color: #222;
    font-size: 0.75rem;
    line-height: 1.5;
    letter-spacing: 0.36px;
    position: relative;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    .recGuide_support_notion {
        font-size: 0.625rem;
        line-height: 1.5;
        letter-spacing: 0.3px;
        text-align: left;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recGuide_support_notion {
        max-width: 460px;
        margin: 16px auto 0;
        width: 444px;
    }
}

.recGuide_support_notion::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.recGuide_support_box {
    max-width: 1000px;
    width: 100%;
    margin: 32px auto 0;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recGuide_support_box img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recGuide_support_box img {
        width: 100%;
        height: auto;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recGuide_support_box {
        max-width: 460px;
    }
}

.recGuide_support_block {
    display: flex;
    border-radius: 8px;
    background-color: #fff;
}
@media screen and (max-width: 1199px) {
    .recGuide_support_block {
        flex-wrap: wrap;
    }
}

.recGuide_support_col-first {
    width: 280px;
}
@media screen and (max-width: 1199px) {
    .recGuide_support_col-first {
        width: 100%;
    }
}

.recGuide_support_col-second {
    width: calc(100% - 200px);
    padding: 40px;
}
@media screen and (max-width: 1199px) {
    .recGuide_support_col-second {
        width: calc(100% - 32px);
        padding: 16px;
    }
}

.recGuide_support_colHeading {
    color: #222;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.6px;
}
@media screen and (max-width: 1199px) {
    .recGuide_support_colHeading {
        font-size: 1rem;
        line-height: 1.75;
        letter-spacing: 0.48px;
    }
}

.recGuide_support_colText {
    color: #222;
    font-size: 1rem;
    line-height: 2;
    letter-spacing: 0.48px;
    margin: 8px 0 0;
}
@media screen and (max-width: 1199px) {
    .recGuide_support_colText {
        font-size: 0.875rem;
        line-height: 1.75;
        letter-spacing: 0.42px;
        margin: 10px 0 0;
    }
}

.recGuide_support_block-afterBlock {
    margin: 52px 0 0;
    position: relative;
}

.recGuide_support_block-afterBlock::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/guide/icon-support-arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 11px;
    height: 27px;
    position: absolute;
    bottom: calc(100% + 12px);
    left: calc(50% - 5.5px);
}
@media screen and (max-width: 1199px) {
    .recGuide_support_block-afterBlock::before {
        background-image: url(../../img/recruiting/guide/icon-support-arrow-blue-sp.svg);
        background-repeat: no-repeat;
        background-size: contain;
        width: 18px;
        height: 29px;
        bottom: calc(100% + 8px);
        left: calc(50% - 9px);
    }
}

.recFeature_anchor {
    padding: 16px 0;
    border-bottom: 1px solid #e7edf2;
}
@media screen and (max-width: 1199px) {
    .recFeature_anchor {
        display: none;
    }
}

.recFeature_anchorList {
    display: flex;
    gap: 20px;
    justify-content: center;
}

.recFeature_anchorListLink {
    display: flex;
    align-items: center;
    gap: 10px;
}

.recFeature_anchorListLink::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/feature/icon-anchor-arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
}

.recFeature_anchorListText {
    color: #0e6eab;
    font-size: 0.9375rem;
    line-height: 1.75;
    letter-spacing: 0.45px;
}

.recFeature_section-bgLightblue {
    background-color: #f2f6fa;
}

@media screen and (max-width: 1199px) {
    .recFeature_sectionInner {
        width: calc(100% - 48px);
        padding: 0 24px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recFeature_sectionInner {
        max-width: 460px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 1199px) {
    .recFeature_introduction {
        padding: 0 0 60px;
    }
}

.recFeature_scout {
    padding: 0 0 72px;
}
@media screen and (max-width: 1199px) {
    .recFeature_scout {
        padding: 0 0 40px;
    }
}

.recFeature_reviewAnalysis {
    padding: 0 0 72px;
}
@media screen and (max-width: 1199px) {
    .recFeature_reviewAnalysis {
        padding: 0 0 40px;
    }
}

.recFeature_otherFeatures {
    border-bottom: 1px solid #d1dae1;
}

.recFeature_otherFeatures-afterList {
    margin: 40px auto 0;
}
@media screen and (max-width: 1199px) {
    .recFeature_otherFeatures-afterList {
        margin: 0 auto;
    }
}

.recFeature_title {
    padding: 56px 0 40px;
    color: #0e6eab;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.78px;
    text-align: center;
}
@media screen and (max-width: 1199px) {
    .recFeature_title {
        padding: 60px 0 24px;
        font-size: 1.25rem;
        letter-spacing: 0.6px;
    }
}

.recFeature_box {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 0 0 56px;
    display: flex;
    gap: 40px;
    align-items: center;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recFeature_box img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recFeature_box img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recFeature_box {
        padding: 0;
        gap: 16px;
        flex-wrap: wrap;
    }
}

@media screen and (max-width: 1199px) {
    .recFeature_box-afterBox {
        padding: 40px 0 0;
    }
}

.recFeature_col-first {
    width: 540px;
}
@media screen and (max-width: 1199px) {
    .recFeature_col-first {
        width: 100%;
    }
}

.recFeature_col-second {
    width: calc(100% - 500px);
}
@media screen and (max-width: 1199px) {
    .recFeature_col-second {
        width: 100%;
    }
}

.recFeature_col-is1of3 {
    width: 368px;
}
@media screen and (max-width: 1199px) {
    .recFeature_col-is1of3 {
        width: 100%;
    }
}

.recFeature_col-is2of3 {
    width: calc(100% - 328px);
}
@media screen and (max-width: 1199px) {
    .recFeature_col-is2of3 {
        width: 100%;
    }
}

.recFeature_heading {
    color: #222;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.6px;
}
@media screen and (max-width: 1199px) {
    .recFeature_heading {
        font-size: 1rem;
        line-height: 1.75;
        letter-spacing: 0.48px;
    }
}

.recFeature_text {
    color: #222;
    font-size: 1.0625rem;
    line-height: 2;
    letter-spacing: 0.51px;
}
@media screen and (max-width: 1199px) {
    .recFeature_text {
        font-size: 0.9375rem;
        line-height: 1.75;
        letter-spacing: 0.45px;
    }
}

.recFeature_text-afterText {
    margin: 16px 0 0;
}

.recFeature_text-afterHeading {
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .recFeature_text-afterHeading {
        margin: 8px 0 0;
    }
}

.recFeature_textMarker {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffe542 60%);
    padding: 3px;
}

.recFeature_subText {
    color: #222;
    font-size: 0.9375rem;
    line-height: 1.75;
    letter-spacing: 0.45px;
    margin: 16px 0 0;
}

.recFeature_notion {
    padding: 0 0 0 16px;
    position: relative;
    color: #222;
    font-size: 0.75rem;
    line-height: 1.5;
    letter-spacing: 0.36px;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .recFeature_notion {
        font-size: 0.625rem;
        letter-spacing: 0.3px;
    }
}

.recFeature_notion::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

.recFeature_list {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: 48px 40px;
    flex-wrap: wrap;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recFeature_list img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recFeature_list img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recFeature_list {
        gap: 40px;
    }
}

@media screen and (max-width: 1199px) {
    .recFeature_list-afterBox {
        padding: 40px 0 0;
    }
}

.recFeature_otherList {
    justify-content: center;
}

.recFeature_item {
    width: calc((100% - 80px) / 3);
}
@media screen and (max-width: 1199px) {
    .recFeature_item {
        width: 100%;
    }
}

.recFeature_itemTitle {
    color: #222;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.6px;
    margin: 16px 0 0;
}
@media screen and (max-width: 1199px) {
    .recFeature_itemTitle {
        font-size: 1rem;
        line-height: 1.5;
        letter-spacing: 0.48px;
    }
}

.recFeature_itemText {
    color: #222;
    font-size: 0.9375rem;
    line-height: 1.75;
    letter-spacing: 0.45px;
    margin: 4px 0 0;
}
@media screen and (max-width: 1199px) {
    .recFeature_itemText {
        line-height: 2;
        margin: 8px 0 0;
    }
}

.recFeature_checkPoint {
    max-width: 1200px;
    width: 1000px;
    padding: 40px 100px;
    background-color: #fff;
    border-radius: 8px;
    margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recFeature_checkPoint img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 767px) {
    .recFeature_checkPoint img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 1199px) {
    .recFeature_checkPoint {
        width: calc(100% - 48px);
        padding: 24px;
    }
}

@media screen and (max-width: 1199px) {
    .recFeature_checkPoint-afterBox {
        margin: 40px auto 0;
    }
}

.recFeature_checkPoint_heading {
    color: #444;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.6px;
    padding: 15px 0 0 65px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    .recFeature_checkPoint_heading {
        color: #222;
        font-size: 1.125rem;
        font-weight: bold;
        line-height: 1.5;
        letter-spacing: 0.54px;
        padding: 13px 0 0 40px;
    }
}

.recFeature_checkPoint_heading::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-discovery.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 33px;
    height: 35px;
    margin: 15px;
    position: absolute;
    top: 0;
    left: 0;
}
@media screen and (max-width: 1199px) {
    .recFeature_checkPoint_heading::before {
        width: 32px;
        height: 32px;
        margin: 15px 8px 0 0;
    }
}

.recFeature_checkPoint_box {
    display: flex;
    gap: 16px;
    margin: 56px 0 0;
    align-items: center;
}
@media screen and (max-width: 1199px) {
    .recFeature_checkPoint_box {
        gap: 16px;
        margin: 16px 0 0;
        flex-wrap: wrap;
    }
}

.recFeature_checkPoint_boxCol-first {
    width: 300px;
}
@media screen and (max-width: 1199px) {
    .recFeature_checkPoint_boxCol-first {
        width: 100%;
    }
}

.recFeature_checkPoint_boxCol-second {
    width: calc(100% - 316px);
}
@media screen and (max-width: 1199px) {
    .recFeature_checkPoint_boxCol-second {
        width: 100%;
    }
}

.recFeature_checkPoint_boxText {
    color: #222;
    font-size: 1rem;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.48px;
}
@media screen and (max-width: 1199px) {
    .recFeature_checkPoint_boxText {
        font-size: 0.875rem;
        line-height: 1.75;
        letter-spacing: 0.42px;
    }
}

.recFeature_checkPoint_box-afterBox {
    margin: 16px 0 0;
}

.recFeature_checkPoint_button {
    color: #0e6eab;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.96px;
    padding: 16px 26px;
    border-radius: 100px;
    border: 3px solid #0e6eab;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 2px 2px 4px 0 rgba(16, 77, 125, 0.1);
    line-height: 1;
    width: 332px;
    position: relative;
    margin: 40px auto 0;
    display: block;
}
@media screen and (max-width: 767px) {
    .recFeature_checkPoint_button {
        width: 100%;
        font-size: 0.9375rem;
        letter-spacing: 0.45px;
    }
}
.recFeature_checkPoint_button::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-arrow-chevron-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 9px;
    height: 9px;
    position: absolute;
    top: calc(50% - 4.5px);
    right: 23px;
}
.recFeature_checkPoint_button[target="_blank"]::before {
    background-image: url(../../img/recruiting/icon-window.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
    top: calc(50% - 7px);
}
.recFeature_checkPoint_button:hover {
    text-decoration: none;
    opacity: 0.7;
    transition-duration: 0.2s;
}
.recFeature_checkPoint_button {
    margin: 40px auto 0;
    width: 426px;
    padding: 16px 26px 16px 12px;
    letter-spacing: 0.6px;
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .recFeature_checkPoint_button {
        margin: 26px auto 0;
    }
}
@media screen and (max-width: 767px) {
    .recFeature_checkPoint_button {
        margin: 26px 0 0;
        line-height: 1.5;
        padding: 10px 60px 10px 32px;
        width: 100%;
    }
}

@media screen and (max-width: 1199px) {
    .recFeature_cta_title::before {
        transform: translateX(-5px);
    }
}

@media screen and (max-width: 1199px) {
    .recFeature_cta_title::after {
        transform: scale(-1, 1) translateX(-5px);
    }
}

/* c-case（法人TOPモジュール）をリクルーティング事例カードと同じ見た目にする */
.c-case {
    list-style: none;
    padding: 0;
    max-width: 1200px;
    width: 100%;
    margin: 16px auto 0;
    display: flex;
    justify-content: flex-start;
    gap: 56px 48px;
    flex-wrap: wrap;
}
@media screen and (max-width: 1299px) {
    .c-case {
        max-width: 1000px;
    }
}
@media screen and (max-width: 999px) {
    .c-case {
        max-width: 460px;
        gap: 24px;
    }
}
@media screen and (max-width: 767px) {
    .c-case {
        margin: 16px auto 0;
        padding: 0 24px;
        width: calc(100% - 48px);
    }
}

.c-case__item {
    width: calc((100% - 96px) / 3);
    transition: opacity 0.2s;
}
@media screen and (max-width: 999px) {
    .c-case__item {
        width: 100%;
    }
}
.c-case__item:hover {
    opacity: 0.7;
}
.c-case__item a {
    color: #222;
    text-decoration: none;
}
.c-case__item a:hover {
    text-decoration: none;
}

.c-case__fig {
    position: relative;
}
.c-case__fig > a {
    display: block;
    position: relative;
}
.c-case__fig > a > img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    display: block;
}

.c-case__fig-logo {
    position: absolute;
    bottom: -1px;
    right: 0;
    width: 104px;
    height: 56px;
    background: #fff;
    border-radius: 5px 0 8px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.c-case__fig-logo img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    border-radius: 0;
}
@media screen and (max-width: 767px) {
    .c-case__fig-logo {
        width: 76px;
        height: 37px;
        padding: 6px 8px;
    }
}

.c-case__sub {
    display: inline-block;
    margin: 16px 0 0;
    color: #222;
    font-size: 0.75rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.36px;
}

.c-case__title {
    margin: 8px 0 0;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.5;
}
.c-case__title a {
    display: block;
    color: #222;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.48px;
    padding: 0 0 0 24px;
    position: relative;
}
.c-case__title a::before {
    content: "";
    display: inline-block;
    background-image: url(../../img/recruiting/icon-circle-arrow-blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 18px;
    height: 18px;
    margin: 0 8px 0 0;
    transform: translateY(3px);
    position: absolute;
    top: 0;
    left: 0;
}

.c-case__info {
    margin: 16px 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 4px 24px;
}
.c-case__info dt {
    width: 50px;
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.36px;
}
.c-case__info dd {
    width: calc(100% - 74px);
    margin: 0;
    color: #222;
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.36px;
}
/* リクルーティングカードに無い「導入サービス」行は非表示 */
.c-case__info dt:nth-of-type(4),
.c-case__info dd:nth-of-type(4) {
    display: none;
}

.c-case__icon {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.c-case__icon li {
    border-radius: 100px;
    padding: 2px 10px 3px;
    color: #fff;
    font-size: 0.75rem;
    font-weight: bold;
    line-height: 1;
}
/* 出力は -icon01=新卒 / -icon02=中途 */
.c-case__icon li.-icon01 {
    background-color: #d38137;
}
.c-case__icon li.-icon02 {
    background-color: #0e6eab;
}
