@charset "UTF-8";
/*--------------------
        共通
--------------------*/
body {
    font-size: 14px;
    /*font-family: "Noto Sans Myanmar", system-ui;*/
    font-family: "Noto Sans Myanmar";
}
.display-none {
    display: none;
}
.tab-show {
    display: none;
}
.fade-in-element {
    opacity: 0;
    transition: opacity 2s;
}
.fade-in-element.fade-in {
    opacity: 1;
}
/*--------------------
        HEADER
--------------------*/
.header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    background: #fff;
    z-index: 10;
}
.header__wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header__logo {
    margin-left: 23px;
    width: 138px;
}
.header__img {}


/*--------------------
  NAVIGATION(HEADER)
--------------------*/
/* gnav */
.gnav {
    display: none;
}
.gnav__nav {
    display: flex;
    gap: 35px;
}
.gnav__list {}
.gnav__link {
    color: #000;
}

/* dnav */
.dnav {
    margin-bottom: 21px;
}
.dnav__nav {}
.dnav__list {}
.dnav__list + .dnav__list {
    margin-top: 31px;
}
.dnav__link {
    display: block;
    font-size: 15px;
    color: inherit;
    line-height: 1.4;
}

/*--------------------
   ハンバーガーメニュー
--------------------*/
.hamburger {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 59px;
    aspect-ratio: 1;
    background: #36573C;
    z-index: 21;
}
.hamburger__wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    /*gap: 10px;*/
    width: 27px;
    height: 25px;
}
.hamburger__box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 12px;
}
.hamburger__bar--top,
.hamburger__bar--middle,
.hamburger__bar--bottom {
    width: 27px;
    height: 1px;
    background: #fff;
    transition: transform 0.5s;
}
.hamburger__bar--top {
    transform: translateY(-5px);
}
.hamburger__bar--middle {
    transform: translateY(0);
}
.hamburger__bar--bottom {
    transform: translateY(5px);
}
.hamburger__text {
    font-size: 7px;
    color: #fff;
    line-height: 1;
}

/*--------------------
   ドロワーメニュー
--------------------*/
.drawer {
    position: absolute;
    top: 59px;
    right: 0;
    width: 100%;
    height: calc(100svh - 59px);
    transform: translateX(100%);
    transition: transform 0.5s;
    z-index: 20;
}
.drawer__wrapper {
    height: 100%;
}
.drawer__container {
    padding: 57px 48px 60px;
    height: 100%;
    color: #fff;
    background: #36573C;
}

.drawer__sns {}
.drawer__link {
    display: flex;
    justify-content: right;
    align-items: center;
    gap: 5px;
    color: #fff;
}
.drawer__follow {
    font-size: 10px;
}
.drawer__facebook {
    width: 21px;
    aspect-ratio: 1;
}


/*--------------------
        ASIDE
--------------------*/
.aside {
    position: fixed;
    bottom: 0;
    right: 0;
    width: 100vw;
    z-index: 9;
}
.aside__wrapper {}
.aside__text {}
.aside__link {
    display: block;
    padding: 17px 0 13px 0;
    /*font-size: 14px;*/
    color: #fff;
    background: #36573C;
    border-radius: 10px 10px 0 0;
    text-align: center;
}

/*--------------------
        TOP
--------------------*/
/*　mv */
.mv {
    position: relative;
    height: 100svh;
    background: url("../images/top/mv-pc.jpg") center center / cover;
}
.mv::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #00000033;
}
.mv__wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 23px;
    height: 100%;
}
.mv__catch {
    position: absolute;
    top: 253px;
    left: 50%;
    width: 312px;
    transform: translateX(-50%);
}
.mv__scroll {
    position: absolute;
    top: 330px;
    left: 50%;
    width: 32px;
    transform: translateX(-50%);
}
.mv__news {
    position: absolute;
    bottom: 67px;
    left: 23px;
}
.mv__news--title {
    font-size: 10px;
    color: #fff;
}
.mv__news--title + .mv__news--title {
    margin-top: 8px;
}
.mv__link {
    color: inherit;
}

