@charset "UTF-8";
/* ---------------

   トップページ

   --------------- */


/* #header
-------------------------------------------------- */

/* .content-container
-------------------------------------------------- */
:root {
  --easing: cubic-bezier(.2, 1, .2, 1);
  --transition: .8s var(--easing);
  --color-base: #f8f8f8;
  --color-gray: #ddd;
  --color-theme: #1363DF;
  --color-theme-darken: #f12617;
  --box-shadow: .8rem .8rem 1.2rem rgba(0, 0, 0, .05), -.8rem -.8rem 1.2rem #fff;
  --box-shadow-hover: 1rem 1rem 1.5rem rgba(0, 0, 0, .08), -1rem -1rem 1.5rem #fff;
  --box-shadow-inset: inset .8rem .8rem 1.2rem rgba(0, 0, 0, .05), inset -.8rem -.8rem 1.2rem #fff;
  --box-shadow-dark: .8rem .8rem 1.2rem rgba(0, 0, 0, .1), -.8rem -.8rem 1.2rem rgba(#fff,.2);
}
.p-home-visual,
.p-home-visual__inner {
  position: relative;
}
[class*=swiper]:focus {
  outline: none;
}
.slide-media {
  position: relative;
  overflow: hidden;
}
.slide-media img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  object-position: 50% 0%;
}
.p-home-visual__carousel .swiper-fade .swiper-slide {
  -webkit-transition-property: opacity, -webkit-transform !important;
  transition-property: opacity, -webkit-transform !important;
  transition-property: opacity, transform !important;
  transition-property: opacity, transform, -webkit-transform !important;
  pointer-events: none;
}
.p-home-visual__carousel .slide-media {
  height: 720px;
}
.p-home-visual__carousel .slide-media img {
  -webkit-transition: 7s 1s ease-out;
  transition: 7s 1s ease-out;
}
.slide-media {
  position: relative;
}
.slide-media::after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.40);
  top: 0;
}
.p-home-visual__carousel .swiper-slide[class*=-active] .slide-media img {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.p-home-visual__carousel .swiper-slide[class*=-active] .slide-title {
  -webkit-animation: p-home-visual__carousel-fadeIn 2s 0.5s var(--easing) both;
          animation: p-home-visual__carousel-fadeIn 2s 0.5s var(--easing) both;
}
  @-webkit-keyframes p-home-visual__carousel-fadeIn {
    0% {
      -webkit-transform: scale(0.5);
              transform: scale(0.5);
      opacity: 0;
      -webkit-filter: blur(300px);
              filter: blur(300px);
    }
    100% {
      -webkit-transform: scale(1);
              transform: scale(1);
      opacity: 1;
      -webkit-filter: blur(0);
              filter: blur(0);
    }
  }

  @keyframes p-home-visual__carousel-fadeIn {
    0% {
      -webkit-transform: scale(0.5);
              transform: scale(0.5);
      opacity: 0;
      -webkit-filter: blur(300px);
              filter: blur(300px);
    }
    100% {
      -webkit-transform: scale(1);
              transform: scale(1);
      opacity: 1;
      -webkit-filter: blur(0);
              filter: blur(0);
    }
  }

  @media only screen and (max-width: 1024px) {
    .pc {
      display: none !important;
    }
    .p-home-visual__carousel {
    }
    .p-home-visual__carousel .slide-media {
      height: max(72vh, 72vw);
    }
  }
  @media only screen and (max-width: 599px) {
    .pc-tab {
      display: none !important;
    }
    .p-home-visual__carousel .slide-title {
      font-size: 2.8rem;
      right: 4rem;
      margin-left: 6rem;
    }
  }
  @media only screen and (min-width: 1025px) {
    .tab-sp {
      display: none !important;
    }
    .swiper-button-prev::before, .swiper-button-next::before {
      -webkit-transition: var(--transition);
      transition: var(--transition);
    }
    .swiper-button-prev:hover::before, .swiper-button-next:hover::before {
      -webkit-transform: scale(1.2);
              transform: scale(1.2);
    }
  }
  @media only screen and (min-width: 600px) {
    .sp {
      display: none !important;
    }
  }

.p-mv {
  background-color: #fff3e2;
}
.p-mv__image {
  background: url(../images/mv_bg.jpg) no-repeat 0 0 / cover;
  height: 80vh;
  position: relative;
  z-index: 1;
}
.p-mv__logo {
  width: clamp(120px, 6.464rem + 4.42vw, 160px);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
}
.p-mv__contents {
  position: relative;
  /*padding: 0 6%;*/
  z-index: 0;
}
.-bg.p-mv__contents::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100%);
  background: url(../images/mv_contents_bg.jpg) no-repeat 80% 0 / cover;
}
.-recommend.p-mv__block {
  padding: 0 24px clamp(56px, 2.464rem + 4.42vw, 96px);
}
.-bg.p-mv__head {
  background: url(../images/mv_head_bg.png) no-repeat clamp(-24px, 0.464rem + 4.42vw, -64px) 50% / 50%;
  padding: 40px 0 24px clamp(24px, 0.464rem + 4.42vw, 64px);
  margin-left: calc(50% - 50vw);
}
.-flex.p-mv__head {
  display: flex;
  align-items: center;
}
.-flex .p-mv__title {
  flex-basis: 24%;
}
.-flex .p-mv__text {
  margin-left: 24px;
}
.-menu .p-mv__item {
  font-family: 'Shippori Mincho B1', serif;
  background-color: #BA2200;
  color: #fff;
  padding: 4px;
}
.-menu .p-mv__item:not(:first-of-type) {
  margin-top: clamp(8px, 0.023rem + 2.04vw, 16px);
}
.p-recommend-menu {
  border: 1px solid #fff;
  padding: 16px 16px 16px 40px;
  background: url(../images/mv_recommend_icon.png) no-repeat 16px 50% / 12px;
}
.-flex.p-recommend-menu {
  display: flex;
  align-items: center;
}
.p-recommend-menu__sub {
  display: block;
  font-size: clamp(0.75rem, 0.688rem + 0.25vw, 0.875rem);
  line-height: 1;
  font-weight: normal;
}
.p-recommend-menu__name {
  font-size: clamp(1.25rem, 1.125rem + 0.5vw, 1.5rem);
  font-weight: bold;
}
.p-recommend-menu__note {
  margin-left: auto;
  background-color: #A82420;
  padding: 4px 12px;
}
.-info.p-mv__block {
  position: relative;
  z-index: 0;
  padding: clamp(56px, 2.464rem + 4.42vw, 96px) 0 clamp(56px, 2.464rem + 4.42vw, 96px) clamp(24px, 0.464rem + 4.42vw, 64px);
}
.-info.p-mv__block::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 200px);
  background: url(../images/cta_block_bg.jpg) no-repeat 0 0 / cover;
}
.-bg.p-cta {
  /*padding: 40px calc(50vw - 50%);
  margin: 0 calc(50% - 50vw);*/
}

