@charset "utf-8";

@media screen and (max-width: 1780px) and (min-width: 1700px){
    #header .header-logo img{
        width: 300px;
    }
}
@media screen and (max-width: 1700px) and (min-width: 1581px){
    #header .header-logo img{
        width: 180px;
    }
}

@media screen and (max-width: 1580px) {
    :root{
        --wrap: 1200px;
        --header-height: 70px;
    }

    .title-en{
        font-size: 20px;
    }
    .title-text{
        font-size: 30px;
        margin-top: 10px;
    }


    /* HEADER */
    .nav-toggle{
        width: 34px;
    }
    #header .header-btn__item a img{
        display: block;
        width: 38px;
    }
    #header .header-tel a{
        justify-content: center;
    }
    #header .header-logo img{
        display: block;
        width: 300px;
    }
    #header .header-tel{
        margin-left: 0;
    }
    #header .header-nav nav{
        opacity: 0;
        pointer-events: none;
        visibility: hidden;
        transition: var(--transition);
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-color: #fff;
        padding: 160px 0 40px;
        overflow-y: scroll;
        overscroll-behavior: none;
    }
    #header.open .header-nav nav{
        opacity: 1;
        pointer-events: auto;
        visibility: visible;
    }
    #header .header-tel a img{
        width: 40px;
    }
    #header .header-tel a span{
        font-size: 24px;
    }
    .nav-toggle-wrap{
        display: flex;
    }
    #header .header-logo,
    #header .header-tel,
    #header .header-btn{
        position: relative;
        z-index: 1;
    }
    #header .header-nav ul li a{
        font-size: 12px;
        position: relative;
        display: inline-block;
        padding-left: 38px;
    }
    #header .header-nav ul li a::before{
        content: "";
        position: absolute;
        bottom: 10px;
        left: 0;
        width: 30px;
        height: 1px;
        background-color: var(--blue);
    }
    #header .header-nav ul li a span{
        display: block;
        font-family: var(--mincho);
        font-weight: 600;
        font-size: 26px;
        color: var(--blue);
        letter-spacing: 0.1em;
        line-height: 1.4;
        margin-left: -38px;
    }
    #header .header-nav ul{
        display: grid;
        grid-template-columns: repeat(2,1fr);
        max-width: 1000px;
        margin: 0 auto;
    }
    .open .nav-toggle span:nth-of-type(1){
        top: 11px;
        transform: rotate(45deg);
    }
    .open .nav-toggle span:nth-of-type(2){
        opacity: 0;
    }
    .open .nav-toggle span:nth-of-type(3){
        top: 11px;
        transform: rotate(-45deg);
    }


    /* ASIDE */
    #aside .aside-btn a img{
        width: 90px;
    }


    /* FOOTER */
    #footer .footer-link__grid-item__ttl span{
        font-size: 48px;
    }
    #footer .footer-link__grid-item__ttl{
        font-size: 14px;
    }
    #footer .footer-content__flex-menu ul li a{
        font-size: 16px;
    }
    #footer .footer-content__flex-menu ul li:not(:last-child){
        margin-bottom: 20px;
    }
    #footer .footer-content__flex-logo img{
        width: 360px;
    }
    #footer .footer-content__copy-logo img{
        width: 200px;
    }
    #footer .footer-link{
        padding: 60px 0;
    }
    #footer .footer-tel__flex-item__num{
        font-size: 60px;
    }
    #footer .footer-tel__flex-icon img{
        width: 90px;
    }
    #footer .footer-tel__flex-item__text{
        font-size: 20px;
    }
    #footer .footer-tel__flex-item__time{
        font-size: 14px;
    }
    #footer .footer-tel__flex{
        gap: 40px;
    }
    #footer .footer-tel{
        padding: 100px 0;
    }
    #footer .footer-tel__link a img{
        width: 60px;
    }
    #footer .footer-bnr__cont-text img{
        width: 380px;
    }
    #footer .footer-owner__flex-box__text{
        font-size: 16px;
    }
    #footer .footer-owner__flex-ttl{
        font-size: 54px;
    }




    /* TOP */
    .top-property__slider-item{
        margin: 0 30px;
    }
    .news-card__box-text{
        font-size: 14px;
        padding-right: 40px;
    }
    .news-card__box-date{
        font-size: 13px;
    }
    .news-card a::before{
        width: 68px;
        height: 13px;
        right: 40px;
    }
    @media screen and (min-width: 992px) {
        .news-card a:hover::before{
            right: 20px;
        }
    }


    /* PAGE */
    #page-common{
        padding-top: 100px;
    }
    .page-mv__title span{
        font-size: 54px;
    }
    .page-mv__title{
        font-size: 18px;
    }
    .page-mv{
        margin-bottom: 100px;
    }


    /* ASSESSMENT */
    .assessment-sec01__tel-ttl{
        font-size: 24px;
    }
    .assessment-sec01__tel-flex__item-num{
        font-size: 60px;
    }
    .assessment-sec01__tel-flex__icon img{
        width: 90px;
    }
    .assessment-sec01__tel-flex__item-time{
        font-size: 16px;
    }
    .assessment-sec01__tel{
        padding: 60px 0;
    }
    .form-wrap dl dt{
        font-size: 16px;
    }
    .form-wrap dl dd .checkbox-item label{
        font-size: 16px;
    }
    .form-wrap dl dd .checkbox-item label::before, .form-wrap dl dd .checkbox-item label::after{
        top: 4px;
    }
    .form-wrap dl dt span.must{
        font-size: 14px;
    }
    .form-wrap dl dd input[type="text"],
    .form-wrap dl dd input[type="tel"],
    .form-wrap dl dd input[type="email"],
    .form-wrap dl dd input[type="search"],
    .form-wrap dl dd input[type="date"],
    .form-wrap dl dd textarea,
    .form-wrap dl dd select{
        font-size: 16px;
    }
    .assessment-sec02__cont-text{
        font-size: 16px;
    }
    .assessment-intro-sec__grid-item__ttl{
        font-size: 22px;
    }
    .assessment-intro-sec__grid-item ul li{
        font-size: 14px;
    }
    .assessment-intro-sec__cont-grid__item-lead span{
        font-size: 48px;
    }
    .assessment-intro-sec__cont-grid__item-lead{
        font-size: 20px;
    }
    .assessment-intro-sec__cont-grid{
        gap: 0 80px;
    }
    

    /* SERVICE */
    #page-service{
        padding-top: 200px;
        background-size: 100%;
    }
    .service-sec01__flex-lead{
        font-size: 28px;
    }
    .service-sec01__cont{
        margin-top: 80px;
    }
    .service-sec01__cont-flex__item-ttl span{
        font-size: 40px;
    }
    .service-sec01__cont-flex__item-ttl{
        font-size: 16px;
        margin-bottom: 30px;
    }
    .service-sec01__cont-flex__item-text,
    .service-sec01__cont-flex__list ul li{
        font-size: 16px;
    }


    /* FAQ */
    #page-faq{
        padding-top: var(--padding);
    }


    /* 物件一覧 */
    .content-flex__main{
        padding-right: 30px;
    }
    .content-flex__main-list{
        gap: 50px 20px;
    }
}