/*　concept */
.concept {
    margin-top: -59px;
    padding: calc(48px - 20px + 59px) 0 128px;
}
.concept__wrapper {
    padding: 0 22px 0 23px;
}
.concept__title {
    position: relative;
    top: 20px;
    right: 10px;
    margin: 0 auto;
    width: 48px;
}
.concept__img {}
.concept__pic {
    margin-bottom: 40px;
    aspect-ratio: 330 / 215;
}
.concept__pic .concept__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.concept__box {}
.concept__text {
    margin-bottom: 43px;
    line-height: 2;
}
.concept__logo {
    margin: 0 auto;
    width: 130px;
}

/*　what-is */
.what-is__outer {
    padding-top: 59px;
    margin-top: -59px;
}
.what-is {
    position: relative;
    padding: 22px 0 127px;
    background: #E2DBCD;
}
.what-is::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 100%;
    aspect-ratio: 375/48;
    background: url("../images/top/what-is_bg.svg") center center / cover;
}
.what-is__wrapper {
    padding: 0 22px 0 23px;
}
.what-is__title {
    margin: 0 auto 60px;
    width: 72px;
}
.what-is__lists {}
.what-is__list {}
.what-is__list + .what-is__list {
    margin-top: 40px;
}
.what-is__pic {
    margin: 0 auto;
    width: 100%;
    aspect-ratio: 330/420;
    background: #fff;
}
.what-is__pic .what-is__img {
    margin: 0 auto;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.what-is__contents {
    padding: 30px 25px;
    background: #fff;
}
.what-is__inner {}
.what-is__heading {
    margin-bottom: 28px;
    width: 128px;
}
.what-is__lead {
    margin-bottom: 28px;
    font-size: 17px;
}
.what-is__text {
    line-height: 2;
    text-align: justify;
}

/*　recommend */
.recommend {
    position: relative;
    padding-bottom: 60px;
}
.recommend::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 100%;
    aspect-ratio: 375/47;
    background: url("../images/top/recommend_bg.svg") center center / cover;
}
.recommend__wrapper {
    padding: 0 22px 0 23px;
}
.recommend__title {
    margin: 0 auto 60px;
    width: 107px;
}
.recommend__lists {
    display: grid;
    gap: 84px;
}
.recommend__list {}
.recommend__pic {
    margin-bottom: 27px;
    aspect-ratio: 330/186;
}
.recommend__pic .recommend__img {
    margin: 0 auto;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.recommend__contents {}
.recommend__heading {
    margin-bottom: 18px;
    font-size: 17px;
}
.recommend__text {
    line-height: 1.6;
}

/*　banner */
.banner {
    padding: 60px 0 107px;
    background: #E2DBCD;
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.banner__wrapper {}
.banner__link {}
.banner__pic {}
.banner__pic .banner__img {
    margin: 0 auto;
}
.banner__img {}

/*　faq */
.faq__outer {
    margin-top: -59px;
    padding-top: 59px;
}
.faq {
    position: relative;
    /* faq__photoとfaq__listsを35px上げているため引く */
    padding-bottom: calc(127px - 35px);
}
.faq::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 100%;
    aspect-ratio: 375/47;
    background: url("../images/top/faq_bg.svg") center center / cover;
}
.faq__wrapper {
    padding: 0 22px 0 23px;
}
.faq__title {
    position: relative;
    margin: 0 auto;
    width: 74px;
    z-index: 1;
}
.faq__photo {
    position: relative;
    top: -35px;
    padding-bottom: 60px;
    border-bottom: 1px solid #C9C9C9;
}
.faq__photo .faq__img {
    margin: 0 auto;
}
.faq__lists {
    position: relative;
    top: -35px;
}
.faq__list {
    display: flex;
    flex-direction: column;
    gap: 40px;
    padding: 30px 0 60px;
    border-bottom: 1px solid #C9C9C9;
}
.faq__question {}
.faq__icon {
    margin-bottom: 18px;
    width: 25px;
}
.faq__heading {
    margin-bottom: 42px;
    font-size: 16px;
    line-height: 1.6;
    font-family: "Noto Sans JP";
    font-family: "Zen Kaku Gothic New";
}
.faq__pic {
    margin: 0 auto;
    width: 102px;
}
.faq__answer {}
.faq__text {}
.faq__text + .faq__text {
    margin-top: 31px;
}

/*　model-house */
.model-house__outer {
    margin-top: -59px;
    padding-top: 59px;
}
.model-house {
    position: relative;
    padding: 20px 0 98px;
    background: #E2DBCD;
}
.model-house::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 100%;
    aspect-ratio: 375/47;
    background: url("../images/top/model-house_bg.svg") center center / cover;
}
.model-house__wrapper {
    padding: 0 22px 0 23px;
}
.model-house__title {
    margin: 0 auto 60px;
    width: 124px;
}
.model-house__button {}
.model-house__link {
    display: block;
    margin: 0 auto;
    padding: 13px;
    width: 214px;
    color: #fff;
    background: #36573C;
    text-align: center;
    border-radius: 10px;
}

