 /* ページ内ナビゲーション */
        .page-navigations {
            margin-top: 100px;
            margin-bottom: -50px;
        }

        .navi-links {
            display: flex;
            justify-content: center;
            gap: 20px;
            flex-wrap: wrap;
        }

        .navi-link {
            background: white;
            border: 3px solid #e04f54;
            border-radius: 10px;
            padding: 12px 30px;
            text-decoration: none;
            color: #e04f54;
            font-weight: 600;
            transition: all 0.3s ease;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .navi-link:hover {
            background: #e04f54;
            color: white;
            transform: translateY(-2px);
        }

        .navi-link::before {
            content: "▼";
        }

        /* 避難場所テーブル */
        .evacuation-table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 15px;
        }

        .evacuation-table td {
            padding: 8px 0;
            vertical-align: top;
            border: none;
        }

        .evacuation-table .evacuation-type {
            font-weight: bold;
            min-width: 130px;
            width: 130px;
        }

        .evacuation-table .evacuation-detail {
            padding-left: 20px;
        }

        /* 左寄せテキスト見出し */
        .section-heading {
            text-align: left;
            font-weight: 600;
            color: #e04f54;
            margin: 40px 0 30px 0;
        }


        /* 2カラムレイアウト */
        .two-column {
            display: flex;
            align-items: flex-start;
            gap: 40px;
            margin: 30px 0;
        }

        .column-text {
            flex: 1;
            line-height: 1.8;
            font-size: 1em;
        }

        .column-image {
            flex: 0 0 350px;
            border-radius: 15px;
        }

        .column-image img {
            width: 100%;
            height: 500px;
            object-fit: cover;
        }

        /* ルクミーフォトセクション */
        .lukumi-section {
            padding: 0;
            text-align: left;
        }

        .lukumi-logo {
            text-align: center;
            margin: 30px 0;
        }

        .lukumi-logo img {
            max-width: 200px;
            height: auto;
        }

        .lukumi-description {
            line-height: 1.8;
            margin: 20px 0;
            text-align: center;
            font-weight: bold;
                        font-size: 2rem;

        }

        .feature-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 30px;
            margin: 30px 0;
        }

        .feature-box {
            background: white;
            border-radius: 15px;
            padding: 25px;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
            text-align: left;
        }

        .feature-box h4 {
            color: #71A54A;
            font-size: 2rem;
            font-weight: 600;
            margin-bottom: 15px;
            text-align: center;
        }

        .feature-box p {
            font-size: 1em;
            line-height: 1.6;
        }

        /* ダウンロードセクション */
        .download-section {
            padding: 0;
        }

        .download-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 30px;
            margin: 30px 0;
        }

        /* PDFダウンロードアイテム */
        .pdf-download-item {
            background: white;
            border-radius: 15px;
            text-decoration: none;
            transition: transform 0.3s ease;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
            position: relative;
            overflow: hidden;
            height: 250px;
            display: flex;
            flex-direction: column;
        }

        .pdf-download-item:hover {
            transform: translateY(-2px);
        }

        .pdf-download-item h4 {
            background: #e04f54;
            color: white;
            margin: 0;
            padding: 15px;
            font-size: 2rem;
            font-weight: 600;
            text-align: center;
            border-radius: 15px 15px 0 0;
        }

        .pdf-download-item .image-container {
            flex-grow: 1;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 20px 20px 40px 20px;
        }

        .pdf-download-item img {
            max-width: 130px;
            max-height: 130px;
        }

        .pdf-icon {
            position: absolute;
            bottom: 20px;
            right: 20px;
            width: 40px;
            height: 40px;
            background: #d32f2f;
            border-radius: 8px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            font-weight: bold;
            font-size: 12px;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
        }

        /* FAQセクション */
        .faq-section {
            padding: 0;
        }

        .faq-item:not(:last-child) {
            margin-bottom: 30px;
        }

        .faq-question {
            background: #FED5A7;
            padding: 15px 20px;
            font-size: 2rem;
            font-weight: 600;
            color: #333;
            position: relative;
            border-radius: 10px;
            display: flex;
            align-items: center;
            gap: 15px;
        }

        .faq-question::before {
            content: "Q";
            display: flex;
            align-items: center;
            justify-content: center;
            background: #FF9800;
            color: white;
            width: 32px;
            height: 32px;
            border-radius: 50%;
            font-weight: bold;
            font-size: 1.1rem;
            flex-shrink: 0;
        }

        .faq-answer {
            background: white;
            padding: 20px;
            font-size: 1em;
            line-height: 1.7;
            border-radius: 10px;
            display: flex;
            align-items: flex-start;
            gap: 15px;
            margin-top: 5px;
        }

        .faq-answer::before {
            content: "A";
            display: flex;
            align-items: center;
            justify-content: center;
            background: #e04f54;
            color: white;
            width: 32px;
            height: 32px;
            border-radius: 50%;
            font-weight: bold;
            font-size: 1.1rem;
            flex-shrink: 0;
            margin-top: 2px;
        }

        .faq-answer p {
            margin: 0;
            flex: 1;
        }

        .faq-question {
          cursor: pointer;
          display: flex;
          justify-content: space-between;
          align-items:flex-start;
        }

        .faq-question span:first-child {
          flex-grow: 1;
          text-align: left;
          padding-left: 8px;
        }

        .faq-answer {
          display: none;
        }

        .toggle-icon {
          font-size: 20px;
          transition: transform 0.3s ease;
        }

        .toggle-icon::before {
            content: "+";
        }

        .faq-item[open] .toggle-icon::before {
            content: "−";
        }

        .faq-item[open] .faq-answer {
            display: flex;
        }

        /* レスポンシブ対応 */
        @media (max-width: 768px) {
            .navi-links {
                flex-direction: column;
                align-items: center;
                margin-bottom: 50px;
            }

            .navi-link {
                width: auto;
                justify-content: center;
            }

            .two-column {
                flex-direction: column;
            }

            .column-image {
                flex: none;
                max-width: 100%;
            }

            .feature-grid,
            .download-grid {
                grid-template-columns: 1fr;
            }

            .ribbon-heading {
                font-size: 2.2rem;
            }

            .section-heading {
                font-size: 1.5rem;
            }

            .pdf-download-item {
                height: auto;
            }

            .pdf-download-item h4 {
                font-size: 1.8rem;
                padding: 12px;
            }

            .pdf-download-item .image-container {
                padding: 15px;
            }

            .pdf-download-item img {
                max-width: 200px;
                max-height: 150px;
            }
        }
