@charset "UTF-8";
/* autoprefixer grid: autoplace */
/* ==========================================================================
 Foundation
 ========================================================================== */
html {
  overflow-x: hidden;
  font-size: 62.5%;
}

/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  /* font-size: 100%;
font: inherit; */
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  /* line-height: 1; */
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.project {
  font-size: 2.666vw;
  line-height: 1.4;
  font-family: "Shippori Mincho B1","游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 600;
  background-color: #FFFFFF;
  color: #2B2E34;
}

.project *, .project *:before, .project *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.project h1, .project h2, .project h3, .project h4 {
  font-size: 100%;
}

@media screen and (min-width: 769px) {
  .project {
    font-size: 0.925vw;
  }
}

@media screen and (min-width: 1081px) {
  .project {
    font-size: 10px;
  }
}

a {
  color: #2B2E34;
  text-decoration: none;
}

img {
  vertical-align: middle;
  height: auto;
  width: 100%;
  max-width: 100%;
}

svg {
  width: 100%;
  height: auto;
  vertical-align: middle;
}

figure {
  margin: 0;
}

@media screen and (min-width: 769px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    }
}



/* c-pagetop
----------------------------------------------------------------- */
.c-pagetop {
  display: none;
  width: 38px;
  height: 38px;
  display: block;
  position: fixed;
  z-index: 999;
  bottom: 5.333vw;
  right: 5.333vw;
}

@media screen and (min-width: 769px) {
  .c-pagetop {
    bottom: 3.703vw;
    right: 3.703vw;
  }
}

@media screen and (min-width: 1081px) {
  .c-pagetop {
    bottom: 40px;
    right: 40px;
  }
}



:root {

  /* var color */
  --c-ffffff: 255, 255, 255;
  --c-000000: 0, 0, 0;
  --c-222222: 34, 34, 34;
  --c-333333: 51, 51, 51;
  --c-f5eee5: 245, 238, 229;
  --c-bac5bc: 186, 197, 188;
  --c-181000: 24, 16, 0;
  --c-707070: 112, 112, 112;
  --c-e5d8c8: 229, 216, 200;
  --c-f4f2d4: 244, 242, 212;
  --c-f2f0ed: 242, 240, 237;
  --c-535353: 83, 83, 83;
  --c-eae7e2: 234, 231, 226;
  --c-f6f4b0: 246, 244, 176;

  /* var font */
  --f-ntj: 'Noto Sans JP', sans-serif;
  --f-sg: 'Sawarabi Gothic', sans-serif;
  --f-sm: 'Shippori Mincho', serif;
  --f-smb: 'Shippori Mincho B1', serif;

}

/* fonts */
.f-ntj-r {
  font-family: var(--f-ntj);
  font-weight: 400;
}
.f-ntj-m {
  font-family: var(--f-ntj);
  font-weight: 500;
}
.f-ntj-b {
  font-family: var(--f-ntj);
  font-weight: 700;
}
.f-ntj-bl {
  font-family: var(--f-ntj);
  font-weight: 900;
}
.f-sg {
  font-family: var(--f-sg);
  font-weight: 400;
}
.f-sm-r {
  font-family: var(--f-sm);
  font-weight: 400;
}
.f-sm-m {
  font-family: var(--f-sm);
  font-weight: 500;
}
.f-sm-b {
  font-family: var(--f-sm);
  font-weight: 700;
}
.f-smb-r {
  font-family: var(--f-smb);
  font-weight: 400;
}
.f-smb-m {
  font-family: var(--f-smb);
  font-weight: 500;
}
.f-smb-b {
  font-family: var(--f-smb);
  font-weight: 700;
}

/* components */
.c-inner {
  margin-inline: auto;
  padding-inline: 50px;
  max-width: 1000px;
}
@media screen and (max-width: 750px) {
  .c-inner {
    margin-inline: auto;
    padding-inline: 0;
    max-width: none;
    width: 87.2%;
  }
}
.c-ls-zero {
  letter-spacing: 0;
}
.c-ls-minus {
  letter-spacing: -0.025em;
}
.mi-la {
  margin-inline: auto 0;
}
.mi-ra {
  margin-inline: 0 auto;
}


.contents-nav,
.breadcrumb,
.global-footer {
  position: relative;
  z-index: 1;
}
.global-footer {
  background: rgb(var(--c-ffffff));
}


.br-pc {
  display: block;
}
.br-sp {
  display: none;
}
@media screen and (max-width: 750px) {
  .br-pc {
    display: none;
  }
  .br-sp {
    display: block;
  }
}

/* gift2026SS */

:root {
  --color-base-white: 255 255 255;
  --color-base-black: 0 0 0;
  --color-base-text: 49 49 49;
  --color-base-link: 7 51 172;
  --color-base-tag: 234 234 234;
  --color-base-line: 227 227 227;
  --color-base-bg: 246 241 214;
  --color-base-box: 112 112 112;

  --color-slide-active: 49 49 49;
  --color-slide-inactive: 197 197 197;

  --color-nav-line: 9 139 66;

  --border-radius-max: 100vmax;

  --font-mincho: "Shippori Mincho B1", serif;
  --font-gothic: "Zen Kaku Gothic New", sans-serif;
  --font-serif: "Libre Baskerville", serif;

  --font-regular: 400;
  --font-medium: 500;
  --font-bold: 700;

  --z-index-default: 0;
  --z-index-cursor: 5;
  --z-index-main: 10;
}


