@charset "utf-8";

/*==============================
    page top（MODELHOUSE）
==============================*/
.indexModelhouse .secPageTop .pageTopBg{
    background-image:url("../img/modelhouse/bgPageTop.jpg");
}
.indexModelhouse .secPageTop .pageTopTit{
    margin-top:6.6rem;
}
@media only screen and (max-width:1215px){
    .indexModelhouse .secPageTop .pageTopBg{
        background-image:url("../img/modelhouse/bgPageTopSp.jpg");
    }
    .indexModelhouse .secPageTop .pageTopTit{
        margin-top:0;
    }
}

/*==============================
    secModelhouseList
==============================*/
.secModelhouseList{
    padding:7.6rem 0 10rem;
    background:var(--bgColorBeige);
}
.secModelhouseList .modelhouseListSelect{
    display:none;
}
.secModelhouseList .modelhouseListTab{
    display:flex;
    flex-wrap:nowrap;
    gap:0.8rem;
    margin:0 0 5rem;
    list-style:none;
    border-bottom:1px solid var(--borderColor);
}
.secModelhouseList .modelhouseListTabItem{
    flex:1 1 0;
    min-width:0;
}
.secModelhouseList .modelhouseListTabBtn{
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    box-sizing:border-box;
    width:100%;
    height:6.5rem;
    padding:0 1.2rem;
    border:1px solid transparent;
    border-bottom:none;
    border-radius:4px 4px 0 0;
    background:var(--bgColor);
    font-size:var(--pcFontSize15);
    line-height:1;
    letter-spacing:var(--pcLetterSpacing40);
    color:var(--textColor);
    font-weight:bold;
    text-decoration:none;
    cursor:pointer;
}
.secModelhouseList .modelhouseListTabBtn.isActive{
    bottom:-1px;
    z-index:1;
    border-color:var(--borderColor);
    border-bottom-color:transparent;
    background:var(--bgColorBeige);
}
.secModelhouseList .modelhouseListTabBtn.isActive::after{
    content:"";
    position:absolute;
    right:0;
    bottom:-1px;
    left:0;
    z-index:1;
    height:2px;
    background:var(--bgColorBeige);
}
.secModelhouseList .modelhouseList{
    display:flex;
    flex-wrap:wrap;
    gap:6rem 5rem;
    margin:0;
    list-style:none;
}
.secModelhouseList .modelhouseListItem{
    width:calc((100% - 10rem) / 3);
}
.secModelhouseList .modelhouseCard{
    position:relative;
    display:flex;
    flex-direction:column;
    height:100%;
    overflow:hidden;
    background:var(--bgColor);
}
.secModelhouseList .modelhouseCardMedia{
    position:relative;
    z-index:2;
    overflow:visible;
}
.secModelhouseList .modelhouseCardImgWrap{
    overflow:hidden;
    aspect-ratio:540 / 360;
}
.secModelhouseList .modelhouseCardImg{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    vertical-align:bottom;
    transition:transform 0.4s ease-out;
}
.secModelhouseList .modelhouseCard:hover .modelhouseCardImg{
    transform:scale(1.05);
}
.secModelhouseList .modelhouseCardNew{
    position:absolute;
    bottom:-1rem;
    left:2rem;
    z-index:4;
    display:flex;
    justify-content:center;
    align-items:center;
    box-sizing:border-box;
    width:4.4rem;
    height:2.4rem;
    margin:0;
    background:var(--bgColorNew);
    font-size:var(--pcFontSize11);
    line-height:1;
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:700;
    color:var(--textColor);
}
.secModelhouseList .modelhouseCardPoint{
    position:absolute;
    inset:0;
    z-index:3;
    display:flex;
    flex-direction:column;
    justify-content:center;
    box-sizing:border-box;
    padding:3.2rem 5rem;
    background:var(--maskColorDark65);
    color:var(--textColorWhite);
    opacity:0;
    visibility:hidden;
    transition:opacity 0.35s ease, visibility 0.35s ease;
}
.secModelhouseList .modelhouseCardMedia:hover .modelhouseCardPoint{
    opacity:1;
    visibility:visible;
}
.secModelhouseList .modelhouseCardPointTit{
    margin:0;
    padding:0 0 1.8rem;
    border-bottom:1px solid var(--textColorWhite55);
    font-size:var(--pcFontSize30);
    line-height:1;
    letter-spacing:var(--pcLetterSpacing80);
    font-weight:500;
    text-align:center;
}
.secModelhouseList .modelhouseCardPointList{
    margin:0;
    padding:0;
    list-style:none;
}
.secModelhouseList .modelhouseCardPointItem{
    position:relative;
    padding:1rem 1.5rem;
    border-bottom:1px solid var(--textColorWhite55);
    font-size:var(--pcFontSize15);
    line-height:calc(24 / 15);
    letter-spacing:var(--pcLetterSpacing40);
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
}
.secModelhouseList .modelhouseCardBody{
    position:relative;
    z-index:1;
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
    box-sizing:border-box;
    padding:2.4rem 2.4rem 2.8rem;
    background:var(--bgColor);
}
.secModelhouseList .modelhouseCardSub{
    overflow:hidden;
    margin:0 0 1rem;
    font-size:var(--pcFontSize13);
    line-height:calc(20 / 13);
    letter-spacing:var(--pcLetterSpacing40);
    color:var(--textColorWarmGray);
    white-space:nowrap;
    text-overflow:ellipsis;
}
.secModelhouseList .modelhouseCardName{
    display:-webkit-box;
    overflow:hidden;
    margin:0 0 1.6rem;
    font-size:var(--pcFontSize22);
    line-height:calc(34 / 22);
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:700;
    text-overflow:ellipsis;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
}
.secModelhouseList .modelhouseCardInfo{
    margin:0 0 2.4rem;
}
.secModelhouseList .modelhouseCardInfoRow{
    display:flex;
    align-items:flex-start;
    margin:0 0 0.4rem;
    font-size:var(--pcFontSize13);
    line-height:calc(22 / 13);
    letter-spacing:var(--pcLetterSpacing20);
}
.secModelhouseList .modelhouseCardInfoRow:last-child{
    margin:0;
}
.secModelhouseList .modelhouseCardInfoTit{
    flex-shrink:0;
}
.secModelhouseList .modelhouseCardInfoTit::after{
    content:"";
    display:inline-block;
    width:1px;
    height:1em;
    margin:0 1rem;
    background:var(--textColor);
    vertical-align:-0.1em;
}
.secModelhouseList .modelhouseCardInfoTxt{
    margin:0;
}
.secModelhouseList .modelhouseCardInfoTxt a{
    color:inherit;
    text-decoration:none;
}
.secModelhouseList .modelhouseCardBtns{
    display:flex;
    gap:1rem;
    margin-top:auto;
}
.secModelhouseList .modelhouseCardBtnDetail,
.secModelhouseList .modelhouseCardBtnReserve{
    position:relative;
    display:flex;
    align-items:center;
    flex:1 1 0;
    box-sizing:border-box;
    height:5.6rem;
    padding:0 3.2rem 0 1.6rem;
    border-radius:0.4rem;
    font-size:var(--pcFontSize14);
    line-height:1;
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:bold;
    text-decoration:none;
    transition:opacity 0.3s ease;
}
.secModelhouseList .modelhouseCardBtnDetail:hover,
.secModelhouseList .modelhouseCardBtnReserve:hover{
    opacity:0.8;
}
.secModelhouseList .modelhouseCardBtnDetail{
    background:var(--bgColorBeige);
    color:var(--bgColorDark);
}
.secModelhouseList .modelhouseCardBtnReserve{
    background:var(--btnReserveBg);
    color:var(--textColorWhite);
}
.secModelhouseList .modelhouseCardBtnArrow{
    position:absolute;
    top:0;
    right:1.4rem;
    bottom:0;
    width:17px;
    height:5px;
    margin:auto 0;
}
.secModelhouseList .modelhouseCardBtnDetail .modelhouseCardBtnArrow{
    filter:brightness(0);
}
@media only screen and (max-width:1600px){
    .secModelhouseList .modelhouseCardPointTit {
        font-size: var(--pcFontSize24);
    }
    .secModelhouseList .modelhouseCardPointItem {
        font-size: var(--pcFontSize13);
    }
}
@media only screen and (max-width:1215px){
    .secModelhouseList{
        padding:3.4rem 0 4.8rem;
    }
    /* SPは画面幅いっぱいをコンテンツ幅に（wrapperSp / wrapperFitを解除） */
    .secModelhouseList .modelhouseListInner{
        width:100%;
        max-width:40rem;
        margin:0 auto;
    }
    .secModelhouseList .modelhouseListSelect{
        position:relative;
        display:block;
        margin:0 calc((15 / 375) * var(--widthBase)) 3rem;
    }
    .secModelhouseList .modelhouseListSelectBtn{
        appearance:none;
        -webkit-appearance:none;
        display:block;
        box-sizing:border-box;
        width:100%;
        height:calc((40 / 375) * var(--widthBase));
        padding:0 3rem 0 1.5rem;
        border:none;
        border-radius:4px;
        background:var(--bgColorBeigeLight);
        font-size:var(--spFontSize12);
        line-height:1;
        letter-spacing:var(--pcLetterSpacing40);
        color:var(--textColor);
        cursor:pointer;
    }
    .secModelhouseList .modelhouseListSelect::after{
        content:"";
        position:absolute;
        top:50%;
        right:1.6rem;
        width:0;
        height:0;
        border-style:solid;
        border-width:0.6rem 0.5rem 0;
        border-color:var(--textColor) transparent transparent;
        pointer-events:none;
        transform:translateY(-25%);
    }
    .secModelhouseList .modelhouseListTab{
        display:none;
    }
    .secModelhouseList .modelhouseList{
        gap:calc((1 / 375) * var(--widthBase));
        margin:0;
    }
    .secModelhouseList .modelhouseListItem{
        width:calc((100% - (1 / 375) * var(--widthBase)) / 2);
    }
    .secModelhouseList .modelhouseCardImgWrap{
        aspect-ratio:3 / 2;
    }
    .secModelhouseList .modelhouseCard:hover .modelhouseCardImg{
        transform:none;
    }
    .secModelhouseList .modelhouseCardNew{
        width:calc((36 / 375) * var(--widthBase));
        height:calc((18 / 375) * var(--widthBase));
        font-size:var(--spFontSize10);
        letter-spacing:0;
    }
    .secModelhouseList .modelhouseCardPoint{
        display:none;
    }
    .secModelhouseList .modelhouseCardBody{
        padding:calc((12 / 375) * var(--widthBase)) calc((10 / 375) * var(--widthBase)) calc((14 / 375) * var(--widthBase));
    }
    .secModelhouseList .modelhouseCardSub{
        margin:0 0 0.4rem;
        font-size:var(--spFontSize10);
        line-height:calc(15 / 10);
        letter-spacing:0;
    }
    .secModelhouseList .modelhouseCardName{
        margin:0 0 0.8rem;
        font-size:var(--spFontSize13);
        line-height:calc(20 / 13);
    }
    .secModelhouseList .modelhouseCardInfo{
        margin:0 0 1.2rem;
    }
    .secModelhouseList .modelhouseCardInfoRow{
        margin:0;
        font-size:var(--spFontSize10);
        line-height:calc(16 / 10);
        letter-spacing:0;
    }
    /* SPデザインは住所・時間・定休のみ（電話は非表示） */
    .secModelhouseList .modelhouseCardInfoRow:last-child{
        display:none;
    }
    .secModelhouseList .modelhouseCardInfoTit::after{
        height:0.9rem;
        margin:0 0.4rem;
    }
    .secModelhouseList .modelhouseCardBtns{
        gap:calc((8 / 375) * var(--widthBase));
    }
    .secModelhouseList .modelhouseCardBtnDetail,
    .secModelhouseList .modelhouseCardBtnReserve{
        justify-content:center;
        flex:0 0 auto;
        width:calc((75 / 375) * var(--widthBase));
        height:calc((35 / 375) * var(--widthBase));
        padding:0;
        font-size:var(--spFontSize12);
        letter-spacing:0;
    }
    .secModelhouseList .modelhouseCardBtnArrow{
        display:none;
    }
}

