@charset "UTF-8";
/* ------------------------------------- /
/   共通
/* ------------------------------------- */
.taC {
    text-align: center;
}
.taL {
    text-align: left;
}
.taR {
    text-align: right;
}
.fwN {
    font-weight: 400;
}
.fwM {
    font-weight: 500;
}
.fwSB {
    font-weight: 600;
}
.fwB {
    font-weight: bold;
}

/* ------------------------------------- /
/   inner
/* ------------------------------------- */
.tk_inner {
    width: min(100%, calc(1266px + (6% * 2)));
    margin: 0 auto;
    padding: 0 6%;
}
@media screen and (max-width:600px){
.tk_inner {
    padding: 0 4%;
}
}

/* ------------------------------------- /
/   pc-none、sp-none
/* ------------------------------------- */
.pc-none {
    display: none;
}
.pc-none768 {
    display: none;
}
.pc-none__inline {
    display: none;
}
.pc-none__inline400 {
    display: none;
}
.pc-none__inline500 {
    display: none;
}
.pc-none__inline768 {
    display: none;
}
.pc-none1000 {
    display: none;
}
.pc-none__inline1000 {
    display: none;
}
.pc-none__inline1200 {
    display: none;
}
@media screen and (max-width:1200px){
.pc-none__inline1200 {
    display: inline;
}
.sp-none1200 {
    display: none;
}
}
@media screen and (max-width:1000px){
.pc-none1000 {
    display: block;
}
.pc-none__inline1000 {
    display: inline;
}
.sp-none1000 {
    display: none;
}
}
@media screen and (max-width:768px){
.pc-none768 {
    display: block;
}
.pc-none__inline768 {
    display: inline;
}
.sp-none768 {
    display: none;
}
}
@media screen and (max-width:600px){
.pc-none {
    display: block;
}
.pc-none__inline {
    display: inline;
}
.sp-none {
    display: none !important;
}
}
@media screen and (max-width:500px){
.pc-none__inline500 {
    display: inline;
}
.sp-none500 {
    display: none;
}
}
@media screen and (max-width:400px){
.pc-none__inline400 {
    display: inline;
}
.sp-none400 {
    display: none;
}
}

/* ------------------------------------- /
/   サイトカラー、フォント
/* ------------------------------------- */
:root {
    --font-jp: 'Noto Serif JP', serif;
    --font-shippori: 'Shippori Mincho', serif;
    --color-black: #231815;
    --color-brown: #380002;
}
.font-jp {
    font-family: var(--font-jp);
}
.font-shippori {
    font-family: var(--font-shippori);
}

.bg-white {background-color: #fff;}
.color-black {color: var(--color-black);a{color: var(--color-black);}}
.color-brown {color: var(--color-brown);a{color: var(--color-brown);}}
.color-white {color: #fff;a{color: #fff;}}

@media (max-width: 1400px) {
}

/* ------------------------------------- /
/   フォント
/* ------------------------------------- */
.color-red {
    color: #ff2a2a;
}
.c-lower-title {
    font-family: var(--font-shippori);
}
.c-btn4 {
    letter-spacing: 0;
    font-family: var(--font-shippori);
}
    .c-btn4 .fsS {
        font-size: 0.95em;
    }
.p-cta__btn {
    font-weight: bold;
    letter-spacing: 0;
}
.p-cta__tel_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-imtes: center;
    column-gap: 25px;
    width: 100%;
}
.p-cta__tel {
    letter-spacing: 0.05em;
}
.p-cta__attention {
    font-weight: 600;
}
@media (max-width: 600px) {
.p-cta__text {
    line-height: 1.4;
    letter-spacing: -0.02em;
}
}


/* ------------------------------------- /
/   ヘッダー
/* ------------------------------------- */
@media print {
    .l-header {
        position: absolute;
    }
    html {
        zoom: 70%;
    }
}

/* ------------------------------------- /
/   パンくず
/* ------------------------------------- */
.p-breadcrumb ul {
    flex-wrap: wrap;
    width: 49%;
}
.p-header__logo {
    display: block;
}

/* ------------------------------------- /
/   トップ
/* ------------------------------------- */
.p-top-news__row-title {
    text-decoration: none;
}
a .p-top-news__row-title {
    text-decoration: underline;
}
a .p-top-news__row-title:hover {
    text-decoration: none;
}


/* ------------------------------------- /
/   お部屋
/* ------------------------------------- */
.p-link-list__link {
    letter-spacing: 0.05em;
}
.p-room__suikei-head-text {
    letter-spacing: -0.04em;
    white-space: nowrap;
}
.c-amenity__list-body {
padding-top: 0;
    border-top: none;
}
.p-accordion__body {
    padding-bottom: 20px;
}

.p-room__suikei-107-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0;
    row-gap: 10px;
    width: min(calc(100% - 25px), calc(1100px + ((100% - 1100px)/2)));
}
    .p-room__suikei-head-slide-wrap .swiper-pagination {
        padding-left: 9px;
    }
.p-room__suikei-107-slide-wrap {
    width: 78.74%;
    max-width: 100%;
    margin: 0;
}
    .p-room__suikei-107-slide-wrap .swiper-pagination {
        padding-left: 9px;
    }
    .p-room__suikei-101-slider-wrap .swiper-pagination {
        padding-left: 9px;
    }
.p-room__suikei-107-image-wrap {
    width: 20.39%;
    max-width: 100%;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    gap: 0;
}
.p-accordion__head::before,
.p-accordion__head::after {
    top: calc(50% - 1px);
}
.c-amenity__list-text {
    letter-spacing: 0;
}
.p-accordion.brown {
    background-color: #ddd3c6;
}
@media (max-width: 1439px) {
    .p-room__suikei-107-slide-wrap .swiper-pagination {
        text-align: left;
        right: auto;
    }
}
@media (max-width: 1150px) {
.p-room__suikei-head-text {
    white-space: wrap;
}
}
@media (max-width: 999px) {
.p-link-list__item:nth-of-type(n+2) {
    border-top: 1px #fff solid;
}
}
@media (max-width: 769px) {
.p-room__suikei-107-wrapper {
    width: calc(100% - 20px);
}
}
@media (max-width: 767px) {
.p-room__suikei-101-slider-wrap {
    width: calc(100% + 40px);
    transform: translateX(-20px);
}
.p-room__jp-body-image2 {
    width: min(70%, 353px);
}
.p-room__bed-body-image2 {
    width: min(90%, 462px);
}
}
@media (max-width: 600px) {
.p-room__suikei-107-wrapper {
    width: 100%;
}
.p-room__suikei-107-slide-wrap {
    width: 100%;
}
.p-room__suikei-107-image-wrap {
    width: calc(100% - 40px);
    margin: 0 auto;
    flex-direction: row;
}
.p-room__suikei-107-image1 {
    width: 57.9%;
}
.p-room__suikei-107-image2 {
    width: 39.5%;
}
}
@media (max-width: 500px) {
.p-link-list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    row-gap: 1px;
}
.p-link-list__item:nth-of-type(2n+1)::before {
    display: none;
}
.p-link-list__item:nth-of-type(n+2) {
    border-top: none;
}
.p-room__suikei-101-slide-image-number {
    font-size: 0.8em;
}
.p-room__suikei-107-body-explanation,
.c-amenity__list-text {
    font-size: 0.8em;
    letter-spacing: 0;
}
.p-room__jp-body-about,
.p-room__bed-body-about,
.p-room__kayou-about,
.p-room__kayou-about,
.p-room__sanyou-about {
    letter-spacing: 0;
    text-align: center;
}
}


/* ------------------------------------- /
/   メニュー
/* ------------------------------------- */
@media (max-width: 999px) {
.p-drawer__nav-list:nth-of-type(1) {
    padding-bottom: 20px;
}
.p-drawer__nav-list:nth-of-type(2) {
    padding-top: 30px;
}
.p-drawer__wrapper {
    width: min(100%, 260px);
    height: auto;
    margin-top: max(30px, calc(((100vh - 600px)/2) - 40px));
    padding-bottom: 40px;
}
.p-drawer__btn-list {
    justify-content: space-between;
    gap: 0;
}
.p-drawer__btn-item {
    width: 48.5%;
}
.p-drawer__btn {
    width: 100%;
}
.p-drawer__nav {
    width: 100%;
    margin: 35px auto 0;
}
.p-drawer__nav-list {
    gap: 0;
}
.p-drawer__nav-link {
   display: block;
   width: 22px;
}

.p-drawer__sub-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0;
    margin-top: 30px;
}
.p-drawer__language {
    width: 80px;
}
.p-drawer__sub-nav-wrap {
    width: calc(100% - 110px);
}
.p-drawer__body-list {
    justify-content: space-between;
    flex-direction: row;
    column-gap: 0;
    row-gap: 5px;
}
.p-drawer__sns-list {
    margin-top: 15px;
}
.p-drawer__body-list-link--ex-narrow {
    letter-spacing: -0.13em;
}
.p-drawer__sns-list {
    column-gap: 10px;
}
}


/* ------------------------------------- /
/   温泉
/* ------------------------------------- */
.p-spring__outdoor-image-wrap {
    position: relative;
}
.p-spring__outdoor-image-wrap::before {
    content: '';
    display: block;
    width: 89.76%;
    height: calc(570px + 15vw);
    background-color: #ddd3c6;
    position: absolute;
    left: 0;
    top: 12%;
    z-index: -1;
}
.p-spring__bath-daily a {
    text-decoration: underline;
}
.p-spring__bath-daily a:hover {
    opacity: 1;
    text-decoration: none;
}
.p-planday__spring {
    margin-top: 0;
    padding-top: 118px;
}
@media (max-width: 1140px) {
.p-spring__outdoor-image-wrap::before {
    height: calc(65vw - 10px);
}
}
@media (max-width: 768px) {
.p-planday__spring {
    padding-top: 59px;
}
}
@media (max-width: 600px) {
.p-spring__outdoor-image-wrap {
    grid-template-columns: 1fr 2fr;
}
.p-spring__outdoor-image1 img,
.p-spring__outdoor-image2 img {
    aspect-ratio: auto;
    height: 260px;
}
.p-spring__bath-image-wrap {
    grid-template-columns: 1fr 2fr;
}
.p-spring__bath-image1 img,
.p-spring__bath-image2 img {
    aspect-ratio: auto;
    height: 260px;
}
}

/* ------------------------------------- /
/   団体のお客様
/* ------------------------------------- */
    .p-group__food-btn-wrap .c-btn {
        letter-spacing: -0.05em;
        column-gap: 28px;
    }
.p-group__option-body-head-text,
.p-group__option-body-text {
    letter-spacing: -0.05em;
}
.p-group__option-body-list-head::before {
    width: 6px;
    left: 7px;
    top: 50%;
    transform: translateY(-50%);
}
.p-group__2nd-body-text {
    letter-spacing: -0.04em;
}
.p-group__food-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 0;
}
.p-group__food-body {
    width: max(31.45%, 320px);
}
.p-group__food-image {
    width: calc(100% - max(31.45%, 320px) - 3.45%);
    height: 400px;
    aspect-ratio: auto;
}
.p-group__food-image + .p-group__food-body-image,
.c-section-head--left + .p-group__food-image {
    display: none;
}

@media (max-width: 768px) {
.p-group__party-head-title {
    margin-bottom: 10px;
}
.p-mv__image img.plangroup_mv {
    width: calc(100% + 140px);
    max-width: unset;
    left: auto;
    right: -140px;
    object-position: right center;
}
.p-group__food-wrapper {
    flex-direction: column;
}
.p-group__food-body {
    width: 100%;
}
.p-group__food-body-btn-wrap {
    align-items: center;
}
.p-group__food-body-image,
.p-group__food-image {
    display: none;
}
.p-group__food-image + .p-group__food-body-image,
.c-section-head--left + .p-group__food-image {
    display: block;
}
.p-group__food-image {
    width: 100%;
    height: auto;
    margin: 10px 0 0;
}
.p-group__food-image + .p-group__food-body-image {
    width: 80%;
    margin: 0;
}
}
@media (max-width: 600px) {
.p-group__party-head-image img {
    aspect-ratio: 1/1;
}
}
@media (max-width: 500px) {
.p-link-list--3 .p-link-list__item:not(:last-child)::before {
    display: none;
}
}


