@charset "utf-8";

/* v-2020-5-23--v-20200918 */
@media screen and (max-width:425px) {

    .m_nav_btn-inner div {
        background-color: black !important;
    }

    .navViewInnerLan a {
        color: black !important;
        border-top: 1px solid black;
        border-bottom: 1px solid black;
    }

    .navViewInnerLan a:nth-child(1) {
        border-top: 1px solid black !important;
        border-bottom: 1px solid black !important;
    }

    .navViewInnerLan a:nth-child(2) {
        border-right: 1px solid black !important;
    }

    .iform-main {
        width: 85%;
        float: right;
    }

    .iform-tit {
        width: 100%;
        margin: 0;
        padding: 25px 0;
    }

    .iform-tit h1::before {
        display: none;
    }

    .iform-tit h1::after {
        display: none;
    }

    .iform-con {
        width: 100%;
        margin: 0;
    }

    .iform-con form {
        width: 97%;
        margin: 0 auto;
        padding: 25px 0;
        background-color: rgb(247, 247, 247);
        box-shadow: none;
        /* border-radius: 3px; */
    }

    .iformBox,
    .iformBoxText {
        width: 97%;
        height: auto;
        /* padding: 5px; */
        display: block;
        /* justify-content: space-between; */
        margin: 0;
        margin-bottom: 20px;
    }

    .iform-con form label {
        font-size: 16px;
        letter-spacing: 2px;
    }

    .iform-con form input {
        width: 97%;
        height: 25px;
        outline: none;
        border: none;
        padding: 5px;
        font-size: 14px;
        border-radius: 5px;
        border: rgb(255, 255, 255) solid 1px;
    }

    .iformBoxText textarea {
        width: 97%;
        height: 85px;
        resize: none;
        border: none;
        padding: 5px;
        outline: none;
        overflow-y: auto;
        border-radius: 5px;
        border: rgb(255, 255, 255) solid 1px;
        font-family: "Helvetica Neue LT W01_55 Roman",
        "hsn-zhcn-sans-light",
        "hsn-zhtw-sans-light",
        "FOT-筑紫ゴシック Pr5 L{pm}",
        sans-serif;
        font-size: 16px;
    }

    .formBtn {
        width: 250px !important;
        color: white;
        margin: 0 auto;
        height: 50px !important;
        font-size: 20px !important;
        letter-spacing: 3px;
        cursor: pointer;
        border: none !important;
        background-color: #7bad4a;
        transition: background-color .5s;
        -webkit-appearance: none;
    }

    .corona {
        width: 80%;
        float: right;
    }

    .corona a {
        display: block;
        margin: 0 auto;
        font-size: 18px;
        text-decoration: underline;
        color: #ee0000;
        margin-bottom: 30px;
        width: 90%;
        text-align: center;
    }

    #footbr {
        display: block;
    }

    .description {
        display: none;
    }

    .header {
        display: none;
    }

    .innerBox {
        width: 100%;
        padding: 0;

    }

    .innerBox ul {
        box-shadow: none;
        padding: 0 10px 0 70px;
    }

    h2::before {
        display: none;
    }

    h2::after {
        display: none;
    }

    .mainvisual {
        /* background-image: url("../img/main_visual.jpg");
        background-size: 110% 120%; */
        /* height: calc(100vh - 110px); */
        height: calc(100vh);
        margin-bottom: 0;
        position: relative;
        overflow: hidden;
    }

    .main-img {
        width: 110%;
        height: 120%;
        position: absolute;
        top: 0;
        animation: none;

    }

    /* @keyframes auto {
        from{transform:translateX(-22px)}
        to{transform: translateX(0);}
    }
    @-webkit-keyframes auto {
        from{transform:translateX(-22px)}
        to{transform: translateX(0);}
    }
    @-moz-keyframes auto {
        from{transform:translateX(-22px)}
        to{transform: translateX(0);}
    }
    @-o-keyframes auto {
        from{transform:translateX(-41px)}
        to{transform: translateX(0);}
    } */
    .roomimage {
        margin-top: 30px;
    }

    .welcome {
        /*background-color: red;*/
        position: absolute;
        bottom: 10px;
        left: 46%;
        display: block;
    }

    .welTxt {
        font-size: 35px;
        color: white;
        font-weight: 600;
    }

    .welIcon i {
        color: white;
        font-size: 23px;
        position: relative;
        left: 46%;
    }

    .vlogo {
        display: block;
        position: absolute;
        z-index: 900;
        transition: opacity 0.5s;
        top: 105px;
    }

    .vlogo img {
        width: 65px;
    }

    .m_vlogo {
        display: block;
        width: 45px;
        margin: 0 auto;
        z-index: 900;
        transition: opacity 0.5s;
        margin-top: 20px;
    }

    .m_vlogo img {
        width: 100%;
        opacity: 0;
        transition: opacity 0.5s;
    }

    /*review*/
    .review {
        background-color: rgba(255, 216, 166, 0.4);
        height: auto;
        min-height: calc(100vh);
        padding-top: 20px;
    }

    .review_inner {
        margin-left: 70px;
        padding-bottom: 55px;
        width: 80%;
    }

    .review_inner p {
        opacity: 0;
    }

    .review_inner_tit {
        margin-bottom: 30px;
    }

    .review_inner_tit p {
        width: 87%;
        font-size: 21px;
        line-height: 1.7;
        display: block;
        margin: 0 auto;
        padding: 40px 0;
        letter-spacing: 4px;
        text-align: center;
        font-weight: 500;
        font-family: "hsn-zhcn-serif-light",
        "hsn-zhtw-serif-light",
        "FOT-筑紫明朝 Pr6N L{pm}",
        serif !important;

    }

    /* .review_inner_con  {

    } */
    .review_inner_con p {
        font-size: 15px;
        color: #4b4b4b;
        line-height: 1.8;
        letter-spacing: 2.5px;
        width: 93%;
        display: block;
        margin: 0 auto;
        text-align: justify;
        text-align-last: center;
    }

    .review_inner_con p i {
        color: white;
        margin-right: 3px;
        font-size: 28px;
    }


    .roomInner {
        width: 100%;
        margin-top: 30px;
        position: relative;
    }

    .room_title {
        width: 84%;
        float: right;
        margin-bottom: 15px;
    }

    .root_txt {
        width: 84%;
        float: right;
        margin-top: 20px;
        box-sizing: border-box;
        padding: 0;
    }

    .root_txt p {
        text-align: justify;
        font-family: 'Noto Sans JP', sans-serif !important;
        font-size: 15px;
        display: block;
        margin: 0 auto;
        line-height: 32px;
        padding: 0 20px 0 7px;
        letter-spacing: 2.4px;
        text-align-last: center;
    }

    .icon {
        width: 23px;
        margin: 0 auto;
        margin-bottom: 15px;
    }

    .icon img {
        width: 100%;
    }

    .swiper-container {
        width: 85%;
        float: right;
    }

    .swiper-wrapper {
        overflow: hidden;
        border-radius: 5px;
    }

    .map {
        height: 430px;
        margin-top: 30px;
        margin-bottom: 40px;
    }

    .mapInnerBox {
        width: 83%;
        float: right;
        margin-top: 30px;
        margin-bottom: 0;
    }

    .map_title {
        margin-bottom: 20px;
    }

    .mapInner {
        width: 100%;
        height: calc(100vw - 57px);
        margin: 0 auto;
        border-radius: unset;
        overflow: hidden;
    }



    .footer {
        padding-top: 5px;
        padding-bottom: 15px;
        margin-top: 35px;
    }

    .footer_main {
        display: block;
        height: auto;
        width: 85%;
        /*padding: 8px;*/
        margin-left: 55px;
    }

    .footer_tit {
        position: unset;
        padding-bottom: 3px;
        width: 65%;
        margin: 0 auto;
    }

    .footer_tit p {
        border-bottom: 1px solid rgba(238, 238, 238, 0.51);
        padding: 6px 0;
        font-size: 12px;
        color: black;
        text-align: center;
    }

    .link {
        position: unset;
        margin-bottom: 5px;
        padding-bottom: 3px;
        width: 65%;
        margin: 0 auto;
    }

    .link ul li {
        font-size: 12px;
        /*margin-right: 37px;*/
    }

    .address {
        position: unset;
        padding-bottom: 3px;
        /*padding-right: 10px;*/
        width: 65%;
        margin: 0 auto;
    }

    .address p {
        border-bottom: 1px solid rgba(238, 238, 238, 0.51);
        padding: 6px 0;
        font-size: 12px;
        color: black;
        text-align: center;
        letter-spacing: 2px;
    }

    .iform a {
        font-size: 12px;
    }

    .rightcopy {
        font-size: 12px;
        color: black;
        /*width: 71%;*/
        /*margin: 0 auto;*/
        margin-top: 10px;

    }

    .rightcopy p {
        text-align: center;
    }



    /*nav*/
    .m_nav {
        width: 54px !important;
        height: calc(100vh - 70px);
        display: block;
        position: fixed;
        top: 0;
        z-index: 999;
        touch-action: none;

    }

    .m_nav_btn {
        width: 100%;
        height: 50px;
        margin-top: 18px;
        position: relative;
    }

    .m_nav_btn-inner {
        width: 30px;
        height: 30px;
        margin: 0 auto;

    }

    .m_nav_btn-inner-open {
        position: absolute;
        top: 0;
        left: 14px;
        opacity: 0;
    }

    .m_nav_btn-inner-open div:first-child {
        transform: rotate(45deg);
        position: relative;
        top: 12px;
    }

    .m_nav_btn-inner-open div:last-child {
        transform: rotate(-45deg);
    }

    .m_nav_btn-inner div {
        width: 100%;
        height: 2px;
        background-color: white;
        margin: 10px 0;
    }

    .m_nav_btn-inner div:first-child {
        margin-top: 0;
    }

    .m_nav_btn-inner div:last-child {
        margin-bottom: 0;
    }

    .m_nav_reserve {
        position: absolute;
        bottom: 50px;
        width: 100%;
        background-color: #6c9841;
        /*box-shadow: #A9A9A9 0 1px 5px;*/
        border-radius: 3px;
        touch-action: none;
        border-top-left-radius: unset;
        border-bottom-left-radius: unset;

    }

    .m_nav_reserve a {
        width: 100%;
        display: block;
        font-size: 17px;
        color: white;
        text-align: center;
        padding: 28px 0;
        writing-mode: horizontal-tb;
        letter-spacing: 5px;
    }

    .m_nav_reserve a span {
        width: 19px;
        /*height: 60px;*/
        display: block;
        line-height: 34px;
        margin: 0 auto;
    }

    .navView {
        width: 100%;
        height: calc(100vh);

        position: fixed;
        top: 0;
        left: -100%;
        z-index: 998;
        background-color: white;
        opacity: 1;
        transition: left 0.8s, opacity 1s;
        overflow-y: scroll;
        box-shadow: none;
    }

    .navViewInner {
        float: right;
        width: 80% !important;
        padding-right: 15px;
        /* overflow-y: scroll; */
        margin-top: 55px;
    }

    .navViewInner i {
        margin-right: 10px;
        color: #000000;
        font-size: 20px;
    }

    .navViewInnerLogo {
        margin-bottom: 15px;
        border-bottom: rgba(225, 225, 225, 0.8) solid 1px;
    }

    .navViewInnerLogo img {
        width: 70px;
        padding-top: 10px;
    }

    .navViewInnerList {
        color: #000;
    }

    .navViewInnerList li {

        color: black;
        padding: 10px 0;
        border-bottom: rgba(225, 225, 225, 0.8) solid 1px;
        margin-bottom: 10px;
    }

    .navViewInnerList ul li a {
        font-size: 17px;
        color: black;
        display: block;
        width: 100%;
    }

    .navViewInnerLan i {
        color: white;
        font-size: 24px;
        margin-left: 12px;
        margin-bottom: 7px;
    }

    .navViewInnerReserve {
        margin-top: 40px;
        border-bottom: rgba(225, 225, 225, 0.8) solid 1px;
    }

    .reWeb {
        background-color: #6c9841;
        height: 60px;
        border-radius: 3px;
    }

    .reWeb a {
        color: rgb(255, 255, 255);
        font-size: 18px;
        display: block;
        width: 100%;
        text-align: center;
        line-height: 3.5;
    }

    .rePh {
        margin-top: 20px;
    }

    .rePh span {
        font-size: 14px;
        display: block;
        margin-bottom: 5px;
    }

    .rePh p {
        color: #000;
    }

    .navViewInnerShare {
        margin-top: 40px;
        margin-bottom: 120px;
        border-bottom: rgba(225, 225, 225, 0.8) solid 1px;
    }

    .navViewInnerShare a {
        color: #000;
        font-size: 16px;
        display: block;
        margin-bottom: 5px;
    }

    .navViewInnerLan {
        margin-top: 30px;
    }

    .navViewInnerLan a {
        font-size: 15px;
        color: white;
        width: 26px;
        padding: 6px 0;
        padding-top: 9px;
        display: block;
        margin: 0 auto;
        text-align: center;
        line-height: 1.1;
        border-top: 1px solid white;
        border-bottom: 1px solid white;
    }

    .navViewInnerLan a:nth-child(2) {
        border-top: none;
        border-bottom: none;
        border-right: 1px solid white;
        transform: rotate(90deg);
        width: 35px;
        padding: 5px 5px;
        position: relative;
        top: 10px;
        padding-top: 5px;
    }

    /* 最新信息 */
    .real {
        margin-top: 60px;
        background-color: rgb(233, 233, 233);
        padding: 35px 0;
    }

    .realBox {
        width: 100% !important;
    }

    .real_tit {
        width: 85%;
        position: relative;
        left: 57px;
    }

    .real_tit h2 {
        font-family: "hsn-zhcn-serif-light",
        "hsn-zhtw-serif-light",
        "FOT-筑紫明朝 Pr6N L{pm}",
        serif !important;
        text-align: center;
    }

    .real_inner {
        width: 85%;
        position: relative;
        left: 60px;
    }

    .real_inner ul {
        margin-top: 30px;
    }

    .real_inner ul li {
        font-size: 14px;
        padding: 2px 10px;
        display: flex;
    }

    .real_inner ul li span:first-child {
        display: block;
        width: 228px;
        position: relative;
        text-decoration: underline;
        margin-right: 30px;
    }

    .real_inner ul li span:last-child {
        float: right;
        color: rgb(138, 138, 138);
        font-size: 12px;
        height: fit-content;
        margin-top: 2px;
    }

    .real_inner ul li span:first-child i {
        margin-right: 5px;
        position: absolute;
        left: -9px;
        top: 3px;
    }

    .real_con {
        margin-top: 30px;

    }

    .real_con section {
        width: 95%;
        /* background-color: rgba(238, 255, 247, 0.493); */
        background-color: rgb(255, 255, 255);
        display: none;
        border-radius: 5px;
        box-shadow: 0 5px 10px rgb(235, 235, 235);
        margin: 0 auto;
        position: relative;
    }

    .real_con section:before {
        content: "";
        /* border-bottom: 20px solid rgba(238, 255, 247, 0.493); */
        border-bottom: 17px solid rgb(255, 255, 255);
        border-left: 6px solid transparent;
        border-right: 6px solid transparent;
        position: absolute;
        top: -17px;
        left: 65px;
    }

    .real_con section p {
        padding: 30px 24px;
        font-size: 13px;
        letter-spacing: 2px;
        color: rgb(65, 64, 64);
        font-family: 'hsn-zhcn-serif-light',
        'hsn-zhtw-serif-light',
        'FOT-筑紫明朝 Pr6N L{pm}',
        serif;
        font-weight: 500;
        text-align: left;
    }

    .real_con section p span {
        display: block;
        margin-bottom: 7px;
        font-size: 16px;
        color: black;
        font-family: 'Osaka-Mono', serif;
    }

    .real_con section p span img {
        width: 24px;
        margin-right: 5px;
        position: relative;
        top: 5px;
    }





    /*轮播图 slide*/
    .swiper-slide {
        transform: none;

    }

    .swiper-slide-active,
    .swiper-slide-duplicate-active {
        transform: none;
        box-shadow: none;

    }

    /* .swiper-pagination-bullet-active {
        background-color: white !important;
    } 
    */
    .swiper-pagination-bullet {
        width: 6px !important;
        height: 6px !important;

    }

    .swiper-pagination {
        /*bottom: 27px !important;*/
        position: absolute;
        bottom: -25px !important;
    }

    /*img动画*/
    .swiperClass {
        transform: translate3d(30px, 0, 0);
        transition: translate3d 8s;
    }

    /* 轮播图hide */
    .swiper-container {
        display: none;
    }

    /******* 轮播图开始 ***************/
    .switcher {
        width: 343px;
        float: right;
    }

    /* area */
    .switcher_area {
        position: relative;
        /*pointer-events: none;*/
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
        user-select: none;
        border-radius: 4px 0 0 4px;
        -webkit-border-radius: 4px 0 0 4px;
        overflow: hidden;
        z-index: 3;
    }

    .switcher_area:before {
        content: '';
        display: block;
        padding-bottom: 133.33333333333331%;
    }

    .switcher_holder {
        position: absolute;
        top: 0;
        left: 0;
        width: 115%;
        height: 100%;
        /* display: none; */
    }

    .switcher_item {
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        width: auto;
        height: auto;
        overflow: hidden;
        opacity: 0;
        visibility: hidden;
    }

    .switcher_itemInner {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
    }

    .sw-img {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        background-position: center;
        -moz-background-size: cover;
        background-size: cover;
    }

    /*switcher_nav*/
    .switcher_nav {
        margin-top: 10px;
        position: relative;
        left: -7px;
    }

    .switcher_nav ul {
        margin: 0;
        padding: 0;
        font-size: 0;
    }

    .switcher_nav ul li {
        display: inline-block;
        list-style: none;
        width: 21px;
        height: 21px;
        position: relative;

    }

    .switcher_nav ul li span {
        display: block;
        width: 7px;
        height: 7px;
        background-color: silver;
        border-radius: 50%;
        transform: scale(.42857142857142855);
        position: absolute;
        left: 7px;
        bottom: 7px;
    }

    .switcher_nav ul li i {
        content: '';
        display: block;
        position: absolute;
        height: 1px;
        background-color: #000;
        bottom: 10px;
        left: 14px;
        width: 14px;
        transform: scale(0, 1);
        transition: transform 600ms cubic-bezier(.25, .46, .45, .94);
        transform-origin: right top;
    }

    .switcher_nav ul li:last-child i {
        display: none;
    }

    .sw_navActive span {
        transform: scale(1) !important;
        background-color: black !important;
    }

    .sw_navActive i {
        transform: scale(1, 1) !important;
        transition: transform 3s linear !important;
        transform-origin: left top !important;
    }



    /*auto sw*/
    .js-ready {
        visibility: visible;
        will-change: opacity;
    }

    .js-show {
        opacity: 1;
        transition: opacity 1.3s cubic-bezier(.455, .03, .515, .955);
        -webkit-transition: opacity 1.3s cubic-bezier(.455, .03, .515, .955);

    }

    .js-hide {
        opacity: 0;
        transition: opacity 1300ms cubic-bezier(.77, .575, .575, 1);
        -webkit-transition: opacity 1300ms cubic-bezier(.77, .575, .575, 1);
    }

    .js-pan .sw-img {
        transform: translate3d(-35px, 0, 0);
        -webkit-transform: translate3d(-35px, 0, 0);
        transition: transform 6s linear;
        -webkit-transition: transform 6s linear;
    }

    .js-end {
        transition: transform .5s cubic-bezier(.4, 0.7, .1, .2);
        ;
        z-index: 2;

    }

    .js-dragging {
        /*滑动途中*/
        visibility: visible;
        transition: none;
        opacity: 1 !important;
        -webkit-transition: none !important;
        z-index: 2;
    }

    /******* mobile 轮播图结束 ********************/

}