/*==============================
    secModelhouseEvent（TOP secEventと同構成）
==============================*/
.secModelhouseEvent{
    overflow:hidden;
    padding:0 0 12rem;
    background:var(--bgColorBeige);
}
.secModelhouseEvent .modelhouseEventHead{
    margin:0 0 5rem;
}
.secModelhouseEvent .modelhouseEventSlider{
    /* 左はコンテンツ揃え、右は画面端まで伸ばして見切れを出す */
    width:calc(100% + (100vw - 100%) / 2);
    margin:0 0 4rem;
    overflow:hidden;
}
.secModelhouseEvent .swiper-slide{
    width:calc((450 / 1920) * var(--widthBase));
}
.secModelhouseEvent .eventCard{
    display:block;
}
.secModelhouseEvent .eventCardImg{
    overflow:hidden;
    margin:0 0 2rem;
    aspect-ratio:1 / 1;
}
.secModelhouseEvent .eventCardPhoto{
    width:100%;
    height:100%;
    object-fit:cover;
    vertical-align:bottom;
}
.secModelhouseEvent .eventCardTit{
    display:-webkit-box;
    overflow:hidden;
    margin:0 0 1.6rem;
    font-size:var(--pcFontSize20);
    line-height:calc(36 / 20);
    letter-spacing:var(--pcLetterSpacing40);
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}
.secModelhouseEvent .eventCardInfo{
    margin:0 0 2rem;
}
.secModelhouseEvent .eventCardInfoRow{
    display:flex;
    align-items:center;
    margin:0 0 0.6rem;
    font-size:var(--pcFontSize13);
    line-height:calc(20 / 13);
    letter-spacing:var(--pcLetterSpacing20);
}
.secModelhouseEvent .eventCardInfoTit{
    flex-shrink:0;
}
.secModelhouseEvent .eventCardInfoTit::after{
    content:"";
    display:inline-block;
    width:1px;
    height:1em;
    margin:0 1rem;
    background:var(--textColor);
    vertical-align:-0.1em;
}
.secModelhouseEvent .eventCardInfoTxt{
    margin:0;
}
.secModelhouseEvent .eventCardTag{
    display:inline-block;
    margin:0;
    padding:1rem 1.2rem;
    border-radius:0.4rem;
    background:var(--bgColorBeigeLight);
    font-size:var(--pcFontSize13);
    line-height:calc(18 / 13);
    letter-spacing:var(--pcLetterSpacing40);
}
.secModelhouseEvent .modelhouseEventFoot{
    display:flex;
    align-items:center;
    gap:3rem;
}
.secModelhouseEvent .modelhouseEventNav{
    display:flex;
    gap:1.2rem;
}
.secModelhouseEvent .modelhouseEventNavPrev,
.secModelhouseEvent .modelhouseEventNavNext{
    display:flex;
    justify-content:center;
    align-items:center;
    width:6.5rem;
    height:6.5rem;
    border:none;
    border-radius:50%;
    background:var(--bgColor);
    cursor:pointer;
    transition:opacity 0.2s ease-out;
}
.secModelhouseEvent .modelhouseEventNavPrev.swiper-button-disabled,
.secModelhouseEvent .modelhouseEventNavNext.swiper-button-disabled{
    opacity:0.35;
    cursor:default;
    pointer-events:none;
}
.secModelhouseEvent .modelhouseEventNavArrow{
    width:17px;
    height:5px;
    vertical-align:top;
    filter:brightness(0);
}
@media only screen and (max-width:1215px){
    .secModelhouseEvent{
        padding:0 0 0;
        margin-bottom: 5rem;
    }
    .secModelhouseEvent .modelhouseEventHead{
        margin:0 0 2rem;
    }
    .secModelhouseEvent .modelhouseEventSlider{
        width:calc(100% + 2rem);
        margin:0 0 2.4rem;
    }
    .secModelhouseEvent .swiper-slide{
        width:calc((305 / 375) * var(--widthBase));
    }
    .secModelhouseEvent .eventCardImg{
        margin:0 0 1.4rem;
    }
    .secModelhouseEvent .eventCardTit{
        margin:0 0 1rem;
        font-size:var(--spFontSize16);
        line-height:calc(26 / 16);
    }
    .secModelhouseEvent .eventCardInfo{
        margin:0 0 1rem;
    }
    .secModelhouseEvent .eventCardInfoRow{
        margin:0;
        font-size:var(--spFontSize11);
        line-height:calc(20 / 11);
        letter-spacing:0;
    }
    .secModelhouseEvent .eventCardInfoTit::after{
        height:1rem;
        margin:0 0.6rem;
    }
    .secModelhouseEvent .eventCardTag{
        padding:0.6rem;
        border-radius:0.3rem;
        font-size:var(--spFontSize11);
        line-height:calc(18 / 11);
        letter-spacing:0;
    }
    .secModelhouseEvent .modelhouseEventFoot{
        flex-wrap:wrap;
        gap:4%;
        justify-content:space-between;
    }
    .secModelhouseEvent .modelhouseEventNav{
        gap:0.5rem;
    }
    .secModelhouseEvent .modelhouseEventNavPrev,
    .secModelhouseEvent .modelhouseEventNavNext{
        width:calc((49 / 375) * var(--widthBase));
        height:calc((49 / 375) * var(--widthBase));
    }
    .secModelhouseEvent .modelhouseEventFoot .secListBtn{
        width:65%;
        max-width:22.5rem;
    }
    .indexModelhouse main > .pnkz{
        margin-top:4.8rem;
    }
}

