:root {
  --font-default: "Noto Serif JP", serif;
  --font-base: "Noto Serif JP", serif;
  --font-en: "Noto Serif JP", serif;
  --font-montserrat: "Montserrat", sans-serif;
  --font-lato: "Lato", sans-serif;
  --font-quicksand: "Quicksand", sans-serif;
  --font-WorkSans: "Noto Serif JP", serif;
  --font-thin: "Noto Serif JP", serif;
  --font-extralight: "Noto Serif JP", serif;
  --font-light: "Noto Serif JP", serif;
  --font-normal: "Noto Serif JP", serif;
  --font-medium: "Noto Serif JP", serif;
  --font-semibold: "Noto Serif JP", serif;
  --font-bold: "Noto Serif JP", serif;
  --font-extrabold: "Noto Serif JP", serif;
  --font-black: "Noto Serif JP", serif;
  --font-en-thin: "Noto Serif JP", serif;
  --font-en-extralight: "Noto Serif JP", serif;
  --font-en-light: "Noto Serif JP", serif;
  --font-en-normal: "Noto Serif JP", serif;
  --font-en-medium: "Noto Serif JP", serif;
  --font-en-semibold: "Noto Serif JP", serif;
  --font-en-bold: "Noto Serif JP", serif;
  --font-en-extrabold: "Noto Serif JP", serif;
  --font-en-black: "Noto Serif JP", serif;
  --color-default: #1a1a1a;
  --color-text: #1a1a1a;
  --color-link: #1d3994;
  --color-base: #1a1a1a;
  --color-main: #a87d54;
  --color-main-100: rgba(168, 125, 84, 0.1);
  --color-main-200: rgba(168, 125, 84, 0.2);
  --color-main-300: rgba(168, 125, 84, 0.3);
  --color-main-400: rgba(168, 125, 84, 0.4);
  --color-main-500: rgba(168, 125, 84, 0.5);
  --color-main-600: rgba(168, 125, 84, 0.6);
  --color-main-700: rgba(168, 125, 84, 0.7);
  --color-main-800: rgba(168, 125, 84, 0.8);
  --color-main-900: rgba(168, 125, 84, 0.9);
  --color-accent-1: #eb4141;
  --color-accent-2: #1E8E8A;
  --color-black: #000;
  --color-black-100: rgba(0, 0, 0, 0.1);
  --color-black-200: rgba(0, 0, 0, 0.2);
  --color-black-300: rgba(0, 0, 0, 0.3);
  --color-black-400: rgba(0, 0, 0, 0.4);
  --color-black-500: rgba(0, 0, 0, 0.5);
  --color-black-600: rgba(0, 0, 0, 0.6);
  --color-black-700: rgba(0, 0, 0, 0.7);
  --color-black-800: rgba(0, 0, 0, 0.8);
  --color-black-900: rgba(0, 0, 0, 0.9);
  --color-gray: #999999;
  --color-gray-100: rgba(153, 153, 153, 0.1);
  --color-gray-200: rgba(153, 153, 153, 0.2);
  --color-gray-300: rgba(153, 153, 153, 0.3);
  --color-gray-400: rgba(153, 153, 153, 0.4);
  --color-gray-500: rgba(153, 153, 153, 0.5);
  --color-gray-600: rgba(153, 153, 153, 0.6);
  --color-gray-700: rgba(153, 153, 153, 0.7);
  --color-gray-800: rgba(153, 153, 153, 0.8);
  --color-gray-900: rgba(153, 153, 153, 0.9);
  --color-gray-1: #f7f5f5;
  --color-gray-2: #f5f5f5;
  --color-gray-3: #dcdcdc;
  --color-gray-4: #d2d2d2;
  --color-gray-5: #eeeeee;
  --color-gray-6: #c9c9c9;
  --color-gray-7: #dcdddd;
  --color-red: #eb4141;
  --color-red-100: rgba(235, 65, 65, 0.1);
  --color-red-200: rgba(235, 65, 65, 0.2);
  --color-red-300: rgba(235, 65, 65, 0.3);
  --color-red-400: rgba(235, 65, 65, 0.4);
  --color-red-500: rgba(235, 65, 65, 0.5);
  --color-red-600: rgba(235, 65, 65, 0.6);
  --color-red-700: rgba(235, 65, 65, 0.7);
  --color-red-800: rgba(235, 65, 65, 0.8);
  --color-red-900: rgba(235, 65, 65, 0.9);
  --color-blue: #387efa;
  --color-teal: #1E8E8A;
  --color-green: #6ab943;
  --color-yellow: #ffff00;
  --color-lightYellow: #f6f6ef;
  --color-lightYellow-1: #f6f5f0;
  --color-orange: #f39800;
  --color-pink: #ef6eae;
  --color-beige: #F8F0D3;
  --color-gradation-main: linear-gradient( 90deg, rgb(175,235,161) 0%, rgb(100,229,179) 100%);
  --transition-fast-duration: 0.3s;
  --transition-fast-timing-function: ease-in-out;
  --transition-normal-duration: 0.6s;
  --transition-normal-timing-function: ease-in-out;
  --transition-slow-duration: 0.9s;
  --transition-slow-timing-function: ease-in-out;
}

