@charset "UTF-8";

.l-main *{
    font-family: 'Noto Sans JP';
    color: #444444;
}
.l-main{
    width: 100%;
    overflow: hidden;
    background-color: #FFFFFF;
    padding: 0;
}
body{
    overflow-x: hidden;
}
/* 共通 */
.section__wrap{
    position: relative;
    z-index: 1;
}
.section__wrap:not(:last-child){
    margin-bottom: 120px;
}
.section__inner{
    width: 1140px;
    margin: 0 auto;
    position: relative;
}
[class^="section__ttl"]{
    height: 145px;
    display: flex;
    align-items: flex-end;
    font-size: 40px;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-bottom: 40px;
    position: relative;
    z-index: 1;
}
.section__ttl--center{
    justify-content: center;
    margin-bottom: 40px;
}
[class^="more__btn"]{
    width: 240px;
    margin: 30px auto 0;
}
[class^="more__btn"] a{
    width: 100%;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 25px;
    background: #E37673 url(/images/top/more_bg.png) no-repeat top 4px left -6px;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #fff;
    overflow: hidden;
    position: relative;
    z-index: 1;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.section__buy [class^="more__btn"] a{
    background-color: #57A879;
}
[class^="more__btn"] a::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 0;
}
[class^="more__btn"] a:hover{
    opacity: 1;
}
[class^="more__btn"] a:hover::before{
    width: 300px;
    height: 300px;
    opacity: 0;
    transition: width 0.6s ease, height 0.6s ease, opacity 1s ease;
}
[class^="more__btn"] a::after{
    content: '';
    display: block;
    width: 7px;
    height: 10px;
    background: url(/images/top/more_arrow_right.png) no-repeat center;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
}
.more__btn--down a::after{
    width: 10px;
    height: 7px;
    background-image: url(/images/top/more_arrow_down.png);
    right: 19px;
}

.no-slider .ui-slider__list,
.no-slider .bkn-slider__list{
    justify-content: center;
    gap: 40px;
}
.ui-slider__item{
    width: 320px;
}
.ui-card{
    display: block;
}
.ui-card__img{
    display: block;
    width: 100%;
    height: 240px;
    overflow: hidden;
}
.ui-card__img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.4s;
}
.ui-card__img:hover{
    opacity: 1;
}
.ui-card__img:hover img{
    transform: scale(1.1);
}
.ui-card__info{
    padding: 5px 0 10px;
}
.ui-card__between{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 5px;
}
.ui-card__tag .tag_link{
    display: inline-block;
    padding: 0 5px;
    border: 1px solid #E37673;
    font-size: 12px;
    font-weight: 500;
    color: #E37673;
    line-height: 1.83;
}
.ui-card__tag .tag_link:not(:last-child){
    margin-right: 5px;
}
.ui-card__date,
.ui-card__date *{
    font-size: 14px;
    color: #E37673;
}
.ui-card__ttl{
    font-size: 16px;
    font-weight: 600;
    line-height: 1.375;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    margin-bottom: 5px;
}
.ui-card__name{
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 4px;
}
.ui-card__txt{
    font-size: 14px;
    line-height: 1.43;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
}
/* スライダー */
.slider__pager{
    position: absolute;
    bottom: 3px;
    right: 0;
    display: flex;
    align-items: center;
    gap: 20px;
}
.slider__pager .swiper-pagination{
    position: unset;
    display: flex;
    gap: 15px;
}
.slider__pager .swiper-pagination-bullet{
    width: 12px;
    height: 12px;
    opacity: 1;
    background-color: transparent;
    border: 1px solid #E37673;
    margin: 0 !important;
}
.slider__pager .swiper-pagination-bullet-active{
    background: #E37673;
}
.section__buy .slider__pager .swiper-pagination-bullet{
    border-color: #57A879;
}
.section__buy .slider__pager .swiper-pagination-bullet-active{
    background: #57A879;
}
.slider__pager .swiper-button-next, .slider__pager .swiper-button-prev{
    position: unset;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    min-width: 40px;
    height: 40px;
    margin: 0;
    padding: 0;
    border-radius: 50%;
    background: #E37673;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    overflow: hidden;
    position: relative;
    top: unset;
    left: unset;
    right: unset;
}
.section__buy .slider__pager .swiper-button-next, .section__buy .slider__pager .swiper-button-prev{
    background: #57A879;
}
.slider__pager .swiper-button-next::before, .slider__pager .swiper-button-prev::before{
    content: url(/images/top/slider_arrow.png);
}
.slider__pager .swiper-button-next::before{
    transform: rotate(180deg);
}
.slider__pager .swiper-button-next::after, .slider__pager .swiper-button-prev::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 0;
}
.slider__pager .swiper-button-next:hover:after, .slider__pager .swiper-button-prev:hover:after{
    width: 300px;
    height: 300px;
    opacity: 0;
    transition: width 0.6s ease, height 0.6s ease, opacity 1s ease;
}

