/* 利用規約・プライバシーポリシー共通（/terms-of-use, /privacy-policy）
   エディター入力コンテンツ用の余白・フォント・リスト・見出しスタイル */

.page-legal__section {
    padding-block: var(--space-8xl);
}

.page-legal__inner {
    max-width: var(--content-max-width);
    margin-inline: auto;
    padding-inline: var(--content-inner-padding-inline);
}

.page-legal__body {
    font-size: var(--fs-md);
    line-height: var(--lh-loose);
    color: var(--color-text);
}

.page-legal__body p {
    margin: 0 0 var(--space-md);
    letter-spacing: 0.05em;
}

.page-legal__body p:last-child {
    margin-bottom: 0;
}

/* 見出し（文書用に段階的にサイズ・余白を指定） */
.page-legal__body h1 {
    font-size: var(--fs-3xl);
    font-weight: 900;
    margin: var(--space-2xl) 0 var(--space-md);
    padding-bottom: var(--space-xs);
    line-height: var(--lh-normal);
    color: var(--color-text);
}

.page-legal__body h1:first-child {
    margin-top: 0;
}

.page-legal__body h2 {
    font-size: var(--fs-xl);
    font-weight: 700;
    margin: var(--space-xl) 0 var(--space-sm);
    padding-bottom: var(--space-xxs);
    line-height: var(--lh-normal);
    color: var(--color-text);
}

.page-legal__body h3 {
    font-size: var(--fs-lg);
    font-weight: 700;
    margin: var(--space-lg) 0 var(--space-sm);
    line-height: var(--lh-normal);
    color: var(--color-text);
}

/* リスト（common の list-style: none を上書き） */
.page-legal__body ul {
    list-style: disc;
    padding-left: 1.5em;
    margin: 0 0 var(--space-md);
}

.page-legal__body ul li {
    margin-bottom: var(--space-xs);
}

.page-legal__body ul li:last-child {
    margin-bottom: 0;
}

.page-legal__body ol {
    list-style: decimal;
    padding-left: 1.5em;
    margin: 0 0 var(--space-md);
}

/* 番号表記を「1.」→「1)」に変更 */
.page-legal__body ol li::marker {
    content: counter(list-item) ") ";
}

.page-legal__body ol li {
    margin-bottom: var(--space-xs);
}

.page-legal__body ol li:last-child {
    margin-bottom: 0;
}

/* 入れ子リスト */
.page-legal__body ul ul {
    list-style: circle;
    margin-top: var(--space-xs);
    margin-bottom: var(--space-sm);
}

/* 番号リスト（ol）の直下の ul は「・」で表示（DOM: ol > li > ul、ブロックは .wp-block-list） */
.page-legal__body ol ul,
.page-legal__body ol ul.wp-block-list {
    list-style: none !important;
    padding-left: 1.5em;
    margin-top: var(--space-xs);
    margin-bottom: var(--space-sm);
}

.page-legal__body ol ul li::marker,
.page-legal__body ol ul.wp-block-list li::marker {
    content: "・ " !important;
}

/* 入れ子の番号リスト（ol > ol）も「・」で表示 */
.page-legal__body ol ol,
.page-legal__body ul ol {
    list-style: none;
    padding-left: 1.5em;
    margin-top: var(--space-xs);
    margin-bottom: var(--space-sm);
}

.page-legal__body ol ol li::marker,
.page-legal__body ul ol li::marker {
    content: "・ ";
}

/* 強調・リンク */
.page-legal__body strong {
    font-weight: 700;
}

.page-legal__body a {
    color: var(--color-sub1);
    text-decoration: underline;
}

.page-legal__body a:hover,
.page-legal__body a:focus {
    color: var(--color-corporate);
}

@media (max-width: 768px) {
    .page-legal__section {
        padding-block: var(--space-4xl);
    }
}