@charset "UTF-8";
/* reset
-------------------------------------------------------------------------------- */
:root {
    --color-purple: #b70060;
    --color-purple-light: #ffa4d4;
    --gradation-purple: linear-gradient(180deg, #b70060, #890042);
}
*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    min-block-size: 100svb;
    min-height: 100svh;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}
p, h1, h2, h3, h4, h5, h6, li {
    font-size: 1rem;
    font-weight: 400;
    overflow-wrap: break-word;
}
th, td {
    font-weight: 400;
}
ul, ol {
    list-style: none;
}
img, svg, video, iframe {
    display: block;
    max-width: 100%;
}
input, button, textarea, select {
    font-family: inherit;
    color: inherit;
    background-color: #fff;
    max-width: 100%;
    border: none;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
a {
    text-decoration: none;
}
/* common
-------------------------------------------------------------------------------- */
html {
    scroll-behavior: smooth;
    font-size: 3.5vw;
    scroll-padding-top: 5rem;
}
body {
    font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
    font-weight: 400;
    font-style: normal;
    background-color: #fff;
    color: var(--color-black);
    background-image: url(../../assets/img/bg_sp.jpg);
    background-repeat: repeat-y;
    background-size: 100%;
}
a {
    color: #000;
}
section {
    padding: 7.5rem 0;
}
.inner {
    width: 90%;
    margin-inline: auto;
}
.en {
    font-family: trajan-pro-3, serif;
    font-weight: 300;
    font-style: normal;
}
.line {
    position: relative;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
}
.line::before {
    position: absolute;
    content: "";
    height: 1px;
    top: 50%;
    left: calc(100% + 1rem);
    right: 1rem;
    background-color: #ccc;
    transition: 1s;
}
.line.active::before {
    right: calc(100% - 90vw);
}
.appear>span {
    clip-path: inset(0 100% 0 0);
    transition: clip-path 1s;
}
.appear.active>span {
    clip-path: inset(0 0 0 0);
}
.appear span:nth-child(1) {
    transition-delay: 0s;
}
.appear span:nth-child(2) {
    transition-delay: 0.125s;
}
.appear span:nth-child(3) {
    transition-delay: 0.25s;
}
.appear span:nth-child(4) {
    transition-delay: 0.375s;
}
.appear span:nth-child(5) {
    transition-delay: 0.5s;
}
.appear span:nth-child(6) {
    transition-delay: 0.625s;
}
.appear span:nth-child(7) {
    transition-delay: 0.75s;
}
.appear span:nth-child(8) {
    transition-delay: 0.875s;
}
.appear span:nth-child(9) {
    transition-delay: 1s;
}
.appear span:nth-child(10) {
    transition-delay: 1.125s;
}
.appear span:nth-child(11) {
    transition-delay: 1.25s;
}
.appear span:nth-child(12) {
    transition-delay: 1.375s;
}
.appear span:nth-child(13) {
    transition-delay: 1.5s;
}
.appear span:nth-child(14) {
    transition-delay: 1.625s;
}
.appear span:nth-child(15) {
    transition-delay: 1.75s;
}
.appear span:nth-child(16) {
    transition-delay: 1.875s;
}
.appear span:nth-child(17) {
    transition-delay: 2s;
}
.appear span:nth-child(18) {
    transition-delay: 2.125s;
}
.appear span:nth-child(19) {
    transition-delay: 2.25s;
}
.appear span:nth-child(20) {
    transition-delay: 2.375s;
}
.appear span:nth-child(21) {
    transition-delay: 2.5s;
}
.appear span:nth-child(22) {
    transition-delay: 2.625s;
}
.appear span:nth-child(23) {
    transition-delay: 2.75s;
}
.appear span:nth-child(24) {
    transition-delay: 2.875s;
}
.appear span:nth-child(25) {
    transition-delay: 3s;
}
.appear span:nth-child(26) {
    transition-delay: 3.125s;
}
.appear span:nth-child(27) {
    transition-delay: 3.25s;
}
.appear span:nth-child(28) {
    transition-delay: 3.375s;
}
.appear span:nth-child(29) {
    transition-delay: 3.5s;
}
.appear span:nth-child(30) {
    transition-delay: 3.625s;
}
.appear span:nth-child(31) {
    transition-delay: 3.75s;
}
.appear span:nth-child(32) {
    transition-delay: 3.875s;
}
.appear span:nth-child(33) {
    transition-delay: 4s;
}
.appear span:nth-child(34) {
    transition-delay: 4.125s;
}
.appear span:nth-child(35) {
    transition-delay: 4.25s;
}
.appear span:nth-child(36) {
    transition-delay: 4.375s;
}
.appear span:nth-child(37) {
    transition-delay: 4.5s;
}
.appear span:nth-child(38) {
    transition-delay: 4.625s;
}
.appear span:nth-child(39) {
    transition-delay: 4.75s;
}
.appear span:nth-child(40) {
    transition-delay: 4.875s;
}
.appear span:nth-child(41) {
    transition-delay: 5s;
}
.appear span:nth-child(42) {
    transition-delay: 5.125s;
}
.appear span:nth-child(43) {
    transition-delay: 5.25s;
}
.appear span:nth-child(44) {
    transition-delay: 5.375s;
}
.appear span:nth-child(45) {
    transition-delay: 5.5s;
}
.focus {
    filter: blur(1rem);
    transition: 1.5s;
}
.focus.active {
    filter: blur(0);
}
.blur {
    filter: blur(0);
    transition: 1.5s;
}
.blur.active {
    filter: blur(1rem);
}
.trace {
    position: relative;
}
.trace::before {
    position: absolute;
    content: "";
    inset: 0;
    background-image: linear-gradient(180deg, rgba(183, 0, 96, 0.5), rgba(137, 0, 66, 0.5));
    clip-path: inset(0 0 0 0);
    transition: clip-path 1s;
}
.trace.active::before {
    clip-path: inset(0 0 0 100%);
}
.swing {
    animation: swing_img 50000ms infinite;
}
@keyframes swing_img {
    0% {
        -o-object-position: 100% 50%;
        object-position: 100% 50%;
    }
    50% {
        -o-object-position: 0% 50%;
        object-position: 0% 50%;
    }
    to {
        -o-object-position: 100% 50%;
        object-position: 100% 50%;
    }
}
#page_head {
    position: relative;
    padding: 0;
    height: 100svh;
}
#page_head._half {
    height: 50vh;
}
#page_head ._img {
    height: 100%;
}
#page_head ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#page_head ._txt {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 1.75rem 2rem 0.666rem 2.5rem;
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
}
#page_head ._txt ._head ._title h1 {
    font-size: 1.5rem;
    line-height: 1.1;
}
#page_head ._txt ._head .en {
    font-size: 0.9rem;
    opacity: 0.6;
}
#scroll_down {
    position: absolute;
    left: 1.5rem;
    bottom: 0;
    top: 1.5rem;
    width: 1px;
    background-image: linear-gradient(0deg, #fff, transparent);
}
.section_head {
    padding: 5rem 0;
}
.section_head .inner ._img {
    width: 2.75rem;
    margin: 0 auto 2.5rem;
}
.section_head .inner ._txt {
    margin-inline: auto;
    text-align: center;
}
.section_head .inner ._txt a {
    position: relative;
    display: inline-block;
}
.section_head .inner ._txt a::before {
    position: absolute;
    content: "";
    height: 1px;
    bottom: -0.1rem;
    background-image: repeating-linear-gradient(90deg, rgb(176, 0, 95) 0px, rgb(140, 0, 67) 0.25rem, transparent 0.25rem, transparent 0.4rem);
    left: -0.5rem;
    right: -0.5rem;
    margin: auto;
}
.section_body {
    padding: 0 0 7.5rem;
}
.hr {
    clip-path: inset(0);
}
.hr ._img {
    position: fixed;
    inset: 0;
}
.hr ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.href {
    margin-inline: auto;
}
.href a {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 0.85rem;
    line-height: 1;
    padding: 0.6rem 2rem 0.55rem;
    border: 1px solid #999;
    border-radius: 2rem;
    margin-inline: auto;
}
.href_plan a {
    background-image: linear-gradient(90deg, #ff7bac, #fbb03b);
    color: #fff;
    border: none;
    line-height: 1.4;
    border-radius: 2rem;
}
.note {
    list-style: none;
}
.note li {
    position: relative;
    padding-left: 1.2rem;
    font-size: 0.9rem;
}
.note li::before {
    content: "※";
    position: absolute;
    left: 0;
}
.dashed {
    border-bottom: 1px dashed;
}
._small {
    font-size: smaller;
}
input, button, textarea, select {
    background-color: rgba(183, 0, 96, 0.1);
    padding: 0.75rem 1rem;
    font-size: 1.1rem;
    margin-bottom: 0.5rem;
}
#form_box {
    font-family: sans-serif;
}
#form_box .wpcf7 form.wpcf7-form ._form ._item {
    margin-bottom: 2rem;
}
#form_box .wpcf7 form.wpcf7-form ._form ._item ._head {
    margin-bottom: 0.5rem;
}
#form_box .wpcf7 form.wpcf7-form ._form ._item ._head label span._txt {
    font-weight: 600;
    color: #666;
}
#form_box .wpcf7 form.wpcf7-form ._form ._item ._head label span._required {
    margin-left: 0.5rem;
    color: var(--color-purple);
    font-size: 0.8rem;
}
#form_box .wpcf7 form.wpcf7-form ._form ._item ._body ._half {
    width: 100%;
}
#form_box .wpcf7 form.wpcf7-form ._form ._item._send {
    text-align: center;
    margin-top: 3rem;
}
#form_box .wpcf7 form.wpcf7-form ._form ._item._send input {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 1rem;
    line-height: 1;
    padding: 1rem 3rem;
    border: none;
    border-radius: 2rem;
    margin-inline: auto;
    background-color: var(--color-purple);
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.1rem;
    cursor: pointer;
}
#form_box .wpcf7 form.wpcf7-form .wpcf7-response-output {
    border: none;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    background-color: #009688;
    color: #fff;
    font-weight: 600;
    padding: 1rem 2rem;
    border-radius: 0.5rem;
}
#autozip {
    background-color: #009688 !important;
    padding: 0.75rem 0.75rem 0.75rem 1rem !important;
    border-radius: 0 !important;
    font-size: 1rem !important;
}
.display_pc {
    display: none;
}
/* loading
-------------------------------------------------------------------------------- */
#intro {
    position: fixed;
    inset: 0;
    clip-path: rect(0 100% 100% 0);
    background-color: var(--color-purple);
    background-image: var(--gradation-purple);
    transition-duration: 1.5s;
    transition-delay: 2s;
    transition-timing-function: cubic-bezier(0.87, 0.01, 0.19, 0.98);
    z-index: 200004;
}
#intro.loaded {
    clip-path: rect(0 100% 100% 100%);
}
#intro_logo {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 10rem;
    height: 5rem;
    transition-duration: 1.5s;
    clip-path: rect(0 0 100% 0);
}
.loaded #intro_logo {
    clip-path: rect(0 100% 100% 0);
}
/* header
-------------------------------------------------------------------------------- */
header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    height: 50px;
    background-color: rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    z-index: 3;
    transition: 1s;
}
header._deep {
    background-color: rgb(182 0 96 / 33%);
}
header.active {
    background-color: unset;
    border: none;
}
header .inner {
    width: 100%;
}
header .inner ._left {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row-reverse;
}
#header_index {
    position: relative;
    height: 50px;
    width: 50px;
    z-index: 3;
}
#header_index span {
    position: absolute;
    display: block;
    right: 18px;
    width: 16px;
    height: 1px;
    background-color: #fff;
    transform-origin: left;
    transition: transform 0.5s;
}
#header_index span:nth-child(1) {
    top: 21px;
}
#header_index span:nth-child(2) {
    top: 29px;
}
header.active #header_index span {
    background-color: #000;
}
header.active #header_index span:nth-child(1) {
    top: 19px;
    transform: rotate(30deg);
}
header.active #header_index span:nth-child(2) {
    top: 27px;
    transform: rotate(-30deg);
}
header .inner ._left ._logo a {
    display: block;
    padding: 10px 2rem;
}
header .inner ._left ._logo a img {
    height: 30px;
    filter: invert(1);
}
header .inner ._left nav {
    display: none;
}
header .inner ._right {
    display: none;
}
#header_menu {
    position: fixed;
    display: none;
    flex-direction: column;
    inset: 0;
    margin: auto;
    background-color: #fff;
    z-index: 2;
}
#header_menu ._txt {
    height: 70%;
    padding: 1rem 15% 3rem;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
}
#header_menu ._txt ._logo {
    width: 100%;
    order: 1;
}
#header_menu ._txt ._logo a {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    padding-bottom: 1rem;
}
#header_menu ._txt ._logo a img {
    height: 3rem;
}
#header_menu ._txt ._menu {
    width: 100%;
    order: 2;
    display: flex;
    justify-content: space-between;
}
#header_menu ._txt ._menu ._main {
    width: 50%;
}
#header_menu ._txt ._menu ._main ul li a {
    display: block;
    line-height: 1.4;
    padding-bottom: 0.75rem;
}
#header_menu ._txt ._menu ._main ul li a span {
    font-size: 1.2rem;
}
#header_menu ._txt ._menu ._main ul li a span.en {
    display: block;
    font-size: 0.75rem;
    color: var(--color-purple);
}
#header_menu ._txt ._menu ._sub {
    width: 50%;
}
#header_menu ._txt ._menu ._sub ul li a {
    display: block;
    font-size: 0.85rem;
    line-height: 1;
    margin-bottom: 1rem;
}
#header_menu ._txt ._notice {
    order: 4;
    width: 50%;
}
#header_menu ._txt ._notice ul li a {
    display: block;
    font-size: 0.75rem;
    line-height: 1;
    padding-bottom: 1rem;
}
#header_menu ._txt ._notice ul li:last-child a {
    padding-bottom: 0;
}
#header_menu ._txt ._sns {
    order: 3;
    width: 50%;
    display: flex;
    -moz-column-gap: 0.75rem;
    column-gap: 0.75rem;
}
#header_menu ._txt ._sns a {
    display: block;
}
#header_menu ._txt ._sns a img {
    filter: invert(1);
    height: 1.5rem;
}
#header_menu ._img {
    height: 30%;
    background-size: cover;
    background-position: center;
    display: grid;
    place-content: center;
}
#header_menu ._img ._inner ._head {
    margin-bottom: 1rem;
}
#header_menu ._img ._inner ._head h3 {
    font-size: 1.4rem;
    text-align: center;
    color: #fff;
}
#header_menu ._img ._inner ._body {
    display: flex;
    justify-content: center;
    -moz-column-gap: 1.5rem;
    column-gap: 1.5rem;
}
#header_menu ._img ._inner ._body .href a {
    display: block;
    width: 10rem;
    text-align: center;
    padding: 1rem;
    font-size: 1.2rem;
    background-image: var(--gradation-purple);
    color: #fff;
    border-radius: 0;
    border: none;
}
#header_menu ._img ._inner ._body .href._reserve a {
    letter-spacing: 0.25rem;
}
/* breadcrumbs
-------------------------------------------------------------------------------- */
.breadcrumbs {
    padding: 2rem 0;
    font-size: 0.8rem;
}
.breadcrumbs .inner>span {
    position: relative;
    padding-right: 2.5rem;
}
.breadcrumbs .inner>span::before {
    position: absolute;
    content: "";
    top: 50%;
    left: calc(100% - 2rem);
    right: 0.5rem;
    background-color: var(--color-purple);
    height: 0.25px;
}
.breadcrumbs .inner>span:first-child {
    padding-right: 2.15rem;
}
.breadcrumbs .inner>span:last-child::before {
    content: none;
}
.breadcrumbs .inner>span a {
    color: var(--color-purple);
}
/* footer
-------------------------------------------------------------------------------- */
footer {
    padding: 5rem 0 2rem;
    background-image: var(--gradation-purple);
    color: #fff;
}
footer a {
    color: #fff;
}
footer .inner {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 80%;
}
footer .inner ._logo {
    margin: 0 auto 2.5rem;
    width: 12rem;
}
footer .inner ._logo a {
    display: block;
}
footer .inner ._logo a img {
    filter: invert(1);
}
footer .inner ._location {
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 5rem 5rem;
}
footer .inner ._location ._address {
    font-size: 1.25rem;
    margin-bottom: 1rem;
}
footer .inner ._location ._fax {
    margin-bottom: 2.5rem;
}
footer .inner ._location ._tel a {
    font-size: 1.2rem;
    letter-spacing: 0.05rem;
}
footer .inner ._location ._map a {
    display: block;
    font-size: 0.9rem;
    text-align: center;
    padding: 0.25rem 2rem;
    border: 1px solid rgb(206, 141, 175);
    border-radius: 0.25rem;
}
footer .inner ._ex {
    display: none;
}
footer .inner ._menu_main {
    width: 45%;
}
footer .inner ._menu_main ul li a {
    display: block;
    margin-bottom: 1.5rem;
}
footer .inner ._menu_main ul li a ._img {
    display: none;
}
footer .inner ._menu_main ul li a ._txt {
    line-height: 1.2;
}
footer .inner ._menu_main ul li a ._txt span.jp {
    display: block;
    font-size: 1.2rem;
}
footer .inner ._menu_main ul li a ._txt span.en {
    font-size: 0.75rem;
    opacity: 0.8;
}
footer .inner ._menu_sub {
    width: 50%;
    margin-bottom: 2.5rem;
}
footer .inner ._menu_sub ul li a {
    display: block;
    font-size: 1rem;
    padding-bottom: 0.5rem;
}
footer .inner ._menu_notice {
    order: 7;
    width: 90%;
    margin-bottom: 7.5rem;
}
footer .inner ._menu_notice ul {
    display: flex;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    justify-content: center;
}
footer .inner ._menu_notice ul li a {
    display: block;
    color: inherit;
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.8);
    padding-bottom: 0.5rem;
}
footer .inner ._sns {
    order: 6;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    margin-bottom: 2.5rem;
}
footer .inner ._sns a img {
    height: 1.5rem;
}
footer .inner #copyright {
    width: 100%;
    text-align: center;
    order: 8;
    font-weight: 300;
}
#fixed_reserve {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 1;
}
#fixed_reserve a {
    display: block;
    writing-mode: vertical-rl;
    font-size: 0.85rem;
    color: #fff;
    padding: 1.35rem 0.4rem;
    background-image: var(--gradation-purple);
    background-image: linear-gradient(0deg, #ff7bac, #fbb03b);
    letter-spacing: 0.1rem;
}
#page_top {
    display: none;
}

/* home
-------------------------------------------------------------------------------- */
#home {
    background-color: #fffdf7;
}
#home_top {
    position: relative;
    padding: 0;
}
#home_top .swiper {
    aspect-ratio: 0.666;
    overflow: hidden;
}
#home_top .swiper .swiper-wrapper {
    height: 100%;
}
#home_top .swiper .swiper-wrapper .swiper-slide {
    height: auto;
}
#home_top .swiper .swiper-wrapper .swiper-slide ._inner {
    height: 100%;
}
#home_top .swiper .swiper-wrapper .swiper-slide ._inner img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#home_top .inner {
    position: absolute;
    inset: 0;
    margin: auto;
}
#home_top .inner ._copy {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 7.5%;
    margin: auto;
    width: auto;
    writing-mode: vertical-rl;
    text-align: center;
    font-size: 1.85rem;
    color: #fff;
    line-height: 1.4;
    z-index: 1;
}
#home_top .inner ._copy.appear span:nth-child(1) {
    transition-delay: 3.5s;
}
#home_top .inner ._copy.appear span:nth-child(2) {
    transition-delay: 3.625s;
}
#home_top .inner ._copy.appear span:nth-child(3) {
    transition-delay: 3.75s;
}
#home_top .inner ._copy.appear span:nth-child(4) {
    transition-delay: 3.875s;
}
#home_top .inner ._copy.appear span:nth-child(5) {
    transition-delay: 4s;
}
#home_top .inner ._copy.appear span:nth-child(6) {
    transition-delay: 4.125s;
}
#home_top .inner ._copy.appear span:nth-child(7) {
    transition-delay: 4.25s;
}
#home_top .inner ._copy.appear span:nth-child(8) {
    transition-delay: 4.375s;
}
#home_top .inner ._copy.appear span:nth-child(9) {
    transition-delay: 4.5s;
}
#home_top .inner ._copy.appear span:nth-child(10) {
    transition-delay: 4.625s;
}
#home_top .inner ._copy.appear span:nth-child(11) {
    transition-delay: 4.75s;
}
#home_top .inner ._copy.appear span:nth-child(12) {
    transition-delay: 4.875s;
}
#home_top .inner ._copy.appear span:nth-child(13) {
    transition-delay: 5s;
}
#home_top .inner ._copy.appear span:nth-child(14) {
    transition-delay: 5.125s;
}
#home_top .inner ._copy.appear span:nth-child(15) {
    transition-delay: 5.25s;
}
#home_top .inner ._copy.appear span:nth-child(16) {
    transition-delay: 5.375s;
}
#home_top .inner ._copy.appear span:nth-child(17) {
    transition-delay: 5.5s;
}
#home_top .inner ._copy.appear span:nth-child(18) {
    transition-delay: 5.625s;
}
#home_top .inner ._copy.appear span:nth-child(19) {
    transition-delay: 5.7s;
}
#home_top .inner ._copy.appear span:nth-child(20) {
    transition-delay: 5.875s;
}
#home_top .inner ._copy.appear span:nth-child(21) {
    transition-delay: 6s;
}
#home_top .inner ._copy.appear span:nth-child(22) {
    transition-delay: 6.125s;
}
#home_top .inner ._copy.appear span:nth-child(23) {
    transition-delay: 6.25s;
}
#home_top .inner ._copy.appear span:nth-child(24) {
    transition-delay: 6.375s;
}
#home_top .inner ._copy.appear span:nth-child(25) {
    transition-delay: 6.5s;
}
#home_top .inner ._copy.appear>span {
    clip-path: inset(0 0 100% 0);
}
#home_top .inner ._copy.appear.active>span {
    clip-path: inset(0 0 0 0);
}
#home_top .inner ._copy ._small {
    font-size: smaller;
}
.home_unit {
    display: flex;
    flex-wrap: wrap;
}
.home_unit ._title {
    order: 1;
    width: 20%;
}
.home_unit ._title h2 {
    writing-mode: vertical-rl;
    font-size: 2.15rem;
    margin-top: 1.75rem;
}
.home_unit ._title h2 span.jp {
    position: relative;
    display: block;
    line-height: 1;
}
.home_unit ._title h2 span.en {
    font-size: 1rem;
    color: #af9177;
}
.home_unit ._title h2 span::before {
    width: 1px;
    left: 50%;
    right: auto;
    height: 0rem;
    top: calc(100% + 1.5rem);
    background-color: rgba(0, 0, 0, 0.2);
    transition-delay: 0.5s;
}
.home_unit ._title h2 span.line.active::before {
    height: 5rem;
}
.home_unit ._title h2 span.appear>span {
    clip-path: inset(0 0 100% 0);
}
.home_unit ._title h2 span.appear.active>span {
    clip-path: inset(0 0 0 0);
}
.home_unit ._txt {
    order: 3;
    margin-bottom: 2rem;
    margin-right: 5%;
}
.home_unit ._txt br {
    /* display: none; */
}
.home_unit ._img {
    order: 2;
    position: relative;
    width: 80%;
    aspect-ratio: 1;
    margin-bottom: 3rem;
}
.home_unit ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.home_unit ._img .en {
    position: absolute;
    bottom: 0;
    line-height: 0.666;
    font-size: 2.5rem;
    font-weight: 300;
    color: #e2e2e2;
    opacity: 1;
}
.home_unit .href {
    order: 4;
}
#home_booking {
    background-color: #fff;
}
#booking {}
#booking form {
    box-shadow: none;
    padding: 3rem 0 2rem;
    max-width: 20rem;
    border-radius: 10px;
}
#home_about {
    background-image: url(../../assets/img/home_about_bg.jpg);
    background-size: cover;
    background-position: bottom right;
}
#home_about .inner {
    margin-left: 0;
}
#home_about .inner .home_unit {
    position: relative;
}
#home_about .inner .home_unit ._title {
    order: 2;
    margin-left: auto;
}
#home_about .inner .home_unit ._title h2 {
    font-size: 1.5rem;
    margin-top: 0;
}
#home_about .inner .home_unit ._title h2 span::before {
    right: 1.2rem;
    top: 10rem;
    height: 0;
}
#home_about .inner .home_unit ._title h2 span.appear>span {
    clip-path: inset(0 0 100% 0);
}
#home_about .inner .home_unit ._title h2 span.appear.active>span {
    clip-path: inset(0 0 0 0);
}
#home_about .inner .home_unit ._title h2 span.line.active::before {
    height: 3.75rem;
}
#home_about .inner .home_unit ._txt {
    margin-left: 5%;
    margin-right: auto;
    margin-bottom: 3.5rem;
    width: 100%;
    text-align: center;
}
#home_about .inner .home_unit ._txt br {
    display: block;
}
#home_about .inner .home_unit ._img {
    order: 1;
    width: 72%;
    margin-bottom: 5rem;
}
#home_about .inner .home_unit>.en {
    position: absolute;
    writing-mode: vertical-rl;
    left: 0;
    bottom: -3rem;
    line-height: 0.6;
    opacity: 0.1;
    font-size: 3.5rem;
}
#home_rooms {
    padding: 12.5rem 0 0;
    background-image: url(../../assets/img/home_rooms_flower.png), url(../../assets/img/home_rooms_bg.jpg);
    background-size: 6rem, cover;
    background-position: top 2rem left, top right;
    background-repeat: no-repeat, no-repeat;
}
#home_rooms .inner {
    margin-right: 0;
    width: 90%;
}
#home_rooms .inner .home_unit {
    padding-bottom: 5rem;
}
#home_rooms .inner .home_unit ._img .en {
    left: -5rem;
}
#home_rooms ._body.sticky ._item {
    position: sticky;
    top: 0;
    height: 100svh;
    background-size: cover;
    background-position: center;
    animation: swing_bg 50000ms infinite;
    overflow: hidden;
}
@keyframes swing_bg {
    0% {
        background-position: left 0% center;
    }
    50% {
        background-position: left 100% center;
    }
    to {
        background-position: left 0% center;
    }
}