:root {
  --fs-12: 12px;
  --fs-13: 13px;
  --fs-14: 14px;
  --fs-15: 15px;
  --fs-16: 16px;
  --fs-17: 17px;
  --fs-18: 18px;
  --fs-19: 19px;
  --fs-20: 20px;
  --lh-tight: 1.25;
  --lh-normal: 1.5;
  --lh-loose: 1.75;
}

:where(*) {
  letter-spacing: 0.1em;
}

html,
body {
  line-height: 1.75;
}
@media (max-width: 767px) {
  html,
  body {
    min-width: auto;
  }
}

:root {
  --header-height: 0px;
  --footer-height: 0px;
}

body {
  background: var(--color-sub);
  overflow: clip;
}
@media (max-width: 767px) {
  body {
    min-width: auto;
  }
}
body.en {
  font-family: var(--font-en-normal);
}
body.is-loaded {
  overflow: visible;
}
body.drawer-open {
  overflow: hidden;
}

.page-wrapper {
  padding-top: var(--header-height);
  -webkit-transition: opacity 1s, -webkit-filter 1s;
  transition: opacity 1s, -webkit-filter 1s;
  transition: opacity 1s, filter 1s;
  transition: opacity 1s, filter 1s, -webkit-filter 1s;
}

@-webkit-keyframes moveBg {
  0% {
    -webkit-transform: translate(calc(5vw - 50%), -50%) rotate(0deg);
            transform: translate(calc(5vw - 50%), -50%) rotate(0deg);
  }
  100% {
    -webkit-transform: translate(calc(5vw - 50%), -50%) rotate(1turn);
            transform: translate(calc(5vw - 50%), -50%) rotate(1turn);
  }
}

@keyframes moveBg {
  0% {
    -webkit-transform: translate(calc(5vw - 50%), -50%) rotate(0deg);
            transform: translate(calc(5vw - 50%), -50%) rotate(0deg);
  }
  100% {
    -webkit-transform: translate(calc(5vw - 50%), -50%) rotate(1turn);
            transform: translate(calc(5vw - 50%), -50%) rotate(1turn);
  }
}
@-webkit-keyframes showLogo {
  0% {
    -webkit-filter: blur(10px);
            filter: blur(10px);
    opacity: 0;
  }
  100% {
    -webkit-filter: blur(0);
            filter: blur(0);
    opacity: 0.8;
  }
}
@keyframes showLogo {
  0% {
    -webkit-filter: blur(10px);
            filter: blur(10px);
    opacity: 0;
  }
  100% {
    -webkit-filter: blur(0);
            filter: blur(0);
    opacity: 0.8;
  }
}
h1, h2, h3, h4, h5 {
  line-height: 1.5;
}

