@charset "utf-8";
/*-----------------------------------------------
    secCmnHero
-----------------------------------------------*/
.secCmnHero {
    background-image: url(../img/modelhouse/bgTitle.jpg);
}
.secCmnHero.details{
    background-image: url(../img/modelhouse/bgTitle_details.jpg);
}
.secCmnHero .titEng{
    width: 91.3rem;
}
@media only screen and (max-width:1215px){
    .secCmnHero,
    .secCmnHero.details{
        background-image: url(../img/modelhouse/bgTitle_sp.jpg);
    }
    .secCmnHero .titEng{
        width: 33.4rem;
    }
}
@media only screen and (max-width:360px){
    .secCmnHero .titEng{
        width: 26.6rem;
    }
}

/*-----------------------------------------------
    index
-----------------------------------------------*/
/* secModelhouse */
.secModelhouse{
    margin-top: 6rem;
    position: relative;
    width: 100%;
    overflow: hidden;
    padding-bottom: 2rem;
}
.secModelhouse .secIndextitle .titEng{
    width: 73.3rem;
}
.modelInner{
    position: relative;
}
.modelInner .swiper{
    width: 100%;
    overflow: visible;
}
.modelInner .swiper-slide{
    width: 100%;
}
.modelInner .linkbox{
    display: block;
    overflow: visible;
}
.modelInner .imgArea{
    position: relative;
    color: var(--ColorWhite);
}
.modelInner .imgBox{
    position: relative;
    width: 100%;
    height: 0;
    padding-top: calc((710 / 1380) * 100%);
    overflow: hidden;
    border-radius: 0.4rem;
    z-index: 1;
}
.modelInner .imgBox::after{
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    z-index: 5;
}
.modelInner.lazyloaded .imgBox::after{
    background: url(../img/index/imgModelItem.png) left bottom repeat;
    background-size: auto 100%;
    background-position-y: 0.2rem;
}
.modelInner .areaboxtit{
    position: absolute;
    bottom: 2.7rem;
    left: -1rem;
    max-width: calc(100% - 28rem);
    z-index: 5;
    width: 100%;
}
.modelInner .boxtit{
    font-size: var(--pcFontSize26);
    line-height: var(--pcLineHeight26_50);
    font-weight: bold;
    letter-spacing:var(--pcLetterSpacing26_50);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    max-height: calc(((var(--pcFontSize26)* var(--pcLineHeight26_50)) + 0.6rem)* 2);
}
.modelInner .boxIn{
    background-color: var(--ColorRed);
    padding: 0.3rem 1rem;
}

