@charset "utf-8";
/* secHero */
.secHero{
    height: 100vh;
    max-height: 1080px;
    padding: 131px 0 0;
    background: url(../img/index/bgHero.jpg) center top / cover no-repeat;
    position: relative;
    text-align: center;
}
.secHero .txtTit{
    width: 42.709%;
    margin: 0 auto;
}
.secHero .boxReserve{
    position: absolute;
    bottom: 80px;
    left: 50%;
    transform: translateX(-50%);
}
.secHero .btnReserve{
    width: 700px;
    height: 80px;
    border-radius: 40px;
    background: #70b3ae;
    /* border: 1px solid #fff; */
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 22px;
    color: #fff;
    text-decoration: none;
    text-align: center;
    position: relative;
}
.secHero .btnReserve::after{
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 30px;
    transform: translateY(-50%);
}
@media only screen and (max-width:1600px){
    .secHero .txtTit{
        width: 39%;
    }
}
@media only screen and (max-width:767px){
    .secHero{
        height: 100vh;
        min-height: 600px;
        display: flex;
        align-items: center;
        padding: 10% 0 25vh;
    }
    .secHero .txtTit{
        width: 280px;
        margin: 0 auto;
    }
    .secHero .boxReserve{
        bottom: 30px;
    }
    .secHero .btnReserve{
        width: 255px;
        height: 50px;
        border-radius: 25px;
        font-size: 14px;
    }
    .secHero .btnReserve::after{
        width: 6px;
        height: 6px;
        left: 20px;
    }
}
@media only screen and (max-width:600px){
    .secHero{
        background: url(../img/index/bgHero_sp.jpg) center top / cover no-repeat;
    }
}
@media only screen and (max-width:500px){
    .secHero{
        min-height: unset;
        max-height: 700px;
    }
}
@media only screen and (max-width:420px){
    .secHero{
        min-height: unset;
        max-height: 600px;
    }
}
@media only screen and (max-width:350px){
    .secHero{
        max-height: 530px;
    }
}

/* secTop */
.secTop{
    padding: 120px 0;
}
.secTop.lazyloaded{
    background: url(../img/index/bgTop.jpg) center top / cover no-repeat;
}
.secTop .boxFlex{
    display: flex;
}
.secTop .boxFlex.spOnly{
    display: none;
}
.secTop .boxTxt{
    width: calc(100% - 26px - 710px);
    margin-right: 26px;
}
.secTop .txtTit{
    font-size: 45px;
    line-height: calc(80/45);
    letter-spacing: 2px;
}
.secTop .txtAbout{
    font-size: 18px;
    line-height: calc(50/18);
    margin-top: 47px;
}
@media only screen and (max-width:767px){
    .secTop{
        padding: 50px 0;
    }
    .secTop.lazyloaded{
        background: url(../img/index/bgTop_sp.jpg) center top / cover no-repeat;
    }
    .secTop .boxFlex{
        flex-direction: column;
    }
    .secTop .boxFlex.spOnly{
        display: flex;
    }
    .secTop .boxFlex.spNone{
        display: none;
    }
    .secTop .boxTxt{
        width: 100%;
        margin-right: 0;
        text-align: center;
    }
    .secTop .txtTit{
        font-size: 26px;
        line-height: calc(40/26);
        letter-spacing: 0.5px;
    }
    .secTop .txtAbout{
        font-size: 13px;
        line-height: calc(30/13);
        margin-top: 25px;
    }
    .secTop .boxImg{
        margin-top: 32px;
    }
}
@media only screen and (max-width: 350px){
    .secTop .txtTit{
        font-size: 24px;
    }
}

/* boxCmnTit */
.boxCmnTit{
    text-align: center;
}
.boxCmnTit .txtTitEng{
    font-size: 75px;
}
.boxCmnTit .txtTitJp{
    font-size: 20px;
    letter-spacing: 1px;
    margin-top: 15px;
}
@media only screen and (max-width:767px){
    .boxCmnTit .txtTitEng{
        font-size: 36px;
    }
    .boxCmnTit .txtTitJp{
        font-size: 13px;
        letter-spacing: 0.5px;
        margin-top: 5px;
    }
}