/*==============================
    detailsModelhouse page top
==============================*/
.detailsModelhouse .secPageTop .pageTopBg{
    background-image:url("../img/modelhouse/bgPageTop.jpg");
}
.detailsModelhouse .secPageTop .pageTopTit{
    margin-top:6.6rem;
}
@media only screen and (max-width:1215px){
    .detailsModelhouse .secPageTop .pageTopBg{
        background-image:url("../img/modelhouse/bgPageTopSp.jpg");
    }
    .detailsModelhouse .secPageTop .pageTopTit{
        margin-top:0;
    }
}

/*==============================
    secModelhouseDetail
==============================*/
.secModelhouseDetail{
    padding:6rem 0 0;
    background:var(--bgColorBeige);
}
.modelhouseDetailHead{
    margin:0 0 4rem;
    text-align:center;
}
.modelhouseDetailTit{
    margin:0 0 1.2rem;
    font-size:var(--pcFontSize36);
    line-height:calc(52 / 36);
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:500;
}
.modelhouseDetailSub{
    margin:0;
    font-size:var(--pcFontSize15);
    line-height:calc(24 / 15);
    letter-spacing:var(--pcLetterSpacing40);
}
.modelhouseDetailSlider{
    margin:0 0 6rem;
}
.modelhouseDetailMainWrap{
    position:relative;
    margin:0 0 1.5rem;
}
.modelhouseDetailMainSwiper{
    overflow:hidden;
    width:100%;
    height:61rem;
}
.modelhouseDetailMainSwiper .swiper-slide{
    display:flex;
    align-items:center;
    justify-content:center;
    height:61rem;
}
.modelhouseDetailMainImg,
.modelhouseDetailThumbImg{
    width:100%;
    height:100%;
    object-fit:cover;
}
.modelhouseDetailMainImg{
    object-fit:contain;
    object-position:center;
    background:var(--bgColorBeige);
}
.modelhouseDetailThumbImg{
    vertical-align:bottom;
}
.modelhouseDetailSliderPrev,
.modelhouseDetailSliderNext,
.modelhouseDetailThumbPrev,
.modelhouseDetailThumbNext{
    position:absolute;
    top:50%;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:center;
    border:none;
    border-radius:50%;
    cursor:pointer;
}
.modelhouseDetailSliderPrev,
.modelhouseDetailSliderNext{
    width:6.5rem;
    height:6.5rem;
    background:var(--whiteColor);
    box-shadow:0 0.2rem 0.8rem var(--shadowColor12);
}
.modelhouseDetailThumbPrev,
.modelhouseDetailThumbNext{
    width:4.8rem;
    height:4.8rem;
    background:var(--maskColorDarkGray70);
}
.modelhouseDetailSliderPrev,
.modelhouseDetailThumbPrev{
    left:0;
    transform:translate(-50%, -50%);
}
.modelhouseDetailSliderNext,
.modelhouseDetailThumbNext{
    right:0;
    transform:translate(50%, -50%);
}
.modelhouseDetailSliderPrev.swiper-button-disabled,
.modelhouseDetailSliderNext.swiper-button-disabled,
.modelhouseDetailThumbPrev.swiper-button-disabled,
.modelhouseDetailThumbNext.swiper-button-disabled{
    opacity:0;
    pointer-events:none;
}
.modelhouseDetailSliderArrow{
    width:1.7rem;
    height:0.5rem;
    filter:brightness(0);
}
.modelhouseDetailThumbArrow{
    width:1.4rem;
    height:auto;
    filter:brightness(0) invert(1);
}
.modelhouseDetailThumbsWrap{
    position:relative;
}
.modelhouseDetailSlider.isSingle .modelhouseDetailThumbsWrap{
    display:none;
}
.modelhouseDetailSlider.isSingle .modelhouseDetailMainWrap{
    margin-bottom:0;
}
.modelhouseDetailThumbSwiper{
    overflow:hidden;
}
.modelhouseDetailThumbSwiper .swiper-slide{
    width:23.2rem;
    height:11.8rem;
}
.modelhouseDetailThumbBtn{
    position:relative;
    display:block;
    width:100%;
    height:100%;
    padding:0;
    border:none;
    background:none;
    cursor:pointer;
    overflow:hidden;
}
.modelhouseDetailThumbBtn::after{
    content:"";
    position:absolute;
    inset:0;
    background:var(--maskColorDark55);
    opacity:0;
    transition:opacity 0.25s ease;
    pointer-events:none;
}
.modelhouseDetailThumbSwiper .swiper-slide-thumb-active .modelhouseDetailThumbBtn::after{
    opacity:1;
}
.modelhouseDetailLead{
    margin:0 0 6rem;
}
.modelhouseDetailLeadTit{
    margin:0 0 2.4rem;
    font-size:var(--pcFontSize24);
    line-height:calc(40 / 24);
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:500;
}
.modelhouseDetailLeadTxt{
    margin:0;
    font-size:var(--pcFontSize15);
    line-height:calc(32 / 15);
    letter-spacing:var(--pcLetterSpacing40);
}
.modelhouseDetailTable{
    width:100%;
    margin:0 0 6rem;
    border-collapse:collapse;
}
.modelhouseDetailTableRow{
    border-top:1px solid var(--bgColorBeige);
}
.modelhouseDetailTableRow:first-child{
    border-top:none;
}
.modelhouseDetailTableTit{
    width:15rem;
    padding:1.8rem 2.4rem;
    border-right:1px solid var(--bgColorBeige);
    background:var(--borderColorBeige);
    font-size:var(--pcFontSize15);
    line-height:calc(26 / 15);
    letter-spacing:var(--pcLetterSpacing40);
    vertical-align:middle;
    text-align:center;
}
.modelhouseDetailTableTxt{
    padding:1.8rem 2rem;
    background:var(--bgColor);
    font-size:var(--pcFontSize15);
    line-height:calc(28 / 15);
    letter-spacing:var(--pcLetterSpacing20);
    vertical-align:middle;
}
.modelhouseDetailMapLink{
    color:var(--linkColorBlue);
    text-decoration:underline;
    text-underline-offset:0.3rem;
}
/* body（エディタ出力：boxEntry entry + editor_reset.css） */
/* intro（2×2画像＋テキスト） */
.modelhouseDetailIntro{
    margin:0 0 10rem;
}
.modelhouseDetailIntroGrid{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:0;
    margin:0 0 4rem;
    padding:0;
    list-style:none;
}
.modelhouseDetailIntroGridItem{
    overflow:hidden;
    aspect-ratio:600 / 305;
}
.modelhouseDetailIntroGridImg{
    display:block;
}
.modelhouseDetailIntroTxt{
    margin:0;
    font-size:var(--pcFontSize15);
    line-height:calc(32 / 15);
    letter-spacing:var(--pcLetterSpacing40);
}