:where(a) {
  font-size: 1em;
}
:where(a):has(.img-cover) :where(img), :where(a):has(.media-cover) :where(img), :where(a).img-cover :where(img), :where(a).media-cover :where(img) {
  -webkit-transition: -webkit-transform 0.3s, -webkit-filter 0.3s;
  transition: -webkit-transform 0.3s, -webkit-filter 0.3s;
  transition: transform 0.3s, filter 0.3s;
  transition: transform 0.3s, filter 0.3s, -webkit-transform 0.3s, -webkit-filter 0.3s;
}
:where(a):hover:has(.img-cover), :where(a):hover:has(.media-cover), :where(a):hover.img-cover, :where(a):hover.media-cover {
  opacity: 1;
}
:where(a):hover:has(.img-cover) :where(img), :where(a):hover:has(.media-cover) :where(img), :where(a):hover.img-cover :where(img), :where(a):hover.media-cover :where(img) {
  -webkit-transform: translate(-50%, -50%) scale(1.1);
          transform: translate(-50%, -50%) scale(1.1);
}

a {
  -webkit-transition: color 0.3s, opacity 0.3s;
  transition: color 0.3s, opacity 0.3s;
}
a[data-disabled] {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 1;
  color: inherit;
}
a[data-disabled]:hover {
  opacity: 1;
  color: inherit;
}

:where(p) a,
:where(li) a {
  word-break: break-word;
  overflow-wrap: break-word;
  color: var(--color-base);
}
:where(p) img,
:where(li) img {
  display: inline-block;
}

img[load-src] {
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
img[load-src].loaded {
  opacity: 1;
}

input,
button,
select,
[role=button] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  margin: 0;
  outline: none;
  border-radius: 0;
}
input:focus, input:active, input:focus-visible,
button:focus,
button:active,
button:focus-visible,
select:focus,
select:active,
select:focus-visible,
[role=button]:focus,
[role=button]:active,
[role=button]:focus-visible {
  outline: none;
}

.sp {
  display: none;
}
@media (max-width: 767px) {
  .sp {
    display: block;
  }
}