.-white.p-head-block__title,
.-tel.p-cta__block,
.-bg .p-cta__link {
  color: #fff;
}
.-tel.p-cta__block {
  margin: 24px clamp(24px, 0.464rem + 4.42vw, 64px) 0 0;
}
.-contact .-tel.p-cta__block {
  margin-right: 0;
}
.-info .p-cta__action {
  margin-top: 32px;
}
/*.-flex.p-cta-action__list {
  display: flex;
  align-items: center;
}*/
.p-cta__address {
  margin-top: 16px;
}
.-flex.p-cta__wrap {
  display: flex;
  margin-top: 4px;
}
.-contact .-flex.p-cta__wrap {
  margin-top: 12px;
}
.p-cta__module {
  order: 2;
}
.-flex.p-cta__unit {
  display: flex;
}
.-accept.p-cta__unit,
.p-cta__time span {
  font-size: clamp(0.75rem, 0.698rem + 0.22vw, 0.875rem);
  margin-top: 4px;
}
.-accept .p-cta__time {
  font-size: clamp(0.875rem, 0.823rem + 0.22vw, 1rem);
  font-weight: 600;
  margin-left: 2px;
}
.p-cta__time span {
  font-weight: 500;
  margin: 0 2px;
}
.-accept .p-cta__holiday {
  margin-left: 2px;
}
.p-cta__open {
  white-space: nowrap;
  margin-right: 8px;
}
.p-cta__time,
.p-cta__link[href^="tel:"] {
  font-family: 'Shippori Mincho B1', serif;
}
.p-cta__link[href^="tel:"] {
  font-size: clamp(1.75rem, 1.439rem + 1.33vw, 2.5rem);
  font-weight: 600;
  line-height: 1;
  display: block;
}
.p-cta__link,
.p-anchor__link {
  /*white-space: nowrap;*/
}
.p-cta__item:not(:first-of-type),
.p-anchor__item:not(:first-of-type) {
  margin-top: 24px;
}
.p-cta__icon {
  margin-right: 8px;
  line-height: 1;
  display: inline-block;
  vertical-align: middle;
}
.-tel.p-cta__icon {
  margin-top: 6px;
}
.p-cta__icon img {
  height: 24px;
}
/*.-flex.p-anchor-action__list {
  display: flex;
  gap: 0 16px;
}
.p-anchor-action__item {
  width: calc(100% / 2);
}*/
.p-cta__image {
  margin-top: clamp(40px, 1.878rem + 2.65vw, 64px);
}
.-link.p-cta__block {
  margin-top: 32px;
}
.-line.p-cta__link {
  background-color: #06c755;
  border: 2px solid #06c755;
}

