@charset "UTF-8";

/*! destyle.css v3.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* Reset box-model and set borders */

/* ============================================ */

*,
::before,
::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
}

/* Document */

/* ============================================ */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */

html {
  line-height: 1.15;
  /* 2 */
  -webkit-tap-highlight-color: transparent;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 3*/
}

/* Sections */

/* ============================================ */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/* Vertical rhythm */

/* ============================================ */

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */

/* ============================================ */

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}

/* Lists (enumeration) */

/* ============================================ */

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Lists (definition) */

/* ============================================ */

dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */

/* ============================================ */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  /* 1 */
  overflow: visible;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  clear: both;
  /* 1 */
  height: 0;
  margin: 0;
  /* 2 */
  border-top-width: 1px;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */

/* ============================================ */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  position: relative;
  font-size: 75%;
  vertical-align: baseline;
  line-height: 0;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

/* Replaced content */

/* ============================================ */

/**
 * Prevent vertical alignment issues.
 */

svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */

/* ============================================ */

/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */

button,
input,
optgroup,
select,
textarea {
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: inherit;
  vertical-align: middle;
  text-transform: inherit;
  -webkit-appearance: none;
  /* 1 */
  -moz-appearance: none;
  appearance: none;
  /* 2 */
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */

[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
}

/**
 * Correct cursors for clickable elements.
 */

button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */

:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */

option {
  padding: 0;
}

/**
 * Reset to invisible
 */

fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */

[type=search] {
  outline-offset: -2px;
  /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */

::-webkit-file-upload-button {
  /* 1 */
  font: inherit;
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Clickable labels
 */

label[for] {
  cursor: pointer;
}

/* Interactive */

/* ============================================ */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */

[contenteditable]:focus {
  outline: auto;
}

/* Tables */

/* ============================================ */

/**
1. Correct table border color inheritance in all Chrome and Safari.
*/

table {
  /* 1 */
  border-collapse: collapse;
  border-color: inherit;
}

caption {
  text-align: left;
}

td,
th {
  padding: 0;
  vertical-align: top;
}

th {
  font-weight: bold;
  text-align: left;
}

/*
 * リセットCSS
 */

html {
  height: 100%;
  overflow-x: hidden;
}

body {
  position: relative;
  overflow-x: hidden;
  color: #262626;
  font-family: "Noto Sans JP", serif;
  font-weight: 500;
  font-style: normal;
  line-height: 1.5;
  letter-spacing: .1em;
}

body.is-active {
  overflow: hidden;
}

img {
  max-width: 100%;
  width: 100%;
  height: auto;
}

/*
 * トップページ
 */

:root {
  --black: #333;
  --brown: #e7bf92;
  --dark-brown: #574f48;
  --green-grad-90: linear-gradient(90deg,rgba(0, 77, 41, 1) 0%, rgba(49, 175, 83, 1) 45%, rgba(0, 77, 41, 1) 100%);
  --main-grad-180: linear-gradient(180deg,rgba(198, 166, 49, 1) 0%, rgba(245, 232, 187, 1) 45%, rgba(199, 149, 40, 1) 100%);
  --main-grad-90: linear-gradient(90deg, rgba(198, 166, 49, 1) 0%, rgba(245, 232, 187, 1) 45%, rgba(199, 149, 40, 1) 100%);
  --red: #c93939;
  --red-grad-90: linear-gradient(90deg,rgba(142, 26, 26, 1) 0%, rgba(201, 50, 50, 1) 45%, rgba(142, 26, 26, 1) 100%);
  --sp-w: 94.666%;
}

.c-breadcrumb {
  display: none;
}

.c-mt10 {
  margin-top: 10px;
}

.c-mt20 {
  margin-top: 20px;
}

.c-mt30 {
  margin-top: 30px;
}

.c-mt40 {
  margin-top: 40px;
}

.c-mt50 {
  margin-top: 50px;
}

.c-mt60 {
  margin-top: 60px;
}

.c-mt70 {
  margin-top: 70px;
}

.c-mt80 {
  margin-top: 80px;
}

.c-nowrap {
  display: inline-block;
  word-break: break-all;
}

.c-kerning {
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.c-align-center {
  text-align: center;
}

.c-align-left {
  text-align: left;
}

.c-align-right {
  text-align: right;
}

.c-strong {
  font-weight: 700;
}

.c-highlight {
  text-decoration: underline;
  -webkit-text-decoration-color: rgba(255, 228, 0, .4);
  text-decoration-color: rgba(255, 228, 0, .4);
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  text-decoration-thickness: .5em;
  text-underline-offset: -.2em;
}

.c-color-rd {
  color: #f00;
}

.c-color-bl {
  color: #00f;
}

.c-color-bk {
  color: #000;
}

.c-link {
  color: #0000cd;
  text-decoration: underline;
}

.c-link:active,
.c-link:focus,
.c-link:visited,
.c-link:hover {
  color: #0000cd;
}

.c-list {
  color: #555;
  font-size: 10px;
}

.c-list li {
  position: relative;
  padding-left: 1.1em;
  color: inherit;
}

.c-list li::before {
  position: absolute;
  top: 0;
  left: 0;
  color: inherit;
  content: "※";
}

.loading {
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #fff;
}

.header {
  position: fixed;
  z-index: 5;
  width: 100%;
  background-image: url("../img/header/bg_header.webp");
  background-position: center top;
  font-size: clamp(.688rem, .46rem + .97vw, 1.625rem);
}

.header-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: white;
}

.header-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.header-list__item {
  display: block;
}

.mv {
  position: relative;
  z-index: 5;
}

.mv::before {
  position: absolute;
  width: 100%;
  background: linear-gradient(0deg, #DCEBFA 14.42%, rgba(220, 235, 250, 0.00) 100%);
  content: "";
}

.mv__head {
  position: relative;
}

.hero-btn {
  position: absolute;
  top: 46%;
  left: 50%;
  width: 100%;
  z-index: 4;
  transform: translateX(-50%);
  text-align: center;
}

/* .hero-btn img {
  -webkit-transition: opacity .25s ease;
  transition: opacity .25s ease;
  cursor: pointer;
} */

/* .hero-btn img:hover {
  opacity: .7;
} */

.hero-btn img {
  width: 43.19%;
}

.hero-txt01 {
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.8px;
}

.hero-txt01 {
  position: absolute;
  top: 72%;
  left: 50%;
  transform: translateX(-50%);
}

.mv__body {
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
}

.mv-reservation__btn {
  display: block;
  position: relative;
  z-index: 1;
}

.mv-reservation__btn::before {
  position: absolute;
  top: 0;
  bottom: 0;
  height: 1px;
  margin: auto;
  background-color: #fff;
  content: "";
}

.mv-reservation__btn-inner {
  display: block;
  overflow: hidden;
  border-radius: 5px;
}

.mv-plan-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
}

.mv-plan-list li {
  overflow: hidden;
  border-radius: 5px;
}

.mv-plan-list__item {
  display: block;
}

.mv-option {
  margin-right: auto;
  margin-left: auto;
}

.mv-option__btn {
  display: block;
  -webkit-transition: opacity .25s ease;
  transition: opacity .25s ease;
}

.lunch {
  background-repeat: no-repeat, no-repeat, repeat-x;
  background-position: left center, right center, center top;
  background-size: contain, contain, 100.5% auto;
}

.lunch__heading {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.lunch__heading-brown01,
.lunch__heading-brown02,
.lunch__heading-brown03 {
  margin-right: auto;
  margin-left: auto;
}

.sec02-sample-slide {
  position: relative;
}

.sec02-sample-slide span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  color: #FFF;
  text-align: center;
  font-family: "Noto Serif JP";
  font-size: 30px;
  font-weight: 500;
  line-height: normal;
  white-space: nowrap;
}

.afternoon {
  background-repeat: no-repeat;
}

.afternoon__heading {
  margin-right: auto;
  margin-left: auto;
}

.afternoon__heading-brown {
  margin-right: auto;
  margin-left: auto;
}

.afternoon-component {
  position: relative;
  margin-right: auto;
  margin-left: auto;
}

.afternoon-component__text {
  position: absolute;
  z-index: 2;
  right: 0;
  left: 0;
  margin: auto;
}

.afternoon-component__text-rd {
  display: block;
  color: #f00;
  font-size: clamp(.875rem, .831rem + .19vw, 1rem);
  text-align: center;
}

.afternoon-component__text-bk {
  display: block;
  font-size: clamp(.75rem, .706rem + .19vw, .875rem);
}

.afternoon-component__bg {
  position: relative;
  z-index: 1;
}

.sunset {
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: cover;
}

.sunset__heading {
  margin-right: auto;
  margin-left: auto;
  width: fit-content;
}

.sunset__heading-brown01,
.sunset__heading-brown02,
.sunset__heading-brown03 {
  margin-right: auto;
  margin-left: auto;
}

.dinner {
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}

.dinner .plan-col--border .plan-col__item.is-left::before {
  background-color: #fff;
}

.dinner__heading {
  margin-right: auto;
  margin-left: auto;
  width: fit-content;
}

.dinner__heading-brown01,
.dinner__heading-brown02,
.dinner__heading-brown03 {
  margin-right: auto;
  margin-left: auto;
}

.section {
  position: relative;
  z-index: 1;
}

.section-inner {
  margin-right: auto;
  margin-left: auto;
}

.anchor-box__inner {
  position: relative;
  text-align: center;
}

.anchor-box__inner::before {
  left: 0;
  -webkit-transform: translateX(-50%) translateY(50%);
  transform: translateX(-50%) translateY(50%);
}

.anchor-box__inner::after {
  right: 0;
  -webkit-transform: translateX(50%) translateY(50%);
  transform: translateX(50%) translateY(50%);
}

.anchor-box__inner dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  border: 2px solid #574f48;
  background: var(--main-grad-180);
  color: #574f48;
  font-size: clamp(1.125rem, 1.034rem + .39vw, 1.5rem);
  font-weight: 500;
  text-align: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.anchor-box__item {
  color: #574f48;
}

.anchor-box__item-inner {
  position: relative;
  border-right: .5px solid #574f48;
  font-size: clamp(1.125rem, 1.034rem + .39vw, 1.5rem);
  letter-spacing: 0;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.anchor-box--bk {
  border-color: #fff;
  background-color: rgba(26, 30, 59, .93);
}

.anchor-box--bk .anchor-box__inner dt {
  border-color: #fff;
}

.anchor-box--bk .anchor-box__item:not(:last-child) {
  border-right-color: #fff;
}

.anchor-box--bk .anchor-box__item-inner {
  border-right-color: #fff;
  color: #fff;
}

.plan-col--border {
  position: relative;
}

.plan-col--wh.plan-col--border {
  border-top-color: #fff;
}

.plan-col--wh .plan-col__strong,
.plan-col--wh .plan-col__price-num,
.plan-col--wh .plan-col__price-yen,
.plan-col--wh .plan-col__text,
.plan-col--wh .plan-col__note,
.plan-col--wh .plan-col__price-note,
.plan-col--wh .plan-col__slider::before {
  color: #fff;
}

.plan-col--wh .plan-col__panel {
  color: var(--black);
}

.plan-col__item-head {
  position: relative;
}

.plan-col__ribbon {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: 112.745%;
  -webkit-transform: translate(5%, -50%);
  transform: translate(5%, -50%);
}

.plan-col__point {
  position: absolute;
  z-index: 3;
  top: -20px;
  right: -20px;
  width: 120px;
}

.plan-col__slider {
  display: none;
  position: relative;
  z-index: 1;
}

.plan-col__slider.slick-initialized {
  display: block;
}

.plan-col__slider .slick-dots {
  text-align: left;
}

.plan-col__slider .slick-dots li {
  margin: 0 8px 0 0;
  width: 14px;
  height: 16px;
}

.plan-col__slider .slick-dots li button {
  width: 100%;
  height: 100%;
  padding: 0;
}

.plan-col__slider .slick-dots li button:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("../img/sec01/icon02.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 1;
}

.plan-col__slider .slick-dots li.slick-active button:before {
  background-image: url("../img/sec01/icon01.svg");
}

#afternoon .plan-col__slider .slick-dots li button:before,
#sunset .plan-col__slider .slick-dots li button:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("../img/sec02/dot02.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 1;
}

#afternoon .afternoon-slide-wrap .plan-col__slider .slick-dots li button:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("../img/sec01/icon02.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 1;
}

#dinner .plan-col__slider .slick-dots li button:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("../img/sec01/icon02.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 1;
}

#afternoon .plan-col__slider .slick-dots li.slick-active button:before {
  background-image: url("../img/sec02/dot01.svg");
}

