body.menuopen {
    overflow: hidden;
}

#beauty .gmenusub ul li.mbeauty a::before, #onsenspa .gmenusub ul li.monsenspa a::before, #bedrockbath .gmenusub ul li.mbedrockbath a::before, #ariakekitchen .gmenusub ul li.mariakekitchen a::before, #beauty .gmenu ul li.mbeauty a::before, #onsenspa .gmenu ul li.monsenspa a::before, #bedrockbath .gmenu ul li.mbedrockbath a::before, #ariakekitchen .gmenu ul li.mariakekitchen a::before, #userguide .gmenu ul li.muserguide a::before, #spaplan2 .gmenu ul li.mspaplan a::before, #spaplan .gmenu ul li.mspaplan a::before, #top .gmenu ul li.mtop a::before, #faq .gmenu ul li.mfaq a::before, #concept .gmenu ul li.mconcept a::before, #about .gmenu ul li.mabout a::before {
    width: 100%;
}

#wrpG {
    width: 100%;
    height: calc(100vh - 54px);
    background-color: #A6D8D9;
    position: relative;
    position: fixed;
    pointer-events: none;
    top: 54px;
    left: -102%;
    z-index: 9990;
    overflow: auto;
    box-sizing: border-box;
    -moz-transition: 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);
    -o-transition: 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);
    -webkit-transition: 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);
    transition: 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);
    box-sizing: border-box;
}

#wrpG.gmenu ul {
    width: 100%;
    height: 100%;
    position: relative;
}

#wrpG.gmenu ul li {
    width: 50%;
    height: 16.666%;
    position: relative;
    float: left;
    border-right: 1px solid #FFFFFF;
    border-bottom: 1px solid #FFFFFF;
    box-sizing: border-box;
}

#wrpG.gmenu ul li:nth-child(2n) {
    border-right: none;
}

#wrpG.gmenu ul li:nth-child(11), #wrpG.gmenu ul li:nth-child(11) {
    border-bottom: none;
}

#wrpG.gmenu ul li a {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

#wrpG.gmenu ul li a img {
    width: auto;
    height: 30px;
}

#wrpG.gmenu ul li a::before {
    content: "";
    width: 0;
    height: 4px;
    background-color: #54B7C1;
    position: absolute;
    bottom: 0px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    z-index: 3;
}

.menuopen #wrpG {
    left: 0;
    pointer-events: auto;
}
@media screen and (max-width: 584px) {
    .stt-lang-select.tr {
        right: 60px!important;
    }
}

.thimi, .thimi2, .thimi4, .thimi3 {
    opacity: 0;
    transform: scale(1.1) translate(0, 100px) skew(0deg, -5deg);
}

.thimi.ani1 {
    opacity: 1;
    -webkit-transition: 1s 0.25s;
    -moz-transition: 1s 0.25s;
    -o-transition: 1s 0.25s;
    transition: 1s 0.25s;
    transform: scale(1) translate(0, 0) skew(0deg, 0deg);
}

.thimi2.ani1 {
    opacity: 1;
    -webkit-transition: all 1s 0.3s cubic-bezier(0.22, 0.61, 0.36, 1);
    transition: all 0.8s 0.3s cubic-bezier(0.22, 0.61, 0.36, 1);
    transform: scale(1) translate(0, 0) skew(0deg, 0deg);
}

.thimi3.ani1 {
    opacity: 1;
    -webkit-transition: all 0.8s 0.35s cubic-bezier(0.22, 0.61, 0.36, 1);
    transition: all 0.8s 0.35s cubic-bezier(0.22, 0.61, 0.36, 1);
    transform: scale(1) translate(0, 0) skew(0deg, 0deg);
}

.thimi4.ani1 {
    opacity: 1;
    -webkit-transition: all 0.8s 0.4s cubic-bezier(0.22, 0.61, 0.36, 1);
    transition: all 0.8s 0.4s cubic-bezier(0.22, 0.61, 0.36, 1);
    transform: scale(1) translate(0, 0) skew(0deg, 0deg);
}

