@charset "UTF-8";

/* :::::::::::::::::::::::::::::: html tag :::::::::::::::::::::::::::::: */
html {
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", sans-serif;
    font-size: 62.5%;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0;
    line-height: 1;
    color: #222;
    background: #f4f0eb;
    -webkit-overflow-scrolling: touch;
}
body {
    box-sizing: border-box;
    position: relative;
    z-index: 0;
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    overflow-x: hidden;
}
body.-fixed {
    position: fixed;
    width: 100%;
}
* {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: "palt";
}
*:focus-visible {
    outline: none;
}

/* --------------------- common html tag --------------------- */
a {
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}
button {
    display: block;
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    border-radius: 0;
    margin: 0;
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    color: inherit;
}
tbody {
    display: block;
    width: 100%;
}
th,
td {
    display: block;
    text-align: left;
}
input,
textarea {
    box-sizing: border-box;
    display: block;
    width: 100%;
    padding: 0;
    border: unset;
    border-width: 0;
    background-color: transparent;
}
input[type="text" i] {
    padding: 0;
}
input:focus-visible,
textarea:focus-visible {
    outline: unset;
}
input:-webkit-autofill,
textarea:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #f4f0eb inset;
    -webkit-text-fill-color: #222;
}
select {
    border-width: 0px;
}
/* :::::::::::::::::::::::::::::: End html tag :::::::::::::::::::::::::::::: */

/* :::::::::::::::::::::::::::::: tripla :::::::::::::::::::::::::::::: */
.search-widget-wrapper-872d0c {
    display: none;
    /* display: block; */
}
.triplabot-icon-container[data-v-1e891c32] {
    /*display: none;*/
    /* display: block; */
}
iframe#tripla-icon-message {
    display: none !important;
    /* display: block; */
}
.triplabot-icon-container {
    position: fixed!important;
    display: none;
    width: 70px!important;
    height: 70px!important;
    right: 15px;
    bottom: 15px;
    background: url(/inn/img/common/icon_chat2.png) no-repeat center center;
    background-size: contain;
}
.triplabot-icon-container img {
    opacity: 0!important;
}
@media screen and (max-width: 1000px) {
    .triplabot-icon-container {
        width: 50px!important;
        height: 50px!important;
        right: 10px;
        top: 70px;
        bottom: auto;
    }
}
#tripla-chat-window {
    right: 10px!important;
}
#tripla-chat-window + div {
    /*display: none !important;*/
    /* display: block; */
}
.icon-message-wrap .icon-message-content {
    display: none !important;
}
.triplabot-icon-circle[data-v-1e891c32] {
    border: none!important;
}
#tripla-minimized-chat {
    /* display: none; */
}
/* :::::::::::::::::::::::::::::: End tripla :::::::::::::::::::::::::::::: */

/* :::::::::::::::::::::::::::::: helper class :::::::::::::::::::::::::::::: */
.img {
    width: 100%;
    height: auto;
    object-fit: contain;
}
.video {
    width: 100%;
    height: auto;
}
.en {
    font-family: "EB Garamond", serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}
.text {
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 2;
}
.fw_bold {
    font-weight: 700;
}
.fw_medium {
    font-weight: 500;
}
.fw_regular {
    font-weight: 400;
}
.underline {
    text-decoration: underline;
}
.display_ib {
    display: inline-block;
}
.hover-opacity {
    opacity: 1;
    transition: opacity .2s;
}
@media (hover: hover) {
    .hover-opacity:hover {
        opacity: 0.6;
    }
}
.color_white {
    color: #FFF;
}
.bgc_white {
    background-color: #fff;
}

/* ::::: toggle between display_block and display_none ::::: */
.pc {
    display: block !important;
}
.tab-sp {
    display: none !important;
}
@media screen and (max-width: 1000px) {
    .pc {
        display: none !important;
    }
    .tab-sp {
        display: block !important;
    }
}
.pc-tab {
    display: block !important;
}
.sp {
    display: none !important;
}
@media screen and (max-width: 750px) {
    .pc-tab {
        display: none !important;
    }
    .sp {
        display: block !important;
    }
}
.pc-sp {
    display: block !important;
}
.tab {
    display: none !important;
}
@media screen and (max-width: 1000px) {
    .pc-sp {
        display: none !important;
    }
    .tab {
        display: block !important;
    }
}
@media screen and (max-width: 750px) {
    .pc-sp {
        display: block !important;
    }
    .tab {
        display: none !important;
    }
}
/* ::::: End toggle between display_block and display_none ::::: */
/* ::::: inview  ::::: */
.inview {
    transform: translate(0, 5px);
    opacity: 0;
    transition: filter 1.2s, opacity 1.2s, transform 1.2s;
}
.inview.show {
    transform: translate(0, 0);
    opacity: 1.0;
}
/* ::::: main  ::::: */
.main {
    position: relative;
}
/* ::::: wrapper ::::: */
.wrapper {
    width: 86%;
    margin: 0 auto;
    max-width: 130rem;
}
/* ----- wrapper responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .wrapper {
        width: 89%;
    }
}
/* :::::::::::::::::::: header :::::::::::::::::::: */
.header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 9rem;
    transition: height .3s;
}
body.page .header {
    background-color: #222222;
}
.header.-scroll {
    height: 7rem;
}
body.index .header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    transform-origin: left;
    display: block;
    width: 40rem;
    height: 100%;
    background-color: #222222;
    transition: width .4s;
}
body.index .header.-scroll::before {
    width: calc(100% - 12rem);
}
.header__logo-area {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40rem;
    height: 9rem;
    background-color: #222222;
    transition: width .3s, height .3s;
}
.header.-scroll .header__logo-area {
    width: 31rem;
    height: 7rem;
}
.header__logo {
    width: 32rem;
    transition: width .3s;
}
.header.-scroll .header__logo {
    width: 25rem;
}
.header__right-area {
    display: flex;
    align-items: center;
    padding-right: calc(15rem + 4vw);
}
.header__list {
    display: flex;
    gap: 3rem;
    margin-right: 4.5rem;
}
.header__item {}
.header__link {
    position: relative;
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
    color: #fff;
}
.header__link::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scale(0,1);
    transform-origin: right;
    display: block;
    width: 100%;
    padding-top: 1px;
    background-color: #fff;
    transition: transform .3s, opacity .3s;
}
@media (hover: hover) {
    .header__link:hover::before {
        transform: scale(1,1);
        transform-origin: left;
    }
}
.header__link.on::before,
.header__link.-current::before {
    transform: scale(1,1);
    transform-origin: left;
}
.header__languages-area {}
.languages {
    position: relative;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding-left: 3.2rem;
}
.languages::before {
    content: '';
    position: absolute;
    top: -3px;
    left: 0;
    display: block;
    width: 2rem;
    height: 2rem;
    background-image: url('/inn/assets/img/common/icon-language.png');
    background-size: 2rem 2rem;
    background-repeat: no-repeat;
}
.languages__link {
    position: relative;
    text-decoration: underline;
    font-size: 1.3rem;
    color: #fff;
    opacity: 1;
    transition: opacity .3s;
}
@media (hover: hover) {
    .languages__link:hover {
        opacity: .7;
    }
}
.languages__link.on {
    text-decoration: none;
    font-weight: 700;
}
.languages__link:first-child::before {
    content: '/';
    position: absolute;
    top: 0;
    right: -1rem;
    display: inline;
    font-size: 1.3rem;
    font-weight: 400;
    color: #fff;
}
.booking-button {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1000;
    width: 15rem;
    height: 9rem;
    padding-bottom: 0.3rem;
    background-color: #fff;
    opacity: 1;
    transition: height .3s, opacity .3s;
}
@media (hover: hover) {
    .booking-button:hover {
        opacity: .7;
    }
}
.body.-scroll .booking-button {
    height: 7rem;
}
.booking-button__text {
    font-size: 1.8rem;
    font-weight: 700;
    color: #333;
}
/* ---------- header responsive (1100) ---------- */
@media screen and (max-width: 1100px) {
    .header {
        height: 7rem;
    }
    .header.-scroll {
        height: 6rem;
    }
    .header::before {
        width: 24rem;
    }
    .header.-scroll::before {
        width: calc(100% - 10rem);
    }
    .header__logo-area {
        width: 24rem;
        height: 6rem;
    }
    .header.-scroll .header__logo-area {
        width: 20rem;
        height: 6rem;
    }
    .header__logo {
        width: 20rem;
    }
    .header.-scroll .header__logo {
        width: 20rem;
    }
    .header__right-area {
        padding-right: calc(12rem + 4vw);
    }
    .header__list {
        gap: 3rem;
        margin-right: 4.5rem;
    }
    .header__link {
        font-size: 1.5rem;
    }
    .languages {
        gap: 1.5rem;
        padding-left: 3.2rem;
    }
    .booking-button {
        width: 12rem;
        height: 7rem;
        font-size: 1.7rem;
        transition: width 0s, height .3s, opacity .3s;
    }
    .body.-scroll .booking-button {
        height: 6rem;
    }
    body.index .header::before {
        width: 24rem;
    }
}
/* ---------- header responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .header {
        width: 100%;
        height: 6rem;
        padding-left: 5.5%;
        background-color: #222222;
    }
    .header.-scroll {}
    .header__logo-area {
        width: auto;
        height: auto;
    }
    .header__right-area {
        display: none;
    }
    .booking-button {
        position: fixed;
        top: unset;
        right: unset;
        bottom: 0;
        left: 0;
        z-index: 100;
        width: 100%;
        height: 6rem;
        font-size: 1.7rem;
        font-weight: 700;
        color: #333;
        background-color: #fff;
        opacity: 1;
        transition: opacity .3s;
    }
    .booking-button:hover {
        opacity: .7;
    }
    .body.-scroll .booking-button {
        height: 6rem;
    }
    .booking-button__text {
        font-size: 1.7rem;
    }
}
/* :::::::::::::::::::: End header :::::::::::::::::::: */
/* :::::::::: hamburger-button :::::::::: */
.hamburger-button {
    position: fixed;
    top: 1.5rem;
    right: 5.5%;
    z-index: 1000;
    display: none;
    width: 3rem;
    height: 3rem;
}
.hamburger-button__line-base {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 3rem;
    height: 1.4rem;
}
.hamburger-button__line {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background: #fff;
    transition: opacity 0.3s;
}
.hamburger-button__line.-line1 {
    top: 0;
}
.hamburger-button__line.-line2 {
    top: 50%;
}
.hamburger-button__line.-line3 {
    bottom: 0;
}
.hamburger-button.-open .hamburger-button__line.-line2 {
    opacity: 0;
}
@keyframes menu-open-top {
    0% {
        top: 0;
    }
    60% {
        top: 50%;
        transform: translateY(-50%);
    }
    100% {
        top: 50%;
        transform: translateY(-50%) rotate(30deg);
    }
}
@keyframes menu-open-bottom {
    0% {
        bottom: 0;
    }
    60% {
        bottom: 50%;
        transform: translateY(50%);
    }
    100% {
        bottom: 50%;
        transform: translateY(50%) rotate(-30deg);
    }
}
@keyframes menu-close-top {
    0% {
        top: 50%;
        transform: translateY(-50%) rotate(30deg);
    }
    40% {
        top: 50%;
        transform: translateY(-50%);
    }
    100% {
        top: 0;
    }
}
@keyframes menu-close-bottom {
    0% {
        bottom: 50%;
        transform: translateY(50%) rotate(-30deg);
    }
    40% {
        bottom: 50%;
        transform: translateY(50%);
    }
    100% {
        bottom: 0;
    }
}