#sunset .plan-col__slider .slick-dots li.slick-active button:before {
  background-image: url("../img/sec03/dot01.svg");
}

#dinner .plan-col__slider .slick-dots li.slick-active button:before {
  background-image: url("../img/sec04/dot01.svg");
}

.plan-col__slider .slick-dots {
  bottom: -21px;
}

.plan-col__slider::before {
    position: absolute;
    right: 0;
    bottom: -1.7em;
    font-size: 14px;
    content: "※イメージ";
    font-family: "Noto Serif JP";
    color: #262626;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0;
}

.plan-col__main > dt {
  margin-right: auto;
  margin-left: auto;
}

.plan-col__main > dd {
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.plan-col__main > dd.plan-col__menu {
  margin-top: 23px;
}

.plan-col__main > dd.plan-col__drink {
  margin-top: 45px;
}

.plan-col__price-main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 32px;
  line-height: 1;
  letter-spacing: 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.lunch .plan-col__price-main.pc {
    margin-top: 11px;
  }

.sec03-label img,
.sec04-label img {
  width: 63px;
}

.plan-col__price-main > span {
  display: inline-block;
}

.plan-col-label {
  padding-top: .8rem;
  padding-bottom: .8rem;
  border: 1px solid #574f48;
  background: #fdf7e8;
  background: -webkit-gradient(linear, left top, right top, from(#fdf7e8), color-stop(28%, white), color-stop(51%, white), color-stop(74%, white), to(#fdf7e8));
  background: linear-gradient(90deg, #fdf7e8 0%, white 28%, white 51%, white 74%, #fdf7e8 100%);
  font-size: clamp(.75rem, .706rem + .19vw, .875rem);
  text-align: center;
}

.plan-col-label--holiday {
  background: var(--main-grad-90);
}

.plan-col__price-num {
  background: linear-gradient(90deg, #900 0%, #F00 40%, #FF4141 70%, #900 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: "Noto Serif JP";
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.plan-col__price-yen {
  -webkit-text-fill-color: currentcolor;
  color: #262626;
  text-align: center;
  font-family: "Noto Serif JP";
  font-size: 26px;
  font-weight: 700;
  line-height: normal;
}

.plan-col__price-note {
  margin-top: .5em;
  font-size: clamp(.625rem, .581rem + .19vw, .75rem);
  text-align: right;
}

.plan-col__note {
  margin-top: 10px;
  color: #262626;
  font-size: 14px;
  font-weight: 400;
  line-height: 21px;
}

.plan-col__strong {
  position: relative;
  color: #262626;
  font-family: "Noto Serif JP";
  font-size: 30px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 3px;
}

.plan-col__strong::before {
  position: absolute;
  left: 0;
  background-image: url("../img/sec01/icon04.svg");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}

.plan-col__text {
  font-size: clamp(.875rem, .831rem + .19vw, 1rem);
}

.plan-col__text > span {
  display: block;
  color: #262626;
  text-align: center;
  font-family: "Noto Serif JP";
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
}

.plan-col__text > span:not(:first-child) {
  margin-top: 24px;
}

.plan-col__text-sm {
  font-size: clamp(.75rem, .706rem + .19vw, .875rem);
}

.plan-col__panel {
  position: relative;
  background: #fff;
  letter-spacing: 0;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.plan-col__panel::before {
  position: absolute;
  right: 0;
  left: 0;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  margin: 2px;
  border: 1px solid #ebd06e;
  content: "";
}

.plan-col__panel-icon {
  display: inline-block;
  position: absolute;
}

.plan-col__panel-content {
  position: relative;
}

.plan-col__panel-content::before,
.plan-col__panel-content::after {
  display: block;
  position: absolute;
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}

.plan-col__panel-content::before {
  top: 0;
  left: 0;
  background-position: top;
}

.plan-col__panel-content::after {
  right: 0;
  bottom: 0;
  background-position: bottom;
}

.plan-col__panel-content dt {
  font-size: clamp(.875rem, .831rem + .19vw, 1rem);
  font-weight: 500;
}

.plan-col__panel-content dd {
  font-size: clamp(.75rem, .706rem + .19vw, .875rem);
}

.footer {
  position: relative;
  z-index: 2;
  color: #fff;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.footer-btn {
  display: block;
  width: fit-content;
  margin: 0 auto;
}

.footer-btn img {
  display: block;
}

.footer__note {
  display: block;
  margin-right: auto;
  margin-left: auto;
  letter-spacing: 0;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";

  color: #FFF;
  font-family: "Noto Serif JP";
  font-size: 16px;
  font-weight: 400;
  line-height: 42px; /* 262.5% */
}

.footer__copyright {
  display: block;
  font-size: clamp(.75rem, .598rem + .65vw, 1.375rem);
  text-align: center;
  letter-spacing: 0;
}

@media screen and (min-width: 767px) {
  .c-hide-pc {
    display: none;
  }

  .c-link {
    cursor: pointer;
  }

  .c-link:hover {
    text-decoration: none;
  }

  .header {
    min-height: 108px;
    height: 11.4%;
    background-repeat: repeat-x;
    background-size: contain;
  }

  .header__content {
  }

  .header-list {
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }

  .header-list li {
    height: 65px;
    border-radius: 5px;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
  }

  .header-list__item {
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease;
  }

  .mv::before {
    z-index: 3;
    bottom: 0%;
    height: clamp(44px, 5.694vw, 109px);
  }

  .mv__body {
    z-index: 4;
    top: 70%;
    max-width: 960px;
    width: 100%;
  }

  .mv-reservation__btn {
    width: 48.421%;
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease;
  }

  .mv-reservation__btn:-webkit-any-link:hover {
    opacity: .7;
  }

  .mv-reservation__btn:-moz-any-link:hover {
    opacity: .7;
  }

  .mv-reservation__btn:any-link:hover {
    opacity: .7;
  }

  .mv-reservation__btn::before {
    z-index: 2;
    right: -39px;
    width: 68px;
  }

  .mv-reservation__note {
    display: none;
  }

  .mv-plan-list {
    margin-right: 0;
    margin-left: 0;
  }

  .mv-plan-list::before {
    display: block;
    position: absolute;
    top: -28%;
    right: 0;
    left: 0;
    margin: auto;
    text-shadow: 10px 1px 12px rgba(0, 0, 0, .15);
    color: #fff;
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 20px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 1px;
    content: none;
  }

  .mv-plan-list li {
    margin-top: -10px;
    width: 23.4375%;
  }

  .mv-plan-list__item {
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease;
  }

  .mv-plan-list__item:-webkit-any-link:hover {
    opacity: .7;
  }

  .mv-plan-list__item:-moz-any-link:hover {
    opacity: .7;
  }

  .mv-plan-list__item:any-link:hover {
    opacity: .7;
  }

  .mv-option {
    width: 100%;
    
  }

  .mv-option__btn {
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease;
  }

  .mv-option__btn:-webkit-any-link:hover {
    opacity: .7;
  }

  .mv-option__btn:-moz-any-link:hover {
    opacity: .7;
  }

  .mv-option__btn:any-link:hover {
    opacity: .7;
  }

 .lunch {
  padding-top: 92px;
  padding-bottom: 143px;
  background-image: url("../img/sec01/yuki.webp"), url("../img/sec01/bg.webp");
  background-repeat: no-repeat, no-repeat;
  background-size: auto 94%, cover;
  background-position: top center, bottom center;
  position: relative;
  z-index: 4;
  margin-bottom: -200px;
}

  .lunch__heading picture img{
    max-width: 900px;
  }

  .lunch__heading-brown01 {
    width: 61%;
    margin-top: 70px;
  }

  .lunch__heading-brown02 {
    max-width: 446.94px;
    width: 87.635%;
  }

  .lunch__heading-brown03 {
    padding-bottom: .5%;
  }

  .lunch .plan-col__panel-icon {
    top: -119%;
    right: -7%;
    width: 25.966%;
  }
	
	.afternoon .plan-col__price-main {
  gap: 20px;
  justify-content: flex-start;
}
	
  .afternoon .afternoon-slide-wrap .plan-col__price-main {
    gap: 8px;
  }

  .afternoon {
    padding-top: 265px;
    padding-bottom: 170px;
    background-image: url("../img/sec02/bg.webp");
    background-repeat: no-repeat;
    position: relative;
    z-index: 3;

    background-size: cover;
    background-position: bottom center;
    margin-bottom: -200px;
  }
  .afternoon::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /*opacity: 0.4;*/
    background-image: url("../img/sec02/snow.webp");
    background-repeat: no-repeat;
    background-size: cover;
    mix-blend-mode: screen;
    z-index: -1;
    pointer-events: none;

    background-position: bottom center;
    margin-bottom: -200px;
  }

  .afternoon__heading {
    width: 73.5%;
  }

  .afternoon__heading-brown img{
    width: 820px;
  }

  .afternoon-component {
    max-width: 1084px;
    margin-top: 4.1%;
  }

  .afternoon-component__text {
    bottom: 18.5%;
    max-width: 928px;
    width: 85.608%;
  }

  .afternoon-component__text-bk {
    margin-top: 1em;
  }

  .afternoon .plan-col__price-note {
    margin-right: 0;
  }

  .plan-col-left-txt {
    color: #FFF;
    font-size: 14px;
    font-weight: 400;
    line-height: 21px; /* 150% */
  }

  .sunset {
    padding-top: 338px;
    padding-bottom: 166px;
    background-image: url("../img/sec03/bg.webp");
    z-index: 2;
    margin-bottom: -200px;
  }

  .sec03-txt01 {
    width: fit-content;
    margin: 70px auto 0 auto;
  }

  .sec03-txt01 img {
    width: 729px;
  }
	
  .sunset .plan-col__price-main.pc {
    margin-top: 16px;
  }

  .sunset__heading picture img {
    width: 890px;
  }

  .sunset__heading-brown01 {
    width: 56.949%;
    margin-top: 6%;
    padding-bottom: .5%;
  }

  .sunset__heading-brown02 {
    max-width: 446.94px;
    width: 87.635%;
  }

  .sunset__heading-brown03 {
    padding-bottom: .5%;
  }

  .sunset .plan-col__panel-icon {
    top: -130%;
    right: 0%;
    width: 31.149%;
  }

  .dinner {
    padding-top: 298px;
    padding-bottom: 120px;
    background-image: url("../img/sec04/bg.webp");

  }
	
	.dinner .plan-col__price-main.pc {
    margin-top: 15px;
  }

  .sec04-txt02 {
    width: fit-content;
    margin: 70px auto 0 auto;
  }

  .sec04-txt02 img {
    width: 729px;
  }

  .dinner__heading picture img{
    width: 890px;
  }

  .dinner__heading-brown01 {
    width: 56.949%;
    margin-top: 6%;
    padding-bottom: .5%;
  }

  .dinner__heading-brown02 {
    max-width: 446.94px;
    width: 87.635%;
  }

  .dinner__heading-brown03 {
    padding-bottom: .5%;
  }

  .dinner .plan-col__panel-icon {
    top: -146%;
    right: -6%;
    width: 40.469%;
  }

  .section-inner {
    max-width: 1200px;
  }

  .anchor-box {
    margin-top: 7%;
    padding-top: 70px;
  }

  .anchor-box::before,
  .anchor-box::after {
    width: 29.22px;
    height: 29px;
  }

  .anchor-box__inner {
    padding-bottom: 25px;
  }

  .anchor-box__inner::before,
  .anchor-box__inner::after {
    width: 29.22px;
    height: 29px;
  }

  .anchor-box__inner dt {
    max-width: 720px;
    height: 68px;
    border-radius: 34px;
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
  }

  .anchor-box__inner dd {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .anchor-box__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 110px;
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-preferred-size: 33.3333333333%;
    flex-basis: 33.3333333333%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .anchor-box__item:-webkit-any-link:hover {
    opacity: .7;
  }

  .anchor-box__item:-moz-any-link:hover {
    opacity: .7;
  }

  .anchor-box__item:any-link:hover {
    opacity: .7;
  }

  .anchor-box__item:not(:last-child) {
    border-right: 1px solid #574f48;
  }

  .anchor-box__item-inner {
    padding-right: 1rem;
  }

  .btn-reservation {
    height: 84px;
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease;
  }

  .btn-reservation:-webkit-any-link:hover {
    opacity: .7;
  }

  .btn-reservation:-moz-any-link:hover {
    opacity: .7;
  }

  .btn-reservation:any-link:hover {
    opacity: .7;
  }

  .plan-col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .plan-col--border {
    margin-top: 70px;
  }

  .plan-col--border::before,
  .plan-col--border::after {
    width: 29.22px;
    height: 29px;
  }

  .plan-col--border::before {
    left: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .plan-col--border::after {
    right: 0;
    -webkit-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
  }

  .plan-col__item {
    max-width: 43.965%;
    -ms-flex-preferred-size: 43.965%;
    flex-basis: 43.965%;
  }

  .plan-col__item.is-left {
    margin-right: 3.0175%;
  }

  .plan-col__item.is-right {
    margin-left: 3.0175%;
  }

  .plan-col__item-head {
    margin-top: 70px;
  }

  section.afternoon .plan-col__item-head:not(.afternoon-slide-wrap .plan-col__item-head),
section.afternoon .plan-col__item-body:not(.afternoon-slide-wrap .plan-col__item-body) {
    margin-top: 49px;
  } 

  .plan-col-label01 {
    width: clamp(28px, 3vw, 35px);
    height: clamp(46px, 4.7vw, 56px);
    border: 1px solid #FFF;
    color: #FFF;
    font-family: "Noto Serif JP";
    font-size: clamp(13px, 1.3vw, 16px);
    font-weight: 700;
    line-height: 20px;
    writing-mode: vertical-rl;
    display: flex;
    justify-content: center;
    align-items: center;
    letter-spacing: 2px;
    margin-right: 11px;
  }

  /*
   * .plan-col02 (adult/child price row) used fixed font sizes (40px/36px)
   * and 54px icons that only fit inside the old fixed 550px card. Now
   * that .plan-col__item is fluid (see the width fix further down),
   * this row needs to shrink with it — clamp() below, plus flex-wrap so
   * it degrades to two lines instead of overflowing the card if a very
   * narrow width is ever hit.
   */
  .plan-col02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 5px;
  }

  .plan-col__price-num {
    font-size: clamp(26px, 3.3vw, 40px);
  }

  .plan-col__price-yen {
    font-size: clamp(17px, 2.2vw, 26px);
  }

  .plan-col__price-num01 {
    font-family: "Noto Serif JP";
    font-size: clamp(26px, 3.3vw, 40px);
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    background: linear-gradient(102deg, #FFF 12.93%, #FFEDDA 37.43%, #FFFEE4 69.5%, #FFF 87.88%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  .plan-col__price-yen01 {
    -webkit-text-fill-color: currentcolor;
    color: #FFF;
    font-size: clamp(17px, 2.2vw, 26px);
  }

  #afternoon .plan-col__price-num01 {
    font-size: clamp(23px, 2.778vw, 40px);
    text-align: right;
  }

  #afternoon .plan-col__price-yen01 {
    font-size: clamp(14px, 1.8vw, 22px);
  }

  #afternoon .plan-col__price-main .plan-col01 img{
    width: clamp(75px, 9.4vw, 113px);
  }

  #afternoon .afternoon-slide-wrap .plan-col__price-main .plan-col01 img{
    width: clamp(65px, 7.9vw, 95px);
  }

  .plan-col02 img {
    width: clamp(36px, 4.5vw, 54px);
  }

  #afternoon .plan-col02 {
    justify-content: flex-start;
  }

  .plan-col02 .label-img02 {
    margin-left: 5px;
  }

  .plan-col__item-body {
    margin-top: 40px;
  }

  .plan-col__main > dt {
    /* width: 72.549%;*/
	width: fit-content;
    margin-top: 30px;
  }

  .plan-col-label {
    width: 70px;
  }

  .plan-col__price-note {
    margin-right: -2em;
  }

  .plan-col__menu,
  .plan-col__drink {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 1.5em;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: fit-content;
    margin: 0 auto;
    text-align: center;
  }

  #afternoon .plan-col__main > dt {
    margin-top: 20px;
  }

  #afternoon .plan-col__item.is-right .plan-col__slider::before {
    content: "";
    background: url(../img/sec02/label01.png) no-repeat;
    background-size: 100% auto;
    background-position: top center;
    position: absolute;
    top: -20px;
    right: -20px;
    width: 120px;
    height: 120px;
    z-index: 1;
  }

  #afternoon .plan-col__item.is-right .plan-col__slider::after {
    content: "";
    background: url(../img/sec02/label02.png) no-repeat;
    background-size: 100% auto;
    background-position: top center;
    position: absolute;
    top: -20px;
    right: 100px;
    width: 120px;
    height: 120px;
    z-index: 1;
  }

  #afternoon .plan-col__item.is-left .plan-col__slider::before {
    content: "";
    background: url(../img/sec02/img05.png) no-repeat;
    background-size: 100% auto;
    background-position: top center;
    position: absolute;
    top: -20px;
    right: -20px;
    width: 120px;
    height: 120px;
    z-index: 1;
  }

  #afternoon .afternoon-slide-wrap .plan-col__item.is-left .plan-col__slider::before {
    content: "";
    background: url(../img/sec02/label01.png) no-repeat;
    background-size: 100% auto;
    background-position: top center;
    position: absolute;
    top: -20px;
    right: -20px;
    width: 120px;
    height: 120px;
    z-index: 1;
  }

  .txt-note {
    color: #FFF;
    font-family: "Noto Serif JP";
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    position: absolute;
    bottom: -25px;
    right: 0;
  }

  #afternoon .plan-col__menu,
  #afternoon .plan-col__drink {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 1.5em;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: fit-content;
    margin: 0;
    text-align: left;
  }

  #afternoon .afternoon-slide-wrap .plan-col__menu {
    margin-top: 30px;
    justify-content: center;
    align-items: center;
    margin: 30px auto 0 auto;
    text-align: center;
  }

  #afternoon .afternoon-slide-wrap .plan-col__drink {
    justify-content: center;
    align-items: center;
    margin: 20px auto 0 auto;
    text-align: center;
  }

  #afternoon .plan-col__text,
  #dinner .plan-col__text {
    color: #FFF;
    font-family: "Noto Serif JP";
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.8px;
    text-align: left;
  }

  #dinner .plan-col__text {
    text-align: center;
  }

  #afternoon .plan-col__text > span,
  #dinner .plan-col__text > span {
    color: #FFF;
    font-family: "Noto Serif JP";
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.8px;
    text-align: left;
  }

  #dinner .plan-col__text > span {
    text-align: center;
  }

  #afternoon .plan-col__text.plan-col__text01 > span,
  #dinner .plan-col__text.plan-col__text01 > span {
    text-align: center;
  }

  .afternoon-btn-left,
  .afternoon-btn-right {
    margin-top: 50px;
  }

  #afternoon .plan-col__item.is-right .plan-col__menu {
    margin-top: 30px;
  }

  #afternoon .plan-col__item.is-right .plan-col__drink {
    margin-top: 20px;
  }

  .sec02-txt03 {
    color: #FFF;
    font-size: 14px;
    font-weight: 400;
    line-height: 21px; /* 150% */
    margin-top: 10px;
  }

  #afternoon .plan-col__strong {
    color: #FFF;
    font-family: "Noto Serif JP";
    font-size: 30px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1.5px;
  }

  #afternoon .plan-col__strong::before {
    position: absolute;
    left: 0;
    background-image: url(../img/sec02/icon03.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
  }

  #sunset .plan-col__strong::before {
    position: absolute;
    left: 0;
    background-image: url(../img/sec03/icon01.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
  }

  #dinner .plan-col__strong::before {
    position: absolute;
    left: 0;
    background-image: url(../img/sec04/icon01.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
  }

  #afternoon .plan-col__slider::before {
    color: #fff;
    font-family: "Noto Serif JP";
    font-size: 14px;
  }

  .afternoon-btn {
    width: clamp(300px, 48.833vw, 550px);
    margin: 40px auto 0 auto;
  }

  .plan-col__btn {
    margin-top: 67px;
  }

  .plan-col__note {
    margin-right: -.7em;
  }

  .plan-col__strong {
    padding-left: 1.1em;
  }

  .plan-col__strong::before {
    top: 10px;
    width: 26px;
    height: 29.999px;
  }

  .plan-col__text {
    margin-top: 15px;
    color: #262626;
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.8px;
  }

  .plan-col__panel-content {
    padding: 5% 2% 2% 11%;
  }

  .plan-col__panel-content::before {
    width: 28.508%;
    background-image: url("../img/icon_ribbon_left.png");
  }

  .plan-col__panel-content::after {
    width: 23.24%;
    background-image: url("../img/icon_ribbon_right.png");
  }

  .footer {
    margin-top: 84px;
  }

  .footer-btn {
    position: relative;
    max-width: 805px;
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease;
  }

  .footer-btn:-webkit-any-link:hover {
    opacity: .7;
  }

  .footer-btn:-moz-any-link:hover {
    opacity: .7;
  }

  .footer-btn:any-link:hover {
    opacity: .7;
  }

  .footer__note {
    max-width: 1140px;
    margin-top: 74px;
  }

  .footer__copyright {
    margin-top: 90px;
  }

  .footer-btn img {
    width: 675px;
  }
}

