      .js_guide {
        height: 100%;
        height: auto;
        left: 0;
        mix-blend-mode: difference;
        overflow: hidden;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 9999999;
      }
      .js_guide.is_hidden {
        display: none;
      }
      .html_guideDrag .js_guide {
        cursor: move;
        pointer-events: auto;
      }
      html[data-current-modal] .js_guide {
        position: fixed;
      }
      .js_guide_img {
        display: inline-block;
        opacity: 0.3;
        position: relative;
      }
      .js_guide_img:after {
        border: 1px solid #0cf;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        contain: size layout;
        content: "";
        display: block;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      html.device-touch .js_guide_img {
        width: 100%;
      }
      html.device-touch .js_guide_img img {
        height: auto;
        width: 100%;
      }
      .js_guide_ui {
        display: flex;
        flex-direction: column;
        font-size: 10px;
        line-height: 1.5;
        opacity: 0.6;
        position: fixed;
        right: 10px;
        text-align: left;
        top: 50%;
        z-index: 10000000;
      }
      html.is_modalVisible .js_guide_ui {
        margin-right: calc(var(--scrollbar-width));
      }
      .js_guide_ui > :last-child {
        text-align: center;
        width: 30px;
      }
      .js_guide_ui button {
        background: #eee;
        border: 1px solid #ccc;
        border-radius: 2px;
        color: #000;
        cursor: pointer;
        font-family: sans-serif !important;
        margin-bottom: 3px;
        padding: 0 6px;
      }
      .js_guide_ui button:hover {
        background: #000;
        color: #fff;
      }
      .js_guide_ui button.is_alert {
        background: #c80000;
        color: #fff;
        font-weight: 700 !important;
      }
      .js_guide_ui input[type="text"] {
        background: #ccc;
        border-width: 1px;
        font-size: 10px;
        width: 105px;
      }
      .js_guide_ui input[type="text"]:focus {
        background: red;
        color: #fff;
      }
      .js_logger {
        background: rgba(0, 0, 0, 0.5);
        bottom: 0;
        color: #fff;
        pointer-events: none;
        position: fixed;
        right: 0;
        width: 350px;
        z-index: 999999;
      }
      .js_logger_inner {
        font-size: 12px;
        line-height: 1.4;
        padding: 5px;
        white-space: nowrap;
      }
      .js_logger_close {
        bottom: 10px;
        pointer-events: auto;
        position: absolute;
        right: 10px;
      }
      .js_img {
        position: relative;
      }
      .js_img,
      .js_img span {
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        display: block;
      }
      .js_img img {
        object-fit: cover;
      }
      .js_img img,
      .js_img svg {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_img svg {
        contain: size layout;
        overflow: visible;
      }
      @media (any-hover: hover) {
        a .js_img svg,
        button .js_img svg {
          transition: transform 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        a:hover .js_img svg,
        button:hover .js_img svg {
          transform: translateZ(1px);
          transition: transform 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .js_img[data-full],
      .js_img[data-full] img,
      .js_img[data-full] span {
        background-position: 50%;
        background-size: cover;
        height: 100%;
        left: 0;
        padding: 0 !important;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_img[data-full]:not(.is_loadStarted) {
        pointer-events: none;
      }
      .js_img[data-full]:not(.is_loadStarted) img {
        display: none !important;
      }
      .js_img[data-fit] img {
        object-fit: fill;
      }
      .js_img[data-static] img {
        max-width: 100%;
      }
      .js_imgLoader {
        display: flex;
        height: 0;
        position: fixed;
        right: 0;
        top: 0;
        width: 0;
        z-index: 99999;
      }
      .js_imgLoader img {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_imgLoader_chunk {
        position: relative;
      }
      .js_modal {
        bottom: 0;
        display: none;
        height: auto;
        left: 0;
        margin-right: calc(var(--scrollbar-width) * -1);
        position: fixed;
        right: 0;
        top: 0;
        width: auto;
      }
      .js_modal.is_visible {
        display: block;
      }
      html.is_modalVisible .js_modal {
        margin-right: 0;
      }
      .js_modal.is_immerse {
        margin-right: calc(var(--scrollbar-width) * -1) !important;
      }
      .js_modal_scroller {
        height: 100%;
        overflow-y: scroll;
        overscroll-behavior: contain;
        position: relative;
      }
      .js_modal_body {
        display: flex;
      }
      .js_modal_body,
      .js_modal_content {
        min-height: 100%;
        position: relative;
      }
      .js_modal_content {
        width: 100%;
      }
      .js_modal_contentInner {
        overflow: hidden;
        position: relative;
        width: 100%;
      }
      .js_modal_hiddenClose {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        visibility: hidden;
        width: 100%;
      }
      .js_modal.is_show .js_modal_hiddenClose {
        visibility: visible;
      }
      .js_modal_close {
        align-items: center;
        display: flex;
        justify-content: center;
        position: absolute;
        top: calc(var(--a-s, 1px) * 0);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_modal_close {
          height: calc(var(--a-s, 1px) * 95);
          right: var(--scrollbar-width);
          width: calc(var(--a-s, 1px) * 120);
        }
      }
      @media (orientation: landscape) and (any-hover: hover),
        (orientation: portrait) and (min-width: 760px) and (any-hover: hover) {
        .js_modal_close {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .js_modal_close.is_hover,
        .js_modal_close:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_modal_close {
          height: calc(var(--a-s, 1px) * 54);
          right: calc(var(--a-s, 1px) * 0);
          width: calc(var(--a-s, 1px) * 73.5);
        }
      }
      @media (any-hover: hover) {
        .js_modal_close:hover .js_modal_closeInner:after,
        .js_modal_close:hover .js_modal_closeInner:before {
          transition: transform 0.15s cubic-bezier(0.455, 0.03, 0.515, 0.955);
        }
        .js_modal_close:hover .js_modal_closeInner:before {
          transform: rotate(30deg);
        }
        .js_modal_close:hover .js_modal_closeInner:after {
          transform: rotate(-30deg);
        }
      }
      .js_modal_closeInner {
        color: #d9d9d9;
        font-size: 60px;
        position: relative;
      }
      .js_modal_closeInner:after,
      .js_modal_closeInner:before {
        background-color: #d9d9d9;
        content: "";
        position: absolute;
        transition: transform 0.15s cubic-bezier(0.455, 0.03, 0.515, 0.955);
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_modal_closeInner:after,
        .js_modal_closeInner:before {
          height: calc(var(--a-s, 1px) * 4);
          top: calc(var(--a-s, 1px) * 26);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_modal_closeInner:after,
        .js_modal_closeInner:before {
          height: calc(var(--a-s, 1px) * 2);
          top: calc(var(--a-s, 1px) * 14);
        }
      }
      .js_modal_closeInner:before {
        transform: rotate(45deg);
      }
      .js_modal_closeInner:after {
        transform: rotate(-45deg);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_modal_closeInner {
          height: calc(var(--a-s, 1px) * 52);
          width: calc(var(--a-s, 1px) * 52);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_modal_closeInner {
          height: calc(var(--a-s, 1px) * 26);
          width: calc(var(--a-s, 1px) * 26);
        }
      }
      .js_sprite {
        background-position: 0 0;
        position: relative;
      }
      .js_video,
      .js_video_poster,
      .js_video_poster img {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_video_poster img {
        object-fit: cover;
      }
      .js_video_body,
      .js_video_body video {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_video_body video {
        object-fit: cover;
        pointer-events: none;
      }
      .js_video:not([data-sound]).is_init .js_video_body video {
        opacity: 0.01;
      }
      .js_ytMov {
        background: #000;
      }
      .js_ytMov,
      .js_ytMov_body,
      .js_ytMov_cover {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_ytMov_cover {
        align-items: center;
        background: #000;
        display: flex;
        justify-content: center;
      }
      .js_ytMov_coverImage {
        contain: size layout;
        height: 100%;
        left: 0;
        opacity: 0.8;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_ytMov_coverInner {
        align-items: center;
        color: #fff;
        display: flex;
        flex-direction: column;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ytMov_coverInner {
          row-gap: calc(var(--a-s, 1px) * 16);
          width: calc(var(--a-s, 1px) * 80);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ytMov_coverInner {
          row-gap: calc(var(--a-s, 1px) * 13);
          width: calc(var(--a-s, 1px) * 98);
        }
      }
      .js_ytMov_coverIcon {
        align-items: center;
        aspect-ratio: 1/1;
        display: flex;
        justify-content: center;
        position: relative;
        width: 100%;
      }
      .js_ytMov_coverFrame {
        border: 1px solid hsla(0, 0%, 100%, 0.4);
        border-radius: 50%;
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_ytMov_coverFrame:after {
        background: currentColor;
        content: "";
        display: block;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ytMov_coverFrame:after {
          height: 2px;
          inset: auto auto -1px calc(50% - var(--a-s, 1px) * 9);
          width: calc(var(--a-s, 1px) * 18);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ytMov_coverFrame:after {
          height: 1px;
          inset: auto auto -1px calc(50% - var(--a-s, 1px) * 9.5);
          width: calc(var(--a-s, 1px) * 19);
        }
      }
      .js_ytMov_coverArw {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ytMov_coverArw {
          right: -1px;
          width: calc(var(--a-s, 1px) * 18);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ytMov_coverArw {
          width: calc(var(--a-s, 1px) * 19);
        }
      }
      .js_ytMov_coverArw svg {
        fill: currentColor;
      }
      html:not(.html_typoMode) .js_typo.__justify.__justifyInitial {
        display: block;
        overflow: hidden;
        white-space: nowrap;
      }
      .js_typo.__overflowLeft {
        margin-left: -0.5em;
        padding-left: 0.5em;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_typo span {
          margin-left: var(--p, 0);
        }
        html.html_typoMode:not(.is_uiHidden) .js_typo span.__breakPc {
          color: red !important;
        }
        .js_typo span.__breakPc:before {
          content: "";
          display: block;
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_typo span {
          margin-left: var(--s, 0);
        }
        html.html_typoMode:not(.is_uiHidden) .js_typo span.__breakSp {
          color: red !important;
        }
        .js_typo span.__breakSp:before {
          content: "";
          display: block;
          width: 100%;
        }
      }
      html.html_typoMode .js_typo {
        pointer-events: auto !important;
      }
      .js_typo_line {
        display: flex;
        position: relative;
      }
      .js_typo_line:not(.__last) {
        justify-content: space-between;
      }
      .js_typo_line > span {
        display: inline;
      }
      .js_typo_line > span:before {
        display: none !important;
      }
      .js_page.is_notLanding {
        opacity: 0;
      }
      @starting-style {
        .js_page.is_notLanding {
          opacity: 0;
        }
      }
      .js_page.is_show {
        transition: opacity 0.5s ease-in-out;
      }
      .js_page.is_hide {
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        transition: opacity 0.1s ease-out;
        width: 100%;
      }
      .js_page_section {
        position: relative;
      }
      .js_page_section[data-page-sticky].is_hidden {
        visibility: hidden;
      }
      .js_page_sectionCover {
        background: #333;
        bottom: calc(var(--a-s, 1px) * -200);
        height: calc(var(--vh-max, 1vh) * 100 + var(--a-s, 1px) * 200);
        left: 0;
        opacity: 0;
        pointer-events: none;
        position: absolute;
        transform-origin: top;
        width: 100%;
        z-index: 1;
      }
      .js_page_section[data-page-sticky][data-page-kv] .js_page_sectionCover {
        bottom: 0;
        height: calc(var(--vh-max, 1vh) * 100);
        z-index: 2;
      }
      .js_page_section[data-page-kv] .js_page_sectionCover {
        bottom: calc(var(--a-s, 1px) * -100);
        height: calc(var(--vh-max, 1vh) * 100 + var(--a-s, 1px) * 100);
        z-index: 2;
      }
      html[data-template="rockbar-index"] .js_page_sectionCover {
        background: #000;
      }
      .is_first .js_page_sectionInner {
        background: #f6f3e7;
      }
      .js_page_section[data-page-sticky] .js_page_sectionInner,
      .js_page_section[data-page-sticky][data-page-kv] .js_page_sectionInner {
        margin-bottom: calc(var(--vh-max, 1vh) * -100);
      }
      .js_page_section[data-page-sticky] .js_page_sectionInner:after,
      .js_page_section[data-page-sticky][data-page-kv]
        .js_page_sectionInner:after {
        content: "";
        display: block;
        height: calc(var(--vh-max, 1vh) * 100);
      }
      .js_page_sectionBody {
        position: sticky;
      }
      .js_page_section.is_min .js_page_sectionBody:after {
        background: var(--COLOR_BG);
        bottom: calc(var(--vh-max, 1vh) * -50);
        content: "";
        height: calc(var(--vh-max, 1vh) * 50);
        left: 0;
        position: absolute;
        width: 100%;
      }
      .ct3 .js_page_section.is_min .js_page_sectionBody:after,
      .js_mediaCenterDetail .js_page_section.is_min .js_page_sectionBody:after {
        background: #f6f3e7 !important;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .spi_stickySection:not(:last-child) .js_page_sectionBody {
          padding-bottom: calc(var(--vh-max, 1vh) * 20);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_page_nav {
          opacity: 0;
          transition: opacity 0.5s ease-in-out;
        }
        .js_page_nav.is_visible {
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_page_nav {
          overflow: hidden;
          position: absolute;
          transform: translateY(100%);
          transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
        }
        .js_page_nav.is_visible {
          transform: translateY(0);
        }
        html[data-current-modal="story"] .js_page_nav.is_visible {
          transform: translateY(100%);
        }
      }
      .js_page_title {
        position: sticky;
      }
      .js_page_titleInner {
        transition: font-size 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94),
          line-height 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94),
          color 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      }
      .is_transformed .js_page_titleInner {
        transition: font-size 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94),
          line-height color 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94)
            cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.4s;
      }
      .js_page_titleText {
        transform-origin: bottom;
        transition: color 0.3s cubic-bezier(0.77, 0, 0.175, 1),
          opacity 0.3s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .is_sticky .js_page_titleText {
        color: #333;
      }
      .js_page_more {
        display: flex;
        justify-content: center;
        left: 50%;
        opacity: 0;
        position: fixed;
        translate: 0 300%;
        width: 0;
        z-index: 4;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_page_more {
          bottom: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_page_more {
          bottom: calc(var(--a-s, 1px) * 65);
        }
      }
      .js_page_more:not(.is_visible) {
        pointer-events: none;
        visibility: hidden;
      }
      .js_page_more.is_visible {
        transition: translate 0.6s cubic-bezier(0.165, 0.84, 0.44, 1),
          opacity 0.3s ease-in-out;
        translate: 0 0;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_page:not(.is_navVisible) .js_page_more.is_visible {
          translate: 0 calc(var(--a-s, 1px) * 44);
        }
      }
      .js_page_more.is_hidden {
        opacity: 0;
        transition: translate 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53),
          opacity 0.3s ease-out, visibility 0.3s linear;
        translate: 0 -200%;
      }
      .js_page_more.is_hidden.__up {
        translate: 0 200%;
      }
      .js_page_moreLink {
        align-items: center;
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
        background-color: hsla(47, 19%, 82%, 0.95);
        color: #666;
        display: flex;
        flex-shrink: 0;
        position: relative;
        white-space: nowrap;
      }
      html[data-template="spa-index"] .js_page_moreLink,
      html[data-template="spa-menu"] .js_page_moreLink {
        background-color: hsla(60, 17%, 80%, 0.95);
      }
      html[data-template="rockbar-detail"] .js_page_moreLink,
      html[data-template="rockbar-index"] .js_page_moreLink {
        background-color: rgba(77, 75, 73, 0.95);
        color: #ccc;
      }
      @media (any-hover: hover) {
        .js_page_moreLink {
          transition: background-color 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .js_page_moreLink:hover {
          background-color: hsla(48, 10%, 72%, 0.95);
          transition: background-color 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
        html[data-template="rockbar-detail"] .js_page_moreLink:hover,
        html[data-template="rockbar-index"] .js_page_moreLink:hover {
          background-color: rgba(51, 51, 51, 0.8);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_page_moreLink {
          border-radius: calc(var(--a-s, 1px) * 32);
          height: calc(var(--a-s, 1px) * 64);
          padding-inline: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_page_moreLink {
          border-radius: calc(var(--a-s, 1px) * 21);
          height: calc(var(--a-s, 1px) * 42);
          padding-inline: calc(var(--a-s, 1px) * 24);
        }
      }
      html.is_modalVisible .js_page_moreLink {
        translate: calc(var(--scrollbar-width) * -0.5) 0;
      }
      .js_root {
        min-height: 100vh;
      }
      html[data-name="404"] .js_root {
        min-height: auto;
      }
      .js_ai {
        color: #fff;
        --offset: 0;
      }
      .js_ai:not(.is_visible) {
        display: none;
      }
      .js_ai_buttonSize {
        bottom: 0;
        position: fixed;
        right: 0;
        visibility: hidden;
        width: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ai_buttonSize {
          height: calc(var(--a-s, 1px) * 64);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ai_buttonSize {
          height: calc(var(--a-s, 1px) * 56);
        }
      }
      .js_ai_button {
        opacity: 0;
        position: fixed;
        transform: translate(calc(var(--a-s, 1px) * -10), -10px) scale(0);
        transform-origin: right bottom;
        transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1),
          opacity 0.5s ease-in-out;
      }
      .js_ai_button * {
        pointer-events: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ai_button {
          bottom: calc(var(--o-s, 1px) * 64);
          height: calc(var(--a-s, 1px) * 64);
          right: calc(var(--o-s, 1px) * 47);
          width: calc(var(--a-s, 1px) * 64);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ai_button {
          bottom: calc(var(--o-s, 1px) * 14);
          height: calc(var(--a-s, 1px) * 56);
          right: calc(var(--o-s, 1px) * 14);
          width: calc(var(--a-s, 1px) * 56);
        }
      }
      html.is_modalVisible .js_ai_button {
        margin-right: calc(var(--scrollbar-width));
      }
      .js_ai_button.is_show {
        transform: translateY(var(--offset)) scale(1);
        transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1),
          opacity 0.2s ease-in-out;
      }
      html.is_modalOpened .js_ai_button.is_show {
        transform: translate(0) scale(1);
      }
      .js_ai_buttonTextSrc {
        overflow: hidden;
        position: absolute;
        visibility: hidden;
      }
      .js_ai_buttonBg {
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
        background-color: rgba(101, 90, 78, 0.95);
        bottom: 0;
        display: block;
        height: 100%;
        position: absolute;
        right: 0;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ai_buttonBg {
          border-radius: calc(var(--a-s, 1px) * 15) calc(var(--a-s, 1px) * 15)
            calc(var(--a-s, 1px) * 2) calc(var(--a-s, 1px) * 15);
          -webkit-filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.15));
          filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.15));
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ai_buttonBg {
          border-radius: calc(var(--a-s, 1px) * 20) calc(var(--a-s, 1px) * 20)
            calc(var(--a-s, 1px) * 2) calc(var(--a-s, 1px) * 20);
          -webkit-filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.15));
          filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.15));
        }
      }
      @media (any-hover: hover) {
        .js_ai_buttonBg {
          transition: background-color 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .js_ai_button:hover .js_ai_buttonBg {
          background-color: rgba(89, 80, 69, 0.95);
          transition: background-color 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .js_ai_buttonInner {
        pointer-events: auto;
      }
      .js_ai_buttonInner,
      .js_ai_buttonTextItem {
        display: block;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
      }
      .js_ai_buttonTextItemInner {
        align-items: center;
        display: flex;
        height: 100%;
        position: relative;
        white-space: nowrap;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ai_buttonTextItemInner {
          margin-right: calc(var(--a-s, 1px) * -10);
          padding-left: calc(var(--a-s, 1px) * 24);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ai_buttonTextItemInner {
          margin-right: calc(var(--a-s, 1px) * -10);
          padding-left: calc(var(--a-s, 1px) * 20);
        }
      }
      .js_ai_buttonTextItemInner ._c {
        opacity: 0;
        transition: opacity 0.1s ease-out;
      }
      .js_ai_buttonTextItem.is_show .js_ai_buttonTextItemInner ._c {
        transition: opacity 0.2s ease-out;
      }
      .js_ai_buttonTextItem.is_direct .js_ai_buttonTextItemInner ._c {
        transition: none !important;
      }
      .js_ai_buttonIconWrap {
        height: 100%;
        position: absolute;
        right: 0;
        top: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ai_buttonIconWrap {
          width: calc(var(--a-s, 1px) * 64);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ai_buttonIconWrap {
          width: calc(var(--a-s, 1px) * 56);
        }
      }
      .js_ai_buttonIcon {
        align-items: center;
        contain: size layout;
        display: flex;
        height: 100%;
        justify-content: center;
        left: 0;
        position: absolute;
        top: 0;
        transform: scale(1);
        transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1);
        width: 100%;
      }
      .js_ai.is_opened .js_ai_buttonIcon.__dots,
      .js_ai:not(.is_opened) .js_ai_buttonIcon.__close {
        transform: scale(0);
      }
      .js_ai_buttonDots {
        display: flex;
        height: calc(var(--a-s, 1px) * 3);
        justify-content: space-between;
        position: relative;
        width: calc(var(--a-s, 1px) * 17);
      }
      .js_ai_buttonDots i {
        background-color: #fff;
        border-radius: 50%;
        display: block;
        height: calc(var(--a-s, 1px) * 3);
        width: calc(var(--a-s, 1px) * 3);
      }
      .js_ai.is_visible .js_ai_buttonDots i {
        animation: js_ai_buttonDots 1.5s cubic-bezier(0.455, 0.03, 0.515, 0.955)
          0ms infinite;
      }
      .js_ai.is_visible .js_ai_buttonDots i:nth-child(2) {
        animation-delay: 0.24s;
      }
      .js_ai.is_visible .js_ai_buttonDots i:nth-child(3) {
        animation-delay: 0.48s;
      }
      @keyframes js_ai_buttonDots {
        0% {
        }
        50% {
          opacity: 0.4;
        }
        to {
        }
      }
      .js_ai_frame {
        opacity: 0;
        overscroll-behavior: contain;
        position: fixed;
        transform: translateY(calc(var(--o-s, 1px) * 20));
        transition: transform 0.1s cubic-bezier(0.55, 0.085, 0.68, 0.53),
          opacity 0.1s ease-out, visibility 0.1s;
        visibility: hidden;
      }
      .js_ai.is_opened .js_ai_frame {
        transform: translate(0);
        transition: transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1),
          opacity 0.2s ease-in-out, visibility 0ms;
        visibility: visible;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ai_frame {
          bottom: calc(var(--o-s, 1px) * 133);
          height: 75%;
          max-height: min(790px, 100vh - calc(var(--a-s, 1px) * 149));
          right: 0;
          width: 50%;
        }
        .js_ai.is_fullscreen .js_ai_frame {
          height: 100%;
          max-height: 999999999px !important;
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ai_frame {
          height: 100%;
          left: 0;
          top: 0;
          width: 100%;
        }
      }
      html.is_modalVisible .js_ai_frame {
        margin-right: calc(var(--scrollbar-width));
      }
      .js_ai_frameBody {
        background: #f6f3e7;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ai_frameBody {
          border: 1px solid rgba(0, 0, 0, 0.2);
          border-radius: calc(var(--a-s, 1px) * 16);
          -webkit-box-shadow: 0 1px 60px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 60px 0 rgba(0, 0, 0, 0.2);
          height: 100%;
          left: 0;
          position: absolute;
          right: calc(var(--o-s, 1px) * 47);
          top: 0;
          width: auto;
        }
        .js_ai.is_fullscreen .js_ai_frameBody {
          border: none;
          border-radius: 0;
          height: 100%;
          right: 0;
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ai_frameBody {
          height: 100%;
          position: relative;
          width: 100%;
        }
      }
      .js_ai_frameBody iframe {
        border-radius: calc(var(--a-s, 1px) * 16);
        contain: size layout;
        height: 100%;
        left: 0;
        overscroll-behavior: contain;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_header {
        align-items: center;
        display: block;
        justify-content: center;
        left: 0;
        top: 0;
        white-space: nowrap;
        width: 100%;
        --text-color: #333;
        --transition: color 400ms $easeInOutSine;
      }
      html[data-template="all-hotels"] .js_header,
      html[data-template="all-hotels"] .js_header.is_outKv,
      html[data-template="bali"] .js_header,
      html[data-template="bali"] .js_header.is_outKv,
      html[data-template="category1"] .js_header,
      html[data-template="category1"] .js_header.is_outKv,
      html[data-template="category2"] .js_header,
      html[data-template="category2"] .js_header.is_outKv,
      html[data-template="course-index"] .js_header,
      html[data-template="course-index"] .js_header.is_outKv,
      html[data-template="hotel"] .js_header,
      html[data-template="hotel"] .js_header.is_outKv,
      html[data-template="rockbar-index"] .js_header,
      html[data-template="rockbar-index"] .js_header.is_outKv,
      html[data-template="room-index"] .js_header,
      html[data-template="room-index"] .js_header.is_outKv,
      html[data-template="spa-index"] .js_header,
      html[data-template="spa-index"] .js_header.is_outKv {
        --text-color: #fff;
      }
      html[data-template="all-hotels"]
        .js_header.is_outKv
        #main_navSearch_search-button,
      html[data-template="all-hotels"] .js_header.is_outKv #search-button,
      html[data-template="all-hotels"]
        .js_header.is_outKv
        .js_header
        .js_header_search,
      html[data-template="all-hotels"] .js_header.is_outKv .js_header_reserve,
      html[data-template="bali"]
        .js_header.is_outKv
        #main_navSearch_search-button,
      html[data-template="bali"] .js_header.is_outKv #search-button,
      html[data-template="bali"]
        .js_header.is_outKv
        .js_header
        .js_header_search,
      html[data-template="bali"] .js_header.is_outKv .js_header_reserve,
      html[data-template="category1"]
        .js_header.is_outKv
        #main_navSearch_search-button,
      html[data-template="category1"] .js_header.is_outKv #search-button,
      html[data-template="category1"]
        .js_header.is_outKv
        .js_header
        .js_header_search,
      html[data-template="category1"] .js_header.is_outKv .js_header_reserve,
      html[data-template="category2"]
        .js_header.is_outKv
        #main_navSearch_search-button,
      html[data-template="category2"] .js_header.is_outKv #search-button,
      html[data-template="category2"]
        .js_header.is_outKv
        .js_header
        .js_header_search,
      html[data-template="category2"] .js_header.is_outKv .js_header_reserve,
      html[data-template="course-index"]
        .js_header.is_outKv
        #main_navSearch_search-button,
      html[data-template="course-index"] .js_header.is_outKv #search-button,
      html[data-template="course-index"]
        .js_header.is_outKv
        .js_header
        .js_header_search,
      html[data-template="course-index"] .js_header.is_outKv .js_header_reserve,
      html[data-template="hotel"]
        .js_header.is_outKv
        #main_navSearch_search-button,
      html[data-template="hotel"] .js_header.is_outKv #search-button,
      html[data-template="hotel"]
        .js_header.is_outKv
        .js_header
        .js_header_search,
      html[data-template="hotel"] .js_header.is_outKv .js_header_reserve,
      html[data-template="rockbar-index"]
        .js_header.is_outKv
        #main_navSearch_search-button,
      html[data-template="rockbar-index"] .js_header.is_outKv #search-button,
      html[data-template="rockbar-index"]
        .js_header.is_outKv
        .js_header
        .js_header_search,
      html[data-template="rockbar-index"]
        .js_header.is_outKv
        .js_header_reserve,
      html[data-template="room-index"]
        .js_header.is_outKv
        #main_navSearch_search-button,
      html[data-template="room-index"] .js_header.is_outKv #search-button,
      html[data-template="room-index"]
        .js_header.is_outKv
        .js_header
        .js_header_search,
      html[data-template="room-index"] .js_header.is_outKv .js_header_reserve,
      html[data-template="spa-index"]
        .js_header.is_outKv
        #main_navSearch_search-button,
      html[data-template="spa-index"] .js_header.is_outKv #search-button,
      html[data-template="spa-index"]
        .js_header.is_outKv
        .js_header
        .js_header_search,
      html[data-template="spa-index"] .js_header.is_outKv .js_header_reserve {
        mix-blend-mode: difference;
      }
      html[data-template="all-hotels"] .js_header.is_outKv.is_pageLeft,
      html[data-template="bali"] .js_header.is_outKv.is_pageLeft,
      html[data-template="category1"] .js_header.is_outKv.is_pageLeft,
      html[data-template="category2"] .js_header.is_outKv.is_pageLeft,
      html[data-template="course-index"] .js_header.is_outKv.is_pageLeft,
      html[data-template="hotel"] .js_header.is_outKv.is_pageLeft,
      html[data-template="rockbar-index"] .js_header.is_outKv.is_pageLeft,
      html[data-template="room-index"] .js_header.is_outKv.is_pageLeft,
      html[data-template="spa-index"] .js_header.is_outKv.is_pageLeft {
        --text-color: #333;
      }
      html[data-template="all-hotels"]
        .js_header.is_outKv.is_pageLeft
        #main_navSearch_search-button,
      html[data-template="all-hotels"]
        .js_header.is_outKv.is_pageLeft
        #search-button,
      html[data-template="all-hotels"]
        .js_header.is_outKv.is_pageLeft
        .js_header
        .js_header_search,
      html[data-template="all-hotels"]
        .js_header.is_outKv.is_pageLeft
        .js_header_reserve,
      html[data-template="bali"]
        .js_header.is_outKv.is_pageLeft
        #main_navSearch_search-button,
      html[data-template="bali"] .js_header.is_outKv.is_pageLeft #search-button,
      html[data-template="bali"]
        .js_header.is_outKv.is_pageLeft
        .js_header
        .js_header_search,
      html[data-template="bali"]
        .js_header.is_outKv.is_pageLeft
        .js_header_reserve,
      html[data-template="category1"]
        .js_header.is_outKv.is_pageLeft
        #main_navSearch_search-button,
      html[data-template="category1"]
        .js_header.is_outKv.is_pageLeft
        #search-button,
      html[data-template="category1"]
        .js_header.is_outKv.is_pageLeft
        .js_header
        .js_header_search,
      html[data-template="category1"]
        .js_header.is_outKv.is_pageLeft
        .js_header_reserve,
      html[data-template="category2"]
        .js_header.is_outKv.is_pageLeft
        #main_navSearch_search-button,
      html[data-template="category2"]
        .js_header.is_outKv.is_pageLeft
        #search-button,
      html[data-template="category2"]
        .js_header.is_outKv.is_pageLeft
        .js_header
        .js_header_search,
      html[data-template="category2"]
        .js_header.is_outKv.is_pageLeft
        .js_header_reserve,
      html[data-template="course-index"]
        .js_header.is_outKv.is_pageLeft
        #main_navSearch_search-button,
      html[data-template="course-index"]
        .js_header.is_outKv.is_pageLeft
        #search-button,
      html[data-template="course-index"]
        .js_header.is_outKv.is_pageLeft
        .js_header
        .js_header_search,
      html[data-template="course-index"]
        .js_header.is_outKv.is_pageLeft
        .js_header_reserve,
      html[data-template="hotel"]
        .js_header.is_outKv.is_pageLeft
        #main_navSearch_search-button,
      html[data-template="hotel"]
        .js_header.is_outKv.is_pageLeft
        #search-button,
      html[data-template="hotel"]
        .js_header.is_outKv.is_pageLeft
        .js_header
        .js_header_search,
      html[data-template="hotel"]
        .js_header.is_outKv.is_pageLeft
        .js_header_reserve,
      html[data-template="rockbar-index"]
        .js_header.is_outKv.is_pageLeft
        #main_navSearch_search-button,
      html[data-template="rockbar-index"]
        .js_header.is_outKv.is_pageLeft
        #search-button,
      html[data-template="rockbar-index"]
        .js_header.is_outKv.is_pageLeft
        .js_header
        .js_header_search,
      html[data-template="rockbar-index"]
        .js_header.is_outKv.is_pageLeft
        .js_header_reserve,
      html[data-template="room-index"]
        .js_header.is_outKv.is_pageLeft
        #main_navSearch_search-button,
      html[data-template="room-index"]
        .js_header.is_outKv.is_pageLeft
        #search-button,
      html[data-template="room-index"]
        .js_header.is_outKv.is_pageLeft
        .js_header
        .js_header_search,
      html[data-template="room-index"]
        .js_header.is_outKv.is_pageLeft
        .js_header_reserve,
      html[data-template="spa-index"]
        .js_header.is_outKv.is_pageLeft
        #main_navSearch_search-button,
      html[data-template="spa-index"]
        .js_header.is_outKv.is_pageLeft
        #search-button,
      html[data-template="spa-index"]
        .js_header.is_outKv.is_pageLeft
        .js_header
        .js_header_search,
      html[data-template="spa-index"]
        .js_header.is_outKv.is_pageLeft
        .js_header_reserve {
        mix-blend-mode: normal;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        html[data-template="map"] .js_header {
          -webkit-backdrop-filter: none;
          backdrop-filter: none;
          background: none;
        }
      }
      html[data-template="map"] .js_header_logo,
      html[data-template="map"] .js_header_naviWrap,
      html[data-template="map"] .js_header_reserve {
        transform: translate(0);
        transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1) 0ms;
      }
      html[data-template="map"].html_hideHeader .js_header_logo,
      html[data-template="map"].html_hideHeader .js_header_naviWrap,
      html[data-template="map"].html_hideHeader .js_header_reserve {
        transform: translateY(-110%);
        transition: transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        html[data-template="map"].html_hideHeader .js_header_logo,
        html[data-template="map"].html_hideHeader .js_header_naviWrap,
        html[data-template="map"].html_hideHeader .js_header_reserve {
          transform: translateY(-150%);
        }
      }
      html[data-template="all-hotels"] .js_header_logo path,
      html[data-template="bali"] .js_header_logo path,
      html[data-template="category1"] .js_header_logo path,
      html[data-template="category2"] .js_header_logo path,
      html[data-template="course-index"] .js_header_logo path,
      html[data-template="hotel"] .js_header_logo path,
      html[data-template="rockbar-detail"] .js_header_logo path,
      html[data-template="rockbar-index"] .js_header_logo path,
      html[data-template="room-index"] .js_header_logo path,
      html[data-template="spa-index"] .js_header_logo path {
        fill: #fff;
      }
      html[data-template="all-hotels"] .js_header_naviWrap,
      html[data-template="bali"] .js_header_naviWrap,
      html[data-template="category1"] .js_header_naviWrap,
      html[data-template="category2"] .js_header_naviWrap,
      html[data-template="course-index"] .js_header_naviWrap,
      html[data-template="hotel"] .js_header_naviWrap,
      html[data-template="rockbar-detail"] .js_header_naviWrap,
      html[data-template="rockbar-index"] .js_header_naviWrap,
      html[data-template="room-index"] .js_header_naviWrap,
      html[data-template="spa-index"] .js_header_naviWrap {
        color: #fff;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        html[data-template="all-hotels"] .js_header_naviWrap:before,
        html[data-template="bali"] .js_header_naviWrap:before,
        html[data-template="category1"] .js_header_naviWrap:before,
        html[data-template="category2"] .js_header_naviWrap:before,
        html[data-template="course-index"] .js_header_naviWrap:before,
        html[data-template="hotel"] .js_header_naviWrap:before,
        html[data-template="rockbar-detail"] .js_header_naviWrap:before,
        html[data-template="rockbar-index"] .js_header_naviWrap:before,
        html[data-template="room-index"] .js_header_naviWrap:before,
        html[data-template="spa-index"] .js_header_naviWrap:before {
          background-color: #fff;
          opacity: 0.6;
        }
      }
      html[data-template="all-hotels"] .js_header_naviSelector:before,
      html[data-template="bali"] .js_header_naviSelector:before,
      html[data-template="category1"] .js_header_naviSelector:before,
      html[data-template="category2"] .js_header_naviSelector:before,
      html[data-template="course-index"] .js_header_naviSelector:before,
      html[data-template="hotel"] .js_header_naviSelector:before,
      html[data-template="rockbar-detail"] .js_header_naviSelector:before,
      html[data-template="rockbar-index"] .js_header_naviSelector:before,
      html[data-template="room-index"] .js_header_naviSelector:before,
      html[data-template="spa-index"] .js_header_naviSelector:before {
        background-color: #fff;
      }
      html[data-template="all-hotels"] .js_header_reserve,
      html[data-template="bali"] .js_header_reserve,
      html[data-template="category1"] .js_header_reserve,
      html[data-template="category2"] .js_header_reserve,
      html[data-template="course-index"] .js_header_reserve,
      html[data-template="hotel"] .js_header_reserve,
      html[data-template="rockbar-detail"] .js_header_reserve,
      html[data-template="rockbar-index"] .js_header_reserve,
      html[data-template="room-index"] .js_header_reserve,
      html[data-template="spa-index"] .js_header_reserve {
        color: #fff;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        html[data-template="all-hotels"] .js_header_reserve,
        html[data-template="bali"] .js_header_reserve,
        html[data-template="category1"] .js_header_reserve,
        html[data-template="category2"] .js_header_reserve,
        html[data-template="course-index"] .js_header_reserve,
        html[data-template="hotel"] .js_header_reserve,
        html[data-template="rockbar-detail"] .js_header_reserve,
        html[data-template="rockbar-index"] .js_header_reserve,
        html[data-template="room-index"] .js_header_reserve,
        html[data-template="spa-index"] .js_header_reserve {
          transition: color 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        }
        html[data-template="all-hotels"] .js_header_reserve:before,
        html[data-template="bali"] .js_header_reserve:before,
        html[data-template="category1"] .js_header_reserve:before,
        html[data-template="category2"] .js_header_reserve:before,
        html[data-template="course-index"] .js_header_reserve:before,
        html[data-template="hotel"] .js_header_reserve:before,
        html[data-template="rockbar-detail"] .js_header_reserve:before,
        html[data-template="rockbar-index"] .js_header_reserve:before,
        html[data-template="room-index"] .js_header_reserve:before,
        html[data-template="spa-index"] .js_header_reserve:before {
          opacity: 0.4;
        }
      }
      html[data-template="all-hotels"] #main_navSearch_search-button,
      html[data-template="all-hotels"] #search-button,
      html[data-template="all-hotels"] .js_header .js_header_search,
      html[data-template="bali"] #main_navSearch_search-button,
      html[data-template="bali"] #search-button,
      html[data-template="bali"] .js_header .js_header_search,
      html[data-template="category1"] #main_navSearch_search-button,
      html[data-template="category1"] #search-button,
      html[data-template="category1"] .js_header .js_header_search,
      html[data-template="category2"] #main_navSearch_search-button,
      html[data-template="category2"] #search-button,
      html[data-template="category2"] .js_header .js_header_search,
      html[data-template="course-index"] #main_navSearch_search-button,
      html[data-template="course-index"] #search-button,
      html[data-template="course-index"] .js_header .js_header_search,
      html[data-template="hotel"] #main_navSearch_search-button,
      html[data-template="hotel"] #search-button,
      html[data-template="hotel"] .js_header .js_header_search,
      html[data-template="rockbar-detail"] #main_navSearch_search-button,
      html[data-template="rockbar-detail"] #search-button,
      html[data-template="rockbar-detail"] .js_header .js_header_search,
      html[data-template="rockbar-index"] #main_navSearch_search-button,
      html[data-template="rockbar-index"] #search-button,
      html[data-template="rockbar-index"] .js_header .js_header_search,
      html[data-template="room-index"] #main_navSearch_search-button,
      html[data-template="room-index"] #search-button,
      html[data-template="room-index"] .js_header .js_header_search,
      html[data-template="spa-index"] #main_navSearch_search-button,
      html[data-template="spa-index"] #search-button,
      html[data-template="spa-index"] .js_header .js_header_search {
        color: #fff;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        html[data-template="all-hotels"] #main_navSearch_search-button,
        html[data-template="all-hotels"] #search-button,
        html[data-template="all-hotels"] .js_header .js_header_search,
        html[data-template="bali"] #main_navSearch_search-button,
        html[data-template="bali"] #search-button,
        html[data-template="bali"] .js_header .js_header_search,
        html[data-template="category1"] #main_navSearch_search-button,
        html[data-template="category1"] #search-button,
        html[data-template="category1"] .js_header .js_header_search,
        html[data-template="category2"] #main_navSearch_search-button,
        html[data-template="category2"] #search-button,
        html[data-template="category2"] .js_header .js_header_search,
        html[data-template="course-index"] #main_navSearch_search-button,
        html[data-template="course-index"] #search-button,
        html[data-template="course-index"] .js_header .js_header_search,
        html[data-template="hotel"] #main_navSearch_search-button,
        html[data-template="hotel"] #search-button,
        html[data-template="hotel"] .js_header .js_header_search,
        html[data-template="rockbar-detail"] #main_navSearch_search-button,
        html[data-template="rockbar-detail"] #search-button,
        html[data-template="rockbar-detail"] .js_header .js_header_search,
        html[data-template="rockbar-index"] #main_navSearch_search-button,
        html[data-template="rockbar-index"] #search-button,
        html[data-template="rockbar-index"] .js_header .js_header_search,
        html[data-template="room-index"] #main_navSearch_search-button,
        html[data-template="room-index"] #search-button,
        html[data-template="room-index"] .js_header .js_header_search,
        html[data-template="spa-index"] #main_navSearch_search-button,
        html[data-template="spa-index"] #search-button,
        html[data-template="spa-index"] .js_header .js_header_search {
          transition: color 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        }
      }
      html[data-template="all-hotels"] #main_navSearch_search-button svg path,
      html[data-template="all-hotels"] #search-button svg path,
      html[data-template="all-hotels"] .js_header .js_header_search svg path,
      html[data-template="bali"] #main_navSearch_search-button svg path,
      html[data-template="bali"] #search-button svg path,
      html[data-template="bali"] .js_header .js_header_search svg path,
      html[data-template="category1"] #main_navSearch_search-button svg path,
      html[data-template="category1"] #search-button svg path,
      html[data-template="category1"] .js_header .js_header_search svg path,
      html[data-template="category2"] #main_navSearch_search-button svg path,
      html[data-template="category2"] #search-button svg path,
      html[data-template="category2"] .js_header .js_header_search svg path,
      html[data-template="course-index"] #main_navSearch_search-button svg path,
      html[data-template="course-index"] #search-button svg path,
      html[data-template="course-index"] .js_header .js_header_search svg path,
      html[data-template="hotel"] #main_navSearch_search-button svg path,
      html[data-template="hotel"] #search-button svg path,
      html[data-template="hotel"] .js_header .js_header_search svg path,
      html[data-template="rockbar-detail"]
        #main_navSearch_search-button
        svg
        path,
      html[data-template="rockbar-detail"] #search-button svg path,
      html[data-template="rockbar-detail"]
        .js_header
        .js_header_search
        svg
        path,
      html[data-template="rockbar-index"]
        #main_navSearch_search-button
        svg
        path,
      html[data-template="rockbar-index"] #search-button svg path,
      html[data-template="rockbar-index"] .js_header .js_header_search svg path,
      html[data-template="room-index"] #main_navSearch_search-button svg path,
      html[data-template="room-index"] #search-button svg path,
      html[data-template="room-index"] .js_header .js_header_search svg path,
      html[data-template="spa-index"] #main_navSearch_search-button svg path,
      html[data-template="spa-index"] #search-button svg path,
      html[data-template="spa-index"] .js_header .js_header_search svg path {
        fill: #fff;
      }
      html[data-template="all-hotels"] .js_header_reserveBarBody,
      html[data-template="bali"] .js_header_reserveBarBody,
      html[data-template="category1"] .js_header_reserveBarBody,
      html[data-template="category2"] .js_header_reserveBarBody,
      html[data-template="course-index"] .js_header_reserveBarBody,
      html[data-template="hotel"] .js_header_reserveBarBody,
      html[data-template="rockbar-detail"] .js_header_reserveBarBody,
      html[data-template="rockbar-index"] .js_header_reserveBarBody,
      html[data-template="room-index"] .js_header_reserveBarBody,
      html[data-template="spa-index"] .js_header_reserveBarBody {
        background-color: #fff;
        opacity: 0.5;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header.is_outKv
          html[data-template="all-hotels"]
          .js_header_reserveBarBody,
        .js_header.is_outKv
          html[data-template="bali"]
          .js_header_reserveBarBody,
        .js_header.is_outKv
          html[data-template="category1"]
          .js_header_reserveBarBody,
        .js_header.is_outKv
          html[data-template="category2"]
          .js_header_reserveBarBody,
        .js_header.is_outKv
          html[data-template="course-index"]
          .js_header_reserveBarBody,
        .js_header.is_outKv
          html[data-template="hotel"]
          .js_header_reserveBarBody,
        .js_header.is_outKv
          html[data-template="rockbar-detail"]
          .js_header_reserveBarBody,
        .js_header.is_outKv
          html[data-template="rockbar-index"]
          .js_header_reserveBarBody,
        .js_header.is_outKv
          html[data-template="room-index"]
          .js_header_reserveBarBody,
        .js_header.is_outKv
          html[data-template="spa-index"]
          .js_header_reserveBarBody {
          opacity: 0.4;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        html[data-template="all-hotels"] .js_header_naviTitle:before,
        html[data-template="bali"] .js_header_naviTitle:before,
        html[data-template="category1"] .js_header_naviTitle:before,
        html[data-template="category2"] .js_header_naviTitle:before,
        html[data-template="course-index"] .js_header_naviTitle:before,
        html[data-template="hotel"] .js_header_naviTitle:before,
        html[data-template="rockbar-detail"] .js_header_naviTitle:before,
        html[data-template="rockbar-index"] .js_header_naviTitle:before,
        html[data-template="room-index"] .js_header_naviTitle:before,
        html[data-template="spa-index"] .js_header_naviTitle:before {
          background-image: linear-gradient(
            180deg,
            hsla(0, 0%, 100%, 0.2),
            hsla(0, 0%, 100%, 0.2) 1px,
            transparent 0,
            transparent 2px
          );
        }
      }
      .js_header_inner {
        display: flex;
        justify-content: space-between;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_inner {
          margin: 0 auto;
          padding-left: calc(var(--a-s, 1px) * 180);
          padding-right: calc(var(--a-s, 1px) * 180);
          width: calc(var(--a-s, 1px) * 1440);
        }
      }
      html[data-template="map"] .js_header_bar {
        display: none;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_bar {
          background: hsla(0, 0%, 100%, 0.4);
          height: calc(var(--a-s, 1px) * 96);
          inset: auto calc(var(--a-s, 1px) * 30)
            calc(
              var(--o-s, 1px) * 64 + var(--a-s, 1px) * 64 - var(--a-s, 1px) * 96
            )
            auto;
          mix-blend-mode: difference;
          position: fixed;
          transition: opacity 0.2s cubic-bezier(0.77, 0, 0.175, 1);
          width: 1px;
        }
        html[data-template="bali"] .js_header_bar {
          opacity: 0;
        }
        .js_header.is_show .js_header_bar {
          transition: opacity 0.9s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_header_bar {
          display: none;
        }
      }
      .js_header_logo {
        left: calc(var(--a-s, 1px) * 30);
        opacity: 1;
        position: fixed;
        transform: translateY(0);
        transition: opacity 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94),
          transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      }
      .js_header_logo path {
        transition: fill 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      .is_bitScrolled .js_header_logo {
        opacity: 0;
        transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94),
          transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      }
      html[data-template="bali"] .js_header:not(is_outKv) .js_header_logo {
        display: none;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_logo {
          padding-top: calc(var(--a-s, 1px) * 30);
        }
        .is_bitScrolled .js_header_logo {
          pointer-events: none;
          transform: translateY(-10%);
        }
        html[data-template="map"]:not(.html_hideHeader) .js_header_logo {
          transform: translateY(0);
          transition: opacity 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94),
            transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }
        .js_header_logo.is_hiddenTop {
          opacity: 0;
          transform: translateY(-10%);
        }
        html[data-template="map"]:not(.html_hideHeader)
          .js_header_logo.is_hiddenTop {
          opacity: 0;
          transform: translateY(-10%);
          transition: opacity 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94),
            transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }
        .js_header_logo.is_hidden {
          opacity: 0;
          transform: translateY(-10%);
        }
        .js_header_logo svg {
          height: calc(var(--a-s, 1px) * 100%);
          width: calc(var(--a-s, 1px) * 76);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_header_logo {
          left: 50%;
          margin-left: calc(var(--a-s, 1px) * -29.25);
          position: absolute;
          top: calc(var(--a-s, 1px) * 14);
        }
        .js_header_logo svg {
          height: calc(var(--a-s, 1px) * 43.5);
          width: calc(var(--a-s, 1px) * 58.5);
        }
      }
      .js_header_naviWrap {
        color: var(--text-color);
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_naviWrap {
          display: grid;
          grid-template-columns: calc(var(--a-s, 1px) * 209) 1fr 1fr;
          margin: 0 auto;
          padding-bottom: calc(var(--a-s, 1px) * 32);
          padding-top: calc(var(--a-s, 1px) * 33);
          position: absolute;
          top: 0;
          transition: opacity 0.2s cubic-bezier(0.77, 0, 0.175, 1),
            color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
          width: calc(var(--a-s, 1px) * 1080);
        }
        .js_header_naviWrap:before {
          background-color: #000;
          bottom: 0;
          content: "";
          height: 1px;
          left: 0;
          opacity: 0.07;
          position: absolute;
          transition: background-color 0.4s
              cubic-bezier(0.445, 0.05, 0.55, 0.95),
            opacity 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_header_naviWrap {
          left: 0;
          padding-left: calc(var(--a-s, 1px) * 57);
          padding-top: calc(var(--a-s, 1px) * 28);
          position: absolute;
          top: 0;
          transition: opacity 0.2s cubic-bezier(0.77, 0, 0.175, 1);
        }
      }
      html[data-template="bali"] .js_header_naviWrap {
        opacity: 0;
        pointer-events: none;
      }
      .js_header_naviTitle {
        letter-spacing: 0.12em;
        position: relative;
      }
      .js_header_naviTitle > a {
        position: relative;
      }
      @media (any-hover: hover) {
        .js_header_naviTitle > a {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .js_header_naviTitle > a:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_naviTitle > a:after {
          bottom: calc(var(--a-s, 1px) * -22);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -8);
          position: absolute;
          right: calc(var(--a-s, 1px) * -8);
          top: calc(var(--a-s, 1px) * -22);
          width: auto;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_header_naviTitle {
          padding-left: calc(var(--a-s, 1px) * 15);
          padding-right: calc(var(--a-s, 1px) * 15);
          transition: color 0ms ease-in-out;
        }
        .js_header_naviTitle > a:after {
          bottom: calc(var(--a-s, 1px) * -15);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * 0);
          position: absolute;
          right: calc(var(--a-s, 1px) * 0);
          top: calc(var(--a-s, 1px) * -15);
          width: auto;
        }
        .js_header_naviTitle:before {
          background-image: linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.2),
            rgba(0, 0, 0, 0.2) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-y;
          background-size: 1px 3px;
          content: "";
          display: block;
          height: calc(var(--a-s, 1px) * 21);
          left: 0;
          position: absolute;
          top: 0;
          width: 1px;
        }
      }
      .js_header_naviSelectorList {
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_naviSelectorList {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_header_naviSelectorList {
          display: none;
        }
      }
      .js_header_naviSelectorList.__sub {
        justify-content: flex-end;
      }
      .js_header_naviSelector {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_naviSelector:before {
          background-color: #333;
          bottom: calc(var(--a-s, 1px) * -22);
          content: "";
          height: 2px;
          left: 0;
          position: absolute;
          scale: 0 1;
          transition: background-color 0.4s
              cubic-bezier(0.445, 0.05, 0.55, 0.95),
            scale 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
          width: 100%;
        }
        .js_header_naviSelectorList.__sub .js_header_naviSelector:before {
          bottom: calc(var(--a-s, 1px) * -25);
        }
        html[data-category="hotel"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:first-child:before {
          scale: 1;
        }
        html[data-category="hotel"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:first-child
          a {
          opacity: 0.3;
        }
        html[data-category="dining"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(2):before {
          scale: 1;
        }
        html[data-category="dining"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(2)
          a {
          opacity: 0.3;
        }
        html[data-category="spa"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(3):before {
          scale: 1;
        }
        html[data-category="spa"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(3)
          a {
          opacity: 0.3;
        }
        html[data-category="experience"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(4):before {
          scale: 1;
        }
        html[data-category="experience"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(4)
          a {
          opacity: 0.3;
        }
        html[data-category="wedding"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(5):before {
          scale: 1;
        }
        html[data-category="wedding"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(5)
          a {
          opacity: 0.3;
        }
        html[data-category="meeting"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(6):before {
          scale: 1;
        }
        html[data-category="meeting"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(6)
          a {
          opacity: 0.3;
        }
        html[data-category="offer"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(7):before {
          scale: 1;
        }
        html[data-category="offer"]
          .js_header_naviSelectorList.__main
          .js_header_naviSelector:nth-child(7)
          a {
          opacity: 0.3;
        }
        html[data-category="map"]
          .js_header_naviSelectorList.__sub
          .js_header_naviSelector:first-child:before {
          scale: 1;
        }
        html[data-category="map"]
          .js_header_naviSelectorList.__sub
          .js_header_naviSelector:first-child
          a {
          opacity: 0.3;
        }
        html[data-category="course"]
          .js_header_naviSelectorList.__sub
          .js_header_naviSelector:nth-child(2):before {
          scale: 1;
        }
        html[data-category="course"]
          .js_header_naviSelectorList.__sub
          .js_header_naviSelector:nth-child(2)
          a {
          opacity: 0.3;
        }
        html[data-category="access"]
          .js_header_naviSelectorList.__sub
          .js_header_naviSelector:nth-child(3):before {
          scale: 1;
        }
        html[data-category="access"]
          .js_header_naviSelectorList.__sub
          .js_header_naviSelector:nth-child(3)
          a {
          opacity: 0.3;
        }
        .js_header_naviSelector > a:after {
          bottom: calc(var(--a-s, 1px) * -22);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -8);
          position: absolute;
          right: calc(var(--a-s, 1px) * -8);
          top: calc(var(--a-s, 1px) * -22);
          width: auto;
        }
      }
      @media (orientation: landscape) and (any-hover: hover),
        (orientation: portrait) and (min-width: 760px) and (any-hover: hover) {
        .js_header_naviSelector > a {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .js_header_naviSelector > a:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .js_header_reserve {
        color: var(--text-color);
        display: block;
        position: fixed;
        right: 0;
        top: 0;
      }
      html[data-template="bali"] .js_header_reserve {
        opacity: 0;
      }
      html[data-template="bali"] .js_header.is_show .js_header_reserve {
        opacity: 1;
      }
      .is_outKv .js_header_reserve {
        color: #fff;
        mix-blend-mode: difference;
      }
      .html_onTransition .js_header_reserve {
        transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95) !important;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_reserve {
          mix-blend-mode: normal;
          padding-bottom: calc(var(--a-s, 1px) * 25);
          padding-right: calc(var(--a-s, 1px) * 30);
          padding-top: calc(var(--a-s, 1px) * 32);
          transition: opacity 0.2s cubic-bezier(0.77, 0, 0.175, 1);
        }
        .js_header.is_show .js_header_reserve {
          transition: opacity 0.9s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_header_reserve {
          padding-right: calc(var(--a-s, 1px) * 21);
          padding-top: calc(var(--a-s, 1px) * 26);
          transition: opacity 0.2s cubic-bezier(0.77, 0, 0.175, 1);
        }
        html[lang="en"] .js_header_reserve {
          padding-top: calc(var(--a-s, 1px) * 28);
        }
        html[lang="zh"] .js_header_reserve {
          padding-top: calc(var(--a-s, 1px) * 24);
        }
        .js_header.is_show .js_header_reserve {
          transition: opacity 0.9s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        }
      }
      html.is_modalVisible .js_header_reserve {
        margin-right: var(--scrollbar-width);
      }
      .js_header_reserve .js_header_reserveBarBody,
      .js_header_reserve .js_header_reserveInner {
        transition: opacity 0.5s ease-in-out;
      }
      .html_keyMoviePlaying .js_header_reserve .js_header_reserveBarBody,
      .html_keyMoviePlaying .js_header_reserve .js_header_reserveInner {
        opacity: 0 !important;
        transition: opacity 0.3s ease-out;
      }
      .js_header_reserveBar {
        display: block;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_reserveBar {
          bottom: 0;
          height: 1px;
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_header_reserveBar {
          height: 4px;
          top: calc(var(--a-s, 1px) * 2);
          transition: opacity 0.2s ease-in-out;
          width: 100%;
        }
        html:not([data-template="bali"]) .js_header_reserveBar {
          opacity: 0;
        }
        html:not([data-template="bali"])
          .js_header.is_bitScrolled
          .js_header_reserveBar {
        }
      }
      .js_header_reserveBarBody {
        background-color: #000;
        contain: size layout;
        display: block;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .is_outKv .js_header_reserveBarBody {
        background-color: rgba(0, 0, 0, 0.4) !important;
        mix-blend-mode: difference !important;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_reserveBarBody {
          opacity: 0.4;
          transition: background-color 0.2s
            cubic-bezier(0.445, 0.05, 0.55, 0.95);
        }
      }
      .html_onTransition .js_header_reserveBarBody {
        transition: background-color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95) !important;
      }
      .js_header_reserveInner {
        display: block;
        position: relative;
      }
      .js_header_reserveDot {
        display: block;
      }
      .js_header_reserveDot:after,
      .js_header_reserveDot:before {
        background-color: currentColor;
        border-radius: 50%;
        content: "";
        height: calc(var(--a-s, 1px) * 5);
        position: absolute;
        top: 50%;
        transition: scale 0.3s cubic-bezier(0.77, 0, 0.175, 1);
        width: calc(var(--a-s, 1px) * 5);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_reserveDot:after,
        .js_header_reserveDot:before {
          margin-top: calc(var(--a-s, 1px) * -3);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_header_reserveDot:after,
        .js_header_reserveDot:before {
          margin-top: calc(var(--a-s, 1px) * -2);
        }
      }
      @media (any-hover: hover) {
        .js_header_reserveDot:after,
        .js_header_reserveDot:before {
          transition: scale 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
        }
        .js_header_reserve:hover .js_header_reserveDot:after,
        .js_header_reserve:hover .js_header_reserveDot:before {
          transition: scale 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
        }
      }
      .js_header_reserveDot:before {
        left: 0;
        scale: 0;
      }
      @media (any-hover: hover) {
        .js_header_reserve:hover .js_header_reserveDot:before {
          scale: 1;
        }
      }
      .js_header_reserveDot:after {
        right: 0;
      }
      @media (any-hover: hover) {
        .html_bookOpened .js_header_reserveDot:after,
        .js_header_reserve:hover .js_header_reserveDot:after {
          scale: 0;
        }
      }
      .js_header_reserveLabel {
        display: block;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_header_reserveLabel {
          padding-right: calc(var(--a-s, 1px) * 25);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_header_reserveLabel {
          padding-right: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (any-hover: hover) {
        .js_header_reserveLabel {
          transition: translate 0.5s cubic-bezier(0.165, 0.84, 0.44, 1),
            opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .html_bookOpened .js_header_reserveLabel,
        .js_header_reserve:hover .js_header_reserveLabel {
          opacity: 0.3;
          transition: translate 0.2s cubic-bezier(0.165, 0.84, 0.44, 1),
            opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
          translate: calc(var(--a-s, 1px) * 20) 0;
        }
      }
      #main_navSearch_search-button,
      #search-button,
      .js_header .js_header_search {
        color: var(--text-color);
        display: none;
        mix-blend-mode: normal;
        position: fixed;
        right: calc(var(--a-s, 1px) * 50);
        top: calc(var(--a-s, 1px) * 105);
        transition: opacity 0.2s cubic-bezier(0.77, 0, 0.175, 1),
          color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        z-index: 999;
      }
      .js_header.is_show #main_navSearch_search-button,
      .js_header.is_show #search-button,
      .js_header.is_show .js_header .js_header_search {
        transition: opacity 0.9s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      .is_outKv #main_navSearch_search-button,
      .is_outKv #search-button,
      .is_outKv .js_header .js_header_search {
        color: #fff;
        mix-blend-mode: difference;
      }
      .html_onTransition #main_navSearch_search-button,
      .html_onTransition #search-button,
      .html_onTransition .js_header .js_header_search {
        transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95) !important;
      }
      #main_navSearch_search-button svg,
      #search-button svg,
      .js_header .js_header_search svg {
        transition: fill 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      #main_navSearch_search-button svg path,
      #search-button svg path,
      .js_header .js_header_search svg path {
        fill: currentColor;
        transition: fill 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      #main_navSearch_search-button span,
      #search-button span,
      .js_header .js_header_search span {
        color: inherit !important;
        transition: color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95) !important;
      }
      #main_navSearch_search-button:hover,
      #search-button:hover,
      .js_header .js_header_search:hover {
        cursor: pointer;
      }
      html[data-category="awards"][data-template="awards"] #search-button,
      html[data-category="awards"][data-template="awards"]
        .js_header
        .js_header_search,
      html[data-category="dining"][data-template="category1"] #search-button,
      html[data-category="dining"][data-template="category1"]
        .js_header
        .js_header_search,
      html[data-category="dining"][data-template="list"] #search-button,
      html[data-category="dining"][data-template="list"]
        .js_header
        .js_header_search,
      html[data-category="experience"][data-template="category1"]
        #search-button,
      html[data-category="experience"][data-template="category1"]
        .js_header
        .js_header_search,
      html[data-category="experience"][data-template="list"] #search-button,
      html[data-category="experience"][data-template="list"]
        .js_header
        .js_header_search,
      html[data-category="media"][data-template="category3"] #search-button,
      html[data-category="media"][data-template="category3"]
        .js_header
        .js_header_search,
      html[data-category="resources-fact-sheets"][data-template="category3"]
        #search-button,
      html[data-category="resources-fact-sheets"][data-template="category3"]
        .js_header
        .js_header_search {
        display: flex;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        html[data-category="awards"][data-template="awards"] #search-button,
        html[data-category="awards"][data-template="awards"]
          .js_header
          .js_header_search,
        html[data-category="dining"][data-template="category1"] #search-button,
        html[data-category="dining"][data-template="category1"]
          .js_header
          .js_header_search,
        html[data-category="dining"][data-template="list"] #search-button,
        html[data-category="dining"][data-template="list"]
          .js_header
          .js_header_search,
        html[data-category="experience"][data-template="category1"]
          #search-button,
        html[data-category="experience"][data-template="category1"]
          .js_header
          .js_header_search,
        html[data-category="experience"][data-template="list"] #search-button,
        html[data-category="experience"][data-template="list"]
          .js_header
          .js_header_search,
        html[data-category="media"][data-template="category3"] #search-button,
        html[data-category="media"][data-template="category3"]
          .js_header
          .js_header_search,
        html[data-category="resources-fact-sheets"][data-template="category3"]
          #search-button,
        html[data-category="resources-fact-sheets"][data-template="category3"]
          .js_header
          .js_header_search {
          display: none;
        }
        html[data-category="awards"][data-template="awards"]
          #main_navSearch_search-button,
        html[data-category="awards"][data-template="awards"] .c_main_navSearch,
        html[data-category="dining"][data-template="category1"]
          #main_navSearch_search-button,
        html[data-category="dining"][data-template="category1"]
          .c_main_navSearch,
        html[data-category="dining"][data-template="list"]
          #main_navSearch_search-button,
        html[data-category="dining"][data-template="list"] .c_main_navSearch,
        html[data-category="experience"][data-template="category1"]
          #main_navSearch_search-button,
        html[data-category="experience"][data-template="category1"]
          .c_main_navSearch,
        html[data-category="experience"][data-template="list"]
          #main_navSearch_search-button,
        html[data-category="experience"][data-template="list"]
          .c_main_navSearch,
        html[data-category="media"][data-template="category3"]
          #main_navSearch_search-button,
        html[data-category="media"][data-template="category3"]
          .c_main_navSearch,
        html[data-category="resources-fact-sheets"][data-template="category3"]
          #main_navSearch_search-button,
        html[data-category="resources-fact-sheets"][data-template="category3"]
          .c_main_navSearch {
          display: block;
        }
      }
      html[data-category="dining"][data-template="category1"]
        .is_outKv
        #search-button,
      html[data-category="dining"][data-template="category1"]
        .is_outKv
        .js_header_search,
      html[data-category="experience"][data-template="category1"]
        .is_outKv
        #search-button,
      html[data-category="experience"][data-template="category1"]
        .is_outKv
        .js_header_search {
        color: #fff !important;
        mix-blend-mode: difference;
      }
      html[data-category="dining"][data-template="category1"]
        .is_outKv
        #search-button
        span,
      html[data-category="dining"][data-template="category1"]
        .is_outKv
        .js_header_search
        span,
      html[data-category="experience"][data-template="category1"]
        .is_outKv
        #search-button
        span,
      html[data-category="experience"][data-template="category1"]
        .is_outKv
        .js_header_search
        span {
        color: #fff !important;
      }
      html[data-category="dining"][data-template="category1"]
        .is_outKv
        #search-button:hover,
      html[data-category="dining"][data-template="category1"]
        .is_outKv
        .js_header_search:hover,
      html[data-category="experience"][data-template="category1"]
        .is_outKv
        #search-button:hover,
      html[data-category="experience"][data-template="category1"]
        .is_outKv
        .js_header_search:hover {
        color: #adabab !important;
      }
      #search-button .m_arwLink_text span,
      #search-button .t_pgo14d,
      #search-button .t_sgo11d,
      .js_header .js_header_search .t_pgo14d,
      .js_header .js_header_search .t_sgo11d {
        color: inherit !important;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        #search-button.m_arwLink.__pm .m_arwLink_icon {
          --arwlink_icon_size: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        #search-button.m_arwLink.__sm .m_arwLink_icon {
          --arwlink_icon_size: calc(var(--a-s, 1px) * 16);
        }
        #main_navSearch_search-button {
          align-items: center;
          display: flex;
          justify-content: center;
          margin-right: calc(var(--a-s, 1px) * 8);
          position: static;
        }
      }
      .js_reserve_button_faint_box {
        mix-blend-mode: unset !important;
        padding: calc(var(--a-s, 1px) * 25) calc(var(--a-s, 1px) * 28)
          calc(var(--a-s, 1px) * 20) 0 !important;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_reserve_button_faint_box {
          padding: calc(var(--a-s, 1px) * 20) calc(var(--a-s, 1px) * 16)
            calc(var(--a-s, 1px) * 16) 0 !important;
        }
      }
      .js_reserve_button_faint_box a .js_header_reserveInner {
        background: transparent;
        line-height: calc(var(--a-s, 1px) * 10);
        padding: calc(var(--a-s, 1px) * 12);
        padding-left: 0 !important;
        transition: background 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_reserve_button_faint_box
          a
          .js_header_reserveInner
          .js_header_reserveLabel {
          line-height: calc(var(--a-s, 1px) * 14);
          padding-right: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (any-hover: hover) {
        .js_reserve_button_faint_box a {
          transition: translate 0.5s cubic-bezier(0.165, 0.84, 0.44, 1),
            opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .html_bookOpened .js_reserve_button_faint_box a,
        .js_header_reserve:hover .js_reserve_button_faint_box a {
          opacity: 0.3;
          transition: translate 0.2s cubic-bezier(0.165, 0.84, 0.44, 1),
            opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
          translate: calc(var(--a-s, 1px) * 20) 0;
        }
      }
      .is_outKv .js_reserve_button_faint_box {
        padding: calc(var(--a-s, 1px) * 25) calc(var(--a-s, 1px) * 16)
          calc(var(--a-s, 1px) * 20) 0 !important;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .is_outKv .js_reserve_button_faint_box {
          padding: calc(var(--a-s, 1px) * 20) calc(var(--a-s, 1px) * 16)
            calc(var(--a-s, 1px) * 16) 0 !important;
        }
      }
      .is_outKv .js_reserve_button_faint_box a .js_header_reserveInner {
        background: rgba(77, 77, 77, 0.8);
        line-height: calc(var(--a-s, 1px) * 10);
        padding: calc(var(--a-s, 1px) * 12);
        padding-left: calc(var(--a-s, 1px) * 12) !important;
      }
      .is_outKv
        .js_reserve_button_faint_box
        a
        .js_header_reserveInner
        .js_header_reserveDot:before {
        left: 0;
        transform: translateX(calc(var(--a-s, 1px) * 14));
      }
      .is_outKv
        .js_reserve_button_faint_box
        a
        .js_header_reserveInner
        .js_header_reserveDot:after {
        right: 0;
        transform: translateX(calc(var(--a-s, 1px) * -10));
      }
      html[data-template="all-hotels"]
        .js_reserve_button_faint_box
        .js_header_reserve,
      html[data-template="bali"]
        .js_reserve_button_faint_box
        .js_header_reserve,
      html[data-template="category1"]
        .js_reserve_button_faint_box
        .js_header_reserve,
      html[data-template="category2"]
        .js_reserve_button_faint_box
        .js_header_reserve,
      html[data-template="course-index"]
        .js_reserve_button_faint_box
        .js_header_reserve,
      html[data-template="hotel"]
        .js_reserve_button_faint_box
        .js_header_reserve,
      html[data-template="rockbar-detail"]
        .js_reserve_button_faint_box
        .js_header_reserve,
      html[data-template="rockbar-index"]
        .js_reserve_button_faint_box
        .js_header_reserve,
      html[data-template="room-index"]
        .js_reserve_button_faint_box
        .js_header_reserve,
      html[data-template="spa-index"]
        .js_reserve_button_faint_box
        .js_header_reserve {
        color: #fff;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        html[data-template="all-hotels"]
          .js_reserve_button_faint_box
          .js_header_reserve,
        html[data-template="bali"]
          .js_reserve_button_faint_box
          .js_header_reserve,
        html[data-template="category1"]
          .js_reserve_button_faint_box
          .js_header_reserve,
        html[data-template="category2"]
          .js_reserve_button_faint_box
          .js_header_reserve,
        html[data-template="course-index"]
          .js_reserve_button_faint_box
          .js_header_reserve,
        html[data-template="hotel"]
          .js_reserve_button_faint_box
          .js_header_reserve,
        html[data-template="rockbar-detail"]
          .js_reserve_button_faint_box
          .js_header_reserve,
        html[data-template="rockbar-index"]
          .js_reserve_button_faint_box
          .js_header_reserve,
        html[data-template="room-index"]
          .js_reserve_button_faint_box
          .js_header_reserve,
        html[data-template="spa-index"]
          .js_reserve_button_faint_box
          .js_header_reserve {
          transition: color 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        }
      }
      .js_ham {
        position: fixed;
      }
      .js_ham path {
        fill: #333;
      }
      .js_ham.is_outKv {
        mix-blend-mode: difference;
      }
      .js_ham.is_outKv path {
        fill: #fff;
      }
      .js_ham.is_outKv:before {
        background-color: hsla(0, 0%, 100%, 0.4);
      }
      .is_modalOpened .js_ham:not(.is_outKv) path {
        fill: #333 !important;
      }
      .is_modalOpened .js_ham:not(.is_outKv):before {
        background-color: rgba(0, 0, 0, 0.4) !important;
      }
      html[data-template="bali"] .js_ham {
        opacity: 0;
      }
      html[data-template="bali"] .js_ham path {
        transition: fill 0.3s cubic-bezier(0.77, 0, 0.175, 1),
          translate 0.24s cubic-bezier(0.77, 0, 0.175, 1);
      }
      html[data-template="bali"] .js_ham:before {
        transition: background-color 0.3s cubic-bezier(0.77, 0, 0.175, 1);
      }
      html[data-template="bali"] .js_ham.is_headerShow {
        opacity: 1;
      }
      html[data-template="bali"] .js_ham.is_transition path {
        fill: #fff;
      }
      html[data-template="bali"] .js_ham.is_transition:before {
        background-color: hsla(0, 0%, 100%, 0.4);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ham {
          left: calc(var(--a-s, 1px) * 30);
          opacity: 0;
          padding: calc(var(--a-s, 1px) * 33) calc(var(--a-s, 1px) * 9)
            calc(var(--a-s, 1px) * 24);
          top: 0;
          transform: translateY(20%);
          transition: opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1),
            transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
          width: calc(var(--a-s, 1px) * 76);
        }
        .js_ham:after {
          bottom: calc(var(--a-s, 1px) * -20);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -30);
          position: absolute;
          right: calc(var(--a-s, 1px) * -30);
          top: calc(var(--a-s, 1px) * -20);
          width: auto;
        }
        html.is_modalOpened .js_ham {
          transform: translateY(0);
        }
        .js_ham.is_show,
        .js_ham.is_showTop,
        html[data-template="bali"] .js_ham {
          pointer-events: auto;
          transform: translateY(0);
        }
        .js_ham.is_show,
        .js_ham.is_showTop {
        }
        .js_ham:before {
          background-color: rgba(0, 0, 0, 0.4);
          bottom: 0;
          content: "";
          height: 1px;
          left: 0;
          position: absolute;
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_ham {
          height: calc(var(--a-s, 1px) * 64);
          left: calc(var(--a-s, 1px) * 20);
          top: 0;
          transform: translateY(0);
          transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1);
          width: calc(var(--a-s, 1px) * 23);
        }
        .js_ham:after {
          bottom: calc(var(--a-s, 1px) * 0);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -15);
          position: absolute;
          right: calc(var(--a-s, 1px) * -15);
          top: calc(var(--a-s, 1px) * 0);
          width: auto;
        }
      }
      .html_hideHeader .js_ham {
        display: none;
      }
      .js_ham svg,
      .js_ham:before {
        overflow: visible;
        transition: opacity 0.5s ease-in-out;
      }
      .html_keyMoviePlaying .js_ham svg,
      .html_keyMoviePlaying .js_ham:before {
        opacity: 0;
        transition: opacity 0.3s ease-out;
      }
      html[data-template="all-hotels"] .js_ham path,
      html[data-template="category1"] .js_ham path,
      html[data-template="category2"] .js_ham path,
      html[data-template="course-index"] .js_ham path,
      html[data-template="hotel"] .js_ham path,
      html[data-template="rockbar-detail"] .js_ham path,
      html[data-template="rockbar-index"] .js_ham path,
      html[data-template="room-index"] .js_ham path,
      html[data-template="spa-index"] .js_ham path {
        fill: #fff;
      }
      html[data-template="all-hotels"] .js_ham:before,
      html[data-template="category1"] .js_ham:before,
      html[data-template="category2"] .js_ham:before,
      html[data-template="course-index"] .js_ham:before,
      html[data-template="hotel"] .js_ham:before,
      html[data-template="rockbar-detail"] .js_ham:before,
      html[data-template="rockbar-index"] .js_ham:before,
      html[data-template="room-index"] .js_ham:before,
      html[data-template="spa-index"] .js_ham:before {
        background-color: hsla(0, 0%, 100%, 0.4);
      }
      .js_ham_dot {
        transition: translate 0.24s cubic-bezier(0.77, 0, 0.175, 1);
        translate: 0 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .is_modalOpened .js_ham_dot.__top {
          translate: 0 8px;
        }
        .is_modalOpened .js_ham_dot.__bottom {
          translate: 0 -8px;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .is_modalOpened .js_ham_dot.__top {
          translate: 0 16px;
        }
        .is_modalOpened .js_ham_dot.__bottom {
          translate: 0 -16px;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_ham:hover .js_ham_dot {
          transition: translate 0.24s cubic-bezier(0.165, 0.84, 0.44, 1);
        }
        html:not(.is_modalAnimating) .js_ham:hover .js_ham_dot.__top {
          translate: 0 -4.8px;
        }
        html:not(.is_modalAnimating) .js_ham:hover .js_ham_dot.__bottom {
          translate: 0 4.8px;
        }
        html:not(.is_modalAnimating).is_modalOpened
          .js_ham:hover
          .js_ham_dot.__top.__l1 {
          translate: 9px 8px;
        }
        html:not(.is_modalAnimating).is_modalOpened
          .js_ham:hover
          .js_ham_dot.__top.__l3 {
          translate: 27px 8px;
        }
        html:not(.is_modalAnimating).is_modalOpened
          .js_ham:hover
          .js_ham_dot.__top.__r1 {
          translate: -9px 8px;
        }
        html:not(.is_modalAnimating).is_modalOpened
          .js_ham:hover
          .js_ham_dot.__top.__r3 {
          translate: -27px 8px;
        }
        html:not(.is_modalAnimating).is_modalOpened
          .js_ham:hover
          .js_ham_dot.__bottom.__l1 {
          translate: 9px -8px;
        }
        html:not(.is_modalAnimating).is_modalOpened
          .js_ham:hover
          .js_ham_dot.__bottom.__l3 {
          translate: 27px -8px;
        }
        html:not(.is_modalAnimating).is_modalOpened
          .js_ham:hover
          .js_ham_dot.__bottom.__r1 {
          translate: -9px -8px;
        }
        html:not(.is_modalAnimating).is_modalOpened
          .js_ham:hover
          .js_ham_dot.__bottom.__r3 {
          translate: -27px -8px;
        }
        html:not(.is_modalAnimating).is_modalOpened
          .js_ham:hover
          .js_ham_dot.__l2 {
          translate: 18px 0;
        }
        html:not(.is_modalAnimating).is_modalOpened
          .js_ham:hover
          .js_ham_dot.__r2 {
          translate: -18px 0;
        }
      }
      .js_fv {
        position: relative;
      }
      html[data-template="bali"].html_splashSkip .js_fv {
        background: #4d4b49;
      }
      .js_fv_title {
        transform-origin: bottom;
      }
      .js_fv_ghost {
        pointer-events: none;
        position: relative;
      }
      .js_fv_scroll {
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.3s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_fv_scroll.is_show {
        opacity: 1;
        transition: opacity 1s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_fv_stickyArea {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_fv_cursorArea {
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_cursorArea {
          height: calc(var(--vh, 1vh) * 100);
          left: 0;
          position: absolute;
          top: 0;
          width: 100%;
        }
        .js_fv_cursorArea .js_cursor {
          position: fixed;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_cursorArea {
          contain: size layout;
          display: flex;
          height: 100%;
          justify-content: center;
          left: 0;
          position: absolute;
          position: fixed;
          top: 0;
          width: 100%;
        }
        .js_fv_cursorArea .js_cursor:not([data-sp-enabled]) {
          display: contents;
        }
      }
      .js_fv:not(.is_attentionVisible) .js_fv_cursorArea,
      .js_fv:not(.is_attentionVisible) .js_fv_cursorArea * {
        pointer-events: none !important;
      }
      html.html_typoMode .js_fv_cursorArea {
        pointer-events: none;
      }
      .js_fv_textContent {
        left: 0;
        overflow: hidden;
        position: sticky !important;
        top: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        html[data-template="bali"] .js_fv_desc {
          width: 100%;
        }
      }
      .js_fv_bg {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_fv_head {
        mask-position: 0 0;
        mask-repeat: no-repeat;
        overflow: hidden;
        z-index: 1;
      }
      .js_fv_head.is_useOpacity {
        mask-image: none !important;
      }
      [data-page-sticky] .js_fv_head {
        position: sticky;
      }
      .js_fv_head,
      .js_fv_head * {
        -webkit-backface-visibility: hidden;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_head {
          mask-size: 300% 500%;
        }
        html.device-touch .js_fv_head {
          mask-image: none;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_head {
          mask-size: 500% 200%;
        }
      }
      html[data-template="bali"].html_splashSkip .js_fv_head {
        background: #4d4b49;
      }
      .js_fv_head[data-home] {
        overflow: visible;
      }
      .js_fv_head.is_hidden {
        visibility: hidden;
      }
      .js_fv_headInner {
        height: 100%;
        position: relative;
        width: 100%;
      }
      html[data-template="bali"] .js_fv_headInner {
        opacity: 0.001;
      }
      html[data-template="bali"] .js_fv_headInner.is_show {
        opacity: 1;
        transition: opacity 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      html[data-template="bali"] .js_fv_headInner.is_directShow {
        opacity: 1;
      }
      html[data-template="bali"].html_splashSkip .js_fv_headInner {
        opacity: 0.01;
      }
      html[data-template="bali"].html_splashSkip
        .js_fv_headInner.is_directShow {
        opacity: 1;
        transition: opacity 1s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.5s;
      }
      html[data-template="hotel"] .js_fv_headInner,
      html[data-template="rockbar-index"] .js_fv_headInner {
        scale: 1.1;
      }
      html[data-template="hotel"] .js_fv_headInner.is_zoom,
      html[data-template="rockbar-index"] .js_fv_headInner.is_zoom {
        scale: 1;
        transition: scale 6s ease-out;
      }
      .js_fv_slider {
        -webkit-user-select: none;
        user-select: none;
      }
      html.html_typoMode .js_fv_slider {
        -webkit-user-select: auto;
        user-select: auto;
      }
      .js_fv_sliderImg {
        height: 100%;
        left: 0;
        mask-position: -33% 0;
        mask-repeat: no-repeat;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_sliderImg {
          mask-size: 300% 600%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_sliderImg {
          mask-size: 300% 300%;
        }
      }
      .js_fv_sliderImg.is_useOpacity {
        mask-image: none !important;
      }
      .js_fv_sliderImg:not(.is_visible) {
        opacity: 0;
        visibility: hidden;
      }
      .js_fv_slider:not(.is_ready) .js_fv_sliderImg:first-child {
        mask-position: 67% 0;
        visibility: visible;
      }
      .js_fv_sliderImg.is_front {
        z-index: 1;
      }
      .js_fv_sliderImg.is_zoom {
        transition: scale 9s linear;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_sliderImg.is_zoom {
          scale: 1.1;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_sliderImg.is_zoom {
          scale: 1.15;
        }
      }
      .js_fv_controls.is_start {
        transition: transform 0.9s cubic-bezier(0.455, 0.03, 0.515, 0.955);
      }
      .js_fv_caption li {
        opacity: 0;
        transition: opacity 0.4s ease-out;
      }
      .js_fv_caption li.is_show {
        transition: opacity 0.6s ease-in-out;
      }
      .js_fv_counterCurrent li {
        position: relative;
      }
      .js_fv_body {
        left: 0;
        opacity: 0.01;
        overflow: hidden;
        position: fixed;
        top: 0;
        transform: translateZ(0);
      }
      .js_fv[data-fv-page="bali"] .js_fv_body {
        position: absolute;
      }
      .js_fv_body.is_show {
        transition: opacity 0.5s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      .js_fv_body.is_hidden {
        visibility: hidden;
      }
      .js_fv_body,
      .js_fv_body * {
        -webkit-backface-visibility: hidden;
      }
      .js_fv_bodyInner {
        height: 100%;
        position: absolute;
        width: 100%;
      }
      .js_fv[data-fv-splash="simple"].is_show .js_fv_logo {
        transition-delay: 0.25s;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_logo {
          transform: translateY(
            calc(
              (var(--a-s, 1px) * -65) * var(--progressY) +
                (var(--vh-max, 1vh) * 26.95313) * (1 - var(--progressY))
            )
          );
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_logo {
          transform: translateY(
            calc(
              (var(--a-s, 1px) * -56) * var(--progressY) +
                (var(--vh-max, 1vh) * 23.80952) * (1 - var(--progressY))
            )
          );
        }
      }
      .js_fv_logoImg {
        transform-origin: bottom;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_logoImg {
          scale: calc(
            (1 - var(--transitionP)) * 195 / 195 + var(--transitionP) * 98 / 195
          );
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_logoImg {
          scale: calc(
            (1 - var(--transitionP)) * 262 / 262 + var(--transitionP) * 152 /
              262
          );
        }
      }
      .js_fv_logoImgInner {
        transition: opacity 1s ease-in-out;
      }
      .js_fv_logo.is_direct .js_fv_logoImgInner {
        transition: none;
      }
      .js_fv_logoImgInner.__white {
        opacity: 0;
      }
      .js_fv_logo.is_white .js_fv_logoImgInner.__white {
        opacity: 1;
      }
      .js_fv_logo.is_direct .js_fv_logoImgInner.__white {
        visibility: hidden;
      }
      .js_fv_logoImgInner.__blue {
        position: absolute;
        width: 100%;
      }
      .js_fv_logo.is_white .js_fv_logoImgInner.__blue {
        opacity: 0;
      }
      .js_fv_logo.is_direct .js_fv_logoImgInner.__blue {
        transition: none;
      }
      .js_fv_logo.is_direct .js_fv_logoImgInner.__blue .js_sprite {
        -webkit-filter: grayscale(1) brightness(2);
        filter: grayscale(1) brightness(2);
        transform: translateZ(1px);
      }
      .js_fv_logo.is_direct .js_fv_logoImgInner.__blue .js_fv_logoText {
        -webkit-filter: grayscale(1) brightness(5);
        filter: grayscale(1) brightness(5);
      }
      .js_fv_logoText {
        opacity: 0;
      }
      .js_fv_logo.is_show .js_fv_logoText {
        opacity: 1;
        transition: opacity 1.2s ease-in-out;
      }
      .__blue .js_fv_logoText path {
        fill: #3e3a39;
      }
      .js_fv_logoTextSub {
        color: #3e3a39;
        opacity: 0;
        transform-origin: top;
        transition: opacity 1.8s ease-in-out 0.3s,
          color 0.8s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_logoTextSub {
          scale: calc(
            (1 - var(--transitionP)) * 26 / 26 + var(--transitionP) * 18 / 26
          );
          transform: translateY(
            calc((var(--a-s, 1px) * -18) * var(--transitionP))
          );
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_logoTextSub {
          scale: calc(
            (1 - var(--transitionP)) * 21 / 21 + var(--transitionP) * 15 / 21
          );
          transform: translateY(
            calc((var(--a-s, 1px) * 5) * var(--transitionP))
          );
        }
      }
      .js_fv_logo.is_show .js_fv_logoTextSub {
        opacity: 1;
      }
      .js_fv_logo.is_direct .js_fv_logoTextSub,
      .js_fv_logo.is_white .js_fv_logoTextSub {
        color: #fff;
      }
      .js_fv_logo.is_direct .js_fv_logoTextSub {
        transition: opacity 1.2s ease-in-out 0.6s;
      }
      .js_textWave_item {
        display: inline-block;
        will-change: transform, opacity;
      }
      .js_fv_reserve {
        opacity: 0;
        transition: opacity 0.3s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_fv_reserve.is_show {
        transition: opacity 1s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_fv_playBtn {
        opacity: 0 !important;
      }
      html.device-desktop
        .js_fv.is_attentionVisible
        .js_cursor.is_visible
        .js_fv_playBtn {
        opacity: 1 !important;
      }
      html.device-touch .js_fv_playBtn {
        transition: opacity 0.3s ease-in-out;
      }
      html.device-touch .js_fv.is_attentionVisible .js_fv_playBtn {
        opacity: 1 !important;
        transition: opacity 0.9s ease-in-out;
      }
      .js_fv_attention {
        align-items: flex-end;
        aspect-ratio: 2/1;
        bottom: 0;
        cursor: pointer;
        display: flex;
        justify-content: center;
        opacity: 0;
        pointer-events: none;
        position: fixed;
        transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
        visibility: hidden;
        z-index: 2;
      }
      .js_fv.is_attentionVisible .js_fv_attention {
        transition: opacity 1s ease-in-out, visibility 1s ease-in-out;
        visibility: visible;
        opacity: 1;
      }
      .html_keyMoviePlaying .js_fv_attention {
        opacity: 0 !important;
        transition: opacity 0.3s ease-out, visibility 0.3s ease-out !important;
        visibility: hidden;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_attention {
          left: calc(50% - var(--a-s, 1px) * 43);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_attention {
          left: calc(50% - var(--a-s, 1px) * 42);
        }
      }
      @media (orientation: portrait) and (min-width: 760px) {
        .js_fv_attention {
          scale: 1.5;
        }
      }
      .js_fv_attentionCircle {
        animation: js_circleScale 2.6s cubic-bezier(0.455, 0.03, 0.515, 0.955)
          1.2s infinite;
        background-color: #fff;
        border-radius: 50%;
        display: block;
        height: 100%;
        position: relative;
        width: 100%;
      }
      .js_fv_attention:not(.is_ready) .js_fv_attentionCircle {
        animation-play-state: paused;
      }
      .is_show:not(.is_ready) .js_fv_attentionCircle {
        animation-play-state: running;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_attentionCircle {
          bottom: calc(var(--a-s, 1px) * -43);
          height: calc(var(--a-s, 1px) * 86);
          width: calc(var(--a-s, 1px) * 86);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_attentionCircle {
          bottom: calc(var(--a-s, 1px) * -42);
          height: calc(var(--a-s, 1px) * 84);
          width: calc(var(--a-s, 1px) * 84);
        }
      }
      .js_fv_attentionRipple {
        animation: js_rippleScale 2.6s cubic-bezier(0.77, 0, 0.175, 1) 0.2s
          infinite;
        background-color: #fff;
        border-radius: 50%;
        display: block;
        opacity: 0.2;
        position: absolute;
      }
      .js_fv_attention:not(.is_ready) .js_fv_attentionRipple {
        animation-play-state: paused;
      }
      .is_show:not(.is_ready) .js_fv_attentionRipple {
        animation-play-state: running;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_attentionRipple {
          bottom: calc(var(--a-s, 1px) * -127);
          height: calc(var(--a-s, 1px) * 253);
          left: calc(var(--a-s, 1px) * -84);
          width: calc(var(--a-s, 1px) * 253);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_attentionRipple {
          bottom: calc(var(--a-s, 1px) * -83.5);
          height: calc(var(--a-s, 1px) * 167);
          left: calc(var(--a-s, 1px) * -42);
          width: calc(var(--a-s, 1px) * 167);
        }
      }
      .js_fv_attentionDots {
        align-items: center;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_attentionDots {
          bottom: calc(var(--a-s, 1px) * 17);
          height: calc(var(--a-s, 1px) * 148);
          left: calc(var(--a-s, 1px) * 42);
          width: 0;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_attentionDots {
          bottom: calc(var(--a-s, 1px) * 14);
          height: calc(var(--a-s, 1px) * 90);
          left: calc(var(--a-s, 1px) * 41.8);
          width: 0;
        }
      }
      .js_fv_attentionDotLine {
        animation: js_lineWrapSlide 2.6s cubic-bezier(0.77, 0, 0.175, 1) 0ms
          infinite;
        display: block;
        mix-blend-mode: difference;
        overflow: hidden;
        position: absolute;
      }
      .js_fv_attention:not(.is_ready) .js_fv_attentionDotLine {
        animation-play-state: paused;
      }
      .is_show:not(.is_ready) .js_fv_attentionDotLine {
        animation-play-state: running;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_attentionDotLine {
          bottom: calc(var(--a-s, 1px) * 22);
          height: calc(var(--a-s, 1px) * 138);
          left: calc(var(--a-s, 1px) * 40);
          width: calc(var(--a-s, 1px) * 5);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_attentionDotLine {
          bottom: calc(var(--a-s, 1px) * 15);
          height: calc(var(--a-s, 1px) * 90);
          left: calc(var(--a-s, 1px) * 39.5);
          width: calc(var(--a-s, 1px) * 5);
        }
      }
      .js_fv_attentionDotLineInner {
        animation: js_lineSlide 2.6s cubic-bezier(0.77, 0, 0.175, 1) 0ms
            infinite,
          js_lineOpacity 2.6s cubic-bezier(0.77, 0, 0.175, 1) 0ms infinite;
        bottom: 0;
        left: 0;
        position: absolute;
      }
      .js_fv_attention:not(.is_ready) .js_fv_attentionDotLineInner {
        animation-play-state: paused;
      }
      .is_show:not(.is_ready) .js_fv_attentionDotLineInner {
        animation-play-state: running;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_attentionDotLineInner {
          height: calc(var(--a-s, 1px) * 138);
          width: calc(var(--a-s, 1px) * 5);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_attentionDotLineInner {
          height: calc(var(--a-s, 1px) * 90);
          width: calc(var(--a-s, 1px) * 5);
        }
      }
      .js_fv_attentionDotLineInner svg {
        fill: #fff;
      }
      .js_fv_attentionDot {
        border-radius: 50%;
        height: calc(var(--a-s, 1px) * 5);
        width: calc(var(--a-s, 1px) * 5);
      }
      .js_fv_attentionDot.__white {
        background-color: #fff;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_fv_attentionDot.__white {
          animation: js_dotScale_pc 2.6s cubic-bezier(0.77, 0, 0.175, 1) 0.1s
            infinite;
        }
        .js_fv_attention:not(.is_ready) .js_fv_attentionDot.__white {
          animation-play-state: paused;
        }
        .is_show:not(.is_ready) .js_fv_attentionDot.__white {
          animation-play-state: running;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_fv_attentionDot.__white {
          animation: js_dotScale_sp 2.6s cubic-bezier(0.77, 0, 0.175, 1) 0.1s
            infinite;
        }
        .js_fv_attention:not(.is_ready) .js_fv_attentionDot.__white {
          animation-play-state: paused;
        }
        .is_show:not(.is_ready) .js_fv_attentionDot.__white {
          animation-play-state: running;
        }
      }
      .js_fv_attentionDot.__gray {
        animation: js_dotGrayScale 2.6s cubic-bezier(0.77, 0, 0.175, 1) 0.4s
          infinite;
        background-color: #333;
        opacity: 0.4;
      }
      .js_fv_attention:not(.is_ready) .js_fv_attentionDot.__gray {
        animation-play-state: paused;
      }
      .is_show:not(.is_ready) .js_fv_attentionDot.__gray {
        animation-play-state: running;
      }
      @keyframes js_circleScale {
        0% {
          transform: scale(0.9);
        }
        50% {
          transform: scale(1.3);
        }
        to {
          transform: scale(0.9);
        }
      }
      @keyframes js_rippleScale {
        0% {
          opacity: 0.2;
          transform: scale(0.4);
        }
        30%,
        40% {
          opacity: 0.2;
          transform: scale(1);
        }
        to {
          opacity: 0;
          transform: scale(1.5);
        }
      }
      @keyframes js_lineWrapSlide {
        0% {
          transform: translateY(-100%);
        }
        30% {
          transform: translateY(0);
        }
        to {
          transform: translateY(110%);
        }
      }
      @keyframes js_lineSlide {
        0% {
          transform: translateY(100%);
        }
        30% {
          transform: translateY(0);
        }
        to {
          transform: translateY(-110%);
        }
      }
      @keyframes js_lineOpacity {
        0% {
          opacity: 0;
        }
        30%,
        70% {
          opacity: 1;
        }
        80%,
        to {
          opacity: 0;
        }
      }
      @keyframes js_dotScale_pc {
        0% {
          transform: translateZ(0) scale(0);
        }
        30% {
          transform: translateZ(0) scale(1);
        }
        to {
          transform: translate3d(0, calc(var(--a-s, 1px) * 160), 0) scale(0);
        }
      }
      @keyframes js_dotScale_sp {
        0% {
          transform: translateZ(0) scale(0);
        }
        30% {
          transform: translateZ(0) scale(1);
        }
        to {
          transform: translate3d(0, 150px, 0) scale(0);
        }
      }
      @keyframes js_dotGrayScale {
        0% {
          opacity: 0.4;
          transform: translateZ(0) scale(0);
        }
        30%,
        40% {
          opacity: 0.4;
          transform: translateZ(0) scale(1);
        }
        to {
          opacity: 0.4;
          transform: translateZ(0) scale(0);
        }
      }
      .js_heading {
        display: inline-block;
        position: relative;
      }
      .js_heading_text {
        opacity: 0.3;
      }
      .js_heading.is_anime .js_heading_text {
        will-change: opacity;
      }
      .is_end .js_heading_text {
        opacity: 1;
        transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      }
      .js_heading[data-heading-simple].is_end .js_heading_text {
        opacity: 0;
        transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      }
      .js_heading[data-heading-simple].is_noEffect .js_heading_text {
        opacity: 1;
      }
      .js_heading_inner {
        height: 100%;
        left: 0;
        opacity: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_heading[data-heading-simple].is_noEffect .js_heading_inner {
        display: none;
      }
      html.html_typoMode .js_heading_inner .js_typo {
        pointer-events: none !important;
      }
      .js_heading_inner:has(.h_hanging) {
        padding-right: 1em;
        width: calc(100% + 1em);
      }
      .js_heading[data-heading-simple] .js_heading_inner {
        mask-image: linear-gradient(
          135deg,
          transparent,
          transparent 22.5%,
          rgba(0, 0, 0, 0.4) 25.5%,
          #000 30%,
          #000 70%,
          rgba(0, 0, 0, 0.4) 74.5%,
          transparent 77.5%,
          transparent
        );
        mask-position: 110% 110%;
        mask-repeat: no-repeat;
        mask-size: 300% 300%;
        opacity: 1;
      }
      .js_heading[data-heading-simple].is_anime .js_heading_inner {
        mask-position: 50% 50%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_heading[data-heading-simple].is_anime .js_heading_inner {
          transition: mask-position 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_heading[data-heading-simple].is_anime .js_heading_inner {
          transition: mask-position 1.9s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }
      }
      .js_heading.is_anime .js_heading_inner {
        opacity: 1;
        transition: opacity 0.1s ease-out;
        will-change: opacity;
      }
      .js_heading.is_anime.is_end .js_heading_inner {
        opacity: 0;
        transition: opacity 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      }
      .js_heading[data-heading-simple].is_end .js_heading_inner {
        opacity: 1;
      }
      @keyframes anime {
        0% {
          mask-position: 130% 130%;
        }
        to {
          mask-position: 50% 50%;
        }
      }
      .js_heading_clip {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: -1;
      }
      .js_heading.is_end .js_heading_clip {
        opacity: 0;
      }
      .js_textWind_item {
        display: block;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_textWind_item {
          perspective: 130px;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_textWind_item {
          perspective: 100px;
        }
      }
      .js_textWind_item ._c {
        -webkit-backface-visibility: hidden;
        display: inline-block;
        opacity: 0.001;
        position: relative;
      }
      .js_soloClip {
        position: relative;
      }
      html.device-desktop
        .js_soloClip[data-no-visible-extend-desktop]:not(.is_soloClipActive) {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
      }
      .js_soloClip.__absolute {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .html_noEffect .js_soloClip:not(:has(.js_soloClip_container)) {
        overflow: hidden;
      }
      .html_noEffect .js_soloClip[data-needs-clip] {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
      }
      .js_soloClip[data-bg]:not(.is_soloClipVisible) {
        opacity: 0.01;
      }
      .js_soloClip_container {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .html_noEffect .js_soloClip_container {
        overflow: hidden;
      }
      .js_soloClip_inner {
        display: block;
        height: 120%;
        left: 0;
        overflow: hidden;
        position: absolute;
        top: -10%;
        width: 100%;
      }
      .js_soloClip[data-video] .js_soloClip_inner {
        height: 110%;
        top: -5%;
      }
      .js_soloClip[data-bg] .js_soloClip_inner {
        height: 200%;
        top: -50%;
      }
      .js_soloClip_body,
      .js_soloClip_zoom {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_soloClip_zoom {
          scale: 1.15;
        }
        .is_soloClipVisible .js_soloClip_zoom {
          scale: 1;
          transition: scale 4.5s ease-out;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_soloClip_zoom.__sp {
          scale: 1.15;
        }
        .is_soloClipVisible .js_soloClip_zoom.__sp {
          scale: 1;
          transition: scale 4.5s ease-out;
        }
      }
      .js_soloClip_fit {
        bottom: 8.3333333333%;
        height: auto;
        left: 0;
        position: absolute;
        top: 8.3333333333%;
        width: 100%;
      }
      .js_keyMovie {
        position: relative;
      }
      .js_keyMovie:not([data-fv]) .js_keyMovie_button:not(.is_buttonVisible) {
        visibility: hidden;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_keyMovie_buttonDisplay {
          transition: opacity 0.9s ease-in-out 0.5s;
        }
        .js_keyMovie.is_playing .js_keyMovie_buttonDisplay {
          opacity: 0;
          transition: opacity 0.3s ease-out;
        }
      }
      .js_keyMovie_bgVideo {
        background: #000;
      }
      .js_keyMovie_bgVideo,
      .js_keyMovie_bgVideoBody {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_keyMovie_bgVideoBody {
        transition: transform 0.9s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_keyMovie.is_playing .js_keyMovie_bgVideoBody {
        opacity: 0;
        transition: transform 0.9s cubic-bezier(0.77, 0, 0.175, 1),
          opacity 0.6s ease-in-out 0.5s;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_keyMovie_bgVideoSpCover {
          display: none;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_keyMovie_bgVideoSpCover {
          contain: size layout;
          height: 100%;
          left: 0;
          position: absolute;
          top: 0;
          width: 100%;
        }
        .js_keyMovie_bgVideoSpCover:after,
        .js_keyMovie_bgVideoSpCover:before {
          background-color: #000;
          content: "";
          height: var(--height, 0);
          left: 0;
          position: absolute;
          scale: 1 0;
          transition: scale 0.9s cubic-bezier(0.77, 0, 0.175, 1);
          width: 100%;
        }
        .js_keyMovie_bgVideoSpCover:before {
          top: 0;
          transform-origin: left top;
        }
        .js_keyMovie_bgVideoSpCover:after {
          bottom: 0;
          transform-origin: left bottom;
        }
        .js_keyMovie.is_playing .js_keyMovie_bgVideoSpCover:after,
        .js_keyMovie.is_playing .js_keyMovie_bgVideoSpCover:before {
          scale: 1 1;
        }
      }
      .js_keyMoviePlayer {
        background: #000;
        contain: size layout;
        height: 100%;
        left: 0;
        opacity: 0;
        overflow: hidden;
        position: fixed;
        top: 0;
        transition: opacity 0.3s ease-out;
        width: 100%;
      }
      .js_keyMoviePlayer.is_show {
        transition: opacity 0.6s ease-in-out;
      }
      .js_keyMoviePlayer:not(.is_visible) {
        display: none;
      }
      .js_keyMoviePlayer_body {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_keyMoviePlayer_closeBody {
        color: #fff;
        cursor: pointer;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_keyMoviePlayer_closeBody {
          align-items: center;
          flex-direction: column;
          position: absolute;
          row-gap: calc(var(--a-s, 1px) * 16);
          width: calc(var(--a-s, 1px) * 96);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_keyMoviePlayer_closeBody {
          display: none;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_keyMoviePlayer_closeBodyIcon {
          align-items: center;
          aspect-ratio: 1/1;
          display: flex;
          justify-content: center;
          position: relative;
          width: 100%;
        }
        .js_keyMoviePlayer_closeBodyFrame {
          border: 1px solid hsla(0, 0%, 100%, 0.4);
          border-radius: 50%;
          contain: size layout;
          height: 100%;
          left: 0;
          position: absolute;
          top: 0;
          width: 100%;
        }
      }
      .js_keyMoviePlayer_closeBodyFrame:after {
        background: currentColor;
        content: "";
        display: block;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_keyMoviePlayer_closeBodyFrame:after {
          height: 2px;
          inset: auto auto -1px calc(50% - var(--a-s, 1px) * 11);
          width: calc(var(--a-s, 1px) * 22);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_keyMoviePlayer_closeBodyFrame:after {
          height: 1px;
          inset: auto 0 -1px auto;
          width: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_keyMoviePlayer_closeBodyArw {
          width: calc(var(--a-s, 1px) * 30);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_keyMoviePlayer_closeBodyArw {
          width: calc(var(--a-s, 1px) * 10);
        }
      }
      .js_keyMoviePlayer_closeBodyArw svg {
        fill: currentColor;
      }
      .js_keyMoviePlayer_spClose {
        opacity: 0;
        position: absolute;
        right: 0;
        top: 0;
        transition: opacity 0.5s ease-in-out;
      }
      html.device-desktop .js_keyMoviePlayer_spClose {
        display: none;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_keyMoviePlayer_spClose {
          padding: calc(var(--a-s, 1px) * 32) calc(var(--a-s, 1px) * 30);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_keyMoviePlayer_spClose {
          padding: calc(var(--a-s, 1px) * 20);
        }
      }
      .js_keyMoviePlayer.is_mouseMoving .js_keyMoviePlayer_spClose {
        transition: opacity 0.2s ease-out;
      }
      .js_keyMoviePlayer_spCloseInner {
        display: block;
      }
      .js_keyMoviePlayer_spCloseInner svg {
        fill: #fff;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_keyMoviePlayer_spCloseInner {
          height: calc(var(--a-s, 1px) * 32);
          width: calc(var(--a-s, 1px) * 60);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_keyMoviePlayer_spCloseInner {
          height: calc(var(--a-s, 1px) * 18);
          width: calc(var(--a-s, 1px) * 33.5);
        }
      }
      .js_keyMoviePlayer_seekWrap {
        display: flex;
        justify-content: center;
        left: 50%;
        position: absolute;
        width: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_keyMoviePlayer_seekWrap {
          bottom: calc(var(--o-s, 1px) * 31);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_keyMoviePlayer_seekWrap {
          bottom: calc(var(--o-s, 1px) * 22);
        }
      }
      .js_keyMoviePlayer_seek {
        flex-shrink: 0;
        padding: calc(var(--o-s, 1px) * 20);
      }
      .js_keyMoviePlayer_seekBar {
        background: hsla(0, 0%, 100%, 0.4);
        display: block;
        opacity: 0;
        position: relative;
        transition: opacity 0.5s ease-in-out;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_keyMoviePlayer_seekBar {
          height: 3px;
          width: calc(var(--o-s, 1px) * 720);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_keyMoviePlayer_seekBar {
          height: 3px;
          width: calc(var(--o-s, 1px) * 290);
        }
      }
      .js_keyMoviePlayer.is_mouseMoving .js_keyMoviePlayer_seekBar {
        transition: opacity 0.2s ease-out;
      }
      .js_keyMoviePlayer_seekFill {
        background: #fff;
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        transform: scaleX(0) scaleY(1);
        transform-origin: left top;
        width: 100%;
      }
      .js_textFade {
        opacity: 0;
        position: relative;
        translate: calc(var(--a-s, 1px) * 120);
      }
      .js_textFade.is_visible {
        transition: opacity 1.2s ease-in-out,
          translate 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
        translate: 0;
      }
      .js_map {
        contain: size layout;
        height: 100%;
        left: 0;
        overflow: hidden;
        position: absolute;
        top: 0;
        width: 100%;
        --map-duration: 750ms;
        --map-easing: cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_map[data-mode="mini"] {
        overflow: visible;
      }
      .js_map [data-cat="tram"] {
        color: #11b5cb;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="tram"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #0d8b9c;
        }
      }
      .js_map [data-cat="all"] {
        color: #736b5c;
      }
      @media (any-hover: hover) {
        .js_map [data-cat="all"].js_map_markerItem:hover .js_map_markerPinBase {
          color: #575145;
        }
      }
      .js_map [data-cat="photospot"] {
        color: #333;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="photospot"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #1a1a1a;
        }
      }
      .js_map [data-cat="hotel"],
      .js_map [data-cat="residence"] {
        color: #04d5c8;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="hotel"].js_map_markerItem:hover
          .js_map_markerPinBase,
        .js_map
          [data-cat="residence"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #03a399;
        }
      }
      .js_map [data-cat="dining"] {
        color: #ff8700;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="dining"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #cc6c00;
        }
      }
      .js_map [data-cat="pool"] {
        color: #5392f5;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="pool"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #2373f2;
        }
      }
      .js_map [data-cat="pool"] .js_map_catLabelColor {
        color: #2371ed;
      }
      .js_map [data-cat="culture"] {
        color: #00bd35;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="culture"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #008a27;
        }
      }
      .js_map [data-cat="spa"] {
        color: #dd3e7e;
      }
      @media (any-hover: hover) {
        .js_map [data-cat="spa"].js_map_markerItem:hover .js_map_markerPinBase {
          color: #c52364;
        }
      }
      .js_map [data-cat="wellness"] {
        color: #0e667e;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="wellness"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #094150;
        }
      }
      .js_map [data-cat="anniversary"] {
        color: #c0af11;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="anniversary"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #91840d;
        }
      }
      .js_map [data-cat="shop"] {
        color: #731881;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="shop"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #4d1056;
        }
      }
      .js_map [data-cat="plaza"] {
        color: #9bc82d;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="plaza"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #7b9e24;
        }
      }
      .js_map [data-cat="wedding"] {
        color: #ea7078;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="wedding"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #e3444e;
        }
      }
      .js_map [data-cat="meeting"] {
        color: #878787;
      }
      @media (any-hover: hover) {
        .js_map
          [data-cat="meeting"].js_map_markerItem:hover
          .js_map_markerPinBase {
          color: #6e6e6e;
        }
      }
      .js_map[data-mode="mini"] {
        pointer-events: none;
      }
      .js_map_stage {
        contain: size layout;
        cursor: grab;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
        -webkit-font-smoothing: subpixel-antialiased;
      }
      .js_map_stage.is_dragging,
      .js_map_stage.is_dragging * {
        cursor: grabbing;
      }
      .js_map_stageCanvas {
        contain: size layout;
        height: 100%;
        left: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_map_stageBase {
        left: 0;
        position: absolute;
        top: 0;
        transform-origin: left top;
      }
      .js_map_stageOuter {
        display: none;
        height: 300%;
        left: -100%;
        position: absolute;
        top: -100%;
        width: 300%;
      }
      .js_map_stageBody {
        contain: size layout;
        display: none;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_map_tram {
        position: static;
      }
      .js_map_tramTrack {
        contain: size layout;
        height: 100%;
        left: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_map_tramTrack svg [data-name="baggy"],
      .js_map_tramTrack svg [data-name="balloon_pc_center"],
      .js_map_tramTrack svg [data-name="balloon_pc_end"],
      .js_map_tramTrack svg [data-name="balloon_sp_center"],
      .js_map_tramTrack svg [data-name="balloon_sp_end"],
      .js_map_tramTrack svg [data-name="guide"] {
        display: none;
        pointer-events: none;
      }
      .js_map:not([data-zoom="0"]) .js_map_tramTrack svg [data-name$="_z0"] > *,
      .js_map:not([data-zoom="1"]) .js_map_tramTrack svg [data-name$="_z1"] > *,
      .js_map:not([data-zoom="2"])
        .js_map_tramTrack
        svg
        [data-name$="_z2"]
        > * {
        visibility: hidden !important;
      }
      .js_map_tramTrack svg [data-name^="off_"] > .is_hidden,
      .js_map_tramTrack svg [data-name^="on_"] > * {
        visibility: hidden;
      }
      .js_map_tramTrack svg [data-name^="on_"] > .is_visible {
        visibility: visible;
      }
      .js_map_tramTrack svg [data-name^="button"] > * {
        cursor: pointer;
        opacity: 0 !important;
        pointer-events: auto;
      }
      .js_map_tramTrack svg [data-name="area"] > * {
        visibility: hidden;
      }
      .js_map_tramTrack svg [data-name="area"] > .is_visible {
        animation: js_map_tramTrackArea 2.1s linear infinite;
        visibility: visible;
      }
      @media (any-hover: hover) {
        .js_map_tramTrack:has([data-name="button"] path:first-child:hover)
          [data-name*="_z"]
          > g:first-child,
        .js_map_tramTrack:has([data-name="button"] path:nth-child(2):hover)
          [data-name*="_z"]
          > g:nth-child(2) {
          -webkit-filter: brightness(0.9);
          filter: brightness(0.9);
        }
        .js_map_stage[data-tram-index="0"]
          .js_map_tramTrack
          [data-name="button"]
          path:first-child,
        .js_map_stage[data-tram-index="1"]
          .js_map_tramTrack
          [data-name="button"]
          path:nth-child(2) {
          pointer-events: none;
        }
      }
      @keyframes js_map_tramTrackArea {
        0% {
          opacity: 0;
        }
        20%,
        80% {
        }
        to {
          opacity: 0;
        }
      }
      .js_map_tramTrackBalloonItem {
        left: 50%;
        opacity: 0;
        position: absolute;
        top: 50%;
        visibility: hidden;
      }
      .js_map_tramTrackBalloonItem.is_visible {
        transition: opacity 0.5s ease-in-out;
        visibility: visible;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map.is_entered.is_zoomOut .js_map_tramTrackBalloonItem,
        .js_map.is_zoomIn .js_map_tramTrackBalloonItem {
          opacity: 0;
          visibility: hidden;
        }
      }
      .js_map_tramTrackBalloonItemLine {
        border-left: 1px solid #333;
        border-top: 1px solid #333;
        position: absolute;
        right: 0;
        top: 0;
      }
      .js_map_tramTrackBalloonItemAnchor {
        align-items: center;
        display: flex;
        height: 0;
        justify-content: center;
        left: 0;
        position: absolute;
        top: 0;
        width: 0;
      }
      .js_map_tramTrackBalloonItemAnchor > * {
        flex-shrink: 0;
      }
      .js_map_tramTrackBalloonItemFloat {
        background: #fff;
        border-radius: calc(var(--a-s, 1px) * 4);
        -webkit-box-shadow: calc(var(--a-s, 1px) * 1) calc(var(--a-s, 1px) * 1)
          calc(var(--a-s, 1px) * 2) 0 rgba(0, 0, 0, 0.15);
        box-shadow: calc(var(--a-s, 1px) * 1) calc(var(--a-s, 1px) * 1)
          calc(var(--a-s, 1px) * 2) 0 rgba(0, 0, 0, 0.15);
        display: flex;
        flex-direction: column;
        position: relative;
        white-space: nowrap;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_tramTrackBalloonItemFloat {
          padding: calc(var(--a-s, 1px) * 11) calc(var(--a-s, 1px) * 13);
          row-gap: calc(var(--a-s, 1px) * 8);
          width: calc(var(--a-s, 1px) * 90);
        }
        html[lang="en"] .js_map_tramTrackBalloonItemFloat {
          width: calc(var(--a-s, 1px) * 109);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_tramTrackBalloonItemFloat {
          padding: calc(var(--a-s, 1px) * 10) calc(var(--a-s, 1px) * 14);
          row-gap: calc(var(--a-s, 1px) * 6);
          width: calc(var(--a-s, 1px) * 85);
        }
        html[lang="en"] .js_map_tramTrackBalloonItemFloat {
          width: calc(var(--a-s, 1px) * 95);
        }
      }
      .js_map_tramTrackBalloonItemFloat:after {
        background: #11b5cb;
        content: "";
        height: 2px;
        inset: 0 calc(var(--a-s, 1px) * 12) auto;
        position: absolute;
      }
      .js_map_tramTrackBalloonItemFloatRow {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_tramTrackBalloonItemFloatRow {
          column-gap: calc(var(--a-s, 1px) * 6);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_tramTrackBalloonItemFloatRow {
          column-gap: calc(var(--a-s, 1px) * 6);
        }
      }
      .js_map_tramTrackBalloonItemFloatIcon {
        position: relative;
      }
      .js_map_tramTrackBalloonItemFloatIcon svg {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_tramTrackBalloonItemFloatIcon {
          height: calc(var(--a-s, 1px) * 17);
          width: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_tramTrackBalloonItemFloatIcon {
          height: calc(var(--a-s, 1px) * 15);
          width: calc(var(--a-s, 1px) * 12);
        }
      }
      .js_map_tramTrackBalloonItemFloatDelim {
        background-image: linear-gradient(
          180deg,
          #333,
          #333 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        height: 10px;
        position: relative;
        width: 1px;
      }
      .js_map_tramTrackBalloonItemFloatIconMin {
        margin-left: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_tramTrackBalloonItemFloatIconMin {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 12);
          font-weight: 400;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 16);
          margin-block: -0.34em -0.31em;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_tramTrackBalloonItemFloatIconMin {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 10);
          font-weight: 400;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 15);
          margin-block: -0.42em -0.39em;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_tramTrackBalloonItemFloatIconMin b {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 14);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 20);
          margin-block: -0.38em -0.35em;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_tramTrackBalloonItemFloatIconMin b {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 13);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 16);
          margin-block: -0.29em -0.26em;
        }
      }
      .js_map_tramCar {
        cursor: pointer;
        left: 50%;
        position: absolute;
        top: 50%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_tramCar {
          height: calc(var(--a-s, 1px) * 33);
          margin-left: calc(var(--a-s, 1px) * -27);
          margin-top: calc(var(--a-s, 1px) * -16.5);
          width: calc(var(--a-s, 1px) * 54);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_tramCar {
          height: calc(var(--a-s, 1px) * 22);
          margin-left: calc(var(--a-s, 1px) * -18);
          margin-top: calc(var(--a-s, 1px) * -11);
          width: calc(var(--a-s, 1px) * 36);
        }
      }
      .js_map_tramCar.is_stopping {
        z-index: 3;
      }
      .js_map_carBalloon {
        align-items: flex-end;
        bottom: 100%;
        display: flex;
        justify-content: center;
        left: 50%;
        opacity: 0;
        pointer-events: none;
        position: absolute;
        scale: 0;
        transform-origin: center bottom;
        transition: all 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
        translate: 0 calc(var(--a-s, 1px) * 6);
        width: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_carBalloon {
          margin-bottom: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_carBalloon {
          margin-bottom: calc(var(--a-s, 1px) * 3);
        }
      }
      .js_map_baggy.is_stopping .js_map_carBalloon,
      .js_map_tramCar.is_stopping .js_map_carBalloon {
        scale: 1;
        translate: 0;
      }
      .js_map_carBalloonBody {
        align-items: center;
        display: flex;
        flex-direction: column;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_carBalloonBody {
          border-radius: calc(var(--a-s, 1px) * 4);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_carBalloonBody {
          border-radius: calc(var(--a-s, 1px) * 3.6);
        }
      }
      .js_map_carBalloonBody:after {
        background-color: #4d4b49;
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        content: "";
        display: block;
        position: relative;
        translate: 0 -1px;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_carBalloonBody:after {
          height: calc(var(--a-s, 1px) * 8);
          width: calc(var(--a-s, 1px) * 15);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_carBalloonBody:after {
          height: calc(var(--a-s, 1px) * 7);
          width: calc(var(--a-s, 1px) * 13.5);
        }
      }
      .js_map_carBalloonText {
        background-color: #4d4b49;
        color: #fff;
        white-space: nowrap;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_carBalloonText {
          border-radius: calc(var(--a-s, 1px) * 4);
          -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.15);
          padding: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_carBalloonText {
          border-radius: calc(var(--a-s, 1px) * 3.6);
          -webkit-box-shadow: 1px 1px 4px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 1px 1px 4px 0 rgba(0, 0, 0, 0.15);
          padding: calc(var(--a-s, 1px) * 8);
        }
      }
      .js_map_baggy {
        cursor: pointer;
        left: 50%;
        position: absolute;
        top: 50%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_baggy {
          height: calc(var(--a-s, 1px) * 26.4);
          margin-left: calc(var(--a-s, 1px) * -21.6);
          margin-top: calc(var(--a-s, 1px) * -13.2);
          width: calc(var(--a-s, 1px) * 43.2);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_baggy {
          height: calc(var(--a-s, 1px) * 17.6);
          margin-left: calc(var(--a-s, 1px) * -14.4);
          margin-top: calc(var(--a-s, 1px) * -8.8);
          width: calc(var(--a-s, 1px) * 28.8);
        }
      }
      .js_map_baggy.is_stopping {
        z-index: 3;
      }
      .js_map_baggy:not(.is_visible) {
        display: none;
      }
      .js_map_marker {
        left: 50%;
        position: absolute;
        top: 50%;
      }
      .js_map_markerItem {
        align-items: flex-end;
        contain: layout style size;
        cursor: pointer;
        display: flex;
        height: 0;
        justify-content: center;
        left: 0;
        position: absolute;
        top: 0;
        width: 0;
        z-index: 1;
      }
      .js_map_markerItem[data-id^="tram"] {
        z-index: 2;
      }
      .js_map[data-mode="embed"] .js_map_markerItem[data-id^="tram"] {
        pointer-events: none;
      }
      .js_map.is_categorySelected .js_map_markerItem:not([data-id^="tram"]),
      .js_map_markerItem[data-size="2"] {
        z-index: 2;
      }
      .js_map_markerItem[data-size="3"] {
        z-index: 3 !important;
      }
      .js_map_markerItem.is_active,
      .js_map_markerItem.is_adminActive,
      .js_map_markerItem.is_detailActive {
        z-index: 4 !important;
      }
      .js_map[data-mode="embed"] .js_map_markerItem.is_active {
        pointer-events: none;
      }
      .js_map_markerItem.is_active,
      .js_map_markerItem.is_active .js_map_catLabelColor {
        color: #f56173 !important;
      }
      .js_map_markerItem:not(.is_visible.is_inView) {
        display: none !important;
      }
      .js_map_markerPin {
        flex-shrink: 0;
        pointer-events: none;
        position: relative;
      }
      .js_map_markerPin:after {
        background: rgba(255, 0, 0, 0);
        border-radius: 50%;
        content: "";
        inset: 0;
        pointer-events: auto;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="3"] .js_map_markerPin,
        .js_map_markerItem[data-size="3"]
          .js_map_markerPin
          .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 64);
          width: calc(var(--a-s, 1px) * 56);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="3"] .js_map_markerPin,
        .js_map_markerItem[data-size="3"]
          .js_map_markerPin
          .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 42);
          width: calc(var(--a-s, 1px) * 37);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="3"]
          .js_map_markerPin
          .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * -28);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="3"]
          .js_map_markerPin
          .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * -18.5);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="3"] .js_map_markerPin:after {
          inset: calc(var(--a-s, 1px) * -1);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="3"] .js_map_markerPin:after {
          inset: calc(var(--a-s, 1px) * 0);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="2"] .js_map_markerPin,
        .js_map_markerItem[data-size="2"]
          .js_map_markerPin
          .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 32);
          width: calc(var(--a-s, 1px) * 28);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="2"] .js_map_markerPin,
        .js_map_markerItem[data-size="2"]
          .js_map_markerPin
          .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 28);
          width: calc(var(--a-s, 1px) * 25);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="2"]
          .js_map_markerPin
          .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * -14);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="2"]
          .js_map_markerPin
          .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * -12.5);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="2"] .js_map_markerPin:after {
          inset: calc(var(--a-s, 1px) * -1);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="2"] .js_map_markerPin:after {
          inset: calc(var(--a-s, 1px) * 0);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="1"] .js_map_markerPin,
        .js_map_markerItem[data-size="1"]
          .js_map_markerPin
          .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 16);
          width: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="1"] .js_map_markerPin,
        .js_map_markerItem[data-size="1"]
          .js_map_markerPin
          .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 16);
          width: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="1"]
          .js_map_markerPin
          .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * -6);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="1"]
          .js_map_markerPin
          .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * -6);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="1"] .js_map_markerPin:after {
          inset: calc(var(--a-s, 1px) * -4);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="1"] .js_map_markerPin:after {
          inset: calc(var(--a-s, 1px) * -4);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="tram"] .js_map_markerPin,
        .js_map_markerItem[data-size="tram"]
          .js_map_markerPin
          .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 48);
          width: calc(var(--a-s, 1px) * 42);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="tram"] .js_map_markerPin,
        .js_map_markerItem[data-size="tram"]
          .js_map_markerPin
          .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 28);
          width: calc(var(--a-s, 1px) * 25);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="tram"]
          .js_map_markerPin
          .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * -21);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="tram"]
          .js_map_markerPin
          .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * -12.5);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="active"] .js_map_markerPin,
        .js_map_markerItem[data-size="active"]
          .js_map_markerPin
          .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 64);
          width: calc(var(--a-s, 1px) * 51);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="active"] .js_map_markerPin,
        .js_map_markerItem[data-size="active"]
          .js_map_markerPin
          .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 42);
          width: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="active"]
          .js_map_markerPin
          .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * -25.5);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="active"]
          .js_map_markerPin
          .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * -16);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem.is_hidden .js_map_markerPin,
        .js_map_markerItem.is_hidden .js_map_markerPin .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 0);
          width: calc(var(--a-s, 1px) * 0);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem.is_hidden .js_map_markerPin,
        .js_map_markerItem.is_hidden .js_map_markerPin .js_map_markerPinInner {
          height: calc(var(--a-s, 1px) * 0);
          width: calc(var(--a-s, 1px) * 0);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem.is_hidden .js_map_markerPin .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * 0);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem.is_hidden .js_map_markerPin .js_map_markerPinInner {
          margin-left: calc(var(--a-s, 1px) * 0);
        }
      }
      .js_map_markerItem.is_adminActive .js_map_markerPin {
        color: lime;
      }
      .js_map[data-mode="mini"] .js_map_markerPin {
        transform-origin: center bottom;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map[data-mode="mini"] .js_map_markerPin {
          scale: 0.3;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map[data-mode="mini"] .js_map_markerPin {
          scale: 0.9;
        }
      }
      .js_map_markerPinInner {
        bottom: 0;
        left: 50%;
        position: absolute;
        transition: width 0.3s cubic-bezier(0.165, 0.84, 0.44, 1),
          height 0.3s cubic-bezier(0.165, 0.84, 0.44, 1),
          margin 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
      }
      .js_map_markerPinInner2 {
        contain: size layout;
        height: 100%;
        left: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        transform-origin: center bottom;
        width: 100%;
      }
      @media (any-hover: hover) {
        .js_map_markerItem:hover .js_map_markerPinInner2 {
          animation: js_map_markerPinInner2 0.5s
            cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
        }
      }
      @keyframes js_map_markerPinInner2 {
        0% {
          transform: scale(1);
        }
        15% {
          transform: scale(1.2);
        }
        to {
          transform: scale(1);
        }
      }
      .js_map_markerPinShadow {
        align-items: flex-start;
        bottom: 0;
        display: flex;
        height: 100%;
        justify-content: center;
        left: 0;
        position: absolute;
        width: 100%;
      }
      .js_map_markerPinShadowInner {
        background-size: 100% 100%;
        flex-shrink: 0;
        position: relative;
        transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
      }
      .js_map_markerItem[data-size="3"] .js_map_markerPinShadowInner {
        background-image: url(https://www.ayana.com/assets/202601061119/img/map/marker-shadow/3.png);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="3"] .js_map_markerPinShadowInner {
          height: calc(var(--a-s, 1px) * 72);
          width: calc(var(--a-s, 1px) * 64);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="3"] .js_map_markerPinShadowInner {
          height: calc(var(--a-s, 1px) * 47.52);
          width: calc(var(--a-s, 1px) * 42.24);
        }
      }
      .js_map_markerItem[data-size="2"] .js_map_markerPinShadowInner {
        background-image: url(https://www.ayana.com/assets/202601061119/img/map/marker-shadow/2.png);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="2"] .js_map_markerPinShadowInner {
          height: calc(var(--a-s, 1px) * 36);
          width: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="2"] .js_map_markerPinShadowInner {
          height: calc(var(--a-s, 1px) * 32.4);
          width: calc(var(--a-s, 1px) * 28.8);
        }
      }
      .js_map_markerItem[data-size="tram"] .js_map_markerPinShadowInner {
        background-image: url(https://www.ayana.com/assets/202601061119/img/map/marker-shadow/tram.png);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="tram"] .js_map_markerPinShadowInner {
          height: calc(var(--a-s, 1px) * 54);
          width: calc(var(--a-s, 1px) * 48);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="tram"] .js_map_markerPinShadowInner {
          height: calc(var(--a-s, 1px) * 32.4);
          width: calc(var(--a-s, 1px) * 28.8);
        }
      }
      .js_map_markerItem[data-size="1"] .js_map_markerPinShadowInner {
        background-image: url(https://www.ayana.com/assets/202601061119/img/map/marker-shadow/1.png);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="1"] .js_map_markerPinShadowInner {
          height: calc(var(--a-s, 1px) * 18);
          width: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="1"] .js_map_markerPinShadowInner {
          height: calc(var(--a-s, 1px) * 18);
          width: calc(var(--a-s, 1px) * 14);
        }
      }
      .js_map_markerItem[data-size="active"] .js_map_markerPinShadowInner {
        background-image: url(https://www.ayana.com/assets/202601061119/img/map/marker-shadow/active.png);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="active"] .js_map_markerPinShadowInner {
          height: calc(var(--a-s, 1px) * 72);
          width: calc(var(--a-s, 1px) * 59);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="active"] .js_map_markerPinShadowInner {
          height: calc(var(--a-s, 1px) * 45.36);
          width: calc(var(--a-s, 1px) * 37.17);
        }
      }
      .js_map_markerItem.is_hidden .js_map_markerPinShadowInner {
        height: calc(var(--a-s, 1px) * 0);
        width: calc(var(--a-s, 1px) * 0);
      }
      .js_map_markerPinBase,
      .js_map_markerPinBase svg {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_map_markerPinBase svg {
        transform-origin: center bottom;
      }
      .is_inActive .js_map_markerPinBase svg,
      .js_map_markerItem.is_adminActive .js_map_markerPinBase svg {
        fill: currentColor;
      }
      .js_map_markerItem.is_animeReady .js_map_markerPinBase svg {
        scale: 0;
      }
      .js_map_markerItem.is_animeStart .js_map_markerPinBase svg {
        scale: 1;
        transition: scale 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
      }
      .js_map_markerPinSub {
        bottom: 100%;
        -webkit-filter: drop-shadow(
          0 calc(var(--a-s, 1px) * 1) calc(var(--a-s, 1px) * 1)
            rgba(0, 0, 0, 0.25)
        );
        filter: drop-shadow(
          0 calc(var(--a-s, 1px) * 1) calc(var(--a-s, 1px) * 1)
            rgba(0, 0, 0, 0.25)
        );
        left: 50%;
        pointer-events: auto;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerPinSub {
          height: calc(var(--a-s, 1px) * 24);
          margin-bottom: calc(var(--a-s, 1px) * -3);
          margin-left: calc(var(--a-s, 1px) * -12);
          width: calc(var(--a-s, 1px) * 24);
        }
        .js_map_markerItem[data-size="3"] .js_map_markerPinSub {
          height: calc(var(--a-s, 1px) * 32);
          margin-bottom: calc(var(--a-s, 1px) * -5);
          margin-left: calc(var(--a-s, 1px) * -16);
          width: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerPinSub {
          height: calc(var(--a-s, 1px) * 21);
          margin-bottom: calc(var(--a-s, 1px) * -2);
          margin-left: calc(var(--a-s, 1px) * -10.5);
          width: calc(var(--a-s, 1px) * 21);
        }
      }
      .js_map_markerItem.is_active .js_map_markerPinSub {
        visibility: hidden;
      }
      .js_map_markerPinSub svg {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_map_markerItem[data-photospot="0"] .js_map_markerPinSub.__photo {
        display: none;
      }
      .js_map_markerLabelWrap {
        aspect-ratio: 1/1;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_map_markerItem[data-label-pos^="0/"] .js_map_markerLabelWrap {
        aspect-ratio: auto;
        height: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-label-pos^="2/"][data-has-sub="1"]:not(
            .is_active
          )
          .js_map_markerLabelWrap {
          margin-top: calc(var(--a-s, 1px) * -25);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-label-pos^="2/"][data-has-sub="1"]:not(
            .is_active
          )
          .js_map_markerLabelWrap {
          margin-top: calc(var(--a-s, 1px) * -22);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-label-pos^="2/"][data-has-sub="1"][data-size="2"]:not(
            .is_active
          )
          .js_map_markerLabelWrap {
          margin-top: calc(var(--a-s, 1px) * -18);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-label-pos^="2/"][data-has-sub="1"][data-size="2"]:not(
            .is_active
          )
          .js_map_markerLabelWrap {
          margin-top: calc(var(--a-s, 1px) * -16);
        }
      }
      .js_map_markerItem[data-hide-text="1"]:not(.is_active)
        .js_map_markerLabelWrap,
      .js_map_markerItem[data-size="0"]:not(.is_active) .js_map_markerLabelWrap,
      .js_map_markerItem[data-size="1"]:not(.is_active) .js_map_markerLabelWrap,
      [data-mode="embed"] .js_map_markerLabelWrap {
        display: none;
      }
      .js_map_markerItem.is_active .js_map_markerLabelWrap,
      .js_map_markerItem.is_detailActive .js_map_markerLabelWrap {
        display: block !important;
      }
      .js_map[data-mode="mini"] .js_map_markerLabelWrap {
        display: none;
      }
      .js_map_markerLabel {
        display: flex;
        height: 0;
        position: absolute;
        width: 0;
      }
      .js_map_markerItem[data-size="1"] .js_map_markerLabel {
        display: none;
      }
      .js_map_markerItem[data-label-pos^="0/"] .js_map_markerLabel {
        align-items: flex-start;
        bottom: 0;
        justify-content: center;
        left: 50%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-label-pos^="0/"] .js_map_markerLabel {
          margin-bottom: calc(var(--a-s, 1px) * -8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-label-pos^="0/"] .js_map_markerLabel {
          margin-bottom: calc(var(--a-s, 1px) * -5);
        }
      }
      .js_map_markerItem[data-label-pos^="0/-1"] .js_map_markerLabel {
        justify-content: flex-start;
        left: 0;
        text-align: left;
      }
      .js_map_markerItem[data-label-pos^="0/1"] .js_map_markerLabel {
        justify-content: flex-end;
        left: auto;
        right: 0;
        text-align: right;
      }
      .js_map_markerItem[data-label-pos^="0/1"]
        .js_map_markerLabel
        .js_map_markerLabelBody {
        align-items: flex-end;
      }
      .js_map_markerItem[data-label-pos^="0/0"]
        .js_map_markerLabel
        .js_map_markerLabelBody {
        align-items: center;
        text-align: center;
      }
      .js_map_markerItem[data-label-pos^="1/"] .js_map_markerLabel {
        align-items: center;
        justify-content: flex-end;
        left: 0;
        text-align: right;
        top: 50%;
      }
      .js_map_markerItem[data-label-pos^="1/"]
        .js_map_markerLabel
        .js_map_markerLabelBody {
        align-items: flex-end;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-label-pos^="1/"] .js_map_markerLabel {
          margin-left: calc(var(--a-s, 1px) * -8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-label-pos^="1/"] .js_map_markerLabel {
          margin-left: calc(var(--a-s, 1px) * -5);
        }
      }
      .js_map_markerItem[data-label-pos^="2/"] .js_map_markerLabel {
        align-items: flex-end;
        justify-content: center;
        left: 50%;
        top: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-label-pos^="2/"] .js_map_markerLabel {
          margin-top: calc(var(--a-s, 1px) * -8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-label-pos^="2/"] .js_map_markerLabel {
          margin-top: calc(var(--a-s, 1px) * -5);
        }
      }
      .js_map_markerItem[data-label-pos^="2/-1"] .js_map_markerLabel {
        justify-content: flex-end;
        left: auto;
        right: 0;
        text-align: right;
      }
      .js_map_markerItem[data-label-pos^="2/-1"]
        .js_map_markerLabel
        .js_map_markerLabelBody {
        align-items: flex-end;
      }
      .js_map_markerItem[data-label-pos^="2/1"] .js_map_markerLabel {
        justify-content: flex-start;
        left: 0;
        text-align: left;
      }
      .js_map_markerItem[data-label-pos^="2/0"]
        .js_map_markerLabel
        .js_map_markerLabelBody {
        align-items: center;
        text-align: center;
      }
      .js_map_markerItem[data-label-pos^="3/"] .js_map_markerLabel {
        align-items: center;
        justify-content: flex-start;
        right: 0;
        top: 50%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-label-pos^="3/"] .js_map_markerLabel {
          margin-right: calc(var(--a-s, 1px) * -8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-label-pos^="3/"] .js_map_markerLabel {
          margin-right: calc(var(--a-s, 1px) * -5);
        }
      }
      .js_map_markerLabelInner {
        color: currentColor;
        display: flex;
        flex-direction: column;
        flex-shrink: 0;
      }
      .js_map_markerItem.is_animeForcedLabel .js_map_markerLabelInner {
        opacity: 0 !important;
        transition: none;
      }
      .js_map_markerItem.is_animeStart .js_map_markerLabelInner {
        opacity: 1 !important;
        transition: opacity 0.3s ease-in-out;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerLabelInner {
          max-width: calc(var(--a-s, 1px) * 240);
          row-gap: calc(var(--a-s, 1px) * 8);
        }
        html[lang="en"] .js_map_markerLabelInner {
          row-gap: calc(var(--a-s, 1px) * 11);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerLabelInner {
          max-width: calc(var(--a-s, 1px) * 200);
          row-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerLabelInner {
          text-shadow: calc(var(--o-s, 1px) * -1.732) calc(var(--o-s, 1px) * -1)
              0 #fff,
            calc(var(--o-s, 1px) * -1) calc(var(--o-s, 1px) * -1.732) 0 #fff,
            0 calc(var(--o-s, 1px) * -2) 0 #fff,
            calc(var(--o-s, 1px) * 1.732) calc(var(--o-s, 1px) * -1) 0 #fff,
            calc(var(--o-s, 1px) * 1) calc(var(--o-s, 1px) * -1.732) 0 #fff,
            calc(var(--o-s, 1px) * 2) 0 0 #fff,
            calc(var(--o-s, 1px) * 1.732) calc(var(--o-s, 1px) * 1) 0 #fff,
            calc(var(--o-s, 1px) * 1) calc(var(--o-s, 1px) * 1.732) 0 #fff,
            0 calc(var(--o-s, 1px) * 2) 0 #fff,
            calc(var(--o-s, 1px) * -1.732) calc(var(--o-s, 1px) * 1) 0 #fff,
            calc(var(--o-s, 1px) * -1) calc(var(--o-s, 1px) * 1.732) 0 #fff,
            calc(var(--o-s, 1px) * -2) 0 0 #fff;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerLabelInner {
          text-shadow: calc(var(--o-s, 1px) * -1.414)
              calc(var(--o-s, 1px) * -1.414) 0 #fff,
            0 calc(var(--o-s, 1px) * -2) 0 #fff,
            calc(var(--o-s, 1px) * 1.414) calc(var(--o-s, 1px) * -1.414) 0 #fff,
            calc(var(--o-s, 1px) * 2) 0 0 #fff,
            calc(var(--o-s, 1px) * 1.414) calc(var(--o-s, 1px) * 1.414) 0 #fff,
            0 calc(var(--o-s, 1px) * 2) 0 #fff,
            calc(var(--o-s, 1px) * -1.414) calc(var(--o-s, 1px) * 1.414) 0 #fff,
            calc(var(--o-s, 1px) * -2) 0 0 #fff;
        }
      }
      .js_map_markerLabelBody {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        text-rendering: optimizeSpeed;
      }
      .js_map_markerLabelBody span {
        display: inline-block;
        pointer-events: auto;
        position: relative;
      }
      .js_map_markerItem.is_active .js_map_markerLabelBody span {
        pointer-events: none;
      }
      .js_map_markerLabelBody.__tram {
        color: #333;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerLabelBody.__tramPrefix {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 12);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 16);
          margin-block: -0.34em -0.31em;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerLabelBody.__tramPrefix {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 11);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 12);
          margin-block: -0.22em -0.19em;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerLabelBody.__tramName {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 18);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 28);
          margin-block: -0.45em -0.42em;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerLabelBody.__tramName {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 13);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 16);
          margin-block: -0.29em -0.26em;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerLabelBody.__tramSuffix {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 12);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 16);
          margin-block: -0.34em -0.31em;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerLabelBody.__tramSuffix {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 11);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 12);
          margin-block: -0.22em -0.19em;
        }
      }
      .js_map_markerLabelBody.__copy {
        color: #333;
      }
      .js_map_markerItem.is_active .js_map_markerLabelBody.__copy {
        visibility: hidden;
      }
      .js_map_markerItem:not([data-size="3"]) .js_map_markerLabelBody.__copy {
        display: none;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerLabelBody.__copy {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 14);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 18);
          margin-block: -0.31em -0.28em;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerLabelBody.__copy {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 11);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 12);
          margin-block: -0.22em -0.19em;
        }
      }
      [data-cat="residence"] .js_map_markerLabelBody.__name {
        color: #333;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerLabelBody.__name {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 14);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 18);
          margin-block: -0.31em -0.28em;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerLabelBody.__name {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 13);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 16);
          margin-block: -0.29em -0.26em;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_markerItem[data-size="3"] .js_map_markerLabelBody.__name {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 18);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 22);
          margin-block: -0.28em -0.25em;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_markerItem[data-size="3"] .js_map_markerLabelBody.__name {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 15);
          font-weight: 500;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 16);
          margin-block: -0.2em -0.17em;
        }
      }
      .js_map_compass {
        position: absolute;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        [data-mode="full"] .js_map_compass {
          bottom: calc(var(--a-s, 1px) * 70);
          right: calc(var(--a-s, 1px) * 31);
          width: calc(var(--a-s, 1px) * 42);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        [data-mode="full"] .js_map_compass {
          bottom: calc(var(--a-s, 1px) * 35);
          right: calc(var(--a-s, 1px) * 20);
          width: calc(var(--a-s, 1px) * 24);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        [data-mode="embed"] .js_map_compass {
          bottom: calc(var(--a-s, 1px) * 116);
          right: var(--dt-pcFloat-pd);
          width: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        [data-mode="embed"] .js_map_compass {
          bottom: calc(var(--a-s, 1px) * 86);
          right: var(--dt-spFloat-pd);
          width: calc(var(--a-s, 1px) * 23.5);
        }
      }
      .js_map_scale {
        align-items: end;
        display: flex;
        position: absolute;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_scale {
          column-gap: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_scale {
          column-gap: calc(var(--a-s, 1px) * 6);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        [data-mode="full"] .js_map_scale {
          bottom: calc(var(--a-s, 1px) * 33);
          right: calc(var(--a-s, 1px) * 31);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        [data-mode="full"] .js_map_scale {
          bottom: calc(var(--a-s, 1px) * 14);
          right: calc(var(--a-s, 1px) * 20);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        [data-mode="embed"] .js_map_scale {
          bottom: var(--dt-pcFloat-pd);
          right: var(--dt-pcFloat-pd);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        [data-mode="embed"] .js_map_scale {
          bottom: var(--dt-spFloat-pd);
          right: var(--dt-spFloat-pd);
        }
      }
      .js_map_scaleBar {
        background: #333;
        position: relative;
        width: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_scaleBar {
          height: 2px;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_scaleBar {
          height: 1px;
        }
      }
      .js_map_scaleBar:after,
      .js_map_scaleBar:before {
        background: #333;
        bottom: 100%;
        content: "";
        height: 2px;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_scaleBar:after,
        .js_map_scaleBar:before {
          width: 2px;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_scaleBar:after,
        .js_map_scaleBar:before {
          width: 1px;
        }
      }
      .js_map_scaleBar:before {
        left: 0;
      }
      .js_map_scaleBar:after {
        right: 0;
      }
      .js_map_scaleBarBase {
        left: 0;
        position: absolute;
        top: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_scaleBarBase {
          width: calc(var(--a-s, 1px) * 90);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_scaleBarBase {
          width: calc(var(--a-s, 1px) * 40);
        }
      }
      .js_map_operationAlert {
        align-items: center;
        background: rgba(0, 0, 0, 0.3);
        color: #fff;
        contain: size layout;
        display: flex;
        height: 100%;
        justify-content: center;
        left: 0;
        opacity: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        transition: opacity 0.4s ease-in-out;
        width: 100%;
        z-index: 5;
      }
      .js_map_operationAlert.is_visible {
        transition: opacity 0.3s ease-out;
      }
      .js_map_operationAlertMsg {
        text-align: center;
      }
      .js_map_current {
        left: 50%;
        position: absolute;
        top: 50%;
      }
      .js_map_current:not(.is_enabled) {
        display: none;
      }
      .js_map_current.is_enabled .js_map_currentRipple {
        background: rgba(35, 113, 237, 0.25);
        border-radius: 50%;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_current.is_enabled .js_map_currentRipple {
          border: calc(var(--a-s, 1px) * 2) solid hsla(0, 0%, 100%, 0.8);
          height: calc(var(--a-s, 1px) * 144);
          left: calc(var(--a-s, 1px) * -72);
          top: calc(var(--a-s, 1px) * -72);
          width: calc(var(--a-s, 1px) * 144);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_current.is_enabled .js_map_currentRipple {
          border: calc(var(--a-s, 1px) * 2) solid hsla(0, 0%, 100%, 0.8);
          height: calc(var(--a-s, 1px) * 112);
          left: calc(var(--a-s, 1px) * -56);
          top: calc(var(--a-s, 1px) * -56);
          width: calc(var(--a-s, 1px) * 112);
        }
      }
      .js_map_currentCenter {
        background: #10b5fb;
        border-radius: 50%;
        -webkit-box-shadow: 0 2px 1px 0 rgba(0, 0, 0, 0.25);
        box-shadow: 0 2px 1px 0 rgba(0, 0, 0, 0.25);
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_map_currentCenter {
          border: calc(var(--a-s, 1px) * 5) solid #fff;
          height: calc(var(--a-s, 1px) * 24);
          left: calc(var(--a-s, 1px) * -12);
          top: calc(var(--a-s, 1px) * -12);
          width: calc(var(--a-s, 1px) * 24);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_map_currentCenter {
          border: calc(var(--a-s, 1px) * 4) solid #fff;
          height: calc(var(--a-s, 1px) * 21);
          left: calc(var(--a-s, 1px) * -10.5);
          top: calc(var(--a-s, 1px) * -10.5);
          width: calc(var(--a-s, 1px) * 21);
        }
      }
      .js_mapSection_map {
        position: relative;
      }
      .js_mapSection_highlight {
        mask-image: linear-gradient(
          -135deg,
          transparent,
          transparent 22.5%,
          rgba(0, 0, 0, 0.4) 25.5%,
          #000 30%,
          #000 70%,
          rgba(0, 0, 0, 0.4) 74.5%,
          transparent 77.5%,
          transparent
        );
        mask-position: 100% -50%;
        mask-repeat: no-repeat;
        mask-size: 300% 300%;
      }
      .is_visible .js_mapSection_highlight {
        animation: hightlightMask 2s cubic-bezier(0.445, 0.05, 0.55, 0.95)
          forwards;
      }
      @keyframes hightlightMask {
        0% {
          mask-position: 100% -20%;
        }
        to {
          mask-position: 50% 50%;
        }
      }
      .js_mapSection_mapBg.is_fade {
        animation: bgFadeInOut 1.6s cubic-bezier(0.445, 0.05, 0.55, 0.95)
          forwards;
      }
      @keyframes bgFadeInOut {
        0% {
        }
        10%,
        30% {
          opacity: 0.3;
        }
        to {
        }
      }
      .js_mapSection_mapData {
        height: 100%;
        left: 0;
        opacity: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_mapSection_mapSvg {
        display: none;
      }
      .js_mapSection_mapCourse {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_mapSection_mapPin {
        cursor: pointer;
        left: 0;
        position: absolute;
        top: 0;
        transition: opacity 0.3s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_mapSection[data-map-course] .js_mapSection_mapPin {
        opacity: 0;
        pointer-events: none;
      }
      .js_mapSection[data-map-course] .js_mapSection_mapPin.is_active {
        pointer-events: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_mapSection[data-map-course]
          .js_mapSection_mapPin.is_active
          .js_mapSection_mapPinDot:before {
          animation: pinAttention 2.25s cubic-bezier(0.445, 0.05, 0.55, 0.95)
            infinite;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_mapSection[data-map-course]
          .js_mapSection_mapPin.is_active
          .js_mapSection_mapPinDot:before {
          animation: pinAttention_sp 2.25s cubic-bezier(0.445, 0.05, 0.55, 0.95)
            infinite;
        }
      }
      @keyframes pinAttention {
        0% {
          transform: translate(-50%, -50%) scale(1);
        }
        to {
          opacity: 0;
          transform: translate(-50%, -50%) scale(12);
        }
      }
      @keyframes pinAttention_sp {
        0% {
          transform: translate(-50%, -50%) scale(1);
        }
        to {
          opacity: 0;
          transform: translate(-50%, -50%) scale(10);
        }
      }
      .js_mapSection_mapPinInner {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        transform: scale(1);
        transform-origin: bottom;
        transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
        width: 100%;
      }
      .js_mapSection_mapPin.is_active .js_mapSection_mapPinInner {
        transform: scale(1.7);
        transition: transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
      }
      .js_mapSection[data-map-course] .js_mapSection_mapPinInner {
        transform: scale(0);
        transform-origin: bottom;
        transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
      }
      .js_mapSection[data-map-course]
        .js_mapSection_mapPin.is_active
        .js_mapSection_mapPinInner {
        transform: scale(1);
        transition: transform 0.35s cubic-bezier(0.165, 0.84, 0.44, 1) 50ms;
      }
      .js_mapSection_mapPinBg {
        fill: #837850;
        transition: fill 0.3s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_mapSection_mapPin.is_active .js_mapSection_mapPinBg {
        fill: #fff;
      }
      #pin_border {
        fill: #837850;
      }
      .js_mapSection_mapPinNum {
        color: #fff;
      }
      .js_mapSection_mapPinNum.__show {
      }
      .js_mapSection_mapPin.is_active .js_mapSection_mapPinNum {
        color: #726741;
      }
      .to_next .js_mapSection_mapPinBg,
      .to_next .js_mapSection_mapPinNum {
        animation: toNext 2.25s cubic-bezier(0.445, 0.05, 0.55, 0.95) infinite;
      }
      @keyframes toNext {
        0% {
          transform: scale(1);
        }
        50% {
          transform: scale(1.3);
        }
        to {
          transform: scale(1);
        }
      }
      .js_mapSection_mapCourse {
        animation: mapMask-fadeOut 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
          forwards;
        mask-image: linear-gradient(
          135deg,
          transparent,
          transparent 22.5%,
          rgba(0, 0, 0, 0.4) 25.5%,
          #000 30%,
          #000 70%,
          rgba(0, 0, 0, 0.4) 74.5%,
          transparent 77.5%,
          transparent
        );
        mask-position: 130% 130%;
        mask-repeat: no-repeat;
        mask-size: 300% 300%;
      }
      .js_mapSection_mapCourse.is_show {
        animation: mapMask-fadeIn 1s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms
          forwards;
      }
      @keyframes mapMask-fadeIn {
        0% {
          mask-position: 130% 130%;
        }
        to {
          mask-position: 50% 50%;
        }
      }
      @keyframes mapMask-fadeOut {
        0% {
          mask-position: 50% 50%;
        }
        to {
          mask-position: -30% -30%;
        }
      }
      .js_mapSection_movingElm {
        left: 0;
        position: absolute;
        top: 0;
      }
      .js_mapSection_movingElm.__foot {
        background-color: red;
        background-image: none;
      }
      .js_mapSection_movingElm.__buggy {
        background-color: blue;
        background-image: none;
      }
      .js_mapSection_movingElmChild {
        height: 100%;
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        transition: opacity 0.1s cubic-bezier(0.455, 0.03, 0.515, 0.955);
        width: 100%;
      }
      .js_mapSection_movingElmChild.is_show {
        animation: popUp 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955) forwards;
        transition: opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
      }
      @keyframes popUp {
        0% {
          transform: translateY(0);
        }
        50% {
          transform: translateY(calc(var(--a-s, 1px) * -10));
        }
        to {
          transform: translateY(0);
        }
      }
      .js_allRooms_title {
        position: relative;
      }
      .js_allRooms_titleItem {
        opacity: 0;
        visibility: hidden;
      }
      .js_allRooms_titleItem.is_visible {
        transition: opacity 0.5s ease-in-out;
        visibility: visible;
      }
      .js_allRooms_titleItem:not(:first-child) {
        left: 0;
        position: absolute;
        top: 0;
      }
      .js_allRooms_result {
        transition: opacity 0.5s ease-in-out;
      }
      .js_allRooms_result.is_hidden {
        opacity: 0;
        transition: none;
      }
      .js_allRooms_resultItem.is_hidden {
        display: none;
      }
      .js_groupSlider_itemImage {
        opacity: 0.001;
        scale: 1;
      }
      .js_groupSlider_itemImage.is_visible {
        scale: 1.1;
        transition: opacity 0.9s ease-in-out, scale 6s linear;
      }
      .js_story {
        cursor: pointer;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.2s ease-out;
      }
      .js_story path {
        transition: fill 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      .js_story.is_show {
        pointer-events: auto;
      }
      .js_story.is_show,
      .js_story.is_show.is_cover {
        transition: opacity 1.3s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.1s,
          transform 1.2s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.1s,
          color 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story.is_show.is_cover {
          color: #fff;
        }
      }
      .js_story.is_show.is_cover path {
        transition: fill 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        fill: #fff !important;
      }
      .js_story_body {
        background: #f6f3e7;
        overflow: hidden;
        transition: transform 1.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_body {
          transform: translateY(calc(var(--a-s, 1px) * 30));
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_body {
          transform: translateY(calc(var(--a-s, 1px) * 10));
        }
      }
      .js_story.is_show .js_story_body {
        transform: translateY(0);
        transition: transform 1.2s cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.1s;
      }
      .js_story_button {
        bottom: 0;
        height: calc(var(--vh-max, 1vh) * 100);
        left: 0;
        overflow: hidden;
        pointer-events: none;
        position: fixed;
        right: 0;
        width: auto;
      }
      html.is_modalVisible .js_story_button {
        right: var(--scrollbar-width);
      }
      .js_story_buttonCircle {
        align-items: center;
        bottom: 0;
        display: flex;
        height: 0;
        justify-content: center;
        left: 0;
        position: absolute;
        width: 0;
      }
      .js_story_buttonCircle:after {
        content: "";
        left: 0;
        position: absolute;
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_page.is_navVisible .js_story_buttonCircle {
          translate: 0 calc(var(--a-s, 1px) * -44);
        }
      }
      .js_story_buttonCircleBody {
        aspect-ratio: 1/1;
        background: #f6f3e7;
        border-radius: 50%;
        flex-shrink: 0;
        height: 0;
        position: relative;
        transition: transform 0.9s cubic-bezier(0.77, 0, 0.175, 1),
          visibility 0.9s linear;
        visibility: hidden;
        width: 0;
      }
      .js_story_buttonCircleBody.is_opened {
        transform: scale(1) !important;
        transition: transform 0.9s cubic-bezier(0.77, 0, 0.175, 1),
          visibility 0ms linear;
        visibility: visible;
      }
      .js_story_page {
        align-items: center;
        color: #333;
        display: flex;
        height: calc(var(--vh-max, 1vh) * 100);
        justify-content: center;
        left: 0;
        position: fixed;
        top: 0;
      }
      html.html_typoMode .js_story_page {
        pointer-events: none;
      }
      .js_story_page:not(.is_visible) {
        visibility: hidden;
      }
      html.html_typoMode .js_story_page.is_show {
        pointer-events: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_page {
          width: 100%;
        }
      }
      @media (orientation: portrait) and (min-width: 760px) {
        .js_story_page {
          height: calc(var(--vh, 1vh) * 100);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_page {
          height: 100%;
          width: 100%;
        }
      }
      .js_story_page[data-chapter-cover] {
        background-color: rgba(77, 75, 73, 0);
        color: #fff;
        transition: background-color 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      .js_story_page[data-chapter-cover].is_show {
        background-color: #4d4b49;
        transition: background-color 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      .js_story_pageInner {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_pageInner {
          justify-content: center;
          text-align: center;
          width: calc(var(--a-s, 1px) * 1440);
        }
        .js_story_page[data-page] .js_story_pageInner {
          text-align: left;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_pageInner {
          flex-direction: column-reverse;
          height: 100%;
          justify-content: center;
          text-align: center;
          width: 100%;
        }
        .js_story_page[data-page] .js_story_pageInner {
          align-items: normal;
          display: grid;
          flex-direction: column;
          grid-template-rows: 1fr auto;
          justify-content: normal;
          text-align: left;
        }
      }
      .js_story_desc {
        flex-shrink: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_desc {
          white-space: nowrap;
        }
        .js_story_page[data-page] .js_story_desc {
          width: calc(var(--a-s, 1px) * 270);
        }
        html[lang="en"] .js_story_desc {
          white-space: normal;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_desc {
          order: 2;
          width: calc(var(--a-s, 1px) * 307);
        }
        .js_story_page[data-page] .js_story_desc {
          margin: 0 auto;
        }
        .js_story_text {
          text-align: center;
        }
        .js_story_ttl {
          padding: calc(var(--a-s, 1px) * 22) 0 calc(var(--a-s, 1px) * 35);
          position: relative;
          text-align: left;
        }
        .js_story_ttl:before {
          background: rgba(0, 0, 0, 0.2);
          content: "";
          display: block;
          height: 1px;
          left: 0;
          position: absolute;
          top: 0;
          width: calc(var(--a-s, 1px) * 8);
        }
      }
      .js_story_hotel {
        bottom: calc(var(--a-s, 1px) * 64);
        left: calc(var(--a-s, 1px) * 92);
        opacity: 0;
        position: absolute;
        transition: opacity 0.2s ease-out;
      }
      .js_story.is_show .js_story_hotel {
        transition: opacity 0.7s cubic-bezier(0.445, 0.05, 0.55, 0.95) 1.2s;
      }
      .js_story_hotelTtl {
        padding-bottom: calc(var(--a-s, 1px) * 15);
      }
      .js_story_hotelLabel.m_ttlLabel {
        align-items: flex-end;
        column-gap: calc(var(--a-s, 1px) * 8);
      }
      .js_story_images {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_images {
          height: calc(var(--c-s, 1px) * 576);
          width: calc(var(--c-s, 1px) * 899);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_images {
          height: calc(100% - var(--c-s, 1px) * 42);
          margin-top: calc(var(--c-s, 1px) * 42);
          order: 1;
          width: 100%;
        }
      }
      .js_story_image {
        position: absolute;
      }
      .js_story_imageInner {
        flex-shrink: 0;
        height: 120%;
        left: 0;
        position: absolute;
        top: -10%;
        width: 120%;
      }
      .js_story_imageBody {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_story_images > li {
        position: absolute;
      }
      .js_story_chapterWrap {
        opacity: 0;
        position: absolute;
        transition: opacity 0.2s ease-out;
      }
      .js_story.is_show .js_story_chapterWrap {
        transition: opacity 0.7s cubic-bezier(0.77, 0, 0.175, 1) 1.2s;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_chapterWrap {
          left: calc(var(--a-s, 1px) * 91);
          top: calc(var(--a-s, 1px) * 66);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_chapterWrap {
          left: calc(var(--a-s, 1px) * 20);
          top: calc(var(--a-s, 1px) * 20);
        }
      }
      .js_story_chapter {
        opacity: 0;
        position: relative;
      }
      .js_story_chapter,
      .js_story_chapter.is_show {
        transition: opacity 0.3s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_story_chapter.is_show {
      }
      .js_story.is_cover .js_story_chapter.is_show {
        opacity: 0;
        transition: opacity 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      .js_story_chapterInner {
        position: absolute;
        white-space: nowrap;
      }
      .js_story_nav {
        align-items: center;
        display: flex;
        opacity: 0;
        position: fixed;
        transition: opacity 0.2s ease-out;
        z-index: 3;
      }
      .js_story.is_show .js_story_nav {
        transition: opacity 0.7s cubic-bezier(0.77, 0, 0.175, 1) 1.2s;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_nav {
          right: calc(var(--a-s, 1px) * 30 + var(--scrollbar-width));
          top: 50%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_nav {
          bottom: calc(var(--a-s, 1px) * 20);
          right: calc(var(--a-s, 1px) * 16);
        }
      }
      .js_story_navInner {
        position: relative;
      }
      .js_story_navList {
        display: flex;
        flex-direction: column;
        opacity: 0;
        pointer-events: none;
        position: absolute;
        right: 0;
        top: 0;
      }
      .js_story_navList,
      .js_story_navList.is_show {
        transition: opacity 0.3s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_story_navList.is_show {
        pointer-events: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_navList {
          align-items: center;
          transform: translateY(-50%);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_navList {
          bottom: 0;
          top: auto;
        }
      }
      .js_story_navItem {
        opacity: 0.2;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_navItem + .js_story_navItem {
          margin-top: calc(var(--a-s, 1px) * 4);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_navItem + .js_story_navItem {
          margin-top: calc(var(--a-s, 1px) * 3);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_navItem {
          width: calc(var(--a-s, 1px) * 4);
        }
        .js_story_navItem:after {
          bottom: calc(var(--a-s, 1px) * -2);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -2);
          position: absolute;
          right: calc(var(--a-s, 1px) * -2);
          top: calc(var(--a-s, 1px) * -2);
          width: auto;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_navItem {
          width: calc(var(--a-s, 1px) * 3);
        }
        .js_story_navItem:after {
          bottom: calc(var(--a-s, 1px) * -1);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -1);
          position: absolute;
          right: calc(var(--a-s, 1px) * -1);
          top: calc(var(--a-s, 1px) * -1);
          width: auto;
        }
      }
      .js_story_navItem.__active {
      }
      @media (any-hover: hover) {
        .js_story_navItem {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .js_story_navItem.is_hover,
        .js_story_navItem:hover {
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_navItem + .js_story_navChapter {
          margin-top: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_navItem + .js_story_navChapter {
          margin-top: calc(var(--a-s, 1px) * 6);
        }
      }
      .js_story_navChapter {
        opacity: 0.2;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_navChapter + .js_story_navChapter {
          margin-top: calc(var(--a-s, 1px) * 4);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_navChapter + .js_story_navChapter {
          margin-top: calc(var(--a-s, 1px) * 3);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_navChapter {
          width: calc(var(--a-s, 1px) * 6);
        }
        .js_story_navChapter:after {
          bottom: calc(var(--a-s, 1px) * -3);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -3);
          position: absolute;
          right: calc(var(--a-s, 1px) * -3);
          top: calc(var(--a-s, 1px) * -3);
          width: auto;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_navChapter {
          margin-left: calc(var(--a-s, 1px) * -1);
          width: calc(var(--a-s, 1px) * 5);
        }
        .js_story_navChapter:after {
          bottom: calc(var(--a-s, 1px) * -2);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -2);
          position: absolute;
          right: calc(var(--a-s, 1px) * -2);
          top: calc(var(--a-s, 1px) * -2);
          width: auto;
        }
      }
      @media (any-hover: hover) {
        .js_story_navChapter {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .js_story_navChapter.is_hover,
        .js_story_navChapter:hover {
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .js_story_navChapter.__active {
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_navChapter.__active {
          margin-bottom: calc(var(--a-s, 1px) * 6);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_story_navChapter.__active {
          margin-bottom: calc(var(--a-s, 1px) * 4);
        }
      }
      .js_story_navItemIcon {
        aspect-ratio: 1/1;
      }
      .js_story_cursor {
        mix-blend-mode: difference;
      }
      .js_story_cursorBody path {
        fill: #fff !important;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_story_cursorBody {
          height: calc(var(--a-s, 1px) * 64);
          width: calc(var(--a-s, 1px) * 64);
        }
      }
      .js_accordion_content {
        height: 0;
        overflow: hidden;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_accordion[data-sp-only] .js_accordion_content {
          overflow: visible;
        }
        .js_accordion:not([data-sp-only]) .js_accordion_inner {
          padding-top: calc(var(--a-s, 1px) * 2);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_accordion_inner {
          padding-top: calc(var(--a-s, 1px) * 1);
        }
      }
      html.device-desktop .js_scroll[data-scroll="y"] .js_scroll_body {
        clip-path: polygon(
          0 0,
          calc(100% - var(--scrollbar-width)) 0,
          calc(100% - var(--scrollbar-width)) 100%,
          0 100%
        );
      }
      html.device-desktop .js_scroll[data-scroll="x"] .js_scroll_body {
        clip-path: polygon(
          0 0,
          100% 0,
          100% calc(100% - var(--scrollbar-width) - 1px),
          0 calc(100% - var(--scrollbar-width) - 1px)
        );
        margin-bottom: calc(var(--scrollbar-width) * -1);
      }
      .js_scroll_bar {
        position: absolute;
        -webkit-user-select: none;
        user-select: none;
        --knob-size: 0;
        --knob-pos: 0;
        opacity: 0;
        transition: opacity 0.3s ease-in-out;
      }
      .js_scroll[data-scroll="y"] .js_scroll_bar {
        height: 100%;
        right: var(--scrollbar-width);
        top: 0;
        width: 14px;
      }
      .js_scroll[data-scroll="x"] .js_scroll_bar {
        bottom: var(--scrollbar-width);
        height: 14px;
        left: 0;
        width: 100%;
      }
      .js_scroll_bar.is_visible {
        transition: opacity 0.1s ease-out;
      }
      .js_scroll.is_barHidden .js_scroll_bar {
        display: none;
      }
      .js_scroll_barInner {
        position: absolute;
      }
      .js_scroll[data-scroll="y"] .js_scroll_barInner {
        inset: 0 3px;
      }
      .js_scroll[data-scroll="x"] .js_scroll_barInner {
        inset: 3px 0;
      }
      .js_scroll_barKnob {
        background: #7d7d7d;
        border-radius: 4px;
        left: 0;
        opacity: 0.5;
        position: absolute;
        top: 0;
      }
      .js_scroll[data-scroll="y"] .js_scroll_barKnob {
        height: 0;
        width: 100%;
      }
      .js_scroll[data-scroll="x"] .js_scroll_barKnob {
        height: 100%;
        width: 0;
      }
      .js_scroll_bar.is_dragging .js_scroll_barKnob,
      .js_scroll_bar:hover .js_scroll_barKnob {
      }
      .js_scroll_button {
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.1s ease-out;
      }
      .js_scroll_button.is_visible {
        pointer-events: auto;
      }
      .js_scrollAttention_body {
        opacity: 0;
        pointer-events: none;
        transition: all 0.3s ease-out;
        translate: 0 10%;
      }
      .js_scrollAttention.is_visible .js_scrollAttention_body {
        transition: opacity 0.5s ease-in-out,
          translate 0.9s cubic-bezier(0.165, 0.84, 0.44, 1);
        translate: 0 0;
      }
      .js_scrollAttention.is_hidden .js_scrollAttention_body {
        opacity: 0;
        transition: all 0.2s ease-out;
        translate: -10% 0;
      }
      .js_scrollImage {
        background-position: 0 0;
        background-repeat: repeat-x;
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_scrollImage .js_img {
        visibility: hidden;
      }
      .js_cursor * {
        pointer-events: none;
      }
      html.device-desktop .js_cursor {
        contain: size layout;
        height: 100%;
        left: 0;
        overflow: hidden;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%;
      }
      html.device-desktop .js_cursor[data-cursor-single] {
        pointer-events: auto;
      }
      html.html_typoMode .js_cursor[data-cursor-single] {
        pointer-events: none;
      }
      html.device-desktop .js_cursor[data-cursor-nodelay] {
        cursor: none;
      }
      html.device-touch .js_cursor[data-sp-enabled] {
        display: flex;
        height: 100%;
        justify-content: center;
        width: 100%;
      }
      html.device-desktop .js_cursor_body {
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        transition: opacity 0.3s ease-out;
      }
      html.device-desktop .js_slider .js_cursor_body {
        height: calc(var(--a-s, 1px) * 64);
        width: calc(var(--a-s, 1px) * 64);
      }
      html.device-desktop
        .js_cursor:not([data-hide-auto]).is_visible
        .js_cursor_body,
      html.device-desktop
        .js_cursor[data-hide-auto].is_visible.is_mouseMoving
        .js_cursor_body {
        opacity: 1;
        transition: opacity 0.2s ease-in-out, transform 0ms linear;
      }
      .js_cursor_arw {
        height: 100%;
        position: relative;
        transform: scale(0.7);
        transition: transform 0.35s cubic-bezier(0.165, 0.84, 0.44, 1);
        width: 100%;
      }
      .js_cursor.is_visible .js_cursor_arw {
        transform: scale(1);
        transition: none;
      }
      .js_cursor[data-cursor-updown] .js_cursor_arw {
        transform: rotate(90deg);
      }
      .js_cursor.is_down .js_cursor_arw {
        transform: rotate(-90deg);
      }
      .js_cursor.is_left .js_cursor_arw {
        transform: rotateY(-180deg);
      }
      .js_cursor_arw path {
        fill: #fff;
      }
      .js_cursor[data-cursor-black] .js_cursor_arw path {
        fill: #333;
      }
      .js_roomDetail_reserveBottom {
        height: 1px;
        left: 0;
        margin-top: 1px;
        position: absolute;
        top: 100%;
        width: 1px;
      }
      .js_roomDetail_spec.__layout {
        display: flex;
        flex-direction: column;
      }
      .js_roomDetail_spec.__layout svg [data-name="balcony"] circle,
      .js_roomDetail_spec.__layout svg [data-name="bath"] circle,
      .js_roomDetail_spec.__layout svg [data-name="bed"] circle,
      .js_roomDetail_spec.__layout svg [data-name="closet"] circle,
      .js_roomDetail_spec.__layout svg [data-name="living"] circle,
      .js_roomDetail_spec.__layout svg [data-name="pool"] circle {
        display: none;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_roomDetail_spec.__layout {
          row-gap: calc(var(--a-s, 1px) * 30);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_roomDetail_spec.__layout {
          row-gap: calc(var(--a-s, 1px) * 26);
        }
      }
      .js_roomDetail_layoutImg {
        position: relative;
      }
      .js_roomDetail_layoutText {
        display: flex;
        flex-direction: column;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_roomDetail_layoutText {
          row-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_roomDetail_layoutText {
          row-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      .js_roomDetail_layoutEx,
      .js_roomDetail_layoutSize {
        text-align: center;
      }
      .js_roomDetail_layoutLabelWrap {
        display: none;
      }
      .js_roomDetail_layoutLabel {
        align-items: center;
        display: flex;
        height: 0;
        justify-content: center;
        position: absolute;
        white-space: nowrap;
        width: 0;
        -webkit-text-stroke: calc(var(--a-s, 1px) * 2) #f6f3e7;
        paint-order: stroke;
      }
      .js_photoWall_item {
        opacity: 0;
      }
      .js_photoWall_itemInner {
        display: block;
        height: 120%;
        left: 0;
        overflow: hidden;
        position: absolute;
        top: -10%;
        width: 100%;
      }
      .js_footer {
        position: relative;
        width: 100%;
      }
      .js_footer.is_hide {
        opacity: 0;
        position: absolute;
        transition: opacity 0.2s ease-out;
      }
      .js_mapAnime_line {
        opacity: 0;
      }
      .js_mapAnime.is_animeStart .js_mapAnime_line {
        transition: opacity 0.6s ease-in-out;
      }
      .js_mapAnime_item {
        opacity: 0;
        transition: opacity 0.5s ease-in-out, translate 0.5s ease-in-out;
        translate: 0 30%;
      }
      .js_mapAnime_item.is_animeStart {
        transition: opacity 0.5s ease-in-out,
          translate 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
        translate: 0 0;
      }
      .js_mapAnime_illust {
        opacity: 0;
        transform: scale(0.8) translateY(60%);
        transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
      }
      .js_mapAnime_illust.is_animeStart {
        transform: scale(1) translate(0);
        transition: opacity 0.4s ease-in-out,
          transform 0.9s cubic-bezier(0.165, 0.84, 0.44, 1);
      }
      .js_mapAnime_pin {
        scale: 0;
        transform-origin: center bottom;
      }
      .js_mapAnime_pin.is_animeStart {
        scale: 1;
        transition: scale 0.9s cubic-bezier(0.77, 0, 0.175, 1);
      }
      .js_menu_bg {
        background-color: #e4e4d4;
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_menu_bg.__front {
        background-color: #f6f3e7;
      }
      .js_menu_body {
        opacity: 0;
        translate: 0 -10%;
      }
      .js_menu_body.is_show {
        opacity: 1;
        transition: opacity 0.7s ease-in-out,
          translate 0.7s cubic-bezier(0.165, 0.84, 0.44, 1);
        translate: 0;
      }
      .js_menu_body.is_hide {
        opacity: 0;
        transition: opacity 0.2s ease-in-out,
          translate 0.2s cubic-bezier(0.895, 0.03, 0.685, 0.22);
        translate: 0 5%;
      }
      .js_numSection_trigger {
        opacity: 0.01;
      }
      .js_numSection_trigger.is_showComplete {
        opacity: 1;
        transition: opacity 1.2s ease-in-out;
      }
      .js_numSection_center {
        color: #fff;
        opacity: 0;
        transition: opacity 0.6s ease-in-out;
      }
      .js_numSection_center:not(.is_visible) {
        display: none;
      }
      .js_numSection_center.is_visible {
        will-change: opacity;
      }
      .js_numSection_center.is_show {
        opacity: 0.8;
        transition: opacity 0.3s ease-in-out;
      }
      .js_numSection_center.is_show.is_triggerHidden {
        opacity: 0.5;
      }
      .js_slider.is_disabled {
        overflow: hidden;
      }
      .js_slider.is_disabled,
      .js_slider.is_disabled * {
        pointer-events: none !important;
      }
      .html_noEffect .js_slider {
        overflow: hidden;
      }
      .js_slider_draggable {
        background: transparent;
        inset: 0;
        position: absolute;
      }
      html.device-desktop .js_slider_draggable {
        display: none;
      }
      .js_slider_container {
        cursor: none;
        position: relative;
        -webkit-user-select: none;
        user-select: none;
      }
      .js_slider_container * {
        pointer-events: none;
      }
      .js_slider_list {
        height: 120%;
        left: 0;
        overflow: hidden;
        position: absolute;
        top: -10%;
        width: 100%;
      }
      .js_slider_item {
        background-position: 50%;
        background-size: cover;
        height: 0;
        left: 0;
        position: absolute;
        top: 0;
        width: 0;
      }
      .js_slider_item:not(.is_visible) {
        visibility: hidden;
      }
      .js_slider.is_disabled .js_slider_item {
        clip-path: none !important;
        overflow: hidden !important;
        transform: none !important;
      }
      .js_slider.is_disabled .js_slider_item:nth-child(2) {
        transform: translate(calc(100% + 1px)) !important;
      }
      .js_slider.is_disabled .js_slider_item:nth-child(n + 3) {
        display: none !important;
      }
      .js_slider_child {
        height: 0;
        left: 0;
        position: absolute;
        top: 0;
        width: 0;
      }
      .js_slider_child.is_clipHidden {
        visibility: hidden;
      }
      .js_slider_childInner {
        -webkit-backface-visibility: hidden;
      }
      .js_slider_childInner,
      .js_slider_touchPointerWrap {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_slider_touchPointerWrap {
        overflow: hidden;
      }
      .js_slider_touchPointer {
        background: #fff;
        border-radius: 50%;
        height: 70px;
        left: 0;
        margin-left: -35px;
        margin-top: -35px;
        opacity: 0;
        position: absolute;
        top: 0;
        transition: opacity 0.1s ease-in-out, visibility 0.2s linear;
        visibility: hidden;
        width: 70px;
      }
      .js_slider_touchPointer.is_visible {
        opacity: 0.4;
        transition: opacity 50ms ease-out, visibility 0ms linear;
        visibility: visible;
      }
      .js_gallery {
        cursor: pointer;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.2s ease-out;
      }
      .js_gallery.is_show {
        opacity: 1;
        pointer-events: auto;
        transition: opacity 0.2s ease-out;
      }
      .js_gallery_body {
        align-items: center;
        background: #f6f3e7;
        display: flex;
        height: 100%;
        justify-content: center;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_gallery_main {
          height: calc(var(--c-s, 1px) * 576);
          width: calc(var(--c-s, 1px) * 864);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_gallery_main {
          aspect-ratio: 3/2;
          width: 100%;
        }
      }
      .js_gallery_mainList {
        height: 100%;
        position: relative;
        width: 100%;
      }
      .js_gallery_mainItem {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_gallery_mainItem {
          overflow: hidden;
        }
      }
      .js_gallery_mainImg {
        contain: size layout;
        height: 100%;
        left: 0;
        position: relative;
        position: absolute;
        top: 0;
        width: 100%;
      }
      html.device-desktop .js_gallery_mainImg {
        opacity: 0;
        transition: opacity 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      html.device-desktop .js_gallery_mainImg.is_show {
        transition: opacity 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      .js_gallery_captions {
        color: #333;
        display: grid;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_gallery_captions {
          bottom: calc(var(--a-s, 1px) * 64);
          left: calc(var(--a-s, 1px) * 92);
          row-gap: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_gallery_captions {
          border-bottom: 1px solid rgba(0, 0, 0, 0.07);
          left: 0;
          padding: calc(var(--a-s, 1px) * 20) calc(var(--a-s, 1px) * 19);
          row-gap: calc(var(--a-s, 1px) * 10);
          top: 0;
          width: 100%;
        }
      }
      .js_gallery_subCaption {
        color: #666;
      }
      .js_gallery_nav {
        position: absolute;
        z-index: 2;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_gallery_nav {
          right: calc(var(--a-s, 1px) * 45 - var(--scrollbar-width));
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_gallery_nav {
          bottom: 0;
          left: 0;
          width: 100%;
        }
        .js_gallery_navScroll {
          flex-grow: 1;
          scrollbar-color: transparent transparent;
          scrollbar-width: thin;
          width: 100%;
        }
        .js_gallery_nav:not(.__center) .js_gallery_navScroll {
          align-items: flex-end;
          display: flex;
          height: calc(var(--a-s, 1px) * 42);
          overflow-x: scroll;
          padding-left: calc(var(--a-s, 1px) * 19);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_gallery_navScroll::-webkit-scrollbar {
          display: none;
        }
      }
      .js_gallery_navList {
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_gallery_navList {
          row-gap: calc(var(--a-s, 1px) * 2);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_gallery_navList {
          column-gap: 1px;
        }
        .js_gallery_nav:not(.__center) .js_gallery_navList {
          grid-auto-flow: column;
          padding-right: calc(var(--a-s, 1px) * 19);
        }
        .js_gallery_nav.__center .js_gallery_navList {
          display: flex;
          justify-content: center;
        }
      }
      .js_gallery_navItem {
        aspect-ratio: 3/2;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_gallery_navItem {
          width: calc(var(--a-s, 1px) * 48);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_gallery_navItem {
          width: calc(var(--a-s, 1px) * 42);
        }
      }
      .js_gallery_navItemInner {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_gallery_navItemInner {
          width: calc(var(--a-s, 1px) * 48);
        }
        .js_gallery_navItemInner,
        .js_gallery_navItemInner.is_active {
          transition: transform 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_gallery_navItemInner {
          width: calc(var(--a-s, 1px) * 42);
        }
        .js_gallery_navItemInner,
        .js_gallery_navItemInner.is_active {
          transition: transform 0.25s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        }
      }
      .js_gallery_navBtn {
        scale: 1;
        transition: scale 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      .js_gallery_navItemInner.is_active .js_gallery_navBtn {
        scale: 1.5;
        transition: scale 0.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_gallery_navBtn {
          transform-origin: top right;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_gallery_navBtn {
          transform-origin: bottom left;
        }
        .js_gallery_navBtn,
        .js_gallery_navItemInner.is_active .js_gallery_navBtn {
          transition: scale 0.25s cubic-bezier(0.445, 0.05, 0.55, 0.95);
        }
      }
      .js_gallery_navBtn,
      .js_gallery_navImg {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_gallery_close {
        opacity: 0;
        transition: opacity 0.2s ease-out;
      }
      .js_gallery.is_show .js_gallery_close {
        transition: opacity 0.5s cubic-bezier(0.77, 0, 0.175, 1);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_gallery_close {
          width: calc(var(--a-s, 1px) * 60);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_gallery_close {
          width: calc(var(--a-s, 1px) * 33.5);
        }
      }
      html.device-desktop .js_gallery_cursor {
        mix-blend-mode: difference;
      }
      html.device-touch .js_gallery_cursor {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_gallery_cursorBody {
        mix-blend-mode: difference;
      }
      .js_gallery_cursorBody path {
        fill: #fff !important;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_gallery_cursorBody {
          height: calc(var(--a-s, 1px) * 64);
          width: calc(var(--a-s, 1px) * 64);
        }
      }
      .js_chapter_btn {
        transform: translateY(51%);
        transition: transform 0.6s cubic-bezier(0.895, 0.03, 0.685, 0.22);
      }
      .js_chapter_btn.is_show {
        transform: translateY(0);
        transition: transform 1s cubic-bezier(0.77, 0, 0.175, 1);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_chapter_btn {
          transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1) !important;
        }
        .js_page.is_navVisible .js_chapter_btn.is_show {
          transform: translateY(calc(var(--a-s, 1px) * -44));
        }
      }
      .js_chapter_btn:before {
        content: "";
      }
      .js_chapter_btnCaption {
        transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      }
      .js_seesaw_block,
      .js_seesaw_container {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .js_seesaw_list {
        height: 120%;
        left: 0;
        overflow: hidden;
        position: absolute;
        top: -10%;
        width: 100%;
      }
      .js_seesaw_image {
        height: 0;
        left: 0;
        position: absolute;
        top: 0;
        width: 0;
      }
      .js_seesaw_block:not(.is_visible) .js_seesaw_image {
        visibility: hidden;
      }
      .js_search {
        margin: 2rem 0;
      }
      .js_search_inner {
        margin: 0 auto;
        max-width: 600px;
      }
      .js_search_input {
        background-color: #fff;
        border: 1px solid #ddd;
        border-radius: 30px;
        font-size: 16px;
        padding: 12px 50px 12px 20px;
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_input {
          font-size: 14px;
          padding: 10px 40px 10px 15px;
        }
      }
      .js_search_button {
        background: none;
        border: none;
        color: #666;
        cursor: pointer;
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
      }
      .js_search_results {
        background: #fff;
        border: 1px solid #ddd;
        border-radius: 4px;
        -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        left: 0;
        max-height: 400px;
        overflow-y: auto;
        position: absolute;
        right: 0;
        top: 100%;
        z-index: 100;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_results {
          max-height: 300px;
        }
      }
      .js_search_resultItem {
        border-bottom: 1px solid #eee;
        cursor: pointer;
        padding: 12px 20px;
      }
      @media (any-hover: hover) {
        .js_search_resultItem {
          background-color: #f9f9f9;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_resultItem {
          padding: 10px 15px;
        }
      }
      .js_search_resultTitle {
        font-weight: 700;
        margin-bottom: 4px;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_resultTitle {
          font-size: 14px;
        }
      }
      .js_search_resultDesc {
        color: #666;
        font-size: 14px;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_resultDesc {
          font-size: 12px;
        }
      }
      .js_search_noResults {
        color: #666;
        padding: 20px;
        text-align: center;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_noResults {
          font-size: 14px;
          padding: 15px;
        }
      }
      .search-overlay {
        display: none;
        height: 100vh;
        margin: 0;
        overflow: hidden;
        position: fixed;
        right: 0;
        top: 0;
        width: 65%;
        z-index: 1000;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .search-overlay {
          width: 100%;
        }
      }
      .search-overlay.is_visible {
        display: block;
      }
      .search-overlay:before {
        background-color: rgba(77, 75, 73, 0.8);
        content: "";
        height: 100%;
        left: 0;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 0;
      }
      .js_search_wrap {
        position: relative;
      }
      .js_search_base,
      .js_search_wrap {
        height: 100%;
        width: 100%;
        z-index: 1;
      }
      .js_search_base,
      .search-bg-layer {
        left: 0;
        position: absolute;
        top: 0;
      }
      .search-bg-layer {
        background-color: #f6f3e7;
        -webkit-box-shadow: -5px 0 15px rgba(0, 0, 0, 0.25);
        box-shadow: -5px 0 15px rgba(0, 0, 0, 0.25);
        height: 100%;
        width: 100%;
      }
      .search-bg-layer-front {
        background-color: #f6f3e7;
        z-index: 1;
      }
      .js_search_inner {
        background-color: transparent;
        display: block;
        height: 100%;
        margin: 0;
        min-width: 100%;
        overflow-y: auto;
        position: relative;
        width: 100%;
        z-index: 2;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_inner {
          scroll-behavior: smooth;
          touch-action: pan-y;
        }
      }
      .search-header {
        display: flex;
        justify-content: flex-end;
        margin: calc(var(--a-s, 1px) * 20);
        width: calc(100% - 40px);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .search-header {
          margin: 0;
        }
      }
      .js_search_close {
        background: none;
        border: none;
        cursor: pointer;
        display: block;
        opacity: 0;
        position: absolute;
        transition: opacity 0.2s ease-out;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_search_close {
          margin-bottom: calc(var(--a-s, 1px) * 10);
          padding-bottom: calc(var(--a-s, 1px) * 25);
          padding-right: calc(var(--a-s, 1px) * 30);
          padding-top: calc(var(--a-s, 1px) * 32);
          right: 0;
          top: 0;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_close {
          margin-bottom: calc(var(--a-s, 1px) * 5);
          right: calc(var(--a-s, 1px) * 20);
          top: calc(var(--a-s, 1px) * 20);
          width: calc(var(--a-s, 1px) * 33.5);
        }
      }
      .search-overlay.is_show .js_search_close {
        transition: opacity 0.5s ease-in-out;
      }
      @starting-style {
        .search-overlay.is_show .js_search_close {
          opacity: 0;
        }
      }
      .js_search_close:hover {
        opacity: 0.7;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_search_closeInner {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 24);
          display: flex;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_closeInner:after {
          bottom: calc(var(--a-s, 1px) * -10);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -10);
          position: absolute;
          right: calc(var(--a-s, 1px) * -10);
          top: calc(var(--a-s, 1px) * -10);
          width: auto;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_search_closeIcon {
          transform: scale(0);
          transition: transform 0.3s ease-in-out;
          width: calc(var(--a-s, 1px) * 22);
        }
        .html_searchOpened .js_search_closeIcon {
          transform: scale(1) translate(0);
          transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
        }
        @starting-style {
          .html_searchOpened .js_search_closeIcon {
            transform: scale(0);
          }
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_closeIcon {
          width: 100%;
        }
      }
      .js_search_closeBar {
        display: block;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_search_closeBar {
          background-color: rgba(0, 0, 0, 0.4);
          bottom: 0;
          height: 1px;
          margin-bottom: calc(var(--a-s, 1px) * 5);
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_search_closeBar {
          height: 4px;
          margin-bottom: calc(var(--a-s, 1px) * 3);
          top: calc(var(--a-s, 1px) * 2);
          width: 100%;
        }
      }
      .search-content {
        margin: calc(var(--a-s, 1px) * 76) 0 0 0;
        padding: 0 calc(var(--a-s, 1px) * 160) calc(var(--a-s, 1px) * 40)
          calc(var(--a-s, 1px) * 40);
        width: calc(100% - 40px);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .search-content {
          margin: calc(var(--a-s, 1px) * 20) 0 0 0;
          padding: 0 calc(var(--a-s, 1px) * 20) calc(var(--a-s, 1px) * 20)
            calc(var(--a-s, 1px) * 20);
          padding-bottom: calc(var(--a-s, 1px) * 60);
          width: 100%;
        }
      }
      .search-input-container {
        margin-bottom: calc(var(--a-s, 1px) * 16);
        width: 100%;
      }
      .search-placeholder {
        background: transparent;
        border: none;
        border-bottom: 2px solid #807766;
        display: block;
        font-family: Aime-Regular, sans-serif;
        font-size: 25px;
        font-weight: 400;
        outline: none;
        padding-bottom: calc(var(--a-s, 1px) * 40);
        width: 100%;
      }
      .search-filter-container {
        display: flex;
        gap: calc(var(--a-s, 1px) * 15);
        height: calc(var(--a-s, 1px) * 61);
        justify-content: space-between;
        margin-bottom: calc(var(--a-s, 1px) * 38);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .search-filter-container {
          flex-direction: column;
          gap: 0;
        }
      }
      .keyword-search-box {
        align-items: center;
        background-color: #fffbf2;
        border-bottom: 1px solid rgba(0, 0, 0, 0.2);
        border-radius: 0;
        display: flex;
        flex: 1;
        padding: calc(var(--a-s, 1px) * 20) 0;
        position: relative;
      }
      .keyword-search-box .icon {
        height: calc(var(--a-s, 1px) * 20);
        margin: auto calc(var(--a-s, 1px) * 8);
        width: calc(var(--a-s, 1px) * 20);
      }
      .keyword-search-box .icon .js_img {
        height: 100%;
        width: 100%;
      }
      .keyword-search-box input {
        background: transparent;
        border: none;
        outline: none;
        width: 100%;
      }
      .keyword-search-box input::placeholder {
        color: rgba(51, 51, 51, 0.3);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .keyword-search-box input::placeholder {
          font-size: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .keyword-search-box {
          padding: calc(var(--a-s, 1px) * 12) 0;
          width: 100%;
        }
      }
      .custom-dropdown-container {
        align-items: center;
        background-color: #fffbf2;
        font-family: sans-serif;
        height: calc(var(--a-s, 1px) * 61);
        position: relative;
        width: calc(var(--a-s, 1px) * 240);
      }
      .custom-dropdown-container .custom-underline {
        bottom: 0;
        height: 1px;
        left: 0;
        pointer-events: none;
        position: absolute;
        right: 0;
      }
      .custom-dropdown-container .custom-underline:after,
      .custom-dropdown-container .custom-underline:before {
        bottom: 0;
        content: "";
        height: 1px;
        position: absolute;
      }
      .custom-dropdown-container .custom-underline:before {
        background: #000;
        left: 0;
        opacity: 0.2;
        right: 60px;
      }
      .custom-dropdown-container .custom-underline:after {
        background: #333;
        right: 0;
        width: 55px;
      }
      .custom-dropdown-container .custom-dropdown-header {
        align-items: center;
        border-radius: 0;
        cursor: pointer;
        display: flex;
        height: 100%;
        justify-content: space-between;
        margin-bottom: auto;
        margin-right: calc(var(--a-s, 1px) * 4);
        margin-top: auto;
      }
      .custom-dropdown-container .custom-dropdown-header .selected-text {
        align-items: center;
        color: #333;
        display: flex;
        font-family: Helvetica Neue, sans-serif;
        font-size: calc(var(--a-s, 1px) * 18);
        font-weight: 400;
        height: 100%;
        letter-spacing: 0.54px;
        margin-bottom: auto;
        margin-top: auto;
        padding-left: calc(var(--a-s, 1px) * 8);
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .custom-dropdown-container .custom-dropdown-header .selected-text {
          font-size: calc(var(--a-s, 1px) * 14);
          padding-bottom: calc(var(--a-s, 1px) * 16);
          padding-top: calc(var(--a-s, 1px) * 16);
        }
      }
      .custom-dropdown-container
        .custom-dropdown-header.open
        .js_book_icon_arrow {
        opacity: 0.3;
        transform: rotate(180deg);
        transition: transform 0.3s ease, opacity 0.3s ease;
      }
      .custom-dropdown-container .custom-dropdown-menu {
        background-color: #fff;
        border-radius: 0;
        display: none;
        left: 0;
        overflow-y: auto;
        position: absolute;
        top: 100%;
        width: 100%;
        z-index: 1000;
      }
      .custom-dropdown-container .custom-dropdown-menu .dropdown-item {
        border: 0;
        color: #333;
        cursor: pointer;
        font-family: Helvetica Neue, sans-serif;
        font-size: calc(var(--a-s, 1px) * 18);
        font-weight: 400;
        letter-spacing: 0.54px;
        line-height: 28px;
        padding: calc(var(--a-s, 1px) * 16);
        transition: background-color 0.2s;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .custom-dropdown-container .custom-dropdown-menu .dropdown-item {
          font-size: calc(var(--a-s, 1px) * 14);
          line-height: normal;
        }
      }
      .custom-dropdown-container .custom-dropdown-menu .dropdown-item.active {
        color: #aaa;
      }
      .custom-dropdown-container .custom-dropdown-menu .dropdown-item:hover {
        background-color: #efece1;
      }
      .custom-dropdown-container .custom-dropdown-menu .dropdown-item:active {
        background-color: #807766;
        color: #fff;
      }
      .custom-dropdown-container .custom-dropdown-menu .all-category-divider {
        border-bottom: 1px solid rgba(0, 0, 0, 0.07);
        display: block;
        height: 1px;
        margin: 0 calc(var(--a-s, 1px) * 16);
      }
      .custom-dropdown-container .hidden {
        display: none;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .custom-dropdown-container {
          margin-top: calc(var(--a-s, 1px) * 16);
          width: 100%;
        }
      }
      .recommended-section,
      .search-results-section {
        margin-top: calc(var(--a-s, 1px) * 38);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .recommended-section,
        .search-results-section {
          margin-top: calc(var(--a-s, 1px) * 100);
          min-height: 50vh;
          -webkit-overflow-scrolling: touch;
        }
      }
      .search-results-section {
        display: none;
      }
      .search-results-section.normal-label {
        display: block;
      }
      .search-results-section.category-label {
        display: none;
      }
      .section-title {
        color: #807766;
        font-family: Aime-Regular, sans-serif;
        font-size: 18px;
        margin-bottom: 20px;
        text-transform: capitalize;
      }
      .recommended-grid,
      .search-results-grid {
        display: grid;
        gap: calc(var(--a-s, 1px) * 28) calc(var(--a-s, 1px) * 36);
        grid-template-columns: repeat(2, 1fr);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .recommended-grid,
        .search-results-grid {
          gap: calc(var(--a-s, 1px) * 24);
        }
      }
      .grid-item {
        border-radius: 0;
        height: fit-content;
        overflow: hidden;
        transition: transform 0.3s ease, box-shadow 0.3s ease;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .grid-item {
          grid-column: span 2;
          height: fit-content;
        }
      }
      .item-row {
        display: flex;
      }
      .item-thumbnail {
        background-position: 50%;
        background-size: cover;
        border-radius: 0;
        flex: none;
        height: 80px;
        width: 120px;
      }
      .item-details {
        font-family: Inter, sans-serif;
        padding-left: calc(var(--a-s, 1px) * 24);
      }
      .item-category {
        color: #666;
        font-size: 12px;
        text-transform: uppercase;
      }
      .item-title {
        display: -webkit-box;
        font-size: 14px;
        font-weight: 500;
        letter-spacing: 0.4;
        line-height: 20px;
        margin: 0;
        padding-top: calc(var(--a-s, 1px) * 16);
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        padding-bottom: 2px;
        text-overflow: ellipsis;
      }
      html[lang="ja"] .item-title,
      html[lang="ko"] .item-title,
      html[lang="zh"] .item-title {
        padding-bottom: 0;
      }
      .item-description {
        color: #666;
        display: -webkit-box;
        font-size: 14px;
        font-weight: 400;
        margin: 0;
        padding-top: calc(var(--a-s, 1px) * 8);
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        letter-spacing: 0.42px;
        line-height: 20px;
        overflow: hidden;
        word-break: break-word;
      }
      .item-footer {
        align-items: center;
        display: flex;
        justify-content: space-between;
        padding-top: calc(var(--a-s, 1px) * 12);
      }
      .item-hours {
        border-bottom: 1px solid rgba(0, 0, 0, 0.07);
        color: #666;
        flex: 1;
        font-size: 14px;
        margin-right: calc(var(--a-s, 1px) * 10);
        padding-bottom: calc(var(--a-s, 1px) * 16);
        text-align: left;
      }
      .item-location {
        display: flex;
        justify-content: space-between;
        width: 100%;
      }
      .details-button {
        align-items: center;
        border-bottom: 1px solid #000;
        color: #000;
        display: flex;
        font-size: 14px;
        font-weight: 500;
        padding-bottom: calc(var(--a-s, 1px) * 16);
        text-decoration: none;
        transition: opacity 0.3s ease;
      }
      .details-button:hover {
        opacity: 0.7;
      }
      .details-button .details-icon {
        aspect-ratio: 1/1;
        margin-left: 4px;
        width: calc(var(--a-s, 1px) * 12);
      }
      .result-title {
        font-weight: 500;
        letter-spacing: 0.4;
        padding-top: calc(var(--a-s, 1px) * 16);
        text-overflow: ellipsis;
      }
      .result-description,
      .result-title {
        display: -webkit-box;
        font-size: 14px;
        margin: 0;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
      }
      .result-description {
        color: #666;
        font-weight: 400;
        letter-spacing: 0.42px;
        line-height: 20px;
        padding-top: calc(var(--a-s, 1px) * 8);
        word-break: break-word;
      }
      .no-items-message {
        display: block;
        padding: 0;
        width: 100%;
      }
      .no-items-message .header {
        color: #807766;
        font-family: Aime-Regular, sans-serif;
        font-size: 16px;
      }
      .no-items-message .description,
      .no-items-message .header {
        display: block;
        line-height: 20px;
        margin-bottom: calc(var(--a-s, 1px) * 20);
        text-align: left;
        width: 100%;
      }
      .no-items-message .description {
        color: #666;
        font-family: Inter, sans-serif;
        font-size: 14px;
      }
      .no-items-message .no-result-suggestion {
        color: #666;
        font-family: Helvetica Neue, sans-serif;
        font-size: 14px;
        line-height: 20px;
        text-align: left;
        width: 100%;
      }
      .no-items-message .no-result-suggestion .suggestion-list {
        display: flex;
        gap: calc(var(--a-s, 1px) * 14);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .no-items-message .no-result-suggestion .suggestion-list {
          flex-wrap: wrap;
          gap: calc(var(--a-s, 1px) * 10);
        }
      }
      .no-items-message .no-result-suggestion .suggestion-divider-icon {
        height: calc(var(--a-s, 1px) * 17);
        position: relative;
        transform: translateY(50%);
        width: calc(var(--a-s, 1px) * 1);
      }
      .no-items-message .no-result-suggestion .no-result-suggestion-text {
        align-items: center;
        color: #000;
        display: flex;
        font-size: 14px;
        font-weight: 400;
        text-decoration: none;
        transition: opacity 0.3s ease;
      }
      .no-items-message
        .no-result-suggestion
        .no-result-suggestion-text
        .no-result-suggestion-icon {
        aspect-ratio: 1/1;
        margin-left: calc(var(--a-s, 1px) * 8);
        width: calc(var(--a-s, 1px) * 12) !important;
      }
      .js_mediaCenterDetail .items-hidden-desktop {
        max-height: 0;
        opacity: 0;
        overflow: hidden;
        transition: max-height 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
          opacity 0.3s ease-in-out;
      }
      .js_mediaCenterDetail .items-hidden-desktop:not(.is-expanding) {
        margin-top: 0 !important;
        padding-top: 0 !important;
      }
      .js_mediaCenterDetail .items-hidden-desktop.is-expanding {
        max-height: 20000px;
        transition: max-height 0.6s cubic-bezier(0.165, 0.84, 0.44, 1),
          opacity 0.4s ease-in-out 0.1s;
      }
      .js_mediaCenterDetail .item-hidden-mobile {
        max-height: 0;
        opacity: 0;
        overflow: hidden;
        transition: max-height 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
          opacity 0.3s ease-in-out;
      }
      .js_mediaCenterDetail .item-hidden-mobile:not(.is-expanding) {
        display: none !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
      }
      .js_mediaCenterDetail .item-hidden-mobile.is-expanding {
        max-height: 800px;
        transition: max-height 0.6s cubic-bezier(0.165, 0.84, 0.44, 1),
          opacity 0.4s ease-in-out 0.1s;
      }
      .js_mediaCenterDetail .m_rectButton_arw {
        transition: transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
      }
      .js_mediaCenterDetail .m_rectButton_arw.__rotated {
        transform: rotate(180deg);
      }
      .js_mediaCenterDetail .m_rectButton_text {
        transition: opacity 0.2s ease-in-out;
      }
      .c_main_bg {
        background-color: #f6f3e7;
        bottom: calc(var(--a-s, 1px) * 100);
        height: auto;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .c_main_ttl {
        align-items: center;
        color: #666;
        column-gap: calc(var(--a-s, 1px) * 16);
        display: flex;
        height: calc(var(--vh, 1vh) * 100 - var(--a-s, 1px) * 75);
        inset: calc(var(--a-s, 1px) * 75) auto auto calc(var(--a-s, 1px) * 30);
        justify-content: center;
        mix-blend-mode: exclusion;
        position: fixed;
        text-orientation: sideways;
        writing-mode: vertical-rl;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_ttl {
          display: none;
        }
      }
      .c_main_ttl br {
        display: none;
      }
      .c_main_ttlName {
        color: #fff;
        letter-spacing: 0.12em;
        white-space: nowrap;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        html.device-touch .c_main_ttlName {
          color: #000;
        }
      }
      .c_main_ttlCopy {
        inline-size: max-content;
        max-inline-size: calc(var(--a-s, 1px) * 400);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_main_ttlNameMargin {
          display: inline-block;
          height: calc(var(--a-s, 1px) * 16);
        }
      }
      .c_main_nav {
        position: fixed;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_main_nav {
          align-items: center;
          display: flex;
          inset: calc(var(--a-s, 1px) * 75) calc(var(--a-s, 1px) * 30) 0 auto;
          mix-blend-mode: exclusion;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_nav {
          -webkit-backdrop-filter: blur(70px);
          backdrop-filter: blur(70px);
          background: hsla(47, 19%, 82%, 0.95);
          bottom: 0;
          display: flex;
          left: 0;
          width: 100%;
        }
        html[data-template="spa-index"] .c_main_nav,
        html[data-template="spa-menu"] .c_main_nav {
          background: hsla(60, 17%, 80%, 0.95);
        }
        html[data-template="rockbar-detail"] .c_main_nav,
        html[data-template="rockbar-index"] .c_main_nav {
          -webkit-backdrop-filter: blur(35px);
          backdrop-filter: blur(35px);
          background: rgba(77, 75, 73, 0.95);
        }
        html[data-template="rockbar-detail"] .c_main_nav:before,
        html[data-template="rockbar-index"] .c_main_nav:before {
          -webkit-backdrop-filter: blur(35px);
          backdrop-filter: blur(35px);
          background: rgba(0, 0, 0, 0.9);
        }
        .c_main_navOuter {
          display: flex;
          flex-grow: 1;
          overflow-x: scroll;
          scrollbar-color: transparent transparent;
          scrollbar-width: thin;
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_navOuter::-webkit-scrollbar {
          display: none;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_navInner {
          align-items: center;
          display: flex;
          flex-shrink: 0;
          min-height: calc(var(--a-s, 1px) * 44);
          min-width: 100%;
          padding: 0 calc(var(--a-s, 1px) * 20);
          position: relative;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_nav:has(.c_main_navButton) .c_main_navInner {
          padding-right: 0;
        }
      }
      .c_main_navSearch {
        display: none;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_navSearch {
          aspect-ratio: 1/1;
          height: calc(var(--a-s, 1px) * 20);
          margin-right: calc(var(--a-s, 1px) * 8);
          width: calc(var(--a-s, 1px) * 20);
        }
      }
      .c_main_navList {
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_main_navList {
          align-items: center;
          flex-direction: column;
          row-gap: calc(var(--a-s, 1px) * 6);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_navList {
          column-gap: calc(var(--a-s, 1px) * 14);
          margin-left: calc(var(--a-s, 1px) * 28);
          position: relative;
          z-index: 1;
        }
      }
      .c_main_navItem {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_main_navItem {
          opacity: 0.2;
          width: calc(var(--a-s, 1px) * 4);
        }
      }
      @media (any-hover: hover) {
        .c_main_navItem {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_main_navItem.is_hover,
        .c_main_navItem:hover {
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_main_navItem.__active {
          width: calc(var(--a-s, 1px) * 6);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_navItem.__active {
          color: rgba(51, 51, 51, 0.3);
        }
        html[data-template="rockbar-detail"] .c_main_navItem.__active,
        html[data-template="rockbar-index"] .c_main_navItem.__active {
          color: hsla(0, 0%, 100%, 0.3);
        }
        .c_main_navItem.__active:after {
          background: #333;
          content: "";
          height: 2px;
          left: 0;
          position: absolute;
          top: 0;
          width: 100%;
        }
        html[data-template="rockbar-detail"] .c_main_navItem.__active:after,
        html[data-template="rockbar-index"] .c_main_navItem.__active:after {
          background: #fff;
        }
      }
      .c_main_navItemLink {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_main_navItemLink {
          display: block;
          width: 100%;
        }
        .c_main_navItemLink:after {
          bottom: calc(var(--a-s, 1px) * -3);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -3);
          position: absolute;
          right: calc(var(--a-s, 1px) * -3);
          top: calc(var(--a-s, 1px) * -3);
          width: auto;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_navItemLink {
          align-items: center;
          display: flex;
          height: calc(var(--a-s, 1px) * 44);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_main_navItemIcon {
          aspect-ratio: 1/1;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_navItemIcon {
          display: none;
        }
      }
      .c_main_navItemIcon svg {
        fill: #fff;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        html.device-touch .c_main_navItemIcon svg {
          fill: #000;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_main_navButton {
          align-items: center;
          display: flex;
          flex-shrink: 0;
          margin-left: calc(var(--a-s, 1px) * 14);
          padding-right: calc(var(--a-s, 1px) * 20);
        }
        .c_main_navButton:before {
          background-image: linear-gradient(
            180deg,
            #666,
            #666 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-y;
          background-size: 1px 3px;
          content: "";
          display: block;
          height: calc(var(--a-s, 1px) * 7);
          margin-right: calc(var(--a-s, 1px) * 14);
          width: 1px;
        }
        html[data-template="rockbar-detail"] .c_main_navButton:before,
        html[data-template="rockbar-index"] .c_main_navButton:before {
          background-image: linear-gradient(
            180deg,
            hsla(0, 0%, 100%, 0.6),
            hsla(0, 0%, 100%, 0.6) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-y;
          background-size: 1px 3px;
        }
        .c_main_navButtonLink {
          align-items: center;
          -webkit-backdrop-filter: blur(1.25px);
          backdrop-filter: blur(1.25px);
          background: #666;
          border-radius: calc(var(--a-s, 1px) * 2);
          color: #fff;
          display: flex;
          height: calc(var(--a-s, 1px) * 21);
          padding: 0 calc(var(--a-s, 1px) * 7);
        }
      }
      .c_main_body {
        position: relative;
        z-index: 4;
      }
      .c_main_footVideo {
        height: calc(var(--vh-max, 1vh) * 100);
        position: relative;
      }
      html[data-template="rockbar-detail"] .c_main_footVideo,
      html[data-template="rockbar-index"] .c_main_footVideo {
        background: #000;
      }
      .c_main_footVideoInner {
        background-color: #000;
      }
      .c_main_footVideoFixed {
        height: calc(var(--vh-max, 1vh) * 100) !important;
        left: 0;
        position: fixed !important;
        top: 0;
        width: 100%;
      }
      html.device-touch .c_main_footVideoFixed {
        align-items: center;
        display: flex;
        justify-content: center;
      }
      .c_main_footVideoFloating {
        color: #fff;
      }
      html.device-touch .c_main_footVideoFloating {
        display: flex;
        flex-direction: column;
        justify-content: center;
        position: relative;
        z-index: 1;
      }
      @media (orientation: portrait) and (min-width: 760px) {
        .c_main_footVideoFloating {
          scale: 1.5;
        }
      }
      html.device-touch .c_main_footVideoDestination {
        display: grid;
        row-gap: calc(var(--a-s, 1px) * 14);
        text-align: center;
      }
      html.device-touch .c_main_footVideoDestination .__sa {
        font-family: Helvetica Now Text, sans-serif;
        font-size: calc(var(--a-s, 1px) * 25);
        font-weight: 500;
        letter-spacing: 0.03em;
        letter-spacing: 0.24em;
        line-height: calc(var(--a-s, 1px) * 26);
        margin-block: -0.19em -0.16em;
        padding-left: calc(var(--a-s, 1px) * 8);
      }
      html.device-touch .c_main_footVideoDestination .__go {
        font-family: Helvetica Now Text, sans-serif;
        font-size: calc(var(--a-s, 1px) * 15);
        font-weight: 400;
        letter-spacing: 0.03em;
        letter-spacing: 0.24em;
        line-height: calc(var(--a-s, 1px) * 24);
        margin-block: -0.47em -0.44em;
        padding-left: calc(var(--a-s, 1px) * 6);
      }
      html.device-touch .c_main_footVideoDot {
        margin-bottom: calc(var(--a-s, 1px) * 28);
        margin-top: calc(var(--a-s, 1px) * 21);
      }
      .c_main_footVideoBtn {
        align-items: center;
        cursor: pointer;
        display: flex;
        flex-direction: column;
        z-index: 1;
      }
      html.device-desktop .c_main_footVideoBtn {
        position: absolute;
        row-gap: calc(var(--a-s, 1px) * 16);
        width: calc(var(--a-s, 1px) * 96);
      }
      html.device-touch .c_main_footVideoBtn {
        row-gap: calc(var(--a-s, 1px) * 21);
      }
      html.device-desktop .c_main_footVideoBtnIcon {
        align-items: center;
        aspect-ratio: 1/1;
        display: flex;
        justify-content: center;
        position: relative;
        width: 100%;
      }
      html.device-desktop .c_main_footVideoBtnIconFrame {
        border: 1px solid hsla(0, 0%, 100%, 0.4);
        border-radius: 50%;
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      html.device-desktop .c_main_footVideoBtnIconFrame:after {
        background: currentColor;
        content: "";
        display: block;
        height: 2px;
        inset: auto auto -1px calc(50% - var(--a-s, 1px) * 11);
        position: absolute;
        width: calc(var(--a-s, 1px) * 22);
      }
      .c_main_footVideoBtnArw {
        position: relative;
        right: -1px;
      }
      html.device-desktop .c_main_footVideoBtnArw {
        width: calc(var(--a-s, 1px) * 24);
      }
      html.device-touch .c_main_footVideoBtnArw {
        width: calc(var(--a-s, 1px) * 69);
      }
      html.device-desktop .c_main_footVideoBtnArw svg {
        fill: currentColor;
      }
      html.device-desktop .c_main_footVideoBtnTxtInner {
        font-family: Helvetica Now Text, sans-serif;
        font-size: calc(var(--a-s, 1px) * 14);
        font-weight: 400;
        letter-spacing: 0.03em;
        line-height: calc(var(--a-s, 1px) * 24);
        margin-block: -0.53em -0.5em;
      }
      html.device-touch .c_main_footVideoBtnTxtInner {
        font-family: Helvetica Now Text, sans-serif;
        font-size: calc(var(--a-s, 1px) * 13);
        font-weight: 400;
        letter-spacing: 0.03em;
        line-height: calc(var(--a-s, 1px) * 20);
        margin-block: -0.44em -0.41em;
      }
      html.device-touch .c_main_footVideoBtnTxt:after {
        background-image: linear-gradient(
          90deg,
          hsla(0, 0%, 100%, 0.6),
          hsla(0, 0%, 100%, 0.6) 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-x;
        background-size: 3px 1px;
        content: "";
        display: block;
        height: 1px;
        margin-top: calc(var(--a-s, 1px) * 14);
        width: 100%;
      }
      .c_courseBanner {
        background: #736b5c;
        color: #fff;
        display: block;
        position: relative;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBanner {
          height: calc(var(--a-s, 1px) * 272);
          padding: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBanner {
          height: calc(var(--a-s, 1px) * 182);
          padding: calc(var(--a-s, 1px) * 4);
        }
      }
      .c_courseBanner_inner {
        display: flex;
        height: 100%;
        justify-content: space-between;
        position: relative;
        width: 100%;
        z-index: 1;
      }
      .c_courseBanner_inner:before {
        border: 1px solid hsla(0, 0%, 100%, 0.14);
        content: "";
        display: block;
        inset: 0;
        position: absolute;
        z-index: 1;
      }
      .c_courseBanner_inner:after {
        background: currentColor;
        content: "";
        display: block;
        height: 2px;
        inset: auto 0 0;
        opacity: 0;
        position: absolute;
        z-index: 1;
      }
      @media (any-hover: hover) {
        .c_courseBanner_inner:after {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_courseBanner:hover .c_courseBanner_inner:after {
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_courseBanner_body {
        display: flex;
        flex-direction: column;
        justify-content: center;
        position: relative;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBanner_body {
          padding-left: calc(var(--a-s, 1px) * 65);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBanner_body {
          padding-left: calc(var(--a-s, 1px) * 24);
        }
      }
      .c_courseBanner_copy > * {
        text-decoration: underline;
        text-decoration-color: hsla(0, 0%, 100%, 0.2);
        text-decoration-skip-ink: none;
        text-underline-offset: -0.05em;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBanner_copy > * {
          text-decoration-thickness: calc(var(--a-s, 1px) * 6);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBanner_copy > * {
          text-decoration-thickness: calc(var(--a-s, 1px) * 3);
        }
      }
      .c_courseBanner_copy > * br {
        display: none;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBanner_ttl {
          padding: calc(var(--a-s, 1px) * 34) 0 calc(var(--a-s, 1px) * 51);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBanner_ttl {
          padding: calc(var(--a-s, 1px) * 21) 0 calc(var(--a-s, 1px) * 28);
        }
        .c_courseBanner_txt {
          opacity: 0.6;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBanner_btn {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 32);
          display: flex;
          padding-right: calc(var(--a-s, 1px) * 100);
          position: relative;
          z-index: 1;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBanner_btn {
          inset: auto 0 0 auto;
          padding: 0 calc(var(--a-s, 1px) * 40) calc(var(--a-s, 1px) * 30)
            calc(var(--a-s, 1px) * 43);
          position: absolute;
          z-index: 1;
        }
      }
      @media (any-hover: hover) {
        .c_courseBanner_btn {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_courseBanner:hover .c_courseBanner_btn {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_courseBanner_btn:after {
        background: currentColor;
        content: "";
        display: block;
        height: 2px;
        inset: auto 0 0;
        position: absolute;
      }
      .c_courseBanner_arw {
        aspect-ratio: 1/1;
        display: block;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBanner_arw {
          width: calc(var(--a-s, 1px) * 13);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBanner_arw {
          width: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBanner_icon {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 32);
          display: flex;
        }
      }
      .c_courseBanner_icon:before {
        background-image: linear-gradient(
          180deg,
          currentColor,
          currentColor 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        content: "";
        display: block;
        height: calc(var(--a-s, 1px) * 16);
        opacity: 0.4;
        width: 1px;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBanner_icon:before {
          inset: auto auto calc(var(--a-s, 1px) * 4) 0;
          position: absolute;
        }
      }
      .c_courseBanner_arw svg {
        fill: currentColor;
      }
      .c_courseBanner_img {
        inset: 0 0 auto auto;
        position: absolute;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBanner_img {
          width: calc(var(--a-s, 1px) * 516);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBanner_img {
          width: calc(var(--a-s, 1px) * 178);
        }
      }
      .c_courseBanner_bg {
        background: #807766;
        inset: 0;
        position: absolute;
        z-index: 0;
      }
      @media (any-hover: hover) {
        .c_courseBanner_bg {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_courseBanner:hover .c_courseBanner_bg {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_courseBannerFull {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull {
          height: calc(var(--o-s, 1px) * 960);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull {
          height: calc(var(--o-s, 1px) * 605);
        }
      }
      .c_courseBannerFull_body {
        contain: size layout;
        height: 100%;
        justify-content: center;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .c_courseBannerFull_link {
        align-items: center;
        background: #ddd8c0;
        -webkit-box-shadow: 0 calc(var(--a-s, 1px) * 1)
          calc(var(--a-s, 1px) * 2) rgba(0, 0, 0, 0.3);
        box-shadow: 0 calc(var(--a-s, 1px) * 1) calc(var(--a-s, 1px) * 2)
          rgba(0, 0, 0, 0.3);
        display: flex;
        justify-content: center;
        margin: 0 auto;
        position: relative;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_link {
          padding-bottom: calc(var(--a-s, 1px) * 34);
          padding-top: calc(var(--a-s, 1px) * 48);
          width: calc(var(--a-s, 1px) * 480);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_link {
          padding-bottom: calc(var(--a-s, 1px) * 29);
          padding-top: calc(var(--a-s, 1px) * 38);
          width: calc(var(--a-s, 1px) * 225);
        }
      }
      .c_courseBannerFull_link:before {
        background: #eeead9;
        border: 1px solid rgba(0, 0, 0, 0.2);
        content: "";
        display: block;
        position: absolute;
        z-index: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_link:before {
          inset: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_link:before {
          inset: calc(var(--a-s, 1px) * 4);
        }
      }
      .c_courseBannerFull_linkBg {
        inset: calc(var(--a-s, 1px) * 8);
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_linkBg {
          inset: calc(var(--a-s, 1px) * 8) calc(var(--a-s, 1px) * 8) auto auto;
          width: calc(var(--a-s, 1px) * 248);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_linkBg {
          inset: calc(var(--a-s, 1px) * 4.5) calc(var(--a-s, 1px) * 4.5) auto
            auto;
          width: calc(var(--a-s, 1px) * 147);
        }
      }
      .c_courseBannerFull_content {
        z-index: 1;
      }
      .c_courseBannerFull_body {
        align-items: center;
        contain: none;
        display: flex;
        flex-direction: column;
        position: relative;
        text-align: center;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_copy {
          margin-bottom: calc(var(--a-s, 1px) * 48);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_copy {
          margin-bottom: calc(var(--a-s, 1px) * 28);
        }
      }
      .c_courseBannerFull_copy > * {
        text-decoration: underline;
        text-decoration-color: rgba(154, 131, 70, 0.2);
        text-decoration-skip-ink: none;
        text-underline-offset: -0.05em;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_copy > * {
          text-decoration-thickness: calc(var(--a-s, 1px) * 6);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_copy > * {
          text-decoration-thickness: calc(var(--a-s, 1px) * 2);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_ttl {
          margin-bottom: calc(var(--a-s, 1px) * 48);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_ttl {
          margin-bottom: calc(var(--a-s, 1px) * 28);
        }
      }
      .c_courseBannerFull_btn {
        background: #736b5c;
        -webkit-box-shadow: 0 calc(var(--a-s, 1px) * 1)
          calc(var(--a-s, 1px) * 1) rgba(0, 0, 0, 0.2);
        box-shadow: 0 calc(var(--a-s, 1px) * 1) calc(var(--a-s, 1px) * 1)
          rgba(0, 0, 0, 0.2);
        color: #fff;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_btn {
          margin-top: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_btn {
          margin-top: calc(var(--a-s, 1px) * 28);
        }
      }
      .c_courseBannerFull_btnInner {
        align-items: center;
        column-gap: calc(var(--a-s, 1px) * 8);
        display: flex;
        position: relative;
        z-index: 1;
      }
      @media (any-hover: hover) {
        .c_courseBannerFull_btnInner {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_courseBannerFull_link:hover .c_courseBannerFull_btnInner {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_btnInner {
          height: calc(var(--a-s, 1px) * 46);
          padding: 0 calc(var(--a-s, 1px) * 24);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_btnInner {
          height: calc(var(--a-s, 1px) * 42);
          padding: 0 calc(var(--a-s, 1px) * 14);
        }
      }
      .c_courseBannerFull_btnBg {
        background: #807766;
        inset: 0;
        position: absolute;
        z-index: 0;
      }
      @media (any-hover: hover) {
        .c_courseBannerFull_btnBg {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_courseBannerFull_link:hover .c_courseBannerFull_btnBg {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_courseBannerFull_arw {
        aspect-ratio: 1/1;
        width: calc(var(--a-s, 1px) * 9);
      }
      .c_courseBannerFull_arw svg {
        fill: currentColor;
      }
      .c_courseBannerFull_photos {
        inset: calc(var(--o-s, 1px) * -100) 0;
        overflow: hidden;
        position: absolute;
      }
      .c_courseBannerFull_group {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        top: calc(var(--o-s, 1px) * 100);
        width: 100%;
        z-index: -1;
      }
      .c_courseBannerFull_item {
        aspect-ratio: 3/2;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__1 {
          left: calc(var(--o-s, 1px) * 240);
          top: calc(var(--o-s, 1px) * -32);
          width: calc(var(--o-s, 1px) * 360);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__1 {
          left: calc(var(--o-s, 1px) * -13.5);
          top: calc(var(--o-s, 1px) * 0);
          width: calc(var(--o-s, 1px) * 167.5);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__2 {
          left: calc(var(--o-s, 1px) * 1050);
          top: calc(var(--o-s, 1px) * 128);
          width: calc(var(--o-s, 1px) * 240);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__2 {
          left: calc(var(--o-s, 1px) * 254.5);
          top: calc(var(--o-s, 1px) * 84);
          width: calc(var(--o-s, 1px) * 105);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__3 {
          left: calc(var(--o-s, 1px) * 90);
          top: calc(var(--o-s, 1px) * 448);
          width: calc(var(--o-s, 1px) * 240);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__3 {
          left: calc(var(--o-s, 1px) * -18);
          top: calc(var(--o-s, 1px) * 240.5);
          width: calc(var(--o-s, 1px) * 105);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__4 {
          left: calc(var(--o-s, 1px) * 1080);
          top: calc(var(--o-s, 1px) * 528);
          width: calc(var(--o-s, 1px) * 360);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__4 {
          left: calc(var(--o-s, 1px) * 254.5);
          top: calc(var(--o-s, 1px) * 338.5);
          width: calc(var(--o-s, 1px) * 167.5);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__5 {
          left: calc(var(--o-s, 1px) * 0);
          top: calc(var(--o-s, 1px) * 800);
          width: calc(var(--o-s, 1px) * 360);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__5 {
          left: calc(var(--o-s, 1px) * -13.5);
          top: calc(var(--o-s, 1px) * 478.5);
          width: calc(var(--o-s, 1px) * 167.5);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__6 {
          left: calc(var(--o-s, 1px) * 750);
          top: calc(var(--o-s, 1px) * 881);
          width: calc(var(--o-s, 1px) * 240);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__1 .c_courseBannerFull_item.__6 {
          left: calc(var(--o-s, 1px) * 221);
          top: calc(var(--o-s, 1px) * 535.5);
          width: calc(var(--o-s, 1px) * 105);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__1 {
          left: calc(var(--o-s, 1px) * 420);
          top: calc(var(--o-s, 1px) * 144);
          width: calc(var(--o-s, 1px) * 240);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__1 {
          left: calc(var(--o-s, 1px) * 16);
          top: calc(var(--o-s, 1px) * 82);
          width: calc(var(--o-s, 1px) * 105);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__2 {
          left: calc(var(--o-s, 1px) * 840);
          top: calc(var(--o-s, 1px) * -32);
          width: calc(var(--o-s, 1px) * 360);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__2 {
          left: calc(var(--o-s, 1px) * 220);
          top: calc(var(--o-s, 1px) * 0);
          width: calc(var(--o-s, 1px) * 167.5);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__3 {
          left: calc(var(--o-s, 1px) * 0);
          top: calc(var(--o-s, 1px) * 544);
          width: calc(var(--o-s, 1px) * 360);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__3 {
          left: calc(var(--o-s, 1px) * -37.5);
          top: calc(var(--o-s, 1px) * 338.5);
          width: calc(var(--o-s, 1px) * 167.5);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__4 {
          left: calc(var(--o-s, 1px) * 1080);
          top: calc(var(--o-s, 1px) * 400);
          width: calc(var(--o-s, 1px) * 360);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__4 {
          left: calc(var(--o-s, 1px) * 284);
          top: calc(var(--o-s, 1px) * 240.5);
          width: calc(var(--o-s, 1px) * 105);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__5 {
          left: calc(var(--o-s, 1px) * 330);
          top: calc(var(--o-s, 1px) * 912);
          width: calc(var(--o-s, 1px) * 240);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__5 {
          left: calc(var(--o-s, 1px) * 47.5);
          top: calc(var(--o-s, 1px) * 517);
          width: calc(var(--o-s, 1px) * 105);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__6 {
          left: calc(var(--o-s, 1px) * 1111);
          top: calc(var(--o-s, 1px) * 800);
          width: calc(var(--o-s, 1px) * 240);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_courseBannerFull_group.__2 .c_courseBannerFull_item.__6 {
          left: calc(var(--o-s, 1px) * 220);
          top: calc(var(--o-s, 1px) * 478.5);
          width: calc(var(--o-s, 1px) * 167.5);
        }
      }
      .c_driveVideo {
        position: relative;
      }
      .c_driveVideo_container {
        aspect-ratio: unset !important;
      }
      .c_driveVideo_container .h_pc,
      .c_driveVideo_container .h_sp {
        aspect-ratio: inherit !important;
      }
      .c_driveVideo .h_pc {
        display: block;
      }
      .c_driveVideo .h_sp {
        display: none;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_driveVideo .h_pc {
          display: none !important;
        }
        .c_driveVideo .h_sp {
          display: block !important;
        }
        .c_driveVideo_container {
          margin: 0 calc(var(--a-s, 1px) * 13) !important;
          max-width: 100%;
          overflow: hidden;
          width: calc(100% - (var(--a-s, 1px) * 13) * 2) !important;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_driveVideo_container .h_pc {
          aspect-ratio: 16/9 !important;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_driveVideo_container .h_sp {
          aspect-ratio: 9/16 !important;
        }
      }
      .c_driveVideo_videoPC {
        align-items: center;
        aspect-ratio: 16/9;
        display: flex;
        justify-content: center;
        overflow: hidden;
        position: relative;
        width: 100%;
      }
      .c_driveVideo_videoPC video {
        height: 100%;
        object-fit: cover;
        object-position: center;
        pointer-events: none;
        -moz-user-select: none;
        -ms-user-select: none;
        -webkit-user-select: none;
        user-select: none;
        width: 100%;
      }
      .c_driveVideo_videoSP {
        align-items: center;
        aspect-ratio: 9/16;
        display: flex;
        justify-content: center;
        max-width: 100vw;
        overflow: hidden;
        position: relative;
        width: 100%;
      }
      .c_driveVideo_videoSP video {
        height: 100%;
        object-fit: cover;
        object-position: center;
        pointer-events: none;
        -moz-user-select: none;
        -ms-user-select: none;
        -webkit-user-select: none;
        user-select: none;
        width: 100%;
      }
      .c_driveVideo_mainContainer {
        align-items: center;
        aspect-ratio: 16/9;
        display: flex;
        justify-content: center;
        overflow: hidden;
        position: relative;
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_driveVideo_mainContainer {
          aspect-ratio: 9/16 !important;
          margin: 0 calc(var(--a-s, 1px) * 13) !important;
          max-width: 100%;
          width: calc(100% - (var(--a-s, 1px) * 13) * 2) !important;
          width: 100%;
        }
      }
      .c_driveVideo_innerContainer {
        height: 100%;
        position: relative;
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_driveVideo_innerContainer {
          aspect-ratio: 9/16 !important;
          width: 100%;
        }
      }
      .c_driveVideo_innerContainer video {
        height: 100%;
        object-fit: cover;
        object-position: center;
        pointer-events: none;
        -moz-user-select: none;
        -ms-user-select: none;
        -webkit-user-select: none;
        user-select: none;
        width: 100%;
      }
      .c_driveVideo_overlay {
        background: rgba(0, 0, 0, 0.08);
        bottom: 0;
        left: 0;
        pointer-events: none;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 2;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_driveVideo_overlay {
          left: 0;
          right: 0;
          width: 100%;
        }
      }
      .c_driveVideo_textOverlay {
        bottom: calc(var(--a-s, 1px) * 20);
        color: #fff;
        left: 0;
        margin-bottom: calc(var(--a-s, 1px) * 59);
        pointer-events: none;
        position: absolute;
        right: 0;
        text-align: center;
        z-index: 10;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_driveVideo_textOverlay {
          bottom: calc(var(--a-s, 1px) * 80) !important;
          -webkit-box-sizing: border-box;
          box-sizing: border-box;
          left: 0;
          margin-bottom: 0 !important;
          max-width: 100%;
          padding: 0 calc(var(--a-s, 1px) * 20);
          right: 0;
          width: 100%;
          word-wrap: break-word;
          hyphens: auto;
          overflow-wrap: break-word;
        }
      }
      .c_driveVideo_subtitle {
        margin-bottom: calc(var(--a-s, 1px) * 8);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_driveVideo_subtitle {
          margin-bottom: calc(var(--a-s, 1px) * 8);
        }
      }
      .c_driveVideo_titlePC {
        display: block;
        font-family: Tsukushi Mincho, serif;
        font-size: calc(var(--a-s, 1px) * 48);
        font-weight: 300;
        letter-spacing: calc(var(--a-s, 1px) * -3);
        line-height: calc(var(--a-s, 1px) * 54);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_driveVideo_titlePC {
          display: none;
        }
      }
      .c_driveVideo_titleSP {
        display: none;
        font-family: Tsukushi Mincho, serif;
        font-size: calc(var(--a-s, 1px) * 32);
        font-weight: 300;
        letter-spacing: calc(var(--a-s, 1px) * -3);
        line-height: calc(var(--a-s, 1px) * 39);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_driveVideo_titleSP {
          display: block;
        }
      }
      .c_driveVideo_adminNotice {
        background: orange;
        color: #000;
        font-size: calc(var(--a-s, 1px) * 12);
        margin: calc(var(--a-s, 1px) * 5) 0;
        padding: calc(var(--a-s, 1px) * 5);
      }
      .drive_video_headKv {
        grid-area: kv !important;
        margin-bottom: calc(var(--a-s, 1px) * 80);
        margin-top: calc(var(--a-s, 1px) * 80);
        position: relative !important;
      }
      .drive_video_headKv,
      .drive_video_headKv .c_driveVideo_container,
      .drive_video_headKv.c_driveVideo_container {
        aspect-ratio: unset !important;
      }
      .drive_video_headKv .c_driveVideo_container .h_pc,
      .drive_video_headKv .c_driveVideo_container .h_sp {
        aspect-ratio: inherit !important;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .drive_video_headKv .c_driveVideo_container .h_pc {
          aspect-ratio: 16/9 !important;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .drive_video_headKv .c_driveVideo_container .h_sp {
          aspect-ratio: 9/16 !important;
        }
        .drive_video_headKv,
        .drive_video_headKv .c_driveVideo,
        .drive_video_headKv .c_driveVideo_container .h_sp {
          width: calc(100vw - var(--a-s, 1px) * 20 * 2) !important;
        }
        .drive_video_headKv .c_driveVideo .c_driveVideo_container {
          margin: 0 !important;
          max-width: 100vw !important;
          width: 100% !important;
        }
        .drive_video_headKv .c_driveVideo_mainContainer {
          margin: 0 calc(var(--a-s, 1px) * 20) !important;
          max-width: calc(100vw - (var(--a-s, 1px) * 20) * 2) !important;
          width: calc(100% - (var(--a-s, 1px) * 20) * 2) !important;
        }
        .drive_video_headKv .c_driveVideo_overlay,
        .drive_video_headKv .c_driveVideo_textOverlay {
          left: 0 !important;
          right: 0 !important;
          width: 100% !important;
        }
        .drive_video_headKv .c_driveVideo_textOverlay {
          -webkit-box-sizing: border-box !important;
          box-sizing: border-box !important;
          max-width: 100% !important;
          padding: 0 calc(var(--a-s, 1px) * 20) !important;
        }
      }
      .c_footer {
        background: #f6f3e7;
        position: relative;
      }
      html[data-template="map"] .c_footer {
        display: none;
      }
      html[data-template="rockbar-detail"] .c_footer,
      html[data-template="rockbar-index"] .c_footer {
        background-color: #000;
      }
      html[data-template="course-index"] .c_footer {
        background: #eeead9;
      }
      .c_footer_blocks {
        display: flex;
        flex-direction: column;
      }
      html:not(.html_delayedReady) .c_footer_blocks {
        visibility: hidden;
      }
      html[data-template="bali"] .c_footer_blocks {
        flex-direction: column-reverse;
      }
      .c_footer_blockItem {
        display: none;
        position: relative;
      }
      html[data-template="spa-index"] .c_footer_blockItem,
      html[data-template="spa-menu"] .c_footer_blockItem {
        background: #e4e4d4;
      }
      html[data-template="bali"] .c_footer_blockItem.__video:before,
      html[data-template="category1"] .c_footer_blockItem.__course:before,
      html[data-template="hotel"] .c_footer_blockItem.__video:before {
        background-color: #f6f3e7;
        content: "";
        height: 10%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      html[data-template="bali"] .c_footer_blockItem {
        display: block;
      }
      html[data-template="bali"] .c_footer_blockItem.__video {
        z-index: 3;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        html[data-template="bali"] .c_footer_blockItem.__video {
          margin-bottom: calc(var(--o-s, 1px) * -5);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        html[data-template="bali"] .c_footer_blockItem.__course,
        html[data-template="bali"] .c_footer_blockItem.__video {
          margin-bottom: calc(var(--o-s, 1px) * -10);
        }
      }
      html[data-template="all-hotels"] .c_footer_blockItem,
      html[data-template="category1"] .c_footer_blockItem {
        display: block;
      }
      html[data-template="all-hotels"] .c_footer_blockItem.__video,
      html[data-template="category1"] .c_footer_blockItem.__video {
        z-index: 3;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        html[data-template="all-hotels"] .c_footer_blockItem.__video,
        html[data-template="category1"] .c_footer_blockItem.__video {
          margin-top: calc(var(--o-s, 1px) * -5);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        html[data-template="all-hotels"] .c_footer_blockItem.__video,
        html[data-template="category1"] .c_footer_blockItem.__video {
          margin-bottom: calc(var(--o-s, 1px) * -10);
          margin-top: calc(var(--o-s, 1px) * -10);
        }
      }
      html[data-template="all-hotels"] .c_footer_blockItem.__video:before,
      html[data-template="category1"] .c_footer_blockItem.__video:before {
        background: #343331;
        bottom: 0;
        content: "";
        height: 10%;
        left: 0;
        position: absolute;
        width: 100%;
      }
      html[data-template="hotel"] .c_footer_blockItem.__video,
      html[data-template="rockbar-index"] .c_footer_blockItem.__video,
      html[data-template="spa-index"] .c_footer_blockItem.__video {
        display: block;
      }
      .c_footer_body {
        background: #343331;
        color: #fff;
        position: relative;
        z-index: 10;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_footer_body {
          padding: 0 0 calc(var(--a-s, 1px) * 48);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_footer_body {
          padding: 0 0 calc(var(--a-s, 1px) * 42);
        }
      }
      .c_footer_clip {
        margin-bottom: -1px;
        position: relative;
        z-index: 4;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_footer_clip {
          height: calc(var(--a-s, 1px) * 80);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_footer_clip {
          height: calc(var(--a-s, 1px) * 42);
        }
      }
      .c_footer_clip .js_soloClip_inner {
        background: #343331;
      }
      .c_guideBtn {
        background: #808079;
        -webkit-box-shadow: 0 calc(var(--a-s, 1px) * 1)
          calc(var(--a-s, 1px) * 2) 0 rgba(0, 0, 0, 0.2);
        box-shadow: 0 calc(var(--a-s, 1px) * 1) calc(var(--a-s, 1px) * 2) 0
          rgba(0, 0, 0, 0.2);
        color: #fff;
        position: relative;
        text-align: center;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_guideBtn {
          padding: calc(var(--a-s, 1px) * 18) calc(var(--a-s, 1px) * 16)
            calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_guideBtn {
          padding: calc(var(--a-s, 1px) * 14) calc(var(--a-s, 1px) * 12)
            calc(var(--a-s, 1px) * 12);
        }
      }
      html[data-template="rockbar-detail"] .c_guideBtn,
      html[data-template="rockbar-index"] .c_guideBtn {
        background: #4d4d4d;
      }
      .c_guideBtn:before {
        background: #fff;
        content: "";
        display: block;
        height: 2px;
        position: absolute;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_guideBtn:before {
          inset: 0 calc(var(--a-s, 1px) * 16) auto;
          width: calc(100% - var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_guideBtn:before {
          inset: 0 calc(var(--a-s, 1px) * 12) auto;
          width: calc(100% - var(--a-s, 1px) * 24);
        }
      }
      .c_guideBtn_btn {
        align-items: stretch;
        color: #333;
        display: flex;
        justify-content: flex-start;
        position: relative;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_guideBtn_btn {
          height: calc(var(--a-s, 1px) * 48);
          padding-left: calc(var(--a-s, 1px) * 17);
          padding-right: calc(var(--a-s, 1px) * 17);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_guideBtn_btn {
          align-items: center;
          height: calc(var(--a-s, 1px) * 38);
          padding-left: calc(var(--a-s, 1px) * 14);
          padding-right: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (any-hover: hover) {
        .c_guideBtn_btn {
          transition: color 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_guideBtn_btn:hover {
          color: #fff;
          transition: color 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_guideBtn_btn:before {
        border: 1px solid #fff;
        content: "";
        display: block;
        inset: 0;
        position: absolute;
        z-index: 0;
      }
      .c_guideBtn_body {
        flex-direction: column;
        position: relative;
      }
      .c_guideBtn_body,
      .c_guideBtn_icon {
        display: flex;
        justify-content: center;
        z-index: 1;
      }
      .c_guideBtn_icon {
        align-items: center;
        aspect-ratio: 1/1;
        inset: 0 0 0 auto;
        position: absolute;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_guideBtn_icon {
          inset: auto calc(var(--a-s, 1px) * 14) auto auto;
          width: calc(var(--a-s, 1px) * 10);
        }
      }
      .c_guideBtn_icon:before {
        background-image: linear-gradient(
          180deg,
          currentColor,
          currentColor 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        content: "";
        display: block;
        height: calc(var(--a-s, 1px) * 16);
        left: -1px;
        opacity: 0.4;
        position: absolute;
        top: calc(50% - var(--a-s, 1px) * 8);
        width: 1px;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_guideBtn_icon:before {
          display: none;
        }
      }
      .c_guideBtn_icon:after {
        background: rgba(0, 0, 0, 0.4);
        content: "";
        display: block;
        height: 1px;
        inset: auto calc(var(--a-s, 1px) * 1) calc(var(--a-s, 1px) * 1)
          calc(var(--a-s, 1px) * 0);
        position: absolute;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_guideBtn_icon:after {
          display: none;
        }
      }
      @media (any-hover: hover) {
        .c_guideBtn_icon:after {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_guideBtn_btn:hover .c_guideBtn_icon:after {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_guideBtn_arw {
        aspect-ratio: 1/1;
        display: block;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_guideBtn_arw {
          width: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_guideBtn_arw {
          width: calc(var(--a-s, 1px) * 6.5);
        }
      }
      .c_guideBtn_arw svg {
        fill: currentColor;
      }
      .c_guideBtn_btnBg {
        background: #fff;
        inset: 0;
        position: absolute;
        z-index: 0;
      }
      @media (any-hover: hover) {
        .c_guideBtn_btnBg {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_guideBtn_btn:hover .c_guideBtn_btnBg {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_hotelBanner {
        align-items: center;
        background: #000;
        color: #fff;
        display: flex;
        justify-content: space-between;
        position: relative;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_hotelBanner {
          height: calc(var(--a-s, 1px) * 160);
          padding: 0 calc(var(--a-s, 1px) * 64);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_hotelBanner {
          height: calc(var(--a-s, 1px) * 170);
          padding: 0 calc(var(--a-s, 1px) * 28);
        }
      }
      .c_hotelBanner_icon,
      .c_hotelBanner_ttl {
        position: relative;
        z-index: 1;
      }
      .c_hotelBanner_icon {
        align-items: center;
        background: #fff;
        border: 1px solid #fff;
        border-radius: 50%;
        color: #333;
        display: flex;
        justify-content: center;
      }
      @media (any-hover: hover) {
        .c_hotelBanner_icon {
          transition: color, background 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_hotelBanner:hover .c_hotelBanner_icon {
          background: none;
          color: #fff;
          transition: color, background 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_hotelBanner_icon {
          height: calc(var(--a-s, 1px) * 32);
          width: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_hotelBanner_icon {
          height: calc(var(--a-s, 1px) * 30);
          width: calc(var(--a-s, 1px) * 30);
        }
      }
      .c_hotelBanner_arw {
        position: relative;
        right: calc(var(--a-s, 1px) * -1);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_hotelBanner_arw {
          height: calc(var(--a-s, 1px) * 10);
          width: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_hotelBanner_arw {
          height: calc(var(--a-s, 1px) * 9);
          width: calc(var(--a-s, 1px) * 9);
        }
      }
      .c_hotelBanner_arw svg {
        fill: currentColor;
      }
      .c_hotelBanner_img {
        contain: size layout;
        height: 100%;
        left: 0;
        overflow: hidden;
        position: absolute;
        top: 0;
        width: 100%;
      }
      @media (any-hover: hover) {
        .c_hotelBanner_img {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_hotelBanner:hover .c_hotelBanner_img {
          opacity: 0.48;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_hotelBanner_imgItem:first-child,
        .c_hotelBanner_imgItem:nth-child(2) {
          display: block;
        }
      }
      .c_menu {
        --text-color-main: #fff;
        --text-color-nomal: #fff;
        --text-color-lite: #999;
        --line-color-main: #fff;
        --line-color-main-2: hsla(0, 0%, 100%, 0.2);
        --line-color-main-4: hsla(0, 0%, 100%, 0.4);
        --line-color-main-6: hsla(0, 0%, 100%, 0.6);
        --line-color-main-7: hsla(0, 0%, 100%, 0.07);
        --icon-color-head: #fff;
        --icon-color-sub: #999;
        --icon-color-more: #fff;
        color: var(--text-color-main);
      }
      .c_menu.__modal {
        --text-color-main: #333;
        --text-color-nomal: #000;
        --text-color-nomal-3: #333;
        --text-color-nomal-6: #666;
        --text-color-lite: #666;
        --line-color-main: #000;
        --line-color-main-2: rgba(0, 0, 0, 0.2);
        --line-color-main-4: rgba(0, 0, 0, 0.4);
        --line-color-main-6: rgba(0, 0, 0, 0.6);
        --line-color-main-7: rgba(0, 0, 0, 0.07);
        --line-color-unit: rgba(51, 51, 51, 0.07);
        --icon-color-head: #333;
        --icon-color-sub: #666;
        --icon-color-more: #666;
        align-items: center;
        display: flex;
        height: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_footer .c_menu_wrap {
          padding-top: calc(var(--a-s, 1px) * 1);
        }
      }
      .c_menu.__modal .c_menu_wrap {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu.__modal .c_menu_wrap {
          padding-bottom: calc(var(--a-s, 1px) * 48);
          padding-top: calc(var(--a-s, 1px) * 96);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu.__modal .c_menu_wrap {
          padding-bottom: calc(var(--a-s, 1px) * 42);
          padding-top: calc(var(--a-s, 1px) * 80);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_head {
          display: grid;
          grid-template-columns: 1fr max-content;
          grid-template-rows: max-content;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_head {
          display: flex;
          flex-direction: column-reverse;
        }
      }
      .c_menu_headTitle {
        outline: none !important;
        position: relative;
      }
      @media (any-hover: hover) {
        .c_menu_headTitle {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_headTitle:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_menu_headTitle:after {
        bottom: calc(var(--a-s, 1px) * -20);
        content: "";
        display: block;
        height: auto;
        left: calc(var(--a-s, 1px) * -20);
        position: absolute;
        right: calc(var(--a-s, 1px) * -20);
        top: calc(var(--a-s, 1px) * -20);
        width: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_headTitle {
          margin-top: calc(var(--a-s, 1px) * 96);
          width: fit-content;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_headTitle {
          padding: calc(var(--a-s, 1px) * 42) 0 calc(var(--a-s, 1px) * 28);
          position: relative;
          width: 100%;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_modal .c_menu_headTitle {
          margin-top: 0;
        }
      }
      .c_menu_headTitleInner {
        white-space: nowrap;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_headTitleInner {
          letter-spacing: 0.12em;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_headTitleInner {
          letter-spacing: 0.12em;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_headLinks {
          display: grid;
          grid-template-columns: auto auto;
          grid-template-rows: max-content;
          margin-top: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_headLinks {
          display: flex;
          justify-content: end;
          margin-top: calc(var(--a-s, 1px) * 13);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu.__modal .c_menu_headLinks {
          margin-top: 0;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu.__modal .c_menu_headLinks {
          margin-top: calc(var(--a-s, 1px) * 15);
        }
      }
      .c_menu_belowLink {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_belowLink:not(:first-child) {
          margin-left: calc(var(--a-s, 1px) * 14);
          padding-left: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_belowLink:not(:first-child) {
          margin-left: calc(var(--a-s, 1px) * 13);
          padding-left: calc(var(--a-s, 1px) * 13);
        }
      }
      .c_menu_belowLink:not(:first-child):after {
        background-image: linear-gradient(
          180deg,
          #999,
          #999 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        content: "";
        display: block;
        height: 7px;
        left: 0;
        opacity: 0.4;
        position: absolute;
        top: calc(50% - var(--a-s, 1px) * 3);
        width: 1px;
      }
      .c_menu.__modal .c_menu_belowLink:not(:first-child):after {
        background-image: linear-gradient(
          180deg,
          #333,
          #333 1px,
          transparent 0,
          transparent 2px
        );
        opacity: 0.6;
      }
      .c_menu_belowLinkAnker {
        align-items: center;
        column-gap: calc(var(--a-s, 1px) * 8);
        display: grid;
        grid-template-columns: auto max-content;
        position: relative;
      }
      @media (any-hover: hover) {
        .c_menu_belowLinkAnker {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_belowLinkAnker:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_menu_belowLinkAnker:after {
        bottom: calc(var(--a-s, 1px) * -15);
        content: "";
        display: block;
        height: auto;
        left: calc(var(--a-s, 1px) * -15);
        position: absolute;
        right: calc(var(--a-s, 1px) * -15);
        top: calc(var(--a-s, 1px) * -15);
        width: auto;
      }
      .c_menu_belowLinkIcon circle,
      .c_menu_belowLinkIcon path {
        stroke: var(--text-color-lite);
      }
      .c_menu_belowLinkIcon rect {
        fill: var(--text-color-lite);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_belowLinkIcon {
          width: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_belowLinkIcon {
          width: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_bodyHead {
          height: calc(var(--a-s, 1px) * 143);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_bodyHead {
          height: calc(var(--a-s, 1px) * 68);
          margin-top: calc(var(--a-s, 1px) * 15);
        }
      }
      .c_menu_bodyWrap {
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_bodyWrap {
          column-gap: calc(var(--a-s, 1px) * 60);
          grid-template-columns:
            calc(var(--a-s, 1px) * 420) calc(var(--a-s, 1px) * 300)
            calc(var(--a-s, 1px) * 240);
        }
        html[lang="en"] .c_menu_bodyWrap {
          grid-template-columns:
            calc(var(--a-s, 1px) * 380) calc(var(--a-s, 1px) * 380)
            calc(var(--a-s, 1px) * 200);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_bodyWrap {
          column-gap: calc(var(--o-s, 1px) * 21);
          display: grid;
          grid-auto-rows: auto;
          grid-template-areas: "hotel hotel" "dining spa" "experience wedding" "meeting offer" "others others";
          grid-template-columns: repeat(2, 1fr);
        }
        .c_menu_bodyWrap .c_menu_bodyUnit {
          display: contents !important;
        }
        .c_menu_bodyWrap .c_menu_mainItem.__hotel {
          grid-area: hotel;
        }
        .c_menu_bodyWrap .c_menu_mainItem.__dining {
          grid-area: dining;
        }
        .c_menu_bodyWrap .c_menu_mainItem.__spa {
          grid-area: spa;
        }
        .c_menu_bodyWrap .c_menu_mainItem.__experience {
          grid-area: experience;
        }
        .c_menu_bodyWrap .c_menu_mainItem.__wedding {
          grid-area: wedding;
        }
        .c_menu_bodyWrap .c_menu_mainItem.__meeting {
          grid-area: meeting;
        }
        .c_menu_bodyWrap .c_menu_mainItem.__offer {
          grid-area: offer;
        }
        .c_menu_bodyWrap .c_menu_bodyOthers {
          column-gap: calc(var(--o-s, 1px) * 21);
          display: grid;
          grid-area: others;
          grid-auto-rows: auto;
          grid-template-areas: "g1 g1" "g1 g1" "g2 g2";
          grid-template-columns: repeat(2, 1fr);
        }
        .c_menu_bodyWrap .c_menu_bodyOtherLink.__g2 {
          grid-area: g2;
        }
        .c_menu_bodyUnit:nth-child(2) {
          margin-top: calc(var(--a-s, 1px) * 57 / 2);
        }
        .c_menu_bodyUnit:last-child {
          border-top: none;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_bodyOthers {
          border-top: 1px solid var(--line-color-main-4);
          display: flex;
          flex-direction: column;
          padding-top: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_bodyOthers {
          margin-top: calc(var(--a-s, 1px) * 16);
        }
      }
      .c_menu_bodyOtherLink {
        display: flex;
        justify-content: space-between;
        position: relative;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_bodyOtherLink {
          height: calc(var(--a-s, 1px) * 49);
          margin-top: calc(var(--a-s, 1px) * 15);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_bodyOtherLink {
          align-items: center;
          height: calc(var(--a-s, 1px) * 41);
        }
      }
      .c_menu_bodyOtherLink:before {
        background-color: var(--line-color-main-7);
        bottom: 0;
        content: "";
        display: block;
        height: 1px;
        left: 0;
        position: absolute;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_bodyOtherLink:last-child {
          height: calc(var(--a-s, 1px) * 48);
          margin-top: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_bodyOtherLink:last-child {
          margin-top: calc(var(--a-s, 1px) * 15);
        }
      }
      .c_menu_bodyOtherItem {
        align-items: center;
        display: grid;
        grid-template-columns: auto auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_bodyOtherItem {
          column-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_bodyOtherItem {
          column-gap: calc(var(--a-s, 1px) * 4);
        }
      }
      @media (any-hover: hover) {
        .c_menu_bodyOtherItem {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_bodyOtherLink:hover .c_menu_bodyOtherItem {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .js_menuBody_item.is_active .c_menu_bodyOtherItem {
        opacity: 0.3;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_bodyOtherText {
          white-space: nowrap;
        }
        html:not([lang="en"]) .c_menu_bodyOtherText {
          letter-spacing: 0.03em;
        }
        html:not([lang="en"])
          .c_menu_bodyOtherLink.__itinerary
          .c_menu_bodyOtherText,
        html:not([lang="en"]) .c_menu_bodyOtherText {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 12);
          font-weight: 400;
          line-height: calc(var(--a-s, 1px) * 20);
          margin-block: -0.5em -0.47em;
        }
        html:not([lang="en"])
          .c_menu_bodyOtherLink.__itinerary
          .c_menu_bodyOtherText {
          letter-spacing: 0.008em;
        }
      }
      .c_menu_bodyOtherCat {
        opacity: 0.6;
        white-space: nowrap;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        html[lang="ja"] .c_menu_bodyOtherLink.__itinerary .c_menu_bodyOtherCat {
          letter-spacing: 0.02em;
        }
      }
      .c_menu_bodyFoot {
        display: flex;
        justify-content: space-between;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .__modal .c_menu_bodyFoot,
        .c_footer .c_menu_bodyFoot {
          margin-top: calc(var(--a-s, 1px) * 48);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_bodyFoot {
          flex-direction: column;
          margin-top: calc(var(--a-s, 1px) * 15);
        }
      }
      .c_menu_bodyFootWrap {
        color: var(--text-color-lite);
        display: flex;
        justify-content: space-between;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_footer .c_menu_bodyFootWrap {
          flex-direction: column;
          row-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_bodyFootWrap {
          align-items: center;
          border-bottom: 1px solid var(--line-color-main-7);
          height: calc(var(--a-s, 1px) * 40);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_modal .c_menu_bodyFootWrap.__sns {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 32);
        }
        .c_menu_bodyFootWrap.__lang {
          text-align: end;
        }
      }
      .js_modal .c_menu_bodyFootWrap.__lang {
        border-bottom: none;
        height: auto;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_modal .c_menu_bodyFootWrap.__lang {
          column-gap: calc(var(--a-s, 1px) * 24);
          right: calc(
            50% - var(--a-s, 1px) * 1440 * 0.5 + var(--a-s, 1px) * 360 * 0.5
          );
          top: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_modal .c_menu_bodyFootWrap.__lang {
          right: calc(var(--a-s, 1px) * 20);
          top: calc(var(--a-s, 1px) * 28);
        }
        .js_modal .c_menu_bodyFootWrap.__lang .c_menu_bodyFootTitle {
          display: none;
        }
        .c_menu_bodyFootTitle {
          color: var(--text-color-main);
        }
      }
      .c_menu_bodyFootList {
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_bodyFootList {
          align-items: end;
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_bodyFootList {
          column-gap: calc(var(--a-s, 1px) * 14);
          margin-top: 0;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu.__modal .c_menu_bodyFootListItem {
          color: #666;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu.__modal .c_menu_bodyFootListItem {
          color: #999;
        }
        .c_menu.__modal .c_menu_bodyFootWrap.__lang .c_menu_bodyFootListItem {
          color: #666;
        }
      }
      .c_menu_bodyFootListItem:last-child {
        margin-right: 0;
      }
      .c_menu_bodyFootListLink {
        align-items: center;
        display: flex;
        position: relative;
      }
      .c_menu_bodyFootListLink:after {
        bottom: calc(var(--a-s, 1px) * -10);
        content: "";
        display: block;
        height: auto;
        left: calc(var(--a-s, 1px) * -10);
        position: absolute;
        right: calc(var(--a-s, 1px) * -10);
        top: calc(var(--a-s, 1px) * -10);
        width: auto;
      }
      @media (any-hover: hover) {
        .c_menu_bodyFootListLink {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_bodyFootListLink:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_bodyFootListLink {
          column-gap: calc(var(--a-s, 1px) * 8);
        }
      }
      .c_menu_bodyFootListItem.__active .c_menu_bodyFootListLink,
      .c_menu_bodyFootListLink.is_active {
        opacity: 0.3;
        pointer-events: none;
      }
      .c_menu_snsIcon {
        width: calc(var(--a-s, 1px) * 12);
        fill: #999;
      }
      .c_menu_snsIcon .js_img svg {
        overflow: visible;
      }
      .c_menu_foot {
        position: relative;
      }
      .c_menu_logo {
        display: flex;
        justify-content: center;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_logo {
          bottom: calc(var(--a-s, 1px) * 6);
          left: 0;
          position: absolute;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_logo {
          margin: calc(var(--a-s, 1px) * 44) 0 calc(var(--a-s, 1px) * 28);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_logoImg {
          width: calc(var(--a-s, 1px) * 110);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_logoImg {
          width: calc(var(--a-s, 1px) * 91);
        }
      }
      .c_menu_footWrap {
        color: var(--text-color-lite);
        display: flex;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_footWrap {
          justify-content: space-between;
          margin-top: calc(var(--a-s, 1px) * 142);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_footWrap {
          align-items: center;
          flex-direction: column;
          row-gap: calc(var(--a-s, 1px) * 19);
        }
      }
      .c_menu_footList {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_footList {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_footList {
          column-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      .c_footer .c_menu_footList.__destination,
      .c_footer .c_menu_footList.__other {
        color: var(--text-color-main);
      }
      .c_menu_footListItem.__copyright {
        color: #666;
        text-align: center;
      }
      .js_menu .c_menu_footListItem.__copyright {
        color: #333;
        opacity: 0.4;
      }
      .c_menu_footList.__destination .c_menu_footListItem:first-child a {
        opacity: 0.3 !important;
      }
      .c_menu_unitItem br {
        display: none;
      }
      .c_menu_footWrapInner {
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_footWrapInner {
          align-items: baseline;
          column-gap: calc(var(--a-s, 1px) * 29);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_footWrapInner {
          flex-direction: column;
          justify-content: center;
          row-gap: calc(var(--a-s, 1px) * 10);
        }
      }
      .c_menu_reserve {
        background-color: #343331;
        position: relative;
      }
      .c_footer .c_menu_reserve:after {
        border: 1px solid #666462;
        contain: size layout;
        content: "";
        display: block;
        height: 100%;
        left: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 2;
      }
      .c_footer .c_menu_reserve .m_rectButton_body:after {
        height: 2px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .js_modal .c_menu_reserve {
          margin-top: calc(var(--a-s, 1px) * 48);
        }
        .js_modal .c_menu_reserve .m_rectButton {
          height: calc(var(--a-s, 1px) * 112);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .js_modal .c_menu_reserve .m_rectButton {
          height: calc(var(--a-s, 1px) * 70);
          outline: none !important;
        }
        .c_menu_reserve .m_rectButton_inner {
          padding-left: calc(var(--a-s, 1px) * 26);
        }
      }
      @media (any-hover: hover) {
        .c_menu_reserve {
          transition: color 0.9s cubic-bezier(0.19, 1, 0.22, 1);
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_reserve .m_rectButton:hover {
          color: var(--rectbutton_text_color_df);
          transition: color 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_reserve .m_rectButton:hover .m_rectButton_body:after {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_reserve .m_rectButton:hover .m_rectButton_icon {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_reserve .m_rectButton_icon {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_rectButton:hover .c_menu_reserve .m_rectButton_icon {
          opacity: 0.4;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_menu_mainItem {
        height: fit-content;
        position: relative;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_mainItem {
          border-top: 1px solid var(--line-color-main-4);
        }
        .c_menu_mainItem.__continuousNoSub,
        .c_menu_mainItem.__wedding {
          padding-bottom: 0;
        }
        .c_menu_mainItem:last-child {
          border-bottom: 1px solid var(--line-color-main-4);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_mainItem.__hotel {
          align-items: center;
          border-bottom: 1px solid var(--line-color-main-2);
          display: flex;
          white-space: nowrap;
        }
        .c_menu_mainItem.__experience,
        .c_menu_mainItem.__hotel,
        .c_menu_mainItem.__wedding {
          border-top: 1px solid var(--line-color-main-2);
        }
        .c_menu_mainItem.__meeting,
        .c_menu_mainItem.__offer {
          border-bottom: 1px solid var(--line-color-main-2);
          border-top: 1px solid var(--line-color-main-2);
        }
      }
      .c_menu_mainItemLink {
        align-items: center;
        display: flex;
        justify-content: space-between;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_mainItemLink {
          height: calc(var(--a-s, 1px) * 80);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_mainItemLink {
          height: calc(var(--a-s, 1px) * 69);
        }
        .c_menu_mainItem.__hotel .c_menu_mainItemLink {
          column-gap: calc(var(--a-s, 1px) * 7);
          justify-content: flex-start;
        }
      }
      .c_menu_mainItemTitle {
        align-items: center;
        display: flex;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_mainItemTitle {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_mainItemTitle {
          align-items: end;
          column-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      .c_menu_mainItemTitle > span {
        display: block;
      }
      @media (any-hover: hover) {
        .c_menu_mainItemTitle {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_mainItemLink:hover .c_menu_mainItemTitle {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .js_menuBody_item.is_active .c_menu_mainItemTitle {
        opacity: 0.4;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        html:not([lang="en"])
          .c_menu_mainItem.__hotel
          .c_menu_mainItemTitle:before {
          background-color: currentColor;
          content: "";
          display: block;
          height: calc(var(--a-s, 1px) * 14);
          opacity: 0.2;
          position: absolute;
          right: calc(var(--a-s, 1px) * -15);
          top: calc(50% - var(--a-s, 1px) * 14 * 0.5);
          width: 1px;
        }
      }
      .c_menu_mainItemCat {
        opacity: 0.6;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        html[lang="zh"] .c_menu_mainItem.__experience .c_menu_mainItemCat {
          letter-spacing: 0.01em;
        }
        .c_menu_mainItemAccordionToggle {
          display: none;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_mainItemAccordionToggle {
          align-items: center;
          display: flex;
          height: calc(var(--a-s, 1px) * 70);
          justify-content: flex-end;
          padding: 0 calc(var(--a-s, 1px) * 10);
          position: absolute;
          right: calc(var(--a-s, 1px) * -10);
          top: 0;
        }
      }
      .c_menu_mainItemAccordionToggleIcon {
        height: calc(var(--a-s, 1px) * 12);
        position: relative;
        width: calc(var(--a-s, 1px) * 12);
      }
      .c_menu_mainItemAccordionToggleIcon:after,
      .c_menu_mainItemAccordionToggleIcon:before {
        background-color: #94928b;
        content: "";
        display: block;
        height: 100%;
        left: 50%;
        margin-left: -0.5px;
        position: absolute;
        top: 0;
        width: 1px;
      }
      .c_menu_mainItemAccordionToggleIcon:before {
        margin-left: -1px;
        transform: rotate(90deg);
        width: 2px;
      }
      .c_menu_mainItemAccordionToggleIcon:after {
        transition: scale 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
      }
      .js_simpleAccordion.is_openedStart
        .c_menu_mainItemAccordionToggleIcon:after {
        scale: 1 0;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_mainItemAccordionWrap {
          height: var(--accordion-height, 0);
          overflow: hidden;
          position: relative;
          transition: height 0.3s cubic-bezier(0.77, 0, 0.175, 1);
        }
        .js_simpleAccordion.is_openedStart .c_menu_mainItemAccordionWrap {
          transition: height 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
        }
        .c_menu_mainItemAccordionContent {
          opacity: 0;
          padding-left: calc(var(--a-s, 1px) * 21);
          transition: opacity 0.1s ease-out;
        }
        .js_simpleAccordion.is_openedStart .c_menu_mainItemAccordionContent {
          transition: opacity 0.3s ease-in-out;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_unit {
          margin-left: calc(var(--a-s, 1px) * 30);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_mainItem.__hotel .c_menu_unit {
          column-gap: calc(var(--a-s, 1px) * 7);
          display: flex;
        }
      }
      .c_menu_unitList {
        align-items: center;
        border-top: 1px solid var(--line-color-main-7);
        display: grid;
        grid-template-columns: auto max-content;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_unitList {
          height: calc(var(--a-s, 1px) * 47);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_unitList {
          height: calc(var(--a-s, 1px) * 42);
        }
        .c_menu.__modal .c_menu_unitList {
          border-top: 1px solid var(--line-color-unit);
        }
        .c_menu_mainItem.__hotel .c_menu_unitList {
          border: none !important;
        }
        .c_menu_mainItem.__hotel .c_menu_unitList:not(:last-child):after {
          background-image: linear-gradient(
            to bottom,
            var(--line-color-main-6),
            var(--line-color-main-6) 1px,
            transparent 1px,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-y;
          background-size: 1px 3px;
          content: "";
          display: block;
          height: 7px;
          margin-left: calc(var(--a-s, 1px) * 7);
          position: relative;
          width: 1px;
        }
      }
      .c_menu_unitListLink {
        align-items: center;
        display: flex;
        flex: 1;
        height: 100%;
        justify-content: space-between;
        position: relative;
        width: 100%;
      }
      .c_menu_unitListLink.__more {
        width: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_unitListLink.__more {
          column-gap: calc(var(--a-s, 1px) * 7);
          margin-left: calc(var(--a-s, 1px) * 16);
          padding-left: calc(var(--a-s, 1px) * 16);
        }
        html[lang="en"] .c_menu_unitListLink.__more {
          min-width: calc(var(--a-s, 1px) * 84);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_unitListLink.__more {
          margin-left: calc(var(--a-s, 1px) * 21);
          padding-left: calc(var(--a-s, 1px) * 21);
        }
      }
      .c_menu_unitListLink.__more:before {
        background-image: linear-gradient(
          to bottom,
          var(--line-color-main),
          var(--line-color-main) 1px,
          transparent 1px,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        content: "";
        display: block;
        height: 7px;
        left: 0;
        opacity: 0.4;
        position: absolute;
        top: calc(50% - var(--a-s, 1px) * 4);
        width: 1px;
      }
      .c_menu_unitListLink.__nomore {
        margin-right: 0;
      }
      .c_menu_unitItem {
        align-items: center;
        color: var(--text-color-main);
        display: flex;
        justify-content: space-between;
        width: 100%;
      }
      .c_menu_unitListLink.__more .c_menu_unitItem {
        width: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_unitListLink.__more .c_menu_unitItem {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_unitListLink.__more .c_menu_unitItem {
          margin-right: calc(var(--a-s, 1px) * 7 / 2);
        }
      }
      @media (any-hover: hover) {
        .c_menu_unitItem {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_unitListLink:hover .c_menu_unitItem {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .js_menuBody_item.is_active .c_menu_unitItem {
        opacity: 0.3;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_unitItemText {
          color: #333;
        }
        .c_footer .c_menu_unitItemText {
          color: #fff;
        }
        .c_menu_unitItemText > span {
          opacity: 0.6;
        }
        .c_menu_unitItemText > strong {
          margin-left: calc(var(--a-s, 1px) * 10);
        }
        .c_menu.__modal .c_menu_unitItemText > strong {
        }
        .c_menu_unitItemCap {
          padding-right: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_unitItemCap {
          padding-right: calc(var(--a-s, 1px) * 9 / 2);
        }
      }
      .c_footer .c_menu_unitItemCap {
        opacity: 0.6;
      }
      .c_menu_iconWrap {
        align-items: center;
        display: flex;
        height: 100%;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_bodyHeadLink .c_menu_iconWrap {
          align-items: baseline;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_iconWrap {
          justify-content: center;
        }
      }
      @media (any-hover: hover) {
        .c_menu_iconWrap {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_menu_bodyOtherLink:hover .c_menu_iconWrap,
        .c_menu_mainItemLink:hover .c_menu_iconWrap,
        .c_menu_unitListLink:hover .c_menu_iconWrap {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .js_menuBody_item.is_active .c_menu_iconWrap {
        opacity: 0.4;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        html:not([lang="en"]) .c_menu_mainItem.__hotel .c_menu_iconWrap {
          display: none;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_iconWrap.__13:after {
          background-color: var(--line-color-main-4);
          content: "";
          display: block;
          height: 1px;
          position: absolute;
          right: 0;
          top: -1px;
          width: calc(var(--a-s, 1px) * 13);
        }
        .c_menu_bodyOtherLink .c_menu_iconWrap.__13:after {
          bottom: 0;
          top: inherit;
        }
      }
      .c_menu_icon {
        color: var(--icon-color-head);
        display: block;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_iconWrap.__17 .c_menu_icon {
          height: calc(var(--a-s, 1px) * 17);
          width: calc(var(--a-s, 1px) * 17);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_iconWrap.__17 .c_menu_icon {
          height: calc(var(--a-s, 1px) * 14);
          width: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_iconWrap.__13 .c_menu_icon {
          height: calc(var(--a-s, 1px) * 13);
          width: calc(var(--a-s, 1px) * 13);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_menu_iconWrap.__13 .c_menu_icon {
          height: calc(var(--a-s, 1px) * 12);
          width: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_menu_unitListLink.__more .c_menu_icon,
        .c_menu_unitListLink.__nomore .c_menu_icon {
          fill: var(--icon-color-head);
        }
        .c_localFootBtn {
          margin-bottom: calc(var(--a-s, 1px) * 112);
          padding-top: calc(var(--a-s, 1px) * 112);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localFootBtn {
          margin-bottom: calc(var(--a-s, 1px) * 42);
          margin-top: calc(var(--a-s, 1px) * 98);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localFootBtn:before {
          background-image: linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.2),
            rgba(0, 0, 0, 0.2) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-x;
          background-size: 3px 1px;
          content: "";
          display: block;
          height: 1px;
          margin-bottom: calc(var(--a-s, 1px) * 80);
        }
      }
      .c_localHeadNav {
        position: relative;
        --localnav_clearance_b: 0;
      }
      .c_localHeadNav.__black {
        --localnav_dot_color: #333;
        --localnav_sp_line_color: rgba(0, 0, 0, 0.07);
        --localnav_sp_nav_line_color: #333;
        --localnav_bc_arw_opacity: 0.2;
      }
      .c_localHeadNav.__white {
        --localnav_dot_color: hsla(0, 0%, 100%, 0.4);
        --localnav_sp_line_color: hsla(0, 0%, 100%, 0.2);
        --localnav_sp_nav_line_color: #fff;
        --localnav_bc_arw_opacity: 0.4;
        color: #fff;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localHeadNav {
          padding-top: calc(var(--a-s, 1px) * 107);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localHeadNav {
          padding-top: calc(var(--a-s, 1px) * 86);
          --localnav_clearance_b: calc(var(--a-s, 1px) * 15);
        }
        .c_localHeadNav:after {
          background: var(--localnav_sp_line_color);
          content: "";
          display: block;
          height: 1px;
          inset: auto 0 0;
          position: absolute;
          z-index: 0;
        }
      }
      .c_localHeadNav_wrap {
        align-items: stretch;
        display: flex;
        position: relative;
        z-index: 1;
      }
      .c_localHeadNav_ttl {
        align-items: flex-end;
        column-gap: calc(var(--a-s, 1px) * 16);
        display: flex;
        padding-bottom: var(--localnav_clearance_b);
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localHeadNav_ttl {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localHeadNav_ttl {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      @media (any-hover: hover) {
        .c_localHeadNav_ttl a {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .c_localHeadNav_ttl a:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .c_localHeadNav_breadcrumbs {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localHeadNav_breadcrumbs {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localHeadNav_breadcrumbs {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      .c_localHeadNav_breadcrumbsItem {
        align-items: center;
        display: flex;
      }
      .c_localHeadNav_breadcrumbsArw {
        width: calc(var(--a-s, 1px) * 6.5);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localHeadNav_breadcrumbsArw {
          margin-right: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localHeadNav_breadcrumbsArw {
          margin-right: calc(var(--a-s, 1px) * 7);
        }
      }
      .c_localHeadNav_breadcrumbsArw svg {
        fill: currentColor;
        opacity: var(--localnav_bc_arw_opacity);
      }
      .c_localHeadNav_breadcrumbsTxt > a > span {
        opacity: 0.6;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localHeadNav_breadcrumbsTxt > a > span {
          display: none;
        }
      }
      .c_localHeadNav_link {
        align-items: center;
        column-gap: calc(var(--a-s, 1px) * 14);
        display: flex;
        margin-left: auto;
        padding-bottom: var(--localnav_clearance_b);
        position: relative;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localHeadNav_link.__ss {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
        .c_localHeadNav_link:after {
          background: var(--localnav_sp_nav_line_color);
          content: "";
          display: block;
          height: 1px;
          inset: auto 0 0;
          position: absolute;
          z-index: 0;
        }
      }
      .c_localHeadNav_linkItem {
        align-items: center;
        display: flex;
      }
      .c_localHeadNav_linkItem.__btn {
        margin-bottom: calc(var(--a-s, 1px) * -15);
        margin-top: calc(var(--a-s, 1px) * -15);
      }
      .c_localHeadNav_linkItem:before {
        background-image: linear-gradient(
          to bottom,
          var(--localnav_dot_color),
          var(--localnav_dot_color) 1px,
          transparent 1px,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        content: "";
        display: block;
        flex-shrink: 0;
        height: calc(var(--a-s, 1px) * 7);
        margin-right: calc(var(--a-s, 1px) * 14);
        width: 1px;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localHeadNav_link.__ss .c_localHeadNav_linkItem:before {
          margin-right: calc(var(--a-s, 1px) * 7);
        }
        .c_localHeadNav_linkItem.h_pc:first-child
          + .c_localHeadNav_linkItem:before {
          display: none;
        }
      }
      .c_localHeadNav_linkItem:first-child:before {
        display: none;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localHeadNav_linkItem {
          bottom: -2px;
          position: relative;
        }
        html[data-template="all-hotels"] .c_localHeadNav_linkItem.__active,
        html[data-template="all-hotels"]
          .c_localHeadNav_linkItem.__active
          + .c_localHeadNav_linkItem:before,
        html[data-template="rockbar-detail"] .c_localHeadNav_linkItem.__active,
        html[data-template="rockbar-detail"]
          .c_localHeadNav_linkItem.__active
          + .c_localHeadNav_linkItem:before,
        html[data-template="rockbar-index"] .c_localHeadNav_linkItem.__active,
        html[data-template="rockbar-index"]
          .c_localHeadNav_linkItem.__active
          + .c_localHeadNav_linkItem:before {
          display: none;
        }
      }
      .c_localFootNav_hotelWrap {
        background-color: #f6f3e7;
      }
      html[data-template="room-detail"] .c_localFootNav_hotelWrap {
        background-color: transparent;
      }
      .c_localFootNav {
        position: relative;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localFootNav {
          --localnav_clearance_t: calc(var(--a-s, 1px) * 14);
          --localnav_clearance_b: calc(var(--a-s, 1px) * 14);
          display: flex;
          width: 100%;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localFootNav.__pbt {
          --localnav_clearance_t: calc(var(--a-s, 1px) * 32);
          --localnav_clearance_b: 0;
        }
        .c_localFootNav.__pbb {
          --localnav_clearance_t: 0;
          --localnav_clearance_b: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localFootNav.__pbb {
          border-bottom: 1px solid rgba(0, 0, 0, 0.2);
          padding-bottom: calc(var(--a-s, 1px) * 28);
        }
        .c_localFootNav:not(.__children):not(.__pbb) {
          margin-bottom: calc(var(--a-s, 1px) * -14);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localFootNav.__pbb:before {
          inset: auto 0 0;
        }
        .c_localFootNav.__pbb:before,
        .c_localFootNav.__pbt .c_localFootNav_wrap:before {
          background: rgba(0, 0, 0, 0.07);
          content: "";
          display: block;
          height: 1px;
          position: absolute;
          z-index: 0;
        }
        .c_localFootNav.__pbt .c_localFootNav_wrap:before {
          inset: 0 0 auto;
        }
        html[data-template="rockbar-detail"]
          .c_localFootNav.__pbt
          .c_localFootNav_wrap:before,
        html[data-template="rockbar-index"]
          .c_localFootNav.__pbt
          .c_localFootNav_wrap:before {
          background: hsla(0, 0%, 100%, 0.2);
        }
        .c_localFootNav.__pbt.__children .c_localFootNav_wrap:before {
          background-image: linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.2),
            rgba(0, 0, 0, 0.2) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-x;
          background-size: 3px 1px;
        }
        html[data-template="rockbar-detail"]
          .c_localFootNav.__pbt.__children
          .c_localFootNav_wrap:before,
        html[data-template="rockbar-index"]
          .c_localFootNav.__pbt.__children
          .c_localFootNav_wrap:before {
          background-image: linear-gradient(
            90deg,
            hsla(0, 0%, 100%, 0.2),
            hsla(0, 0%, 100%, 0.2) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-x;
          background-size: 3px 1px;
        }
      }
      .c_localFootNav_wrap {
        align-items: stretch;
        display: flex;
        flex-shrink: 0;
        min-width: 100%;
        position: relative;
        z-index: 1;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localFootNav_wrap:before {
          background: rgba(0, 0, 0, 0.07);
          content: "";
          display: block;
          height: 1px;
          inset: 0 0 auto;
          position: absolute;
        }
        html[data-template="rockbar-detail"] .c_localFootNav_wrap:before,
        html[data-template="rockbar-index"] .c_localFootNav_wrap:before {
          background: hsla(0, 0%, 100%, 0.2);
        }
        .c_localFootNav_ttl {
          min-width: calc(var(--a-s, 1px) * 100);
        }
      }
      .c_localFootNav_ttlInner {
        padding-bottom: var(--localnav_clearance_b);
        padding-top: var(--localnav_clearance_t);
        position: relative;
        width: fit-content;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localFootNav_ttlInner:before {
          background: #666;
          content: "";
          display: block;
          height: 1px;
          inset: 0 0 auto;
          position: absolute;
          z-index: 0;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localFootNav_ttlHotel {
          padding-right: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localFootNav_ttlHotel {
          padding-right: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localFootNav.__pbt .c_localFootNav_ttlInner:before {
          background: #666;
          content: "";
          display: block;
          height: 1px;
          inset: 0 0 auto;
          position: absolute;
          z-index: 0;
        }
        html[data-template="rockbar-detail"]
          .c_localFootNav.__pbt
          .c_localFootNav_ttlInner:before,
        html[data-template="rockbar-index"]
          .c_localFootNav.__pbt
          .c_localFootNav_ttlInner:before {
          background: #999;
        }
        .c_localFootNav.__pbt.__children .c_localFootNav_ttlInner:before {
          height: 2px;
        }
        .c_localFootNav.__pbb .c_localFootNav_ttlInner:before {
          background: #666;
          content: "";
          display: block;
          height: 1px;
          inset: auto 0 0;
          position: absolute;
          z-index: 0;
        }
      }
      .c_localFootNav_link {
        align-items: center;
        display: flex;
        margin-left: auto;
        padding-bottom: var(--localnav_clearance_b);
        padding-top: var(--localnav_clearance_t);
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localFootNav_link {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localFootNav_link {
          column-gap: calc(var(--a-s, 1px) * 14);
          flex-grow: 1;
          overflow-x: scroll;
          scrollbar-color: transparent transparent;
          scrollbar-width: thin;
          width: calc(var(--a-s, 1px) * 235);
        }
        .c_localFootNav_link::-webkit-scrollbar {
          display: none;
        }
      }
      .c_localFootNav_linkItem {
        align-items: center;
        display: flex;
      }
      .c_localFootNav_linkItem wbr {
        display: none;
      }
      .c_localFootNav_linkItem:not(:last-child):after {
        background-image: linear-gradient(
          180deg,
          #333,
          #333 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        content: "";
        display: block;
        flex-shrink: 0;
        height: calc(var(--a-s, 1px) * 7);
        width: 1px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .c_localFootNav_linkItem:not(:last-child):after {
          margin-left: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .c_localFootNav_linkItem:not(:last-child):after {
          margin-left: calc(var(--a-s, 1px) * 14);
        }
      }
      html[data-template="rockbar-detail"]
        .c_localFootNav_linkItem:not(:last-child):after,
      html[data-template="rockbar-index"]
        .c_localFootNav_linkItem:not(:last-child):after {
        background-image: linear-gradient(
          180deg,
          #999,
          #999 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
      }
      .c_verticalDots {
        align-items: start;
        bottom: calc(var(--a-s, 1px) * 14);
        display: grid;
        grid-template-rows: auto auto 1fr;
        left: 50%;
        margin-left: -1px;
        position: absolute;
        row-gap: calc(var(--a-s, 1px) * 8);
      }
      .c_verticalDots,
      .c_verticalDots > div {
        height: calc(var(--a-s, 1px) * 2);
        width: calc(var(--a-s, 1px) * 2);
      }
      .c_verticalDots > div {
        background: #fff;
        border-radius: 50%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_2cSec,
        .m_2cSec_media {
          align-items: start;
          column-gap: calc(var(--a-s, 1px) * 60);
          display: grid;
          grid-template-columns: calc(var(--a-s, 1px) * 150) 1fr;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_2cSec_media:not(:has(.m_2cSec_side)) {
          grid-template-columns: 1fr;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_2cSec_side {
          display: grid;
          grid-template-rows: 1fr auto;
          height: 100%;
          left: 0;
          max-height: calc(100dvh - var(--a-s, 1px) * 32);
          position: sticky;
          row-gap: calc(var(--a-s, 1px) * 80);
          top: 0;
          z-index: 2;
        }
        .m_2cSec_headInner {
          left: 0;
          position: sticky;
          top: calc(var(--a-s, 1px) * 74);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_2cSec_head {
          margin-bottom: calc(var(--a-s, 1px) * 70);
        }
        .m_2cSec_headInner {
          border-top: 1px solid rgba(0, 0, 0, 0.4);
          column-gap: calc(var(--a-s, 1px) * 14);
          display: flex;
          margin-top: calc(var(--a-s, 1px) * 70);
          padding-top: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_2cSec_body {
        position: relative;
        z-index: 1;
      }
      .m_2cSec_ancLink {
        color: #666;
      }
      @media (any-hover: hover) {
        .m_2cSec_ancLink a {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_2cSec_ancLink a.is_hover,
        .m_2cSec_ancLink a:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      html[data-template="rockbar-detail"] .m_2cSec_ancLink,
      html[data-template="rockbar-index"] .m_2cSec_ancLink {
        color: #fff;
      }
      .m_2cSec_footLink {
        background-image: linear-gradient(
          90deg,
          rgba(0, 0, 0, 0.2),
          rgba(0, 0, 0, 0.2) 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-x;
        background-size: 3px 1px;
        margin-top: calc(var(--a-s, 1px) * 30);
        padding-top: calc(var(--a-s, 1px) * 16);
        width: calc(var(--a-s, 1px) * 150);
      }
      html[data-template="rockbar-detail"] .m_2cSec_footLink,
      html[data-template="rockbar-index"] .m_2cSec_footLink {
        background-image: linear-gradient(
          90deg,
          hsla(0, 0%, 100%, 0.2),
          hsla(0, 0%, 100%, 0.2) 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-x;
        background-size: 3px 1px;
      }
      .m_anchorLink {
        align-items: flex-start;
        column-gap: var(--anchorlink_item_gap);
        display: flex;
        width: fit-content;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_anchorLink.__m {
          --anchorlink_item_gap: calc(var(--a-s, 1px) * 16);
          --anchorlink_icon_gap: calc(var(--a-s, 1px) * 6);
          --anchorlink_icon_size: calc(var(--a-s, 1px) * 13);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_anchorLink.__m {
          --anchorlink_item_gap: calc(var(--a-s, 1px) * 10);
          --anchorlink_icon_gap: calc(var(--a-s, 1px) * 4);
          --anchorlink_icon_size: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_anchorLink.__l {
          --anchorlink_item_gap: calc(var(--a-s, 1px) * 16);
          --anchorlink_icon_gap: calc(var(--a-s, 1px) * 8);
          --anchorlink_icon_size: calc(var(--a-s, 1px) * 15);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_anchorLink.__l {
          --anchorlink_item_gap: calc(var(--a-s, 1px) * 10);
          --anchorlink_icon_gap: calc(var(--a-s, 1px) * 4);
          --anchorlink_icon_size: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_anchorLink.__wrap {
          flex-wrap: wrap;
          justify-content: end;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_anchorLink {
          flex-wrap: wrap;
          row-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_anchorLink_item {
        align-items: center;
        display: flex;
      }
      .m_anchorLink_item.__active {
        opacity: 0.5;
      }
      .m_anchorLink_item:not(:last-child):after {
        background-image: linear-gradient(
          180deg,
          #999,
          #999 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        content: "";
        display: block;
        flex-shrink: 0;
        height: calc(var(--a-s, 1px) * 7);
        margin-left: var(--anchorlink_item_gap);
        width: 1px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_anchorLink_item:not(:last-child):has(
            + .m_anchorLink_itemBreak
          ):after {
          display: none;
        }
      }
      .m_anchorLink_itemLink {
        align-items: center;
        column-gap: var(--anchorlink_icon_gap);
        display: flex;
        position: relative;
      }
      .m_anchorLink_itemLink:after {
        bottom: calc(var(--anchorlink_item_gap) * -1);
        content: "";
        display: block;
        height: auto;
        left: calc(var(--anchorlink_item_gap) * -1);
        position: absolute;
        right: calc(var(--anchorlink_item_gap) * -1);
        top: calc(var(--anchorlink_item_gap) * -1);
        width: auto;
      }
      @media (any-hover: hover) {
        .m_anchorLink_itemLink {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_anchorLink_itemLink:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_anchorLink_itemIcon {
        align-items: center;
        aspect-ratio: 1/1;
        display: flex;
        justify-content: center;
        position: relative;
        width: var(--anchorlink_icon_size);
      }
      .m_anchorLink_itemArw,
      .m_anchorLink_itemArw svg {
        display: block;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_anchorLink_itemBreak {
          flex-basis: 100%;
          height: calc(var(--a-s, 1px) * 16);
        }
      }
      .m_arwLink {
        align-items: center;
        display: flex;
        position: relative;
        white-space: nowrap;
      }
      .m_arwLink:after {
        bottom: calc(var(--a-s, 1px) * --arwlink_hitarea);
        content: "";
        display: block;
        height: auto;
        left: calc(var(--a-s, 1px) * --arwlink_hitarea);
        position: absolute;
        right: calc(var(--a-s, 1px) * --arwlink_hitarea);
        top: calc(var(--a-s, 1px) * --arwlink_hitarea);
        width: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_arwLink {
          column-gap: calc(var(--a-s, 1px) * 8);
        }
        .m_arwLink:after {
          bottom: calc(var(--a-s, 1px) * -16);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -16);
          position: absolute;
          right: calc(var(--a-s, 1px) * -16);
          top: calc(var(--a-s, 1px) * -16);
          width: auto;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_arwLink {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
        .m_arwLink:after {
          bottom: calc(var(--a-s, 1px) * -14);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -14);
          position: absolute;
          right: calc(var(--a-s, 1px) * -14);
          top: calc(var(--a-s, 1px) * -14);
          width: auto;
        }
      }
      @media (any-hover: hover) {
        .m_arwLink {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_arwLink.is_hover,
        .m_arwLink:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_arwLink.__ps {
          --arwlink_icon_size: calc(var(--a-s, 1px) * 12);
        }
        .m_arwLink.__pm {
          --arwlink_icon_size: calc(var(--a-s, 1px) * 13);
        }
        .m_arwLink.__pl {
          --arwlink_icon_size: calc(var(--a-s, 1px) * 15);
        }
        .m_arwLink.__pxl {
          --arwlink_icon_size: calc(var(--a-s, 1px) * 17);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_arwLink.__sm {
          --arwlink_icon_size: calc(var(--a-s, 1px) * 10);
        }
        .m_arwLink.__sl {
          --arwlink_icon_size: calc(var(--a-s, 1px) * 12);
        }
        .m_arwLink.__sxl {
          --arwlink_icon_size: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_arwLink.__active {
        opacity: 0.3;
      }
      html[data-template="all-hotels"] .c_localHeadNav .m_arwLink.__active,
      html[data-template="category1"] .c_localHeadNav .m_arwLink.__active,
      html[data-template="category2"] .c_localHeadNav .m_arwLink.__active,
      html[data-template="home"] .c_localHeadNav .m_arwLink.__active,
      html[data-template="hotel"] .c_localHeadNav .m_arwLink.__active,
      html[data-template="rockbar-index"] .c_localHeadNav .m_arwLink.__active,
      html[data-template="room-index"] .c_localHeadNav .m_arwLink.__active,
      html[data-template="spa-index"] .c_localHeadNav .m_arwLink.__active {
        opacity: 0.5;
      }
      @media (any-hover: hover) {
        .m_card_inner:hover + .m_card_foot .m_arwLink.__cardlink,
        .m_card_inner:hover + .m_card_footer_div .m_arwLink.__cardlink {
          opacity: 0.3;
        }
      }
      .m_arwLink_icon {
        aspect-ratio: 1/1;
        position: relative;
        width: var(--arwlink_icon_size);
      }
      .m_2cSec_footLink .m_arwLink_icon {
        align-self: flex-end;
      }
      .m_arwLink_arw {
        display: block;
        width: 100%;
      }
      .m_arwLink_arw svg {
        width: 100%;
      }
      .m_arwLink_text br {
        display: none;
      }
      .m_2cSec_footLink .m_arwLink_text br {
        display: block;
      }
      .m_arwLink_text {
        display: grid;
      }
      .t_custom_card_new {
        font-size: calc(var(--a-s, 1px) * 15);
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .t_custom_card_new {
          font-size: calc(var(--a-s, 1px) * 12);
        }
      }
      .m_card {
        align-items: start;
        column-gap: var(--card_col_gap);
        display: grid;
        grid-row: var(--card_row);
        grid-template-columns: var(--card_tpl_col);
        grid-template-rows: var(--card_tpl_row);
        --card_foot_col: 1;
        --card_foot_row: 5/6;
        --card_foot_line_color_df: rgba(0, 0, 0, 0.07);
        --card_foot_line_color_ov: rgba(0, 0, 0, 0.4);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card {
          --card_outline_gap: calc(var(--a-s, 1px) * 14)
            calc(var(--a-s, 1px) * 16);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 16);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card {
          --card_outline_gap: calc(var(--a-s, 1px) * 9)
            calc(var(--a-s, 1px) * 14);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 7);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 14);
        }
      }
      html[data-template="rockbar-detail"] .m_card,
      html[data-template="rockbar-index"] .m_card {
        --card_foot_line_color_df: hsla(0, 0%, 100%, 0.2);
        --card_foot_line_color_ov: hsla(0, 0%, 100%, 0.4);
      }
      .m_card.__pvm,
      .m_card.__pvs,
      .m_card.__pvst,
      .m_card.__pvxs,
      .m_card.__svm,
      .m_card.__svs,
      .m_card.__svxs {
        --card_tpl_col: 1fr;
        --card_tpl_row: subgrid;
        --card_row: span 5;
        --card_col_gap: 0;
        --card_head_col: 1;
        --card_head_row: 2/3;
        --card_img_col: 1;
        --card_img_row: 3/4;
        --card_body_col: 1;
        --card_body_row: 4/5;
        --card_foot_col: 1;
        --card_foot_row: 5/6;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card.__pvxs {
          --card_img_mt: calc(var(--a-s, 1px) * 24);
          --card_body_mt: calc(var(--a-s, 1px) * 32);
          --card_body_gap: calc(var(--a-s, 1px) * 32);
          --card_foot_mt: calc(var(--a-s, 1px) * 32);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 16);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 16);
          --card_outline_gap: calc(var(--a-s, 1px) * 8)
            calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card.__svxs {
          --card_slider_h: calc(var(--a-s, 1px) * 98);
          --card_img_mt: calc(var(--a-s, 1px) * 21);
          --card_body_mt: calc(var(--a-s, 1px) * 21);
          --card_body_gap: calc(var(--a-s, 1px) * 21);
          --card_foot_mt: calc(var(--a-s, 1px) * 21);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 7);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card.__pvs {
          --card_slider_h: calc(var(--a-s, 1px) * 160);
          --card_img_mt: calc(var(--a-s, 1px) * 24);
          --card_body_mt: calc(var(--a-s, 1px) * 32);
          --card_body_gap: calc(var(--a-s, 1px) * 32);
          --card_foot_mt: calc(var(--a-s, 1px) * 32);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 16);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card.__svs {
          --card_slider_h: calc(var(--a-s, 1px) * 98);
          --card_img_mt: calc(var(--a-s, 1px) * 21);
          --card_body_mt: calc(var(--a-s, 1px) * 21);
          --card_body_gap: calc(var(--a-s, 1px) * 21);
          --card_foot_mt: calc(var(--a-s, 1px) * 21);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 7);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card.__pvst {
          --card_slider_h: calc(var(--a-s, 1px) * 160);
          --card_img_mt: calc(var(--a-s, 1px) * 32);
          --card_body_mt: calc(var(--a-s, 1px) * 32);
          --card_body_gap: calc(var(--a-s, 1px) * 32);
          --card_foot_mt: calc(var(--a-s, 1px) * 16);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 16);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 16);
        }
        .m_card.__pvm {
          --card_slider_h: calc(var(--a-s, 1px) * 240);
          --card_img_mt: calc(var(--a-s, 1px) * 24);
          --card_body_mt: calc(var(--a-s, 1px) * 32);
          --card_body_gap: calc(var(--a-s, 1px) * 32);
          --card_foot_mt: calc(var(--a-s, 1px) * 32);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 16);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card.__svm {
          --card_slider_h: calc(var(--a-s, 1px) * 98);
          --card_img_mt: calc(var(--a-s, 1px) * 21);
          --card_body_mt: calc(var(--a-s, 1px) * 21);
          --card_body_gap: calc(var(--a-s, 1px) * 21);
          --card_foot_mt: calc(var(--a-s, 1px) * 21);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 7);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_card.__pvl {
        --card_tpl_col: 1fr;
        --card_tpl_row: repeat(5, auto);
        --card_row: span 5;
        --card_col_gap: 0;
        --card_head_col: 1;
        --card_head_row: 2/3;
        --card_img_col: 1;
        --card_img_row: 3/4;
        --card_body_col: 1;
        --card_body_row: 4/5;
        --card_foot_col: 1;
        --card_foot_row: 5/6;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card.__pvl {
          --card_slider_h: calc(var(--a-s, 1px) * 560);
          --card_img_mt: calc(var(--a-s, 1px) * 32);
          --card_body_mt: calc(var(--a-s, 1px) * 32);
          --card_body_gap: calc(var(--a-s, 1px) * 32);
          --card_foot_mt: calc(var(--a-s, 1px) * 32);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 16);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card.__svl {
          --card_tpl_col: 1fr;
          --card_tpl_row: repeat(5, auto);
          --card_row: span 5;
          --card_col_gap: 0;
          --card_head_col: 1;
          --card_head_row: 2/3;
          --card_img_col: 1;
          --card_img_row: 3/4;
          --card_body_col: 1;
          --card_body_row: 4/5;
          --card_foot_col: 1;
          --card_foot_row: 5/6;
          --card_slider_h: calc(var(--a-s, 1px) * 210);
          --card_img_mt: calc(var(--a-s, 1px) * 28);
          --card_body_mt: calc(var(--a-s, 1px) * 28);
          --card_body_gap: calc(var(--a-s, 1px) * 28);
          --card_foot_mt: calc(var(--a-s, 1px) * 14);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 7);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 14);
          --card_outline_gap: calc(var(--a-s, 1px) * 11)
            calc(var(--a-s, 1px) * 21);
        }
      }
      .m_card.__phlm,
      .m_card.__phls,
      .m_card.__shlm,
      .m_card.__shls {
        --card_tpl_row: subgrid;
        --card_row: span 4;
        --card_col_gap: 0;
        --card_head_col: 2/3;
        --card_head_row: 2/3;
        --card_img_col: 1/2;
        --card_img_row: 2/4;
        --card_body_col: 2/3;
        --card_body_row: 3/4;
        --card_foot_col: 1/3;
        --card_foot_row: 4/5;
        --card_img_mt: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card.__phls {
          --card_tpl_col: calc(var(--a-s, 1px) * 120) 1fr;
          --card_col_gap: calc(var(--a-s, 1px) * 30);
          --card_foot_mt: calc(var(--a-s, 1px) * 1);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 16);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card.__shls {
          --card_row: span 2;
          --card_tpl_col: calc(var(--a-s, 1px) * 63) 1fr;
          --card_col_gap: calc(var(--a-s, 1px) * 14);
          --card_foot_row: 2/3;
          --card_foot_mt: 0;
          --card_foot_col_gap: 0;
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 7);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card.__phlm {
          --card_tpl_col: calc(var(--a-s, 1px) * 240) 1fr;
          --card_col_gap: calc(var(--a-s, 1px) * 30);
          --card_foot_mt: calc(var(--a-s, 1px) * 1);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 16);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card.__shlm {
          --card_tpl_col: calc(var(--a-s, 1px) * 105) 1fr;
          --card_col_gap: calc(var(--a-s, 1px) * 14);
          --card_foot_mt: calc(var(--a-s, 1px) * 3);
          --card_foot_col_gap: calc(var(--a-s, 1px) * 7);
          --card_foot_clearance_b: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_card_upper {
        grid-column: 1/-1;
        grid-row: 1/2;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card_upper {
          margin-bottom: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_upper {
          margin-bottom: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_card_upper:before {
        background: rgba(0, 0, 0, 0.2);
        content: "";
        display: block;
        height: 1px;
        inset: 0 0 auto auto;
        position: absolute;
        width: calc(var(--a-s, 1px) * 16);
      }
      .m_card_inner {
        align-items: stretch;
        display: grid;
        grid-column: 1/-1;
        grid-row: 1/-1;
        grid-template-columns: subgrid;
        grid-template-rows: subgrid;
        width: 100%;
      }
      .m_card_head {
        grid-column: var(--card_head_col);
        grid-row: var(--card_head_row);
        position: relative;
        top: calc(var(--a-s, 1px) * 1);
        transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
      }
      @media (any-hover: hover) {
        a.m_card_inner:hover .m_card_head {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .js_page.is_prepareLayout .m_card_head {
        position: static;
      }
      .m_card_category {
        align-items: center;
        background: #8f8a81;
        border-radius: 2px;
        color: #f6f3e7;
        display: flex;
        padding: 0 calc(var(--a-s, 1px) * 6);
        width: fit-content;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card_category {
          height: calc(var(--a-s, 1px) * 21);
          margin-bottom: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_category {
          height: calc(var(--a-s, 1px) * 20);
          margin-bottom: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_card_label {
        color: #666;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card_label {
          padding-bottom: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_label {
          padding-bottom: calc(var(--a-s, 1px) * 7);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card_copy:not(:last-child) {
          padding-bottom: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_copy:not(:last-child) {
          padding-bottom: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_card_title_new {
        color: #333 !important;
      }
      .m_card_copy {
        color: #666;
        word-break: keep-all;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_copy:has(.m_card_copyItem) {
          padding-bottom: calc(var(--a-s, 1px) * 7);
          width: calc(var(--a-s, 1px) * 238);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_copyItem {
          overflow: hidden;
          text-overflow: ellipsis;
          white-space: nowrap;
        }
      }
      .m_card_img {
        grid-column: var(--card_img_col);
        grid-row: var(--card_img_row);
        margin-top: var(--card_img_mt);
        position: relative;
      }
      .m_card_img:after {
        background: #333;
        contain: size layout;
        content: "";
        height: 100%;
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      a:hover .m_card_img:after,
      button:hover .m_card_img:after {
        animation: m_card_imgHover 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
      }
      .m_card:not(.__slider) .m_card_img:before {
        aspect-ratio: 3/2;
        content: "";
        display: block;
      }
      .m_card.__slider .m_card_img {
        height: var(--card_slider_h);
      }
      @keyframes m_card_imgHover {
        0% {
          opacity: 0;
        }
        10% {
          opacity: 0.6;
        }
        to {
          opacity: 0;
        }
      }
      .m_card_body {
        align-content: space-between;
        display: grid;
        grid-column: var(--card_body_col);
        grid-row: var(--card_body_row);
        margin-top: var(--card_body_mt);
        row-gap: var(--card_body_gap);
      }
      .m_card_outline {
        display: grid;
        gap: var(--card_outline_gap);
        grid-template-columns: auto 1fr;
      }
      .m_card_outline > dt {
        color: #666;
      }
      .m_card_foot {
        align-self: end;
        grid-column: var(--card_foot_col);
        grid-row: var(--card_foot_row);
        margin-top: var(--card_foot_mt);
        pointer-events: none;
      }
      .m_card_footInner {
        align-items: end;
        column-gap: var(--card_foot_col_gap);
        display: grid;
        grid-template-columns: 1fr auto;
      }
      @media (any-hover: hover) {
        .m_card_footInner {
          transition: column-gap 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_card_inner:hover + .m_card_foot .m_card_footInner,
        .m_card_inner:hover + .m_card_footer_div .m_card_footInner {
          column-gap: 0;
          transition: column-gap 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_card_footInner:before {
        background: var(--card_foot_line_color_df);
        content: "";
        display: block;
        height: 1px;
      }
      @media (any-hover: hover) {
        .m_card_footInner:before {
          transition: background 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_card_inner:hover + .m_card_foot .m_card_footInner:before,
        .m_card_inner:hover + .m_card_footer_div .m_card_footInner:before {
          background: var(--card_foot_line_color_ov);
          transition: background 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_card_new_footInner {
        align-items: end;
        column-gap: var(--card_foot_col_gap);
        display: grid;
        grid-template-columns: 1fr auto;
      }
      @media (any-hover: hover) {
        .m_card_new_footInner {
          transition: column-gap 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_card_inner:hover + .m_card_foot .m_card_new_footInner,
        .m_card_inner:hover + .m_card_footer_div .m_card_new_footInner {
          column-gap: 0;
          transition: column-gap 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_card_new_footInner:before {
        background: var(--card_foot_line_color_df);
        content: "";
        display: block;
        height: 1px;
      }
      @media (any-hover: hover) {
        .m_card_new_footInner:before {
          transition: background 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_card_inner:hover + .m_card_foot .m_card_new_footInner:before,
        .m_card_inner:hover + .m_card_footer_div .m_card_new_footInner:before {
          background: var(--card_foot_line_color_ov);
          transition: background 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (any-hover: hover) and (orientation: portrait) and (max-width: 759px) {
        .m_card_inner:hover + .m_card_foot .m_card_new_footInner:before,
        .m_card_inner:hover + .m_card_footer_div .m_card_new_footInner:before {
          padding-right: calc(var(--a-s, 1px) * 4);
        }
      }
      @media (any-hover: hover) and (orientation: landscape),
        (any-hover: hover) and (orientation: portrait) and (min-width: 760px) {
        .m_card_inner:hover + .m_card_foot .m_card_new_footInner:before,
        .m_card_inner:hover + .m_card_footer_div .m_card_new_footInner:before {
          padding-right: calc(var(--a-s, 1px) * 8);
        }
      }
      .m_card_footer_items {
        align-items: flex-end;
        border-bottom: 1px solid rgba(0, 0, 0, 0.07);
        color: #666;
        display: flex;
        font-size: calc(var(--a-s, 1px) * 15);
        justify-content: space-between;
        padding-bottom: calc(var(--a-s, 1px) * 15);
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_footer_items {
          font-size: calc(var(--a-s, 1px) * 12);
          padding-bottom: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (any-hover: hover) {
        .m_card_footer_items {
          transition: border-color 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_card_inner:hover + * .m_card_footer_items,
        .m_card_inner:hover ~ * .m_card_footer_items {
          border-color: var(--card_foot_line_color_ov);
          transition: border-color 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_card_footer_items > div {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_card_inner:hover + * .m_card_footer_items > div,
        .m_card_inner:hover ~ * .m_card_footer_items > div {
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_card_link {
        border-bottom: 1px solid var(--card_foot_line_color_ov);
        padding-bottom: var(--card_foot_clearance_b);
      }
      .m_card_more {
        align-items: center;
        border-bottom: 1px solid var(--card_foot_line_color_df);
        display: flex;
        grid-column: 1/-1;
        pointer-events: auto;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card_more {
          column-gap: calc(var(--a-s, 1px) * 8);
          justify-content: space-between;
          padding: calc(var(--a-s, 1px) * 32) 0 calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_more {
          column-gap: calc(var(--a-s, 1px) * 7);
          justify-content: flex-end;
          padding: calc(var(--a-s, 1px) * 28) 0 calc(var(--a-s, 1px) * 14);
        }
      }
      @media (any-hover: hover) {
        .m_card_more {
          transition: border-color 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_card_more:hover {
          border-color: var(--card_foot_line_color_ov);
          transition: border-color 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      html[data-template="rockbar-detail"] .m_card_more,
      html[data-template="rockbar-index"] .m_card_more {
        border-color: hsla(0, 0%, 100%, 0.2);
      }
      .m_card_moreText {
        color: #666;
      }
      @media (any-hover: hover) {
        .m_card_moreText {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_card_more:hover .m_card_moreText {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_card_footerMeta {
        display: flex;
        flex-wrap: wrap;
        gap: calc(var(--a-s, 1px) * 4);
      }
      .m_card_footerButtons {
        flex-shrink: 0;
      }
      .m_card_moreIcon {
        align-items: center;
        aspect-ratio: 1/1;
        display: flex;
        justify-content: center;
        position: relative;
      }
      @media (any-hover: hover) {
        .m_card_moreIcon {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_card_more:hover .m_card_moreIcon {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card_moreIcon {
          width: calc(var(--a-s, 1px) * 13);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_moreIcon {
          width: calc(var(--a-s, 1px) * 12);
        }
      }
      .m_card_moreArw {
        display: block;
        width: 100%;
      }
      .m_card_moreArw.__b {
        rotate: 90deg;
      }
      html[data-template="rockbar-detail"] .m_card_moreArw,
      html[data-template="rockbar-index"] .m_card_moreArw {
        fill: #fff;
      }
      .m_card_moreArw svg {
        width: 100%;
      }
      .m_card_ttl {
        word-break: keep-all;
      }
      .m_card.__phls .m_card_ttl:first-child,
      .m_card.__shls .m_card_ttl:first-child {
        color: #666;
      }
      .m_card_ttl_new {
        display: -webkit-box;
        word-break: keep-all;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        padding-top: 2px;
        text-overflow: ellipsis;
      }
      .m_card.__phls .m_card_ttl_new:first-child,
      .m_card.__shls .m_card_ttl_new:first-child {
        color: #666;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card_ttl_new {
          padding: 4px 0;
        }
      }
      .m_card_tags {
        color: #999;
        font-size: calc(var(--a-s, 1px) * 12);
        font-weight: 400;
      }
      .m_card_footer_div {
        align-self: end;
        display: flex;
        grid-column: var(--card_foot_col);
        grid-row: var(--card_foot_row);
        margin-top: var(--card_foot_mt);
        pointer-events: none;
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_footer_div {
          margin-top: calc(var(--a-s, 1px) * 16);
        }
      }
      .m_card_copy_cap {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
      }
      .m_card_title_margin,
      .m_card_title_margin_tags {
        margin-bottom: 18px;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_title_margin_tags {
          margin-bottom: 12px;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card_inner.__alternative .m_card_body__beforeImage {
          margin-top: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_inner.__alternative .m_card_body__beforeImage {
          margin-top: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_card_footerRow {
        align-items: flex-end;
        display: flex;
        gap: calc(var(--a-s, 1px) * 16);
        justify-content: space-between;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_card_footerRow {
          margin-top: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_card_footerRow {
          gap: calc(var(--a-s, 1px) * 14);
          margin-top: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_card_footerRow_copy {
        color: #666;
        padding-bottom: var(--card_foot_clearance_b);
        word-break: keep-all;
      }
      .m_card_footerRow_link {
        border-bottom: 1px solid var(--card_foot_line_color_ov);
        flex-shrink: 0;
        padding-bottom: var(--card_foot_clearance_b);
      }
      .m_cardLink {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_cardLink {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_cardLink {
          column-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_cardLink_item {
        align-items: center;
        display: flex;
        pointer-events: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_cardLink_item {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_cardLink_item {
          column-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_cardLink_item:has(.__cardlink) {
        pointer-events: none;
      }
      .m_cardLink_item:not(:last-child):after {
        background: rgba(0, 0, 0, 0.2);
        content: "";
        display: block;
        height: calc(var(--a-s, 1px) * 4);
        width: 1px;
      }
      .m_catHead {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catHead {
          --wrap_clearance_r: calc(var(--a-s, 1px) * 240);
          --wrap_clearance_l: calc(var(--a-s, 1px) * 240);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catHead {
          --wrap_clearance_r: calc(var(--a-s, 1px) * 34);
          --wrap_clearance_l: calc(var(--a-s, 1px) * 34);
        }
      }
      .m_catHead_ttl {
        align-items: flex-end;
        display: flex;
        flex-direction: column;
        position: relative;
        text-align: right;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catHead_ttl {
          row-gap: calc(var(--a-s, 1px) * 48);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catHead_ttl {
          row-gap: calc(var(--a-s, 1px) * 28);
        }
        html:not([lang="en"]) .m_catHead_ttl {
          text-align: right;
        }
      }
      .m_catHead_dots {
        left: 0;
        position: absolute;
        top: 0;
      }
      .m_catHead_sub {
        text-align: right;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catHead_sub {
          border-bottom: 1px solid rgba(0, 0, 0, 0.1);
          padding-bottom: calc(var(--a-s, 1px) * 17);
        }
        html:not([lang="en"]) .m_catHead_sub {
          padding-bottom: calc(var(--a-s, 1px) * 48);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catHead_sub {
          padding-bottom: calc(var(--a-s, 1px) * 42);
        }
        .m_catHead_sub .h_indent {
          display: none;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catHead_subLine {
          width: calc(var(--a-s, 1px) * 360);
        }
      }
      .m_catKV,
      .m_catKV_inner {
        height: calc(var(--vh, 1vh) * 100);
        position: relative;
      }
      .m_catKV_inner {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catKV_inner {
          padding-bottom: calc(var(--a-s, 1px) * 117);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_inner {
          padding-bottom: calc(var(--a-s, 1px) * 70);
        }
      }
      .m_catKV_body {
        align-items: flex-end;
        align-self: end;
        display: flex;
        justify-content: space-between;
      }
      .m_catKV_wrap {
        color: #fff;
        display: flex;
        flex-direction: column;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 2;
      }
      .m_catKV_sticky {
        align-items: flex-end;
        display: flex;
        height: calc(var(--vh, 1vh) * 100);
        justify-content: space-between;
        padding-bottom: calc(var(--a-s, 1px) * 117);
        top: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catKV_sticky {
          padding-bottom: calc(var(--a-s, 1px) * 117);
          position: sticky;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_sticky {
          padding-bottom: calc(var(--a-s, 1px) * 70);
          position: sticky;
          --wrap_clearance_r: calc(var(--a-s, 1px) * 34);
          --wrap_clearance_l: calc(var(--a-s, 1px) * 34);
        }
      }
      .m_catKV_txt {
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catKV_txt {
          row-gap: calc(var(--a-s, 1px) * 48);
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_txt {
          row-gap: calc(var(--a-s, 1px) * 28);
          width: 70%;
        }
      }
      .m_catKV_controls {
        display: grid;
        pointer-events: auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catKV_controls {
          row-gap: calc(var(--a-s, 1px) * 16);
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_controls {
          bottom: calc(var(--a-s, 1px) * -1);
          position: relative;
          row-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_catKV_caption {
        align-items: end;
        display: grid;
        text-align: right;
      }
      .m_catKV_caption > li {
        grid-column: 1/2;
        grid-row: 1/2;
      }
      .m_catKV_counter {
        align-items: center;
        display: flex;
        justify-content: space-between;
        margin-left: auto;
        width: calc(var(--a-s, 1px) * 66);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catKV_counter {
          padding: calc(var(--a-s, 1px) * 1) 0;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_counter {
          width: calc(var(--a-s, 1px) * 47);
        }
      }
      .m_catKV_counterInner {
        align-items: center;
        display: flex;
        overflow: hidden;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catKV_counterInner {
          height: calc(var(--a-s, 1px) * 12);
          margin: calc(var(--a-s, 1px) * -2) 0;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_counterInner {
          height: calc(var(--a-s, 1px) * 12);
          margin: calc(var(--a-s, 1px) * -2) 0;
        }
      }
      .m_catKV_nextprev {
        aspect-ratio: 1/1;
        position: relative;
        width: calc(var(--a-s, 1px) * 7);
      }
      .m_catKV_nextprev:after {
        bottom: calc(var(--a-s, 1px) * -15);
        content: "";
        display: block;
        height: auto;
        left: calc(var(--a-s, 1px) * -15);
        position: absolute;
        right: calc(var(--a-s, 1px) * -15);
        top: calc(var(--a-s, 1px) * -15);
        width: auto;
      }
      @media (any-hover: hover) {
        .m_catKV_nextprev {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_catKV_nextprev:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_catKV_nextprev svg {
        fill: currentColor;
      }
      .m_catKV_current {
        display: grid;
        text-align: right;
      }
      .m_catKV_current li {
        grid-column: 1/2;
        grid-row: 1/2;
      }
      .m_catKV_scroll {
        align-items: center;
        aspect-ratio: 1/1;
        display: flex;
        justify-content: center;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catKV_scroll {
          bottom: calc(var(--a-s, 1px) * 33);
          left: calc(50% - var(--a-s, 1px) * 39.5);
          position: absolute;
          width: calc(var(--a-s, 1px) * 79);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_scroll {
          display: none;
          margin-left: auto;
          position: relative;
          width: calc(var(--a-s, 1px) * 42);
        }
        html[data-template="spa-index"] .m_catKV_scroll {
          display: flex;
        }
      }
      .m_catKV_scroll:before {
        aspect-ratio: 1/1;
        background: #fff;
        border-radius: 50%;
        content: "";
        display: block;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catKV_scroll:before {
          width: calc(var(--a-s, 1px) * 7);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_scroll:before {
          width: calc(var(--a-s, 1px) * 4);
        }
      }
      .m_catKV_scrollRipple,
      .m_catKV_scrollRipple:after,
      .m_catKV_scrollRipple:before {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .m_catKV_scrollRipple:after,
      .m_catKV_scrollRipple:before {
        background-color: #fff;
        border-radius: 50%;
        content: "";
        display: block;
        opacity: 0;
      }
      .is_attentionVisible .m_catKV_scrollRipple:after,
      .is_attentionVisible .m_catKV_scrollRipple:before {
        animation: m_catKV_scrollRipple 4s cubic-bezier(0.77, 0, 0.175, 1)
          infinite;
      }
      .is_attentionVisible .m_catKV_scrollRipple:after {
        animation-delay: 2s;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_scrollRipple {
          margin-left: auto;
        }
      }
      @keyframes m_catKV_scrollRipple {
        0% {
          transform: scale(0);
        }
        75% {
          opacity: 0.3;
          transform: scale(1);
        }
        to {
          opacity: 0;
          transform: scale(1.6);
        }
      }
      .m_catKV_scrollDots {
        left: 50%;
        position: absolute;
        width: 1px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catKV_scrollDots {
          height: calc(var(--a-s, 1px) * 60);
          top: calc(var(--a-s, 1px) * 51);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_scrollDots {
          height: calc(var(--a-s, 1px) * 60);
          top: calc(var(--a-s, 1px) * 30);
        }
      }
      .m_catKV_scrollDots:after {
        aspect-ratio: 1/1;
        background: #fff;
        border-radius: 50%;
        -webkit-box-shadow: 0 calc(var(--a-s, 1px) * 5) #fff,
          0 calc(var(--a-s, 1px) * 10) #fff, 0 calc(var(--a-s, 1px) * 15) #fff,
          0 calc(var(--a-s, 1px) * 20) #fff, 0 calc(var(--a-s, 1px) * 25) #fff,
          0 calc(var(--a-s, 1px) * 30) #fff, 0 calc(var(--a-s, 1px) * 35) #fff,
          0 calc(var(--a-s, 1px) * 40) #fff, 0 calc(var(--a-s, 1px) * 45) #fff,
          0 calc(var(--a-s, 1px) * 50) #fff, 0 calc(var(--a-s, 1px) * 55) #fff,
          0 calc(var(--a-s, 1px) * 60) #fff;
        box-shadow: 0 calc(var(--a-s, 1px) * 5) #fff,
          0 calc(var(--a-s, 1px) * 10) #fff, 0 calc(var(--a-s, 1px) * 15) #fff,
          0 calc(var(--a-s, 1px) * 20) #fff, 0 calc(var(--a-s, 1px) * 25) #fff,
          0 calc(var(--a-s, 1px) * 30) #fff, 0 calc(var(--a-s, 1px) * 35) #fff,
          0 calc(var(--a-s, 1px) * 40) #fff, 0 calc(var(--a-s, 1px) * 45) #fff,
          0 calc(var(--a-s, 1px) * 50) #fff, 0 calc(var(--a-s, 1px) * 55) #fff,
          0 calc(var(--a-s, 1px) * 60) #fff;
        content: "";
        display: block;
        left: 0;
        position: relative;
        top: 0;
        width: 1px;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_scrollDots:after {
          opacity: 0.6;
        }
      }
      .m_catKV_sliderStickyArea {
        pointer-events: none;
        --head-height: calc(var(--vh, 1vh) * 100);
        height: calc(var(--vh-max, 1vh) * 100 + var(--head-height));
        position: relative;
        width: 100%;
      }
      .m_catKV_slider {
        height: var(--head-height);
        inset: 0;
        overflow: hidden;
        position: absolute;
        top: calc(var(--vh-max, 1vh) * 100 - var(--head-height));
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_catKV_slider {
          --head-height: calc(var(--vh-max, 1vh) * 100);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_catKV_slider {
          --head-height: calc(var(--vh, 1vh) * 100);
        }
        html[data-template="spa-index"] .m_catKV_slider {
          --head-height: calc(var(--vh-max, 1vh) * 100);
        }
      }
      [data-fv-simple] .m_catKV_slider {
        position: sticky;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        [data-fv-simple] .m_catKV_slider {
          top: calc(var(--vh-max, 1vh) * 100 - var(--head-height));
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        [data-fv-simple] .m_catKV_slider {
          top: 0;
        }
      }
      .m_catKV_sliderItem {
        inset: 0;
        opacity: 1 !important;
        position: absolute;
      }
      .m_rectButton {
        background: var(--rectbutton_bg_color_ov);
        color: var(--rectbutton_text_color_df);
        display: block;
        height: var(--rectbutton_h);
        position: relative;
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton {
          --rectbutton_padding_r: var(--rectbutton_h);
          --rectbutton_padding_l: var(--rectbutton_text_clearance);
        }
      }
      @media (any-hover: hover) {
        .m_rectButton {
          transition: color 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_rectButton:hover,
        .m_rectButton_outerLink:hover .m_rectButton {
          color: var(--rectbutton_text_color_ov);
          transition: color 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_rectButton.__xs {
        --rectbutton_bg_color_df: rgba(77, 75, 73, 0.8);
        --rectbutton_bg_color_ov: rgba(51, 51, 51, 0.8);
        background: none;
        border-radius: calc(var(--a-s, 1px) * 2);
        color: #fff;
        overflow: hidden;
        width: fit-content;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__xs {
          --rectbutton_h: calc(var(--a-s, 1px) * 25);
          -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
          padding: 0 calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__xs {
          --rectbutton_bg_color_df: hsla(0, 0%, 45%, 0.8);
          --rectbutton_h: calc(var(--a-s, 1px) * 42);
          -webkit-backdrop-filter: blur(1.25px);
          backdrop-filter: blur(1.25px);
          padding: 0 calc(var(--a-s, 1px) * 21);
        }
      }
      .m_rectButton.__s {
        --rectbutton_line_offset: 0;
        --rectbutton_line_h: 1px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__s {
          --rectbutton_h: calc(var(--a-s, 1px) * 48);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 17);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 7.8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__s {
          --rectbutton_h: calc(var(--a-s, 1px) * 42);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 14);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 6.5);
          --rectbutton_align: flex-end;
          --rectbutton_padding_r: calc(
            var(--rectbutton_h) + var(--rectbutton_text_clearance)
          );
          --rectbutton_padding_l: 0;
        }
      }
      .m_rectButton.__s br {
        display: none;
      }
      .m_rectButton.__m {
        --rectbutton_line_offset: 0;
        --rectbutton_line_h: 1px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__m {
          --rectbutton_h: calc(var(--a-s, 1px) * 80);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 32);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 11);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__m {
          --rectbutton_h: calc(var(--a-s, 1px) * 69);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 28);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 10);
          --rectbutton_align: flex-start;
        }
      }
      .m_rectButton.__sm {
        --rectbutton_line_offset: 0;
        --rectbutton_line_h: 1px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__sm {
          --rectbutton_h: calc(var(--a-s, 1px) * 48);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 17);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 7.8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__sm {
          --rectbutton_h: calc(var(--a-s, 1px) * 69);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 28);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 10);
          --rectbutton_align: flex-start;
        }
      }
      .m_rectButton.__ms {
        --rectbutton_line_offset: 0;
        --rectbutton_line_h: 1px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__ms {
          --rectbutton_h: calc(var(--a-s, 1px) * 80);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 32);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 11);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__ms {
          --rectbutton_h: calc(var(--a-s, 1px) * 42);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 14);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 6.5);
          --rectbutton_align: flex-end;
          --rectbutton_padding_r: calc(
            var(--rectbutton_h) + var(--rectbutton_text_clearance)
          );
          --rectbutton_padding_l: 0;
        }
      }
      .m_rectButton.__lm {
        --rectbutton_line_offset: 0;
        --rectbutton_line_h: 1px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__lm {
          --rectbutton_h: calc(var(--a-s, 1px) * 160);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 70);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 13);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__lm {
          --rectbutton_h: calc(var(--a-s, 1px) * 69);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 28);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 10);
          --rectbutton_align: flex-start;
        }
      }
      .m_rectButton.__l {
        --rectbutton_line_offset: 0;
        --rectbutton_line_h: 2px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__l {
          --rectbutton_h: calc(var(--a-s, 1px) * 160);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 62);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 13);
        }
        .m_rectButton.__l.__sli {
          --rectbutton_padding_r: calc(var(--a-s, 1px) * 140);
        }
        .m_rectButton.__l.__sli .m_rectButton_icon {
          aspect-ratio: 140/160;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__l {
          --rectbutton_h: calc(var(--a-s, 1px) * 98);
          --rectbutton_w: calc(var(--a-s, 1px) * 68);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 28);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 10);
          --rectbutton_align: flex-start;
          --rectbutton_padding_r: calc(
            var(--rectbutton_h) + var(--rectbutton_text_clearance) * 0.5
          );
        }
        .m_rectButton.__l.__sli {
          --rectbutton_padding_r: calc(var(--a-s, 1px) * 68);
        }
        .m_rectButton.__l.__sli .m_rectButton_icon {
          aspect-ratio: 68/98;
        }
      }
      .m_rectButton.__l br {
        display: none;
      }
      .m_rectButton.__xl {
        --rectbutton_line_h: 2px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__xl {
          --rectbutton_h: calc(var(--a-s, 1px) * 208);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 76);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 13);
          --rectbutton_line_offset: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__xl {
          --rectbutton_h: calc(var(--a-s, 1px) * 98);
          --rectbutton_w: calc(var(--a-s, 1px) * 68);
          --rectbutton_text_clearance: calc(var(--a-s, 1px) * 28);
          --rectbutton_arw_w: calc(var(--a-s, 1px) * 10);
          --rectbutton_line_offset: calc(var(--a-s, 1px) * 4);
          --rectbutton_align: flex-start;
          --rectbutton_padding_r: calc(
            var(--rectbutton_w) + var(--rectbutton_text_clearance) * 0.5
          );
        }
        .m_rectButton.__xl .m_rectButton_icon {
          aspect-ratio: 68/98;
        }
      }
      .m_rectButton.__white {
        --rectbutton_text_color_df: #333;
        --rectbutton_text_color_ov: rgba(51, 51, 51, 0.3);
        --rectbutton_bg_color_df: #d9d5c7;
        --rectbutton_bg_color_ov: #ccc8bc;
        --rectbutton_line_color_df: rgba(0, 0, 0, 0.4);
        --rectbutton_line_color_ov: rgba(0, 0, 0, 0.4);
      }
      .m_rectButton.__black {
        --rectbutton_text_color_df: #fff;
        --rectbutton_text_color_ov: #4d4b49;
        --rectbutton_bg_color_df: #4d4b49;
        --rectbutton_bg_color_ov: transparent;
        --rectbutton_line_color_df: #fff;
        --rectbutton_line_color_ov: transparent;
      }
      .m_rectButton.__black.__xl {
        --rectbutton_line_color_ov: #4d4b49;
      }
      .m_rectButton.__brown {
        --rectbutton_text_color_df: #fff;
        --rectbutton_text_color_ov: #807766;
        --rectbutton_bg_color_df: #807766;
        --rectbutton_bg_color_ov: transparent;
        --rectbutton_line_color_df: #fff;
        --rectbutton_line_color_ov: transparent;
      }
      .m_rectButton.__brown.__xl {
        --rectbutton_line_color_ov: #807766;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__xs.__sbright {
          --rectbutton_bg_color_df: hsla(0, 0%, 45%, 0.8);
        }
      }
      .m_rectButton.__trueWhite {
        --rectbutton_text_color_df: #333;
        --rectbutton_text_color_ov: #fff;
        --rectbutton_bg_color_df: #fff;
        --rectbutton_bg_color_ov: #4d4b49;
        --rectbutton_line_color_df: #333;
        --rectbutton_line_color_ov: transparent;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__pac {
          --rectbutton_padding_r: var(--rectbutton_h);
          --rectbutton_padding_l: var(--rectbutton_h);
          --rectbutton_align: center;
        }
        .m_rectButton.__pal {
          --rectbutton_padding_r: var(--rectbutton_h);
          --rectbutton_padding_l: var(--rectbutton_text_clearance);
          --rectbutton_align: flex-start;
        }
        .m_rectButton.__par {
          --rectbutton_padding_r: calc(
            var(--rectbutton_h) + var(--rectbutton_text_clearance)
          );
          --rectbutton_padding_l: var(--rectbutton_text_clearance);
          --rectbutton_align: flex-end;
        }
        .m_rectButton.__paa {
          --rectbutton_padding_r: calc(
            var(--rectbutton_h) + var(--rectbutton_text_clearance)
          );
          --rectbutton_padding_l: var(--rectbutton_text_clearance);
          width: auto;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__sac {
          --rectbutton_padding_r: var(--rectbutton_h);
          --rectbutton_padding_l: var(--rectbutton_h);
          --rectbutton_align: center;
        }
        .m_rectButton.__sal {
          --rectbutton_padding_r: var(--rectbutton_h);
          --rectbutton_padding_l: var(--rectbutton_text_clearance);
          --rectbutton_align: flex-start;
        }
        .m_rectButton.__sar {
          --rectbutton_padding_r: calc(
            var(--rectbutton_h) + var(--rectbutton_text_clearance)
          );
          --rectbutton_padding_l: 0;
          --rectbutton_align: flex-end;
        }
        .m_rectButton.__saa {
          --rectbutton_padding_r: calc(
            var(--rectbutton_h) + var(--rectbutton_text_clearance)
          );
          --rectbutton_padding_l: var(--rectbutton_text_clearance);
          width: auto;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__plt {
          --rectbutton_text_line: block;
          --rectbutton_icon_line: none;
        }
        .m_rectButton.__pli {
          --rectbutton_text_line: none;
          --rectbutton_icon_line: block;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__slt {
          --rectbutton_text_line: block;
          --rectbutton_icon_line: none;
        }
        .m_rectButton.__sli {
          --rectbutton_text_line: none;
          --rectbutton_icon_line: block;
        }
      }
      .m_rectButton:not(.__xs):before {
        border: 1px solid var(--rectbutton_bg_color_df);
      }
      .m_rectButton.__xs:before,
      .m_rectButton:not(.__xs):before {
        content: "";
        display: block;
        inset: 0;
        pointer-events: none;
        position: absolute;
        z-index: 0;
      }
      .m_rectButton.__xs:before {
        background: var(--rectbutton_bg_color_ov);
        opacity: 0;
      }
      @media (any-hover: hover) {
        .m_rectButton.__xs:before {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_rectButton.__xs:hover:before,
        .m_rectButton_outerLink:hover .m_rectButton.__xs:before {
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_rectButton:not(.__xs):after {
        background: var(--rectbutton_line_color_ov);
        content: "";
        display: block;
        height: var(--rectbutton_line_h);
        inset: auto var(--rectbutton_line_offset) var(--rectbutton_line_offset);
        opacity: 0;
        pointer-events: none;
        position: absolute;
        z-index: 2;
      }
      @media (any-hover: hover) {
        .m_rectButton:not(.__xs):after {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_rectButton:hover:after,
        .m_rectButton_outerLink:hover:after {
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_rectButton.__trueWhite:before {
        background: var(--rectbutton_bg_color_ov);
        content: "";
        display: block;
        inset: 0;
        opacity: 0;
        pointer-events: none;
        position: absolute;
        z-index: 0;
      }
      .m_rectButton_inner {
        align-items: stretch;
        display: flex;
        height: 100%;
        justify-content: var(--rectbutton_align);
        padding-left: var(--rectbutton_padding_l);
        padding-right: var(--rectbutton_padding_r);
        position: relative;
        width: 100%;
        z-index: 1;
      }
      .m_rectButton.__xl .m_rectButton_inner:after {
        border: 1px solid;
        content: "";
        display: block;
        inset: var(--rectbutton_line_offset);
        opacity: 0.14;
        pointer-events: none;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__xl .m_rectButton_inner:after {
          inset: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton.__xl .m_rectButton_inner:after {
          inset: calc(var(--a-s, 1px) * 4);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__xl.__pal .m_rectButton_inner {
          padding-left: calc(var(--a-s, 1px) * 62);
          padding-right: calc(var(--a-s, 1px) * 140);
        }
      }
      .m_rectButton_body {
        display: flex;
        flex-direction: column;
        justify-content: center;
        position: relative;
        z-index: 2;
      }
      .m_rectButton_label {
        opacity: 0.6;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton_label {
          padding-bottom: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_rectButton_label {
          padding-bottom: calc(var(--a-s, 1px) * 14);
        }
        html[lang="en"] .m_rectButton_label {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 13);
          font-weight: 400;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 16);
          margin-block: -0.29em -0.26em;
        }
      }
      @media (any-hover: hover) {
        .m_rectButton_label {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_rectButton:hover .m_rectButton_label,
        .m_rectButton_outerLink:hover .m_rectButton_label {
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_rectButton_body:after {
        background: var(--rectbutton_line_color_df);
        content: "";
        display: var(--rectbutton_text_line);
        height: var(--rectbutton_line_h);
        inset: auto 0 var(--rectbutton_line_offset);
        position: absolute;
      }
      @media (any-hover: hover) {
        .m_rectButton_body:after {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_rectButton:hover .m_rectButton_body:after,
        .m_rectButton_outerLink:hover .m_rectButton_body:after {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_rectButton_icon {
        align-items: center;
        aspect-ratio: 1/1;
        display: flex;
        inset: 0 0 0 auto;
        justify-content: center;
        position: absolute;
        z-index: 2;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_rectButton.__xl.__pal .m_rectButton_icon {
          aspect-ratio: 140/208;
        }
      }
      .m_rectButton_icon:before {
        background-image: linear-gradient(
          180deg,
          currentColor,
          currentColor 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        content: "";
        display: block;
        height: calc(var(--a-s, 1px) * 16);
        left: -1px;
        opacity: 0.4;
        position: absolute;
        top: calc(50% - var(--a-s, 1px) * 8);
        width: 1px;
      }
      .m_rectButton_icon:after {
        background: var(--rectbutton_line_color_df);
        content: "";
        display: var(--rectbutton_icon_line);
        height: var(--rectbutton_line_h);
        inset: auto var(--rectbutton_line_offset) var(--rectbutton_line_offset)
          0;
        position: absolute;
      }
      @media (any-hover: hover) {
        .m_rectButton_icon:after {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_rectButton:hover .m_rectButton_icon:after,
        .m_rectButton_outerLink:hover .m_rectButton_icon:after {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_rectButton.__trueWhite .m_rectButton_icon:after {
        opacity: 0.6;
      }
      .m_rectButton_arw {
        aspect-ratio: 1/1;
        display: block;
        width: var(--rectbutton_arw_w);
      }
      .m_rectButton_arw svg {
        fill: currentColor;
      }
      .m_rectButton.__anchor .m_rectButton_arw {
        rotate: -90deg;
      }
      .m_rectButton_bg {
        background: var(--rectbutton_bg_color_df);
        border-radius: inherit;
        inset: 0;
        position: absolute;
        z-index: 0;
      }
      @media (any-hover: hover) {
        .m_rectButton_bg {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_rectButton:hover .m_rectButton_bg,
        .m_rectButton_outerLink:hover .m_rectButton_bg {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_rectButton.__active {
        --rectbutton_bg_color_df: currentColor;
      }
      .m_rectButton.__active:before {
        opacity: 0.1;
      }
      .m_rectButton.__active .m_rectButton_inner:after {
        background: currentColor;
        content: "";
        display: block;
        height: 2px;
        inset: 0 0 auto;
        position: absolute;
      }
      .m_rectButton.__active .m_rectButton_arw,
      .m_rectButton.__active .m_rectButton_body {
        opacity: 0.3;
      }
      .m_rectButton.__active .m_rectButton_bg {
        display: none;
      }
      .m_rectButtonText_margin_right {
        margin-right: calc(var(--a-s, 1px) * 16);
      }
      .m_slider {
        --slider_ratio: 870/560;
        position: relative;
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_slider {
          --slider_ratio: 335/210;
        }
      }
      .m_slider.__inherit {
        --slider_ratio: auto !important;
        height: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_slider.__sv {
          --slider_ratio: 4/5;
        }
      }
      .m_slider_inner {
        display: grid;
        position: relative;
      }
      .m_slider.__inherit .m_slider_inner {
        height: 100%;
      }
      .m_slider_container {
        aspect-ratio: var(--slider_ratio);
        position: relative;
      }
      .m_slider_dots {
        column-gap: calc(var(--a-s, 1px) * 4);
        display: flex;
        position: absolute;
        right: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_slider_dots {
          top: calc(100% + var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_slider_dots {
          top: calc(100% + var(--a-s, 1px) * 7);
        }
      }
      .m_slider_dotsItem {
        aspect-ratio: 1/1;
        opacity: 0.2;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_slider_dotsItem {
          width: calc(var(--a-s, 1px) * 4);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_slider_dotsItem {
          width: calc(var(--a-s, 1px) * 3);
        }
      }
      .m_slider_dotsItem.__active {
      }
      .m_slider_dotsItem.is_hidden {
        display: none;
      }
      .m_slider_dotsItem svg {
        overflow: visible;
      }
      .m_slider_captions {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
      }
      .m_slider_captionItem {
        grid-column: 1/-1;
        grid-row: 1/-1;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.3s ease-out;
      }
      .m_slider_captionItem.__active {
        pointer-events: auto;
        transition: opacity 0.5s ease-in-out 0.1s;
      }
      .m_slidingBanner {
        align-items: center;
        background: #000;
        color: #fff;
        display: flex;
        justify-content: space-between;
        position: relative;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_slidingBanner {
          height: calc(var(--a-s, 1px) * 160);
          padding: 0 calc(var(--a-s, 1px) * 64);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_slidingBanner {
          height: calc(var(--a-s, 1px) * 170);
          padding: 0 calc(var(--a-s, 1px) * 28);
        }
      }
      .m_slidingBanner_icon,
      .m_slidingBanner_ttl {
        position: relative;
        z-index: 1;
      }
      .m_slidingBanner_icon {
        align-items: center;
        background: #fff;
        border: 1px solid #fff;
        border-radius: 50%;
        color: #333;
        display: flex;
        flex-shrink: 0;
        justify-content: center;
      }
      @media (any-hover: hover) {
        .m_slidingBanner_icon {
          transition: color, background 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_slidingBanner:hover .m_slidingBanner_icon {
          background: none;
          color: #fff;
          transition: color, background 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_slidingBanner_icon {
          height: calc(var(--a-s, 1px) * 32);
          width: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_slidingBanner_icon {
          height: calc(var(--a-s, 1px) * 30);
          width: calc(var(--a-s, 1px) * 30);
        }
      }
      .m_slidingBanner_arw {
        position: relative;
        right: calc(var(--a-s, 1px) * -1);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_slidingBanner_arw {
          height: calc(var(--a-s, 1px) * 10);
          width: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_slidingBanner_arw {
          height: calc(var(--a-s, 1px) * 9);
          width: calc(var(--a-s, 1px) * 9);
        }
      }
      .m_slidingBanner_arw svg {
        fill: currentColor;
      }
      .m_slidingBanner_img {
        contain: size layout;
        height: 100%;
        left: 0;
        overflow: hidden;
        position: absolute;
        top: 0;
        width: 100%;
      }
      @media (any-hover: hover) {
        .m_slidingBanner_img {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_slidingBanner:hover .m_slidingBanner_img {
          opacity: 0.48;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_slidingBanner_imgItem:first-child,
        .m_slidingBanner_imgItem:nth-child(2) {
          display: block;
        }
      }
      .m_slidingBanner_divider {
        border: 0;
        height: 0;
        margin: 0;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_slidingBanner_divider {
          border-top: 1px solid rgba(0, 0, 0, 0.2);
          margin-bottom: calc(var(--a-s, 1px) * 120);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_slidingBanner_divider {
          border-top: 1px solid rgba(0, 0, 0, 0.2);
          margin-bottom: calc(var(--a-s, 1px) * 82);
        }
      }
      .m_slidingBanner_label {
        margin-bottom: calc(var(--a-s, 1px) * 40);
        position: relative;
      }
      .m_sliderCard {
        align-items: start;
        display: grid;
        grid-row: span 4;
        grid-template-rows: subgrid;
      }
      .m_sliderCard_body {
        align-items: start;
        display: grid;
        grid-row: 1/4;
        grid-template-rows: subgrid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_sliderCard_body {
          padding-bottom: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_sliderCard.__m .m_sliderCard_body,
        .m_sliderCard.__s .m_sliderCard_body {
          padding-bottom: calc(var(--a-s, 1px) * 28);
        }
        .m_sliderCard.__l .m_sliderCard_body {
          padding-bottom: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_sliderCard_head {
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_sliderCard_head {
          row-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_sliderCard_head {
          row-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_sliderCard_subttl {
        color: #666;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_sliderCard_img {
          margin-top: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_sliderCard_img {
          margin-top: calc(var(--a-s, 1px) * 21);
        }
      }
      .m_sliderCard_outline {
        display: grid;
        grid-template-columns: auto 1fr;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_sliderCard_outline {
          gap: 1em calc(var(--a-s, 1px) * 16);
          margin-top: calc(var(--a-s, 1px) * 20);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_sliderCard_outline {
          gap: 0.8182em calc(var(--a-s, 1px) * 14);
          margin-top: calc(var(--a-s, 1px) * 19);
        }
      }
      .m_sliderCard_outline > dt {
        color: #666;
      }
      .m_sliderCard_foot {
        align-items: end;
        display: grid;
        grid-row: 4/5;
        grid-template-columns: 1fr auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_sliderCard_foot {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_sliderCard_foot {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      .m_sliderCard_foot:before {
        background: rgba(0, 0, 0, 0.07);
        content: "";
        display: block;
        height: 1px;
      }
      .m_sliderCard_link {
        align-items: center;
        border-bottom: 1px solid rgba(0, 0, 0, 0.4);
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_sliderCard_link {
          column-gap: calc(var(--a-s, 1px) * 16);
          padding-bottom: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_sliderCard_link {
          column-gap: calc(var(--a-s, 1px) * 14);
          padding-bottom: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_sliderCard_linkItem {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_sliderCard_linkItem {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_sliderCard_linkItem {
          column-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_sliderCard_linkItem:not(:last-child):after {
        background: rgba(0, 0, 0, 0.2);
        content: "";
        display: block;
        height: calc(var(--a-s, 1px) * 4);
        width: 1px;
      }
      .m_kvShadow {
        left: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        transition: opacity 1.2s ease-in-out 0ms;
        width: 100%;
      }
      .js_page.is_init .m_kvShadow {
        opacity: 0.001;
        transition: none;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_kvShadow {
          height: calc(var(--o-s, 1px) * 300);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_kvShadow {
          height: calc(var(--o-s, 1px) * 192);
        }
      }
      .m_kvShadow img {
        object-fit: fill;
      }
      .m_2cTable {
        --2ctable_head_color: #666;
        border-top: 1px solid rgba(0, 0, 0, 0.07);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_2cTable.__s {
          --2ctable_head_w: calc(var(--a-s, 1px) * 165);
          --2ctable_cell_clearance: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_2cTable.__s {
          --2ctable_head_w: calc(var(--a-s, 1px) * 105);
          --2ctable_cell_clearance: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_2cTable.__m {
          --2ctable_head_w: calc(var(--a-s, 1px) * 180);
          --2ctable_head_color: #333;
          --2ctable_cell_clearance: calc(var(--a-s, 1px) * 17);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_2cTable.__m {
          --2ctable_head_w: calc(var(--a-s, 1px) * 105);
          --2ctable_cell_clearance: calc(var(--a-s, 1px) * 8);
        }
      }
      .m_2cTable.__l {
        --2ctable_head_color: #333;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_2cTable.__l {
          --2ctable_head_w: calc(var(--a-s, 1px) * 270);
          --2ctable_cell_clearance: calc(var(--a-s, 1px) * 17);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_2cTable.__l {
          --2ctable_head_w: calc(var(--a-s, 1px) * 105);
          --2ctable_cell_clearance: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_2cTable.__sl {
          --2ctable_head_w: calc(var(--a-s, 1px) * 80);
          --2ctable_cell_clearance: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_2cTable.__sl {
          --2ctable_head_color: #333;
          --2ctable_head_w: calc(var(--a-s, 1px) * 105);
          --2ctable_cell_clearance: calc(var(--a-s, 1px) * 14);
        }
      }
      html[data-template="rockbar-detail"] .m_2cTable,
      html[data-template="rockbar-index"] .m_2cTable {
        --2ctable_head_color: #fff;
      }
      .m_2cTable_row {
        border-bottom: 1px solid rgba(0, 0, 0, 0.07);
        display: grid;
        grid-template-columns: var(--2ctable_head_w) 1fr;
        padding: var(--2ctable_cell_clearance) 0;
      }
      html[data-template="rockbar-detail"] .m_2cTable_row,
      html[data-template="rockbar-index"] .m_2cTable_row {
        border-color: hsla(0, 0%, 100%, 0.1);
      }
      .m_2cTable_row dt {
        color: var(--2ctable_head_color);
      }
      .m_2cTable_row dd {
        display: grid;
        row-gap: calc(var(--a-s, 1px) * 14);
      }
      .m_accordion {
        border-bottom: 1px solid rgba(0, 0, 0, 0.2);
        border-top: 1px solid rgba(0, 0, 0, 0.2);
        --accordionttl_u_color: rgba(154, 131, 70, 0.2);
      }
      .m_accordion.__white {
        border-color: hsla(0, 0%, 100%, 0.2);
        --accordionttl_u_color: hsla(44, 11%, 48%, 0.6);
      }
      .m_accordion + .m_accordion {
        border-top: none;
      }
      .m_accordion_ttl {
        align-items: center;
        cursor: pointer;
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_accordion_ttl {
          column-gap: calc(var(--a-s, 1px) * 63);
          grid-template-columns: 1fr calc(var(--a-s, 1px) * 33);
          height: calc(var(--a-s, 1px) * 158);
          padding: 0 calc(var(--a-s, 1px) * 63) 0 calc(var(--a-s, 1px) * 9);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_accordion_ttl {
          column-gap: calc(var(--a-s, 1px) * 63);
          grid-template-columns: 1fr calc(var(--a-s, 1px) * 14);
          height: calc(var(--a-s, 1px) * 95);
          padding: 0 calc(var(--a-s, 1px) * 14) 0 0;
        }
      }
      @media (any-hover: hover) {
        .m_accordion_ttl {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_accordion_ttl:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_accordion_ttl::-webkit-details-marker {
        display: none;
      }
      .m_accordion_ttl u {
        background: url(https://www.ayana.com/assets/202601061119/img/ac_line.svg)
          no-repeat left calc(var(--a-s, 1px) * 2) bottom
          calc(var(--a-s, 1px) * 1);
        text-decoration: none;
        will-change: background-size;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_accordion_ttl u {
          background-size: 100% calc(var(--a-s, 1px) * 6);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_accordion_ttl u {
          background-position: left calc(var(--a-s, 1px) * 2) bottom
            calc(var(--a-s, 1px) * 2);
          background-size: 100% calc(var(--a-s, 1px) * 3);
        }
      }
      html[data-template="rockbar-detail"] .m_accordion_ttl u,
      html[data-template="rockbar-index"] .m_accordion_ttl u {
        background-image: url(https://www.ayana.com/assets/202601061119/img/ac_line_dark.svg);
      }
      .m_accordion_icon {
        display: block;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_accordion_icon {
          aspect-ratio: 33/32;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_accordion_icon {
          aspect-ratio: 14/14;
        }
      }
      .m_accordion_icon:after,
      .m_accordion_icon:before {
        background: #333;
        content: "";
        display: block;
        position: absolute;
      }
      html[data-template="rockbar-detail"] .m_accordion_icon:after,
      html[data-template="rockbar-detail"] .m_accordion_icon:before,
      html[data-template="rockbar-index"] .m_accordion_icon:after,
      html[data-template="rockbar-index"] .m_accordion_icon:before {
        background: #fff;
      }
      .m_accordion_icon:before {
        height: 2px;
        inset: calc(50% - 1px) 0 auto 0;
      }
      .m_accordion_icon:after {
        inset: 0 auto 0 calc(50% - 0.5px);
        transition: scale 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
        width: 1px;
      }
      .m_accordion.is_open .m_accordion_icon:after {
        scale: 1 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_accordion_inner {
          padding-bottom: calc(var(--a-s, 1px) * 80);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_accordion_inner {
          padding-bottom: calc(var(--a-s, 1px) * 42);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_accordion_txt strong {
          font-family: Helvetica Now Text, sans-serif;
          font-size: calc(var(--a-s, 1px) * 16);
          font-weight: 400;
          letter-spacing: 0.03em;
          line-height: calc(var(--a-s, 1px) * 24);
          margin-block: -0.42em -0.39em;
        }
      }
      .m_accordion_boder {
        background-image: linear-gradient(
          90deg,
          rgba(0, 0, 0, 0.2),
          rgba(0, 0, 0, 0.2) 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-x;
        background-size: 3px 1px;
        height: 1px;
        width: 100%;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_compareTable {
          margin-inline: calc(var(--a-s, 1px) * -20);
          overflow: scroll;
          padding-bottom: calc(var(--a-s, 1px) * 42);
          padding-left: calc(var(--a-s, 1px) * 20);
        }
      }
      .m_compareTable_body {
        table-layout: fixed;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_compareTable_body {
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_compareTable_body {
          width: calc(var(--a-s, 1px) * 635);
        }
      }
      .m_compareTable_body tr {
        border-bottom: 1px solid rgba(0, 0, 0, 0.07);
      }
      .m_compareTable_body thead th {
        text-align: left;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_compareTable_body thead th {
          padding: 0 calc(var(--a-s, 1px) * 30) calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_compareTable_body thead th {
          padding: calc(var(--a-s, 1px) * 13) calc(var(--a-s, 1px) * 14)
            calc(var(--a-s, 1px) * 15);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_compareTable_body tbody td,
        .m_compareTable_body tbody th {
          overflow-wrap: normal;
          padding: calc(var(--a-s, 1px) * 17) calc(var(--a-s, 1px) * 30);
        }
        html[lang="ja"] .m_compareTable_body tbody td,
        html[lang="ja"] .m_compareTable_body tbody th {
          padding-right: calc(var(--a-s, 1px) * 24);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_compareTable_body tbody td,
        .m_compareTable_body tbody th {
          padding: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_compareTable_body td:first-child,
      .m_compareTable_body th:first-child {
        text-align: left;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_compareTable_body td:first-child,
        .m_compareTable_body th:first-child {
          padding-left: 0;
          width: calc(var(--a-s, 1px) * 150);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_compareTable_body td:first-child,
        .m_compareTable_body th:first-child {
          padding-left: 0;
          width: calc(var(--a-s, 1px) * 134);
        }
      }
      .m_compareTable_body td:not(:first-child),
      .m_compareTable_body th:not(:first-child) {
        background-image: linear-gradient(
          180deg,
          rgba(0, 0, 0, 0.4),
          rgba(0, 0, 0, 0.4) 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_compareTable_caption {
          padding-top: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_compareTable_caption {
          left: 0;
          padding-top: calc(var(--a-s, 1px) * 56);
          position: sticky;
        }
      }
      .m_courseBtn {
        color: #fff;
        display: flex;
        justify-content: space-between;
        position: relative;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_courseBtn {
          height: calc(var(--a-s, 1px) * 160);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_courseBtn {
          height: calc(var(--a-s, 1px) * 98);
        }
      }
      @media (any-hover: hover) {
        .m_courseBtn {
          transition: color 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_courseBtn:hover {
          color: #807766;
          transition: color 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_courseBtn:after {
        border: 1px solid #807766;
        content: "";
        display: block;
        inset: 0;
        position: absolute;
      }
      .m_courseBtn_body {
        display: flex;
        flex-direction: column;
        justify-content: center;
        position: relative;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_courseBtn_body {
          padding-left: calc(var(--a-s, 1px) * 64);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_courseBtn_body {
          padding-left: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_courseBtn_btn {
        align-items: center;
        column-gap: calc(var(--a-s, 1px) * 32);
        display: flex;
        position: relative;
        z-index: 1;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_courseBtn_btn {
          padding-right: calc(var(--a-s, 1px) * 63);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_courseBtn_btn {
          padding-right: calc(var(--a-s, 1px) * 29);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_courseBtn_btn:after {
          background: currentColor;
          bottom: 1px;
          content: "";
          display: block;
          height: 2px;
          position: absolute;
          right: 1px;
          width: calc(var(--a-s, 1px) * 140);
        }
      }
      @media (any-hover: hover) {
        .m_courseBtn_btn:after {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_courseBtn:hover .m_courseBtn_btn:after {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_courseBtn_txt {
          display: none;
        }
      }
      .m_courseBtn_arw {
        aspect-ratio: 1/1;
        display: block;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_courseBtn_arw {
          width: calc(var(--a-s, 1px) * 13);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_courseBtn_arw {
          width: calc(var(--a-s, 1px) * 11);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_courseBtn_icon {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 64);
          display: flex;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_courseBtn_icon {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 29);
          display: flex;
        }
      }
      .m_courseBtn_icon:before {
        background-image: linear-gradient(
          180deg,
          currentColor,
          currentColor 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        content: "";
        display: block;
        height: calc(var(--a-s, 1px) * 16);
        opacity: 0.4;
        width: 1px;
      }
      .m_courseBtn_arw svg {
        fill: currentColor;
      }
      .m_courseBtn_bg {
        background: #807766;
        inset: 0;
        position: absolute;
        z-index: 0;
      }
      @media (any-hover: hover) {
        .m_courseBtn_bg {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_courseBtn:hover .m_courseBtn_bg {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_divider {
        position: relative;
      }
      .m_divider.__black {
        color: #333;
      }
      .m_divider.__white {
        color: #fff;
      }
      .m_divider_img {
        align-items: end;
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_divider_img {
          column-gap: calc(var(--a-s, 1px) * 16);
          grid-template-columns: 1fr calc(var(--a-s, 1px) * 23) 1fr;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_divider_img {
          column-gap: calc(var(--a-s, 1px) * 13);
          grid-template-columns: 1fr calc(var(--a-s, 1px) * 19) 1fr;
        }
      }
      .m_divider_img:after,
      .m_divider_img:before {
        background: currentColor;
        content: "";
        display: block;
        height: 1px;
        margin-bottom: calc(var(--a-s, 1px) * 2);
        opacity: 0.4;
      }
      .m_divider_img svg {
        fill: currentColor;
      }
      .m_divider_side {
        align-items: center;
        display: flex;
        flex-direction: column;
        position: absolute;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_divider_side {
          top: calc(100% + var(--a-s, 1px) * 30);
          width: calc(var(--a-s, 1px) * 6);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_divider_side {
          top: calc(100% + var(--a-s, 1px) * 16);
          width: calc(var(--a-s, 1px) * 3);
        }
      }
      .m_divider_side.__l {
        left: 0;
      }
      .m_divider_side.__r {
        right: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_divider.__side_deco .m_divider_side {
          width: calc(var(--a-s, 1px) * 13);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_divider.__side_deco .m_divider_side {
          width: calc(var(--a-s, 1px) * 8);
        }
      }
      .m_divider_side:before {
        aspect-ratio: 1/1;
        background: currentColor;
        border-radius: 50%;
        content: "";
        display: block;
        opacity: 0.4;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_divider_side:before {
          -webkit-box-shadow: 0 calc(var(--a-s, 1px) * 4) 0 currentColor,
            0 calc(var(--a-s, 1px) * 8) 0 currentColor,
            0 calc(var(--a-s, 1px) * 12) 0 currentColor;
          box-shadow: 0 calc(var(--a-s, 1px) * 4) 0 currentColor,
            0 calc(var(--a-s, 1px) * 8) 0 currentColor,
            0 calc(var(--a-s, 1px) * 12) 0 currentColor;
          margin-bottom: calc(var(--a-s, 1px) * 20);
          width: calc(var(--a-s, 1px) * 2);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_divider_side:before {
          -webkit-box-shadow: 0 calc(var(--a-s, 1px) * 2) 0 currentColor,
            0 calc(var(--a-s, 1px) * 4) 0 currentColor,
            0 calc(var(--a-s, 1px) * 6) 0 currentColor,
            0 calc(var(--a-s, 1px) * 8) 0 currentColor,
            0 calc(var(--a-s, 1px) * 10) 0 currentColor,
            0 calc(var(--a-s, 1px) * 12) 0 currentColor;
          box-shadow: 0 calc(var(--a-s, 1px) * 2) 0 currentColor,
            0 calc(var(--a-s, 1px) * 4) 0 currentColor,
            0 calc(var(--a-s, 1px) * 6) 0 currentColor,
            0 calc(var(--a-s, 1px) * 8) 0 currentColor,
            0 calc(var(--a-s, 1px) * 10) 0 currentColor,
            0 calc(var(--a-s, 1px) * 12) 0 currentColor;
          margin-bottom: calc(var(--a-s, 1px) * 17);
          width: calc(var(--a-s, 1px) * 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_divider.__side_deco .m_divider_side:before {
          -webkit-box-shadow: 0 calc(var(--a-s, 1px) * 4) 0 currentColor,
            0 calc(var(--a-s, 1px) * 8) 0 currentColor,
            0 calc(var(--a-s, 1px) * 12) 0 currentColor,
            0 calc(var(--a-s, 1px) * 16) 0 currentColor,
            0 calc(var(--a-s, 1px) * 20) 0 currentColor;
          box-shadow: 0 calc(var(--a-s, 1px) * 4) 0 currentColor,
            0 calc(var(--a-s, 1px) * 8) 0 currentColor,
            0 calc(var(--a-s, 1px) * 12) 0 currentColor,
            0 calc(var(--a-s, 1px) * 16) 0 currentColor,
            0 calc(var(--a-s, 1px) * 20) 0 currentColor;
          margin-bottom: calc(var(--a-s, 1px) * 29);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_divider.__side_deco .m_divider_side:before {
          -webkit-box-shadow: 0 calc(var(--a-s, 1px) * 2) 0 currentColor,
            0 calc(var(--a-s, 1px) * 4) 0 currentColor,
            0 calc(var(--a-s, 1px) * 6) 0 currentColor,
            0 calc(var(--a-s, 1px) * 8) 0 currentColor;
          box-shadow: 0 calc(var(--a-s, 1px) * 2) 0 currentColor,
            0 calc(var(--a-s, 1px) * 4) 0 currentColor,
            0 calc(var(--a-s, 1px) * 6) 0 currentColor,
            0 calc(var(--a-s, 1px) * 8) 0 currentColor;
          margin-bottom: calc(var(--a-s, 1px) * 12);
        }
      }
      .m_divider_sideImg {
        opacity: 0.4;
        width: 100%;
      }
      .m_divider.__side_deco .m_divider_sideImg {
      }
      .m_divider_sideImg svg {
        fill: currentColor;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_dots {
          width: calc(var(--a-s, 1px) * 10);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_dots {
          width: calc(var(--a-s, 1px) * 7.5);
        }
      }
      .m_dots.__black {
        color: #333;
      }
      .m_dots.__white {
        color: #fff;
      }
      .m_dots.__opacity100 {
      }
      .m_dots.__opacity60 {
        opacity: 0.6;
      }
      .m_dots.__opacity40 {
        opacity: 0.4;
      }
      .m_dots.__center {
        margin-left: auto;
        margin-right: auto;
      }
      .m_dots svg {
        fill: currentColor;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_hotelsLink {
          align-items: stretch;
          display: flex;
          justify-content: space-between;
          position: relative;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_hotelsLink {
          border-top: 1px solid rgba(0, 0, 0, 0.07);
          padding-top: calc(var(--a-s, 1px) * 28);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_hotelsLink:before {
          background: rgba(0, 0, 0, 0.07);
          content: "";
          display: block;
          height: 1px;
          left: 0;
          position: absolute;
          right: 0;
        }
        .m_hotelsLink.__bt:before {
          top: 0;
        }
        .m_hotelsLink.__bt .m_hotelsLink_linkItem,
        .m_hotelsLink.__bt .m_hotelsLink_ttlWrap {
          padding-top: calc(var(--a-s, 1px) * 32);
        }
        .m_hotelsLink.__bt .m_hotelsLink_linkItem:after {
          top: 0;
        }
        .m_hotelsLink.__bb:before {
          bottom: 0;
        }
        .m_hotelsLink.__bb .m_hotelsLink_linkItem,
        .m_hotelsLink.__bb .m_hotelsLink_ttlWrap {
          padding-bottom: calc(var(--a-s, 1px) * 32);
        }
        .m_hotelsLink.__bb .m_hotelsLink_linkItem:after {
          bottom: 0;
        }
      }
      .m_hotelsLink_ttlWrap {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_hotelsLink_ttlWrap {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_hotelsLink_ttlWrap {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      .m_hotelsLink_ttl {
        color: #666;
      }
      @media (any-hover: hover) {
        .m_hotelsLink_ttl a {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_hotelsLink_ttl a:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_hotelsLink_arw {
          width: calc(var(--a-s, 1px) * 6.5);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_hotelsLink_arw {
          width: calc(var(--a-s, 1px) * 4);
        }
      }
      .m_hotelsLink_arw svg {
        fill: currentColor;
        opacity: 0.4;
      }
      .m_hotelsLink_hotel {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_hotelsLink_hotel {
          column-gap: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_hotelsLink_hotel {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      @media (any-hover: hover) {
        .m_hotelsLink_hotel {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_hotelsLink_hotel:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_hotelsLink_destination {
        align-self: flex-end;
        color: #666;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_hotelsLink_link {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 16);
          display: flex;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_hotelsLink_link {
          margin-top: calc(var(--a-s, 1px) * 28);
        }
        .m_hotelsLink_link:before {
          background-image: linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.2),
            rgba(0, 0, 0, 0.2) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-x;
          background-size: 3px 1px;
          content: "";
          display: block;
          height: 1px;
        }
      }
      .m_hotelsLink_linkItem {
        align-items: center;
        display: flex;
        pointer-events: none;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_hotelsLink_linkItem {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_hotelsLink_linkItem {
          border-bottom: 1px solid rgba(0, 0, 0, 0.1);
          height: calc(var(--a-s, 1px) * 42);
        }
      }
      .m_hotelsLink_linkItem:after {
        background: currentColor;
        content: "";
        display: block;
        position: absolute;
        right: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_hotelsLink_linkItem:after {
          height: 2px;
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_hotelsLink_linkItem:after {
          bottom: -1px;
          height: 1px;
          width: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (any-hover: hover) {
        .m_hotelsLink_linkItem:after {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_hotelsLink_linkItem:not(:first-child):after {
          width: calc(100% - var(--a-s, 1px) * 16);
        }
      }
      @media (any-hover: hover) {
        .m_hotelsLink_linkItem:hover:after {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_hotelsLink_linkItem > * {
        pointer-events: auto;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_hotelsLink_linkItem > * {
          justify-content: space-between;
          width: 100%;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_hotelsLink_linkItem:not(:first-child):before {
          background-image: linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.6),
            rgba(0, 0, 0, 0.6) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-y;
          background-size: 1px 3px;
          content: "";
          display: block;
          flex-shrink: 0;
          height: calc(var(--a-s, 1px) * 7);
          width: 1px;
        }
      }
      .m_indexLink {
        display: grid;
        gap: calc(var(--a-s, 1px) * 48);
        text-align: left;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink {
          gap: calc(var(--a-s, 1px) * 28) calc(var(--a-s, 1px) * 20);
          grid-template-columns: repeat(2, 1fr);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink.__p2 {
          grid-template-columns: repeat(2, 1fr);
        }
        .m_indexLink.__p3 {
          grid-template-columns: repeat(6, 1fr);
        }
        .m_indexLink.__p4 {
          grid-template-columns: repeat(4, 1fr);
        }
      }
      .m_indexLink_item {
        display: flex;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink .m_indexLink_item:nth-child(odd):last-child {
          grid-column: span 2;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink.__p3 .m_indexLink_item {
          grid-column: span 2;
        }
        .m_indexLink.__p3 .m_indexLink_item:nth-child(3n + 1):last-child,
        .m_indexLink.__p3 .m_indexLink_item:nth-child(3n + 1):nth-last-child(2),
        .m_indexLink.__p3 .m_indexLink_item:nth-child(3n + 2):last-child {
          grid-column: span 3;
        }
        .m_indexLink.__p4
          .m_indexLink_item:not(:nth-child(4n)):not(
            :nth-child(4n-1)
          ):nth-last-child(-n + 2) {
          grid-column: span 2;
        }
      }
      .m_indexLink_link {
        align-items: start;
        background: #f6f3e7;
        border-top: 1px solid rgba(0, 0, 0, 0.2);
        display: grid;
        grid-template-rows: auto 1fr;
        position: relative;
        width: 100%;
      }
      html[data-template="rockbar-detail"] .m_indexLink_link,
      html[data-template="rockbar-index"] .m_indexLink_link {
        border-top-color: hsla(0, 0%, 100%, 0.2);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink_link {
          padding-top: calc(var(--a-s, 1px) * 32);
          row-gap: calc(var(--a-s, 1px) * 16);
          white-space: nowrap;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink_link {
          padding-top: calc(var(--a-s, 1px) * 21);
          row-gap: calc(var(--a-s, 1px) * 8);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink.__hotel .m_indexLink_link {
          row-gap: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink.__hotel .m_indexLink_link {
          row-gap: calc(var(--a-s, 1px) * 21);
        }
      }
      .m_indexLink.__nobg .m_indexLink_link {
        background: none;
      }
      .m_indexLink_link:before {
        background: #333;
        content: "";
        display: block;
        inset: -1px auto auto 0;
        position: absolute;
      }
      html[data-template="rockbar-detail"] .m_indexLink_link:before,
      html[data-template="rockbar-index"] .m_indexLink_link:before {
        background: #fff;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink_link:before {
          height: 1px;
          width: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink_link:before {
          height: 2px;
          width: calc(var(--a-s, 1px) * 13);
        }
      }
      @media (any-hover: hover) {
        .m_indexLink_link:before {
          transition: width 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_indexLink_link:hover:before {
          transition: width 50ms cubic-bezier(0.19, 1, 0.22, 1);
          width: 100%;
        }
      }
      .m_indexLink_inner {
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink_inner {
          row-gap: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink_inner {
          row-gap: calc(var(--a-s, 1px) * 28);
        }
      }
      @media (any-hover: hover) {
        .m_indexLink_inner {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_indexLink_link:hover .m_indexLink_inner {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_indexLink_num {
        align-items: flex-start;
        display: flex;
      }
      .m_indexLink_numPrefix {
        align-self: flex-end;
        border-bottom: 1px solid rgba(0, 0, 0, 0.07);
        margin-right: calc(var(--a-s, 1px) * 6);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink_numPrefix {
          padding-bottom: calc(var(--a-s, 1px) * 6);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink_numPrefix {
          padding-bottom: calc(var(--a-s, 1px) * 2);
        }
      }
      .m_indexLink_numSharp {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink_numSharp {
          left: -1px;
          margin-right: calc(var(--a-s, 1px) * 5);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink_numSharp {
          left: -1px;
          margin-right: calc(var(--a-s, 1px) * 1);
        }
      }
      .m_indexLink_ttl {
        white-space: pre-wrap;
        word-break: keep-all;
      }
      .m_indexLink_foot {
        align-items: flex-start;
        column-gap: calc(var(--a-s, 1px) * 11);
        display: flex;
        justify-content: space-between;
        margin-top: auto;
      }
      .m_indexLink_caption {
        color: #666;
        word-break: keep-all;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink_caption {
          padding-top: calc(var(--a-s, 1px) * 16);
          white-space: nowrap;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink_caption {
          align-self: end;
          flex-grow: 1;
          padding-top: calc(var(--a-s, 1px) * 13);
        }
      }
      @media (any-hover: hover) {
        .m_indexLink_caption {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_indexLink_link:hover .m_indexLink_caption {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      html[data-template="rockbar-detail"] .m_indexLink_caption,
      html[data-template="rockbar-index"] .m_indexLink_caption {
        color: hsla(0, 0%, 100%, 0.6);
      }
      .m_indexLink_hotel {
        align-self: end;
        display: grid;
        row-gap: calc(var(--a-s, 1px) * 8);
        white-space: nowrap;
        word-break: keep-all;
      }
      @media (any-hover: hover) {
        .m_indexLink_hotel {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_indexLink_link:hover .m_indexLink_hotel {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_indexLink_icon {
        --indexlink_icon_bg_df: #e7e3d4;
        --indexlink_icon_bg_ov: #d9d5c7;
        align-items: center;
        align-self: flex-end;
        aspect-ratio: 1/1;
        background: var(--indexlink_icon_bg_df);
        border-bottom: 1px solid #333;
        display: flex;
        justify-content: center;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink_icon {
          width: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink_icon {
          flex-shrink: 0;
          width: calc(var(--a-s, 1px) * 21);
        }
      }
      @media (any-hover: hover) {
        .m_indexLink_icon {
          transition: background 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_indexLink_link:hover .m_indexLink_icon {
          background: var(--indexlink_icon_bg_ov);
          transition: background 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_indexLink.__icon_w .m_indexLink_icon {
        --indexlink_icon_bg_df: #fff;
        --indexlink_icon_bg_ov: #ccc;
      }
      .m_indexLink_arw {
        aspect-ratio: 1/1;
        rotate: 90deg;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_indexLink_arw {
          width: calc(var(--a-s, 1px) * 9);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_indexLink_arw {
          width: calc(var(--a-s, 1px) * 6);
        }
      }
      @media (any-hover: hover) {
        .m_indexLink_arw {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_indexLink_link:hover .m_indexLink_arw {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_linkList {
          --linklist_w: none;
          --linklist_icon_w: calc(var(--a-s, 1px) * 15);
          column-gap: calc(var(--a-s, 1px) * 50);
          display: grid;
          grid-template-columns: repeat(var(--linklist_col), 1fr);
          margin-left: auto;
          margin-right: auto;
          max-width: var(--linklist_w);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_linkList {
          --linklist_icon_w: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_linkList.__pc2 {
          --linklist_w: calc(var(--a-s, 1px) * 720);
          --linklist_col: 2;
        }
        .m_linkList.__pc3 {
          --linklist_col: 3;
        }
      }
      .m_linkList:before {
        background-image: linear-gradient(
          90deg,
          rgba(0, 0, 0, 0.2),
          rgba(0, 0, 0, 0.2) 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-x;
        background-size: 3px 1px;
        content: "";
        display: block;
        grid-column: 1/-1;
        height: 1px;
        position: relative;
      }
      .m_linkList_link {
        align-items: center;
        display: grid;
        grid-template-columns: 1fr var(--linklist_icon_w);
        position: relative;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_linkList_link {
          border-bottom: 1px solid rgba(0, 0, 0, 0.2);
          column-gap: calc(var(--a-s, 1px) * 16);
          padding: calc(var(--a-s, 1px) * 32) 0;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_linkList_link {
          border-bottom: 1px solid rgba(0, 0, 0, 0.1);
          column-gap: calc(var(--a-s, 1px) * 14);
          padding: calc(var(--a-s, 1px) * 14) 0 calc(var(--a-s, 1px) * 13);
        }
      }
      @media (any-hover: hover) {
        .m_linkList_link {
          transition: border-color 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_linkList_link:hover {
          border-color: #333;
          transition: border-color 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_linkList_link:after {
        background: currentColor;
        content: "";
        display: block;
        inset: auto 0 -1px auto;
        position: absolute;
        width: var(--linklist_icon_w);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_linkList_link:after {
          height: 2px;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_linkList_link:after {
          height: 1px;
        }
      }
      @media (any-hover: hover) {
        .m_linkList_link:after {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_linkList_link:hover:after {
          opacity: 0;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_linkList_txt {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_linkList_link:hover .m_linkList_txt {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_linkList_icon {
        align-items: center;
        aspect-ratio: 1/1;
        display: flex;
        justify-content: center;
        position: relative;
        width: var(--linklist_icon_w);
      }
      @media (any-hover: hover) {
        .m_linkList_icon {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_linkList_link:hover .m_linkList_icon {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_linkList_arw,
      .m_linkList_arw svg {
        width: 100%;
      }
      .m_note {
        color: #666;
      }
      .m_note_asterisk {
        padding-left: calc(var(--a-s, 1px) * 10);
        position: relative;
      }
      .m_note_asterisk:before {
        content: "*";
        display: block;
        inset: 0 auto auto 0;
        position: absolute;
      }
      .m_omtTtl {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_omtTtl {
          padding-bottom: calc(var(--a-s, 1px) * 80);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_omtTtl {
          padding-bottom: calc(var(--a-s, 1px) * 42);
        }
      }
      .m_omtTtl_ttl {
        display: grid;
        text-align: center;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_omtTtl_ttl {
          row-gap: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_omtTtl_ttl {
          row-gap: calc(var(--a-s, 1px) * 28);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap {
          --wrap_clearance_r: calc(var(--a-s, 1px) * 240);
          --wrap_clearance_l: calc(var(--a-s, 1px) * 240);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap {
          --wrap_clearance_r: calc(var(--a-s, 1px) * 34);
          --wrap_clearance_l: calc(var(--a-s, 1px) * 34);
        }
      }
      .m_recommendMap_inner {
        height: var(--map_inner_h);
        position: relative;
      }
      .m_recommendMap_ttl {
        border-bottom: 1px solid rgba(0, 0, 0, 0.4);
        display: flex;
        margin: 0 auto;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap_ttl {
          align-items: center;
          flex-direction: column;
          padding-bottom: calc(var(--a-s, 1px) * 32);
          row-gap: calc(var(--a-s, 1px) * 16);
          width: fit-content;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_ttl {
          flex-flow: row-reverse wrap-reverse;
          justify-content: space-between;
          margin-bottom: calc(var(--a-s, 1px) * 28);
          margin-top: calc(var(--a-s, 1px) * 42);
          padding-bottom: calc(var(--a-s, 1px) * 28);
          padding-top: calc(var(--a-s, 1px) * 42);
        }
      }
      .m_recommendMap_ttl:after {
        background: rgba(0, 0, 0, 0.4);
        content: "";
        display: block;
        height: var(--map_ttl_line_h);
        left: 50%;
        position: absolute;
        top: 100%;
        width: 1px;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_ttl:after {
          height: calc(var(--a-s, 1px) * 13);
        }
        .m_recommendMap_ttl:before {
          background-image: linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.2),
            rgba(0, 0, 0, 0.2) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-x;
          background-size: 3px 1px;
          content: "";
          display: block;
          height: 2px;
          left: 0;
          position: absolute;
          top: 0;
          width: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_recommendMap_map {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap_map {
          height: calc(var(--a-s, 1px) * 534);
          margin: 0 auto;
          width: calc(var(--a-s, 1px) * 534);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_map {
          height: calc(var(--a-s, 1px) * 320);
          margin: 0 calc(var(--a-s, 1px) * -16.5);
          width: calc(var(--a-s, 1px) * 340);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap_mapTram {
          height: calc(var(--a-s, 1px) * 32);
          width: calc(var(--a-s, 1px) * 53);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_mapTram {
          height: calc(var(--a-s, 1px) * 22);
          width: calc(var(--a-s, 1px) * 36);
        }
      }
      .m_recommendMap_mapBg,
      .m_recommendMap_mapDotine,
      .m_recommendMap_mapLine,
      .m_recommendMap_mapPinSmall,
      .m_recommendMap_mapPinWrap,
      .m_recommendMap_mapText {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .m_recommendMap_mapPin {
        color: #fff;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .m_recommendMap_mapPin svg path {
        fill: #837850;
      }
      .m_recommendMap_mapPin.is_active {
        color: #837850;
        z-index: 1;
      }
      .m_recommendMap_mapPin.is_active svg path {
        fill: #fff;
      }
      @media (any-hover: hover) {
        .m_recommendMap_mapPin.is_active svg path {
          transition: fill 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap_mapPin {
          height: calc(var(--a-s, 1px) * 35);
          margin-left: calc(var(--a-s, 1px) * -17.5);
          margin-top: calc(var(--a-s, 1px) * -32);
          width: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_mapPin {
          height: calc(var(--a-s, 1px) * 28);
          margin-left: calc(var(--a-s, 1px) * -14);
          margin-top: calc(var(--a-s, 1px) * -25.5);
          width: calc(var(--a-s, 1px) * 25.5);
        }
      }
      .m_recommendMap_mapPinBg {
        -webkit-filter: drop-shadow(0 1px 0 rgba(0, 0, 0, 0.2));
        filter: drop-shadow(0 1px 0 rgba(0, 0, 0, 0.2));
      }
      .m_recommendMap_mapPinBg,
      .m_recommendMap_mapPinNum {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .m_recommendMap_mapPinNum {
        align-items: center;
        display: flex;
        justify-content: center;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap_mapPinNum {
          margin-top: calc(var(--a-s, 1px) * -1);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_mapPinNum {
          margin-top: calc(var(--a-s, 1px) * -1);
        }
        .m_recommendMap_listWrap {
          align-items: center;
          display: flex;
          inset: 0 0 auto;
          margin: calc(var(--a-s, 1px) * 28)
            calc(
              var(--vw, 1vw) * 100 / 2 * -1 - var(--a-s, 1px) * 375 / 2 * -1 +
                var(--a-s, 1px) * 34 * -1
            )
            0 0;
          margin-left: calc(var(--a-s, 1px) * -34);
          overflow-x: scroll;
          scrollbar-color: transparent transparent;
          scrollbar-width: thin;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_listWrap::-webkit-scrollbar {
          display: none;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_listInner {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 28);
          display: flex;
          flex-shrink: 0;
          padding: 0 calc(var(--a-s, 1px) * 34) 0 0;
          position: relative;
        }
        .m_recommendMap_list {
          column-gap: calc(var(--a-s, 1px) * 14);
          display: flex;
          padding-left: calc(var(--a-s, 1px) * 34);
          position: relative;
          z-index: 1;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap_listItem {
          left: var(--map_item_l);
          position: absolute;
          top: var(--map_item_t);
          width: calc(var(--a-s, 1px) * 180);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_listItem {
          display: flex;
          position: relative;
          width: calc(var(--a-s, 1px) * 146);
        }
      }
      .m_recommendMap_listItemLabel {
        pointer-events: none;
        position: absolute;
        writing-mode: vertical-rl;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap_listItemLabel {
          left: var(--map_item_label_l);
          right: var(--map_item_label_r);
          top: 0;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_listItemLabel {
          left: 0;
          top: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_recommendMap_listItemIllust {
        pointer-events: none;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap_listItemIllust {
          inset: auto 0 calc(100% - var(--a-s, 1px) * 30);
          position: absolute;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_listItemIllust {
          inset: auto 0 calc(100% - var(--a-s, 1px) * 120);
          position: absolute;
        }
      }
      .m_recommendMap_listItem > a {
        display: block;
        position: relative;
        width: 100%;
        z-index: 1;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_listItem > a {
          align-items: stretch;
          display: flex;
          padding-top: calc(var(--a-s, 1px) * 99);
        }
        .m_recommendMap_listItem > a:before {
          background-image: linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.2),
            rgba(0, 0, 0, 0.2) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-x;
          background-size: 3px 1px;
          content: "";
          display: block;
          height: 1px;
          inset: 0 0;
          position: absolute;
          z-index: 0;
        }
      }
      @media (any-hover: hover) {
        .m_recommendMap_listItemBody {
          transition: color 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_recommendMap_listItemLink.is_active .m_recommendMap_listItemBody,
        .m_recommendMap_listItemLink:hover .m_recommendMap_listItemBody {
          color: #fff;
          transition: color 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_listItemBody {
          align-items: stretch;
          background: #f6f3e7;
          border-bottom: 1px solid rgba(0, 0, 0, 0.2);
          border-top: 1px solid rgba(0, 0, 0, 0.2);
          display: flex;
          flex-direction: column;
          padding: calc(var(--a-s, 1px) * 35) calc(var(--a-s, 1px) * 19)
            calc(var(--a-s, 1px) * 28);
          width: 100%;
        }
      }
      .m_recommendMap_foot {
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap_foot {
          column-gap: calc(var(--a-s, 1px) * 30);
          display: grid;
          grid-template-columns: auto calc(var(--a-s, 1px) * 360);
          margin-top: calc(var(--a-s, 1px) * 80);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_foot {
          background-image: linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.2),
            rgba(0, 0, 0, 0.2) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-x;
          background-size: 3px 1px;
          margin-top: calc(var(--a-s, 1px) * 42);
          padding-top: calc(var(--a-s, 1px) * 42);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_recommendMap_footTxt {
          border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_recommendMap_footTxt {
          margin-bottom: calc(var(--a-s, 1px) * 28);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_relatedLink {
          align-items: stretch;
          display: flex;
          justify-content: space-between;
          position: relative;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_relatedLink {
          border-top: 1px solid rgba(0, 0, 0, 0.07);
          padding-top: calc(var(--a-s, 1px) * 28);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_relatedLink:before {
          background: rgba(0, 0, 0, 0.07);
          bottom: 0;
          content: "";
          display: block;
          height: 1px;
          left: 0;
          position: absolute;
          right: 0;
        }
      }
      .m_relatedLink_ttlWrap {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_relatedLink_ttlWrap {
          column-gap: calc(var(--a-s, 1px) * 16);
          padding-bottom: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_relatedLink_ttlWrap {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_relatedLink_arw {
          width: calc(var(--a-s, 1px) * 6.5);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_relatedLink_arw {
          width: calc(var(--a-s, 1px) * 4);
        }
      }
      .m_relatedLink_arw svg {
        fill: currentColor;
        opacity: 0.4;
      }
      .m_relatedLink_hotel {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_relatedLink_hotel {
          column-gap: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_relatedLink_hotel {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      .m_relatedLink_destination {
        align-self: flex-end;
        color: #666;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_relatedLink_link {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 16);
          display: flex;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_relatedLink_link {
          margin-top: calc(var(--a-s, 1px) * 28);
        }
        .m_relatedLink_link:before {
          background-image: linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.2),
            rgba(0, 0, 0, 0.2) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-x;
          background-size: 3px 1px;
          content: "";
          display: block;
          height: 1px;
        }
      }
      .m_relatedLink_linkItem {
        align-items: center;
        display: flex;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_relatedLink_linkItem {
          column-gap: calc(var(--a-s, 1px) * 16);
          padding-bottom: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_relatedLink_linkItem {
          border-bottom: 1px solid rgba(0, 0, 0, 0.1);
          height: calc(var(--a-s, 1px) * 42);
        }
      }
      .m_relatedLink_linkItem:after {
        background: rgba(0, 0, 0, 0.4);
        content: "";
        display: block;
        position: absolute;
        right: 0;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_relatedLink_linkItem:after {
          bottom: 0;
          height: 1px;
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_relatedLink_linkItem:after {
          bottom: -1px;
          height: 1px;
          width: calc(var(--a-s, 1px) * 12);
        }
        .m_relatedLink_linkItem > * {
          justify-content: space-between;
          width: 100%;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_relatedLink_linkItem:not(:first-child):before {
          background-image: linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.6),
            rgba(0, 0, 0, 0.6) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-y;
          background-size: 1px 3px;
          content: "";
          display: block;
          flex-shrink: 0;
          height: calc(var(--a-s, 1px) * 7);
          width: 1px;
        }
      }
      .m_roomCard {
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard {
          grid-template-columns: 1fr calc(var(--a-s, 1px) * 481);
          grid-template-rows: repeat(2, auto);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_roomCard {
          grid-template-columns: 1fr;
          grid-template-rows: repeat(3, auto);
        }
        @supports not (grid-template-rows: subgrid) {
          .m_roomCard {
            grid-template-rows: none;
          }
        }
      }
      .m_roomCard_inner {
        align-items: start;
        display: grid;
        grid-column: 1/-1;
        grid-row: 1/-1;
        grid-template-columns: subgrid;
        grid-template-rows: subgrid;
        width: 100%;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard_inner {
          column-gap: calc(var(--a-s, 1px) * 60);
        }
      }
      .m_roomCard_body {
        display: grid;
        grid-row: 1/2;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard_body {
          grid-column: 1/2;
          row-gap: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_roomCard_body {
          grid-column: 1/-1;
          row-gap: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_roomCard_title {
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard_title {
          row-gap: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_roomCard_title {
          row-gap: calc(var(--a-s, 1px) * 21);
        }
      }
      .m_roomCard_destination {
        opacity: 0.6;
      }
      .m_roomCard_name {
        align-items: baseline;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard_name {
          column-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_roomCard_name {
          column-gap: calc(var(--a-s, 1px) * 8);
        }
      }
      .m_roomCard_type {
        color: #666;
      }
      .m_roomCard_outline {
        background-image: linear-gradient(
          90deg,
          rgba(0, 0, 0, 0.2),
          rgba(0, 0, 0, 0.2) 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-x;
        background-size: 3px 1px;
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard_outline {
          column-gap: calc(var(--a-s, 1px) * 32);
          grid-template-columns: repeat(3, 1fr);
          padding-top: calc(var(--a-s, 1px) * 16);
        }
        html[lang="zh"] .m_roomCard_outline {
          column-gap: calc(var(--a-s, 1px) * 14);
        }
        html[lang="ja"] .m_roomCard_outline {
          column-gap: calc(var(--a-s, 1px) * 24);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_roomCard_outline {
          grid-template-columns: repeat(3, calc(var(--a-s, 1px) * 102.5));
          padding-top: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_roomCard_outlineItem {
        display: grid;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard_outlineItem {
          row-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_roomCard_outlineItem {
          row-gap: calc(var(--a-s, 1px) * 8);
        }
      }
      .m_roomCard_outlineItem > dt {
        color: #666;
      }
      .m_roomCard_images {
        column-gap: 1px;
        display: grid;
        grid-template-columns: repeat(2, auto);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard_images {
          grid-column: 2/3;
          grid-row: 1/2;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_roomCard_images {
          grid-column: 1/2;
          grid-row: 2/3;
          margin-top: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_roomCard_img {
        aspect-ratio: 3/2;
        position: relative;
      }
      .m_roomCard_img:after {
        background: #333;
        contain: size layout;
        content: "";
        height: 100%;
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      a:hover .m_roomCard_img:after,
      button:hover .m_roomCard_img:after {
        animation: m_card_imgHover 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
      }
      .m_roomCard_foot {
        align-self: end;
        grid-column: 1/-1;
        pointer-events: none;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard_foot {
          grid-row: 2/3;
          margin-top: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_roomCard_foot {
          grid-row: 3/4;
          margin-top: calc(var(--a-s, 1px) * 28);
        }
      }
      .m_roomCard_footInner {
        align-items: end;
        display: grid;
        grid-template-columns: 1fr auto;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard_footInner {
          column-gap: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_roomCard_footInner {
          column-gap: calc(var(--a-s, 1px) * 7);
        }
      }
      @media (any-hover: hover) {
        .m_roomCard_footInner {
          transition: column-gap 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_roomCard_inner:hover + .m_roomCard_foot .m_roomCard_footInner {
          column-gap: 0;
          transition: column-gap 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_roomCard_footInner:before {
        background: rgba(0, 0, 0, 0.07);
        content: "";
        display: block;
        height: 1px;
      }
      @media (any-hover: hover) {
        .m_roomCard_footInner:before {
          transition: background 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_roomCard_inner:hover
          + .m_roomCard_foot
          .m_roomCard_footInner:before {
          background: rgba(0, 0, 0, 0.4);
          transition: background 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_roomCard_link {
        border-bottom: 1px solid rgba(0, 0, 0, 0.4);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_roomCard_link {
          padding-bottom: calc(var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_roomCard_link {
          padding-bottom: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_snsButton {
        align-items: center;
        background: var(--snsbutton_bg_color);
        color: var(--snsbutton_text_color);
        display: flex;
        flex-direction: column;
        justify-content: center;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_snsButton {
          --snsbutton_border_w: calc(var(--a-s, 1px) * 7);
          --snsbutton_line_w: calc(var(--a-s, 1px) * 263);
          --snsbutton_line_bottom: calc(var(--a-s, 1px) * 10);
          height: calc(var(--a-s, 1px) * 208);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_snsButton {
          --snsbutton_border_w: calc(var(--a-s, 1px) * 4);
          --snsbutton_line_w: calc(var(--a-s, 1px) * 240);
          --snsbutton_line_bottom: calc(var(--a-s, 1px) * 3);
          height: calc(var(--a-s, 1px) * 121.5);
        }
      }
      .m_snsButton.__df {
        --snsbutton_text_color: #333;
        --snsbutton_border_color: rgba(0, 0, 0, 0.07);
        --snsbutton_line_color: #666;
      }
      .m_snsButton.__white {
        --snsbutton_text_color: #333;
        --snsbutton_bg_color: #e4e4d4;
        --snsbutton_border_color: rgba(0, 0, 0, 0.07);
        --snsbutton_line_color: #666;
      }
      .m_snsButton.__black {
        --snsbutton_text_color: #fff;
        --snsbutton_bg_color: #000;
        --snsbutton_border_color: #1a1a1a;
        --snsbutton_line_color: #999;
      }
      .m_snsButton:before {
        border: var(--snsbutton_border_color) solid var(--snsbutton_border_w);
        inset: 0;
      }
      .m_snsButton:after,
      .m_snsButton:before {
        content: "";
        display: block;
        pointer-events: none;
        position: absolute;
      }
      .m_snsButton:after {
        background: var(--snsbutton_line_color);
        height: var(--snsbutton_line_h);
        inset: auto calc((100% - var(--snsbutton_line_w)) / 2)
          var(--snsbutton_line_bottom);
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_snsButton:after {
          height: 2px;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_snsButton:after {
          height: 1px;
        }
      }
      .m_snsButton_text {
        text-align: center;
      }
      .m_snsButton_text span:not(._en) {
        color: #333;
        display: inline-block;
        opacity: 0.6;
      }
      .m_snsButton_list {
        display: flex;
        justify-content: center;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_snsButton_list {
          margin-top: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_snsButton_list {
          margin-top: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_snsButton_listItem {
        align-items: center;
        display: flex;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_snsButton_listItem:not(:first-child) {
          margin-left: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_snsButton_listItem:not(:first-child) {
          margin-left: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_snsButton_listItem:not(:first-child):before {
        background-image: linear-gradient(
          180deg,
          #717171,
          #717171 1px,
          transparent 0,
          transparent 2px
        );
        background-position: 0 0;
        background-repeat: repeat-y;
        background-size: 1px 3px;
        content: "";
        width: 1px;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_snsButton_listItem:not(:first-child):before {
          height: calc(var(--a-s, 1px) * 16);
          margin-right: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_snsButton_listItem:not(:first-child):before {
          height: calc(var(--a-s, 1px) * 10);
          margin-right: calc(var(--a-s, 1px) * 14);
        }
      }
      .m_snsButton_listItem a {
        display: block;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_snsButton_listItem a {
          width: calc(var(--a-s, 1px) * 24);
        }
        .m_snsButton_listItem a:after {
          bottom: calc(var(--a-s, 1px) * -32);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -32);
          position: absolute;
          right: calc(var(--a-s, 1px) * -32);
          top: calc(var(--a-s, 1px) * -32);
          width: auto;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_snsButton_listItem a {
          height: calc(var(--a-s, 1px) * 10);
          width: calc(var(--a-s, 1px) * 14);
        }
        .m_snsButton_listItem a:after {
          bottom: calc(var(--a-s, 1px) * -14);
          content: "";
          display: block;
          height: auto;
          left: calc(var(--a-s, 1px) * -14);
          position: absolute;
          right: calc(var(--a-s, 1px) * -14);
          top: calc(var(--a-s, 1px) * -14);
          width: auto;
        }
      }
      @media (any-hover: hover) {
        .m_snsButton_listItem a {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_snsButton_listItem a:hover {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      .m_snsButton_listItem svg {
        fill: currentColor;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_spotLink {
          align-items: start;
          display: grid;
          grid-template-columns: auto;
          grid-template-rows: auto;
          position: relative;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_spotLink {
          align-items: flex-end;
          column-gap: calc(var(--a-s, 1px) * 14);
          display: flex;
          justify-content: space-between;
          position: relative;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_spotLink:before {
          background: rgba(0, 0, 0, 0.07);
          bottom: 0;
          content: "";
          display: block;
          height: 1px;
          left: 0;
          position: absolute;
          right: 0;
        }
        .m_spotLink_ttlWrap {
          display: block;
          grid-column: 1/-1;
          grid-row: 1/-1;
          padding-bottom: calc(var(--a-s, 1px) * 32);
          width: 100%;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_spotLink_ttlWrap {
          align-items: center;
          border-bottom: 1px solid rgba(0, 0, 0, 0.07);
          column-gap: calc(var(--a-s, 1px) * 14);
          display: flex;
          padding-bottom: calc(var(--a-s, 1px) * 15);
          width: calc(100% - var(--a-s, 1px) * 14);
        }
      }
      @media (any-hover: hover) {
        .m_spotLink_ttlWrap:hover + .m_spotLink_link .m_arwLink.__cardlink,
        .m_spotLink_ttlWrap:hover
          + .m_spotLink_link
          .m_spotLink_linkItem:first-child:after {
          opacity: 0.3;
        }
      }
      .m_spotLink_ttl {
        color: #666;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_spotLink_ttl {
          min-height: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_spotLink_arw {
          width: calc(var(--a-s, 1px) * 6.5);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_spotLink_arw {
          width: calc(var(--a-s, 1px) * 4);
        }
      }
      .m_spotLink_arw svg {
        fill: currentColor;
        opacity: 0.4;
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_spotLink_hotel {
          align-items: center;
          display: flex;
          min-height: calc(var(--a-s, 1px) * 12);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_spotLink_link {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 16);
          display: flex;
          grid-column: 1/-1;
          grid-row: 1/-1;
          margin-left: auto;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_spotLink_link {
          align-items: center;
          border-bottom: 1px solid rgba(0, 0, 0, 0.4);
          column-gap: calc(var(--a-s, 1px) * 14);
          display: flex;
          padding-bottom: calc(var(--a-s, 1px) * 15);
        }
      }
      .m_spotLink_linkItem {
        align-items: center;
        display: flex;
        position: relative;
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_spotLink_linkItem {
          column-gap: calc(var(--a-s, 1px) * 16);
          padding-bottom: calc(var(--a-s, 1px) * 32);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_spotLink_linkItem {
          column-gap: calc(var(--a-s, 1px) * 14);
        }
      }
      @media (any-hover: hover) {
        .m_spotLink_linkItem {
          transition: opacity 0.9s cubic-bezier(0.19, 1, 0.22, 1);
        }
        .m_spotLink_linkItem:hover:after {
          opacity: 0.3;
          transition: opacity 50ms cubic-bezier(0.19, 1, 0.22, 1);
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_spotLink_linkItem:after {
          background: currentColor;
          bottom: 0;
          content: "";
          display: block;
          height: 2px;
          position: absolute;
          right: 0;
          width: 100%;
        }
        .m_spotLink_linkItem:not(:first-child):after {
          width: calc(100% - var(--a-s, 1px) * 16);
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_spotLink_linkItem > * {
          justify-content: space-between;
          width: 100%;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_spotLink_linkItem:not(:first-child):before {
          background-image: linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.6),
            rgba(0, 0, 0, 0.6) 1px,
            transparent 0,
            transparent 2px
          );
          background-position: 0 0;
          background-repeat: repeat-y;
          background-size: 1px 3px;
          content: "";
          display: block;
          flex-shrink: 0;
          height: calc(var(--a-s, 1px) * 7);
          width: 1px;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_spotLink_linkItem:not(:last-child):after {
          background: rgba(0, 0, 0, 0.2);
          content: "";
          display: block;
          height: calc(var(--a-s, 1px) * 4);
          width: 1px;
        }
      }
      .m_spotLink_linkItem .m_arwLink:after {
        bottom: calc(var(--a-s, 1px) * -32);
        top: calc(var(--a-s, 1px) * -32);
      }
      .m_transport,
      .m_transport svg {
        contain: size layout;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
      }
      .m_transport svg {
        overflow: visible;
      }
      .m_transport.is_left svg {
        rotate: y 180deg;
      }
      .m_transport.__baggy svg [data-name="body"],
      .m_transport.__tram svg [data-name="body"] {
        animation: m_transport__carBody 0.8s linear infinite;
      }
      .m_transport.__foot svg {
        animation: m_transport__foot 0.9s linear infinite;
        transform-origin: center 90%;
      }
      @keyframes m_transport__carBody {
        0% {
          translate: 0 0;
        }
        20% {
          translate: 0 -3%;
        }
        40% {
          translate: 0 3%;
        }
        60% {
          translate: 0 -2%;
        }
        80%,
        to {
          translate: 0 0;
        }
      }
      @keyframes m_transport__foot {
        0% {
          rotate: 3deg;
          translate: 0 0;
        }
        50% {
          rotate: -3deg;
          translate: 0 2%;
        }
        to {
          rotate: 3deg;
          translate: 0 0;
        }
      }
      @media (orientation: landscape),
        (orientation: portrait) and (min-width: 760px) {
        .m_ttlLabel {
          align-items: center;
          column-gap: calc(var(--a-s, 1px) * 12);
          display: flex;
          justify-content: center;
        }
      }
      @media (orientation: portrait) and (max-width: 759px) {
        .m_ttlLabel {
          column-gap: calc(var(--a-s, 1px) * 9);
          display: flex;
          justify-content: center;
          text-align: left;
        }
      }
      .m_ttlLabel.__en {
        align-items: baseline;
      }
      .m_ttlLabel_destination {
        color: #666;
      }
      .m_hScrollAttention {
        left: calc(50% - var(--a-s, 1px) * 49);
        position: absolute;
        top: calc(var(--a-s, 1px) * 155);
      }
      .m_hScrollAttention_wrap {
        background-color: rgba(77, 75, 73, 0.8);
        display: block;
        height: calc(var(--a-s, 1px) * 98);
        outline: 1px solid hsla(48, 45%, 94%, 0.14);
        outline-offset: calc(var(--a-s, 1px) * -4);
        position: relative;
        top: 0;
        width: calc(var(--a-s, 1px) * 98);
      }
      .m_hScrollAttention_text {
        bottom: calc(var(--a-s, 1px) * 33);
        color: #fff;
        position: absolute;
        text-align: center;
        text-transform: capitalize;
        width: 100%;
      }
      .m_hScrollAttention_arrow {
        fill: #fff;
        animation: m_hScrollAttention_arrow 1.5s cubic-bezier(0.77, 0, 0.175, 1)
          infinite;
      }
      @keyframes m_hScrollAttention_arrow {
        0% {
          translate: 5% 0;
        }
        50% {
          translate: -5% 0;
        }
        to {
          translate: 5% 0;
        }
      }