/* 共通
-------------------------------------------------- */
/*.-flex.p-section {
  display: flex;
  align-items: flex-start;
}*/
@media screen and (max-width: 767px) {
.-flex.p-cta {
  display: flex;
}
.-about .p-block__inner {
  padding-bottom: 0px;
}

.p-cta .-vertical.p-head-block {
  margin-bottom: 0;
}
.p-cta .-vertical .p-head-block__title {
  writing-mode: vertical-rl;
  line-height: 1;
  margin-right: clamp(48px, 2.046rem + 4.07vw, 64px);
}
.p-cta .-reverse .-vertical .p-head-block__title {
  margin: 0 0 0 clamp(48px, 2.046rem + 4.07vw, 64px);
}
.p-cta .-vertical .p-head-block__title::before,
.p-cta .-vertical .p-head-block__title::after {
  width: 1px;
  height: 100%;
  bottom: auto;
}
.p-cta .-reverse .-vertical .p-head-block__title::before,
.p-cta .-reverse .-vertical .p-head-block__title::after {
  left: 0;
  right: auto;
  transform: translateX(calc(-100% + -16px));
}
.p-cta .-vertical .-white.p-head-block__title::before,
.p-cta .-vertical .-white.p-head-block__title::after {
  background: #fff;
}
.p-cta .-vertical .p-head-block__title::after {
  height: 40%;
}
.p-cta .-vertical .-white.p-head-block__title::after {
  background: #fff;
}
}
.p-head-block {
  margin-bottom: clamp(24px, 1.086rem + 1.77vw, 40px);
}
.p-head-block__title {
  position: relative;
  display: inline-block;
  color: #357C3C;
}
.p-head-block__title::before,
.p-head-block__title::after {
  content: '';
  width: 80px;
  height: 1px;
  background: #DCC486;
  position: absolute;
  left: auto;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  transform: translateX(calc(100% + 16px));
}
.p-head-block__title::after {
  width: 24px;
  background: #357C3C;
}
.p-head-block__text {
  margin-top: 8px;
}
.p-section__text {
  margin-top: clamp(16px, 0.75rem + 1vw, 24px);
}
.p-section__button {
  margin-top: 40px;
}

/* about
-------------------------------------------------- */
.-bg.-about.p-block {
  position: relative;
  z-index: 1;
}
.-bg.-about.p-block::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #FFF3E2;
}
.-full.p-about__image {
  margin-left: calc(50% - 50vw);
}
.p-about__content {
  margin-top: clamp(32px, 1.75rem + 1vw, 40px);
}
.-indent.p-about__image {
  margin: 0 calc(50% - 50vw) 0 64%;
  transform: translateY(12%);
}

/* quality
-------------------------------------------------- */
.-bg.-quality.p-block {
  position: relative;
  z-index: 0;
  color: #fff;
}
.-bg.-quality.p-block::before,
.-bg.-quality.p-block::after {
  content: "";
  position: absolute;
  z-index: -2;
  top: 0;
  width: 100%;
  height: 100%;
}
.-bg.-quality.p-block::before {
  background: url(../images/quality_bg.jpg) no-repeat 50% 0 / cover;
}
.-bg.-quality.p-block::after {
  z-index: -1;
  height: 32%;
  background: rgba(49,33,18,.56);
  background-image: url(../images/section_bg.png);
}
.p-quality__title {
  text-align: right;
}
.p-quality-panel {
  margin-top: clamp(32px, 1.75rem + 1vw, 40px);
}
.p-quality-panel__item:not(:first-of-type) {
  margin-top: clamp(48px, 2.75rem + 1vw, 56px);
}
.p-quality-panel__content {
  margin-top: clamp(24px, 1.25rem + 1vw, 32px);
}
.p-quality-panel__image {
  position: relative;
}
.p-quality-panel__caption {
  position: absolute;
  bottom: -40px;
  right: 16px;
  width: 80px;
}
.p-quality-panel__text {
  margin-top: clamp(16px, 0.75rem + 1vw, 24px);
}