@media screen and (max-width: 767px) {
  .c-hide-sp {
    display: none;
  }

  .c-sp10 {
    margin-top: 10px;
  }

  .c-mt-sp20 {
    margin-top: 20px;
  }

  .c-mt-sp30 {
    margin-top: 30px;
  }

  .c-mt-sp40 {
    margin-top: 40px;
  }

  .c-mt-sp50 {
    margin-top: 50px;
  }

  .c-mt-sp60 {
    margin-top: 60px;
  }

  .header {
    background-size: cover;
  }

  .header__content {
    padding: 0px 0px 40px 0px;
  }

  .header-list li {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
  }

  .mv__body {
    z-index: 3;
    top: 55%;
    width: 91.025%;
  }

  .mv-reservation__btn {
    margin-right: 1%;
    margin-left: 1%;
  }

  .mv-reservation__btn::before {
    z-index: -1;
    right: -2.6%;
    width: 7.462%;
  }

  .mv-reservation__note {
    display: block;
    color: #fff;
    font-size: .75em;
    text-align: center;
  }

  .mv-plan-list {
    margin-top: 1%;
    margin-right: -.7%;
    margin-left: -.7%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .mv-plan-list li {
    margin-top: 1.4%;
    margin-right: .7%;
    margin-left: .7%;
    -ms-flex-preferred-size: 48.6%;
    flex-basis: 48.6%;
  }

  .mv-option {
    width: 94.366%;
    margin-top: 3%;
  }

  .lunch__heading {
    width: 88.594%;
  }

  .lunch__heading-brown01,
  .lunch__heading-brown02,
  .lunch__heading-brown03 {
    padding-top: 13%;
  }

  .lunch__heading-brown01 {
    width: 89.333%;
  }

  .lunch__heading-brown02 {
    width: 86.479%;
  }

  .lunch__heading-brown03 {
    width: 89.333%;
    margin-right: auto;
    margin-left: auto;
  }

  .lunch .plan-col__panel-icon {
    top: -44%;
    right: -1%;
    width: 21.587%;
  }

  .lunch .anchor-box {
    z-index: 2;
  }

  .afternoon {
    padding-top: 250px;
    padding-bottom: 68px;
    background-image: url("../img/sec02/bg_sp.webp");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
    z-index: 3;
    margin-bottom: -200px;
  }
  .afternoon::after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image: url(../img/sec02/snow_sp.webp);
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
      mix-blend-mode: screen;
      z-index: -1;
      pointer-events: none;
      background-size: cover;
      background-position: top center;
      margin-bottom: -200px;
  }

  .afternoon__heading {
    width: 89.333%;
  }

  .afternoon__heading-brown {
    width: 94.333%;
    padding-top: 15%;
  }

  .afternoon-component {
    width: 94.4%;
    margin-top: 9%;
  }

  .afternoon-component__text {
    bottom: 12%;
    width: 88.983%;
  }

  .afternoon-component__text-rd {
    margin-right: -.5em;
    margin-left: -.5em;
    letter-spacing: 0;
  }

  #afternoon .plan-col__slider::before {
    color: #fff;
    bottom: -1rem;
	font-size: 10px;
  }
	
