/* 全体設定 */
body {
    font-family: 'Noto Sans JP', sans-serif;
    margin: 0;
    padding: 0;
    background-color: #ffffff;
}
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}
.site-header {
    padding: 10px 0;
}
.site-header .header-top {
    display: flex;
    align-items: center;
}
.site-header .site-logo {
    max-width: 100px;
height:auto;
    margin-right: 20px;
}
.site-header nav ul {
    list-style: none;
    display: flex;
    padding: 0;
    margin: 0;
}
.site-header nav ul li {
    margin-right: 15px;
}
.site-header nav ul li a {
    text-decoration: none;
    color: #333;
font-weight:700;
}
.site-header nav ul li a.active { color:#003366 !important; text-decoration: underline;}
.site-header nav ul li a:hover { color:#003366;
text-decoration: underline;
}
/* ナビゲーションバナー */
.nav-banner {
    background-color: #003366;
    color: white;
    padding: 5px 0;
    text-align: center;
width: 100vw;
font-weight: 300;
font-size: 13px;
}
/* メインコンテンツ */
main {
    margin: 20px 0;
}
main h1 {
    font-size: 24px;
    margin-bottom: 15px;
    color: #333;
    font-weight: 700;
    border-bottom: 2px solid #003366;
    padding-bottom: 10px;
}
.onegai-content p {
    font-size: 16px;
    line-height: 1.6;
    color: #333;
}
.onegai-content ul {
    list-style-type: disc;
    margin: 20px 0;
    padding-left: 40px;
}
.onegai-content ul li {
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 1.6;
}
/* フッター */
footer {
    text-align: center;
    padding: 10px 0;
    background-color: #f9f9f9;
    border-top: 1px solid #ddd;
}
footer a {
    color: #003366;
    text-decoration: none;
}
footer a:hover {
    text-decoration: underline;
}
footer .disclaimer {
    font-size: 12px;
    color: #666;
    margin-top: 5px;
}



/* === スマホ版（768px以下）用のメディアクエリ === */
@media (max-width: 768px) {
    /* ナビゲーションバナーを非表示 */
    .nav-banner {
        display: none; /* バナーを非表示に */
    }

    /* カテゴリ選択部分（バナー位置に配置） */
    nav.category-scroll {
        display: flex;
        overflow-x: auto; /* 横スクロールを有効に */
        white-space: nowrap; /* 改行を防止 */
        background-color: #f9f9f9; /* 背景を落ち着いた色に */
        padding: 10px 0; /* パディングを調整もと１０ */
        border-bottom: 1px solid #ddd; /* 下線を追加 */
    }

    nav.category-scroll a {
        flex-shrink: 0; /* リンク幅を縮めない */
        color: #333; /* 通常の文字色 */
        text-decoration: none;
        padding: 5px 15px; /* ボタンの内側スペース */
        font-size: 14px;
        font-weight: bold;
        border-radius: 4px; /* 角を丸く */
        margin-right: 10px; /* ボタン間のスペース */
    }

 /* 検索フォーム */
    .site-header .header-top {
        display: block; /* フォームを下に配置 */
        padding-bottom: 0px; /*もと10*/
    }

    .search-form {
        display: flex;
        align-items: center;
        margin-top: 0px; /*もと10*/
        background-color: #f0f0f0; /* 背景色を薄いグレーに */
        border-radius: 4px;
        padding: 5px;
    }

    .search-form input[type="text"] {
        border: none;
        background-color: transparent;
        padding: 5px;
        font-size: 14px;
        outline: none; /* フォーカス時のアウトラインを削除 */
        flex: 1;
    }

    .search-form button {
        border: none;
        background: none;
        cursor: pointer;
        padding: 5px;
        font-size: 16px;
        color: #333;
    }

    nav.category-scroll a:hover {
        background-color: #ddd; /* ホバー時の背景色 */
    }

    nav.category-scroll a.active {
        border-bottom: 2px solid #003366; /* アクティブ状態を下線で強調 */
        color: #003366; /* アクティブ状態の文字色 */
    }