/* secModelHouse */
.secModelHouse{
    margin-top: 100px;
}
.secModelHouse .txtTitSub{
    font-size: 24px;
    letter-spacing: 1px;
    text-align: center;
    margin-top: 50px;
}
.secModelHouse .boxModelHouseImg{
    position: relative;
    margin: 60px auto 0;
    max-width: 1920px;
}
.secModelHouse .boxModelHouseImg .boxPin{
    display: block;
    position: absolute;
    transition: opacity 0.2s ease-out;
}
.secModelHouse .boxModelHouseImg .boxPinLit{
    top: calc((213 / 700) * 100%);
    left: calc((1439 / 1920) * 100%);
}
.secModelHouse .boxModelHouseImg .boxPinHaqua{
    top: calc((160 / 700) * 100%);
    left: calc((460 / 1920) * 100%);
}
.secModelHouse .boxModelHouseImg .boxPinLex{
    top: calc((300 / 700) * 100%);
    left: calc((1057 / 1920) * 100%);
}
@keyframes mapPinBounce {
    0%, 100% {
        transform: scale(1.15) translateY(0);
        transform-origin: center bottom;
    }
    20% {
        transform: scale(1.15) translateY(-10px);
        transform-origin: center bottom;
    }
    40% {
        transform: scale(1.15) translateY(0);
        transform-origin: center bottom;
    }
    60% {
        transform: scale(1.15) translateY(-6px);
        transform-origin: center bottom;
    }
    80% {
        transform: scale(1.15) translateY(0);
        transform-origin: center bottom;
    }
}
.secModelHouse .boxModelHouseImg .boxPin{
    animation: mapPinBounce 1s infinite;
    transform: scale(1.25);
    z-index: 2;
}