#home_rooms ._body.sticky ._item ._box {
    padding: calc(50px + 2.5rem) 0 2rem 5%;
    background-image: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0));
}
#home_rooms ._body.sticky ._item ._box ._title {
    color: #fff;
    margin-bottom: 0.5rem;
}
#home_rooms ._body.sticky ._item ._box ._title h3 span.jp {
    display: block;
    font-size: 1.75rem;
    line-height: 1.1;
}
#home_rooms ._body.sticky ._item ._box ._title h3 span.en {
    color: var(--color-purple-light);
    letter-spacing: 0.05rem;
}
#home_rooms ._body.sticky ._item ._box ._txt {
    color: #fff;
    margin-bottom: 2rem;
}
#home_rooms ._body.sticky ._item ._box .href a {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.5);
    background-color: rgba(0,0,0,0.1);
    margin-left: 0;
}
#home_hot_spring {
    background-image: url(../../assets/img/home_onsen_flower.png), url(../../assets/img/home_hot_spring_bg.jpg);
    background-position: top 1rem right, center;
    background-repeat: no-repeat, no-repeat;
    background-size: 6rem, cover;
}
#home_hot_spring .inner:nth-child(1) {
    margin-left: 0;
}
#home_hot_spring .inner:nth-child(2) {
    margin-left: auto;
}
#home_hot_spring .inner .home_unit._reverse ._title {
    order: 2;
}
#home_hot_spring .inner .home_unit._reverse ._title h2 {
    margin-left: auto;
}
#home_hot_spring .inner .home_unit._reverse ._txt {
    margin-left: 5%;
    margin-bottom: 3rem;
    margin-right: 0;
}
#home_hot_spring .inner .home_unit._reverse ._img {
    order: 1;
}
#home_hot_spring .inner .home_unit._reverse ._img .en {
    right: -6rem;
    opacity: 0.777;
}
#home_hot_spring .inner ._body ._box ._item {
    margin-bottom: 2.5rem;
}
#home_hot_spring .inner ._body ._box ._item ._img {
    aspect-ratio: 1.5;
    overflow: hidden;
    margin-bottom: 1rem;
}
#home_hot_spring .inner ._body ._box ._item ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#home_hot_spring .inner ._body ._box ._item ._txt h3 span.en {
    display: block;
    color: var(--color-purple);
    line-height: 1;
    font-size: 0.9rem;
}
#home_hot_spring .inner ._body ._box ._item ._txt h3 span.jp {
    font-size: 1.4rem;
}
#home_cuisine {
    background-image: url(../../assets/img/home_dish_flower.png), url(../../assets/img/home_dish_bg.jpg);
    background-position: top 2rem left -2rem, center;
    background-size: 7rem, cover;
    background-repeat: no-repeat, no-repeat;
}
#home_cuisine .inner:nth-child(1) {
    margin-right: 0;
}
#home_cuisine .inner .home_unit._reverse ._img .en {
    left: -5rem;
}
#home_cuisine .inner ._body ._box ._item {
    margin-bottom: 2.5rem;
}
#home_cuisine .inner ._body ._box ._item ._img {
    aspect-ratio: 1.5;
    overflow: hidden;
    margin-bottom: 1rem;
}
#home_cuisine .inner ._body ._box ._item ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#home_cuisine .inner ._body ._box ._item ._txt h3 {
    line-height: 1.4;
}
#home_cuisine .inner ._body ._box ._item ._txt h3 span.jp {
    font-size: 1.4rem;
}
#home_cuisine .inner ._body ._box ._item ._desc {
    font-size: 0.9rem;
}
#home_plan {
    background-image: url(../../assets/img/home_plan_flower.png);
    background-position: top 5rem right -2rem;
    background-size: 18rem;
    background-repeat: no-repeat;
}
#home_plan .inner ._head ._title {
    margin-bottom: 4rem;
}
#home_plan .inner ._head ._title h2 span.jp {
    display: block;
    font-size: 2rem;
    line-height: 1.2;
}
#home_plan .inner ._head ._title h2 span.en {
    font-size: 1rem;
    color: var(--color-purple);
}
#home_plan .inner ._body ._box ._item {
    margin-bottom: 3.5rem;
}
#home_plan .inner ._body ._box ._item ._img {
    aspect-ratio: 1.5;
    overflow: hidden;
    margin-bottom: 1rem;
}
#home_plan .inner ._body ._box ._item ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#home_plan .inner ._body ._box ._item ._txt {
    margin-bottom: 1.5rem;
}
#home_plan .inner ._body>.href {
    margin-bottom: 3.5rem;
}
#home_plan .inner ._body>.href a {
    font-size: 1.25rem;
    padding: 1rem 3rem;
}
#home_plan .inner ._body #booking._plan {
    /* height: 120vw; */
    /* background-color: #eee; */
}
#home_scenery.hr {
    padding: 0;
    height: 120vw;
}
#home_relax {
    padding: 20rem 0 5rem;
    background-image: url(../../assets/img/home_relax_flower.png), url(../../assets/img/home_relax_bg.jpg);
    background-position: top 6rem left 50%, center;
    background-size: 9rem, cover;
    background-repeat: no-repeat, no-repeat;
}
#home_relax .inner {
    margin-right: 0;
}
#home_relax .inner .home_unit ._title {
    width: 100%;
    margin-bottom: 2rem;
}
#home_relax .inner .home_unit ._title h2 {
    writing-mode: initial;
    font-size: 1.75rem;
    line-height: 1;
    overflow: hidden;
    margin-right: 5%;
}
#home_relax .inner .home_unit ._title h2 span.jp.appear.line::before {
    height: 1px;
    left: calc(100% + 1rem);
    right: 0;
    width: auto;
    top: 50%;
}
#home_relax .inner .home_unit ._title h2 span.jp.appear>span {
    clip-path: inset(0 100% 0 0);
}
#home_relax .inner .home_unit ._title h2 span.jp.appear.active>span {
    clip-path: inset(0 0 0 0);
}
#home_relax .inner .home_unit ._title h2 span.jp.appear.line.active::before {
    right: -70%;
}
#home_relax .inner .home_unit ._img {
    width: 100%;
    aspect-ratio: 1.5;
    overflow: hidden;
}
#home_relax .inner .home_unit ._img .en {
    font-size: 2rem;
}
#home_relax .inner>.en {
    display: none;
}
#home_news {
    background-image: url(../../assets/img/home_news_flower.png);
    background-position: top 2rem right 2.5rem;
    background-size: 5.5rem;
    background-repeat: no-repeat;
}
#home_news .inner ._head {
    margin-bottom: 3rem;
}
#home_news .inner ._head ._title h2 span.jp.appear {
    display: block;
    font-size: 1.75rem;
    line-height: 1.2;
}
#home_news .inner ._head ._title h2 span.en {
    font-size: 1rem;
    color: var(--color-purple);
}
#home_news .inner ._head .href {
    display: none;
}
#home_news .inner ._body ._box ._item {
    border-bottom: 1px solid #eee;
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    display: flex;
    justify-content: stretch;
}
#home_news .inner ._body ._box ._item:last-child {
    border: none;
    margin-bottom: 1.5rem;
}
#home_news .inner ._body ._box ._item ._txt {
    width: 70%;
    font-size: 0.8rem;
}
#home_news .inner ._body ._box ._item ._txt ._date_type {
    display: flex;
}
#home_news .inner ._body ._box ._item ._txt ._date_type ._type {
    position: relative;
    padding-left: 3.5rem;
}
#home_news .inner ._body ._box ._item ._txt ._date_type ._type::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0.5rem;
    width: 2.5rem;
    height: 1px;
    background-color: #dedede;
}
#home_news .inner ._body ._box ._item ._txt ._title h3 {
    font-size: 0.9rem;
}
#home_news .inner ._body ._box ._item ._img {
    width: 30%;
    margin-left: 1rem;
    aspect-ratio: 1.5;
    overflow: hidden;
    background-color: #eee;
}
#home_news .inner ._body ._box ._item ._img._noimg {
    opacity: 0.25;
}
#home_news .inner ._body ._box ._item ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#home_instagram {
    padding: 5rem 0 0;
    background-image: url(../../assets/img/home_instagram_flower.png);
    background-position: top left 1.5rem;
    background-size: 15rem;
    background-repeat: no-repeat;
}
#home_instagram .inner ._head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
}
#home_instagram .inner ._head ._title h2 span.appear.en {
    font-size: 2rem;
}
#home_instagram .inner ._head .href {
    margin: 0;
}
#home_instagram ._body ._box {
    height: 61.8vw;
}
#home_instagram ._body ._box .swiper {
    height: 100%;
}
#home_instagram ._body ._box .swiper .swiper-wrapper .swiper-slide ._inner {
    height: 100%;
}
#home_instagram ._body ._box .swiper .swiper-wrapper .swiper-slide ._inner a {
    display: block;
    height: 100%;
}
#home_instagram ._body ._box .swiper .swiper-wrapper .swiper-slide ._inner a img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#home_access {
    background-color: #fff;
    padding: 7.5rem 0 3.5rem;
    background-image: url(../../assets/img/home_access_flower.png);
    background-position: top 3rem right 4rem;
    background-size: 6rem;
    background-repeat: no-repeat;
}
#home_access .inner .home_unit._reverse ._title {
    width: 100%;
    margin-bottom: 2rem;
}
#home_access .inner .home_unit._reverse ._title h2 {
    writing-mode: unset;
    margin-top: 0;
    line-height: 0.6;
}
#home_access .inner .home_unit._reverse ._title h2 span.jp.appear.line {
    display: block;
    font-size: 1.75rem;
    line-height: 1;
}
#home_access .inner .home_unit._reverse ._title h2 span.jp.appear.line::before {
    content: none;
}
#home_access .inner .home_unit._reverse ._title h2 span.jp.appear>span {
    clip-path: inset(0 100% 0 0);
}
#home_access .inner .home_unit._reverse ._title h2 span.jp.appear.active>span {
    clip-path: inset(0 0 0 0);
}
#home_access .inner .home_unit._reverse ._title h2 span.en {
    font-size: 1rem;
    color: var(--color-purple);
}
#home_access .inner .home_unit._reverse ._txt {
    margin-inline: auto;
}
#home_access .inner .home_unit._reverse ._txt ._name {
    margin-bottom: 1rem;
}
#home_access .inner .home_unit._reverse ._txt ._name h3 {
    font-size: 1.35rem;
    text-align: center;
}
#home_access .inner .home_unit._reverse ._txt ._address {
    margin-bottom: 0.5rem;
}
#home_access .inner .home_unit._reverse ._txt ._contact {
    margin-bottom: 2.5rem;
}
#home_access .inner .home_unit._reverse ._img {
    width: 100%;
    aspect-ratio: 1.25;
    overflow: hidden;
}
#home_access .inner .home_unit._reverse ._img iframe {
    width: 100%;
    height: 100%;
}
/* about
-------------------------------------------------------------------------------- */
#about .section_body .inner {
    margin-left: 0;
}
#about .section_body .inner ._item {
    margin-bottom: 5rem;
}
#about .section_body .inner ._item ._img {
    margin-bottom: 2rem;
}
#about .section_body .inner ._item ._txt {
    margin-left: 10%;
}
#about .section_body .inner ._item ._txt ._title {
    margin-bottom: 1rem;
    line-height: 1.25;
}
#about .section_body .inner ._item ._txt ._title h2 span.line {
    font-size: 1.5rem;
}
#about .section_body .inner ._item ._txt ._title h2 span.line::before {
    content: none;
}
#about .section_body .inner ._item ._txt ._title span.en {
    color: var(--color-purple);
    font-size: 0.75rem;
}
#about .section_body .inner ._item ._txt ._desc {
    font-size: 0.9rem;
}
#about .section_body .inner ._item ._txt ._desc br {
    display: none;
}
#about .section_body .inner:nth-child(2n) {
    margin-left: auto;
    margin-right: 0;
}
#about .section_body .inner:nth-child(2n) ._item ._txt {
    margin-left: auto;
    margin-right: 5%;
}
#voice {
    background-size: cover;
    background-position: bottom;
    color: #fff;
}
#voice .inner ._title {
    margin-bottom: 4rem;
}
#voice .inner ._title h2 span.jp.line {
    font-size: 1.666rem;
}
#voice .inner ._title h2 span.jp.line::before {
    background-color: rgba(255, 255, 255, 0.5);
}
#voice .inner ._title h2 span.jp.line.active::before {
    /* right: calc(100% - 90vw); */
}
#voice .inner ._body ._item {
    padding: 2rem 2rem 1.5rem;
    background-color: #fffdf7;
    margin-bottom: 1rem;
}
#voice .inner ._body ._item ._rate {
    margin-bottom: 1.75rem;
}
#voice .inner ._body ._item ._rate {
    --max-rating: 5;
    --percent: calc(var(--rating, 0) / var(--max-rating) * 100%);
}
._rate[data-rating="5"] {
    --rating: 5;
}
._rate[data-rating="4.5"] {
    --rating: 4.5;
}
._rate[data-rating="4"] {
    --rating: 4;
}
._rate[data-rating="3.5"] {
    --rating: 3.5;
}
._rate[data-rating="3"] {
    --rating: 3;
}
._rate[data-rating="2.5"] {
    --rating: 2.5;
}
._rate[data-rating="2"] {
    --rating: 2;
}
._rate[data-rating="1.5"] {
    --rating: 1.5;
}
._rate[data-rating="1"] {
    --rating: 1;
}
._rate[data-rating="0.5"] {
    --rating: 0.5;
}
._rate[data-rating="0"] {
    --rating: 0;
}
._rate span img {
    clip-path: inset(0 calc(100% - var(--percent)) 0 0);
}
#voice .inner ._body ._item ._rate span.line img {
    width: 8rem;
}
#voice .inner ._body ._item ._rate span.line::before {
    background-color: #ddd;
    right: 1rem;
    left: calc(100% + 0.75rem);
}
#voice .inner ._body ._item ._rate span.line.active::before {
    right: calc(12rem - 90vw);
    top: 50%;
}
#voice .inner ._body ._item ._txt {
    font-size: 0.9rem;
    color: #333;
    margin-bottom: 1rem;
}
#voice .inner ._body ._item ._date {
    text-align: right;
}
#voice .inner ._body ._item ._date span.line {
    color: #999;
    display: inline-block;
}
#voice .inner ._body ._item ._date span.line::before {
    background-color: #ddd;
    right: calc(100% + 1rem);
    left: 1rem;
    top: 50%;
}
#voice .inner ._body ._item ._date span.line.active::before {
    left: calc(4rem - 90vw + 100%);
}
#about ._media .inner ._title {
    margin-bottom: 4rem;
    line-height: 1.5;
}
#about ._media .inner ._title h2 span.jp.line {
    font-size: 1.666rem;
}
#about ._media .inner ._title h2 span.jp.line::before {
    background-color: rgba(0, 0, 0, 0.2);
}
#about ._media .inner ._title h2 span.jp.line.active::before {
    /* right: calc(100% - 90vw); */
}
#about ._media .inner ._title h2 span.en {
    color: var(--color-purple);
}
#about ._media .inner ._body ._item {
    background-color: #fff;
    margin-bottom: 1rem;
    padding: 1.5rem;
    border: 1px solid #eee;
    border-radius: 0.5rem;
}
#about ._media .inner ._body ._item ._img {
    margin-bottom: 1.5rem;
}
#about ._media .inner ._body ._item ._img img {
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
    height: 100%;
}
#about ._media .inner ._body ._item .href {
    margin-bottom: 1rem;
}
#about ._media .inner ._body ._item .href a {
    font-size: 1.25rem;
}
#about ._media .inner ._body ._item .href a._non {
    pointer-events: none;
}
#about ._media .inner ._body ._item ._txt {
    margin-inline: auto;
    text-align: center;
}
/* rooms
-------------------------------------------------------------------------------- */
#rooms .section_head .inner ._txt {
    text-align: left;
}
#rooms .section_body .inner {
    width: 100%;
}
#rooms .section_body .inner ._box ._item {
    position: sticky;
    top: 0;
}
#rooms .section_body .inner ._box ._item ._img {
    aspect-ratio: 0.666;
    overflow: hidden;
}
#rooms .section_body .inner ._box ._item ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
    transition: 1s;
}
#rooms .section_body .inner ._box ._item ._txt {
    position: absolute;
    top: auto;
    bottom: 0;
    right: 0;
    left: auto;
    padding: 3rem 2rem;
    writing-mode: vertical-rl;
    background-color: rgb(255 251 252 / 90%);
}
#rooms .section_body .inner ._box ._item ._txt ._title {
    margin-left: 0.5rem;
}
#rooms .section_body .inner ._box ._item ._txt ._title h2 span.en {
    color: var(--color-purple);
    display: block;
}
#rooms .section_body .inner ._box ._item ._txt ._title h2 span.jp {
    font-size: 2rem;
}
/* wing
-------------------------------------------------------------------------------- */
.wing .section_head {
    padding-bottom: 2.5rem;
}
.wing .section_head .inner ._txt {
    text-align: left;
}
.wing .section_head .inner ._txt br {
    display: none;
}
.wing .section_body .inner ._anchor {
    margin-bottom: 3.5rem;
}
.wing .section_body .inner ._anchor ul li a {
    display: block;
    font-size: 1rem;
    padding: 0.25rem;
    line-height: 1.7;
    border: 1px solid rgba(0, 0, 0, 0.5);
    border-radius: 2rem;
    text-align: center;
    width: 14rem;
    margin: 0 auto 0.75rem;
}
.wing .section_body .inner ._box ._type {
    margin-bottom: 5rem;
}
.wing .section_body .inner ._box ._type ._type_head {
    margin-bottom: 2.5rem;
    line-height: 1.4;
}
.wing .section_body .inner ._box ._type ._type_head h2 span.line {
    font-size: 1.25rem;
}
.wing .section_body .inner ._box ._type ._type_head span.en {
    color: var(--color-purple);
    font-size: 0.8rem;
}
.wing .section_body .inner ._box ._type ._type_body ._item {
    margin-bottom: 2.5rem;
    display: flex;
    justify-content: space-between;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._img {
    width: 43.5%;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._img a {
    display: block;
    aspect-ratio: 1.25;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._img a img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt {
    width: 50%;
    font-size: 0.75rem;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt ._bath {
    margin-bottom: 0.5rem;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt ._bath::before {
    content: " − ";
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt ._bath::after {
    content: " − ";
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title {
    margin-bottom: 0.75rem;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title h2 {
    line-height: 1;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title h2 span.jp {
    font-size: 0.8rem;
    display: block;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title h2 span.en {
    font-size: 0.72rem;
    color: var(--color-purple);
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt ._size {
    font-size: 0.666rem;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt ._desc {
    font-size: 0.666rem;
    margin-bottom: 0.5rem;
}
.wing .section_body .inner ._box ._type ._type_body ._item ._txt .href a {
    font-size: 0.666rem;
    padding: 0.25rem 1.75rem 0.1rem;
    margin-right: 0;
}
/* single-wing
-------------------------------------------------------------------------------- */
.room #page_head ._txt ._head ._title_sub ._bath::before {
    content: " − ";
}
.room #page_head ._txt ._head ._title_sub ._bath::after {
    content: " − ";
}
.room .section_body ._img {
    margin-bottom: 5rem;
}
.room .section_body ._img ._item {
    position: sticky;
    top: 0;
}
.room .section_body ._img ._item img,
.room .section_body ._img ._item video {
    width: 100%;
}
.room .section_body>._txt {
    font-size: 1.05rem;
    font-family: sans-serif;
}
.room .section_body ._txt ._group {
    margin-bottom: 5rem;
}
.room .section_body ._txt ._group ._box {
    margin-bottom: 2.5rem;
}
.room .section_body ._txt ._group ._box ._head {
    margin-bottom: 0.5rem;
}
.room .section_body ._txt ._group ._box ._head h3 {
    font-size: 1.2rem;
    font-weight: bold;
    color: var(--color-purple);
}
.room .section_body ._txt ._group ._price ._box ._body table {
    border-collapse: collapse;
    width: 100%;
}
.room .section_body ._txt ._group ._price ._box ._body table tr th,
.room .section_body ._txt ._group ._price ._box ._body table tr td {
    border-bottom: 1px solid #ccc;
    padding: 0.5rem 1rem;
}
.room .section_body ._txt ._group ._box ._body ._item {
    margin-bottom: 2.5rem;
}
.room .section_body ._txt ._group ._group_title {
    text-align: center;
    margin-bottom: 2.5rem;
}
.room .section_body ._txt ._group ._group_title span {
    position: relative;
    font-size: 1.2rem;
    font-weight: 600;
    color: #555;
}
.room .section_body ._txt ._group ._group_title span::before,
.room .section_body ._txt ._group ._group_title span::after {
    position: absolute;
    content: "";
    top: 50%;
    height: 1px;
    background-color: #ccc;
}
.room .section_body ._txt ._group ._group_title span::before {
    left: calc(50% - 45vw);
    right: calc(100% + 1rem);
}
.room .section_body ._txt ._group ._group_title span::after {
    right: calc(50% - 45vw);
    left: calc(100% + 1rem);
}
.room .section_body ._txt ._group ._group_body ._box ._body ._item._movie {
    border-radius: 0.5rem;
    overflow: hidden;
}
.room .section_body ._txt ._group ._group_body ._box ._body ._item._movie video {
    width: 100%;
}
.room .section_body ._txt ._plan .href {
    margin-bottom: 1rem;
}
.room .section_body ._txt ._plan .href.href_plan a {
    font-size: 0.9rem;
    font-family: serif;
    line-height: 1.5;
    margin-left: 0;
}
.room ._other {
    padding-top: 0;
}
.room ._other .inner ._head {
    margin-bottom: 2.5rem;
}
.room ._other .inner ._head h3 {
    text-align: center;
}
.room ._other .inner ._head h3 span.jp {
    display: block;
    font-size: 1.5rem;
}
.room ._other .inner ._head h3 span.en {
    color: var(--color-purple);
}
.room ._other .inner ._body ._item {
    margin-bottom: 3rem;
}
.room ._other .inner ._body ._item ._img {
    margin-bottom: 1rem;
}
.room ._other .inner ._body ._item ._txt ._title {
    margin-bottom: 0.25rem;
}
.room ._other .inner ._body ._item ._txt ._title h2 {
    line-height: 1.5;
}
.room ._other .inner ._body ._item ._txt ._title h2 span.jp {
    display: block;
    font-size: 1.25rem;
}
.room ._other .inner ._body ._item ._txt ._title h2 span.en {
    color: var(--color-purple);
}
/* hot_spring
-------------------------------------------------------------------------------- */
#hot_spring .section_head ._txt {
    text-align: left;
}
#hot_spring .section_body ._item ._img {
    aspect-ratio: 1.5;
    overflow: hidden;
}
#hot_spring .section_body ._item ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
    transform: scale(1.1);
}
#hot_spring .section_body ._item ._img img.active {
    transform: scale(1);
}
#hot_spring .section_body ._item ._txt {
    position: relative;
    min-height: 66.6vw;
    overflow: hidden;
    color: #fff;
    padding: 3rem 5%;
    background-color: #000;
    background-image: linear-gradient(45deg, black, transparent);
}
#hot_spring .section_body ._item ._txt ._bg {
    position: absolute;
    inset: 0;
}
#hot_spring .section_body ._item ._txt ._bg img {
    /* transform: scale(1); */
    transform-origin: center;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#hot_spring .section_body ._item ._txt ._bg img.active {
    transform: scale(1.2);
    opacity: 0.6;
}
#hot_spring .section_body ._item ._txt ._inner ._title {
    margin-bottom: 1.5rem;
}
#hot_spring .section_body ._item ._txt ._inner ._title h2 {
    line-height: 1;
}
#hot_spring .section_body ._item ._txt ._inner ._title h2 span.line {
    font-size: 1.35rem;
}
#hot_spring .section_body ._item ._txt ._inner ._title span.en {
    position: relative;
    font-size: 0.75rem;
}
#hot_spring .section_body ._item ._txt ._inner ._desc {
    position: relative;
    font-size: 0.85rem;
    margin-bottom: 1.5rem;
}
#hot_spring .section_body ._item ._txt ._inner ._note ul.note li {
    font-size: 0.75rem;
}
/* facilities
-------------------------------------------------------------------------------- */
#facilities .section_head {
    padding: 5rem 0;
}
#facilities .section_head ._txt {
    text-align: left;
}
#facilities .section_head ._txt br {
    display: none;
}
#facilities .section_body ._item {
    position: relative;
    height: 87.5vw;
    overflow: hidden;
    margin-bottom: 0.5rem;
    padding: 2.5rem 0;
}
#facilities .section_body ._item ._img {
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: #000;
    /* display: none; */
}
#facilities .section_body ._item ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: left bottom;
    object-position: left bottom;
    width: 120%;
    height: 120%;
    opacity: 0.5;
}
#facilities .section_body ._item .inner {
    height: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    color: #fff;
}
#facilities .section_body ._item .inner ._txt ._title {
    margin-bottom: 2rem;
    line-height: 1.4;
}
#facilities .section_body ._item .inner ._txt ._title h2 span.en {
    font-size: 1.75rem;
}
#facilities .section_body ._item .inner ._txt ._title span.jp {
    margin-left: 3.75rem;
}
#facilities .section_body ._item .inner ._txt ._desc {
    margin-left: 2rem;
}
#facilities .section_body ._item .inner .href {
    position: relative;
    margin-right: 0;
    z-index: 1;
}
#facilities .section_body ._item .inner .href a {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.5);
    padding: 0.4rem 2.5rem 0.375rem;
}
/* lobby
-------------------------------------------------------------------------------- */
#lobby .section_body._lobby .inner {
    width: 100%;
}
#lobby .section_body._lobby .inner ._item {
    position: relative;
    margin-bottom: 7.5rem;
}
#lobby .section_body._lobby .inner ._item:last-child {
    margin-bottom: 0;
}
#lobby .section_body._lobby .inner ._item ._img {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 4rem), calc(100% - 20rem) calc(100% - 4rem), calc(100% - 20rem) 100%, 0 100%);
}
#lobby .section_body._lobby .inner ._item ._txt {
    position: absolute;
    width: auto;
    top: calc(100% - 3.5rem);
    right: auto;
    left: 9rem;
    padding: 1rem 2rem 1rem 2rem;
}
#lobby .section_body._lobby .inner ._item ._txt ._title {
    margin-bottom: 0.5rem;
}
#lobby .section_body._lobby .inner ._item ._txt ._title h2 span.jp {
    font-size: 1.5rem;
}
#lobby .section_body._lobby .inner ._item ._txt ._title h2 span.en {
    color: var(--color-purple);
    margin-left: 0.5rem;
}
#lobby .section_body._lobby .inner ._item ._txt ._desc {
    font-size: 0.9rem;
}
#lobby .section_body._box {
    padding: 5rem 0;
}
#lobby .section_body._box .inner ._box ._item {
    margin-bottom: 3.5rem;
}
#lobby .section_body._box .inner ._box ._item ._img {
    margin-bottom: 1rem;
}
#lobby .section_body._box .inner ._box ._item ._txt {
    padding: 0 0.5rem 0 1rem;
}
#lobby .section_body._box .inner ._box ._item ._txt ._title {
    margin-bottom: 0.25rem;
}
#lobby .section_body._box .inner ._box ._item ._txt ._title h3 span.jp {
    font-size: 1.25rem;
}
#lobby .section_body._box .inner ._box ._item ._txt ._title h3 span.en {
    margin-left: 1rem;
    font-size: 0.9rem;
    color: var(--color-purple);
}
#lobby .section_body._box .inner ._box ._item ._txt ._desc {
    font-size: 0.9rem;
    line-height: 1.6;
}
#lobby .section_body.hr {
    aspect-ratio: 1;
    padding: 2rem 0;
}
#lobby .section_body.hr ._bg {
    position: relative;
    z-index: -1;
}
#lobby .section_body.hr ._inner {
    width: 90%;
    height: 100%;
    margin-inline: auto;
}
#lobby .section_body.hr ._inner ._box {
    height: 100%;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    text-align: right;
}
#lobby .section_body.hr ._inner ._box ._head {
    margin-bottom: 0.5rem;
}
#lobby .section_body.hr ._inner ._box ._head h2 {
    line-height: 1;
}
#lobby .section_body.hr ._inner ._box ._head span.en {
    font-size: 1.5rem;
}
#lobby .section_body.hr ._inner ._box ._body {
    font-size: 0.7rem;
}
/* salon
-------------------------------------------------------------------------------- */
#salon .section_body .inner ._index {
    margin-bottom: 5rem;
}
#salon .section_body .inner ._index ._head {
    text-align: center;
    line-height: 1.25;
    margin-bottom: 2rem;
}
#salon .section_body .inner ._index ._head span.jp {
    display: block;
    font-size: 1.5rem;
}
#salon .section_body .inner ._index ._head span.en {
    color: var(--color-purple);
    font-size: 0.9rem;
}
#salon .section_body .inner ._index ._body {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    -moz-column-gap: 0.5rem;
    column-gap: 0.5rem;
    row-gap: 0.5rem;
}
#salon .section_body .inner ._index ._body .href {
    margin: 0;
}
#salon .section_body .inner ._index ._body .href a {
    width: 12rem;
    text-align: center;
    padding: 0.4rem;
}
#salon .section_body .inner ._menu .menu_item {
    margin-bottom: 5rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_head {
    margin-bottom: 2.5rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_head ._title {
    margin-bottom: 1rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_head ._title h2 {
    line-height: 1.4;
}
#salon .section_body .inner ._menu .menu_item .menu_item_head ._title h2 span.line {
    font-size: 1.5rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_head ._title h2 span.line::before {
    content: none;
}
#salon .section_body .inner ._menu .menu_item .menu_item_head ._title h2 span.en {
    color: var(--color-purple);
}
#salon .section_body .inner ._menu .menu_item .menu_item_head ._desc {
    font-size: 0.9rem;
    margin-bottom: 1rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_head ._note ul.note li {
    font-size: 0.8rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course {
    margin-bottom: 2.5rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course._bg {
    position: relative;
    padding: 2.5rem 0;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course._bg::before {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: -5.55%;
    right: -5.55%;
    margin: auto;
    background-color: var(--color-purple-light);
    background-blend-mode: color-burn;
    z-index: -1;
    opacity: 0.15;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head {
    display: flex;
    flex-wrap: wrap;
    /* align-items: center; */
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    margin-bottom: 1rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._order {
    background-image: var(--gradation-purple);
    color: #fff;
    display: grid;
    place-content: center;
    border-radius: 1.5rem;
    width: 3rem;
    height: 3rem;
    font-size: 1.75rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._name {
    margin-bottom: 0.5rem;
    flex: 1;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._name h3.line {
    line-height: 1.25;
    padding-bottom: 0.5rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._name h3.line::before {
    bottom: 0;
    top: auto;
    left: 0;
    right: 100%;
    background-color: var(--color-purple);
    height: 0.5px;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._name h3.line.active::before {
    right: calc(100% + 4rem - 90vw);
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._name h3.line span.jp {
    font-size: 1.25rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._name h3.line span.en {
    color: var(--color-purple);
    font-size: 0.9rem;
    display: block;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._price {
    width: 9rem;
    width: 100%;
    text-align: right;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._price span._amount {
    font-size: 1.25rem;
    font-weight: 400;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._price span._taxin {
    font-size: 0.75rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._body {
    margin-left: 4rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._body ._img {
    margin-bottom: 1rem;
}
#salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._body ._desc {
    font-size: 0.9rem;
}
#salon .section_body .inner>._note {
    background-color: #fff;
    border-radius: 0.5rem;
    padding: 2.5rem 1.5rem;
}
#salon .section_body .inner>._note ._head {
    margin-bottom: 2rem;
}
#salon .section_body .inner>._note ._head h3 {
    text-align: center;
    line-height: 1.4;
}
#salon .section_body .inner>._note ._head h3 span.jp {
    display: block;
    font-size: 1.1rem;
}
#salon .section_body .inner>._note ._head h3 span.en {
    color: var(--color-purple);
    font-size: 0.8rem;
}
#salon .section_body .inner>._note ._body ul.note {
    margin-bottom: 1rem;
}
#salon .section_body .inner>._note ._body ul.note li {
    font-size: 0.8rem;
}
/* hot_stone_spa
-------------------------------------------------------------------------------- */
#hot_stone_spa .section_head ._txt {
    text-align: left;
}
#hot_stone_spa .section_head ._txt br {
    display: none;
}
#hot_stone_spa .section_body {
    display: flex;
    flex-direction: column-reverse;
}
#hot_stone_spa .section_body ._img .swiper {
    aspect-ratio: 1.5;
    overflow: hidden;
}
#hot_stone_spa .section_body ._img .swiper .swiper-wrapper {
    transition-timing-function: ease-in-out;
}
#hot_stone_spa .section_body ._img .swiper .swiper-wrapper .swiper-slide ._inner {
    transition-delay: 1.5s;
    transition-duration: 1.5s;
    height: 100%;
    clip-path: polygon(-100% 0%, -50% 0%, 0% 100%, -50% 100%);
    overflow: hidden;
}
#hot_stone_spa .section_body ._img .swiper .swiper-wrapper .swiper-slide-active ._inner {
    transition-delay: 0s;
    clip-path: polygon(-50% 0%, 100% 0%, 150% 100%, 0% 100%);
}
#hot_stone_spa .section_body ._img .swiper .swiper-wrapper .swiper-slide ._inner img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#hot_stone_spa .section_body ._img .swiper .swiper-pagination {
    bottom: auto;
    top: 0.25rem;
    right: 0.25rem;
    left: auto;
    width: auto;
}
#hot_stone_spa .section_body ._img .swiper .swiper-pagination .swiper-pagination-bullet {
    background-color: #fff;
    margin: 0 0.33rem;
    border-radius: 0;
    width: 0.75rem;
    height: 0.75rem;
    opacity: 1;
}
#hot_stone_spa .section_body ._img .swiper .swiper-pagination .swiper-pagination-bullet-active {
    background-color: var(--color-purple-light);
}
#hot_stone_spa .section_body ._txt .inner ._box {
    margin-bottom: 5rem;
}
#hot_stone_spa .section_body ._txt .inner ._box ._head {
    margin-bottom: 2.5rem;
}
#hot_stone_spa .section_body ._txt .inner ._box ._head h2 span.jp {
    display: block;
}
#hot_stone_spa .section_body ._txt .inner ._box ._head h2 span.en {
    color: var(--color-purple);
    font-size: 0.9rem;
}
#hot_stone_spa .section_body ._txt .inner ._box ._body {
    display: none;
}
#hot_stone_spa .section_body ._txt .inner ._box ._note {
    background-color: rgba(255, 164, 212, 0.2);
    padding: 2rem;
    border-radius: 0.5rem;
}
/* dish
-------------------------------------------------------------------------------- */
#dish .section_head .inner ._txt {
    text-align: left;
}
#dish .section_head .inner ._txt br {
    display: none;
}
#dish .section_body .inner ._intro {
    margin-bottom: 2.5rem;
}
#dish .section_body .inner ._intro .href {
    margin-bottom: 1rem;
}
#dish .section_body .inner ._intro .href a {
    font-size: 1rem;
}
#dish .section_body .inner ._intro ._txt {
    font-size: 0.8rem;
}
#dish .section_body .inner ._ingredients {
    margin-bottom: 5rem;
}
#dish .section_body .inner ._ingredients ._item {
    margin-bottom: 2.5rem;
}
#dish .section_body .inner ._ingredients ._item ._img {
    margin-bottom: 1rem;
}
#dish .section_body .inner ._ingredients ._item ._txt {
    margin-bottom: 2.5rem;
}
#dish .section_body .inner ._ingredients ._item ._txt ._title {
    margin-bottom: 1rem;
}
#dish .section_body .inner ._ingredients ._item ._txt ._title h2 span.line.jp {
    font-size: 1.4rem;
    display: inline;
}
#dish .section_body .inner ._ingredients ._item ._txt ._title h2 span.en {
    margin-left: 1rem;
    color: var(--color-purple);
}
#dish .section_body .inner ._ingredients ._item ._txt ._title h2 span.line.jp::before {
    position: absolute;
    content: none;
}
#dish .section_body .inner ._ingredients ._item ._txt ._desc {
    font-size: 0.9rem;
}
#dish .section_body .inner ._ingredients ._item .plan ._head {
    margin-bottom: 0.5rem;
}
#dish .section_body .inner ._ingredients ._item .plan ._head h3 span.en {
    margin-left: 1rem;
    color: var(--color-purple);
    font-size: 0.8rem;
}
#dish .section_body .inner ._ingredients ._item .plan ._body .href.href_plan {
    margin-bottom: 0.5rem;
}
#dish .section_body .inner ._ingredients ._item .plan ._body .href.href_plan a {
    padding: 0.6rem 2rem 0.55rem;
    line-height: 1.4;
}
#dish .section_body ._gallery {
    height: 44.4vw;
    overflow: hidden;
    margin-bottom: 5rem;
}
#dish .section_body ._gallery .swiper {
    height: 100%;
}
#dish .section_body ._gallery .swiper-wrapper {
    height: 100%;
}
#dish .section_body ._gallery .swiper-slide {
    height: 100%;
    width: -moz-fit-content !important;
    width: fit-content !important;
    background-color: #000;
}
#dish .section_body ._gallery ._item {
    height: 100%;
    width: -moz-fit-content;
    width: fit-content;
}
#dish .section_body ._gallery ._item:has(img) {
    aspect-ratio: 1.5;
}
#dish .section_body ._gallery ._item video {
    display: block;
    height: 100%;
}
#dish .section_body .inner ._list ._item {
    margin-bottom: 5rem;
}
#dish .section_body .inner ._list ._item ._img {
    display: flex;
    justify-content: space-between;
    -moz-column-gap: 0.75rem;
    column-gap: 0.75rem;
    margin-bottom: 1.5rem;
    overflow: hidden;
}
#dish .section_body .inner ._list ._item ._img .en span.line {
    color: var(--color-purple);
    writing-mode: vertical-rl;
    font-size: 0.75rem;
    line-height: 1;
}
#dish .section_body .inner ._list ._item ._img .en span.line::before {
    background-color: var(--color-purple);
    width: 0.5px;
    height: auto;
    left: 50%;
    right: auto;
    top: calc(100% + 1rem);
    bottom: calc(100% + 1rem);
    transition: 2s;
}
#dish .section_body .inner ._list ._item ._img .en span.line.active::before {
    bottom: calc(100% + 1rem - 60vw);
}
#dish .section_body .inner ._list ._item ._img ._photo {
    width: calc(100% - 1.25rem);
    aspect-ratio: 1.5;
    overflow: hidden;
}
#dish .section_body .inner ._list ._item ._img ._photo img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#dish .section_body .inner ._list ._item ._txt {
    margin-left: 1.5rem;
}
#dish .section_body .inner ._list ._item ._txt ._title {
    margin-bottom: 0.4rem;
}
#dish .section_body .inner ._list ._item ._txt ._title h2 {
    font-size: 1.4rem;
}
#dish .section_body .inner ._list ._item ._txt ._desc {
    font-size: 0.9rem;
    margin-bottom: 1.5rem;
    line-height: 1.6;
}
#dish .section_body .inner ._list ._item ._txt ._desc br {
    display: none;
}
#dish .section_body .inner ._list ._item .plan {
    margin-left: 1.5rem;
}
#dish .section_body .inner ._list ._item .plan ._head {
    margin-bottom: 0.25rem;
}
#dish .section_body .inner ._list ._item .plan ._head h3 span.jp {
    font-size: 1.2rem;
}
#dish .section_body .inner ._list ._item .plan ._head h3 span.en {
    margin-left: 0.5rem;
    font-size: 0.75rem;
    color: var(--color-purple);
}
#dish .section_body .inner ._list ._item .plan ._body .href.href_plan a {
    padding: 0.6rem 1.5rem 0.5rem;
}
/* dragon_eyes
-------------------------------------------------------------------------------- */
#dragon_eyes .section_head .inner ._txt {
    text-align: left;
}
#dragon_eyes .section_head .inner ._txt br {
    display: none;
}
#dragon_eyes .section_body .inner ._box ._item {
    position: relative;
    margin-bottom: 2.5rem;
}
#dragon_eyes .section_body .inner ._box ._item ._img {
    position: relative;
    clip-path: polygon(45% 0, 100% 0, 100% 100%, 0 100%, 0 3rem, 45% 3rem);
    margin-bottom: 2rem;
}
#dragon_eyes .section_body .inner ._box ._item ._title {
    position: absolute;
    width: 45%;
    padding: 0.25rem 0.5rem 0.5rem 0;
    top: 0;
    left: -0.5rem;
}
#dragon_eyes .section_body .inner ._box ._item ._desc {
    margin-bottom: 2rem;
}
#dragon_eyes .section_body .inner ._box ._item ._desc p {
    margin-bottom: 0.8rem;
    font-size: 0.9rem;
}
#dragon_eyes .section_body .inner ._box ._item ._sign {
    text-align: right;
    font-size: 0.9rem;
}
#dragon_eyes .section_body .inner ._box ._item:nth-child(2n) ._img {
    clip-path: polygon(0 0, 55% 0, 55% 3rem, 100% 3rem, 100% 100%, 0 100%);
}
#dragon_eyes .section_body .inner ._box ._item:nth-child(2n) ._title {
    position: absolute;
    top: 0;
    left: 55%;
    right: 0;
    padding: 0.25rem 0 0.5rem 1rem;
}
#dragon_eyes .section_body .inner ._gallery {
    margin-bottom: 5rem;
}
#dragon_eyes .section_body .inner ._gallery ._item .swiper._main .swiper-wrapper .swiper-slide ._inner img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#dragon_eyes .section_body .inner ._gallery ._item .swiper._main .swiper-wrapper .swiper-slide ._desc {
    font-size: 0.75rem;
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 0.25rem;
    background-color: rgba(0, 0, 0, 0.4);
    color: #fff;
}
#dragon_eyes .section_body .inner ._gallery ._item .swiper._thumbnail .swiper-wrapper .swiper-slide {
    opacity: 0.5;
}
#dragon_eyes .section_body .inner ._gallery ._item .swiper._thumbnail .swiper-wrapper .swiper-slide.swiper-slide-thumb-active {
    opacity: 1;
}
#dragon_eyes .section_body .inner ._gallery ._item .swiper._thumbnail .swiper-button-prev,
#dragon_eyes .section_body .inner ._gallery ._item .swiper._thumbnail .swiper-button-next {
    background-color: #fff;
    width: 0.8rem;
    height: 1.5rem;
    top: calc(50% + 1rem);
}
#dragon_eyes .section_body .inner ._gallery ._item .swiper._thumbnail .swiper-button-prev svg,
#dragon_eyes .section_body .inner ._gallery ._item .swiper._thumbnail .swiper-button-next svg {
    display: none;
}
#dragon_eyes .section_body .inner ._gallery ._item .swiper._thumbnail .swiper-button-prev {
    clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