.thim.ani1.ani1fin, .thim2.ani1.ani1fin, .thim4.ani1.ani1fin, .thim3.ani1.ani1fin {
    opacity: 1;
    -webkit-transition: all 0s 0s cubic-bezier(0.22, 0.61, 0.36, 1);
    transition: all 0s 0s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.thiml2, .thiml {
    opacity: 0;
    -webkit-transform: translateX(10%);
    -moz-transform: translateX(10%);
    -ms-transform: translateX(10%);
    transform: translateX(10%);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.thimr2, .thimr {
    opacity: 0;
    -webkit-transform: translateX(-10%);
    -moz-transform: translateX(-10%);
    -ms-transform: translateX(-10%);
    transform: translateX(-10%);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.thiml.ani1, .thimr.ani1 {
    opacity: 1;
    -webkit-transition: all 2s 0.25s cubic-bezier(0.22, 0.61, 0.36, 1);
    transition: all 2s 0.25s cubic-bezier(0.22, 0.61, 0.36, 1);
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
}

.thiml2.ani1, .thimr2.ani1 {
    opacity: 1;
    -webkit-transition: all 2s 0.4s cubic-bezier(0.22, 0.61, 0.36, 1);
    transition: all 2s 0.4s cubic-bezier(0.22, 0.61, 0.36, 1);
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
}

.thim, .thim2, .thim4, .thim3 {
    opacity: 0;
    -webkit-transform: translateY(5%);
    -moz-transform: translateY(5%);
    -ms-transform: translateY(5%);
    transform: translateY(5%);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.thim.thimu, .thim2.thimu, .thim4.thimu, .thim3.thimu {
    opacity: 0;
    -webkit-transform: translateY(-5%);
    -moz-transform: translateY(-5%);
    -ms-transform: translateY(-5%);
    transform: translateY(-5%);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.thim.ani1 {
    opacity: 1;
    -webkit-transition: 2s 0.25s;
    -moz-transition: 2s 0.25s;
    -o-transition: 2s 0.25s;
    transition: 2s 0.25s;
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%);
}

.thim2.ani1 {
    opacity: 1;
    -webkit-transition: 2s 0.3s;
    -moz-transition: 2s 0.3s;
    -o-transition: 2s 0.3s;
    transition: 2s 0.3s;
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%);
}

.thim3.ani1 {
    opacity: 1;
    -webkit-transition: 2s 0.35s;
    -moz-transition: 2s 0.35s;
    -o-transition: 2s 0.35s;
    transition: 2s 0.35s;
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%);
}

.thim4.ani1 {
    opacity: 1;
    -webkit-transition: 2s 0.4s;
    -moz-transition: 2s 0.7s;
    -o-transition: 2s 0.4s;
    transition: 2s 0.7s;
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
}

.thim.ani1.ani1fin, .thim2.ani1.ani1fin, .thim4.ani1.ani1fin, .thim3.ani1.ani1fin, .thiml.ani1.ani1fin, .thimr.ani1.ani1fin, .thiml2.ani1.ani1fin, .thimr2.ani1.ani1fin {
    opacity: 1;
    -webkit-transition: all 0s 0s cubic-bezier(0.22, 0.61, 0.36, 1);
    transition: all 0s 0s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.secin {
    position: relative;
    box-sizing: border-box;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.cf:before, .cf:after {
    content: "";
    display: table;
}

.cf:after {
    clear: both;
}

.note {
    font-size: 12px;
    width: 100%;
    max-width: 1000px;
    text-align: left;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

@media screen and (max-width: 584px) {
    .note {
        margin-top: 6px;
        font-size: 10px;
        padding: 0px;
    }
}
.note2 {
    font-size: 16px;
    width: 100%;
    text-align: left;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

@media screen and (max-width: 584px) {
    .note2 {
        margin-top: 6px;
        font-size: 10px;
        padding: 0px;
    }
}
.note3 {
    font-size: 12px;
    width: 100%;
    text-align: center;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

@media screen and (max-width: 584px) {
    .note3 {
        margin-top: 3px;
        font-size: 12px;
        padding: 0px;
    }
}

span.supT {
    font-size: 10px;
}

figure {
    position: relative;
}

figure img {
    display: block;
    vertical-align: bottom;
    width: 100%;
}

figure p.cnote {
    position: absolute;
    right: 5px;
    bottom: 5px;
    z-index: 2;
    line-height: 1em;
    color: #fff;
    text-shadow: 1px 1px 3px #000;
    margin: 0;
    font-feature-settings: "pwid";
    letter-spacing: 0px;
    font-size: 12px;
}

figure p.cnote.colb {
    color: #000;
    text-shadow: 1px 1px 3px #fff;
}

p.lead {
    font-size: 20px;
    text-align: center;
    margin-bottom: 20px;
    line-height: 2.4em;
}

@media screen and (max-width: 584px) {
    p.lead {
        font-size: 4.5vw;
        line-height: 2em;
    }
}

p.lead5 {
    font-size: 20px;
    text-align: center;
    margin-bottom: 20px;
    line-height: 2.4em;
    color: white;
    margin-top: 40px;
}

@media screen and (max-width: 584px) {
    p.lead5 {
        font-size: 4.5vw;
        line-height: 2em;
    }
}

p.lead6 {
    font-size: 16px;
    text-align: center;
    margin-bottom: 20px;
    line-height: 2.4em;
    color: white;
    margin-top: 40px;
}

@media screen and (max-width: 584px) {
    p.lead6 {
        font-size: 3.5vw;
        line-height: 2em;
    }
}

#wrapper {
    min-width: 1100px;
}

@media screen and (max-width: 584px) {
    #wrapper {
        min-width: 300px;
    }
}

.secin {
    box-sizing: border-box;
    position: relative;
    padding-top: 80px;
    padding-bottom: 50px;
    z-index: 3;
    width: 92%;
}

.secin .cbann {
    margin-top: 40px;
    position: relative;
    width: 100%;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.secin .cbann a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}

.secin .cbann a img {
    display: block;
    vertical-align: bottom;
    width: 100%;
}

.secin .cbtnset {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 400px;
}

.secin .cbtnset li {
    width: 44%;
    margin-right: 4%;
}

.secin .cbtnset li:nth-child(2n) {
    margin-right: 0;
}

.secin .cbtn {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 300px;
    height: 46px;
    margin-top: 20px;
    background-color: #38373f;
    border-radius: 30px;
    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
    -o-border-radius: 30px;
    -ms-border-radius: 30px;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 28px, rgba(0, 0, 0, 0.22) 0px 10px 10px;
}

.secin .cbtn a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.secin .cbtn a p {
    text-align: center;
    color: #fff;
}


.secin .cbtn2 {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 300px;
    height: 46px;
    margin-top: 20px;
    background-color: #076685;
    border-radius: 30px;
    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
    -o-border-radius: 30px;
    -ms-border-radius: 30px;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 28px, rgba(0, 0, 0, 0.22) 0px 10px 10px;
}

.secin .cbtn2 a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.secin .cbtn2 a p {
    text-align: center;
    color: #fff;
}

.secin h3 {
    font-size: 36px;
    color: #116685;
    text-align: center;
    font-weight: normal;
    margin: 0;
    margin-bottom: 20px;
}

.secin h3.sty2 {
    color: #38373f;
}

@media screen and (max-width: 584px) {
    .secin h3 {
        font-size: 4.5vw;
    }
}

.secin h4 {
    text-align: center;
    font-size: 20px;
    font-weight: normal;
    margin-bottom: 20px;
}

@media screen and (max-width: 584px) {
    .secin h4 {
        font-size: 3vw;
    }
}

.secin h5 {
    text-align: center;
    font-size: 20px;
    font-weight: normal;
    margin-bottom: 20px;
    margin-top: 20px;
}

@media screen and (max-width: 584px) {
    .secin h5 {
        font-size: 3vw;
    }
}

.secin table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

.secin table th {
    border: 1px solid #38373f;
    font-size: 16px;
    box-sizing: border-box;
    padding: 6px;
    padding-right: 10px;
    padding-left: 10px;
    font-weight: normal;
    text-align: left;
}

@media screen and (max-width: 584px) {
    .secin table th {
        padding: 6px;
        font-size: 4vw;
        width: 100%;
        display: block;
        padding-right: 0px;
        padding-left: 0px;
        border: none;
        border-bottom: 1px solid #116685;
    }

    .secin table th p br {
        display: none;
    }
}

.secin table td {
    border: 1px solid #38373f;
    font-size: 15px;
    box-sizing: border-box;
    padding: 6px;
    padding-right: 10px;
    padding-left: 10px;
}
.secin table td dt {
    font-size: 15px;
    box-sizing: border-box;
    padding: 6px;
    padding-right: 10px;
    padding-left: 10px;
    text-align:left
}
.secin table td dd {
    font-size: 15px;
    box-sizing: border-box;
    padding: 6px;
    padding-right: 10px;
    padding-left: 10px;
    text-align:right
}

@media screen and (max-width: 584px) {
    .secin table td {
        border: none;
        font-size: 3.5vw;
        text-align: right;
        width: 100%;
        display: block;
        padding: 6px;
        padding-right: 0px;
        padding-left: 0px;
    }

    .secin table td .note {
        margin-top: 6px;
        font-size: 10px;
        padding: 0px;
    }
}

.secin table.sty2 {
    border-spacing: 5px;
    border-collapse: separate;
}

@media screen and (max-width: 584px) {
    .secin table.sty2 {
        border-spacing: 0px;
        border-collapse: collapse;
    }
}

.secin table.sty2 th {
    background-color: #116685;
    border: none;
    color: #fff;
    border-bottom: 1px solid #116685;
    box-sizing: border-box;
    margin-bottom: 4px;
}

.secin table.sty2 th p {
    color: #fff;
    text-align: center;
}

.secin table.sty2 td {
    border: none;
    margin-bottom: 4px;
    box-sizing: border-box;
}

@media screen and (max-width: 584px) {
    .secin table.sty2 td {
        text-align: left;
    }
}

.secin table.sty2 td dl {
    border-bottom: 1px solid #116685;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
    padding: 6px;
}

@media screen and (max-width: 584px) {
    .secin table.sty2 td dl {
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

@media screen and (max-width: 584px) {
    .secin table.sty2 td dl dt {
        width: 100%;
        font-size: 4vw;
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 584px) {
    .secin table.sty2 td dl dd {
        width: 100%;
        font-size: 13px;
    }
}

.secin p.ico1 {
    margin-bottom: 4px;
    position: relative;
    font-size: 12px;
    line-height: 24px;
    display: none;
}

.secin p.ico1::before {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 24px;
    height: 24px;
    content: "";
    background-size: cover;
    background-position: center center;
    background-image: url("../img/common/ico_04.png");
}

.secin .cbox4 {
    background-color: rgba(255, 255, 255, 0.8);
    box-sizing: border-box;
    border: 1px solid #116685;
    padding: 50px;
    margin-bottom: 60px;
    position: relative;
    z-index: 7;
}

.secin .cbox4.last {
    margin-bottom: 0px;
}

.secin .cbox4 .cboxin {
    background-color: #F6F6F1;
    box-sizing: border-box;
    border: 4px solid #116685;
    padding: 50px;
}

@media screen and (max-width: 584px) {
    .secin .cbox4 {
        margin-bottom: 30px;
        padding: 15px;
    }

    .secin .cbox4 .cboxin {
        padding: 15px;
    }
}

.secin .cbox3 {
    background-color: #E4B0BF;
    box-sizing: border-box;
    margin-bottom: 60px;
    position: relative;
    z-index: 7;
}

.secin .cbox3.last {
    margin-bottom: 0px;
}

.secin .cbox3 .cboxin {
    box-sizing: border-box;
    padding: 50px;
}

@media screen and (max-width: 584px) {
    .secin .cbox3 {
        margin-bottom: 30px;
    }

    .secin .cbox3 .cboxin {
        padding: 15px;
    }
}

.secin .cbox2 {
    background-color: rgba(255, 255, 255, 0.8);
    box-sizing: border-box;
    padding: 50px;
    margin-bottom: 60px;
    position: relative;
    z-index: 7;
}

.secin .cbox2.last {
    margin-bottom: 0px;
}

.secin .cbox2 .cboxin {
    background-color: white;
    box-sizing: border-box;
    padding: 50px;
}

@media screen and (max-width: 584px) {
    .secin .cbox2 {
        margin-bottom: 30px;
        padding: 15px;
    }

    .secin .cbox2 .cboxin {
        padding: 15px;
    }
}

.secin .cbox {
    background-color: rgba(255, 255, 255, 0.8);
    box-sizing: border-box;
    border: 1px solid #116685;
    padding: 50px;
    margin-bottom: 60px;
    position: relative;
    z-index: 7;
}

.secin .cbox.last {
    margin-bottom: 0px;
}

.secin .cbox .cboxin {
    background-color: white;
    box-sizing: border-box;
    border: 1px solid #116685;
    padding: 50px;
}

@media screen and (max-width: 584px) {
    .secin .cbox {
        margin-bottom: 30px;
        padding: 15px;
    }

    .secin .cbox .cboxin {
        padding: 15px;
    }
}

.secctt {
    background-color: #116685;
    max-width: 100%;
}

.secctt .secin {
    padding-bottom: 80px;
}

.secctt ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

@media screen and (max-width: 584px) {
    .secctt ul {
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.secctt ul li {
    width: 32%;
    height: 80px;
    border: 1px solid #FFFFFF;
    box-sizing: border-box;
}

@media screen and (max-width: 584px) {
    .secctt ul li {
        width: 100%;
        margin-bottom: 20px;
        height: 60px;
    }

    .secctt ul li:last-child {
        margin-bottom: 0px;
    }
}

.secctt ul li a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.secctt ul li a p {
    text-align: center;
    color: #fff;
}

@media screen and (max-width: 584px) {
    .secctt {
        width: 100% !important;
    }

    .secctt .secin {
        width: 92%;
    }

    .secctt .secin li {
        width: 70%;
        margin-left: auto;
        margin-right: auto;
    }
}

.sec1 {
    max-width: 100%;
    background-color: #fff;
}

@media screen and (max-width: 584px) {
    .sec1 {
        width: 100%;
    }

    .sec1 .secin {
        width: 92%;
    }
}

h3.pctit {
    position: relative;
    margin-bottom: 60px;
}

h3.pctit img {
    height: 150px;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (max-width: 584px) {
    h3.pctit img {
        height: 100px;
    }
}

@media screen and (max-width: 584px) {
    h3.pctit {
        margin-bottom: 30px;
    }
}

.pagetitb {
    width: 100%;
    max-width: 100%;
    overflow: visible;
    position: absolute;
    left: 0;
    top: -160px;
    height: 160px;
    z-index: 3;
}

.pagetitb .cov1 {
    position: absolute;
    left: 0;
    bottom: -1px;
    z-index: 4;
    width: 100%;
    overflow: hidden;
}

.pagetitb .cov1 img {
    display: block;
    vertical-align: bottom;
    width: 100%;
}

.pagetitb .cov2 {
    position: absolute;
    left: -5%;
    bottom: -60%;
    z-index: 4;
    width: 30%;
    overflow: hidden;
}

.pagetitb .cov2 img {
    display: block;
    vertical-align: bottom;
    width: 100%;
}

@media screen and (max-width: 584px) {
    .pagetitb .cov2 {
        left: -5%;
        bottom: -26%;
        width: 40%;
    }
}

.pagetit {
    width: 100%;
    position: relative;
    height: 40vh;
    max-height: 560px;
    min-height: 560px;
    max-width: 100%;
}

.pagetit p.cnote {
    position: absolute;
    right: 5px;
    bottom: 15%;
    z-index: 2;
    line-height: 1em;
    color: #fff;
    text-shadow: 1px 1px 3px #000;
    margin: 0;
    font-feature-settings: "pwid";
    letter-spacing: 0px;
    font-size: 12px;
}

.pagetit p.cnote.colb {
    color: #000;
    text-shadow: 1px 1px 3px #fff;
}

.pagetit .mainc {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 3;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.pagetit .mainc img {
    display: block;
    vertical-align: bottom;
    width: auto;
    height: 100px;
}

@media screen and (max-width: 584px) {
    .main img{
        	display: block;
        		vertical-align: bottom;
        		width: 100%;
    }
    .pagetit .mainc img {
        height: 66px;
    }
}

.pagetit .mbg {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 1;
    background-size: cover;
    background-position: center center;
}

@media screen and (max-width: 584px) {
    .pagetit {
        min-height: 260px;
    }
}

@media screen and (max-width: 584px) {
    ._sp {
        display: block !important;
    }
    ._pc {
        display: none !important;
    }
}

.headernset {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.headernset .headernav1 {
    box-sizing: border-box;
}

.headernset .headernav1 ul {
    display: flex;
    justify-content: center;
    align-items: center;
}

.headernset .headernav1 ul li {
    padding: 10px;
}

.headernset .headernav1 ul li img {
    height: 20px;
    width: auto;
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}

.headernset .headernav1 ul li a {
    color: #ffff;
    font-size: 14px;
}

.headernset .headernav2 {
    box-sizing: border-box;
}

.headernset .headernav2 ul {
    display: flex;
    justify-content: center;
    align-items: center;
}

.headernset .headernav2 ul li {
    padding: 10px;
}

.headernset .headernav2 ul li img {
    height: 20px;
    width: auto;
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}

.headernset .headernav2 ul li a {
    color: #ffff;
    font-size: 14px;
}

header .gmenusub0 {
  overflow: hidden;
  position: absolute;
  width: 100%;
  max-width: 600px;
  left: 40%;
  bottom: -75px;
  height: 0;
  pointer-events: none;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  z-index: 130;
}

header .gmenusub {
  position: absolute;
  width: 100%;
  height: 75px;
    background-color: rgba(56, 55, 63, 0.9);
  bottom: 0px;
}

header .gmenusub ul {
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-evenly;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

header .gmenusub ul li {
  height: 100%;
  box-sizing: border-box;
  position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
width: 25%;

}

header .gmenusub ul li a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

header .gmenusub ul li a img {
  height: 26px;
  position: relative;
  z-index: 7;
}

header .gmenusub ul li a::before {
  content: "";
  width: 0;
  height: 4px;
  background-color: #54B7C1;
  position: absolute;
  bottom: 0px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  z-index: 3;
}

header .gmenusub ul li::before {
    content: "";
    height: 30px;
    width: 1px;
    background-color: rgba(255, 255, 255, 0.2);
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
header .gmenusub ul li:first-child::before {
display: none;
}
header .gmenusub ul li a:hover::before {
  width: 100%;
}

header .gmenusub ul li.pop a:hover {
  opacity: 1 !important;
}

header .gmenusub ul li.pop a::before {
  background-color: #fff;
  height: 90%;
}

header .gmenusub ul li.act a::before {
  width: 100%;
}
#beauty .gmenusub ul li.mbeauty a::before, #onsenspa .gmenusub ul li.monsenspa a::before, #bedrockbath .gmenusub ul li.mbedrockbath a::before, #ariakekitchen .gmenusub ul li.mariakekitchen a::before, #beauty .gmenu ul li.mbeauty a::before, #onsenspa .gmenu ul li.monsenspa a::before, #bedrockbath .gmenu ul li.mbedrockbath a::before, #ariakekitchen .gmenu ul li.mariakekitchen a::before, #userguide .gmenu ul li.muserguide a::before, #spaplan2 .gmenu ul li.mspaplan a::before, #spaplan .gmenu ul li.mspaplan a::before, #top .gmenu ul li.mtop a::before, #faq .gmenu ul li.mfaq a::before, #concept .gmenu ul li.mconcept a::before, #about .gmenu ul li.mabout a::before {
    width: 100%;
}

.popmenu header .header .gmenusub0 {
    height: 75px;
    pointer-events: auto;
}

.popmenu header .header .gmenu .pop a::before {
    background-color: #fff;
    width: 100%;
}
header .gmenusub0 {
    overflow: hidden;
    position: absolute;
    width: 100%;
    max-width: 600px;
    left: 40%;
    bottom: -75px;
    height: 0;
    pointer-events: none;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    z-index: 130;
}

/*.popmenu*/
.popmenu header .header .gmenusub0 {
    height: 75px;
    pointer-events: auto;
    z-index: 1111;
}

@media screen and (max-width: 1086px) {
    .gmenusub0{
        display: none;
    }
}

@media screen and (min-width: 1171px){
    /*#faq .header .header_nav ul li:nth-of-type(7),*/
    /*#restaurant .header .header_nav ul li:nth-of-type(6),*/
    /*#news .header .header_nav ul li:nth-of-type(6),*/
    /*#beauty .header .header_nav ul li:nth-of-type(5),*/
    /*#onsenspa .header .header_nav ul li:nth-of-type(4),*/
    /*#about .header .header_nav ul li:nth-of-type(3),*/
    /*#about .header .header_nav ul li:nth-of-type(2),*/
    /*#top .header .header_nav ul li:nth-of-type(1) {*/
    /*     pointer-events: auto;*/
    /*}*/
    .header .header_nav ul li {
        position: relative;
        margin: 0 0 0px!important;
        width: 100%;
        height: 100%;
    }
    /*#faq .header .header_nav ul li:nth-of-type(9) a::before,*/
    /*#restaurant .header .header_nav ul li:nth-of-type(6) a::before,*/
    /*#news .header .header_nav ul li:nth-of-type(6) a::before,*/
    /*#beauty .header .header_nav ul li:nth-of-type(5) a::before*/
    /*#onsenspa .header .header_nav ul li:nth-of-type(4) a::before,*/
    /*#about .header .header_nav ul li:nth-of-type(3) a::before,*/
    /*#userguide .header .header_nav ul li:nth-of-type(2) a::before,*/
    /*#top .header .header_nav ul li:nth-of-type(1) a::before {*/
    /*    content: "";*/
    /*    width: 100%;*/
    /*    height: 5px;*/
    /*    background-color: #066686;*/
    /*    position: absolute;*/
    /*    bottom: 0px;*/
    /*    left: 0;*/
    /*}*/
    /*#faq .header .header_nav ul li:nth-of-type(9), #restaurant .header .header_nav ul li:nth-of-type(6), #news .header .header_nav ul li:nth-of-type(6), #beauty .header .header_nav ul li:nth-of-type(5), #onsenspa .header .header_nav ul li:nth-of-type(4), #about .header .header_nav ul li:nth-of-type(3), #userguide .header .header_nav ul li:nth-of-type(2), #top .header .header_nav ul li:nth-of-type(1) {*/
    /*    pointer-events: auto;*/
    /*}*/
    /*#faq .header .header_nav ul li:nth-of-type(7) a::before, #restaurant .header .header_nav ul li:nth-of-type(6) a::before, #news .header .header_nav ul li:nth-of-type(6) a::before, #beauty .header .header_nav ul li:nth-of-type(5) a::before, #onsenspa .header .header_nav ul li:nth-of-type(4) a::before, #about .header .header_nav ul li:nth-of-type(3) a::before, #userguide .header .header_nav ul li:nth-of-type(2) a::before, #top .header .header_nav ul li:nth-of-type(1) a::before {*/
    /*    content: "";*/
    /*    width: 100%;*/
    /*    height: 5px;*/
    /*    background-color: #066686;*/
    /*    position: absolute;*/
    /*    bottom: 0px;*/
    /*    left: 0;*/
    /*}*/
    /*#faq .header .header_nav ul li:nth-of-type(9) a::before, #restaurant .header .header_nav ul li:nth-of-type(6) a::before, #news .header .header_nav ul li:nth-of-type(6) a::before, #beauty .header .header_nav ul li:nth-of-type(5) a::before, #onsenspa .header .header_nav ul li:nth-of-type(4) a::before, #about .header .header_nav ul li:nth-of-type(3) a::before, #userguide .header .header_nav ul li:nth-of-type(2) a::before, #top .header .header_nav ul li:nth-of-type(1) a::before {*/
    /*    content: "";*/
    /*    width: 100%;*/
    /*    height: 5px;*/
    /*    background-color: #066686;*/
    /*    position: absolute;*/
    /*    bottom: 0px;*/
    /*    left: 0;*/
    /*}*/
    .header .header_nav ul li a {
        display: block;
        position: relative;
        /* padding: 10px 20px 10px; */
        display: block;
        width: 100%;
        height: 100%;
        position: relative;
        padding-bottom: 16px;
    }
}



.ft {
    position: relative;
    z-index: 1; }

.ft_group01 {
    background: #f3f3f3;
    text-align: left; }

.ft_brHead {
    background: #27292b;
    padding: 10px 0; }

.ft_brHeadIn {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    letter-spacing: -1em;
    word-spacing: 0.1em;
    font-size: 0; }

.ft_brHeadTtl {
    display: inline-block;
    vertical-align: middle;
    width: 40%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }

.ft_brHeadTtlTxt {
    display: inline-block;
    vertical-align: middle;
    font-size: 1.13rem;
    letter-spacing: normal;
    font-weight: bold;
    color: #ffffff;
    position: relative;
    padding-left: 70px; }

.ft_brHeadTtlTxt:before {
    content: '';
    width: 70px;
    height: 70px;
    background: url(/common/images/footer_br_ico.png) no-repeat left top;
    -webkit-background-size: contain;
    background-size: contain;
    position: absolute;
    left: 0;
    top: calc(50% - 35px); }

.ft_brHeadTtlSub {
    display: inline-block;
    vertical-align: middle;
    background: #3d3f41;
    font-size: 1rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #ffffff;
    padding: 6px 12px;
    margin-left: 40px; }

.ft_brHeadBody {
    display: inline-block;
    vertical-align: middle;
    font-size: 0.88rem;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.05em;
    color: #ffffff;
    width: 60%;
    padding-left: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }

.ft_brNotes {
    padding: 15px 0; }

.ft_brNotesIn {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto; }
.ft_brNotesIn .toggle_cts {
    display: block; }

.ft_brNotesTxt {
    font-size: 0.88rem;
    line-height: 1.4;
    letter-spacing: 0.05em;
    color: #666666; }

.ft_brNotesSub li {
    font-size: 0.75rem;
    line-height: 1.4;
    letter-spacing: 0.05em;
    color: #666666;
    text-indent: -1em;
    padding-left: 1em; }

.ft_baby {
    background: #ebebeb;
    padding: 15px 0;
    margin-bottom: 2px; }

.ft_babyIn {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    letter-spacing: -1em;
    word-spacing: 0.1em;
    font-size: 0; }

.ft_babyHead {
    display: inline-block;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 28%;
    font-size: 1.13rem;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.05em;
    padding-left: 60px;
    position: relative;
    color: #393e40; }

.ft_babyHead:before {
    content: '';
    width: 50px;
    height: 40px;
    background: url(/common/images/footer_baby_b.svg) no-repeat center top;
    -webkit-background-size: contain;
    background-size: contain;
    position: absolute;
    left: 0;
    top: calc(50% - 20px); }

.ft_babyBody {
    display: inline-block;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 72%;
    padding-left: 20px; }

.ft_babyBodyTxt {
    font-size: 0.88rem;
    line-height: 1.4;
    letter-spacing: 0.05em;
    display: block;
    position: relative;
    color: #666666; }

.ft_babyBodyShop {
    margin-top: 5px; }

.ft_babyBodyShopHead {
    display: inline-block;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 0.88rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #666666; }

.ft_babyBodyShopLists {
    display: inline-block;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
.ft_babyBodyShopLists li {
    display: inline-block;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 0.88rem;
    letter-spacing: 0.05em;
    color: #666666; }
.ft_babyBodyShopLists li a {
    color: #666666;
    text-decoration: underline; }
.ft_babyBodyShopLists li a:hover {
    text-decoration: none; }
.ft_babyBodyShopLists li:before {
    content: '/';
    padding: 0 5px; }
.ft_babyBodyShopLists li:first-child:before {
    content: '';
    padding: 0; }

.ft_nos {
    background: #ebebeb;
    padding: 15px 0; }

.ft_nosIn {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    letter-spacing: -1em;
    word-spacing: 0.1em;
    font-size: 0; }

.ft_nosHead {
    display: inline-block;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 28%;
    font-size: 1.13rem;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.05em;
    padding-left: 60px;
    position: relative;
    color: #393e40; }

.ft_nosHead:before {
    content: '';
    width: 40px;
    height: 40px;
    background: url(/common/images/footer_nos_b.svg) no-repeat center top;
    -webkit-background-size: contain;
    background-size: contain;
    position: absolute;
    left: 5px;
    top: calc(50% - 20px); }

.ft_nosBody {
    display: inline-block;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 72%;
    padding-left: 20px; }

.ft_nosBodyTxt {
    font-size: 0.88rem;
    line-height: 1.4;
    letter-spacing: 0.05em;
    display: block;
    position: relative;
    color: #666666; }

.ft_resv {
    padding: 40px 0; }

.ft_resv.dark {
    background: #ebebeb; }
.ft_resv.dark .ft_resvColHead {
    background: #f3f3f3; }

.ft_resvCol {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    letter-spacing: -1em;
    word-spacing: 0.1em;
    font-size: 0;
    zoom: 1; }
.ft_resvCol:before, .ft_resvCol:after {
    display: block;
    height: 0;
    visibility: hidden;
    content: "\0020"; }
.ft_resvCol:after {
    clear: both; }

.ft_resvColMain {
    display: inline-block;
    vertical-align: middle;
    width: 58%; }

.ft_resvColHanedaariake {
    margin-top: 10px;
    display: inline-block; }

.ft_resvColHanedaariake:nth-child(odd) {
    margin-left: 20px; }

.ft_resvColHead {
    display: inline-block;
    vertical-align: middle;
    border: 1px solid #d8d8d8;
    background: #ebebeb;
    font-size: 1rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #2e3133;
    text-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 8px 20px;
    min-width: 200px; }

.ft_resvColHead.hanedaariake {
    font-size: 0.63rem;
    padding: 4px 10px;
    min-width: 100px; }

.ft_resvColTel {
    display: inline-block;
    vertical-align: middle;
    font-size: 2.5rem;
    font-weight: bold;
    letter-spacing: normal;
    color: #2e3133;
    line-height: 1.2; }
.ft_resvColTel a {
    color: #2e3133; }

.ft_resvColTel.hanedaariake {
    font-size: 1rem; }
.ft_resvColTel.hanedaariake .ft_resvColTelNum {
    padding-left: 22px;
    background: url(/common/images/footer_resv_tel_g.svg) no-repeat 6px center;
    -webkit-background-size: 12px 12px;
    background-size: 12px; }

.ft_resvColTelNum {
    display: inline-block;
    vertical-align: middle;
    padding-left: 52px;
    background: url(/common/images/footer_resv_tel_g.svg) no-repeat 20px center;
    -webkit-background-size: 25px 25px;
    background-size: 25px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }

.ft_resvColSub {
    display: inline-block;
    vertical-align: middle;
    width: 42%; }

.ft_resvColSubTxt {
    font-size: 0.88rem;
    letter-spacing: 0.05em; }

.ft_resvColSubNotes > li {
    font-size: 0.60rem;
    letter-spacing: 0.05em;
    text-indent: -1em;
    padding-left: 1em;
    }

.ft_resvBtn {
    display: block;
    float: right;
    margin-top: 15px;
    font-size: 0.88rem;
    letter-spacing: 0.05em;
    font-weight: bold;
    background: url(/common/images/ico_ar_r_w.svg) no-repeat 15px center #ce305b;
    -webkit-background-size: 5px 8px;
    background-size: 5px 8px;
    color: #ffffff;
    padding: 8px 20px 8px 25px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 2px; }

.ft_group02 {
    background: #27292b; }

.ft_group03 {
    background: #1d1d1d; }

.ft_bnr {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    letter-spacing: -1em;
    word-spacing: 0.1em;
    font-size: 0;
    padding: 20px 0; }
.ft_bnr li {
    display: inline-block;
    vertical-align: top;
    width: 330px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 16px;
    text-align: left;
    }
.ft_bnr li a {
    display: block;
    border: 1px solid #555658;
    border-radius: 2px;
    overflow: hidden; }
.ft_bnr li.-blank a {
    background: url(/common/images/ico_blank_w.svg) no-repeat 96% 50%;
    -webkit-background-size: 14px auto;
    background-size: 14px auto; }
.ft_bnr li:first-child {
    margin-left: 0; }

.ft_bnr_full {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    padding: 0 0 20px; }
.ft_bnr_full li {
    width: 100%; }
.ft_bnr_full li a {
    display: block; }

.ft_bnrListsImg {
    display: inline-block;
    vertical-align: middle;
    width: 100px;
    }

.ft_bnrListsTxt {
    display: inline-block;
    vertical-align: middle;
    font-size: 0.82rem;
    font-weight: bold;
    line-height: 1.4;
    color: #ffffff;
    letter-spacing: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 15px;
    margin-left: 30px;
    }

.ft_info {
    padding: 40px 0;
    background: #2d3033;
    text-align: left;
    position: relative; }
.ft_info.-global {
    background: none; }

.ft_infoIn {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    letter-spacing: -1em;
    word-spacing: 0.1em;
    font-size: 0;
    padding: 20px 0; }

.ft_infoSns {
    display: inline-block;
    vertical-align: middle;
    width: 220px;
    /*
    &.-global{
      width: auto;
      margin-top: 40px;
    }
  */ }
.ft_infoSns li {
    width: 50px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 60px; }
.ft_infoSns li a {
    display: block;
    width: 100%;
    -webkit-transition: opacity .3s;
    transition: opacity .3s; }
.ft_infoSns li a img {
    width: 100%;
    height: auto;
    font-size: 1; }
.ft_infoSns li a:hover {
    opacity: .7; }
.ft_infoSns li.ft_infoSnsInsta {
    margin-right: 0; }
.ft_infoSns li.ft_infoSnsTa {
    display: none; }

.hotels .ft_infoSns {
    width: 330px; }
.hotels .ft_infoSns li.ft_infoSnsInsta {
    margin-right: 30px; }
.hotels .ft_infoSns li.ft_infoSnsTa {
    display: inline-block;
    margin-right: 0;
    width: 64px;
    height: 64px; }
.hotels .ft_infoSns li.ft_infoSnsTa img {
    -webkit-box-sizing: content-box !important;
    box-sizing: content-box !important; }
.hotels .ft_infoSns.-global {
    width: 220px; }
.hotels .ft_infoSns.-global li.ft_infoSnsInsta {
    margin-right: 0; }

.ft_infoLinks {
    display: inline-block;
    vertical-align: middle;
    width: 670px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-left: 1px solid #555658;
    padding-left: 60px; }

.ft_infoLinksMain li {
    display: inline-block;
    vertical-align: middle;
    margin-left: 30px; }
.ft_infoLinksMain li a {
    display: inline-block;
    font-size: 0.88rem;
    letter-spacing: 0.05em;
    font-weight: bold;
    color: #ffffff;
    padding-left: 35px;
    line-height: 25px;
    min-height: 25px; }

.ft_infoLinksMain li:first-child {
    margin-left: 0; }

.ft_infoLinksMain .ft_infoLinksMainFaq a {
    background: url(/common/images/ico_faq.svg) no-repeat left center;
    -webkit-background-size: 25px 25px;
    background-size: 25px; }

.ft_infoLinksMain .ft_infoLinksMainSafe a {
    background: url(/common/images/ico_safe.svg) no-repeat left center;
    -webkit-background-size: 25px 25px;
    background-size: 25px; }

.ft_infoLinksMain .ft_infoLinksMainEnv a {
    background: url(/common/images/ico_env.svg) no-repeat left center;
    -webkit-background-size: 25px 25px;
    background-size: 25px; }

.ft_infoLinksOther li {
    margin: 20px 20px 0 0;
    display: inline-block;
    vertical-align: top; }
.ft_infoLinksOther li a {
    color: #ffffff;
    font-size: 0.82rem;
    letter-spacing: 0.05em;
    padding-left: 12px;
    background: url(/common/images/ico_ar_r_w.svg) no-repeat 2px center;
    -webkit-background-size: 5px 8px;
    background-size: 5px 8px; }

.ft_infoLinksOther li.blank a {
    padding-right: 16px;
    background: url(/common/images/ico_ar_r_w.svg) no-repeat 2px center, url(/common/images/ico_blank_w.svg) no-repeat right center;
    -webkit-background-size: 5px 8px, 12px 8px;
    background-size: 5px 8px, 12px 8px; }

.ft_infoLinksOther li.pdf a {
    padding-right: 13px;
    background: url(/common/images/ico_ar_r_w.svg) no-repeat 2px center, url(/common/images/ico_pdf_w.svg) no-repeat right center;
    -webkit-background-size: 5px 8px, 9px 12px;
    background-size: 5px 8px, 9px 12px; }

.ft_infoLinksOther.-global {
    margin-top: -20px; }
.ft_infoLinksOther.-global li a {
    font-size: 1rem; }
.ft_infoLinksOther.-global.-chi li:nth-child(4) {
    margin-right: 140px; }

.ft_infoGloballinks {
    letter-spacing: -1em;
    word-spacing: 0.1em;
    font-size: 0; }

.ft_infoGloballinksIn {
    display: inline-block;
    vertical-align: top; }
.ft_infoGloballinksIn.-left {
    width: 24%; }
.ft_infoGloballinksIn.-center {
    width: 48%;
    margin-left: 2%; }
.ft_infoGloballinksIn.-right {
    width: 24%;
    margin-left: 2%; }

.ft_infoGloballinksHead {
    font-size: 1rem;
    letter-spacing: 0.05em;
    color: #fff;
    font-weight: bold;
    margin-bottom: 15px; }

.ft_infoGloballinksMain li {
    margin-top: 10px; }
.ft_infoGloballinksMain li.-float {
    display: inline-block;
    vertical-align: top;
    width: 48%; }
.ft_infoGloballinksMain li.-float:nth-child(2) {
    margin-top: 0; }
.ft_infoGloballinksMain li.-float:nth-child(even) {
    margin-left: 4%; }
.ft_infoGloballinksMain li a {
    font-size: 0.88rem;
    display: inline-block;
    letter-spacing: 0.05em;
    color: #fff;
    padding-left: 12px;
    line-height: 1.4;
    background: url(/common/images/ico_ar_r_w.svg) no-repeat 2px 6px;
    -webkit-background-size: 5px 8px;
    background-size: 5px 8px; }

.ft_infoGloballinksMain li:first-child {
    margin-top: 0; }

.ft_corp {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    letter-spacing: -1em;
    word-spacing: 0.1em;
    font-size: 0;
    padding: 30px 0;
    text-align: left; }

.ft_corpCopy {
    zoom: 1; }
.ft_corpCopy:before, .ft_corpCopy:after {
    display: block;
    height: 0;
    visibility: hidden;
    content: "\0020"; }
.ft_corpCopy:after {
    clear: both; }

.ft_corpCopyLogo {
    width: 188px;
    float: left; }

.ft_corpCopyTxt {
    float: right;
    font-size: 0.63rem;
    letter-spacing: 0.05em;
    color: #ffffff; }

.ft_corpLinks {
    margin-top: 30px; }

.ft_corpLinksHead {
    font-size: 0.88rem;
    letter-spacing: 0.05em;
    font-weight: bold;
    color: #999999;
    padding-right: 16px;
    background: url(/common/images/ico_blank_w.svg) no-repeat right center;
    -webkit-background-size: 12px 8px;
    background-size: 12px 8px;
    display: inline-block; }

.ft_corpLinksList {
    width: 100%; }
.ft_corpLinksList li {
    display: inline-block;
    vertical-align: top;
    margin: 10px 0 0 0;
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    color: #999999; }
.ft_corpLinksList li a {
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    color: #999999; }
.ft_corpLinksList li a:hover {
    text-decoration: underline; }
.ft_corpLinksList li:after {
    content: 'ÃƒÆ’Ã‚Â¯Ãƒâ€šÃ‚Â½Ãƒâ€¦Ã¢â‚¬Å“';
    padding: 0 5px; }
.ft_corpLinksList li:last-child:after {
    content: '';
    padding: 0; }
.resv_other{
    text-align: center;
}
.ft_corpGlobal {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    border-top: 2px solid #fff;
    padding: 25px 0 120px; }

.ft_corpGlobalTxt {
    font-size: 0.88rem;
    color: #fff; }

.ft_group01 {
    background: #2a2c2e; }

.ft_brHead {
    background: #000000; }

.ft_brHeadTtlSub {
    background: #1a1a1a; }

.ft_brNotesTxt {
    color: #ffffff; }

.ft_brNotesSub li {
    color: #ffffff; }

.ft_baby {
    background: #1a1a1a; }

.ft_babyHead {
    color: #ffffff; }

.ft_babyHead:before {
    background: url(/common/images/footer_baby_w.svg) no-repeat center top;
    -webkit-background-size: contain;
    background-size: contain; }

.ft_babyBodyTxt {
    color: #ffffff; }

.ft_babyBodyShopHead {
    color: #ffffff; }

.ft_babyBodyShopLists li {
    color: #ffffff; }
.ft_babyBodyShopLists li a {
    color: #ffffff; }

.ft_nos {
    background: #1a1a1a; }

.ft_nosHead {
    color: #ffffff; }

.ft_nosHead:before {
    background: url(/common/images/footer_nos_w.svg) no-repeat center top;
    -webkit-background-size: contain;
    background-size: contain; }

.ft_nosBodyTxt {
    color: #ffffff; }

.ft_resv.dark {
    background: #1a1a1a; }
.ft_resv.dark .ft_resvColHead {
    background: #2a2c2e; }

.ft_resvColHead {
    border: 1px solid #656668;
    background: none;
    color: #ffffff; }

.ft_resvColTel {
    color: #ffffff; }
.ft_resvColTel a {
    color: #ffffff; }

.ft_resvColTel.hanedaariake {
    font-size: 1rem; }
.ft_resvColTel.hanedaariake .ft_resvColTelNum {
    padding-left: 22px;
    background: url(/common/images/footer_resv_tel_w.svg) no-repeat 6px center;
    -webkit-background-size: 12px 12px;
    background-size: 12px; }

.ft_resvColTelNum {
    background: url(/common/images/footer_resv_tel_w.svg) no-repeat 20px center;
    -webkit-background-size: 25px 25px;
    background-size: 25px; }

.ft_resvColSubTxt,
.ft_resvColSubNotes {
    color: #ffffff; }

.ft_group02 {
    background: #000000; }

.ft_info {
    background: #0f0f0f; }
.ft_info.-global {
    background: none; }


.ft_bnr2{
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 960px;
    margin-bottom: 20px;
}
.ft_bnr2 li{
    float: none!important;
    margin-right: 20px;
}
.ft_bnr2 li a{
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.ft_bnr2 li a img{
    display: block;
    vertical-align: bottom;
    width: 100%;
    max-width: 330px;
}
.ft_bnr2 li:last-child{
    margin-right: 0;
}


@media screen and (max-width: 1068px) {
    .bnr {
        padding: 20px 0; }
    .bnr_in {
        width: 96%;
        margin: 0 auto; }
    .bnr_list {
        width: 100%;
        padding-left: .8%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box; }
    .bnr_listIn {
        padding-right: 3%; }
    .prev-arrow-bnr {
        position: absolute;
        top: calc(50% - 12px);
        left: -12px; }
    .next-arrow-bnr {
        position: absolute;
        top: calc(50% - 12px);
        right: -12px; } }

@media screen and (max-width: 1024px) {
    .fixed_btnResv:hover {
        background: #ce305b; }
    .fixed_btnMenu:hover {
        background: #000000; }
    .fixed_menuMain li.parents.facility .pcTab {
        display: inline; }
    .fixed_menuMain li.parents.facility .sp {
        display: none; }
    .fixed_menuMainChild li.children:first-child {
        display: none; }
    .hdr {
        width: 100%;
        padding: 15px 0 0 25px;
        text-align: left; }
    .hdr_vi01 {
        display: block;
        width: 276px;
        margin-top: 0; }
    .hdr_vi02 {
        display: block;
        width: 180px;
        position: relative;
        right: auto;
        top: auto;
        margin-left: 47px; }
    .hdr_lang {
        margin: 10px 0 0 0; }
    .col {
        padding: 80px 0 0; }
    .globalCol {
        padding: 80px 0; }
    .globalHead {
        font-size: 2.5rem;
        margin-bottom: 40px; }
    .globalHead.-st {
        font-size: 2.38rem; }
    .globalTxt {
        font-size: 1.13rem; }
    .globalBtn {
        margin-top: 30px;
        max-width: 640px;
        width: 96%; }
    .global_block {
        max-width: 640px;
        width: 96%;
        height: auto; }
    .global_block.-mt {
        margin-top: 40px; }
    .global_blockCol {
        width: 100%;
        height: auto;
        display: block; }
    .global_blockCol.-left {
        padding: 40px; }
    .global_blockCol.-right {
        padding: 40px; }
    .global_blockImg {
        position: relative;
        top: auto;
        width: 100%;
        height: 0;
        padding-top: 62.5%; }
    .global_blockImg.-left {
        left: auto; }
    .global_blockImg.-right {
        right: auto; }
    .global_blockL {
        max-width: 640px;
        width: 96%; }
    .global_blockL.-mt {
        margin-top: 40px; }
    .global_blockLHead {
        height: 102px; }
    .global_blockLHeadTxt {
        font-size: 2.25rem;
        padding-top: 40px; }
    .global_blockLCol {
        padding: 40px;
        text-align: left; }
    .global_blockLColIn {
        min-height: 100%;
        display: blocl; }
    .global_blockLColIn.-mt {
        margin-top: 40px; }
    .global_blockLColInTxt {
        display: block; }
    .global_blockLColInTxt.-l {
        padding: 0; }
    .global_blockLColInTxt.-r {
        padding: 0; }
    .global_blockLColInImg {
        width: 100%;
        position: relative;
        top: auto;
        margin: 20px auto 0; }
    .global_blockLColInImg.-l {
        left: auto; }
    .global_blockLColInImg.-r {
        right: auto; }
    .plan {
        padding-bottom: 80px; }
    .plan_list {
        max-width: 660px;
        margin: 30px auto 0; }
    .plan_list .card:nth-child(4n) {
        margin-left: 20px; }
    .plan_list .card:first-child,
    .plan_list .card:nth-child(odd) {
        margin-left: 0; }
    .plan_all {
        max-width: 660px;
        margin: 30px auto 0; }
    .plan_all:before {
        left: calc(50% - 10%); }
    .plan_bnr {
        margin: 30px auto 0; }
    .news {
        padding-bottom: 80px; }
    .news_in {
        max-width: 660px; }
    .news_head.-eng {
        font-size: 2.5rem; }
    .news_listCol a {
        padding: 15px 40px 15px 0;
        background: url(/common/images/ico_ar_r_g.svg) no-repeat 98% center;
        -webkit-background-size: 10px auto;
        background-size: 10px auto; }
    .news_listCol a:hover {
        background: url(/common/images/ico_ar_r_g.svg) no-repeat 98% center;
        -webkit-background-size: 10px auto;
        background-size: 10px auto; }
    .news_listColDate {
        display: block;
        width: 100%; }
    .news_listColDate.-global {
        width: 100%; }
    .news_listColTxt {
        display: block;
        width: 100%;
        padding: 5px 0 0 0; }
    .news_listColTxt.-global {
        width: 100%; }
    .news_listColTxt:before {
        content: '';
        background: none; }
    .ft_brHeadIn {
        max-width: 660px;
        margin: 0 auto; }
    .ft_brHeadTtl {
        display: block;
        width: 100%;
        margin: 0 auto; }
    .ft_brHeadTtlTxt {
        padding-left: 50px; }
    .ft_brHeadTtlTxt:before {
        width: 50px;
        height: 50px;
        top: calc(50% - 25px); }
    .ft_brHeadBody {
        display: block;
        width: 100%;
        padding: 10px 0 0 0; }
    .ft_brNotesIn {
        max-width: 660px;
        margin: 0 auto; }
    .ft_brNotesIn .toggle_cts {
        display: block; }
    .ft_babyIn {
        max-width: 660px;
        margin: 0 auto; }
    .ft_babyHead {
        display: block;
        width: 100%;
        min-height: 50px;
        line-height: 50px; }
    .ft_babyBody {
        display: block;
        width: 100%;
        padding: 0; }
    .ft_babyBodyShop {
        margin-top: 10px; }
    .ft_babyBodyShopHead {
        display: block;
        width: 100%; }
    .ft_babyBodyShopLists {
        display: block;
        width: 100%; }
    .ft_nosIn {
        max-width: 660px;
        margin: 0 auto; }
    .ft_nosHead {
        display: block;
        width: 100%;
        min-height: 50px;
        line-height: 50px; }
    .ft_nosBody {
        display: block;
        width: 100%;
        padding: 0; }
    .ft_resvCol {
        max-width: 660px;
        text-align: center; }
    .ft_resvColMain {
        display: block;
        width: 100%;
        margin-bottom: 10px; }
    .ft_resvColHanedaariake:nth-child(odd) {
        margin-left: 5px; }
    .ft_resvColHanedaariake {
        margin: 10px 5px 0; }
    .ft_resvColHead {
        display: block;
        margin: 0 auto;
        width: 40%; }
    .ft_resvColHead.hanedaariake {
        width: 100%; }
    .ft_resvColTel {
        display: block;
        width: 100%; }
    .ft_resvColTelNum {
        display: inline-block;
        padding-left: 32px;
        background: url(/common/images/footer_resv_tel_g.svg) no-repeat left center;
        -webkit-background-size: 25px 25px;
        background-size: 25px; }
    .ft_resvColTelNum {
        background: url(/common/images/footer_resv_tel_w.svg) no-repeat left center;
        -webkit-background-size: 25px 25px;
        background-size: 25px; }
    .ft_resvColSub {
        display: block;
        width: 100%; }
    .ft_resvBtn {
        display: inline-block;
        margin: 15px auto 0;
        float: none; }
    .ft_bnr {
        max-width: 660px;
        padding: 10px 0 20px; }
    .ft_bnr li {
        width: 49%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: 10px 0 0 2%; }
    .ft_bnr li:first-child,
    .ft_bnr li:nth-child(odd) {
        margin-left: 0; }
    .ft_bnr_full {
        max-width: 660px; }
    .ft_infoIn {
        max-width: 660px; }
    .ft_infoSns {
        display: block;
        width: 100%;
        text-align: center; }
    .hotels .ft_infoSns {
        display: block;
        width: 100%;
        text-align: center; }
    .hotels .ft_infoSns.-global {
        width: 100%; }
    .ft_infoLinks {
        display: block;
        width: 100%;
        margin-top: 30px;
        padding: 30px 0 0 0;
        border: none;
        border-top: 1px solid #555658; }
    .ft_infoGloballinksHead {
        font-size: 0.88rem; }
    .ft_infoGloballinksMain li a {
        font-size: 0.75rem;
        padding-left: 10px;
        background-position: 2px 4px;
        -webkit-background-size: 4px auto;
        background-size: 4px auto; }
    .ft_corp {
        width: 96%; }
    .ft_corpGlobal {
        max-width: 660px;
        padding-bottom: 80px; } }

@media screen and (max-width: 767px) {
    .bfLink {
        font-size: 0.88rem;
        margin: 10px auto; }
    .modal.info.fancybox-content {
        max-width: 710px;
        width: 80%; }
    .modal.info.fancybox-content .info_btn {
        float: none;
        margin: 5px auto 0;
        text-align: center; }
    .resvActive .flatpickr-calendar {
        position: fixed !important; }
    .loader {
        -webkit-background-size: 25px 25px;
        background-size: 25px; }
    .loader:before {
        border: 2px solid #888;
        border-bottom-color: #fff;
        height: 26px;
        left: 50%;
        margin: -13px 0 0 -13px;
        width: 26px; }
    .toTop {
        width: 50px;
        height: 50px;
        padding: 15px; }
    .fixed_btn {
        width: 160px;
        height: 64px; }
    .fixed_btnResv {
        width: 96px;
        height: 64px;
        padding: 6px 0; }
    .fixed_btnResvIco {
        width: 32px;
        height: 32px;
        -webkit-background-size: 18px auto;
        background-size: 18px auto;
        border-radius: 16px; }
    .fixed_btnResvIcoActive {
        width: 32px;
        height: 32px;
        -webkit-background-size: 18px auto;
        background-size: 18px auto;
        border-radius: 16px;
        margin: 0 auto; }
    .fixed_btnResvTxt {
        font-size: 0.69rem; }
    .fixed_btnMenu {
        width: 64px;
        height: 64px;
        padding: 6px 0; }
    .fixed_btnMenuIco {
        width: 32px;
        height: 32px; }
    .fixed_btnMenuIco .bar {
        width: 16px;
        left: 8px; }
    .fixed_btnMenuIco .bar:nth-of-type(1) {
        top: 8px; }
    .fixed_btnMenuIco .bar:nth-of-type(2) {
        top: 15px; }
    .fixed_btnMenuIco .bar:nth-of-type(3) {
        top: 22px; }
    .fixed_btnMenuTxt {
        font-size: 0.69rem; }
    .fixed_btnMenu.active .fixed_btnMenuIco .bar {
        width: 24px;
        left: 4px; }
    .fixed_btnMenu.active .fixed_btnMenuIco .bar:nth-of-type(1) {
        transform: translateY(7px) rotate(-45deg);
        -webkit-transform: translateY(7px) rotate(-45deg); }
    .fixed_btnMenu.active .fixed_btnMenuIco .bar:nth-of-type(2) {
        opacity: 0;
        transform: translateX(50px);
        -webkit-transform: translateX(50px); }
    .fixed_btnMenu.active .fixed_btnMenuIco .bar:nth-of-type(3) {
        transform: translateY(-7px) rotate(45deg);
        -webkit-transform: translateY(-7px) rotate(45deg); }
    .fixed_resv {
        z-index: 0;
        width: 100%;
        height: 100%;
        border-radius: 0;
        right: auto;
        left: 0;
        top: 0;
        padding: 80px 2% 15px;
        background: rgba(0, 0, 0, 0.9); }
    .fixed_resv:before {
        top: 0;
        right: 0;
        width: 0;
        height: 0;
        border-width: 0; }
    .fixed_resvRc,
    .fixed_resvMc {
        width: 49%; }
    .fixed_resvMc {
        margin-left: 2%; }
    .fixed_resvCheckIn,
    .fixed_resvCheckOut {
        width: 49%; }
    .fixed_resvCheckOut {
        margin-left: 2%; }
    .fixed_menu {
        width: 100%;
        height: 100%;
        right: auto;
        left: 0;
        z-index: 1;
        padding: 80px 2% 0 2%;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch; }
    .fixed_menuMain {
        border-top: 1px solid #ffffff; }
    .fixed_menuMain li a {
        color: #ffffff;
        border-bottom: 1px solid #ffffff;
        display: block; }
    .fixed_menuMain li.parents {
        margin-top: 0; }
    .fixed_menuMain li.parents > a {
        background: url(/common/images/ico_ar_r_w.svg) no-repeat 98% center;
        -webkit-background-size: 6px 10px;
        background-size: 6px 10px;
        padding: 15px 20px 15px 10px; }
    .fixed_menuMain li.parents:first-child {
        margin-top: 0; }
    .fixed_menuMain li.outer .ico {
        display: none; }
    .fixed_menuMain li.outer > a {
        background: url(/common/images/ico_blank_w.svg) no-repeat 99% center;
        -webkit-background-size: 14px 8px;
        background-size: 14px 8px; }
    .fixed_menuMain li.parents.facility .pcTab {
        display: none; }
    .fixed_menuMain li.parents.facility .sp {
        display: block;
        font-size: 1.13rem;
        letter-spacing: 0.05em;
        color: #ffffff;
        padding: 15px 0 15px 10px;
        border-bottom: 1px solid #ffffff;
        position: relative; }
    .fixed_menuMain li.parents.facility .sp:before {
        content: '';
        width: 10px;
        height: 10px;
        position: absolute;
        right: 2%;
        top: calc(50% - 5px);
        background: url(/common/images/ico_toggle_w.svg) no-repeat right top;
        -webkit-background-size: 10px 20px;
        background-size: 10px 20px; }
    .fixed_menuMain li.parents.facility .sp.open:before {
        background-position: right bottom; }
    .fixed_menuMainChild {
        margin: 0;
        display: none; }
    .fixed_menuMainChild li.children {
        display: block;
        margin-right: 0; }
    .fixed_menuMainChild li.children > a {
        display: block;
        font-size: 1rem;
        padding: 10px 20px 10px 20px;
        background: url(/common/images/ico_ar_r_w.svg) no-repeat 98% center, url(/common/images/ico_child_w.svg) no-repeat 10px center;
        -webkit-background-size: 6px 10px, 5px 7px;
        background-size: 6px 10px, 5px 7px;
        letter-spacing: 0.05em; }
    .fixed_menuMainChild li.children:first-child {
        display: block; }
    .fixed_menuSub01 {
        margin-top: 10px; }
    .fixed_menuSub01 li {
        margin-right: 0;
        width: 49%; }
    .fixed_menuSub01 li a {
        display: block;
        background: #1a1a1a;
        color: #ffffff;
        padding: 10px 0 10px 45px;
        line-height: 25px;
        min-height: 25px;
        border-radius: 3px; }
    .fixed_menuSub01 li:nth-child(odd) {
        margin-right: 2%; }
    .fixed_menuSub01 .fixed_menuSub01Faq a {
        background: url(/common/images/ico_faq.svg) no-repeat 10px center #232323;
        -webkit-background-size: 25px 25px;
        background-size: 25px; }
    .fixed_menuSub01 .fixed_menuSub01Mail a {
        background: url(/common/images/ico_mail.svg) no-repeat 10px center #232323;
        -webkit-background-size: 25px 25px;
        background-size: 25px; }
    .fixed_menuSub02 {
        margin-top: 6px; }
    .fixed_menuSub02 li {
        margin-right: 0;
        width: 49%; }
    .fixed_menuSub02 li a {
        display: block;
        background: #1a1a1a;
        color: #ffffff;
        padding: 6px 0 6px 20px;
        line-height: 25px;
        min-height: 25px;
        border-radius: 3px;
        background: url(/common/images/ico_ar_r_w.svg) no-repeat 10px center #232323;
        -webkit-background-size: 5px 8px;
        background-size: 5px 8px; }
    .fixed_menuSub02 li:nth-child(odd) {
        margin-right: 2%; }
    .fixed_menuLogo {
        max-width: 188px;
        width: 96%;
        margin: 20px auto 40px; }
    .fixed_menuLogo a {
        display: block; }
    .hdr {
        padding: 15px 0 0 10px; }
    .hdr_vi01 {
        display: block;
        width: 180px; }
    .hdr_vi02 {
        width: 120px;
        margin-left: 30px; }
    .hdr_lang {
        margin-top: 6px;
        width: 76px; }
    .hdr_langTxt {
        font-size: 0.63rem;
        line-height: 2.2; }
    .hdr_hotel {
        margin: 6px 0 0 10px;
        width: 76px; }
    .hdr_hotelTxt {
        font-size: 0.63rem;
        line-height: 2.2; }
    .hdr_hotelTxt .hdnSp {
        display: none; }
    .bnr_in {
        width: 100%; }
    .bnr_list {
        padding: 0; }
    .bnr_listIn {
        padding: 0 5px; }
    .col {
        padding: 60px 0 0; }
    .globalCol {
        padding: 60px 0; }
    .global_blockL.-mt {
        margin-top: 40px; }
    .global_blockLHead {
        height: 0;
        padding-top: 16%; }
    .global_blockLHeadTxt {
        font-size: 1.5rem;
        padding-top: 0;
        margin-top: -40px; }
    .global_blockLCol {
        padding: 15px; }
    .global_blockLColIn {
        min-height: 100%;
        display: blocl; }
    .global_blockLColIn.-mt {
        margin-top: 20px; }
    .global_blockLColInImg {
        margin: 15px auto 0; }
    .globalHead {
        font-size: 1.63rem;
        margin-bottom: 30px; }
    .globalHead.-st {
        font-size: 1.5rem; }
    .globalHead:before {
        width: 60px;
        left: calc( 50% - 30px); }
    .globalTxt {
        font-size: 1rem; }
    .globalBtn {
        margin-top: 20px; }
    .globalBtn .txt.-s {
        font-size: 0.88rem;
        letter-spacing: 0; }
    .global_block.-mt {
        margin-top: 20px; }
    .global_blockCol.-left {
        padding: 15px; }
    .global_blockCol.-right {
        padding: 15px; }
    .global_blockHead {
        font-size: 1.25rem;
        margin-bottom: 10px; }
    .global_blockHead.-st {
        font-size: 1.13rem; }
    .global_blockTxt {
        font-size: 0.88rem; }
    .global_blockNotes > li {
        font-size: 0.75rem; }
    .global_blockBtn {
        margin: 10px auto 0; }
    .col_txt {
        font-size: 0.88rem;
        text-align: left;
        width: 92%;
        margin: 0 auto; }
    .plan {
        padding-bottom: 60px; }
    .plan_head {
        width: 249px;
        margin: 0 auto 20px; }
    .plan_list {
        max-width: 100%; }
    .plan_list .card {
        margin-top: 0;
        padding: 0 5px;
        -webkit-box-shadow: none;
        box-shadow: none; }
    .plan_all {
        width: 92%;
        -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
        box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.2);
        margin: 20px auto 0; }
    .plan_all:before {
        left: calc(50% - 66px); }
    .plan_bnr {
        margin: 20px auto 0; }
    .prev-arrow-plan {
        position: absolute;
        top: calc(50% - 20px);
        left: 5px;
        cursor: pointer;
        width: 40px;
        height: 40px;
        z-index: 1;
        opacity: .3;
        -webkit-transform: scale(-1, 1);
        transform: scale(-1, 1); }
    .prev-arrow-plan:hover {
        opacity: .3; }
    .next-arrow-plan {
        position: absolute;
        top: calc(50% - 20px);
        right: 5px;
        cursor: pointer;
        width: 40px;
        height: 40px;
        z-index: 1;
        opacity: .3; }
    .next-arrow-plan:hover {
        opacity: .3; }
    .card_colBtn:before {
        left: calc(50% - 52px); }
    .news {
        padding-bottom: 60px; }
    .news_head {
        width: 245px;
        margin: 0 auto 25px; }
    .news_head.-eng {
        width: auto;
        font-size: 2rem;
        padding-bottom: 15px;
        margin: 0 auto 30px; }
    .news_head.-eng:after {
        height: 2px; }
    .news_listCol a {
        padding: 15px 30px 15px 10px; }
    .news_listColDate {
        font-size: 0.88rem; }
    .news_listColTxt {
        font-size: 0.88rem; }
    .news_all {
        margin: 15px 10px 0 0; }
    .bnr_cp01 {
        max-width: 485px;
        width: 70%; }
    .ft_brHeadTtlTxt {
        font-size: 1rem; }
    .ft_brHeadTtlSub {
        font-size: 0.88rem;
        margin-left: 10px; }
    .ft_brHeadBody {
        width: 96%;
        margin: 0 auto; }
    .ft_brNotesIn .toggle_cts {
        display: none; }
    .ft_brNotesBtn {
        color: #666666;
        font-size: 1rem;
        text-align: center;
        padding: 4px 0;
        position: relative; }
    .ft_brNotesBtn:before {
        content: '';
        width: 10px;
        height: 10px;
        position: absolute;
        right: 2%;
        top: calc(50% - 5px);
        background: url(/common/images/ico_toggle_b.svg) no-repeat right top;
        -webkit-background-size: 10px 30px;
        background-size: 10px 30px; }
    .ft_brNotesBtn.open:before {
        background-position: right bottom; }
    .ft_brNotesTxt {
        font-size: 0.75rem;
        width: 96%;
        margin: 0 auto; }
    .ft_brNotesSub {
        width: 96%;
        margin: 0 auto; }
    .ft_babyHead {
        line-height: 1.4;
        width: 96%;
        margin: 0 auto; }
    .ft_babyBody {
        width: 96%;
        margin: 0 auto; }
    .ft_babyBodyTxt {
        margin-top: 5px; }
    .ft_babyBodyShopLists li {
        font-size: 0.75rem; }
    .ft_nos {
        padding: 10px 0 15px; }
    .ft_nosHead {
        width: 96%;
        margin: 0 auto; }
    .ft_nosBody {
        width: 96%;
        margin: 0 auto; }
    .ft_resvColHead {
        width: 60%;
        padding: 4px 0; }
    .ft_resvColSubNotes > li {
        letter-spacing: 0; }
    .ft_resvBtn {
        max-width: 96%; }
    .ft_bnr {
        width: 96%; }
    .ft_bnr li {
        margin: 10px 0 0 0;
        width: 100%; }
    .ft_bnr_full {
        max-width: 96%; }
    .ft_infoIn {
        padding: 0; }
    .ft_infoSns.-global {
        text-align: center; }
    .ft_infoSns li {
        margin-right: 20px; }
    .hotels .ft_infoSns.-global {
        text-align: center; }
    .hotels .ft_infoSns li.ft_infoSnsInsta {
        margin-right: 20px; }
    .hotels .ft_infoSns li.ft_infoSnsTa {
        margin-right: 0; }
    .ft_infoLinks {
        width: 96%;
        margin: 20px auto 0;
        padding-top: 10px; }
    .ft_infoLinksMain li {
        width: 48%;
        margin: 10px 0 0 2%; }
    .ft_infoLinksMain li:nth-child(odd) {
        margin-left: 0; }
    .ft_infoLinksMain .ft_infoLinksMainSafe a {
        line-height: 1.4;
        background: url(/common/images/ico_safe.svg) no-repeat left center;
        -webkit-background-size: 25px 25px;
        background-size: 25px; }
    .ft_infoLinksOther {
        margin-top: 15px; }
    .ft_infoLinksOther li {
        width: 48%;
        margin: 8px 0 0 2%; }
    .ft_infoLinksOther li a {
        font-size: 0.75rem;
        line-height: 1.4; }
    .ft_infoLinksOther li:nth-child(odd) {
        margin-left: 0; }
    .ft_infoLinksOther.-global {
        margin-top: 2px; }
    .ft_infoLinksOther.-global li a {
        font-size: 0.75rem; }
    .ft_infoLinksOther.-global.-chi li:nth-child(4) {
        margin-right: 0; }
    .ft_infoGloballinksIn {
        display: block;
        text-align: center; }
    .ft_infoGloballinksIn.-left {
        width: 92%;
        margin: 0 auto; }
    .ft_infoGloballinksIn.-center {
        width: 92%;
        margin: 20px auto 0; }
    .ft_infoGloballinksIn.-right {
        width: 92%;
        margin: 20px auto 0; }
    .ft_infoGloballinksIn.-right .ft_infoGloballinksMain {
        text-align: center; }
    .ft_infoGloballinksIn.-right .ft_infoGloballinksMain li {
        width: auto;
        margin-top: 0; }
    .ft_infoGloballinksIn.-right .ft_infoGloballinksMain li:not(:first-child) {
        margin-left: 20px; }
    .ft_infoGloballinksHead {
        font-size: 0.88rem;
        display: inline-block;
        margin: 0 auto 10px;
        position: relative; }
    .ft_infoGloballinksHead:before {
        content: '';
        width: 60px;
        height: 1px;
        background: #fff;
        position: absolute;
        left: -70px;
        top: 50%; }
    .ft_infoGloballinksHead:after {
        content: '';
        width: 60px;
        height: 1px;
        background: #fff;
        position: absolute;
        right: -70px;
        top: 50%; }
    .ft_infoGloballinksMain {
        text-align: left; }
    .ft_infoGloballinksMain li {
        width: 49%;
        display: inline-block;
        vertical-align: top;
        margin-top: 10px; }
    .ft_infoGloballinksMain li.-float:nth-child(even) {
        margin-left: 2%; }
    .ft_infoGloballinksMain li a {
        font-size: 0.75rem;
        background: url(/common/images/ico_ar_r_w.svg) no-repeat 2px 4px;
        -webkit-background-size: 5px 8px;
        background-size: 5px 8px; }
    .ft_infoGloballinksMain li:first-child,
    .ft_infoGloballinksMain li:nth-child(2) {
        margin-top: 0; }
    .ft_infoGloballinksMain li:nth-child(even) {
        margin-left: 2%; }
    .ft_corp {
        text-align: center; }
    .ft_corpCopyLogo {
        float: none;
        margin: 0 auto 10px; }
    .ft_corpCopyTxt {
        float: none; }
    .ft_corpLinks {
        margin-top: 20px; }
    .ft_corpGlobal {
        padding: 20px 0 60px; }
    .ft_brNotesBtn {
        color: #ffffff; }
    .ft_brNotesBtn:before {
        background: url(/common/images/ico_toggle_w.svg) no-repeat right top;
        -webkit-background-size: 10px 30px;
        background-size: 10px 30px; }
    .ft_brNotesBtn.open:before {
        background-position: right bottom; } }

@media screen and (max-width: 374px) {
    .fixed_btn {
        width: 140px; }
    .fixed_btnResv {
        padding: 4px 0;
        width: 86px;
        height: 60px; }
    .fixed_btnMenu {
        padding: 4px 0;
        width: 54px;
        height: 60px; }
    .fixed_resvCheckInDisp,
    .fixed_resvCheckOutDisp {
        background-position: 96% 40%; }
    .fixed_resvCheckInDisp .numS,
    .fixed_resvCheckOutDisp .numS {
        letter-spacing: normal;
        padding-left: 1px; }
    .fixed_resvCheckInDisp .numL,
    .fixed_resvCheckOutDisp .numL {
        font-size: 1.25rem;
        letter-spacing: normal;
        padding-left: 1px; }
    .fixed_resvCheckInDisp .txt,
    .fixed_resvCheckOutDisp .txt {
        letter-spacing: normal; }
    .fixed_resvCheckInDisp .txtL,
    .fixed_resvCheckOutDisp .txtL {
        letter-spacing: normal;
        padding-left: 1px; }
    .hdr {
        padding: 12px 0 0 10px; }
    .hdr_vi01 {
        width: 140px; }
    .hdr_vi02 {
        width: 110px;
        margin-left: 23px; }
    .card_colTtl {
        font-size: 0.88rem;
        padding: 10px 10px 0 10px;
        top: -30px; }
    .card_colTxt {
        padding: 10px;
        font-size: 0.75rem;
        min-height: 68px; }
    .ft_resvBtn {
        line-height: 1.2; }
    .ft_infoLinksMain li a {
        font-size: 0.75rem;
        padding-left: 25px;
        min-height: 20px;
        line-height: 20px; }
    .ft_infoLinksMain .ft_infoLinksMainFaq a,
    .ft_infoLinksMain .ft_infoLinksMainSafe a,
    .ft_infoLinksMain .ft_infoLinksMainEnv a {
        -webkit-background-size: 20px 20px;
        background-size: 20px; }
    .ft_infoLinksOther {
        margin-top: 10px; }
    .ft_infoLinksOther li a {
        font-size: 0.63rem; } }


.ft_infoLinksMain .ft_infoLinksMainEnv.-sdgs a {
    color: #000;
    border-radius: 3px;
    padding: 0 10px 0 30px;
    background: url(/common/images/ico_env_sdgs.svg) no-repeat 6px center #fff;
    -webkit-background-size: auto 70%;
    background-size: auto 70%;
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .ft_infoLinksMain .ft_infoLinksMainEnv.-sdgs a{
        background-position: -44px 50%;
    }
}
@supports (-ms-ime-align:auto) {

}


@media only screen and (max-width: 750px) {
    .ft_infoLinksOther li a {
        font-size: 2.8vw;
        line-height: 2em;
    }

    .ft_corpLinksList li a {
        font-size: 2.8vw;
        line-height: 2em;
    }

    .ft_infoLinksOther li {
        width: 60%;
    }

    .ft_infoLinksOther li:nth-child(2n) {
        width: 38%;
    }

    .ft_corpLinksList li {
        float: none;
    }

    .ft_infoSns li {
        float: none;
    }

    #contents .secin h3 {
        font-size: 4.6vw;
        margin-bottom: 30px;
    }

    #contents .secin h3 span {
        font-size: 2.3vw;
    }

    #contents .secin p.lead {
        font-size: 3.5vw;
        text-align: left;
    }

    #contents .secin p.lead br {
        display: none;
    }

    .ft_resvColSubNotes > li {
        letter-spacing: 0;
        width: 100%;
    }

    .ft_bnr2 {
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .ft_bnr2 li {
        width: 96%;
        margin-left: auto;
        margin-right: auto;
        display: block;
        margin-bottom: 10px;
    }

    .ft_bnr2 li a img {
        max-width: 100%;
    }

    .ft_bnr2 li:last-child {
        margin-right: auto;
    }
}


.gheader{
    background-color: #4f4f4f;
    height: 40px;
    position: relative;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
@media screen and (max-width: 584px) {
    .gheader{
        /*display: none;*/
        position: absolute;
        background-color: transparent;

    }
    .gheader .nv1{
        display: none!important;
    }
    .header .logo {
        position: absolute;
        left: 10px;
        top: 10px;
    }
    .gheader .nv2 {
width: 38%!important;
        right: 50px!important;

    }
    .hdr_lang {

        width: 90px!important;
    }
}
.gheader .nv1{
    width: 64%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    padding-left: 14px;
}



.gheader .nv2{
    width: 36%;
    position: absolute;
    right: 0;
    top: 5px;
    text-align: right;
    padding-right: 10px;
}
.gheader .nv1 li{
    position: relative;
}
.gheader .nv2 li{
    display: inline-block;
    margin-left: 20px;
    position: relative;
}
.gheader  li a{
    color: #fff;
}
.gheader .nv1 li .smenu{
    width: 400px;
    position: absolute;
    left: 0;
    bottom: 76px;
    background-color: #000;
    z-index: 1773;
    padding: 10px;

}
.gheader .nv1 li:hover .smenu{
    bottom: -70px;
}
.gheader .nv1 li .smenu a{
    display: block;
    border-bottom: 1px solid #FFFFFF;
    text-align: left;
    box-sizing: border-box;
    padding-left: 14px;
}
.gheader .nv2 dl{
    display: flex;
    justify-content: space-between;
    align-items: center;

}
.gheader .nv1 img,
.gheader .nv2 img{
    width: 24px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}
.gheader .nv2 dd{
    font-size: 10px;
    line-height: 1.2em;
    padding-left: 10px;
}
/*.gmenusub ul li:nth-child(3),*/
/*.gmenusub ul li:nth-child(2),*/
/*.header_nav ul.nav1 li:nth-child(5),*/
/*.header_nav ul.nav1 li:nth-child(4),*/
/*.header_nav ul.nav1 li:nth-child(7){*/
/*    pointer-events: none;*/
/*    opacity: 0.3;*/

/*}*/
.hdr_langTxt {

    padding-right: 20px!important;
}


@media screen and (max-width: 584px) {
    .menu-trigger-box{
        top: 0px;
    }
    #wrapper {
        min-width: 100px;
    }
}