.modelInner .txtArea{
    display: flex;
    width: 100%;
    margin-top: 3.4rem;
    justify-content: space-between;
}
.modelInner .txtbox{
    padding-right: 4rem;
    padding-left: 1rem;
    width: calc(100% - 40rem);
}
.modelInner .boxTag{
    width: 100%;
}
.modelInner .listTag{
    display: block;
    overflow: hidden;
    max-height: 8.3rem;
}
.modelInner .itemTag{
    display: inline-block;
    margin: 0.5rem 0.5rem 0 0;
    white-space: nowrap;
    max-width: 100%;
    position: relative;
    padding-left: 2.9rem;
    min-height: 2.2rem;
}
.modelInner .itemTag::before,
.modelInner .itemTag::after{
    content: '';
    position: absolute;
    top: calc(50% - 1rem);
    left: 0;
    width: 2rem;
    height: 2rem;
}
.modelInner .itemTag::before{
    border: 0.1rem solid;
    border-color: var(--ColorRed);
    background-color: var(--ColorRed);
    border-radius: 100%;
}
.modelInner .itemTag::after{
    content: '＃';
    color: var(--ColorWhite);
    font-size: var(--pcFontSize11);
    line-height: var(--pcLineHeight11_16);
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: normal;
}
.modelInner .txtTag{
    position: relative;
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_15);
    padding-top: 0;
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    vertical-align: -0.7rem;
    padding: 0.3rem 0;
}
.modelInner .tit{
    font-size: var(--pcFontSize24);
    line-height: var(--pcLineHeight24_50);
    font-weight: bold;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    max-height: calc((var(--pcFontSize24)* var(--pcLineHeight24_50))* 2);
    letter-spacing: var(--pcLetterSpacing24_50);
}
.modelInner .addtxt{
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_24);
    position: relative;
    padding-left: 2.4rem;
    margin-top: 0.5rem;
    letter-spacing:var(--pcLetterSpacing13_75);
}
.modelInner .addtxtIn{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    display: block;
}
.modelInner .addtxt::after{
    content: "";
    position: absolute;
    width: 1.6rem;
    height: 2rem;
    left: 0;
    top: 0;
}
.modelInner.lazyloaded .addtxt::after{
    background: url(../img/index/imgAddIcon.png) center center no-repeat;
    background-size: 100% auto;
}
.modelInner .secMoreBtn{
    width: 40rem;
    margin: 0;
}
.modelInner .morebtn.bntReserve {
    margin-top: 1.5rem;
    background: var(--ColorGray);
    color: var(--ColorWhite);
}
.modelInner .moretxt {
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_50);
    letter-spacing: var(--pcLetterSpacing16_100);
}
.modelInner .morebtn{
    position: relative;
    height: 7rem;
}
.modelInner .morebtn::after {
    content: "";
    position: absolute;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-color: var(--ColorRed);
    border: 0.1rem solid;
    border-color: var(--ColorRed);
    top: calc(50% - 1rem);
    right: 3rem;
}
.secModelhouse.lazyloaded .modelInner .morebtn::after {
    background: url(../img/common/imgMoreArrow.png) center center no-repeat var(--ColorRed);
    background-size: 0.5rem auto;
}
.modelInner .morebtn.bntReserve::after {
    background: var(--textColor);
    border-color: var(--ColorWhite);
}
.secModelhouse.lazyloaded .modelInner .morebtn.bntReserve::after {
    background: url(../img/common/imgMoreArrowB.png) center center no-repeat var(--ColorWhite);
    background-size: 0.5rem auto;
}
.modelInner .itemModelhouse{
    position: relative;
    padding-bottom: 8rem;
    /* border-bottom: 0.1rem solid var(--ColorModelBorder); */
}
.modelInner .itemModelhouse:nth-child(n+2){
    margin-top: 8rem;
}
.modelInner .itemModelhouse:before{
    content: '';
    position: absolute;
    width:100%;
    height: 0.2rem;
    background: var(--ColorModelBorder);
    bottom: 0;
    left: 0;
    z-index: 1;
}
.modelInner .itemModelhouse:after{
    content: '';
    position: absolute;
    width: 5rem;
    height: 0.2rem;
    background: var(--ColorRed);
    bottom: 0;
    left: 0;
    z-index: 2;
}
@media only screen and (min-width:1216px){
    .modelInner .spMorebox{
        display: none;
    }
}
@media only screen and (max-width:1215px){
    .secModelhouse{
        margin-top: 3rem;
        padding-bottom: 0rem;
    }
    /* .secModelhouse::before{
        height: calc(100% - 1.3rem);
    } */
    .secModelhouse .modelcontent{
        margin-top: 0;
    }
    .modelInner{
        margin: 0 auto
    }
    .modelInner .linkbox{
        height: 100%;
        padding-bottom: 5rem;
    }
    .modelInner .itemModelhouse:nth-child(n+2) {
        margin-top: 5rem;
    }
    .modelInner .imgArea{
        position: static;
    }
    .modelInner .imgBox{
        border-radius: 0;
    }
    .modelInner .areaboxtit{
        position: relative;
        left: auto;
        bottom: auto;
        max-width: calc((335 / 375) * 100%);
        margin: 0 auto;
        margin-top: -2.4rem;
    }
    .modelInner .boxtit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_40);
        max-height: calc(((var(--spFontSize15)* var(--spLineHeight15_40)) + 0.6rem)* 2);
    }
    .modelInner .boxtit .SpInbox{
        display: inline;
        background: var(--ColorRed);
        padding: 0.7rem;
    }
    .modelInner .boxtit br{
        display: none;
    }
    .modelInner .boxIn{
        padding: 0;
        display: inline;
        background: none;
    }
    .modelInner .morebtn {
        height: 5rem;
    }
    .modelInner .moretxt {
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_36);
        letter-spacing: var(--spLetterSpacing13_50);
    }
    .modelInner .secMoreBtn {
        width: 100%;
        margin: 25px auto 0;
    }
    .modelInner .txtArea{
        display: block;
        width: calc((335 / 375) * 100%);
        margin: 0 auto;
        margin-top: 0.5rem;
        padding-bottom: 0;
    }
    .modelInner .txtbox{
        padding: 0;
        width: 100%;
    }
    .modelInner .boxTag{
        width: 100%;
    }
    .modelInner .listTag{
        display: block;
        overflow: hidden;
        max-height: 8.3rem;
    }
    .modelInner .itemTag{
        padding-left: 2.9rem;
    }
    .modelInner .itemTag::after{
        font-size: var(--spFontSize11);
    }
    .modelInner .txtTag{
        font-size: var(--spFontSize11);
        vertical-align: -0.7rem;
        padding: 0;
    }
    .modelInner .tit{
        font-size: var(--spFontSize18);
        line-height: var(--spLineHeight13_24);
        max-height: calc((var(--spFontSize18)* var(--spLineHeight13_24))* 2);
        letter-spacing:var(--spLetterSpacing0);
    }
    .modelInner .boxTag + .tit{
        margin-top: 0.3rem;
    }
    .modelInner .morebtn.bntReserve {
        margin-top: 1rem;
    }
    .modelInner .addtxt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_17);
        padding-left: 2.4rem;
        margin-top: 0.5rem;
    }
    .modelInner .addtxt::after{
        left: 0;
        top: calc(50% - 1.2rem);
    }
    .modelInner .spMorebox{
        position: absolute;
        bottom:0;
        left: calc((20 / 315) * 100%);
        display: flex;
        align-items: center;
        padding-right: calc(2.4rem + 0.9rem);
        height: 2.4rem;
    }
    .modelInner .spMorebox::after{
        content: "";
        position: absolute;
        top: calc(50% - 1.2rem);
        right: 0;
        width: 2.4rem;
        height: 2.4rem;
        border: 0.1rem solid;
        border-color: var(--ColorWhite);
        background-color: var(--ColorGray);
        border-radius: 50%;
    }
    .modelInner.lazyloaded .spMorebox::after{
        background: url(../img/common/imgMoreIcon.png) center center no-repeat var(--moreIconColor);
        background-size: 0.9rem auto;
    }
    .modelInner .spmoretxt{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_30);
    }
    .modelInner .morebtn::after {
        right: 1.5rem;
    }
    .modelInner .itemModelhouse {
        padding-bottom: 0;
    }
    .modelInner .itemModelhouse:before {
        width: calc((335 / 375) * 100%);
        height: 0.2rem;
        background: var(--ColorModelBorder);
        left: calc((100% - ((335 / 375) * 100%)) / 2);
    }
    .modelInner .itemModelhouse:after {
        width: 3rem;
        left: calc((100% - ((335 / 375) * 100%)) / 2);
    }
}
@media only screen and (max-width:360px){
    .modelInner .boxtit .SpInbox{
        padding: 0.4rem;
    }
    .modelInner .txtTag{
        vertical-align: -0.5rem;
    }
}
.secFlexbnr {
    margin-top: 18rem;
}
@media only screen and (max-width:1215px){
    .secFlexbnr {
        margin-top: 8rem;
    }
}


