/* ================================================
   06. ユーティリティページ専用スタイル
   （プライバシーポリシー・免責事項・その他の静的ページ）
   ================================================ */

/* 固定ページスタイル */
.static-page {
    margin: 0;
}

.page-content-section {
    padding: var(--spacing-64) 0;
    background: var(--color-white);
}

.page-content {
    max-width: 800px;
    margin: 0 auto;
    line-height: var(--line-height-base);
    text-align: left;
}

.static-page-content h2 {
    font-size: var(--font-size-ll);
    font-weight: 600;
    color: var(--text-primary);
    margin: var(--spacing-64) 0 var(--spacing-32) 0;
    border-bottom: 2px solid var(--color-black);
    padding-bottom: var(--spacing-8);
}

.static-page-content h3 {
    font-size: var(--font-size-ll);
    font-weight: 600;
    color: var(--text-primary);
    margin: var(--spacing-48) 0 var(--spacing-24) 0;
    background-color: var(--color-bg-section);
    padding: 0.75rem 1rem;
    border-bottom: 3px solid;
    border-image: linear-gradient(90deg, var(--color-purple), var(--color-pink)) 1;
    border-radius: 4px 4px 0 0;
}

.static-page-content h4 {
    font-size: var(--font-size-l);
    font-weight: 600;
    color: var(--text-primary);
    margin: var(--spacing-32) 0 var(--spacing-16) 0;
}

.static-page-content p {
    margin-bottom: var(--spacing-16);
    color: var(--text-secondary);
}

.static-page-content ul, .static-page-content ol {
    margin: var(--spacing-16) 0;
    padding-left: 2rem;
    text-align: left;
    display: inline-block;
}

.static-page-content li {
    margin-bottom: var(--spacing-8);
    color: var(--text-secondary);
}

.static-page-content strong {
    color: var(--text-primary);
    font-weight: 600;
}

.static-page-content hr {
    border: none;
    border-top: 1px solid var(--color-border);
    margin: var(--spacing-32) 0;
}

/* モバイル対応 */
@media (max-width: 768px) {
    .page-header-section {
        padding: 2rem 0 1.5rem 0;
    }
    
    .page-title {
        font-size: var(--font-size-ll);
    }
    
    .page-content-section {
        padding: var(--spacing-48) 0;
    }
    
    .page-content {
        padding: 0;
    }
    
    .static-page-content h2 {
        font-size: var(--font-size-ll);
    }
    
    .static-page-content h3 {
        font-size: var(--font-size-l);
    }
}

/* プライバシーポリシーと免責事項は左寄せ */
body.page-privacy-policy .page-content,
body.page-disclaimer .page-content {
    text-align: left;
}

/* プライバシーポリシーと免責事項ページは全体を左寄せ */
body.page-privacy-policy .static-page-content,
body.page-disclaimer .static-page-content {
    text-align: left;
}

body.page-privacy-policy .static-page-content ul,
body.page-disclaimer .static-page-content ul {
    display: block;
    text-align: left;
}

body.page-privacy-policy .static-page-content h2,
body.page-privacy-policy .static-page-content h3,
body.page-privacy-policy .static-page-content h4,
body.page-disclaimer .static-page-content h2,
body.page-disclaimer .static-page-content h3,
body.page-disclaimer .static-page-content h4 {
    text-align: left;
}