@charset 'utf-8';


.p-recruit__section {
    margin-top: 94px;
}
.p-recruit__section .c-subttl {
    margin-bottom: 40px;
}
.p-recruit__section-flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.p-recruit__section-flex.flex-reverse {
    flex-direction: row-reverse;
}
.p-recruit__section-flex-main {
    width: 54.16%;
}
.p-recruit__message-ttl {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.75;
    margin-bottom: 27px;
}
.p-recruit__message-ttl.gold {
    color: var(--color-gold);
    margin-bottom: 20px;
}
.p-recruit__section .name-block {
    display: flex;
    align-items: baseline;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.03em;
    margin-bottom: 35px;
}
.p-recruit__section .name-block .small {
    font-size: 14px;
}
.p-recruit__section .name-block .middle {
    font-size: 16px;
}
.p-recruit__section-txt {
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
}
.p-recruit__section-txt.txt-middle {
    margin-top: 40px;
}
.p-recruit__section-img {
    width: 40%;
    display: block;
    border-radius: 10px;
    object-fit: contain;
}
.p-recruit .c-cardAbout {
    margin-top: 158px;
    margin-bottom: 119px;
}
.p-recruit .c-recruitList {
    margin-top: 53px;
}

/* 募集中の職種が 1 件もないとき。カード一覧と同じ位置に出す */
.p-recruit__empty {
    margin-top: 53px;
}

/* --- 「働く魅力」の項目リスト（ACF リピーター recruit_charm_item） --- */
.p-recruit__list {
    display: flex;
    flex-direction: column;
    row-gap: 30px;
}
.p-recruit__list-ttl {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.03em;
    color: var(--color-gold);
    border-left: var(--color-gold) 2px solid;
    padding-left: 12px;
    margin-bottom: 12px;
}
.p-recruit__list-txt {
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
}

/* --- 「求める人物像」の箇条書き（recruit_ideal_txt を 1 行 1 項目で出力） --- */
.p-recruit__check {
    display: flex;
    flex-direction: column;
    row-gap: 18px;
}
.p-recruit__check-item {
    position: relative;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.9;
    padding-left: 1.5em;
}
.p-recruit__check-item::before {
    content: '';
    position: absolute;
    left: 0.15em;
    /* 1 行目の中心に合わせる（line-height の半分 − 丸の半径） */
    top: calc(0.95em - 4px);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--color-gold);
}

@media screen and (max-width: 768px) {
    .p-recruit__section {
        margin-top: 57px;
    }
    #doctor {
        margin-bottom: 62px;
    }
    #doctor.p-recruit__section .c-subttl {
        margin-bottom: 23px;
    }
    .p-recruit__section-flex {
        flex-direction: column;
        justify-content: flex-start;
    }
    #doctor .p-recruit__section-flex:not(:last-of-type) {
        margin-bottom: 2em;
    }
    .p-recruit__section-flex-main {
        width: 100%;
    }
    .p-recruit__section-img {
        width: 100%;
    }
    .flex01 .p-recruit__section-img {
        margin-bottom: 38px;
    }
    .p-recruit__message-ttl {
        width: 105%;
        font-size: 22px;
        line-height: 1.72;
        margin-bottom: 13px;
    }
    .p-recruit__section-flex.flex-reverse {
        flex-direction: column-reverse;
        row-gap: 47px;
    }
    .flex02 .p-recruit__message-ttl {
        margin-bottom: 31px;
    }
    .p-recruit__list {
        row-gap: 24px;
    }
    .p-recruit__list-ttl {
        font-size: 17px;
        padding-left: 10px;
        margin-bottom: 9px;
    }
    .p-recruit__list-txt,
    .p-recruit__check-item {
        font-size: 15px;
    }
    .p-recruit__check {
        row-gap: 14px;
    }
}