.secModelHouse .boxModelHouseList{
    margin-top: 100px;
}
.secModelHouse .boxModelHouseList .item{
    margin-bottom: 60px;
    display: flex;
}
.secModelHouse .boxModelHouseList .item:last-child{
    margin-bottom: 0;
}
.secModelHouse .boxModelHouseList .boxLeft{
    width: calc(100% - 640px);
    background: #f1f1f1;
    padding: 52px 0;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.secModelHouse .boxModelHouseList .txtTitMin{
    font-size: 18px;
}
.secModelHouse .boxModelHouseList .txtTit{
    font-size: 20px;
    margin-top: 20px;
}
.secModelHouse .boxModelHouseList .logoModelHouse{
    margin-top: 20px;
}
.secModelHouse .boxModelHouseList .boxPrice{
    padding: 10px;
    background: #fff;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    margin-top: 28px;
}
.secModelHouse .boxModelHouseList .txtIcon{
    width: 80px;
    height: 30px;
    background: #f1f1f1;
    border-radius: 4px;
    font-size: 13px;
    display: flex; 
    align-items: center;
    justify-content: center;
}
.secModelHouse .boxModelHouseList .txtPrice{
    font-size: 26px;
    margin-left: 6px;
}
.secModelHouse .boxModelHouseList .txtMin{
    font-size: 16px;
}
.secModelHouse .boxModelHouseList .boxLink{
    display: inline-block;
    margin-top: 30px;
}
.secModelHouse .boxModelHouseList .btnLinkIn{
    width: 320px;
    height: 56px;
    border-radius: 28px;
    background: #fff;
    border: 1px solid #3d3d3d;
    font-size: 16px;
    color: #3d3d3d;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.secModelHouse .boxModelHouseList .btnLinkIn::after{
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #3d3d3d;
    position: absolute;
    top: 50%;
    left: 30px;
    transform: translateY(-50%);
}
@media only screen and (max-width:767px){
    .secModelHouse{
        margin-top: 30px;
    }
    .secModelHouse .txtTitSub{
        font-size: 18px;
        letter-spacing: 0.5px;
        margin-top: 20px;
    }
    .secModelHouse .boxModelHouseImg{
        margin: 30px auto 0;
    }
    .secModelHouse .boxModelHouseImg .boxPin{
        width: calc(29 / 375 * 100vw);
        height: calc(38 / 375 * 100vw);
    }
    .secModelHouse .boxModelHouseImg .boxPinLit{
        top: calc(93 / 375 * 100vw);
        left: calc(50% + (212 / 375 * 100vw / 2));
    }
    .secModelHouse .boxModelHouseImg .boxPinHaqua{
        top: calc(75 / 375 * 100vw);
        left: calc(50% - (247 / 375 * 100vw / 2));
    }
    .secModelHouse .boxModelHouseImg .boxPinLex{
        top: calc(114 / 375 * 100vw);
        left: calc(50% + (5 / 375 * 100vw / 2));
    }
    .secModelHouse .boxModelHouseList{
        margin-top: 30px;
    }
    .secModelHouse .boxModelHouseList .item{
        margin-bottom: 30px;
        flex-direction: column-reverse;
    }
    .secModelHouse .boxModelHouseList .boxLeft{
        width: 100%;
        padding: 25px 0 30px;
    }
    .secModelHouse .boxModelHouseList .boxFlexIn{
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
        min-width: 252px;
    }
    .secModelHouse .boxModelHouseList .boxTxtTop{}
    .secModelHouse .boxModelHouseList .txtTitMin{
        font-size: 14px;
    }
    .secModelHouse .boxModelHouseList .txtTit{
        font-size: 18px;
        line-height: calc(30/18);
        margin-top: 9px;
    }
    .secModelHouse .boxModelHouseList .logoModelHouse{
        margin-top: 20px;
    }
    .secModelHouse .item:nth-child(1) .logoModelHouse{
        width: 49px;
        margin: 0 auto 0 10px;
    }
    .secModelHouse .item:nth-child(2) .logoModelHouse{
        width: 80px;
        margin: 0 auto 0 10px;
    }
    .secModelHouse .item:nth-child(3) .logoModelHouse{
        width: 80px;
        margin: 0 auto 0 10px;
    }
    .secModelHouse .boxModelHouseList .boxPrice{
        padding: 8px;
        border-radius: 4px;
        margin-top: 20px;
    }
    .secModelHouse .boxModelHouseList .txtIcon{
        width: 70px;
        height: 30px;
        border-radius: 4px;
        font-size: 12px;
    }
    .secModelHouse .boxModelHouseList .txtPrice{
        font-size: 22px;
        margin-left: 23px;
    }
    .secModelHouse .boxModelHouseList .txtMin{
        font-size: 14px;
    }
    .secModelHouse .boxModelHouseList .boxLink{
        margin-top: 25px;
    }
    .secModelHouse .boxModelHouseList .btnLinkIn{
        width: 255px;
        height: 50px;
        border-radius: 25px;
        font-size: 14px;
    }
    .secModelHouse .boxModelHouseList .btnLinkIn::after{
        width: 6px;
        height: 6px;
        left: 20px;
    }
}

.secModelHouse .secModelHouseSlider{
    overflow: hidden;
}
.secModelHouse .secModelHouseSlider .boxModelHouseSlider{
    position: relative;
}
.secModelHouse .swiper{
    width: 640px;
    overflow: visible;
}
.secModelHouse .itemIn{
    position: relative;
}
.secModelHouse .btnLightBox{
    position: absolute;
    bottom: 20px;
    right: 20px;
}
.secModelHouse .txtLightBox{
    width: 120px;
    height: 45px;
    border-radius: 22.5px;
    background: #fff;
    font-size: 16px;
    color: #3d3d3d;
    display: flex;
    align-items: center;
    padding-left: 19px;
    position: relative;
}
.secModelHouse .txtLightBox::after,
.secModelHouse .txtLightBox::before{
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    width: 10px;
    height: 2px;
    background: #000;
    transform: translate(-50%, -50%);
}
.secModelHouse .txtLightBox::after{
    transform: translate(-50%, -50%) rotate(90deg);
}
.secModelHouse .swiper-pagination{
    bottom: 20px!important;
    left: 20px!important;
    text-align: left;
}
.secModelHouse .swiper-pagination-bullet{
    width: 8px;
    height: 8px;
    border: 1px solid #fff;
    background: none;
    opacity: 1;
    margin: 0 5px;
}
.secModelHouse .swiper-pagination-bullet-active{
    background: #fff;
}
.lightboxOverlay{
    background: rgba(61, 61, 61, 0.8)!important;
}
.lb-nav a.lb-next{
    right: calc(50% + -675px)!important;
}
.lb-nav a.lb-prev{
    left: calc(50% + -675px)!important;
}
.lb-data .lb-caption{
    position: absolute;
    top: -30px;
}
.lb-caption img.imgLit{
    height: 37px;
}
.lb-caption img.imgHaqua{
    height: 29px;
}
.lb-caption img.imgLex{
    height: 31px;
}
.lb-data .lb-close{
    width: 50px!important;
    height: 50px!important;
    position: absolute!important;
    top: -45px!important;
    right: calc(50% - 525px)!important;
    opacity: 1!important;
    background-size: cover!important;
    background-position: center!important;
}
.lb-data .lb-number{
    position: absolute!important;
    right: calc(50% - 525px)!important;
    bottom: -55px!important;
    font-size: 20px!important;
    font-family:'游ゴシック'!important;
    color: #fff!important;
}
.lightbox .lb-image{
    border-radius: unset!important;
    border: none!important;
}
.lb-nav a.lb-next{
    height: 100px!important;
    bottom: 0!important;
    margin: auto!important;
}
@media only screen and (max-width:767px){
    .secModelHouse .swiper{
        width: 100%;
    }
    .secModelHouse .btnLightBox{
        bottom: 20px;
        right: 20px;
    }
    .secModelHouse .txtLightBox{
        width: 85px;
        height: 32px;
        border-radius: 16px;
        font-size: 12px;
        padding-left: 9px;
    }
    .secModelHouse .txtLightBox::after,
    .secModelHouse .txtLightBox::before{
        right: 10px;
        width: 8px;
        height: 2px;
    }
    .secModelHouse .swiper-pagination{
        bottom: 15px!important;
        left: 15px!important;
    }
    .secModelHouse .swiper-pagination-bullet{
        width: 6px;
        height: 6px;
        margin: 0 4px;
    }
    .lb-nav a.lb-next{
        right: calc(50% - 170px)!important;
        background-size: 40px!important;
    }
    .lb-nav a.lb-prev{
        left: calc(50% - 170px)!important;
        background-size: 40px!important;
    }
    .lb-data .lb-caption{
        top: 0;
    }
    .lb-caption img.imgLit{
        height: 22px;
    }
    .lb-caption img.imgHaqua{
        height: 17px;
    }
    .lb-caption img.imgLex{
        height: 18px;
    }
    .lb-data .lb-close{
        width: 35px!important;
        height: 35px!important;
        top: -20px!important;
        right: calc(50% - 150px)!important;
    }
    .lb-data .lb-number{
        right: calc(50% - 150px)!important;
        bottom: -40px!important;
        font-size: 15px!important;
    }
    .lb-outerContainer{
        width: 90%!important;
        background-color: unset!important;
        margin: 0 auto!important;
    }
    .lightbox .lb-image{
        width: 90%!important;
        height: auto!important;
        margin: 0 auto!important;
    }
    .lb-nav a.lb-next{
        height: 40px!important;
    }
}

/* secParkMovie */
.secParkMovie{
    margin-top: 80px;
}
.secParkMovie .boxMovie{
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin-top: 40px;
}
.secParkMovie .boxMovie iframe{
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
.secParkMovie .boxReserve{
    padding: 30px;
    background: #f1f1f1;
    display: flex;
    position: relative;
    margin-top: 80px;
}
.secParkMovie .boxReserve .imgTxtWelcome{
    position: absolute;
    top: -28px;
    left: -38px;
}
.secParkMovie .boxReserve .boxFlex{
    width: 100%;
    display: flex;
    align-items: center;
}
.secParkMovie .boxReserve .boxTxt{
    width: calc(100% - 450px);
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-left: 30px;
}
.secParkMovie .boxReserve .txtTop{
    font-size: 20px;
    line-height: calc(44/20);
    letter-spacing: 1px;
}
.secParkMovie .boxReserve .btnReserve{
    width: 320px;
    height: 56px;
    border-radius: 28px;
    background: #fff;
    border: 1px solid #3d3d3d;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    color: #3d3d3d;
    text-decoration: none;
    text-align: center;
    position: relative;
    margin-top: 38px;
}
.secParkMovie .boxReserve .btnReserve::after{
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #3d3d3d;
    position: absolute;
    top: 50%;
    left: 30px;
    transform: translateY(-50%);
}
@media only screen and (max-width:767px){
    .secParkMovie{
        margin-top: 25px;
    }
    .secParkMovie .boxMovie{
        width: 100%;
        padding-top: 56.25%;
        margin-top: 20px;
    }
    .secParkMovie .boxReserve{
        padding: 0;
        margin-top: 40px;
    }
    .secParkMovie .boxReserve .imgTxtWelcome{
        width: 102px;
        top: -24px;
        left: -11px;
    }
    .secParkMovie .boxReserve .boxImg{
        width: 43.48%;
    }
    .secParkMovie .boxReserve .boxTxt{
        width: calc(100% - 43.48%);
        padding-left: 0;
    }
    .secParkMovie .boxReserve .txtTop{
        font-size: 13px;
        line-height: calc(24/13);
        letter-spacing: 0.5px;
    }
    .secParkMovie .boxReserve .btnReserve{
        width: 155px;
        height: 36px;
        border-radius: 18px;
        font-size: 11px;
        margin-top: 11px;
    }
    .secParkMovie .boxReserve .btnReserve::after{
        width: 6px;
        height: 6px;
        left: 7px;
    }
}

/* secTicker */
.secTicker{
    overflow: hidden;
    margin-top: -10px;
}
.secTicker .boxTicker{
    display: flex;
}
.secTicker .itemTicker:nth-child(odd){
    animation: loop 80s -40s linear infinite;
    backface-visibility: hidden;
    will-change: transform;
    transform: translate3d(0, 0, 0);
}
.secTicker .itemTicker:nth-child(even){
    animation: loop2 80s linear infinite;
}
.secTicker .imgTicker{
    margin-left: 40px;
}
@keyframes loop{
    0% {
        transform: translateX(100%);
    }
    to {
        transform: translateX(-100%);
    }
}
@keyframes loop2{
    0% {
        transform: translateX(0);
    }
    to {
        transform: translateX(-200%);
    }
}
@media only screen and (max-width:767px){
    .secTicker{
        margin-top: -5px;
    }
    .secTicker .imgTicker{
        height: 39px;
        width: 375px;
    }
}

/* secSpec */
.secSpec{
    padding: 80px 0 120px;
    background: #f1f1f1;
    margin-top: 120px;
}
.secSpec .txtAbout{
    font-size: 24px;
    line-height: calc(60/24);
    letter-spacing: 1px;
    text-align: center;
    margin-top: 32px;
}
.secSpec .boxSpec{
    padding: 100px;
    background: #fff;
    margin-top: 42px;
}
.secSpec .imgtable{
    margin-top: 60px;
}
.secSpec .txtBottomNote{
    font-size: 13px;
    text-align: center;
    margin-top: 23px;
}
@media only screen and (max-width:767px){
    .secSpec{
        padding: 30px 0 60px;
        margin-top: 60px;
    }
    .secSpec .txtAbout{
        font-size: 18px;
        line-height: calc(30/18);
        letter-spacing: 0.5px;
        margin-top: 14px;
    }
    .secSpec .boxSpec{
        padding: 30px 0 30px 15px;
        margin-top: 24px;
    }
    .secSpec .boxSpec .imgGraph{
        padding-right: 15px;
    }
    .secSpec .imgtable{
        margin-top: 30px;
    }
    .secSpec .imgtable img{
        width: 750px;
    }
    .scrollItem{
        position: relative;
        width: 100%;
        height: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }
    .scrollItem::-webkit-scrollbar{
        display: none;
    }
    .scrollItem::before{
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: url(../img/common/iconScroll.png) center center / 110px auto no-repeat;
        transition: all 0.2s ease-out 0.2s;
        animation: scrollItemAnimation 1s linear infinite;
        z-index: 10;
        pointer-events: none;
    }
    .scrollItem.scrolled::before{
        opacity: 0;
    }
    @keyframes scrollItemAnimation {
        0%   { transform:translateX(0); }
        25%   { transform:translateX(10px) }
        50% { transform:translateX(0); }
        75% { transform:translateX(-10px); }
        100% { transform:translateX(0); }
    }
    .secSpec .txtBottomNote{
        font-size: 11px;
        line-height: calc(16/11);
        margin-top: 13px;
    }
}

/* secMerit */
.secMerit{
    padding: 100px 0 277px;
    background: #3d3d3d;
    color: #fff;
}
.secMerit .boxList{
    margin-top: 50px;
}
.secMerit .item{
    display: flex;
    align-items: center;
    gap: 80px;
    margin-bottom: 100px;
}
.secMerit .item:nth-child(2n){
    flex-direction: row-reverse;
}
.secMerit .item:last-child{
    margin-bottom: 0;
}
.secMerit .boxTxt{
    width: calc(100% - 750px - 80px);
}
.secMerit .txtMeritNum{
    font-size: 40px;
}
.secMerit .txtMin{
    font-size: 22px;
    margin-right: 9px;
}
.secMerit .txtMeritTitle{
    font-size: 36px;
    line-height: calc(60/36);
    letter-spacing: 1px;
    margin-top: 28px;
    padding-bottom: 33px;
    border-bottom: 1px solid #fff;
}
.secMerit .txtAbout{
    font-size: 16px;
    line-height: calc(45/16);
    margin-top: 26px;
}
@media only screen and (max-width:767px){
    .secMerit{
        padding: 30px 0 169px;
    }
    .secMerit .boxList{
        margin-top: 20px;
    }
    .secMerit .item{
        flex-direction: column;
        gap: 25px;
        margin-bottom: 42px;
    }
    .secMerit .item:nth-child(2n){
        flex-direction: column;
    }
    .secMerit .item:last-child{
        margin-bottom: 0;
    }
    .secMerit .boxTxt{
        width: 100%;
    }
    .secMerit .txtMeritNum{
        font-size: 20px;
    }
    .secMerit .txtMin{
        font-size: 14px;
        margin-right: 7px;
    }
    .secMerit .txtMeritTitle{
        font-size: 20px;
        line-height: calc(34/20);
        letter-spacing: 0.5px;
        margin-top: 13px;
        padding-bottom: 18px;
    }
    .secMerit .txtAbout{
        font-size: 13px;
        line-height: calc(30/13);
        margin-top: 14px;
    }
}

/* secTicker2 */
.secTicker2{
    margin-top: -156px;
}
.secTicker2 .imgTicker{
    margin-left: 40px;
}
.secTicker2 .itemTicker:nth-child(odd){
    animation: loop 120s -60s linear infinite;
    backface-visibility: hidden;
    will-change: transform;
    transform: translate3d(0, 0, 0);
}
.secTicker2 .itemTicker:nth-child(even){
    animation: loop2 120s linear infinite;
}
@media only screen and (max-width:767px){
    .secTicker2{
        margin-top: -109px;
    }
    .secTicker2 .imgTicker{
        height: 172px;
        width: 1520px;
    }
}

/* secHowToLookAround */
.secHowToLookAround{
    margin-top: 100px;
}
.secHowToLookAround .boxFlex{
    margin-top: 10px;
}
.secHowToLookAround .txtTitSub{
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    font-size: 26px;
    letter-spacing: 1px;
    color: #fff;
}
.secHowToLookAround .txtTitSub.lazyloaded{
    background: url(../img/index/imgArrow.png) center top / cover;
}
.secHowToLookAround .txtTitSub .txtMin{
    font-size: 18px;
}
.secHowToLookAround .txtTitSub .txtTitSubSp{
    display: none;
}
.secHowToLookAround .boxList{
    display: flex;
    gap: 70px;
    margin-top: 69px;
}
.secHowToLookAround .boxList .item{
    width: calc((100% - 140px) / 3);
    border: 1px solid #3d3d3d;
    border-radius: 4px;
    padding: 0 10px 32px;
    text-align: center;
    position: relative;
}
.secHowToLookAround .boxList .item::after{
    content: "";
    width: 50px;
    height: 1px;
    background: #3d3d3d;
    position: absolute;
    top: 50%;
    right: -60px;
    transform: translateY(-50%);
}
.secHowToLookAround .boxList .item:last-child:after{
    display: none;
}
.secHowToLookAround .boxList .txtStep{
    width: 90px;
    height: 40px;
    background: #3d3d3d;
    border-radius: 4px;
    font-size: 26px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -20px;
    left: 15px;
}
.secHowToLookAround .boxList .txtStepMin{
    font-size: 16px;
    margin-right: 3px;
    padding-top: 3px;
}
.secHowToLookAround .boxList .boxImg{
    width: 150px;
    margin: -44px auto 0;
}
.secHowToLookAround .boxList .boxImg img{
    border-radius: 50%;
}
.secHowToLookAround .boxList .txtStepTit{
    font-size: 22px;
    letter-spacing: 1px;
    margin-top: 30px;
    position: relative;
}
.secHowToLookAround .boxList .txtStepTit::after,
.secHowToLookAround .boxList .txtStepTit::before{
    content: "";
    width: 200px;
    height: 1px;
    background: #3d3d3d;
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
}
.secHowToLookAround .boxList .txtStepTit::before{
    top: unset;
    bottom: -13px;
}
.secHowToLookAround .boxList .txtTime{
    width: 140px;
    height: 35px;
    background: #f1f1f1;
    border-radius: 17.5px;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto 0;
}
.secHowToLookAround .boxList .txtAbout{
    font-size: 14px;
    line-height: calc(30/14);
    margin-top: 30px;
}
@media only screen and (max-width:767px){
    .secHowToLookAround{
        margin-top: 45px;
    }
    .secHowToLookAround .boxFlexSp{
        display: flex;
        /* flex-direction: row-reverse; */
        gap: 10px;
        margin-top: 65px;
        position: relative;
    }
    .secHowToLookAround .boxFlex{
        margin-top: 0;
    }
    .secHowToLookAround .txtTitSub{
        height: 100%;
        width: 43px;
        gap: unset;
        font-size: 0;
        position: relative;
        display: block; 
    }
    .secHowToLookAround .txtTitSub.lazyloaded{
        background: url(../img/index/imgArrow_sp.png) center top / cover;
    }
    .secHowToLookAround .txtTitSub .txtMin{
        font-size: 0;
    }
    .secHowToLookAround .txtTitSub .txtTitSubSp{
        display: block;
    }
    .secHowToLookAround .txtTitSub .txtPc{
        display: none;
    }
    .secHowToLookAround .txtTitSub .boxStickySp{
        position: sticky;
        top: 100px;
        right: 0;
        left: 0;
        margin: auto;
        display: flex;
        justify-content: center;
        padding: 30px 0;
    }
    .secHowToLookAround .boxList{
        width: calc(100% - 43px - 10px);
        flex-direction: column;
        gap: 85px;
        margin-top: 0;
    }
    .secHowToLookAround .boxList .item{
        width: 100%;
        padding: 0 10px 25px;
    }
    .secHowToLookAround .boxList .item::after{
        width: 1px;
        height: 20px;
        top: unset;
        bottom: -30px;
        right: unset;
        left: 50%;
        transform: translateX(-50%);
    }
    .secHowToLookAround .boxList .item:last-child:after{
        display: none;
    }
    .secHowToLookAround .boxList .txtStep{
        width: 65px;
        height: 30px;
        border-radius: 4px;
        font-size: 15px;
        top: -15px;
        left: 15px;
    }
    .secHowToLookAround .boxList .txtStepMin{
        font-size: 11px;
        margin-right: 3px;
        padding-top: 0px;
    }
    .secHowToLookAround .boxList .boxImg{
        width: 100px;
        margin: -45px auto 0;
    }
    .secHowToLookAround .boxList .txtStepTit{
        font-size: 16px;
        letter-spacing: 0.5px;
        margin-top: 20px;
    }
    .secHowToLookAround .boxList .txtStepTit::after,
    .secHowToLookAround .boxList .txtStepTit::before{
        width: 145px;
        height: 1px;
        top: -12px;
    }
    .secHowToLookAround .boxList .txtStepTit::before{
        top: unset;
        bottom: -10px;
    }
    .secHowToLookAround .boxList .txtTime{
        width: auto;
        height: auto;
        padding: 6px 9px 7px;
        border-radius: 11.5px;
        font-size: 11px;
        display: inline-block;
        margin: 10px auto 0;
    }
    .secHowToLookAround .boxList .txtAbout{
        font-size: 11px;
        line-height: calc(22/11);
        margin-top: 20px;
    }
}
@media only screen and (max-width: 330px){
    .secHowToLookAround .boxList .txtAbout{
        font-size: 10px;
    }
}

/* boxPresent */
.secHowToLookAround .boxPresent{
    padding: 70px 160px 80px;
    border-radius: 5px;
    text-align: center;
    margin-top: 100px;
}
.secHowToLookAround .boxPresent.lazyloaded{
    background: url(../img/index/bgPresent.jpg) center top / cover no-repeat;
}
.secHowToLookAround .boxPresent .txtPresentTit{
    margin: 24px auto 35px;
    font-size: 30px;
    letter-spacing: 1px;
    color: #fff;
}
.secHowToLookAround .txtPresentNote{
    font-size: 13px;
    line-height: calc(26/13);
    margin-top: 23px;
}
@media only screen and (max-width:767px){
    .secHowToLookAround .boxPresent{
        padding: 27px 0 25px;
        border-radius: 5px;
        margin-top: 50px;
    }
    .secHowToLookAround .boxPresent.lazyloaded{
        background: url(../img/index/bgPresent_sp.jpg) center top / cover no-repeat;
    }
    .secHowToLookAround .boxPresent .txtPresentTitEng{
        width: 111px;
        margin: 0 auto;
    }
    .secHowToLookAround .boxPresent .txtPresentTit{
        margin: 8px auto 12px;
        font-size: 16px;
        letter-spacing: 0.5px;
    }
    .secHowToLookAround .boxImg{
        width: 95.073%;
        margin-left: 1px;
    }
    .secHowToLookAround .txtPresentNote{
        font-size: 11px;
        line-height: calc(22/11);
        margin-top: 13px;
    }
}

/* secConcept */
.secConcept{
    margin-top: 114px;
}
.secConcept .boxImgTop{
    position: relative;
    z-index: -1;
}
.secConcept .boxConcept{
    width: 1540px;
    margin: -200px auto 0;
    max-width: calc(100% - 40px);
    padding: 94px 100px 78px;
    background: #f1f1f1;
    border-radius: 4px;
    display: flex;
    gap: 130px;
}
.secConcept .txtTop{
    font-size: 22px;
}
.secConcept .txtTit{
    font-size: 45px;
    margin-top: 51px;
}
.secConcept .txtEng{
    font-size: 20px;
    margin-top: 50px;
}
.secConcept .txtAbout{
    font-size: 18px;
    line-height: calc(50/18);
    margin-top: 44px;
}
.secConcept .secTicker3{
    width: 51.042%;
    max-width: 980px;
    position: absolute;
    right: 0;
}
.secConcept .secTicker3 .imgTicker{
    margin-left: 1px;
}
@media only screen and (max-width:767px){
    .secConcept{
        margin-top: 60px;
    }
    .secConcept .boxImgTop{
        width: 96%;
        margin: 0 auto 0 0;
    }
    .secConcept .boxConcept{
        width: 96%;
        margin: -70px 0 0 auto;
        max-width: unset;
        padding: 35px 0 40px 15px;
        border-radius: 4px 0 0 4px;
        flex-direction: column;
        gap: 40px;
    }
    .secConcept .txtTop{
        font-size: 15px;
    }
    .secConcept .txtTit{
        font-size: 26px;
        margin-top: 13px;
    }
    .secConcept .txtEng{
        font-size: 12px;
        margin-top: 13px;
    }
    .secConcept .txtAbout{
        font-size: 13px;
        line-height: calc(30/13);
        margin-top: 18px;
    }
    .secConcept .secTicker3{
        width: 100%;
        position: relative;
    }
    .secConcept .secTicker3 .imgTicker{
        height: 190px;
        width: 841px;
    }
}

/* secAccess */
.secAccess{
    margin-top: 100px;
}
.secAccess .boxAccess{
    padding: 60px;
    background: #3d3d3d;
    display: flex;
    color: #fff;
    margin-top: 50px;
}
.secAccess .boxMap{
    position: relative;
    width: 100%;
    max-width: 620px;
    padding-top: 37.705%;
}
.secAccess .boxMap iframe{
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
.secAccess .boxTxt{
    width: calc(100% - 620px - 60px);
    margin-left: 60px;
}
.secAccess .boxTxt .txtTit{
    font-size: 26px;
}
.secAccess .boxTxt .boxTable{
    width: 100%;
    margin-top: 30px;
}
.secAccess .boxTxt .boxTr{
    border-bottom: 1px solid #fff;
}
.secAccess .boxTxt .boxTr:first-child{
    border-top: 1px solid #fff;
}
.secAccess .boxTxt .boxTh{
    width: 160px;
    font-size: 16px;
    font-weight: bold;
}
.secAccess .boxTxt .boxTd{
    width: calc(100% - 160px);
    font-size: 16px;
    line-height: calc(30/16);
    padding: 18px 0;
}
@media only screen and (max-width:767px){
    .secAccess{
        margin-top: 30px;
    }
    .secAccess .boxAccess{
        padding: 30px 15px;
        flex-direction: column-reverse;
        margin-top: 20px;
    }
    .secAccess .boxMap{
        width: 100%;
        padding-top: 79.37%;
        margin-top: 30px;
    }
    .secAccess .boxTxt{
        width: 100%;
        margin-left: 0;
    }
    .secAccess .boxTxt .txtTit{
        font-size: 18px;
    }
    .secAccess .boxTxt .boxTable{
        width: 100%;
        margin-top: 20px;
    }
    .secAccess .boxTxt .boxTh{
        width: 90px;
        font-size: 13px;
    }
    .secAccess .boxTxt .boxTd{
        width: calc(100% - 90px);
        font-size: 13px;
        line-height: calc(24/13);
        padding: 10px 0;
    }
}

/* secReserveBtn */
.secReserveBtn .btnReserve{
    width: 700px;
    height: 80px;
    border-radius: 40px;
    background: #70b3ae;
    /* border: 1px solid #fff; */
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 22px;
    color: #fff;
    text-decoration: none;
    text-align: center;
    position: relative;
    margin: 80px auto 0;
}
.secReserveBtn .btnReserve::after{
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 30px;
    transform: translateY(-50%);
}
@media only screen and (max-width:767px){
    .secReserveBtn .btnReserve{
        width: 255px;
        height: 50px;
        border-radius: 25px;
        font-size: 14px;
        margin: 25px auto 0;
    }
    .secReserveBtn .btnReserve::after{
        width: 6px;
        height: 6px;
        left: 20px;
    }
}