/*　model-house(swiper) */
.model-house-swiper {}
.model-house-swiper__wrapper {
    margin-bottom: 40px;
}
.model-house-swiper__slide {}
.model-house-swiper__link {
    color: inherit;
}
.model-house-swiper__pic {
    aspect-ratio: 330/186;
}
.model-house-swiper__img {
    margin: 0 auto;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.model-house-swiper__contents {
    padding: 25px;
    background: #fff;
}
.model-house-swiper__block {}
.model-house-swiper__box {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 25px;
}
.model-house-swiper__number {
    display: flex;
    gap: 20px;
}
.model-house-swiper__number::after {
    content: "";
    display: block;
    width: 1px;
    height: 24px;
    background: #000;
}
.model-house-swiper__heading {
    font-size: 16px;
}
.model-house-swiper__lead {
    margin-bottom: 28px;
    font-size: 11px;
}
.model-house-swiper__text {
    font-size: 12px;
}

.model-house-swiper__thumlist {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px 24px;
    margin-bottom: 60px;
}
.model-house-swiper__item {
    position: relative;
    display: flex;
    justify-content: flex-end;
}
.model-house-swiper__item:nth-of-type(n + 2)::before {
    content: "";
    position: relative;
    top: 20px;
    left: -20px;
    display: block;
    width: 1px;
    height: 30px;
    background: #000;
    transform: rotate(45deg);
}
.model-house-swiper__item::after {
    content: "";
    display: block;
    width: 17px;
    height: 12px;
    background: url("../images/top/model-house_num_1.svg") center center / cover;
}
.model-house-swiper__item:nth-of-type(2)::after {
    background: url("../images/top/model-house_num_2.svg") center center / cover;
}
.model-house-swiper__item:nth-of-type(3)::after {
    background: url("../images/top/model-house_num_3.svg") center center / cover;
}
.model-house-swiper__item:nth-of-type(4)::after {
    background: url("../images/top/model-house_num_4.svg") center center / cover;
}
.model-house-swiper__item:nth-of-type(5)::after {
    background: url("../images/top/model-house_num_5.svg") center center / cover;
}
.model-house-swiper__item:nth-of-type(6)::after {
    background: url("../images/top/model-house_num_6.svg") center center / cover;
}
.model-house-swiper__item .model-house-swiper__pic {
    width: 76px;
    height: 76px;
    opacity: 0.5;
}
.model-house-swiper__item.current .model-house-swiper__pic {
    opacity: 1;
}
.model-house-swiper__item .model-house-swiper__pic .model-house-swiper__img {
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}

/*　about */
.about {
    padding: 100px 0 127px;
}
.about__wrapper {
    padding: 0 22px 0 23px;
}
.about__title {
    margin: 0 auto 60px;
    width: 111px;
}
.about__text {
    line-height: 1.6;
}
.about__text + .about__text {
    margin-top: 31px;
}
.about__text:last-of-type {
    margin-bottom: 101px;
}
.about__president {
    position: relative;
    margin-bottom: 60px;
}
.about__photo {
    position: absolute;
    top: -24px;
    right: 0;
    width: 85px;
}
.about__info {}
.about__name {
    margin-bottom: 16px;
}
.about__position {
    margin-bottom: 18px;
    font-size: 10px;
}
.about__career {
    font-size: 12px;
}
.about__banners {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.about__pic {}

/*　access */
.access {
    position: relative;
    padding-bottom: 72px;
    background: #E2DBCD;
}
.access::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 100%;
    aspect-ratio: 375/47;
    background: url("../images/top/access_bg.svg") center center / cover;
}
.access__wrapper {
    padding: 0 22px 0 23px;
}
.access__title {
    margin-bottom: 62px;
    font-size: 17px;
    text-align: center;
}
.access__lists {
    display: flex;
    flex-direction: column;
    gap: 52px;
}
.access__list {}
.access__map {
    margin-bottom: 24px;
    width: 100%;
    aspect-ratio: 330/219;
}
.access__img {
    width: 100%;
    height: 100%;
}
.access__office {}
.access__name {}
.access__def {}
.access__box {
    display: flex;
    gap: 6px;
    font-size: 12px;
}
.access__box--wrap {
    display: flex;
    gap: 14px;
}
.access__term {}
.access__desc {}

/*　contact */
.contact {
    padding: 80px 0 100px;
}
.contact__wrapper {
    padding: 0 22px 0 23px;
}
.contact__title {
    margin: 0 auto 60px;
    width: 106px;
}
.contact__text {
    margin-bottom: 90px;
    line-height: 1.9;
}
.contact__text .contact__link {
    color: inherit;
}
.contact__note {
    font-size: 12px;
    line-height: 1.7;
}
.contact__note + .contact__note {
    margin-top: 34px;
}

/* フォーム */
.contact .wpcf7 {
    margin-bottom: 60px;
}
.form__box {}
.form__box + .form__box {
    margin-top: 30px;
}
.form__box:last-of-type {
    margin-bottom: 40px;
}
.form__term {
    margin-bottom: 11px;
    font-size: 12px;
}
.required {
    display: inline-block;
    margin-left: 12px;
    padding: 3px 9px 0;
    font-size: 10px;
    color: #fff;
    background: #36573C;
    border-radius: 2px;
}
.wpcf7-text {
    width: 100%;
    height: 50px;
    background: #EBEBEB;
    border: none;
}
.wpcf7-textarea {
    width: 100%;
    height: 150px;
    background: #EBEBEB;
    border: none;
}
.contact__check {
    margin-bottom: 60px;
    text-align: center;
}
.contact__check .contact__link {
    color: #36573C;
}
.wpcf7-form > p:last-of-type {
    text-align: center;
}
.wpcf7-submit {
    width: 215px;
    height: 48px;
    color: #fff;
    background: #36573C;
    border: none;
    border-radius: 10px;
}
.wpcf7-spinner {
    position: absolute !important;
}

/*--------------------
        FOOTER
--------------------*/
.footer {
    padding: 60px 0 11px;
    color: #fff;
    background: #36573C;
}
.footer__wrapper {
    padding: 0 23px;
}
.footer__container {}
.footer__content {}
.footer__logo {
    margin-bottom: 40px;
    width: 107px;
}
.footer__img {}
.footer__company-info {
    margin-bottom: 57px;
}
.footer__company-info--name {
    margin-bottom: 6px;
    font-size: 11px;
}
.footer__company-info--post-code {
    font-size: 10px;
}
.footer__company-info--address {
    font-size: 10px;
}
.footer__company-info--list {
    display: flex;
    gap: 10px;
    font-size: 10px;
}
.footer__company-info--box {
    display: flex;
    gap: 6px;
}
.footer__company-info--term {}
.footer__company-info--disc {}
.footer__sns {
    margin-bottom: 63px;
}
.footer__link {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 9px;
    color: inherit;
}
.footer__follow {
    font-size: 10px;
}
.footer__facebook {
    width: 25px;
}
.footer__copyright {
    text-align: center;
}
.footer__small {
    font-size: 9px;
    color: #BABABA;
}
/*--------------------
   NAVIGATION(FOOTER)
--------------------*/
/* fnav */
.fnav {
    margin-bottom: 38px;
}
.fnav__nav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 20px;
}
.fnav__list {}
.fnav__link {
    font-size: 12px;
    color: inherit;
}