/* menu
-------------------------------------------------- */
.-bg.-menu.p-block {
  background: url(../images/menu_bg.jpg) no-repeat 0 28% / contain;
  position: relative;
}
.-menu .p-block__inner {
  padding-bottom: 0;
}
.p-menu-figure {
  margin-top: clamp(32px, 1.378rem + 2.65vw, 56px);
}
.p-menu-figure__image {
  position: relative;
}
.p-menu-figure__image:not(:first-of-type) {
  margin-top: clamp(48px, 2.75rem + 1vw, 56px);
}
.-full.p-menu-figure__image {
  margin-right: calc(50% - 50vw);
  margin-left: 10%;
}
.p-menu__name {
  font-family: 'Noto Serif JP', serif;
  font-size: clamp(1.125rem, 1.063rem + 0.25vw, 1.25rem);
  font-weight: bold;
  writing-mode: vertical-rl;
  position: absolute;
  bottom: -16px;
  right: 40px;
  background-color: #BA2200;
  display: block;
  color: #fff;
  padding: 16px;
}
.-full .p-menu__name {
  bottom: -24px;
  left: 24px;
  right: auto;
}
.p-menu__sub {
  font-size: clamp(0.75rem, 0.688rem + 0.25vw, 0.875rem);
  line-height: 1;
  letter-spacing: .08em;
  font-weight: normal;
  display: block;
}
.p-menu__wrap {
  margin-top: clamp(56px, 2.878rem + 2.65vw, 80px);
}
.p-menu__image {
  transform: translateY(clamp(24px, 0.546rem + 4.07vw, 40px));
  margin: 24px 48% 0 calc(50% - 50vw);
  z-index: 1;
  position: relative;
}

/* event
-------------------------------------------------- */
.-bg.-event.p-block {
  background-color: #F4F2EC;
  position: relative;
  background-image: url(../images/section_bg.png);
  z-index: 0;
}
.-event .p-block__inner {
  padding: clamp(calc(80px + 16px), 4.545rem + 1.94vw, 96px) 0;
}
.p-event__image {
  position: absolute;
  top: -6%;
  right: 0;
  left: 64%;
}
.-room.p-event__title {
  padding-bottom: 8px;
  border-bottom: 1px solid #333;
  display: inline-block;
  margin-top: clamp(56px, 3.293rem + 0.88vw, 64px);
}
.p-event-room {
  margin-top: clamp(32px, 1.75rem + 1vw, 40px);
}
.p-event-room__wrap:not(:first-of-type) {
  margin-top: clamp(40px, 2.086rem + 1.77vw, 56px);
}
.-flex.p-event-room__wrap {
  display: flex;
}
.p-event-room__name {
  font-family: 'Shippori Mincho B1', serif;
  font-size: clamp(1.5rem, 1.375rem + 0.5vw, 1.75rem);
  writing-mode: vertical-rl;
  font-weight: 600;
  margin-right: clamp(32px, 1.378rem + 2.65vw, 56px);
  line-height: 1;
}
.p-event-room__text {
  margin-top: 24px;
}
.p-event-room__detail + p {
  margin-top: 16px;
}
.-flex.p-event-room__detail {
  display: flex;
  align-items: flex-start;
}
.p-event-room__detail span {
  color: #fff;
  background-color: #333;
  padding: 2px 0;
  margin-right: 12px;
  font-size: clamp(0.75rem, 0.688rem + 0.25vw, 0.875rem);
  display: inline-block;
  flex-basis: 3.6em;
  text-align: center;
}
.-event.p-section__button {
  text-align: center;
}