/* ------------------------------------- /
/   お料理
/* ------------------------------------- */
.p-cuisine__head-image-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    column-gap: 0;
    row-gap: 10px;
}
.p-cuisine__head-image-left {
    width: 45.14%;
    max-width: unset;
    margin-top: 4.51vw;
}
.p-cuisine__head-image-container {
    width: 54.03%;
    max-width: unset;
}
.p-cuisine__head-movie {
    width: 64.27%;
}
.p-cuisine__head-image-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 0.69vw;
    column-gap: 0;
}
.p-cuisine__head-image2 {
    width: 38.3%;
    max-width: unset;
}
.p-cuisine__head-image3 {
    width: 60.41%;
    max-width: unset;
}
.p-planday-menu__text {
    width: 100%;
}
.p-planday-menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 0;
    width: min(100%, 660px);
    margin: 0 auto;
}
.p-planday-menu__list {
    width: min(48.5%, 320px);
}
.p-planday-menu.wide {
    width: 100%;
}
.p-planday-menu.wide .p-planday-menu__list {
    width: min(48.5%, 370px);
}
.p-planday-menu__row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 0;
}
.p-planday-menu__head {
    width: min(100%, 55px);
    font-weight: 500;
}
.p-planday-menu__body {
    width: calc(100% - 55px - 13px);
    letter-spacing: -0.05em;
    font-weight: 500;
}
    .p-planday-menu__body span {
        display: inline-block;
    }
    .p-planday-menu__body span:not(:first-child) {
        margin-left: 1em;
    }
.p-planday-menu__list.wide .p-planday-menu__head {
    width: min(100%, 85px);
}
.p-planday-menu__list.wide .p-planday-menu__body {
    width: calc(100% - 85px - 13px);
}
.p-planday-menu__list.middle .p-planday-menu__head {
    width: min(100%, 65px);
}
.p-planday-menu__list.middle .p-planday-menu__body {
    width: calc(100% - 65px - 13px);
}
.p-planday-menu__head.title {
    width: 100% !important;
    line-height: 1.2;
    font-weight: 600;
    span {
       display: inline-block;
       margin: 0 0 0 5px;
       font-size: 0.8em;
    }
}
.p-planday-menu__head.title::after {
    display: none;
}
.p-planday-menu__head.title + dd {
    width: calc(100% - 10px);
    margin: 0 0 5px auto;
    padding: 0 0 0 10px;
    border-left: 1px #000 solid;
    .p-planday-menu__list {
       width: 100%;
    }
}
.p-planday-menu__head::after {
    height: 15px;
    right: 0;
    top: 4px;
}
.p-cuisine__dinner-etc::before {
    display: none;
}
.p-cuisine__dinner-others {
    position: relative;
}
.p-cuisine__dinner-others::before {
    content: '';
    display: block;
    width: 50%;
    height: calc(100% + (3.47vw * 2));
    background-color: #ddd3c6;
    position: absolute;
    left: 0;
    top: 50%;
    z-index: -1;
    transform: translateY(-50%);
}
.p-cuisine__restaurant-about-head {
    font-size: 1em;
}
.p-planday-menu_comment {
    font-size: 0.85rem;
    position: relative;
    padding: 0 0 0 16px;
    span {
       position: absolute;
       left: 0;
       top: 0;
    }
}
.p-cuisine__dinner-etc-btn-wrap .c-btn4,
.p-cuisine__dinner-drink-btn-wrap .c-btn4 {
    width: min(100%, 305px);
}
.p-cuisine__dinner-btn-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 20px;
    row-gap: 20px;
}
    .p-cuisine__dinner-btn-wrap .c-btn4 {
        width: min(100%, 305px);
    }
@media (max-width: 767px) {
.p-cuisine__head-movie {
    width: 80%;
}
.p-planday-menu__list,
.p-planday-menu.wide .p-planday-menu__list {
    width: 100%;
}
.p-planday-menu:has(.wide) .p-planday-menu__head {
    width: min(100%, 85px);
}
.p-planday-menu:has(.wide) .p-planday-menu__body {
    width: calc(100% - 85px - 13px);
}
.p-planday-menu:has(.middle) .p-planday-menu__head {
    width: min(100%, 65px);
}
.p-planday-menu:has(.middle) .p-planday-menu__body {
    width: calc(100% - 65px - 13px);
}
.p-cuisine__dinner-others::before {
    display: none;
}
.p-cuisine__dinner-etc::before {
    display: block;
    width: calc(100% + 40px);
    height: calc(100% + 50px);
    top: -25px;
    left: -20px;
}

.p-cuisine__room-wrapper {
    display: block;
    position: relative;
    width: min(100%, 500px);
    margin: 0 auto;
}
.p-cuisine__room-head {
    position: absolute;
    left: 25px;
    top: min(66vw, 360px);
}
.p-cuisine__room-image-wrap {
    display: block;
}
.p-cuisine__room-image2 {
    width: calc(100% - 160px);
    min-height: 280px;
    margin: 10px 0 0 auto;
}
.p-cuisine__dinner-etc-btn-wrap,
.p-cuisine__dinner-drink-btn-wrap {
    width: min(100%, 305px);
}
}
@media (max-width: 600px) {
.p-cuisine__head-image-left {
    width: 100%;
}
.p-cuisine__head-image-container {
    width: 100%;
}
.p-cuisine__head-movie {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}
    .p-cuisine__head-movie img {
        width: 32%;
    }
    .p-cuisine__head-movie video {
        width: calc(68% - 10px);
        height: auto;
    }
.p-cuisine__head-image-box {
    margin-top: 10px;
}
.p-cuisine__head-image3 {
    width: 70%;
    margin: 0 0 0 auto;
}
.p-planday-menu__head.title + dd {
    width: calc(100% - 5px);
}
}


/* ------------------------------------- /
/   日帰りプラン
/* ------------------------------------- */
.p-planday__restaurant-wrapper {
    display: block;
    position: relative;
    margin: 0;
}
.p-planday__restaurant-image {
    width: 50vw;
    max-width: unset;
    position: absolute;
    left: 0;
    top: 0;
    transform: translateX(calc((1100px - 100vw) / 2));
}
    .p-planday__restaurant-image img {
        width: min(100%, 960px);
        margin-left: auto;
    }
.p-planday__restaurant-body {
    width: calc(50% - 25px);
    margin: 0 0 0 auto;
}


.p-planday__restaurant-about-text {
    letter-spacing: -0.05em;
}
.p-planday__restaurant-menu-head::before {
    width: 6px;
    left: 7px;
    top: 50%;
    transform: translateY(-50%);
}
.p-planday__restaurant-menu-head {
    padding-left: 22px;
}
    .p-planday-menu__notification-text a {
        text-decoration: underline;
    }
    .p-planday-menu__notification-text a:hover {
        text-decoration: none;
        opacity: 1;
    }

@media (max-width: 1150px) {
.p-planday__restaurant-image {
    transform: translateX(-25px);
}
}
@media (max-width: 768px) {
.p-planday__restaurant-image {
    width: 100%;
    position: relative;
    transform: none;
}
.p-planday__restaurant-body {
    width: 100%;
    margin: 25px 0 0 auto;
}
}

/* ------------------------------------- /
/   おすすめの過ごし方
/* ------------------------------------- */
.p-recommended__head_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: min(100%, 1100px);
    margin: 0 auto;
}
.p-recommended__head__img_01 {
    width: 59.09%;
}
.p-recommended__head_right {
    width: 40%;
}
.p-recommended__head__img_03 {
    width: 67.73%;
    margin: min(0.91vw, 10px) 0 0;
}
.p-recommended__head-title {
    margin: -10px 0 0;
}
.p-recommended__checkin-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0;
}
.p-recommended__checkin-title {
    width: 30%;
    letter-spacing: 0.08em;
}
.p-recommended__checkin__img_01 {
    width: 40.91%;
}
.p-recommended__checkin__img_02 {
    width: 27.27%;
}
.p-recommended__around_wrapper {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
    width: min(100%, 1060px);
    margin: 0 auto;
}
.p-recommended__around-image {
    width: 61.32%;
}
.p-recommended__around_right {
    width: 37.74%;
}
.p-recommended__around-image2 {
    width: 73%;
    margin: min(0.91vw, 10px) 0 0 auto;
}
.p-recommended__around-title {
    width: min(100%, 1060px);
    margin: max(-20vw, -85px) auto 0;
}
.p-recommended__cuisine-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0;
    width: min(100%, 1440px);
    margin: 0 auto;
}
.p-recommended__cuisine-body {
    width: 47.22%;
    max-width: unset;
}
.p-recommended__cuisine_title {
    width: min(100%, 300px);
    margin: 0 min(6vw, 90px) 0 auto;
}
.p-recommended__cuisine-image-wrap {
    width: 52.08%;
    max-width: unset;
}
.p-recommended__cuisine-image2 {
    width: 60%;
    max-width: unset;
}
.p-recommended__cuisine-body-image {
    width: 44.12%;
    max-width: unset;
    margin-top: max(calc(min(24.38vw, 350px) - 265px), 35px);
}
.p-recommended__around-image-caption--rightbottom {
    left: auto;
    right: 6px;
    top: auto;
    bottom: 6px;
}
@media (max-width: 768px) {
.p-recommended__head_text {
    width: min(100%, 500px);
    margin: 0 auto;
}
.p-recommended__head-title {
    margin: 40px 0 0;
}
.p-recommended__head-text {
    margin: 15px 0 0;
}
.p-recommended__checkin-wrapper {
    align-items: flex-start;
    width: min(100%, 550px);
    margin: 0 auto;
    padding: 0 0 0 10px;
}
.p-recommended__checkin-title {
    width: calc(100% - 48%);
    padding: min(5.08vw, 30px) 0 0;
}
.p-recommended__checkin__img_01 {
    width: 100%;
    margin: 0 0 5px;
}
.p-recommended__checkin__img_02 {
    width: 48%;
}
.p-recommended__around_wrapper {
    flex-direction: row;
    width: min(100%, 550px);
    margin: 0 auto;
}
.p-recommended__around-image {
    width: 100%;
}
.p-recommended__around_right {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin: 15px auto 0;
    padding: 0 0 0 20px;
}
.p-recommended__around-image1 {
    width: 53.7%;
}
.p-recommended__around-image2 {
    width: 39.73%;
    margin: min(10.91vw, 60px) 0 0;
}
.p-recommended__around-title {
    text-align: left;
    width: min(100%, 510px);
}
.p-recommended__cuisine {
    margin: 75px 0 0;
}
.p-recommended__cuisine-wrapper {
    flex-direction: column-reverse;
}
.p-recommended__cuisine-image-wrap {
    width: 100%;
    max-width: unset;
}
.p-recommended__cuisine-image1 {
    padding: 0 0 0 20px;
}
.p-recommended__cuisine-image-wrap {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    column-gap: 0;
}
.p-recommended__cuisine-image2 {
    width: 56.01%;
}
.p-recommended__cuisine-body-image {
    width: 38.52%;
    margin: 0 auto;
}
.p-recommended__cuisine-body {
    width: 100%;
    margin: 30px auto 0;
}
.p-recommended__cuisine_title {
    width: 100%;
    writing-mode: horizontal-tb;
}
.p-recommended__relax-wrapper {
    position: relative;
    padding-bottom: 8vw;
}
.p-recommended__relax-inner {
    padding: 0;
}
.p-recommended__relax-body {
    max-width: unset;
}
.p-recommended__relax-title {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 50%;
    margin: 25px 0 0 auto;
}
    .p-recommended__relax-title span {
        writing-mode: vertical-rl;
        text-align: left;
    }
.p-recommended__relax-image {
    width: 40.53%;
    position: absolute;
    left: 5%;
    top: 56vw;
}
.p-recommended__sake-inner {
    padding: 0;
}
.p-recommended__sake-wrapper {
    position: relative;
    padding-bottom: calc(40vw - 100px);
}
.p-recommended__sake-body {
    max-width: unset;
    padding: 0 20px 0 20px;
}
.p-recommended__sake-body-image {
    padding: 0 0 0 20px;
}
.p-recommended__sake-title {
    width: 100%;
    margin: 55px 0 0;
    padding: 0 0 0 max(calc(50vw - 260px), 0px);
}
.p-recommended__sake-image {
    width: 40.53%;
    position: absolute;
    right: 0%;
    top: calc(67vw - 30px);
    margin: 0;
}
    .p-recommended__sake-image img {
        aspect-ratio: 154/150;
    }
.p-recommended__morning-inner {
    padding: 0;
}
.p-recommended__morning-wrapper {
    display: flex;
    flex-direction: column-reverse;
    row-gap: 25px;
}
.p-recommended__morning-image-wrap {
    max-width: unset;
}
.p-recommended__morning-body {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0 20px;
    max-width: unset;
}
.p-recommended__morning_title {
    width: calc(100% - min(50%, 240px));
    padding: min(3vw) 0 0;
}
.p-recommended__morning-body-image {
    width: min(50%, 240px);
    margin: 0;
}
.p-recommended__morning-image2 {
    width: 62.40%;
    margin: 35px auto 0;
}
.p-recommended__checkout-title {
    margin-top: max(6vw, 30px);
}
}