.modelhouseDetailBody{
    margin:0 0 10rem;
}
.modelhouseDetailCta,
.modelhouseDetailApply{
    margin:0 0 12rem;
    text-align:center;
}
.modelhouseDetailApply{
    padding:0;
    background:var(--bgColorBeige);
}
.modelhouseDetailCtaBtn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:1.6rem;
    box-sizing:border-box;
    width:80rem;
    max-width:100%;
    height:10.5rem;
    margin:0 auto;
    border-radius:10rem;
    background:var(--contactColor);
    color:var(--textColorWhite);
    font-size:var(--pcFontSize24);
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:bold;
    text-decoration:none;
    transition:opacity 0.3s ease;
}
.modelhouseDetailCtaBtn:hover{opacity:0.8;}
.modelhouseDetailCtaIco{
    flex-shrink:0;
    width:2.4rem;
    height:2.4rem;
    vertical-align:bottom;
    filter:brightness(0) invert(1);
}
@media only screen and (max-width:1215px){
    .secModelhouseDetail{padding:3rem 0 0;}
    .modelhouseDetailHead{margin:0 0 2.4rem;}
    .modelhouseDetailTit{
        margin:0 0 0.8rem;
        font-size:var(--spFontSize22);
        line-height:calc(34 / 22);
    }
    .modelhouseDetailSub{font-size:var(--spFontSize13);}
    .modelhouseDetailSlider{margin:0 0 3rem;}
    .modelhouseDetailMainWrap{margin:0 0 0.5rem;}
    .modelhouseDetailMainSwiper,
    .modelhouseDetailMainSwiper .swiper-slide{
        height:auto;
        aspect-ratio:1200 / 610;
    }
    .modelhouseDetailSliderPrev,
    .modelhouseDetailSliderNext{
        width:calc((41 / 375) * var(--widthBase));
        height:calc((41 / 375) * var(--widthBase));
    }
    .modelhouseDetailSliderPrev{
        left:10px;
    }
    .modelhouseDetailSliderNext{
        right:10px;
    }
    .modelhouseDetailThumbSwiper .swiper-slide{
        width:calc((100% - 15px) / 4);
        height:auto;
        aspect-ratio:1200 / 600;
    }
    .modelhouseDetailThumbPrev,
    .modelhouseDetailThumbNext{
        display:none;
    }
    .modelhouseDetailLead{
        margin:0 0 3rem;
    }
    .modelhouseDetailLeadTit{
        margin:0 0 1.6rem;
        font-size:var(--spFontSize16);
        line-height:calc(28 / 16);
    }
    .modelhouseDetailLeadTxt{
        font-size:var(--spFontSize13);
        line-height:calc(26 / 13);
    }
    .modelhouseDetailTable{
        margin-bottom:3rem;
    }
    .modelhouseDetailTableTit{
        display:table-cell;
        width:8.8rem;
        padding:1.4rem 1rem;
        font-size:var(--spFontSize13);
    }
    .modelhouseDetailTableTxt{
        padding:1.4rem 1.4rem;
        font-size:var(--spFontSize13);
        line-height:calc(24 / 13);
    }
    .modelhouseDetailIntro{margin:0 0 4rem;}
    .modelhouseDetailIntroGrid{margin:0 0 2.4rem;}
    .modelhouseDetailIntroTxt{
        font-size:var(--spFontSize12);
        line-height:calc(24 / 12);
        letter-spacing:0;
    }
    .modelhouseDetailBody{margin:0 0 4rem;}
    .modelhouseDetailCta,
    .modelhouseDetailApply{margin:0 0 5rem;}
    .modelhouseDetailCtaBtn{
        width:81.335%;
        max-width:30.5rem;
        height:calc((60 / 375) * var(--widthBase));
        gap:1rem;
        margin:0 auto;
        font-size:var(--spFontSize14);
        letter-spacing:0;
    }
    .modelhouseDetailCtaIco{
        width:14px;
        height:14px;
    }
}

