:root{
    --market_font_base:"IBM Plex Sans JP", sans-serif;
    --market_color_text:#32373E;
    --market_color_text_light:#6B6F75;
    --market_color_red:#C50018;
    --market_color_white:#ffffff;
    --market_color_line:#CCCFD1;
    --market_color_dark:#32373E;
    --basic_pc:1440px;
}

.first_area{
    padding:0 20px;

    .first_wrap{
        max-width: 1120px;
        margin: 0px auto;

        .market_ttl_lead{
            max-width:800px;
            text-align: left;
            margin:0 auto;

            .market_ttl_lead_text{
                font-size: 16px;
                line-height: 28px;
                margin-bottom: 16px;
            }
        }
    }
}

.market_ttl_lead{
    max-width:760px;
    margin:40px auto 0;
    font-family:var(--market_font_base);
    text-align:center;

    .market_ttl_lead_text{
        margin:0;
        font-weight:500;
        font-size:16px;
        line-height:28px;
        color:var(--market_color_text);
    }
}

.c_market_white_arrow_button{
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 374px;
    min-height: 64px;
    padding: 20px 64px 18px 48px;
    font-family: var(--market_font_base);
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    color: var(--market_color_text);
    text-align: center;
    text-decoration: none;
    background: var(--market_color_white) url("../images/market/market_red_right_arrow.png") right 20px center / 24px 24px no-repeat;
    border: 1px solid var(--market_color_line);
    border-radius: 999px;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.9) inset;
    transition: opacity 0.2s;

    &:hover{
        opacity:0.75;
    }
}

.c_market_text_arrow_link{
    position: relative;
    display: flex;
    align-items: center;
    min-height: 164px;
    padding: 32px 29px 32px 0;
    font-family: var(--market_font_base);
    color: var(--market_color_text);
    text-decoration: none;
    border-top: 1px solid var(--market_color_line);
    border-bottom: 1px solid var(--market_color_line);
    background: url("../images/market/market_text_arrow.png") right 20px center / 24px 25px no-repeat;
    transition: opacity 0.2s;

    &:hover{
        opacity:0.75;
    }
}

.l_market_anchor_area{
    margin-top:56px;
    padding:0 20px;

    .l_market_anchor_wrap{
        max-width:1120px;
        margin:0 auto;
    }

    .p_market_anchor_list{
        display:grid;
        grid-template-columns:repeat(3, 1fr);
        gap:20px;

        .p_market_anchor_item{
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            min-height: 116px;
            padding: 29px 20px 20px;
            font-family: var(--market_font_base);
            color: var(--market_color_text);
            text-align: center;
            text-decoration: none;
            background-color: var(--market_color_white);
            border: 1px solid var(--market_color_line);
            border-radius: 4px;
            transition: opacity 0.2s;

            &:hover{
                opacity:0.75;
            }

            .p_market_anchor_text{
                min-width: 0;
                font-weight: 600;
                font-size: 20px;
                line-height: 30px;
                overflow-wrap: anywhere;
            }

            .p_market_anchor_icon{
                width:24px;
                height:24px;
                margin-top:13px;
                background:url('../images/market/market_red_down_arrow.png') center / contain no-repeat;
            }
        }
    }
}