@media (max-width: 600px) {
.p-recommended__head-title {
    font-size: 17px;
}
.p-recommended__head-text {
    font-size: 14px;
}
.p-recommended__checkin-title {
    font-size: 16px;
}
.p-recommended__around-title {
    font-size: 16px;
}
.p-recommended__cuisine_title {
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2.1;
}
.p-recommended__relax-title {
    font-size: 16px;
    line-height: 2.1;
}
.p-recommended__relax-wrapper {
    padding-bottom: 0;
}
.p-recommended__sake-title {
    font-size: 16px;
}
.p-recommended__morning_title {
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2.1;
}
.p-recommended__checkout-title {
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2.1;

}
}


@media (max-width: 500px) {
.p-recommended__around-image-caption {
    font-size: 15px;
}
.p-recommended__around-title {
    letter-spacing: -0.04em;
}
.p-recommended__head-text {
    letter-spacing: -0.04em;
}
}

/* ------------------------------------- /
/   チャットボット
/* ------------------------------------- */
chat {
    position: relative;
    z-index: 1;
}
#eye_catcher {
    width: 237px !important;
    aspect-ratio: 200/70;
    background-image: url('../images/chaticon.svg') !important;
    background-position: center !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    box-shadow: 3px 3px 2px 0 rgba(0, 0, 0, .2) !important;
    bottom: 15px !important;
    transition-duration: 0.3s;
}
#eye_catcher.is-hidden {
    opacity: 0;
    transform: translateY(calc(300% + 20px));
}
#eye_catcher img {
    display: none !important;
}
@media (max-width: 768px) {
#eye_catcher {
    width: 80px !important;
    aspect-ratio: 1/1;
    background-image: url('../images/chaticon_sp.svg') !important;
}
}
#chatplusview.chatplusview-modern {
    height: 90% !important;
}
#chatplusview.chatplusview-modern.closed:not(.float) {
    max-height: 0 !important;
}

/* ------------------------------------- /
/   esthetic_header、esthetic_detail
/* ------------------------------------- */
.esthetic_header {
    font-size: 0.9em;
    letter-spacing: 0.02em;
    line-height: 2.1;
}
.esthetic_detail_wrapper {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    justify-content: space-between;
    width: min(100%, 1100px);
    margin: 0 auto;
}
.esthetic_detail_right {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    width: 48.18%;
}
.esthetic_detail_left {
    width: 48.18%;
    position: relative;
}
.esthetic_img_01 {
    width: calc(100% + ((100vw - 1100px)/2));
    max-width: unset;
    position: relative;
    left: calc(((100vw - 1100px)/2)*(-1));
}
.esthetic_img_02 {
    width: 94.34%;
    width: 34.72vw;
    max-width: unset;

    margin: auto 0 0;
}
.esthetic_img_03 {
    display: none;
}
.esthetic_detail_title {
    width: 100%;
    margin: min(4vw, 55px) 0 0;
    font-size: clamp(1.4rem, 0vw, 1.4rem);
    line-height: 1.7;
}
.esthetic_detail_text {
    width: 100%;
    line-height: 1.8;
    margin-bottom: min(4vw, 65px);
    font-size: 0.9em;
}
.esthetic_detail_time {
    width: calc(100% + 15px);
    margin-bottom: 15px;
    border-top: 1px #000 solid;
    border-bottom: 1px #000 solid;
    font-size: 0.9em;
    line-height: 1.3;
}
    .esthetic_detail_time .fsL {
        font-size: 1.07em;
    }

@media (max-width: 1250px) {
.esthetic_img_01 {
    width: calc(100% + 6vw);
    left: -6vw;
}
}
@media (max-width: 1100px) {
    .esthetic_detail_text br {
        display: none;
    }
}
@media screen and (max-width:768px){
.esthetic_header {
    line-height: 1.8;
}
.esthetic_detail_wrapper {
    justify-content: center;
    flex-direction: column;
    align-items: center;
}
.esthetic_detail_right {
    width: 100%;
}
.esthetic_detail_left {
    width: min(100%, 400px);
}
    .esthetic_detail_text br:not(.sp-none768) {
        display: inline;
    }
.esthetic_img_01 {
    display: none;
}
.esthetic_img_02 {
    width: min(100%, 400px);
    margin: 0 auto;
}
.esthetic_img_03 {
    display: block;
    margin: 30px auto 0;
}
.esthetic_detail_time {
    width: 100%;
}
}
@media screen and (max-width:450px){
    .esthetic_detail_text br.sp-none500 {
        display: none;
    }
}


/* ------------------------------------- /
/   esthetic_price
/* ------------------------------------- */
.esthetic_price {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: min(100%, 1100px);
    margin: 0 auto;
}
.esthetic_price_wrapper {
    width: 48.18%;
    background-color: #d3c9bc;
}
.esthetic_price_column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    font-size: 0.9em;
}
.esthetic_price_column:nth-child(n+2) {
    margin-top: 5px;
}
.esthetic_price_comment {
    font-size: 0.9em;
}
.esthetic_price_title.square {
    padding-left: 15px;
    position: relative;
}
.esthetic_price_title.square::before {
    content: '';
    display: block;
    width: 6px;
    aspect-ratio: 1 / 1;
    background-color: #000;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.esthetic_price_detail {
    letter-spacing: 0.05em;
}
    .esthetic_price_detail .fsS {
        font-size: 0.95em;
    }
@media screen and (max-width:768px){
.esthetic_price {
    row-gap: 20px;
    width: min(100%, 400px);
    margin: 0 auto;
}
.esthetic_price_wrapper {
    width: 100%;
}
.esthetic_price_comment {
    font-size: 0.8em;
}
}



/* ------------------------------------- /
/   facilities_menu_list
/* ------------------------------------- */
.facilities_menu_list {
    display: flex;
    width: min(100%, 1100px);
    margin: 0 auto;
}
.facilities_menu_column {
    flex: 1;
    background-color: #d3c9bc;
    padding: 25px 0;
}
.facilities_menu_list.narrow .facilities_menu_column {
    padding: 10px 0;
}
.facilities_menu_02 {
    margin-top: 10px;
}
    .facilities_menu_column a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        min-height: 50px;
        position: relative;
    }
    .facilities_menu_column:nth-child(n+2) a {
        border-left: 1px #000 solid;
    }
    .facilities_menu_column a::after {
        content: '';
        display: inline-block;
        border-width: 5px 6px 0 6px;
        border-color: #000 transparent transparent transparent;
        border-style: solid;
        position: absolute;
        bottom: 3px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .facilities_menu_list.wide .facilities_menu_column a::after {
        bottom: -15px;
    }
.facilities_menu_list.room_menu {
    margin-top: 10px;
}
.facilities_menu_list.room_menu .facilities_menu_column {
    padding: 10px 0;
}
@media screen and (max-width:1000px){
.facilities_menu_list.four {
    flex-wrap: wrap;
}
.facilities_menu_list.four .facilities_menu_column {
    flex: none;
    width: 50%;
    padding: 25px 0;
}
.facilities_menu_list.four.narrow .facilities_menu_column {
    padding: 10px 0;
}
.facilities_menu_list:not(.three) .facilities_menu_column:nth-child(n+3) {
    border-top: 1px #fff solid;
}
    .facilities_menu_list:not(.three) .facilities_menu_column:nth-child(2n+1) a {
        border-left: none;
    }
.facilities_menu_list:not(.three) .facilities_menu_column:nth-child(3):last-child {
    margin: 0 auto;
}
.facilities_menu_02 {
    margin-top: 1px;
}
.facilities_menu_list.room_menu {
    margin-top: 1px;
}
}
@media screen and (max-width:768px){
.facilities_menu_list {
    font-size: 0.9em;
}
.facilities_menu_column {
    padding: 10px 0;
}
}
@media screen and (max-width:700px){
.facilities_menu_list {
    flex-wrap: wrap;
    width: min(100%, 400px);
}
.facilities_menu_column,
.facilities_menu_list.four .facilities_menu_column {
    flex: none;
    width: 100%;
    padding: 0 0 10px;
}
.facilities_menu_list.four .facilities_menu_column {
    padding: 5px 0 15px;
}
.facilities_menu_list.four.narrow .facilities_menu_column {
    padding: 0 0 10px;
}
    .facilities_menu_column a {
        padding: 5px 0 0;
    }
    .facilities_menu_column a::after {
        bottom: -2px;
    }
    .facilities_menu_list.wide .facilities_menu_column a::after {
        bottom: -8px;
    }
.facilities_menu_column:nth-child(n+2) {
    border-top: 1px #fff solid;
}
    .facilities_menu_column:nth-child(n+2) a {
        border-left: none;
    }
}

/* ------------------------------------- /
/   facilities_menu_list
/* ------------------------------------- */
.facilities_h2 {
    font-size: clamp(1.2rem, 3.0vw, 1.6rem);
    letter-spacing: 0.02em;
}
.facilities_list_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: min(100%, 1100px);
    margin: 0 auto;
    row-gap: 50px;
}
.facilities_list_wrapper.narrow {
    row-gap: 20px;
}
.facilities_list_column {
    display: flex;
    flex-direction: column;
    width: 48.18%;
    width: 45.45%;
}
    .facilities_list_column img.sub {
       width: 75%;
       margin: 0 auto;
    }

.facilities_list_title {
    font-size: clamp(1.2rem, 2.5vw, 1.45rem);
    line-height: 1.4;
}
.facilities_list_title.fsS {
    font-size: clamp(1.1rem, 2.5vw, 1.45rem);
}
.facilities_list_title.wide {
    width: min(100%, 1100px);
    margin: 0 auto;
}
.facilities_list_title:has(ruby) {
    margin-top: 5px
}
    .facilities_list_title rt {
        padding-bottom: 2px;
    }
.facilities_list_detail {
    font-size: 0.95em;
    line-height: 2.1;
}
.facilities_list_detail:not(.auto_height) {
    flex-grow: 1;
}
.facilities_list_detail.narrow {
    letter-spacing: -0.01em;
}
    .facilities_list_detail p:nth-child(n+2) {
        margin-top: 7px;
    }
    .facilities_list_detail p.fsS {
        font-size: 0.93em;
        line-height: 1.6;
    }
    .facilities_list_detail p.caution {
        width: min(100%, 490px);
        padding: 0 0 0 1.1em;
        position: relative;
    }
    .facilities_list_detail p.caution::before {
        content: '※';
        display: block;
        position: absolute;
        left: 0;
        top: 0;
    }
.facilities_list_detail + .facilities_list_profile {
    margin-top: 35px;
}
.facilities_list_profile_column {
    padding: 15px 0;
    border-top: 1px #000 solid;
    border-bottom: 1px #000 solid;
    position: relative;
}
    .facilities_list_profile_column:nth-child(n+2) {
        border-top: none;
    }
    .facilities_list_profile dt {
        width: min(100%, 75px);
        background-color: #fff;
        position: absolute;
        left: 0;
        top: 0;
        transform: translateY(-50%);
        font-size: 0.95em;
    }
    .facilities_list_profile dt.long {
        width: min(100%, 100px);
        top: 50%;
        background-color: transparent;
    }
    .facilities_list_profile dd {
        line-height: 1.65;
    }
    .facilities_list_profile p:not(.fsL) {
        font-size: 0.9em;
        line-height: 1.6;
    }
    .facilities_list_profile p.fsS {
        font-size: 0.89em;
    }
    .facilities_list_profile .flx {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    .facilities_list_profile .flx.space {
        column-gap: 1.1em;
    }
        .facilities_list_profile dt.lt1 {
            letter-spacing: 0.9em;
        }
.facilities_list_img {
    width: min(100%, 1100px);
    margin: 0 auto;
}
.facilities_onsen_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: min(100%, 1100px);
    margin: 0 auto;
}
.facilities_onsen_img {
    width: 50%;
    object-fit: cover;
}
.facilities_onsen_inner {
    width: 45.45%;
}

