@charset "UTF-8";

html{
    scroll-behavior: smooth;
}

#topsearch{
    scroll-margin-top: 100px;
}

/* ============================
リセット
============================ */
.l-wrapper{
    background: url(/images/top/main_bg.webp) no-repeat center / cover;
}

.l-main *{
    font-family: "Noto Sans JP", sans-serif;
}

.l-main{
    width: auto;
    padding: 120px 0 0;
    overflow: hidden;
    font-weight: 500;
}

/* ============================
共通
============================ */
[class*="section__wrapper--"]{
    padding-block: 70px;
}

[class*="section__inner--"]{
    width: 1140px;
    margin: 0 auto;
}

[class*="ttl__box--"]{
    display: flex;
    align-items: flex-end;
    gap: 20px;
    text-align: left;
}

[class*="section__ttl--"]{
    margin: 0;
    color:#333;
    font-family: "Shippori Mincho", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1;
}

[class*="section__sub-ttl--"]{
    margin: 0;
    color:#F72592;
    font-family: "Shippori Mincho", sans-serif;
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
}

/* ============================
メインビジュアル
============================ */
.main__box{
    position: relative;
}

.org-top-mv-slider{
    width: 100%;
    overflow: hidden;
}

    .org-top-mv-slider__slide{
        width: 100%;
    }

        .org-top-mv-slider__link-wrap{
            margin: 0;
        }

            .org-top-mv-slider__link{
                display: block;
            }

            .org-top-mv-slider__link:hover{
                opacity: .8;
            }

            .org-top-mv-slider__link:hover:has(.org-top-mv-slider__img--hover){
                opacity: 1;
            }

        .org-top-mv-slider__figure,
        .main__img{
            position: relative;
            margin: 0 auto;
            line-height: 0;
            width: 1140px;
            height: 514px;
        }

            .org-top-mv-slider__figure img,
            .main__img img{
                width: 100%;
                height: 100%;
                object-fit: cover;
                display: block;
            }

            .org-top-mv-slider__img--hover{
                position: absolute;
                top: 0;
                left: 0;
                opacity: 0;
            }

            .org-top-mv-slider__link:hover .org-top-mv-slider__img--hover{
                opacity: 1;
            }

            .org-top-mv-slider__counts{
                position: absolute;
                inset: 0;
                z-index: 2;
                pointer-events: none;
            }

            .org-top-mv-slider__count{
                position: absolute;
                left: 72px;
                top: 420px;
                width: 101px;
                height: 27px;
                display: flex;
                align-items: center;
                justify-content: center;
            }

            .org-top-mv-slider__count--all{
                left: 340px;
                top: 412px;
                width: 158px;
                height: 45px;
            }

            .org-top-mv-slider__count-num{
                font-size: 18px;
                font-weight: 800;
                line-height: 1;
                color: #333;
                font-family: "Noto Sans JP", sans-serif;
            }

            .org-top-mv-slider__count-num--all{
                font-size: 30px;
                color: #d70606;
            }

    .swiper.org-top-mv-slider > .org-top-mv-slider__pager{
        position: static;
        bottom: auto;
        left: auto;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        margin-top: 15px;
        width: 100%;
    }

        .org-top-mv-slider__bullet{
            display: block;
            width: 20px;
            height: 2px;
            margin: 0;
            border-radius: 9999px;
            background: #D9D9D9;
            opacity: 1;
            cursor: pointer;
        }

        .org-top-mv-slider__bullet.is-active{
            background: #F72592;
        }