/*-----------------------------------------------
    details
-----------------------------------------------*/
/* secmodelhouse_details */
.secmodelhouse_details{
    margin-top: 7rem;
}
.secmodelhouse_details .pageTIt{
    font-size: var(--pcFontSize36);
    letter-spacing: var(--pcLetterSpacing36_80);
    line-height: var(--pcLineHeight36_55);
    text-align: center;
    font-weight: bold;
    margin-bottom: 3rem;
}
.secmodelhouse_details .txtAdd{
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_80);
    line-height: var(--pcLineHeight18_40);
    text-align: center;
    margin-bottom: 4rem;
}
@media only screen and (max-width:1215px){
    .secmodelhouse_details {
        margin-top: 2.3rem;
    }
    .secmodelhouse_details .pageTIt{
        font-size:var(--spFontSize16);
        line-height: var(--spLineHeight16_26);
        letter-spacing:var(--spLetterSpacing16_50);
        text-align: left;
        margin-bottom: 0.7rem;
    }
    .secmodelhouse_details .txtAdd{
        font-size:var(--spFontSize12);
        line-height: var(--spLineHeight12_26);
        letter-spacing:var(--spLetterSpacing12_30);
        text-align: left;
        margin-bottom: 1rem;
    }
}
/* secDetailsTagbox */
.secDetailsTagbox{
    width: 100%;
    margin: 0 auto;
    margin-top: 4rem;
    background-color: var(--taglistColor);
    border-radius: 0.4rem;
    padding: 3.5rem;
    position: relative;
    display: flex;
    justify-content: center;
}
.secDetailsTagbox .taglist{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2.5rem;
}
.secDetailsTagbox .tagitem{
    display: inline-block;
}
.secDetailsTagbox .taglink{
    display: inline-block;
    position: relative;
    color: var(--tagtxtColor);
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_15);
    padding-left: 2.9rem;
}
.secDetailsTagbox .taglink::before,
.secDetailsTagbox .taglink::after{
    position: absolute;
    content: '';
    display: block;
    top: -0.2rem;
    left: 0;
    width: 2rem;
    height: 2rem;
}
.secDetailsTagbox .taglink::before{
    border: 0.1rem solid;
    border-color: var(--ColorRed);
    background-color: var(--ColorRed);
    border-radius: 100%;
}
.secDetailsTagbox .taglink::after{
    content: '＃';
    color: var(--ColorWhite);
    font-size: var(--pcFontSize11);
    line-height: var(--pcLineHeight11_16);
    display: flex;
    justify-content: center;
    align-items: center;
}
@media only screen and (max-width:1215px){
    .secDetailsTagbox{
        max-width: 100%;
        margin-top: 1rem;
        min-height: 0;
        padding: 0;
        justify-content: flex-start;
    }
    .secDetailsTagbox .taglist{
        align-items: flex-start;
        margin-top: 0;
        padding: 2rem;
        gap: 1rem;
        background-color: var(--taglistColor);
    }
    .secDetailsTagbox .tagitem{
        margin: 0.4rem 0;
    }
    .secDetailsTagbox .taglink{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_16);
        padding-left: 2rem;
    }
    .secDetailsTagbox .taglink::before,
    .secDetailsTagbox .taglink::after{
        top: -0.2rem;
        width: 1.6rem;
        height: 1.6rem;
    }
    .secDetailsTagbox .taglink::after{
        font-size: var(--spFontSize9);
    }
}
/* mainimg */
.secmodelhouse_details .mainimg{
    display: inline-block;
    border-radius: 0.4rem;
    overflow: hidden;
    margin-top: 5rem;
    width: 100%;
    margin-bottom: 1rem;
}
.secmodelhouse_details .mainimg img {
    width: auto;
    height: auto;
    max-width: 100%;
}
.secmodelhouse_details .mainimg .imgMain{
    margin-bottom: 5rem;
}
.secmodelhouse_details .mainimg .mainTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_36);
    letter-spacing: var(--pcLetterSpacing16_75);
}
@media only screen and (max-width:1215px){
    .secmodelhouse_details .mainimg .mainTxt{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_24);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secmodelhouse_details .mainimg .imgMain {
        margin-bottom: 1.5rem;
    }
    .secmodelhouse_details .mainimg {
        margin-top: 2.5rem;
        margin-bottom: 1rem;
    }
}
/* secDetailsTable */
.secDetailsTable {
    width: calc(100% - 40.5rem);
}
.secDetailsTable table {
    border-top: 1px solid var(--formBorderColor);
    border-left: 1px solid var(--formBorderColor);
    width: 100%;
}
.secDetailsTable table a{
    text-decoration: underline;
}
.secDetailsTable tbody {
    width: 100%;
}
.secDetailsTable tr {
    height: auto;
    font-size: var(--pcFontSize15);
    line-height: var(--pcLineHeight15_23);
}
.secDetailsTable tr th {
    width: 12rem;
    text-align: center;
    vertical-align: middle;
    background: var(--formFlowBox);
    border-bottom: 1px solid var(--formBorderColor);
    border-right: 1px solid var(--formBorderColor);
    padding: 1rem;
}
.secDetailsTable tr td {
    width: calc(100% - 12rem);
    padding: 2.7rem 2.8rem;
    vertical-align: middle;
    border-bottom: 1px solid var(--formBorderColor);
    border-right: 1px solid var(--formBorderColor);
}
@media only screen and (max-width:1215px){
    .secDetailsTable {
        margin-top: 0.5rem;
        width: 100%;
    }
    .secDetailsTable tr {
        height: auto;
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_50);
        line-height: var(--spLineHeight12_22);
    }
    .secDetailsTable tr th {
        width: 5rem;
        padding: 1rem;
    }
    .secDetailsTable tr td {
        width: calc(100% - 5rem);
        padding: 1.3rem 1rem;
    }
}