/* ----- hamburger-button（ハンバーガボタン）responsive ----- */
@media screen and (max-width: 1000px) {
    .hamburger-button {
        display: block;
    }
}

/* :::::::::: hamburger-menu :::::::::: */
.hambuger-menu {
    box-sizing: border-box;
    position: fixed;
    top: 6rem;
    left: 0;
    z-index: 100;
    display: none;
    width: 100%;
    background-color: #222;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
.hambuger-menu.-open {
    opacity: 1;
    visibility: visible;
}
.hambuger-menu__nav {
    padding: 3.6rem 0 2.5rem;
}
.hambuger-menu__list {
    display: flex;
    gap: 3rem;
}
.hambuger-menu__link {
    position: relative;
    display: inline-block;
}
.hambuger-menu__link::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scale(0,1);
    transform-origin: right;
    display: block;
    width: 100%;
    padding-top: 1px;
    background-color: #fff;
    transition: transform .3s, opacity .3s;
}
@media (hover: hover) {
    .hambuger-menu__link:hover::before {
        transform: scale(1,1);
        transform-origin: left;
    }
}
.hambuger-menu__link.on::before,
.hambuger-menu__link.-current::before {
    transform: scale(1,1);
    transform-origin: left;
}
.hambuger-menu__text {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.75;
    color: #fff;
}
.hambuger-menu__languages-area {
    padding-top: 3.5rem;
}
/* :::::::::: hambuger-menu 1000px sp範囲のみ :::::::::: */
@media screen and (max-width: 1000px) {
    .hambuger-menu {
        display: block;
    }
}
/* :::::::::: hamburger-menu 750px sp範囲のみ :::::::::: */
@media screen and (max-width: 750px) {
    .hamburger-menu {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 4;
        box-sizing: border-box;
        width: 100%;
        height: 100vh;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s, visibility 0.3s;
        overflow-y: auto;
    }
    .hamburger-menu.-open {
        opacity: 1;
        visibility: visible;
    }
    .hamburger-menu__base {
        position: relative;
        z-index: 0;
        height: 100%;
        min-height: 650px;
    }
    .hamburger-close {
        overflow: hidden;
        cursor: pointer;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(80,80,80,0.7);
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.4s, visibility 0.4s;
    }
    .hamburger-close.-open {
        opacity: 1;
        visibility: visible;
    }
    .hamburger-menu__inner {
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: column;
        /* justify-content: center; */
        background-color: #F2F2F2;
    }
    .hamburger-menu__home-link-wrap {
        box-sizing: border-box;
        position: relative;
        z-index: 1;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 3rem 0 0;
    }
    .hamburger-menu__home-link {
        display: inline-block;
        width: 15.6rem;
    }
    .hamburger-menu__large-list-wrap {
        padding: 5rem 0 12.5rem;
    }
    .hamburger-menu__large-list {
        display: flex;
        flex-wrap: wrap;
        align-items: start;
        gap: 3rem;
        width: 80%;
        max-width: 50rem;
        margin: 0 auto;
    }
    .hamburger-menu__large-item {
        display: flex;
        flex-wrap: wrap;
        gap: 2rem;
        width: calc((100% - 3rem) / 2);
    }
    .hamburger-menu__large-item-unit-box {
        display: flex;
        flex-direction: column;
        align-items: start;
        gap: 2rem;
        width: 100%;
    }
    .hamburger-menu__large-link {
        display: inline-block;
        position: relative;
        padding-left: 0;
        font-size: 2.1rem;
        line-height: 1.5;
        color: #2E5A65;
        transition: opacity 0.3s;
    }
    .hamburger-menu__large-link:hover {
        opacity: 0.5;
    }
    .hamburger-menu__large-link::before {
        content: "";
        box-sizing: border-box;
        position: absolute;
        top: 1.3rem;
        left: -1.5rem;
        display: block;
        width: 0.8rem;
        height: 0.8rem;
        border: 2px solid #2E5A65;
        border-radius: 50%;
        opacity: 0;
        transition: opacity 0.3s;
    }
    .hamburger-menu__large-link.-current::before {
        opacity: 1;
    }
    .hamburger-menu__large-child-list-wrap {
        padding-top: 1rem;
        padding-bottom: 0rem;
    }
    .hamburger-menu__large-child-list {
        display: flex;
        flex-direction: column;
        padding-left: 2rem;
    }
    .hamburger-menu__large-child-link {
        position: relative;
        font-size: 1.5rem;
        line-height: 2;
        color: #2E5A65;
        transition: opacity 0.3s;
    }
    .hamburger-menu__large-child-link::before {
        content: '';
        position: absolute;
        top: 1.2rem;
        left: -2rem;
        display: inline-block;
        width: 1rem;
        padding-top: 0.1rem;
        background-color: #2E5A65;
    }
    .hamburger-menu__large-child-link:hover {
        opacity: 0.5;
    }
    .hamburger-menu__small-list-wrap {
        padding-top: 2.8rem;
    }
    .hamburger-menu__small-link {
        position: relative;
        display: inline-block;
        font-size: 1.5rem;
        line-height: 2;
        color: #2E5A65;
        transition: opacity 0.3s;
    }
    .hamburger-menu__small-link:hover {
        opacity: 0.5;
    }
}
/* accordion */
.accordion-button {
    cursor: pointer;
}
.accordion-content {
    display: none;
}

