@charset "UTF-8";

/* MV */
.p-mv {
    margin-bottom: calc((100vw / var(--vw-large))*150);
}

.p-seminar {
    position: relative;

    /* --- 導入セクション --- */
    .p-seminar__intro {
        text-align: center;
        width: calc((100vw / var(--vw-large))*804);
        margin: 0 auto calc((100vw / var(--vw-large)) * 60);

        .p-seminar__intro__header {
            text-align: left;
            margin-bottom: calc((100vw / var(--vw-large))*50);

            h2 {
                font-size: calc((100vw / var(--vw-large))*28);
                font-weight: 900;
                text-align: left;
            }

            .c-section-title-underline {
                display: block;
                width: calc((100vw / var(--vw-large)) * 158);
                /* 線の長さ */
                height: 3px;
                /* 線の太さ */
                /* 修正箇所: グラデーションで2色を半分ずつ表現 */
                background: linear-gradient(to right, #00A310 50%, #93D500 50%);
                margin-top: calc((100vw / var(--vw-large)) * 10);
            }
        }

        ul {
            align-items: flex-start;

            li {
                width: calc((100vw / var(--vw-large))*261);

                &:nth-child(2) {
                    width: calc((100vw / var(--vw-large))*242);
                }

                &:last-child {
                    width: calc((100vw / var(--vw-large))*249);
                }
            }
        }
    }

    .p-introduction {
        width: calc((100vw / var(--vw-large))*1000);
        margin: 0 auto;

        .p-seminar__intro__header {
            text-align: left;
            margin-bottom: calc((100vw / var(--vw-large))*50);

            h2 {
                font-size: calc((100vw / var(--vw-large))*28);
                font-weight: 900;
                text-align: left;
            }

            .c-section-title-underline {
                display: block;
                width: calc((100vw / var(--vw-large)) * 158);
                /* 線の長さ */
                height: 3px;
                /* 線の太さ */
                /* 修正箇所: グラデーションで2色を半分ずつ表現 */
                background: linear-gradient(to right, #00A310 50%, #93D500 50%);
                margin-top: calc((100vw / var(--vw-large)) * 10);
            }
        }

        .apartment_investment,
        .individual_consultation,
        .private_property {
            margin-bottom: calc((100vw / var(--vw-large))*70);

            h2 {
                font-size: calc((100vw / var(--vw-large))*42);
                font-weight: 900;
                text-align: center;
            }

            .c-section-title-underline {
                display: block;
                width: calc((100vw / var(--vw-large)) * 400);
                /* 線の長さ */
                height: 3px;
                /* 線の太さ */
                /* 修正箇所: グラデーションで2色を半分ずつ表現 */
                background: linear-gradient(to right, #00A310 50%, #93D500 50%);
                margin: calc((100vw / var(--vw-large)) * 13) auto 0;
            }

            .p-apartment__img {
                margin: calc((100vw / var(--vw-large))*70) auto calc((100vw / var(--vw-large))*50);
            }
        }

        .title {
            position: relative;
            /*+マークの位置基準とするためrelative指定*/
            background-color: #00A310;
            color: #fff;
            padding: calc((100vw / var(--vw-large))*15) 0 calc((100vw / var(--vw-large))*15) calc((100vw / var(--vw-large))*20);
            cursor: pointer;
            transition: all .5s ease;
            text-align: center;
        }


        /*アイコンの＋と×*/
        .title::before,
        .title::after {
            position: absolute;
            content: '';
            width: calc((100vw / var(--vw-large))*16);
            height: calc((100vw / var(--vw-large))*2);
            background-color: #fff;

        }

        .title::before {
            top: 48%;
            right: calc((100vw / var(--vw-large))*20);
            transform: rotate(0deg);

        }

        .title::after {
            top: 48%;
            right: calc((100vw / var(--vw-large))*20);
            transform: rotate(90deg);

        }

        /*　closeというクラスがついたら形状変化　*/
        .title.close::before {
            transform: rotate(45deg);
        }

        .title.close::after {
            transform: rotate(-45deg);
        }

        /*アコーディオンで現れるエリア*/
        .box {
            display: none;
            /*はじめは非表示*/
            background-color: #F8F8F8;
            padding: calc((100vw / var(--vw-large))*70) calc((100vw / var(--vw-large))*100);
            line-height: 1.8;

            .p-seminar__intro__header {
                text-align: left;
                margin-bottom: calc((100vw / var(--vw-large))*30);

                h3 {
                    font-size: calc((100vw / var(--vw-large))*28);
                    font-weight: 900;
                    text-align: left;
                }

                .c-section-title-underline {
                    display: block;
                    width: calc((100vw / var(--vw-large)) * 158);
                    /* 線の長さ */
                    height: 3px;
                    /* 線の太さ */
                    /* 修正箇所: グラデーションで2色を半分ずつ表現 */
                    background: linear-gradient(to right, #00A310 50%, #93D500 50%);
                    margin: calc((100vw / var(--vw-large)) * 10) auto calc((100vw / var(--vw-large))*30) 0;
                }

                p {
                    text-align: left;
                }

                ul {
                    padding-left: calc((100vw / var(--vw-large))*20);

                    li {
                        list-style: disc;
                    }
                }
            }

            .des_wrap {
                text-align: left;
                margin-bottom: calc((100vw / var(--vw-large))*50);

                .flex {
                    flex-wrap: wrap;
                    gap: calc((100vw / var(--vw-large))*25) calc((100vw / var(--vw-large))*52);

                    .contents {

                        span {
                            justify-content: flex-start;
                            flex-wrap: nowrap;
                            gap: calc((100vw / var(--vw-large))*5);
                            align-items: center;
                            line-height: 1.5;
                        }

                        .green {
                            background-color: #00A310;
                            display: block;
                            width: calc((100vw / var(--vw-large))*16);
                            height: calc((100vw / var(--vw-large))*16);
                        }
                    }

                    ul {
                        padding-left: calc((100vw / var(--vw-large))*20);

                        li {
                            list-style: disc;
                        }
                    }
                }

                .private_property-slider {
                    position: relative;
                    /* overflow: visible; */

                    /* --- ナビゲーションボタンのカスタムデザイン --- */
                    .swiper-button-prev,
                    .swiper-button-next {
                        /* Flexboxで中の画像を中央寄せ */
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        width: calc((100vw / var(--vw-large))*50);
                        height: calc((100vw / var(--vw-large))*50);
                        background-color: #21BC30;
                        border-radius: 50%;
                        transition: opacity 0.3s, background-color 0.3s;

                        /* デフォルトのSwiper矢印を完全に消す */
                        &::after {
                            content: none;

                        }

                        /* 中の画像のサイズ調整 */
                        img {
                            width: calc((100vw / var(--vw-large))*10);
                            /* 任意のサイズに調整してください */
                            height: auto;
                            /* 画像がクリックイベントを邪魔しないようにする場合 */
                            pointer-events: none;
                        }

                        &:hover {
                            opacity: 0.8;
                            background-color: var(--color-primary-dark);
                        }
                    }

                    /* ボタンの位置微調整（カードの外側に配置） */
                    .swiper-button-prev {
                        left: 0;

                        /* コンテナからはみ出させる */
                        @media (max-width: 767px) {
                            left: 0;
                            /* SPは内側へ */
                        }
                    }

                    .swiper-button-next {
                        right: 0;

                        @media (max-width: 767px) {
                            right: 0;
                        }
                    }
                }

            }

            .contact_wrap {
                .flex {
                    width: calc((100vw / var(--vw-large))*644);
                    margin: 0 auto;
                    border-bottom: 1px solid #fcfcfc;

                    .tit {
                        width: calc((100vw / var(--vw-large))*183);
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        background-color: #00A310;
                        color: #fff;
                        font-weight: bold;
                        padding: calc((100vw / var(--vw-large))*22) 0;
                        line-height: 1.8;
                    }

                    p {
                        width: calc((100vw / var(--vw-large))*461);
                        background-color: #EFEFEF;
                        display: flex;
                        align-items: center;
                        text-align: left;
                        padding: calc((100vw / var(--vw-large))*22) 0 calc((100vw / var(--vw-large))*22) calc((100vw / var(--vw-large))*48);

                        line-height: 1.8;
                    }
                }

                .btn_wrap {
                    margin: calc((100vw / var(--vw-large))*27) auto 0;

                    a {
                        background-color: var(--color-primary-light);
                        display: block;
                        width: calc((100vw / var(--vw-large)) * 236);
                        margin: 0 auto calc((100vw / var(--vw-large))*8);
                        color: #fff;
                        text-decoration: none;
                        font-size: calc((100vw / var(--vw-large)) * 15);
                        font-weight: bold;
                        padding: calc((100vw / var(--vw-large)) * 20) 0;
                    }

                    p {
                        font-size: calc((100vw / var(--vw-large))*14);
                    }
                }
            }

        }
    }

    .contact_list {
        background-color: #FAFAFA;
        padding: calc((100vw / var(--vw-large))*100) 0;

        .l-inner {
            width: calc((100vw / var(--vw-large))*800);
            margin: 0 auto;

            .p-seminar__intro__header {
                text-align: left;
                margin-bottom: calc((100vw / var(--vw-large))*50);

                h2 {
                    font-size: calc((100vw / var(--vw-large))*28);
                    font-weight: 900;
                    text-align: left;
                }

                .c-section-title-underline {
                    display: block;
                    width: calc((100vw / var(--vw-large)) * 158);
                    /* 線の長さ */
                    height: 3px;
                    /* 線の太さ */
                    /* 修正箇所: グラデーションで2色を半分ずつ表現 */
                    background: linear-gradient(to right, #00A310 50%, #93D500 50%);
                    margin-top: calc((100vw / var(--vw-large)) * 10);
                }
            }

            ul {
                li {
                    margin-bottom: calc((100vw / var(--vw-large))*50);

                    &:first-child {
                        position: relative;

                        .btn_wrap {
                            position: absolute;
                            bottom: calc((100vw / var(--vw-large))*50);
                            left: calc((100vw / var(--vw-large))*40);

                            /* 「詳しく見る」ボタン */
                            .c-btn-circle {
                                display: inline-flex;
                                align-items: center;
                                font-size: calc((100vw / var(--vw-large)) * 15);
                                font-weight: bold;
                                color: var(--color-primary);
                                text-decoration: none;
                                transition: opacity 0.3s;

                                /* 黒い円と白い矢印 */
                                &::after {
                                    content: "";
                                    display: inline-block;
                                    width: calc((100vw / var(--vw-large)) * 44);
                                    height: calc((100vw / var(--vw-large)) * 44);
                                    background-color: #00800D;
                                    border-radius: 50%;
                                    margin-left: calc((100vw / var(--vw-large)) * 15);

                                    /* 白い矢印 (SVGデータ) */
                                    background-image: url(../img/common/white_arrow.svg);
                                    background-repeat: no-repeat;
                                    background-position: center;
                                    background-size: calc((100vw / var(--vw-large))*10);
                                    /* 矢印のサイズ調整 */
                                }

                                &:hover {
                                    opacity: 0.7;
                                }
                            }

                            .border_g {
                                background-color: #00800D;
                                height: 2px;
                                width: calc((100vw / var(--vw-large))*100);
                            }
                        }
                    }

                    &:last-child {
                        position: relative;

                        .btn_wrap {
                            position: absolute;
                            bottom: calc((100vw / var(--vw-large))*50);
                            left: calc((100vw / var(--vw-large))*40);

                            /* 「詳しく見る」ボタン */
                            .c-btn-circle {
                                display: inline-flex;
                                align-items: center;
                                font-size: calc((100vw / var(--vw-large)) * 15);
                                font-weight: bold;
                                color: var(--color-primary);
                                text-decoration: none;
                                transition: opacity 0.3s;

                                /* 黒い円と白い矢印 */
                                &::after {
                                    content: "";
                                    display: inline-block;
                                    width: calc((100vw / var(--vw-large)) * 44);
                                    height: calc((100vw / var(--vw-large)) * 44);
                                    background-color: #00800D;
                                    border-radius: 50%;
                                    margin-left: calc((100vw / var(--vw-large)) * 15);

                                    /* 白い矢印 (SVGデータ) */
                                    background-image: url(../img/common/white_arrow.svg);
                                    background-repeat: no-repeat;
                                    background-position: center;
                                    background-size: calc((100vw / var(--vw-large))*10);
                                    /* 矢印のサイズ調整 */
                                }

                                &:hover {
                                    opacity: 0.7;
                                }
                            }

                            .border_g {
                                background-color: #00800D;
                                height: 2px;
                                width: calc((100vw / var(--vw-large))*165);
                            }
                        }
                    }
                }
            }

            .contact_bg {
                position: relative;

                .btn_wrap {
                    position: absolute;
                    bottom: calc((100vw / var(--vw-large))*50);
                    left: calc((100vw / var(--vw-large))*40);

                    /* 「詳しく見る」ボタン */
                    .c-btn-circle {
                        display: inline-flex;
                        align-items: center;
                        font-size: calc((100vw / var(--vw-large)) * 15);
                        font-weight: bold;
                        color: var(--color-primary);
                        text-decoration: none;
                        transition: opacity 0.3s;

                        /* 黒い円と白い矢印 */
                        &::after {
                            content: "";
                            display: inline-block;
                            width: calc((100vw / var(--vw-large)) * 44);
                            height: calc((100vw / var(--vw-large)) * 44);
                            background-color: #00800D;
                            border-radius: 50%;
                            margin-left: calc((100vw / var(--vw-large)) * 15);

                            /* 白い矢印 (SVGデータ) */
                            background-image: url(../img/common/white_arrow.svg);
                            background-repeat: no-repeat;
                            background-position: center;
                            background-size: calc((100vw / var(--vw-large))*10);
                            /* 矢印のサイズ調整 */
                        }

                        &:hover {
                            opacity: 0.7;
                        }
                    }

                    .border_g {
                        background-color: #00800D;
                        height: 2px;
                        width: calc((100vw / var(--vw-large))*165);
                    }
                }
            }
        }
    }
}