@charset "utf-8";

/*==================================================
---COMMON
====================================================*/
body {
    line-height: 28px;
    animation-duration: 1.8s;
    overflow: auto;
    position: relative;
    z-index: -2;
    font-feature-settings: "palt";
    letter-spacing: 0.15em;
    color: #333;
    word-wrap: break-word;
    font-weight: 500;
    font-style: normal;
    animation-name: opacity;
    min-width: 1164px;
    font-family: YakuHanJPs_Noto, "Noto Sans JP", sans-serif;
    font-style: normal;
    font-optical-sizing: auto;
}

.mainEN {
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    font-style: normal;
}

.enFont {
    font-family: mundial, sans-serif;
}

body a {
    color: #333;
    display: block;
}

img {
    -webkit-backface-visibility: hidden;
    vertical-align: bottom;
    image-rendering: -webkit-optimize-contrast;
}

@keyframes opacity {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.bodyWrap {
    position: relative;
    z-index: 1;
    background: #fff;
}

.sameFadeDaw {
    opacity: 0;
    transform: translate(0.5em, -0.5em);
    transition: 0.75s cubic-bezier(0.36, 0.14, 0, 1) 0s;
}

.sameFadeDaw.scrollin {
    opacity: 1;
    transform: translate(0);
}

.sameFade {
    opacity: 0;
    transform: translate(0, 1em);
    transition: 0.9s cubic-bezier(0.36, 0.14, 0, 1) 0s;
}

.sameFade.scrollin {
    opacity: 1;
    transform: translate(0);
}

.sameFade2 {
    opacity: 0.5;
    transform: translate(0, 20px);
    transition: 4s cubic-bezier(0.36, 0.14, 0, 1);
}

.sameFade2.scrollin {
    opacity: 1;
    transform: translate(0);
}

.rightFade {
    opacity: 0;
    transform: translate(20px, 0);
    transition: 4s cubic-bezier(0.76, 0, 0.24, 1);
}

.rightFade.scrollin {
    opacity: 1;
    transform: translate(0);
}

.fadezoom {
    overflow: hidden;
}

.fadezoom img {
    transform: scale(1.08);
    transition: 0.75s;
    opacity: 0;
}

.fadezoom.scrollin img {
    animation: fadeopa 0.75s cubic-bezier(0.36, 0.14, 0, 1) forwards;
    transform: scale(1);
}

@keyframes colorEffect {
    0% {
        color: #fff;
    }

    100% {
        color: #000;
    }
}

@keyframes colorEffect2 {
    0% {
        color: #fff;
    }

    100% {
        color: #000;
    }
}

@keyframes maskEffect {
    0% {
        transform: translateX(-100%);
    }

    30% {
        transform: translateX(0);
    }

    40% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(101%);
    }
}

@keyframes fadeopa {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes titleBtmFade {
    0% {
        -webkit-transform: translate(0, 100%);
        transform: translate(0, 100%);
    }

    100% {
        transform: translate(0, 0);
        -webkit-transform: translate(0, 0);
    }
}

@keyframes pulseMotion {
    0% {
        transform: translate(-50%, -50%) scale(1, 1);
        background: rgba(255, 255, 255, 0.7);
    }

    100% {
        transform: translate(-50%, -50%) scale(4.8, 4.8);
        background: rgba(255, 255, 255, 0);
    }
}

.headerInnr {
    display: flex;
    min-width: 1164px;
    align-items: center;
    justify-content: space-between;
    position: fixed;
    width: 100%;
    z-index: 4;
    top: 0;
    padding: 60px 60px 0 60px;
    box-sizing: border-box;
    opacity: 1;
    transition: 0.4s;
}

.headerInnr.change-color {
    padding: 30px 60px 0 60px;
}

.headerInnr.change-color .menu__line {
    background: #000;
}

.headerBtnBox {
    display: flex;
    column-gap: 12px;
    align-items: center;
}

.headerBtnBox a {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 15px;
    border-radius: 100vw;
    width: 194px;
    height: 42px;
    letter-spacing: 0.06em;
    position: relative;
    padding-left: 26px;
    box-sizing: border-box;
    transition: 0.4s;
}

.headerBtnBox .line a:hover {
    background: #fff;
    color: #888979;
}

.headerBtnBox .line a:hover::after {
    background-image: url(../img/hhlineicon.svg);
}

.headerBtnBox .line a {
    background: #888979;
    border: solid 2px #888979;
}

.headerBtnBox .plan a {
    background: #2c2c2c;
    border: solid 2px #2c2c2c;
}

.headerBtnBox .plan a:hover {
    background: #fff;
    color: #2c2c2c;
}

.headerBtnBox .plan a:hover::after {
    background-image: url(../img/hhplan.svg);
}

.headerBtnBox .line a::after {
    content: "";
    position: absolute;
    background-image: url(../img/hlineicon.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 18px;
    transition: 0.4s;
    height: 18px;
    left: 23px;
    top: 10px;
}

.headerBtnBox .plan a::after {
    content: "";
    transition: 0.4s;
    position: absolute;
    background-image: url(../img/hplan.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 14px;
    height: 13px;
    left: 37px;
    top: 12px;
}

.humFlow .menu__line--bottom {
    display: none;
}

.hero video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero {
    position: relative;
    height: var(--viewport-height);
    padding: 12px 12px;
}

.hero::after {
    content: "";
    position: absolute;
    background: rgba(10, 24, 38, 0.33);
    right: 12px;
    top: 12px;
    bottom: 12px;
    left: 12px;
}

header .LBox {
    position: fixed;
    width: 100%;
    right: 160px;
    margin: 0 auto;
}

.headerBtnBox {
    justify-content: end;
}

.menu {
    height: 14px;
    position: absolute;
    right: -96px;
    top: 15px;
    cursor: pointer;
    width: 64px;
    z-index: 99;
}

.menu__line {
    height: 2px;
}

.menu__line--center {
    width: 65%;
    top: auto;
    bottom: 0;
}

.hero .mainTExtBox {
    position: absolute;
    bottom: 14%;
    left: 6%;
    z-index: 1;
}

.hero .subCopy {
    font-size: 15px;
    font-weight: 400;
    color: #fff;
}

.hero .mainEN {
    text-transform: uppercase;
    color: #fff;
    font-size: 82px;
    margin-bottom: 29px;
    line-height: 97px;
}

.hero.scrollin h2 span {
    webkit-clip-path: inset(0);
    clip-path: inset(0);
}

.hero h2 span {
    line-height: 1;
    font-size: 18px;
    font-weight: 600;
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
    background: #fff;
    display: inline-block;
    padding: 5px 7px 6px 9px;
    transition-delay: 0.1s;
    margin-bottom: 11px;
}

.hero h2 {
    margin-bottom: 20px;
}

.scroll {
    position: absolute;
    right: 60px;
    text-transform: uppercase;
    bottom: 88px;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0;
    font-size: 12px;
    writing-mode: vertical-rl;
    z-index: 1;
    padding-bottom: 12px;
}

.scroll::before {
    animation: scroll 3s infinite;
    background-color: rgb(175, 175, 175);
    bottom: -76px;
    content: "";
    height: 76px;
    left: -3px;
    margin: auto;
    position: absolute;
    right: 0;
    width: 1px;
    z-index: 2;
}

/* 線の背景色 */
.scroll::after {
    background-color: #fff;
    bottom: -76px;
    content: "";
    height: 76px;
    left: -3px;
    margin: auto;
    position: absolute;
    right: 0;
    width: 1px;
}

/* 線のアニメーション */
@keyframes scroll {
    0% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }

    50% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }

    51% {
        transform: scale(1, 1);
        transform-origin: 0 100%;
    }

    100% {
        transform: scale(1, 0);
        transform-origin: 0 100%;
    }
}

.textAnime span {
    display: inline-block;
    transform: translate(0, 101%);
    transition: transform 1.2s cubic-bezier(0.36, 0.14, 0, 1);
    opacity: 0;
    -webkit-transform: translate3d(0, 0.2em, 0);
    transform: translate3d(0, 0.2em, 0);
    transition: 400ms;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform;
}

.textAnime.-visible span {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.textAnime span:nth-child(2) {
    transition-delay: 50ms;
}

.textAnime span:nth-child(3) {
    transition-delay: 100ms;
}

.textAnime span:nth-child(4) {
    transition-delay: 150ms;
}

.textAnime span:nth-child(5) {
    transition-delay: 200ms;
}

.textAnime span:nth-child(6) {
    transition-delay: 250ms;
}

.textAnime span:nth-child(7) {
    transition-delay: 300ms;
}

.textAnime span:nth-child(8) {
    transition-delay: 350ms;
}

.textAnime span:nth-child(9) {
    transition-delay: 400ms;
}

.textAnime span:nth-child(10) {
    transition-delay: 450ms;
}

.textAnime span:nth-child(11) {
    transition-delay: 500ms;
}

.textAnime span:nth-child(12) {
    transition-delay: 650ms;
}

.textAnime span:nth-child(13) {
    transition-delay: 700ms;
}

.textAnime span:nth-child(14) {
    transition-delay: 750ms;
}

.textAnime span:nth-child(15) {
    transition-delay: 800ms;
}

.textAnime span:nth-child(16) {
    transition-delay: 850ms;
}

.textAnime span:nth-child(17) {
    transition-delay: 900ms;
}

.textAnime span:nth-child(18) {
    transition-delay: 950ms;
}

.textAnime span:nth-child(19) {
    transition-delay: 1000ms;
}

.textAnime span:nth-child(20) {
    transition-delay: 1050ms;
}

.pickup {
    margin-top: 71px;
    padding: 0 80px;
    margin-bottom: 100px;
}

.pickup .pickupInner {
    max-width: 1300px;
    margin: 0 auto;
    padding: 51px 80px;
    box-sizing: border-box;
    position: relative;
    border: solid 1px rgba(112, 112, 112, 0.27);
}

.pickup .pickupInner::after {
    content: "";
    position: absolute;
    background-image: url(../img/picup.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 143px;
    height: 33px;
    right: 0;
    left: 0;
    margin: 0 auto;
    top: -18px;
}

.pickup .pickupInner a {
    display: flex;
    align-items: center;
    column-gap: 65px;
    transition: 0.4s;
    position: relative;
}

.pickup .pickupInner a:hover h4 {
    opacity: 0.5;
}

.pickup .pickupInner a::after {
    content: "";
    position: absolute;
    background-image: url(../img/pickarrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 15px;
    height: 16px;
    right: 0px;
    top: 17px;
}

.pickup .pickupInner .catBox {
    display: flex;
    align-items: center;
    column-gap: 17px;
}

.pickup .pickupInner .catBox .cat {
    background: #000;
    color: #fff;
    font-size: 14px;
    border-radius: 100vw;
    line-height: 1;
    padding: 8px 26px 10px 26px;
    letter-spacing: 0.03em;
}

.pickup .pickupInner .catBox .day {
    font-size: 12px;
    line-height: 1;
    letter-spacing: 0.03em;
}

.pickup .pickupInner h4 {
    text-decoration: underline;
    transition: 0.4s;
    font-size: 18px;
}

.commonTitle h3 .jaTitle {
    font-size: 14px;
    letter-spacing: 0.06em;
    font-weight: 500;
    margin-bottom: 0;
    display: block;
}

.commonTitle .des {
    margin-top: 19px;
    font-weight: 400;
    font-size: 15px;
}

.commonTitle h3 .enTitle {
    font-size: 53px;
    font-weight: 500;
    text-transform: uppercase;
}

#event {
    padding: 0 80px;
    margin-bottom: 100px;
}

#event .eventInner {
    max-width: 1300px;
    margin: 0 auto;
}

#event .flex {
    display: flex;
    column-gap: 2%;
    margin-top: 38px;
    flex-wrap: wrap;
}

#event .flex a {
    display: block;
    transition: 0.4s;
    width: 32%;
}

#event .flex a:hover {
    opacity: 0.6 !important;
}

#event .flex a:hover .imgBox img {
    transform: scale(1.04);
}

#event .flex a .imgBox {
    border-radius: 6px;
    margin-bottom: 33px;
}

#event .flex a .imgBox img {
    width: 100%;
    border-radius: 6px;
    aspect-ratio: 526 / 326;
    object-fit: cover;
    height: auto;
}

#event .catBox {
    display: flex;
    column-gap: 3px;
    margin-bottom: 26px;
}

#event .catBox span {
    display: inline-block;
    background: #888979;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1px;
    padding: 11px 13px;
    border-radius: 100vw;
    letter-spacing: 0.03em;
}

#event h4 {
    font-weight: 600;
    margin-bottom: 39px;
    font-size: 22px;
    text-decoration: underline;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#event ul {
    list-style: none;
}

#event ul li {
    position: relative;
    padding-left: 24px;
    font-size: 14px;
    font-weight: 400;
    line-height: 21px;
    letter-spacing: 0.03em;
    margin-bottom: 10px;
}

#event ul li:first-child::after {
    content: "";
    position: absolute;
    background-image: url(../img/map.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 20px;
    left: 0;
    top: 0;
}

#event ul li:nth-child(2)::after {
    content: "";
    position: absolute;
    background-image: url(../img/calendar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 20px;
    left: 0;
    top: 0;
}

#event ul li:nth-child(3)::after {
    content: "";
    position: absolute;
    background-image: url(../img/time.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 20px;
    left: 0;
    top: 0;
}

body.open .menu__line--center {
    width: 100%;
    bottom: 5px;
}

.busy {
    padding: 100px 80px 60px 80px;
    background-position: center;
    background-repeat: repeat;
    background-image: url(../img/gBg.png);
}

.busyInner {
    max-width: 1084px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

.busy .mainTitle {
    text-align: center;
    margin-bottom: 58px;
}

.busy .mainTitle .enFont {
    text-transform: uppercase;
    font-size: 12px;
    margin-bottom: 36px;
    font-weight: 500;
    letter-spacing: 0.1em;
}

.busy .mainTitle .jaTItle {
    font-size: 20px;
    line-height: 40px;
    font-weight: 600;
}

.busy .pcbusy {
    text-align: center;
    margin-bottom: 80px;
}

.busy .pcbusy img {
    width: 100%;
}

.busy .read {
    font-size: 25px;
    line-height: 68px;
    font-weight: 600;
    text-align: center;
}

.busy .read span {
    display: inline-block;
    text-decoration: underline;
}

.busy .vBox p {
    writing-mode: vertical-rl;
    font-weight: 600;
    font-feature-settings: initial;
    letter-spacing: 0.1em;
}

.busy .vBox {
    writing-mode: vertical-rl;
    position: absolute;
    right: 0;
    bottom: -39%;
    z-index: 1;
}

.busy .vBox span {
    display: inline-block;
    background: #fff;
    font-size: 24px;
    margin-left: 9px;
    padding: 5px 7px 5px 6px;
    padding-top: 9px;
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0);
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
}

.busy .vBox.scrollin span {
    webkit-clip-path: inset(0);
    clip-path: inset(0);
}

.scroll-infinity__wrap {
    display: flex;
    overflow: hidden;
}

.scroll-infinity__list {
    display: flex;
    list-style: none;
    padding: 0;
}

.scroll-infinity__list--left {
    animation: infinity-scroll-left 80s infinite linear 0.5s both;
}

.scroll-infinity__item {
    width: 732px;
}

.scroll-infinity__item > img {
    width: 100%;
    object-fit: cover;
    height: auto;
}

.scroll-infinity {
    position: relative;
}

@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

.scroll-infinity {
    position: relative;
}

#concept {
    padding: 130px 0 80px 0;
    background-position: center;
    background-repeat: repeat;
    background-image: url(../img/gBg.png);
}

#concept .commonTitle {
    text-align: center;
    margin-bottom: 170px;
}

.spBr {
    display: none;
}

.commonTitle .subTitle {
    font-size: 29px;
    margin-top: 47px;
    font-weight: 600;
    letter-spacing: 0.1em;
}

#concept .flex {
    display: flex;
    column-gap: 6%;
    align-items: center;
    position: relative;
    z-index: 1;
    max-width: 1800px;
    margin: 0 auto;
    padding: 0 80px;
}

#concept .imgBox img {
    width: 100%;
}

#concept .imgBox {
    width: 60%;
}

#concept .textBox {
    width: 40%;
}

#concept .textBox .enTitle {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.06em;
    margin-bottom: 90px;
}

#concept .des {
    font-size: 20px;
    margin-bottom: 34px;
    line-height: 40px;
    font-weight: 600;
}

#concept .flexWrap {
    position: relative;
}

#concept .flexWrap::after {
    content: "";
    position: absolute;
    background: #fff;
    right: 34%;
    top: -82px;
    left: 0;
    bottom: -82px;

    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 1.4s cubic-bezier(0.36, 0.14, 0, 1);
}

#concept .flexWrap.scrollin::after {
    transform: scaleX(1);
    /* 幅100%に伸ばす */
}

.blogo {
    opacity: 0;
    transform: translate(0, 14px);
}

.blogo {
    opacity: 0;
    transform: translate(0, 14px);
}

.headerInnr.change-color .blogo {
    opacity: 1;
    transform: translate(0);
}

.headerInnr.change-color .wlogo {
    opacity: 0;
    display: none;
}

.commonBtn a {
    display: flex;
    align-items: center;
    color: #fff;
    position: relative;
    border-radius: 100vw;
    width: 269px;
    height: 67px;
    background: #000;
    padding: 0 35px;
    box-sizing: border-box;
    letter-spacing: 0.08em;
    transition: 0.4s;
    border: solid 1px #000;
    font-size: 15px;
}

.commonBtn a:hover {
    background: #fff;
    color: #000;
}

.commonBtn .arrowLink {
    content: "";
    position: absolute;
    top: 18px;
    right: 21px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #555;
    overflow: hidden;
    transition: background-color 0.5s;
}

.commonBtn .arrowLink::before,
.commonBtn .arrowLink::after {
    content: "";
    position: absolute;
    top: 11px;
    right: 10px;
    width: 9px;
    height: 9px;
    background: url(../img/btnArrow.svg) 0 0 no-repeat;
    background-size: cover;
    z-index: 3;
}

.commonBtn .arrowLink::after {
    transform: translateX(-38px);
}

.commonBtn a:hover .arrowLink {
    background: #222;
}

.commonBtn a:hover .arrowLink::before {
    animation: befobtn 0.5s cubic-bezier(0.36, 0.14, 0, 1);
}

.commonBtn a:hover .arrowLink::after {
    animation: afterbtn 0.5s cubic-bezier(0.36, 0.14, 0, 1);
}

@keyframes befobtn {
    0% {
        transform: translateX(0);
        opacity: 1;
    }

    100% {
        transform: translateX(38px);
        opacity: 0;
    }
}

@keyframes afterbtn {
    0% {
        transform: translateX(-38px);
        opacity: 0;
    }

    100% {
        transform: translateX(0);
        opacity: 1;
    }
}

#plan {
    padding: 94px 80px;
}

#plan .commonTitle {
    text-align: center;
}

#plan .flex {
    display: flex;
    flex-wrap: wrap;
    max-width: 1100px;
    gap: 116px 0;
    margin: 0 auto;
    justify-content: space-between;
}

#plan .flex > div {
    width: 47%;
    position: relative;
}

.planicon {
    position: absolute;
    top: -43px;
    right: 0;
}

#plan .flex > div:nth-child(2n) {
    margin-top: 80px;
}

#plan .flex .imgBox img {
    width: 100%;
}

#plan .flexWrap {
    background-position: center;
    border-radius: 16px;
    padding: 140px 40px;
    box-sizing: border-box;
    background-repeat: repeat;
    position: relative;
    margin-top: 68px;
    background-image: url(../img/gBg.png);
}

#plan .flexWrap .puplan {
    position: absolute;
    right: 0;
    left: 0;
    margin: 0 auto;
    top: -29px;
    z-index: 1;
    text-align: center;
}

#plan .flex h4 {
    text-decoration: underline;
    font-size: 20px;
    font-weight: 600;
    margin-top: 26px;
}

#plan .commonBtn a {
    margin: 0 auto;
}

#plan .commonBtn {
    margin-top: -32px;
}

.hLogo img {
    width: 260px;
}

.hLogo {
    position: relative;
    z-index: 99999;
    transition: 0.4s;
}

.open .hLogo {
    opacity: 0;
}

.loopSlideWrap {
    margin-top: 50px;
    overflow: hidden;
}

.loopSlide {
    display: flex;
    width: 100vw;
    height: 94px;
    position: relative;
}

.loopSlide img {
    width: auto;
    height: 100%;
}

.loopSlide img:first-child {
    animation: slide1 120s -60s linear infinite;
}

.loopSlide img:last-child {
    animation: slide2 120s linear infinite;
}

@keyframes slide1 {
    0% {
        transform: translateX(-100%);
    }

    100% {
        transform: translateX(100%);
    }
}

@keyframes slide2 {
    0% {
        transform: translateX(-200%);
    }

    100% {
        transform: translateX(0%);
    }
}

@keyframes slide1-reverse {
    0% {
        transform: translateX(100%);
    }

    100% {
        transform: translateX(-100%);
    }
}