@media screen and (max-width:1000px){
    .facilities_list_profile dt.long {
        width: 100%;
        top: 0;
        transform: none;
        position: relative;
    }
    .facilities_list_profile .flx:has(.date):nth-child(n+2) {
        margin-top: 10px
    }
        .facilities_list_profile .flx .date {
            width: 100%;
        }
}
@media screen and (max-width:768px){
.facilities_list_wrapper {
    width: min(100%, 450px);
    padding-top: 15px;
}
.facilities_list_column {
    width: 100%;
}
.facilities_list_detail {
    line-height: 1.8;
}
.facilities_list_detail.kirameki {
    margin-bottom: 35px;
}
    .facilities_list_profile .flx:not(.fsS) {
        flex-direction: column;
    }
.facilities_list_img {
    width: min(100%, 450px);
}
.facilities_list_title.wide {
    width: min(100%, 450px);
}
.facilities_onsen_wrapper {
    width: min(100%, 450px);
    padding: 20px 0 0;
}
.facilities_onsen_img {
    width: 100%;
}
.facilities_onsen_inner {
    width: 100%;
    margin: 20px 0 0;
}
}


/* ------------------------------------- /
/   よくあるご質問
/* ------------------------------------- */
.qa_list {
    width: min(100%, 900px);
    margin: 0 auto;
}
.qa_list_column {
    border-top: 1px #868686 solid;
    border-bottom: 1px #868686 solid;
    position: relative;
}
.qa_list_column:nth-child(n+2) {
    border-top: none;
}
.qa_list_column::before {
    content: '';
    width: 1px;
    height: calc(100% - 18px);
    background-color: #868686;
    position: absolute;
    top: 9px;
    left: max(6.67%, 52px);
}
.qa_trigger {
    display: block;
    width: 100%;
    font-size: clamp(0.9rem, 2.0vw, 1.05rem);
    letter-spacing: 0.04em;
    position: relative;
}
.qa_trigger:hover {
    text-decoration: none;
}
.qa_trigger::before,
.qa_trigger::after {
    content: '';
    width: 20px;
    height: 1px;
    background-color: #000;
    position: absolute;
    right: 10px;
    top: 34px;
    top: 50%;
    transform: translateY(-50%);
}
.qa_trigger::after {
    transform: translateY(-50%) rotateZ(90deg);
}
.qa_trigger.open::after {
    display: none;
}
/*
    .qa_trigger p {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        width: 100%;
        min-height: 70px;
        padding: 9px 50px 9px max(min(11.11%), 70px);
        position: relative;
    }
    .qa_trigger p::before {
        content: 'Q.';
        color: var(--color-blue);
        font-family: var(--font-shippori);
        font-size: 1.2em;
        font-weight: bold;
        line-height: 1.2;
        position: absolute;
        left: 17px;
        top: 50%;
        transform: translateY(-50%);
    }
*/
.qa_title {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    min-height: 70px;
    padding: 9px 50px 9px max(min(11.11%), 70px);
    position: relative;
}
.qa_title::before {
    content: 'Q.';
    color: var(--color-blue);
    font-family: var(--font-shippori);
    font-size: 1.2em;
    font-weight: bold;
    line-height: 1.2;
    position: absolute;
    left: 17px;
    top: 50%;
    transform: translateY(-50%);
}
    .qa_title p {
        width: 100%;
    }
.qa_detail {
    height: 0;
    overflow: hidden;
    line-height: 1.7;
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    font-size: clamp(0.85rem, 2.0vw, 1.0rem);
}
    .qa_detail a {
        text-decoration: underline;
    }
    .qa_detail a:hover {
        text-decoration: none;
    }
    .qa_detail .bg-beige {
        background-color: #eee;
        margin: 5px 0 0;
    }
    .qa_detail .fsS {
        font-size: 0.9em;
    }
    .qa_detail .color-red {
        color: #ff2a2a;
    }
    .qa_detail .udl {
        text-decoration: underline;
    }
    .qa_detail ol {
        list-style-type: decimal;
        width: min(100%, 660px);
        padding: 0 0 0 30px;
    }

.qa_inner {
    padding: 0 50px 25px max(min(11.11%), 70px);
}

@media screen and (max-width:768px){
.qa_trigger::before,
.qa_trigger::after {
    width: 16px;
    right: 5px;
}
/*
    .qa_trigger p {
        padding: 9px 30px 9px max(min(11.11%), 70px);
    }
*/
.qa_title {
    padding: 9px 30px 9px max(min(11.11%), 70px);
}
.qa_inner {
    padding: 0 30px 25px max(min(11.11%), 70px);
}

}
@media screen and (max-width:600px){
.qa_list_column::before {
    left: 39px;
}
.qa_trigger::before,
.qa_trigger::after {
    width: 12px;
}
/*
    .qa_trigger p {
        padding: 9px 30px 9px 50px;
    }
    .qa_trigger p::before {
        left: 10px;
    }
*/
.qa_title {
    padding: 9px 30px 9px 50px;
}
.qa_title::before {
    left: 10px;
}
.qa_inner {
    padding: 0 30px 25px 50px;
}
}

/* ------------------------------------- /
/   access_header
/* ------------------------------------- */
.access_header_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: min(100%, 1100px);
    margin: 0 auto;
    row-gap: 30px;
}
.access_header_left {
    width: min(100%, 370px);
}
.access_header_right {
    width: calc(100% - 420px);
    min-height: 500px;
    position: relative;
}
.access_header_map {
    display: block;
    width: calc(100% + ((100vw - 1100px)/2));
    height: 100%;
    max-width: unset;
    position: absolute;
    right: calc(((100vw - 1100px)/2)*(-1));
    top: 0;
    filter: grayscale(100%);
}
.access_h2 {
    font-size: clamp(1.2rem, 3.0vw, 1.6rem);
    letter-spacing: 0.1em;
}
.access_header_detail {
    font-size: 0.92em;
    line-height: 2.1;
}
.btn_icon {
    display: inline-block;
    width :12px;
    vertical-align: bottom;
    margin: 0 0 4px 20px;
}
.access_header_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: min(100%, 950px);
    margin: 0 auto;
}
.access_header_list_column {
    width: 47.37%;
    border-top: 1px #000 solid;
    border-bottom: 1px #000 solid;
}
.access_header_list_title {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    font-size: clamp(1.15rem, 3.0vw, 1.5rem);
    letter-spacing: 0.05em;
    line-height: 1.3;
}
.access_header_list_title:has(.fsS) {
    letter-spacing: 0;
}
    .access_header_list_title span {
        display: inline-block;
    }
    .access_header_list_title .fsS {
        font-size: 0.62em;
    }

.access_header_list_detail p {
    font-size: 0.92em;
    letter-spacing: 0.03em;
    line-height: 2.1;
}
    .access_header_list_detail .c-btn4 {
        letter-spacing: 0;
        width: min(100%, 255px);
    }
    .access_header_list_detail .btn_icon {
        margin-left: 5px;
    }
    

@media (max-width: 1250px) {
.access_header_map {
    width: calc(100% + 6vw);
    right: -6vw;
}
}
@media (max-width: 768px) {
.access_header_left {
    width: 100%;
}
.access_header_right {
    width: 100%;
    height: 300px;
}
.access_header_map {
    width: 100%;
    right: 0;
}
.access_header_detail {
    line-height: 1.8;
}
.access_header_list {
    width: min(100%, 400px);
}
.access_header_list_column {
    width: 100%;
}
.access_header_list_column:nth-child(n+2) {
    border-top: none;
}
}
@media (max-width: 600px) {
.access_header_right {
    min-height: 300px;
}
}

/* ------------------------------------- /
/   access_detail
/* ------------------------------------- */
.access_detail_title {
    font-size: clamp(1.2rem, 3.0vw, 1.6rem);
    letter-spacing: 0.05em;
}
.access_detail_text {
    font-size: 0.92em;
    letter-spacing: 0.03em;
    line-height: 2.1;
}
    .access_detail_text a {
        text-decoration: underline;
    }
    .access_detail_text a:hover {
        text-decoration: none;
    }
.access_detail_wprapper {
    width: min(100%, 1100px);
    margin: 0 auto;
    box-shadow: 0px 0px 12px -2px rgba(0,0,0,0.5);
    background-color: #fff;
}
@media (max-width: 768px) {
.access_detail_text {
    line-height: 1.8;
}
.access_detail_wprapper {
    box-shadow: none;
    padding-top: 0 !important;
}
#access_01 {
    margin-top: 20px;
}
}





.al_list {
    width: 100%;
    margin: 0 auto;
}
.al_list_column {
    border-top: 1px #868686 solid;
    border-bottom: 1px #868686 solid;
    position: relative;
}
.al_list_column:nth-child(n+2) {
    border-top: none;
}
.al_trigger {
    display: block;
    width: 100%;
    font-size: clamp(0.9rem, 2.0vw, 1.05rem);
    letter-spacing: 0.04em;
    position: relative;
}
.al_trigger:hover {
    text-decoration: none;
}
.al_trigger::before,
.al_trigger::after {
    content: '';
    width: 20px;
    height: 1px;
    background-color: #000;
    position: absolute;
    right: 10px;
    top: 34px;
    top: 50%;
    transform: translateY(-50%);
}
.al_trigger::after {
    transform: translateY(-50%) rotateZ(90deg);
}
.al_trigger.open::after {
    display: none;
}
    .al_trigger p {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        width: 100%;
        min-height: 50px;
        padding: 9px 50px;
        position: relative;
    }
    .al_trigger .fsS {
        font-size: 0.9em;
        display: inline-block;
        line-height: 1.2;
        margin: 2px 0 0;
    }
.al_detail {
    height: 0;
    overflow: hidden;
    line-height: 1.7;
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    font-size: clamp(0.85rem, 2.0vw, 1.0rem);
}
    .al_detail a {
        text-decoration: underline;
    }
    .al_detail a:hover {
        text-decoration: none;
    }
    .al_detail .fsS {
        font-size: 0.9em;
    }
.al_inner {
    padding: 0 50px;
}

.access_list_station {
    background-color: #d3c9bc;
    padding: 3px 0;
}
.access_list_station + .access_list_station {
    margin: 5px 0 0;
}
.access_list_station.bg-black {
    background-color: #000;
}
.access_list_time {
    padding: 15px 0 15px 65px;
    position: relative;
}
.access_list_time::before {
    content: '';
    display: block;
    width: 3px;
    height: calc(100% - 6px);
    background-color: #868686;
    position: absolute;
    left: calc(20px + (32px / 2) - 1px);
    top: 3px;
}
.access_list_time::after {
    content: '';
    display: block;
    width: 32px;
    aspect-ratio: 1/1;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
}
.access_list_time.train_01::after {
    background-image: url('../images/access/icon_train_01.svg');
}
.access_list_time.train_02::after {
    background-image: url('../images/access/icon_train_02.svg');
}
.access_list_time.train_03::after {
    background-image: url('../images/access/icon_train_03.svg');
}
.access_list_time.train_04::after {
    background-image: url('../images/access/icon_train_04.svg');
}
.access_list_time.ship_01::after {
    background-image: url('../images/access/icon_ship_01.svg');
}
.access_list_time.ship_02::after {
    background-image: url('../images/access/icon_ship_02.svg');
}
.access_list_time.car_01::after {
    background-image: url('../images/access/icon_car_01.svg');
}
.access_list_time.bus_01::after {
    background-image: url('../images/access/icon_bus_01.svg');
}


@media screen and (max-width:768px){
.al_trigger::before,
.al_trigger::after {
    width: 12px;
    right: 5px;
}
    .al_trigger p {
        padding: 9px 30px;
    }
.al_inner {
    padding: 0 30px;
}
}

/* ------------------------------------- /
/   wedding_header
/* ------------------------------------- */
.wedding_header_title {
    width: 100%;
    margin: min(4vw, 55px) 0 0;
    font-size: clamp(1.4rem, 0vw, 1.4rem);
    line-height: 1.7;
}
.wedding_header_detail {
    font-size: 0.92em;
    letter-spacing: 0.02em;
    line-height: 2.1;
}
.wedding_footer_detail {
    font-size: 0.92em;
    letter-spacing: 0.02em;
    line-height: 2.1;
}
.wedding_detail_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: min(100%, 1100px);
    margin: 0 auto;
}
.wedding_detail_wrapper:first-child {
    flex-direction: row-reverse;
}
.wedding_detail_wrapper:last-child {
    margin-top: 6px;
    align-items: flex-start;
}
.wedding_img_01 {
    width: 58%;
    position: relative;
}
    .wedding_img_01 img {
        display: block;
        width: calc(100% + ((100vw - 1100px)/2));
        height: 100%;
        max-width: unset;
        max-height: 550px;
        object-fit: cover;
        position: relative;
        left: 0;
        right: calc(((100vw - 1100px)/2)*(-1));
        top: 0;
    }