/* ---------------------------------- booking-menu ---------------------------------- */
.booking-menu {
    overflow-y: auto;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 100000;
    width: 100%;
    max-width: 150rem;
    height: 100vh;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
.booking-menu.-open {
    opacity: 1;
    visibility: visible;
}
.booking-menu-close {
    overflow: hidden;
    cursor: pointer;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    height: 100dvh;
    background-color: rgba(80,80,80,0.7);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s, visibility 0.4s;
}
.booking-menu-close.-open {
    opacity: 1;
    visibility: visible;
}
.booking-menu__base {
    position: relative;
    z-index: 1;
    width: 100%;
    height: auto;
}
.booking-menu__inner {
    position: relative;
    z-index: 1;
    width: calc(100% - 8rem);
    /*box-shadow: 0 0 10px rgba(0,0,0,0.5);*/
    margin-left: auto;
    background: #FFF;
}
.booking-menu__close-button {
    position: absolute;
    top: 3.3rem;
    right: 3.3rem;
    z-index: 1;
    width: 35px;
}
.booking-menu__title {
    font-size: 2.6rem;
    padding: 7rem 0 0;
    letter-spacing: 0.1em;
}
.booking-menu__calendar-area {
    padding: 8.5rem 0 0 0;
}
.booking-menu__calendar-wrapper {
    width: 75%;
    margin: 0 auto;
}
.booking-menu__booking-area {
    padding: 0 0 3rem 0;
    margin-top: 5.5rem;
}
.booking-menu__border {
    width: 100%;
    padding-top: 1px;
    margin-bottom: 2.5rem;
    background-color: #eeeeee;
}

/* --------------------------- booking-menu responsive --------------------------- */
@media screen and (max-width: 1200px) {
    @media screen and (max-height: 950px) {
        .booking-menu {
            display: block;
        }
    }
    .booking-menu__calendar-wrapper {
        width: 78.125%;
    }
    .booking-menu__border {
        margin-bottom: 0.8rem;
    }
    .booking-menu__booking-area {
        padding: 0;
        margin-top: 4.5rem;
    }
}
@media screen and (max-width: 1000px) {
    .booking-menu {}
    .booking-menu__inner {
        width: 100%;
    }
    .booking-menu__close-button {
        top: 2.3rem;
        right: 2.3rem;
        width: 24px;
    }
    .booking-menu__title {
        font-size: 2.2rem;
        padding: 5rem 0 0;
    }
    .booking-menu__calendar-area {
        padding: 4rem 0 4rem 0;
    }
    .booking-menu__calendar-wrapper {
        width: auto;
    }
    .booking-menu__border {
        margin-bottom: 0.5rem;
                
    }
    .booking-menu__booking-area {
        padding: 0;
        margin-top: 0;
    }
}
@media screen and (max-width: 700px) {
    .booking-menu {}
    .booking-menu__calendar-area {
        padding: 8rem 0 4rem 0;
    }
}
/* ---------------------------------- sns-unit ---------------------------------- */
.booking-calendar {
    position: relative;
    max-width: 940px;
    margin: 0 auto;
}
.booking-calendar.-month1 {
    display: none;
}
.booking-calendar .ui-datepicker-prev,
.booking-calendar .ui-datepicker-next {
    display: block;
    position: absolute;
    top: 50%;
    width: 5rem;
    cursor: pointer;
    transition: opacity 0.3s;
}
.booking-calendar .ui-datepicker-prev:hover,
.booking-calendar .ui-datepicker-next:hover {
    opacity: 0.5;
}
.booking-calendar .ui-datepicker-prev.ui-state-disabled,
.booking-calendar .ui-datepicker-next.ui-state-disabled {
    opacity: 0.4;
    pointer-events: none;
}
.booking-calendar .ui-datepicker-prev {
    left: -6vw;
    transform: scale(-1, 1) translateY(-50%);
}
.booking-calendar .ui-datepicker-next {
    right: -6vw;
    transform: translateY(-50%);
}
.booking-calendar .ui-datepicker-inline {
    display: flex !important;
    justify-content: space-between;
    width: auto !important;
    margin: 0 auto;
    text-align: center;
}
.booking-calendar .ui-datepicker-group {
    width: 30%;
}
.booking-calendar .ui-datepicker-title {
    padding-bottom: 2.5rem;
    font-size: 1.7rem;
}
.booking-calendar .ui-datepicker-calendar {
    width: 100%;
    font-size: 1.5rem;
}
.booking-calendar .ui-datepicker-calendar thead {
    backface-visibility: visible;
}
.ui-datepicker-calendar tr {
    display: flex;
}
.booking-calendar .ui-datepicker-calendar th,
.booking-calendar .ui-datepicker-calendar td {
    position: relative;
    z-index: 10;
    width: 14.2857142857%;
    line-height: 2.8rem;
    text-align: center;
}
.booking-calendar .ui-datepicker-calendar th.ui-datepicker-week-end:first-child::before {
    content: "";
    display: block;
    position: absolute;
    top: 52%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    box-sizing: border-box;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    border: 1px solid #444;
}
.booking-calendar .ui-datepicker-calendar th.ui-datepicker-week-end:last-child::before {
    content: "";
    display: block;
    position: absolute;
    top: 52%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    background: #f4f0eb;
}
.booking-calendar .ui-datepicker-calendar td:nth-child(1) {
    /* color: #BA915B; */
}
.booking-calendar .ui-datepicker-calendar td a {
    display: block;
    transition: opacity 0.3s;
}
.booking-calendar .ui-datepicker-calendar td a:hover {
    opacity: 0.5;
}
.booking-calendar .ui-datepicker-calendar .ui-datepicker-unselectable {
    opacity: 0.3;
}
.booking-calendar .ui-datepicker-calendar .ui-state-active {
    display: block;
    position: relative;
    z-index: 10;
    color: #fff;
    font-weight: 700;
}
.booking-calendar .ui-datepicker-calendar .ui-state-active::before {
    content: "";
    display: block;
    position: absolute;
    top: 55%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    background: #222222;
}
.booking-calendar .ui-datepicker-calendar .ui-datepicker-calendar {
    width: 100%;
    max-width: 280px;
}
.booking-calendar .ui-datepicker-row-break {
    display: none;
}
.booking-calendar.-modal .ui-datepicker-prev,
.booking-calendar.-modal .ui-datepicker-next {
    top: 50%;
}
.booking-calendar.-modal .ui-datepicker-prev {
    left: -6vw;
}
.booking-calendar.-modal .ui-datepicker-next {
    right: -6vw;
}
/* --------------------------- sns-unit responsive --------------------------- */

@media screen and (max-width: 1200px) {
    .booking-calendar .ui-datepicker-prev,
    .booking-calendar .ui-datepicker-next {
        top: 0.8rem;
        width: 3rem;
    }
    .booking-calendar .ui-datepicker-prev {
        left: 0;
    }
    .booking-calendar .ui-datepicker-next {
        right: 0;
    }
    .booking-calendar .ui-datepicker-group {
        max-width: 280px;
    }
    .booking-calendar.-modal .ui-datepicker-prev,
    .booking-calendar.-modal .ui-datepicker-next {
        top: 0.8rem;
    }
    .booking-calendar.-modal .ui-datepicker-prev {
        left: 0;
    }
    .booking-calendar.-modal .ui-datepicker-next {
        right: 0;
    }
}
@media screen and (max-width: 1000px) {
    .booking-calendar {
        width: auto;
    }
    .booking-calendar.-month3 {
        display: none;
    }
    .booking-calendar.-month1 {
        display: flex;
    }
    .booking-calendar .ui-datepicker-prev {
        left: calc(50% - 14rem);
    }
    .booking-calendar .ui-datepicker-next {
        right: calc(50% - 14rem);
    }
    .booking-calendar .ui-datepicker-inline {
        flex-direction: column;
        justify-content: center;
    }
    .booking-calendar .ui-datepicker-calendar {
        width: 25.2rem;
        margin: 0 auto;
    }
    .booking-calendar.-modal .ui-datepicker-prev {
        left: calc(50% - 14rem);
    }
    .booking-calendar.-modal .ui-datepicker-next {
        right: calc(50% - 14rem);
    }
}
@media screen and (max-width: 750px) {
    .booking-calendar.-modal {
        width: 25.2rem;
    }
}

/* ---------------------------------- booking-search ---------------------------------- */
.booking-search {
    position: relative;
}
.booking-search__form {
    display: flex;
    align-items: start;
    gap: 0 4%;
    padding: 1.5rem 0 2.5rem;
}
.booking-search__data-entry-area {
    flex-grow: 1;
    display: flex;
    width: 100%;
    gap: 0 3%;
}
.booking-search__first-entry-group {
    display: flex;
    gap: 0 3rem;
    width: 100%;
}
.booking-search__second-entry-group {
    display: flex;
    gap: 0 3rem;
}
.booking-search__date-input-area,
.booking-search__select-unit {
    position: relative;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #666666;
}
.booking-search__date-input-area {
    flex-grow: 1;
}
.booking-search__select-unit {
    width: 12rem;
}
.booking-search__icon-img {
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 1;
    transform: translateY( -50%);
    width: 1.9rem;
}
.bp-over1200 {
    display: block;
}
.bp-under1200 {
    display: none;
}
.booking-search__check-in-out-description {
    position: absolute;
    bottom: -2.6rem;
    left: 0;
}
.booking-search__description-text {
    white-space: nowrap;
    font-size: 1.3rem;
    color: #888;
}
.booking-search__input {
    width: 100%;
    height: 5rem;
    font-size: 1.6rem;
    color: #fff;
}
.booking-menu .booking-search__input {
    color: #222;
}
.booking-search__select {
    appearance: none;
    cursor: pointer;
    width: 100%;
    height: 5rem;
    padding: 0;
    margin: 0;
    font-size: 1.6rem;
    color: #fff;
    background-color: transparent;
}
.booking-menu .booking-search__select {
    color: #222;
}
.booking-search__select:focus-visible {
    width: 100%;
    height: 5rem;
    font-size: 1.7rem;
}
.booking-search__button-area {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}
.booking-search__text-area-under-button {
    position: relative;
    z-index: 1;
    padding: 1.5rem 0 0;
    text-align: center;
}
.booking-search__text-link {
    white-space: nowrap;
    text-decoration: underline;
    font-size: 1.3rem;
    color: #888888;
    opacity: 1;
    transition: opacity .3s;
}
@media (hover: hover) {
    .booking-search__text-link:hover {
        opacity: .6;
    }
}
.booking-search__input::placeholder {
    color: inherit;
}
.booking-search__input[readonly] {
    pointer-events: none;
}
.booking-search__input.-calendar {
    pointer-events: auto;
    cursor: pointer;
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", sans-serif;
}
.booking-search__calender-icon {
    pointer-events: none;
    position: absolute;
    bottom: 1.6rem;
    right: 0;
    width: 1.6rem;
}
.booking-search__select-group {
    display: flex;
    gap: 0 2rem;
}
.booking-search__button {
    flex-grow: 1;
    box-sizing: border-box;
    width: 28rem;
    height: 5rem;
    font-size: 1.6rem;
    background-color: #111111;
    opacity: 1;
    transition: color 0.3s, background-color 0.3s, opacity .3s;
}
.booking-search__button-text {
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", sans-serif;
    color: #FFF;
    transition: color 0.3s;
}
.booking-search__button:hover {
    background-color: #fff;
}
.booking-menu .booking-search__button:hover {
    background-color: #111111;
    opacity: .6;
}
.booking-search__button:hover .booking-search__button-text {
    color: #333;
}
.booking-menu .booking-search__button:hover .booking-search__button-text {
    color: #fff;
}
.booking-search__info-text {
    margin: -0.3em 0;
    font-size: 1.3rem;
    line-height: 1.6;
}
.booking-search__modal {
    box-sizing: border-box;
    position: absolute;
    right: 50%;
    bottom: calc(100% + 3rem);
    z-index: 200;
    transform: translate( 50%, 0.5rem);
    width: 111%;
    padding: 4.5rem 5%;
    background: #FFF;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
}
.booking-search__modal.-show {
    transform: translate( 50%, 0.5rem);
    opacity: 1;
    visibility: visible;
}
.booking-search__modal::before {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, 0);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0.7rem 0.7rem 0 0.7rem;
    border-color: #FFF transparent transparent transparent;
}