.l_market_house_area{
    margin-top:64px;

    .l_market_house_wrap{

        .common_partition{
            max-width:1120px;
            margin:0 auto;
        }
    }

    .p_market_area_search{
        padding:96px 0;
        background:url('../images/top/search_back.webp') center / cover no-repeat;
        margin-top: 48px;

        .p_market_area_search_heading{
            max-width: 1120px;
            margin: 0 auto 48px;
            display:grid;
            grid-template-columns:1fr auto 1fr;
            align-items:center;
            gap:40px;

            &:before,
            &:after{
                content:'';
                display:block;
                height:1px;
                background-color:rgba(255, 255, 255, 0.28);
            }

            .p_market_area_search_title{
                margin: 0;
                padding-left: 30px;
                font-family: var(--market_font_base);
                font-weight: 700;
                font-size: 20px;
                line-height: 32px;
                color: var(--market_color_white);
                background: url("../images/market/map_icon.png") left center / 24px 24px no-repeat;
            }
        }

        .p_market_area_search_wrap{
            max-width:1280px;
            margin:0 auto;
            padding:0 20px;
            box-sizing:content-box;
        }

        .p_market_area_search_body{
            max-width: 1264px;
            margin: 0 auto;
            display: grid;
            grid-template-columns: max(520px) 1fr;
            gap: 65px;
            align-items: center;
            margin-top: 48px;
        }

        .p_market_map{
            position:relative;
            max-width:520px;

            .p_market_map_image{
                display:block;
                max-width:100%;
                margin:0 auto;
            }

            .p_market_map_label{
                position: absolute;
                display: inline-flex;
                align-items: center;
                padding: 7px 16px 5px 36px;
                font-family: var(--market_font_base);
                font-weight: 600;
                font-size: 14px;
                line-height: 24px;
                color: var(--market_color_text);
                text-decoration: none;
                white-space: nowrap;
                background: var(--market_color_white) url("../images/market/market_red_right_arrow.png") left 12px center / 16px 16px no-repeat;
                border-radius: 999px;
                transition: opacity 0.2s;

                &:hover{
                    opacity:0.75;
                }
            }

            .p_market_map_label_hokkaido{
                top: 73px;
                left: 203px;
            }

            .p_market_map_label_koshinetsu{
                top: 165px;
                left: 197px;
            }

            .p_market_map_label_kinki{
                top: 239px;
                left: 151px;
            }

            .p_market_map_label_chugoku{
                top: 299px;
                left: 77px;
            }

            .p_market_map_label_kanto{
                top: 314px;
                right: 47px;
            }

            .p_market_map_label_tokai{
                top: 396px;
                right: 117px;
            }

            .p_market_map_label_shikoku{
                top: 439px;
                left: 188px;
            }

            .p_market_map_label_kyushu{
                top: 498px;
                left: 93px;
            }
        }

        .p_market_region_list{
            display: grid;
            grid-template-columns: max(306px) max(350px);
            column-gap: 32px;
            row-gap: 42px;

            .p_market_region_item{

                .p_market_region_title{
                    margin: 0;
                    padding-left: 30px;
                    font-family: var(--market_font_base);
                    font-weight: 500;
                    font-size: 18px;
                    line-height: 27px;
                    color: var(--market_color_white);
                    background: url("../images/market/market_red_right_arrow.png") left center / 20px 20px no-repeat;
                    padding-bottom:7px;
                    border-bottom:1px solid rgba(255, 255, 255, 0.22);
                }

                .p_market_region_links{
                    display:flex;
                    flex-wrap:wrap;
                    gap:0;
                    margin:12px 0 0;

                    a{
                        position:relative;
                        margin-left:8px;
                        padding-left:8px;
                        font-family:var(--market_font_base);
                        font-weight:600;
                        font-size:14px;
                        line-height:24px;
                        color:var(--market_color_white);
                        text-decoration:underline;
                        text-underline-offset:2px;

                        &:not(:first-child):after{
                            content:'';
                            position:absolute;
                            top:50%;
                            left:0;
                            width:1px;
                            height:12px;
                            background-color:rgba(255, 255, 255, 0.55);
                            transform:translateY(-50%);
                        }
                        &:first-child{
                            margin-left:0;
                            padding-left:0;
                        }
                    }
                }
            }
        }
    }
}

.l_market_selling_area,
.l_market_sumstock_area{
    margin-top: 124px;
    padding: 0 20px;

    .l_market_selling_wrap,
    .l_market_sumstock_wrap{
        max-width:1120px;
        margin:0 auto;

        .p_market_selling_text,
        .p_market_sumstock_text{
            max-width: 800px;
            margin: 48px auto 0;

            p{
                margin: 0;
                font-family: var(--market_font_base);
                font-weight: 500;
                font-size: 16px;
                line-height: 28px;
                color: var(--market_color_text);
            }
        }
    }
}

.l_market_sumstock_area{
    margin-top:116px;
}

.l_market_owner_area{
    margin-top:116px;
    padding:0 20px;

    .l_market_owner_wrap{
        max-width:1120px;
        margin:0 auto;

        .p_market_owner_text{
            max-width:800px;
            margin:48px auto 0;

            p{
                margin:0;
                font-family:var(--market_font_base);
                font-weight:500;
                font-size:16px;
                line-height:28px;
                color:var(--market_color_text);
            }
        }

        .p_market_owner_maker_list{
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 20px 18px;
            margin: 40px 0 48px;

            .p_market_owner_maker_item{
                display:flex;
                align-items:center;
                justify-content:center;
                min-height:70px;
                padding:0;
                background-color:var(--market_color_white);
                border-radius:2px;

                img{
                    display:block;
                    width:100%;
                    height:60px;
                    object-fit:contain;
                }
            }
        }

        .p_market_owner_button_wrap{
            display:flex;
            justify-content:center;
            margin-top:48px;
        }
    }
}

.l_market_price_check_area{
    margin-top: 124px;
    padding: 0 20px;

    .l_market_price_check_wrap{
        max-width: 1120px;
        margin: 0 auto;
        padding: 64px 80px;
        background-color: var(--market_color_white);

        .p_market_price_check_panel{
            display:flex;
            align-items:center;
            justify-content:center;
            max-width:800px;
            min-height:260px;
            margin:48px auto 0;
            padding:32px 20px 48px;
            background:url("../images/market/market_free_assessment_panel_bg.png") center / 100% 100% no-repeat;

            .p_market_price_check_logo{
                display:block;
                max-width:364px;
                width: 100%;
                height:auto;
            }
        }

        .p_market_price_check_lead{
            margin: 40px 0 0;
            font-family: var(--market_font_base);
            font-weight: 500;
            font-size: 16px;
            line-height: 24px;
            color:var(--market_color_text);
            text-align:center;
        }

        .p_market_price_check_link_list{
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap:50px;
            margin-top: 32px;
            justify-content: space-between;

            .p_market_price_check_link{

                .p_market_price_check_link_image{
                    flex: 0 0 132px;
                    width: 132px;
                    height: 100px;
                    margin-right: 24px;
                    overflow: hidden;
                    border-radius: 4px;

                    img{
                        display:block;
                        width:100%;
                        height:100%;
                        object-fit:cover;
                    }
                }

                .p_market_price_check_link_text{
                    min-width: 0;
                    font-weight: 600;
                    font-size: 16px;
                    line-height: 24px;

                    small{
                        font-size:14px;
                        line-height:24px;
                    }

                    span{
                        color: var(--market_color_red);
                        line-height: 32px;
                        font-size: 24px;
                    }
                }
            }
        }
    }
}