.plan-col__slider .slick-dots li {
	margin: 0 3px 0 0;
	width: 8.972px;
    height: 10.259px;
	}
	
.plan-col__slider .slick-dots {
	bottom: -14px;
	}
	
#sunset .plan-col__slider::before,
#dinner .plan-col__slider::before{
	font-size: 10px;
	}

  .afternoon-component__text-bk {
    margin-top: .5em;
    padding-right: 1em;
    padding-left: 1em;
  }

  .sunset {
    padding-top: 247.43px;
    padding-bottom: 78px;
    background-image: url("../img/sec03/bg_sp.webp");
    background-position: bottom, center;
    background-size: cover;
    margin-bottom: -200px;
    z-index: 2;
  }

  .sunset__heading {
    width: 89.333%;
  }

  .sunset__heading-brown01,
  .sunset__heading-brown02,
  .sunset__heading-brown03 {
    padding-top: 13%;
  }

  .sec03-txt01 img {
    width: 89.82%;
    margin: 50px auto 0 auto;
	display: flex;
    justify-content: center;
  }

  .sunset__heading-brown01 {
    width: 89.333%;
  }

  .sunset__heading-brown02 {
    width: 86.479%;
  }

  .sunset__heading-brown03 {
    width: 89.333%;
    margin-right: auto;
    margin-left: auto;
  }

  .sunset .plan-col__panel-icon {
    top: -76%;
    right: -1%;
    width: 29.031%;
  }

  #dinner_plan01,
  #dinner_plan02,
  #dinner_plan03 {
    background-repeat: no-repeat;
    background-size: contain;
  }

  .dinner {
    padding-top: 250px;
    padding-bottom: 90px;
    background-image: url("../img/sec04/bg_sp.webp");
  }
  
  .dinner__heading {
    width: 89.333%;
  }

  .dinner__heading-brown01,
  .dinner__heading-brown02,
  .dinner__heading-brown03 {
    padding-top: 13%;
  }

  .dinner__heading-brown01 {
    width: 89.333%;
  }

  .dinner__heading-brown02 {
    width: 86.479%;
  }

  .dinner__heading-brown03 {
    width: 89.333%;
    margin-right: auto;
    margin-left: auto;
  }

  .dinner .plan-col__panel-icon {
    top: -86%;
    right: -4%;
    width: 35.546%;
  }

  .anchor-box {
    width: var(--sp-w);
    margin-top: calc(20px + 11%);
    margin-right: auto;
    margin-left: auto;
    padding-top: 20px;
  }

  .anchor-box::before,
  .anchor-box::after {
    width: 17.13px;
    height: 17px;
  }

  .anchor-box__inner {
    padding-right: 30px;
    padding-bottom: 5px;
    padding-left: 30px;
  }

  .anchor-box__inner::before,
  .anchor-box__inner::after {
    width: 17.13px;
    height: 17px;
  }

  .anchor-box__inner dt {
    width: 95.366%;
    height: 40px;
    padding-left: .75em;
    border-radius: 20px;
    letter-spacing: .05em;
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px);
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
  }

  .anchor-box__item {
    display: block;
    padding-top: 25px;
    padding-bottom: 25px;
  }

  .anchor-box__item:not(:last-child) {
    border-bottom: 1px solid #574f48;
  }

  .anchor-box__item-inner {
    display: block;
  }

  .btn-reservation {
    height: 74px;
  }

  .plan-col--border .afternoon__heading-brown {
    position: relative;
  }
  .plan-col--border .plan-col__item.is-left::before {
    width: 89.333%;
  }

  .plan-col--border .afternoon__heading-brown::before {
    width: 98.333%;
  }

  .plan-col--border::before,
  .plan-col--border::after {
    width: 15.12px;
    height: 15px;
    -webkit-transform: translateY(calc(-50% + .5px));
    transform: translateY(calc(-50% + .5px));
  }

  .plan-col--border::before {
    left: 4%;
  }

  .plan-col--border::after {
    right: 4%;
  }

  .plan-col__item-head {
    width: 94%;
    margin-right: auto;
    margin-left: auto;
  }

  #afternoon .plan-col__item.is-left .plan-col__point {
    top: -13px;
    right: -10px;
    width: 76.463px;
  }

  #afternoon .plan-col__item.is-right .plan-col01 img {
    width: 100px;
  }
  
  #afternoon .plan-col__item.is-left .plan-col01 img {
    width: 100px;
  }

  .plan-col__slider {
    margin-top: 30px;
  }
	