/* :::::::::: booking-search responsive :::::::::: */
@media screen and (max-width: 1200px) {
    .booking-search__form {
        flex-direction: column;
        align-items: center;
        gap: 0 6%;
        padding: 1.5rem 0 4.5rem;
    }
    .booking-search__data-entry-area {
        flex-wrap: wrap;
        padding-bottom: 3rem;
    }
    .booking-search__first-entry-group {
        gap: 0 1.8rem;
    }
    .booking-search__second-entry-group {
        gap: 0 1.8rem;
        width: 100%;
    }
    .bp-over1200 {
        display: none;
    }
    .bp-under1200 {
        display: block;
    }
    .booking-search__check-in-out-description {
        position: relative;
        bottom: unset;
        padding: 2.3rem 0 0;
    }
    .booking-search__select-unit.--1 {
        width: 9rem;
        width: 30%;
    }
    .booking-search__select-unit.--2,
    .booking-search__select-unit.--3 {
        width: 100%;
    }
    .booking-search__modal::before {
        right: calc(8.8% + 53rem);
    }
    .booking-search__button-area {
        width: 100%;
        align-items: center;
    }
    .booking-search__button {
        width: 100%;
    }
}
@media screen and (max-width: 1000px) {
    .booking-search__modal {
        width: 106%;
        padding: 4rem 5%;
    }
    .booking-search__modal::before {
        right: calc(3.3% + 26.5rem);
    }
    .booking-search__form {
        flex-direction: column;
        align-items: center;
        gap: unset;
    }
    .booking-search__calender-icon {
        bottom: 1.5rem;
    }
    .booking-search__select-group {
        gap: 3rem;
        width: 100%;
        padding: 0.8rem 0 0;
    }
    .booking-search__select-unit{
        width: calc((100% - 3rem * 2) / 3);
    }
    .booking-search__input-text {
        position: relative;
        bottom: unset;
        left: unset;
        white-space: unset;
        padding-top: 3rem;
    }
    .booking-search__text-area-under-button {
        padding: 1.5rem 0 0;
    }
    .booking-search__text-link {
        white-space: unset;
        font-size: 1.2rem;
    }
}
/* :::::::::: footer :::::::::: */
.footer {
    padding: 6.2rem 0 6.5rem;
    color: #fff;
    background-color: #333;
}
.footer__wrapper {
    width: 87.5%;
    margin: 0 auto;
}
.footer__upper {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.footer__logo {
    width: 32rem;
}
.footer-nav__list {
    display: flex;
    gap: 3.5rem;
}
.footer-nav__link {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
}
.footer__center {
    display: flex;
    justify-content: space-between;
    align-items: start;
    padding-top: 3.5rem;
}
.footer__text > strong {
    font-weight: bold;
}
.footer__sns {
    padding-top: 0.5rem;
}
.sns {
    position: relative;
}
.sns.--instagram {
    padding-right: 3.5rem;
}
.sns.--instagram::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    width: 2.2rem;
    height: 2.2rem;
    background-image: url('/inn/assets/img/common/icon-instagram.png');
    background-size: 2.2rem 2.2rem;
    background-repeat: no-repeat;
}
.footer__lower {
    display: flex;
    align-items: start;
    justify-content: space-between;
    padding-top: 5.5rem;
}
.footer__heading1 {
    font-size: 1.5rem;
    /*font-weight: 700;*/
    line-height: 2;
}
.footer__lower-right {}
.footer__sub-links {
    display: flex;
    gap: 3rem;
}
.footer__sub-link {}
.footer__copyright {
    padding-top: 1.5rem;
    font-size: 1.2rem;
    line-height: 1.75;
    color: #888888;
}
/* ---------- footer responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .footer {
        padding: 5.2rem 0 11.5rem;
    }
    .footer__wrapper {
        width: 89%;
    }
    .footer__upper {
        flex-direction: column;
        justify-content: start;
        align-items: start;
    }
    .footer__logo {
        width: 30rem;
    }
    .footer-nav {}
    .footer-nav__list {
        flex-wrap: wrap;
        gap: 1rem 3.5rem;
        padding-top: 3rem;
    }
    .footer__center {
        flex-direction: column-reverse;
        align-items: start;
        padding-top: 2.5rem;
    }
    .footer__address {
        padding-top: 3rem;
    }
    .footer__sns {
        padding-top: 0.5rem;
    }
    .footer__lower {
        flex-direction: column;
        justify-content: start;
        padding-top: 3rem;
    }
    .footer__sub-links {
        padding-top: 3rem;
    }
    .footer__copyright {
        padding-top: 2rem;
    }
}
/* :::::::::: End footer :::::::::: */
/* :::::::::: cookie :::::::::: */
.cookie {
    position: fixed;
    bottom: 2rem;
    left: 2rem;
    z-index: 1000000;
    width: 35rem;
    max-width: 54rem;
    padding: 2.8rem 3rem 3rem;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    background-color: #FFF;
}
.cookie__text-link {
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2;
    color: #888888;
    margin-top: 0.5rem;
    text-decoration: underline;
}
.cookie__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    padding-top: 2rem;
}
.cookie__button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-width: 12rem;
    height: 3.4rem;
    padding: 0 3rem 0.2rem;
    font-size: 1.5rem;
    font-weight: 700;
    color: #fff;
    background-color: #333;
}
.cookie__button.-coating {
    color: #333;
    background-color: #FFF;
    border: 1px solid #333;
}
/* ---------- cookie responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .cookie {
        bottom: 9rem;
        left: 1rem;
        width: calc(100% - 2rem);
    }
}
/* :::::::::: End cookie :::::::::: */
/* :::::::::::::::::::: common module :::::::::::::::::::: */