@keyframes slide2-reverse {
    0% {
        transform: translateX(0%);
    }

    100% {
        transform: translateX(-200%);
    }
}

.udCtaLoop .loopSlide img:first-child {
    animation: slide1-reverse 120s -60s linear infinite;
}

.udCtaLoop .loopSlide img:last-child {
    animation: slide2-reverse 120s linear infinite;
}

#idea {
    position: relative;
    margin-top: 190px;
}

#idea .mainBox {
    text-align: center;
    top: 80px;
    position: relative;
}

#idea .mainBox h3 {
    font-size: 36px;
    font-weight: 600;
    margin-bottom: 30px;
}

#idea .mainBox .subTitle {
    font-size: 20px;
    text-decoration: underline;
    font-weight: 300;
    letter-spacing: 0.06em;
}

#idea .mainBox .slash {
    margin: 40px 0 30px 0;
}

#idea .mainBox .des {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 39px;
    line-height: 46px;
}

#idea .mainBox .commonBtn a {
    margin: 0 auto;
}

.ideaimg01 {
    position: absolute;
    left: 0;
    top: -23%;
}

.ideaimg01 img {
    width: 30vw;
    height: 818px;
    object-position: 50% 26%;
    object-fit: cover;
}

.ideaimg02 {
    position: absolute;
    right: 0;
    top: 25%;
    text-align: right;
}

.ideaimg02Inner {
    position: relative;
}

.ideaimg02Inner > div:first-child img {
    width: 20vw;
}

.ideaimg02Inner > div:last-child img {
    width: 14vw;
}

.ideaimg02Inner > div:last-child {
    text-align: left;
    margin-left: -140px;
    margin-top: -70px;
}

.otCta {
    margin-top: 24vw;
    margin-bottom: 130px;
}

.otCta .otCtaInner {
    display: flex;
    align-items: center;
    column-gap: 73px;
    max-width: 1200px;
    margin: 0 auto;
    border-radius: 6px;
    border: solid 1px hsl(0deg 0% 44% / 60%);
    box-shadow: 20px 20px 70px rgba(5, 18, 26, 0.05);
    position: relative;
}

.otCta .imgBox img {
    width: 100%;
    height: 364px;
    border-radius: 6px 0 0 6px;
    object-fit: cover;
}

.otCta .imgBox {
    width: 48%;
    border-radius: 6px 0 0 6px;
}

.otCta .ttextBox {
    width: 52%;
}

.otCta .sodanicon {
    position: absolute;
    top: -88px;
    left: 150px;
}

.otCta .otCtaInner h3 {
    font-size: 32px;
    font-weight: 600;
    margin-bottom: 28px;
}

.otCta .otCtaInner .des {
    font-size: 20px;
    letter-spacing: 0.03em;
    font-weight: 400;
    line-height: 38px;
    margin-bottom: 25px;
}

#news {
    background: #2b3035;
    padding: 130px 0;
    color: #fff;
}

#news .swiper-slide a {
    transition: 0.4s;
}

#news .swiper-slide a .imgBox {
    overflow: hidden;
}

#news .swiper-slide a:hover .imgBox img {
    transform: scale(1.04);
}

#news .titleWrap {
    padding: 0 80px;
}

#news .commonTitle {
    text-align: center;
}

#news .subTItle {
    text-align: center;
    font-size: 20px;
    line-height: 40px;
    font-weight: 300;
    margin-top: 25px;
}

#news .newsdarrow {
    text-align: center;
    margin-bottom: 90px;
}

#news .imgBox {
    border-radius: 6px;
}

#news .imgBox img {
    width: 100%;
    border: solid 5px #fff;
    border-radius: 6px;
    transition: 0.75s cubic-bezier(0.36, 0.14, 0, 1);
    box-sizing: border-box;
    aspect-ratio: 526 / 326;
    object-fit: cover;
    height: auto;
}

#news .catBox {
    display: flex;
    align-items: center;
    margin-top: 28px;
    column-gap: 18px;
}

#news .catBox span {
    display: inline-block;
}

#news .catBox .cat {
    background: #fff;
    color: #000;
    font-size: 14px;
    border-radius: 100vw;
    line-height: 1;
    padding: 8px 12px 10px 12px;
    letter-spacing: 0.03em;
}

#news .catBox .day {
    font-size: 14px;
    letter-spacing: 0;
    opacity: 0.5;
    color: #fff;
}

#news h4 {
    font-size: 22px;
    line-height: 40px;
    text-decoration: underline;
    color: #fff;
    margin-top: 27px;
    font-weight: 500;
}

#news .swiper {
    overflow: hidden;
}

#news .swiper-wrapper {
    margin-bottom: 131px;
    padding-left: 40px;
}

#news .swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width,
            var(--swiper-pagination-bullet-size, 9px));
    height: var(--swiper-pagination-bullet-height,
            var(--swiper-pagination-bullet-size, 9px));
    background: var(--swiper-pagination-bullet-inactive-color, #fff);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

#news .swiper-pagination-bullet-active {
    background: #ffffff;
    opacity: 1;
}

#news .commonBtn {
    margin-top: 21px;
}

#news .commonBtn a {
    margin: 0 auto;
}

#instagram {
    padding: 130px 80px 60px 80px;
}

#instagram .commonTitle {
    text-align: center;
}

#instagram .mainBox {
    max-width: 1300px;
    margin: 0 auto;
    margin: 52px auto;
    flex-wrap: wrap;
    display: flex;
    gap: 42px 0;
    justify-content: space-between;
}

#instagram .mainBox > div {
    width: 23%;
}

#instagram .mainBox img {
    width: 100%;
}

#instagram .commonBtn a {
    margin: 0 auto;
}

#qa {
    padding: 100px 80px 130px 80px;
}

#qa .qaInner {
    padding: 68px 80px;
    background-position: center;
    background-repeat: repeat;
    background-image: url(../img/gBg.png);
    border-radius: 16px;
}

#qa .commonTitle {
    text-align: center;
}

#qa .subTItle {
    text-align: center;
    font-size: 20px;
    line-height: 40px;
    font-weight: 300;
    margin-top: 25px;
    margin-bottom: 76px;
}

.accordion-title {
    background: #ffffff;
    font-size: 18px;
    display: flex;
    color: #000000;
    letter-spacing: 0.06em;
    font-weight: 600;
    cursor: pointer;
    border-radius: 3px;
    padding: 30px 61px 30px 30px;
    transition: 0.4s;
    position: relative;
}

.accordion-item {
    max-width: 940px;
    margin: 0 auto;
    margin-bottom: 12px;
}

.accordion-title.open::after,
.accordion-title.open::before {
    background-color: #fff;
}

.accordion-title.open::before {
    transform: rotate(90deg) !important;
}

.accordion-title::after,
.accordion-title::before {
    content: "";
    position: absolute;
    right: 39px;
    top: 34px;
    width: 3px;
    height: 19px;
    background-color: #000000;
    transition: all 0.3s;
}

.accordion-title .enFont {
    font-size: 38px;
    margin-right: 20px;
    font-weight: 500;
    margin-top: -3px;
    display: block;
    color: #000;
}

.accordion-content {
    display: none;
    background: #ebeced;
    padding: 30px 30px;
    border-radius: 0 0 3px 3px;
}

.accordion-content p {
    display: flex;
    font-weight: 400;
}

.accordion-title::after {
    transform: rotate(90deg);
}

.accordion-title.open {
    background: #363636;
    color: #fff;
}

.accordion-title.open .enFont {
    color: #fff;
}

.accordion-content .enFont {
    font-size: 38px;
    margin-right: 20px;
    color: #000;
    font-weight: 500;
    display: block;
}

#qa .commonBtn {
    margin-top: 40px;
}

#qa .commonBtn a {
    margin: 0 auto;
}

#contact .commonTitle {
    text-align: center;
}

#contact .subTItle {
    text-align: center;
    font-size: 20px;
    line-height: 40px;
    font-weight: 300;
    margin-top: 25px;
}

#contact .flex {
    display: flex;
    position: relative;
}

#contact .pccircletop {
    position: absolute;
    top: -1px;
    z-index: 1;
    width: 100%;
}

#contact .pccirclebt {
    position: absolute;
    bottom: -1px;
    z-index: 1;
    width: 100%;
}

#contact .flex > a {
    width: 50%;
    display: block;
    position: relative;
    transition: 0.4s;
}

#contact .contaCircle img {
    width: 100%;
}

#contact .flex > a:hover .imgBox img {
    transform: scale(1.04);
}

#contact .flex > a::after {
    transition: 0.4s;
}

#contact .flex > a:hover::after {
    opacity: 0.7;
}

#contact a.lineBox::after {
    content: "";
    position: absolute;
    background: rgba(43, 44, 30, 0.66);
    right: 0;
    top: 0;
    left: 0;
    bottom: 0;
}

#contact a.reserveBox::after {
    content: "";
    position: absolute;
    background: rgba(17, 50, 78, 0.66);
    right: 0;
    top: 0;
    left: 0;
    bottom: 0;
}

#contact .textBox {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) translateZ(0);
    transform: translate(-50%, -50%) translateZ(0);
    text-align: center;

    z-index: 2;
    color: #fff;
}

#contact h4 {
    font-weight: 500;
    font-size: 26px;
    letter-spacing: 0.06em;
    margin-bottom: 8px;
}

#contact .textBox p {
    font-size: 20px;
    letter-spacing: 0.06em;
    display: inline-block;
    position: relative;
    font-weight: 300;
}

#contact .textBox p::after {
    content: "";
    position: absolute;
    background: #fff;
    width: 100%;
    height: 1px;
    right: 0;
    left: 0;
    bottom: 2px;
}

#contact .flex .imgBox {
    overflow: hidden;
}

#contact .flex .imgBox img {
    width: 100%;
    transition: 0.75s cubic-bezier(0.36, 0.14, 0, 1);
}

#contact .arrowLink {
    content: "";
    position: absolute;
    bottom: 90px;
    right: 44px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #fff;
    overflow: hidden;
    transition: background-color 0.5s;
    z-index: 2;
}

#contact .arrowLink::before,
#contact .arrowLink::after {
    content: "";
    position: absolute;
    top: 11px;
    right: 10px;
    width: 9px;
    height: 9px;
    background: url(../img/barrow.svg) 0 0 no-repeat;
    background-size: cover;
    z-index: 3;
}

#contact a:hover .arrowLink::after {
    animation: afterbtn 0.5s cubic-bezier(0.36, 0.14, 0, 1);
}

#contact a:hover .arrowLink::before {
    animation: befobtn 0.5s cubic-bezier(0.36, 0.14, 0, 1);
}

#contact .arrowLink::after {
    transform: translateX(-38px);
}

footer {
    padding-bottom: 60px;
}

footer address {
    display: block;
    text-align: center;
    margin-bottom: 48px;
}

footer address p {
    font-size: 12px;
    font-style: normal;
    margin-bottom: 22px;
    margin-top: 12px;
    letter-spacing: 0.1em;
}

footer address .flex {
    display: flex;
    justify-content: center;
    column-gap: 7px;
}

footer address .flex a {
    transition: 0.4s;
}

footer address .flex a:hover {
    opacity: 0.6;
}

footer nav {
    margin-bottom: 53px;
}

footer nav ul {
    display: flex;
    list-style: none;
    justify-content: center;
    column-gap: 35px;
}

footer nav ul a {
    font-size: 15px;
    letter-spacing: 0.06em;
    font-weight: 500;
    transition: 0.4s;
}

footer nav ul a:hover {
    opacity: 0.6;
}

footer .btnFlex {
    display: flex;
    column-gap: 15px;
    margin-bottom: 67px;
    justify-content: center;
}

footer .commonBtn a {
    color: #000;
    width: 208px;
    height: 58px;
    background: #fff;
    justify-content: center;
    border: solid 1px #000;
}

footer .commonBtn .arrowLink {
    right: 14px;
    background: rgba(255, 255, 255, 0);
    top: 14px;
}

footer .commonBtn .arrowLink::before,
footer .commonBtn .arrowLink::after {
    background: url(../img/barrow.svg) 0 0 no-repeat;
}

footer .commonBtn a:hover .arrowLink {
    background: rgba(255, 255, 255, 0);
}

footer .commonBtn a:hover .arrowLink::before,
footer .commonBtn a:hover .arrowLink::after {
    background: url(../img/btnArrow.svg) 0 0 no-repeat;
}

footer .commonBtn a:hover {
    background: #000;
    color: #fff;
}

.fspLine {
    height: 1px;
    max-width: 1417px;
    margin: 0 auto;
    background: #707070;
    opacity: 0.2;
    margin-bottom: 67px;
}

footer .bottmFlex {
    display: flex;
    justify-content: space-between;
    max-width: 859px;
    align-items: center;
    margin: 0 auto;
}

footer .inFlex {
    column-gap: 30px;
    display: flex;
    align-items: center;
}

footer .inFlex ul {
    column-gap: 14px;
    list-style: none;
    align-items: center;
    display: flex;
}

footer .inFlex ul a {
    font-size: 13px;
    letter-spacing: 0.06em;
    transition: 0.4s;
    font-weight: 300;
    text-decoration: underline;
}

footer .inFlex ul a:hover {
    opacity: 0.6;
}

footer .copyright p {
    font-size: 12px;
    letter-spacing: 0.1em;
}

footer .pageTop a {
    font-size: 12px;
    padding-right: 8px;
    position: relative;
    letter-spacing: 0.1em;
}

footer .pageTop a::after {
    content: "";
    position: absolute;
    background-image: url(../img/pagetop.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 10px;
    height: 9px;
    right: -10px;
    top: 11px;
}

header .gnavFlex {
    display: flex;
    column-gap: 6%;
    padding-right: 6%;
    align-items: center;
}

header .gnavFlex .imgBox {
    width: 57%;
}

header .gnavFlex .imgBox img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

header .gnavFlex .textBox {
    width: 43%;
    margin-top: 6%;
}

header .gnavFlex ul a {
    display: block;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.06em;
    padding: 28px 0;
    position: relative;
    border-bottom: solid 1px rgba(112, 112, 112, 0.3);
    transition: 0.4s;
}

header .gnavFlex ul a:hover {
    opacity: 0.5;
}

header .gnavFlex ul a::after {
    content: "";
    position: absolute;
    font-size: 10px;
    right: 0;
    top: 29px;
    opacity: 0.5;
    font-family: "Syncopate", sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    font-style: normal;
}

header .gnavFlex ul li:nth-child(1) a::after {
    content: "ABOUT";
}

header .gnavFlex ul li:nth-child(2) a::after {
    content: "concept";
}

header .gnavFlex ul li:nth-child(3) a::after {
    content: "reserve";
}

header .gnavFlex ul li:nth-child(4) a::after {
    content: "idea";
}

header .gnavFlex ul li:nth-child(5) a::after {
    content: "Plan";
}

header .gnavFlex ul li:nth-child(6) a::after {
    content: "family";
}

header .gnavFlex ul li:nth-child(7) a::after {
    content: "news";
}

header .hmBtnBox {
    margin-top: 80px;
}

header .hmBtnBox a:first-child {
    margin-bottom: 14px;
}

header .hmBtnBox a {
    background: #fff;
    border: solid 1px #000;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 62px;
    border-radius: 100vw;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.06em;
    position: relative;
    transition: 0.4s;
}

header .arrowLink {
    content: "";
    position: absolute;
    top: 18px;
    right: 21px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgba(85, 85, 85, 0);
    overflow: hidden;
    transition: background-color 0.5s;
}

header .arrowLink::before,
header .arrowLink::after {
    content: "";
    position: absolute;
    top: 11px;
    right: 10px;
    width: 9px;
    height: 9px;
    background: url(../img/barrow.svg) 0 0 no-repeat;
    background-size: cover;
    z-index: 3;
}

header .arrowLink::after {
    transform: translateX(-38px);
}

header .hmBtnBox a:hover .arrowLink {
    background: rgba(34, 34, 34, 0);
}

header .hmBtnBox a:hover .arrowLink::before {
    animation: befobtn 0.5s cubic-bezier(0.36, 0.14, 0, 1);
    background: url(../img/btnArrow.svg) 0 0 no-repeat;
}

header .hmBtnBox a:hover .arrowLink::after {
    animation: afterbtn 0.5s cubic-bezier(0.36, 0.14, 0, 1);
    background: url(../img/btnArrow.svg) 0 0 no-repeat;
}

header .hmBtnBox a:hover {
    background: #000;
    color: #fff;
}

header .hmSnsBox {
    display: flex;
    justify-content: flex-end;
    column-gap: 10px;
    margin-top: 29px;
}

header .hmSnsBox a:first-child {
    margin-top: 1px;
}

.spBusy {
    display: none;
}

.hmInLogo {
    display: none;
}

.udhero {
    position: relative;
}

.udhero::after {
    content: "";
    position: absolute;
    background: rgba(0, 0, 0, 0.28);
    right: 0;
    top: 0;
    left: 0;
    bottom: 0;
}

.udhero .imgBox img {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 4.2 / 1;
}

.udhero .textBox {
    position: absolute;
    z-index: 1;
    left: 8%;
    color: #fff;
    bottom: 67px;
}

.udhero .textBox .jaTitle {
    font-size: 20px;
    margin-bottom: 3px;
    font-weight: 500;
    display: block;
}

.udhero .textBox .enTitle {
    font-size: 60px;
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.udhero .textBox h2 {
    text-align: center;
}

#udmessage {
    background-position: center;
    padding-top: 30px;
    padding-bottom: 320px;
    background-repeat: repeat;
    background-image: url(../img/hBg.png);
}

.breack {
    padding-left: 8%;
    font-size: 12px;
    letter-spacing: 0.1em;
}

.breack span span {
    opacity: 0.3;
}

.breack span a span {
    opacity: 1;
}

#udmessage .commonTitle {
    text-align: center;
    margin-top: 120px;
}

.commonUdFlex {
    display: flex;
    justify-content: space-between;
    max-width: 1400px;
    column-gap: 7%;
    margin: 0 auto;
    align-items: center;
    margin-top: 90px;
    padding: 0 40px;
}

.commonUdFlex .imgBox img {
    width: 100%;
}

.commonUdFlex h4 {
    font-size: 29px;
    font-weight: 600;
    margin-bottom: 49px;
}

.commonUdFlex h4 span:first-child {
    margin-bottom: 10px;
}

.commonUdFlex h4 span {
    display: inline-block;
    background: #fff;
    padding: 5px 9px 13px 16px;
    padding-top: 9px;
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
}

.commonUdFlex .textBox.scrollin h4 span {
    webkit-clip-path: inset(0);
    clip-path: inset(0);
}

.commonUdFlex .des {
    font-size: 18px;
    line-height: 40px;
    margin-bottom: 35px;
}

.commonUdFlex .des:last-child {
    margin-bottom: 0;
}

.udLoopBox {
    position: relative;
    margin-top: -132px;
    background-position: center;
    background-repeat: repeat;
    background-image: url(../img/gBg.png);
}

.commonUdFlex .textBox {
    width: 65%;
}

.udLoopBox .scroll-infinity__wrap {
    column-gap: 40px;
}

.udLoopBox ul {
    column-gap: 40px;
}

#commonoverFlex {
    padding: 200px 0 80px 0;
    background-position: center;
    background-repeat: repeat;
    background-image: url(../img/gBg.png);
}

#commonoverFlex .commonTitle {
    margin-bottom: 70px;
}

#commonoverFlex .flex {
    display: flex;
    column-gap: 6%;
    align-items: center;
    position: relative;
    z-index: 1;
    max-width: 1800px;
    margin: 0 auto;
    flex-direction: row-reverse;
    padding: 0 80px;
}

#commonoverFlex .imgBox img {
    width: 100%;
}

#commonoverFlex .imgBox {
    width: 55%;
}

#concept .textBox {
    width: 40%;
}

#concept .textBox .enTitle {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.06em;
    margin-bottom: 90px;
}

#commonoverFlex .des {
    font-size: 16px;
    margin-bottom: 34px;
    line-height: 40px;
    font-weight: 400;
}

#commonoverFlex .des:last-child {
    margin-bottom: 0;
}

#commonoverFlex .flexWrap {
    position: relative;
}

#commonoverFlex .flexWrap::after {
    content: "";
    position: absolute;
    background: #fcfcfc;
    right: 0;
    top: -82px;
    left: 34%;
    bottom: -82px;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 1.4s cubic-bezier(0.36, 0.14, 0, 1);
}

#commonoverFlex .flexWrap.scrollin::after {
    transform: scaleX(1);
    /* 幅100%に伸ばす */
}

#partner {
    background: #fcfcfc;
    padding: 140px 80px 130px 80px;
}

#partner h3 {
    font-size: 36px;
    font-weight: 600;
    letter-spacing: 0.12em;
    margin-bottom: 42px;
    text-align: center;
}

#partner .conBox {
    background: #fff;
    position: relative;
    border-radius: 100vw;
    padding: 38px 20px;
    text-align: center;
    border: solid 8px #888979;
    box-shadow: 20px 20px 30px rgba(0, 0, 0, 0.08);
    max-width: 1045px;
    margin: 0 auto;
}