.lunch .plan-col__slider::before {
	font-size: 10px;	
}

  .afternoon-slide-wrap .plan-col__slider {
    margin-top: 42px;
  }

    #afternoon .afternoon-slide-wrap .plan-col__item.is-left .plan-col__slider::before {
        content: "";
        background: url(../img/sec02/label01.png) no-repeat;
        background-size: 100% auto;
        background-position: top center;
        position: absolute;
        top: -13px;
        right: -10px;
        width: 80px;
        height: 80px;
        z-index: 1;
    }

        #afternoon .plan-col__item.is-right .plan-col__slider::after {
        content: "";
        background: url(../img/sec02/label02.png) no-repeat;
        background-size: 100% auto;
        background-position: top center;
        position: absolute;
        top: -13px;
        right: 75px;
        width: 84px;
        height: 80px;
        z-index: 1;
    }

        #afternoon .plan-col__item.is-right .plan-col__slider::before {
        content: "";
        background: url(../img/sec02/label01.png) no-repeat;
        background-size: 100% auto;
        background-position: top center;
        position: absolute;
        top: -13px;
        right: -10px;
        width: 80px;
        height: 80px;
        z-index: 1;
    }

    .txt-note {
        color: #FFF;
        font-family: "Noto Serif JP";
        font-size: 10px;
        font-weight: 500;
        line-height: normal;
        position: absolute;
        bottom: -15px;
        right: 0;
    }

  .plan-col__main > dt {
    width: 78.666%;
    margin-top: 10%;
  }
	