.\!sp {
  display: none !important;
}
@media (max-width: 767px) {
  .\!sp {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .sp-none {
    display: none;
  }
}

.u-container {
  max-width: 930px;
  margin-inline: auto;
}

.u-container-sm {
  max-width: 800px;
  margin-inline: auto;
}

.pb-160 {
  padding-bottom: min(160px, 12.1212121212vw);
}

@media (max-width: 767px) {
  .sp\:pb-140 {
    padding-bottom: 35.8974358974vw;
  }
}

.u-px-sm {
  padding-inline: min(40px, 3.0303030303vw);
}
@media (max-width: 767px) {
  .u-px-sm {
    padding-inline: 5.1282051282vw;
  }
}

.u-px-md {
  padding-inline: min(30px, 2.2727272727vw);
}
@media (max-width: 767px) {
  .u-px-md {
    padding-inline: 7.6923076923vw;
  }
}

.u-px-lg {
  padding-inline: min(40px, 3.0303030303vw);
}
@media (max-width: 767px) {
  .u-px-lg {
    padding-inline: 10.2564102564vw;
  }
}

.\!u-w-165 {
  width: min(165px, 12.5vw) !important;
}

.c-media-cover {
  display: block;
  padding: 0;
  position: relative;
  overflow: hidden;
}
.c-media-cover:before {
  content: "";
  display: block;
  padding-top: 66.666667%;
}
.c-media-cover--aspect-2-1:before {
  padding-top: 50%;
}
.c-media-cover :where(img),
.c-media-cover :where(iframe) {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.c-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: min(165px, 12.5vw);
  min-height: min(36px, 2.7272727273vw);
  border-radius: 999px;
  border: 1px solid var(--color-base);
  font-size: min(13px, 0.9848484848vw);
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
}
@media (max-width: 767px) {
  .c-button {
    width: 42.3076923077vw;
    height: 9.2307692308vw;
    padding-top: 0.1em;
    font-size: 3.3333333333vw;
  }
}
.c-button--border {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: min(270px, 20.4545454545vw);
  min-height: min(55px, 4.1666666667vw);
  padding-right: min(24px, 1.8181818182vw);
  border-radius: min(15px, 1.1363636364vw);
  border: 1px solid #313131;
  background: #fff;
  font-size: min(16px, 1.2121212121vw);
  font-weight: 500;
  letter-spacing: 0.04em;
  position: relative;
}
@media (max-width: 767px) {
  .c-button--border {
    min-width: 69.2307692308vw;
    min-height: 12.8205128205vw;
    padding-right: 5.1282051282vw;
    border-radius: 3.3333333333vw;
    font-size: 3.8461538462vw;
  }
}
.c-button--border:after {
  content: "";
  display: block;
  width: min(18px, 1.3636363636vw);
  height: min(18px, 1.3636363636vw);
  background: url(../img/icon_arrow_down.svg) 50% no-repeat;
  background-size: min(17px, 1.2878787879vw);
  position: absolute;
  top: 50%;
  right: min(23px, 1.7424242424vw);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
}
@media (max-width: 767px) {
  .c-button--border:after {
    width: 3.8461538462vw;
    height: 4.1025641026vw;
    background-size: 3.8461538462vw;
    right: 5.1282051282vw;
  }
}

.c-fixed-button-wrap {
  position: sticky;
  bottom: 0;
  right: 0;
  z-index: 997;
}

.c-fixed-button {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  bottom: min(40px, 3.0303030303vw);
  right: min(35px, 2.6515151515vw);
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.c-fixed-button.is-visible {
  opacity: 1;
}
.c-fixed-button__img {
  width: min(170px, 12.8787878788vw);
}
@media (max-width: 767px) {
  .c-fixed-button__img {
    width: 25.641025641vw;
  }
}
.c-fixed-button__img-on {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.c-fixed-button:hover .c-fixed-button__img-on {
  opacity: 1;
}

.c-title {
  max-width: min(670px, 50.7575757576vw);
  padding-block: min(18px, 1.3636363636vw);
  border-top: 1px solid #959595;
  border-bottom: 1px solid #959595;
  font-size: min(20px, 1.5151515152vw);
  font-weight: 700;
  letter-spacing: 0.09em;
  text-align: center;
  margin-inline: auto;
}
@media (max-width: 767px) {
  .c-title {
    max-width: none;
    padding-block: 7.1794871795vw;
    font-size: 4.6153846154vw;
  }
}

.c-scroll-guide {
  padding-bottom: 2.4em;
  font-family: var(--font-en);
  font-size: min(18px, 1.3636363636vw);
  letter-spacing: 0.08em;
  position: absolute;
  top: -3em;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
}
@media (max-width: 767px) {
  .c-scroll-guide {
    font-size: 4.358974359vw;
  }
}
.c-scroll-guide:after {
  content: "";
  display: block;
  width: 1px;
  height: 2em;
  background: #959595;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%) scaleY(0);
          transform: translateX(-50%) scaleY(0);
  -webkit-transform-origin: top center;
          transform-origin: top center;
  z-index: 1;
  -webkit-animation: scrollLine 1.8s ease-in-out infinite;
          animation: scrollLine 1.8s ease-in-out infinite;
}

@-webkit-keyframes scrollLine {
  0% {
    -webkit-transform: translateX(-50%) scaleY(0);
            transform: translateX(-50%) scaleY(0);
    -webkit-transform-origin: top center;
            transform-origin: top center;
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  50% {
    -webkit-transform: translateX(-50%) scaleY(1);
            transform: translateX(-50%) scaleY(1);
    -webkit-transform-origin: top center;
            transform-origin: top center;
    opacity: 1;
  }
  51% {
    -webkit-transform-origin: bottom center;
            transform-origin: bottom center;
  }
  100% {
    -webkit-transform: translateX(-50%) scaleY(0);
            transform: translateX(-50%) scaleY(0);
    -webkit-transform-origin: bottom center;
            transform-origin: bottom center;
    opacity: 0;
  }
}

@keyframes scrollLine {
  0% {
    -webkit-transform: translateX(-50%) scaleY(0);
            transform: translateX(-50%) scaleY(0);
    -webkit-transform-origin: top center;
            transform-origin: top center;
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  50% {
    -webkit-transform: translateX(-50%) scaleY(1);
            transform: translateX(-50%) scaleY(1);
    -webkit-transform-origin: top center;
            transform-origin: top center;
    opacity: 1;
  }
  51% {
    -webkit-transform-origin: bottom center;
            transform-origin: bottom center;
  }
  100% {
    -webkit-transform: translateX(-50%) scaleY(0);
            transform: translateX(-50%) scaleY(0);
    -webkit-transform-origin: bottom center;
            transform-origin: bottom center;
    opacity: 0;
  }
}
.l-page-wrapper {
  margin-inline: auto;
  position: relative;
  min-width: 320px;
  overflow: clip;
}
.l-main {
  position: relative;
}
.l-header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 998;
}

.l-header__inner {
  padding-block: min(20px, 1.5151515152vw);
  padding-inline: min(40px, 3.0303030303vw);
}
@media (max-width: 767px) {
  .l-header__inner {
    padding-block: 6.1538461538vw;
    padding-inline: 5.1282051282vw;
  }
}

.l-header__logo {
  position: relative;
  z-index: 1;
}

.l-header__logo-img {
  height: min(45px, 3.4090909091vw);
}
@media (max-width: 767px) {
  .l-header__logo-img {
    height: 5.641025641vw;
  }
}

/* .p-header-menu-btn */
.p-header-menu-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: min(60px, 4.5454545455vw);
  height: min(60px, 4.5454545455vw);
  position: fixed;
  top: min(50px, 3.7878787879vw);
  right: 2.5vw;
  z-index: 999;
}
@media (max-width: 767px) {
  .p-header-menu-btn {
    width: 8.7179487179vw;
    height: 8.7179487179vw;
    top: 5.1282051282vw;
    right: 2.5641025641vw;
  }
}

.p-header-menu-btn:hover {
  opacity: 1;
}

.p-header-menu-btn:before {
  content: "Close";
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  position: absolute;
  top: calc(100% + min(16px, 1.2121212121vw));
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .p-header-menu-btn:before {
    font-size: 3.5897435897vw;
    top: calc(100% + 2.5641025641vw);
  }
}

.p-header-menu-btn.drawer-open:before {
  opacity: 1;
  visibility: visible;
}

.p-header-menu-btn__bar-wrap {
  display: block;
  width: min(12px, 0.9090909091vw);
  height: min(60px, 4.5454545455vw);
  position: relative;
}
@media (max-width: 767px) {
  .p-header-menu-btn__bar-wrap {
    width: 2.3076923077vw;
    height: 8.7179487179vw;
  }
}

.p-header-menu-btn__bar {
  display: block;
  width: 2px;
  height: min(60px, 4.5454545455vw);
  background: #2e2624;
  position: absolute;
  top: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .p-header-menu-btn__bar {
    width: 1px;
    height: 8.7179487179vw;
  }
}

.p-header-menu-btn__bar.--top {
  left: 0;
}
.p-header-menu-btn.drawer-open .p-header-menu-btn__bar.--top {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(10deg);
          transform: translate(-50%, -50%) rotate(10deg);
}

.p-header-menu-btn__bar.--bottom {
  height: min(48px, 3.6363636364vw);
  right: 0;
}
@media (max-width: 767px) {
  .p-header-menu-btn__bar.--bottom {
    height: 7.1794871795vw;
  }
}

.p-header-menu-btn.drawer-open .p-header-menu-btn__bar.--bottom {
  height: min(60px, 4.5454545455vw);
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%) rotate(-10deg);
          transform: translate(50%, -50%) rotate(-10deg);
}
@media (max-width: 767px) {
  .p-header-menu-btn.drawer-open .p-header-menu-btn__bar.--bottom {
    height: 8.7179487179vw;
  }
}

.p-header-menu {
  width: 100vw;
  height: 100lvh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 998;
  opacity: 0;
  visibility: hidden;
  overflow: auto;
  pointer-events: none;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.p-header-menu:-webkit-scrollbar {
  display: none;
}

.p-header-menu.drawer-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.p-header-menu.drawer-close {
  -webkit-transition-delay: 1.1s;
          transition-delay: 1.1s;
}

.p-header-menu__inner {
  min-height: 100lvh;
  position: relative;
}
@media (max-width: 767px) {
  .p-header-menu__inner {
    overflow: hidden;
  }
}

.p-header-menu__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: min(80px, 6.0606060606vw);
  padding-left: min(130px, 9.8484848485vw);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
@media (max-width: 767px) {
  .p-header-menu__container {
    padding-top: 10.2564102564vw;
    padding-bottom: 20.5128205128vw;
    padding-left: 11.0256410256vw;
  }
}

.p-header-menu.drawer-open .p-header-menu__container {
  opacity: 1;
  visibility: visible;
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.p-header-menu__overray {
  width: 100%;
  height: 100%;
  background: #edebdd;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  -webkit-transform: translateX(calc(100% + min(91px, 6.8939393939vw)));
          transform: translateX(calc(100% + min(91px, 6.8939393939vw)));
  -webkit-transition: all 1.1s;
  transition: all 1.1s;
}
@media (max-width: 767px) {
  .p-header-menu__overray {
    -webkit-transition: all 0.8s;
    transition: all 0.8s;
  }
}

.p-header-menu.drawer-open .p-header-menu__overray {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.p-header-menu__overray:before {
  content: "";
  display: block;
  width: min(91px, 6.8939393939vw);
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(transparent), to(#edebdd));
  background: linear-gradient(90deg, transparent, #edebdd);
  position: absolute;
  top: 0;
  right: 100%;
  z-index: 1;
}

.p-header-menu__logo-img {
  height: min(260px, 19.696969697vw);
}
@media (max-width: 767px) {
  .p-header-menu__logo-img {
    height: 33.3333333333vw;
  }
}

.p-header-nav {
  width: 39.1666666667vw;
  padding-top: min(72px, 5.4545454545vw);
  font-size: min(18px, 1.3636363636vw);
  letter-spacing: 0.13em;
}
@media (max-width: 767px) {
  .p-header-nav {
    width: 51.2820512821vw;
    padding-top: 25.641025641vw;
    font-size: 4.6153846154vw;
  }
}

.p-header-nav__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(20px, 1.5151515152vw);
}
@media (max-width: 767px) {
  .p-header-nav__items {
    gap: 5.1282051282vw;
  }
}

.p-header-nav__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.p-header-nav__link:hover {
  color: #a2a2a2;
  opacity: 1;
}

.p-header-nav__text--en {
  font-size: min(11px, 0.8333333333vw);
  color: #cfb8a1;
}
@media (max-width: 767px) {
  .p-header-nav__text--en {
    font-size: 2.8205128205vw;
  }
}

.p-header-nav__link:hover .p-header-nav__text--en {
  color: #a2a2a2;
}

.p-header__nav-insta {
  display: none;
}
@media (max-width: 767px) {
  .p-header__nav-insta {
    display: block;
    width: 5.1282051282vw;
    margin-top: 12.8205128205vw;
  }
}

.p-header__nav-privacy {
  display: none;
}
@media (max-width: 767px) {
  .p-header__nav-privacy {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 2.8205128205vw;
    letter-spacing: 0.13em;
    text-decoration: underline;
    margin-top: 4.1025641026vw;
  }
}

.l-footer {
  margin-top: min(140px, 10.6060606061vw);
}
@media (max-width: 767px) {
  .l-footer {
    margin-top: 20.5128205128vw;
  }
}

.l-footer__copyright {
  padding-block: min(9px, 0.6818181818vw);
  background: #2e2624;
  font-size: min(12px, 0.9090909091vw);
  line-height: 1;
  text-align: center;
  letter-spacing: 0.13em;
  color: #fff;
}
@media (max-width: 767px) {
  .l-footer__copyright {
    padding-block: 2.0512820513vw;
    font-size: 3.0769230769vw;
  }
}

.p-opening {
  background: #fff;
  position: fixed;
  inset: 0;
  z-index: 9999;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  -webkit-transition: opacity 0.5s ease, visibility 0s ease 0.5s;
  transition: opacity 0.5s ease, visibility 0s ease 0.5s;
  overflow: hidden;
}
.p-opening.is-hide {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.p-opening__canvas {
  display: block;
  width: 100%;
  height: 100%;
}
/*# sourceMappingURL=style.min.css.map */