/* メイン画像 */
.section__mv{
    position: relative;
    z-index: unset;
}
.section__mv::before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    background: url(/images/top/mv_img.png) no-repeat center top;
}
.mv__ttl{
    width: 1140px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
}
.mv__inner{
    padding-top: 508px;
}

/* 物件検索 */
.mv-search{
    position: relative;
    z-index: 1;
}
.tab-btn__wrap{
    display: flex;
    justify-content: flex-start;
    gap: 10px;
    margin-bottom: -3px;
}
.tab-btn__wrap button:hover{
    opacity: 1;
}
[class^="tab-btn__type"]{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 280px;
    height: 68px;
    border-radius: 10px 10px 0 0;
    border: 3px solid;
    font-family: 'Zen Kaku Gothic New';
    font-size: 30px;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #fff;
    position: relative;
}
.tab-btn__type--rent{
    background: #E37673;
    border-color: #E37673;
    border-bottom-color: #57A879;
}
.tab-btn__type--buy{
    background: #57A879;
    border-color: #57A879;
    border-bottom-color: #E37673;
}
.tab-btn__type--rent.active{
    background: #fff;
    border-color: #E37673;
    border-bottom: 3px solid #fff;
    color: #E37673;
}
.tab-btn__type--buy.active{
    background: #fff;
    border-color: #57A879;
    border-bottom: 3px solid #fff;
    color: #57A879;
}
.tab-btn__type--rent.active::after,
.tab-btn__type--buy.active::after{
    content: '';
    display: block;
    width: 100%;
    height: 6px;
    background: #fff;
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 1;
}
[class^="tab-contents__inner"]{
    display: none;
    border-radius: 0 10px 10px 10px;
    border: 3px solid;
    background: #fff;
    padding: 36px 57px 37px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    position: relative;
}
[class^="tab-contents__inner"].active{
    display: block;
}
.tab-contents__inner--rent{
    border-color: #E37673;
}
.tab-contents__inner--buy{
    border-color: #57A879;
}
.tab-contents__ttl{
    display: flex;
    align-items: flex-end;
    gap: 6px;
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0.1em;
    padding-left: 5px;
    margin-bottom: 28px;
}
.tab-contents__ttl span{
    display: inline-block;
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 0.1em;
}
.tab-contents__inner--rent .tab-contents__ttl span{
    color: #F3D2D2;
}
.tab-contents__inner--buy .tab-contents__ttl span{
    color: #BCDCC9;
}
.conditions-search__freeword{
    position: relative;
    margin-bottom: 31px;
    width: 990px;
}
.conditions-search__freeword input[type="text"]{
    width: 100%;
    height: 60px;
    border-radius: 30px;
    border: 1px solid;
    padding: 0 60px 0 30px;
    font-size: 16px;
    letter-spacing: 0.1em;
}
.conditions-search__freeword input[type="text"]::placeholder{
    color: #CFCBCB;
}
.tab-contents__inner--rent .conditions-search__freeword input[type="text"]{
    border-color: #F3D2D2;
    background: #FDF8F8;
}
.tab-contents__inner--buy .conditions-search__freeword input[type="text"]{
    border-color: #BCDCC9;
    background: #EDF5F0;
}
.conditions-search__freeword button{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 12px;
    margin: auto;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: url(/images/top/freeword_btn_icn.png) no-repeat center;
}
.tab-contents__inner--rent .conditions-search__freeword button{
    background-color: #E37673;
}
.tab-contents__inner--buy .conditions-search__freeword button{
    background-color: #57A879;
}
.condition-search{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 30px;
}
.condition-search__list{
    display: flex;
    align-items: center;
    gap: 12px;
}
[class^="conditions-search__item"]{
    position: relative;
}
.condition-search__list [class^="conditions-search__item"]:not(:last-child):after{
    content: '';
    display: block;
    width: 26px;
    height: 37px;
    background: url(/images/top/search_between.png) no-repeat center;
    position: absolute;
    top: 0;
    bottom: 4px;
    right: -19px;
    margin: auto;
    z-index: 1;
}
.form__type--select select{
    width: 177px;
    height: 50px;
    border-radius: 5px;
    border: 1px solid;
    padding: 0 40px 0 20px;
    font-size: 16px;
    letter-spacing: 0.1em;
    cursor: pointer;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.tab-contents__inner--rent .form__type--select select{
    border-color: #F3D2D2;
    background: #FDF8F8;
}
.tab-contents__inner--buy .form__type--select select{
    border-color: #BCDCC9;
    background: #EDF5F0;
}
.form__type--select::before{
    content: '';
    display: block;
    width: 14px;
    height: 8px;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
    pointer-events: none;
}
.tab-contents__inner--rent .form__type--select::before{
    background-image: url(/images/top/select_rent_arrow.png);
}
.tab-contents__inner--buy .form__type--select::before{
    background-image: url(/images/top/select_buy_arrow.png);
}
.conditions-search__right{
    display: flex;
    align-items: center;
    gap: 8px;
}
.conditions-search__count{
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.1em;
}
.conditions-search__count span{
    font-size: 28px;
    font-weight: 500;
    letter-spacing: 0.1em;
}
.tab-contents__inner--rent .conditions-search__count span{
    color: #E37673;
}
.tab-contents__inner--buy .conditions-search__count span{
    color: #57A879;
}
.conditions-search__btn{
    width: 140px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 25px;
    border: 2px solid;
    background: #fff;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.1em;
    padding-left: 24px;
    position: relative;
    overflow: hidden;
}
.conditions-search__btn:hover{
    opacity: 1;
}
.conditions-search__btn::before{
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 28px;
    margin: auto;
}
.tab-contents__inner--rent .conditions-search__btn{
    border-color: #E37673;
    color: #E37673;
}
.tab-contents__inner--buy .conditions-search__btn{
    border-color: #57A879;
    color: #57A879;
}
.tab-contents__inner--rent .conditions-search__btn::before{
    background-image: url(/images/top/search_rent_btn_icn.png);
}
.tab-contents__inner--buy .conditions-search__btn::before{
    background-image: url(/images/top/search_buy_btn_icn.png);
}
.conditions-search__btn::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 0;
}
.tab-contents__inner--rent .conditions-search__btn:after{
    background: rgba(227, 118, 115, 0.4);
}
.tab-contents__inner--buy .conditions-search__btn:after{
    background: rgba(87, 168, 121, 0.4);
}
.conditions-search__btn:hover:after{
    width: 300px;
    height: 300px;
    opacity: 0;
    transition: width 0.6s ease, height 0.6s ease, opacity 1s ease;
}

