@charset "utf-8";

.feature {
    position: relative;

    .w1344 {
        padding: 35px 0 90px;

        @media(max-width:1024px) {
            max-width: calc(312/390*100%);
            width: 100%;
        }

        .p-title {
            margin-bottom: 40px;
        }

        .desc {
            p {
                font-family: var(--fmain);
                font-weight: 400;
                --fmin: 14;
                --fmax: 16;
                font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
                line-height: calc(30/16*100%);
                text-align: center;
                color: #000;

                @media(max-width:700px) {
                    line-height: calc(30/14*100%);
                }
            }
        }

        .list {
            display: flex;
            justify-content: center;
            gap: 60px;
            margin-top: 70px;

            @media(max-width:960px) {
                flex-direction: column;
            }

            .item {
                max-width: 385px;
                width: 25%;
                position: relative;

                @media(max-width:1024px) {
                    width: 100%;
                    max-width: 100%;
                }

                @media(max-width:960px) {
                    img {
                        width: 50%;
                        margin: 0 auto;
                    }
                }

                @media(max-width:767px) {
                    img {
                        width: 100%;
                        margin: 0 auto;
                    }
                }

                .num {
                    position: absolute;
                    top: 0;
                    left: 0;
                    z-index: -1;
                }



                .item-ttl {
                    margin-top: 40px;
                    margin-bottom: 30px;
                    font-family: var(--fmain);
                    font-weight: 500;
                    text-align: center;
                    --fmin: 18;
                    --fmax: 24;
                    font-size: clamp(1.125rem, 0.876rem + 0.52vw, 1.5rem);
                    color: #000;
                }

                .desc {
                    p {
                        font-family: var(--fmain);
                        font-weight: 400;
                        --fmin: 14;
                        --fmax: 16;
                        font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
                        line-height: calc(30/16*100%);
                        text-align: left;
                        color: #000;
                    }
                }
            }

            .item:first-child.fadeInUp {
                animation-delay: 0s;
            }

            .item:nth-child(2).fadeInUp {
                animation-delay: .1s;
            }

            .item:nth-child(3).fadeInUp {
                animation-delay: .2s;
            }

        }


    }
}

.feature::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 102px;
    left: 0;
    background: url(/system_panel/uploads/images/20251211200251371893.png) no-repeat top/100% auto;
    z-index: -1;

    @media(max-width:700px) {
        top: auto;
        bottom: -5%;
        background-position: bottom;
    }
}

