/* --- Site Policy Specific Styles --- */
/* index.cssと同様の背景文字演出を追加 */
/* POLICYやPORTFOLIO以外として "GUIDELINE" を採用 */
body::before {
    content: "GUIDELINE";
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-10deg);
    font-family: 'Oswald', sans-serif;
    font-size: 22vw; /* 文字数に合わせて少し調整 */
    font-weight: 700;
    color: rgba(109, 91, 123, 0.03); /* main-colorの薄い色 */
    z-index: -1;
    pointer-events: none;
    white-space: nowrap;
}
/* ページタイトルエリア */
.page-header-wrapper {
    padding-top: 180px; /* 固定ヘッダーの分を確保 */
    padding-bottom: 60px;
    text-align: center;
    background-color: var(--bg-color);
}

.page-title {
    font-family: 'Oswald', sans-serif;
    font-size: 4rem;
    font-weight: 700;
    color: var(--text-color);
    margin: 0;
    letter-spacing: 2px;
    line-height: 1;
}

.page-subtitle {
    font-family: "Kaisei Decol", serif;
    font-size: 1rem;
    color: var(--main-color);
    margin-top: 10px;
    letter-spacing: 1px;
}

/* コンテンツエリア全体 */
.policy-container {
    max-width: 800px;
    margin: 0 auto 150px; /* 下部に余白 */
    padding: 0 20px;
}

/* 各セクション */
.policy-section {
    margin-bottom: 60px;
}

/* 見出しスタイル (index.cssのprojectitem h1の雰囲気を踏襲) */
.policy-section h2 {
    font-family: "Kaisei Decol", serif;
    font-size: 1.5rem;
    color: var(--text-color);
    border-left: 5px solid var(--main-color);
    padding-left: 20px;
    margin-bottom: 25px;
    line-height: 1.4;
}

/* 本文テキスト */
.policy-section p {
    text-align: left;
    font-size: 1rem;
    line-height: 2;
    color: var(--text-color);
    margin: 0;
}

/* リストスタイル（免責事項など） */
.policy-list {
    padding-left: 20px;
    margin: 0;
}

.policy-list li {
    list-style-type: disc;
    margin-bottom: 10px;
    line-height: 2;
    color: var(--text-color);
}

.policy-list li::marker {
    color: var(--main-color); /* マーカーの色をアクセントカラーに */
}

/* --- Responsive for Site Policy --- */
@media screen and (max-width: 768px) {
    .page-header-wrapper {
        padding-top: 140px;
        padding-bottom: 40px;
    }

    .page-title {
        font-size: 2.5rem;
    }

    .policy-container {
        padding: 0 25px; /* スマホでの左右余白 */
        margin-bottom: 100px;
    }

    .policy-section h2 {
        font-size: 1.3rem;
        padding-left: 15px;
    }

    .policy-section p,
    .policy-list li {
        font-size: 0.95rem;
    }
}