#dragon_eyes .section_body .inner ._gallery ._item .swiper._thumbnail .swiper-button-next {
    clip-path: polygon(0 0, 100% 50%, 0 100%);
}
/* members
-------------------------------------------------------------------------------- */
#members main .section_head .inner ._txt {
    text-align: left;
}
#members main .section_head .inner ._txt br {
    display: none;
}
#members .section_body .inner ._jmp .href {
    margin-bottom: 2.5rem;
}
#members .section_body .inner ._jmp .href a {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 1rem;
    line-height: 1;
    padding: 1rem 3rem;
    border: none;
    border-radius: 2rem;
    margin-inline: auto;
    background-color: var(--color-purple);
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.1rem;
}
#members .section_body .inner ._note {
    margin-bottom: 5rem;
    padding: 2rem 1.5rem;
    background-color: rgba(183, 0, 96, 0.15);
    border-radius: 0.5rem;
}
#members .section_body .inner ._box {
    margin-bottom: 5rem;
}
#members .section_body .inner ._box ._head {
    margin-bottom: 1rem;
}
#members .section_body .inner ._box ._head ._title {
    margin-bottom: 1rem;
}
#members .section_body .inner ._box ._head ._title h2 {
    font-size: 1.5rem;
}
#members .section_body .inner ._box ._head ._desc br {
    display: none;
}
#members .section_body .inner ._box ._body ._title_sub {
    margin-bottom: 1rem;
}
#members .section_body .inner ._box ._body ._title_sub span.en.line {
    color: var(--color-purple);
    font-size: 1.5rem;
}
#members .section_body .inner ._box ._body ._title_sub span.en.line::before {
    background-color: var(--color-purple);
    opacity: 0.5;
}
#members .section_body .inner ._box ._body ._rows ._item {
    margin-bottom: 3rem;
}
#members .section_body .inner ._box ._body ._rows ._item ._img {
    aspect-ratio: 1.25;
    overflow: hidden;
    position: relative;
    margin-bottom: 1rem;
}
#members .section_body .inner ._box ._body ._rows ._item ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#members .section_body .inner ._box ._body ._rows ._item ._img ._attach.en {
    position: absolute;
    top: 1rem;
    left: 0;
    line-height: 0.7;
    color: #fff;
    opacity: 0.5;
    font-size: 2rem;
    font-weight: 400;
    writing-mode: vertical-rl;
}
#members .section_body .inner ._box ._body ._rows ._item ._img ._number.en {
    position: absolute;
    bottom: 0;
    left: 1rem;
    font-size: 4rem;
    font-weight: 400;
    color: #fff;
    line-height: 0.666;
}
#members .section_body .inner ._box ._body ._rows ._item ._txt ._title h3 {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}
#members .section_body .inner ._box ._body ._rows ._item ._txt ._title h3.active::before {
    right: calc(100% - 90vw);
}
#members .section_body .inner ._box ._body ._rows ._item ._txt ._desc {
    margin-bottom: 1.5rem;
}
#members .section_body .inner ._box ._body ._rows ._item ._txt ._desc br {
    display: none;
}
#members .section_body .inner ._box ._body ._rows ._item ._txt .href {
    margin-bottom: 1rem;
}
#members .section_body .inner ._box#membership_form>._head {
    margin-bottom: 2.5rem;
}
#members .section_body .inner ._box#membership_form ._head ._desc {
    font-size: 0.9rem;
}
#members .section_body .inner ._box#membership_form ._head ._desc br {
    display: block;
}
/* access
-------------------------------------------------------------------------------- */
#access .section_body .inner ._box._feature ._item ._img {
    margin-bottom: 1rem;
}
#access .section_body .inner ._box._feature ._item ._txt {
    margin-bottom: 5rem;
}
#access .section_body .inner ._box._feature ._item ._txt ._title {
    margin-bottom: 1em;
}
#access .section_body .inner ._box._feature ._item ._txt ._title h2 span.en {
    color: var(--color-purple);
    font-size: 0.9rem;
}
#access .section_body .inner ._box._feature ._item ._txt ._desc {
    font-size: 0.9rem;
}
#access .section_body .inner ._jump {
    display: flex;
    justify-content: center;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    margin-bottom: 5rem;
}
#access .section_body .inner ._jump .href {
    width: 48%;
    margin: 0;
}
#access .section_body .inner ._jump .href a {
    margin: 0;
    width: 100%;
    text-align: center;
}
#access .section_body .inner ._box#area {
    margin-bottom: 5rem;
}
#access .section_body .inner ._box#area ._head {
    margin-bottom: 2rem;
}
#access .section_body .inner ._box#area ._head h2 {
    line-height: 1.4;
}
#access .section_body .inner ._box#area ._head h2 span.jp.line {
    font-size: 1.5rem;
}
#access .section_body .inner ._box#area ._head h2 span.en {
    color: var(--color-purple);
}
#access .section_body .inner ._box#area ._body {
    display: flex;
    flex-direction: column-reverse;
}
#access .section_body .inner ._box#area ._body ._txt ._item {
    margin-bottom: 2rem;
}
#access .section_body .inner ._box#area ._body ._txt ._item ._head {
    margin-bottom: 1rem;
}
#access .section_body .inner ._box#area ._body ._txt ._item ._head h3 span.line {
    color: var(--color-purple);
    font-size: 1.1rem;
}
#access .section_body .inner ._box#area ._body ._txt ._item ._head h3 span.line::before {
    background-color: var(--color-purple);
    opacity: 0.25;
}
#access .section_body .inner ._box#area ._body ._txt ._item ._body {
    font-size: 0.9rem;
}
#access .section_body .inner ._box#area ._body ._txt .href a {
    font-size: 1.2rem;
    padding: 0.75rem 3rem;
}
#access .section_body .inner ._box#area ._body ._img {
    margin-bottom: 2.5rem;
}
#access .section_body .hr {
    position: relative;
    aspect-ratio: 1;
    margin-bottom: 5rem;
}
#access .section_body .hr ._inner {
    position: absolute;
    background-color: #fff;
    bottom: 2rem;
    left: 1rem;
    padding: 1.5rem 2rem 1.5rem 1.5rem;
    width: 15rem;
    font-size: 0.9rem;
}
#access .section_body .hr ._inner ._logo {
    margin-bottom: 1.5rem;
}
#access .section_body .hr ._inner ._logo img {
    width: 80%;
}
#access .section_body .hr ._inner ._address {
    margin-bottom: 0.5rem;
}
#access .section_body ._box#by_train {
    margin-bottom: 5rem;
}
#access .section_body ._box#by_train ._head,
#access .section_body ._box#by_car ._head {
    margin-bottom: 2rem;
}
#access .section_body ._box#by_train ._head h2,
#access .section_body ._box#by_car ._head h2 {
    line-height: 1.4;
}
#access .section_body ._box#by_train ._head h2 span.jp.line,
#access .section_body ._box#by_car ._head h2 span.jp.line {
    font-size: 1.5rem;
}
#access .section_body ._box#by_train ._head h2 span.en,
#access .section_body ._box#by_car ._head h2 span.en {
    color: var(--color-purple);
}
#access .section_body ._box#by_train ._body ._txt,
#access .section_body ._box#by_car ._body ._txt {
    font-size: 0.9rem;
    margin-bottom: 2.5rem;
}
#access .section_body ._box#by_train ._body ._img,
#access .section_body ._box#by_car ._body ._img {
    background-color: #fff;
    margin-bottom: 5rem;
    transform: scale(1.111111);
    transform-origin: top center;
}
/* guide
-------------------------------------------------------------------------------- */
#guide main .section_head .inner ._txt {
    text-align: left;
}
#guide main .section_head .inner ._txt br {
    display: none;
}
#guide .section_body .inner ._box#guide_course {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 1.5rem;
    margin-bottom: 5rem;
}
#guide .section_body .inner ._box#guide_course ._item {
    width: 49%;
}
#guide .section_body .inner ._box#guide_course ._item ._img {
    position: relative;
    margin-bottom: 0.5rem;
}
#guide .section_body .inner ._box#guide_course ._item ._img .en {
    position: absolute;
    bottom: 0;
    left: 1rem;
    font-size: 2rem;
    font-weight: 400;
    line-height: 0.625;
    color: #fff;
    z-index: 1;
}
#guide .section_body .inner ._box#guide_course ._item ._img ._photo {
    aspect-ratio: 1.25;
    overflow: hidden;
}
#guide .section_body .inner ._box#guide_course ._item ._img ._photo a {
    display: block;
    height: 100%;
}
#guide .section_body .inner ._box#guide_course ._item ._img ._photo a img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#guide .section_body .inner ._box#guide_course ._item ._txt ._title {
    margin-bottom: 0.25rem;
}
#guide .section_body .inner ._box#guide_course ._item ._txt ._title h2 {
    font-size: 0.9rem;
}
#guide .section_body .inner ._box#guide_course ._item ._txt ._desc {
    font-size: 0.8rem;
    opacity: 0.8;
}
#guide .section_body .inner ._box#guide_ss ._head {
    margin-bottom: 2.5rem;
}
#guide .section_body .inner ._box#guide_ss ._head h2 {
    line-height: 1.4;
}
#guide .section_body .inner ._box#guide_ss ._head h2 span.jp.line {
    font-size: 1.5rem;
}
#guide .section_body .inner ._box#guide_ss ._head h2 span.en {
    color: var(--color-purple);
    font-size: 0.9rem;
}
#guide .section_body .inner ._box#guide_ss ._body {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 1.5rem;
    margin-bottom: 5rem;
}
#guide .section_body .inner ._box#guide_ss ._body ._item {
    width: 49%;
}
#guide .section_body .inner ._box#guide_ss ._body ._item ._img {
    aspect-ratio: 1.5;
    overflow: hidden;
    margin-bottom: 0.5rem;
}
#guide .section_body .inner ._box#guide_ss ._body ._item ._img a {
    display: block;
    height: 100%;
}
#guide .section_body .inner ._box#guide_ss ._body ._item ._img a img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#guide .section_body .inner ._box#guide_ss ._body ._item ._txt ._title {
    font-size: 0.9rem;
    color: var(--color-purple);
}
#guide .section_body .inner ._box#guide_ss ._body ._item ._txt ._place {
    color: var(--color-purple);
    font-size: 0.8rem;
    margin-bottom: 0.5rem;
}
#guide .section_body .inner ._box#guide_ss ._body ._item ._txt ._route {
    font-size: 0.8rem;
    opacity: 0.8;
}
#guide .section_body .inner ._note#guide_basic {
    background-color: rgba(183, 0, 96, 0.1);
    border-radius: 0.5rem;
    padding: 2rem;
}
#guide .section_body .inner ._note#guide_basic ._head {
    margin-bottom: 1rem;
}
#guide .section_body .inner ._note#guide_basic ._head h3 {
    text-align: center;
    font-size: 0.9rem;
}
#guide .section_body .inner ._note#guide_basic ._body {
    margin-bottom: 0;
}
#guide .section_body .inner ._note#guide_basic ._body ul.note {
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
}
#guide .section_body .inner ._note#guide_basic ._body ul.note li::before {
    content: "・";
}
/* guide single
-------------------------------------------------------------------------------- */
#guide.single main .section_head .inner ._txt {
    text-align: center;
}
#guide.single main .section_head .inner ._txt br {
    display: none;
}
#guide_map {
    margin-bottom: 7.5rem;
}
#guide_map ._img {
    position: relative;
    background-color: #fff;
    overflow: hidden;
    margin-bottom: 5rem;
}
#guide_map ._img img {
    position: absolute;
    opacity: 0.25;
}
#guide_map.active ._img img._on {
    opacity: 1;
    animation-name: blink;
    animation-duration: 1s;
    animation-iteration-count: 6;
}
@keyframes blink {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
#guide_map #guide_bg {
    position: static;
    opacity: 1;
}
#guide_sasara {
    top: 15.7rem;
    left: 9rem;
    width: 4.6rem;
}
#guide_01 {
    top: 31.5rem;
    left: 16.6rem;
    width: 2.6rem;
}
#guide_02 {
    top: 31.1rem;
    left: 8.8rem;
    width: 2.5rem;
}
#guide_03 {
    top: 30.8rem;
    left: 11.2rem;
    width: 4.1rem;
}
#guide_04 {
    top: 29.9rem;
    left: 19.3rem;
    width: 2.9rem;
}
#guide_05 {
    top: 29rem;
    left: 18.5rem;
    width: 3.9rem;
}
#guide_06 {
    top: 29.5rem;
    left: 6.2rem;
    width: 1.8rem;
}
#guide_07 {
    top: 28rem;
    left: 6.4rem;
    width: 3.5rem;
}
#guide_08 {
    top: 28.4rem;
    left: 0.2rem;
    width: 2.4rem;
}
#guide_09 {
    top: 25rem;
    left: 8rem;
    width: 2.7rem;
}
#guide_10 {
    top: 23rem;
    left: 6.4rem;
    width: 2.6rem;
}
#guide_11 {
    top: 21.8rem;
    left: 1.4rem;
    width: 4.3rem;
}
#guide_12 {
    top: 18.5rem;
    left: 6.7rem;
    width: 2.3rem;
}
#guide_13 {
    top: 19.3rem;
    left: 11.9rem;
    width: 2.5rem;
}
#guide_14 {
    top: 25.9rem;
    left: 12.4rem;
    width: 5.5rem;
}
#guide_15 {
    top: 25rem;
    left: 15rem;
    width: 2rem;
}
#guide_16 {
    top: 24.5rem;
    left: 21.6rem;
    width: 1.7rem;
}
#guide_17 {
    top: 22.7rem;
    left: 22.6rem;
    width: 1.7rem;
}
#guide_18 {
    top: 21.1rem;
    left: 19.7rem;
    width: 2.7rem;
}
#guide_19 {
    top: 19.3rem;
    left: 18.1rem;
    width: 2.2rem;
}
#guide_20 {
    top: 15.4rem;
    left: 14rem;
    width: 4rem;
}
#guide_21 {
    top: 12.9rem;
    left: 13.2rem;
    width: 1.6rem;
}
#guide_22 {
    top: 11rem;
    left: 12rem;
    width: 3.7rem;
}
#guide_23 {
    top: 12.6rem;
    left: 15.6rem;
    width: 8rem;
}
#guide_24 {
    top: 4.8rem;
    left: 17.1rem;
    width: 4.4rem;
}
#guide_25 {
    top: 1rem;
    left: 19.6rem;
    width: 4.2rem;
}
#guide_26 {
    top: 4.4rem;
    left: 13.6rem;
    width: 2.1rem;
}
#guide_27 {
    top: 2.6rem;
    left: 12.3rem;
    width: 2.8rem;
}
#guide_28 {
    top: 2.5rem;
    left: 5.7rem;
    width: 2.3rem;
}
#guide_29 {
    top: 11rem;
    left: 5.6rem;
    width: 2.6rem;
}
#guide_30 {
    top: 12.1rem;
    left: 6.9rem;
    width: 1.8rem;
}
#guide_31 {
    top: 11rem;
    left: 17.7rem;
    width: 5.6rem;
}
#guide_32 {
    top: 1rem;
    left: 1rem;
    width: 3rem;
}
#guide_33 {
    top: 1rem;
    left: 1rem;
    width: 3rem;
}
#guide_34 {
    top: 1rem;
    left: 1rem;
    width: 3rem;
}
#guide_35 {
    top: 1rem;
    left: 1rem;
    width: 3rem;
}
#guide_36 {
    top: 1rem;
    left: 1rem;
    width: 3rem;
}
#guide_37 {
    top: 1rem;
    left: 1rem;
    width: 3rem;
}
#guide_38 {
    top: 1rem;
    left: 1rem;
    width: 3rem;
}
#guide_39 {
    top: 1rem;
    left: 1rem;
    width: 3rem;
}
#guide_map ._route {
    position: relative;
    text-align: center;
}
#guide_map ._route::before {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    left: 50%;
    background-image: repeating-linear-gradient(0deg, #999 0px, #999 0.25rem, transparent 0.25rem, transparent 0.5rem);
}
#guide_map ._route ._item {
    position: relative;
    padding: 0.5rem 1rem;
    margin: 1rem 0;
}
#guide #guide_map ._route ._item:first-child {
    margin-top: 0;
}
#guide #guide_map ._route ._item:last-child {
    margin-bottom: 0;
}
#guide_map ._route ._item._white {
    background-color: #8BC34A;
    color: #fff;
}
#guide_map ._route ._item._purple {
    background-color: var(--color-purple);
    color: #fff;
}
#guide_map ._route ._item._black {
    background-color: #555;
    color: #fff;
}
#guide_map ._route ._item._road {
    border: 1px solid #ccc;
    background-color: #fff;
    border-radius: 2rem;
    width: -moz-fit-content;
    width: fit-content;
    padding: 0.25rem 2rem;
    margin: 1.5rem auto;
}
#guide_map ._route ._item:not(._road)+._item:not(._road) {
    margin-top: 2rem;
}
#guide.single .section_body .inner ._head {
    margin-bottom: 2.5rem;
}
#guide.single .section_body .inner ._head h2 {
    line-height: 1.4;
}
#guide.single .section_body .inner ._head h2 span.jp.line {
    font-size: 1.5rem;
}
#guide.single .section_body .inner ._head h2 span.en {
    color: var(--color-purple);
    font-size: 0.9rem;
}
/* reference
-------------------------------------------------------------------------------- */
#useful_reference .section_body .inner ._box ._item {
    margin-bottom: 4rem;
}
#useful_reference .section_body .inner ._box ._item ._head {
    margin-bottom: 2rem;
}
#useful_reference .section_body .inner ._box ._item ._head h2 {
    line-height: 1.3;
}
#useful_reference .section_body .inner ._box ._item ._head h2 span.jp.line {
    font-size: 1.35rem;
}
#useful_reference .section_body .inner ._box ._item ._head h2 span.en {
    color: var(--color-purple);
    font-size: 0.9rem;
}
#useful_reference .section_body .inner ._box ._item ._body ._media {
    margin-bottom: 2rem;
}
#useful_reference .section_body .inner ._box ._item ._body ._media ._img {
    margin-bottom: 1.5rem;
    border-radius: 0.5rem;
    overflow: hidden;
}
#useful_reference .section_body .inner ._box ._item ._body ._media ._movie {
    margin-bottom: 1.5rem;
    border-radius: 0.5rem;
    overflow: hidden;
}
#useful_reference .section_body .inner ._box ._item ._body ._media ._movie video {
    width: 100%;
}
#useful_reference .section_body .inner ._box ._item ._body ._txt {
    background-color: rgba(183, 0, 96, 0.1);
    padding: 1.5rem;
    border-radius: 0.5rem;
    margin-bottom: 2rem;
}
#useful_reference .section_body .inner ._box ._item ._body ._txt p {
    font-size: 0.9rem;
    margin-bottom: 0.9rem;
}
#useful_reference .section_body .inner ._box ._item ._body ._txt p:last-child {
    margin-bottom: 0;
}
#useful_reference .section_body .inner ._box ._item ._body ._plan .href {
    margin-bottom: 0.5rem;
}
/* faq
-------------------------------------------------------------------------------- */
#faq .section_body .inner {
    width: 100%;
}
#faq .section_body .inner ._box ._item {
    border-bottom: 0.2px solid rgba(183, 0, 96, 0.5);
    margin-bottom: 2rem;
    padding-right: 1rem;
}
#faq .section_body .inner ._box ._item ._q,
#faq .section_body .inner ._box ._item ._a {
    position: relative;
    padding-bottom: 2rem;
    padding-left: 3rem;
    font-size: 0.9rem;
}
#faq .section_body .inner ._box ._item ._q a,
#faq .section_body .inner ._box ._item ._a a {
    position: relative;
    display: inline-block;
}
#faq .section_body .inner ._box ._item ._a a::before {
    position: absolute;
    content: "";
    height: 1px;
    bottom: -0.1rem;
    background-image: repeating-linear-gradient(90deg, rgb(176, 0, 95) 0px, rgb(140, 0, 67) 0.25rem, transparent 0.25rem, transparent 0.4rem);
    left: -0.5rem;
    right: -0.5rem;
    margin: auto;
}
#faq .section_body .inner ._box ._item ._q::before,
#faq .section_body .inner ._box ._item ._a::before {
    position: absolute;
    top: -0.5rem;
    left: -0.4rem;
    content: "Q";
    font-family: "trajan-pro-3", serif;
    aspect-ratio: 1;
    background-image: var(--gradation-purple);
    color: #fff;
    font-size: 1.25rem;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 1.25rem;
    display: grid;
    place-content: center;
}
#faq .section_body .inner ._box ._item ._q::before {
    content: "Q";
}
#faq .section_body .inner ._box ._item ._a::before {
    content: "A";
}
/* gallery
-------------------------------------------------------------------------------- */
#photo-gallery .section_head .inner ._txt {
    text-align: left;
}
#photo-gallery .section_head .inner ._txt br {
    display: none;
}
#photo-gallery .section_body .inner ._box ._item {
    margin-bottom: 5rem;
}
#photo-gallery .section_body .inner ._box ._item ._head {
    margin-bottom: 2rem;
}
#photo-gallery .section_body .inner ._box ._item ._head h2 {
    line-height: 1.3;
}
#photo-gallery .section_body .inner ._box ._item ._head h2 .jp.line {
    font-size: 1.35rem;
}
#photo-gallery .section_body .inner ._box ._item ._head h2 .en {
    color: var(--color-purple);
    font-size: 0.9rem;
}
#photo-gallery .section_body .inner ._box ._item ._body {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.25rem;
}
#photo-gallery .section_body .inner ._box ._item ._body::after {
    width: 32.5%;
    content: "";
}
#photo-gallery .section_body .inner ._box ._item ._body ._img a {
    display: block;
    aspect-ratio: 1;
    height: 100%;
}
#photo-gallery .section_body .inner ._box ._item ._body ._img a img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#lightbox {
    top: 50% !important;
    transform: translateY(-50%);
}
#lightbox .lb-outerContainer {
    border-radius: 0;
    background-color: #000;
}
#lightbox .lb-outerContainer .lb-container .lb-image {
    border-radius: 0;
    border: none;
}
/* contact
-------------------------------------------------------------------------------- */
#contact .section_head .inner ._txt {
    text-align: left;
}
#contact .section_head .inner ._txt br {
    display: none;
}
#contact .section_body .inner ._box ._head {
    margin-bottom: 3rem;
}
#contact .section_body .inner ._box ._head ._title {
    margin-bottom: 1.5rem;
}
#contact .section_body .inner ._box ._head ._title h2 {
    line-height: 1.4;
}
#contact .section_body .inner ._box ._head ._title h2 .jp.line {
    font-size: 1.2rem;
}
#contact .section_body .inner ._box ._head ._title h2 .en {
    color: var(--color-purple);
    font-size: 0.9rem;
}
#contact .section_body .inner ._box ._head ._note .note li {
    margin-bottom: 0.5rem;
}
#contact .section_body .inner ._box ._head ._note .note li::before {
    content: "・";
}
/* company
-------------------------------------------------------------------------------- */
#company .section_head {
    padding: 4rem 0 0;
}
#company .section_body .inner ._box ._head {
    margin-bottom: 2rem;
}
#company .section_body .inner ._box ._head .en.line {
    font-size: 1.2rem;
    color: var(--color-purple);
}
#company .section_body .inner ._box ._head .en.line::before {
    background-color: var(--color-purple);
    opacity: 0.25;
}
#company .section_body .inner ._box ._body table {
    width: 100%;
    border-collapse: collapse;
}
#company .section_body .inner ._box ._body table tr th,
#company .section_body .inner ._box ._body table tr td {
    font-size: 0.9rem;
    padding: 1rem;
    border-bottom: 0.1px solid #999;
}
/* privacy-policy
-------------------------------------------------------------------------------- */
#privacy-policy .section_head .inner ._txt {
    text-align: left;
}
#privacy-policy .section_head .inner ._txt br {
    display: none;
}
#policy {
    margin-bottom: 4rem;
}
#policy ._head {
    margin-bottom: 1.5rem;
}
#policy ._head ._title {
    margin-bottom: 1.5rem;
}
#policy ._head ._title h2 {
    color: var(--color-purple);
    text-align: center;
    font-size: 1.25rem;
}
#policy ._head ._desc {
    font-size: 0.9rem;
}
#policy ._body {
    /* margin-bottom: 1rem; */
}
#policy ._body .policy_box {
    margin-bottom: 2rem;
}
#policy ._body .policy_box .policy_head {
    margin-bottom: 1rem;
}
#policy ._body .policy_box .policy_head h3 .line {
    color: var(--color-purple);
}
#policy ._body .policy_box .policy_head h3 .line::before {
    background-color: var(--color-purple);
    opacity: 0.25;
}
#policy ._body .policy_box .policy_body {
    margin-left: 1rem;
}
#policy ._body .policy_box .policy_body ._txt {
    font-size: 0.9rem;
    margin-bottom: 0.8rem;
}
#policy ._body .policy_box .policy_body ._txt p {
    font-size: 0.9rem;
    margin-bottom: 0.5rem;
}
#policy ._body .policy_box .policy_body ._txt p:last-child {
    margin-bottom: 0;
}
#policy ._body .policy_box .policy_body ul {
    margin-bottom: 0.9rem;
}
#policy ._body .policy_box .policy_body ul li {
    position: relative;
    font-size: 0.8rem;
    margin-bottom: 0.25rem;
    padding-left: 1.25rem;
}
#policy ._body .policy_box .policy_body ul li::before {
    content: "・";
    position: absolute;
    left: 0;
}
#policy ._sign {
    text-align: right;
    font-size: 0.9rem;
}
#disclaimer ._head {
    margin-bottom: 1.5rem;
}
#disclaimer ._head ._title {
    margin-bottom: 1rem;
}
#disclaimer ._head ._title h2 .jp {
    color: var(--color-purple);
}
#disclaimer ._head ._desc {
    font-size: 0.9rem;
    margin-left: 1rem;
}
#disclaimer ._body {
    margin-bottom: 2rem;
}
#disclaimer ._body ol {
    margin-left: 2rem;
    list-style-type: decimal;
}
#disclaimer ._body ol li {
    font-size: 0.85rem;
    margin-bottom: 1.25rem;
}
#disclaimer ._body ol li:last-child {
    margin-bottom: 0;
}
#disclaimer ._sign {
    text-align: right;
    font-size: 0.85rem;
}
/* news
-------------------------------------------------------------------------------- */
#news section.section_body {
    padding: 5rem 0;
}
#news_list ._item {
    display: flex;
    flex-direction: column-reverse;
    margin-bottom: 2.5rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid rgba(183, 0, 96, 0.15);
}
#news_list ._item ._txt ._head {
    display: flex;
    font-size: 0.8rem;
    margin-bottom: 0.25rem;
}
#news_list ._item ._txt ._head ._type {
    position: relative;
    margin-left: 0.75rem;
    padding-left: 3.75rem;
    display: flex;
    -moz-column-gap: 0.75rem;
    column-gap: 0.75rem;
}
#news_list ._item ._txt ._head ._type::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    height: 0.25px;
    width: 3rem;
    background-color: #000;
}
#news_list ._item ._txt ._title h3 a {
    font-size: 0.9rem;
}
#news_list ._item ._img {
    width: 80%;
    margin: 0 auto 1.5rem;
}
#news_list ._item ._img._noimg {
    display: none;
}
#news_list ._item ._img a {
    display: block;
}
#news_list ._page {
    margin: 1.5rem 0 7.5rem;
}
#news_list ._page nav .screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
#news_list ._page nav .nav-links {
    font-family: "trajan-pro-3", serif;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    -moz-column-gap: 0.75rem;
    column-gap: 0.75rem;
}
#news_list ._page nav .nav-links .page-numbers {
    border: 1px solid rgba(35, 24, 21, 0.5);
    aspect-ratio: 1;
    width: 2.5rem;
    display: grid;
    place-content: center;
}
#news_list ._page nav .nav-links .page-numbers.current {
    background-color: var(--color-purple);
    color: #fff;
    border-color: var(--color-purple);
}
#news_list ._page nav .nav-links .page-numbers.dots {
    border: none;
    padding: 0;
    aspect-ratio: unset;
    width: auto;
}
#news_sort ._box {
    margin-bottom: 2rem;
}
#news_sort ._box ._head {
    margin-bottom: 1rem;
}
#news_sort ._box ._head h3.line::before {
    height: 0.5px;
}
#news_sort ._box ._body ul {
    display: flex;
    flex-wrap: wrap;
}
#news_sort ._box ._body ul li {
    width: 20%;
}
#news_sort ._box ._body ul li a {
    display: block;
    padding: 0.5rem;
    text-align: center;
}
#news_sort ._box._category ._body ul li {
    width: auto;
}
#news_sort ._box._category ._body ul li a {
    width: auto;
    padding: 0.5rem 1.25rem;
}
/* single-news
-------------------------------------------------------------------------------- */
#news.single .section_body .inner #news_post {
    margin-bottom: 5rem;
}
#news.single .section_body .inner #news_post ._eye {
    margin-bottom: 2.5rem;
}
#news.single .section_body .inner #news_post ._body {
    margin-bottom: 2.5rem;
}
#news.single .section_body .inner #news_post ._body p {
    margin-bottom: 1rem;
}
#news.single .section_body .inner #news_post ._body img {
    margin: 2rem auto;
}
#news.single .section_body .inner #news_post ._body a {
    border-bottom: 1px dashed #000;
}
#news.single .section_body .inner #news_post ._href {
    display: flex;
    justify-content: space-between;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
}
#news.single .section_body .inner #news_post ._href .href {
    width: 8rem;
}
#news.single .section_body .inner #news_post ._href .href a {
    display: block;
    width: 100%;
    text-align: center;
    padding: 0.5rem;
}
/* translate
-------------------------------------------------------------------------------- */
body #glt-translate-trigger {
    width: 50px;
    height: 50px;
    right: 50px;
    font-family: trajan-pro-3, serif;
    font-size: 1rem;
    background-color: transparent;
    padding: 0;
    line-height: 1;
    box-shadow: none;
    cursor: pointer;
    background-image: url(../img/translate.svg);
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 200003;
}
body #glt-translate-trigger span.translate {
    display: none;
}
.tool-container.tool-top.toolbar-primary {
    background-image: linear-gradient(-90deg, rgba(0, 0, 0, 0.5), transparent);
    border-radius: 0;
    border-bottom: none !important;
    box-shadow: none;
    left: auto !important;
    right: 0 !important;
    /* transition: 1s; */
    z-index: 200003;
}
body:has(header._deep) .tool-container.tool-top.toolbar-primary {
    background-image: linear-gradient(-90deg, rgb(182 0 96 / 33%), transparent);
}
.tool-container.tool-top.toolbar-primary .arrow {
    display: none;
}
.tool-container.tool-top.toolbar-primary .tool-items {
    width: auto;
    padding: 1rem;
    display: flex;
    flex-direction: column;
}
.tool-container.tool-top.toolbar-primary .tool-items a {
    width: auto !important;
    height: auto !important;
}
.tool-container.tool-top.toolbar-primary .tool-items a {
    background: none !important;
    margin: 0;
    padding: 0 !important;
}
.tool-container.tool-top.toolbar-primary .tool-items a::after {
    display: block;
    font-family: "trajan-pro-3", serif;
    font-size: 1.2rem;
    white-space: nowrap;
    content: attr(title);
    padding: 0.75rem;
    color: #fff;
    text-align: right;
    margin: 0;
}
.tool-container.tool-top.toolbar-primary .tool-items a.Chinese[title="Chinese (Simplified)"] {
    order: 3;
}
.tool-container.tool-top.toolbar-primary .tool-items a.united-states[title=English] {
    order: 2;
}
.tool-container.tool-top.toolbar-primary .tool-items a.Japanese[title=Japanese] {
    order: 1;
}
.tool-container.tool-top.toolbar-primary .tool-items a.Korean[title=Korean] {
    order: 4;
}
.tool-container.tool-top.toolbar-primary .tool-items a.Spanish[title=Spanish] {
    order: 5;
}
.tool-container.tool-top.toolbar-primary .tool-items a.Italian[title=Italian] {
    order: 6;
}
/* tripla */
section.search-widget-input-wrapper-eaf5bf,
section.search-widget-day-use-wrapper-fc1ff9 {
    padding: 0;
}
form.search-widget-search-container-bf1818 {
    width: fit-content;
    background-color: #fff;
}
.floating-booking-panel._side {
    box-shadow: none;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 200005;
}
.floating-booking-panel._side.is-open {
    box-shadow: 5px 0 25px rgba(0, 0, 0, 0.15);
}
body .search-widget-search-container-bf1818 .search-widget-button-wrapper-d2b715 {
    display: block;
    width: fit-content;
    margin-inline: auto;
}
.flatpickr-calendar.open {
    font-family: sans-serif;
    margin: 1rem auto auto;
    padding-bottom: 1rem;
    z-index: 200005 !important;
}
@media (width <= 600px) {
.flatpickr-calendar.open {
    left: 0 !important;
    right: 0 !important;
}
body .flatpickr-calendar:before,
body .flatpickr-calendar:after {
    content: none;
}
}