/* :::::::::::::::::::: End common module :::::::::::::::::::: */
/* :::::::::::::::::::: home :::::::::::::::::::: */
/* :::::::::: loading :::::::::: */
.loading {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    display: block;
    width: 100%;
    height: 100%;
    transition: opacity 1.8s, visibility 1.8s;
}
.body.loading-end .loading {
    opacity: 0;
    visibility: hidden;
}
.loading__content-wrap {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    width: 100%;
    height: 100%;
    padding-bottom: 10vh;
}
.loading__logo {
    width: 40rem;
}
.loading__circle {
    width: 2.3rem;
    animation: loading .5s linear infinite;
}
@keyframes loading {
    0% {
        ransform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}
/* --------------------- responsive 750 --------------------- */
@media screen and (max-width: 750px) {
    .loading__content-wrap {
        gap: 0.8rem;
        padding-bottom: 2vh;
    }
    .loading__logo {
        width: 28rem;
    }
}
/* :::::::::: End loading :::::::::: */
/* :::::::::: home-kv :::::::::: */
.home-kv {
    background: #222;
}

.home-kv__sec {
    position: relative;
}
.home-kv__title-area {
    position: absolute;
    bottom: 9rem;
    left: 0;
    z-index: 1;
    width: 100%;
}
.home-kv__title {
    text-align: center;
    font-size: 6rem;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #fff;
}
.home-kv__text {
    padding-top: 1.5rem;
    text-align: center;
    font-size: 1.7rem;
    font-weight: 700;
    line-height: 1.75;
    color: #fff;
}
.home-kv__bgi {}
/* ::::: scroll-link ::::: */
.scroll-link {
    position: absolute;
    bottom: -5.5rem;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 1.2rem;
    font-weight: 700;
    color: #FFF;
    opacity: 1;
    transition: opacity .3s;
    animation: float 2.7s ease-in-out infinite;
}
.scroll-link:hover {
    opacity: .6;
}
.scroll-link::before {
    content: '';
    position: relative;
    z-index: 0;
    display: inline-block;
    margin-bottom: 8px;
    width: 30px;
    height: 11px;
    background-image: url('/inn/assets/img/common/icon-scroll.png');
    background-repeat: no-repeat;
    background-size: 30px 11px;
}
@keyframes float {
    0%, 100% {
        bottom: -5.5rem;
    }
    50% {
        bottom: -4.5rem;
    }
}
/* ::::: End scroll-link ::::: */
.home-kv__lower {
    background-color: #333;
}
/* ---------- home-kv responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .home-kv {
        padding-top: 6rem;
    }
    .home-kv__title-area {
        bottom: 15%;
    }
    .home-kv__title {
        font-size: 4.5rem;
    }
    .home-kv__text {
        padding-top: 1.5rem;
        font-size: 1.5rem;
        line-height: 2;
    }
    /* ::::: scroll-link ::::: */
    .scroll-link {
        bottom: -5.5rem;
    }
    .scroll-link::before {
        margin-bottom: 8px;
    }
    /* ::::: End scroll-link ::::: */
}
/* :::::::::: End home-kv :::::::::: */
.home-intro {
    padding-top: 7rem;
    margin-top: -7rem;
}
/* ----- responsive (1100) ----- */
@media screen and (max-width: 1100px) {
    .home-intro {
        padding-top: 6rem;
        margin-top: -6rem;
    }
}
/* :::::::::: home-announce :::::::::: */
.home-announce {
    padding-top: 7rem;
    margin-top: -7rem;
}
.home-announce__sec {
    padding: 5rem 0;
    border-bottom: 1px solid #dfdbd4;
}
.home-announce h2 {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.75;
}
.home-announce p {
    padding-top: 3rem;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 2;
}
.home-announce a {
    text-decoration: underline;
    opacity: 1;
    transition: opacity .3s;
}
@media (hover: hover) {
    .home-announce a:hover {
        opacity: .6;
    }
}
/* ---------- home-announce responsive (1100) ---------- */
@media screen and (max-width: 1100px) {
    .home-announce {
        padding-top: 6rem;
        margin-top: -6rem;
    }
}
/* ---------- home-announce responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .home-announce {}
    .home-announce__sec {
        padding: 4rem 0 5rem;
    }
    .home-announce h2 {
        font-size: 2rem;
    }
    .home-announce p {
        padding-top: 1.5rem;
    }
}
/* :::::::::: End home-announce :::::::::: */
/* :::::::::: home-rooms :::::::::: */
.home-rooms {
    padding-top: 7rem;
    margin-top: -7rem;
}
.home-rooms__sec {
    padding: 5rem 0 11rem;
}
/* ::::: home-title-block ::::: */
.home-title-block {}
.home-title-block__title {
    font-size: 5.5rem;
    letter-spacing: 0.025em;
}
.home-title-block__sub-title {
    padding-top: 1.2rem;
    font-size: 1.8rem;
    font-weight: 700;
}
/* ::::: End home-title-block ::::: */
.home-rooms__list-area {
    padding: 4.8rem 0 7rem;
}
/* ::::: c-cards ::::: */
.c-cards {}
.c-cards.--with-slider {}
.c-cards.--2columns {}
.c-cards.--3columns {}
.c-cards__list {
    display: flex;
    flex-wrap: wrap;
    gap: 6rem 4%;
}
.c-card {
    width: 100%;
}
.c-cards.--with-slider .c-card {
    width: calc((100% - 5.5%) / 2);
}
.c-cards.--2columns .c-card {
    width: calc((100% - 4%) / 2);
}
.c-cards.--3columns .c-card {
    width: calc((100% - 4% * 2) / 3);
}
.c-card__thumbnail-img {}
/* ::: c-card-slick-slide ::: */
/* :: c-card-slick-slide-nav :: */
.c-card-slick-slide-nav-area {}
.c-card-slick-slide-nav {
    position: relative;
    height: 3rem;
}
.c-card-slick-slide-prev,
.c-card-slick-slide-next {
    position: absolute;
    top: 1.8rem;
}
.c-card-slick-slide-prev {
    right: 3.5rem;
    transform: scale(-1,1);
}
.c-card-slick-slide-next {
    right: 0.4rem;
}
.c-card-slick-slide-prev > .img,
.c-card-slick-slide-next > .img {
    width: 6px;
}
/* :: End c-card-slick-slide-nav :: */
/* :: c-card-slick-slide slick-dots button :: */
.c-card-slick-slide .slick-dots {
    position: absolute;
    top: 1.8rem;
    left: 0;
    display: flex;
    gap: 11px;
}
.c-card-slick-slide .slick-dots li {
    line-height: 0;
}
.c-card-slick-slide .slick-dots li button {
    box-sizing: border-box;
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 1px solid #222222;
    font-size: 0; /* 数字を見えなくする */
    transition: background-color .3s;
}
.c-card-slick-slide .slick-dots li.slick-active button {
    background-color: #222;
}
/* :: End c-card-slick-slide button :: */
/* ::: End c-card-slick-slide ::: */
.c-card__title {
    margin-top: 2.5rem;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.75;
}
.c-cards.--with-slider .c-card__title {
    margin-top: 2.2rem;
}
.c-card__text {
    margin-top: 1.8rem;
}
.c-card__table-wrap {
    margin-top: 0.5rem;
}
/* ::: c-card-table ::: */
.c-card-table {
    width: 100%;
}
.c-card-table.--th-short {}
.c-card-table__body {}
.c-card-table__tr {
    display: flex;
    width: 100%;
    font-size: 1.5rem;
    line-height: 2;
}
.c-card-table__th {
    width: 8rem;
    padding: 1.5rem 0;
    border-bottom: 1px solid #222;
    font-weight: 700;
}
.c-card-table.--th-short .c-card-table__th {
    width: 5rem;
}
.c-card-table__td {
    width: calc(100% - 8rem);
    padding: 1.5rem 0 1.5rem 2rem;
    border-bottom: 1px solid #ccc;
    font-weight: 400;
}
.c-card-table.--th-short .c-card-table__td {
    width: calc(100% - 5rem);
}
/* ::: End c-card-table ::: */
.c-card__buttons-area {
    padding-top: 5rem;
}
/* ::::: End c-cards ::::: */
/* ::::: c-square-button ::::: */
.c-square-button {
    display: inline-block;
    width: 100%;
    max-width: 30rem;
    padding: 1rem 1rem 1.2rem;
    text-align: center;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
    color: #fff;
    background-color: #333;
}
a.c-square-button {
    opacity: 1;
    transition: opacity .3s;
}
@media (hover: hover) {
    a.c-square-button:hover {
        opacity: .7;
    }
}
/* ::::: End c-square-button ::::: */
.home-rooms-small-sec + .home-rooms-small-sec {
    padding-top: 5rem;
}
.home-rooms-small-sec__title {
    font-size: 2.2rem;
    font-weight: 700;
}
.home-rooms-small-sec__text {
    padding-top: 2.2rem;
}
/* ---------- home-rooms responsive (1100) ---------- */
@media screen and (max-width: 1100px) {
    .home-rooms {
        padding-top: 6rem;
        margin-top: -6rem;
    }
}
/* ---------- home-rooms responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .home-rooms {}
    .home-rooms__sec {
        padding: 5rem 0 6.5rem;
    }
    /* ::::: home-title-block ::::: */
    .home-title-block {}
    .home-title-block__title {
        font-size: 4rem;
    }
    .home-title-block__sub-title {
        padding-top: 0.6rem;
        font-size: 1.7rem;
    }
    /* ::::: End home-title-block ::::: */
    .home-rooms__list-area {
        padding: 4rem 0 5rem;
    }
    /* ::::: c-cards ::::: */
    .c-cards {}
    .c-cards.--with-slider {}
    .c-cards.--2columns {}
    .c-cards.--3columns {}
    .c-cards__list {
        gap: 5rem 4%;
    }
    /* ::: c-cards ::: */
    .c-card {
        width: 100%;
    }
    .c-cards.--with-slider .c-card {
        width: 100%;
    }
    .c-cards.--2columns .c-card {
        width: 100%;
    }
    .c-cards.--3columns .c-card {
        width: 100%;
    }
    .c-card__thumbnail-img {}
    /* ::: c-card-slick-slide ::: */
    /* :: c-card-slick-slide button :: */
    .c-card-slick-slide-nav {
        height: 2.8rem;
    }
    /* :: End c-card-slick-slide button :: */
    /* :: c-card-slick-slide button :: */
    .c-card-slick-slide .slick-dots {}
    /* :: End c-card-slick-slide button :: */
    /* ::: End c-card-slick-slide ::: */
    .c-card__title {
        font-size: 2rem;
    }
    /* ::: c-card-table ::: */
    .c-card-table {}
    .c-card-table.--th-short {}
    /* ::: End c-card-table ::: */
    .c-card__buttons-area {
        padding-top: 4rem;
    }
    /* ::: End c-cards ::: */
    /* ::::: End c-cards ::::: */
    /* ::::: c-square-button ::::: */
    .c-square-button {
        max-width: 100%;
    }
    /* ::::: End c-square-button ::::: */
    .home-rooms-small-sec + .home-rooms-small-sec {
        padding-top: 4.5rem;
    }
    .home-rooms-small-sec__title {
        font-size: 2rem;
    }
    .home-rooms-small-sec__text {
        padding-top: 2.5rem;
    }
}
/* :::::::::: End home-rooms :::::::::: */
/* :::::::::: home-google-map-bgi :::::::::: */
.home-google-map-bgi iframe {
    filter: grayscale(100%); /* モノクロにする */
    -webkit-filter: grayscale(100%); /* Safari対応 */
    width: 100%;
    aspect-ratio: 1280/540;
    min-height: 54rem;
    max-height: 65rem;
}
/* ---------- home-google-map-bgi responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .home-google-map-bgi iframe {
        aspect-ratio: 360/480;
        min-height: 48rem;
        max-height: 54rem;
    }
}
/* :::::::::: End home-google-map-bgi :::::::::: */
/* :::::::::: home-access :::::::::: */
.home-access {
    padding-top: 7rem;
    margin-top: -7rem;
}
.home-access__sec {
    padding: 6.5rem 0 8rem;
    border-bottom: 1px solid #dfdbd4;
}
.home-access__conts {
    display: flex;
    align-items: start;
    gap: 6%;
    padding-top: 2rem;
}
.home-access__table-area {
    width: calc(100% - 30% - 6%);
}
.home-access-table {
    width: 100%;
}
.home-access-table__body {}
.home-access-table__tr {
    display: flex;
    width: 100%;
    font-size: 1.5rem;
    line-height: 2;
}
.home-access-table__th {
    width: 13rem;
    padding: 1.5rem 1rem 1.5rem 0;
    border-bottom: 1px solid #222;
    font-weight: 700;
}
.home-access-table__td {
    width: calc(100% - 13rem);
    padding: 1.5rem 0 1.5rem 2rem;
    border-bottom: 1px solid #ccc;
    font-weight: 400;
}
.home-access-table__td a {}
.home-access__button-wrap {
    padding-top: 5rem;
}
.home-access__access-map {
    width: 30%;
    margin-top: 2.3rem;
}
/* ---------- home-access responsive (1100) ---------- */
@media screen and (max-width: 1100px) {
    .home-access {
        padding-top: 6rem;
        margin-top: -6rem;
    }
}
/* ---------- home-access responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .home-access {}
    .home-access__sec {
        padding: 4.7rem 0 6rem;
    }
    .home-access__conts {
        flex-wrap: wrap;
        gap: 5rem 6%;
        padding-top: 2.2rem;
    }
    .home-access__table-area {
        width: 100%;
    }
    .home-access-table {
        width: 100%;
    }
    .home-access-table__th {
        width: 8rem;
    }
    .home-access-table__td {
        width: calc(100% - 8rem);
    }
    .home-access__access-map {
        width: 100%;
        max-width: 50rem;
        margin-top: 0;
    }
}
/* :::::::::: End home-access :::::::::: */
/* :::::::::: home-neighborhood :::::::::: */
.home-neighborhood {
    padding-top: 7rem;
    margin-top: -7rem;
}
.home-neighborhood__sec {
    padding: 6rem 0 11rem;
}
.home-neighborhood__list-area {
    padding-top: 4.5rem;
}
/* ---------- home-neighborhood responsive (1100) ---------- */
@media screen and (max-width: 1100px) {
    .home-neighborhood {
        padding-top: 6rem;
        margin-top: -6rem;
    }
}
/* ---------- home-neighborhood responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .home-neighborhood {}
    .home-neighborhood__sec {
        padding: 4.5rem 0 6rem;
    }
    .home-neighborhood__list-area {
        padding-top: 4rem;
    }
}
/* :::::::::: End home-neighborhood :::::::::: */
/* :::::::::: home-topics :::::::::: */
.home-topics {}
.home-topics__sec {
    padding: 5.5rem 0 12rem;
}
.home-topics__list-area {
    padding-top: 2rem;
}
/* ::::: c-topics-list-block ::::: */
.c-topics-list-block {}
.c-topics-list-block__list {}
.c-topics-list-block__item {}
.c-topics-list-block__link {
    position: relative;
    display: flex;
    width: 100%;
    font-size: 1.5rem;
    line-height: 2;
    opacity: 1;
    transition: opacity .3s;
}
.c-topics-list-block__date {
    width: 15rem;
    padding: 1.5rem 0;
    border-bottom: 1px solid #222;
    font-weight: 700;
}
.c-topics-list-block__title {
    position: relative;
    z-index: 0;
    width: calc(100% - 15rem);
    padding: 1.5rem 0 1.5rem 2rem;
    border-bottom: 1px solid #ccc;
    font-weight: 400;
}
.c-topics-list-block__title::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    z-index: 1;
    transform: scale(0,1);
    transform-origin: left;
    width: 100%;
    padding-top: 1px;
    border-bottom: 1px solid #222;
    transition: transform .8s;
}
.c-topics-list-block__link:hover .c-topics-list-block__title::after {
    transform: scale(1,1);
}
/* ::::: End c-topics-list-block ::::: */
.home-topics__archive-list-area {
    padding-top: 5.2rem;
}
/* ---------- home-topics responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .home-topics {}
    .home-topics__sec {
        padding: 5rem 0 7rem;
    }
    .home-topics__list-area {
        padding-top: 2.5rem;
    }
    /* ::::: c-topics-list-block ::::: */
    .c-topics-list-block {}
    .c-topics-list-block__date {
        width: 11rem;
    }
    .c-topics-list-block__title {
        width: calc(100% - 11rem);
        padding: 1.5rem 0 1.5rem 1rem;
    }
    .c-topics-list-block__title::after {
        transition: transform .5s;
    }
    /* ::::: End c-topics-list-block ::::: */
}
/* :::::::::: End home-topics :::::::::: */
/* :::::::::::::::::::: End home :::::::::::::::::::: */
/* :::::::::::::::::::: topics :::::::::::::::::::: */
.topics {}
.topics__sec {
    padding: 20.5rem 0 12rem;
}
.topics__page-title-area {
    padding-bottom: 6rem;
}
/* ::::: c-page-title-block ::::: */
.c-page-title-block {}
.c-page-title-block__title {
    font-size: 7.2rem;
    letter-spacing: 0.025em;
}
.c-page-title-block__sub-title {
    padding-top: 1.2rem;
    font-size: 2rem;
    font-weight: 700;
}
/* ::::: End c-page-title-block ::::: */
.topics__cats-area {}
/* ::::: c-catsBlock ::::: */
.c-catsBlock {}
.c-catsBlock__list {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem 3rem;
}
.c-catsBlock__item {}
.c-catsBlock__link {
    text-decoration: underline;
    font-size: 1.5rem;
    line-height: 2;
    opacity: 1;
    transition: opacity .3s;
}
@media (hover: hover) {
    .c-catsBlock__link:hover {
        opacity: .6;
    }
}
.c-catsBlock__link.on {
    pointer-events: none;
    text-decoration: unset;
    font-weight: 700;
}
/* ::::: End c-catsBlock ::::: */
.topics__list-area {
    padding-top: 4rem;
}
.topics__pagination-area {
    padding-top: 7.2rem;
}
/* ::::: pagination ::::: */
.pagination {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
}
.page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5rem;
    height: 5rem;
    border: 1px solid #222;
    color: #333;
    background-color: transparent;
    opacity: 1;
    transition: opacity .3s, background-color .3s;
}
.page-numbers.current {
    color: #fff;
    background-color: #333333;
    opacity: 1;
}
a.page-numbers:hover {
    opacity: 0.7;
}
/* ::::: End pagination ::::: */
/* -------------------- topics responsive (1000) -------------------- */
@media screen and (max-width: 1000px) {
    .topics {}
    .topics__sec {
        padding: 12.5rem 0 7rem;
    }
    .topics__page-title-area {
        padding-bottom: 4rem;
    }
    /* ::::: c-page-title-block ::::: */
    .c-page-title-block {}
    .c-page-title-block__title {
        font-size: 4.8rem;
    }
    .c-page-title-block__sub-title {
        padding-top: 1.2rem;
        font-size: 1.7rem;
    }
    /* ::::: End c-page-title-block ::::: */
    .topics__cats-area {}
    /* ::::: c-catsBlock ::::: */
    .c-catsBlock {}
    /* ::::: End c-catsBlock ::::: */
    .topics__list-area {
        padding-top: 2.7rem;
    }
    .topics__pagination-area {
        padding-top: 5rem;
    }
    /* ::::: pagination ::::: */
    .pagination {
        gap: 2rem;
    }
    .page-numbers {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 5rem;
        height: 5rem;
        border: 1px solid #222;
        color: #333;
        background-color: transparent;
        opacity: 1;
        transition: opacity .3s, background-color .3s;
    }
    .page-numbers.current {
        color: #fff;
        background-color: #333333;
        opacity: 1;
    }
    a.page-numbers:hover {
        opacity: 0.7;
    }
    /* ::::: pagination end ::::: */
}
/* :::::::::::::::::::: End topics :::::::::::::::::::: */
/* :::::::::::::::::::: topics-single :::::::::::::::::::: */
.topics-single {
    padding: 21rem 0 12rem;
}
.topics-single__wrapper {
    width: 86%;
    margin: 0 auto;
    max-width: 130rem;
}
.topics-single__inside-wrapper {
    max-width: 65%;
}
.topics-single__title-area {
    padding-bottom: 5.2rem;
    border-bottom: 1px solid #dfdbd4;
}
.topics-single__date {
    padding-bottom: 1.2rem;
    font-size: 1.5rem;
    font-weight: 700;
}
.topics-single__title {
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1.71;
}
.topics-single__cats {
    display: flex;
    flex-wrap: wrap;
    gap: 0 2rem;
    padding-top: 1.8rem;
}
.topics-single__cat {
    font-size: 1.5rem;
    line-height: 2;
    color: #888;
}
.topics-single__buttons-area {
    padding-top: 4rem;
}
@media screen and (max-width: 1000px) {
    .topics-single {
        padding: 12rem 0 7rem;
    }
    .topics-single__wrapper {
        width: 89%;
    }
    .topics-single__inside-wrapper {
        max-width: 100%;
    }
    .topics-single__title-area {
        padding-bottom: 4.2rem;
    }
    .topics-single__title {
        font-size: 2.5rem;
        line-height: 1.6;
    }
    .topics-single__cats {
        padding-top: 1rem;
    }
    .topics-single__buttons-area {
        padding-top: 2.5rem;
    }
}
/* :::::::::::::::::::: End topics-single :::::::::::::::::::: */
/* :::::::::::::::::::: contact :::::::::::::::::::: */
.contact {}
.contact__sec {
    padding: 20.5rem 0 12rem;
}
.contact__page-title-area {
    padding-bottom: 6rem;
}
/* ::::: formSec ::::: */
.formSec {}
.color_red {
    color: #ee0000;
}
/* ----- responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .contact {}
    .contact__sec {
        padding: 12.5rem 0 7rem;
    }
    .contact__page-title-area {
        padding-bottom: 4rem;
    }
}
/* form */
.formSec form {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 4.5rem;
}
.formSec form table {
    width: 100%;
}
.formSec form table tr {
    display: flex;
}
.formSec form table tr:first-child {
    padding-top: 0;
}
.formSec form table tr td div.radioList {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2rem;
    background-color: transparent;
    padding-top: 1.1rem;
}
.formSec form table tr td div.radioList label {
    width: fit-content;
}
.formSec form table tr th {
    width: 20rem;
    padding: 1.5rem 1rem 1.5rem 0;
    border-bottom: 1px solid #222222;
    text-align: left;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 2;
}
.formSec form table tr th span.color_red {
    margin-left: 0.5rem;
}
.formSec form table tr td {
    display: flex;
    align-items: start;
    width: calc(100% - 20rem);
    border-bottom: 1px solid #cccccc;
}
.formSec form table tr td input,
.formSec form table tr td textarea {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 2;
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", sans-serif;
}
.formSec form table tr td input::placeholder,
.formSec form table tr td textarea::placeholder {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 2;
    color: #888;
}
.formSec form table tr td input,
.confirm .formSec form table tr td {
    padding: 1.5rem 2rem;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 2;
}
.formSec form table tr td textarea {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
    min-height: 21rem;
    padding: 1.5rem 2rem;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 2;
}
.formSec form table tr td input[type="radio"] {
    display: none;
}
.formSec form table tr td input[type="radio"] + label {
    cursor: pointer;
    position: relative;
    display: block;
    padding-left: 3.2rem;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 2;
}
.formSec form table tr td input[type="radio"]:checked + label {
    font-weight: 700;
    color: #209a92;
}
.formSec form table tr td input[type="radio"] + label::before {
    content: '';
    box-sizing: border-box;
    position: absolute;
    top: 5px;
    left: 0;
    display: block;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    border: 2px solid transparent;
    background-color: #fff;
    transition: border .3s, background-color .3s;
}
.formSec form table tr td input[type="radio"]:checked + label::before {
    border: 2px solid #209a92;
}
.formSec form table tr td input[type="radio"] + label::after {
    content: '';
    box-sizing: border-box;
    position: absolute;
    top: 10px;
    left: 5px;
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #209a92;
    opacity: 0;
    transition: opacity 0.2s;
}
.formSec form table tr td input[type="radio"]:checked + label::after {
    opacity: 1;
}
/*  form responsive (1000)  */
@media screen and (max-width: 1000px) {
    .formSec {}
    .formSec form {
        padding-top: 3.5rem;
    }
    .formSec form table tr {
        display: block;
        padding-bottom: 1.5rem;
    }
    .formSec form table tr:last-child {
        padding-bottom: 0;
    }
    .formSec form table tr th {
        width: 100%;
        padding: 0 0 0.1rem 0;
        border: none;
    }
    .formSec form table tr td {
        width: 100%;
    }
    .confirm .formSec form table tr td {
        padding: 0 0 1.2rem;
    }
    .formSec form table tr td input,
    .formSec form table tr td textarea {
        padding: 0 0 1.2rem;
    }
    .formSec form table tr td textarea {
        min-height: 12rem;
    }
    .formSec form table tr td div.radioList {
        gap: 1rem 4rem;
        padding-top: 0.5rem;
    }
    .formSec form table tr td input[type="radio"] + label {
        padding-right: 0;
        padding-left: 3rem;
    }
    .formSec form table tr td input[type="radio"] + label::before {
        top: 4px;
    }
    .formSec form table tr td input[type="radio"] + label::after {
        top: 9px;
    }
}

