.reason {

    h1 {
        position: relative;
        text-align: center;
        background-color: rgb(245, 225, 187);

        font-weight: bold;
        font-family: 'Shippori Mincho', serif;
        font-size: 18px;

        color: rgb(31, 45, 61);
        /* header ネイビーブルー */

        padding: 12px;
        margin: 0 -18px 16px;

        @media (width <=767px) {
            margin: 0 -14px 16px;
        }

        &::before {
            content: "";
            position: absolute;
            top: 0;
            bottom: 0;
            left: 8px;
            width: 8px;
            height: 100%;
            background-color: rgb(31, 45, 61);
        }
    }

    p {
        line-height: 1.8;
        margin-bottom: 1.2em;
        font-size: 16px;
        text-align: left;

        strong {
            color: var(--color-btn);
        }
    }

    ul {
        display: flex;
        flex-direction: column;
        gap: 0.8em;
        margin: 20px 0;
        padding: 0;
        list-style: none;

        li {
            background: #fff;
            border-left: 5px solid var(--color-btn);
            padding: 12px 16px;
            border-radius: 6px;
            font-weight: bold;
            color: #444;
            box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
        }
    }

    @media (width <=767px) {

        p {
            font-size: 15px;
        }
    }

    h2 {
        position: relative;
        font-size: 18px;
        font-weight: bold;
        margin-top: 80px;
        margin-bottom: 16px;
        padding-left: 12px;

        text-decoration-style: wavy;

        /* 文字と線の距離 */
        &::before {
            content: "";
            position: absolute;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            width: 6px;
            height: 70%;
            background: rgb(255, 128, 0);
            /* ctaボタンカラー オレンジ */
            border-radius: 3px;
        }
    }

    p {
        margin-bottom: 2rem;
        line-height: 1.8;
    }

    .compare-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 1.5rem;
        font-size: 0.95rem;

        th,
        td {
            border: 1px solid #ddd;
            padding: 1rem;
            text-align: center;
        }

        th {
            background: #f3f3f3;
            font-weight: 700;
        }

        td strong {
            color: #0070f3;
        }

        tr:nth-child(even) {
            background: #fcfcfc;
        }
    }

    .compare-note {
        text-align: center;
        font-size: 0.85rem;
        color: #666;
    }
}