.conditions-search__bottom{
    display: flex;
    align-items: center;
    gap: 18px;
}
.conditions-search__map{
    position: relative;
    width: 400px;
    min-width: 400px;
    height: 230px;
}
.tab-contents__inner--rent .conditions-search__map{
    background: url(/images/top/map_rent_bg.png) no-repeat left top;
}
.tab-contents__inner--buy .conditions-search__map{
    background: url(/images/top/map_buy_bg.png) no-repeat left top;
}
.conditions-search__inner{
    position: relative;
}
[class^="conditions-search__map--"]{
    position: absolute;
}
[class^="conditions-search__map--"] > * > a{
    display: inline-flex;
    align-items: center;
    height: 33px;
    border-radius: 40px;
    border: 2px solid;
    padding: 0 13px 1px 12px;
    font-size: 16px;
    letter-spacing: 0.1em;
    color: #fff;
    position: relative;
    overflow: hidden;
}
[class^="conditions-search__map--"] > * > a::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 0;
}
[class^="conditions-search__map--"] > * > a:hover{
    opacity: 1;
}
[class^="conditions-search__map--"] > * > a:hover::before{
    width: 300px;
    height: 300px;
    opacity: 0;
    transition: width 0.6s ease, height 0.6s ease, opacity 1s ease;
}
.tab-contents__inner--rent [class^="conditions-search__map--"] > * > a{
    border-color: #D55D5A;
    background: #E37673;
}
.tab-contents__inner--buy [class^="conditions-search__map--"] > * > a{
    border-color: #499B6C;
    background: #57A879;
}
.tab-contents__inner--rent .popup__item a{
    background: #E37673;
}
.tab-contents__inner--buy .popup__item a{
    background: #57A879;
}
.conditions-search__map--tachiarai{
    top: 26px;
    left: 52px;
}
.conditions-search__map--amagi{
    top: 34px;
    right: 48px;
}
.conditions-search__map--kitano{
    top: 96px;
    left: 19px;
}
.conditions-search__map--zendoji{
    bottom: 53px;
    left: 36px;
}
.conditions-search__map--tanushimaru{
    bottom: 27px;
    left: 139px;
}
.conditions-search__map--ukiha{
    bottom: 55px;
    right: 28px;
}
.conditions-search__kodawari{
    display: flex;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
}
.conditions-search__kodawari--item a{
    display: flex;
    flex-flow: column;
    align-items: center;
    gap: 10px;
}
.conditions-search__kodawari--item a span{
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.06em;
}


/* あるかすの住まい探し */
.section__services{
    background: url(/images/top/services_bottom_img.png) no-repeat bottom center;
    padding-bottom: 148px;
}
.services__inner{
    display: flex;
    gap: 26px;
}
.services__ttl{
    background: url(/images/top/ttl_services.png) no-repeat left top;
    margin-top: 115px;
    margin-bottom: 0;
}
.services__inner--right{
    width: 674px;
}
.services__txt p:not(:last-child){
    margin-bottom: 12px;
}
.services__txt p{
    font-size: 20px;
    line-height: 1.8;
}
.services__txt p span{
    font-size: 24px;
    font-weight: 700;
    color: #00B9EC;
}
.services__btn{
    margin: 36px 0 0 auto;
}