/* div.agreeButton */
div.agreeButton {
    display: inline-block;
    padding-top: 4rem;
    margin: 0 auto;
}
div.agreeButton input[type="radio"] {
    display: none;
}
div.agreeButton input[type="radio"] + label {
    cursor: pointer;
    position: relative;
    display: inline-block;
    padding-right: 4rem;
    padding-left: 3rem;
    font-size: 1.6rem;
}
div.agreeButton input[type="checkbox"] {
    display: none;
}
div.agreeButton input[type="checkbox"] + label {
    cursor: pointer;
    position: relative;
    display: inline-block;
    padding-left: 3rem;
    font-size: 1.6rem;
    line-height: 2;
}
div.agreeButton input[type="checkbox"] + label a {
    text-decoration: underline;
    opacity: 1;
    transition: opacity .3s;
}
@media (hover: hover) {
    div.agreeButton input[type="checkbox"] + label a:hover {
        opacity: 0.5;
    }
}
div.agreeButton input[type="checkbox"] + label::before {
    content: '';
    display: block;
    position: absolute;
    top: 0.6rem;
    left: 0;
    width: 1.6rem;
    height: 1.6rem;
    border: 2px solid #209a92;
    background-color: #fff;
}
div.agreeButton input[type="checkbox"] + label::after {
    content: '';
    display: block;
    position: absolute;
    top: -0.1rem;
    left: 0.8rem;
    transform: rotate(45deg);
    width: 0.5rem;
    height: 2rem;
    border-right: 4px solid #209a92;
    border-bottom: 4px solid #209a92;
    opacity: 0;
    transition: opacity 0.2s;
}
div.agreeButton input[type="checkbox"]:checked + label::after {
    opacity: 1;
}
.formSec__agreeText {
    margin-top: 6rem;
    text-align: center;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 2;
}
.text-link:hover {
    opacity: .7;
}
/* ----- div.agreeButton responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    div.agreeButton {
        padding-top: 2.6rem;
    }
    .formSec__agreeText {
        margin-top: 2.6rem;
        text-align: left;
    }
}
/* div.agreeButton ここまで */