.wedding_img_02 {
    width: 42%;
}
    .wedding_img_02 img {
        width: 65%;
        margin: 0 auto;
    }
.wedding_img_03 {
    width: 50%;
}
.wedding_detail_inner {
    width: 44%;
    padding: 26px 0 0;
}
.wedding_detail_title {
    font-size: clamp(1.35rem, 0vw, 1.35rem);
    line-height: 1.7;
    letter-spacing: 0.05em;
}
.wedding_detail_text {
    font-size: 0.92em;
    line-height: 2.1;
}

/*神前式場*/
.wedding_detail:nth-child(2n) .wedding_detail_wrapper:first-child {
    flex-direction: row;
}
.wedding_detail:nth-child(2n) .wedding_detail_wrapper:last-child {
    flex-direction: row-reverse;
}
    .wedding_detail:nth-child(2n) .wedding_img_01 img {
        left: calc(((100vw - 1100px)/2)*(-1));
        right: auto;
    }
.wedding_detail:nth-child(2n) .wedding_detail_inner {
    padding-left: min(4vw, 80px);
}

.wedding_footer_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 6px;
    width: min(100%, 1100px);
    margin: 0 auto;
}
    .wedding_footer_wrapper img {
        width: 47.73%;
    }

@media (max-width: 1250px) {
    .wedding_img_01 img {
        width: calc(100% + 6vw);
        right: -6vw;
    }
    .wedding_detail:nth-child(2n) .wedding_img_01 img {
        width: calc(100% + 6vw);
        left: -6vw;
    }
}
@media (max-width: 1000px) {
.wedding_detail:nth-child(2n) .wedding_detail_inner {
    padding-left: 0;
}
}
@media screen and (max-width:768px){
.wedding_header_detail {
    line-height: 1.8;
}
.wedding_footer_detail {
    line-height: 1.8;
}
.wedding_detail_wrapper:last-child {
    align-items: stretch;
}
.wedding_img_01 {
    width: 100%;
}
    .wedding_img_01 img,
    .wedding_detail:nth-child(2n) .wedding_img_01 img {
        width: 100%;
        right: 0;
        left: 0;
    }
.wedding_img_02 {
    width: 39%;
    aspect-ratio: 3/2;
    background-color: #f008;
    position: relative;
}
    .wedding_img_02 img {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        object-fit: cover;
    }
.wedding_img_03 {
    width: calc(61% - 6px);
    background-color: #0f08;
    position: relative;
}
    .wedding_img_03 img {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        object-fit: cover;
    }
.wedding_detail_inner {
    width: min(100%, 500px);
    padding: max(2.6vw, 10px) 0 0;
    margin: 0 auto;
}
    .wedding_footer_detail {
        padding-top: 40px;
    }
    .wedding_footer_wrapper img {
        width: max(calc(50% - 3px), 300px);
    }
    .wedding_footer_wrapper img:last-child {
        margin-left: auto;
    }
}
@media screen and (max-width:400px){
    .wedding_footer_detail p:nth-child(n+2) {
        margin: 15px 0 0;
    }
    
}




/*お問い合わせ*/
.p-cta__wrapper.wedding {
    width: min(100%, 1100px);
    margin: 0 auto;
}
.p-cta__substitle {
    font-size: clamp(1.25rem, 4vw, 1.45rem);
}
.wedding .p-cta__contact-wrap {
    flex-wrap: wrap;
    justify-content: space-between;
    width: min(90%, 760px);
    margin: 0 auto;
    gap: 0;
    column-gap: 20px;
    row-gap: 30px;
}
    .p-cta__tel .fsS {
        display: inline-block;
        vertical-align: bottom;
        margin: 0 0 6px;
        font-size: 1rem;
        letter-spacing: 0;
    }
.p-cta__mail {
    margin: 6px 0 0;
    font-size: 1.2rem;
    letter-spacing: 0.01em;
}
.wedding .facilities_list_profile {
    width: 39.47%;
    margin: 1px 0 0;
}
    .wedding .facilities_list_profile_column dt {
        background-color: #ddd3c6;
    }
@media screen and (max-width:1000px){
.wedding .p-cta__contact-wrap {
    flex-direction: column;
    justify-content: center;
    margin-bottom: 30px;
}
.wedding .p-cta__tel-wrap {
    width: min(100%, 450px);
}
.wedding .facilities_list_profile {
    width: min(100%, 350px);
    margin: 1px 0 0;
}
}
@media screen and (max-width:767px){
.wedding .p-cta__tel-wrap {
    width: min(100%, 350px);
}
    .p-cta__tel .fsS {
       margin: 0 0 3px;
       font-size: 0.7em;
    }
.p-cta__mail {
    font-size: 1.05rem;
}
}

@media screen and (max-width:430px){
    .p-cta__tel .fsS {
       display: block;
       margin: 0 0 0 80px;
    }
}

/* ------------------------------------- /
/   about_profile
/* ------------------------------------- */
.about_profile_h2 {
    font-size: clamp(1.55rem, 4.0vw, 1.65rem);
    letter-spacing: 0.15em;
    text-indent: 0.15em;
}
.about_profile_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 30px;
    width: min(100%, 1440px);
    margin: 0 auto;
    padding: 0 min(18.75%, 270px) 0 0;
}
.about_profile_img {
    width: 35.9%;
    object-fit: cover;
}
.about_profile_list {
    width: 59.83%;
    font-size: clamp(0.9rem, 2vw, 1.0rem);
    letter-spacing: 0.03em;
    line-height: 1.6;
}
.about_profile_column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    min-height: 70px;
    border-top: 1px #868686 solid;
    border-bottom: 1px #868686 solid;
    padding: 10px 0;
    position: relative;
}
.about_profile_column::before {
    content: '';
    display: block;
    width: 1px;
    height: calc(100% - 20px);
    position: absolute;
    left: max(19.71%, 80px);
    top: 10px;
    background-color: #868686;
}
.about_profile_column:nth-child(n+2) {
    border-top: none;
}
.about_profile_title {
    width: max(19.71%, 80px);
    padding-left: min(1.4vw, 18px);
    font-size: 1.06em;
}
.about_profile_detail {
    width: 75.5%;
    padding: 0 0 0 10px;
}
@media screen and (max-width:1000px){
.about_profile_wrapper {
    justify-content: center;
    width: min(100%, 600px);
    padding: 0 6%;
}
.about_profile_img {
    width: 70%;
}
.about_profile_list {
    width: 100%;
}
}
@media screen and (max-width:768px){
.about_profile_column::before {
    left: 105px;
}
.about_profile_title {
    width: 105px;
}
.about_profile_detail {
    width: calc(100% - 125px);
    padding: 0;
}
}
@media screen and (max-width:600px){
.about_profile_wrapper {
    padding: 0 4%;
}
}
@media screen and (max-width:500px){
.about_profile_column::before {
    left: 93px;
}
.about_profile_title {
    width: 93px;
}
.about_profile_detail {
    width: calc(100% - 110px);
}
}

/* ------------------------------------- /
/   about_history
/* ------------------------------------- */
.about_history_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: min(100%, 910px);
    margin: 0 auto;
}
.about_history_h2 {
    width: 40px;
    font-size: clamp(1.55rem, 4.0vw, 1.65rem);
    letter-spacing: 0.15em;
    writing-mode: vertical-rl;
}
    .about_history_h2 span {
        display: block;
    }
.about_history_list {
    width: calc(100% - 110px);
    font-size: clamp(0.9rem, 2vw, 1.0rem);
    letter-spacing: 0.03em;
    line-height: 1.6;
}
.about_history_column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 11px 0;
    position: relative;
}
.about_history_column:first-child {
    padding-top: 30px;
}
.about_history_column:last-child {
    padding-bottom: 30px;
}
    .about_history_column::before {
        content: '';
        display: block;
        width: 1px;
        height: 100%;
        background-color: #868686;
        position: absolute;
        left: max(16.8%, 120px);
        top: 0;
    }
.about_history_title {
    width: max(16.8%, 120px);
    font-size: 1.06em;
    position: relative;
}
    .about_history_title::after {
        content: '';
        display: block;
        width: 11px;
        aspect-ratio: 1/1;
        background-color: #fff;
        border: 1px #868686 solid;
        border-radius: 50%;
        position: absolute;
        right: 0;
        top: 14px;
        transform: translateX(6px) translateY(-50%);
       
    }
    .about_history_title span {
        color: transparent;
    }
.about_history_detail {
    width: min(78%, calc(100% - 145px));
    padding: 2px 0 0;
}

@media screen and (max-width:768px){
.about_history_list {
    width: calc(100% - 70px);
}
    .about_history_column::before {
        left: 105px;
    }
.about_history_title {
    width: 105px;
}
.about_history_detail {
    width: calc(100% - 125px);
    padding: 0;
}
}
@media screen and (max-width:500px){
.about_history_h2 {
    width: 100%;
    text-align: center;
    writing-mode: horizontal-tb;
    text-indent: 0.15em;
}
.about_history_list {
    width: 100%;
    margin: 20px 0 0;
}
.about_history_column:first-child {
    padding-top: 10px;
}
.about_history_column:last-child {
    padding-bottom: 10px;
}
    .about_history_column::before {
        left: 93px;
    }
.about_history_title {
    width: 93px;
    font-size: 1.0em;
}
    .about_history_title::after {
        width: 9px;
        top: 13px;
        transform: translateX(5px) translateY(-50%);
       
    }
.about_history_detail {
    width: calc(100% - 110px);
}
}
/*
@media screen and (max-width:500px){
    .about_history_column::before {
        left: 0;
    }
.about_history_title {
    width: 100%;
    padding-left: 20px;
}
    .about_history_title::after {
        right: auto;
        left: 0;
        transform: translateX(-5px) translateY(-50%);
    }
.about_history_detail {
    width: 100%;
    padding-left: 20px;
}
}
*/

/* ------------------------------------- /
/   about_group
/* ------------------------------------- */
.about_group_h2 {
    font-size: clamp(1.55rem, 4.0vw, 1.65rem);
    letter-spacing: 0.1em;
    text-indent: 0.1em;
}
.about_group_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 40px;
    width: min(100%, 900px);
    margin: 0 auto;
}
.about_group_column {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: flex-start;
    width: 47.22%;
    width: min(48.5%, 425px);
}
.about_group_title {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    padding: 5px 12px;
    min-height: 40px;
    background-color: #d3c9bc;
    line-height: 1.2;
    font-size: clamp(1.0rem, 3vw, 1.15rem);
}
.about_group_detail {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    flex-grow: 1;
}
.about_group_banner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 94%;
    margin: 0 auto;
}
    .about_group_banner a {
       display: block;
    }
    .about_group_banner a:first-child {
       width: 44%;
    }
    .about_group_banner a:last-child {
       width: 44%;
    }
.about_group_other {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    margin: 0 auto;
    font-size: 0.95em;
}
    .about_group_other_list li {
    }
    .about_group_other_list li:nth-child(n+2) {
       margin: 14px 0 0;
    }
.about_group_other_list:first-child {
    width: 46.82%;
    padding-left: 10px;
    border-right: 1px #868686 solid;
}
.about_group_other_list:last-child {
    width: 46.82%;
}
@media screen and (max-width:1000px){
.about_group_list {
    width: min(100%, 425px);
}
.about_group_column {
    width: 100%;
}
.about_group_banner {
    padding-top: max(2.5vw, 19px);
}
}
@media screen and (max-width:500px){
.about_group_other {
    font-size: 0.82em;
}
.about_group_other_list:first-child {
    width: 44%;
    padding: 0;
    border-right: 1px #868686 solid;
}
.about_group_other_list:last-child {
    width: 51%;
}
}

/* ------------------------------------- /
/   about_sdgs
/* ------------------------------------- */
.about_sdgs_h2 {
    font-size: clamp(1.55rem, 4.0vw, 1.65rem);
    letter-spacing: 0.08em;
    text-indent: 0.08em;
}
.about_sdgs_text {
    font-size: 0.92em;
    line-height: 2.2;
    letter-spacing: 0.08em;
    text-indent: 0.08em;
}
.about_sdgs_list {
    font-size: 0.92em;
    letter-spacing: 0;

}
.about_sdgs_title {
    display: flex;
    justify-content: center;
    align-items: center;
    width: min(100%, 102px);
    min-height: 25px;
    margin: 0 auto;
    border: 1px #868686 solid;
    border-radius: calc(25px / 2);
    line-height: 1.2;
}
.about_sdgs_detail {
    padding: 5px 0 0;
    line-height: 1.7;
}
.about_sdgs_detail_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    column-gap: calc((100% - (18.7% * 5)) / 4);
    row-gap: 1.8vw;
    width: min(100%, 615px);
    margin: 0 auto;
}
    .about_sdgs_detail_list img {
       width: 18.70%;
    }