@media (width > 600px) {
    /* common
  -------------------------------------------------------------------------------- */
    html {
        font-size: 1.75vw;
    }
    #page_head {
        height: 61.8vh;
    }
    #page_head ._txt {
        padding: 2.25rem 4rem 1rem 4rem;
    }
    #page_head ._txt ._head ._title h1 {
        font-size: 1.75rem;
    }
    #page_head ._txt ._head .en {
        font-size: 1.25rem;
    }
    #scroll_down {
        left: 2rem;
    }
    .section_head .inner ._txt {
        width: 42.5rem;
    }
    .href a {
        padding: 0.5rem 2.15rem 0.45rem;
    }
    #form_box .wpcf7 form.wpcf7-form ._form ._item ._body {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        -moz-column-gap: 0.5rem;
        column-gap: 0.5rem;
    }
    #form_box .wpcf7 form.wpcf7-form ._form ._item ._body ._half {
        width: 48%;
    }
    /* loading
  -------------------------------------------------------------------------------- */
    #intro_logo {
        width: 15rem;
        height: 7.5rem;
    }
    /* header
  -------------------------------------------------------------------------------- */
    #header_index {
        cursor: pointer;
        width: 3.6rem;
        height: 3.6rem;
        border-right: 1px solid rgba(255, 255, 255, 0.5);
    }
    #header_menu ._txt {
        height: 61.8%;
        padding: 5rem 22.5% 5rem;
    }
    #header_menu ._txt ._menu ._main ul li a {
        padding-bottom: 1rem;
    }
    #header_menu ._txt ._menu ._main ul li a span {
        font-size: 1.35rem;
    }
    #header_menu ._txt ._menu ._main ul li a span.en {
        font-size: 0.8rem;
    }
    #header_menu ._txt ._menu ._sub ul li a {
        font-size: 1rem;
        margin-bottom: 1.25rem;
    }
    #header_menu ._txt ._notice ul {
        display: flex;
        -moz-column-gap: 1rem;
        column-gap: 1rem;
    }
    #header_menu ._txt ._notice ul li a {
        padding-bottom: 0;
    }
    #header_menu ._img {
        height: 38.2%;
    }
    #header_menu ._img ._inner ._body .href a {
        width: 15rem;
        padding: 0.75rem;
        font-size: 1.25rem;
    }
    #header_menu ._img ._inner ._body .href._tel a {
        letter-spacing: 0.1rem;
    }
    /* footer
  -------------------------------------------------------------------------------- */
    footer .inner ._logo {
        margin: 0;
        width: 50%;
    }
    footer .inner ._logo a {
        width: 61.8%;
    }
    footer .inner ._location {
        margin: 0 0 5rem;
        width: 50%;
    }
    footer .inner ._location ._map {
        width: -moz-fit-content;
        width: fit-content;
    }
    footer .inner ._menu_main {
        width: 50%;
    }
    footer .inner ._menu_main ul li a ._txt {
        line-height: 1.35;
    }
    footer .inner ._menu_main ul li a ._txt span.jp {
        font-size: 1.35rem;
    }
    footer .inner ._menu_main ul li a ._txt span.en {
        font-size: 0.9rem;
    }
    footer .inner ._menu_notice {
        width: 50%;
        margin-bottom: 0;
    }
    footer .inner ._menu_notice ul {
        display: flex;
        justify-content: flex-start;
        -moz-column-gap: 1rem;
        column-gap: 1rem;
    }
    footer .inner ._menu_notice ul li a {
        padding-bottom: 0;
        font-size: 0.8rem;
        background-image: linear-gradient(-90deg, #ffd5ee 0%, #ffd5ee 50%, var(--color-purple-light) 50%, var(--color-purple-light) 100%);
        -webkit-background-clip: text;
        background-size: 200%;
        background-position: 100%;
        -webkit-text-fill-color: transparent;
        transition: 0.5s;
    }
    footer .inner ._menu_notice ul li a:hover {
        background-position: 0;
    }
    footer .inner ._sns {
        width: 50%;
        justify-content: flex-start;
        margin-bottom: 0;
    }
    footer .inner #copyright {
        padding-top: 3rem;
    }
    /* home
  -------------------------------------------------------------------------------- */
    #home_top {
        height: 100svh;
    }
    #home_top .swiper {
        aspect-ratio: unset;
        height: 100%;
    }
    #home_top .inner ._copy {
        font-size: 2.5rem;
    }
    .home_unit ._title {
        width: auto;
    }
    .home_unit ._title h2 {
        writing-mode: unset;
    }
    .home_unit ._title h2 span.en {
        font-size: 0.9rem;
    }
    .home_unit ._title h2 span::before {
        width: auto;
        height: 1px;
        top: 50%;
        left: calc(100% + 1rem);
        right: -1rem;
        z-index: 1;
    }
    .home_unit ._title h2 span.line.active::before {
        height: 1px;
        right: calc(100% - 40vw - 2rem);
    }
    .home_unit ._img {
        width: 50vw;
        aspect-ratio: 1.5;
        margin: 0;
    }
    #home_booking {}
    #home_about {
        position: relative;
    }
    #home_about .inner {
        width: 100%;
        margin: 0 auto;
    }
    #home_about .inner .home_unit {
        position: static;
        display: flex;
        justify-content: space-between;
    }
    #home_about .inner .home_unit ._title {
        width: 20%;
        order: 3;
        margin-left: 0;
    }
    #home_about .inner .home_unit ._title h2 {
        writing-mode: vertical-rl;
    }
    #home_about .inner .home_unit ._title h2 span.line.active::before {
        width: 1px;
    }
    #home_about .inner .home_unit ._txt {
        order: 2;
        writing-mode: vertical-rl;
        width: auto;
        text-align: left;
        margin: 0;
    }
    #home_about .inner .home_unit ._img {
        width: 50%;
        aspect-ratio: 1.5;
        margin-bottom: 0;
    }
    #home_about .inner .home_unit .href {
        margin-right: 20%;
    }
    #home_about .inner .home_unit>.en {
        writing-mode: unset;
        width: -moz-fit-content;
        width: fit-content;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        opacity: 0.05;
        font-size: 4.5rem;
    }
    #home_rooms {
        background-size: 6rem, cover;
        background-position: top 4rem left 1rem, center;
    }
    #home_rooms .inner .home_unit {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
    #home_rooms .inner .home_unit ._txt {
        margin: 0;
        font-size: 0.9rem;
    }
    #home_rooms .inner .home_unit ._img {
        grid-column: 2/3;
        grid-row: 1/4;
    }
    #home_rooms .inner .home_unit ._img .en {
        font-size: 3rem;
        line-height: 0.6;
    }
    #home_rooms ._body.sticky {
        display: flex;
        justify-content: space-between;
        -webkit-mask-image: url("../img/rooms_mask.svg");
        mask-image: url("../img/rooms_mask.svg");
        -webkit-mask-size: cover;
        mask-size: cover;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: top center;
        mask-position: top center;
    }
    #home_rooms ._body.sticky ._item {
        position: relative;
        height: 61.8vw;
        width: 33.3%;
    }
    #home_rooms ._body.sticky ._item:last-child {
        width: 33.4%;
    }
    #home_rooms ._body.sticky ._item ._box {
        position: absolute;
        top: auto;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        padding: 2rem 0;
        text-align: center;
        background-image: linear-gradient(
0deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    }
    #home_rooms ._body.sticky ._item ._box ._title h3 span.jp {
        font-size: 1.5rem;
    }
    #home_rooms ._body.sticky ._item ._box ._title h3 span.en {
        font-size: 0.9rem;
    }
    #home_rooms ._body.sticky ._item ._box ._txt {
        font-size: 0.8rem;
    }
    #home_rooms ._body.sticky ._item ._box .href a {
        margin-left: auto;
    }
    #home_hot_spring .inner .home_unit._reverse {
        display: grid;
        grid-template-columns: 1fr 1fr;
        margin-bottom: 5rem;
        -moz-column-gap: 2rem;
        column-gap: 2rem;
    }
    #home_hot_spring .inner .home_unit._reverse ._title h2 span.appear.line {
        margin-left: auto;
    }
    #home_hot_spring .inner .home_unit._reverse ._title h2 span.appear.line::before {
        right: calc(100% + 1rem);
        left: -1rem;
    }
    #home_hot_spring .inner .home_unit._reverse ._title h2 span.appear.line.active::before {
        left: calc(100% - 40vw - 2rem);
    }
    #home_hot_spring .inner .home_unit._reverse ._txt {
        margin: 0;
    }
    #home_hot_spring .inner .home_unit._reverse ._img {
        grid-column: 1/2;
        grid-row: 1/3;
    }
    #home_hot_spring .inner ._body ._box {
        display: flex;
        justify-content: space-between;
        margin-bottom: 3em;
    }
    #home_hot_spring .inner ._body ._box ._item {
        margin-bottom: 0;
        width: 32.5%;
    }
    #home_hot_spring .inner ._body ._box ._item ._txt h3 span.en {
        font-size: 0.75rem;
    }
    #home_hot_spring .inner ._body ._box ._item ._txt h3 span.jp {
        font-size: 1.25rem;
    }
    #home_cuisine {
        background-position: top 6rem left -1rem, center;
        background-size: 6rem, cover;
    }
    #home_cuisine .inner:nth-child(1) {
        margin-bottom: 5rem;
    }
    #home_cuisine .inner .home_unit._reverse {
        display: grid;
        grid-template-columns: 1fr 1fr;
        -moz-column-gap: 2rem;
        column-gap: 2rem;
    }
    #home_cuisine .inner .home_unit._reverse ._title {
        margin-bottom: 2rem;
    }
    #home_cuisine .inner .home_unit._reverse ._txt {
        margin: 0;
        font-size: 0.9rem;
    }
    #home_cuisine .inner .home_unit._reverse ._img {
        grid-column: 2/3;
        grid-row: 1/4;
    }
    #home_cuisine .inner .home_unit._reverse ._img .en {
        font-size: 3rem;
        line-height: 0.6;
    }
    #home_cuisine .inner ._body ._box {
        display: flex;
        justify-content: space-between;
    }
    #home_cuisine .inner ._body ._box ._item {
        width: 32.5%;
    }
    #home_cuisine .inner ._body ._box ._item ._txt h3 span.jp {
        font-size: 1.25rem;
    }
    #home_cuisine .inner ._body ._box ._item ._desc {
        font-size: 0.8rem;
    }
    #home_plan {
        background-position: top 3rem right 3rem;
        background-size: 18rem;
    }
    #home_plan .inner ._body ._box {
        display: grid;
        grid-template-columns: 1fr 1fr;
        -moz-column-gap: 1rem;
        column-gap: 1rem;
    }
    #home_plan .inner ._body ._box ._item {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: span 6;
    }
    #home_plan .inner ._body ._box ._item ._txt {
        margin-bottom: 1rem;
    }
    #home_plan .inner ._body #booking._plan {
        /* height: 50vw; */
    }
    #home_scenery.hr {
        height: 61.8vw;
    }
    #home_relax {
        position: relative;
        overflow: hidden;
        padding: 10rem 0 7.5rem;
        background-position: top 3rem left 30%, center;
        background-size: 9rem, cover;
    }
    #home_relax .inner {
        width: 92.5%;
    }
    #home_relax .inner .home_unit {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
    #home_relax .inner .home_unit ._title h2 {
        overflow: visible;
    }
    #home_relax .inner .home_unit ._title h2 span.jp.appear.line.active::before {
        right: calc(100% - 40vw - 2rem);
    }
    #home_relax .inner .home_unit ._txt {
        padding-right: 1rem;
    }
    #home_relax .inner .home_unit ._img {
        width: 50vw;
        grid-column: 2/3;
        grid-row: 1/4;
    }
    #home_relax .inner .home_unit ._img .en {
        right: 0;
    }
    #home_relax .inner>.en {
        position: absolute;
        display: block;
        text-align: center;
        line-height: 0.666;
        font-size: 3rem;
        opacity: 0.1;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
    }
    #home_news {
        padding: 7.5rem 0 5rem;
        background-position: top 15rem left 6rem;
        background-size: 6.5rem;
    }
    #home_news .inner {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    #home_news .inner ._head {
        width: 30%;
        margin-bottom: 0;
    }
    #home_news .inner ._head ._title {
        padding-left: 3rem;
    }
    #home_news .inner ._body {
        width: 70%;
    }
    #home_news .inner ._body ._box ._item {
        margin-bottom: 1rem;
        padding-bottom: 1rem;
    }
    #home_instagram .inner ._head {
        justify-content: flex-end;
        -moz-column-gap: 3rem;
        column-gap: 3rem;
    }
    #home_instagram ._body ._box {
        height: 43vw;
    }
    #home_access {
        background-position: top 0.5rem right 19rem;
        background-size: 7rem;
    }
    #home_access .inner .home_unit._reverse {
        display: grid;
        grid-template-columns: 1fr 1fr;
        -moz-column-gap: 4rem;
        column-gap: 4rem;
    }
    #home_access .inner .home_unit._reverse ._title {
        margin-top: 1rem;
    }
    #home_access .inner .home_unit._reverse ._title h2 {
        text-align: right;
        padding-right: 5rem;
    }
    #home_access .inner .home_unit._reverse ._title h2 span.jp.appear.line {
        margin-left: auto;
    }
    #home_access .inner .home_unit._reverse ._title h2 span.jp.appear.line::before {
        position: absolute;
        content: "";
        right: calc(100% + 1rem);
        left: -1rem;
    }
    #home_access .inner .home_unit._reverse ._title h2 span.jp.appear.line.active::before {
        left: calc(100% - 40vw);
    }
    #home_access .inner .home_unit._reverse ._txt {
        margin: 0;
    }
    #home_access .inner .home_unit._reverse ._txt ._name h3 {
        text-align: left;
    }
    #home_access .inner .home_unit._reverse ._img {
        width: 45vw;
        grid-column: 1/2;
        grid-row: 1/3;
    }
    /* about
  -------------------------------------------------------------------------------- */
    #about .section_body .inner {
        width: 100%;
    }
    #about .section_body .inner ._item {
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
        -moz-column-gap: 5%;
        column-gap: 5%;
    }
    #about .section_body .inner:nth-child(2n) ._item {
        flex-direction: row;
    }
    #about .section_body .inner ._item ._img {
        width: 55%;
        margin-bottom: 0;
    }
    #about .section_body .inner ._item ._txt {
        width: 40%;
        margin-left: 5%;
    }
    #about .section_body .inner ._item ._txt ._title {
        margin-bottom: 1.5rem;
    }
    #about .section_body .inner ._item ._txt ._title h2 span.line {
        position: relative;
    }
    #about .section_body .inner ._item ._txt ._title h2 span.line::before {
        position: absolute;
        content: "";
    }
    #about .section_body .inner ._item ._txt ._title h2 span.line.active::before {
        right: calc(100% - 45vw - 1rem);
    }
    #about .section_body .inner:nth-child(2n) ._item ._txt ._title {
        text-align: right;
    }
    #about .section_body .inner:nth-child(2n) ._item ._txt ._title h2 span.jp {
        margin-left: auto;
    }
    #about .section_body .inner:nth-child(2n) ._item ._txt ._title h2 span.line::before {
        right: calc(100% + 1rem);
    }
    #about .section_body .inner:nth-child(2n) ._item ._txt ._title h2 span.line.active::before {
        left: calc(100% - 45vw - 1rem);
    }
    #voice .inner ._body {
        display: grid;
        grid-template-columns: 1fr 1fr;
        -moz-column-gap: 2%;
        column-gap: 2%;
    }
    #voice .inner ._body ._item {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: span 3;
    }
    #voice .inner ._body ._item ._rate span.line.active::before {
        right: calc(12rem - 44.5vw);
    }
    #voice .inner ._body ._item ._date span.line.active::before {
        left: calc(4rem - 44.5vw + 100%);
    }
    #about ._media .inner ._body {
        display: grid;
        grid-template-columns: 1fr 1fr;
        -moz-column-gap: 2%;
        column-gap: 2%;
    }
    #about ._media .inner ._body ._item {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: span 3;
    }
    #about ._media .inner ._body ._item ._img {
        max-width: 75%;
        margin-inline: auto;
    }
    /* rooms
  -------------------------------------------------------------------------------- */
    #rooms .section_body .inner ._box {
        display: flex;
        justify-content: space-between;
        -moz-column-gap: 1.5rem;
        column-gap: 0.5rem;
        -webkit-mask-image: url("../img/rooms_mask.svg");
        mask-image: url("../img/rooms_mask.svg");
        -webkit-mask-size: cover;
        mask-size: cover;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: top center;
    }
    #rooms .section_body .inner ._box ._item {
        position: relative;
        width: 33.3%;
    }
    #rooms .section_body .inner ._box ._item:nth-child(3) {
        width: 33.4%;
    }
    #rooms .section_body .inner ._box ._item ._img {
        aspect-ratio: unset;
        height: 38.2rem;
        clip-path: polygon(0 0, 100% 0, 100% 16rem, calc(100% - 9rem) 16rem, calc(100% - 9rem) 100%, 0 100%);
    }
    #rooms .section_body .inner ._box ._item ._img img {
        /* margin-bottom: 5rem; */
    }
    #rooms .section_body .inner ._box ._item ._txt {
        background-image: none;
        background-color: unset;
        padding-top: 0;
        top: 16rem;
        padding: 2.5rem 1.5rem 0;
    }
    #rooms .section_body .inner ._box ._item ._txt ._title {
        margin-left: 0;
    }
    #rooms .section_body .inner ._box ._item ._txt ._title h2 span.en {
        font-size: 0.8rem;
    }
    #rooms .section_body .inner ._box ._item ._txt ._title h2 span.jp {
        font-size: 1.666rem;
    }
    #rooms .section_body .inner ._box ._item ._txt ._desc {
        font-size: 0.9rem;
    }
    /* wing
  -------------------------------------------------------------------------------- */
    .wing .section_body .inner ._anchor ul {
        display: flex;
        justify-content: center;
        -moz-column-gap: 1rem;
        column-gap: 1rem;
    }
    .wing .section_body .inner ._anchor ul li a {
        width: 12.5rem;
    }
    .wing .section_body .inner ._box ._type ._type_head h2 span.line {
        font-size: 1.5rem;
    }
    .wing .section_body .inner ._box ._type ._type_head span.en {
        font-size: 0.9rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._img {
        width: 45%;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._img a {
        aspect-ratio: 1.5;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt {
        font-size: 1rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._bath {
        margin-bottom: 0.25rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title {
        margin-bottom: 1rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title h2 {
        line-height: 1.4;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title h2 span.jp {
        font-size: 1.25rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title h2 span.en {
        font-size: 1rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._size {
        font-size: 0.9rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._desc {
        font-size: 0.9rem;
        margin-bottom: 1rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt .href a.en {
        font-size: 0.8rem;
        padding: 0.4rem 2rem 0.3rem;
    }
    /* single-wing
  -------------------------------------------------------------------------------- */
    .room .section_body ._txt ._group ._price {
        display: flex;
        flex-wrap: wrap;
        -moz-column-gap: 2.5rem;
        column-gap: 2.5rem;
    }
    .room .section_body ._txt ._group ._price ._box ._body table {
        width: auto;
    }
    .room ._other .inner ._body {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        -moz-column-gap: 1rem;
        column-gap: 1rem;
        row-gap: 2.5rem;
    }
    .room ._other .inner ._body ._item {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: span 3;
        margin-bottom: 0;
        row-gap: 0;
    }
    .room ._other .inner ._body ._item ._img {
        aspect-ratio: 1.5;
        overflow: hidden;
    }
    .room ._other .inner ._body ._item ._img a {
        display: block;
        height: 100%;
    }
    .room ._other .inner ._body ._item ._txt {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: span 2;
    }
    .room ._other .inner ._body ._item ._txt ._title {
        margin-bottom: 0.5rem;
    }
    .room ._other .inner ._body ._item ._txt ._title h2 {
        line-height: 1.2;
    }
    .room ._other .inner ._body ._item ._txt ._title h2 span.jp {
        font-size: 1rem;
    }
    .room ._other .inner ._body ._item ._txt ._title h2 span.en {
        font-size: 0.8rem;
    }
    .room ._other .inner ._body ._item ._txt ._size {
        font-size: 0.9rem;
    }
    /* hot_spring
  -------------------------------------------------------------------------------- */
    #hot_spring .section_body ._item {
        display: flex;
        justify-content: center;
    }
    #hot_spring .section_body ._item ._img {
        width: 50%;
        aspect-ratio: 1.25;
    }
    #hot_spring .section_body ._item ._txt {
        width: 50%;
        display: grid;
        place-content: center;
        padding: 1rem 4%;
        aspect-ratio: 1.5;
        min-height: unset;
    }
    #hot_spring .section_body ._item:nth-child(2n) {
        flex-direction: row-reverse;
    }
    #hot_spring .section_body ._item:nth-child(2n+1) ._txt ._inner ._title {
        text-align: right;
    }
    #hot_spring .section_body ._item:nth-child(2n+1) ._txt ._inner ._title h2 span.line {
        margin-right: 0;
        margin-left: auto;
    }
    #hot_spring .section_body ._item:nth-child(2n) ._txt ._inner ._title h2 span.line::before {
        left: calc(100% + 1rem);
        transition: 2s;
    }
    #hot_spring .section_body ._item:nth-child(2n) ._txt ._inner ._title h2 span.line.active::before {
        right: calc(100% - 50vw + 2rem);
    }
    #hot_spring .section_body ._item:nth-child(2n+1) ._txt ._inner ._title h2 span.line::before {
        right: calc(100% + 1rem);
        transition: 2s;
    }
    #hot_spring .section_body ._item:nth-child(2n+1) ._txt ._inner ._title h2 span.line.active::before {
        left: calc(100% - 50vw + 2rem);
    }
    /* facilities
  -------------------------------------------------------------------------------- */
    #facilities .section_head ._txt {
        text-align: center;
    }
    #facilities .section_body ._item {
        height: 50vw;
    }
    /* lobby
  -------------------------------------------------------------------------------- */
    #lobby .section_body._lobby .inner {
        width: 90%;
    }
    #lobby .section_body._lobby .inner ._item ._img {
        width: 37rem;
        clip-path: polygon(0 0, 100% 0, 100% calc(100% - 4rem), calc(100% - 15rem) calc(100% - 4rem), calc(100% - 15rem) 100%, 0 100%);
    }
    #lobby .section_body._lobby .inner ._item ._txt {
        width: auto;
        top: calc(100% - 3.5rem);
        right: auto;
        left: 22rem;
        padding: 1rem 2rem 1rem 2rem;
    }
    #lobby .section_body._lobby .inner ._item:nth-child(2n) {
        display: flex;
        flex-direction: row-reverse;
    }
    #lobby .section_body._lobby .inner ._item:nth-child(2n) ._img {
        clip-path: polygon(0 0, 100% 0, 100% 100%, calc(100% - 15rem) 100%, calc(100% - 15rem) calc(100% - 4rem), 0 calc(100% - 4rem), 0 100%);
    }
    #lobby .section_body._lobby .inner ._item:nth-child(2n) ._txt {
        width: auto;
        top: calc(100% - 3.5rem);
        right: 15rem;
        left: auto;
        padding: 1rem 2rem 1rem 2rem;
    }
    #lobby .section_body._box .inner ._box {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    #lobby .section_body._box .inner ._box ._item {
        width: 48%;
    }
    #lobby .section_body._box .inner ._box ._item ._txt ._title h3 span.en {
        font-size: 0.85rem;
        margin-left: 0.5rem;
    }
    #lobby .section_body._box .inner ._box ._item ._txt ._desc {
        font-size: 0.85rem;
    }
    #lobby .section_body.hr {
        aspect-ratio: unset;
        height: 61.8vw;
    }
    #lobby .section_body.hr ._inner ._box ._head span.en {
        font-size: 2rem;
    }
    #lobby .section_body.hr ._inner ._box ._body {
        font-size: 1rem;
    }
    /* salon
  -------------------------------------------------------------------------------- */
    #salon .section_body .inner ._menu .menu_item .menu_item_head {
        margin-bottom: 4rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_head ._title {
        margin-bottom: 2.5rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_head ._title h2 span.line {
        font-size: 1.75rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_head ._title h2 span.line::before {
        position: absolute;
        content: "";
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_head ._title h2 span.line.active::before {
        right: calc(100% - 90vw);
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_head ._title h2 span.en {
        font-size: 1.25rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_head ._desc {
        margin-left: 1rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_head ._note {
        margin-left: 1rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._name h3.line::before {
        right: calc(100% + 12.5rem - 90vw);
        left: calc(100% + 1rem);
        top: 2rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._name h3.line.active::before {
        right: calc(100% + 12.5rem - 90vw);
        top: 2rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._price {
        width: 9rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._body {
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._body ._img {
        width: 50%;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._body ._desc {
        width: 47.5%;
    }
    #salon .section_body .inner>._note {
        width: 80%;
        margin-inline: auto;
        padding: 2.5rem;
    }
    /* hot_stone_spa
  -------------------------------------------------------------------------------- */
    #hot_stone_spa .section_head {
        display: none;
    }
    #hot_stone_spa .section_body ._txt .inner ._box ._head {
        text-align: center;
    }
    #hot_stone_spa .section_body ._txt .inner ._box ._head h2 span.jp {
        margin-inline: auto;
        font-size: 1.25rem;
    }
    #hot_stone_spa .section_body ._txt .inner ._box ._head h2 span.jp::before {
        content: none;
    }
    #hot_stone_spa .section_body ._txt .inner ._box ._note {
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
    /* dish
  -------------------------------------------------------------------------------- */
    #dish .section_body .inner ._intro ._txt {
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
    #dish .section_body .inner ._ingredients ._item {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center;
    }
    #dish .section_body .inner ._ingredients ._item ._img {
        width: 50%;
    }
    #dish .section_body .inner ._ingredients ._item ._txt {
        width: 46%;
    }
    #dish .section_body .inner ._ingredients ._item .plan {
        margin-left: 0;
        width: 100%;
    }
    #dish .section_body .inner ._ingredients ._item .plan ._body .href.href_plan a {
        margin-left: 0;
    }
    #dish .section_body .inner ._ingredients ._item:nth-child(2n) {
        flex-direction: row-reverse;
    }
    #dish .section_body .inner ._ingredients ._item ._txt ._title h2 span.line.jp {
        display: block;
    }
    #dish .section_body .inner ._ingredients ._item ._txt ._title h2 span.line.jp::before {
        content: "";
    }
    #dish .section_body .inner ._ingredients ._item ._txt ._title h2 span.en {
        margin-left: 0;
    }
    #dish .section_body .inner ._ingredients ._item:nth-child(2n) {
        flex-direction: row-reverse;
    }
    #dish .section_body .inner ._ingredients ._item:nth-child(2n) ._txt ._title h2 span.active.jp::before {
        right: calc(100% - 45vw - 2rem);
    }
    #dish .section_body .inner ._ingredients ._item:nth-child(2n+1) ._txt ._title {
        text-align: right;
    }
    #dish .section_body .inner ._ingredients ._item:nth-child(2n+1) ._txt ._title h2 span.jp {
        margin-right: 0;
        margin-left: auto;
    }
    #dish .section_body .inner ._ingredients ._item:nth-child(2n+1) ._txt ._title h2 span.jp::before {
        right: calc(100% + 1rem);
        left: calc(100% + 1rem);
    }
    #dish .section_body .inner ._ingredients ._item:nth-child(2n+1) ._txt ._title h2 span.active.jp::before {
        left: calc(100% - 50vw + 1rem);
    }
    #dish .section_body ._gallery {
        height: 33.3vw;
        margin-bottom: 7.5rem;
    }
    #dish .section_body .inner ._list ._item {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
    }
    #dish .section_body .inner ._list ._item ._img {
        width: 50%;
    }
    #dish .section_body .inner ._list ._item ._img .en span.line.active::before {
        bottom: calc(100% + 1rem - 23.3vw);
    }
    #dish .section_body .inner ._list ._item ._txt {
        width: 46%;
        margin-left: 0;
        margin-bottom: 2.5rem;
    }
    /* dragon_eyes
  -------------------------------------------------------------------------------- */
    #dragon_eyes .section_body .inner ._box ._item {
        margin-bottom: 5rem;
    }
    #dragon_eyes .section_body .inner ._box ._item ._img {
        width: 84%;
        margin-left: 16%;
        clip-path: polygon(30% 0, 100% 0, 100% 100%, 0 100%, 0 4rem, 30% 4rem);
    }
    #dragon_eyes .section_body .inner ._box ._item ._title {
        position: absolute;
        width: 41.2%;
        padding: 0.25rem 2rem 0.5rem 0;
        top: 0;
        left: 0;
    }
    #dragon_eyes .section_body .inner ._box ._item ._title h2 {
        font-size: 1.75rem;
        text-align: right;
    }
    #dragon_eyes .section_body .inner ._box ._item:nth-child(2n) ._title h2 {
        text-align: left;
    }
    #dragon_eyes .section_body .inner ._box ._item ._desc {
        margin: 0 16% 2rem;
    }
    #dragon_eyes .section_body .inner ._box ._item ._sign {
        margin-right: 16%;
    }
    #dragon_eyes .section_body .inner ._box ._item:nth-child(2n) ._img {
        margin-right: 16%;
        margin-left: 0;
        clip-path: polygon(0 0, 70% 0, 70% 4rem, 100% 4rem, 100% 100%, 0 100%);
    }
    #dragon_eyes .section_body .inner ._box ._item:nth-child(2n) ._title {
        top: 0;
        left: auto;
        right: 0;
        width: 41.2%;
        padding: 0.25rem 0 0.5rem 2rem;
    }
    #dragon_eyes .section_body .inner ._gallery ._item .swiper._main .swiper-wrapper .swiper-slide ._desc {
        font-size: 0.9rem;
        padding: 0.5rem;
    }
    /* members
  -------------------------------------------------------------------------------- */
    #members .section_body .inner ._note {
        width: -moz-fit-content;
        width: fit-content;
        margin: 0 auto 5rem;
    }
    #members .section_body .inner ._box {
        margin-bottom: 5rem;
    }
    #members .section_body .inner ._box ._head ._title h2 {
        font-size: 1.75rem;
    }
    #members .section_body .inner ._box ._body ._rows {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    #members .section_body .inner ._box ._body ._rows ._item {
        margin-bottom: 0;
    }
    #members .section_body .inner ._box ._body ._rows._row_01 ._item {
        width: 49%;
    }
    #members .section_body .inner ._box ._body ._rows._row_02 ._item {
        width: 49%;
    }
    #members .section_body .inner ._box ._body ._rows._row_03 ._item {
        width: 32.5%;
    }
    #members .section_body .inner ._box ._body ._rows._row_04 ._item {
        width: 49%;
    }
    #members .section_body .inner ._box ._body ._rows ._item ._img ._attach.en {
        font-size: 1.25rem;
    }
    #members .section_body .inner ._box ._body ._rows ._item ._img ._number.en {
        font-size: 2rem;
        left: 0.5rem;
    }
    #members .section_body .inner ._box ._body ._rows ._item ._txt ._title h3 {
        font-size: 1rem;
    }
    #members .section_body .inner ._box ._body ._rows ._item ._txt ._title h3::before {
        left: calc(100% + 0.5rem);
    }
    #members .section_body .inner ._box ._body ._rows ._item ._txt ._title h3.active::before {
        right: calc(100% - 30vw + 0.5rem);
    }
    #members .section_body .inner ._box ._body ._rows._row_03 ._item ._txt ._title h3.active::before {
        right: calc(100% - 30vw + 0.5rem);
    }
    #members .section_body .inner ._box ._body ._rows._row_01 ._item ._txt ._title h3.active::before,
    #members .section_body .inner ._box ._body ._rows._row_02 ._item ._txt ._title h3.active::before,
    #members .section_body .inner ._box ._body ._rows._row_04 ._item ._txt ._title h3.active::before {
        right: calc(100% - 45vw + 0.5rem);
    }
    #members .section_body .inner ._box ._body ._rows ._item ._txt ._desc {
        font-size: 0.8rem;
    }
    #members .section_body .inner ._box ._body ._rows ._item ._txt .href {
        margin-bottom: 1.25rem;
    }
    #members .section_body .inner ._box#membership_form ._body ._title_sub {
        margin-bottom: 3rem;
    }
    #members .section_body .inner ._box#membership_form ._body ._form {
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
    /* access
  -------------------------------------------------------------------------------- */
    #access .section_body .inner ._box._feature {
        margin-bottom: 5rem;
    }
    #access .section_body .inner ._box._feature ._item {
        display: flex;
        justify-content: space-between;
    }
    #access .section_body .inner ._box._feature ._item ._img {
        width: 47.5%;
    }
    #access .section_body .inner ._box._feature ._item ._txt {
        width: 50%;
    }
    #access .section_body .inner ._box._feature ._item ._txt ._title h2 span.jp.line {
        font-size: 1.25rem;
    }
    #access .section_body .inner ._box._feature ._item ._txt ._title h2 span.jp.line.active::before {
        right: calc(100% - 45vw);
    }
    #access .section_body .inner ._jump {
        -moz-column-gap: 2rem;
        column-gap: 2rem;
    }
    #access .section_body .inner ._jump .href {
        width: 17rem;
    }
    #access .section_body .inner ._jump .href a {
        font-size: 1rem;
        padding: 0.75rem;
    }
    #access .section_body .inner ._box#area ._body {
        flex-direction: row;
        justify-content: space-between;
    }
    #access .section_body .inner ._box#area ._body ._txt {
        width: 47.5%;
    }
    #access .section_body .inner ._box#area ._body ._txt ._item {
        margin-bottom: 2.5rem;
    }
    #access .section_body .inner ._box#area ._body ._txt ._item ._head h3 span.line.active::before {
        right: calc(100% - 42.5vw);
    }
    #access .section_body .inner ._box#area ._body ._img {
        width: 50%;
    }
    #access .section_body .hr {
        aspect-ratio: 1.5;
    }
    #access .section_body ._box#by_train ._body ._img,
    #access .section_body ._box#by_car ._body ._img {
        margin-bottom: 7.5rem;
    }
    /* guide
  -------------------------------------------------------------------------------- */
    #guide .section_body .inner ._box#guide_course::after {
        width: 32%;
        content: "";
    }
    #guide .section_body .inner ._box#guide_course ._item {
        width: 32%;
    }
    #guide .section_body .inner ._box#guide_ss ._body::after {
        width: 32%;
        content: "";
    }
    #guide .section_body .inner ._box#guide_ss ._body ._item {
        width: 32%;
    }
    #guide .section_body .inner ._note#guide_basic {
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
    /* guide single
  -------------------------------------------------------------------------------- */
    #guide_sasara {
        top: 31.4rem;
        left: 18rem;
        width: 9.2rem;
    }
    #guide_01 {
        top: 63rem;
        left: 33.2rem;
        width: 5.2rem;
    }
    #guide_02 {
        top: 62.2rem;
        left: 17.6rem;
        width: 5rem;
    }
    #guide_03 {
        top: 61.6rem;
        left: 22.4rem;
        width: 8.2rem;
    }
    #guide_04 {
        top: 59.8rem;
        left: 38.6rem;
        width: 5.8rem;
    }
    #guide_05 {
        top: 58rem;
        left: 37rem;
        width: 7.8rem;
    }
    #guide_06 {
        top: 59rem;
        left: 12.4rem;
        width: 3.6rem;
    }
    #guide_07 {
        top: 56rem;
        left: 12.8rem;
        width: 7rem;
    }
    #guide_08 {
        top: 56.8rem;
        left: 0.4rem;
        width: 4.8rem;
    }
    #guide_09 {
        top: 50rem;
        left: 16rem;
        width: 5.4rem;
    }
    #guide_10 {
        top: 46rem;
        left: 12.8rem;
        width: 5.2rem;
    }
    #guide_11 {
        top: 43.6rem;
        left: 2.8rem;
        width: 8.6rem;
    }
    #guide_12 {
        top: 37rem;
        left: 13.4rem;
        width: 4.6rem;
    }
    #guide_13 {
        top: 38.6rem;
        left: 23.8rem;
        width: 5rem;
    }
    #guide_14 {
        top: 51.8rem;
        left: 24.8rem;
        width: 11rem;
    }
    #guide_15 {
        top: 50rem;
        left: 30rem;
        width: 4rem;
    }
    #guide_16 {
        top: 49rem;
        left: 43.2rem;
        width: 3.4rem;
    }
    #guide_17 {
        top: 45.4rem;
        left: 45.2rem;
        width: 3.4rem;
    }
    #guide_18 {
        top: 42.2rem;
        left: 39.4rem;
        width: 5.4rem;
    }
    #guide_19 {
        top: 38.6rem;
        left: 36.2rem;
        width: 4.4rem;
    }
    #guide_20 {
        top: 30.8rem;
        left: 28rem;
        width: 8rem;
    }
    #guide_21 {
        top: 25.8rem;
        left: 26.4rem;
        width: 3.2rem;
    }
    #guide_22 {
        top: 22rem;
        left: 24rem;
        width: 7.4rem;
    }
    #guide_23 {
        top: 25.2rem;
        left: 31.2rem;
        width: 16rem;
    }
    #guide_24 {
        top: 9.6rem;
        left: 34.2rem;
        width: 8.8rem;
    }
    #guide_25 {
        top: 2rem;
        left: 39.2rem;
        width: 8.4rem;
    }
    #guide_26 {
        top: 8.8rem;
        left: 27.2rem;
        width: 4.2rem;
    }
    #guide_27 {
        top: 5.2rem;
        left: 24.6rem;
        width: 5.6rem;
    }
    #guide_28 {
        top: 5rem;
        left: 11.4rem;
        width: 4.6rem;
    }
    #guide_29 {
        top: 22rem;
        left: 11.2rem;
        width: 5.2rem;
    }
    #guide_30 {
        top: 24.2rem;
        left: 13.8rem;
        width: 3.6rem;
    }
    #guide_31 {
        top: 22rem;
        left: 35.4rem;
        width: 11.2rem;
    }
    #guide_32 {
        top: 2rem;
        left: 2rem;
        width: 6rem;
    }
    #guide_33 {
        top: 2rem;
        left: 2rem;
        width: 6rem;
    }
    #guide_34 {
        top: 2rem;
        left: 2rem;
        width: 6rem;
    }
    #guide_35 {
        top: 2rem;
        left: 2rem;
        width: 6rem;
    }
    #guide_36 {
        top: 2rem;
        left: 2rem;
        width: 6rem;
    }
    #guide_37 {
        top: 2rem;
        left: 2rem;
        width: 6rem;
    }
    #guide_38 {
        top: 2rem;
        left: 2rem;
        width: 6rem;
    }
    #guide_39 {
        top: 2rem;
        left: 2rem;
        width: 6rem;
    }
    #guide_map ._route {
        width: -moz-fit-content;
        width: fit-content;
        min-width: 22.5rem;
        margin-inline: auto;
    }
    #guide.single .section_body .inner ._box#guide_course ._item ._txt ._title h2 {
        font-size: 1rem;
    }
    #guide.single .section_body .inner ._box#guide_ss ._body ._item ._txt ._title {
        font-size: 1rem;
    }
    /* reference
  -------------------------------------------------------------------------------- */
    #useful_reference .section_body .inner ._box ._item ._body {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
    }
    #useful_reference .section_body .inner ._box ._item ._body ._media {
        margin-bottom: 0;
        width: 50%;
    }
    #useful_reference .section_body .inner ._box ._item ._body ._txt {
        margin-bottom: 0;
        width: 47.5%;
    }
    #useful_reference .section_body .inner ._box ._item ._body ._plan .href a {
        margin-left: 0;
    }
    /* faq
  -------------------------------------------------------------------------------- */
    #faq .section_body .inner {
        width: 80%;
    }
    #faq .section_body .inner ._box ._item ._q,
    #faq .section_body .inner ._box ._item ._a {
        font-size: 1rem;
    }
    #faq .section_body .inner ._box ._item ._a::before {
        color: var(--color-purple);
        background-color: #fff;
        background-image: linear-gradient(45deg, #fff, #fff);
        border: 1px solid var(--color-purple);
    }
    /* gallery
  -------------------------------------------------------------------------------- */
    #photo-gallery .section_body .inner ._box ._item ._body {
        grid-template-columns: repeat(4, 1fr);
        gap: 0.333rem;
    }
    /* contact
  -------------------------------------------------------------------------------- */
    #contact .section_body .inner ._box ._body #form_box {
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
    /* company
  -------------------------------------------------------------------------------- */
    #company .section_body .inner ._box ._body table {
        min-width: 40rem;
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
    #company .section_body .inner ._box ._body table tr th,
    #company .section_body .inner ._box ._body table tr td {
        font-size: 1rem;
        padding: 1.25rem;
    }
    /* privacy-policy
  -------------------------------------------------------------------------------- */
    /* news
  -------------------------------------------------------------------------------- */
    #news_list ._item {
        flex-direction: row;
        align-items: center;
        margin-bottom: 2rem;
        padding-bottom: 1.75rem;
    }
    #news_list ._item ._txt {
        width: 80%;
    }
    #news_list ._item ._txt ._head {
        font-size: 1rem;
        margin-bottom: 0.5rem;
    }
    #news_list ._item ._txt ._title h3 a {
        font-size: 1.1rem;
    }
    #news_list ._item ._img {
        width: 20%;
        margin: 0;
    }
    #news_sort ._box ._head h3 {
        font-size: 1.25rem;
    }
    #news_sort ._box ._body ul li {
        width: 12.5%;
    }
    /* single-news
  -------------------------------------------------------------------------------- */
}
@media (width > 1024px) {
    /* common
  -------------------------------------------------------------------------------- */
    html {
        font-size: 1vw;
    }
    section {
        padding: 10rem 0;
    }
    .inner {
        width: 70%;
    }
    .line.active::before {
        right: calc(100% - 70vw);
    }
    #page_head {
        height: 100vh;
    }
    #page_head ._txt {
        padding: 2.5rem 4rem 1.5rem 5rem;
        display: flex;
        align-items: center;
        -moz-column-gap: 5rem;
        column-gap: 5rem;
    }
    .room #page_head ._txt,
    #hot_stone_spa #page_head ._txt {
        width: 61.8%;
    }
    #page_head ._txt ._head ._title h1 {
        font-size: 2.5rem;
    }
    #page_head ._txt ._head .en {
        font-size: 1.75rem;
    }
    #scroll_down {
        background-image: none;
        background-color: #fff;
        top: 1.5rem;
        left: 2.5rem;
        width: 1px;
    }
    #scroll_down::before {
        position: absolute;
        content: "";
        inset: 0;
        background-color: #a99ea4;
        animation-name: scroll_down;
        animation-duration: 4s;
        animation-timing-function: cubic-bezier(0.65, 0.05, 0.36, 1);
        animation-iteration-count: infinite;
    }
    @keyframes scroll_down {
        0% {
            transform: scale(1, 0);
            transform-origin: 0 0;
        }
        50% {
            transform: scale(1, 1);
            transform-origin: 0 0;
        }
        50.1% {
            transform: scale(1, 1);
            transform-origin: 0 100%;
        }
        100% {
            transform: scale(1, 0);
            transform-origin: 0 100%;
        }
    }
    .section_head .inner ._txt {
        line-height: 1.8;
    }
    .href a {
        padding: 0.6rem 2rem 0.55rem;
        border-radius: 2rem;
        background-image: linear-gradient(-90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, #b70060 50%, #b70060 100%);
        background-size: 200%;
        background-position: 100%;
        transition: 0.5s;
    }
    .href a:hover {
        background-position: 0%;
        color: #fff;
        border-color: var(--color-purple);
    }
    .href_plan a {
        background-image: linear-gradient(-90deg, #fbb03b 0%, #ff7bac 50%, #ff7bac 50%, #b70060 100%);
    }
    input[type=radio], input[type=checkbox], button, select {
        cursor: pointer;
    }
    #form_box {
        margin: 0 16%;
    }
    .circle::before {
        position: absolute;
        content: "";
        top: calc(50% - 0.5rem);
        left: calc(50% - 0.5rem);
        width: 1rem;
        height: 1rem;
        border-radius: 0.5rem;
        border: 0.25px solid rgba(255, 255, 255, 0.5);
        opacity: 0;
    }
    .circle:hover::before {
        animation-name: hover_circle;
        animation-duration: 0.75s;
        animation-timing-function: ease;
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }
    @keyframes hover_circle {
        0% {
            opacity: 0;
            transform: scale(1);
        }
        50% {
            opacity: 1;
        }
        100% {
            opacity: 0;
            transform: scale(3);
        }
    }
    .display_pc {
        display: block;
        flex: 1;
    }
    .display_sp {
        display: none;
    }
    /* loading
  -------------------------------------------------------------------------------- */
    #intro_logo {
        width: 15rem;
        height: 7.5rem;
    }
    /* header
  -------------------------------------------------------------------------------- */
    header {
        height: 3.6rem;
    }
    header .inner {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    header .inner ._left {
        flex-direction: row;
        justify-content: flex-start;
    }
    #header_index span {
        left: 1.2rem;
        width: 1.2rem;
        height: 1px;
        transition: 0.5s;
    }
    #header_index:hover span {
        width: 0.8rem;
        left: 1.4rem;
    }
    #header_index span:nth-child(1) {
        top: 1.6rem;
    }
    #header_index span:nth-child(2) {
        top: 2.1rem;
    }
    header.active #header_index span:nth-child(1) {
        top: 1.55rem;
    }
    header.active #header_index span:nth-child(2) {
        top: 2.1rem;
    }
    header.active #header_index:hover span:nth-child(1) {
        top: 1.65rem;
    }
    header.active #header_index:hover span:nth-child(2) {
        top: 2.05rem;
    }
    header .inner ._left ._logo a {
        position: relative;
    }
    header .inner ._left ._logo a img {
        height: 2.15rem;
    }
    header.active .inner ._left ._logo {
        visibility: hidden;
        opacity: 0;
    }
    header .inner ._left nav {
        display: block;
        margin-left: 1rem;
    }
    header.active .inner ._left nav {
        visibility: hidden;
        opacity: 0;
    }
    header .inner ._left nav ul {
        display: flex;
    }
    header .inner ._left nav ul li a {
        position: relative;
        color: #fff;
        font-size: 0.9rem;
        padding: 0.125rem 1.25rem;
        border-right: 1px solid rgba(255, 255, 255, 0.25);
    }
    header .inner ._left nav ul li a:last-child {
        border-right: none;
    }
    header .inner ._right {
        display: flex;
    }
    header .inner ._right ._sns {
        display: flex;
        align-items: center;
        -moz-column-gap: 0.75rem;
        column-gap: 0.75rem;
        margin-right: 5rem;
    }
    header.active .inner ._right ._sns {
        visibility: hidden;
        opacity: 0;
    }
    header .inner ._right ._sns a {
        position: relative;
    }
    header .inner ._right ._sns a img {
        height: 1.25rem;
    }
    header .inner ._right #translate {
        position: relative;
        color: #fff;
        font-size: 0.9rem;
        padding: 0 1rem;
        cursor: pointer;
    }
    #header_menu {
        flex-direction: row;
    }
    #header_menu.active {
        z-index: 2;
    }
    #header_menu ._txt {
        position: relative;
        height: auto;
        width: 61.8%;
        padding: 10rem 20rem 5rem;
    }
    #header_menu ._txt a {
        position: relative;
    }
    #header_menu ._txt a::before {
        position: absolute;
        content: "";
        inset: 0;
        clip-path: inset(0 100% 0 0);
        background-color: rgb(255 255 255 / 77%);
        transition: 0.5s;
        z-index: 1;
    }
    #header_menu ._txt a:hover::before {
        clip-path: inset(0 0 0 0);
    }
    #header_menu ._txt ._menu {
        margin-bottom: 10rem;
    }
    #header_menu ._txt ._menu ._main {
        width: auto;
    }
    #header_menu ._txt ._menu ._sub {
        width: auto;
    }
    #header_menu ._txt ._menu ._sub ul li a {
        font-size: 0.9rem;
    }
    #header_menu ._txt ._notice {
        width: 100%;
    }
    #header_menu ._txt ._sns {
        position: absolute;
        bottom: 5rem;
        right: 5rem;
        width: auto;
        order: unset;
    }
    #header_menu ._img {
        height: auto;
        width: 38.2%;
    }
    #header_menu ._img ._inner ._head h3.en {
        letter-spacing: 0.05rem;
    }
    #header_menu ._img ._inner ._body {
        display: block;
    }
    #header_menu ._img ._inner ._body .href a {
        width: 12.5rem;
        font-size: 0.9rem;
        padding: 0.666rem;
        background-image: linear-gradient(90deg, #b70060 0%, #890042 50%, #890042 50%, #b70060 100%);
        border: none;
    }
    #header_menu ._img ._inner ._body .href._reserve {
        margin-bottom: 1rem;
    }
    /* footer
  -------------------------------------------------------------------------------- */
    footer {
        padding: 5rem 0;
    }
    footer .inner {
        display: grid;
        grid-template-columns: 12.5rem 1fr;
        -moz-column-gap: 5rem;
        column-gap: 5rem;
        row-gap: 3rem;
    }
    footer .inner ._logo {
        order: 1;
        width: 100%;
    }
    footer .inner ._logo a {
        width: auto;
    }
    footer .inner ._location {
        order: 3;
        margin: 0;
        width: 100%;
    }
    footer .inner ._location ._address {
        font-size: 1rem;
    }
    footer .inner ._location ._tel {
        display: none;
    }
    footer .inner ._location ._tel a {
        font-size: 1rem;
    }
    footer .inner ._location ._map a {
        padding: 0.25rem 1.25rem;
        letter-spacing: 0.05rem;
    }
    footer .inner ._location ._map a.en {
        background-image: linear-gradient(-90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, #fff 50%, #fff 100%);
        background-size: 200%;
        background-position: 100%;
        transition: 0.5s;
    }
    footer .inner ._location ._map a.en:hover {
        background-position: 0%;
        color: var(--color-purple);
    }
    footer .inner ._ex {
        display: block;
        order: 5;
        grid-row: 3/5;
        grid-column: 1/2;
        align-self: flex-end;
    }
    footer .inner ._ex .href {
        margin-bottom: 0.75rem;
    }
    footer .inner ._ex .href a {
        font-size: 1rem;
        margin-bottom: 0.75rem;
        border: none;
        /* background-color: var(--color-purple); */
        background-image: linear-gradient(-90deg, #b70060 0%, #b70060 50%, #ffffff 50%, #ffffff 100%);
        border-radius: 0.25rem;
        width: auto;
        text-align: center;
        padding: 1rem;
    }
    footer .inner ._ex .href a:hover {
        color: var(--color-purple);
    }
    footer .inner ._ex .href._reserve a {
    background-image: url(../img/logo_mark_white.svg), linear-gradient(-90deg, #b70060 0%, #b70060 50%, #ffffff 50%, #ffffff 100%);
    background-size: 1.25rem, 200%;
    background-repeat: no-repeat, no-repeat;
    background-position: left 2rem center, 100%;
}
    footer .inner ._ex .href._reserve a:hover {
    background-position: left 2rem center, 0%;
    background-size: 1.25rem, 200%;
}
    footer .inner ._ex .href._tel {
        margin-bottom: 0;
    }
    footer .inner ._menu_main {
        order: 4;
        width: auto;
    }
    footer .inner ._menu_main ul {
        display: flex;
        -moz-column-gap: 1rem;
        column-gap: 1rem;
        justify-content: flex-end;
    }
    footer .inner ._menu_main ul li a {
        margin-bottom: 0;
    }
    footer .inner ._menu_main ul li a ._img {
        display: block;
        width: 19.5rem;
        aspect-ratio: 1.5;
        margin-bottom: 0.75rem;
        overflow: hidden;
    }
    footer .inner ._menu_main ul li a:hover ._img::before {
        clip-path: inset(0 0 0 0);
    }
    footer .inner ._menu_main ul li a ._img img {
        -o-object-fit: cover;
        object-fit: cover;
        width: 100%;
        height: 100%;
    }
    footer .inner ._menu_main ul li a ._txt span.jp {
        font-size: 1.1rem;
        display: inline;
        background-image: linear-gradient(-90deg, #fff 0%, #fff 50%, var(--color-purple-light) 50%, var(--color-purple-light) 100%);
        -webkit-background-clip: text;
        background-size: 200%;
        background-position: 100%;
        -webkit-text-fill-color: transparent;
        transition: 0.5s;
    }
    footer .inner ._menu_main ul li a:hover ._txt span.jp {
        background-position: 0;
    }
    footer .inner ._menu_main ul li a ._txt span.en {
        margin-left: 1rem;
        opacity: 0.5;
    }
    footer .inner ._menu_sub {
        margin: 0;
        order: 6;
        width: auto;
        margin: 3rem 0 0;
    }
    footer .inner ._menu_sub ul {
        display: flex;
        -moz-column-gap: 1.25rem;
        column-gap: 1.25rem;
        justify-content: flex-end;
    }
    footer .inner ._menu_sub ul li a {
        font-size: 0.9rem;
        background-image: linear-gradient(-90deg, #fff 0%, #fff 50%, var(--color-purple-light) 50%, var(--color-purple-light) 100%);
        -webkit-background-clip: text;
        background-size: 200%;
        background-position: 100%;
        -webkit-text-fill-color: transparent;
        transition: 0.5s;
    }
    footer .inner ._menu_sub ul li a:hover {
        background-position: 0%;
    }
    footer .inner ._menu_notice {
        order: 7;
        width: auto;
        margin-top: -2rem;
    }
    footer .inner ._menu_notice ul {
        justify-content: flex-end;
    }
    footer .inner ._sns {
        order: 2;
        width: 100%;
        justify-content: flex-end;
        align-items: flex-end;
    }
    footer .inner ._sns a {
        position: relative;
        display: block;
    }
    footer .inner ._sns a::before {
        position: absolute;
        content: "";
        inset: 0;
        clip-path: inset(0 100% 0 0);
        background-color: rgb(176 2 92 / 50%);
        transition: 0.5s;
    }
    footer .inner ._sns a:hover::before {
        clip-path: inset(0 0 0 0);
    }
    footer .inner #copyright {
        grid-column: 1/3;
    }
    #fixed_reserve {
        bottom: 50vh;
    }
    #fixed_reserve a {
        font-size: 1.2rem;
        padding: 1.75rem 0.5rem;
        border-top-right-radius: 0.5rem;
        border-bottom-right-radius: 0.5rem;
    }
    #page_top {
        position: fixed;
        display: none;
        bottom: 0;
        left: 0;
        z-index: 1;
    }
    #page_top a {
        display: block;
        font-size: 0.9rem;
        background-color: var(--color-purple-light);
        color: #fff;
        line-height: 1;
        padding: 1rem 0.75rem 1rem 0.5rem;
        writing-mode: sideways-rl;
        border-top-right-radius: 0.5rem;
        transition: 0.5s;
    }
    #page_top a:hover {
        background-color: #ff96cd;
    }

    /* home
  -------------------------------------------------------------------------------- */
    #home_top .inner {
        width: 84%;
    }
    #home_top .inner ._copy {
        right: 0;
        font-size: 3rem;
    }
    #home_top .inner #booking {
        position: absolute;
        bottom: 1rem;
        right: 0;
        left: 0;
        margin: auto;
        border-radius: 0.5rem;
        z-index: 1;
    }
    .home_unit ._title h2 {
        font-size: 3rem;
    }
    .home_unit ._title h2 span.en {
        font-size: 1rem;
    }
    .home_unit ._title h2 span.line.active::before {
        right: calc(100% - 33.3vw - 2rem);
    }
    .home_unit ._img {
        width: 40rem;
    }
    .home_unit ._img .en {
        font-size: 4rem;
        line-height: 0.6;
    }
    #home_booking {
    position: absolute;
    top: calc(100vh - 144px);
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
    width: fit-content;
    border-radius: 10px;
}
    #booking {}
    #booking form {
        /* box-shadow: none; */
        padding: 20px 50px 10px;
        max-width: unset;
    }
    body .search-widget-search-container-bf1818 .search-widget-button-wrapper-d2b715 {
        display: inline-block;
        width: auto;
        margin-inline: 0;
    }
    #home_about .inner {
        width: 66.6%;
    }
    #home_about .inner .home_unit ._title h2 {
        font-size: 1.75rem;
    }
    #home_about .inner .home_unit ._title h2 span::before {
        right: 1.35rem;
        top: 11.5rem;
    }
    #home_about .inner .home_unit ._title h2 span.line.active::before {
        height: 5rem;
    }
    #home_about .inner .home_unit ._txt {
        font-size: 1.25rem;
    }
    #home_about .inner .home_unit>.en {
        font-size: 6rem;
    }
    #home_rooms {
        background-size: 8rem, cover;
        background-position: top 7rem left 8rem, center;
    }
    #home_rooms .inner {
        width: 70%;
        margin-right: auto;
    }
    #home_rooms .inner .home_unit {
        margin-bottom: 5rem;
    }
    #home_rooms .inner .home_unit ._txt {
        font-size: 1.15rem;
    }
    #home_rooms .inner .home_unit ._img .en {
        font-size: 4rem;
        left: -7.5rem;
    }
    #home_rooms ._body.sticky ._item {
        height: 45rem;
        transition: 1s;
    }
    #home_rooms ._body.sticky ._item:hover {
        filter: brightness(1.35);
    }
    #home_rooms ._body.sticky ._item ._box {
    padding: 2rem 0 3rem;
}
    #home_rooms ._body.sticky ._item:hover {
        width: 50%;
    }
    #home_hot_spring {
        background-position: top 6rem right 5rem, center;
        background-size: 8rem, cover;
    }
    #home_hot_spring .inner:nth-child(1) {
        width: 75%;
        margin-left: auto;
    }
    #home_hot_spring .inner:nth-child(2) {
        width: 75%;
    }
    #home_hot_spring .inner .home_unit._reverse {
        -moz-column-gap: 4rem;
        column-gap: 4rem;
        margin-bottom: 9rem;
    }
    #home_hot_spring .inner .home_unit._reverse ._txt {
        font-size: 1.15rem;
    }
    #home_cuisine {
        background-position: top 6rem left 5rem, center;
        background-size: 7.5rem, cover;
    }
    #home_cuisine .inner:nth-child(1) {
        width: 75%;
        margin-right: auto;
    }
    #home_cuisine .inner:nth-child(2) {
        width: 75%;
    }
    #home_cuisine .inner .home_unit._reverse {
        -moz-column-gap: 5rem;
        column-gap: 5rem;
    }
    #home_cuisine .inner .home_unit._reverse ._txt {
        font-size: 1.15rem;
    }
    #home_cuisine .inner .home_unit._reverse ._img .en {
        font-size: 4rem;
        left: -9.3rem;
    }
    #home_plan {
        background-position: top 7rem right 17rem;
        background-size: 18rem;
    }
    #home_plan .inner {
        width: 75%;
    }
    #home_plan .inner ._head ._title h2 {
        text-align: center;
    }
    #home_plan .inner ._head ._title h2 span.jp {
        font-size: 2.5rem;
    }
    #home_plan .inner ._head ._title h2 span.en {
        font-size: 1.25rem;
    }
    #home_plan .inner ._body ._box {
        grid-template-columns: repeat(4, 1fr);
    }
    #home_plan .inner ._body ._box ._item {
        grid-row: span 3;
    }
    #home_plan .inner ._body ._box ._item ._txt h3 {
        font-size: 0.9rem;
    }
    #home_plan .inner ._body>.href {
        margin-bottom: 7.5rem;
    }
    #home_plan .inner ._body #booking._plan {
        /* width: 48rem; */
        /* height: 8rem; */
        margin-inline: auto;
        border-radius: 0.5rem;
    }
    #home_scenery.hr {
        height: 33.3rem;
    }
    #home_relax .inner {
        width: 75%;
        margin-right: auto;
    }
    #home_relax .inner .home_unit ._title h2 {
        font-size: 2rem;
    }
    #home_relax .inner .home_unit ._txt {
        font-size: 1.1rem;
    }
    #home_relax .inner .home_unit ._img {
        width: 40rem;
    }
    #home_relax .inner>.en {
        display: none;
    }
    #home_news {
        padding: 10rem 0 5rem;
        background-position: top 5rem left 8.5rem;
        background-size: 8rem;
    }
    #home_news .inner {
        width: 75%;
    }
    #home_news .inner ._head ._title {
        padding-left: 5rem;
        margin-bottom: 3rem;
    }
    #home_news .inner ._head ._title h2 span.jp.appear {
        font-size: 2rem;
    }
    #home_news .inner ._head ._title h2 span.en {
        font-size: 1.1rem;
    }
    #home_news .inner ._head .href {
        display: block;
        margin-right: auto;
    }
    #home_news .inner ._head .href a {
        margin: 0;
        margin-left: 5rem;
    }
    #home_news .inner ._body ._box ._item ._txt ._date_type {
        font-size: 1.1rem;
    }
    #home_news .inner ._body ._box ._item ._txt ._title h3 {
        font-size: 1.15rem;
    }
    #home_news .inner ._body ._box ._item ._img {
        width: 12.5rem;
    }
    #home_news .inner>.href {
        display: none;
    }
    #home_instagram {
        background-position: top 1rem left 15rem;
        background-size: 15rem;
    }
    #home_instagram .inner {
        width: 75%;
    }
    #home_instagram .inner ._head ._title h2 span.appear.en {
        font-size: 2.5rem;
    }
    #home_instagram ._body ._box {
        height: 25vw;
    }
    #home_instagram ._body ._box .swiper .swiper-wrapper .swiper-slide ._inner a {
        transition: opacity 0.5s;
    }
    #home_instagram ._body ._box .swiper .swiper-wrapper .swiper-slide ._inner a:hover {
        opacity: 0.5;
    }
    #home_access {
        background-position: top 0.5rem right 30rem;
        background-size: 9rem;
        padding: 7.5rem 0;
    }
    #home_access .inner {
        width: 75%;
    }
    #home_access .inner .home_unit._reverse ._title {
        margin-top: 2rem;
    }
    #home_access .inner .home_unit._reverse ._title h2 span.jp.appear.line {
        font-size: 2.5rem;
        line-height: 0.6;
    }
    #home_access .inner .home_unit._reverse ._title h2 span.jp.appear.line.active::before {
        left: calc(100% - 30vw);
    }
    #home_access .inner .home_unit._reverse ._title h2 span.en {
        font-size: 1.25rem;
    }
    #home_access .inner .home_unit._reverse ._img iframe {
        width: 100%;
        height: 100%;
    }
    /* about
  -------------------------------------------------------------------------------- */
    #about .section_body .inner {
        width: 70%;
        margin-left: auto;
    }
    #about .section_body .inner ._item ._img {
        width: 50%;
    }
    #about .section_body .inner ._item ._txt {
        margin-left: 0;
    }
    #about .section_body .inner ._item ._txt ._title h2 span.line {
        font-size: 1.75rem;
    }
    #about .section_body .inner ._item ._txt ._title h2 span.line.active::before {
        right: calc(100% - 35vw + 1rem);
    }
    #about .section_body .inner ._item ._txt ._title span.en {
        font-size: 0.9rem;
    }
    #about .section_body .inner:nth-child(2n) {
        margin-right: auto;
    }
    #about .section_body .inner:nth-child(2n) ._item ._txt {
        margin-right: 0;
        margin-left: 0;
    }
    #about .section_body .inner:nth-child(2n) ._item ._txt ._title h2 span.line::before {
        right: calc(100% + 1rem);
    }
    #about .section_body .inner:nth-child(2n) ._item ._txt ._title h2 span.line.active::before {
        left: calc(100% - 35vw + 1rem);
    }
    #voice .inner ._body {
        grid-template-columns: repeat(3, 1fr);
        -moz-column-gap: 1.5%;
        column-gap: 1.5%;
    }
    #voice .inner ._body ._item ._rate span.line.active::before {
        right: calc(12rem - 23vw);
    }
    #voice .inner ._body ._item ._txt {
        line-height: 1.9;
        font-size: 0.8rem;
    }
    #voice .inner ._body ._item ._date span.line.active::before {
        left: calc(4rem - 23vw + 100%);
    }
    #about ._media .inner ._body {
        grid-template-columns: repeat(3, 1fr);
    }
    #about ._media .inner ._body ._item .href a {
        font-size: 1rem;
        padding: 0.4rem 2rem 0.3rem;
    }
    #about ._media .inner ._body ._item ._txt {
        font-size: 0.9rem;
    }
    /* rooms
  -------------------------------------------------------------------------------- */
    #rooms .section_body {
        padding: 0;
    }
    #rooms .section_body .inner ._box {
        margin-bottom: 7.5rem;
    }
    #rooms .section_body .inner ._box ._item {
        transition: 1s;
    }
    #rooms .section_body .inner ._box ._item:hover {
        width: 50%;
    }
    #rooms .section_body .inner ._box ._item a:hover ._img img {
        filter: brightness(1.35);
        margin-bottom: 20vw;
    }
    #rooms .section_body .inner ._box ._item ._img {
        transition: 1s;
    }
    /* wing
  -------------------------------------------------------------------------------- */
    .wing .section_head .inner ._txt {
        display: none;
    }
    .wing .section_body .inner ._anchor {
        margin-bottom: 5rem;
    }
    .wing .section_body .inner ._anchor ul li a {
        width: 14rem;
        margin: 0;
    }
    .wing .section_body .inner ._anchor ul li a:hover {
        border-color: var(--color-purple);
    }
    .wing .section_body .inner ._box ._type ._type_head h2 span.line {
        font-size: 1.75rem;
    }
    .wing .section_body .inner ._box ._type ._type_head span.en {
        font-size: 1rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item:has(._img a:hover) ._txt .href a {
        background-position: 0;
        color: #fff;
        border-color: var(--color-purple);
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt {
        padding-top: 1.5rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._bath {
        font-size: 1.1rem;
        margin-bottom: 0.5rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title h2 {
        line-height: 1.5;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title h2 span.jp {
        font-size: 1.5rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._title h2 span.en {
        font-size: 1.1rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._size {
        font-size: 1rem;
        margin-bottom: 0.5rem;
    }
    .wing .section_body .inner ._box ._type ._type_body ._item ._txt ._desc {
        /* font-size: 1rem; */
        margin-bottom: 2rem;
    }
    /* single-wing
  -------------------------------------------------------------------------------- */
    .room .section_body {
        display: flex;
    }
    .room .section_body ._img {
        width: 61.8%;
    }
    .room .section_body>._txt {
        width: 38.2%;
        padding-top: 3.5rem;
    }
    .room .section_body>._txt .inner {
        width: 80%;
    }
    .room .section_body ._txt ._group ._group_title span::before {
        left: calc(50% - 16.2vw);
    }
    .room .section_body ._txt ._group ._group_title span::after {
        right: calc(50% - 16.2vw);
    }
    .room .section_body ._txt ._group ._group_body ._box ._body ._item._movie {
        max-height: 75vh;
    }
    .room .section_body ._txt ._group ._group_body ._box ._body ._item._movie video {
        width: auto;
        max-height: 75vh;
        border-radius: 0.5rem;
        margin-inline: auto;
    }
    /* hot_spring
  -------------------------------------------------------------------------------- */
    #hot_spring .section_body ._item ._txt ._bg img.active {
        transition-delay: 1s;
    }
    #hot_spring .section_body ._item ._txt ._inner ._title {
        margin-bottom: 2rem;
    }
    #hot_spring .section_body ._item ._txt ._inner ._title h2 span.line {
        font-size: 2rem;
    }
    #hot_spring .section_body ._item ._txt ._inner ._title span.en {
        font-size: 1rem;
    }
    #hot_spring .section_body ._item ._txt ._inner ._desc {
        font-size: 1rem;
    }
    #hot_spring .section_body ._item ._txt ._inner ._note ul.note li {
        font-size: 0.8rem;
        margin-bottom: 0.25rem;
    }
    /* facilities
  -------------------------------------------------------------------------------- */
    #facilities .section_head ._txt br {
        display: block;
    }
    #facilities .section_body ._item {
        height: 33.3rem;
        padding: 5rem 0 4rem;
    }
    #facilities .section_body ._item .inner ._txt ._title h2 span.en {
        font-size: 2.5rem;
    }
    #facilities .section_body ._item .inner ._txt ._title span.jp {
        font-size: 1.5rem;
        margin-left: 5rem;
    }
    #facilities .section_body ._item .inner ._txt ._desc {
        margin-left: 5rem;
    }
    #facilities .section_body ._item .inner .href {
        margin-right: auto;
        margin-left: 5rem;
    }
    #facilities .section_body ._item .inner .href a:hover {
        border-color: var(--color-purple);
    }
    /* lobby
  -------------------------------------------------------------------------------- */
    #lobby .section_body._lobby .inner {
        width: 55%;
    }
    #lobby .section_body._box .inner ._box ._item ._txt ._title h3 span.jp {
        font-size: 1.4rem;
    }
    #lobby .section_body._box .inner ._box ._item ._txt ._title h3 span.en {
        margin-left: 0.75rem;
    }
    #lobby .section_body.hr {
        height: 33.3rem;
    }
    #lobby .section_body.hr ._inner ._box ._head h2 {
        font-size: 1.5rem;
    }
    #lobby .section_body.hr ._inner ._box ._head span.en {
        font-size: 2.5rem;
    }
    #lobby .section_body.hr ._inner ._box ._body {
        font-size: 0.9rem;
    }
    /* salon
  -------------------------------------------------------------------------------- */
    #salon .section_body .inner {
        width: 61.8%;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_head ._title h2 span.line.active::before {
        right: calc(100% - 61.8vw);
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_head ._desc {
        margin-left: 4rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_head ._note {
        margin-left: 4rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course._bg::before {
        border-radius: 1rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._name h3.line::before {
        right: -1rem;
    }
    #salon .section_body .inner ._menu .menu_item .menu_item_body .menu_course ._head ._name h3.line.active::before {
        right: calc(100% + 12.5rem - 61.8vw);
    }
    /* hot_stone_spa
  -------------------------------------------------------------------------------- */
    #hot_stone_spa .section_body {
        display: flex;
        flex-direction: row;
    }
    #hot_stone_spa .section_body ._img {
        width: 61.8%;
    }
    #hot_stone_spa .section_body ._img .swiper .swiper-pagination {
        top: auto;
        right: 1rem;
        bottom: 1rem;
    }
    #hot_stone_spa .section_body ._img .swiper .swiper-pagination .swiper-pagination-bullet {
        width: 1rem;
        height: 1rem;
        margin: 0 0.5rem;
    }
    #hot_stone_spa .section_body ._txt {
        width: 38.2%;
        padding-top: 5rem;
    }
    #hot_stone_spa .section_body ._txt .inner {
        width: 80%;
    }
    #hot_stone_spa .section_body ._txt .inner ._box ._head {
        text-align: left;
    }
    #hot_stone_spa .section_body ._txt .inner ._box ._head h2 span.jp {
        margin-left: 0;
        font-size: 1.5rem;
    }
    #hot_stone_spa .section_body ._txt .inner ._box ._head h2 span.line.jp::before {
        content: "";
        right: -1rem;
    }
    #hot_stone_spa .section_body ._txt .inner ._box ._head h2 span.line.active.jp::before {
        right: calc(100% - 30.56vw);
    }
    #hot_stone_spa .section_body ._txt .inner ._box ._body {
        display: block;
        margin-bottom: 3rem;
    }
    /* dish
  -------------------------------------------------------------------------------- */
    #dish .section_head .inner ._txt {
        text-align: center;
    }
    #dish .section_head .inner ._txt br {
        display: block;
    }
    #dish .section_body .inner ._intro {
        margin-bottom: 5rem;
    }
    #dish .section_body .inner ._ingredients ._item ._txt ._title h2 {
        line-height: 1.4;
    }
    #dish .section_body .inner ._ingredients ._item ._txt ._title h2 span.en {
        font-size: 1.2rem;
    }
    #dish .section_body .inner ._ingredients ._item .plan ._head h3 span.jp {
        font-size: 1.2rem;
    }
    #dish .section_body .inner ._ingredients ._item .plan ._head h3 span.en {
        font-size: 1.05rem;
    }
    #dish .section_body .inner ._ingredients ._item ._txt ._title h2 span.line.jp {
        font-size: 1.75rem;
    }
    #dish .section_body .inner ._ingredients ._item:nth-child(2n) ._txt ._title h2 span.active.jp::before {
        right: calc(100% - 35vw - 2rem);
    }
    #dish .section_body .inner ._ingredients ._item:nth-child(2n+1) ._txt ._title h2 span.active.jp::before {
        left: calc(100% - 35vw - 2rem);
    }
    #dish .section_body ._gallery {
        height: 17.5rem;
        margin-bottom: 10rem;
    }
    /* dragon_eyes
  -------------------------------------------------------------------------------- */
    #dragon_eyes .section_head .inner ._txt {
        text-align: center;
    }
    #dragon_eyes .section_head .inner ._txt br {
        display: block;
    }
    #dragon_eyes .section_body .inner ._box ._item ._title h2 {
        text-align: right;
    }
    #dragon_eyes .section_body .inner ._gallery {
        margin: 0 16% 5rem;
    }
    #dragon_eyes .section_body .inner ._gallery ._item .swiper._thumbnail .swiper-wrapper .swiper-slide {
        cursor: pointer;
    }
    /* members
  -------------------------------------------------------------------------------- */
    #members main .section_head .inner ._txt {
        text-align: center;
    }
    #members main .section_head .inner ._txt br {
        display: block;
    }
    #members .section_body .inner ._box ._body ._rows._row_03 ._item ._txt ._title h3.active::before {
        right: calc(100% - 22.75vw);
    }
    #members .section_body .inner ._box ._body ._rows._row_01 ._item ._txt ._title h3.active::before,
    #members .section_body .inner ._box ._body ._rows._row_02 ._item ._txt ._title h3.active::before,
    #members .section_body .inner ._box ._body ._rows._row_04 ._item ._txt ._title h3.active::before {
        right: calc(100% - 34.3vw);
    }
    /* access
  -------------------------------------------------------------------------------- */
    #access .section_body .inner ._box._feature ._item ._txt ._title h2 span.jp.line {
        font-size: 1.5rem;
    }
    #access .section_body .inner ._box._feature ._item ._txt ._title h2 span.jp.line.active::before {
        right: calc(100% - 35vw);
    }
    #access .section_body .inner ._box._feature ._item ._txt ._title h2 span.en {
        font-size: 1rem;
    }
    #access .section_body .inner ._box#area ._head h2 span.jp.line {
        font-size: 1.75rem;
    }
    #access .section_body .inner ._box#area ._head h2 span.en {
        font-size: 1rem;
    }
    #access .section_body .inner ._box#area ._body ._txt ._item ._head h3 span.line {
        font-size: 1.2rem;
    }
    #access .section_body .inner ._box#area ._body ._txt ._item ._head h3 span.line.active::before {
        right: calc(100% - 33.25vw);
    }
    #access .section_body .hr {
        aspect-ratio: unset;
        height: 33.3rem;
    }
    #access .section_body .hr ._inner {
        margin-left: 15%;
        left: 0;
    }
    #access .section_body ._box#by_train ._body ._img,
    #access .section_body ._box#by_car ._body ._img {
        transform: scale(1);
    }
    /* guide
  -------------------------------------------------------------------------------- */
    #guide main .section_head .inner ._txt {
        text-align: center;
    }
    #guide main .section_head .inner ._txt br {
        display: block;
    }
    #guide .section_body .inner ._box#guide_course::before {
        order: 1;
        width: 24%;
        content: "";
    }
    #guide .section_body .inner ._box#guide_course::after {
        width: 24%;
    }
    #guide .section_body .inner ._box#guide_course ._item {
        width: 24%;
    }
    #guide .section_body .inner ._box#guide_ss ._head h2 span.jp.line {
        font-size: 1.75rem;
    }
    #guide .section_body .inner ._box#guide_ss ._head h2 span.en {
        font-size: 1rem;
    }
    #guide .section_body .inner ._box#guide_ss ._body::before {
        width: 24%;
        content: "";
        order: 1;
    }
    #guide .section_body .inner ._box#guide_ss ._body::after {
        width: 24%;
    }
    #guide .section_body .inner ._box#guide_ss ._body ._item {
        width: 24%;
    }
    /* guide single
  -------------------------------------------------------------------------------- */
    #guide_map {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    #guide_map ._img {
        width: 70%;
        margin-bottom: 0;
    }
    #guide_sasara {
        top: 29.83rem;
        left: 17.1rem;
        width: 8.74rem;
    }
    #guide_01 {
        top: 59.85rem;
        left: 31.54rem;
        width: 4.94rem;
    }
    #guide_02 {
        top: 59.09rem;
        left: 16.72rem;
        width: 4.75rem;
    }
    #guide_03 {
        top: 58.52rem;
        left: 21.28rem;
        width: 7.79rem;
    }
    #guide_04 {
        top: 56.81rem;
        left: 36.67rem;
        width: 5.51rem;
    }
    #guide_05 {
        top: 55.1rem;
        left: 35.15rem;
        width: 7.41rem;
    }
    #guide_06 {
        top: 56.05rem;
        left: 11.78rem;
        width: 3.42rem;
    }
    #guide_07 {
        top: 53.2rem;
        left: 12.16rem;
        width: 6.65rem;
    }
    #guide_08 {
        top: 53.96rem;
        left: 0.38rem;
        width: 4.56rem;
    }
    #guide_09 {
        top: 47.5rem;
        left: 15.2rem;
        width: 5.13rem;
    }
    #guide_10 {
        top: 43.7rem;
        left: 12.16rem;
        width: 4.94rem;
    }
    #guide_11 {
        top: 41.42rem;
        left: 2.66rem;
        width: 8.17rem;
    }
    #guide_12 {
        top: 35.15rem;
        left: 12.73rem;
        width: 4.37rem;
    }
    #guide_13 {
        top: 36.67rem;
        left: 22.61rem;
        width: 4.75rem;
    }
    #guide_14 {
        top: 49.21rem;
        left: 23.56rem;
        width: 10.45rem;
    }
    #guide_15 {
        top: 47.5rem;
        left: 28.5rem;
        width: 3.8rem;
    }
    #guide_16 {
        top: 46.55rem;
        left: 41.04rem;
        width: 3.23rem;
    }
    #guide_17 {
        top: 43.13rem;
        left: 42.94rem;
        width: 3.23rem;
    }
    #guide_18 {
        top: 40.09rem;
        left: 37.43rem;
        width: 5.13rem;
    }
    #guide_19 {
        top: 36.67rem;
        left: 34.39rem;
        width: 4.18rem;
    }
    #guide_20 {
        top: 29.26rem;
        left: 26.6rem;
        width: 7.6rem;
    }
    #guide_21 {
        top: 24.51rem;
        left: 25.08rem;
        width: 3.04rem;
    }
    #guide_22 {
        top: 20.9rem;
        left: 22.8rem;
        width: 7.03rem;
    }
    #guide_23 {
        top: 23.94rem;
        left: 29.64rem;
        width: 15.2rem;
    }
    #guide_24 {
        top: 9.12rem;
        left: 32.49rem;
        width: 8.36rem;
    }
    #guide_25 {
        top: 1.9rem;
        left: 37.24rem;
        width: 7.98rem;
    }
    #guide_26 {
        top: 8.36rem;
        left: 25.84rem;
        width: 3.99rem;
    }
    #guide_27 {
        top: 4.94rem;
        left: 23.37rem;
        width: 5.32rem;
    }
    #guide_28 {
        top: 4.75rem;
        left: 10.83rem;
        width: 4.37rem;
    }
    #guide_29 {
        top: 20.9rem;
        left: 10.64rem;
        width: 4.94rem;
    }
    #guide_30 {
        top: 22.99rem;
        left: 13.11rem;
        width: 3.42rem;
    }
    #guide_31 {
        top: 20.9rem;
        left: 33.63rem;
        width: 10.64rem;
    }
    #guide_32 {
        top: 1.9rem;
        left: 1.9rem;
        width: 5.7rem;
    }
    #guide_33 {
        top: 1.9rem;
        left: 1.9rem;
        width: 5.7rem;
    }
    #guide_34 {
        top: 1.9rem;
        left: 1.9rem;
        width: 5.7rem;
    }
    #guide_35 {
        top: 1.9rem;
        left: 1.9rem;
        width: 5.7rem;
    }
    #guide_36 {
        top: 1.9rem;
        left: 1.9rem;
        width: 5.7rem;
    }
    #guide_37 {
        top: 1.9rem;
        left: 1.9rem;
        width: 5.7rem;
    }
    #guide_38 {
        top: 1.9rem;
        left: 1.9rem;
        width: 5.7rem;
    }
    #guide_39 {
        top: 1.9rem;
        left: 1.9rem;
        width: 5.7rem;
    }
    #guide_map ._route {
        width: 25%;
        min-width: auto;
        margin: 0;
    }
    #guide.single .section_body .inner ._head h2 span.jp.line {
        font-size: 1.75rem;
    }
    #guide.single .section_body .inner ._head h2 span.en {
        font-size: 1rem;
    }
    /* reference
  -------------------------------------------------------------------------------- */
    /* faq
  -------------------------------------------------------------------------------- */
    #faq .section_body .inner {
        width: 50%;
    }
    /* gallery
  -------------------------------------------------------------------------------- */
    #photo-gallery .section_body .inner ._box ._item ._head h2 .jp.line {
        font-size: 1.75rem;
    }
    #photo-gallery .section_body .inner ._box ._item ._head h2 .jp.line::before {
        transition: 2s;
    }
    #photo-gallery .section_body .inner ._box ._item ._head h2 .en {
        font-size: 1rem;
    }
    #photo-gallery .section_body .inner ._box ._item ._body {
        grid-template-columns: repeat(6, 1fr);
    }
    /* contact
  -------------------------------------------------------------------------------- */
    #contact .section_head .inner ._txt {
        text-align: center;
    }
    #contact .section_head .inner ._txt br {
        display: block;
    }
    #contact .section_body .inner {
        width: 50%;
    }
    #contact .section_body .inner ._box ._head ._title h2 .jp.line {
        font-size: 1.5rem;
    }
    #contact .section_body .inner ._box ._head ._title h2 .jp.line::before {}
    #contact .section_body .inner ._box ._head ._title h2 .jp.line.active::before {
    right: calc(100% - 50vw);
}
    #contact .section_body .inner ._box ._head ._title h2 .en {
        font-size: 1rem;
    }
    /* company
  -------------------------------------------------------------------------------- */
    #company .section_body .inner {
        width: 50%;
    }
    #company .section_body .inner ._box ._head .en.line.active::before {
        right: calc(100% - 50vw);
    }
    /* privacy-policy
  -------------------------------------------------------------------------------- */
    #privacy-policy .section_head .inner ._txt {
        text-align: center;
    }
    #privacy-policy .section_head .inner ._txt br {
        display: block;
    }
    #privacy-policy .section_body .inner {
        width: 50%;
    }
    #policy ._body .policy_box .policy_head h3 .line.active::before {
        right: calc(100% - 50vw);
    }
    #disclaimer ._head ._title h2 .jp.line.active::before {
        right: calc(100% - 50vw);
    }
    /* news
  -------------------------------------------------------------------------------- */
    #news section.section_body .inner {
        width: 50%;
        display: flex;
        justify-content: space-between;
    }
    #news_list {
        width: 75%;
    }
    #news_list ._page {
        margin: 4rem 0;
    }
    #news_sort {
        /* width: 20%; */
    }
    #news_sort ._box {
        margin-bottom: 5rem;
    }
    #news_sort ._box ._head h3 {
        padding: 0 0.5rem 0.25rem 1rem;
    }
    #news_sort ._box ._head h3.line::before {
        top: auto;
        bottom: 0;
        left: 0;
        right: 100%;
    }
    #news_sort ._box ._head h3.line.active::before {
        right: 0;
    }
    #news_sort ._box ._body ul {
        display: block;
    }
    #news_sort ._box ._body ul li {
        width: auto;
    }
    #news_sort ._box ._body ul li a {
        padding: 0.25rem;
        text-align: right;
    }
    #news_sort ._box._category ._body ul li a {
        padding: 0.25rem;
    }
    /* single-news
  -------------------------------------------------------------------------------- */
    #news.single #page_head ._txt ._head ._title h1 {
        font-size: 1.75rem;
        line-height: 1.5;
    }
    #news.single #page_head ._txt ._head>.en {
        font-size: 1.25rem;
    }
    #news.single .section_body .inner #news_post {
        width: 75%;
    }
    #news.single .section_body .inner #news_post ._body {
        margin-bottom: 4rem;
    }
    /* translate
  -------------------------------------------------------------------------------- */
    body #glt-translate-trigger {
        width: 3.6rem;
        height: 3.6rem;
        left: auto !important;
        right: 0 !important;
        padding: 0;
    }
    body #glt-translate-trigger span.translate {
        display: none;
    }
    .tool-container.tool-top.toolbar-primary {
        top: 3.6rem !important;
        left: auto !important;
        width: auto;
    }
    .tool-container.tool-top.toolbar-primary .tool-items {
        padding: 0.5rem 0;
    }
    .tool-container.tool-top.toolbar-primary .tool-items a::after {
        margin: 0;
        font-size: 1.1rem;
        font-weight: 400;
        transition: 0.5s;
    }
    .tool-container.tool-top.toolbar-primary .tool-items a:hover::after {
        color: var(--color-purple-light);
    }
    .flatpickr-calendar {
        /* left: 6rem !important; */
        /* right: auto !important; */
    }
}
/* thanks sasara
-------------------------------------------------------------------------------- */
/*# sourceMappingURL=style.css.map */