/* submitButton */
.contact__buttons,
.confirm__buttons {
    display: flex;
    justify-content: start;
    gap: 3rem;
    width: 100%;
    margin-top: 7rem;
}
/* ----- responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .contact__buttons {
        margin-top: 4rem;
    }
    .confirm__buttons {
        flex-wrap: wrap;
        gap: 2rem;
        margin-top: 4rem;
    }
}
.submitButton {
    box-sizing: border-box;
    pointer-events: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 30rem;
    min-width: 30rem;
    padding: 1rem 1rem 1.2rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
    color: #fff;
    background-color: #333333;
    opacity: 1;
    transition: opacity .3s;
}
main.confirm .submitButton {
    width: 100%;
}
.submitButton:hover,
main.confirm .submitButton:hover {
    opacity: .7;
}
/* agreeButtonにチェックがないとき、送信不可 */
/* .submitButton.disabled {
    border: 1px solid #dddddd;
    color: #888;
    background-color: #FFF;
    opacity: 0.6;
} */
/* returnButton */
.contact.confirm button.returnButton {
    pointer-events: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 30rem;
    min-width: 30rem;
    padding: 0.9rem 1rem 1.1rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
    color: #333;
    border: 1px solid #333;
    opacity: 1;
    transition: background-color .3s, opacity .3s;
}
button.returnButton:hover,
.contact.confirm button.returnButton:hover {
    opacity: .6;
}