@media screen and (max-width:768px){
.about_sdgs_text {
    line-height: 1.7;
}
}
@media screen and (max-width:500px){
.about_sdgs_detail_list {
    column-gap: calc((100% - (32% * 3)) / 2);
}
    .about_sdgs_detail_list img {
       width: 32%;
    }
}

/* ------------------------------------- /
/   news
/* ------------------------------------- */
.news_list_header {
    font-size: 0.92em;
    letter-spacing: 0.04em;
    text-indent: 0.04em;
}
.news_list {
    width: min(100%, 800px);
    margin: 0 auto;
}
.news_list_column {
    padding: max(min(2vw, 30px),15px) 0 max(min(1.7vw, 25px), 20px);
    border-bottom: 1px #868686 solid;
}
.news_list_date {
    font-size: clamp(0.85em, 2.0vw, 0.92em);
    letter-spacing: 0.08em;
}
.news_list_title {
    margin-top: min(1.38vw, 20px);
    font-size: clamp(0.9rem, 2.0vw, 1.05rem);
    letter-spacing: 0.08em;
}
    .news_list_title a {
        text-decoration: underline;
    }
    .news_list_title a:hover {
        text-decoration: none;
    }

/* ------------------------------------- /
/   pagenation
/* ------------------------------------- */
.pagenation {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 10px;
    row-gap: 10px;
    font-size: 0.9em;
    line-height: 1.2;
}
    .pagenation p,
    .pagenation a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: max(min(5vw, 40px), 35px);
        padding-bottom: 1px;
        aspect-ratio: 1/1;
        border: 1px #868686 solid;
    }
    .pagenation p {
        color: #868686;
    }
    .pagenation a {
        background-color: #868686;
        color: #fff;
    }

/* ------------------------------------- /
/   news_single
/* ------------------------------------- */
.news_single_wrapper {
    width: min(100%, 700px);
    margin: 0 auto;
}
.news_single_date {
    font-size: clamp(0.85em, 2.0vw, 0.92em);
    letter-spacing: 0.08em;
}
.news_single_title {
    margin-top: min(1.38vw, 20px);
    font-size: clamp(1.15rem, 2.0vw, 1.2rem);
    letter-spacing: 0.13em;
}
.news_single_detail {
    line-height: 1.75;
    font-size: clamp(0.85em, 2vw, 1.0em);
}
    .news_single_detail h2,
    .news_single_detail h3,
    .news_single_detail h4,
    .news_single_detail h5,
    .news_single_detail h6 {
        font-weight: bold;
        margin-bottom: 10px;
        line-height: 1.6;
    }
    .news_single_detail h2:not(:first-child),
    .news_single_detail h3:not(:first-child),
    .news_single_detail h4:not(:first-child),
    .news_single_detail h5:not(:first-child),
    .news_single_detail h6:not(:first-child) {
        margin-top: 30px;
    }
    .news_single_detail h2 {
        font-size: 1.15em;
    }
    .news_single_detail h3 {
        font-size: 1.12em;
    }
    .news_single_detail h4 {
        font-size: 1.08em;
    }
    .news_single_detail h5 {
        font-size: 1.04em;
    }
    .news_single_detail h6 {
        font-size: 1.0em;
    }
    .news_single_detail > p:not(:last-child) {
        margin-bottom: 15px;
    }
    .news_single_wrapper .c-btn4 {
        width: min(100%, 210px);
        min-width: 0;
    }

@media screen and (max-width:768px){
.news_single_title {
    letter-spacing: 0.05em;
}
}

/* ------------------------------------- /
/   privacy
/* ------------------------------------- */
.privacy_detail {
    width: min(100%, 700px);
    margin: 0 auto;
    line-height: 2;
    font-size: clamp(0.85em, 2vw, 1.0em);
}
    .privacy_detail h2 {
        font-weight: bold;
        margin-bottom: 10px;
        line-height: 1.6;
    }
    .privacy_detail h3 {
        font-weight: bold;
    }
    .privacy_detail h2:not(:first-child) {
        margin-top: 30px;
    }
    .privacy_detail h2 {
        font-size: 1.15em;
    }
        .privacy_detail ul li {
            position: relative;
            padding: 0 0 0 13px;
        }
        .privacy_detail ul li::before {
            content: '・';
            display: block;
            position: absolute;
            left: 0;
            top: 0;
        }
    .privacy_detail ol {
        padding: 0 0 0 15px;
    }
        .privacy_detail ol li {
            position: relative;
            padding: 0 0 0 25px;
        }
        .privacy_detail ol li::before {
            display: block;
            position: absolute;
            left: 0;
            top: 0;
        }
        .privacy_detail ol li:nth-child(1)::before {
            content: '(1)';
        }
        .privacy_detail ol li:nth-child(2)::before {
            content: '(2)';
        }
        .privacy_detail ol li:nth-child(3)::before {
            content: '(3)';
        }
        .privacy_detail ol li:nth-child(4)::before {
            content: '(4)';
        }
@media screen and (max-width:768px){
.privacy_detail {
    line-height: 1.75;
}
    .privacy_detail ol {
        padding: 0 0 0 5px;
    }
        .privacy_detail ol li {
            position: relative;
            padding: 0 0 0 20px;
        }
}


/* ------------------------------------- /
/   sightseeing
/* ------------------------------------- */
.sightseeing_menu {
    letter-spacing: 0.1em;
    text-indent: 0.1em;
}
.sightseeing_h2 {
    font-size: clamp(1.5rem, 4.0vw, 1.65rem);
    letter-spacing: 0.15em;
    text-indent: 0.15em;
}
.sightseeing_h2.narrow {
    letter-spacing: 0.04em;
    text-indent: 0.04em;

}
.sightseeing_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    column-gap: calc((100% - (30.3027% * 3)) / 2);
    row-gap: max(min(4.86vw, 70px), 40px);
    width: min(100%, 1100px);
    margin: 0 auto;
}
.sightseeing_list_column {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: flex-start;
    width: 30.3027%;
}
.sightseeing_list_img {
    width: 100%;
}
.sightseeing_list_title {
    width: 100%;
    font-size: clamp(1.2rem, 1.8vw, 1.45rem);
    line-height: 1.5;
}
.sightseeing_list_title:has(span) {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.sightseeing_list_profile {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    flex-grow: 1;
    justify-content: flex-start;
    width: 100%;
    margin: 25px 0 0;
    padding: 18px 0;
    border-top: 1px #000 solid;
    border-bottom: 1px #000 solid;
    position: relative;
    font-size: 0.95em;
}
    .sightseeing_list_profile > dt {
        width: min(100%, 75px);
        background-color: #fff;
        position: absolute;
        left: 0;
        top: 0;
        transform: translateY(-50%);
    }
    .sightseeing_list_profile > dd {
        width: 100%;
    }
.sightseeing_access_column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    line-height: 1.65;
}
    .sightseeing_access_column > dt {
        width: min(100%, 62px);
    }
    .sightseeing_access_column > dt::after {
        content: '/';
        display: inline-block;
        margin-left: 3px;
    }
    .sightseeing_access_column > dd {
        width: calc(100% - 62px);
    }
    .sightseeing_access_column > dd.narrow {
        letter-spacing: -0.03em;
    }
.sightseeing_access_button {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    column-gap: 30px;
    row-gap: 8px;
    width: 100%;
    height: auto;
}
    .sightseeing_access_button .c-btn4 {
        min-width: 0;
        width: min(100%, 120px);
        padding: 1px 7px 3px;
        font-size: 0.9rem;
    }
    .sightseeing_access_button .c-btn4::after {
        right: 8px;
    }
.sightseeing_banner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: min(100%, 460px);
    margin: 0 auto;
}
    .sightseeing_banner a {
        display: block;
    }
    .sightseeing_banner a:first-child {
        width: 50.87%;
    }
    .sightseeing_banner a:last-child {
        width: 38.04%;
    }


@media screen and (max-width:768px){
.sightseeing_list {
    column-gap: calc(4%);
}
.sightseeing_list_column {
    width: 48%;
}
}
@media screen and (max-width:600px){
.sightseeing_list {
    width: min(100%, 340px);
}
.sightseeing_list_column {
    width: 100%;
}
}


/* ------------------------------------- /
/   recruit_point
/* ------------------------------------- */
.recruit_header_text {
    font-size: 0.92em;
    letter-spacing: 0.05em;
    text-indent: 0.05em;
    line-height: 2.1;
}
.recruit_h2 {
    font-size: clamp(1.45rem, 3.0vw, 1.6rem);
    letter-spacing: 0.18em;
    text-indent: 0.18em;
}
.recruit_point_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 20px;
    width: min(100%, 900px);
    margin: 0 auto;
    padding: 30px 0;
    border: 1px #868686 solid;
    font-size: clamp(0.97rem, 2vw, 1.06rem);
    line-height: 1.3;
    position: relative;
}
.recruit_point_list::before,
.recruit_point_list::after {
    content: '';
    display: block;
    position: absolute;
}
.recruit_point_list::before {
    width: calc(100% - (max(min(3vw, 40px), 20px) * 2));
    height: calc(100% + 2px);
    left: 50%;
    top: -1px;
    transform: translateX(-50%);
    background: #fff;
}
.recruit_point_list::after {
    width: calc(100% + 2px);
    height: calc(100% - (max(min(3vw, 40px), 20px) * 2));
    left: -1px;
    top: 50%;
    transform: translateY(-50%);
    background: #fff;
}
    .recruit_point_list li {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        min-height: max(min(5vw, 50px), 30px);
        position: relative;
        z-index: 1;
    }
    .recruit_point_list li::after {
       content: '';
       display: block;
       width: 1px;
       height: max(min(5vw, 50px), 30px);
       margin: 0 max(min(4.5vw, 45px), 20px);
       background-color: #868686;
    }
    .recruit_point_list li:nth-child(3)::after,
    .recruit_point_list li:nth-child(5)::after,
    .recruit_point_list li:nth-child(7)::after {
       display: none;
    }
    .recruit_point_list span.right {
       display: inline-block;
       margin-left: max(min(5vw, 50px), 30px);
    }
.recruit_point_button {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 10px;
    width: min(100%, 665px);
    margin: 0 auto;
}
    .recruit_point_button a {
        width: min(48%, 300px);
    }
    .recruit_point_button .btn_icon {
        margin-left: 5px;
    }
@media screen and (max-width:1000px){
    .recruit_point_list li:nth-child(3),
    .recruit_point_list li:nth-child(4),
    .recruit_point_list li:nth-child(5) {
        width: 100%;
    }
    .recruit_point_list li:nth-child(2)::after,
    .recruit_point_list li:nth-child(4)::after {
       display: none;
    }
}
@media screen and (max-width:768px){
.recruit_header_text {
    line-height: 1.8;
}
}
@media screen and (max-width:600px){
    .recruit_point_list li {
       width: 100%;
       min-height: 30px;
    }
    .recruit_point_list li::after {
       display: none;
    }
    .recruit_point_list span.fsS {
       font-size: 0.9em;
       letter-spacing: -0.02em;
    }
    .recruit_point_list span.right {
       display: block;
       width: 100%;
       margin-top: 20px;
       padding-right: 20%;
       text-align: right;
    }
.recruit_point_button {
    width: min(100%, 300px);
}
    .recruit_point_button a {
        width: 100%;
    }
}