#partner .conBox p {
    font-size: 18px;
    line-height: 36px;
    font-weight: 400;
    margin-bottom: 14px;
}

#partner .conBox p span {
    display: inline-block;
    text-decoration: underline;
}

#partner .conBox p:last-child {
    margin-bottom: 0;
}

#partner .conBox .partnerBox {
    position: absolute;
    right: 0;
    top: -130px;
}

#partner .conBox .partnerBox img {
    max-width: 210px;
    width: 100%;
}

#area {
    padding: 140px 80px;
}

#area .areaPosition {
    background-position: center;
    border-radius: 16px;
    padding: 140px 40px;
    box-sizing: border-box;
    background-repeat: repeat;
    position: relative;
    background-image: url(../img/gBg.png);
}

#area .areaPosition::after {
    content: "";
    position: absolute;
    background: #000;
    width: 1px;
    height: 94px;
    right: 0;
    bottom: -47px;
    left: 0;
    margin: 0 auto;
    text-align: center;
}

#area .areaPosition .titleBox {
    text-align: center;
    margin-bottom: 40px;
}

#area .areaPosition .titleBox h3 {
    font-size: 36px;
    letter-spacing: 0.12em;
    font-weight: 600;
}

#area .areaPosition .titleBox p {
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 30px;
}

#area .areaPosition .des {
    font-size: 18px;
    letter-spacing: 0.1em;
    margin-bottom: 40px;
    text-align: center;
}

#area .areaPosition .areBox {
    text-align: center;
}

#area .areaPosition .areBox p {
    text-align: center;
    font-size: 26px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    border: solid 1px #000;
    border-radius: 100vw;
    font-weight: 600;
    width: 222px;
    height: 47px;
    margin: 0 auto;
}

#area .areaPosition .aten {
    font-size: 14px;
    line-height: 25px;
    opacity: 0.5;
    text-align: center;
    margin-top: 20px;
}

#area .desBox {
    text-align: center;
    margin-top: 80px;
}

#area .desBox p {
    font-size: 18px;
    line-height: 49px;
    margin-bottom: 30px;
    font-weight: 500;
}

#area .desBox p:last-child {
    margin-bottom: 0;
}

#company {
    padding: 0 80px 130px 80px;
}

.companyInner {
    background-position: center;
    border-radius: 16px;
    padding: 140px 40px;
    box-sizing: border-box;
    background-repeat: repeat;
    position: relative;
    background-image: url(../img/hBg.png);
}

#company .flex {
    display: flex;
    column-gap: 8%;
    max-width: 1200px;
    margin: 0 auto;
}

#company dl {
    display: flex;
    position: relative;
    padding: 46px 0;
    border-top: 1px rgba(112, 112, 112, 0.5) solid;
}

#company dl:last-child {
    border-bottom: 1px rgba(112, 112, 112, 0.5) solid;
}

#company dl dt {
    width: 240px;
}

#company dl dd {
    width: 100%;
}

#company .conBox {
    width: 100%;
}

#company .titleBox {
    width: 415px;
}

#company .commonTitle {
    position: sticky;
    top: 41%;
}

.spcommonTitle {
    display: none;
}

.SpsubTitle {
    display: none;
}

.udCommonTitle {
    text-align: center;
    margin-top: 130px;
    padding: 0 40px;
}

.udCommonTitle .hedingBox {
    position: relative;
    display: inline-block;
}

.udCommonTitle h3 {
    font-size: 36px;
    font-weight: 600;
    letter-spacing: 0.12em;
}

.udCommonTitle .titleIcon {
    position: absolute;
    top: -91px;
    left: 48%;
}

#udmessage.story .commonTitle {
    margin-top: 60px;
}

.udSeFlex {
    display: flex;
    position: relative;
}

.udSeFlex img {
    width: 100%;
}

#udmessage.story {
    padding-bottom: 120px;
}

.udSeFlex::after {
    content: "";
    position: absolute;
    background-image: url(../img/logo.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 371px;
    height: 92px;
    z-index: 1;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
}

.subTitleBox {
    margin-bottom: 50px;
}

.subTitleBox .jaTitle {
    font-size: 29px;
    letter-spacing: 0.12em;
}

.subTitleBox .enFont {
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: -8px;
    display: block;
}

#commonoverFlex.reason .des {
    width: 496px;
}

#commonoverFlex.reason .flexWrap::after {
    background: #fff;
}

#statement {
    padding-top: 260px;
}

#statement .mainTitle {
    text-align: center;
    margin-bottom: 60px;
    position: relative;
}

#statement .mainTitle::after {
    content: "";
    position: absolute;
    background-image: url(../img/statement.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 100%;
    max-width: 1075px;
    height: 79px;
    z-index: -1;
    right: 0;
    left: 0;
    margin: 0 auto;
    top: -50px;
}

#statement .mainTitle .conTitle {
    background: #888979;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border-radius: 100vw;
    width: 302px;
    height: 40px;
    margin: 0 auto;
    margin-bottom: 20px;
    font-size: 20px;
    color: #fff;
}

#statement .mainTitle .conTitle::after {
    content: "";
    position: absolute;
    background-image: url(../img/titleArrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 8px;
    height: 9px;
    right: 0;
    left: 0;
    margin: 0 auto;
    bottom: -8px;
}

#statement .mainTitle h3 {
    font-size: 24px;
    line-height: 40px;
    font-weight: 600;
    margin-bottom: 25px;
}

#statement .mainTitle p {
    max-width: 485px;
    font-size: 16px;
    line-height: 40px;
    font-weight: 400;
    margin: 0 auto;
}

#statement .FlexWrap {
    background-position: center;
    padding: 100px 80px 140px 80px;
    background-repeat: repeat;
    background-image: url(../img/hBg.png);
}

#statement .FlexWrap .flex {
    display: flex;
    justify-content: space-between;
    max-width: 1500px;
    margin: 0 auto;
    align-items: center;
    column-gap: 6%;
}

#statement .FlexWrap .flex:last-child {
    flex-direction: row-reverse;
    margin-top: 140px;
}

#statement .FlexWrap .flex .imgBox img {
    width: 100%;
}

#statement .FlexWrap .imgBox {
    width: 52%;
}

#statement .FlexWrap .textBox {
    width: 48%;
}

#statement .namBox {
    margin-bottom: 40px;
}

#statement .namBox span {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.06em;
    background: #000;
    color: #fff;
    text-transform: uppercase;
    border-radius: 100vw;
    padding: 5px 14px 7px 14px;
    line-height: 1;
}

#statement .FlexWrap h4 {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 40px;
    letter-spacing: 0.12em;
}

#statement .FlexWrap ul {
    list-style: none;
    margin-bottom: 40px;
}

#statement .FlexWrap ul li {
    position: relative;
    padding-left: 40px;
    font-weight: 500;
    margin-bottom: 20px;
    font-size: 16px;
}

#statement .FlexWrap ul li::after {
    content: "";
    position: absolute;
    background-image: url(../img/crnam01.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 29px;
    height: 29px;
    left: 0;
    top: 0;
}

#statement .FlexWrap ul li:nth-child(2)::after {
    background-image: url(../img/crnam02.svg);
}

#statement .FlexWrap ul li:nth-child(3)::after {
    background-image: url(../img/crnam03.svg);
}

#statement .FlexWrap ul li:last-child {
    margin-bottom: 0;
}

#statement .FlexWrap .desBox {
    padding-top: 30px;
    border-top: solid 1px rgba(0, 0, 0, 0.19);
}

#statement .FlexWrap .desBox .des {
    font-size: 16px;
    line-height: 40px;
    max-width: 485px;
    margin-bottom: 16px;
}

#statement .FlexWrap .desBox .des:last-child {
    margin-bottom: 0;
}

#udCta {
    margin-top: 160px;
    padding-bottom: 120px;
    margin-bottom: 120px;
    border-bottom: solid 1px rgba(136, 137, 121, 0.3);
}

#udCta .textBox {
    text-align: center;
    position: relative;
    margin-top: -29px;
    padding: 0 30px;
}

#udCta .textBox h3 {
    font-size: 36px;
    font-weight: 600;
    letter-spacing: 0.12em;
    margin-bottom: 28px;
    line-height: 58px;
}

#udCta .textBox .des {
    font-size: 16px;
    line-height: 30px;
    margin-bottom: 19px;
}

#udCta .circleAww {
    margin-bottom: 24px;
}

#udCta .commonBtn a {
    margin: 0 auto;
}

#udCta .commonBtn a {
    background: #888979;
    border: solid 1px #888979;
}

#udCta .commonBtn a:hover {
    background: #fff;
    color: #252525;
}

#udCta .loopSlide {
    height: 117px;
}

.reservationOp {
    margin-top: 30px;
}

.reservationOp .udCommonTitle .titleIcon {
    left: 35%;
}

.udCommonTitle .desBox {
    margin-top: 35px;
}

.udCommonTitle .desBox .des {
    font-size: 18px;
    line-height: 40px;
    margin-bottom: 20px;
}

.udCommonTitle .desBox .des:last-child {
    margin-bottom: 0;
}

.reservFlexImg {
    padding: 0 12px;
    margin-top: 90px;
    display: flex;
    column-gap: 12px;
    justify-content: space-between;
}

.reservFlexImg > div {
    width: 50%;
}

.reservFlexImg img {
    width: 100%;
    object-fit: cover;
    height: 390px;
}

#recommend {
    padding: 0 80px;
    margin-bottom: 120px;
    margin-top: -80px;
}

.recommendInner {
    padding: 160px 80px 90px 80px;
    background-position: center;
    background-repeat: repeat;
    background-image: url(../img/gBg.png);
    border-radius: 16px;
}

#recommend .titleBox {
    text-align: center;
}

#recommend .titleBox h3 {
    font-size: 26px;
    font-weight: 500;
}

#recommend ul {
    background: #fff;
    max-width: 648px;
    margin: 0 auto;
    list-style: none;
    border-radius: 36px;
    margin-top: 26px;
    box-sizing: border-box;
    padding: 50px 38px;
}

#recommend ul li {
    font-weight: 700;
    text-decoration: underline;
    font-size: 18px;
    margin-bottom: 20px;
}

#recommend ul li:last-child {
    margin-bottom: 0;
}

#experience {
    padding: 0 80px;
    margin-bottom: 140px;
}

.experienceInner {
    max-width: 1400px;
    margin: 0 auto;
}

.experienceInner .flex {
    display: flex;
    justify-content: space-between;
}

.experienceInner .des {
    font-size: 18px;
    line-height: 36px;
}

.experienceInner .inFlex img {
    width: 100%;
}

.experienceInner .flex .inTextBox .nam {
    display: inline-block;
    background: #888979;
    color: #fff;
    border-radius: 100vw;
    line-height: 1;
    letter-spacing: 0.06em;
    padding: 1px 12px 6px 14px;
    margin-bottom: 52px;
}

.experienceInner .flex .inTextBox .nam span {
    display: inline-block;
    text-transform: uppercase;
    font-size: 12px;
}

.experienceInner .textBox > div {
    position: sticky;
    top: 41%;
}

.experienceInner .textBox {
    width: 82%;
}

.experienceInner .conBox {
    widows: 60%;
}

.experienceInner .commonTitle {
    margin-bottom: 60px;
}

.experienceInner .flex .inFlex {
    display: flex;
    column-gap: 60px;
    align-items: center;
    margin-bottom: 71px;
}

.experienceInner .flex .inFlex:last-child {
    margin-bottom: 0;
}

.experienceInner .flex .inFlex .imgBox {
    width: 54%;
}

.experienceInner .flex .inFlex .inTextBox {
    width: 50%;
}

#flow {
    margin-bottom: 60px;
    padding: 0 80px;
}

#flow .flowInner::after {
    content: "";
    position: absolute;
    background: #000;
    width: 274px;
    height: 13px;
    right: 0;
    border-radius: 0 0 180px 180px;
    left: 0;
    margin: 0 auto;
    top: 0;
}

#flow .flowInner {
    background-position: center;
    border-radius: 16px;
    padding: 90px 40px 65px 40px;
    box-sizing: border-box;
    background-repeat: repeat;
    position: relative;
    background-image: url(../img/hBg.png);
}

#flow .commonTitle {
    text-align: center;
}

#flow .commonTitle {
    margin-bottom: 70px;
}

#flow .flexBox {
    margin-bottom: 60px;
}

#flow .flexBox .flex {
    display: flex;
    max-width: 544px;
    column-gap: 30px;
    margin: 0 auto;
    margin-bottom: 34px;
}

#flow .flexBox .flex:last-child {
    margin-bottom: 0;
}

#flow .flowArrow {
    text-align: center;
    margin-bottom: 34px;
}

#flow .flexBox .flex p a {
    display: inline-block;
    text-decoration: underline;
}

#flow .flexBox .flex p {
    font-size: 20px;
    font-weight: 600;
}

#flow .resTitle {
    text-align: center;
    font-size: 24px;
    font-weight: 500;
}

#flow .flex .imgBox {
    margin-top: -6px;
}

.flowLine {
    width: 100%;
    max-width: 792px;
    margin: 0 auto;
    height: 1px;
    background-image: repeating-linear-gradient(to right,
            #acacac,
            #acacac 5px,
            /* ダッシュの長さ */
            transparent 5px,
            transparent 10px
            /* ダッシュの間隔 */
        );
    margin-bottom: 50px;
}

#flow .des {
    text-align: center;
    font-size: 16px;
    margin-bottom: 20px;
}

#flow ul {
    column-gap: 4px;
    display: flex;
    justify-content: center;
    margin-bottom: 54px;
    list-style: none;
}

#flow ul li {
    background: #fff;
    letter-spacing: 0.03em;
    border-radius: 100vw;
    border: solid 1px #000;
    font-size: 14px;
    line-height: 1;
    padding: 6px 15px 8px 15px;
}

#flow .commonBtn {
    position: relative;
    z-index: 1;
    margin-top: -34px;
}

#flow .commonBtn a {
    margin: 0 auto;
}

#udCta.resudCta {
    margin-top: 0;
}

.udQa .commonTitle {
    margin-bottom: 74px;
}

#udCta.resudCta .textBox {
    margin-top: -46px;
}

.udCommonTitle .subTitle {
    font-size: 16px;
    text-align: center;
    margin-top: 20px;
    font-weight: 400;
}

.udhero.familyHero .imgBox img {
    object-position: top;
}

.anchorBox {
    background: #2b3036;
    padding: 40px 40px;
    margin-top: 68px;
}

.anchorBox ul {
    list-style: none;
    display: flex;
    justify-content: center;
    column-gap: 90px;
    align-items: center;
}

.anchorBox ul a {
    color: #fff;
    position: relative;
    padding-bottom: 12px;
}

.anchorBox ul a::after {
    content: "";
    position: absolute;
    background-image: url(../img/ankerarrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 14px;
    height: 8px;
    right: 0;
    left: 0;
    bottom: -10px;
    margin: 0 auto;
}

.anchorBox ul span {
    display: block;
}

.anchorBox ul .nam {
    font-size: 12px;
    letter-spacing: 0.06em;
    opacity: 0.5;
    margin-bottom: 4px;
}

.anchorBox ul .title {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.06em;
}

.familyPlanBox {
    text-align: center;
    padding: 70px 0 120px 0;
    background-position: center;
    background-repeat: repeat;
    background-image: url(../img/hBg.png);
}

.familyPlanBox .opDes {
    font-size: 18px;
    line-height: 40px;
    letter-spacing: 0.06em;
    font-weight: 500;
    margin-bottom: 70px;
}

.familyPlanBox .commonFimg {
    padding: 0 8px;
}

.familyPlanBox .commonFimg img {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 4.1 / 1;
}

.familyPlanBox .commonFtitle {
    position: relative;
    margin-top: -77px;
    left: 8%;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 518px;
    background: #fff;
    box-sizing: border-box;
    box-shadow: 20px 20px 30px rgba(0, 0, 0, 0.01);
    height: 148px;
}

.familyPlanBox .commonFtitle::after {
    content: "";
    position: absolute;
    background: #000;
    width: 66px;
    height: 8px;
    left: 0;
    top: 0;
}

.familyPlanBox .commonFtitle .flex {
    display: flex;
    column-gap: 17px;
    align-items: center;
}

.familyPlanBox .commonFtitle h4 {
    font-size: 26px;
    text-decoration: underline;
    font-weight: 600;
}

.familyPlanBox .commonFtitle .imgBox {
    margin-top: -14px;
}

.familyPlanBox .conFlex {
    display: flex;
    max-width: 1050px;
    margin: 0 auto;
    column-gap: 241px;
    margin-top: 120px;
    position: relative;
}

.familyPlanBox .conFlex::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -47px;
    margin: 0 auto;
    right: 0;
    width: 1px;
    background-image: repeating-linear-gradient(to bottom,
            #acacac,
            #acacac 5px,
            transparent 5px,
            transparent 10px);
}

.familyPlanBox .conFlex > div {
    text-align: left;
}

.familyPlanBox .conFlex .imgBox {
    width: 45%;
}

.familyPlanBox .conFlex .textBox {
    width: 55%;
}

.familyPlanBox .conFlex .imgBox > div:first-child {
    margin-bottom: 33px;
}

.familyPlanBox .conFlex .imgBox img {
    width: 100%;
}

.familyPlanBox .conBox {
    margin-bottom: 70px;
}

.familyPlanBox .conBox .inFlex {
    display: flex;
    column-gap: 22px;
    align-items: center;
    margin-bottom: 24px;
}

.familyPlanBox .conBox .inFlex .time span {
    display: inline-block;
}

.familyPlanBox .conBox .inFlex .time {
    background: #fff;
    border-radius: 100vw;
    border: solid 1px #000;
    width: 91px;
    height: 18px;
    padding-bottom: 3px;
    display: flex;
    line-height: 1;
    letter-spacing: 0.06em;
    align-items: center;
    margin-top: 3px;
    justify-content: center;
}

.familyPlanBox .conBox .inFlex h5 {
    font-size: 18px;
    letter-spacing: 0.06em;
    width: 100%;
    font-weight: 600;
    text-decoration: underline;
}

.familyPlanBox .conBox .des {
    font-size: 16px;
    line-height: 30px;
    font-weight: 500;
    letter-spacing: 0.06em;
}

.familyPlanBox .easeBox {
    padding: 0 40px;
    margin-top: 120px;
}

.familyPlanBox .easeBoxInner {
    background: #d9d6c7;
    text-align: center;
    border-radius: 16px;
    padding: 0 40px 60px 40px;
    max-width: 1080px;
    margin: 0 auto;
}

.familyPlanBox .easeBoxInner h4 {
    display: inline-block;
    background: #000000;
    font-size: 22px;
    font-weight: 600;
    border-radius: 100vw;
    padding: 11px 30px 14px 30px;
    letter-spacing: 0.12em;
    line-height: 1;
    margin-top: -67px;
    color: #fff;
    top: -10px;
    margin-bottom: 43px;
    position: relative;
}

.familyPlanBox .mainP {
    margin-bottom: 48px;
}

.familyPlanBox .mainP p {
    font-size: 17px;
    line-height: 36px;
}

.familyPlanBox .mainP p span {
    font-size: 21px;
    font-weight: 600;
    text-decoration: underline;
    display: inline-block;
}

.familyPlanBox .easyIcon {
    margin-bottom: 0;
}

.familyPlanBox .easyIcon img {
    max-width: 100%;
}

.familyPlanBox .easeBoxInner .des {
    font-size: 17px;
    line-height: 36px;
    font-weight: 500;
}

.familyPlanBox .easymainImg {
    margin-top: 50px;
}

.familyPlanBox .easymainImg img {
    width: 100%;
    max-width: 650px;
}

.familyPlanBox .easyCommBox {
    background: #fff;
    border-radius: 30px;
    padding: 24px 60px;
    font-size: 17px;
    line-height: 36px;
    letter-spacing: 0.06em;
    max-width: 663px;
    box-sizing: border-box;
    margin: 0 auto;
    margin-top: 26px;
    position: relative;
}

.familyPlanBox .easyCommBox::after {
    content: "";
    position: absolute;
    background-image: url(../img/easyCommBox.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 22px;
    right: 0;
    left: 0;
    top: -18px;
    margin: 0 auto;
}

#fPlan02 {
    padding-top: 150px;
}

#fPlan03 {
    padding-top: 150px;
}

#fPlan04 {
    padding-top: 150px;
}

.familyPlanBox .imgFlexBox {
    display: flex;
    column-gap: 70px;
    align-items: center;
    max-width: 1300px;
    margin: 0 auto;
    margin-top: 120px;
    padding: 0 40px;
    box-sizing: border-box;
}

.familyPlanBox .imgFlexBox .imgBox img {
    width: 100%;
}

.familyPlanBox .imgFlexBox .imgBox {
    width: 52%;
}

.familyPlanBox .imgFlexBox .textBox {
    width: 48%;
    text-align: left;
}

.familyPlanBox .imgFlexBox h5 {
    font-weight: 600;
    line-height: 40px;
    font-size: 24px;
    margin-bottom: 50px;
    letter-spacing: 0.12em;
}