.flow {
    position: relative;
    margin-bottom: 120px;

    .w1344 {
        background-color: #FFFFFF;
        padding: 40px 0;
        width: 85%;

        @media(max-width:700px) {
            max-width: calc(350/390*100%);
            width: 100%;
            padding: 80px 0;
        }

        .flow-tabs {
            display: flex;
            gap: 48px;
            margin-top: 40px;

            @media(max-width:700px) {
                gap: 24px;
            }
        }

        .flow-tab {
            border-radius: 26px;
            max-width: 190px;
            height: 52px;

            width: 100%;
            background: #d0ecf2;
            cursor: pointer;
            transition: .25s;
            text-align: center;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 14px;

            img {
                width: 20px;
                height: auto;

                @media(max-width:700px) {
                    width: 15px;
                }
            }

            @media(max-width:700px) {
                height: 30px;
            }

            p {
                font-family: var(--fmain);
                font-weight: 500;
                --fmin: 14;
                --fmax: 20;
                font-size: clamp(0.875rem, 0.626rem + 0.52vw, 1.25rem);
                letter-spacing: 0.1em;
                color: #003657;
            }
        }

        .flow-tab.active {
            background: #003657;

            p {
                color: #fff;
            }
        }

        .tab-panel {
            display: none;
            opacity: 0;
            transform: translateY(20px);
            transition: opacity .4s ease, transform .4s ease;
        }

        .tab-panel.active {
            display: block;
            opacity: 1;
            transform: translateY(0);
        }


        .item {
            display: flex;
            align-items: flex-start;
            gap: 75px;
            padding: 40px 0;
            border-bottom: 1px solid #12b6d7;

            @media(max-width:1150px) {
                flex-direction: column;
                gap: 20px;
                padding: 32px 0 20px;
                align-items: center;
            }

            .img {
                max-width: 365px;
                width: 50%;

                @media(max-width:700px) {
                    max-width: 262px;
                    width: 100%;
                }
            }

            .text {
                max-width: 522px;
                width: 100%;

                .item-ttl {
                    display: flex;
                    gap: 36px;
                    align-items: center;
                    margin-bottom: 30px;

                    .step {
                        font-family: var(--fen);
                        font-weight: 400;
                        --fmin: 20;
                        --fmax: 29;
                        font-size: clamp(1.25rem, 0.876rem + 0.78vw, 1.813rem);
                        color: #12b6d7;
                    }

                    .main {
                        font-family: var(--fmain);
                        font-weight: 400;
                        line-height: 1;
                        --fmin: 16;
                        --fmax: 24;
                        font-size: clamp(1.125rem, 0.876rem + 0.52vw, 1.5rem);
                        color: #000;
                    }
                }

                .desc {
                    font-family: var(--fmain);
                    font-weight: 400;
                    --fmin: 14;
                    --fmax: 16;
                    font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
                    line-height: calc(35/16*100%);
                    text-align: left;
                    color: #000;
                }

                .linklist {
                    display: flex;
                    gap: 9px;
                    margin-top: 32px;

                    @media(max-width:700px) {
                        flex-direction: column;
                        align-items: center;
                    }

                    a {
                        height: 47px;
                        justify-content: center;
                        transition: .4s ease;
                    }

                    a:hover {
                        filter: opacity(50%);
                    }

                    .contact-tel {
                        max-width: 191px;
                        width: 100%;
                        border: 1px solid #003657;
                        gap: 0 6px;
                        align-items: center;

                        .f-8 {
                            grid-area: 2 / 1 / 3 / 3;
                            text-align: center;
                        }
                    }

                    .contact-form {
                        max-width: 191px;
                        width: 100%;
                        display: flex;
                        gap: 9px;
                        background: #003657;
                        align-items: center;

                        img {
                            width: 16px;
                            height: auto;
                        }

                        p {
                            font-family: var(--fmain);
                            font-weight: 600;
                            font-size: 16px;
                            color: #fff;
                        }
                    }

                    .contact-line {
                        max-width: 121px;
                        width: 100%;
                        display: flex;
                        gap: 11px;
                        background: transparent;
                        border: 1px solid #03c755;
                        align-items: center;

                        @media(max-width:700px) {
                            max-width: 191px;
                        }

                        img {
                            width: 21px;
                            height: auto;
                        }

                        p {
                            font-family: var(--fmain);
                            font-weight: 600;
                            font-size: 14px;
                            color: #003657;
                        }
                    }
                }

                .otherlink {
                    display: flex;
                    align-items: center;
                    gap: 19px;
                    justify-content: center;
                    border: 1px solid #003657;
                    max-width: 331px;
                    width: 100%;
                    height: 47px;
                    margin-top: 22px;

                    p {
                        font-family: var(--fmain);
                        font-weight: 400;
                        --fmin: 16;
                        --fmax: 18;
                        font-size: clamp(1rem, 0.917rem + 0.17vw, 1.125rem);
                        color: #003657;
                    }

                    .link-arrow {
                        position: relative;
                        background-image: url(/system_panel/uploads/images/20251211051431253240.svg);
                        width: 33px;
                        height: 17px;
                        inset: 0;
                        transition: .4s ease;

                        @media(max-width:700px) {
                            width: 39px;
                            height: 20px;
                            border-radius: 10px;
                        }
                    }
                }

                .otherlink:hover .link-arrow {
                    background-image: url(/system_panel/uploads/images/20251211051717225624.svg);
                }
            }
        }
    }
}

.flow.has-deco::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 102px;
    left: 0;
    background: url(/system_panel/uploads/images/20251211073418110069.png) no-repeat top/100% auto;
    z-index: -1;

    @media(max-width:700px) {
        top: auto;
        bottom: -5%;
        background-position: bottom;
    }
}