/* ------------------------------------- /
/   recruit_main
/* ------------------------------------- */
.recruit_list {
    width: min(100%, 700px);
    margin: 0 auto;
    font-size: clamp(0.93rem, 2vw, 1.0rem);
    letter-spacing: 0.03em;
    line-height: 1.6;
}
.recruit_column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    min-height: 70px;
    border-top: 1px #868686 solid;
    border-bottom: 1px #868686 solid;
    padding: 10px 0;
    position: relative;
}
.recruit_column::before {
    content: '';
    display: block;
    width: 1px;
    height: calc(100% - 20px);
    position: absolute;
    left: max(19.71%, 80px);
    top: 10px;
    background-color: #868686;
}
.recruit_column:nth-child(n+2) {
    border-top: none;
}
.recruit_title {
    width: max(19.71%, 80px);
    padding-left: min(1.4vw, 18px);
    padding-right: 48px;
    font-size: 1.06em;
    text-align-last: justify;
}
.recruit_detail {
    width: 75.5%;
    padding: 0 0 0 10px;
    font-size: 0.98em;
}
@media screen and (max-width:768px){
.recruit_column::before {
    left: 105px;
}
.recruit_title {
    width: 105px;
    padding-right: 26px;
}
.recruit_detail {
    width: calc(100% - 125px);
    padding: 0;
}
}
@media screen and (max-width:500px){
.recruit_column::before {
    left: 93px;
}
.recruit_title {
    width: 93px;
    padding-right: 21px;
}
.recruit_detail {
    width: calc(100% - 110px);
}
}

/*お問い合わせ*/
.p-cta__wrapper.recruit {
    width: min(100%, 900px);
    margin: 0 auto;
}
        .recruit .p-cta__tel .fsS {
           margin: 0 0 8px 10px;
        }
    .p-cta__wrapper.recruit .p-cta__mail {
       font-size: 1em;
       letter-spacing: 0;
       margin: 5px 0 8px;
    }
@media screen and (max-width:767px){
        .recruit .p-cta__tel .fsS {
           margin: 0 0 3px 8px;
        }
}
@media screen and (max-width:430px){
        .recruit .p-cta__tel .fsS {
           margin: 0 0 0 55px;
        }
}


/* ------------------------------------- /
/   contact_header
/* ------------------------------------- */
.contact_h2 {
    font-size: clamp(1.45rem, 3.0vw, 1.6rem);
    letter-spacing: 0.1em;
    text-indent: 0.18em;
}
.contact_header_text {
    font-size: 0.92em;
    letter-spacing: 0.05em;
    text-indent: 0.05em;
    line-height: 2.1;
}
    .contact_header_text a {
        text-decoration: underline;
    }
    .contact_header_text a:hover {
        text-decoration: none;
    }

.contact_menu_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: max(min(3.47vw, 50px), 15px);
    width: min(100%, 700px);
    margin: 0 auto;
}
.contact_menu_button {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 46.43%;
    width: 46.58%;
    aspect-ratio: 325/165;
    background-color: #d3c9bc;
    background-image: url('../images/contact/arrow_black.svg');
    background-position: right 10.76% top 50%;
    background-size: 4.43% auto;
    background-repeat: no-repeat;
    position: relative;
    font-size: clamp(1.0rem, 2.5vw, 1.1rem);
    line-height: 1.8;
    letter-spacing: 0.03em;
    text-indent: 0.03em;
}
.contact_menu_button::before {
    content: '';
    display: block;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    border: 1px #fff solid;
    position: absolute;
    left: calc(10px / 2);
    top: calc(10px / 2);
}
    .contact_menu_button .fsS {
        font-size: 0.88em;
    }
@media screen and (max-width:768px){
.contact_header_text {
    line-height: 1.8;
}
}
@media screen and (max-width:600px){
.contact_header_text {
    font-size: 0.89em;
    letter-spacing: 0;
    text-indent: 0;
}
.contact_menu_wrapper {
    width: min(100%, 350px);
}
.contact_menu_button {
    width: 100%;
    aspect-ratio: 300/100;
    background-size: 3% auto;
    line-height: 1.6;
}
}

/* ------------------------------------- /
/   contact_form
/* ------------------------------------- */
.contact_form {
    width: min(100%, 740px);
    margin: 0 auto;
}
.contact_form__column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 25px 0 0;
}
.contact_form_title {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    column-gap: 17px;
    row-gap: 5px;
    width: min(100%, 170px);
    line-height: 1.4;
}
.contact_form_detail {
    width: calc(100% - 170px);
}
.contact_form_required {
    display: inline-block;
    padding: 0 4px;
    background-color: #000;
    color: #fff;
    font-size: 0.8125em;
}
.contact_form_caution {
    font-size: 0.9em;
    letter-spacing: -0.08em;
}
    .contact_form input,
    .contact_form textarea,
    .contact_form .input_check {
        background: none;
        border: none;
        appearance: none;
        width: 100%;
        padding: 9px 12px;
        background-color: #ebe9e5;
        font-family: var(--font-jp);
        font-size: 0.9em;
        font-display: swap;
    }
    .contact_form input[type=radio] {
        display: none;
    }
    .contact-form input::placeholder,
    .contact-form textarea::placeholder {
        color: #868686;
    }
    .contact_form input.input_error,
    .contact_form textarea.input_error,
    .contact_form div.input_error {
        background-color: #fbefef;
        border: 2px #b42518 solid;
    }
    .input_error + label {
        background-color: #fbefef;
    }
    .contact_form .error {
        color: #b42518;
        font-size: 0.9em;
    }
    .contact_form .error.false {
        display: none;
    }
    .contact_form textarea {
        min-height: 80px;
    }
    .input_check {
        min-height: 40px;
    }
    .input_check.textarea {
        min-height: 80px;
    }


.radio_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    column-gap: 23px;
    row-gap: 20px;
}
.radio_column label {
    display: block;
    padding: 0 0 0 26px;
    position: relative;
    cursor: pointer;
    font-size: 0.9em;
}
.radio_column label::before {
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    border: 1px #868686 solid;
    border-radius: 50%;
    position: absolute;
    left: 5px;
    top: 5px;
}
.radio_column:has(input[type=radio]:checked) label::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    background-color: #000;
    border-radius: 50%;
    position: absolute;
    left: 8px;
    top: 8px;
}
.contact_form_submit {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    justify-content: center;
    column-gap: 40px;
    row-gap: 20px;
}
    .contact_form_submit button {
        display: flex;
        justify-content: center;
        align-items: center;
        width: min(100%, 215px);
        aspect-ratio: 215/40;
        background-color: #000;
        color: #fff;
        font-family: var(--font-jp);
        font-size: 0.95rem;
        letter-spacing: 0.05em;
        text-indent: 0.05em;
    }
    .contact_form_submit button.form_return {
        background-color: #868686;
    }
.contact_form_text {
    font-size: 0.89em;
    line-height: 2.1;
}
@media screen and (max-width:768px){
.contact_form_text {
    line-height: 1.8;
}
}
@media screen and (max-width:600px){
.contact_form__column {
    row-gap: 3px;
}
.contact_form_title {
    width: 100%;
    font-size: 0.92em;
}
.contact_form_detail {
    width: 100%;
    font-size: 0.92em;
}
}

/* ------------------------------------- /
/   予約フォーム
/* ------------------------------------- */
.p-top-search iframe {
    display: block;
    width: 100%;
    min-height: 360px;
    margin: 0 auto;
    border: none;
}
select.cmbPerson0 {
    width: 89px;
    background-color: #fff;
    border: 1px solid #646464;
    font-size: 15px;
    line-height: 1.3333333333;
    letter-spacing: 0.08em;
    font-weight: 700;
    padding: 9px 16px;
}
.p-top-search__btn-wrap input {
    display: inline-block;
    min-width: 200px;
    text-align: center;
    background-color: #242424;
    color: #fff;
    padding: 10px 20px;
    font-size: 15px;
    line-height: 1.3333333333;
    letter-spacing: 0.08em;
    font-weight: 700;
    transition-duration: 0.3s;
}
.p-top-search__btn-wrap input:hover {
    opacity: 0.7;
}
@media screen and (max-width:1050px){
.p-top-search iframe {
    min-height: 425px;
}
}
@media screen and (max-width:818px){
.p-top-search iframe {
    min-height: 245px;
}
}

/* ------------------------------------- /
/   gallery_header
/* ------------------------------------- */
.gallery_header_text {
    font-size: 0.92em;
    letter-spacing: 0.05em;
    text-indent: 0.05em;
    line-height: 2.1;
}
.gallery_header_text.gallery_footer {
    margin: 65px auto 0;
}
.gallery_h2 {
    font-size: clamp(1.5rem, 4.0vw, 1.65rem);
    letter-spacing: 0.15em;
    text-indent: 0.15em;
}
.gallery_menu_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: calc((100% - (min(32%, 333px) * 3)) / 2);
    width: min(100%, 1100px);
    margin: 0 auto;
}
.gallery_menu_column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: min(32%, 333px);
    padding: 35px 15px 30px 10px;
    border-top: 1px #000 solid;
    border-bottom: 1px #000 solid;
}
    .gallery_menu_column p {
        font-size: clamp(1.1rem, 1.8vw, 1.45rem);
    }
    .gallery_menu_column:last-child p {
        padding-left: 10px;
    }
    .gallery_menu_column .c-btn4 {
        min-width: 0;
        width: min(100%, 120px);
        padding: 2px 0 2px 5px;
        letter-spacing: -0.05em;
    }
    .gallery_menu_column .c-btn4::after {
        right: 8px;
    }

@media screen and (max-width:1000px) and (min-width:601px){
.gallery_menu_column {
    flex-direction: column;
    justify: center: center;
    row-gap: 10px;
    padding: 15px 0 20px;
}
    .gallery_menu_column p {
        width: 100%;
        text-align: center;
    }
}
@media screen and (max-width:768px){
.gallery_header_text {
    line-height: 1.8;
}
}
@media screen and (max-width:600px){
.gallery_menu_list {
    width: min(100%, 350px);
}
.gallery_menu_column {
    width: 100%;
    padding: 25px 15px 20px 10px;
}
.gallery_menu_column:not(:first-child) {
    border-top: none;
}
}

/* ------------------------------------- /
/   gallery_img
/* ------------------------------------- */
.gallery_img_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    column-gap: calc((100% - (30.3027% * 3)) / 2);
    row-gap: max(min(4vw, 60px), 30px);
    width: min(100%, 1100px);
    margin: 0 auto;
}
.gallery_img_list_column {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: flex-start;
    width: 30.3027%;
}
.gallery_img_list_thumb {
    display: block;
    width: 100%;
}
.gallery_img_list_title {
    width: 100%;
    font-size: clamp(1.2rem, 1.8vw, 1.45rem);
    line-height: 1.5;
}

@media screen and (max-width:768px){
.gallery_img_list {
    column-gap: calc(3%);
}
.gallery_img_list_column {
    width: 48.5%;
}
}
@media screen and (max-width:600px){
.gallery_img_list_title {
    font-size: 0.95rem;
}
}

/* ------------------------------------- /
/   gallery_img
/* ------------------------------------- */
.gallery_modal {
    display: flex;
    flex-wrap: wrap;
    justify-content:center;
    align-items: center;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0,0,0,0.65);
    top: 0;
    left: 0;
    z-index: 120;
    opacity: 1;
    transition: 0.5s;
}
.gallery_modal.false {
    opacity: 0;
    z-index: -1;
}
.gallery_modal_column {
    width: min(calc(100% - 80px), 900px);
    max-height: calc(100vh - 80px);
    overflow: auto;
    padding: 18px;
    position: relative;
}
.gallery_modal_inner {
    background-color: #fff;
    padding: 20px 25px 25px;
}
.gallery_modal_column.false {
    display: none;
}
.gallery_modal_close {
    display: block;
    width: 35px;
    aspect-ratio: 1/1;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    right: 0;
    top: 0;
}
.gallery_modal_close::before,
.gallery_modal_close::after {
    content: '';
    display: block;
    width: 1px;
    height: 13px;
    background-color: #666;
    position: absolute;
    right: 50%;
    top: 50%;
}
.gallery_modal_close::before {
    transform: translateX(-50%) translateY(-50%) rotateZ(45deg);
}
.gallery_modal_close::after {
    transform: translateX(-50%) translateY(-50%) rotateZ(135deg);
}
    .gallery_modal_column .c-btn4 {
        min-width: 0;
        width: min(100%, 120px);
        padding: 2px 0 2px 5px;
        letter-spacing: -0.05em;
    }
    .gallery_modal_column .c-btn4::after {
        right: 8px;
    }
@media (max-width: 768px) {
.gallery_modal_column {
    width: calc(100% - 60px);
    max-height: calc(100vh - 60px);
}
}
@media (max-width: 600px) {
.gallery_modal_column {
    width: calc(100% - 20px);
    max-height: calc(100vh - 110px);
    margin: 50px 0 0;
}
.gallery_modal_inner {
    background-color: #fff;
    padding: 20px 15px 20px;
}
}

