/* =============================================
   固定ページ  (.pg_*)
   page.php 専用
   ============================================= */

.pg_hero {
    background: linear-gradient(135deg, #eef8f7 0%, #f5f9f2 60%, #faf7f2 100%);
    padding: 140px 20px 85px;
    text-align: center;
}
.pg_hero__inner {
    max-width: 800px;
    margin: 0 auto;
}
.pg_hero__title {
    font-size: clamp(22px, 4vw, 36px);
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1.3;
    margin: 0;
}

.pg_main {
    padding: 56px 20px 96px;
}
.pg_inner {
    max-width: 980px;
    margin: 0 auto;
}

/* --- 本文タイポグラフィ --- */
.pg_body {
    font-size: 15px;
    line-height: 1.9;
    color: #333;
}
.pg_body h2 {
    font-size: clamp(18px, 2.8vw, 24px);
    font-weight: 600;
    color: #18655d;
    margin: 2em 0 0.8em;
    padding-bottom: 0.4em;
    border-bottom: 2px solid #18655d;
    scroll-margin-top: 90px;
}
.pg_body h3 {
    font-size: clamp(17px, 2.2vw, 22px);
    font-weight: 700;
    color: #1a1a1a;
    margin: 2em 0 0.6em;
    scroll-margin-top: 90px;
}
.pg_body h4 {
    font-size: clamp(15px, 2vw, 19px);
    font-weight: 700;
    color: #1a1a1a;
    margin: 2em 0 0.6em;
    scroll-margin-top: 90px;
}
.pg_body strong {
    font-weight: 600;
}
.pg_body p {
    margin: 0 0 1.4em;
}
.pg_body a {
    color: #18655d;
    text-decoration: underline;
}
.pg_body ul,
.pg_body ol {
    padding-left: 1.6em;
    margin: 0 0 1.4em;
}
.pg_body ul {
    list-style: disc;
}
.pg_body ol {
    list-style: decimal;
}
.pg_body li {
    margin-bottom: 0.4em;
    padding-left: .8em;
    padding-bottom: .8em;
}
.pg_body table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.6em 0;
    font-size: 14px;
}
.pg_body th,
.pg_body td {
    border: 1px solid #d8e8e6;
    padding: 10px 14px;
    text-align: left;
    vertical-align: top;
}
.pg_body th {
    background: #eef8f7;
    font-weight: 600;
    color: #18655d;
}
.pg_body tr:nth-child(even) td {
    background: #f9fdfb;
}

@media (max-width: 600px) {
    .pg_hero {
        padding: 95px 16px 40px;
    }
    .pg_main {
        padding: 20px 16px 64px;
    }
    .pg_body table {
        display: block;
        overflow-x: auto;
    }
}