        .area-index-lead {
            margin-bottom: 2rem;
        }

        .area-jump-box {
            margin: 1.8rem 0 2.4rem;
            padding: 1.2rem;
            border: 1px solid #e8e2dc;
            border-radius: 16px;
            background: #fffaf7;
        }

        .area-jump-title {
            margin: 0 0 .8rem;
            font-weight: 700;
        }

        .area-jump-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: .75rem;
        }

        .area-jump-btn {
            display: block;
            padding: .75rem .8rem;
            border-radius: 999px;
            font-weight: 700;
            text-align: center;
            text-decoration: none;
            border: 1px solid transparent;
            color: #24456f;
            background: #eef5ff;
            border-color: #cfe0f5;
        }

        .area-jump-btn.hyogo {
            color: #245447;
            background: #eef7f4;
            border-color: #cfe7dd;
        }

        .area-jump-btn.related {
            color: #704052;
            background: #fff0f3;
            border-color: #f2cbd7;
        }

        .area-section {
            margin-top: 2.6rem;
            scroll-margin-top: 90px;
        }

        .area-link-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 1rem;
        }

        .area-card {
            display: block;
            padding: 1rem;
            border: 1px solid #e5e5e5;
            border-left: 6px solid #7da6d8;
            border-radius: 12px;
            background: #fbfdff;
            text-decoration: none;
            color: inherit;
            transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
        }

        .area-card:hover {
            transform: translateY(-2px);
            box-shadow: 0 8px 18px rgba(0, 0, 0, .08);
        }

        .area-card.hyogo {
            border-left-color: #7cbba7;
            background: #fbfffd;
        }

        .area-card.special {
            border-left-color: #dfa0b5;
            background: #fffafa;
        }

        .area-name {
            display: inline-block;
            margin-bottom: .45rem;
            font-weight: 700;
            color: #24456f;
        }

        .area-card.hyogo .area-name {
            color: #245447;
        }

        .area-card.special .area-name {
            color: #704052;
        }

        .area-card p {
            margin: 0;
            font-size: .95rem;
            line-height: 1.75;
        }

        .area-note {
            margin-top: 2.4rem;
            padding: 1.1rem;
            border-radius: 14px;
            background: #fffaf7;
            border: 1px solid #eadfd6;
        }

        .access {
            font-size: 12px;
            color: #444;
            margin-bottom: 4px;
        }

        .access .time {
            font-size: 16px;
            font-weight: 800;
            color: #163A6A;
            line-height: 1.2;
        }

        .gmap {
            max-width: 700px;
            margin: 16px 0;
        }

        .gmap summary {
            cursor: pointer;
            font-weight: 700;
            color: #163A6A;
            list-style: none;
            user-select: none;
        }

        .gmap summary::before {
            content: "▶ ";
        }

        .gmap[open] summary::before {
            content: "▼ ";
        }

        .gmap iframe {
            margin-top: 10px;
            border-radius: 8px;
        }

        @media screen and (max-width: 768px) {

            .area-jump-grid,
            .area-link-grid {
                grid-template-columns: 1fr;
            }
        }