.familyPlanBox .imgFlexBox .des {
    font-size: 17px;
    line-height: 36px;
    margin-bottom: 20px;
}

.familyPlanBox .imgFlexBox .des:last-child {
    margin-bottom: 0;
}

.familyPlanBox .outdoorFlex {
    display: flex;
    max-width: 1400px;
    margin: 0 auto;
    column-gap: 159px;
    text-align: left;
    margin-top: 120px;
    padding: 0 40px;
    box-sizing: border-box;
    position: relative;
}

.familyPlanBox .outdoorFlex h5 {
    font-size: 24px;
    line-height: 40px;
    font-weight: 600;
}

.familyPlanBox .outdoorFlex ul {
    list-style: none;
}

.familyPlanBox .outdoorFlex ul li {
    position: relative;
    padding-left: 40px;
    font-weight: 500;
    margin-bottom: 20px;
    font-size: 16px;
}

.familyPlanBox .outdoorFlex ul li::after {
    content: "";
    position: absolute;
    background-image: url(../img/crnam01.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 29px;
    height: 29px;
    left: 0;
    top: 0;
}

.familyPlanBox .outdoorFlex ul li:nth-child(2)::after {
    background-image: url(../img/crnam02.svg);
}

.familyPlanBox .outdoorFlex ul li:nth-child(3)::after {
    background-image: url(../img/crnam03.svg);
}

.familyPlanBox .outdoorFlex ul li:nth-child(4)::after {
    background-image: url(../img/crnam04.svg);
}

.familyPlanBox .outdoorFlex ul li:nth-child(5)::after {
    background-image: url(../img/crnam05.svg);
}

.familyPlanBox .outdoorFlex ul li:nth-child(6)::after {
    background-image: url(../img/crnam06.svg);
}

.familyPlanBox .outdoorFlex ul li:nth-child(7)::after {
    background-image: url(../img/crnam07.svg);
}

.familyPlanBox .outdoorFlex::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -47px;
    margin: 0 auto;
    right: 0;
    width: 1px;
    background-image: repeating-linear-gradient(to bottom,
            #acacac,
            #acacac 5px,
            transparent 5px,
            transparent 10px);
}

.familyPlanBox .outdoormainImg {
    margin-top: 70px;
}

.familyPlanBox .outdoormainImg img {
    width: 100%;
    max-width: 650px;
}

.familyPlanBox .outdooCommBox {
    background: #888979;
    border-radius: 30px;
    padding: 24px 60px;
    color: #fff;
    font-size: 17px;
    line-height: 36px;
    letter-spacing: 0.06em;
    max-width: 663px;
    box-sizing: border-box;
    margin: 0 auto;
    margin-top: 26px;
    position: relative;
}

.familyPlanBox .outdooCommBox::after {
    content: "";
    position: absolute;
    background-image: url(../img/outdooCommBox.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 22px;
    right: 0;
    left: 0;
    top: -21px;
    margin: 0 auto;
}

.SPfplanill01 {
    display: none;
}

.udIdeaWrap {
    padding: 80px 0 120px 0;
    background-position: center;
    background-repeat: repeat;
    background-image: url(../img/hBg.png);
}

.udIdeaWrap .mainBoxTitle {
    text-align: center;
    margin-bottom: 90px;
}

.udIdeaWrap .mainBoxTitle h4 {
    font-size: 30px;
    letter-spacing: 0.12em;
    text-decoration: underline;
    margin-bottom: 34px;
    font-weight: 600;
}

.udIdeaWrap .mainBoxTitle p {
    font-size: 18px;
    line-height: 40px;
}

.udIdeaWrapUnner {
    max-width: 1228px;
    margin: 0 auto;
    padding: 0 40px;
    box-sizing: border-box;
}

.udIdeaWrap .ideaComFlex {
    display: flex;
    align-items: center;
    column-gap: 70px;
    margin-bottom: 70px;
}

.udIdeaWrap .ideaComFlex .imgBox img {
    width: 100%;
}

.udIdeaWrap .ideaComFlex .imgBox {
    width: 53%;
}

.udIdeaWrap .ideaComFlex .textBox {
    width: 47%;
}

.udIdeaWrap .ideaComFlex ul {
    list-style: none;
}

.udIdeaWrap .ideaComFlex ul li {
    position: relative;
    padding-left: 40px;
    font-weight: 500;
    margin-bottom: 20px;
    font-size: 16px;
    letter-spacing: 0.06em;
}

.udIdeaWrap .ideaComFlex ul li:last-child {
    margin-bottom: 0;
}

.udIdeaWrap .ideaComFlex ul li::after {
    content: "";
    position: absolute;
    background-image: url(../img/crnam01.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 29px;
    height: 29px;
    left: 0;
    top: 0;
}

.udIdeaWrap .ideaComFlex .textBox h5 {
    font-size: 24px;
    line-height: 40px;
    font-weight: 600;
}

.udIdeaWrap .ideaComFlex ul li:nth-child(2)::after {
    background-image: url(../img/crnam02.svg);
}

.udIdeaWrap .ideaComFlex ul li:nth-child(3)::after {
    background-image: url(../img/crnam03.svg);
}

.udIdeaWrap .ideaComFlex .bam span {
    display: inline-block;
}

.udIdeaWrap .ideaComFlex .bam {
    color: #fff;
    border-radius: 100vw;
    background: #000;
    width: 86px;
    height: 21px;
    padding-bottom: 3px;
    margin-bottom: 20px;
    font-size: 12px;
    display: flex;
    line-height: 1;
    letter-spacing: 0.06em;
    align-items: center;
    justify-content: center;
}

.udIdeaWrap .dataWrap {
    background: #888979;
    border-radius: 6px;
    padding: 22px 34px;
}

.udIdeaWrap .dataWrap .inFlex {
    display: flex;
    column-gap: 33px;
    align-items: center;
    color: #fff;
}

.udIdeaWrap .dataWrap .sizeBox {
    font-size: 30px;
    font-weight: 600;
}

.udIdeaWrap .dataWrap .detail {
    font-size: 13px;
    margin-top: 3px;
    letter-spacing: 0.06em;
    font-weight: 400;
}

.udIdeaWrap .dataWrap .detail span {
    display: inline-block;
    margin: 0 8px;
}

.udIdeaWrap .dataWrap .detail strong {
    font-weight: 600;
    font-size: 15px;
}

.udIdeaWrap .threePoint {
    display: flex;
    margin-top: 80px;
    justify-content: space-between;
}

.udIdeaWrap .titleBox p {
    background: #db8700;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    border-radius: 100vw;
    position: relative;
    line-height: 1;
    padding: 10px 20px;
}

.udIdeaWrap .titleBox p::after {
    content: "";
    position: absolute;
    background-image: url(../img/thrarrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 10px;
    height: 13px;
    right: -9px;
    top: 17px;
}

.udIdeaWrap .titleBox > div {
    position: sticky;
    top: 50%;
}

.udIdeaWrap .threePoint .imgBox img {
    width: 100%;
    border-radius: 6px;
    height: 218px;
    object-fit: cover;
}

.udIdeaWrap .inConBt {
    width: 75%;
}

.udIdeaWrap .threePoint .textBox p {
    font-size: 15px;
    line-height: 28px;
    font-weight: 400;
    letter-spacing: 0.06em;
}

.udIdeaWrap .threePoint .inconFlex {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 6px;
    column-gap: 32px;
    padding-right: 32px;
    margin-bottom: 20px;
}

.udIdeaWrap .threePoint .inconFlex:last-child {
    margin-bottom: 0;
}

.udIdeaWrap .threePoint .imgBox {
    width: 45%;
    border-radius: 6px;
}

.udIdeaWrap .threePoint .textBox {
    width: 55%;
}

.udIdeaWrap .threePoint h6 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 20px;
    letter-spacing: 0.06em;
}

.udIdeaWrap .threePoint .des {
    font-size: 15px;
    line-height: 28px;
    letter-spacing: 0.06em;
}

.udIdeaWrap .floorPlan {
    display: flex;
    margin-top: 40px;
    column-gap: 22px;
    padding: 30px;
    border-radius: 6px;
    background: #fff;
}

.udIdeaWrap .floorPlan > div {
    border-radius: 6px;
    width: 100%;
}

.udIdeaWrap .floorPlan img {
    border-radius: 6px;
    width: 100%;
}

.udIdeaWrap .dataWrap .title {
    font-size: 19px;
    letter-spacing: 0.06em;
    position: relative;
    margin-right: 20px;
}

.udIdeaWrap .dataWrap .title::after {
    content: "";
    position: absolute;
    background: #fff;
    width: 1px;
    height: 122%;
    right: -28px;
    top: -2px;
}

.commonIdeaImage {
    margin-top: 25px;
}

.commonIdeaImage .titleBox {
    text-align: center;
    position: relative;
    margin-bottom: 24px;
}

.commonIdeaImage .titleBox::after {
    content: "";
    position: absolute;
    background-image: url(../img/commonIdeaImagea.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 10px;
    height: 13px;
    right: 0;
    left: 0;
    margin: 0 auto;
    bottom: -12px;
}

.commonIdeaImage .titleBox h6 {
    font-size: 20px;
    color: #fff;
    background: #888979;
    border-radius: 100vw;
    padding: 8px 20px;
    display: inline-block;
    font-weight: 600;
    line-height: 1;
}

.commonIdeaImage img {
    width: 100%;
}

#idea02,
#idea03,
#idea04 {
    padding-top: 186px;
}

#udmessage .plancommonUdFlex .commonTitle {
    text-align: left;
    margin-bottom: 50px;
    margin-top: 0;
}

#udmessage .plancommonUdFlex .textBox {
    width: 81%;
}

.tokiDesBox {
    margin-top: 109px;
    text-align: center;
    margin-bottom: 90px;
}

.tokiDesBox .imgBox {
    margin-bottom: 48px;
}

.tokiDesBox .tokiTitle {
    font-size: 28px;
    font-weight: 600;
    letter-spacing: 0.12em;
    margin-bottom: 14px;
}

.tokiDesBox .name {
    font-size: 14px;
    letter-spacing: 0.06em;
    font-weight: 600;
    opacity: 0.5;
}

#udmessage.tokiM {
    margin-bottom: 0;
    padding-bottom: 140px;
}

.design .titleBox::after {
    content: "”Design features”";
    position: absolute;
    background-repeat: no-repeat;
    font-size: 89px;
    text-transform: uppercase;
    right: 0;
    font-family: mundial, sans-serif;
    left: 0;
    margin: 0 auto;
    top: -47px;
    letter-spacing: 0.1em;
    color: #888979;
    font-weight: 600;
    opacity: 0.19;
}

.design .titleBox {
    position: relative;
    margin-bottom: 70px;
    text-align: center;
}

.design .titleBox h4 {
    font-size: 33px;
    font-weight: 600;
    letter-spacing: 0.12em;
}

.design {
    margin-bottom: 130px;
}

.design .tableBox {
    text-align: center;
}

.design .tableBox img {
    max-width: 100%;
}

.tableWrap {
    max-width: 1018px;
    margin: 0 auto;
}

.spAten {
    margin-top: 20px;
    letter-spacing: 0.06em;
    font-size: 14px;
    display: none;
}

.planDline {
    margin-bottom: 105px;
}

.planDline span:first-child {
    margin-bottom: 4px;
}

.planDline span {
    width: 100%;
    height: 4px;
    display: block;
    background: #888979;
}

.plus1Img {
    text-align: center;
    margin-bottom: 20px;
}

.plus1Box .titleBox {
    text-align: center;
    margin-bottom: 77px;
}

.plus1Box .titleBox h4 {
    font-size: 29px;
    font-weight: 600;
    margin-bottom: 20px;
}

.plus1Box .titleBox .subTitle {
    font-size: 16px;
    letter-spacing: 0.1em;
}

.plus1Box .plusarrow {
    margin-bottom: 50px;
}

.plus1Box .plusarrow img {
    max-width: 100%;
}

.plus1Box .titleBox .des {
    font-size: 18px;
    font-weight: 400;
    line-height: 40px;
    margin-bottom: 30px;
}

.plus1Box .titleBox .des:last-child {
    margin-bottom: 0;
}

.plus1Box .titleBox .des span {
    display: inline-block;
    text-decoration: underline;
    font-weight: 600;
}

.plus1ListBox {
    background-position: center;
    background-repeat: repeat;
    background-image: url(../img/hBg.png);
    padding: 0 80px 120px 80px;
}

.plus1ListBoxInner {
    max-width: 1350px;
    margin: 0 auto;
}

.plus1ListBoxInner h6 {
    font-size: 18px;
    letter-spacing: 0.12em;
    font-weight: 600;
    margin-top: 26px;
    text-decoration: underline;
    margin-bottom: 10px;
}

.plus1ListBoxInner .des {
    font-size: 16px;
    line-height: 25px;
    letter-spacing: 0.06em;
}

.plus1ListBoxInner .flex img {
    width: 100%;
}

.plus1ListBoxInner .flex > div {
    width: 31.3%;
}

.plus1ListBoxInner .flex {
    display: flex;
    flex-wrap: wrap;
    margin-top: 90px;
    gap: 80px 3%;
    justify-content: space-between;
}

.plus1ListBoxInner .nam {
    background: #fff;
    border: solid 1px rgba(0, 0, 0, 0.5);
    display: inline-block;
    font-size: 16px;
    margin-bottom: 8px;
    font-weight: bold;
    padding: 3px 6px 7px 5px;
    letter-spacing: 0;
    line-height: 1;
}

.plus1ListBoxInner .mtitleBox {
    text-align: center;
    top: -15px;
    position: relative;
}

.plus1ListBoxInner .mtitleBox p {
    font-size: 20px;
    color: #fff;
    background: #888979;
    border-radius: 100vw;
    padding: 9px 20px;
    display: inline-block;
    font-weight: 600;
    line-height: 1;
}

.plus1ListBoxInner .mtitleBox::after {
    content: "";
    position: absolute;
    background-image: url(../img/commonIdeaImagea.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 10px;
    height: 13px;
    right: 0;
    left: 0;
    margin: 0 auto;
    z-index: 1;
    bottom: -12px;
}

.quality {
    padding: 120px 80px;
    background-repeat: repeat;
    position: relative;
    background-position: center;
    background-image: url(../img/gBg.png);
}

.qualityINner {
    max-width: 1350px;
    margin: 0 auto;
}

.quality .titleBox {
    text-align: center;
    margin-bottom: 70px;
}

.quality .pnTitle {
    margin-bottom: 30px;
}

.quality .pnTitle span {
    display: inline-block;
    color: #888979;
    background: #fff;
    border: solid 1px #888979;
    border-radius: 100vw;
    line-height: 1;
    padding: 2px 10px 3px 10px;
    letter-spacing: 0;
    font-weight: 600;
    font-size: 14px;
}

.quality .titleBox h5 {
    font-size: 29px;
    line-height: 50px;
    font-weight: 600;
    letter-spacing: 0.12em;
}

.quality .flex {
    display: flex;
    flex-wrap: wrap;
    gap: 80px 3%;
    margin-bottom: 140px;
}

.quality .flex > div {
    width: 22.7%;
}

.quality .flex h6 span {
    display: inline-block;
    font-size: 12px;
}

.quality .flex h6 {
    font-weight: 600;
    font-size: 16px;
    margin-top: 20px;
    letter-spacing: 0.12em;
    text-decoration: underline;
}

.quality .flex img {
    width: 100%;
}

.otherListBox {
    border: solid rgba(112, 112, 112, 0.4) 1px;
    border-radius: 6px;
    padding: 40px 40px;
    box-sizing: border-box;
    margin-bottom: 76px;
}

.otherListBox:last-child {
    margin-bottom: 0;
}

.otherListBox ul {
    background: #fff;
    border-radius: 6px;
    padding: 40px 56px;
    line-height: none;
}

.otherListBox .titleBoxs p {
    font-size: 20px;
    color: #fff;
    background: #888979;
    border-radius: 100vw;
    padding: 9px 30px;
    display: inline-block;
    font-weight: 600;
    line-height: 1;
}

.otherListBox .titleBoxs {
    text-align: center;
    margin-top: -61px;
    margin-bottom: 24px;
}

.otherListBox ul {
    display: flex;
    gap: 10px 6px;
    list-style: none;
    flex-wrap: wrap;
}

.otherListBox ul li span {
    display: inline-block;
    font-size: 12px;
}

.otherListBox ul li {
    background: #eff0f0;
    position: relative;
    font-size: 16px;
    border-radius: 6px;
    font-weight: 600;
    letter-spacing: 0.06em;
    padding: 10px 24px 10px 40px;
}

.otherListBox ul li::after {
    content: "";
    position: absolute;
    background: #888979;
    width: 9px;
    height: 9px;
    left: 19px;
    top: 20px;
    border-radius: 100vw;
}

.otherFNav {
    padding: 8px 8px 8px 9px;
}

.otherFNavInner {
    display: flex;
}

.otherFNavInner a {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 282px;
    border: solid 1px #ebebeb;
    width: 100%;
    transition: 0.4s;
    text-align: center;
    margin-left: -1px;
}

.otherFNavInner a:hover {
    background: #252525;
    color: #fff;
}

.otherFNavInner .entitle {
    text-transform: uppercase;
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0.06em;
}

.otherFNavInner .jatitle {
    font-size: 14px;
    opacity: 0.4;
    letter-spacing: 0.12em;
}

.otherFNav {
    margin-bottom: 170px;
}

.otherFNavInner .arrowLink {
    content: "";
    position: absolute;
    bottom: 24px;
    right: 21px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #000;
    overflow: hidden;
    transition: background-color 0.5s;
}

.otherFNavInner .arrowLink::before,
.otherFNavInner .arrowLink::after {
    content: "";
    position: absolute;
    top: 11px;
    right: 10px;
    width: 9px;
    height: 9px;
    background: url(../img/btnArrow.svg) 0 0 no-repeat;
    background-size: cover;
    z-index: 3;
}

.otherFNavInner .arrowLink::after {
    transform: translateX(-38px);
}

.otherFNavInner a:hover .arrowLink {
    background: #555;
}

.otherFNavInner a:hover .arrowLink::after {
    animation: afterbtn 0.5s cubic-bezier(0.36, 0.14, 0, 1);
}

.otherFNavInner a:hover .arrowLink::before {
    animation: befobtn 0.5s cubic-bezier(0.36, 0.14, 0, 1);
}

.commonPostWrap {
    background-position: center;
    background-repeat: repeat;
    background-image: url(../img/hBg.png);
    padding: 198px 0 120px 0;
    margin-bottom: 160px;
}

.commonPostWrap .textBox h2 {
    text-align: center;
    color: #000;
}

.commonPostWrap .textBox .jaTitle {
    font-size: 20px;
    margin-bottom: 3px;
    font-weight: 500;
    display: block;
}

.commonPostWrap .textBox .enTitle {
    font-size: 60px;
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.postLine {
    margin: 69px 0 30px 0;
    height: 1px;
    box-sizing: border-box;
    width: 100%;
    background: rgba(112, 112, 112, 0.26);
}

.newsPostWrap.commonPostWrap .mainBox {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 40px;
}

.newsPostWrap #news {
    background: none;
    padding: 0;
}

.dropdown {
    position: relative;
    display: inline-block;
    margin-bottom: 35px;
    font-family: sans-serif;
}

.dropdown::after {
    content: "";
    position: absolute;
    background-image: url(../img/dropdown.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 14px;
    height: 8px;
    right: 22px;
    top: 27px;
    transition: transform 0.3s ease;
}

.dropdown.active::after {
    transform: scaleY(-1);
}

.active .dropdown-toggle {
    border-radius: 6px 6px 0 0;
}

.dropdown-toggle {
    background-color: #252525;
    color: white;
    padding: 23px 20px 21px 20px;
    border: none;
    text-align: center;
    cursor: pointer;
    font-size: 15px;
    border-radius: 6px;
    width: 218px;
    /* text-align: left; */
}

.dropdown-menu {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    position: absolute;
    background-color: white;
    border: 1px solid #ccc;
    width: 218px;
    transform: translateY(-1px);
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
    z-index: 1;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.dropdown-menu.show {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
}

.dropdown-menu li {
    list-style: none;
    border-bottom: 1px solid #ddd;
}

.dropdown-menu li a {
    display: block;
    padding: 11px 15px;
    text-decoration: none;
    transition: 0.4s;
    color: #333;
    font-size: 14px;
}

.dropdown-menu li a:hover {
    background-color: #f0f0f0;
}

.newsPostWrap.commonPostWrap #news .catBox .day {
    font-size: 12px;
    background: none;
    letter-spacing: 0;
    opacity: 0.5;
    color: #000;
}

.newsPostWrap #news .catBox {
    display: flex;
    align-items: center;
    margin-top: 17px;
    column-gap: 0px;
}

.newsPostWrap #news .catBox .cat {
    background: #888979;
    color: #fff;
    font-size: 12px;
    line-height: 1;
    padding: 6px 12px;
}

.newsPostWrap #news h4 {
    font-size: 16px;
    line-height: 27px;
    text-decoration: underline;
    color: #000;
    margin-top: 20px;
}