/* 代表者挨拶 */
.section__wrap.section__message:not(:last-child){
    margin-bottom: 100px;
}
.message__inner{
    padding: 44px 258px 77px;
    border-radius: 20px;
    border: 3px solid #FFD7D6;
    backdrop-filter: blur(4px);
    position: relative;
    z-index: 1;
}
.message__inner::before{
    content: url(/images/top/message_bg_left.png);
    position: absolute;
    top: 16px;
    left: 16px;
}
.message__inner::after{
    content: url(/images/top/message_bg_right.png);
    position: absolute;
    bottom: 22px;
    right: 24px;
}
.message__ttl{
    background: url(/images/top/ttl_message.png) no-repeat top center;
    margin-bottom: 30px;
}
.message__box{
    background: #FEF5F5;
    padding: 37px 0;
    text-align: center;
    position: relative;
}
.message__box::before{
    content: url(/images/top/message_catch.png);
    position: absolute;
    top: -59px;
    left: -92px;
}
.message__txt{
    font-size: 20px;
    line-height: 1.8;
}
.message__txt span{
    font-weight: 700;
    color: #E37673;
    line-height: inherit;
}

/* 賃貸物件を探す */
#rent{
    margin-top: -80px;
    padding-top: 80px;
}
.section__rent{
    position: relative;
    z-index: 1;
    background: linear-gradient(160deg, #FEF5F5 30%, #FFF6C7 100%);
    background-repeat: no-repeat;
    background-position: center 200px;
    padding-bottom: 102px;
}
.section__rent::before{
    content: '';
    width: 100%;
    height: 100%;
    background: url(/images/top/rent_bg.png) no-repeat center 487px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
}
.section__rent > *{
    position: relative;
    z-index: 2;
}
.section__mainsearch{
    padding-bottom: 36px;
    margin-bottom: 60px;
}
.mainsearch__inner{
    position: relative;
}
.mainsearch__inner::before{
    content: url(/images/top/rent_main_img.png);
    position: absolute;
    top: 50px;
    left: 650px;
}
.section__buy .mainsearch__inner::before{
    content: url(/images/top/buy_main_img.png);
}
.rent__ttl{
    background: url(/images/top/ttl_rent.png) no-repeat left top;
    margin-bottom: 26px;
}
.mainsearch__txt{
    font-size: 20px;
    line-height: 1.8;
    margin-bottom: 36px;
}
.mainsearch__list{
    display: flex;
    gap: 16px;
}
[class^="mainsearch__item"]{
    position: relative;
}
[class^="mainsearch__item"] > a{
    width: 138px;
    height: 138px;
    display: block;
    border-radius: 10px;
    border: 2px solid;
    background: #fff;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    padding: 97px 0 0;
    position: relative;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    transition: 0.4s;
}
.section__rent [class^="mainsearch__item"] > a{
    border-color: #E37673;
    color: #E37673;
}
.section__buy [class^="mainsearch__item"] > a{
    border-color: #57A879;
    color: #57A879;
}
.section__rent [class^="mainsearch__item"] > a:hover{
    background: #FEF5F5;
    opacity: 1;
}
.section__buy [class^="mainsearch__item"] > a:hover{
    background: #ECFFF4;
    opacity: 1;
}
.section__rent .mainsearch__item--area > a::before{
    content: url(/images/top/rent_icn_area.png);
    position: absolute;
    top: 13px;
    left: 50%;
    transform: translateX(-50%);
}
.section__buy .mainsearch__item--area > a::before{
    content: url(/images/top/buy_icn_area.png);
    position: absolute;
    top: 13px;
    left: 50%;
    transform: translateX(-50%);
}
.section__rent .mainsearch__item--line > a::before{
    content: url(/images/top/rent_icn_line.png);
    position: absolute;
    top: 13px;
    left: 50%;
    transform: translateX(-50%);
}
.section__buy .mainsearch__item--line > a::before{
    content: url(/images/top/buy_icn_line.png);
    position: absolute;
    top: 13px;
    left: 50%;
    transform: translateX(-50%);
}
.section__rent .mainsearch__item--map > a::before{
    content: url(/images/top/rent_icn_map.png);
    position: absolute;
    top: 3px;
    left: 50%;
    transform: translateX(-50%);
}
.section__buy .mainsearch__item--map > a::before{
    content: url(/images/top/buy_icn_map.png);
    position: absolute;
    top: 3px;
    left: 50%;
    transform: translateX(-50%);
}
.section__rent .mainsearch__item--school > a::before{
    content: url(/images/top/rent_icn_school.png);
    position: absolute;
    top: 13px;
    left: 50%;
    transform: translateX(-50%);
}
.section__buy .mainsearch__item--school > a::before{
    content: url(/images/top/buy_icn_school.png);
    position: absolute;
    top: 13px;
    left: 50%;
    transform: translateX(-50%);
}
.popup__wrap{
    display: none;
    position: absolute;
    bottom: 85%;
    left: 50%;
    transform: translateX(-50%);
    width: 248px;
    height: 234px;
    z-index: 1;
}
.popup__bg{
    width: 100%;
    height: 100%;
    background: url(/images/top/popup_bg.png) no-repeat center;
    position: relative;
    padding: 6px 39px 28px;
    display: flex;
    align-items: center;
}
.popup__close{
    display: block;
    width: 40px;
    height: 40px;
    background: url(/images/top/popup_close.png) no-repeat center;
    position: absolute;
    top: -5px;
    right: -4px;
}
.popup__item:not(:last-child){
    margin-bottom: 10px;
}
.popup__item a{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 170px;
    height: 40px;
    border-radius: 30px;
    font-family: 'Zen Kaku Gothic New';
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #fff;
}
.section__rent .popup__item a{
    background: #E37673;
}
.section__buy .popup__item a{
    background: #57A879;
}

/* 物件 */
.section__newbkn{
    margin-bottom: 155px;
}
.section__rent .newbkn__ttl{
    background: url(/images/top/ttl_rent_new.png) no-repeat top left;
}
.section__buy .newbkn__ttl{
    background: url(/images/top/ttl_buy_new.png) no-repeat top left;
}
.bkn-list{
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}
.bkn-slider__item{
    width: 390px;
}
.bkn__item{
    width: 270px;
}
.bkn-card{
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.16);
    position: relative;
    transition: 0.4s;
    background-color: #fff;
}
.bkn-card:hover{
    opacity: 1;
}
.bkn-card:hover .bkn-card__img img{
    transform: scale(1.1);
}
.bkn__item .bkn-card{
    border-radius: 10px;
}
.bkn-card__img{
    width: 100%;
    height: 292px;
    overflow: hidden;
}
.bkn-list .bkn-card__img{
    height: 202px;
}
.bkn-card__img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.4s;
}
.bkn-card__label--new{
    position: absolute;
    top: 15px;
    left: 15px;
    width: 60px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    background: url(/images/top/bkn_new_bg.png) no-repeat center / cover;
}
.bkn-list .bkn-card__label--new{
    top: 8px;
    left: 8px;
    width: 50px;
    height: 28px;
    font-size: 12px;
}
.bkn-card__favorite{
    position: absolute;
    top: 15px;
    right: 15px;
    width: 50px;
    height: 50px;
    background: url(/images/top/bkn_favorite_off.png) no-repeat center / cover;
}
.bkn-card__favorite.is-checked{
    background: url(/images/top/bkn_favorite_on.png) no-repeat center / cover;
}
.bkn-list .bkn-card__favorite{
    top: 8px;
    right: 8px;
    width: 40px;
    height: 40px;
}
.bkn-card__info{
    padding: 17px 20px 20px;
}
.bkn-list .bkn-card__info{
    padding: 13px 15px 12px;
}
.bkn-card__name{
    font-size: 20px;
    font-weight: 600;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; 
}
.bkn-list .bkn-card__name{
    font-size: 16px;
}
.bkn-card__between{
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}
.bkn-card__price{
    font-size: 16px;
    font-weight: 500;
}
.bkn-list .bkn-card__price{
    font-size: 14px;
}
.bkn-card__price span{
    font-size: 26px;
    font-weight: 700;
    color: #E37673;
}
.bkn-list .bkn-card__price span{
    font-size: 24px;
}
.bkn-card__txt{
    font-size: 16px;
    color: rgba(68, 68, 68, 0.5);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.bkn-list .bkn-card__txt{
    font-size: 14px;
    line-height: 1.6;
}

/* 物件タブ */
.section__bkn{
    margin-bottom: 100px;
}
.section__bkn .tab-btn__wrap{
    display: flex;
    align-items: center;
    gap: 2px;
    width: 914px;
    margin: 0 auto 30px;
    padding: 5px;
    border-radius: 33px;
    background: #E37673;
}
.section__buy .section__bkn .tab-btn__wrap{
    background: #57A879;
}
.section__bkn .tab-btn__wrap [class^="tab-btn__type"]{
    width: 300px;
    height: 56px;
    border-radius: 30px;
    border: none;
    font-family: 'Zen Kaku Gothic New';
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #fff;
}
.section__bkn .tab-btn__wrap [class^="tab-btn__type"].active{
    background: #fff;
    color: #E37673;
}
.section__buy .section__bkn .tab-btn__wrap [class^="tab-btn__type"].active{
    color: #57A879;
}
.section__bkn [class^="tab-contents__inner"]{
    border-radius: unset;
    border: none;
    background: unset;
    padding: 0;
    box-shadow: none;
}

/* お部屋探しをオンラインで完結！ */
#online{
    margin-top: -80px;
    padding-top: 80px;
}
.section__online{
    padding-bottom: 55px;
    margin-bottom: 60px;
    background: url(/images/top/online_bottom_line.png) no-repeat bottom center;
}
.online__head{
    font-size: 20px;
    font-weight: 500;
    color: #E37673;
    text-align: center;
    position: relative;
    margin-bottom: 28px;
    padding-left: 5px;
}
.online__head::before,
.online__head::after{
    content: '';
    display: block;
    width: 460px;
    height: 27px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}