/* shop
-------------------------------------------------- */
.-shop.p-block {
}
.-shop .p-block__inner {
  padding-top: clamp(16px, -1.072rem + 8.84vw, 96px);
  padding-bottom: 0;
}
.p-shop__carousel {
  margin: 0 calc(50% - 50vw) 0 16%;
  transform: translateY(-80%);
}
.-flex.c-card__list {
  display: flex;
}
.c-card__item:not(:last-of-type) {
  margin-right: 8px;
}
.p-shop__image {
  margin-top: 24px;
}
.p-shop__table {
  margin-top: clamp(24px, 0.671rem + 3.54vw, 56px);
}
.p-shop__table th {
  padding-top: 16px;
  border-top: 1px solid #ccc;
}
.p-shop__table td {
  padding-bottom: 16px;
}
th.p-shop__head {
  border-top: none;
  padding: 24px 0 8px;
  font-size: clamp(1.25rem, 1.125rem + 0.5vw, 1.5rem);
}
.p-shop__map {
  position: relative;
  width: 100vw;
  height: 0;
  /* 以下タテヨコ比（アスペクト比） */
  padding-top: 100%;/* 16:9 */
  margin: 16px calc(50% - 50vw) 0;
}
.p-shop__map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* contact
-------------------------------------------------- */
.-bg.-contact.p-block {
  position: relative;
  z-index: 0;
  color: #fff;
}
.-bg.-contact.p-block::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: calc(100%);
  height: calc(100%);
  background: url(../images/cta_block_bg.jpg) no-repeat 0 0 / cover;
}
.p-cta__title {
  display: block;
}
.-contact.p-cta__link {
  /*margin-top: 8px;*/
}

/* modal
----------------------------------------------------------- */
#p-home-modal {
  display: none;
}
#p-home-modal.is-open {
  display: block;
}
.p-home-modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  background: rgba(0,0,0,0.6);
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-home-modal__contents {
  background-color: #fff;
  padding: clamp(16px, 0.455rem + 2.73vw, 40px);
  margin-right: clamp(24px, 0.591rem + 4.55vw, 64px);
  margin-left: clamp(24px, 0.591rem + 4.55vw, 64px);
  max-width: 960px;
  max-height: 100vh;
  width: 100%;
  border-radius: 4px;
  overflow-y: auto;
  box-sizing: border-box;
}
.p-home-modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-home-modal__title {
  font-size: clamp(1.6rem, 1.018rem + 2.91vw, 3.2rem);
}
.p-home-modal__close {
  background: transparent;
  border: 0;
}
.p-home-modal__close:before {
  content: "\2715";
}
.p-home-modal__table {
  margin-top: clamp(24px, 1.136rem + 1.82vw, 40px);
}
.p-home-modal__text {
  margin-top: 2rem;
  margin-bottom: 2rem;
  line-height: 1.5;
  color: rgba(0,0,0,.8);
}

@keyframes mmfadeIn {
  from { opacity: 0; }
    to { opacity: 1; }
}
@keyframes mmfadeOut {
  from { opacity: 1; }
    to { opacity: 0; }
  }
@keyframes mmslideIn {
  from { transform: translateY(15%); }
    to { transform: translateY(0); }
}
@keyframes mmslideOut {
  from { transform: translateY(0); }
    to { transform: translateY(-10%); }
}
  
.p-micromodal-slide {
  display: none;
}
.p-micromodal-slide.is-open {
  display: block;
}
.p-micromodal-slide[aria-hidden="false"] .p-home-modal__overlay {
  animation: mmfadeIn .3s cubic-bezier(0.0, 0.0, 0.2, 1);
}
.p-micromodal-slide[aria-hidden="false"] .p-home-modal__contents {
  animation: mmslideIn .3s cubic-bezier(0, 0, .2, 1);
}
.p-micromodal-slide[aria-hidden="true"] .p-home-modal__overlay {
  animation: mmfadeOut .3s cubic-bezier(0.0, 0.0, 0.2, 1);
}
.p-micromodal-slide[aria-hidden="true"] .p-home-modal__contents {
  animation: mmslideOut .3s cubic-bezier(0, 0, .2, 1);
}
.p-micromodal-slide .p-home-modal__contents,
.p-micromodal-slide .p-home-modal__overlay {
  will-change: transform;
}