.newsPostWrap #news .udNFlex {
    display: flex;
    flex-wrap: wrap;
    gap: 80px 3%;
}

.newsPostWrap #news .udNFlex a {
    display: block;
    width: 31.3%;
}

.commonPostWrap .mainBox {
    max-width: 1000px;
    margin: 0 auto;
}

.commonPostWrap .dataBox ul li:first-child::after {
    content: "";
    position: absolute;
    background-image: url(../img/map.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 20px;
    left: 0;
    top: 0;
}

.commonPostWrap .dataBox ul li:nth-child(2)::after {
    content: "";
    position: absolute;
    background-image: url(../img/calendar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 20px;
    left: 0;
    top: 0;
}

.commonPostWrap .dataBox ul li:nth-child(3)::after {
    content: "";
    position: absolute;
    background-image: url(../img/time.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 20px;
    left: 0;
    top: 0;
}

.commonPostWrap .dataBox ul {
    list-style: none;
}

.commonPostWrap .dataBox ul li {
    position: relative;
    padding-left: 24px;
    font-size: 14px;
    font-weight: 400;
    line-height: 21px;
    letter-spacing: 0.03em;
    margin-bottom: 10px;
}

.commonPostWrap .dataBox {
    margin-top: 28px;
}

.commonPostWrap .catBox span {
    display: inline-block;
    background: #888979;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1px;
    padding: 11px 13px;
    border-radius: 100vw;
    letter-spacing: 0.03em;
}

.commonPostWrap .catBox {
    margin-bottom: 28px;
    display: flex;
    column-gap: 4px;
}

.postOpBox h3 {
    font-size: 30px;
    letter-spacing: 0.12em;
    font-weight: 600;
}

.commonPostWrap .postOpBox {
    margin-bottom: 35px;
}

.commonPostWrap .breack {
    padding-left: 0;
    margin-bottom: 90px;
    font-size: 12px;
    letter-spacing: 0.06em;
}

.thumbnailBox {
    border-radius: 6px;
}

.thumbnailBox img {
    width: 100%;
    height: auto;
    border-radius: 6px;
}

.wpConBox h4 {
    font-size: 26px;
    margin-top: 60px;
    line-height: 38px;
    font-weight: 600;
}

.wpConBox h5 {
    font-size: 20px;
    margin-top: 60px;
    line-height: 38px;
    font-weight: 600;
}

.wpConBox figure {
    margin-top: 34px;
}

.wpConBox p {
    margin-top: 34px;
    line-height: 30px;
    font-size: 16px;
    letter-spacing: 0.06em;
}

.wpConBox img {
    width: 100%;
    height: auto;
}

.postOtBox {
    margin-top: 100px;
}

.postOtBox .otBox {
    margin-bottom: 30px;
}

.postOtBox .otBox h3 {
    font-size: 26px;
    padding-left: 20px;
    border-left: solid 5px #000;
}

.postOtBox .map {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 43%;
}

.postOtBox .map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.postOtBox .adress {
    font-size: 14px;
    margin-top: 20px;
    letter-spacing: 0.06em;
}

.postOtBox dl {
    display: flex;
    margin-bottom: 1px;
}

.postOtBox dl dt {
    width: 158px;
    background: #888979;
    color: #fff;
    padding: 16px 20px;
    font-size: 14px;
    font-weight: 600;
}

.postOtBox dl dd {
    background: #fff;
    width: 100%;
    padding: 16px 20px;
    font-size: 14px;
}

.otCta.udotCta {
    margin-top: 180px;
    margin-bottom: 120px;
}

.otCta.udotCta .otCtaInner h3 {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 22px;
}

.otCta.udotCta .imgBox {
    width: 58%;
}

.otCta.udotCta .imgBox img {
    height: 318px;
}

.pageBack a {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 125px;
    font-size: 18px;
    margin: 0 auto;
    width: 100%;
    max-width: 1340px;
    letter-spacing: 0.1em;
    color: rgba(0, 0, 0, 0.4);
    border-radius: 6px;
    transition: 0.4s;
    background: #fff;
}

.pageBack a span {
    display: inline-block;
    position: relative;
    padding-left: 28px;
}

.pageBack a span::after {
    content: "";
    position: absolute;
    background-image: url(../img/listicon.svg);
    background-size: contain;
    transition: 0.4s;
    background-repeat: no-repeat;
    width: 19px;
    height: 19px;
    left: 0;
    top: 6px;
}

.pageBack a:hover span::after {
    background-image: url(../img/listiconh.svg);
}

.pageBack a:hover {
    color: #fff;
    background: #252525;
}

.pageBack {
    padding: 0 80px;
}

.breack a {
    display: inline-block;
}

.single-event .blogo,
.single-post .blogo,
.page-template-archive .blogo,
.category .blogo,
.page-id-77 .blogo {
    opacity: 1;
    transform: translate(0);
}

.single-event .wlogo,
.single-post .wlogo,
.page-template-archive .wlogo,
.category .wlogo,
.page-id-77 .wlogo {
    opacity: 0;
    display: none;
}

.single-event .menu__line,
.single-post .menu__line,
.page-template-archive .menu__line,
.category .menu__line,
.page-id-77 .menu__line {
    background: #000;
}

.newsCtat {
    display: flex;
    align-items: center;
    column-gap: 12px;
}

.newsCtat p.dayBox {
    margin-bottom: 28px;
    font-size: 14px;
    letter-spacing: 0.03em;
    opacity: 0.5;
}

.post_page_navi {
    list-style: none !important;
    display: flex;
    margin: 0 auto;
    justify-content: center;
    margin-top: 130px;
    border-radius: 6px;
    padding: 53px 25px;
    max-width: 1240px;
    column-gap: 200px;
    background: #fff;
    letter-spacing: 0.06em;
}

.post_page_navi a {
    color: #999;
    transition: 0.4s;
}

.post_page_navi a:hover {
    color: #000;
}

.post_page_navi a:hover span {
    color: #000;
}

.post_page_navi span {
    font-size: 16px;
    transition: 0.4s;
    color: #999;
    font-weight: bold;
    text-decoration: none;
}

a.pagenationBox_centaer {
    padding-left: 29px;
    position: relative;
}

a.pagenationBox_centaer::after {
    content: "";
    position: absolute;
    background-image: url(../img/listicon.svg);
    background-size: contain;
    transition: 0.4s;
    background-repeat: no-repeat;
    width: 19px;
    height: 19px;
    left: 0;
    top: 6px;
}

.singlepostnavi {
    padding: 0 40px;
}

.prev_child .prev {
    position: relative;
    cursor: pointer;
}

.next_child .next {
    position: relative;
    cursor: pointer;
}

.prev_child .prev::before {
    content: "";
    width: 69px;
    height: 1px;
    background: #707070;
    position: absolute;
    top: 56%;
    left: 64px;
}

.next_child .next::before {
    content: "";
    width: 69px;
    height: 1px;
    background: #707070;
    position: absolute;
    top: 56%;
    right: 64px;
}

.wpConBox .wp-block-list {
    margin-top: 40px;
    list-style-position: inside;
}

.newsPostWrap #news .imgBox img {
    border: none;
}

.archive_page_navi {
    padding-top: 68px;
}

.wp-pagenavi .current {
    background: #252525;
    color: #fff;
    border-radius: 2px;
    padding: 3px 10px 4px 12px;
}

.wp-pagenavi .larger,
.wp-pagenavi .smaller {
    background: #d1d1d1;
    border-radius: 2px;
    padding: 3px 10px 4px 12px;
}

.wp-pagenavi a {
    color: #000;
}

.archive_page_navi .wp-pagenavi {
    display: flex;
    column-gap: 7px;
    font-weight: 600;
    font-size: 16px;
    justify-content: center;
    align-items: center;
}

.udCommonTitle .titleIcon.titleIcon2 {
    left: 17%;
}

#leisu {
    padding: 90px 80px;
    background-repeat: no-repeat;
    background-image: url(../img/sqbg.svg);
    background-position: 0 0;
    background-repeat: repeat;
    background-size: 13px 13px;
}

#leisu .titleBox {
    text-align: center;
    margin-bottom: 32px;
}

#leisu .enT {
    display: inline-block;
    background: #db8700;
    text-transform: uppercase;
    letter-spacing: 0;
    color: #fff;
    border-radius: 100vw;
    margin-bottom: 16px;
    padding: 2px 14px 5px 14px;
    line-height: 1;
}

#leisu h4 {
    line-height: 50px;
    font-size: 29px;
    letter-spacing: 0.06em;
    font-weight: 600;
}

#leisu .conIn {
    background: #fffcf8;
    border: solid 2px #db8700;
    border-radius: 16px;
    text-align: center;
    max-width: 789px;
    margin: 0 auto;
    padding: 42px 40px;
}

#leisu .conIn .enTitle {
    font-size: 12px;
    letter-spacing: 0;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 10px;
}

#leisu .conIn h5 {
    font-size: 26px;
    color: #db8700;
    letter-spacing: 0.06em;
    font-weight: 600;
    margin-bottom: 16px;
}

#leisu .conIn .des {
    font-size: 16px;
    line-height: 40px;
    font-weight: 500;
    letter-spacing: 0.06em;
}

#leisu .midText {
    display: flex;
    justify-content: center;
    column-gap: 18px;
    margin: 40px 0;
    align-items: center;
}

#leisu .midText p {
    font-size: 20px;
    letter-spacing: 0.06em;
    font-weight: 600;
}

#leisu .mainDesBox {
    text-align: center;
}

#leisu .mainDesBox p {
    font-size: 23px;
    letter-spacing: 0.06em;
    font-weight: 600;
    line-height: 40px;
}

#leisu .mainDesBox p span {
    display: inline-block;
    color: #db8700;
}

#eaFlow {
    padding: 200px 80px 100px 80px;
    background-repeat: repeat;
    margin-bottom: 100px;
    position: relative;
    background-position: center;
    background-image: url(../img/gBg.png);
}

#eaFlow .titleBox {
    position: relative;
    margin-bottom: 70px;
    text-align: center;
}

#eaFlow .titleBox::after {
    content: "”Easy Flow”";
    position: absolute;
    background-repeat: no-repeat;
    font-size: 89px;
    text-transform: uppercase;
    right: 0;
    font-family: mundial, sans-serif;
    left: 0;
    margin: 0 auto;
    top: -47px;
    letter-spacing: 0.1em;
    color: #888979;
    font-weight: 600;
    opacity: 0.19;
}

#eaFlow .titleBox h4 {
    font-size: 33px;
    font-weight: 600;
    letter-spacing: 0.12em;
}

#eaFlow .titleBox p {
    font-size: 16px;
    margin-top: 36px;
    font-weight: 500;
    letter-spacing: 0.1em;
}

#eaFlow .mainImgWrap {
    margin-bottom: 70px;
}

#eaFlow .mainImgWrap .mainImgWrapImg {
    text-align: center;
}

#eaFlow .mainImgWrap .mainImgWrapImg img {
    width: 100%;
    max-width: 650px;
}

#eaFlow .mainImgWrap .mainImgWrapCommBox {
    background: #888979;
    border-radius: 30px;
    padding: 24px 60px;
    color: #fff;
    font-size: 17px;
    line-height: 36px;
    letter-spacing: 0.06em;
    max-width: 704px;
    box-sizing: border-box;
    margin: 0 auto;
    margin-top: 26px;
    position: relative;
}

#eaFlow .effTitleBox {
    margin-bottom: 26px;
    text-align: center;
}

#eaFlow .effTitleBox h5 {
    font-size: 34px;
    color: #db8700;
    font-weight: 600;
}

.plus1Box .pluscoom {
    padding-left: 109px;
}

#eaFlow .mainImgWrap .mainImgWrapCommBox::after {
    content: "";
    position: absolute;
    background-image: url(../img/outdooCommBox.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 22px;
    right: 0;
    left: 0;
    top: -21px;
    margin: 0 auto;
}

#eaFlow .effFlexBox {
    display: flex;
    justify-content: center;
    column-gap: 12px;
    max-width: 820px;
    margin: 0 auto;
    margin-bottom: 94px;
}

#eaFlow .effFlexBox > div {
    width: 33%;
}

#eaFlow .effFlexBox .imgBox {
    margin-bottom: 12px;
    text-align: center;
    border-radius: 100vw;
}

#eaFlow .effFlexBox .imgBox img {
    width: 100%;
    max-width: 100px;
}

#eaFlow .effFlexBox .conBox {
    background: #fff;
    border-radius: 16px;
    padding: 20px 20px 16px 20px;
    box-sizing: border-box;
    border: solid 2px #db8700;
}

#eaFlow .effFlexBox .aten {
    text-align: center;
    opacity: 0.7;
    font-size: 13px;
    letter-spacing: 0.08em;
    margin-top: 4px;
    font-weight: 500;
}

#eaFlow .effFlexBox .conBox p {
    font-size: 16px;
    letter-spacing: 0.06em;
    line-height: 30px;
    text-align: center;
}

#eaFlow .effFlexBox .conBox p span {
    display: inline-block;
    font-weight: 600;
    color: #db8700;
    font-size: 32px;
    letter-spacing: 0;
}

#eaFlow .commonEffFlex {
    display: flex;
    max-width: 989px;
    margin: 0 auto;
    background: #fff;
    column-gap: 30px;
    border-radius: 6px;
    padding: 54px 39px 36px 39px;
    box-sizing: border-box;
    align-items: center;
    margin-bottom: 40px;
}

#eaFlow .commonEffFlex .imgBox img {
    width: 100%;
}

#eaFlow .commonEffFlex h6 {
    font-weight: 600;
    font-size: 20px;
    margin-bottom: 30px;
}

#eaFlow .commonEffFlex .textBox p {
    font-size: 15px;
    line-height: 36px;
    letter-spacing: 0.06em;
    font-weight: 500;
}

#eaFlow .commonEffFlex > div {
    width: 50%;
}

#eaFlow .subTitleBox {
    text-align: center;
    position: relative;
    z-index: 1;
    margin-bottom: -20px;
}

#eaFlow .subTitleBox h5 {
    font-size: 20px;
    color: #fff;
    background: #888979;
    border-radius: 100vw;
    letter-spacing: 0.06em;
    padding: 9px 30px;
    font-weight: 600;
    display: inline-block;
    font-weight: 600;
    line-height: 1;
}

#eaFlow .subTitleBox::after {
    content: "";
    position: absolute;
    background-image: url(../img/commonIdeaImagea.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 10px;
    height: 13px;
    right: 0;
    left: 0;
    margin: 0 auto;
    z-index: 1;
    bottom: -12px;
}

.nopost {
    color: #252525;
}

footer {
    width: 100%;
  
    box-sizing: border-box;
}

.footer-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 30px;
}

/* 左：会社情報 */
.company-info {
    font-size: 14px;
    line-height: 1.8;
}

.company-info .company-name {
    font-size: 15px;
    margin-bottom: 25px;
}

.company-info address {
    font-style: normal;
}

.company-info p {
    margin: 0;
}

.company-info a {
    color: #333;
    text-decoration: none;
}

.company-info a[href^="tel"] {
    text-decoration: underline;
}

/* 中央：ナビゲーション */
.footer-nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, auto);
    gap: 15px 60px;
    /* 行間 列間 */
}

.footer-nav a {
    text-decoration: none;
    color: #333;
    font-size: 15px;
    letter-spacing: 1px;
    position: relative;
}

.footer-nav .online-shop::after {
    content: "📄";
    position: absolute;
    top: -5px;
    right: -15px;
    font-size: 10px;
    opacity: 0.7;
}

/* 右：コンタクトボタン */
.contact-button a {
    display: inline-flex;
    align-items: center;
    background-color: #e6e6e6;
    padding: 12px 30px;
    text-decoration: none;
    color: #333;
    font-size: 15px;
    letter-spacing: 1px;
}

.contact-button span {
    margin-left: 20px;
    font-size: 12px;
}

@media screen and (max-width: 1550px) {
    .plus1ListBoxInner {
        max-width: 1250px;
    }

    .quality .flex {
        gap: 60px 3%;
    }

    .plus1ListBoxInner .flex {
        gap: 60px 3%;
    }

    .qualityINner {
        max-width: 1250px;
    }

    .plus1ListBox {
        padding: 0 80px 80px 80px;
    }

    .quality {
        padding: 80px 80px;
    }

    .experienceInner .flex {
        column-gap: 25px;
    }

    .udhero .imgBox img {
        aspect-ratio: 3.6 / 1;
    }

    .udhero .textBox {
        bottom: 46px;
    }

    .hero .mainEN {
        font-size: 62px;
        margin-bottom: 29px;
        line-height: 80px;
    }

    .resudCta .loopSlideWrap {
        margin-top: 0;
    }

    .hero h2 {
        margin-bottom: 11px;
    }

    .hero .mainTExtBox {
        bottom: 10%;
        left: 7%;
    }

    .headerInnr {
        padding: 46px 60px 0 60px;
    }

    .hLogo img {
        width: 221px;
    }

    .scroll-infinity__item {
        width: 581px;
    }

    #plan .flex {
        max-width: 953px;
    }

    .ideaimg01 img {
        width: 26vw;
        height: 565px;
    }

    .otCta .otCtaInner {
        column-gap: 48px;
        max-width: 980px;
    }

    .otCta .imgBox {
        width: 49%;
    }

    .otCta .imgBox img {
        height: 314px;
    }

    .otCta .otCtaInner h3 {
        font-size: 28px;
        margin-bottom: 20px;
    }

    .otCta .otCtaInner .des {
        font-size: 17px;
        line-height: 31px;
        margin-bottom: 25px;
    }

    .otCta .ttextBox {
        margin-top: 12px;
    }

    #news .swiper-wrapper {
        margin-bottom: 92px;
    }

    #news h4 {
        font-size: 20px;
        line-height: 33px;
    }

    #event h4 {
        margin-bottom: 34px;
        font-size: 20px;
    }

    #event .flex a .imgBox {
        margin-bottom: 25px;
    }

    .otCta {
        margin-top: 22vw;
    }

    header .gnavFlex ul a {
        padding: 20px 0;
    }

    header .hmBtnBox {
        margin-top: 53px;
    }

    header .hmSnsBox {
        margin-top: 13px;
    }

    body.open .headerInnr {
        padding: 26px 60px 0 60px;
    }

    .gnav {
        min-height: 500px;
        overflow: auto;
    }

    #udmessage .commonTitle {
        margin-top: 100px;
    }

    #udmessage {
        padding-top: 22px;
    }

    .commonUdFlex .des {
        line-height: 36px;
        margin-bottom: 28px;
    }

    .commonUdFlex .textBox {
        width: 74%;
    }

    .commonUdFlex {
        column-gap: 6%;
    }

    #udmessage {
        padding-bottom: 280px;
    }

    #commonoverFlex {
        padding: 200px 0 80px 0;
    }

    #commonoverFlex .imgBox {
        width: 53%;
    }

    #partner {
        padding: 140px 80px 100px 80px;
    }

    #area {
        padding: 100px 80px;
    }

    #area .areaPosition {
        padding: 100px 40px;
    }

    .companyInner {
        padding: 100px 40px;
    }

    .companyInner {
        padding: 100px 80px;
    }

    #company .titleBox {
        width: 487px;
    }

    #udCta {
        margin-top: 115px;
        padding-bottom: 100px;
        margin-bottom: 100px;
    }

    #statement {
        padding-top: 200px;
    }

    #statement .FlexWrap .flex {
        max-width: 1300px;
    }

    .familyPlanBox .commonFtitle {
        left: 40px;
    }

    .anchorBox ul {
        column-gap: 80px;
    }

    .commonPostWrap {
        padding: 166px 0 120px 0;
    }

    .postLine {
        margin: 63px 0 20px 0;
    }

    .commonPostWrap .breack {
        margin-bottom: 66px;
    }
}