/*==============================
    secModelhouseIntro
==============================*/
.secModelhouseIntro{
    padding:0 0 8rem;
    background:var(--bgColorBeige);
}
.modelhouseIntroGrid{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:0;
    margin:0 0 4rem;
    padding:0;
    list-style:none;
}
.modelhouseIntroGridItem{overflow:hidden;}
.modelhouseIntroGridImg{
    display:block;
    width:100%;
    aspect-ratio:16 / 10;
    object-fit:cover;
}
.modelhouseIntroTxt{
    margin:0;
    font-size:var(--pcFontSize15);
    line-height:calc(32 / 15);
    letter-spacing:var(--pcLetterSpacing40);
}
@media only screen and (max-width:1215px){
    .secModelhouseIntro{padding:0 0 4rem;}
    .modelhouseIntroGrid{margin:0 0 2.4rem;}
    .modelhouseIntroTxt{
        font-size:var(--spFontSize13);
        line-height:calc(26 / 13);
    }
}

/*==============================
    secModelhouseGallery
==============================*/
.secModelhouseGallery{
    padding:0 0 10rem;
    background:var(--bgColorBeige);
}
.modelhouseGalleryHead{
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:1rem;
    margin:0 0 4rem;
    text-align:center;
}
.modelhouseGalleryTitEn{
    font-size:var(--pcFontSize50);
}
.modelhouseGalleryTitJa{
    font-size:var(--pcFontSize18);
    line-height:calc(24 / 18);
}
.modelhouseGalleryLarge{
    margin:0 0 8rem;
}
.modelhouseGalleryLargeItem{
    display:flex;
    gap:6rem;
}
.modelhouseGalleryLargeItem + .modelhouseGalleryLargeItem{
    margin-top:6rem;
}
.modelhouseGalleryLargeTxt{
    flex:1 1 42%;
    min-width:0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}
.modelhouseGalleryLargeMedia{
    flex:0 1 62rem;
    width:62rem;
    max-width:52%;
    min-width:0;
}
.modelhouseGalleryLargeMedia.imgCont img,
.modelhouseGalleryLargeImg{
    display:block;
    position:static;
    top:auto;
    right:auto;
    bottom:auto;
    left:auto;
    width:100%;
    height:auto;
    max-width:100%;
    max-height:none;
    margin:0;
    object-fit:contain;
    object-position:top center;
}
.modelhouseGalleryLargeTit{
    margin:0 0 2.5rem;
    padding:0 0 2.5rem;
    border-bottom:1px solid var(--borderColorBeige);
    font-size:var(--pcFontSize24);
    line-height:calc(40 / 24);
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:700;
    width: 100%;
}
.modelhouseGalleryLargeBody{
    margin:0;
    font-size:var(--pcFontSize15);
    line-height:calc(32 / 15);
    letter-spacing:var(--pcLetterSpacing40);
}
.modelhouseGallerySmallNote,
.modelhouseGallerySmallPrev,
.modelhouseGallerySmallNext,
.modelhouseGallerySmallPagination{
    display:none;
}
.modelhouseGallerySmallSwiper{
    overflow:visible;
}
.modelhouseGallerySmallSwiper:not(.swiper-initialized) .modelhouseGallerySmall{
    display:flex;
    flex-wrap:wrap;
    gap:5rem 3.37%;
    transform:none !important;
}
.modelhouseGallerySmall{
    margin:0;
    padding:0;
    list-style:none;
}
.modelhouseGallerySmallSwiper:not(.swiper-initialized) .modelhouseGallerySmallItem{
    width:31.084%;
    height:auto;
}
.modelhouseGallerySmallItem{
    height:auto;
}
.modelhouseGallerySmallLink{
    display:block;
    color:inherit;
    text-decoration:none;
}
.modelhouseGallerySmallMedia{
    margin:0 0 2rem;
    overflow:hidden;
    aspect-ratio:620 / 415;
    background:var(--bgColor);
}
.modelhouseGallerySmallImg{
    transition:transform 0.4s ease-out;
}
.modelhouseGallerySmallLink:hover .modelhouseGallerySmallImg{
    transform:scale(1.04);
}
.modelhouseGalleryZoom{
    position:absolute;
    right:0;
    bottom:0;
    display:flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    background:none;
}
.modelhouseGalleryZoomIco{
    width:34px;
    height:34px;
    background:url("../img/event/icoZoom.png") center / contain no-repeat;
}
.modelhouseGallerySmallTit{
    margin:0 0 1.2rem;
    font-size:var(--pcFontSize18);
    line-height:calc(30 / 18);
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:bold;
}
.modelhouseGallerySmallTxt{
    margin:0;
    font-size:var(--pcFontSize15);
    line-height:calc(26 / 15);
    letter-spacing:var(--pcLetterSpacing20);
}
@media only screen and (max-width:1215px){
    .secModelhouseGallery{padding:0 0 5rem;}
    .modelhouseGalleryHead{
        gap:0.8rem;
        margin:0 0 2.4rem;
    }
    .modelhouseGalleryTitEn{
        font-size:var(--spFontSize30);
    }
    .modelhouseGalleryTitJa{
        font-size:var(--spFontSize14);
    }
    .modelhouseGalleryLargeTxt{
        display:block;
        justify-content:flex-start;
    }
    .modelhouseGalleryLarge{margin:0 0 4rem;}
    .modelhouseGalleryLargeItem{
        flex-direction:column-reverse;
        align-items:stretch;
        gap:1rem;
    }
    .modelhouseGalleryLargeItem + .modelhouseGalleryLargeItem{margin-top:4rem;}
    .modelhouseGalleryLargeMedia{
        flex:none;
        width:100%;
        max-width:none;
    }
    .modelhouseGalleryLargeTit{
        margin:0 0 1rem;
        padding:0 0 1rem;
        font-size:var(--spFontSize16);
        line-height:calc(26 / 16);
    }
    .modelhouseGalleryLargeBody{
        font-size:var(--spFontSize12);
        line-height:calc(22 / 12);
    }
    .modelhouseGallerySmallWrap{
        padding:0 1.5rem;
    }
    .modelhouseGallerySmallNote{
        display:flex;
        align-items:center;
        justify-content:flex-end;
        gap:0.6rem;
        margin:0 0 1.2rem;
    }
    .modelhouseGallerySmallNoteIco{
        flex:0 0 auto;
        border-radius:50%;
        width:calc((24 / 375) * var(--widthBase));
        height:calc((24 / 375) * var(--widthBase));
        background:url("../img/event/icoZoom.png") center / contain no-repeat;
    }
    .modelhouseGallerySmallNoteTxt{
        font-size:var(--spFontSize11);
        line-height:calc(15 / 11);
        letter-spacing:0;
        color:var(--textColor);
    }
    .modelhouseGallerySmallSlider{
        position:relative;
    }
    .modelhouseGallerySmallSwiper{
        overflow:hidden;
    }
    .modelhouseGallerySmallItem{
        width:100%;
        height:auto;
    }
    .modelhouseGallerySmallMedia{
        margin:0 0 1.6rem;
    }
    .modelhouseGalleryZoom{
        display:none;
    }
    .modelhouseGallerySmallLink:hover .modelhouseGallerySmallImg{transform:none;}
    .modelhouseGallerySmallTit{
        margin:0 0 0.5rem;
        font-size:var(--spFontSize14);
        line-height:calc(26 / 14);
    }
    .modelhouseGallerySmallTxt{
        margin:0 0 2rem;
        font-size:var(--spFontSize12);
        line-height:calc(22 / 12);
    }
    .modelhouseGallerySmallPrev,
    .modelhouseGallerySmallNext{
        position:absolute;
        top:calc(0.92 * var(--widthBase) * 415 / 620 / 2);
        z-index:2;
        display:flex;
        align-items:center;
        justify-content:center;
        width:calc((41 / 375) * var(--widthBase));
        height:calc((41 / 375) * var(--widthBase));
        border:none;
        border-radius:50%;
        background:var(--whiteColor);
        box-shadow:0 0.2rem 0.8rem var(--shadowColor12);
        cursor:pointer;
    }
    .modelhouseGallerySmallPrev{
        left:0;
        transform:translate(-50%, -50%);
    }
    .modelhouseGallerySmallNext{
        right:0;
        transform:translate(50%, -50%);
    }
    .modelhouseGallerySmallPrev.swiper-button-disabled,
    .modelhouseGallerySmallNext.swiper-button-disabled{
        opacity:0;
        pointer-events:none;
    }
    .modelhouseGallerySmallArrow{
        width:1.4rem;
        height:auto;
        filter:brightness(0);
    }
    .modelhouseGallerySmallPagination{
        position:static;
        display:flex;
        justify-content:center;
        align-items:center;
        gap:0.6rem;
        margin:0;
        bottom:0 !important;
    }
    .modelhouseGallerySmallPagination .swiper-pagination-bullet{
        width:0.5rem;
        height:0.5rem;
        margin:0 !important;
        background:var(--paginationColor);
        opacity:1;
        border-radius:50%;
    }
    .modelhouseGallerySmallPagination .swiper-pagination-bullet-active{
        background:var(--bgColorPagerActive);
    }
}