.online__head::before{
    background: url(/images/top/ttl_online_left.png) no-repeat center;
    left: 0;
}
.online__head::after{
    background: url(/images/top/ttl_online_right.png) no-repeat center;
    right: 0;
}
.online__ttl{
    font-size: 40px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
    margin-bottom: 40px;
}
.online__ttl span{
    font-size: inherit;
    color: #E37673;
}
.online__list{
    display: flex;
    gap: 30px;
    margin-bottom: 30px;
}
.online__item{
    width: 360px;
    border-radius: 5px;
    background: #E37673;
    padding: 18px 10px 10px;
}
.online__q{
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 10px;
    padding: 0 10px;
}
.online__q::before{
    content: url(/images/top/online_ttl_q.png);
}
.online__q--ttl{
    font-size: 16px;
    line-height: 1.625;
    color: #fff;
}
.online__q--ttl span{
    font-size: inherit;
    color: inherit;
    background: linear-gradient(transparent 60%, rgba(255, 255, 255, 0.25) 50%);

}
.online__fukidashi{
    width: 100%;
    height: 146px;
    padding: 11px 20px 0;
    display: flex;
    align-items: center;
    background: url(/images/top/online_q_bg.png) no-repeat top center;
}
.online__fukidashi--txt{
    font-size: 16px;
}
.online__fukidashi--txt span{
    font-size: inherit;
    font-weight: 700;
    color: #E37673;
}
.online__bottom{
    display: flex;
    gap: 30px;
}
[class^="contact__box"]{
    height: 216px;
    padding: 20px;
    border-radius: 10px;
    background: #fff url(/images/top/online_taiou_bg.png) no-repeat top left;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.contact__box--area{
    width: 475px;
    padding-right: 30px;
    padding-bottom: 30px;
}
.contact__box--time{
    width: 635px;
}
.contact__ttl{
    font-size: 30px;
    font-weight: 500;
    letter-spacing: 0.02em;
    color: #E37673;
}
.contact__box--time .contact__ttl{
    margin-bottom: 36px;
}
.contact__area{
    position: relative;
    padding-top: 96px;
}
.contact__area::before{
    content: url(/images/top/online_taiou_map.png);
    position: absolute;
    bottom: 16px;
    right: 10px;
}
.contact__area--txt{
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.02em;
    text-align: right;
    position: relative;
}
.contact__area--txt span{
    font-size: inherit;
    font-weight: 700;
    letter-spacing: inherit;
    color: #E37673;
}
.contact__list{
    display: flex;
    justify-content: center;
    gap: 25px;
    padding-left: 5px;
}
.contact__item--ttl,
.contact__item--txt{
    padding-left: 13px;
    font-size: 16px;
    font-weight: 500;
}
.contact__item--ttl{
    position: relative;
}
.contact__item--ttl::before{
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #E37673;
    position: absolute;
    top: 4px;
    bottom: 0;
    left: 0;
    margin: auto;
}
.contact__item--txt{
    opacity: 0.4;
}