@media screen and (min-width: 768px) {
.-vertical.p-head-block {
  margin-bottom: 0;
}
.-vertical .p-head-block__title {
  writing-mode: vertical-rl;
  line-height: 1;
  margin-right: clamp(48px, 2.046rem + 4.07vw, 64px);
}
.-reverse .-vertical .p-head-block__title {
  margin: 0 0 0 clamp(48px, 2.046rem + 4.07vw, 64px);
}
.-vertical .p-head-block__title::before,
.-vertical .p-head-block__title::after {
  width: 1px;
  height: 100%;
  bottom: auto;
}
.-reverse .-vertical .p-head-block__title::before,
.-reverse .-vertical .p-head-block__title::after {
  left: 0;
  right: auto;
  transform: translateX(calc(-100% + -16px));
}
.-vertical .-white.p-head-block__title::before,
.-vertical .-white.p-head-block__title::after {
  background: #fff;
}
.-vertical .p-head-block__title::after {
  height: 40%;
}
.-vertical .-white.p-head-block__title::after {
  background: #fff;
}

.p-mv__contents {
  padding-bottom: clamp(56px, 2.464rem + 4.42vw, 96px);
}
.-flex.-recommend.p-mv__block {
  display: flex;
  justify-content: space-between;
  position: relative;
}
.-recommend .-flex.p-mv__head {
  flex-basis: 34%;
  margin-right: 40px;
}
.-bg.p-mv__head {
  background: url(../images/mv_head_bg.png) no-repeat clamp(-24px, 0.464rem + 4.42vw, -64px) -8% / 110%;
  padding-top: 96px;
}
.-flex.p-mv__head {
  align-items: flex-start;
}
.-flex .p-mv__title {
  flex-basis: 100%;
}
.-flex .-vertical.p-mv__text {
  writing-mode: vertical-rl;
}
.-menu.p-mv__list {
  margin-top: clamp(56px, 2.464rem + 4.42vw, 96px);
  flex-basis: 62%;
}
.-flex.-menu.p-mv__list {
  display: flex;
}
.-menu .p-mv__item {
  width: calc(100% / 4);
}
.-menu .p-mv__item:not(:first-of-type) {
  margin: 0 0 0 clamp(8px, 0.023rem + 2.04vw, 16px);
}
.p-recommend-menu {
  padding: 56px 16px 24px 16px;
  background: url(../images/mv_recommend_icon.png) no-repeat 50% 24px / 12px;
}
.-flex.p-recommend-menu {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.p-recommend-menu__name,
.p-recommend-menu__note {
  writing-mode: vertical-rl;
  flex-grow: 1;
}
.p-recommend-menu__note {
  padding: 12px 8px;
  margin: 16px 0 0 0;
  flex-grow: 0;
}
.-recommend.-link.p-cta__block {
  position: absolute;
  left: 4%;
  bottom: 124px;
}
.-info.p-mv__block {
  padding: clamp(56px, 2.464rem + 4.42vw, 96px) 0 clamp(56px, 2.464rem + 4.42vw, 96px) calc(clamp(24px, 0.464rem + 4.42vw, 64px) * 2);
}
.-info.p-mv__block::before {
  right: 0;
  left: auto;
  width: calc(100% - clamp(24px, 0.464rem + 4.42vw, 64px));
  height: 100%;
}

.-flex.p-cta {
  display: flex;
}
.p-cta__contents {
  flex-basis: 100%;
}
.-flex.p-cta__contents {
  display: flex;
  align-items: flex-start;
}
.-tel.p-cta__block {
  margin: 0 48px 0 0;
  flex-basis: 48%;
}
.p-cta__block {
  /*flex-basis: 50%;*/
}
.-contact .-tel.p-cta__block {
  margin-right: 0;
}
.p-cta__image {
  margin: 0;
}

.-flex.p-section {
  display: flex;
}
.-reverse.p-section {
  flex-direction: row-reverse;
}
.-flex.p-section__block {
  display: flex;
  justify-content: flex-start;
}
.-reverse.p-section__block {
  flex-direction: row-reverse;
}

.-about .p-block__inner {
  padding-bottom: auto;
}
.-flex.p-about__block {
  gap: 0 56px;
}
.-flex .p-about__wrap {
  flex-basis: 72%;
}
.-full.p-about__image {
  margin-left: 0;
}
.-flex .-indent.p-about__image {
  flex-basis: 24%;
  margin: 0;
}

.-flex.p-quality {
  display: flex;
}
.-bg.-quality.p-block::after {
  z-index: -1;
  height: 48%;
  background: rgba(49,33,18,.56);
  background-image: url(../images/section_bg.png);
}
.-flex.p-quality-panel__list {
  display: flex;
  gap: 0 32px;
}
.-flex .p-quality-panel__item {
  flex-basis: 50%;
}

.-menu .p-block__inner {
  padding-bottom: clamp(56px, 2.464rem + 4.42vw, 96px);
}
.-bg.-menu.p-block {
  background: url(../images/menu_bg.jpg) no-repeat -8% 0 / 80%;
}
.p-menu__block {
  margin-left: calc(50% - 50vw);
}
.p-menu-figure {
  margin-top: 0;
}
.-reverse .-flex.p-menu-figure__list {
  display: flex;
  flex-direction: row-reverse;
  gap: 0 32px;
}
.p-menu-figure__image {
  flex-basis: 50%;
}
.-full.p-menu-figure__image {
  margin-right: 0;
  margin-left: 0;
}
.-flex.p-menu__wrap {
  display: flex;
  margin-left: clamp(24px, 0.464rem + 4.42vw, 64px);
  gap: 0 56px;
}
.p-menu__image {
  transform: translateY(0);
  margin: 0;
  align-self: flex-end;
}

.-event .p-block__inner {
  padding-bottom: clamp(calc(80px + 56px), 4.545rem + 1.94vw, 96px);
}
.-flex.p-event__wrap {
  display: flex;
  align-items: center;
  gap: 0 56px;
}
.-reverse.p-event__wrap {
  flex-direction: row-reverse;
}
.p-event__content {
  flex-basis: 56%;
}
.p-event__image {
  flex-basis: 40%;
  position: static;
  top: 0;
  right: 0;
  left: 0;
}

.-flex.p-shop__wrap {
  display: flex;
  gap: 0 56px;
}
.p-shop__content {
  flex-basis: 56%;
}
.p-shop__image {
  flex-basis: 40%;
  margin-top: 0;
}
.p-shop__table th {
  width: 24%;
  padding: 24px 0;
  border-top: 1px solid #666;
  display: inline-block;
}
.p-shop__table td {
  width: 76%;
  padding: 24px;
  border-top: 1px solid #ccc;
  display: inline-block;
}
th.p-shop__head {
  width: 100%;
  border-top: none;
  padding: 0 0 16px 0;
  display: block;
}
.p-shop__map {
  width: auto;
  margin: 16px 0 0;
}
}
@media screen and (min-width: 960px) {
.-bg.p-mv__head {
  margin-left: 0;
}
.p-menu__block {
  margin-left: 0;
}
.p-shop__carousel {
  margin-right: 0;
}
}
@media screen and (min-width: 1280px) {
.p-mv__image,
.-recommend.p-mv__block,
.p-block__inner,
.p-cta {
  width: max(960px, 720px);
  margin: 0 auto;
}
.p-mv__inner {
  padding-top: 2%;
}
.-info.p-mv__block {
  padding-left: 0;
}
.-info.p-mv__block::before {
  width: calc(100% - 10%);
}
.p-mv__contents {
  margin-top: -4%;
}
.-recommend.p-mv__block {
  padding-right: 0;
  padding-left: 0;
}
.-recommend .-flex.p-mv__head {
  flex-basis: 34%;
  padding-right: 40px;
  margin-right: 0;
}
.-bg.p-mv__head {
  background: url(../images/mv_head_bg.png) no-repeat 0 16% / 100%;
  padding-top: calc(96px + 4%);
}
.-menu.p-mv__list {
  margin-top: calc(clamp(56px, 2.464rem + 4.42vw, 96px) + 4%);
  flex-basis: 60%;
}
.-bg.-menu.p-block {
  background: url(../images/menu_bg.jpg) no-repeat 50% 0 / 40%;
}
.-bg.-quality.p-block::before,
.-bg.-quality.p-block::after {
  content: "";
  position: absolute;
  z-index: -2;
  top: 0;
  right: 0;
  width: calc(100% - 10%);
  height: 100%;
}
.-bg.-quality.p-block::before {
  background: url(../images/quality_bg.jpg) no-repeat 50% 0 / cover;
}
.-bg.-quality.p-block::after {
  z-index: -1;
  height: 32%;
  background: rgba(49,33,18,.56);
  background-image: url(../images/section_bg.png);
}
.-reverse.-flex.p-event-room__content {
  display: flex;
  flex-direction: row-reverse;
  gap: 0 40px;
}
.p-event-room__text {
  margin-top: 0;
}
}