/*--------------------
        下層ページ
--------------------*/
/*--------------------
        CONFIRM
--------------------*/
#contact-confirm .main {
    padding-top: 59px;
}
.confirm {
    padding: 60px 0 100px;
}
.confirm__wrapper {
    padding: 0 22px 0 23px;
}
.confirm__text {
    margin-bottom: 63px;
}
/* フォーム */
.confirm__box {
    border-bottom: 1px solid #C9C9C9;
}
.confirm__box + .confirm__box {
    margin-top: 30px;
}
.confirm__box:last-of-type {
    margin-bottom: 60px;
}
.confirm__term {
    margin-bottom: 30px;
    font-size: 12px;
}
.confirm__desc {
    margin-bottom: 16px;
    font-size: 12px;
}
/*.required {}*/
/*.wpcf7-form > p:last-of-type {}*/
/*.wpcf7-submit {}*/
.confirm__submit {
    margin-bottom: 20px;
}
.confirm__previous {
    width: 214px;
    height: 48px;
    color: #36573C;
    background: #fff;
    border-color: #36573C;
    border-radius: 10px;
}

/*--------------------
        THANKS
--------------------*/
#contact-thanks .main {
    padding-top: 59px;
}
#contact-thanks .aside {
    display: none;
}
.thanks {
    padding: 60px 0 100px;
}
.thanks__wrapper {
    padding: 0 22px 0 23px;
}
.thanks__title {
    margin-bottom: 57px;
    font-size: 22px;
    text-align: center;
}
.thanks__text {
    margin-bottom: 89px;
    line-height: 2;
}
.thanks__button {}
.thanks__link {
    margin: 0 auto;
    display: block;
    padding: 12px 20px;
    max-width: 214px;
    color: #36573C;
    text-align: center;
    border: 1px solid #36573C;
    border-radius: 10px;
}