@media screen and (max-width: 768px) {
    #instagram .mainBox {
        gap: 17px 0;
    }

    body {
        min-width: auto;
    }

    .pcHeader {
        min-width: auto;
        display: none;
    }

    .headerBtnBox {
        display: none;
    }

    .menu {
        top: -2px;
    }

    .hero {
        padding: 8px;
    }

    .hero::after {
        right: 8px;
        top: 8px;
        bottom: 8px;
        left: 8px;
    }

    .pickup {
        margin-top: 40px;
        padding: 0 40px;
        margin-bottom: 60px;
    }

    .pickup .pickupInner a {
        display: block;
    }

    .pickup .pickupInner a::after {
        display: none;
    }

    .pickup .pickupInner {
        padding: 40px 25px;
    }

    .pickup .pickupInner .catBox .cat {
        font-size: 12px;
        padding: 5px 18px 6px 19px;
    }

    .pickup .pickupInner h4 {
        font-size: 16px;
        letter-spacing: 0.06em;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .pickup .pickupInner .catBox {
        margin-bottom: 16px;
        column-gap: 14px;
    }

    #event {
        padding: 0 40px;
        margin-bottom: 60px;
    }

    .commonTitle h3 .enTitle {
        font-size: 40px;
    }

    .commonTitle h3 .jaTitle {
        margin-bottom: -8px;
    }

    #event .flex {
        display: block;
    }

    #event .flex a {
        display: flex;
        width: auto;
        column-gap: 23px;
        margin-bottom: 40px;
    }

    #event .flex a:last-child {
        margin-bottom: 0;
    }

    #event .flex a .imgBoxWrap {
        width: 40%;
    }

    #event .textBox {
        width: 54%;
    }

    #event h4 {
        margin-bottom: 16px;
        font-size: 16px;
        letter-spacing: 0.06em;
    }

    #event .catBox {
        margin-bottom: 11px;
    }

    #event .catBox span {
        font-size: 12px;
        padding: 10px 11px 10px;
    }

    #event .commonTitle {
        text-align: center;
        margin-bottom: 50px;
    }

    .busy {
        padding: 60px 40px 60px 40px;
    }

    .pcbusy {
        display: none;
    }

    .spBusy {
        display: block;
        text-align: center;
        padding: 0 10px;
    }

    .spBusy img {
        max-width: 80%;
    }

    .spBusy > div {
        margin-bottom: 55px;
    }

    .spBusy > div:last-child {
        margin-bottom: 0;
    }

    .busy .read {
        font-size: 20px;
        line-height: 40px;
        margin-top: 35px;
        margin-bottom: 40px;
    }

    .busy .vBox {
        position: static;
        margin: 0 auto;
    }

    .scroll-infinity__item {
        width: 400px;
    }

    #concept .flex {
        display: block;
        column-gap: 6%;
        align-items: center;
        position: relative;
        z-index: 1;
        max-width: 1800px;
        margin: 0 auto;
        padding: 0 80px;
    }

    .busy .vBox span {
        font-size: 19px;
        margin-left: 8px;
        padding: 5px 4px 5px 4px;
        font-weight: 600;
        letter-spacing: 0.03em;
        padding-top: 9px;
    }

    .scroll-infinity__wrap {
        margin-top: -262px;
    }

    .commonTitle .subTitle {
        font-size: 20px;
        margin-top: 32px;
    }

    #concept {
        padding: 80px 0 80px 0;
    }

    #concept .flex {
        display: block;
        padding: 0 40px;
    }

    #concept .imgBox {
        width: auto;
        margin-bottom: 32px;
    }

    #concept .textBox {
        width: auto;
    }

    #concept .flexWrap::after {
        right: 20%;
        top: -60px;
    }

    .commonBtn a {
        width: 250px;
        height: 65px;
        padding: 0 26px;
        font-size: 14px;
    }

    .commonBtn .arrowLink {
        top: 17px;
    }

    #concept .textBox .enTitle {
        font-size: 12px;
        margin-bottom: 40px;
    }

    #concept .commonTitle {
        margin-bottom: 123px;
    }

    #plan {
        padding: 60px 40px;
    }

    #plan {
        padding: 60px 8px;
    }

    #plan .flex h4 {
        font-size: 16px;
        font-weight: 600;
        letter-spacing: 0.06em;
        margin-top: 12px;
    }

    #plan .flex {
        gap: 93px 0;
    }

    #plan .flex > div:nth-child(2n) {
        margin-top: 40px;
    }

    .ideaimg01 {
        position: static;
    }

    .ideaimg02 {
        position: static;
        margin-top: 80px;
    }

    #idea {
        margin-top: -16px;
    }

    .ideaimg02Inner > div:last-child {
        text-align: right;
        margin-left: -40px;
        margin-top: -70px;
    }

    #idea .mainBox {
        top: auto;
        margin-top: 80px;
    }

    .ideaimg02Inner > div:first-child img {
        width: 58vw;
    }

    .loopSlide {
        height: 60px;
        position: relative;
        z-index: 2;
    }

    .ideaimg01 {
        padding-right: 40px;
    }

    .ideaimg01 img {
        width: 100%;
        height: auto;
    }

    .ideaimg02Inner > div:last-child img {
        width: 36vw;
    }

    .ideaimg02Inner > div:last-child {
        margin-left: 0;
        margin-top: -40px;
        margin-right: 38vw;
    }

    .otCta {
        margin-top: 22vw;
        padding: 0 40px;
    }

    .otCta .otCtaInner {
        display: block;
    }

    .otCta .imgBox img {
        height: auto;
    }

    .otCta .imgBox {
        width: auto;
    }

    .otCta {
        margin-bottom: 80px;
    }

    .otCta .ttextBox {
        width: auto;
        padding: 20px 24px 40px;
    }

    .otCta .sodanicon {
        top: -68px;
        left: 0;
        right: 0;
        margin: 0 auto;
        text-align: center;
    }

    #news {
        padding: 80px 0;
    }

    #news h4 {
        font-size: 16px;
        line-height: 30px;
    }

    #qa .subTItle {
        font-size: 15px;
        margin-top: 18px;
        margin-bottom: 40px;
    }

    #news .catBox .cat {
        font-size: 12px;
        padding: 6px 11px 7px 11px;
    }

    #qa .qaInner {
        padding: 60px 40px;
    }

    #news h4 {
        margin-top: 20px;
    }

    #news .newsdarrow {
        margin-bottom: 68px;
    }

    #instagram {
        padding: 80px 40px 40px 40px;
    }

    #qa {
        padding: 40px 40px 80px 40px;
    }

    .accordion-title {
        font-size: 16px;
        padding: 28px 61px 28px 30px;
    }

    #contact .flex {
        display: block;
    }

    #contact .flex > a {
        width: auto;
        display: block;
        position: relative;
    }

    #contact .arrowLink {
        position: absolute;
        top: 66%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        text-align: center;
    }

    #contact .subTItle {
        font-size: 15px;
        margin-top: 18px;
    }

    footer nav ul {
        display: block;
        padding: 0 40px;
    }

    footer nav ul a {
        position: relative;
        padding: 20px 0;
        border-bottom: solid 1px #e3e3e3;
    }

    footer address {
        margin-bottom: 25px;
    }

    footer nav ul a::after {
        content: "";
        position: absolute;
        font-size: 10px;
        right: 0;
        top: 22px;
        opacity: 0.5;
        font-family: "Syncopate", sans-serif;
        font-weight: 400;
        text-transform: uppercase;
        font-style: normal;
    }

    footer nav ul li:nth-child(1) a::after {
        content: "ABOUT";
    }

    footer nav ul li:nth-child(2) a::after {
        content: "concept";
    }

    footer nav ul li:nth-child(3) a::after {
        content: "reserve";
    }

    footer nav ul li:nth-child(4) a::after {
        content: "idea";
    }

    footer nav ul li:nth-child(5) a::after {
        content: "Plan";
    }

    footer nav ul li:nth-child(6) a::after {
        content: "family";
    }

    footer nav ul li:nth-child(7) a::after {
        content: "news";
    }

    footer .commonBtn .arrowLink {
        display: none;
    }

    footer .bottmFlex {
        display: block;
    }

    footer .inFlex {
        justify-content: center;
    }

    footer .btnFlex {
        margin-bottom: 56px;
    }

    .fspLine {
        background: #7070709e;
    }

    .pageTop {
        text-align: center;
        margin-top: 60px;
    }

    footer .pageTop a {
        display: inline-block;
    }

    .headerInnr {
        padding: 30px 40px 0 40px;
    }

    .headerInnr {
        min-width: auto;
    }

    .menu {
        right: 40px;
        top: 55px;
    }

    header .gnavFlex .textBox {
        width: 100%;
    }

    header .gnavFlex .imgBox {
        display: none;
    }

    header .LBox {
        position: static;
    }

    .headerInnr.change-color {
        padding: 30px 40px 0 40px;
    }

    .hLogo {
        transition: 0.4s;
    }

    .headerInnr.change-color .hLogo {
        opacity: 0;
    }

    header .gnavFlex {
        padding: 0 40px;
    }

    header .gnavFlex {
        margin-top: 62px;
    }

    header .hmSnsBox {
        justify-content: center;
    }

    .newsdarrow img {
        width: 100%;
    }

    .commonUdFlex {
        display: block;
        margin-top: 90px;
        padding: 0 40px;
    }

    .udhero .textBox .enTitle {
        font-size: 40px;
    }

    .udhero .imgBox img {
        aspect-ratio: 2 / 1;
    }

    .udhero .textBox .jaTitle {
        font-size: 13px;
        margin-bottom: -13px;
    }

    .commonUdFlex {
        margin-top: 40px;
    }

    .commonUdFlex .textBox {
        width: auto;
        margin-top: 30px;
    }

    .udLoopBox ul {
        column-gap: 20px;
    }

    .udLoopBox .scroll-infinity__wrap {
        column-gap: 20px;
    }

    .scroll-infinity__wrap {
        margin-top: -200px;
    }

    .commonUdFlex h4 {
        margin-bottom: 40px;
    }

    #commonoverFlex .imgBox {
        width: auto;
    }

    #commonoverFlex .flex {
        display: block;
        padding: 0 40px;
    }

    #commonoverFlex {
        padding: 100px 0 80px 0;
    }

    #commonoverFlex .flexWrap::after {
        top: -46px;
        left: 14%;
    }

    .udhero .textBox {
        bottom: 37px;
    }

    .spcommonTitle {
        display: block;
        padding: 0 40px;
    }

    .pccommonTitle {
        display: none;
    }

    .SpsubTitle {
        display: block;
        font-size: 24px;
        margin-top: 35px;
        font-weight: 600;
        letter-spacing: 0.1em;
        margin-bottom: 25px;
    }

    #commonoverFlex .commonTitle {
        margin-bottom: 82px;
    }

    #partner {
        padding: 80px 40px 60px 40px;
    }

    #partner .conBox {
        border-radius: 30px;
        padding: 30px 20px;
        border: solid 6px #888979;
    }

    #partner .conBox p {
        font-size: 16px;
        line-height: 30px;
        margin-bottom: 14px;
    }

    #partner h3 {
        font-size: 30px;
        margin-bottom: 37px;
    }

    #partner .conBox .partnerBox img {
        max-width: 160px;
    }

    #area {
        padding: 60px 40px;
    }

    #area .areaPosition .aten {
        font-size: 12px;
        line-height: 19px;
    }

    #area .areaPosition {
        padding: 50px 25px;
    }

    #area .areaPosition .titleBox {
        margin-bottom: 18px;
    }

    #area .areaPosition .titleBox h3 {
        font-size: 27px;
        line-height: 30px;
    }

    #area .areaPosition .des {
        font-size: 14px;
        margin-bottom: 27px;
    }

    #area .areaPosition::after {
        height: 56px;
        bottom: -28px;
    }

    #area .desBox p {
        font-size: 16px;
        line-height: 45px;
    }

    #area .desBox {
        margin-top: 50px;
    }

    #company {
        padding: 0 40px 120px 40px;
    }

    #company .flex {
        display: block;
    }

    .companyInner {
        padding: 60px 40px;
    }

    #company .titleBox {
        width: auto;
        margin-bottom: 34px;
    }

    #company dl dt {
        width: 203px;
    }

    .udCommonTitle h3 {
        font-size: 24px;
    }

    .udSeFlex::after {
        width: 241px;
    }

    .udSeFlex img {
        object-fit: cover;
        height: 400px;
    }

    .subTitleBox .jaTitle {
        font-size: 24px;
    }

    .reason .textBox {
        margin-top: 35px;
    }

    .subTitleBox {
        margin-bottom: 25px;
    }

    .subTitleBox .enFont {
        font-size: 12px;
        margin-bottom: -10px;
    }

    #statement {
        padding-top: 130px;
    }

    #statement .mainTitle {
        padding: 0 40px;
    }

    #statement .mainTitle::after {
        transform: scale(1.2);
        top: -34px;
    }

    #statement {
        overflow: hidden;
    }

    #statement .FlexWrap .flex {
        display: block;
    }

    #statement .FlexWrap .imgBox {
        width: auto;
        margin-bottom: 25px;
    }

    #statement .FlexWrap .textBox {
        width: auto;
    }

    #statement .FlexWrap {
        padding: 60px 40px 60px 40px;
    }

    #statement .FlexWrap .flex:last-child {
        margin-top: 100px;
    }

    #udCta .textBox h3 {
        font-size: 26px;
        margin-bottom: 25px;
    }

    #udCta .loopSlide {
        height: 83px;
    }

    #udCta {
        margin-top: 79px;
        padding-bottom: 80px;
        margin-bottom: 80px;
    }

    #commonoverFlex.reason .des {
        width: auto;
    }

    .reservFlexImg {
        padding: 0 8px;
        margin-top: 60px;
        column-gap: 8px;
    }

    .reservFlexImg img {
        height: 200px;
    }

    .udCommonTitle .desBox {
        margin-top: 23px;
    }

    .udCommonTitle .desBox .des {
        margin-bottom: 18px;
    }

    #recommend ul li {
        font-size: 16px;
        margin-bottom: 14px;
    }

    .udCommonTitle .desBox .des {
        font-size: 16px;
        line-height: 40px;
    }

    #recommend ul {
        margin-top: 26px;
        padding: 30px 38px;
    }

    #recommend {
        padding: 0 8px;
        margin-bottom: 60px;
        margin-top: -80px;
    }

    .recommendInner {
        padding: 134px 40px 60px 40px;
        border-radius: 16px;
    }

    #recommend .titleBox h3 {
        font-size: 20px;
        margin-bottom: -8px;
    }

    .experienceInner .flex {
        display: block;
    }

    #recommend .titleBox img {
        max-width: 100%;
    }

    #experience {
        padding: 0 40px;
        margin-bottom: 80px;
    }

    .experienceInner .commonTitle {
        margin-bottom: 35px;
    }

    .experienceInner .des {
        font-size: 16px;
        line-height: 30px;
    }

    .experienceInner .textBox {
        width: auto;
        margin-bottom: 40px;
    }

    .experienceInner .flex .inTextBox .nam {
        margin-bottom: 34px;
    }

    .experienceInner .flex .inFlex {
        column-gap: 40px;
        margin-bottom: 60px;
    }

    .udQa .commonTitle {
        margin-bottom: 58px;
    }

    #flow .flexBox .flex {
        margin-bottom: 24px;
    }

    #udCta .textBox h3 {
        line-height: 43px;
    }

    #flow .flowArrow {
        margin-bottom: 26px;
    }

    #flow .flowInner {
        padding: 60px 30px 65px 30px;
    }

    #flow {
        margin-bottom: 40px;
        padding: 0 8px;
    }

    .experienceInner .inTextBox .des br {
        display: none;
    }

    #flow .flexBox .flex p {
        font-size: 18px;
    }

    #qa.udQa {
        padding: 30px 8px 80px 8px;
    }

    .anchorBox ul {
        display: block;
    }

    .anchorBox ul a {
        padding-bottom: 20px;
        border-bottom: solid 1px rgba(238, 238, 238, 0.23);
        margin-bottom: 20px;
    }

    .anchorBox ul a::after {
        width: 14px;
        height: 8px;
        right: 0;
        left: auto;
        bottom: 40px;
    }

    .anchorBox {
        margin-top: 40px;
    }

    .familyPlanBox .commonFtitle::after {
        width: 46px;
    }

    .familyPlanBox .commonFtitle h4 {
        font-size: 20px;
        text-align: left;
    }

    .familyPlanBox .commonFimg img {
        aspect-ratio: 2.1 / 1;
    }

    .familyPlanBox .commonFtitle {
        margin-top: -47px;
        left: 30px;
        width: 380px;
        padding: 0 20px;
        height: 108px;
    }

    .familyPlanBox .conFlex {
        display: block;
        padding: 0 40px;
        margin-top: 60px;
    }

    .familyPlanBox .conFlex::after {
        display: none;
    }

    .familyPlanBox .conFlex .imgBox {
        width: auto;
        margin-bottom: 45px;
        display: flex;
    }

    .familyPlanBox .conFlex > div {
        width: 50%;
    }

    .familyPlanBox .conFlex .textBox {
        width: auto;
    }

    .familyPlanBox .conBox .des br {
        display: none;
    }

    .SPfplanill01 {
        display: block;
    }

    .pcplanil {
        display: none;
    }

    .familyPlanBox .easeBox {
        padding: 0 8px;
        margin-top: 90px;
    }

    .familyPlanBox .easeBoxInner {
        padding: 0 30px 60px 30px;
    }

    #fPlan02 {
        padding-top: 100px;
    }

    #fPlan03 {
        padding-top: 100px;
    }

    #fPlan04 {
        padding-top: 100px;
    }

    .familyPlanBox .imgFlexBox {
        display: block;
        margin-top: 80px;
    }

    .familyPlanBox .imgFlexBox .imgBox {
        width: auto;
        margin-bottom: 30px;
    }

    .familyPlanBox .imgFlexBox .textBox {
        width: auto;
    }

    .familyPlanBox .imgFlexBox h5 {
        line-height: 40px;
        font-size: 20px;
        margin-bottom: 30px;
    }

    .familyPlanBox .outdoorFlex h5 {
        line-height: 40px;
        font-size: 20px;
        margin-bottom: 30px;
    }

    .familyPlanBox .imgFlexBox .des {
        font-size: 16px;
        line-height: 36px;
        margin-bottom: 18px;
    }

    .familyPlanBox .outdoorFlex {
        display: block;
        text-align: left;
        margin-top: 60px;
    }

    .familyPlanBox .outdoorFlex::after {
        display: none;
    }

    .familyPlanBox {
        padding: 70px 0 80px 0;
    }

    .udIdeaWrap .mainBoxTitle h4 {
        font-size: 20px;
        margin-bottom: 20px;
        font-weight: 600;
    }

    .udIdeaWrap .mainBoxTitle p {
        font-size: 16px;
        line-height: 30px;
    }

    .udIdeaWrap {
        padding: 80px 0 80px 0;
    }

    .udIdeaWrap .ideaComFlex {
        display: block;
        margin-bottom: 34px;
    }

    .udIdeaWrap .ideaComFlex .imgBox {
        width: auto;
        margin-bottom: 35px;
    }

    .udIdeaWrap .ideaComFlex .textBox {
        width: auto;
    }

    .udIdeaWrap .mainBoxTitle h4 {
        font-size: 18px;
    }

    .udIdeaWrap .inConBt {
        width: auto;
    }

    .udIdeaWrap .titleBox {
        text-align: center;
        margin-bottom: 30px;
    }

    .udIdeaWrap .titleBox p {
        display: inline-block;
    }

    .udIdeaWrap .titleBox p::after {
        right: 0;
        left: 0;
        transform: rotate(90deg);
        top: auto;
        bottom: -11px;
        margin: 0 auto;
    }

    .udIdeaWrap .mainBoxTitle {
        margin-bottom: 60px;
    }

    .udIdeaWrap .floorPlan {
        margin-top: 30px;
        column-gap: 10px;
    }

    .udIdeaWrap .threePoint {
        display: block;
        margin-top: 46px;
    }

    #idea02,
    #idea03,
    #idea04 {
        padding-top: 140px;
    }

    .commonIdeaImage {
        margin-top: 20px;
        border-radius: 6px;
    }

    .tokiDesBox {
        padding: 0 30px;
    }

    .tokiDesBox .tokiTitle {
        font-size: 20px;
        margin-bottom: 6px;
    }

    .tokiDesBox .imgBox {
        margin-bottom: 32px;
    }

    .tokiDesBox .imgBox img {
        width: 100%;
        max-width: 250px;
    }

    .tokiDesBox {
        margin-top: 48px;
        margin-bottom: 60px;
    }

    #udmessage.tokiM {
        padding-bottom: 80px;
    }

    .plus1Box .plusarrow {
        margin-bottom: 36px;
    }

    .planDline {
        margin-bottom: 80px;
    }

    .design .titleBox::after {
        font-size: 8vw;
        top: -38px;
    }

    .design .titleBox h4 {
        font-size: 24px;
    }

    .plus1Box .titleBox .des {
        font-size: 16px;
        line-height: 35px;
        margin-bottom: 21px;
    }

    .design {
        margin-bottom: 80px;
    }

    .design .tableBox {
        padding: 0 30px;
    }

    .design .titleBox {
        margin-bottom: 50px;
    }

    .plus1Box .titleBox {
        padding: 0 30px;
        margin-bottom: 60px;
    }

    .quality .flex > div {
        width: 48%;
    }

    .plus1ListBoxInner .mtitleBox p {
        font-size: 16px;
    }

    .plus1ListBoxInner .des {
        font-size: 13px;
        line-height: 23px;
    }

    .quality .pnTitle {
        margin-bottom: 14px;
    }

    .quality {
        padding: 60px 40px;
    }

    .plus1ListBoxInner .nam {
        font-size: 14px;
        padding: 3px 6px 5px 5px;
    }

    .plus1ListBoxInner .flex {
        margin-top: 40px;
        gap: 46px 3%;
    }

    .quality .pnTitle span {
        padding: 2px 10px 3px 10px;
        font-size: 12px;
    }

    .plus1ListBox {
        padding: 0 40px 60px 40px;
    }

    .quality .titleBox h5 {
        font-size: 24px;
        line-height: 38px;
    }

    .plus1ListBoxInner .flex > div {
        width: 48%;
    }

    .plus1ListBoxInner h6 {
        font-size: 16px;
        margin-top: 16px;
        margin-bottom: 10px;
    }

    .otherListBox ul {
        padding: 30px 32px;
        line-height: none;
    }

    .otherListBox {
        padding: 30px 30px;
        margin-bottom: 66px;
    }

    .otherListBox .titleBoxs p {
        font-size: 16px;
        padding: 7px 20px 9px 20px;
    }

    .otherListBox .titleBoxs {
        margin-top: -48px;
    }

    .otherListBox ul li {
        font-size: 14px;
        padding: 4px 13px 4px 30px;
    }

    .otherListBox ul li::after {
        width: 7px;
        height: 7px;
        left: 16px;
        top: 16px;
    }

    .otherFNav {
        margin-bottom: 140px;
    }

    .commonPostWrap .mainBox {
        padding: 0 40px;
    }

    .postOpBox h3 {
        font-size: 24px;
    }

    .commonPostWrap .catBox {
        margin-bottom: 20px;
    }

    .commonPostWrap .catBox span {
        font-size: 12px;
    }

    .postOtBox .otBox h3 {
        font-size: 20px;
        padding-left: 13px;
    }

    .postOtBox .otBox {
        margin-bottom: 19px;
    }

    .postOtBox dl dt {
        padding: 10px 14px;
    }

    .postOtBox dl dd {
        padding: 10px 14px;
    }

    .otCta.udotCta .imgBox {
        width: auto;
    }

    .otCta .sodanicon {
        top: -84px;
    }

    .otCta.udotCta .otCtaInner h3 {
        font-size: 24px;
        margin-bottom: 15px;
    }

    .otCta .imgBox img {
        border-radius: 6px 6px 0 0;
    }

    .pageBack a {
        height: 100px;
        font-size: 14px;
    }

    .pageBack {
        padding: 0 20px;
    }

    .pageBack a span::after {
        top: 5px;
    }

    .otCta.udotCta {
        margin-top: 140px;
        margin-bottom: 78px;
    }

    .commonPostWrap {
        padding: 130px 0 77px 0;
    }

    .commonPostWrap .textBox .enTitle {
        font-size: 40px;
    }

    .commonPostWrap .textBox .jaTitle {
        font-size: 13px;
        margin-bottom: -13px;
    }

    .newsCtat p.dayBox {
        margin-bottom: 20px;
    }

    .post_page_navi {
        margin-top: 100px;
        padding: 44px 25px;
        column-gap: 104px;
    }

    .post_page_navi span {
        font-size: 13px;
    }

    .next_child .next::before {
        width: 42px;
        right: 49px;
    }

    .prev_child .prev::before {
        width: 42px;
        left: 49px;
    }

    a.pagenationBox_centaer::after {
        width: 16px;
        height: 16px;
        left: 0;
        top: 8px;
    }

    a.pagenationBox_centaer {
        padding-left: 24px;
    }

    .newsPostWrap #news .udNFlex a {
        width: 48.3%;
    }

    .udIdeaWrap .dataWrap .sizeBox {
        font-size: 18px;
        white-space: nowrap;
    }

    .udIdeaWrap .dataWrap .title {
        font-size: 16px;
        letter-spacing: 0.06em;
        position: relative;
        margin-right: 20px;
    }

    .udIdeaWrap .dataWrap .detail {
        font-size: 12px;
        margin-top: 0;
        line-height: 20px;
    }

    .udIdeaWrap .dataWrap .detail strong {
        font-size: 13px;
        display: inline-block;
        width: 70px;
    }

    .udIdeaWrap .dataWrap .inFlex {
        column-gap: 24px;
    }

    .udIdeaWrap .dataWrap .title::after {
        height: 187%;
        right: -24px;
        top: -12px;
    }

    #leisu {
        padding: 60px 40px;
    }

    #leisu .conIn .des {
        font-size: 15px;
        line-height: 32px;
    }

    #leisu .conIn {
        padding: 37px 26px;
    }

    #eaFlow {
        padding: 160px 40px 80px 40px;
        background-repeat: repeat;
        margin-bottom: 100px;
        position: relative;
        background-position: center;
        background-image: url(../img/gBg.png);
    }

    #eaFlow .titleBox::after {
        font-size: 11vw;
        top: -38px;
    }

    #eaFlow .titleBox h4 {
        font-size: 24px;
    }

    #eaFlow .titleBox p {
        font-size: 16px;
        margin-top: 26px;
    }

    #eaFlow .titleBox {
        margin-bottom: 57px;
    }

    #eaFlow .mainImgWrap .mainImgWrapCommBox {
        padding: 24px 31px;
        font-size: 16px;
    }

    #eaFlow .effTitleBox h5 {
        font-size: 29px;
    }

    #eaFlow .effFlexBox {
        display: block;
        max-width: auto;
    }

    #eaFlow .effFlexBox .conBox {
        padding: 28px 20px 16px 20px;
    }

    #eaFlow .effFlexBox > div {
        width: auto;
        margin-bottom: 40px;
    }

    #eaFlow .effFlexBox .imgBox img {
        max-width: 180px;
    }

    #eaFlow .effFlexBox .conBox p br {
        display: none;
    }

    #eaFlow .commonEffFlex h6 {
        font-size: 17px;
        margin-bottom: 22px;
    }

    #news .swiper-wrapper {
        padding-left: 0;
    }
}