.l_market_faq_area{
    margin-top:124px;
    padding:0 20px;

    .l_market_faq_wrap{
        max-width:1120px;
        margin:0 auto;

        .p_market_faq_list{
            margin-top:48px;

            .p_market_faq_item{
                overflow:hidden;
                background-color:var(--market_color_white);
                border:1px solid var(--market_color_line);

                &:not(:first-child){
                    margin-top:24px;
                }

                .p_market_faq_question{
                    display: flex;
                    align-items: baseline;
                    gap: 8px;
                    margin: 0;
                    padding: 15px 24px 11px;
                    font-family: var(--market_font_base);
                    font-weight: 600;
                    font-size: 16px;
                    line-height: 24px;
                    color: var(--market_color_white);
                    background-color: var(--market_color_dark);

                    span:first-child{
                        font-size: 20px;
                        line-height: 30px;
                    }
                }

                .p_market_faq_answer{
                    display: flex;
                    gap: 7px;
                    padding: 32px 24px 24px;
                    font-family: var(--market_font_base);
                    font-weight: 600;
                    font-size: 16px;
                    line-height: 25px;
                    color: var(--market_color_text);

                    .p_market_faq_answer_mark{
                        flex: 0 0 auto;
                        font-size: 20px;
                        line-height: 30px;
                        color: var(--market_color_red);
                    }

                    p{
                        margin:0;
                    }

                    .p_market_faq_link{
                        display: inline-block;
                        margin-top: 13px;
                        line-height: 24px;
                        font-weight: 600;
                        color: #006ED5;
                        text-decoration: underline;
                        text-underline-offset: 1px;

                        &:after{
                            content: '';
                            display: inline-block;
                            width: 22px;
                            height: 16px;
                            background:url("../images/market/market_blue_arrow_icon.png") center / contain no-repeat;
                            vertical-align:middle;
                        }
                    }
                }
            }
        }
    }
}

.c_market_tab_list{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:8px;
}

.c_market_tab_button{
    appearance: none;
    padding: 0px 20px 9px;
    font-family: var(--market_font_base);
    font-weight: 600;
    font-size: 20px;
    line-height: 30px;
    color: var(--market_color_text);
    text-align: center;
    background: transparent;
    border: 0;
    border-bottom: 4px solid var(--market_color_dark);
    cursor: pointer;
    transition: opacity 0.2s;

    &:hover{
        opacity:0.75;
    }

    &.is_active{
        color:var(--market_color_red);
        border-bottom-color:var(--market_color_red);

        &:after{
            content: '';
            display: inline-block;
            width: 20px;
            height: 20px;
            margin-left: 8px;
            background: url("../images/market/market_tab_down_arrow.png") center / contain no-repeat;
            vertical-align: middle;
        }
    }
}

.l_market_condominium_land_area{
    margin-top:124px;
    padding:0 20px;

    .l_market_condominium_land_wrap{
        max-width:1120px;
        margin:0 auto;

        .p_market_property_tab_list{
            margin-top:45px;
        }

        .p_market_property_area{
            margin-top: 32px;
        }
        .p_market_property_panel{
            display:none;
            padding: 60px 80px;
            background-color: var(--market_color_white);
            border-radius: 4px;

            &.is_active{
                display:block;
            }
            .p_market_property_region_list{
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 40px;

                .p_market_property_region_item{

                    .p_market_property_region_title{
                        position: relative;
                        margin: 0;
                        padding: 0 0 5px 22px;
                        font-family: var(--market_font_base);
                        font-weight: 600;
                        font-size: 20px;
                        line-height: 30px;
                        color:var(--market_color_text);
                        border-bottom:1px solid var(--market_color_line);

                        &:before{
                            content: '';
                            position: absolute;
                            top: 0px;
                            left: 0;
                            width: 5px;
                            height: 20px;
                            background-color:var(--market_color_red);
                        }
                    }

                    .p_market_property_region_links{
                        display:flex;
                        flex-wrap:wrap;
                        gap:0;
                        margin:9px 0 0;

                        a{
                            position: relative;
                            margin-left: 8px;
                            padding-left: 8px;
                            font-family: var(--market_font_base);
                            font-weight: 600;
                            font-size: 16px;
                            line-height: 24px;
                            color: #006ED5;
                            text-decoration: underline;
                            text-underline-offset: 2px;

                            &:not(:first-child):before{
                                content:'';
                                position:absolute;
                                top:50%;
                                left:0;
                                width:1px;
                                height:20px;
                                background-color:var(--market_color_line);
                                transform:translateY(-50%);
                            }

                            &:first-child{
                                margin-left:0;
                                padding-left:0;
                            }
                        }
                    }
                }
            }
        }
    }
}