@media screen and (max-width: 1199px) {
    :root{
        --wrap: 100%;
        --space: 20px;
        --padding: 80px;
    }
    .wrap,
    #footer .wrap{
        padding: 0 20px;
    }
}


@media screen and (max-width: 991px) {
    :root{
        --header-height: 55px;
    }

    body{
        min-width: 320px;
    }
    .view-more a{
        width: 260px;
        height: 55px;
        line-height: 49px;
        font-size: 14px;
    }


    /* HEADER */
    #header .header-logo img{
        width: 230px;
    }
    .nav-toggle{
        width: 24px;
        height: 16px;
    }
    .nav-toggle span{
        height: 2px;
        width: 100%;
    }
    .nav-toggle span:nth-of-type(2){
        top: 7px;
    }
    .nav-toggle span:nth-of-type(3){
        top: 14px;
    }
    .open .nav-toggle span:nth-of-type(1){
        top: 7px;
    }
    .open .nav-toggle span:nth-of-type(3){
        top: 7px;
    }
    #header .header-btn__item a img{
        width: 28px;
    }
    #header .header-tel a span{
        font-size: 18px;
    }
    #header .header-tel small{
        font-size: 9px;
    }
    #header .header-tel a img{
        width: 30px;
    }
    #header .header-logo img{
        width: 200px;
    }
    #header .header-nav nav{
        padding: calc(var(--header-height) + 40px) 20px 140px;
    }
    #header .header-nav ul li a span{
        font-size: 24px;
        margin-left: -20px;
        line-height: 1.6;
    }
    #header .header-nav ul{
        grid-template-columns: repeat(1,1fr);
    }
    #header .header-nav ul li a::before{
        width: 15px;
    }
    #header .header-nav ul li a{
        padding-left: 20px;
        font-size: 14px;
    }


    /* ASIDE */
    #aside .aside-btn{
        right: -25px;
    }
    #aside .aside-btn a img{
        width: 80px;
    }



    /* FOOTER */
    #footer{
        margin-top: 80px;
    }
    #footer .footer-tel__text{
        font-size: 16px;
        text-align: left;
    }
    #footer .footer-tel__text br{
        display: none;
    }
    #footer .footer-tel{
        margin-top: 20px;
    }
    #footer .footer-owner{
        padding: 60px 0;
    }
    #footer .footer-owner__flex{
        display: block;
    }
    #footer .footer-owner__flex-ttl{
        font-size: 34px;
        margin-bottom: 30px;
    }
    #footer .footer-owner__flex-box{
        max-width: 100%;
    }
    #footer .footer-owner__flex-box__lead{
        font-size: 22px;
        margin-bottom: 10px;
    }
    #footer .footer-owner__flex-box__text{
        font-size: 14px;
    }
    #footer .footer-owner__flex-box__view-more{
        margin-top: 30px;
    }
    #footer .footer-bnr__cont{
        margin-top: 20px;
        border-radius: 10px;
        padding: 30px;
    }
    #footer .footer-bnr__cont-text img{
        width: 280px;
    }
    #footer .footer-tel{
        padding: 60px 0;
    }
    #footer .footer-tel__flex-item__text{
        font-size: 14px;
    }
    #footer .footer-tel__flex-item__num{
        font-size: 34px;
    }
    #footer .footer-tel__flex-icon img{
        width: 70px;
    }
    #footer .footer-tel__flex{
        gap: 20px;
    }
    #footer .footer-tel__link{
        margin-top: 30px;
    }
    #footer .footer-link__grid-item__ttl span{
        font-size: 28px;
    }
    #footer .footer-link__grid-item__ttl{
        font-size: 11px;
    }
    #footer .footer-link__grid{
        grid-template-columns: repeat(1,1fr);
    }
    #footer .footer-link__grid-item__arrow{
        width: 40px;
        height: 40px;
        background: #fff url(img/common/arrow.svg) no-repeat center 16px / 20px;
    }
    #footer .footer-link__grid-item{
        border-left: none;
    }
    #footer .footer-link__grid-item:last-child{
        border-right: none;
    }
    #footer .footer-link__grid-item:nth-of-type(1){
        border-bottom: 1px solid #fff;
    }
    #footer .footer-link__grid-item a{
        padding: 20px;
    }
    #footer .footer-link{
        padding: 20px 0;
    }
    #footer .footer-content{
        padding: 60px 0 30px;
    }
    #footer .footer-content__flex{
        display: block;
    }
    #footer .footer-content__flex-logo{
        text-align: center;
        margin-bottom: 30px;
    }
    #footer .footer-content__flex-logo img{
        width: 260px;
    }
    #footer .footer-content__copy{
        position: initial;
        margin-top: 30px;
        text-align: center;
    }
    #footer .footer-content__copy-logo img{
        width: 140px;
    }
    #footer .footer-content__copy-text{
        margin-top: 15px;
        font-size: 12px;
    }
    #footer .footer-content__flex-menu{
        max-width: 400px;
        margin: 0 auto;
        gap: 0;
    }



    /* TOP */
    #home{
        padding-top: calc(80px + var(--header-height));
        background: url(img/frontpage/mv-bg.webp) no-repeat center top / auto 1500px;
    }
    .mv-text{
        margin-bottom: 100px;
    }
    .mv-text img{
        width: 300px;
    }
    .top-property__slider-item{
        width: 500px;
    }
    .top-select__cont-grid__item a{
        display: block;
        text-align: center;
        padding: 30px 0 40px;
        height: auto;
    }
    .top-select__cont-grid__item-text{
        font-size: 14px;
    }
    .top-select__cont-grid__item-text span{
        font-size: 18px;
        display: inline-block;
    }
    .top-select__cont-grid__item a::before{
        width: 30px;
        height: 6px;
        right: 20px;
        bottom: 20px;
    }
    .top-select__cont-grid__item-icon{
        width: 60px;
        height: 50px;
        bottom: 0;
        margin: 0 auto 10px;
    }
    .top-select__cont-grid__item-icon img{
        max-height: 100%;
        margin: 0 auto;
    }
    #home .top-select__tab ul > li.current{
        font-size: 18px;
    }
    #home .top-select__tab ul > li.current span{
        font-size: 26px;
    }
    .faq-sec01__content-tab ul li, .top-select__tab ul li{
        padding: 2px 30px;
    }
    .top-select__tab ul li.current{
        height: 50px;
        line-height: 50px;
        margin-top: -15px;
    }
    .top-bnr__cont{
        padding: 30px;
        margin-top: 50px;
    }
    .top-bnr__cont-text img{
        width: 270px;
    }
    .top-house__slider-item{
        width: 800px;
        margin-right: 40px;
    }
    .top-house{
        margin-top: 60px;
    }
    .top-house__list{
        grid-template-columns: repeat(1,1fr);
        gap: 60px 0;
    }
    .top-property__ttl-en img{
        width: 300px;
    }
    .top-property__ttl-text img{
        width: 30px;
    }
    .top-property__text{
        font-size: 22px;
        margin-bottom: 30px;
    }
    .top-property__ttl{
        margin-bottom: 30px;
    }
    .top-property__slider-item__box{
        position: initial;
        width: 100%;
        padding: 30px 0 0;
    }
    .top-property__slider .slick-dots{
        margin-top: 30px;
    }
    .top-property{
        padding: 80px 0 40px;
    }
    .top-news__flex-ttl__en{
        font-size: 40px;
    }
    .top-news__flex-ttl__text{
        font-size: 14px;
    }
    .news-card:nth-of-type(2n - 1){
        border-right: none;
    }
    .news-list{
        grid-template-columns: repeat(1,1fr);
    }
    .news-card:nth-of-type(2){
        border-top: none;
    }
    .news-card a{
        padding-left: 20px;
        padding-right: 70px;
    }
    .news-card a::before{
        width: 38px;
        height: 7px;
        right: 20px;
    }


    /* PAGE */
    #page-common{
        padding-top: 60px;
    }
    .page-mv{
        margin-bottom: 50px;
    }
    .page-mv__title span{
        font-size: 48px;
        margin-bottom: 8px;
    }


    /* HOUSE */
    .select-area__label span{
        font-size: 14px;
    }
    .select-area__list ul li a,
    .select-area__list.himeji li:not(:nth-of-type(1)) a{
        font-size: 14px;
    }
    .select-area__list{
        margin-top: 20px;
        padding: 10px 20px;
    }
    .content-flex{
        display: block;
    }
    .content-flex__side{
        max-width: 100%;
        margin-bottom: 50px;
    }
    .content-flex__main{
        max-width: 100%;
        padding-right: 0;
    }
    .content-flex__main-list{
        grid-template-columns: repeat(1,1fr);
    }
    .content-flex__side-ttl::before{
        display: none;
    }
    .content-flex__side-ttl span{
        width: 30px;
        height: 30px;
        background-color: #fff;
        border-radius: 50%;
        position: relative;
        margin-left: 15px;
        display: inline-block;
        vertical-align: bottom;
        top: -3px;
    }
    .content-flex__side-ttl span::before,
    .content-flex__side-ttl span::after{
        content: "";
        width: 40%;
        height: 2px;
        background-color: var(--blue);
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        transition: var(--transition);
    }
    .content-flex__side-ttl span::after{
        transform: translate(-50%,-50%) rotate(-90deg);
    }
    .content-flex__side-ttl span.open::after{
        transform: translate(-50%,-50%) rotate(0deg);
    }
    .content-flex__side-inner{
        display: none;
    }



    /* FAQ */
    #page-faq{
        min-height: initial;
        padding-bottom: 100px;
    }
    #footer.no-mt{
        margin-top: 0;
    }
    #page-faq .page-mv{
        margin-bottom: 40px;
    }
    .faq-sec01__content-tab{
        margin-bottom: 10px;
    }
    .faq-sec01__content-tab ul{
        display: grid;
        grid-template-columns: repeat(2,1fr);
        gap: 10px;
    }
    .faq-sec01__content-tab ul li{
        display: block;
        padding: 10px 0;
        text-align: center;
        line-height: 1.8;
        height: auto;
    }
    .faq-sec01__content-tab ul li.current{
        height: auto;
        line-height: 1.8;
        margin-top: 0;
    }
    .faq-sec01__content-tab ul li.current,
    .faq-sec01__content-tab ul li{
        font-size: 16px;
    }
    .faq-sec01__content-inner{
        padding: 30px;
    }
    .faq-sec01__content-box__elm-ttl{
        font-size: 16px;
    }
    .faq-sec01__content-box__elm::before{
        font-size: 28px;
    }
    .faq-sec01__content-box__elm-ttl {
        padding: 0 30px 0 30px;
    }
    .faq-sec01__content-box__elm.open .faq-sec01__content-box__elm-toggle{
        width: 24px;
        height: 24px;
    }
    .faq-sec01__content-box__elm-inner__question, .faq-sec01__content-box__elm-inner__answer{
        max-width: 100%;
    }


    /* SERVICE */
    #page-service{
        padding-top: var(--padding);
        background-size: auto 600px;
    }
    .service-sec01__flex{
        display: block;
    }
    .service-sec01__flex-lead{
        font-size: 24px;
        margin-bottom: 10px;
    }
    .service-sec01__flex-text{
        max-width: 100%;
    }
    .service-sec01__cont-img {
        width: 100%;
        height: auto;
        position: initial;
        margin-top: 20px;
    }
    .service-sec01__cont-flex{
        display: block;
    }
    .service-sec01__cont-flex__list{
        max-width: 100%;
        padding-top: 0;
        margin-top: 20px;
    }
    .service-sec01__cont-flex__item{
        max-width: 100%;
    }
    .service-sec01__cont{
        margin-top: 0;
        padding-top: 80px;
    }
    .service-sec01__cont-flex.reverse .service-sec01__cont-flex__list{
        text-align: left;
    }


    /* 無料査定 */
    .assessment-intro-sec__lead-text{
        font-size: 18px;
    }
    .assessment-intro-sec__lead-text span{
        font-size: 24px;
    }
    .assessment-intro-sec__grid{
        grid-template-columns: repeat(2,1fr);
        gap: 40px;
    }
    .assessment-intro-sec__cont::before{
        width: 170px;
        height: 40px;
    }
    .assessment-intro-sec__cont{
        margin-top: 60px;
        padding: 100px 0 120px;
    }
    .assessment-intro-sec__cont-ttl{
        font-size: 22px;
    }
    .assessment-intro-sec__cont-ttl span{
        font-size: 32px;
    }
    .assessment-intro-sec__cont-grid{
        grid-template-columns: repeat(1,1fr);
        gap: 60px 0;
    }
    .assessment-sec01__tel-ttl{
        font-size: 20px;
    }
    .assessment-sec01__tel-flex__item-num{
        font-size: 46px;
    }
    .assessment-sec01__tel-flex__icon img{
        width: 64px;
    }
    .assessment-sec01__tel-flex{
        gap: 20px;
        align-items: center;
    }
    .assessment-sec01__tel{
        padding: 40px 0;
        margin-top: -60px;
    }
    .assessment-intro-sec__grid-item__img{
        height: 120px;
    }
    .assessment-intro-sec__grid-item__img img{
        max-height: 100%;
        width: auto;
    }
    .form-wrap dl dt{
        width: 100%;
        margin-bottom: 15px;
        border-left-width: 5px;
    }
    .form-wrap dl dd{
        width: 100%;
    }
    .form-wrap dl:not(:last-child){
        margin-bottom: 40px;
    }
    .form-wrap dl dd input[type="text"], .form-wrap dl dd input[type="tel"], .form-wrap dl dd input[type="email"], .form-wrap dl dd input[type="search"], .form-wrap dl dd input[type="date"], .form-wrap dl dd textarea{
        max-width: 100%;
    }


    /* COMPANY */
    .company-title span{
        font-size: 30px;
    }
    .company-title{
        font-size: 14px;
    }
    .company-sec01__grid-img__text{
        font-size: 14px;
    }
    .company-sec02__table table th,
    .company-sec02__table table td{
        font-size: 14px;
    }


    /* Add 2025-07-03 */
    .top-house__slider-wrap__text{
        font-size: 26px;
    }
    .top-house__slider-wrap__text small{
        font-size: 20px;
    }
    #footer .footer-content__flex-info__address{
        margin-bottom: 30px;
        justify-content: center;
    }
    body.home #footer{
        padding-bottom: 120px;
    }
    .assessment-intro-sec__detail{
        grid-template-columns: repeat(1,1fr);
    }
    .assessment-intro-sec__detail-box__cont-flex{
        height: auto;
    }
}