/*--------------------
        768px
--------------------*/
@media screen and (min-width: 768px){
    .tab-hide {
        display: none;
    }
    .tab-show {
        display: block;
    }

    /*--------------------
        HEADER
    --------------------*/
    .drawer {
        top: 0;
        height: 100svh;
        background: url("../images/top/mv-pc.jpg") center center / cover;
    }
    .drawer__wrapper {
        background: #00000094;
    }
    .drawer__logo {
        margin-bottom: 56px;
    }
    .drawer__container {
        position: relative;
        margin-left: auto;
        padding: 104px 102px 54px 77px;
        width: 600px;
        z-index: 20;
    }
    .drawer__contents {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
    }
    .drawer__office {}
    .drawer__name {
        margin-bottom: 16px;
        font-size: 12px;
    }
    .drawer__def {}
    .drawer__box {
        display: flex;
        gap: 6px;
        font-size: 10px;
    }
    .drawer__term {}
    .drawer__desc {}
    .drawer__box--wrap {
        display: flex;
        gap: 14px;
    }
    .drawer__sns {
        display: flex;
        justify-content: right;
        gap: 9px;
    }
    .drawer__follow {}
    .drawer__facebook {
        width: 24px;
    }

    /*--------------------
      NAVIGATION(DRAWER)
    --------------------*/
    .dnav {
        margin-bottom: 112px;
        width: 450px;
    }
    .dnav__nav {
        display: flex;
        flex-wrap: wrap;
        gap: 50px 20px;
    }
    .dnav__list {
        width: calc(50% - 10px);
    }
    .dnav__list:nth-of-type(1) {
        order: 1;
    }
    .dnav__list:nth-of-type(2) {
        order: 3;
    }
    .dnav__list:nth-of-type(3) {
        order: 5;
    }
    .dnav__list:nth-of-type(4) {
        order: 7;
    }
    .dnav__list:nth-of-type(5) {
        order: 2;
    }
    .dnav__list:nth-of-type(6) {
        order: 4;
    }
    .dnav__list:nth-of-type(7) {
        order: 6;
    }
    .dnav__list:nth-of-type(8) {
        order: 8;
    }
    .dnav__list:nth-of-type(9) {
        order: 9;
    }

    .dnav__list + .dnav__list {
        margin-top: 0;
    }
    .dnav__link {
        font-size: 18px;
    }


    /*--------------------
    ASIDE
    --------------------*/
    .aside {
        bottom: 76px;
        width: 60px;
    }
    .aside__link {
        padding: 63px 20px 62px 19px;
        border-radius: 10px 0 0 10px;
        writing-mode: vertical-rl;
    }

    /*--------------------
        TOP
    --------------------*/
    .main {
        padding-top: 104px;
    }
    /*　mv */
    .mv {
        height: calc(100svh - 104px);
        /*background-image: url("../images/top/mv-pc.jpg");*/
    }
    .mv__catch {
        top: calc(335px - 104px);
        width: 491px;
    }
    .mv__scroll {
        top: calc(442px - 104px);
        width: 36px;
    }
    .mv__news {
        bottom: 26px;
        left: 120px;
    }

    /*　concept */
    .concept {
        margin-top: -50px;
        padding: calc(100px - 44px + 50px) 0 261px;
    }
    .concept__wrapper {
        margin: 0 auto;
        /*padding: 0 22px 0 23px;*/
        max-width: calc(960px + 22px + 23px);
    }
    .concept__title {
        top: 44px;
        right: 0;
        width: 71px;
    }
    .concept__pic {
        margin-bottom: 70px;
        aspect-ratio: 960 / 550;
    }
    .concept__box {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 90px;
    }
    .concept__text {
        margin-bottom: 0;
        max-width: 400px;
    }
    .concept__logo {
        margin: 0;
        width: 190px;
    }

    /*　what-is */
    .what-is__outer {
        margin-top: -150px;
        padding-top: 150px;
    }
    .what-is {
        padding: 0 0 310px;
    }
    .what-is__wrapper {
        margin: 0 auto;
        /*padding: 0 22px 0 23px;*/
        max-width: calc(960px + 22px + 23px);
    }
    .what-is__title {
        margin: 0 auto 80px;
        width: 109px;
    }
    .what-is__list {
        display: flex;
    }
    .what-is__list:nth-of-type(even) {
        flex-direction: row-reverse;
    }
    .what-is__pic {
        max-width: 422px;
        width: 44%;
        aspect-ratio: 422/583;
    }
    .what-is__contents {
        padding: 0;
        max-width: 538px;
        width: 56%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .what-is__inner {
        width: 370px;
    }
    .what-is__heading {
        margin-bottom: 105px;
        width: 164px;
    }
    .what-is__lead {
        margin-bottom: 37px;
        font-size: 22px;
    }

    /*　recommend */
    .recommend {
        padding-top: 13px;
        padding-bottom: 147px;
    }
    .recommend__wrapper {
        margin: 0 auto;
        /*padding: 0 22px 0 23px;*/
        max-width: calc(960px + 22px + 23px);
    }
    .recommend__title {
        margin-bottom: 148px;
        width: 161px;
    }
    .recommend__lists {
        grid-template-columns: repeat(2, 1fr);
        gap: 47px 12px;
    }
    .recommend__pic {
        margin-bottom: 32px;
        aspect-ratio: 474/267;
    }
    .recommend__heading {
        font-size: 18px;
    }

    /*　banner */
    .banner {
        padding: 101px 0 252px;
    }
    .banner__wrapper {
        margin: 0 auto;
        max-width: 960px;
    }

    /*　faq */
    .faq__outer {
        margin-top: -150px;
        padding-top: 150px;
    }
    .faq {
        padding-bottom: calc(298px - 20px);
    }
    .faq__wrapper {
        margin: 0 auto;
        /*padding: 0 22px 0 23px;*/
        max-width: calc(960px + 22px + 23px);
    }
    .faq__title {
        width: 123px;
    }
    .faq__photo {
        top: -20px;
        padding-bottom: 80px;
    }
    .faq__lists {
        top: -20px;
    }
    .faq__list {
        /*display: flex;*/
        flex-direction: row;
        justify-content: space-between;
        gap: 0;
        padding: 45px 0 51px;
    }
    .faq__question {
        width: 27%;
    }
    /*.faq__list:first-of-type .faq__question {*/
    /*    width: 217px;*/
    /*}*/
    .faq__icon {
        margin-bottom: 24px;
        /*width: 25px;*/
    }
    .faq__heading {
        margin-bottom: 30px;
        font-size: 20px;
    }
    .faq__pic {
        /*margin: 0 auto;*/
        /*width: 102px;*/
    }
    .faq__answer {
        width: 67%;
    }
    .faq__text {
        line-height: 1.65;
    }

    /*　model-house */
    .model-house__outer {
        margin-top: -150px;
        padding-top: 150px;
    }
    .model-house {
        padding-top: 0;
    }
    .model-house__wrapper {
        margin: 0 auto;
        /*padding: 0 22px 0 23px;*/
        max-width: calc(960px + 22px + 23px);
    }
    .model-house__title {
        margin-bottom: 80px;
        width: 192px;
    }
    .model-house-swiper__wrapper {
        margin-bottom: 50px;
    }
    .model-house-swiper__pic {
        aspect-ratio: 960/506;
    }
    .model-house-swiper__contents {
        display: flex;
        justify-content: center;
        gap: 91px;
        padding: 45px 0 36px;
    }
    .model-house-swiper__block {
        width: 272px;
    }
    .model-house-swiper__heading {
        font-size: 20px;
    }
    .model-house-swiper__lead {
        margin-bottom: 0;
    }
    .model-house-swiper__text {
        width: 322px;
    }
    .model-house-swiper__thumlist {
        gap: 20px 70px;
        margin: 0 auto 55px;
        max-width: 679px;
    }
    .model-house-swiper__item:nth-of-type(n + 2)::before {
        top: 40px;
        left: -40px;
        height: 65px;
    }
    .model-house-swiper__item:nth-of-type(4)::before {
        background: transparent;
    }
    .model-house-swiper__item .model-house-swiper__pic {
        width: 161px;
        height: 161px;
    }

    /*　about */
    .about {
        margin-top: 55px;
        padding: 150px 0 297px;
    }
    .about__wrapper {
        margin: 0 auto;
        /*padding: 0 22px 0 23px;*/
        max-width: calc(960px + 22px + 23px);
    }
    .about__title {
        width: 177px;
    }
    .about__text {
        margin-left: 64px;
    }
    .about__text + .about__text {}
    .about__text:last-of-type {
        margin-bottom: 67px;
    }
    .about__president {
        position: static;
        display: flex;
        gap: 35px;
        margin-left: 50px;
        margin-bottom: 204px;
    }
    .about__photo {
        position: static;
        width: 144px;
    }
    .about__banners {
        flex-direction: row;
        gap: 12px;
    }

    /*　access */
    .access {
        padding-bottom: 140px;
    }
    .access__wrapper {
        margin: 0 auto;
        /*padding: 0 22px 0 23px;*/
        max-width: calc(960px + 22px + 23px);
    }
    .access__title {
        margin-bottom: 32px;
        font-size: 22px;
    }
    .access__lists {
        flex-direction: row;
        justify-content: space-between;
        gap: 0;
    }
    .access__list {
        width: 49%;
    }
    .access__map {
        margin-bottom: 20px;
        aspect-ratio: 474/314;
    }
    .access__name {
        margin-bottom: 5px;
    }

    /*　contact */
    .contact {
        padding: 152px 0 144px;
    }
    .contact__wrapper {
        margin: 0 auto;
        /*padding: 0 22px 0 23px;*/
        max-width: calc(679px + 22px + 23px);
    }
    .contact__title {
        margin-bottom: 100px;
        width: 175px;
    }
    .contact__text {
        margin-bottom: 86px;
    }

    /* フォーム */
    .wpcf7 {
        margin-bottom: 99px;
    }
    .form__box {
        display: flex;
        justify-content: space-between;
    }
    .form__box + .form__box {
        margin-top: 15px;
    }
    .form__box:last-of-type {
        margin-bottom: 87px;
    }
    .form__term {
        margin-bottom: 0;
    }
    .wpcf7-text {
        width: 476px;
    }
    .wpcf7-textarea {
        width: 476px;
    }
    .contact__check {
        margin-bottom: 87px;
        text-align: left;
    }


    /*--------------------
        FOOTER
    --------------------*/
    .footer {
        padding: 120px 0 20px;
    }
    .footer__wrapper {
        margin: 0 auto;
        padding: 0 48px;
        max-width: 680px;
    }
    .footer__container {
        display: flex;
        justify-content: space-between;
        margin-bottom: 109px;
    }
    .footer__content {}
    .footer__logo {
        margin-bottom: 44px;
        width: 149px;
    }
    .footer__img {}
    .footer__company-info {
        margin-bottom: 0;
    }
    .footer__company-info--name {}
    .footer__company-info--post-code {}
    .footer__company-info--address {}
    .footer__company-info--list {}
    .footer__company-info--box {
        /*display: flex;*/
    }
    .footer__company-info--term {}
    .footer__company-info--disc {}
    .footer__sns {
        margin-bottom: 0;
    }
    .footer__follow {
        /*font-size: 10px;*/
    }
    .footer__facebook {
        /*width: 25px;*/
    }
    .footer__copyright {}
    .footer__small {
        font-size: 10px;
    }
    /*--------------------
        NAVIGATION(FOOTER)
    --------------------*/
    .fnav {
        margin-bottom: 81px;
    }
    .fnav__nav {}
    .fnav__list {}
    .fnav__link {}

    /*--------------------
        下層ページ
    --------------------*/
    /*--------------------
            CONFIRM
    --------------------*/
    .confirm {
        padding: 100px 0 100px;
    }
    .confirm__wrapper {
        margin: 0 auto;
        /*padding: 0 22px 0 23px;*/
        max-width: 680px;
    }
    .confirm__text {
        margin-bottom: 94px;
    }
    .confirm__box {
        display: flex;
        justify-content: space-between;
        padding-bottom: 30px;
    }
    .confirm__box:last-of-type {
        margin-bottom: 100px;
    }
    .confirm__term {
        margin-bottom: 0;
    }
    .confirm__desc {
        margin-bottom: 0;
        width: 72%;
    }
    .confirm .wpcf7-form > p:last-of-type {
        display: flex;
        justify-content: center;
    }
    .confirm .wpcf7-spinner {
        position: relative !important;
        margin: 0 5px !important;
    }

    /*--------------------
            THANKS
    --------------------*/
    .thanks {
        padding-top: 145px;
    }
    .thanks__wrapper {
        margin: 0 auto;
        /*padding: 0 22px 0 23px;*/
        max-width: 831px;
    }
    .thanks__title {
        margin-bottom: 97px;
    }
    .thanks__text {
        margin-bottom: 100px;
    }
    .thanks__button {}
    .thanks__link {}

}

/*--------------------
        1024px
--------------------*/
@media screen and (min-width: 1024px){
    /*--------------------
        HEADER
    --------------------*/
    .header__logo {
        margin: 0 0 0 25px;
        width: 160px;
    }

    .gnav__nav {
      gap: 25px;
    }

    /*--------------------
       NAVIGATION(HEADER)
    --------------------*/
    /* gnav */
    .gnav {
        display: block;
    }
    .gnav__link {
        font-size: 12px;
    }

    /*--------------------
    hamburger
    --------------------*/
    .hamburger {
        width: 104px;
        background: none;
    }
    .hamburger__bar--top,
    .hamburger__bar--middle,
    .hamburger__bar--bottom {
        width: 37px;
        background: #000;
    }
    .hamburger__text {
        font-size: 10px;
        color: #000;
    }

    /*--------------------
        TOP
    --------------------*/
    /* about */
    .about__text {
        margin-left: 129px;
    }
    .about__president {
        margin-left: 115px;
    }
    /*--------------------
        下層ページ
    --------------------*/
    /*--------------------
        CONFIRM
    --------------------*/
    #contact-confirm .main {
        padding-top: 104px;
    }
    /*--------------------
        THANKS
    --------------------*/
    #contact-thanks .main {
        padding-top: 104px;
    }
}
/*--------------------
        1600px
--------------------*/
@media screen and (min-width: 1600px){
    .header__logo {
        margin: 0 0 0 61px;
        width: 240px;
    }
    .gnav__nav {
        gap: 35px;
    }
    .concept {
        padding-bottom: calc(261px + 100px);
    }
    .what-is {
        padding-bottom: calc(310px + 100px);
    }
    .banner {
        padding-bottom: calc(252px + 100px);
    }
    .faq {
        padding-bottom: calc(298px - 20px + 100px);
    }
    .about {
        padding-bottom: calc(297px + 100px);
    }
}