.detailsInner{
    display: flex;
    justify-content: space-between;

}
.detailsInner .secMoreBtn{
    width: 40rem;
    margin: 0;
    margin-left: 5rem;
}
.detailsInner .morebtn{
    position: relative;
    height: 9.4rem;
    background: var(--textColor);
    color: var(--ColorWhite);
    border: unset;
}
.detailsInner .morebtn.bntReserve {
    margin-bottom: 2rem;
    background: var(--ColorRed);
    color: var(--ColorWhite);
}
.detailsInner .moretxt {
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_50);
    letter-spacing: var(--pcLetterSpacing18_100);
}
.detailsInner .moretxt .telTxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_26);
    letter-spacing: var(--pcLetterSpacing14_100);
    display: block;
}
.detailsInner .moretxt .telnum{
    font-size: var(--pcFontSize26);
    line-height: var(--pcLineHeight26_50);
    letter-spacing: var(--pcLetterSpacing26_50);
    display: block;
}
.detailsInner .morebtn.bntReserve::after {
    content: "";
    position: absolute;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-color: var(--ColorWhite);
    border: 0.1rem solid;
    border-color: var(--textColor);
    top: calc(50% - 1rem);
    right: 3rem;
}
.detailsInner.lazyloaded .morebtn.bntReserve::after {
    background: url(../img/common/imgMoreArrowR.png) center center no-repeat var(--ColorWhite);
    background-size: 0.5rem auto;
    border:none;
}