@media screen and (max-width:375px) {
    .iform-con form {
        width: 96%;
    }

    .iformBox,
    .iformBoxText {
        width: 96%;
    }

    .m_nav_reserve {
        bottom: 45px;
    }

    .swiper-container {
        width: 84%;
        height: 400px;

    }

    .review_inner_tit p {
        width: 81%;
        font-size: 18px;
        line-height: 1.7;
        font-weight: 500;
        position: relative;
        left: 3px;
    }

    .m_nav {
        width: 54px;
    }

    .switcher {
        width: 306px;
    }

    .vlogo {
        top: 90px;
    }

    .mapInnerBox {
        width: 82%;
    }

    .review_inner {
        margin-left: 62px;
        width: 82%;
    }

    .real_inner ul li span:first-child {
        width: 196px;
    }
}

@media screen and (max-width:320px) {
    .m_nav_reserve {
        bottom: 42px;
    }

    .swiper-container {
        width: 82%;
    }

    .mapInnerBox {
        width: 82%;
    }

    .address {
        width: 80%;
    }

    .link {
        width: 80%;
    }

    .footer_main {
        width: 82%;
    }

    .review_inner_tit p {
        width: 87%;
        font-size: 15px;
        line-height: 1.7;
        font-weight: 500;

    }

    .switcher {
        width: 265px;
    }

    .review_inner {
        margin-left: 63px;
        width: 78%;
    }

    .m_nav {
        width: 45px;
    }

    .real_inner ul li span:first-child {
        width: 175px;
    }
}