/* ------------------------------------- /
/   osusume
/* ------------------------------------- */
.osusume_h1 {
    font-size: clamp(1.2rem, 3vw, 1.65rem);
}
.osusume_text {
    letter-spacing: 0.05em;
    text-indent: 0.05em;
    line-height: 2.1;
}
.osusume_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    column-gap: calc(3%);
    row-gap: max(min(4vw, 60px), 30px);
    width: min(100%, 800px);
    margin: 0 auto;
}
.osusume_list_column {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: flex-start;
    width: 48.5%;
}
.osusume_list_thumb {
    display: block;
    width: 100%;
}
.osusume_list_title {
    width: 100%;
    font-size: clamp(0.95rem, 3vw, 1.1rem);
    line-height: 1.5;
}
@media screen and (max-width:768px){
.osusume_text {
    line-height: 1.8;
}
}
@media screen and (max-width:600px){
.osusume_list {
    width: min(100%, 400px);
}
.osusume_list_column {
    width: 100%;
}
.osusume_list_title {
    font-size: 1.1rem;
}
}


/* ------------------------------------- /
/   英語ページ対応
/* ------------------------------------- */
.p-header__language-list {
    width: 100%;
}
    .p-header__language-list:has(.p-header__language-item:first-child:last-child) .p-header__language-item {
        margin-top: 10px;
        padding: 5px 0;
    }
    .scrolled .p-header__language-list:has(.p-header__language-item:first-child:last-child) .p-header__language-item {
        background-color: rgba(255,255,255,0.7);
    }
    
.english:not(.zhtw) * {
    letter-spacing: 0;
}
.english .c-btn {
    letter-spacing: 0;
}
/*header*/
    .english .p-header__btn-link {
        min-width: 176px;
    }
    .english .p-drawer__btn-list {
        flex-wrap: wrap;
        row-gap: 12px;
    }
    .english .p-drawer__btn-item {
        width: 100%;
    }
    .english .p-drawer__btn {
        width: 100%;
    }
    .english .p-drawer__nav-list {
        flex-direction: column;
        gap: 15px;
    }
    .english .p-drawer__nav-link {
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }
    .english .p-drawer__body-list-link {
        line-height: 1.3;
        padding: 6px 0;
    }
@media screen and (max-width:999px){
    .english .p-drawer__nav-link {
        width: 100%;
    }
    .english .p-drawer__body-list-link {
        padding: 0;
    }
}
@media screen and (max-width:850px){
    .english .p-header__logo {
        width: 190px;
    }
}
@media screen and (max-width:767px){
    .english .p-header__logo {
        width: 140px;
    }
    .english .p-header__btn-link {
        min-width: 140px;
        padding: 2px 0;
    }
}
@media screen and (max-width:600px){
    .english .p-header__contents {
        justify-content: flex-end;
    }
    .english .p-header__btn-list {
        flex-wrap: wrap;
        width: min(100%, 140px);
        row-gap: 3px;
    }
    .english .p-header__btn-item {
        width: 100%;
    }
    .english .p-header__btn-link {
        width: 100%;
        min-width: 0;
    }
}

/*index*/
@media screen and (min-width:1000px){
    .english .p-top-about__video {
        margin-right: 40px;
    }
}
    .english .p-top-about__body-wrapper {
        flex-direction: column;
    }
    .english .p-top-about__text {
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }
    .english .p-top-room__hgroup {
        display: block;
    }
    .english .p-hgroup {
        width: 95%;
    }
    .english .p-hgroup__title {
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
        margin-bottom: 30px;
        padding-bottom: 20px;
        border-bottom: 1px #000 solid;
    
    }
    .english .p-hgroup__text::before {
        display: none;
    }
    .english .p-hgroup__text {
        line-height: 1.7;
    }
    .english .p-top-food__hgroup {
        display: block;
    }
    .english .p-top-spring__hgroup {
        display: block;
    }
        .english .p-top-search__title span {
            display: inline-block;
        }
    .english .c-btn3 {
        min-width: 265px;
        letter-spacing: 0;
    }
    .english .c-btn3::after {
        display: none;
    }
    .english .p-links {
        padding-bottom: 0;
    }
    .english .c-lower-title {
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }
    .english .p-top-news__list {
        width: 100%;
        text-align: center;
    }

/*guestroom*/
.english:not(.zhtw) .facilities_menu_column:not(.fsL) {
    font-size: 0.8em;
}
.english .p-room__suikei-head-text {
    white-space: wrap;
}
    .english .c-btn4 {
        min-width: 300px;
        padding: 10px 30px 10px 10px;
    }
@media screen and (min-width: 1080px) {
    .english .p-room__kayou-text {
        white-space: nowrap;
    }
}
@media screen and (min-width: 768px) {
    .english .c-amenity__row {
        grid-template-columns: 90px 1fr;
    }
    .english .c-btn4 {
        padding: 10px 30px 10px 10px;
    }
    .english .p-room__kayou-about-wrap {
        width: 100%;
    }
}

/*hotspring*/
    .english .p-spring__bath-efficacy-wrap {
        display: block;
    }
    .english .p-spring__bath-efficacy-row {
        display: block;
    }
    .english .p-spring__bath-efficacy-row dt {
        border-bottom: 1px #000 solid;
    }
    .english .p-spring__bath-efficacy-row dt::after {
        display: none;
    }
    .english .p-spring__bath-efficacy-row:not(:first-child) {
        margin-top: 10px;
    }
    .english .p-spring__bath-efficacy-list:not(:first-child) .p-spring__bath-efficacy-row:first-child {
        margin-top: 10px;
    }
    .p-accordion__head.disabled::before,
    .p-accordion__head.disabled::after {
        display: none;
    }
    .p-accordion__head.disabled + .p-accordion__body {
        display: block;
    }

/*cuisine*/
    .english .p-cuisine__room-head {
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
        
    }
@media screen and (min-width: 768px) {
    .english .p-cuisine__room-wrapper {
        grid-template-columns: 240px 1fr;
        gap: 0;
    }
}
@media (max-width: 767px) {
    .english .p-cuisine__room-head {
        top: min(66vw, 360px);
    }
    .english .p-cuisine__room-image2 {
        margin-top: 120px;
    }
}

/*recommended*/
    .english .c-vertical-title {
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
        
    }
@media (max-width: 768px) {
    .english .p-recommended__cuisine_title {
        padding: 0 1.25rem;
    }
    .english .p-recommended__relax-title {
        margin-top: 0;
        padding: 10vw 0;
    }
        .english .p-recommended__relax-title span {
            -webkit-writing-mode: horizontal-tb;
            writing-mode: horizontal-tb;
        }
}
@media (max-width: 500px) {
    .english .p-recommended__relax-title {
        padding: 8vw 0 0 0;
    }
    .english .p-recommended__sake-title {
        width: min(60%, 200px);
    }
}

/*plangroup*/
    .english .p_group_cuisine_photo {
        width: min(100%, 768px);
        margin: 0 auto;
    }
    .english .p-group__option-body-list-head {
        line-height: 1.6;
        padding-top: 5px;
        padding-bottom: 5px;
    }
    .english .p-group__option-body-list-body {
        line-height: 1.6;
        padding-top: 5px;
        padding-bottom: 5px;
    }

/*planday*/
.english .p-cta__attention {
    padding-left: 0.7em;
}
.english .p-cta__attention::before {
    content: '*';
}

/*facilities*/
.english:not(.zhtw) .facilities_list_title .fsS {
    font-size: 0.85em;
}
.english:not(.zhtw) .facilities_list_profile dt {
    width: min(100%, 145px);
}
.english:not(.zhtw) .facilities_list_profile dt.long {
    width: 100%;
    margin-bottom: 5px;
    position: relative;
    transform: none;
}

/*access*/
.english .access_header_left {
    width: min(100%, 410px);
}
.english .access_header_right {
    width: calc(100% - 460px);
}
.english .access_h2 .fsS {
    font-size: 0.8em;
}
.english .access_detail_wprapper {
    width: min(100%, 800px);
}

@media (max-width: 768px) {
.english .access_header_left {
    width: 100%;
}
.english .access_header_right {
    width: 100%;
}
.english .al_inner {
    padding: 0;
}
}

/*about*/
.english:not(.zhtw) .about_profile_title {
    width: min(100%, 210px);
}
.english:not(.zhtw) .about_profile_detail {
    width: calc(100% - 220px);
}
.english:not(.zhtw) .about_profile_column::before {
    left: 210px;
}
.english:not(.zhtw) .about_history_wrapper {
    display: block;
}
.english:not(.zhtw) .about_history_h2 {
    width: 100%;
    margin-bottom: 20px;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
}
.english:not(.zhtw) .about_history_list {
    width: min(100%, 800px);
    margin: 0 0 0 auto;
}
.english:not(.zhtw) .about_history_title {
    width: min(100%, 150px);
}
.english:not(.zhtw) .about_history_detail {
    width: calc(100% - 170px);
}
.english:not(.zhtw) .about_history_column::before {
    left: 150px;
}
.english .about_group_other_list {
    width: 100%;
    border: none;
}
@media (max-width: 1000px) {
    .english:not(.zhtw) .about_profile_wrapper {
        width: min(100%, 800px);
    }
    .english:not(.zhtw) .about_profile_img {
        width: min(70%, 350px);
    }
}
@media (max-width: 600px) {
.english:not(.zhtw) .about_profile_title {
    width: 100%;
    padding: 0;
    font-size: 1.1rem;
}
.english:not(.zhtw) .about_profile_detail {
    width: 100%;
    padding: 5px 0 0 10px;
}
.english:not(.zhtw) .about_profile_column::before {
    display: none;
}
.english:not(.zhtw) .about_history_title {
    width: min(100%, 90px);
}
.english:not(.zhtw) .about_history_detail {
    width: calc(100% - 110px);
}
.english:not(.zhtw) .about_history_column::before {
    left: 90px;
}
}


/*about*/
.english:not(.zhtw) .contact_form_title {
    display: block;
}


.english:not(.zhtw) .facilities_menu_list.room_menu .facilities_menu_column a {
    min-height: 60px
}

/* ------------------------------------- /
/   中国語ページ対応
/* ------------------------------------- */
.p-links__list:has(li:first-child:last-child) {
    display: block;
}

/* ------------------------------------- /
/   お部屋ページ改修
/* ------------------------------------- */
#kayou_02.p-room__sanyou::after {
    left: auto;
    right: 0;
}
.p-room__kayou-inner:has(.new),
.p-room__sanyou-inner:has(.new) {
    position: relative;
}
.p-room__kayou-inner .new,
.p-room__sanyou-inner .new {
    display: block;
    width: min(100%, 100px);
    position: absolute;
    left: calc(50% - 290px);
    top: 0;
}
.p-room__sanyou-inner .new {
    left: calc(50% - 330px);
}
.english:not(.zhtw) .p-room__kayou-inner .new,
.english:not(.zhtw) .p-room__sanyou-inner .new {
    left: calc(50% - 380px);
    top: 15px;
}
main:not(.english) .p-room__kayou-inner .new {
    left: calc(50% - 340px);
}
main:not(.english) .p-room__sanyou-inner .new {
    left: calc(50% - 410px);
}
@media (max-width: 767px) {
.p-room__kayou-inner .new,
.p-room__sanyou-inner .new {
    width: min(100%, 80px);
    left: calc(50% - 220px);
}
.p-room__sanyou-inner .new {
    left: calc(50% - 250px);
}
.english:not(.zhtw) .p-room__kayou-inner .new,
.english:not(.zhtw) .p-room__sanyou-inner .new {
    left: calc(50% - 290px);
    top: 10px;
}
main:not(.english) .p-room__kayou-inner .new {
    left: calc(50% - 260px);
}
main:not(.english) .p-room__sanyou-inner .new {
    left: calc(50% - 310px);
}
}
@media (max-width: 600px) {
main:not(.english) .p-room__sanyou-inner .new {
    width: min(100%, 60px);
    top: -30px;
    left: calc(50% - 240px);
}
}
@media (max-width: 500px) {
.p-room__kayou-inner .new,
.p-room__sanyou-inner .new {
    width: min(100%, 60px);
    left: calc(50% - 160px);
    top: -30px;
}
.english:not(.zhtw) .p-room__kayou-inner .new,
.english:not(.zhtw) .p-room__sanyou-inner .new {
    top: -30px;
}
main:not(.english) .p-room__kayou-inner .new {
    left: calc(50% - 180px);
}
main:not(.english) .p-room__sanyou-inner .new {
    left: calc(50% - 180px);
}
}