.l_market_column_area{
    margin-top:124px;
    padding-bottom:1px;
    overflow:hidden;

    .l_market_column_wrap{
        max-width:1280px;
        margin:0 auto;

        .common_partition{
            max-width:1120px;
            margin:0 auto;

            h2{
                text-align: center;
            }
        }

        .p_market_column_tab_list{
            max-width:1120px;
            margin:45px auto 0;
        }

        .p_market_column_toggle_area{
            margin-top:32px;
            margin-bottom:40px;

            .p_market_column_toggle_box{
                display:none;

                &.is_active{
                    display:block;
                }

                .slick-dotted.slick-slider{
                    margin:0;
                }
            }
        }

        .p_market_column_slider{
            .slick-list{
                overflow:visible;
            }

            .slide_arrow{
                position:absolute;
                top:50%;
                width:80px;
                height:64px;
                cursor:pointer;
                z-index:100;
                transform:translateY(-50%);
            }

            .prev_arrow{
                left:-40px;
                background:url("../images/common/slider_prev.png") center / cover no-repeat;
            }

            .next_arrow{
                right:-40px;
                background:url("../images/common/slider_next.png") center / cover no-repeat;
            }

            .slick-dots{
                display:flex;
                justify-content:center;
                gap:20px;
                position:static;
                margin-top:32px;

                li{
                    width:auto;
                    height:auto;
                    margin:0;

                    button{
                        width:8px;
                        height:8px;
                        padding:0;
                        background-color:var(--market_color_dark);
                        border-radius:50%;
                        opacity:0.35;

                        &:before{
                            content:none;
                        }
                    }

                    &.slick-active{
                        button{
                            opacity:1;
                        }
                    }
                }
            }
        }

        .p_market_column_card{
            display:block;
            margin:0 10px;
            padding:24px 20px 16px;
            color:var(--market_color_text);
            text-decoration:none;
            background-color:var(--market_color_white);
            border:1px solid var(--market_color_line);
            border-radius:4px;
            transition:opacity 0.3s, border-color 0.3s;

            &:hover{
                border-color:var(--market_color_red);
                opacity:0.7;

                .p_market_column_card_image{
                    img{
                        transform:scale(1.1);
                    }
                }
            }

            .p_market_column_card_image{
                display:block;
                margin-bottom:20px;
                overflow:hidden;
                border-radius:4px;

                img{
                    display:block;
                    width:100%;
                    transition:transform 0.3s;
                }
            }

            .p_market_column_card_head{
                display:flex;
                align-items:center;
                gap:12px;
                margin-bottom:23px;
            }

            .p_market_column_card_date{
                font-family:"Jost", sans-serif;
                font-size:14px;
                line-height:20px;
                color:var(--market_color_text_light);
            }

            .p_market_column_card_category{
                font-family:var(--market_font_base);
                font-weight:600;
                font-size:14px;
                line-height:20px;
                color:var(--market_color_red);
            }

            .p_market_column_card_title{
                display:block;
                margin-bottom:12px;
                font-family:var(--market_font_base);
                font-weight:600;
                font-size:18px;
                line-height:26px;
                color:var(--market_color_text);
            }

            .p_market_column_card_tags{
                display:flex;
                flex-wrap:wrap;
                gap:8px;

                span{
                    padding:3px 12px 2px;
                    font-family:var(--market_font_base);
                    font-weight:500;
                    font-size:14px;
                    line-height:20px;
                    color:var(--market_color_text);
                    border:1px solid var(--market_color_line);
                    border-radius:16px;
                }
            }
        }

        .p_market_column_button_wrap{
            display:flex;
            justify-content:center;
            margin-top:50px;

            .p_market_column_button{
                min-width:374px;
            }
        }
    }
}