.support {
    position: relative;

    .w1152 {
        padding-bottom: 120px;

        @media(max-width:1024px) {
            padding-bottom: 79px;
            max-width: calc(312/390*100%);
            width: 100%;
        }

        .p-title {
            margin-bottom: 60px;

            @media(max-width:1024px) {
                margin-bottom: 40px;
            }
        }

        .list {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            grid-template-rows: auto;
            gap: 30% 5%;

            @media(max-width:1024px) {
                display: flex;
                flex-direction: column;
                gap: 56px;
            }

            .item {
                display: flex;
                align-items: flex-start;
                gap: 15px;

                @media(max-width:700px) {
                    display: grid;
                    grid-template-columns: 47px auto;
                    grid-template-rows: auto;
                }

                .num {
                    width: 12%;
                    text-align: center;
                    position: relative;
                    font-family: var(--fen);
                    font-weight: 400;
                    font-size: 32px;
                    color: #000e0f;

                    @media(max-width:700px) {
                        grid-area: 1 / 1 / 2 / 2;
                        width: auto;
                    }
                }

                .num::before {
                    content: "";
                    position: absolute;
                    bottom: -5px;
                    left: 0;
                    margin: auto;
                    background: url(/system_panel/uploads/images/20251212012820180951.svg) no-repeat center/100% auto;
                    width: 100%;
                    height: 3px;
                }

                img {
                    width: 14%;

                    @media(max-width:700px) {
                        grid-area: 1 / 2 / 2 / 3;
                        width: auto;
                        height: 100px;
                        margin: 0 auto;
                    }
                }

                .text {
                    display: flex;
                    flex-direction: column;
                    gap: 24px;

                    @media(max-width:700px) {
                        grid-area: 2 / 1 / 3 / 3;
                        align-items: center;
                    }

                    .main {
                        font-family: var(--fmain);
                        font-weight: 400;
                        font-size: 20px;
                        line-height: 1;
                        color: #000;
                    }

                    .desc {
                        font-family: var(--fmain);
                        font-weight: 400;
                        --fmin: 14;
                        --fmax: 16;

                        font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
                        line-height: calc(30/16*100%);
                        text-align: left;
                        color: #000;

                        @media(max-width:700px) {
                            line-height: calc(30/14*100%);
                        }
                    }
                }
            }
        }
    }

}

.trouble {
    background-color: #FFF;
    margin-top: 35px;

    .w1152 {
        padding: 36px 0 40px;

        .title {
            display: flex;
            flex-direction: column;
            gap: 8px;
            align-items: center;
            margin-bottom: 53px;

            .main {
                font-family: var(--fsub);
                font-weight: 600;
                --fmin: 24;
                --fmax: 32;
                font-size: clamp(1.5rem, 1.167rem + 0.69vw, 2rem);
                color: #003657;
            }

            .sub {
                font-family: var(--fmain);
                font-weight: 400;
                font-size: 14px;
                line-height: 1;
                text-align: center;
                color: #000;
            }
        }

        .sec-body {
            position: relative;

            .img {
                max-width: 335px;
                width: 100%;
                margin: 0 auto;

                @media(max-width:700px) {
                    max-width: 215px;
                }
            }

            .right,
            .left {
                max-width: 396px;
                width: 100%;
                position: absolute;
                gap: 16px;
                display: flex;
                flex-direction: column;

                @media(max-width:1024px) {
                    position: relative;
                    gap: 14px;
                }

                p {
                    height: 72px;
                    background-color: #CCEDFF;
                    max-width: 302px;
                    width: 100%;
                    font-family: "Noto Sans JP", sans-serif;
                    font-weight: 500;
                    font-size: 16px;
                    text-align: center;
                    color: #1ea2e7;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    border-radius: 50px;

                    @media(max-width:1024px) {
                        margin: auto;
                        height: 42px;

                    }
                }

                .bottom {
                    margin-left: auto;

                    @media(max-width:1024px) {
                        margin: auto;
                    }
                }
            }

            .right {

                left: 0;
                top: 0;
                bottom: 0;
                margin: auto;

                @media(max-width:1024px) {
                    margin-bottom: 14px;
                }
            }

            .left {
                right: 0;
                top: 0;
                bottom: 0;
                margin: auto;

                @media(max-width:1024px) {
                    margin-bottom: 32px;
                }
            }
        }
    }
}