/* お部屋探しのステップ */
.section__step{
    margin-bottom: 80px;
}
.step__ttl{
    background: url(/images/top/ttl_rent_step.png) no-repeat top left;
}
[class^="step__type"]:not(:last-child){
    margin-bottom: 40px;
}
.step__head{
    border-radius: 10px;
    padding: 17px 30px 20px;
    margin-bottom: 20px;
}
.step__type--jurai .step__head{
    background: #F9AD48;
}
.step__type--online .step__head{
    background: #E37673;
}
.step__head--ttl{
    font-size: 30px;
    font-weight: 500;
    letter-spacing: 0.02em;
    color: #fff;
    margin-bottom: 4px;
}
.step__head--ttl span{
    font-size: 16px;
    color: inherit;
    letter-spacing: 0.02em;
}
.step__head--txt{
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    line-height: 1.4375;
}
.step__head--txt span{
    background: #fff;
    display: inline-block;
    line-height: inherit;
}
.step__type--jurai .step__head--txt span{
    color: #F9AD48;
}
.step__type--online .step__head--txt span{
    color: #E37673;
}
.step__bg{
    padding: 44px 0 15px;
    position: relative;
}
[class^="step__bg--item"]{
    height: 450px;
    border-radius: 10px;
    padding: 10px;
    background: rgba(227, 118, 115, 0.2);
    position: absolute;
    top: 0;
}
[class^="step__bg--item"] p{
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.02em;
    text-align: center;
    color: #E37673;
}
.step__bg--item01{
    width: 312px;
    left: 202px;
}
.step__bg--item02{
    width: 206px;
    right: 202px;
}
.step__bg--item03{
    width: 100px;
    right: 96px;
}
.step__list {
    counter-reset: step; /* カウンターリセット */
    display: flex;
    gap: 26px;
    position: relative;
    z-index: 2;
}
.step__list::before{
    position: absolute;
    top: 18px;
    left: 63px;
    z-index: 2;
}
.step__type--jurai .step__list::before{
    content: url(/images/top/step_jurai_arrow.png);
}
.step__type--online .step__list::before{
    content: url(/images/top/step_online_arrow.png);
}
.step__item {
    counter-increment: step; /* カウントアップ */
    position: relative;
    padding: 73px 0 0;
    display: flex;
    justify-content: center;
    width: 80px;
    height: 391px;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    z-index: 3;
}
.step__item:last-child{
    z-index: 1;
}
.step__item::before {
    content: counter(step, decimal-leading-zero);
    position: absolute;
    left: 0;
    right: 0;
    top: 10px;
    margin: auto;
    padding-bottom: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    font-size: 22px;
    font-weight: 500;
}
.step__type--jurai .step__item::before{
    background: rgba(249, 173, 72, 0.2);
    color: #F9AD48;
}
.step__type--online .step__item::before{
    background: rgba(227, 118, 115, 0.1);
    color: #E37673;
}
.step__txt{
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.2em;
    line-height: 1.3;
}
.step__txt span{
    font-size: inherit;
    font-weight: 700;
}
.step__type--jurai .step__txt span{
    color: #F9AD48;
}
.step__type--online .step__txt span{
    color: #E37673;
}

