/* ================================
   下層ページ：サービス内容 (/service/)
=================================== */
.service {
    text-align: center;

    /* ページタイトル */
    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 {
        font-size: 1rem;
        color: #555;
        line-height: 1.8;
        max-width: 700px;
        margin: 0 auto 80px;
    }

    /* --- サービス詳細ブロック群 --- */
    .service-detail {
        display: flex;
        flex-direction: column;
        gap: 60px;
        max-width: 900px;
        margin: 0 auto 100px;

        .service-block {
            background: rgba(255, 183, 77, 0.15);
            /* 淡いオレンジ */
            border-radius: 1rem;
            border: 1px solid rgb(255, 128, 0);

            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
            padding: 50px 60px;
            text-align: left;
            transition: transform 0.3s ease, box-shadow 0.3s ease;

            &:hover {
                transform: translateY(-3px);
                box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
            }

            h2 {
                font-size: 1.5rem;
                font-weight: 700;
                color: #ff6a00;
                margin-bottom: 0.8em;
            }

            p {
                color: #444;
                font-size: 1rem;
                line-height: 1.8;
                margin-bottom: 1.2em;
            }

            ul {
                list-style: none;
                padding: 0;
                margin: 0;

                li {
                    position: relative;
                    padding-left: 1.6em;
                    margin-bottom: 0.6em;
                    color: #333;
                    font-size: 0.95rem;

                    &::before {
                        content: "✔";
                        position: absolute;
                        left: 0;
                        top: 0;
                        color: #ff6a00;
                        font-weight: 700;
                    }
                }
            }
        }
    }

    /* --- プラン紹介リンク --- */
    .service-plan-link {
        max-width: 900px;
        margin: 0 auto;
        border: 1px solid rgb(255, 128, 0);
        background: #fff;
        border-radius: 1rem;
        padding: 50px 5%;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);

        text-align: center;
        margin-bottom: 100px;

        h2 {
            font-size: 24px;
            font-weight: 700;
            color: #222;
            margin-bottom: 0.5em;
        }

        p {
            color: #555;
            margin-bottom: 2em;
            font-size: 1rem;
        }

        .section-btn {
            display: inline-block;
            background: #ff6a00;
            color: #fff;
            font-weight: 700;
            padding: 0.9em 2.2em;
            border-radius: 2em;
            transition: background 0.3s ease, transform 0.3s ease;

            &:hover {
                background: #e45b00;
                transform: translateY(-2px);
            }
        }
    }

    /* --- CTA --- */
    .cta {
        margin: 0 auto;
        max-width: 900px;
        background: #fff;
        border: 1px solid rgb(255, 128, 0);

        border-radius: 1rem;
        padding: 80px 5%;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
        text-align: center;

        h2 {
            font-size: 1.8rem;
            font-weight: 700;
            color: #222;
            margin-bottom: 0.6em;
        }

        p {
            font-size: 1rem;
            color: #555;
            margin-bottom: 2em;
        }

        .cta-btns {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            gap: 1.2em;

            a {
                display: inline-block;
                padding: 0.9em 2em;
                border-radius: 2em;
                font-weight: 700;
                font-size: 0.95rem;
                transition: all 0.3s ease;

                &.btn-line {
                    background: #06c755;
                    color: #fff;

                    &:hover {
                        background: #04ad4a;
                        transform: translateY(-2px);
                    }
                }

                &.btn-form {
                    background: #ff6a00;
                    color: #fff;

                    &:hover {
                        background: #e45b00;
                        transform: translateY(-2px);
                    }
                }
            }
        }
    }

    /* --- レスポンシブ対応 --- */
    @media (width <=768px) {
        padding: 80px 6%;



        >p {
            font-size: 0.95rem;
            margin-bottom: 60px;
        }

        .service-detail {
            gap: 40px;

            .service-block {
                padding: 40px 30px;

                p {
                    font-size: 0.95rem;
                }

                li {
                    font-size: 0.9rem;
                }
            }
        }

        .cta {
            padding: 60px 6%;

            p {
                font-size: 0.95rem;
            }

            .cta-btns {
                flex-direction: column;
                gap: 1em;
            }
        }
    }
}