.price {

    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);
        }
    }


    .price-layout {
        position: relative;

        .price-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .price-title {
            width: fit-content;
            height: fit-content;
            position: absolute;
            inset: 0;
            margin: auto;

            .inner {
                text-align: center;

                h2 {
                    font-size: 32px;
                    color: rgb(242, 244, 247);
                    -webkit-text-stroke: 10px rgb(51, 51, 51);
                    paint-order: stroke;
                    font-weight: bold;

                    @media (width <=767px) {
                        font-size: 24px;
                        -webkit-text-stroke: 8px rgb(51, 51, 51);
                    }

                }

                span {
                    font-size: 28px;
                    color: rgb(242, 244, 247);
                    -webkit-text-stroke: 6px rgb(51, 51, 51);
                    paint-order: stroke;
                    font-weight: bold;

                    @media (width <=767px) {
                        font-size: 20px;
                        -webkit-text-stroke: 5px rgb(51, 51, 51);
                    }
                }
            }

            p {
                margin-top: 8px;
                text-align: center;
                font-size: 24px;
                font-weight: bold;
            }
        }
    }

    h3 {
        position: relative;
        font-size: 18px;
        font-weight: bold;
        margin-top: 32px;
        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;
        }
    }


    .price-table {
        width: 100%;
        border-collapse: collapse;
        margin-top: 16px;
        font-size: 15px;
        text-align: center;
        overflow-x: auto;

        thead {
            background: var(--color-main);
            /* ネイビーブルー */
            color: #fff;

            th {
                text-align: center;
                padding: 12px 6px;
                font-weight: bold;
                border: 1px solid #ddd;
                /* ヘッダーにも境界線 */
            }
        }

        tbody {
            tr {
                &:nth-child(even) {
                    background: var(--color-bg);
                    /* クールグレー */
                }

                td {
                    padding: 12px 6px;
                    border: 1px solid #ddd;
                    /* これで縦線・横線を明確に */
                }

                td:first-child {
                    font-weight: bold;
                    color: var(--color-btn);
                    /* オレンジで項目名強調 */
                    background: rgba(255, 128, 0, 0.1);
                    /* 項目名に淡オレンジ背景 */
                }
            }
        }
    }

    .price-difference {
        list-style: none;
        padding: 0;
        margin: 1rem 0;
        display: grid;
        gap: 1rem;

        li {
            background: #fff;
            border: 2px solid var(--color-accent);
            /* ターコイズ枠 */
            border-radius: 8px;
            padding: 1rem;
            font-size: 15px;
            line-height: 1.6;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);

            strong {
                font-size: 16px;
                color: var(--color-main);
            }
        }
    }

    .flow-detail {
        margin: 1em 0;

        li {
            margin-left: 1em;
            list-style-type: disc;
        }
    }


    /* ボタン */
    .flow-btn {
        text-align: center;
        margin-top: 16px;
        margin-bottom: 48px;

        .section-btn {
            display: inline-block;
            padding: 12px 28px;
            background: var(--color-btn);
            color: #fff;
            font-weight: bold;
            border-radius: 9999px;
            font-size: 16px;
            letter-spacing: 0.05em;
            transition: all 0.3s;
        }
    }



}