@media screen and (max-width: 767px) {
    body{
        padding-bottom: 45px;
    }
    .title-en::before{
        height: 40px;
    }
    .title{
        margin-bottom: 40px;
    }
    .title-en{
        font-size: 14px;
    }
    .title-text{
        font-size: 22px;
        margin-top: 5px;
    }
    p{
        font-size: 14px;
    }
    #fixed-bar{
        display: block;
        position: fixed;
        z-index: 99;
        width: 100%;
        left: 0;
        bottom: 0;
        box-sizing: 0 0 10px rgb(140 140 140 / .25);
    }
    #fixed-bar ul{
        display: grid;
        grid-template-columns: repeat(3,1fr);
    }
    #fixed-bar ul li:not(:last-child){
        border-right: 1px solid #fff;
    }
    #fixed-bar ul li a{
        display: flex;
        justify-content: center;
        align-items: center;
        height: 45px;
        color: #fff;
        font-size: 12px;
    }
    #fixed-bar ul li:nth-of-type(1) a{
        background-color: #0c5ead;
    }
    #fixed-bar ul li:nth-of-type(2) a{
        background-color: #05823e;
    }
    #fixed-bar ul li:nth-of-type(3) a{
        background-color: #fc920f;
    }
    #fixed-bar ul li a span{
        width: 16px;
        height: 16px;
        margin-right: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    #fixed-bar ul li a span img{
        max-width: 100%;
        max-height: 100%;
        -webkit-filter: brightness(0) grayscale(100%) invert(1);
        -moz-filter: brightness(0) grayscale(100%) invert(1);
        -o-filter: brightness(0) grayscale(100%) invert(1);
        -ms-filter: brightness(0) grayscale(100%) invert(1);
        filter: brightness(0) grayscale(100%) invert(1);
    }

    
    /* HEADER */
    #header .header-tel{
        display: none;
    }
    #header .header-nav ul li a span{
        font-size: 20px;
    }
    #header .header-nav ul li a{
        font-size: 12px;
    }



    /* ASIDE */
    #aside{
        display: none;
    }


    /* FOOTER */
    #footer .footer-tel__text{
        font-size: 14px;
        margin-bottom: 20px;
    }
    #footer .footer-bnr__cont-text img{
        width: 220px;
    }
    #footer .footer-tel__flex-icon img{
        width: 40px;
    }
    #footer .footer-tel__flex-item__text{
        font-size: 12px;
    }
    #footer .footer-tel__flex-item__num{
        font-size: 26px;
    }
    #footer .footer-tel__flex-item__time{
        font-size: 12px;
    }
    #footer .footer-tel{
        padding: 30px 0;
    }
    #footer .footer-tel__link a img{
        width: 40px;
    }
    #footer .footer-tel__link a{
        font-size: 14px;
    }
    #footer .footer-tel__link a::before{
        width: 30px;
        height: 30px;
        right: 10px;
        background-size: 14px;
    }
    #footer .footer-content__flex-menu ul li a{
        font-size: 13px;
    }
    #footer .footer-content__flex-menu ul li:not(:last-child){
        margin-bottom: 10px;
    }

    
    /* TOP */
    #home{
        padding-top: 0;
        background-size: auto 1200px;
    }
    .mv{
        height: calc(100svh - 45px);
        position: relative;
    }
    .mv-text{
        position: absolute;
        transform: translateX(-50%);
        top: 35%;
        left: 0;
        width: 100%;
        text-align: center;
        z-index: 1;
        margin: 0;
    }
    #home .top-select__tab ul{
        display: grid;
        grid-template-columns: repeat(2,1fr);
    }
    #home .top-select__tab ul > li.current{
        font-size: 16px;
    }
    #home .top-select__tab ul > li.current span{
        font-size: 20px;
    }
    #home .top-select__tab ul > li{
        font-size: 12px;
    }
    #home .top-select__tab ul > li span{
        font-size: 18px;
    }
    .top-select__tab ul li{
        padding: 0;
        text-align: center;
    }
    .top-select__cont-grid{
        grid-template-columns: repeat(1,1fr);
    }
    .top-select__cont-grid__item a{
        display: flex;
        justify-content: flex-start;
        padding: 20px 0 20px 30px;
        gap: 20px;
    }
    .top-select__cont-grid__item-icon{
        margin: 0;
        width: 50px;
        height: 35px;
    }
    .top-select__cont-grid__item:not(:last-child){
        border-bottom: 1px solid #000;
        border-right: none;
    }
    .top-bnr__cont-text img{
        width: 200px;
    }
    .top-bnr__cont-text{
        text-align: center;
    }
    .top-bnr__cont__view-more a{
        margin: 0 auto;
    }
    .top-bnr__cont{
        border-radius: 10px;
        margin-top: 30px;
    }
    .top-house__slider-item{
        width: 640px;
        margin-right: 20px;
    }
    .form-result{
        margin-bottom: 60px;
    }
    .house-card__tag{
        top: 12px;
    }
    .house-card__tag-item{
        width: 50px;
        height: 50px;
        padding: 0 8px 0 11px;
    }
    .top-house__btn{
        gap: 10px;
        margin-top: 30px;
    }
    .top-property__ttl-en img{
        width: 260px;
    }
    .top-property__ttl-text img{
        width: 24px;
    }
    .top-property__text{
        font-size: 18px;
    }
    .top-property__slider-item{
        width: 300px;
    }
    .top-property__slider-item__num{
        font-size: 12px;
        padding: 10px 0;
        top: 20px;
    }
    .top-property__slider-item__box-type{
        font-size: 13px;
    }
    .top-property__slider-item__box-name{
        font-size: 20px;
    }
    .top-property__slider.slick-dotted.slick-slider{
        margin-bottom: 0;
    }
    .top-news__flex{
        display: block;
    }
    .top-news__flex-ttl__en{
        font-size: 32px;
    }
    .top-news__flex .view-more{
        margin-top: 30px;
    }
    .top-news__flex .view-more a{
        margin: 0 auto;
    }
    .news-card a{
        padding-right: 20px;
    }
    .news-card a::before{
        width: 28px;
        height: 6px;
        transform: initial;
        top: auto;
        bottom: 10px;
    }
    .news-card__box-text{
        padding-right: 0;
        font-size: 13px;
    }


    /* PAGE */
    .page-mv__title span{
        font-size: 28px;
    }
    .page-mv__title{
        font-size: 14px;
    }
    .select-area__map,
    .select-area__label{
        display: none;
    }
    .select-area__map{
        overflow-x: scroll;
    }
    .select-area__map svg{
        width: 780px;
    }


    /* HOUSE */
    .content-flex__side-ttl{
        font-size: 16px;
    }
    .content-flex__side-ttl span{
        width: 24px;
        height: 24px;
        top: -2px;
    }
    #content-list{
        padding-top: 60px;
    }
    .content-flex__side-box__label{
        font-size: 14px;
    }
    .content-flex__side{
        margin-bottom: 20px;
    }
    .form-result dl dt,
    .form-result dl dd{
        font-size: 14px;
    }
    .house-card__view-more a{
        width: 100%;
        height: 48px;
        font-size: 13px;
        line-height: 46px;
    }
    .content-flex__main-nav__flex-count{
        font-size: 13px;
        text-align: right;
        margin-bottom: 15px;
    }
    .content-flex__main-nav__flex-count span{
        font-size: 30px;
    }
    .content-flex__main-nav__flex{
        display: block;
    }
    .content-flex__main-nav{
        padding-top: 0;
    }
    .select-area__list{
        background-color: #fff;
    }


    /* FAQ */
    .faq-sec01__keyword-text{
        font-size: 14px;
    }
    .faq-sec01__keyword-flex__input input, .faq-sec01__keyword-flex__btn input{
        height: 42px;
        font-size: 14px;
    }
    .faq-sec01__content{
        margin-top: 40px;
    }
    .faq-sec01__content-tab ul li.current, .faq-sec01__content-tab ul li{
        font-size: 14px;
    }
    .faq-sec01__content-inner{
        padding: 0;
        box-shadow: none;
        background-color: transparent;
    }
    .faq-sec01__content-tab{
        margin-bottom: 20px;
    }
    .faq-sec01__content-box__elm-ttl{
        font-size: 14px;
    }
    .faq-sec01__content-box__elm::before{
        font-size: 22px;
        top: 6px;
        left: 10px;
    }
    .faq-sec01__content-box__elm-ttl{
        padding-left: 10px;
    }
    .faq-sec01__content-box__elm-inner__question-icon{
        width: 34px;
    }
    .faq-sec01__content-box__elm-inner__question-body{
        width: calc(100% - 34px);
        padding-right: 20px;
    }
    .faq-sec01__content-box__elm-inner__question-body__item::before, .faq-sec01__content-box__elm-inner__answer-body__item::before{
        width: 20px;
        height: 20px;
    }
    .faq-sec01__content-box__elm-inner__question-body__item::before{
        right: -15px;
    }
    .faq-sec01__content-box__elm-inner__question-body__item::after{
        opacity: 0;
    }
    .faq-sec01__content-box__elm-inner__question-body__item{
        font-size: 13px;
        border-width: 1px;
        padding: 15px;
    }
    .faq-sec01__content-box__elm.open .faq-sec01__content-box__elm-ttl{
        height: 0;
    }
    .faq-sec01__content-box__elm-inner__answer{
        margin-top: 15px;
    }
    .faq-sec01__content-box__elm-inner__answer-icon{
        width: 50px;
    }
    .faq-sec01__content-box__elm-inner__answer-body{
        padding-left: 20px;
        width: calc(100% - 50px);
    }
    .faq-sec01__content-box__elm-inner__answer-body__item{
        padding: 15px;
        font-size: 13px;
        border-width: 1px;
    }
    .faq-sec01__content-box__elm-inner__answer-body__item::before{
        left: -15px;
    }
    .faq-sec01__content-box__elm-inner__question-body, .faq-sec01__content-box__elm-inner__answer-body{
        padding-top: 15px;
    }
    .faq-sec01__content-no{
        font-size: 14px;
    }


    /* SERVICE */
    #page-service{
        background-size: auto 500px;
    }
    .service-sec01__flex-lead{
        font-size: 18px;
    }
    .service-sec01__flex-text{
        font-size: 14px;
    }
    .service-sec01__cont{
        padding-top: 40px;
    }
    .service-sec01__cont-inner{
        padding: 30px;
    }
    .service-sec01__cont-flex__item-ttl span{
        font-size: 26px;
        margin-bottom: 5px;
    }
    .service-sec01__cont-flex__item-ttl{
        font-size: 14px;
        margin-bottom: 20px;
    }
    .service-sec01__cont-flex__item-text, .service-sec01__cont-flex__list ul li{
        font-size: 14px;
    }


    /* 無料査定 */
    .assessment-intro-sec__grid{
        grid-template-columns: repeat(1,1fr);
    }
    .assessment-intro-sec__grid-item__ttl{
        font-size: 20px;
        text-align: center;
    }
    .assessment-intro-sec__grid-item ul{
        display: inline-block;
        text-align: left;
    }
    .assessment-intro-sec__grid-item{
        text-align: center;
    }
    .assessment-intro-sec__cont-ttl span{
        font-size: 24px;
    }
    .assessment-intro-sec__cont-ttl{
        font-size: 16px;
        margin-bottom: 40px;
    }
    .assessment-intro-sec__cont-grid__item-lead span{
        font-size: 36px;
    }
    .assessment-intro-sec__cont-grid__item-lead{
        font-size: 18px;
    }
    .assessment-intro-sec__cont-grid__item-text{
        font-size: 14px;
    }
    .assessment-sec01__tel-flex__item-num{
        font-size: 26px;
    }
    .assessment-sec01__tel-flex__item-time{
        font-size: 12px;
    }
    .assessment-sec01__tel-flex__icon img{
        width: 42px;
    }
    .assessment-sec01__tel-ttl{
        font-size: 18px;
        margin-bottom: 20px;
    }
    .assessment-sec02__ttl span{
        font-size: 14px;
    }
    .assessment-sec02__cont-inner{
        padding: 20px;
        border-radius: 10px;
    }
    .form-wrap dl dt{
        margin-bottom: 10px;
    }
    .form-wrap dl dt,
    .form-wrap dl dd{
        font-size: 14px;
    }
    .wpcf7-list-item-label{
        font-size: 14px;
    }
    .checkbox-item__elm label::before,
    .checkbox-item__elm label::after,
    .wpcf7-list-item-label::before,
    .wpcf7-list-item-label::after{
        width: 16px;
        height: 16px;
        top: 5px;
    }
    .wpcf7-list-item-label, .checkbox-item__elm label{
        padding-left: 22px;
    }
    .wpcf7-list-item{
        display: block;
        margin: 0 0 10px 0;
    }
    .form-wrap dl dd input[type="text"], .form-wrap dl dd input[type="tel"], .form-wrap dl dd input[type="email"], .form-wrap dl dd input[type="search"], .form-wrap dl dd input[type="date"], .form-wrap dl dd textarea, .form-wrap dl dd select{
        font-size: 14px;
    }
    .form-wrap dl dd textarea{
        height: 160px;
    }
    .assessment-sec02__cont-text{
        font-size: 14px;
        text-align: left;
        margin-top: 30px;
    }
    .assessment-sec02__cont-text br{
        display: none;
    }
    .assessment-sec02__cont-btn{
        margin-top: 30px;
    }
    .assessment-sec02__cont-btn input{
        font-size: 16px;
    }


    /* COMPANY */
    .company-title span{
        font-size: 22px;
    }
    .company-title span::before{
        margin-right: 15px;
    }
    .company-title span::after{
        margin-left: 15px;
    }
    .company-sec01__text{
        font-size: 14px;
    }
    .company-title{
        margin-bottom: 20px;
    }
    .company-sec01__grid{
        grid-template-columns: repeat(1,1fr);
    }
    .company-sec02__table table{
        border-collapse: collapse;
    }
    .company-sec02__table table th, .company-sec02__table table td{
        display: block;
        width: 100%;
        padding: 14px 10px;
    }
    .company-sec02__table table th{
        border-bottom: none;
        padding-bottom: 0;
    }
    .company-sec02__table table td{
        padding-top: 3px;
    }
    .company-sec03__map iframe{
        height: 240px;
    }


    /* NEWS */
    .wp-pagenavi a, .wp-pagenavi span{
        width: 40px;
        height: 40px;
    }

    .acf-map{
        aspect-ratio: 16 / 9;
        height: auto;
    }


    /* 賃貸詳細 */
    .model-house-single__price span.management-price{
        display: block;
        margin: 10px 0 0 0;
        padding: 0;
    }
    .model-house-single__subprice{
        margin: 0 0 20px;
        display: grid;
        grid-template-columns: repeat(2,1fr);
    }
    .model-house-single__subprice-text::after{
        display: none;
    }
    .model-house-single__subprice-text span{
        margin-right: 12px;
    }

    .form-wrap dl dd input[type="date"]{
        width: 110px;
    }
    .form-wrap dl dd select{
        margin-top: 10px;
    }


    /* Add 2025-07-03 */
    .top-new{
        margin-top: 40px;
    }
    .top-house__slider-wrap__text {
        font-size: 5.2vw;
    }
    .top-house__slider-wrap__text small {
        font-size: 3vw;
    }
    .select-area__map, .select-area__label{
        display: block;
    }
    .company-sec02__table td br.s-up{
        display: block;
    }
    body.home #footer {
        padding-bottom: 60px;
    }
    #footer .footer-content__flex-info__address{
        display: block;
        text-align: center;
    }
    #footer .footer-content__flex-info__address-text{
        font-size: 13px;
        margin-bottom: 20px;
    }
    #footer .footer-content__flex-info__address-text:last-child{
        margin-bottom: 0;
    }
    #footer .footer-content__flex-info__address b{
        font-size: 13px;
    }
    #footer .footer-content__copy-text{
        font-size: 10px;
    }
    .top-purchase__flex-ttl{
        font-size: 34px;
        margin-bottom: 30px;
        text-align: center;
    }
    .top-purchase__flex{
        display: block;
    }
    .top-purchase__flex-box__lead{
        font-size: 20px;
        text-align: center;
    }
    .top-purchase__flex-box__text{
        font-size: 14px;
        margin-bottom: 30px;
    }
    .top-purchase__flex-box__tag{
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 10px;
    }
    .top-purchase__flex-box__tag span{
        font-size: 14px;
        border-width: 2px;
        width: auto;
    }
    .top-purchase__flex-box__strength{
        font-size: 34px;
        text-align: center;
        margin: 20px 0 40px;
    }
    .top-purchase__flex-box__view-more a{
        margin: 0 auto;
    }
    .top-purchase__bg{
        grid-template-columns: repeat(1,1fr);
        grid-template-rows: repeat(3,1fr);
    }
    .top-purchase__bg-box__text{
        width: 13%;
    }
    .assessment-intro-sec__detail-box__cont-flex{
        display: block;
    }
    .assessment-intro-sec__detail-box__img-text small{
        position: initial;
        transform: initial;
        font-size: 13px;
    }
    .assessment-intro-sec__detail-box__img-text span{
        font-size: 52px;
    }
    .assessment-intro-sec__detail-box__img-text{
        font-size: 20px;
        line-height: 1.4;
        top: 60px;
    }
    .assessment-intro-sec__detail-box__img-item img {
        height: 280px;
    }
    .assessment-intro-sec__detail-box__img-ex{
        line-height: 1.5;
        bottom: 20px;
        font-size: 12px;
    }
    .assessment-intro-sec__grid-item__ttl{
        margin-top: 20px;
    }
    .assessment-intro-sec__detail-box:not(:last-child){
        margin-bottom: 30px;
    }
    .assessment-intro-sec__text{
        font-size: 16px;
        margin: 50px 0;
        text-align: left;
    }
    .assessment-intro-sec__text br{
        display: none;
    }
    .assessment-intro-sec__area{
        padding: 30px;
        display: block;
    }
    .assessment-intro-sec__area dt{
        width: 100%;
        margin-bottom: 20px;
        text-align: center;
        font-size: 18px;
    }
    .assessment-intro-sec__area dd{
        width: 100%;
        font-size: 14px;
    }
}