@media screen and (max-width: 650px) {
    footer .commonBtn a {
        width: 180px;
        height: 49px;
    }

    .dropdown-toggle {
        padding: 18px 13px 18px 13px;
        font-size: 12px;
        width: 181px;
    }

    .dropdown {
        margin-bottom: 26px;
    }

    .dropdown::after {
        width: 12px;
        height: 5px;
        right: 22px;
        top: 23px;
    }

    .dropdown-menu {
        width: 181px;
    }

    .dropdown-menu li a {
        padding: 6px 13px;
        letter-spacing: 0.06em;
        font-size: 12px;
    }

    .newsPostWrap #news h4 {
        font-size: 13px;
        line-height: 21px;
        margin-top: 14px;
    }

    .newsPostWrap #news .udNFlex {
        gap: 44px 3%;
    }

    .newsPostWrap #news .catBox .cat {
        font-size: 11px;
    }

    .newsPostWrap.commonPostWrap #news .catBox .day {
        font-size: 10px;
    }

    .newsPostWrap #news .catBox {
        display: block;
        margin-top: 10px;
    }

    .newsPostWrap.commonPostWrap .catBox span {
        padding: 11px 0;
    }

    .newsPostWrap.commonPostWrap .mainBox {
        padding: 0 25px;
    }

    .newsCtat p.dayBox {
        margin-bottom: 13px;
    }

    .hero .mainEN {
        font-size: 38px;
        margin-bottom: 29px;
        line-height: 80px;
    }

    .newsCtat p.dayBox {
        font-size: 11px;
    }

    .spBusy img {
        max-width: 100%;
    }

    .hero .mainEN {
        font-size: 38px;
        line-height: 49px;
    }

    .menu {
        height: 11px;
        width: 56px;
    }

    .menu {
        right: 25px;
        top: 48px;
    }

    .hLogo img {
        width: 144px;
    }

    .hero h2 span {
        font-size: 15px;
        margin-bottom: 5px;
    }

    .hero .subCopy {
        font-size: 12px;
        margin-top: -6px;
    }

    .hero .mainEN {
        margin-bottom: 23px;
    }

    .hero .mainTExtBox {
        bottom: 6%;
        left: 25px;
    }

    .pickup .pickupInner .catBox {
        margin-bottom: 8px;
    }

    .pickup .pickupInner {
        padding: 34px 16px;
    }

    .pickup .pickupInner h4 {
        font-size: 15px;
    }

    .scroll {
        display: none;
    }

    .headerInnr {
        padding: 30px 25px 0 25px;
    }

    .menu {
        right: 25px;
        top: 46px;
    }

    #event .flex a {
        column-gap: 18px;
        margin-bottom: 40px;
    }

    #event .catBox {
        margin-bottom: 7px;
    }

    .pickup {
        margin-top: 35px;
        padding: 0 25px;
        margin-bottom: 58px;
    }

    .commonTitle h3 .jaTitle {
        margin-bottom: -10px;
    }

    #event {
        padding: 0 25px;
    }

    .busy .mainTitle .enFont {
        margin-bottom: 25px;
    }

    .busy .mainTitle {
        margin-bottom: 40px;
    }

    #event ul li {
        padding-left: 21px;
        font-size: 12px;
        letter-spacing: 0;
        line-height: 20px;
        margin-bottom: 7px;
    }

    #event h4 {
        margin-bottom: 8px;
        font-size: 13px;
    }

    .scroll-infinity__item {
        width: 408px;
    }

    .busy {
        padding: 60px 30px 60px 30px;
    }

    .spBusy > div {
        margin-bottom: 35px;
    }

    .busy .mainTitle .jaTItle {
        line-height: 36px;
    }

    .busy .vBox span {
        font-size: 18px;
        margin-left: 4px;
        padding: 5px 3px 5px 3px;
        padding-top: 9px;
    }

    #concept {
        padding: 80px 0 46px 0;
    }

    .spBr {
        display: block;
    }

    #concept .textBox .enTitle {
        font-size: 10px;
        margin-bottom: 20px;
    }

    #concept .imgBox {
        margin-bottom: 25px;
    }

    #concept .commonTitle {
        margin-bottom: 84px;
    }

    .commonTitle .subTitle {
        font-size: 20px;
        line-height: 36px;
    }

    #concept .flex {
        padding: 0 30px;
    }

    #concept .des {
        font-size: 16px;
        margin-bottom: 32px;
        line-height: 30px;
    }

    #concept .flexWrap::after {
        right: 28%;
        top: -36px;
    }

    #plan .commonTitle {
        padding: 0 12px;
    }

    #plan .flex > div:nth-child(2n) {
        margin-top: 25px;
    }

    .planicon {
        top: -31px;
    }

    #plan .flex {
        gap: 75px 0;
    }

    .ideaimg01 {
        padding-right: 25px;
    }

    .loopSlideWrap {
        margin-top: 23px;
    }

    .loopSlide {
        height: 51px;
    }

    .commonTitle .des {
        margin-top: 10px;
        line-height: 24px;
        font-size: 13px;
        letter-spacing: 0.1em;
    }

    #plan .flexWrap {
        padding: 100px 16px;
        margin-top: 60px;
        background-image: url(../img/gBg.png);
    }

    #plan .flex h4 {
        font-size: 15px;
        line-height: 24px;
        letter-spacing: 0.03em;
        margin-top: 12px;
    }

    .planicon {
        text-align: right;
    }

    .planicon img {
        width: 70%;
    }

    #idea .mainBox .subTitle {
        font-size: 15px;
    }

    #idea .mainBox h3 {
        font-size: 25px;
        margin-bottom: 12px;
    }

    #idea .mainBox .des {
        font-size: 16px;
        line-height: 40px;
    }

    #idea .mainBox {
        margin-top: 50px;
    }

    .ideaimg02Inner > div:first-child img {
        width: 64vw;
    }

    #idea .mainBox .slash {
        margin: 22px 0 20px 0;
    }

    .ideaimg02Inner > div:last-child img {
        width: 47vw;
    }

    .ideaimg02 {
        margin-top: 55px;
    }

    .otCta {
        margin-top: 35vw;
        padding: 0 30px;
    }

    .otCta .otCtaInner h3 {
        font-size: 18px;
        letter-spacing: 0.04em;
        margin-bottom: 17px;
    }

    .otCta .otCtaInner .des {
        font-size: 14px;
        line-height: 26px;
        margin-bottom: 25px;
    }

    .otCta .commonBtn a {
        margin: 0 auto;
    }

    .otCta .ttextBox {
        margin-top: 8px;
    }

    .otCta {
        margin-bottom: 70px;
    }

    #news .titleWrap {
        padding: 0 30px;
    }

    #news {
        padding: 70px 0;
    }

    #news .subTItle {
        font-size: 13px;
        line-height: 25px;
        margin-top: 25px;
        letter-spacing: 0.06em;
    }

    #news .swiper {
        padding: 0 30px;
    }

    #news .newsdarrow {
        margin-bottom: 50px;
    }

    #news .catBox {
        margin-top: 24px;
        column-gap: 14px;
    }

    #news .swiper-wrapper {
        margin-bottom: 80px;
    }

    #news .commonBtn {
        margin-top: 28px;
    }

    #instagram {
        padding: 70px 30px 40px 30px;
    }

    #qa {
        padding: 40px 8px 70px 8px;
    }

    #qa .subTItle {
        font-size: 13px;
        line-height: 25px;
        letter-spacing: 0.06em;
        margin-bottom: 25px;
    }

    #qa .qaInner {
        padding: 60px 19px;
    }

    .accordion-title {
        font-size: 15px;
        line-height: 23px;
        padding: 23px 31px 23px 13px;
    }

    .accordion-content p {
        font-size: 15px;
        line-height: 23px;
    }

    .accordion-content {
        padding: 23px 31px 23px 16px;
    }

    .accordion-title .enFont {
        font-size: 25px;
        margin-right: 8px;
        margin-top: -2px;
    }

    .accordion-content .enFont {
        font-size: 25px;
        margin-right: 8px;
    }

    #news h4 {
        margin-top: 16px;
    }

    #contact .subTItle {
        font-size: 13px;
        margin-top: 2px;
        letter-spacing: 0.06em;
    }

    .accordion-title::after,
    .accordion-title::before {
        right: 19px;
        top: 29px;
        width: 2px;
        height: 12px;
    }

    #contact h4 {
        font-size: 20px;
        margin-bottom: 0;
    }

    #contact .textBox p {
        font-size: 14px;
    }

    #contact .textBox p::after {
        bottom: 5px;
    }

    #contact .arrowLink {
        top: 70%;
    }

    #contact .reserveBox .textBox {
        top: 40%;
    }

    #contact .reserveBox .arrowLink {
        top: 60%;
    }

    footer nav {
        margin-bottom: 24px;
    }

    footer {
        padding-bottom: 40px;
    }

    header .hmBtnBox {
        margin-top: 39px;
    }

    header .gnavFlex {
        padding: 0 34px;
    }

    header .hmBtnBox a:first-child {
        margin-bottom: 9px;
    }

    header .hmSnsBox {
        margin-bottom: 20px;
    }

    header .gnavFlex ul a {
        padding: 15px 0;
    }

    body.open .menu__line--center {
        bottom: 1px;
    }

    .fspLine {
        margin-bottom: 48px;
    }

    .menu {
        transition: 0.4s;
    }

    .change-color .menu {
        top: 33px;
    }

    footer .inFlex ul a {
        font-size: 11px;
        letter-spacing: 0.06em;
    }

    footer address p {
        font-size: 12px;
        margin-bottom: 14px;
        margin-top: 4px;
    }

    footer .commonBtn a {
        width: 156px;
    }

    body.open .headerInnr {
        padding: 30px 60px 0 60px;
    }

    footer nav ul li:last-child a {
        border: none;
    }

    footer .commonBtn a {
        padding: 0 10px;
    }

    footer .btnFlex {
        column-gap: 7px;
        margin-bottom: 48px;
    }

    footer nav ul {
        padding: 0 30px;
    }

    header .gnavFlex .textBox {
        margin-top: 11%;
    }

    .hmInLogo {
        display: block;
        position: absolute;
        top: 30px;
        left: 35px;
    }

    .hmInLogo img {
        width: 144px;
    }

    .pageTop {
        margin-top: 50px;
    }

    .open .menu {
        top: 45px !important;
    }

    .udhero .textBox .enTitle {
        font-size: 20px;
    }

    .udhero .textBox {
        left: 6%;
        bottom: 20px;
    }

    .udhero .textBox .jaTitle {
        font-size: 11px;
        margin-bottom: -28px;
    }

    #udmessage .commonTitle {
        margin-top: 60px;
    }

    #udmessage {
        padding-top: 16px;
    }

    .udhero .imgBox img {
        aspect-ratio: 2 / 1.4;
    }

    .breack {
        padding-left: 6%;
        font-size: 9px;
    }

    .commonUdFlex {
        margin-top: 30px;
    }

    .commonUdFlex {
        padding: 0 30px;
    }

    .commonUdFlex h4 {
        font-size: 23px;
        margin-bottom: 29px;
    }

    .commonUdFlex h4 span {
        padding: 5px 9px 9px 16px;
    }

    .commonUdFlex .textBox {
        margin-top: 25px;
    }

    .commonUdFlex .des {
        font-size: 16px;
        line-height: 36px;
        margin-bottom: 30px;
    }

    #commonoverFlex .des {
        font-size: 16px;
        line-height: 36px;
        margin-bottom: 30px;
    }

    .udLoopBox ul {
        column-gap: 10px;
    }

    .udLoopBox .scroll-infinity__wrap {
        column-gap: 10px;
    }

    .udLoopBox .scroll-infinity__wrap {
        margin-top: -221px;
    }

    #commonoverFlex {
        padding: 60px 0 80px 0;
    }

    .spcommonTitle {
        padding: 0 30px;
    }

    #commonoverFlex .flex {
        padding: 0 30px;
    }

    #commonoverFlex .flexWrap::after {
        top: -30px;
        left: 21%;
    }

    #commonoverFlex .commonTitle {
        margin-bottom: 64px;
    }

    #commonoverFlex {
        padding: 60px 0 50px 0;
    }

    #partner {
        padding: 60px 30px 40px 30px;
    }

    #partner .conBox p {
        font-size: 14px;
        line-height: 28px;
        text-align: left;
        margin-bottom: 14px;
    }

    #partner .conBox p br {
        display: none;
    }

    #partner .conBox p span {
        display: inline;
    }

    #partner .conBox .partnerBox img {
        max-width: 120px;
    }

    #partner .conBox .partnerBox {
        top: -98px;
        right: 0;
        left: 0;
    }

    #partner h3 {
        margin-bottom: 116px;
    }

    #partner h3 {
        font-size: 24px;
    }

    #partner .conBox {
        border-radius: 30px;
        padding: 38px 30px 20px 30px;
        border: solid 4px #888979;
    }

    #area {
        padding: 40px 8px;
    }

    #area .areaPosition {
        padding: 40px 25px;
    }

    #area .areaPosition .des {
        font-size: 12px;
        margin-bottom: 15px;
    }

    #area .areaPosition .titleBox h3 {
        font-size: 20px;
        line-height: 36px;
    }

    #area .areaPosition .titleBox p {
        margin-bottom: 8px;
    }

    #area .areaPosition .areBox p {
        font-size: 24px;
        width: 200px;
        height: 44px;
    }

    #area .areaPosition .aten {
        font-size: 10px;
        letter-spacing: 0.03em;
        line-height: 18px;
    }

    #area .areaPosition::after {
        height: 39px;
        bottom: -20px;
    }

    #area .desBox p {
        padding: 0 25px;
        font-size: 16px;
        margin-bottom: 33px;
        line-height: 40px;
        font-weight: 400;
        text-align: left;
    }

    #area .desBox p br {
        display: none;
    }

    #company {
        padding: 0 8px 60px 8px;
    }

    .companyInner {
        padding: 50px 25px;
    }

    #company dl {
        padding: 30px 0;
        font-size: 15px;
        border-top: 1px rgba(112, 112, 112, 0.5) solid;
    }

    #company dl dt {
        width: 150px;
        line-height: 23px;
    }

    #company dl dd {
        width: 100%;
        font-weight: 400;
        letter-spacing: 0.06em;
        font-size: 14px;
        line-height: 23px;
    }

    .udCommonTitle {
        margin-top: 80px;
        padding: 0 30px;
    }

    #udmessage.story .commonTitle {
        margin-top: 40px;
    }

    .udCommonTitle h3 {
        font-size: 20px;
        line-height: 36px;
    }

    .udCommonTitle .titleIcon {
        top: -64px;
        left: 48%;
    }

    #udmessage.story {
        padding-bottom: 60px;
    }

    .udCommonTitle .titleIcon img {
        width: 80%;
    }

    .udSeFlex img {
        height: 265px;
    }

    .subTitleBox .jaTitle {
        font-size: 20px;
    }

    .udSeFlex::after {
        width: 180px;
        height: 48px;
    }

    .subTitleBox .enFont {
        margin-bottom: 0;
        font-size: 10px;
    }

    .reason .textBox {
        margin-top: 19px;
    }

    #statement {
        padding-top: 90px;
    }

    #statement .mainTitle::after {
        transform: scale(1.1);
        top: -16px;
    }

    #statement .mainTitle .conTitle {
        width: 225px;
        height: 37px;
        margin-bottom: 20px;
        font-size: 15px;
    }

    #statement .mainTitle {
        padding: 0 30px;
    }

    #statement .mainTitle h3 {
        font-size: 20px;
        line-height: 40px;
        margin-bottom: 25px;
    }

    #statement .mainTitle p {
        text-align: left;
        font-size: 15px;
        line-height: 30px;
    }

    #statement {
        padding-top: 75px;
    }

    #statement .FlexWrap {
        padding: 40px 30px 40px 30px;
    }

    #statement .mainTitle {
        margin-bottom: 40px;
    }

    #statement .namBox span {
        font-size: 10px;
        padding: 5px 14px 6px 14px;
    }

    #statement .FlexWrap .imgBox {
        margin-bottom: 12px;
    }

    #statement .FlexWrap h4 {
        font-size: 18px;
        margin-bottom: 24px;
    }

    #statement .FlexWrap ul li {
        padding-left: 34px;
        line-height: 23px;
        margin-bottom: 18px;
        font-size: 14px;
    }

    #statement .FlexWrap ul li::after {
        width: 26px;
        height: 26px;
    }

    #statement .namBox {
        margin-bottom: 30px;
    }

    #statement .FlexWrap .desBox .des br {
        display: none;
    }

    #statement .FlexWrap .desBox {
        padding-top: 20px;
    }

    #statement .FlexWrap .desBox .des {
        font-size: 15px;
        line-height: 32px;
    }

    #statement .FlexWrap .flex:last-child {
        margin-top: 60px;
    }

    #udCta .textBox .des br {
        display: none;
    }

    #udCta .textBox .des {
        font-size: 15px;
        line-height: 36px;
        margin-bottom: 14px;
    }

    #udCta .textBox h3 {
        font-size: 20px;
        margin-bottom: 17px;
    }

    #udCta .loopSlide {
        height: 60px;
    }

    #udCta .textBox {
        margin-top: -19px;
    }

    #udCta {
        margin-top: 52px;
        padding-bottom: 80px;
        margin-bottom: 80px;
    }

    .reservFlexImg img {
        height: 100px;
    }

    .reservFlexImg {
        margin-top: 50px;
    }

    #udCta .textBox h3 {
        line-height: 40px;
    }

    .reservationOp {
        margin-top: 16px;
    }

    .udCommonTitle .desBox .des br {
        display: none;
    }

    .recommendInner {
        padding: 118px 30px 40px 30px;
        border-radius: 16px;
    }

    #recommend .titleBox h3 {
        font-size: 18px;
        margin-bottom: -10px;
    }

    #recommend ul li {
        font-size: 14px;
        font-weight: 600;
        margin-bottom: 14px;
        line-height: 24px;
    }

    #recommend ul {
        margin-top: 20px;
        padding: 24px 24px;
    }

    #experience {
        padding: 0 30px;
        margin-bottom: 80px;
    }

    .experienceInner .textBox {
        margin-bottom: 50px;
    }

    .experienceInner .des br {
        display: none;
    }

    #flow .flowInner::after {
        width: 200px;
        height: 11px;
    }

    .experienceInner .flex .inFlex {
        column-gap: 27px;
        margin-bottom: 40px;
    }

    .experienceInner .inFlex img {
        object-fit: cover;
        height: 130px;
    }

    .experienceInner .flex .inTextBox .nam span {
        font-size: 10px;
    }

    .experienceInner .flex .inTextBox .nam {
        margin-bottom: 17px;
        padding: 0 12px 6px 14px;
    }

    .experienceInner .inFlex .des {
        font-size: 14px;
        line-height: 22px;
    }

    #flow .flexBox .flex p {
        font-size: 16px;
        letter-spacing: 0.06em;
        line-height: 26px;
    }

    #flow .flexBox {
        margin-bottom: 45px;
    }

    .flowLine {
        margin-bottom: 30px;
    }

    #flow .commonTitle {
        margin-bottom: 47px;
    }

    #flow .flowArrow {
        margin-bottom: 19px;
    }

    #flow .flexBox .flex {
        column-gap: 18px;
        margin-bottom: 17px;
    }

    #recommend {
        margin-bottom: 80px;
    }

    #flow ul li {
        font-size: 10px;
        padding: 6px 8px 8px 8px;
    }

    #flow .flex .imgBox img {
        width: 46px;
    }

    #flow .resTitle {
        font-size: 20px;
    }

    #flow .flex:first-child .imgBox {
        margin-left: 0px;
    }

    #flow .flex .imgBox {
        margin-top: 2px;
    }

    #flow .flowInner {
        padding: 60px 30px 53px 30px;
    }

    #qa.udQa {
        padding: 30px 8px 70px 8px;
    }

    .udQa .commonTitle {
        margin-bottom: 47px;
    }

    #udCta.resudCta .textBox {
        margin-top: -29px;
    }

    .familyPlanBox {
        padding: 50px 0 60px 0;
    }

    .familyPlanBox .opDes {
        font-size: 16px;
        padding: 0 30px;
        line-height: 36px;
        letter-spacing: 0.06em;
        font-weight: 500;
        margin-bottom: 40px;
    }

    .anchorBox ul a {
        padding-bottom: 16px;
        margin-bottom: 16px;
    }

    .anchorBox ul a::after {
        width: 12px;
        height: 6px;
        right: 0;
        left: auto;
        bottom: 36px;
    }

    .familyPlanBox .conFlex {
        padding: 0 30px;
        margin-top: 40px;
    }

    .familyPlanBox .commonFtitle .imgBox img {
        width: 90%;
    }

    .familyPlanBox .commonFtitle::after {
        width: 37px;
        height: 4px;
    }

    .familyPlanBox .commonFtitle h4 {
        font-size: 18px;
    }

    .familyPlanBox .commonFtitle {
        left: 20px;
        width: 310px;
        box-sizing: border-box;
        padding: 0 20px;
        height: 80px;
        margin-top: -30px;
    }

    .anchorBox ul .nam {
        font-size: 10px;
        margin-bottom: -2px;
    }

    .anchorBox {
        padding: 30px 30px;
        margin-top: 40px;
    }

    .anchorBox ul .title {
        font-size: 15px;
    }

    .familyPlanBox .conBox .inFlex h5 {
        font-size: 16px;
    }

    .familyPlanBox .conBox .inFlex .time {
        width: 68px;
        height: 12px;
        padding-bottom: 2px;
        margin-top: 3px;
        font-size: 12px;
    }

    .familyPlanBox .conBox {
        margin-bottom: 50px;
    }

    .familyPlanBox .conBox .des {
        font-size: 15px;
        line-height: 30px;
        font-weight: 400;
    }

    .familyPlanBox .conBox .inFlex {
        column-gap: 13px;
        margin-bottom: 18px;
    }

    .familyPlanBox {
        overflow: hidden;
    }

    .familyPlanBox .easeBoxInner {
        padding: 0 30px 40px 30px;
    }

    .familyPlanBox .easyCommBox {
        border-radius: 30px;
        padding: 20px 30px;
        font-size: 15px;
        line-height: 30px;
        margin-top: 52px;
    }

    .familyPlanBox .easymainImg img {
        transform: scale(1.4);
    }

    .familyPlanBox .mainP {
        margin-bottom: 34px;
    }

    .familyPlanBox .mainP p br {
        display: none;
    }

    .easyarrow {
        margin-bottom: 6px;
        margin-top: -4px;
    }

    .familyPlanBox .mainP p {
        font-size: 16px;
        line-height: 30px;
    }

    .familyPlanBox .easeBoxInner .des {
        font-size: 16px;
        line-height: 30px;
    }

    .familyPlanBox .mainP p span {
        font-size: 18px;
    }

    .familyPlanBox .easeBoxInner h4 {
        font-size: 16px;
        padding: 8px 20px 11px 20px;
        width: 100%;
        box-sizing: border-box;
        line-height: 28px;
        margin-top: -26px;
        top: -10px;
        margin-bottom: 20px;
    }

    .familyPlanBox .imgFlexBox {
        margin-top: 40px;
    }

    #fPlan02 {
        padding-top: 70px;
    }

    #fPlan03 {
        padding-top: 70px;
    }

    #fPlan04 {
        padding-top: 70px;
    }

    .familyPlanBox .outdoorFlex h5 {
        line-height: 36px;
        font-size: 18px;
    }

    .familyPlanBox .outdoorFlex h5 br {
        display: none;
    }

    .familyPlanBox .imgFlexBox .imgBox {
        margin-bottom: 25px;
    }

    .familyPlanBox .imgFlexBox {
        padding: 0 30px;
    }

    .familyPlanBox .outdoorFlex {
        margin-top: 40px;
        padding: 0 30px;
    }

    .familyPlanBox .imgFlexBox h5 {
        line-height: 36px;
        font-size: 18px;
    }

    .familyPlanBox .imgFlexBox h5 br {
        display: none;
    }

    .familyPlanBox .outdoorFlex ul li {
        padding-left: 34px;
        line-height: 23px;
        margin-bottom: 18px;
        font-size: 14px;
    }

    .familyPlanBox .outdoorFlex ul li::after {
        width: 26px;
        height: 26px;
    }

    .familyPlanBox .outdoormainImg img {
        transform: scale(1.4);
    }

    .outdoormainImgWrap {
        padding: 0 30px;
    }

    .udIdeaWrap .ideaComFlex .textBox h5 {
        font-size: 20px;
        line-height: 32px;
        margin-bottom: 26px;
    }

    .udIdeaWrap .ideaComFlex .bam {
        width: 76px;
        height: 17px;
        padding-bottom: 2px;
        margin-bottom: 14px;
        font-size: 10px;
    }

    .udIdeaWrap .mainBoxTitle {
        margin-bottom: 49px;
    }

    .udIdeaWrap .mainBoxTitle p {
        font-size: 15px;
    }

    .udIdeaWrap .mainBoxTitle p br {
        display: none;
    }

    .udIdeaWrap .threePoint {
        margin-top: 40px;
    }

    .commonIdeaImage {
        margin-top: 8px;
    }

    .udIdeaWrap .threePoint .textBox {
        width: auto;
        padding: 18px 20px;
    }

    .udIdeaWrap .threePoint .inconFlex {
        display: block;
        border-radius: 6px;
        column-gap: 32px;
        padding: 0;
        margin-bottom: 20px;
    }

    .udIdeaWrap .titleBox p {
        font-size: 18px;
    }

    .udIdeaWrap .threePoint .imgBox img {
        height: 202px;
    }

    .udIdeaWrap .threePoint .imgBox {
        width: auto;
    }

    .udIdeaWrap .threePoint .textBox p {
        font-size: 15px;
        line-height: 28px;
    }

    .udIdeaWrap .threePoint h6 {
        font-size: 18px;
        line-height: 30px;
        margin-bottom: 14px;
    }

    .familyPlanBox .outdooCommBox {
        border-radius: 30px;
        padding: 20px 30px;
        font-size: 15px;
        line-height: 30px;
        margin-top: 52px;
    }

    .udIdeaWrap .ideaComFlex {
        margin-bottom: 25px;
    }

    .udIdeaWrapUnner {
        padding: 0 30px;
    }

    .udIdeaWrap {
        padding: 60px 0 60px 0;
    }

    .udIdeaWrap .floorPlan {
        margin-top: 28px;
        column-gap: 8px;
    }

    #idea02,
    #idea03,
    #idea04 {
        padding-top: 80px;
    }

    .udIdeaWrap .ideaComFlex ul li {
        padding-left: 34px;
        line-height: 23px;
        margin-bottom: 18px;
        font-size: 14px;
    }

    .udIdeaWrap .ideaComFlex ul li::after {
        width: 26px;
        height: 26px;
    }

    #udmessage .plancommonUdFlex .commonTitle {
        margin-bottom: 30px;
    }

    #udmessage .plancommonUdFlex .textBox {
        width: auto;
    }

    #udmessage.tokiM {
        padding-bottom: 60px;
    }

    .commonIdeaImage .titleBox h6 {
        font-size: 18px;
        padding: 8px 14px;
    }

    .tokiDesBox {
        margin-bottom: 39px;
    }

    .tokiDesBox .imgBox img {
        max-width: 180px;
    }

    .tokiDesBox .tokiTitle {
        font-size: 18px;
        line-height: 30px;
        margin-bottom: 1px;
    }

    .tokiDesBox .name {
        font-size: 11px;
        letter-spacing: 0.03em;
    }

    .tokiDesBox .imgBox {
        margin-bottom: 23px;
    }

    .design .titleBox h4 {
        font-size: 20px;
    }

    .design .titleBox::after {
        top: -19px;
    }

    .design .tableBox {
        overflow: scroll;
    }

    .design .tableBox img {
        max-width: none;
        width: 640px;
    }

    .plus1ListBoxInner .mtitleBox p {
        padding: 9px 20px;
        line-height: 26px;
    }

    .plus1Box .titleBox .des br {
        display: none;
    }

    .plus1Box .titleBox .des {
        line-height: 34px;
        margin-bottom: 21px;
    }

    .plus1Box .plusarrow {
        margin-bottom: 21px;
    }

    .quality .titleBox {
        margin-bottom: 33px;
    }

    .spAten {
        display: block;
        padding: 0 30px;
        font-size: 12px;
    }

    .quality {
        padding: 60px 30px;
    }

    .plus1Box .titleBox .subTitle {
        font-size: 14px;
    }

    .plus1Box .titleBox h4 {
        font-size: 20px;
        margin-bottom: 9px;
    }

    .quality .titleBox h5 {
        font-size: 20px;
        line-height: 36px;
    }

    .plus1ListBoxInner .nam {
        font-size: 12px;
    }

    .design {
        margin-bottom: 60px;
    }

    .planDline {
        margin-bottom: 60px;
    }

    .plus1ListBox {
        padding: 0 30px 60px 30px;
    }

    .plus1ListBoxInner h6 {
        margin-top: 1px;
        line-height: 24px;
    }

    .otherListBox ul li::after {
        width: 5px;
        height: 5px;
        left: 12px;
        top: 14px;
    }

    .quality .flex h6 {
        margin-top: 11px;
    }

    .quality .flex {
        gap: 46px 3%;
    }

    .quality .flex {
        margin-bottom: 80px;
    }

    .otherListBox ul {
        padding: 18px 16px;
    }

    .otherListBox {
        padding: 24px 15px;
        margin-bottom: 45px;
    }

    .otherListBox ul li {
        font-size: 11px;
        padding: 2px 12px 2px 24px;
    }

    .otherFNavInner .jatitle {
        font-size: 12px;
        margin-bottom: -2px;
    }

    .otherListBox .titleBoxs {
        margin-top: -39px;
    }

    .plus1ListBoxInner .mtitleBox {
        top: -26px;
    }

    .plus1ListBoxInner .flex {
        margin-top: 22px;
    }

    .otherFNav {
        padding: 8px;
    }

    .otherFNavInner {
        display: block;
    }

    .plus1Box .titleBox {
        margin-bottom: 74px;
    }

    .otherFNavInner a {
        height: 120px;
        margin-left: 0;
        margin-top: -1px;
    }

    .planDline span {
        height: 2px;
    }

    .otherFNavInner .arrowLink {
        bottom: 45px;
        right: 18px;
        width: 24px;
        height: 24px;
    }

    .otherFNavInner .arrowLink::before,
    .otherFNavInner .arrowLink::after {
        top: 9px;
        right: 8px;
        width: 7px;
        height: 7px;
    }

    .otherFNav {
        margin-bottom: 80px;
    }

    .postOpBox h3 {
        font-size: 20px;
    }

    header .gnavFlex ul a::after {
        top: 16px;
    }

    .commonPostWrap .breack {
        margin-bottom: 38px;
    }

    .commonPostWrap .mainBox {
        padding: 0 34px;
    }

    .postLine {
        margin: 31px 0 9px 0;
    }

    .commonPostWrap {
        padding: 114px 0 77px 0;
    }

    .commonPostWrap .textBox .enTitle {
        font-size: 20px;
    }

    .commonPostWrap .textBox .jaTitle {
        font-size: 11px;
        margin-bottom: -28px;
    }

    .commonPostWrap .catBox {
        margin-bottom: 13px;
    }

    .commonPostWrap .dataBox ul li {
        padding-left: 21px;
        font-size: 12px;
        letter-spacing: 0;
        line-height: 20px;
        margin-bottom: 7px;
    }

    .commonPostWrap .postOpBox {
        margin-bottom: 26px;
    }

    .postOtBox .otBox h3 {
        border-left: solid 4px #000;
    }

    .otCta.udotCta {
        padding: 0;
    }

    .otCta.udotCta .imgBox img {
        height: 193px;
    }

    .otCta.udotCta .otCtaInner h3 {
        font-size: 19px;
        margin-bottom: 12px;
    }

    .otCta.udotCta {
        margin-top: 130px;
        margin-bottom: 60px;
    }

    .postOtBox .otBox h3 {
        font-size: 18px;
        padding-left: 10px;
    }

    .postOtBox dl dt {
        padding: 14px 14px;
        line-height: 22px;
        line-height: 28px;
    }

    .commonPostWrap {
        margin-bottom: 80px;
    }

    .postOtBox .map {
        padding-top: 76%;
    }

    .postOtBox dl dd {
        line-height: 22px;
        padding: 14px 14px;
        font-size: 12px;
    }

    .pageBack a {
        height: 87px;
        font-size: 14px;
    }

    .postOtBox {
        margin-top: 60px;
    }

    .postOtBox .adress {
        font-size: 13px;
        margin-top: 14px;
        line-height: 26px;
    }

    .wpConBox p {
        margin-top: 25px;
        line-height: 30px;
        font-size: 15px;
    }

    .wpConBox h5 {
        font-size: 18px;
        margin-top: 40px;
        line-height: 30px;
        font-weight: 600;
    }

    .wpConBox h4 {
        font-size: 20px;
        margin-top: 40px;
        line-height: 33px;
    }

    .commonPostWrap .breack {
        font-size: 10px;
    }

    .post_page_navi {
        margin-top: 76px;
        padding: 35px 16px;
        column-gap: 82px;
    }

    .post_page_navi span {
        font-size: 12px;
        letter-spacing: 0;
    }

    .singlepostnavi {
        padding: 0 8px;
    }

    .udIdeaWrap .dataWrap {
        padding: 12px 22px 20px 22px;
    }

    .udIdeaWrap .dataWrap .sizeBox {
        font-size: 18px;
        text-decoration: underline;
        margin-bottom: 12px;
    }

    .udIdeaWrap .dataWrap .title {
        font-size: 13px;
        opacity: 0.6;
        margin-bottom: 13px;
        margin-right: 0;
    }

    .next_child .next::before {
        width: 34px;
        right: 45px;
    }

    .prev_child .prev::before {
        width: 34px;
        left: 45px;
    }

    .udIdeaWrap .dataWrap .inFlex {
        display: block;
    }

    .udIdeaWrap .dataWrap .title::after {
        display: none;
    }

    .udIdeaWrap .dataWrap .detail span {
        margin: 0 0;
    }

    #leisu .conIn .enTitle {
        font-size: 10px;
        letter-spacing: 0;
        margin-bottom: 0px;
    }

    #leisu h4 {
        line-height: 33px;
        font-size: 20px;
    }

    #leisu .titleBox img {
        width: 100%;
    }

    #leisu .mainDesBox p {
        font-size: 23px;
        line-height: 43px;
    }

    #leisu .midText p {
        font-size: 16px;
        margin-top: 4px;
    }

    #leisu {
        padding: 60px 30px;
    }

    #eaFlow .effFlexBox > div {
        margin-bottom: 20px;
    }

    #leisu .enT {
        padding: 2px 10px 3px 10px;
        font-size: 12px;
    }

    #eaFlow .effTitleBox h5 {
        font-size: 24px;
    }

    #eaFlow .effFlexBox .conBox p br {
        display: block;
    }

    #eaFlow .effFlexBox .conBox {
        padding: 21px 20px 16px 20px;
    }

    #leisu .conIn h5 {
        font-size: 20px;
    }

    #leisu .conIn .des {
        font-size: 14px;
        line-height: 30px;
    }

    #eaFlow .effFlexBox .imgBox img {
        max-width: 164px;
    }

    #leisu .conIn {
        padding: 26px 24px;
    }

    #eaFlow .titleBox::after {
        top: -23px;
    }

    #eaFlow .mainImgWrap .mainImgWrapCommBox {
        padding: 20px 24px;
        font-size: 15px;
    }

    #eaFlow {
        padding: 80px 30px 40px 30px;
        margin-bottom: 50px;
    }

    #eaFlow .titleBox h4 {
        font-size: 20px;
    }

    #eaFlow .effFlexBox {
        margin-bottom: 64px;
    }

    #eaFlow .titleBox {
        margin-bottom: 42px;
    }

    #eaFlow .commonEffFlex h6 {
        margin-bottom: 17px;
    }

    #eaFlow .commonEffFlex {
        display: block;
        padding: 48px 20px 28px 20px;
        margin-bottom: 30px;
    }

    #eaFlow .commonEffFlex > div {
        width: auto;
    }

    #eaFlow .subTitleBox h5 {
        font-size: 16px;
        padding: 9px 21px;
    }

    #eaFlow .commonEffFlex .imgBox {
        margin-bottom: 20px;
    }

    #instagram .mainBox {
        margin: 29px auto;
    }

    .udIdeaWrap .floorPlan {
        padding: 0;
    }

    .hero video {
        object-position: 40%;
    }

    #instagram .mainBox > div {
        width: 33%;
    }

    #instagram .mainBox {
        gap: 2px 0;
    }

    #instagram .mainBox > div:nth-child(7),
    #instagram .mainBox > div:nth-child(8) {
        display: none;
    }
}