.detailsInner .txtUnder {
    font-size: var(--pcFontSize11);
    letter-spacing: var(--pcLetterSpacing11_50);
    text-align: right;
    margin-top: 2rem;
}
@media only screen and (max-width:1215px){
    .detailsInner {
        flex-direction: column;
    }
    .modelInner .morebtn {
        height: 5rem;
    }
    .modelInner .moretxt {
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_36);
        letter-spacing: var(--spLetterSpacing13_50);
    }
    .modelInner .secMoreBtn {
        width: 100%;
        margin: 25px auto 0;
    }
    .modelInner .txtArea{
        display: block;
        width: calc((335 / 375) * 100%);
        margin: 0 auto;
        margin-top: 0.5rem;
        padding-bottom: 0;
    }
    .modelInner .txtbox{
        padding: 0;
    }
    .modelInner .boxTag{
        width: 100%;
    }
    .detailsInner .secMoreBtn {
        width: 100%;
        margin: 0;
        margin-left: 0;
    }
    .detailsInner .morebtn {
        position: relative;
        height: auto;
        background: none;
        color: var(--textColor);
    }
    .detailsInner .morebtn.bntReserve {
        height: 5rem;
        margin-top: 2.5rem;
        margin-bottom: 1.5rem;
    }
    .detailsInner .moretxt {
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_36);
        letter-spacing: var(--spLetterSpacing13_50);
    }
    .detailsInner .txtUnder {
        font-size: var(--pcFontSize11);
        letter-spacing: var(--pcLetterSpacing11_50);
        text-align: center;
        margin-top: 1rem;
    }
    .detailsInner.lazyloaded .morebtn.bntReserve::after {
        right: 1.5rem;
    }
    .detailsInner .moretxt .telnum {
        line-height: 1.4;
    }
}


