@charset "UTF-8";
/* ===================================================
   page-profile.css — 会社概要 / PMG健康経営プロジェクト
   =================================================== */

/* ===== p-profile__health（健康経営プロジェクト全体） ===== */
.p-profile__health {
    max-width: var(--content-narrow);
    margin: 0 auto;
    padding: var(--space-5xl) 0;
    color: var(--color-text);
    scroll-margin-top: var(--header-height);
}
.p-profile__health > h2 {
    font-family: var(--font-base);
    font-size: var(--fz-2xl);
    font-weight: 500;
    line-height: 1.5;
    color: var(--color-text-dark);
    text-align: center;
    margin: 0 0 var(--space-2xl);
}

/* イントロ */
.p-profile__health-intro {
    margin-bottom: var(--space-3xl);
}
.p-profile__health-intro > p {
    font-size: var(--fz-base);
    line-height: 1.9;
    margin: 0 0 var(--space-md);
}
.p-profile__health-intro > p.p-profile__health-date {
    text-align: right;
    margin-top: var(--space-md);
    margin-bottom: 0;
}

/* 5方針リスト */
.p-profile__health-list {
    display: flex;
    flex-direction: column;
    gap: var(--space-xl);
    margin-bottom: var(--space-3xl);
}
.p-profile__health-item {
    background-color: var(--color-bg-card);
    border-radius: var(--radius-card);
    padding: var(--space-xl);
}
.p-profile__health-item > h3 {
    font-family: var(--font-base);
    font-size: var(--fz-xl);
    font-weight: 600;
    line-height: 1.6;
    color: var(--color-text-dark);
    margin: 0 0 var(--space-md);
}
.p-profile__health-item > h3 > span {
    display: inline-flex;
    align-items: center;
    gap: var(--space-xs);
    color: #256CBF;
    font-weight: 700;
    margin-right: var(--space-sm);
}
.p-profile__health-item > h3 > span > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 2px solid #256CBF;
    border-radius: 50%;
    font-size: var(--fz-base);
    font-weight: 700;
}
.p-profile__health-item > p {
    font-size: var(--fz-base);
    line-height: 1.9;
    margin: 0;
}

/* 「健康経営」とは（図解） */
.p-profile__health-diagram {
    margin: 0 auto var(--space-3xl);
    text-align: center;
}
.p-profile__health-diagram > h3 {
    font-family: var(--font-base);
    font-size: var(--fz-xl);
    font-weight: 600;
    line-height: 1.6;
    color: var(--color-text-dark);
    margin: 0 0 var(--space-xl);
    text-align: center;
}
.p-profile__health-diagram > .p-image {
    max-width: 1080px;
    margin: 0 auto;
}
.p-profile__health-diagram > .p-image img {
    display: block;
    width: 100%;
    height: auto;
}

/* 年間計画スケジュール表 */
.p-profile__health-schedule > h3 {
    font-family: var(--font-base);
    font-size: var(--fz-xl);
    font-weight: 600;
    line-height: 1.6;
    color: var(--color-text-dark);
    margin: 0 0 var(--space-xl);
    text-align: center;
}
/* ----- 年間計画スケジュール表（pmg-partners.jp 本番から完全複製） ----- */
table.year-schedule {
    width: 100%;
    color: #040000;
    text-align: center;
    font-size: 10px;
    table-layout: auto;
}
table.year-schedule th,
table.year-schedule td {
    border: 1px solid #fff;
    padding: 6px;
    vertical-align: middle;
}
table.year-schedule thead th {
    background: #33629B;
    color: #fff;
    font-weight: bold;
    font-size: 12px;
}
table.year-schedule thead th:first-child {
    background: #f4f4f4;
}
table.year-schedule tbody th {
    font-size: 11px;
    white-space: nowrap;
    width: 10%;
    text-align: left;
}
table.year-schedule tbody th span {
    display: none;
}
table.year-schedule tbody td {
    font-size: 11px;
    width: calc(90% / 12);
    font-weight: bold;
    padding: 4px 2px;
    line-height: 1.6;
}
.red-1st { background: #eff6ff; }
.red-2nd { background: #dfedff; }
.red-3rd { background: #bddbff; }
.red-4th { background: #99c7ff; }
.red-emp { background: #f4f4f4; }

@media screen and (max-width: 640px) {
    table.year-schedule,
    table.year-schedule thead,
    table.year-schedule tbody,
    table.year-schedule th,
    table.year-schedule td,
    table.year-schedule tr {
        display: block;
    }
    table.year-schedule thead {
        display: none;
    }
    table.year-schedule tbody tr {
        margin-bottom: 10px;
        overflow: hidden;
    }
    table.year-schedule tbody th {
        width: 96%;
        padding: 4px 2%;
        font-size: 14px;
        text-align: center;
        border-bottom: 1px solid #fff;
        box-sizing: content-box;
    }
    table.year-schedule tbody th br {
        display: none;
    }
    table.year-schedule tbody td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 96%;
        padding: 4px 2%;
        font-size: 12px;
        border-bottom: 1px solid #fff;
        box-sizing: content-box;
    }
    table.year-schedule tbody td br {
        display: none;
    }
    table.year-schedule tbody th span {
        display: inline;
    }
    table.year-schedule tbody td.red-emp {
        display: none;
    }
    table.year-schedule tbody td::before {
        content: attr(data-label);
        font-weight: normal;
    }
}

/* ----- レスポンシブ ----- */
@media screen and (max-width: 1024px) {
    .p-profile__health { padding: var(--space-4xl) var(--space-md); }
    .p-profile__health > h2 { font-size: var(--fz-xl); }
    .p-profile__health-item { padding: var(--space-lg); }
    .p-profile__health-item > h3 { font-size: var(--fz-lg); }
    .p-profile__health-diagram > h3,
    .p-profile__health-schedule > h3 { font-size: var(--fz-lg); }
}
@media screen and (max-width: 600px) {
    .p-profile__health { padding: var(--space-3xl) var(--space-md); }
    .p-profile__health > h2 { font-size: var(--fz-lg); }
    .p-profile__health-list { gap: var(--space-lg); }
    .p-profile__health-item { padding: var(--space-md); }
    .p-profile__health-item > h3 { font-size: var(--fz-base); }
    .p-profile__health-item > p,
    .p-profile__health-intro > p { font-size: var(--fz-sm); }
}