.newproperty {
    position: relative;

    .w1344 {
        padding-bottom: 160px;

        @media(max-width:1150px) {
            max-width: calc(350/390*100%);
            width: 100%;
        }

        .p-title {
            margin-bottom: 56px;
        }



        .btnarea {
            display: flex;
            gap: 84px;
            justify-content: center;
            align-items: center;
            margin-top: 80px;

            @media(max-width:1150px) {
                flex-direction: column;
                gap: 32px;
            }

            a {
                max-width: 439px;
                width: 100%;
                display: flex;
                align-items: center;
                gap: 65px;
                border-radius: 47.5px;
                background: #003657;
                border: 3px solid #387092;
                transition: .4s ease;

                @media(max-width:1150px) {
                    max-width: 303px;
                    gap: 45px;
                }

                img {
                    width: 66px;
                    height: auto;
                }

                p {
                    font-family: var(--fmain);
                    font-weight: 500;
                    font-size: clamp(1.375rem, 0.959rem + 0.87vw, 2rem);
                    letter-spacing: 0.5em;
                    color: #fff;
                }
            }

            a:hover {
                background: #12B6D7;
            }
        }


        .list-wrap {
            margin-bottom: 80px;

        }

        .webgene-blog {

            display: flex;
            flex-direction: column;
            gap: 40px;
        }

        .webgene-item {
            padding-bottom: 27px;
            position: relative;
        }

        .webgene-item::after {
            content: "";
            position: absolute;
            width: calc(100% - 245px);
            height: 1px;
            background-color: #707070;
            bottom: 0;
            right: 0;

            @media(max-width:1150px) {
                width: calc(100% - 162px);
            }
        }

        .listLk {
            display: flex;
            gap: 40px;

            @media(max-width:1150px) {
                gap: 16px;
            }

            .column {
                display: flex;
                gap: 40px;
                align-items: center;
                width: 100%;

                @media(max-width:1150px) {
                    flex-direction: column;
                    gap: 16px;
                }
            }

            .listLkImgWr {
                max-width: 245px;
                width: 100%;
                height: 180px;
                border-radius: 10px;

                @media(max-width:1150px) {
                    max-width: 162px;
                    height: 103px;
                }

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                    border-radius: 10px;
                }
            }

            .listCt {
                flex: 1;

                @media(max-width:1150px) {
                    flex: auto;
                    width: 100%;
                }
            }

            .categoryTxt {
                display: block;
                color: #FFF;
                font-size: 14px;
                background-color: #12B6D7;
                padding: .25rem 1rem;
                border-radius: 50px;
                text-align: center;
                width: fit-content;
                margin-bottom: 20px;
            }

            .listPrice {
                font-family: var(--fmain);
                font-weight: 600;
                font-size: clamp(1rem, 0.293rem + 1.47vw, 2.063rem);
                letter-spacing: 0.03em;
                color: #000;
                margin-bottom: 32px;

                @media(max-width:1150px) {}
            }

            .list-line-wrap {
                display: flex;
                gap: 64px;

                @media(max-width:1150px) {
                    flex-direction: column;
                    gap: 17px;
                }

                .list-line {
                    display: flex;
                    gap: 14px;
                    align-items: flex-start;
                    font-family: var(--fmain);
                    font-weight: 500;
                    font-size: clamp(0.625rem, 0.376rem + 0.52vw, 1rem);
                    line-height: calc(24/16*100%);
                    color: #000;

                    @media(max-width:1150px) {
                        line-height: calc(12/10*100%);
                    }
                }

            }

            .more {
                display: flex;
                align-items: center;
                gap: 30px;
                margin-top: auto;
                margin-bottom: auto;

                @media(max-width:1150px) {
                    margin-left: auto;
                }

                .link-arrow {
                    position: relative;
                    background-image: url(/system_panel/uploads/images/20251211051431253240.svg);
                    width: 65px;
                    height: 33px;
                    inset: 0;
                    transition: .4s ease;

                    @media(max-width:700px) {
                        width: 39px;
                        height: 20px;
                        border-radius: 10px;
                    }
                }

                p {
                    font-family: var(--fmain);
                    font-weight: 500;
                    --fmin: 12;
                    --fmax: 16;
                    font-size: clamp(0.75rem, 0.584rem + 0.35vw, 1rem);
                    color: #000;
                }
            }
        }

        .listLk:hover .link-arrow {
            background-image: url(/system_panel/uploads/images/20251211051717225624.svg);
        }
    }
}

.gjs-dashed {
    .tab-panel {
        display: block !important;
        opacity: 1 !important;
        transform: translateY(0) !important;
    }
}