.lunch .plan-col__main > dt:first-child {
    width: 100%;
	margin-top: 10px;
	text-align: center;
  }
	
.lunch .plan-col__main > dt:first-child img {
	width: 313px;	
}
	
.sunset .plan-col__main > dt:first-child {
    width: 100%;
	margin-top: 10px;
	text-align: center;
  }
	
.sunset .plan-col__main > dt:first-child img {
	width: 313px;	
}
	
.dinner .plan-col__main > dt:first-child {
    width: 100%;
	margin-top: 10px;
	text-align: center;
  }
	
.dinner .plan-col__main > dt:first-child img {
	width: 313px;	
}
	
.afternoon .plan-col__main .affternoon-plan-left-01 {
	width: 100%;
	margin-top: 10px;
	text-align: center;
	}
	
.afternoon .plan-col__main .affternoon-plan-left-01 img {
	width: 353px;
	}
	
.afternoon .afternoon-slide-wrap .plan-col__main > dt:first-child {
	width: 100%;
	margin-top: 10px;
	text-align: center;
}
	
	.afternoon .afternoon-slide-wrap .plan-col__main > dt:first-child img{
	width: 313px;
}

  .plan-col__price-main {
    width: 92%;
    margin-right: auto;
    margin-left: auto;
    gap: 5px;
  }

  .plan-col-label {
    width: 42px;
  }

  .plan-col__price-note {
    width: 93.461%;
    margin-right: auto;
    margin-left: auto;
  }

  .plan-col__menu,
  .plan-col__drink {
    width: 90.333%;
    margin-top: 1.4em;
    margin-right: auto;
    margin-left: auto;
  }
.lunch .plan-col__btn {
    width: unset;
}
	
.lunch .plan-col__btn .btn-reservation img {
	width: 353px;	
}
	
	.sunset .plan-col__btn {
    width: unset;
}
	
.sunset .plan-col__btn .btn-reservation img {
	width: 353px;	
}
	
		.dinner .plan-col__btn {
    width: unset;
}
	
.dinner .plan-col__btn .btn-reservation img {
	width: 353px;	
}
	
.afternoon .afternoon-btn .btn-reservation img {
	width: 353px;	
}

  #lunch .plan-col__main > dd.plan-col__drink,
  #afternoon .plan-col__main > dd.plan-col__drink,
  #sunset .plan-col__main > dd.plan-col__drink{
    margin-top: 30px;
  }

  .afternoon-btn-left,
  .afternoon-btn-right {
    width: unset;
    margin: 30px auto 0 auto;
  }

  .btn-reservation img {
    width: 353px;
    margin: 0 auto;
    display: block;
  }

  .sec02-txt03 {
    margin-top: 5px;
    color: #FFF;
    font-size: 10px;
    font-weight: 400;
    line-height: 15px; /* 150% */
    padding-left: 3%;
  }

  .plan-col__btn {
    width: 93.333%;
    margin-top: 8%;
    margin-right: auto;
    margin-left: auto;
  }

  .plan-col__note {
    width: 93.333%;
    margin-right: auto;
    margin-left: auto;
    font-size: 10px;
    line-height: 15px; /* 150% */

  }

  .plan-col__strong {
    display: block;
    padding-left: 1.5em;
    width: fit-content;
    margin: 0 auto;
    font-size: 24px;
  }

  #afternoon .plan-col__strong {
    color: #FFF;
    font-size: 24px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 2.4px;
  }

  .plan-col__strong::before {
    top: 24%;
    left: 10%;
    width: 0.9em;
    height: 0.9em;
  }

  #afternoon .plan-col__strong::before {
    top: 17%;
    left: 10%;
    width: 26px;
    height: 30px;
  }

  #afternoon .plan-col__strong::before {
    position: absolute;
    left: 5px;
    background-image: url(../img/sec02/icon03.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
  }

  .plan-col__text > span {
    font-size: 14px;
  }

  .plan-col__text {
    display: block;
    letter-spacing: 0.7px;
    width: fit-content;
    margin: 10px auto 0 auto;
	  font-family: "Noto Serif JP";
  }

  #afternoon .plan-col__text,
  #afternoon .plan-col__text > span {
    color: #FFF;
    font-size: 14px;
    line-height: 21px; /* 150% */
  }
  
  .afternoon-btn {
    margin-top: 30px;
  }

  .afternoon-btn img {
    width: 89.82%;
    margin: 0 auto;
    display: block;
  }

  .sec02-note-sp {
    color: #FFF;
    font-size: 10px;
    font-weight: 400;
    line-height: 15px; /* 150% */
    margin-top: 5px;
    padding-left: 3%;
  }

  .plan-col__panel {
    margin-right: -5%;
  }

  .plan-col__panel-content {
    padding: 9% 2% 5% 11%;
  }

  .footer {
    width: 94.333%;
    margin-top: 50px;
    margin-right: auto;
    margin-left: auto;
  }

  .footer-btn {
  }

  .footer-btn__content {
    position: relative;
    padding-right: 2.1em;
    text-align: center;
  }

  .footer-btn__content::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 32.66px;
    height: 40.09px;
    margin: auto;
    background-image: url("../img/icon_option_gold.png");
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
  }

  .footer__note {
    margin-top: 40px;
    font-size: 12px;
    font-style: normal;
    line-height: 21px; /* 175% */
  }

  .footer__note span {
    display: block;
    line-height: 21px;
    margin-bottom: 9px; /* (21px + 9px = 30px) */
  }

  .footer__note span:last-child {
    margin-bottom: 0;
  }
	
.footer-btn img {
	width: 353px;
	}

  .footer__copyright {
    margin-top: 12%;
  }
}

/* New Header Text Styles */
.new-header-list li {
  position: relative;
}
.new-header-list li:not(:last-child)::after {
  content: "";
  position: absolute;
  right: -1px;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 50px;
  background-color: black;
  z-index: 99;
}

.new-header-list .header-list__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  transition: opacity 0.3s ease, transform 0.3s ease;
  gap: 5px; /* space between main and sub text */
  background-color: #fff;
}

.new-header-list .header-list__item:hover {
  transform: translateY(-2px);
}

.header-text-main {
  font-family: 'Noto Serif JP', serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.9px;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  white-space: nowrap;
}

.header-text-sub {
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 1;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  white-space: nowrap;
}