/* ============================
物件検索
============================ */
.section__wrapper--property{
    padding-block: 40px 0;
}

    .property__list{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

        [class*="property__item"]{
            display: flex;
            flex-direction: column;
            width: 372px;
        }

            .property__ttl-wrap{
                display: flex;
                align-items: flex-end;
                gap: 11px;
                width: 100%;
                height: 76px;
                padding: 15px 0 14px 11px;
                background: #F7F7F7;
                box-shadow: inset 1px 0 0 #F72592, inset -1px 0 0 #F72592, inset 0 1px 0 #F72592;
            }

                .property__icon{
                    flex-shrink: 0;
                    width: 47px;
                    height: 47px;
                    margin: 0;
                }

                    .property__icon img{
                        display: block;
                        width: 47px;
                        height: 47px;
                    }

                .property__ttl-box{
                    display: flex;
                    flex-direction: column;
                    gap: 6px;
                }

                    .property__ttl{
                        display: flex;
                        align-items: flex-end;
                        margin: 0;
                        white-space: nowrap;
                    }

                        .property__ttl-main{
                            color: #F72592;
                            font-family: "Shippori Mincho", serif;
                            font-size: 30px;
                            font-weight: 800;
                            line-height: 1;
                            letter-spacing: 0;
                        }

                        .property__ttl-sub{
                            color: #F72592;
                            font-family: "Shippori Mincho", serif;
                            font-size: 24px;
                            font-weight: 800;
                            line-height: 1;
                            letter-spacing: 0;
                        }

                    .property__en{
                        margin: 0;
                        color: #F72592;
                        font-family: "Shippori Mincho", serif;
                        font-size: 10px;
                        font-weight: 800;
                        line-height: 1;
                        letter-spacing: 1.2px;
                        white-space: nowrap;
                    }

            [class*="property__btns"]{
                display: flex;
                align-items: center;
                gap: 14px;
                width: 100%;
                height: 76px;
                margin: 0;
                padding: 12px 15px;
                background: #F72592;
                list-style: none;
            }

                [class*="property__btns"] > li{
                    margin: 0;
                    padding: 0;
                }

            .property__btns--mansion{
                gap: 10px;
            }

                .property__link-wrap{
                    margin: 0;
                }

                    [class*="property__link--"]{
                        display: flex;
                        align-items: flex-end;
                        justify-content: center;
                        width: 164px;
                        height: 52px;
                        padding-block: 16px;
                        border-radius: 5px;
                        background: linear-gradient(to bottom, #F7F7F7, #E8E8EA);
                        box-shadow: 2px 2px 0.5px #AB9DA5;
                        text-decoration: none;
                        white-space: nowrap;
                    }

                    [class*="property__link--"]:hover{
                        opacity: .8;
                    }

                    .property__btns--mansion [class*="property__link--"]{
                        width: 107px;
                    }

                    .property__btns--mansion .property__link--area{
                        width: 108px;
                    }

                        .property__link-label{
                            color: #F72592;
                            font-family: "Noto Sans JP", sans-serif;
                            font-size: 20px;
                            font-weight: 400;
                            line-height: 1;
                            letter-spacing: 0;
                        }

                        .property__link-action{
                            color: #F72592;
                            font-family: "Noto Sans JP", sans-serif;
                            font-size: 14px;
                            font-weight: 400;
                            line-height: 1;
                            letter-spacing: 0;
                        }

/* ============================
バナー
============================ */
.section__wrapper--bnr{
    padding-block: 40px 0;
    overflow: hidden;
}

    .bnr-slider{
        width: 100%;
        overflow: hidden;
    }

        .bnr-slider .swiper-wrapper{
            display: flex;
        }

            .bnr-slider .swiper-slide{
                box-sizing: border-box;
                width: 700px;
                height: 171px;
                flex-shrink: 0;
            }

            .bnr-slider .swiper-slide.bnr__item--wide{
                width: 711px;
            }

            .bnr__link-wrap{
                margin: 0;
            }

                .bnr__link{
                    display: block;
                }

                .bnr__link:hover{
                    opacity: .8;
                }

                    .bnr__img{
                        margin: 0;
                        line-height: 0;
                    }

                        .bnr__img img{
                            display: block;
                            width: 100%;
                            height: 171px;
                            object-fit: cover;
                        }

/* ============================
物件検索（フリーワード）
============================ */
.section__wrapper--freesearch{
    padding-bottom: 0;
}
.section__inner--freesearch{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

    .ttl__box--freesearch{
        width: 100%;
    }

    .free_search{
        width: 100%;
    }

        .freesearch__box{
            display: flex;
            align-items: center;
            box-sizing: border-box;
            gap: 10px;
            width: 100%;
            padding: 30px 30px 28px;
            border: 1px solid #CFD8DC;
            background: #fff;
        }

            .freesearch__item{
                flex-shrink: 0;
            }

            .freesearch__item--type{
                position: relative;
                width: 90px;
            }

                .madori_select{
                    position: relative;
                    width: 90px;
                    margin: 0;
                }

                    .madori_select dt{
                        box-sizing: border-box;
                        width: 90px;
                        height: 40px;
                        margin: 0;
                        padding: 0 22px 0 12px;
                        overflow: hidden;
                        border: 1px solid #CFD8DC;
                        border-radius: 3px;
                        background: #FEE9F4 url(/images/top/icon_select.svg) no-repeat right 11px center / 9px 5px;
                        color: #333;
                        font-family: "Noto Sans JP", sans-serif;
                        font-size: 14px;
                        font-weight: 400;
                        line-height: 38px;
                        letter-spacing: 0;
                        white-space: nowrap;
                        text-overflow: ellipsis;
                        cursor: pointer;
                    }

                    .madori_select dd{
                        display: none;
                        position: absolute;
                        top: calc(100% + 4px);
                        left: 0;
                        z-index: 3;
                        box-sizing: border-box;
                        width: 280px;
                        margin: 0;
                        padding: 12px;
                        border: 1px solid #CFD8DC;
                        background: #fff;
                    }

                    .madori_select dd.dd-visible{
                        display: block;
                    }

                        .madori_select dd ul{
                            margin: 0 0 10px;
                            padding: 0;
                            list-style: none;
                        }

                        .madori_select dd ul:last-child{
                            margin-bottom: 0;
                        }

                            .madori_select dd li{
                                margin: 0 0 4px;
                            }

                            .madori_select dd li.type__ttl{
                                margin: 0 0 6px;
                                color: #F72592;
                                font-family: "Noto Sans JP", sans-serif;
                                font-size: 14px;
                                font-weight: 700;
                                line-height: 1;
                                letter-spacing: 0;
                            }

                                .madori_select dd label{
                                    color: #333;
                                    font-family: "Noto Sans JP", sans-serif;
                                    font-size: 14px;
                                    font-weight: 400;
                                    line-height: 1.4;
                                    letter-spacing: 0;
                                    cursor: pointer;
                                }

            .freesearch__item--word{
                width: 352px;
            }

                .freesearch__item--word input{
                    box-sizing: border-box;
                    width: 352px;
                    height: 40px;
                    padding: 0 12px;
                    border: 1px solid #CFD8DC;
                    border-radius: 3px;
                    background: #fff;
                    color: #333;
                    font-family: "Noto Sans JP", sans-serif;
                    font-size: 14px;
                    font-weight: 400;
                    line-height: 38px;
                    letter-spacing: 0;
                }

                .freesearch__item--word input:hover,
                .freesearch__item--word input:focus{
                    background: #FFFBDB;
                    border: 1px solid #60A5C5;
                    outline: none;
                }

                .freesearch__item--word input::placeholder{
                    color: #707070;
                }

            .freesearch__item--select{
                width: 129px;
            }

                .freesearch__item--select select{
                    box-sizing: border-box;
                    width: 129px;
                    height: 40px;
                    padding: 0 22px 0 12px;
                    border: 1px solid #CFD8DC;
                    border-radius: 3px;
                    background: #FEE9F4 url(/images/top/icon_select.svg) no-repeat right 11px center / 9px 5px;
                    color: #333;
                    font-family: "Noto Sans JP", sans-serif;
                    font-size: 14px;
                    font-weight: 400;
                    line-height: 38px;
                    letter-spacing: 0;
                    appearance: none;
                    -webkit-appearance: none;
                    cursor: pointer;
                }

                .freesearch__item--size select{
                    display: none;
                }

                .freesearch__item--size select.is-show{
                    display: block;
                }

            .freesearch__item--area{
                position: relative;
            }

                .freesearch-area__panel{
                    display: none;
                    position: absolute;
                    top: 100%;
                    left: 0;
                    z-index: 3;
                    box-sizing: border-box;
                    flex-direction: column;
                    gap: 30px;
                    width: 694px;
                    max-height: 400px;
                    padding: 30px;
                    overflow-x: hidden;
                    overflow-y: auto;
                    overscroll-behavior: contain;
                    border: 1px solid #CFD8DC;
                    background: #fff;
                    box-shadow: 0 4px 2px rgba(0, 0, 0, 0.1);
                }

                .freesearch-area__panel.is-show{
                    display: flex;
                }

                    .freesearch-area__block{
                        display: flex;
                        flex-direction: column;
                        gap: 20px;
                    }

                    .freesearch-area__block:first-child{
                        padding-bottom: 30px;
                        border-bottom: 1px solid #CFD8DC;
                    }

                        .freesearch-area__head{
                            display: flex;
                            align-items: center;
                            gap: 15px;
                        }

                        .freesearch-area__ttl{
                            margin: 0;
                            color: #F72592;
                            font-family: "Noto Sans JP", sans-serif;
                            font-size: 14px;
                            font-weight: 700;
                            line-height: 1;
                            letter-spacing: 0;
                            white-space: nowrap;
                        }

                        .freesearch-area__divider{
                            display: block;
                            flex-shrink: 0;
                            width: 1px;
                            height: 16px;
                            background: #CFD8DC;
                        }

                        .freesearch-area__none{
                            padding: 0;
                            border: none;
                            background: none;
                            color: #333;
                            font-family: "Noto Sans JP", sans-serif;
                            font-size: 14px;
                            font-weight: 700;
                            line-height: 1;
                            letter-spacing: 0;
                            white-space: nowrap;
                            cursor: pointer;
                        }

                        .freesearch-area__none:hover{
                            opacity: .8;
                        }

                        .freesearch-area__railway{
                            display: flex;
                            flex-direction: column;
                            gap: 15px;
                        }

                        .freesearch-area__line{
                            margin: 0;
                            color: #FF7F2C;
                            font-family: "Noto Sans JP", sans-serif;
                            font-size: 14px;
                            font-weight: 400;
                            line-height: 1;
                            letter-spacing: 0;
                        }

                        .freesearch-area__list{
                            display: grid;
                            grid-template-columns: repeat(4, 128px);
                            gap: 14px 40px;
                            margin: 0;
                            padding: 0;
                            list-style: none;
                        }

                            .freesearch-area__list li{
                                width: 128px;
                            }

                            .freesearch-area__name{
                                display: block;
                                width: 100%;
                                padding: 0;
                                border: none;
                                background: none;
                                color: #333;
                                font-family: "Noto Sans JP", sans-serif;
                                font-size: 14px;
                                font-weight: 400;
                                line-height: 1;
                                letter-spacing: 0;
                                text-align: left;
                                word-break: break-word;
                                cursor: pointer;
                            }

                            .freesearch-area__name:hover{
                                opacity: .8;
                            }

            .freesearch__count{
                display: flex;
                flex-shrink: 0;
                align-items: baseline;
                margin: 0;
                white-space: nowrap;
            }

                .freesearch__count-num{
                    color: #EF5350;
                    font-family: "Noto Sans JP", sans-serif;
                    font-size: 20px;
                    font-weight: 500;
                    line-height: 1;
                    letter-spacing: 0;
                }

                .freesearch__count-unit{
                    color: #333;
                    font-family: "Noto Sans JP", sans-serif;
                    font-size: 16px;
                    font-weight: 400;
                    line-height: 1;
                    letter-spacing: 0;
                }

            .freesearch__btn-wrap{
                flex-shrink: 0;
                margin: 0;
            }

                .freeSearch__btn{
                    position: relative;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    box-sizing: border-box;
                    width: 120px;
                    height: 40px;
                    padding: 12px 40px;
                    border: none;
                    border-radius: 9999px;
                    background: #F72592;
                    cursor: pointer;
                }

                .freeSearch__btn:hover{
                    opacity: .8;
                }

                    .freesearch__btn-text{
                        color: #fff;
                        font-family: "Noto Sans JP", sans-serif;
                        font-size: 16px;
                        font-weight: 400;
                        line-height: 1;
                        letter-spacing: 0;
                    }

                    .freesearch__btn-arrow{
                        position: absolute;
                        top: 50%;
                        right: 16px;
                        width: 6px;
                        height: 10px;
                        transform: translateY(-50%);
                    }

/* ============================
こだわり検索
============================ */
.section__wrapper--pick-up{
    padding-block: 70px 0;
}

    .section__inner--pick-up{
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

        .pickup__list{
            display: flex;
            align-items: center;
            gap: 20px;
            margin: 0;
            padding: 0;
            list-style: none;
        }

            .pickup__item{
                width: 212px;
            }

            .pickup__link-wrap{
                margin: 0;
            }

                .pickup__link{
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    gap: 8px;
                    text-decoration: none;
                }

                .pickup__link:hover{
                    opacity: .8;
                }

                    .pickup__img{
                        position: relative;
                        width: 212px;
                        height: 202px;
                        margin: 0;
                        overflow: hidden;
                        border: 1px solid #F72592;
                        box-sizing: border-box;
                        line-height: 0;
                    }

                    .pickup__img::after{
                        content: "";
                        position: absolute;
                        right: -1px;
                        bottom: -1px;
                        width: 27px;
                        height: 27px;
                        background: #F72592;
                        clip-path: polygon(100% 0, 100% 100%, 0 100%);
                    }

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

                    .pickup__ttl{
                        display: flex;
                        align-items: flex-end;
                        justify-content: center;
                        width: 100%;
                        height: 43px;
                        margin: 0;
                        padding-bottom: 13px;
                        border-bottom: 1px dashed #F72592;
                        box-sizing: border-box;
                    }

                        .pickup__ttl-text{
                            color: #333;
                            font-family: "Shippori Mincho", serif;
                            font-size: 20px;
                            font-weight: 800;
                            line-height: 1;
                            letter-spacing: 0;
                        }

                        .pickup__ttl-accent{
                            color: #F72592;
                            font-family: "Shippori Mincho", serif;
                            font-size: 24px;
                            font-weight: 800;
                            line-height: 1;
                            letter-spacing: 0;
                        }

                        .pickup__ttl-num{
                            color: #F72592;
                            font-family: "Shippori Mincho", serif;
                            font-size: 30px;
                            font-weight: 800;
                            line-height: 1;
                            letter-spacing: 0;
                        }

                        .pickup__ttl-unit{
                            color: #F72592;
                            font-family: "Shippori Mincho", serif;
                            font-size: 20px;
                            font-weight: 800;
                            line-height: 1;
                            letter-spacing: 0;
                        }

/* ============================
新着物件 / おすすめ物件
============================ */
.section__wrapper--new,
.section__wrapper--recommend,
.section__wrapper--ranking{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.section__wrapper--recommend{
    background: rgba(254, 233, 244, 0.75);
}

    .bkn-slider{
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 30px;
        width: 100%;
    }

        .bkn-slider__view{
            width: 100%;
            overflow: hidden;
        }

            .bkn-slider__view .swiper-slide.bkn__item{
                position: relative;
                box-sizing: border-box;
                width: 300px;
                height: auto;
                padding: 20px 20px 18px;
                border: 1px solid #CFD8DC;
                background: #fff;
            }

                .bkn__link-wrap{
                    margin: 0;
                }

                    .bkn__link{
                        display: flex;
                        flex-direction: column;
                        gap: 10px;
                        text-decoration: none;
                    }

                    .bkn__link:hover{
                        opacity: .8;
                    }

                        .bkn__img{
                            position: relative;
                            width: 260px;
                            height: 195px;
                            margin: 0;
                            overflow: hidden;
                            line-height: 0;
                        }

                            .bkn__img img{
                                display: block;
                                width: 260px;
                                height: 195px;
                                object-fit: cover;
                            }

                            .bkn__label{
                                position: absolute;
                                top: 0;
                                left: 0;
                                display: flex;
                                align-items: center;
                                justify-content: center;
                                width: 58px;
                                height: 26px;
                                border-radius: 0 0 10px 0;
                                background: #F72592;
                                color: #fff;
                                font-family: "Shippori Mincho", serif;
                                font-size: 14px;
                                font-weight: 800;
                                line-height: 1;
                                letter-spacing: 0;
                            }

                        .bkn__body{
                            display: flex;
                            flex-direction: column;
                        }

                            .bkn__name{
                                margin: 0;
                                overflow: hidden;
                                color: #333;
                                font-family: "Shippori Mincho", serif;
                                font-size: 16px;
                                font-weight: 800;
                                line-height: 1;
                                letter-spacing: 0;
                                white-space: nowrap;
                                text-overflow: ellipsis;
                            }

                            .bkn__price{
                                margin: 8px 0 0;
                                padding-bottom: 8px;
                                border-bottom: 1px solid #CFD8DC;
                                color: #333;
                                font-family: "Shippori Mincho", serif;
                                font-size: 16px;
                                font-weight: 800;
                                line-height: 1;
                                letter-spacing: 0;
                            }

                                .price{
                                    color: #EF5350;
                                    font-family: "Shippori Mincho", serif;
                                    font-size: 24px;
                                    font-weight: 800;
                                    line-height: 1;
                                    letter-spacing: 0;
                                }

                            .bkn__spec,
                            .bkn__address,
                            .bkn__access{
                                margin: 0;
                                overflow: hidden;
                                color: #333;
                                font-family: "Noto Sans JP", sans-serif;
                                font-size: 14px;
                                font-weight: 400;
                                line-height: 1;
                                letter-spacing: 0;
                                white-space: nowrap;
                                text-overflow: ellipsis;
                            }

                            .bkn__spec{
                                margin: 12px 0 0;
                            }

                            .bkn__address{
                                margin: 8px 0 0;
                            }

                            .bkn__access{
                                margin: 8px 0 0;
                            }

                .bkn_favorite{
                    position: absolute;
                    top: 30px;
                    right: 30px;
                    z-index: 1;
                    width: 40px;
                    height: 40px;
                    margin: 0;
                    padding: 0;
                    border: none;
                    background: url(/images/top/icon_favorite.svg) no-repeat center / cover;
                    cursor: pointer;
                }

                .bkn_favorite.is-checked{
                    background: url(/images/top/icon_favorite_on.svg) no-repeat center / cover;
                }

        .bkn-slider__pager{
            display: flex;
            align-items: center;
            gap: 14px;
        }

            .bkn-slider__prev,
            .bkn-slider__next{
                position: relative;
                flex-shrink: 0;
                width: 9px;
                height: 14px;
                padding: 0;
                border: none;
                background: transparent;
                overflow: visible;
                cursor: pointer;
            }

                .bkn-slider__prev img,
                .bkn-slider__next img{
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    width: 10px;
                    height: 15px;
                    transform: translate(-50%, -50%);
                }

                .bkn-slider__prev img{
                    transform: translate(-50%, -50%) scaleX(-1);
                }

            .bkn-slider__dots{
                position: static;
                bottom: auto;
                left: auto;
                display: flex;
                align-items: center;
                gap: 8px;
                width: auto;
            }

                .bkn-slider__bullet{
                    display: block;
                    width: 20px;
                    height: 2px;
                    margin: 0;
                    border-radius: 9999px;
                    background: #D9D9D9;
                    opacity: 1;
                    cursor: pointer;
                }

                .bkn-slider__bullet.is-active{
                    background: #F72592;
                }

        .bkn-slider__btn-wrap{
            margin: 0;
        }

            .bkn-slider__btn{
                position: relative;
                display: flex;
                align-items: center;
                justify-content: center;
                box-sizing: border-box;
                width: 220px;
                height: 50px;
                padding: 17px 40px;
                border: 1px solid #F72592;
                border-radius: 9999px;
                background: #FFF7FC;
                text-decoration: none;
            }

            .bkn-slider__btn:hover{
                opacity: .8;
            }

                .bkn-slider__btn-text{
                    color: #F72592;
                    font-family: "Noto Sans JP", sans-serif;
                    font-size: 16px;
                    font-weight: 400;
                    line-height: 1;
                    letter-spacing: 0;
                }

                .bkn-slider__btn-arrow{
                    position: absolute;
                    top: 50%;
                    right: 21px;
                    width: 6px;
                    height: 10px;
                    transform: translateY(-50%);
                }

/* ============================
人気物件ランキング
============================ */
.section__wrapper--ranking{
    padding-bottom: 0;
}
.bkn-slider__view .swiper-slide.ranking__item{
    position: relative;
    box-sizing: border-box;
    width: 570px;
    height: auto;
    padding: 20px 20px 18px;
    border: 1px solid #CFD8DC;
    background: #fff;
}

    .ranking__link-wrap{
        margin: 0;
    }

        .ranking__link{
            display: flex;
            gap: 10px;
            text-decoration: none;
        }

        .ranking__link:hover{
            opacity: .8;
        }

            .ranking__body{
                display: flex;
                flex-direction: column;
                gap: 15px;
                width: 260px;
            }

                .ranking__num{
                    display: flex;
                    align-items: center;
                    margin: 0;
                }

                    .ranking__num-img{
                        display: block;
                        height: 29px;
                        width: auto;
                    }

                .ranking__info{
                    display: flex;
                    flex-direction: column;
                    gap: 12px;
                }

                    .ranking__item .bkn__price{
                        margin: 0;
                        padding-bottom: 15px;
                    }

                .ranking__meta{
                    display: flex;
                    flex-direction: column;
                    gap: 10px;
                }

                    .ranking__meta .bkn__spec,
                    .ranking__meta .bkn__address,
                    .ranking__meta .bkn__access{
                        margin: 0;
                    }

                .ranking__item .bkn_favorite{
                    width: 30px;
                    height: 28px;
                    background: url(/images/top/ranking-icon_favorite.svg) no-repeat center / cover;
                    top: 20px;
                    right: 20px;
                }

                .ranking__item .bkn_favorite.is-checked{
                    background: url(/images/top/ranking-icon_favorite_on.svg) no-repeat center / cover;
                }

/* ============================
お客様の声
============================ */
.section__wrapper--voice{
    padding-bottom: 0;
}
.section__inner--voice{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

    .ttl__box--voice{
        width: 100%;
    }

    .voice__list{
        display: flex;
        align-items: stretch;
        gap: 24px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

        .voice__item{
            box-sizing: border-box;
            width: 364px;
            padding: 20px 20px 18px;
            border: 1px solid #CFD8DC;
            background: #fff;
        }

            .voice__link-wrap{
                margin: 0;
            }

                .voice__link{
                    display: flex;
                    flex-direction: column;
                    gap: 12px;
                    text-decoration: none;
                }

                .voice__link:hover{
                    opacity: .8;
                }

                    .voice__img{
                        width: 324px;
                        height: 243px;
                        margin: 0;
                        overflow: hidden;
                        line-height: 0;
                    }

                        .voice__img img{
                            display: block;
                            width: 100%;
                            height: 100%;
                            object-fit: contain;
                            background-color: #f5f5f5;
                        }

                    .voice__body{
                        display: flex;
                        flex-direction: column;
                        gap: 10px;
                    }

                        .voice__name{
                            margin: 0;
                            overflow: hidden;
                            color: #333;
                            font-family: "Shippori Mincho", serif;
                            font-size: 16px;
                            font-weight: 800;
                            line-height: 1;
                            letter-spacing: 0;
                            white-space: nowrap;
                            text-overflow: ellipsis;
                            text-align: center;
                        }

                        .voice__text{
                            margin: 0;
                            color: #333;
                            font-family: "Noto Sans JP", sans-serif;
                            font-size: 16px;
                            font-weight: 400;
                            line-height: 1.65;
                            letter-spacing: 0;
                            display: -webkit-box;
                            -webkit-line-clamp: 2;
                            -webkit-box-orient: vertical;
                            overflow: hidden;
                        }

/* ============================
お問合せ
============================ */
.section__wrapper--contact{
    padding-block: 70px 0;
}

    .contact{
        padding-block: 70px;
        background: rgba(228, 55, 145, 0.6);
    }

        .section__inner--contact{
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 30px;
        }

            .ttl__box--contact{
                width: 100%;
            }

                .section__ttl--contact,
                .section__sub-ttl--contact{
                    color: #fff;
                }

            .contact__list{
                display: flex;
                align-items: flex-start;
                justify-content: center;
                box-sizing: border-box;
                gap: 24px;
                width: 100%;
                padding: 30px;
                background: #fff;
            }

                .contact__item.contact__item--tel {
                    gap: 27px;
                }
                .contact__item{
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    gap: 29px;
                    width: 252px;
                }

                    .contact__icon{
                        width: 60px;
                        height: 60px;
                        margin: 0;
                        overflow: hidden;
                        line-height: 0;
                    }

                        .contact__icon img{
                            display: block;
                            width: 60px;
                            height: 60px;
                        }

                    .contact__tel{
                        display: flex;
                        flex-direction: column;
                        align-items: center;
                        gap: 14px;
                        text-align: center;
                    }

                        .contact__tel-num{
                            margin: 0;
                            color: #333;
                            font-family: "Shippori Mincho", serif;
                            font-size: 28px;
                            font-weight: 800;
                            line-height: 1;
                            letter-spacing: 0;
                        }

                        .contact__hours{
                            text-align: center;
                        }

                            .contact__hours-text{
                                margin: 0;
                                color: #707070;
                                font-family: "Shippori Mincho", serif;
                                font-size: 14px;
                                font-weight: 400;
                                line-height: 1.3;
                                letter-spacing: 0;
                            }

                    .contact__btn-wrap{
                        margin: 0;
                    }

                        .contact__btn{
                            position: relative;
                            display: flex;
                            align-items: center;
                            justify-content: center;
                            box-sizing: border-box;
                            width: 252px;
                            height: 65px;
                            padding: 17px 10px;
                            text-decoration: none;
                        }

                        .contact__btn:hover{
                            opacity: .8;
                        }

                        .contact__btn--reserve{
                            background: #FF7F2C;
                        }

                        .contact__btn--mail{
                            background: #F72592;
                        }

                        .contact__btn--line{
                            background: #06C655;
                        }

                            .contact__btn-text{
                                color: #fff;
                                font-family: "Noto Sans JP", sans-serif;
                                font-size: 18px;
                                font-weight: 700;
                                line-height: 1;
                                letter-spacing: 0;
                            }

                            .contact__btn-arrow{
                                position: absolute;
                                top: 50%;
                                right: 18px;
                                width: 6px;
                                height: 10px;
                                transform: translateY(-50%);
                            }

/* ============================
更新情報
============================ */
.section__wrapper--news{
    padding-block: 66px 0;
}
.section__inner--news{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

    .news__head{
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        width: 100%;
    }

    .news__box{
        box-sizing: border-box;
        width: 100%;
        padding: 30px 30px 28px;
        border: 1px solid #CFD8DC;
        background: #fff;
    }

        .news__list{
            height: 370px;
        }

            .news__items{
                display: flex;
                flex-direction: column;
                gap: 30px;
                margin: 0;
                padding: 0 25px 0 0;
                list-style: none;
            }

                .news__item{
                    padding-bottom: 23px;
                    border-bottom: 1px solid #CFD8DC;
                }

                    .news__link-wrap{
                        margin: 0;
                    }

                        .news__link{
                            display: flex;
                            align-items: flex-start;
                            gap: 15px;
                            text-decoration: none;
                        }

                        .news__link:hover{
                            opacity: .8;
                        }

                            .news__date{
                                flex-shrink: 0;
                                margin: 0;
                                color: #F72592;
                                font-family: "Noto Sans JP", sans-serif;
                                font-size: 16px;
                                font-weight: 400;
                                line-height: 1;
                                letter-spacing: 0;
                                white-space: nowrap;
                            }

                            .news__body{
                                display: flex;
                                flex-direction: column;
                                gap: 12px;
                                min-width: 0;
                            }

                                .news__ttl{
                                    margin: 0;
                                    color: #333;
                                    font-family: "Shippori Mincho", serif;
                                    font-size: 16px;
                                    font-weight: 800;
                                    line-height: 1;
                                    letter-spacing: 0;
                                }

                                .news__text{
                                    margin: 0;
                                    color: #333;
                                    font-family: "Noto Sans JP", sans-serif;
                                    font-size: 14px;
                                    font-weight: 400;
                                    line-height: 1.65;
                                    letter-spacing: 0;
                                }

            .news__list .simplebar-track.simplebar-vertical{
                top: 0;
                right: 0;
                width: 4px;
                background: #CFD8DC;
                border-radius: 9999px;
            }

            .news__list .simplebar-track.simplebar-vertical .simplebar-scrollbar:before{
                top: 0;
                right: 0;
                bottom: 0;
                left: 0;
                background: #F72592;
                border-radius: 9999px;
                opacity: 1;
            }

            .news__list .simplebar-track.simplebar-horizontal{
                display: none;
            }

/* ============================
リビングボイスについて
============================ */
.section__wrapper--about-us{
    position: relative;
    z-index: 1;
    padding-bottom: 68px;
}
.section__wrapper--about-us::before{
    position: absolute;
    content: "";
    background: rgba(255, 222, 239, 0.7);
    width: 100%;
    height: 789px;
    top: 88px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}

    .section__inner--about-us{
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 30px;
    }

        .ttl__box--about-us{
            flex-direction: column;
            align-items: center;
            text-align: center;
        }

        .about-us__message{
            display: flex;
            align-items: center;
            margin: 0;
        }

            .about-us__message-text{
                color: #F72592;
                font-family: "Shippori Mincho", serif;
                font-size: 30px;
                font-weight: 800;
                line-height: 1;
                letter-spacing: 0;
            }

            .about-us__message-mark{
                color: #F72592;
                font-family: "Noto Serif JP", serif;
                font-size: 30px;
                font-weight: 700;
                line-height: 1;
            }

        .about-us__body{
            display: flex;
            flex-direction: column;
            gap: 30px;
            width: 100%;
        }

            .about-us__text{
                margin: 0;
                width: 100%;
                color: #333;
                font-family: "Noto Sans JP", sans-serif;
                font-size: 16px;
                font-weight: 400;
                line-height: 1.8;
                letter-spacing: 0;
                text-align: center;
            }

/* ============================
会社概要
============================ */
.section__wrapper--company{
    padding-block: 70px 0;
}

.section__inner--company{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

    .ttl__box--company{
        width: 100%;
    }

    .company__content{
        display: flex;
        align-items: flex-start;
        gap: 40px;
        width: 100%;
    }

        .company__media{
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 20px;
            width: 510px;
        }

            .company__img{
                width: 510px;
                height: 383px;
                margin: 0;
                overflow: hidden;
                line-height: 0;
            }

                .company__img img{
                    display: block;
                    width: 510px;
                    height: 383px;
                    object-fit: cover;
                }

        .company__info{
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

            .company__name{
                margin: 0;
                color: #F72592;
                font-family: "Shippori Mincho", serif;
                font-size: 20px;
                font-weight: 800;
                line-height: 1;
                letter-spacing: 0;
            }

            .company__list{
                display: flex;
                flex-direction: column;
                gap: 16px;
                margin: 0;
                padding-top: 15px;
                border-top: 1px solid #CFD8DC;
            }

                .company__item{
                    display: flex;
                    align-items: flex-start;
                    gap: 15px;
                    padding-bottom: 14px;
                    border-bottom: 1px solid #CFD8DC;
                }

                    .company__term{
                        flex-shrink: 0;
                        width: 112px;
                        margin: 0;
                        color: #F72592;
                        font-family: "Noto Sans JP", sans-serif;
                        font-size: 14px;
                        font-weight: 400;
                        line-height: 1.65;
                        letter-spacing: 0;
                    }

                    .company__desc{
                        width: 463px;
                        margin: 0;
                        color: #333;
                        font-family: "Noto Sans JP", sans-serif;
                        font-size: 14px;
                        font-weight: 400;
                        line-height: 1.65;
                        letter-spacing: 0;
                    }

                        [class*="company__mail"] a,
                        [class*="company__tel"]{
                            color: #333;
                            font-family: "Noto Sans JP", sans-serif;
                            font-size: 16px;
                            font-weight: 400;
                            line-height: 1.8;
                            letter-spacing: 0;
                        }

/* ============================
お役立ちコンテンツ
============================ */
.section__wrapper--helpful{
    padding-block: 70px 0;
}

    .helpful{
        box-sizing: border-box;
        width: 1280px;
        margin: 0 auto;
        padding: 70px;
        background: rgba(254, 233, 244, 0.55);
    }

        .section__inner--helpful{
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 27px;
        }

            .ttl__box--helpful{
                flex-direction: column;
                align-items: center;
                text-align: center;
            }

            .helpful__list{
                display: flex;
                flex-wrap: wrap;
                gap: 27px;
                width: 1140px;
                margin: 0;
                padding: 0;
                list-style: none;
            }

                .helpful__item{
                    width: 362px;
                }

                    .helpful__link-wrap{
                        margin: 0;
                    }

                        .helpful__link{
                            display: block;
                        }

                        .helpful__link:hover{
                            opacity: .8;
                        }

                            .helpful__img{
                                width: 362px;
                                height: 155px;
                                margin: 0;
                                overflow: hidden;
                                line-height: 0;
                            }

                                .helpful__img img{
                                    display: block;
                                    width: 362px;
                                    height: 155px;
                                    object-fit: cover;
                                }