.innerStaff {
    background: var(--ColorGray);
    padding: 6rem;
    display: flex;
    align-items: center;
    margin-top: 5rem;
    color: var(--ColorWhite);
}

.innerStaff .boxImg {
    flex-shrink: 0;
    margin-right: 4rem;
    width: 20rem;
}

.innerStaff .boxImgInner {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: calc((200 / 200) * 100%);
    border-radius: 50%;
    overflow: hidden;
}

.innerStaff .boxTxt {
    width: calc(100% - 24rem);
}

.innerStaff .staffTit {
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_32);
    letter-spacing: var(--pcLetterSpacing20_100);
    font-weight: bold;
    margin-bottom: 2.2rem;
}

.innerStaff .staffTxt {
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_30);
    letter-spacing: var(--pcLetterSpacing16_50);
    margin-bottom: 1.2rem;
}

@media only screen and (max-width:1215px){
    .innerStaff {
        padding: 0 2rem;
        display: block;
        align-items: center;
        margin-top: 6.5rem;
        position: relative;
        border-radius: 0.4rem;
    }
    .innerStaff .boxTxt {
        width: 100%;
        padding-top: 11.5rem;
        padding-bottom: 1rem;
    }
    .seinnerStaffcVR .boxImg {
        margin-right: 0;
        width: 15.5rem;
        position: absolute;
        top: -3rem;
        left: calc(50% - 7.25rem);
    }
    .innerStaff .staffTit {
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_26);
        margin-bottom: 1rem;
    }
    .innerStaff .staffTxt {
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_24);
        margin-bottom: 1.5rem;
    }
    .innerStaff .boxImg {
        margin-right: 0;
        width: 10.5rem;
        position: absolute;
        top: -23px;
        left: calc(50% - 5.25rem);
        margin: 0px auto 0;
    }
}

/* secPoint */
.secPoint {
    margin-top: 10rem;
}
.secPoint .titleInner .titEng {
    position: relative;
    padding-bottom: 3.2rem;
    z-index: 4;
    width: 15.9rem;
    margin: 0 auto;
}
.secPoint .titleInner .titEng::before, 
.secPoint .titleInner .titEng::after {
    content: "";
    position: absolute;
    bottom: 0;
    height: 0.2rem;
    left: calc(50% - 1.5rem);
}
.secPoint .titleInner .titEng::before {
    background-color: var(--ColorBlack_20);
    width: 3rem;
}
.secPoint .titleInner .titEng::after {
    width: 1.5rem;
    background-color: var(--ColorRed);
    z-index: 2;
}
.secPoint .titleInner .titJpn {
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_36);
    font-weight: bold;
    margin-top: 1.8rem;
    position: relative;
    z-index: 4;
    text-align: center;
}