/* Gradients */
.lunch-item .header-text-main,
.lunch-item .header-text-sub {
  background-image: linear-gradient(90deg, #99D1FF 1.46%, #1A95A2 35.1%, #2E70A5 64.94%, #0AB3DA 100%);
}

.afternoon-item .header-text-main,
.afternoon-item .header-text-sub {
  background-image: linear-gradient(to bottom, #C9E0FF 0%, #9BC5FF 22.08%, #5EA1FF 93.72%);
}

.sunset-item .header-text-main,
.sunset-item .header-text-sub {
  background-image: linear-gradient(90deg, #DC4F1C -1.76%, #F40 32.29%, #FF7000 73.09%, #BC5300 100%);
}

.dinner-item .header-text-main,
.dinner-item .header-text-sub {
  background-image: linear-gradient(to right, #0060D5, #00326F);
}

@media screen and (max-width: 1024px) {
  .header-text-main { font-size: 1.4vw; }
  .header-text-sub { font-size: 1.1vw; }
}

@media screen and (max-width: 767px) {
  .header-text-main { font-size: 2vw; }
  .header-text-sub { font-size: 2vw; }
  .new-header-list .header-list__item { flex-direction: column; background-color: white;}
  .new-header-list li:not(:last-child)::after { 
    height: 30px; 
    top: calc(50% + 10px); /* Bù trừ 10px do thẻ a cao hơn thẻ li 20px (tràn xuống dưới) */
  }
  .new-header-list .header-list__item {
    height: calc(100% + 20px);
  }
}

@media screen and (min-width: 767px) {
    .mv-option__btn {
  width: 56.25%;
  margin: 0 auto;
}

  .lunch .lunch-couple-img01 {
    width: 80px;
  }

  .lunch .label-img01,
  .lunch .label-img02 {
    width: 63px;
	margin-left: 5px;
  }

  #lunch_plan01 .plan-col__item {
    max-width: 550px;
    -ms-flex-preferred-size: clamp(300px, 45.833vw, 550px);
    flex-basis: clamp(300px, 45.833vw, 550px);
    width: clamp(300px, 45.833vw, 550px);
  }

  #lunch_plan01 .plan-col__item.is-left {
    margin-right: clamp(16px, 3.333vw, 40px);
  }

  #lunch_plan01 .plan-col__item.is-right {
    margin-left: clamp(16px, 3.333vw, 40px);
  }

  #afternoon .plan-col__item {
    max-width: 550px;
    -ms-flex-preferred-size: clamp(300px, 45.833vw, 550px);
    flex-basis: clamp(300px, 45.833vw, 550px);
    width: clamp(300px, 45.833vw, 550px);
  }

  #afternoon .plan-col__item.is-left {
    margin-right: clamp(14px, 2.917vw, 35px);
  }

  #afternoon .plan-col__item.is-left .sec02-txt01 {
    width: 100%;
    max-width: 365px;
  }

  #afternoon .plan-col__item.is-right .sec02-txt02 {
    width: 100%;
    max-width: 405px;
  }

  #afternoon .plan-col__item.is-right {
    margin-left: clamp(14px, 2.917vw, 35px);
    max-width: 580px;
    -ms-flex-preferred-size: clamp(316px, 48.333vw, 580px);
    flex-basis: clamp(316px, 48.333vw, 580px);
    width: clamp(316px, 48.333vw, 580px);
  }

  #afternoon .plan-col__item.is-right.nonce {
    margin-left: clamp(14px, 2.917vw, 35px);
    max-width: 550px;
    -ms-flex-preferred-size: clamp(300px, 45.833vw, 550px);
    flex-basis: clamp(300px, 45.833vw, 550px);
    width: clamp(300px, 45.833vw, 550px);
  }

  .plan-col2-wrap {
    display: flex;
    flex-direction: column;
    gap: 7px;
  }

  #sunset .plan-col__item {
    max-width: 550px;
    -ms-flex-preferred-size: clamp(300px, 45.833vw, 550px);
    flex-basis: clamp(300px, 45.833vw, 550px);
    width: clamp(300px, 45.833vw, 550px);
  }

  #dinner .plan-col__item {
    max-width: 550px;
    -ms-flex-preferred-size: clamp(300px, 45.833vw, 550px);
    flex-basis: clamp(300px, 45.833vw, 550px);
    width: clamp(300px, 45.833vw, 550px);
  }

  .sec01-img01,
  .sec03-img01,
  .sec04-img01 {
    width: 100%;
    max-width: 365px;
  }
	
/*.afternoon .plan-col__item.is-right .plan-col__item-body dt:first-child{
    width: 100%;
  }*/
}