.u-font-mincho {
  font-family: var(--font-mincho);
}
.u-font-gothic {
  font-family: var(--font-gothic);
}
.u-font-serif {
  font-family: var(--font-serif);
}
.u-space-init {
  letter-spacing: 0 !important;
}
.u-space-half {
  letter-spacing: -0.05em !important;
}
.u-space-ohf {
  letter-spacing: 0.125em !important;
}
.u-space-th {
  letter-spacing: 0.2em !important;
}

button {
  margin: unset;
  padding: unset;
  border: unset;
}

.c-btn__more {
  position: relative;
  display: grid;
  place-content: center;
  padding-inline: 17px;
  width: 39.187%;
  aspect-ratio: 262/52;
  font-size: 15px;
  line-height: 1;
  letter-spacing: 0.1em;
  font-family: var(--font-serif);
  color: rgb(var(--color-base-white));
  background-color: rgba(var(--color-base-text) / .65);
  border-radius: var(--border-radius-max);
  cursor: pointer;
}
.c-btn__more::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 9.1604%;
  transform: translateY(-50%);
  width: 8px;
  aspect-ratio: 16/9;
  background-image: url(../img/btn_more.svg);
  background-repeat: no-repeat;
  background-size: contain;
  transition: transform 0.6s ease-in-out;
}
.c-btn__more[aria-expanded="true"]:after {
  transform: translateY(-50%) rotate(180deg);
}
@media screen and (max-width: 750px) {
  .c-btn__more {
    padding-inline: 3.2vw;
    font-size: 2.933vw;
  }
  .c-btn__more::after {
    width: 2.1334vw;
  }
}