@media screen and (max-width:768px){
    .first_area{
        padding:0 16px;

        .first_wrap{
    
            .market_ttl_lead{
    
                .market_ttl_lead_text{
                    font-size: 14px;
                    line-height: 24px;
                    margin-bottom: 0;
                }
            }
        }
    }

    .l_market_anchor_area{
        margin-top:40px;
        padding:0 16px;

        .p_market_anchor_list{
            gap:8px;

            .p_market_anchor_item{
                min-height: 112px;
                padding: 12px 0 37px;
                position: relative;

                .p_market_anchor_text{
                    font-size: 14px;
                    line-height: 21px;
                }

                .p_market_anchor_icon{
                    width: 20px;
                    height: 20px;
                    margin-top: 0;
                    position: absolute;
                    bottom: 12px;
                }
            }
        }
    }

    .l_market_house_area{
        margin-top: 48px;

        .l_market_house_wrap {

            .common_partition {
                margin: 0 auto;
                margin-left: 20px;
                margin-right: 20px;
            }
        }

        .p_market_area_search{
            margin-top: 32px;
            padding: 31px 16px;

            .p_market_area_search_heading{
                gap:16px;

                .p_market_area_search_title{
                    padding-left: 26px;
                    font-size: 16px;
                    line-height: 24px;
                    background-size: 20px 20px;
                }
            }

            .p_market_area_search_wrap{
                padding:0;

                .common_search_map{
                    margin:0;

                    .container{
                        display:none;
                    }
                }
            }

            .p_market_area_search_body{
                display:block;
                margin-top:42px;
            }

            .p_market_map{
                position:relative;
                width:min(100%, 620px);
                height:min(96vw, 720px);
                min-height:360px;
                margin:0 auto;

                .p_market_map_image{
                    position:absolute;
                    top:0;
                    right:8px;
                    width:78%;
                    max-width:520px;
                }

                .p_market_map_label{
                    position:absolute;
                    min-height:clamp(38px, 7.5vw, 56px);
                    margin:0;
                    padding:clamp(6px, 1.2vw, 9px) clamp(14px, 2.9vw, 22px) clamp(6px, 1.2vw, 9px) clamp(44px, 9.3vw, 70px);
                    font-size:clamp(15px, 3.2vw, 24px);
                    line-height:clamp(22px, 4.5vw, 34px);
                    background:var(--market_color_white) url("../images/market/market_area_plus_icon.png") left clamp(10px, 2.4vw, 18px) center / clamp(24px, 5.3vw, 40px) clamp(24px, 5.3vw, 40px) no-repeat;
                    border:1px solid var(--market_color_line);
                    box-shadow:0 0 0 2px rgba(255, 255, 255, 0.42);
                }

                .p_market_map_label_hokkaido{
                    top:1%;
                    left:25%;
                }

                .p_market_map_label_koshinetsu{
                    top:19%;
                    left:18%;
                }

                .p_market_map_label_kinki{
                    top:35%;
                    left:24%;
                }

                .p_market_map_label_chugoku{
                    top:48%;
                    left:0;
                }

                .p_market_map_label_kanto{
                    top:51%;
                    right:0;
                }

                .p_market_map_label_tokai{
                    top:67%;
                    right:15%;
                }

                .p_market_map_label_shikoku{
                    top:74%;
                    left:28%;
                }

                .p_market_map_label_kyushu{
                    top:90%;
                    left:0;
                }
            }

            .p_market_region_list{
                display:none;
                grid-template-columns:1fr;
                row-gap:22px;

                .p_market_region_item{
                    .p_market_region_title{
                        font-size:16px;
                        line-height:24px;
                    }

                    .p_market_region_links{
                        a{
                            font-size:13px;
                            line-height:22px;
                        }
                    }
                }
            }
        }
    }

    .l_market_selling_area,
    .l_market_sumstock_area{
        margin-top: 64px;
        padding:0 20px;

        .l_market_selling_wrap,
        .l_market_sumstock_wrap{

            .p_market_selling_text,
            .p_market_sumstock_text{
                margin-top:32px;

                p{
                    font-size:14px;
                    line-height:24px;
                }
            }
        }
    }

    .l_market_sumstock_area{
        margin-top:64px;
    }

    .c_market_white_arrow_button{
        max-width: 280px;
        min-height: 48px;
        padding: 14px 58px 14px 32px;
        font-size: 14px;
        line-height: 20px;
        background-position: right 15px center;
        background-size: 24px 24px;
    }

    .c_market_text_arrow_link{
        min-height: 110px;
        padding: 24px 26px 24px 0;
        background-position: right 0px center;
        background-size: 20px 20px;

        &:last-child{
            border-top:0;
        }
    }

    .l_market_owner_area{
        margin-top:57px;
        padding:0 20px;

        .l_market_owner_wrap{

            .p_market_owner_text{
                margin-top:32px;

                p{
                    font-size:14px;
                    line-height:24px;
                }
            }

            .p_market_owner_maker_list{
                grid-template-columns: repeat(2, 1fr);
                gap: 12px 11px;
                margin: 25px 0 32px;

                .p_market_owner_maker_item{
                    min-height: 54px;
                    padding: 0;

                    img{
                        height:50px;
                    }
                }
            }

            .p_market_owner_button_wrap{
                margin-top:32px;
            }
        }
    }

    .l_market_price_check_area{
        margin-top: 64px;
        padding: 0;

        .l_market_price_check_wrap{
            padding: 40px 20px;

            .p_market_price_check_panel{
                min-height: 174px;
                margin-top: 32px;
                padding: 30px 36px 40px;
                background: url("../images/market/market_free_assessment_panel_bg_sp.png") center / 100% 100% no-repeat;
            }

            .p_market_price_check_lead{
                margin-top: 32px;
                font-size: 14px;
                line-height: 24px;
            }

            .p_market_price_check_link_list{
                grid-template-columns: 1fr;
                gap: 0;
                margin-top: 25px;

                .p_market_price_check_link{

                    .p_market_price_check_link_image{
                        flex-basis: 99px;
                        width: 99px;
                        height: 77px;
                        margin-right: 8px;
                    }

                    .p_market_price_check_link_text{
                        font-size:14px;
                        line-height:20px;

                        span{
                            font-size:18px;
                            line-height:24px;
                        }
                    }
                }
            }
        }
    }

    .l_market_faq_area {
        margin-top: 64px;

        .l_market_faq_wrap {

            .p_market_faq_list {
                margin-top: 32px;

                .p_market_faq_item {

                    .p_market_faq_question {
                        display: flex;
                        align-items: center;
                        gap: 8px;
                        margin: 0;
                        padding: 13px 16px 11px;
                        font-size: 14px;
                        line-height: 20px;
                    }
                    .p_market_faq_answer {
                        gap: 7px;
                        padding: 21px 16px 20px;
                        font-size: 14px;
                        line-height: 20px;

                        .p_market_faq_link {
                            margin-top: 10px;
                            line-height: 20px;
                            font-size: 14px;
                            text-underline-offset: 1px;
                        }
                    }
                }
            }
        }
    }

    .c_market_tab_list{
        gap:4px;
    }

    .c_market_tab_button{
        padding: 0px 2px 12px;
        font-size: 14px;
        line-height: 21px;
        border-bottom-width: 3px;

        &.is_active{
            &:after{
                width: 10px;
                height: 9px;
                margin-left: 8px;
            }
        }
    }

    .l_market_condominium_land_area{
        margin-top:64px;
        padding:0 20px;

        .l_market_condominium_land_wrap{

            .p_market_property_tab_list{
                margin-top:29px;
            }

            .p_market_property_panel{
                margin-top: 24px;
                padding: 29px 15px;

                .p_market_property_region_list{
                    grid-template-columns:1fr;
                    gap:25px;

                    .p_market_property_region_item{

                        .p_market_property_region_title{
                            padding: 0 0 7px 16px;
                            font-size: 16px;
                            line-height: 28px;

                            &:before{
                                top:5px;
                                width:4px;
                                height:22px;
                            }
                        }

                        .p_market_property_region_links{
                            margin-top:10px;

                            a{
                                margin-left: 8px;
                                padding-left: 8px;
                                font-size: 14px;
                                line-height: 24px;

                                &:not(:first-child):before{
                                    height:14px;
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    .l_market_column_area{
        margin-top:64px;
        padding:0 20px 1px;

        .l_market_column_wrap{

            .common_partition{
                h2{
                    line-height:28px;
                }
            }

            .p_market_column_tab_list{
                margin-top:32px;
            }

            .p_market_column_toggle_area{
                margin-top:24px;
                margin-bottom:32px;
            }

            .p_market_column_slider{
                .slide_arrow{
                    width:56px;
                    height:45px;
                }

                .prev_arrow{
                    left:-16px;
                }

                .next_arrow{
                    right:-16px;
                }

                .slick-dots{
                    gap:14px;
                    margin-top:24px;
                }
            }

            .p_market_column_card{
                margin:0 6px;
                padding:16px 14px 14px;

                .p_market_column_card_image{
                    margin-bottom:16px;
                }

                .p_market_column_card_head{
                    flex-wrap:wrap;
                    gap:6px 10px;
                    margin-bottom:14px;
                }

                .p_market_column_card_title{
                    font-size:16px;
                    line-height:24px;
                }

                .p_market_column_card_tags{
                    gap:6px;

                    span{
                        font-size:12px;
                        line-height:18px;
                    }
                }
            }

            .p_market_column_button_wrap{
                margin-top:32px;

                .p_market_column_button{
                }
            }
        }
    }
}

/* ===== task50: market map modal (extracted from drop common.css, page-scoped to keep shared common.css untouched) ===== */
.modal_area{
    display:block;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0, 0, 0, 0.75);
    opacity:0;
    visibility:hidden;
    transition:0.3s;
    z-index:5000;

    &.active{
        opacity:1;
        visibility:visible;
    }
}
.modal_window{
    position:relative;
    height:100%;
    padding:14.667vw 4.267vw 13.867vw;
    background-color:#ffffff;
    overflow:auto;
}
.modal_close{
    position:absolute;
    top:5.333vw;
    right:5.067vw;
    width:4.8vw;
    cursor:pointer;

    img{
        width:100%;
    }
}
.modal_header{
    display:flex;
    align-items:center;
    gap:2.133vw;
    margin-bottom:8.533vw;
    font-family:"IBM Plex Sans JP", sans-serif;
    font-weight:600;
    font-size:5.333vw;
    line-height:8.533vw;

    img{
        width:6.4vw;
    }
}

/*---------- modal > エリアから探す ----------*/
.modal_search_area{
    display:grid;
    gap:6.667vw;

    .pref{
        margin-bottom:2.4vw;
        padding-bottom:1.867vw;
        border-bottom:0.267vw solid #cccfd1;

        a{
            padding-left:6.4vw;
            font-family:"IBM Plex Sans JP", sans-serif;
            font-weight:500;
            font-size:4.267vw;
            line-height:7.467vw;
            color:#32373e;
            background:url('../images/common/red_circle_white_arrow.png') center left 0 / 4.267vw no-repeat;
        }
    }
    ul{
        display:flex;
        flex-wrap:wrap;
        gap:2.4vw 4.533vw;

        li{
            position:relative;

            &:not(:last-child){
                &:before{
                    content:'';
                    position:absolute;
                    top:50%;
                    right:-2.267vw;
                    transform:translateY(-50%);
                    width:0.267vw;
                    height:3.733vw;
                    background-color:#cccfd1;
                    opacity:0.3;
                }
            }
            a{
                font-family:"IBM Plex Sans JP", sans-serif;
                font-weight:500;
                font-size:3.733vw;
                line-height:6.4vw;
                color:#0356cb;
                text-decoration:underline;
                transition:0.3s;

                &:hover{
                    opacity:0.7;
                }
            }
        }
    }
}

/*---------- modal > メーカーから探す ----------*/
.modal_search_maker{
    ul{
        display:grid;
        grid-template-columns:repeat(2, 1fr);
        gap:4.267vw 2.933vw;

        li{
            height:14.4vw;
            padding:1.333vw 0;
            background-color:#ffffff;
            border:0.267vw solid #cccfd1;
            border-radius:16vw;

            img{
                width:100%;
                height:100%;
                object-fit:contain;
            }
        }
    }
}


/* ===== task54 (260722): market map PC image + .modal_area_260722 SP redesign — additive over task50 block above ===== */
/* 2026/07/22　修正 */
.p_market_area_search_wrap_260422{
    .common_search_map {
        & .map {
            img {
                opacity: 1;
            }
        }

        & .container {
            & .column {
                & .box {
                    & .pref {
                        span {
                            position: relative;
                            display: inline-block;
                            padding-left: 16px;
                            font-family: "IBM Plex Sans JP", sans-serif;
                            font-weight: 500;
                            font-size: 18px;
                            line-height: 28px;
                            color: #ffffff;
                        }

                        span::before {
                            content: "";
                            position: absolute;
                            left: 0;
                            top: 50%;
                            width: 4px;
                            height: 18px;
                            background: #C50018;
                            transform: translateY(-50%);
                        }
                    }
                }
            }
        }
    }
}
#modal_area.modal_area_260722{
    display: none;
}

@media(max-width:1439px) and (min-width:769px){
    .p_market_area_search_wrap_260422{
        .common_search_map {
            & .map {
                img {
                    opacity: 1;
                }
            }
            
            & .container {
                & .column {
                    & .box {
                        & .pref {
                            span {
                                position: relative;
                                display: inline-block;
                                padding-left: calc(16px * (100vw / var(--basic_pc)));
                                font-family: "IBM Plex Sans JP", sans-serif;
                                font-weight: 500;
                                font-size: calc(18px * (100vw / var(--basic_pc)));
                                line-height: calc(28px * (100vw / var(--basic_pc)));
                                color: #ffffff;
                            }
    
                            span::before {
                                content: "";
                                position: absolute;
                                left: 0;
                                top: 50%;
                                width: calc(4px * (100vw / var(--basic_pc)));
                                height: calc(18px * (100vw / var(--basic_pc)));
                                background: #C50018;
                                transform: translateY(-50%);
                            }
                        }
                    }
                }
            }
        }
    }
}

@media screen and (max-width:768px){
    body.modal_area_open{
        overflow:hidden;
    }

    #modal_area.modal_area_260722{
        --basic:375px;
        display:none;
        position:fixed;
        inset:0;
        z-index:10000;
        overflow-y:auto;
        padding:calc(20px * (100vw / var(--basic))) calc(16px * (100vw / var(--basic))) calc(118px * (100vw / var(--basic)));
        background:#ffffff;

        &.active{
            display:block;
        }

        .modal_window{
            position:static;
            width:100%;
            max-width:none;
            height:auto;
            max-height:none;
            min-height:100%;
            overflow:visible;
            margin:0;
            padding:0;
            background:#ffffff;
        }

        *,
        *::before,
        *::after{
            box-sizing:border-box;
        }

        .modal_close{
            position:absolute;
            top:calc(20px * (100vw / var(--basic)));
            right:calc(20px * (100vw / var(--basic)));
            width:calc(18px * (100vw / var(--basic)));
            height:calc(18px * (100vw / var(--basic)));
            padding:0;
            background:transparent;
            border:0;
            cursor:pointer;

            &::before,
            &::after{
                content:"";
                position:absolute;
                top:50%;
                left:50%;
                width:calc(24px * (100vw / var(--basic)));
                height:calc(2px * (100vw / var(--basic)));
                background:#C50018;
            }

            &::before{
                transform:translate(-50%, -50%) rotate(45deg);
            }

            &::after{
                transform:translate(-50%, -50%) rotate(-45deg);
            }
        }

        .modal_header{
            display:flex;
            align-items:center;
            gap:calc(8px * (100vw / var(--basic)));
            margin-bottom:calc(14px * (100vw / var(--basic)));
            padding:calc(30px * (100vw / var(--basic))) 0 0;
            font-family:"IBM Plex Sans JP", sans-serif;
            font-weight:600;
            font-size:calc(20px * (100vw / var(--basic)));
            line-height:calc(32px * (100vw / var(--basic)));
            color:#32373E;

            img{
                width:calc(24px * (100vw / var(--basic)));
                height:calc(24px * (100vw / var(--basic)));
                object-fit:contain;
            }
        }

        .modal_search_area{
            display:grid;
            padding:calc(23px * (100vw / var(--basic))) calc(16px * (100vw / var(--basic))) calc(28px * (100vw / var(--basic)));
            border:1px solid #CCCFD1;
            border-radius:calc(4px * (100vw / var(--basic)));
            gap: calc(31px * (100vw / var(--basic)));
        }

        .box{

            &:last-of-type{
                margin-bottom: 0;
            }

            ul{
                display: none;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                column-gap: calc(16px * (100vw / var(--basic)));
                row-gap: calc(12px * (100vw / var(--basic)));
                margin: 0;
                padding: calc(16px * (100vw / var(--basic))) 0 0;
                list-style: none;
            }

            &.active{
                ul{
                    display:grid;
                }
            }
        }

        .pref{
            position: relative;
            display: flex;
            align-items: center;
            width: 100%;
            min-height: calc(32px * (100vw / var(--basic)));
            padding: 0 calc(30px * (100vw / var(--basic))) calc(7px * (100vw / var(--basic))) calc(16px * (100vw / var(--basic)));
            margin-bottom: 0;
            font-family: "IBM Plex Sans JP", sans-serif;
            font-weight: 600;
            font-size: calc(16px * (100vw / var(--basic)));
            line-height: calc(24px * (100vw / var(--basic)));
            color: #32373E;
            text-align: left;
            background: #ffffff;
            border: 0;
            cursor: pointer;
            border-bottom: 1px solid #CCCFD1;

            &::before{
                content: "";
                position: absolute;
                left: 0;
                top: 36%;
                width: calc(4px * (100vw / var(--basic)));
                height: calc(16px * (100vw / var(--basic)));
                background: #C50018;
                transform: translateY(-50%);
            }

            &::after{
                content: "";
                position: absolute;
                right: 0;
                top: 37%;
                width: calc(20px * (100vw / var(--basic)));
                height: calc(20px * (100vw / var(--basic)));
                background: url(../images/search_lists/red_circle_plus.png) center / contain no-repeat;
                transform: translateY(-50%);
            }

            &.active::after{
                background-image:url("../images/search_lists/red_circle_minus.png");
            }
        }

        .pref.active + ul{
            display:grid;
        }

        li{
            margin:0;

            &:not(:last-child) {
                &:before {
                    content: unset;
                }
            }
        }

        label{
            display:flex;
            align-items:center;
            gap:calc(8px * (100vw / var(--basic)));
            min-height:calc(20px * (100vw / var(--basic)));
            font-family:"IBM Plex Sans JP", sans-serif;
            font-weight:500;
            font-size:calc(14px * (100vw / var(--basic)));
            line-height:calc(20px * (100vw / var(--basic)));
            color:#32373E;
            cursor:pointer;

            span{
                padding-top: 5px;
            }
        }

        input{
            width:calc(24px * (100vw / var(--basic)));
            height:calc(24px * (100vw / var(--basic)));
        }

        input[type="radio"]{
            appearance:none;
            flex:0 0 auto;
            display:inline-grid;
            place-content:center;
            margin:0;
            background:#ffffff;
            border:1px solid #CCCFD1;
            border-radius:50%;
            cursor:pointer;

            &::before{
                content:"";
                width:calc(14px * (100vw / var(--basic)));
                height:calc(14px * (100vw / var(--basic)));
                background:#C50018;
                border-radius:50%;
                transform:scale(0);
            }

            &:checked::before{
                transform:scale(1);
            }
        }

        .modal_bottom_close{
            display: flex;
            align-items: center;
            justify-content: center;
            gap: calc(6px * (100vw / var(--basic)));
            width: 100%;
            min-height: calc(21px * (100vw / var(--basic)));
            padding: 0;
            font-family: "IBM Plex Sans JP", sans-serif;
            font-weight: 500;
            font-size: calc(14px * (100vw / var(--basic)));
            line-height: calc(20px * (100vw / var(--basic)));
            color: #32373E;
            background: #ffffff;
            border: 0;
            cursor: pointer;

            &::before{
                content: "\00d7";
                font-size: calc(21px * (100vw / var(--basic)));
                line-height: 1;
                color: #C50018;
            }
        }

        .modal_footer{
            position: fixed;
            left: 0;
            bottom: 0;
            z-index: 1;
            width: 100%;
            padding: calc(20px * (100vw / var(--basic))) calc(32px * (100vw / var(--basic))) calc(20px * (100vw / var(--basic)));
            background: #ffffff;
            border-top: 1px solid #CCCFD1;
        }

        .modal_search_button{
            display: flex;
            align-items: center;
            justify-content: center;
            gap: calc(4px * (100vw / var(--basic)));
            width: 100%;
            min-height: calc(48px * (100vw / var(--basic)));
            padding: calc(14px * (100vw / var(--basic))) calc(16px * (100vw / var(--basic))) calc(13px * (100vw / var(--basic)));
            font-family: "IBM Plex Sans JP", sans-serif;
            font-weight: 600;
            font-size: calc(14px * (100vw / var(--basic)));
            line-height: calc(20px * (100vw / var(--basic)));
            color: #ffffff;
            text-align: center;
            text-decoration: none;
            background: #C50018;
            border: 1px solid #CCCFD1;
            border-radius: 999px;
            cursor: pointer;

            img{
                width: calc(16px * (100vw / var(--basic)));
                height: calc(16px * (100vw / var(--basic)));
                object-fit: contain;
            }
        }
    }
}