.secPoint .pointList {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin-top: 4rem;
}
.secPoint .pointItem {
    width: calc((100% - 6rem) / 2);
    margin-right: 6rem;
}
.secPoint .pointItem:nth-child(2n){
    margin-right: 0;
}
.secPoint .pointItem:nth-child(n+3){
    margin-top: 8rem;
}
.secPoint .pointImg {
    width: 100%;
}
.secPoint .imgbox {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: calc((420 / 660) * 100%);
    border-radius: 0.4rem;
    overflow: hidden;
}
.secPoint .pointImg + .pointtxtbox {
    margin-top: 3.3rem;
}
.secPoint .pointtxt {
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_30);
}

@media only screen and (max-width:1215px){
    .secPoint {
        margin-top: 5rem;
        margin-bottom: 5rem;
    }
    .secPoint .titleInner .titEng {
        padding-bottom: 2.3rem;
        width: 8rem;
        margin: 0 auto;
    }
    .secPoint .titleInner .titJpn {
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_100);
        line-height: var(--spLineHeight12_36);
        margin-top: 0.6rem;
    }
    .secPoint .pointItem {
        width: 100%;
        margin-right: 0;
    }
    .secPoint .pointItem:nth-child(n+2){
        margin-top: 3.5rem;
    }
    .secPoint .pointItem:nth-child(n+3){
        margin-top: 3.5rem;
    }
    .secPoint .pointImg + .pointtxtbox {
        margin-top: 1.5rem;
    }
    .secPoint .pointtxt {
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_50);
        line-height: var(--spLineHeight12_24);
    }
    .secPoint .pointList {
        margin-top: 2rem;
    }
}

/* secMap */
.secMap{
    margin-top: 11rem;
}
.secMap .titleInner .titEng {
    width: 20.4rem;
    margin: 0 auto;
}
.secMap .titleInner .titEng {
    position: relative;
    padding-bottom: 3.2rem;
    z-index: 4;
}
.secMap .titleInner .titEng::before, 
.secMap .titleInner .titEng::after {
    content: "";
    position: absolute;
    bottom: 0;
    height: 0.2rem;
    left: calc(50% - 1.5rem);
}
.secMap .titleInner .titEng::before {
    background-color: var(--ColorBlack_20);
    width: 3rem;
}
.secMap .titleInner .titEng::after {
    width: 1.5rem;
    background-color: var(--ColorRed);
    z-index: 2;
}
.secMap .titleInner .titJpn {
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_36);
    font-weight: bold;
    margin-top: 1.8rem;
    position: relative;
    z-index: 4;
    text-align: center;
}
.secMap .boxMap {
    margin-top: 5rem;
    position: relative;
    width: 100%;
    height: 54rem;
}
.secMap .boxMap iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}
.secMap .txtMap {
    font-size: var(--pcFontSize11);
    letter-spacing: var(--pcLetterSpacing11_50);
    text-align: right;
    margin-top: 3rem;
}
@media only screen and (max-width:1215px){
    .secMap {
        margin-top: 4.5rem;
        margin-bottom: 5rem;
    }
    .secMap .titleInner .titEng {
        width: 10.2rem;
        margin: 0 auto;
    }
    .secMap .titleInner .titEng {
        padding-bottom: 2.3rem;
    }
    .secMap .titleInner .titJpn {
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_100);
        line-height: var(--spLineHeight12_36);
        margin-top: 0.6rem;
    }
    .secMap .boxMap {
        margin-top: 3rem;
        height: 32rem;
    }
    .secMap .boxMap iframe {
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
    }
    .secMap .txtMap {
        margin-top: 2rem;
        font-size: var(--spFontSize10);
        letter-spacing: var(--spLetterSpacing10_30);
        line-height: var(--spLineHeight10_20);
        text-align: center;
    }
}

/* -----secMerit----- */
.secMerit{
    margin-top: 8rem;
}
.secMerit .meritTop{
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_35);
    letter-spacing: var(--pcLetterSpacing20_100);
    width: 100%;
    height: 9rem;
    border: 1px solid #000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}