/* 横屏 */
@media screen and (orientation:landscape) and (max-width:736px) {
    .m_nav {
        width: 63px !important;
        height: calc(100vh) !important;
    }

    .m_vlogo {
        margin-top: 0 !important;
    }

    .m_nav_btn {
        height: 40px !important;
    }

    .navViewInnerLan {
        margin-top: 10px !important;
    }

    .m_nav_reserve {
        bottom: 0 !important;
    }

    .m_nav_reserve a {
        padding: 12px 0 !important;
    }

}

/* ipad pro */
@media screen and (max-width:1024px) and (min-width:768px) {
    .m_nav {
        width: 100px !important;
    }

    .review_inner {
        width: 50%;
    }

    .review_inner_con p {
        font-size: 18px;
    }

    .swiper-container {
        height: auto;
    }

    .roomInner {
        width: 78%;
    }

    .root_txt p {
        font-size: 18px;
    }

    .mapInner {
        width: 78%;
    }

    .realBox {
        width: 78% !important;
    }

    .main-img {
        width: 110%;
    }

    .navView {
        width: 55%;
    }
}

/* ipad */
@media screen and (max-width:768px) and (min-width:425px) {
    .root_txt {
        padding: 0 100px;
    }

    .roomInner {
        width: 74%;
    }

    .m_nav {
        width: 90px !important;
    }

    .mapInner {
        width: 74%;
    }

    .realBox {
        width: 74% !important;
    }

    .room_title h2::after {
        right: 16%;
    }

    .room_title h2::before {
        left: 16%;
    }

    .main-img {
        width: 110%;
    }

    .navView {
        width: 55%;
    }
}