.l-section {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  z-index: var(--z-index-default);
}
.l-section__header {
  position: fixed;
  inset: 0;
  /* background-color: rgb(var(--color-base-bg)); */
  background: url("../img/header_img01.webp"), url(../img/contents_border.svg), var(--color-primary-200, #FAEE00);
  background-repeat: repeat, repeat-y;
  background-position: left top, left calc(50% + 523px) top;
}
.l-section__contents {
  position: relative;
  margin-inline: 50% auto;
  width: 520px;
  color: rgb(var(--color-base-text));
  background-color: rgb(var(--color-base-white));
  /* filter: drop-shadow(0 0 35px rgba(var(--color-base-black) / .45)); */
  filter: drop-shadow(0 0 5px rgba(var(--color-base-black) / .45));
  overflow-x: clip;
  z-index: var(--z-index-main);
}
@media screen and (max-width: 1024px) {
  .l-section__contents {
    margin-inline: auto 0;
  }
}
@media screen and (max-width: 750px) {
  .l-section__header {
    display: none;
  }
  .l-section__contents {
    margin-inline: auto;
    width: 100%;
  }
}

.l-outline {
  display: grid;
  place-content: center;
  padding-block: 1rem;
  width: calc(100% - 50%);
  height: calc(100vh - 2rem);
  background: url(../img/contents_border.svg);
  background-repeat: repeat-y;
  background-position: right top;
}
.peanuts .l-outline > div {
  height: 100%;
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.peanuts .l-outline > div::-webkit-scrollbar{
  display:none;
}
.peanuts .l-outline > div > p {
  margin-inline: auto;
  width: min(90%, 314px);
}
.peanuts .l-outline > div > p:nth-of-type(2) {
  margin: 40px auto 0;
  width: min(90%, 314px);
}
.peanuts .l-outline .p-outline-nav {
  margin: 24px auto 0;
  width: min(90%, 314px);
}
.peanuts .l-outline .p-outline-nav > ul {
  margin-top: 3.822%;
}
.peanuts .l-outline .p-outline-nav > ul li:not(:nth-child(1)) {
  margin-top: 2.867%;
}
.peanuts .l-outline .p-outline-nav > ul li > a {
  position: relative;
  display: block;
}
.peanuts .l-outline .p-outline-nav > ul li > a:hover::before,
.peanuts .l-outline .p-outline-nav > ul li > a:focus-visible::before {
  content: "";
  position: absolute;
  inset: 0;
}
.peanuts .l-outline .p-outline-nav > ul li:nth-child(1) > a:hover::before,
.peanuts .l-outline .p-outline-nav > ul li:nth-child(1) > a:focus-visible::before {
  background: url(../img/nav_item_01_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-outline .p-outline-nav > ul li:nth-child(2) > a:hover::before,
.peanuts .l-outline .p-outline-nav > ul li:nth-child(2) > a:focus-visible::before {
  background: url(../img/nav_item_02_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-outline .p-outline-nav > ul li:nth-child(3) > a:hover::before,
.peanuts .l-outline .p-outline-nav > ul li:nth-child(3) > a:focus-visible::before {
  background: url(../img/nav_item_03_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-outline .p-outline-nav > ul li:nth-child(4) > a:hover::before,
.peanuts .l-outline .p-outline-nav > ul li:nth-child(4) > a:focus-visible::before {
  background: url(../img/nav_item_04_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-outline .p-outline-nav > ul li:nth-child(5) > a:hover::before,
.peanuts .l-outline .p-outline-nav > ul li:nth-child(5) > a:focus-visible::before {
  background: url(../img/nav_item_05_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-outline .p-outline-nav > ul li > a > span {
  position: absolute;
  top: 50%;
  right: 5.096%;
  transform: translateY(-50%) rotate(-90deg);
  width: 5.096%;
  aspect-ratio: 1;
  overflow: clip;
}
.peanuts .l-outline .p-outline-nav > ul li > a:hover > span img,
.peanuts .l-outline .p-outline-nav > ul li > a:focus-visible > span img {
  animation: arrows 0.3s ease-out;
}
@media screen and (max-width: 1024px) {
  .l-outline {
    width: calc(100% - 520px);
  }
}



:root {


  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;

  /* --design-width: 375; */
  /* --fluid-ratio: calc(min(100vw, 520px) / var(--design-width)); */
  --font-size-12: min(3.2vw, 12px);
  --font-size-14: min(3.734vw, 14px);
  --font-size-16: min(4.267vw, 16px);
  --font-size-18: min(4.8vw, 18px);
  --font-size-20: min(4.8vw, 20px);
  --font-size-24: min(5.334vw, 24px);
  --font-size-32: min(6.4vw, 32px);
  --font-size-40: min(8.534vw, 40px);
  --font-size-48: min(12.8vw, 48px);
  --font-size-64: min(12.8vw, 64px);
  --font-size-80: min(17.067vw, 80px);

  --letter-spacing-02: 0.02em;
  --letter-spacing-04: 0.04em;
  --letter-spacing-08: 0.08em;

  --line-height-12: 1.2;
  --line-height-15: 1.5;
  --line-height-17: 1.7;
  --line-height-18: 1.8;

  --color-neutral-000: #FFFFFF;
  --color-neutral-100: #F2F2F2;
  --color-neutral-200: #D8D8D8;
  --color-neutral-300: #BABABA;
  --color-neutral-400: #9B9B9B;
  --color-neutral-500: #7C7C7C;
  --color-neutral-600: #5D5D5D;
  --color-neutral-700: #3E3E3E;
  --color-neutral-800: #1F1F1F;
  --color-neutral-900: #000000;

  --color-primary-050: #E0EFF4;
  --color-primary-100: #FDEBD3;
  --color-primary-200: #FAEE00;
  --color-primary-300: #B9E3F9;
  --color-primary-400: #97D4D9;
  --color-primary-500: #CDDA00;
  --color-primary-600: #54694C;
  --color-primary-700: #095EAB;
  --color-primary-800: #033981;
  --color-primary-900: #001C57;

  --color-area-sb1: #222222;
  --color-area-s2: #EF939A;
  --color-area-n2: #9BC83A;
  --color-area-umkt: #6CC2B9;

  --border-radius-4: min(1.067vw, 4px);
  --border-radius-8: min(2.134vw, 8px);
  --border-radius-12: min(3.2vw, 12px);
  --border-radius-16: min(4.267vw, 16px);
  --border-radius-24: min(6.4vw, 24px);
  --border-radius-max: 100vmax;
}

html {
  scroll-behavior: smooth;
}

html.is-fixed, body.is-fixed {
  overflow: hidden !important;
}

.fadeIn {
	transform: translateY(20px);
	opacity: 0;
	transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;
}
.fadeIn.is-played {
	transform: translateY(0);
	opacity: 1;
}


.peanuts * {
  --design-width: 375;
  font-size: calc((var(--px) / var(--design-width)) * min(100vw, 520px));
  column-gap: calc((var(--cg) / var(--design-width)) * min(100vw, 520px));
  row-gap: calc((var(--rg) / var(--design-width)) * min(100vw, 520px));
  font-feature-settings: 'palt' on;
}
.peanuts :where(img) {
  width: 100%;
}
.peanuts .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.peanuts section + section {
  border-top: 1px solid var(--color-primary-600, #54694C);
}
.peanuts section > header > p {
  display: grid;
  grid-template-columns: 10.29% 1fr;
  align-items: center;
  --cg: 4;
  --px: 14;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-12);
  letter-spacing: var(--letter-spacing-04);
  color: var(--color-primary-600, #54694C);
}
.peanuts section > header > p::before {
  content: "";
  width: 100%;
  aspect-ratio: 1;
}
.peanuts section > header > h2 {
  margin-top: 5.145%;
}
.peanuts .l-hero {
  color: var(--color-primary-600, #54694C);
}

.peanuts .l-anchor {
  padding: 12.8% 8.134%;
  color: var(--color-primary-600, #54694C);
  background-color: var(--color-primary-200, #FAEE00);
  border-top: none;
}
.peanuts .l-anchor > p {
  margin-top: 6.4%;
  line-height: 0;
}
.peanuts .l-anchor > ul {
  margin-top: 3.822%;
}
.peanuts .l-anchor > ul li:not(:nth-child(1)) {
  margin-top: 2.867%;
}
.peanuts .l-anchor > ul li > a {
  position: relative;
  display: block;
}
.peanuts .l-anchor > ul li > a:hover::before,
.peanuts .l-anchor > ul li > a:focus-visible::before {
  content: "";
  position: absolute;
  inset: 0;
}
.peanuts .l-anchor > ul li:nth-child(1) > a:hover::before,
.peanuts .l-anchor > ul li:nth-child(1) > a:focus-visible::before {
  background: url(../img/nav_item_01_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-anchor > ul li:nth-child(2) > a:hover::before,
.peanuts .l-anchor > ul li:nth-child(2) > a:focus-visible::before {
  background: url(../img/nav_item_02_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-anchor > ul li:nth-child(3) > a:hover::before,
.peanuts .l-anchor > ul li:nth-child(3) > a:focus-visible::before {
  background: url(../img/nav_item_03_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-anchor > ul li:nth-child(4) > a:hover::before,
.peanuts .l-anchor > ul li:nth-child(4) > a:focus-visible::before {
  background: url(../img/nav_item_04_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-anchor > ul li:nth-child(5) > a:hover::before,
.peanuts .l-anchor > ul li:nth-child(5) > a:focus-visible::before {
  background: url(../img/nav_item_05_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-anchor > ul li > a > span {
  position: absolute;
  top: 50%;
  right: 5.096%;
  transform: translateY(-50%);
  width: 5.096%;
  aspect-ratio: 1;
  overflow: clip;
}
.peanuts .l-anchor > ul li > a:hover > span img,
.peanuts .l-anchor > ul li > a:focus-visible > span img {
  animation: arrows 0.3s ease-out;
}
@keyframes arrows {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  49% {
    transform: translateY(20px);
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  51% {
    transform: translateY(-20px);
    opacity: 1;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@media screen and (min-width: 751px) {
  .peanuts .l-anchor > p {
    display: none;
  }
  .peanuts .l-anchor > ul {
    display: none;
  }
}

.peanuts .l-collabo {
  position: relative;
  padding-block: 21.334% 0;
  color: var(--color-primary-600, #54694C);
}
.peanuts .l-collabo > header {
  padding-inline: 8.534%;
}
.peanuts .l-collabo > header > p::before {
  background: url(../img/icon_collabo.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.peanuts .l-collabo > header + p {
  margin-top: 6.4%;
  padding-inline: 8.534%;
  --px: 16;
  line-height: var(--line-height-18);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-collabo > header + div {
  margin-top: 10.667%;
  padding-inline: 8.534%;
}
.peanuts .l-collabo .p-collabo-way {
  margin-top: 10.667%;
  display: flex;
  --cg: 16;
  padding-inline: 8.534%;
}
.peanuts .l-collabo .p-collabo-way > li {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  --cg: 2;
}
.peanuts .l-collabo .p-collabo-way > li > span:nth-of-type(1) {
  display: block;
  inline-size: min(12.8vw, 66px);
}
.peanuts .l-collabo .p-collabo-way > li > span:nth-of-type(2) {
  --px: 12;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-collabo .p-collabo-list {
  display: grid;
  /* grid-template-columns: repeat(2, 49.867%); */
  grid-template-columns: repeat(2, 1fr);
  justify-content: space-between;
  margin-top: 4.267%;
  border-top: 1px solid var(--color-primary-600, #54694C);
}
.peanuts .l-collabo .p-collabo-list button {
  position: relative;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 7;
  --rg: 8;
  padding: 6.4% 8.667% 12.8%;
  color: var(--color-primary-600, #54694C);
  background-color: var(--color-neutral-000, #FFFFFF);
  border-bottom: 1px solid var(--color-primary-600, #54694C);
  text-align: left;
  transition: background-color 0.2s ease-in-out;
  cursor: pointer;
}
.peanuts .l-collabo .p-collabo-list button:hover,
.peanuts .l-collabo .p-collabo-list button:focus-visible {
  background-color: var(--color-primary-200, #FAEE00);
}
.peanuts .l-collabo .p-collabo-list > button:nth-child(odd)::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  transform: translateX(50%);
  background-color: var(--color-primary-600, #54694C);
  z-index: 1;
}
.peanuts .l-collabo .p-collabo-list > button:empty {
  background-color: var(--color-neutral-000, #FFFFFF);
  pointer-events: none;
}
.peanuts .l-collabo .p-collabo-list button > span:nth-of-type(1) {
  display: block;
  margin-inline: auto 0;
  width: 15.49%;
  min-height: 18px;
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(1) {
  margin-top: 7.742%;
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) {
  position: relative;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 5;
  gap: 0;
  padding-block: 5.162% 0;
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > span:nth-of-type(1) {
  position: absolute;
  top: 0;
  right: -5.162%;
  width: 30.968%;
  aspect-ratio: 1;
  transform: translateY(calc(-100% + 4%));
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > span:nth-of-type(2) {
  display: block;
  margin-inline: auto 0;
  padding-bottom: 5.162%;
  width: 15.484%;
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > .menu-name {
  --px: 14;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > .prices {
  margin-top: calc(1lh + 5.162%);
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > .prices > li {
  display: grid;
  grid-template-columns: 20.646% 1fr;
  align-items: center;
  --cg: 2;
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > .prices > li > span:nth-of-type(2) {
  --px: 16;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > .prices.only > li {
  display: grid;
  grid-template-columns: 20.646% 20.646% 1fr;
  align-items: center;
  --cg: 2;
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > .prices.only > li > span:nth-of-type(3) {
  --px: 16;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > .floor-name {
  margin-top: 5.162%;
  padding-block: 5.162% 0;
  --px: 10;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
  border-top: 1px solid var(--color-primary-600, #54694C);
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > .shop-name {
  margin-top: 2.5807%;
  --px: 10;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-collabo .p-collabo-list button > div:nth-of-type(2) > .shop-name > span {
  font-size: 70%;
  font-weight: var(--font-weight-regular);
}
.peanuts .l-collabo .p-collabo-remarks {
  padding: 12.8% 8.5334%;
}
.peanuts .l-collabo .p-collabo-remarks > li {
  display: grid;
  grid-template-columns: auto 1fr;
  --px: 12;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-collabo .p-collabo-remarks > li::before {
  content: "※";
}
.peanuts .l-collabo > span {
  position: absolute;
  top: -6.934vw;
  right: -2.667%;
  width: 32%;
  opacity: 0;
}
.peanuts .l-collabo.is-anm > span {
  opacity: 1;
}
@media screen and (min-width: 751px) {
  .peanuts .l-collabo > span {
    top: -36px;
  }
}

.peanuts .l-novelty {
  position: relative;
  padding-block: 21.334% 0;
  color: var(--color-primary-600, #54694C);
}
.peanuts .l-novelty > header {
  padding-inline: 8.534%;
}
.peanuts .l-novelty > header > p::before {
  background: url(../img/icon_novelty.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.peanuts .l-novelty > header + p {
  margin-top: 6.4%;
  padding-inline: 8.534%;
  --px: 16;
  line-height: var(--line-height-18);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-novelty > header + p > span {
  font-weight: var(--font-weight-bold);
}
.peanuts .l-novelty > div:nth-of-type(1) {
  margin-top: 10.667%;
}
.peanuts .l-novelty .p-novelty-remarks {
  padding: 9.6% 8.5334% 12.8%;
}
.peanuts .l-novelty .p-novelty-remarks > li {
  display: grid;
  grid-template-columns: auto 1fr;
  --px: 12;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-novelty .p-novelty-remarks > li::before {
  content: "※";
}
.peanuts .l-novelty > span {
  position: absolute;
  top: -10.4vw;
  right: -2.667%;
  width: 32%;
  opacity: 0;
}
.peanuts .l-novelty.is-anm > span {
  opacity: 1;
}
@media screen and (min-width: 751px) {
  .peanuts .l-novelty > span {
    top: -54px;
  }
}

.peanuts .l-greeting {
  position: relative;
  padding-block: 21.334% 12.8%;
  color: var(--color-primary-600, #54694C);
}
.peanuts .l-greeting > header {
  padding-inline: 8.534%;
}
.peanuts .l-greeting > header > p::before {
  background: url(../img/icon_greeting.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.peanuts .l-greeting > header + p {
  margin-top: 6.4%;
  padding-inline: 8.534%;
  --px: 16;
  line-height: var(--line-height-18);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-greeting > header + p > span {
  font-weight: var(--font-weight-bold);
}
.peanuts .l-greeting > dl {
  margin-top: 6.4%;
  padding-inline: 8.534%;
}
.peanuts .l-greeting > dl div {
  --px: 14;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-greeting > dl div > dt {
  font-weight: var(--font-weight-bold);
}
.peanuts .l-greeting > div:nth-of-type(1) {
  margin-top: 10.667%;
}
.peanuts .l-greeting > span {
  position: absolute;
  top: -9.6vw;
  right: -2.667%;
  width: 32%;
  opacity: 0;
}
.peanuts .l-greeting.is-anm > span {
  opacity: 1;
}
@media screen and (min-width: 751px) {
  .peanuts .l-greeting > span {
    top: -50px;
  }
}

.peanuts .l-truck {
  position: relative;
  padding-block: 21.334% 12.8%;
  color: var(--color-primary-600, #54694C);
}
.peanuts .l-truck > header {
  padding-inline: 8.534%;
}
.peanuts .l-truck > header > p::before {
  background: url(../img/icon_truck.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.peanuts .l-truck > header + p {
  margin-top: 6.4%;
  padding-inline: 8.534%;
  --px: 16;
  line-height: var(--line-height-18);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-truck .p-truck-remarks {
  padding-inline: 8.5334%;
}
.peanuts .l-truck .p-truck-remarks > li {
  display: grid;
  grid-template-columns: auto 1fr;
  --px: 12;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-truck .p-truck-remarks > li::before {
  content: "※";
}
.peanuts .l-truck > dl {
  margin-top: 6.4%;
  padding-inline: 8.534%;
}
.peanuts .l-truck > dl div {
  --px: 14;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-truck > dl div + div {
  margin-top: 7.718%;
}
.peanuts .l-truck > dl div > dt {
  font-weight: var(--font-weight-bold);
}
.peanuts .l-truck > dl div > dd {
  font-weight: var(--font-weight-medium);
}
.peanuts .l-truck > dl div > dd > p {
  display: grid;
  grid-template-columns: 4.5em 1fr;
}
.peanuts .l-truck > div:nth-of-type(1) {
  margin-top: 6.4%;
  padding-inline: 8.534%;
}
.peanuts .l-truck > div:nth-of-type(2) {
  margin-top: 6.4%;
  padding-inline: 8.534%;
}
.peanuts .l-truck > div:nth-of-type(2) > p {
  margin-inline: auto;
  width: 65.2734%;
}
.peanuts .l-truck > div:nth-of-type(2) > button {
  position: relative;
  display: block;
  margin: 2.5724% auto 0;
  width: 65.2734%;
  color: var(--color-primary-600, #54694C);
  background-color: transparent;
  cursor: pointer;
}
.peanuts .l-truck > div:nth-of-type(2) > button:hover,
.peanuts .l-truck > div:nth-of-type(2) > button:focus-visible {
  color: var(--color-neutral-000, #FFFFFF);
}
.peanuts .l-truck > div:nth-of-type(2) > button:hover::before,
.peanuts .l-truck > div:nth-of-type(2) > button:focus-visible::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../img/topics_item_btn_a_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-truck > div:nth-of-type(2) > button > span {
  position: absolute;
  top: 50%;
  right: 7.882%;
  transform: translateY(-50%) rotate(-90deg);
  width: 7.882%;
  aspect-ratio: 1;
  overflow: clip;
}
.peanuts .l-truck > div:nth-of-type(2) > button > span > span {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  mask-image: url(../img/icon-modal.svg);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  background-color: currentColor;
}
.peanuts .l-truck > span {
  position: absolute;
  top: -9.6vw;
  right: -2.667%;
  width: 32%;
  opacity: 0;
}
.peanuts .l-truck.is-anm > span {
  opacity: 1;
}
@media screen and (min-width: 751px) {
  .peanuts .l-truck > span {
    top: -50px;
  }
}

.peanuts .l-topics {
  padding: 21.334% 8.534% 12.8%;
  color: var(--color-primary-600, #54694C);
  background-color: var(--color-primary-200, #FAEE00);
}
.peanuts .l-topics > div:nth-of-type(1) {
  margin-top: 11.576%;
}
.peanuts .l-topics > div:nth-of-type(1) > article {
  position: relative;
}
.peanuts .l-topics > div:nth-of-type(1) > article + article {
  margin-top: 12.862%;
  padding-top: 12.862%;
}
.peanuts .l-topics > div:nth-of-type(1) > article + article::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 25.724%;
  height: 1px;
  background-color: var(--color-primary-600, #54694C);
}
.peanuts .l-topics > div:nth-of-type(1) > article > h3 {
  --px: 20;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
  text-align: center;
}
.peanuts .l-topics > div:nth-of-type(1) > article > h3 > span {
  font-size: 80%;
}
.peanuts .l-topics > div:nth-of-type(1) > article > p {
  margin-top: 7.718%;
  --px: 14;
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-18);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-topics > div:nth-of-type(1) > article > p > span {
  font-weight: var(--font-weight-bold);
}
.peanuts .l-topics > div:nth-of-type(1) > article > dl {
  margin-top: 7.718%;
}
.peanuts .l-topics > div:nth-of-type(1) > article > dl > div {
  --px: 14;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-topics > div:nth-of-type(1) > article > dl > div:not(:nth-child(1)) {
  margin-top: 7.718%;
}
.peanuts .l-topics > div:nth-of-type(1) > article > dl div > dt {
  font-weight: var(--font-weight-bold);
}
.peanuts .l-topics > div:nth-of-type(1) > article > dl div > dd {
  font-weight: var(--font-weight-medium);
}
.peanuts .l-topics > div:nth-of-type(1) > article > dl div > dd > p {
  display: grid;
  grid-template-columns: 4.5em 1fr;
}
.peanuts .l-topics > div:nth-of-type(1) > article > dl div > dd > a {
  color: var(--color-primary-600, #54694C);
  text-decoration-line: underline;
  text-underline-position: from-font;
  word-break: break-all;
}
.peanuts .l-topics > div:nth-of-type(1) > article > ul {
  margin-top: 2.5724%;
}
.peanuts .l-topics > div:nth-of-type(1) > article > ul > li {
  display: grid;
  grid-template-columns: auto 1fr;
  --px: 12;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.peanuts .l-topics > div:nth-of-type(1) > article > ul > li::before {
  content: "※";
}
.peanuts .l-topics > div:nth-of-type(1) > article > div {
  margin-top: 7.718%;
}
.peanuts .l-topics > div:nth-of-type(1) > article > div > p {
  margin-inline: auto;
  width: 65.2734%;
}
.peanuts .l-topics > div:nth-of-type(1) > article > div > button {
  position: relative;
  display: block;
  margin: 2.5724% auto 0;
  width: 65.2734%;
  color: var(--color-primary-600, #54694C);
  background-color: transparent;
  cursor: pointer;
}
.peanuts .l-topics > div:nth-of-type(1) > article > div > button:hover,
.peanuts .l-topics > div:nth-of-type(1) > article > div > button:focus-visible {
  color: var(--color-neutral-000, #FFFFFF);
}
.peanuts .l-topics > div:nth-of-type(1) > article:nth-child(1) > div.btn_1 > button:hover::before,
.peanuts .l-topics > div:nth-of-type(1) > article:nth-child(1) > div.btn_1 > button:focus-visible::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../img/topics_item_btn_b_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-topics > div:nth-of-type(1) > article:nth-child(1) > div.btn_2 > button:hover::before,
.peanuts .l-topics > div:nth-of-type(1) > article:nth-child(1) > div.btn_2 > button:focus-visible::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../img/topics_item_btn_c_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-topics > div:nth-of-type(1) > article:nth-child(2) > div > button:hover::before,
.peanuts .l-topics > div:nth-of-type(1) > article:nth-child(2) > div > button:focus-visible::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../img/topics_item_btn_d_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-topics > div:nth-of-type(1) > article:nth-child(4) > div > button:hover::before,
.peanuts .l-topics > div:nth-of-type(1) > article:nth-child(4) > div > button:focus-visible::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../img/topics_item_btn_e_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-topics > div:nth-of-type(1) > article:nth-child(5) > div > button:hover::before,
.peanuts .l-topics > div:nth-of-type(1) > article:nth-child(5) > div > button:focus-visible::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../img/topics_item_btn_f_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.peanuts .l-topics > div:nth-of-type(1) > article > div > button > span {
  position: absolute;
  top: 50%;
  right: 7.882%;
  transform: translateY(-50%) rotate(-90deg);
  width: 7.882%;
  aspect-ratio: 1;
  overflow: clip;
}
.peanuts .l-topics > div:nth-of-type(1) > article > div > button > span > span {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  mask-image: url(../img/icon-modal.svg);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  background-color: currentColor;
}

.l-footer {
  padding-block: 10.667% 0;
  border-top: 1px solid var(--color-primary-600, #54694C);
  background-color: var(--color-neutral-000, #FFFFFF);
}
.l-footer a {
  transition: opacity 0.2s ease-in-out;
}
.l-footer a:hover,
.l-footer a:focus-visible {
  opacity: 0.7;
}
.l-footer > p {
  margin: 10.667% 6.134% 0;
  --px: 12;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
  color: var(--color-primary-600, #54694C);
  text-align: center;
}
.l-footer .p-footer-flow {
  position: relative;
  height: 12.8vw;
  background: url(../img/flow_text.svg);
  background-repeat: repeat-x;
  background-position: left center;
  background-size: auto 100%;
  animation: flow 18s linear infinite;
}
@keyframes flow {
  0% {
    background-position: 0px 0px;
  }
  100% {
      background-position: -195.734vw 0px;
  }
}
.l-footer .p-footer-social {
  margin: 12.8% 6.134% 0;
}
.l-footer .p-footer-social > ul:nth-child(1) {
  display: grid;
  place-content: center;
}
.l-footer .p-footer-social > ul:nth-child(2) {
  margin: 10.335% auto 0;
  width: 48.937%;
}
.l-footer .p-footer-social > ul:nth-child(2) > li:not(:nth-child(1)) {
  margin-top: 9.938%;
}
.l-footer .p-footer-address {
  margin: 6.4% 6.134% 0;
  padding-block: 4.267% 5.867%;
  border-top: 1px solid var(--color-neutral-500, #7C7C7C);
}
.l-footer .p-footer-address > p:nth-child(1) {
  margin: 0 auto 0;
  width: 48.937%;
}
.l-footer .p-footer-address > p:nth-child(2) {
  margin-top: 3.648%;
  --px: 12;
  line-height: var(--line-height-17);
  letter-spacing: var(--letter-spacing-04);
  color: var(--color-neutral-900, #000000);
  text-align: center;
}
.l-footer > small {
  display: block;
  padding: 4.267% 1em;
  --px: 12;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
  color: var(--color-neutral-500, #7C7C7C);
  text-align: center;
}

@media screen and (min-width: 751px) {
  .l-footer .p-footer-flow {
    height: 67px;
  }

  @keyframes flow {
    0% {
      background-position: 0px 0px;
    }
    100% {
        background-position: -1018px 0px;
    }
  }
}


.modal-overlay {
  position: fixed;
  inset: 0;
  padding-block: 16px 0;
  justify-content: center;
  background-color: rgba(205, 218, 0, 0.90);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-in, visibility 0.4s ease-in;
  pointer-events: none;
  z-index: 7000;
}
.modal-overlay[aria-hidden=false] {
  display: flex;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.4s ease-in, visibility 0.4s ease-in;
  pointer-events: all;
}
.modal-overlay[aria-hidden=false] .modal-inner {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.4s 0.4s ease-in, transform 0.4s 0.2s ease-in;
}
.modal-overlay .modal-inner {
  position: relative;
  margin: auto;
  width: 100%;
  height: 100%;
  background-color: var(--color-neutral-000, #FFFFFF);
  opacity: 0;
  transform: translateY(20px);
}
.modal-overlay .modal-inner .modal-content {
  /* padding-block: 15.873% 17.7778%; */
  height: 100%;
  color: var(--color-primary-600, #54694C);
  border-top: 1px solid var(--color-primary-600, #54694C);
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.modal-overlay .modal-inner .modal-content::-webkit-scrollbar {
  display: none;
}
.modal-overlay .modal-inner .modal-content article {
  padding-block: 10.667% 17.067%;
}
.modal-overlay .modal-inner .modal-content article > header {
  position: relative;
  padding: 0 8.534% 8.534%;
}
.modal-overlay .modal-inner .modal-content article > header > .number {
  position: absolute;
  top: 0;
  right: 8.534%;
  width: 10.667%;
}
.modal-overlay .modal-inner .modal-content article > header > .floor {
  /* display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  --cg: 2; */
  --px: 14;
  line-height: var(--line-height-18);
  letter-spacing: var(--letter-spacing-04);
}
.modal-overlay .modal-inner .modal-content article > header > .shop-name {
  margin-top: 2.134%;
  --px: 20;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.modal-overlay .modal-inner .modal-content article > header > .shop-name > span {
  font-size: 70%;
  font-weight: var(--font-weight-regular);
}
.modal-overlay .modal-inner .modal-content article > figure {
  position: relative;
}
.modal-overlay .modal-inner .modal-content article > figure > figcaption {
  position: absolute;
  bottom: 2.134%;
  left: 8.5334%;
  right: 8.534%;
  --px: 14;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.modal-overlay .modal-inner .modal-content article > figure > span {
  position: absolute;
  bottom: -2.134%;
  right: 4.267%;
  width: 19.2%;
  aspect-ratio: 1;
  z-index: 1;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) {
  position: relative;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .menu-name {
  padding: 4.267% 8.534%;
  --px: 20;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
  background-color: var(--color-primary-200, #FAEE00);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > p {
  margin-top: 4.267%;
  padding-inline: 8.534%;
  --px: 14;
  line-height: var(--line-height-18);
  letter-spacing: var(--letter-spacing-04);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .menu-remarks {
  margin-top: 4.267%;
  padding-inline: 8.534%;
  --px: 12;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .menu-remarks > li {
  display: grid;
  grid-template-columns: auto 1fr;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .menu-remarks > li::before {
  content: "※";
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .prices {
  display: flex;
  --cg: 16;
  margin-top: 4.267%;
  padding-inline: 8.534%;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .prices > li {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  --cg: 2;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .prices > li > span:nth-of-type(1) {
  display: block;
  inline-size: min(12.8vw, 66px);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .prices > li > span:nth-of-type(2) {
  --px: 20;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-08);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .prices.only > li {
  grid-template-columns: auto auto 1fr;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .prices.only > li > span:nth-of-type(2) {
  display: block;
  inline-size: min(12.8vw, 66px);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .prices.only > li > span:nth-of-type(3) {
  --px: 20;
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-08);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .remarks {
  margin-top: 4.267%;
  padding-inline: 8.534%;
  --px: 12;
  line-height: var(--line-height-15);
  letter-spacing: var(--letter-spacing-04);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .remarks > li {
  display: grid;
  grid-template-columns: auto 1fr;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > .remarks > li::before {
  content: "※";
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(1) > div {
  margin: 4.267% auto 0;
  width: 42.667%;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(2) {
  margin-top: 8.534%;
  padding-block: 8.534%;
  border-top: 1px solid var(--color-primary-600, #54694C);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(2) > a {
  position: relative;
  display: block;
  margin-inline: auto;
  width: 54.134%;
  color: var(--color-primary-600, #54694C);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(2) > a:hover,
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(2) > a:focus-visible {
  color: var(--color-neutral-000, #FFFFFF);
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(2) > a:hover::before,
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(2) > a:focus-visible::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../img/modal/modal_btn_hover.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(2) > a > span {
  position: absolute;
  top: 50%;
  right: 7.882%;
  transform: translateY(-50%) rotate(-90deg);
  width: 7.882%;
  aspect-ratio: 1;
  overflow: clip;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(2) > a > span > span {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  mask-image: url(../img/icon_arrow.svg);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  background-color: currentColor;
}
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(2) > a:hover > span > span,
.modal-overlay .modal-inner .modal-content article > div:nth-of-type(2) > a:focus-visible > span > span {
  animation: arrows 0.3s ease-out;
}
@media print, screen and (min-width: 751px) {
  .modal-overlay .modal-inner {
    width: 520px;
  }
  #modal-popup-map.modal-overlay .modal-inner {
    width: min(90%, 1040px);
  }
  #modal-popup-map.modal-overlay .modal-inner .modal-close {
    width: min(10.77%, 56px);
  }
  #modal-popup-map.modal-overlay .modal-inner .modal-content article {
    padding: 10.667% 3.077%  17.067%;
  }
}
.modal-close {
  display: block;
  margin-inline: auto 0;
  width: 10.77%;
  aspect-ratio: 1;
  background-color: var(--color-neutral-000, #FFFFFF);
  cursor: pointer;
}


.heart {
}