/* ----- submitButton responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .submitButton {
        width: 100%;
    }
    .contact.confirm .submitButton {
        width: 100%;
    }
    .submitButton:hover {}
    .submitButton.disabled {}
    .contact.confirm button.returnButton {
        width: 100%;
    }
    button.returnButton:hover {}
}
/* ----- submitButton responsive (1000)　ここまで ----- */
/* :::::::::: confirm :::::::::: */

/* error */
.error__conts {
    padding: 0 0 12rem;
}
.errorTexts {
    font-size: 1.5rem;
    line-height: 2;
    letter-spacing: 0.05em;
}

/* ---------- confirm responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    /* confirmFormSec */
    .confirmFormSec {
        padding: 0 0 7rem;
    }
    .confirmFormSec form {
        padding-top: 3rem;
    }
    /* error */
    .error__conts {
        padding: 0 0 7rem;
    }
}
/* ::::::::: End confirm ::::::::: */
/* ::::::::: completed ::::::::: */
.cmpltdSec {
    padding: 0 0 12rem;
}
.cmpltdSec__inner {
    width: 85%;
    max-width: 130rem;
    padding: 8rem 7% 10rem;
    border-radius: 1.5rem;
    margin: 0 auto;
    background-color: #FFF;
}
.cmpltdSec__title {
    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1.53;
}
.cmpltdSec__text {
    padding-top: 3rem;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 2;
}
.cmpltdSec__linkWrap {
    margin-top: 5rem;
}
.cmpltdSec__link {
    pointer-events: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 1rem 1rem 1.2rem;
    border-radius: 9999px;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
    color: #fff;
    background-color: #209a92;
    opacity: 1;
    transition: opacity .3s;
}
.cmpltdSec__link:hover {
    opacity: 0.7;
}
/* ---------- completed responsive (1000) ---------- */
@media screen and (max-width: 1000px) {
    .cmpltdSec {
        padding: 0 0 7rem;
    }
    .cmpltdSec__inner {
        width: 89%;
        padding: 4rem 6% 6rem;
        border-radius: 1rem;
    }
    .cmpltdSec__title {
        font-size: 2rem;
        line-height: 2;
    }
    .cmpltdSec__text {
        padding-top: 2rem;
    }
    .cmpltdSec__linkWrap {
        margin-top: 4rem;
    }
    .cmpltdSec__link {}
    .cmpltdSec__link::before {}
}
/* :::::::::: End completed :::::::::: */
/* :::::::::::::::::::: End contact :::::::::::::::::::: */
/* :::::::::::::::::::: error404 :::::::::::::::::::: */
.error404 {}
.error404__sec {
    padding: 20.5rem 0 14rem;
}
.error404__button-wrap {
    padding-top: 8rem;
}
/* ----- responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .error404 {}
    .error404__sec {
        padding: 12.5rem 0 7rem;
    }
    .error404__button-wrap {
        padding-top: 4rem;
    }
}
/* :::::::::::::::::::: End error404 :::::::::::::::::::: */