/* 動画 */
.section__movie--1{
    position: relative;
    background: linear-gradient(160deg, #FEF5F5 30%, #FFF6C7 100%);
    background-repeat: no-repeat;
    background-position: center top;
    padding: 55px 0;
}
.section__movie--1::before{
    content: '';
    width: 100%;
    height: 100%;
    background: url(/images/top/movie_bg.png) no-repeat center top;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
}
.section__movie--1 > * {
    position: relative;
    z-index: 2;
}
.movie__inner{
    width: 1280px;
    margin: 0 auto;
    padding: 120px 0;
    position: relative;
    text-align: center;
}
.section__movie--1 .movie__inner::before{
    content: url(/images/top/movie_top.png);
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
}
.section__movie--1 .movie__inner::after{
    content: url(/images/top/movie_bottom.png);
    position: absolute;
    bottom: 0;
    right: 0;
    pointer-events: none;
}
.section__movie--2 .movie__inner::before{
    content: url(/images/top/rent_movie_top.png);
    position: absolute;
    top: 0;
    right: 0;
    pointer-events: none;
}
.section__movie--2 .movie__inner::after{
    content: url(/images/top/rent_movie_bottom.png);
    position: absolute;
    bottom: 0;
    left: 0;
    pointer-events: none;
}
.movie__size{
    height: 585px;
    margin: 0 auto;
}
.movie__size iframe{
    width: 100%;
    height: 100%;
}
.section__movie--1 .movie__size{
    width: 1040px;
}
.section__movie--2 .movie__size{
    width: 1040px;
}

/* 売買物件を探す */
#buy{
    margin-top: -80px;
    padding-top: 80px;
}
.section__buy{
    position: relative;
    z-index: 1;
    background: linear-gradient(160deg, #E6F1EA 30%, #FFF6C7 100%);
    background-repeat: no-repeat;
    background-position: center 200px;
    padding-bottom: 120px;
}
.section__buy::before{
    content: '';
    width: 100%;
    height: 100%;
    background: url(/images/top/rent_bg.png) no-repeat center 487px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
}
.section__buy > *{
    position: relative;
    z-index: 2;
}
.buy__ttl{
    background: url(/images/top/ttl_buy.png) no-repeat left top;
    margin-bottom: 26px;
}

/* うきは市で不動産の売却をお考えの方へ */
.proposal__inner{
    width: 1038px;
    height: 270px;
    margin: 0 auto;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.proposal__inner::after{
    content: url(/images/top/buy_plan_img.png);
}
.proposal__inner--left{
    width: 580px;
    padding-top: 5px;
}
.proposal__ttl{
    font-size: 40px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.25;
    margin-bottom: 34px;
}
.proposal__ttl span{
    font-size: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    color: #57A879;
}
.proposal__txt{
    font-size: 20px;
}
.proposal__btn{
    margin: 40px 0 0 auto;
    padding-right: 36px;
    width: 276px;
    position: relative;
}
.proposal__btn::after{
    content: url(/images/top/more_catch.png);
    position: absolute;
    bottom: 35px;
    right: 11px;
}

/* ブログ */
.president__ttl{
    background: url(/images/top/ttl_president.png) no-repeat top center;
}
.useful__ttl{
    background: url(/images/top/ttl_useful.png) no-repeat top center;
}

/* お客様の声 */
.customer__ttl{
    background: url(/images/top/ttl_customer.png) no-repeat top center;
}

/* 更新情報 */
.section__news{
    padding-bottom: 25px;
}
.news__ttl{
    background: url(/images/top/ttl_news.png) no-repeat top center;
}
.news__scrollbox{
    border-radius: 20px;
    border: 3px solid #FFD7D6;
    backdrop-filter: blur(4px);
    padding: 37px 30px 42px 37px;
    position: relative;
    z-index: 1;
}
.news__scrollbox--inner{
    max-height: 400px;
    padding-right: 20px;
}
/* スクロールバーの色 */
.simplebar-track.simplebar-vertical{
    background: #EEEEEE;
    width: 2px;
    border-radius: 0;
    overflow: visible;
    z-index: 3;
}
/* トラックの色 */
.simplebar-scrollbar.simplebar-visible:before {
    width: 8px;
    background-color: #F9A7AD;
    border-radius: 20px;
    opacity: 1;
    top: 0 !important;
    bottom: 0 !important;
    left: -3px;
    right: 0;
}
.simplebar-scrollbar{
    width: 8px;
    margin: 0 auto;
}
.news__item{
    padding-bottom: 17px;
    background: url(/images/top/news_line.png) no-repeat bottom left;
}
.news__item:not(:last-child){
    margin-bottom: 15px;
}
.news__date{
    font-size: 14px;
    color: #E37673;
    margin-bottom: 5px;
}
.news__date *{
    font-size: 14px;
    color: #E37673;
}
.news__info--ttl{
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 8px;
}
.news__info--txt{
    font-size: 14px;
    line-height: 1.57;
}
.news__btn{
    position: absolute;
    left: 0;
    right: 0;
    bottom: -28px;
    margin: auto;
}

/* スタッフ紹介 */
.staff__ttl{
    background: url(/images/top/ttl_staff.png) no-repeat top center;
}
.staff__president{
    display: flex;
    align-items: center;
    gap: 30px;
    width: 100%;
    border-radius: 20px;
    border: 3px solid #FFD7D6;
    backdrop-filter: blur(4px);
    padding: 47px;
    position: relative;
    z-index: 1;
}
.staff__slider{
    margin-top: 45px;
}
.staff__president--left{
    width: 307px;
}
.staff__president--right{
    width: 703px;
}
.staff__president--img{
    width: 307px;
    height: 230px;
    margin-bottom: 8px;
}
.staff__president--img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.staff__president--name{
    width: 225px;
    height: 53px;
    margin: 0 auto;
    padding: 0 0 15px 30px;
    background: url(/images/top/staff_name_bottom.png) no-repeat center bottom;
    font-size: 20px;
    font-weight: 500;
    color: #E37673;
}
.staff__president--name span{
    font-size: 30px;
    font-weight: 500;
    display: inline-block;
    margin-left: 8px;
}
.staff__president--list{
    margin-bottom: 20px;
}
.staff__president--item{
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding-bottom: 18px;
    background: url(/images/top/staff_line.png) no-repeat bottom left;
}
.staff__president--item:not(:last-child){
    margin-bottom: 20px;
}
.staff__president--item dt,
.staff__president--item dd{
    font-size: 16px;
    line-height: 1.625;
}
.staff__president--item dt{
    min-width: 65px;
}
.staff__president--comment{
    font-size: 16px;
    line-height: 1.625;
}

/* 生活の窓口 */
#lifeconcierge{
    margin-top: -80px;
    padding-top: 80px;
}
.section__lifeconcierge{
    padding-bottom: 148px;
    background: url(/images/top/lifeconcierge_bottom.png) no-repeat bottom center;
}
.lifeconcierge__ttl{
    background: url(/images/top/ttl_lifeconcierge.png) no-repeat top left;
    margin-bottom: 36px;
}
.lifeconcierge__txt{
    font-size: 20px;
    line-height: 1.8;
}
.lifeconcierge__btn{
    width: 300px;
    margin: 37px auto 0 0;
}
.lifeconcierge__btn a{
    background-color: #00B9EC;
    background-position: top 4px right 10px;
}
.lifeconcierge__btn a::after{
    right: 26px;
}

/*バナー*/
.l-main .banner-list{
    padding-bottom: 75px;
}
.l-main .banner-list a{
    max-width: unset;
    margin: 0;
}
.l-main .section__wrap + .ui-section-wrap{
    margin-top: -45px;
}