.mv-plan-list li.mv-plan-title {
  position: absolute;
  top: -32%;
  right: 0;
  left: 0;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
  text-shadow: 10px 1px 12px rgba(0, 0, 0, .15);
  color: #fff;
  font-family: "Noto Serif JP";
  font-size: clamp(16px, 1.389vw, 26.67px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: 1px;
  background: transparent;
  border-radius: 0;
  overflow: visible;
  flex-basis: auto;
  white-space: nowrap;
}

.mv-plan-title img{
  width: 22px;
}

@media screen and (max-width: 767px) {
  .mv-plan-list li.mv-plan-title {
    top: -20%; 
    gap: 15px;
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.7px;
  }

  .hero-btn {
    top: 41%;
  }

  .hero-btn img {
    width: 89.82%;
  }

  .hero-txt01 {
    font-size: 11px;
    letter-spacing: 0.55px;
    white-space: nowrap;
    top: 81%;
  }

  .mv-plan-title img {
    width: 14px;
  }

  .mv-plan-list li.mv-plan-title {
    position: static;
    width: 100%;
    max-width: none;
    margin-bottom: 10px; 
  }

  .mv-plan-list__item img {
    width: 188px;
  }

  .mv-plan-list {
    gap: 0; 
  }

  .mv-plan-list li {
    margin: 0;
    flex-basis: auto;
    width: calc(50% - -7px);
    max-width: 188px;
    margin-top: -10px;
    margin-left: -2px;
    margin-right: -5px;
  }

  .mv-option {
    width: 100%;
  }

  .lunch {
    padding-top: 50px;
    padding-bottom: 94px;
    background-image: url("../img/sec01/yuki_sp.webp"), url("../img/sec01/bg_sp.webp");
    background-repeat: no-repeat, no-repeat;
    background-size: auto 94%, cover;
    background-position: top center, bottom center;
    position: relative;
    z-index: 4;
    margin-bottom: -200px;
  }

  .sec04-txt02 img {
    width: 89.82%;
    margin: 50px auto 0 auto;
	display: flex;
    justify-content: center;
  }
}

.plan-col__item.is-right .plan-col__slider::after {
  content: "";
  background: url("../img/sec01/img09.png") no-repeat;
  background-size: 100% auto;
  background-position: top center;
  position: absolute;
  top: -20px;
  right: -20px;
  width: 120px;
  height: 120px;
  z-index: 1;
}

.afternoon-slide-wrap .plan-col2-wrap {
  display: grid;
  grid-template-columns: max-content max-content max-content max-content max-content;
  row-gap: 7px;
  column-gap: 5px;
  align-items: center;
  justify-content: flex-start;
}

.afternoon-slide-wrap .plan-col02 {
  display: contents;
}

/* SP/PC responsive display */
.sp { display: none !important; }

@media screen and (max-width: 767px) {
  .pc { display: none !important; }
  .sp { display: block !important; }

  /* Lunch SP Price Main Layout */
  .lunch .plan-col__price-main.sp {
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin: 14px auto 0 auto;
    gap: 10px;
  }
  .sp-price-left {
    flex-shrink: 0;
  }
  .sp-price-left img {
    width: 80px;
    height: auto;
  }
  .sp-price-right {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }
  .sp-price-row {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
  }
  .sp-price-label {
    flex-shrink: 0;
  }
  .sp-price-label img {
    width: clamp(63px, 15vw, 70px);
    height: auto;
  }

  .plan-col__item.is-right .plan-col__slider::after {
      width: 85px;
      height: 85px;
      top: -13px;
      right: -10px;
  }

  .afternoon-slide-wrap .plan-col__price-main {
    justify-content: center;
    gap: clamp(5px, 1.34vw, 20px);
	margin-top: 10px;
  }

  .afternoon .plan-col__item.is-right .plan-col__price-main {
    justify-content: center;
    gap: clamp(5px, 1.34vw, 20px);
	  margin-top: 10px;
  }

  .sunset .plan-col__price-main.sp {
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin: 14px auto 0 auto;
    gap: 10px;
  }

  .sunset .sec03-slider .plan-col__slider {
    margin-top: 30px;
  }

  .sunset .plan-col__item.is-right .plan-col__slider {
    margin-top: 43px;
  }

  #sunset .plan-col__strong::before {
    position: absolute;
    left: 5px;
    background-image: url(../img/sec03/icon01.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    top: 12%;
    width: 1.1em;
    height: 1.3em;
  }

  #sunset .plan-col__text {
    color: #262626;
    font-size: 14px;
    line-height: 21px; /* 150% */
    font-family: "Noto Serif JP";
  }

  #sunset .plan-col__btn {
    width: 94.333%;
  }

  #sunset .plan-col__note {
    margin-top: 5px;
    font-size: 10px;
    font-weight: 400;
    line-height: 15px; /* 150% */
    width: 93.333%;
  }

  .dinner .plan-col__price-main.sp {
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin: 14px auto 0 auto;
    gap: 10px;
  }

  .dinner .plan-col__price-num {
    background: linear-gradient(102deg, #FFF 12.93%, #FFEDDA 37.43%, #FFFEE4 69.5%, #FFF 87.88%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  .dinner .plan-col__strong::before {
    position: absolute;
    left: 5px;
    background-image: url(../img/sec04/icon01.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    width: 1.1em;
    height: 1.2em;
    top: 14%;
  }

  .lunch .plan-col__strong
  .sunset .plan-col__strong,
  .dinner .plan-col__strong {
    letter-spacing: 2.4px;
  }

  .dinner .plan-col__text,
  .dinner .plan-col__text > span {
    color: #FFF;
    font-size: 14px;
    line-height: 21px; /* 150% */
    font-family: "Noto Serif JP";
  }

  .dinner .plan-col__note {
    margin-top: 5px;
  }

  .dinner .plan-col__item.is-right .plan-col__slider {
    margin-top: 43px;
  }

  .dinner .plan-col__item.is-left .plan-col__slider::after {
    content: none;
  }

  .dinner .plan-col__item.is-right .plan-col__slider::before {
    content: none;
  }

  .dinner .plan-col__main > dd.plan-col__drink {
    margin-top: 30px;
  }
	
  .lunch .plan-col__main > dd.plan-col__drink.sp {
    margin-top: 30px;
  }

  /* Afternoon SP Price Layout */
  .afternoon-sp-wrap {
    display: flex !important;
    flex-direction: column;
    gap: 0;
  }
  .afternoon-sp-group {
    display: flex;
    align-items: center;
    gap: 5px;
  }
  .afternoon-sp-group .plan-col-label01 {
    margin-right: 0;
  }
  .afternoon-sp-rows {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .afternoon-sp-row {
    display: flex;
    align-items: center;
    gap: 20px;
  }
  #afternoon .afternoon-sp-row.afternoon-sp-row02{
    gap: 2px;
  }
  .afternoon-sp-row img {
    width: clamp(54px, 14vw, 60px);
    height: auto;
  }

  .plan-col-label01 {
    width: clamp(35px, 6vw, 35px);
    height: clamp(100px, 10vw, 56px);
    border: 1px solid #FFF;
    color: #FFF;
    font-family: "Noto Serif JP";
    font-size: clamp(16px, 3vw, 16px);
    font-weight: 700;
    line-height: 21px;
    writing-mode: vertical-rl;
    display: flex;
    justify-content: center;
    align-items: center;
    letter-spacing: 4px;
  }

  .plan-col__price-num01 {
    font-family: "Noto Serif JP";
    font-size: clamp(40px, 6vw, 28px);
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    background: linear-gradient(102deg, #FFF 12.93%, #FFEDDA 37.43%, #FFFEE4 69.5%, #FFF 87.88%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  .plan-col__price-yen01 {
    -webkit-text-fill-color: currentcolor;
    color: #FFF;
    font-size: clamp(26px, 3.5vw, 18px);
  }
}

@media (min-width: 767px) and (max-width: 1280px) {
	.header {
	background-size: cover;
	}
	
  .hero-txt01,
  .mv-plan-list li.mv-plan-title {
    font-size: clamp(11px, calc(11px + (100vw - 767px) * 0.00977), 16px);
  }

  .mv-plan-title img {
    width: 16px;
  }

  .section-inner {
    padding: 0 15px;
  }
	
.afternoon .plan-col__price-main {
    gap: 8px;
  }

  .plan-col__price-main {
    gap: 8px;
  }
	
	.afternoon-sp-wrap {
	  gap: 5px;
	}
	
	.afternoon-sp-group {
	  align-items: normal;
	}

  .plan-col-label01 {
    font-size: 12px;
  }

  .sec02-sample-slide span {
    font-size: 20px;
  }

  #afternoon .plan-col__item.is-right .plan-col__menu {
    justify-content: center;
    align-items: center;
    margin: 30px auto 0 auto;
  }

  #afternoon .plan-col__item.is-right .plan-col__drink {
    justify-content: center;
    align-items: center;
    margin: 20px auto 0 auto;
  }

  .footer__note {
    max-width: 79.17%;
  }
	
  .plan-col__text {
    white-space: nowrap;
  }
	
  .new-header-list .header-list__item {
    flex-direction: column;
  }

  .header-text-main {
    font-size: 16px;
  }
  .header-text-sub {
    font-size: 14px;
  }
	
  .mv-plan-list li.mv-plan-title {
	top: -38%;
	gap: 20px;
  }
	
  .mv-plan-list {
	margin-top: 7.8%;
  }

  .plan-col__item.is-right,
  #dinner .plan-col__item.is-right,
  #sunset .plan-col__item.is-right,
  #afternoon .plan-col__item.is-right,
  #afternoon .plan-col__item.is-right.nonce,
  #lunch_plan01 .plan-col__item.is-right {
	margin-left: 0px;
	flex-basis: clamp(300px, 48.833vw, 550px);
    width: clamp(300px, 48.833vw, 550px);
  }
	
  .plan-col__item.is-left,
  #dinner .plan-col__item.is-left,
  #sunset .plan-col__item.is-left,
  #afternoon .plan-col__item.is-left,
  #lunch_plan01 .plan-col__item.is-left {
	margin-right: 0px;
	flex-basis: clamp(300px, 48.833vw, 550px);
    width: clamp(300px, 48.833vw, 550px);
  }
	
  .plan-col__main > dd.plan-col__drink {
	margin-top: 15px;
  }
	
	.plan-col {
	  flex-direction: column;
      align-items: center;
	}
	
  #afternoon .plan-col__item.is-right .plan-col__slider::after {
	right: 70px;
    width: 80px;
    height: 80px;
  }
	
	#afternoon .afternoon-slide-wrap .plan-col__item.is-left .plan-col__slider::before,
	#afternoon .plan-col__item.is-right .plan-col__slider::before {
	width: 80px;
    height: 80px;
	}

#afternoon .plan-col__item.is-left .plan-col__slider::before,
.plan-col__item.is-right .plan-col__slider::after {
	    width: 80px;
    	height: 80px;
	}
	
  .plan-col__item.is-right .plan-col__main > dd.plan-col__drink {
    margin-top: 105px;
  }

  .mv__body {
    max-width: 580px;
    top: 69%;
  }
  
  .mv-plan-list {
    margin-top: 0;
  }

  .mv-option__btn {
  width: 56.25%;
  margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .afternoon-sp-row02 .plan-col__price-num01 {
    display: inline-block !important;
    min-width: 3.18em !important;
    text-align: right !important;
  }
	
  .sec02-sample-slide span {
    font-size: clamp(18px, calc(18px + (6 * (100vw - 375px) / 392)), 24px);
  }
}

@media screen and (max-width: 375px) {
  .plan-col__price-main {
    width: 100%;
  }
	
	.plan-col__menu, .plan-col__drink {
		width: 94.333%;
	}
}

.sunset .plan-col__price-main.pc .lunch-couple-img01,
.dinner .plan-col__price-main.pc .lunch-couple-img01 {
    width: 80px;
  }

.btn-pre,
.btn-pre02 { pointer-events: none; }