/*==============================
    secModelhouseRecommend
==============================*/
.secModelhouseRecommend{
    padding:10rem 0;
    background:var(--bgColorBeigeLight);
}
.modelhouseRecommendHead{
    margin:0 0 5rem;
    text-align:center;
}
.modelhouseRecommendTitJa{
    display:block;
    margin:0 0 1.2rem;
    font-size:var(--pcFontSize30);
    line-height:calc(48 / 30);
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:500;
}
.modelhouseRecommendTitEn{
    display:block;
    color:var(--textColorTeal);
    font-size:var(--pcFontSize16);
    line-height:1;
    letter-spacing:var(--pcLetterSpacing120);
    font-weight:500;
}
.modelhouseRecommendList{
    display:flex;
    gap:3.2rem;
    margin:0;
    padding:0;
    list-style:none;
}
.modelhouseRecommendItem{
    position:relative;
    flex:1 1 0;
    box-sizing:border-box;
    min-width:0;
    margin-top:2.4rem;
    padding:5rem 3rem 3.5rem;
    border:1px solid var(--borderColorBeige);
    background:var(--bgColorBeigeLight);
}
.modelhouseRecommendNum{
    position:absolute;
    top:0;
    left:50%;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:center;
    width:4.8rem;
    height:4.8rem;
    border-radius:50%;
    background:var(--textColorTeal);
    color:var(--textColorWhite);
    font-size:var(--pcFontSize18);
    font-weight:bold;
    transform:translate(-50%, -50%);
}
.modelhouseRecommendTxt{
    margin:0;
    font-size:var(--pcFontSize15);
    line-height:calc(32 / 15);
    letter-spacing:var(--pcLetterSpacing40);
    text-align:left;
}
@media only screen and (max-width:1215px){
    .secModelhouseRecommend{padding:5rem 0;}
    .modelhouseRecommendHead{margin:0 0 2.4rem;}
    .modelhouseRecommendTitJa{
        margin:0 0 0.8rem;
        font-size:var(--spFontSize20);
        line-height:calc(32 / 20);
    }
    .modelhouseRecommendTitEn{font-size:var(--spFontSize13);}
    .modelhouseRecommendList{
        flex-direction:column;
        gap:3.2rem;
    }
    .modelhouseRecommendItem{
        padding:4rem 2rem 2.4rem;
    }
    .modelhouseRecommendTxt{
        font-size:var(--spFontSize13);
        line-height:calc(26 / 13);
    }
}

/*==============================
    secModelhouseFloor
==============================*/
.secModelhouseFloor{
    padding:8rem 0;
    background:var(--bgColorBeige);
}
.secModelhouseGallery + .secModelhouseFloor{
    padding-top: 0;
}
.modelhouseFloorHead{
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:1rem;
    margin:0 0 5rem;
    text-align:center;
}
.modelhouseFloorTitEn{
    font-size:var(--pcFontSize50);
}
.modelhouseFloorTitJa{
    font-size:var(--pcFontSize18);
    line-height:calc(24 / 18);
}
.modelhouseFloorBox{
    display:flex;
    align-items:center;
    justify-content:center;
    box-sizing:border-box;
    width:120rem;
    max-width:100%;
    min-height:42rem;
    margin:0 auto;
    padding:5rem 4rem;
    background:var(--bgColor);
    box-shadow:0 0 0 1px var(--borderColorBeige) inset;
}
.modelhouseFloorLink{
    display:block;
    position:relative;
    width:100%;
    max-width:81.2rem;
    margin:0 auto;
    color:inherit;
    text-decoration:none;
}
.modelhouseFloorMedia{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:32rem;
    max-height:32rem;
    padding:4.167%;
    box-sizing:border-box;
}
.modelhouseFloorMedia.imgCont img,
.modelhouseFloorImg{
    position:static;
    top:auto;
    right:auto;
    bottom:auto;
    left:auto;
    display:block;
    width:auto;
    height:auto;
    max-width:100%;
    max-height:100%;
    margin:0 auto;
    object-fit:contain;
}
@media only screen and (max-width:1215px){
    .secModelhouseFloor{padding:4rem 0 5rem;}
    .secModelhouseGallery + .secModelhouseFloor{
        padding-top: 0;
    }
    .modelhouseFloorHead{
        gap:0.8rem;
        margin:0 0 2.4rem;
    }
    .modelhouseFloorTitEn{
        font-size:var(--spFontSize30);
    }
    .modelhouseFloorTitJa{
        font-size:var(--spFontSize14);
    }
    .modelhouseFloorBox{
        min-height:0;
        padding:2.4rem 1.6rem;
    }
    .modelhouseFloorMedia{
        min-height:0;
        max-height:none;
        padding:3.25%;
    }
}