.secMerit .meritSubtit{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_30);
    letter-spacing: var(--pcLetterSpacing14_50);
    text-align: center;
    margin: 3rem auto 4rem;
}
.secMerit .titTop{
    font-size: var(--pcFontSize30);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing30_80);
    text-align: center;
}
.secMerit .list{
    display: flex;
    align-items: center;
    margin-top: 13rem;
}
.secMerit .list .item{
    margin-right: 4.5rem;
    width: calc((100% - 9rem) / 3);
    text-align: center;
    padding: 20.6rem 2rem 7.4rem;
    background: var(--taglistColor);
    position: relative;
}
.secMerit .list .item:nth-child(3){
    margin-right: 0;
}
.secMerit .list .imgMerit{
    position: absolute;
    top: -8rem;
    left: calc(50% - 11.5rem);
    width: 23rem;
    height: 23rem;
    border-radius: 50%;
    overflow: hidden;
}
.secMerit .list .titMerit{
    margin-bottom: 4.5rem;
}
.secMerit .list .tit{
    font-weight: bold;
    font-size: var(--pcFontSize24);
    letter-spacing: var(--pcLetterSpacing24_100);
    margin-bottom: 3rem;
}
.secMerit .list .txt{
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_100);
    line-height: var(--pcLineHeight16_36);
}
@media only screen and (max-width:1215px){
    .secMerit {
        margin-top: 2.4rem;
    }
    .secMerit .titTop {
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_26);
        letter-spacing: var(--spLetterSpacing16_80);
    }
    .secMerit .list {
        display: block;
        align-items: left;
        margin-top: 3rem;
    }
    .secMerit .list .item {
        margin-right: 0;
        width: 100%;
        text-align: left;
        padding: 2.2rem 1rem;
        display: flex;
        align-items: center;
        max-width: 33.5rem;
        margin: 0 auto;
    }
    .secMerit .list .item:nth-child(n+2) {
        margin-top: 2.8rem;
    }
    .secMerit .list .item:nth-child(3) {
        margin-right: auto;
    }
    .secMerit .list .imgMerit {
        position: static;
        width: 9.6rem;
        height: 9.6rem;
        flex-shrink: 0;
        margin-right: 1rem;
    }
    .secMerit .list .titMerit {
        margin-bottom: 0;
        position: absolute;
        top: -7px;
        left: calc(50% - 3.35rem);
        height: 1.7rem;
        width: 6.7rem;
    }
    .secMerit .list .tit {
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_100);
        margin-bottom: 0.5rem;
    }
    .secMerit .list .txt {
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_100);
        line-height: var(--spLineHeight12_20);
    }
    .secMerit .meritTop {
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_50);
        line-height: var(--spLineHeight14_22);
        height: 5rem;
    }
    .secMerit .meritSubtit {
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_100);
        line-height: var(--spLineHeight12_20);
        margin: 3rem auto 2rem;
    }
}
.secReservebnr.wrapper {
    margin: 8rem auto 0;
}

/* secBnr */
.secReservebnr .decoratedText{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px; /* テキストと線の間隔 */
    margin: 10rem auto 5rem;
}

.decoratedText::before,
.decoratedText::after {
    content: '';
    display: inline-block;
    width: 30px;
    height: 1px;
    background-color: #000;
    transform: rotate(-130deg); /* 左右で逆にするため下で +20deg */
}

.decoratedText::after {
    transform: rotate(-50deg);
}

.decoratedText span {
    font-weight: bold;
    font-size: var(--pcFontSize24);
    line-height: var(--pcLineHeight24_36);
    letter-spacing: var(--pcLetterSpacing24_100);
}

@media only screen and (max-width:1215px){
    .secReservebnr.wrapper {
        margin: 3rem auto 0;
        border-radius: 0.4rem;
        overflow: hidden;
    }
    .decoratedText span {
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_50);
        line-height: var(--spLineHeight15_36);
    }
    .secReservebnr .decoratedText {
        margin: 1.5rem auto 1.5rem;
    }
    .secCmnBack {
        margin-top: 6rem;
        max-width: 26.5rem;
        width: 100%;
    }
}