/*==============================
    secModelhousePanorama
==============================*/
.secModelhousePanorama{
    position:relative;
    padding:8rem 0 10rem;
    background:var(--bgColorBeige);
}
.modelhousePanoramaBg{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:83%;
    background:var(--bgColorPanoramaPc);
}
.modelhousePanoramaInner{
    position:relative;
    z-index:1;
}
.modelhousePanoramaHead{
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:1rem;
    margin:0 0 4rem;
    text-align:center;
}
.modelhousePanoramaTitEn{
    font-size:var(--pcFontSize50);
}
.modelhousePanoramaTitJa{
    font-size:var(--pcFontSize18);
    line-height:calc(24 / 18);
}
.secModelhousePanorama .modelhousePanoramaTitEn,
.secModelhousePanorama .modelhousePanoramaTitJa{
    color:var(--textColorWhite);
}
.modelhousePanoramaFrame{
    position:relative;
    display:block;
    overflow:hidden;
    width:100rem;
    max-width:100%;
    aspect-ratio:1000 / 756;
    margin:0 auto;
    background:var(--bgColorBlack);
    text-decoration:none;
}
.modelhousePanoramaFrame iframe{
    width: 100%;
    height: 100%;
}
.modelhousePanoramaImg{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.modelhousePanoramaOverlay{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:space-between;
    padding:3rem 2rem 2.4rem;
    background:var(--maskColorDark22);
    color:var(--textColorWhite);
    text-align:center;
}
.modelhousePanoramaVenue{
    font-size:var(--pcFontSize16);
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:bold;
}
.modelhousePanoramaPlay{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:1.6rem;
}
.modelhousePanoramaPlayIco{
    width:8rem;
    height:8rem;
    border-radius:50%;
    background:var(--bgColor) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23111111'%3E%3Cpath d='M9 7.5v9l8-4.5-8-4.5z'/%3E%3C/svg%3E") center / 3rem no-repeat;
}
.modelhousePanoramaPlayTxt{
    font-size:var(--pcFontSize16);
    letter-spacing:var(--pcLetterSpacing40);
}
.modelhousePanoramaPowered{
    font-size:var(--pcFontSize11);
    line-height:calc(17 / 11);
    letter-spacing:var(--pcLetterSpacing80);
    opacity:0.9;
}
@media only screen and (max-width:1215px){
    .secModelhousePanorama{padding:3.5rem 0 4.5rem;}
    .modelhousePanoramaBg{
        height:calc((300 / 375) * var(--widthBase));
        background:var(--bgColorPanorama);
    }
    .modelhousePanoramaHead{
        gap:0.8rem;
        margin:0 0 2.4rem;
    }
    .modelhousePanoramaTitEn{
        font-size:var(--spFontSize30);
    }
    .modelhousePanoramaTitJa{
        font-size:var(--spFontSize14);
    }
    .modelhousePanoramaOverlay{padding:1.6rem 1.2rem;}
    .modelhousePanoramaVenue{font-size:var(--spFontSize12);}
    .modelhousePanoramaPlayIco{
        width:5.6rem;
        height:5.6rem;
        background-size:2.2rem;
    }
    .modelhousePanoramaPlayTxt{font-size:var(--spFontSize13);}
}

/*==============================
    secModelhouseAccess
==============================*/
.secModelhouseAccess{
    padding:0 0 8rem;
    background:var(--bgColorBeige);
}
.modelhouseAccessHead{
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:1rem;
    margin:0 0 4rem;
    text-align:center;
}
.modelhouseAccessTitEn{
    font-size:var(--pcFontSize50);
}
.modelhouseAccessTitJa{
    font-size:var(--pcFontSize18);
    line-height:calc(24 / 18);
}
.modelhouseAccessMap{
    margin:0;
    overflow:hidden;
}
.modelhouseAccessMapFrame{
    display:block;
    width:100%;
    height:36rem;
    border:0;
}
@media only screen and (max-width:1215px){
    .secModelhouseAccess{padding:0 0 4rem;}
    .modelhouseAccessHead{
        gap:0.8rem;
        margin:0 0 2.4rem;
    }
    .modelhouseAccessTitEn{
        font-size:var(--spFontSize30);
    }
    .modelhouseAccessTitJa{
        font-size:var(--spFontSize14);
    }
    .modelhouseAccessMapFrame{height:30rem;}
}

/*==============================
    secModelhouseStaff
==============================*/
.secModelhouseStaff{
    padding:0 0 6rem;
    background:var(--bgColorBeige);
}
.modelhouseStaffHead{
    justify-content:flex-start;
    align-items:center;
    gap:1.2rem;
    margin:0;
    text-align:left;
    padding-left: 4.5rem;
}
.modelhouseStaffTitEn{
    font-size:var(--pcFontSize50);
}
.modelhouseStaffTitJa{
    font-size:var(--pcFontSize18);
    line-height:calc(24 / 18);
}
.modelhouseStaffCard{
    display:flex;
    gap:6rem;
    box-sizing:border-box;
    padding:5rem 4.5rem;
    background:var(--bgColorBeigeLight);
    margin-top: -2.5rem;
}
.modelhouseStaffTxt{
    flex:1 1 auto;
    min-width:0;
    margin-top: 2rem;
}
.modelhouseStaffCardTit{
    margin:0 0 2.5rem;
    padding:0 0 2.5rem;
    border-bottom:1px solid var(--borderColorBeige);
    font-size:var(--pcFontSize24);
    line-height:calc(40 / 24);
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:700;
}
.modelhouseStaffBody{
    margin:0;
    font-size:var(--pcFontSize15);
    line-height:calc(32 / 15);
    letter-spacing:var(--pcLetterSpacing40);
}
.modelhouseStaffMedia{
    flex-shrink: 0;
    width: 48rem;
    height: 32rem;
    aspect-ratio: 480 / 320;
    overflow: hidden;
}
.modelhouseStaffImg{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
@media only screen and (max-width:1215px){
    .secModelhouseStaff{padding:0 0 5rem;}
    .modelhouseStaffHead{
        flex-direction:row;
        align-items: center;
        gap: 0.8rem;
        margin: 0 0 2rem;
        padding-left: 1.5rem;
    }
    .modelhouseStaffTitEn{
        font-size:var(--spFontSize30);
    }
    .modelhouseStaffTitJa{
        font-size:var(--spFontSize14);
    }
    .modelhouseStaffCard{
        flex-direction:column-reverse;
        align-items:stretch;
        gap:2rem;
        padding:3.5rem 1.6rem 2.5rem;
        margin-top: -3.5rem;
    }
    .modelhouseStaffMedia{
        flex: none;
        width: 100%;
        max-width: 24rem;
        /* max-width: none; */
        height: auto;
        margin: 0 auto;
    }
    .modelhouseStaffCardTit{
        margin:0 0 1rem;
        padding:0 0 1rem;
        font-size:var(--spFontSize16);
        line-height:calc(26 / 16);
    }
    .modelhouseStaffBody{
        font-size:var(--spFontSize12);
        line-height:calc(22 / 12);
    }
    .modelhouseStaffTxt {
        margin-top: 0;
    }
}

/*==============================
    secModelhousePresent
==============================*/
.secModelhousePresent{
    padding:5rem 5rem 6rem;
    background:var(--bgColorBeigeLight);
}
.modelhousePresentTit{
    display:table;
    margin:0 auto 3rem;
    padding:0 0 1rem;
    border-bottom:1px solid var(--bgColorPagerActive);
    color:var(--bgColorPagerActive);
    font-size:var(--pcFontSize30);
    line-height:1.4;
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:500;
    text-align:center;
}
.modelhousePresentLeadList{
    width:fit-content;
    max-width:100%;
    padding:0;
    list-style:none;
    margin-bottom:4rem;
}
.modelhousePresentLeadItem{
    position:relative;
    padding-left:1.6rem;
    font-size:var(--pcFontSize15);
    line-height:calc(32 / 15);
    letter-spacing:var(--pcLetterSpacing20);
}
.modelhousePresentLeadItem::before{
    content:"";
    position:absolute;
    top:1.6rem;
    left:0;
    width:2px;
    height:2px;
    border-radius:50%;
    background:var(--textColorGray);
}
.modelhousePresentLeadItem.isNote{
    color:var(--textColorNote);
}
.modelhousePresentLeadItem.isNote::before{
    background:var(--textColorNote);
}
.modelhousePresentAccordion{
    width:100%;
}
.modelhousePresentToggle{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:6rem;
    padding:0 6rem;
    border:none;
    background:var(--bgColorPagerActive);
    color:var(--textColorWhite);
    font-size:var(--pcFontSize18);
    letter-spacing:var(--pcLetterSpacing40);
    font-weight:bold;
    cursor:pointer;
}
.modelhousePresentToggleIco{
    position:absolute;
    top:50%;
    right:2.4rem;
    width:2rem;
    height:2rem;
    transform:translateY(-50%);
}
.modelhousePresentToggleIco::before,
.modelhousePresentToggleIco::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    background:var(--whiteColor);
    transform:translate(-50%, -50%);
}
.modelhousePresentToggleIco::before{
    width:100%;
    height:1px;
}
.modelhousePresentToggleIco::after{
    width:1px;
    height:100%;
    transition:opacity 0.2s ease;
}
.modelhousePresentToggle.isOpen .modelhousePresentToggleIco::after{
    opacity:0;
}
.modelhousePresentBody{
    padding:3.2rem 4rem;
    background:var(--bgColorBeige);
    text-align:left;
    margin-top:2rem;
}
.modelhousePresentTxt{
    margin:0;
    font-size:var(--pcFontSize15);
    line-height:calc(30 / 15);
    letter-spacing:var(--pcLetterSpacing40);
}
@media only screen and (max-width:1215px){
    .secModelhousePresent{
        padding:3rem 1.5rem 4rem;
    }
    .modelhousePresentTit{
        margin:0 auto 2.4rem;
        padding:0 0 0.4rem;
        font-size:var(--spFontSize16);
    }
    .modelhousePresentLeadList{margin:0 auto 2.4rem;}
    .modelhousePresentLeadItem{
        font-size:var(--spFontSize12);
        line-height:calc(22 / 12);
        padding-left:1rem;
    }
    .modelhousePresentLeadItem::before{
        top:1rem;
        width:0.2rem;
        height:0.2rem;
    }
    .modelhousePresentToggle{
        height:5rem;
        padding:0 4.8rem;
        font-size:var(--spFontSize12);
    }
    .modelhousePresentToggleIco{
        right:1.6rem;
        width:1.4rem;
        height:1.4rem;
    }
    .modelhousePresentBody{
        padding:2rem 1.5rem;
        margin-top:1.5rem;
    }
    .modelhousePresentTxt{
        font-size:var(--spFontSize12);
        line-height:calc(22 / 12);
    }
}

/*==============================
    formBack（フォームセクション外・常時表示）
==============================*/
.detailsModelhouse:not(.co):not(.ok) .secFormReserve{
    padding-bottom:0;
}
.detailsModelhouse main > .formBack{
    margin-top:6rem;
    margin-bottom:15rem;
}
@media only screen and (max-width:1215px){
    .detailsModelhouse main > .formBack{
        margin-top:4rem;
        margin-bottom:8rem;
    }
}

/*==============================
    floating CTA
==============================*/
.modelhouseDetailFloat{
    position:fixed;
    top:50%;
    right:0;
    z-index:50;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:1.2rem;
    box-sizing:border-box;
    width:8rem;
    min-height:28rem;
    padding:2.4rem 0;
    border-radius:0.4rem 0 0 0.4rem;
    background:var(--contactColor);
    color:var(--textColorWhite);
    text-decoration:none;
    transform:translateY(-50%);
    transition:opacity 0.3s ease;
}
.modelhouseDetailFloat:hover{opacity:0.85;}
/* フォームまでスクロールしたら非表示（modelhouse.jsで付与） */
.modelhouseDetailFloat.isHide{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity 0.3s ease, visibility 0.3s ease;
}
.modelhouseDetailFloatTxt{
    writing-mode:vertical-rl;
    font-size:var(--pcFontSize16);
    letter-spacing:var(--pcLetterSpacing120);
    line-height:calc(22 / 16);
    text-align:center;
}
@media only screen and (max-width:1215px){
    .modelhouseDetailFloat{
        top:auto;
        right:1.6rem;
        bottom:2rem;
        flex-direction:row;
        width:auto;
        min-height:0;
        height:5.2rem;
        padding:0 2rem;
        border-radius:10rem;
        writing-mode:horizontal-tb;
        transform:none;
        box-shadow:0 0.6rem 1.6rem var(--shadowColor18);
    }
    .modelhouseDetailFloatTxt{
        writing-mode:horizontal-tb;
        font-size:var(--spFontSize12);
        letter-spacing:var(--spLetterSpacing40);
        line-height:1;
    }
    .modelhouseDetailFloatTxt br{display:none;}
    /* 共通floatMenu非表示に伴いpadding-bottomを解除 */
    body.detailsModelhouse{
        padding-bottom:0;
    }
    body.detailsModelhouse .floatMenu{
        display:none !important;
    }
    body.detailsModelhouse .footer .footerDeco{
        bottom:0.4rem;
    }
}
