@charset "UTF-8";
/* ==========================================================================
Base
========================================================================== */
/*!
 * @acab/reset.css
 */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; /* もちろん、より直感的なbox-sizingに設定 */
  margin: 0; /* マージンは0に */
  padding: 0; /* パディングも常に0に */
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important; /* hiddenは非表示を意味します */
}

:where(html) {
  -webkit-text-size-adjust: none; /* iOSのランドスケープでテキストが調整されないようにする */
  color-scheme: dark light; /* ユーザーがダークテーマを好む場合、自動的にダークテーマになる */
}

@supports not (min-block-size: 100dvb) {
  :where(html) {
    block-size: 100%;
  }
}
@media (prefers-reduced-motion: no-preference) {
  :where(html:focus-within) {
    scroll-behavior: smooth; /* 何かにフォーカスがある場合のみスムーズスクロール */
  }
}
:where(body) {
  block-size: 100%; /* サファリ以外のブラウザのフォールバック */
  block-size: 100dvb; /* 1dvbは動的ビューポートの長さの1%、100dvbで高さいっぱいに */
  font-family: system-ui, sans-serif; /* timeの代わりにシステムフォントを使用 */
  line-height: 1.5; /* アクセシブルな行の高さ */
  -webkit-font-smoothing: antialiased; /* テキストのレンダリングを改善 */
}

:where(input, button, textarea, select) {
  color: inherit; /* カラーも継承 */
  font: inherit; /* フォーム コントロールは親フォントを継承 */
}

:where(textarea) {
  resize: vertical; /* テキストエリアの水平リサイズを無効に */
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer; /* インタラクティブなものにカーソルを合わせる */
}

:where(:disabled) {
  cursor: not-allowed; /* フォームコントロール無効時のカーソルを許可しない */
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed; /* ラベルにもカーソルを許可しない */
}

:where(button) {
  border-style: solid; /* ボタンのボーダーのスタイルを設定しやすくする */
}

:where(a) {
  text-underline-offset: 0.2ex; /* 下線の上にスペースを追加する */
}

:where(ul, ol) {
  list-style: none; /* ビュレットを削除、必要に応じて手動で追加する */
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block; /* 置換された要素をより予測可能にする */
}

:where(img, picture, svg) {
  block-size: auto; /* アスペクト比を保持 */
  max-inline-size: 100%; /* images should never overflow past the available space */
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word; /* 長い単語は改行 */
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem); /* 見出しの行の高さを減らす */
}

:where(hr) {
  block-size: 0;
  /* より一貫性のある、スタイリッシュなhr */
  border: none;
  -webkit-border-before: 1px solid;
  border-block-start: 1px solid;
  color: inherit;
  overflow: visible;
}

:where(:focus-visible) {
  /* より一貫性のある、カスタマイズ可能なフォーカスのアウトライン */
  outline: 2px solid var(--focus-color, Highlight);
  outline-offset: 2px;
}

/* .visually-hiddenは後のカスケードレイヤーを上書きするために!importantを使用 */
:where(.visually-hidden:not(:focus, :active, :focus-within, .not-visually-hidden)) {
  border: 0 !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

:root {
  --font-family-primary: "Zen Kaku Gothic New", sans-serif;
  --font-family-secondary: "Spicy Rice", serif;
  --color-00-black: #000;
  --color-00-white: #ffffff;
  --color-01-gray: #5c5956;
  --color-02-gray: #262522;
  --color-03-gray: #f0f0f0;
  --color-04-gray: #f5f0e3;
  --color-01-black: #1f1b08;
  --color-01-beige: #dbd5c1;
  --color-02-beige: #e8e5da;
  --color-03-beige: #f2ebdb;
  --color-01-yellow: #ffe200;
  --color-02-yellow: #eec507;
  --color-03-yellow: #fceca0;
  --color-01-red: #e60012;
  --color-02-red: #9e000c;
  --color-03-red: #c40a19;
  --color-01-blue: #087ef8;
  --line-height-l: 1.8;
  --line-height-m: 1.7;
  --line-height-s: 1.4;
  --line-height-xs: 1.3;
}

/* Base
----------------------------------------------------------------- */
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}
html:has(dialog[open]) {
  overflow: hidden;
}

body {
  background-color: var(--color-00-white);
  color: var(--color-00-black);
  font-family: var(--font-family-primary);
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  word-break: break-all;
}

:where(a) {
  color: inherit;
  text-decoration: none;
}
:where(a):hover {
  text-decoration: none;
}
:where(ol),
:where(ul),
:where(dl) {
  list-style: none;
}

:where(em),
:where(i) {
  font-style: normal;
}

:where(h1),
:where(h2),
:where(h3),
:where(h4),
:where(h5),
:where(h6) {
  font-size: 1.6rem;
  font-weight: normal;
}

:where(p) {
  font-size: 14px;
}
@media print, screen and (min-width:768px) {
  :where(p) {
    font-size: 15px;
  }
}

:where(em) {
  font-weight: bold;
}

:where(img) {
  display: block;
  height: auto;
  width: 100%;
}

:where(button) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  cursor: pointer;
}

:where(input) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-00-white);
  border: 1px solid var(--color-03-gray);
}

:where(textarea) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-00-white);
  border: 1px solid var(--color-03-gray);
}

.visually-hidden {
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  clip: rect(0, 0, 0, 0) !important;
  border: 0 !important;
  white-space: nowrap !important;
}

@media print, screen and (max-width:767px) {
  .pc-only {
    display: none !important;
  }
}
@media print, screen and (min-width:768px) {
  .sp-only {
    display: none !important;
  }
}
/* ==========================================================================
Layout
========================================================================== */
/* ==========================================================================
Components
========================================================================== */
.c-hero {
  background-color: var(--color-00-black);
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-hero {
    background-image: url(../images/hero-background-pc.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}
.c-hero__inner {
  aspect-ratio: 780/1300;
  background-image: url(../images/hero-background-sp.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-hero__inner {
    aspect-ratio: 2600/1400;
    background: none;
    margin: 0 auto;
    max-width: 1300px;
  }
}
.c-hero__header {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.92vw;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  position: absolute;
  right: 0;
  top: 2.56vw;
}
@media print, screen and (min-width:768px) {
  .c-hero__header {
    gap: clamp(8.86px, 1.15vw, 15px);
    top: clamp(11.82px, 1.54vw, 20px);
  }
}
.c-hero__header::before {
  background-image: url(../images/icon-cross.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 3.85vw;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  width: 3.85vw;
}
@media print, screen and (min-width:768px) {
  .c-hero__header::before {
    height: clamp(11.82px, 1.54vw, 20px);
    width: clamp(11.82px, 1.54vw, 20px);
  }
}
.c-hero__logo {
  background-color: var(--color-00-white);
  height: 7.69vw;
  width: auto;
}
.c-hero__logo:nth-child(1) {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}
.c-hero__logo:nth-child(2) {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
}
@media print, screen and (min-width:768px) {
  .c-hero__logo {
    height: clamp(23.63px, 3.08vw, 40px);
  }
}
.c-hero__logo a {
  display: block;
  height: 100%;
}
@media (hover: hover) and (pointer: fine) {
  .c-hero__logo a {
    -webkit-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
  }
  .c-hero__logo a:hover {
    opacity: 0.7;
  }
}
.c-hero__logo img {
  display: block;
  height: 100%;
  width: auto;
}
.c-hero__title {
  left: calc(50% - 94.49vw / 2);
  position: absolute;
  top: 29.49vw;
  width: 94.49vw;
}
@media print, screen and (min-width:768px) {
  .c-hero__title {
    left: calc(50% - clamp(360.37px, 46.92vw, 610px) / 2);
    top: clamp(17.72px, 2.31vw, 30px);
    width: clamp(360.37px, 46.92vw, 610px);
  }
}
.c-hero__button {
  bottom: 7.69vw;
  left: calc(50% - 84.62vw / 2);
  margin: 0 auto;
  position: absolute;
  width: 84.62vw;
}
@media print, screen and (min-width:768px) {
  .c-hero__button {
    bottom: clamp(26.58px, 3.46vw, 45px);
    left: calc(50% - clamp(236.31px, 30.77vw, 400px) / 2);
    width: clamp(236.31px, 30.77vw, 400px);
  }
}
.c-hero__button::before {
  background-color: var(--color-02-red);
  border-radius: 100px;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 1.28vw;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-hero__button::before {
    top: clamp(4.73px, 0.62vw, 8px);
  }
}
.c-hero__button-link {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-01-red);
  border-radius: 100px;
  color: var(--color-00-white);
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 3.85vw 2.56vw 4.62vw;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-hero__button-link {
    padding: clamp(11.22px, 1.46vw, 19px) clamp(5.91px, 0.77vw, 10px) clamp(11.82px, 1.54vw, 20px);
    -webkit-transition: -webkit-transform 150ms ease-out;
    transition: -webkit-transform 150ms ease-out;
    transition: transform 150ms ease-out;
    transition: transform 150ms ease-out, -webkit-transform 150ms ease-out;
  }
  .c-hero__button-link:hover {
    -webkit-transform: translateY(clamp(3.54px, 0.46vw, 6px));
    transform: translateY(clamp(3.54px, 0.46vw, 6px));
  }
}
.c-hero__button-link::after {
  background-image: url(../images/icon-arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 3.85vw;
  position: absolute;
  right: 5.13vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 3.85vw;
}
@media print, screen and (min-width:768px) {
  .c-hero__button-link::after {
    height: clamp(8.86px, 1.15vw, 15px);
    right: clamp(11.82px, 1.54vw, 20px);
    width: clamp(8.86px, 1.15vw, 15px);
  }
}
.c-hero__button-text {
  font-size: 5.13vw;
  font-weight: bold;
  letter-spacing: -0.03em;
  line-height: 1.1;
}
@media print, screen and (min-width:768px) {
  .c-hero__button-text {
    font-size: clamp(11.82px, 1.54vw, 20px);
  }
}

.c-title.-gray {
  --fukidashi-color: var(--color-01-gray);
  --main-title-color: var(--color-01-gray);
}
.c-title.-white {
  --fukidashi-color: var(--color-01-gray);
  --main-title-color: var(--color-00-white);
}
.c-title.-black {
  --fukidashi-color: var(--color-00-black);
  --main-title-color: var(--color-00-black);
}
.c-title__icon {
  display: block;
  height: 15.38vw;
  -o-object-fit: contain;
  object-fit: contain;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-title__icon {
    height: clamp(47.26px, 6.15vw, 80px);
  }
}
.c-title__sub {
  aspect-ratio: 132/42;
  background-image: url(../images/fukidashi_background.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  color: var(--fukidashi-color);
  display: block;
  font-size: 3.08vw;
  font-weight: bold;
  height: auto;
  letter-spacing: -0.03em;
  margin: 0 auto;
  margin-top: 3.85vw;
  padding-top: 2.56vw;
  text-align: center;
  width: 48.72vw;
}
@media print, screen and (min-width:768px) {
  .c-title__sub {
    font-size: clamp(9.45px, 1.23vw, 16px);
    margin-top: clamp(17.72px, 2.31vw, 30px);
    padding-top: clamp(8.86px, 1.15vw, 15px);
    width: clamp(147.69px, 19.23vw, 250px);
  }
}
.c-title__main {
  color: var(--main-title-color);
  font-size: 8.97vw;
  font-weight: 900;
  letter-spacing: -0.08em;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-title__main {
    font-size: clamp(26.58px, 3.46vw, 45px);
  }
  .c-title__main br {
    display: none;
  }
}
.c-title__main > span {
  display: inline-block;
  font-size: 80%;
}
.c-title__main > span.-left {
  padding-left: 0.15em;
}
.c-title__main > strong {
  background-color: var(--color-00-black);
  color: var(--color-02-yellow);
  display: inline-block;
  font-size: 150%;
  line-height: 0.5;
  margin-right: -0.1em;
  padding: 0.1em 0.3em 0.3em 0.2em;
  -webkit-transform: rotate(-5deg);
  transform: rotate(-5deg);
}

.c-story {
  background-color: var(--color-01-yellow);
  color: var(--color-01-gray);
  padding: 12.82vw 5.13vw 15.38vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-story {
    padding: clamp(59.08px, 7.69vw, 100px) clamp(29.54px, 3.85vw, 50px);
  }
}
.c-story::before {
  background-image: url(../images/frame1.webp);
  background-position: center;
  background-repeat: repeat-x;
  background-size: auto 100%;
  content: "";
  display: block;
  height: 2.56vw;
  left: 0;
  position: absolute;
  top: 0.64vw;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-story::before {
    height: clamp(7.09px, 0.92vw, 12px);
    top: clamp(1.77px, 0.23vw, 3px);
  }
}
@media print, screen and (min-width:768px) {
  .c-story__inner {
    margin: 0 auto;
    width: clamp(649.85px, 84.62vw, 1100px);
  }
}
@media print, screen and (min-width:768px) {
  .c-story__container {
    position: relative;
  }
}
.c-story__content {
  border: 3px double var(--color-02-yellow);
}
@media print, screen and (max-width:767px) {
  .c-story__content {
    font-size: 3.33vw;
    line-height: 5.33vw;
    margin-top: 3.85vw;
    overflow: hidden;
    padding: 5.13vw 3.85vw 0;
  }
}
@media print, screen and (min-width:768px) {
  .c-story__content {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: grid;
    font-size: clamp(10.63px, 1.38vw, 18px);
    gap: clamp(17.72px, 2.31vw, 30px);
    grid-template-columns: clamp(112.25px, 14.62vw, 190px) 1fr;
    margin: clamp(17.72px, 2.31vw, 30px) auto 0 0;
    padding: clamp(17.72px, 2.31vw, 30px) clamp(17.72px, 2.31vw, 30px) 0;
    width: clamp(425.35px, 55.38vw, 720px);
  }
}
.c-story__content-text {
  font-size: inherit;
  letter-spacing: -0.03em;
  line-height: inherit;
}
@media print, screen and (min-width:768px) {
  .c-story__content-text {
    font-size: clamp(8.86px, 1.15vw, 15px);
    line-height: 1.8;
    margin-right: clamp(29.54px, 3.85vw, 50px);
    padding-bottom: clamp(11.82px, 1.54vw, 20px);
  }
}
@media print, screen and (max-width:767px) {
  .c-story__content-photo {
    clear: both;
    float: left;
    margin: -2.56vw 2.56vw 0 -2.56vw;
    vertical-align: bottom;
    width: 36.92vw;
  }
}
@media print, screen and (min-width:768px) {
  .c-story__content-photo {
    -ms-flex-item-align: end;
    align-self: end;
    margin-left: clamp(-10px, -0.77vw, -5.91px);
  }
}
@media print, screen and (max-width:767px) {
  .c-story__content-space {
    float: left;
    font-size: inherit;
    height: 6.4em;
  }
}
@media print, screen and (min-width:768px) {
  .c-story__content-space {
    position: absolute;
  }
}
.c-story__career {
  background-color: var(--color-02-yellow);
  margin-top: 3.85vw;
  padding: 5.13vw;
}
@media print, screen and (min-width:768px) {
  .c-story__career {
    bottom: clamp(-50px, -3.85vw, -29.54px);
    margin-top: 0;
    padding: clamp(17.72px, 2.31vw, 30px);
    position: absolute;
    right: 0;
    width: clamp(254.03px, 33.08vw, 430px);
  }
}
.c-story__career-title {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.85vw;
  font-weight: bold;
  gap: 2.56vw;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  letter-spacing: -0.03em;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .c-story__career-title {
    font-size: clamp(9.45px, 1.23vw, 16px);
    gap: clamp(11.82px, 1.54vw, 20px);
  }
}
.c-story__career-title::before, .c-story__career-title::after {
  background-color: var(--color-01-gray);
  content: "";
  display: block;
  height: 1px;
  width: 12.82vw;
}
@media print, screen and (min-width:768px) {
  .c-story__career-title::before, .c-story__career-title::after {
    width: clamp(59.08px, 7.69vw, 100px);
  }
}
.c-story__career-text {
  font-size: 3.33vw;
  letter-spacing: -0.03em;
  line-height: 1.5;
  margin-top: 2.56vw;
}
@media print, screen and (min-width:768px) {
  .c-story__career-text {
    font-size: clamp(8.27px, 1.08vw, 14px);
    line-height: 1.8;
    margin-top: clamp(11.82px, 1.54vw, 20px);
  }
}
.c-story__video-title {
  display: block;
  margin-top: 6.41vw;
}
@media print, screen and (min-width:768px) {
  .c-story__video-title {
    margin-top: clamp(47.26px, 6.15vw, 80px);
  }
}
.c-story__video-title-sub {
  aspect-ratio: 132/42;
  background-image: url(../images/fukidashi_background.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  color: var(--fukidashi-color);
  display: block;
  font-size: 3.08vw;
  font-weight: bold;
  height: auto;
  letter-spacing: -0.03em;
  margin: 0 auto;
  margin-top: 3.85vw;
  padding-top: 2.56vw;
  text-align: center;
  width: 48.72vw;
}
@media print, screen and (min-width:768px) {
  .c-story__video-title-sub {
    font-size: clamp(9.45px, 1.23vw, 16px);
    margin-top: clamp(17.72px, 2.31vw, 30px);
    padding-top: clamp(8.86px, 1.15vw, 15px);
    width: clamp(147.69px, 19.23vw, 250px);
  }
}
.c-story__video-title-main {
  color: var(--main-title-color);
  font-size: 8.97vw;
  font-weight: 900;
  letter-spacing: -0.08em;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-story__video-title-main {
    font-size: clamp(26.58px, 3.46vw, 45px);
  }
  .c-story__video-title-main br {
    display: none;
  }
}
.c-story__video-title-main > span {
  display: inline-block;
  font-size: 80%;
}
.c-story__video-title-main > span.-left {
  padding-left: 0.15em;
}

.c-products {
  background-color: var(--color-02-yellow);
  color: var(--color-00-black);
  padding: 12.82vw 5.13vw 15.38vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-products {
    padding: clamp(59.08px, 7.69vw, 100px) clamp(29.54px, 3.85vw, 50px);
  }
}
.c-products::before {
  background-image: url(../images/frame2.webp);
  background-position: center;
  background-repeat: repeat-x;
  background-size: auto 100%;
  content: "";
  display: block;
  height: 8.97vw;
  left: 0;
  position: absolute;
  top: -4.49vw;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-products::before {
    height: clamp(25.99px, 3.38vw, 44px);
    top: clamp(-22px, -1.69vw, -13px);
  }
}
@media print, screen and (min-width:768px) {
  .c-products__inner {
    margin: 0 auto;
    width: clamp(649.85px, 84.62vw, 1100px);
  }
}
.c-products__list {
  margin-top: 6.41vw;
}
@media print, screen and (min-width:768px) {
  .c-products__list {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: clamp(29.54px, 3.85vw, 50px) clamp(14.18px, 1.85vw, 24px);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: clamp(17.72px, 2.31vw, 30px);
  }
  .c-products__list.splide {
    visibility: visible !important;
  }
  .c-products__list .splide__track {
    display: contents !important;
  }
  .c-products__list .splide__list {
    display: contents !important;
  }
}
@media print, screen and (max-width:767px) {
  .c-products__list {
    margin-left: -5.13vw;
    margin-right: -5.13vw;
  }
  .c-products__list .splide__pagination {
    bottom: auto;
    gap: 1.28vw;
    left: auto;
    margin-top: 2.56vw;
    position: relative;
    right: auto;
    top: auto;
  }
  .c-products__list .splide__pagination__page {
    aspect-ratio: 1/1;
    background-color: var(--color-00-black);
    clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
    height: 3.08vw;
    width: 3.08vw;
  }
  .c-products__list .splide__pagination__page.is-active {
    background-color: var(--color-01-yellow);
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  .c-products__list .splide__arrow {
    background-color: var(--color-01-yellow);
    opacity: 1;
  }
  .c-products__list .splide__arrow > svg {
    visibility: hidden;
  }
  .c-products__list .splide__arrow::before {
    background-image: url(../images/icon-arrow-black.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 3.08vw;
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 3.08vw;
  }
  .c-products__list .splide__arrow--prev {
    left: 0;
  }
  .c-products__list .splide__arrow--prev::before {
    -webkit-transform: translate(-50%, -50%) scaleX(-1);
    transform: translate(-50%, -50%) scaleX(-1);
  }
  .c-products__list .splide__arrow--next {
    right: 0;
  }
}
.c-products__item {
  background-color: var(--color-01-black);
  background-position: center bottom, center top;
  background-repeat: no-repeat, no-repeat;
  background-size: contain, contain;
  border: 3px double var(--color-02-yellow);
  padding: 2.56vw 0 6.41vw;
}
@media print, screen and (max-width:767px) {
  .c-products__item {
    margin-left: 5.13vw;
  }
}
@media print, screen and (min-width:768px) {
  .c-products__item {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 clamp(206.77px, 26.92vw, 350px);
    flex: 0 0 clamp(206.77px, 26.92vw, 350px);
    overflow: hidden;
    padding: clamp(5.91px, 0.77vw, 10px) 0 clamp(17.72px, 2.31vw, 30px);
  }
}
.c-products__item.-item1 {
  background-image: url(../images/product_chef1.webp), url(../images/product_background1.webp);
}
.c-products__item.-item2 {
  background-image: url(../images/product_chef2.webp), url(../images/product_background2.webp);
}
.c-products__item.-item3 {
  background-image: url(../images/product_chef3.webp), url(../images/product_background3.webp);
}
.c-products__item.-item4 {
  background-image: url(../images/product_chef4.webp), url(../images/product_background4.webp);
}
.c-products__item.-item5 {
  background-image: url(../images/product_chef5.webp), url(../images/product_background5.webp);
}
.c-products__item-image {
  margin: 0 auto;
  width: 51.28vw;
}
@media print, screen and (min-width:768px) {
  .c-products__item-image {
    width: clamp(118.15px, 15.38vw, 200px);
  }
}
.c-products__item-title {
  margin: 0 auto;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 1;
}
.c-products__item-title::before {
  background-color: var(--color-04-gray);
  clip-path: polygon(2% 0%, 100% 0%, 98% 100%, 0% 100%);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
.c-products__item-title-name {
  display: block;
  font-size: 4.62vw;
  font-weight: 900;
  letter-spacing: -0.1em;
  line-height: 1.1;
  padding: 1.28vw 4.1vw 1.67vw;
  position: relative;
  text-align: center;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-products__item-title-name {
    font-size: clamp(10.63px, 1.38vw, 18px);
    padding: clamp(3.54px, 0.46vw, 6px) clamp(9.45px, 1.23vw, 16px) clamp(4.73px, 0.62vw, 8px);
  }
}
.c-products__item-title-weight {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-01-yellow);
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.85vw;
  font-weight: 900;
  height: 8.97vw;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  letter-spacing: -0.03em;
  line-height: 1;
  position: absolute;
  right: -6.41vw;
  top: -5.13vw;
  width: 8.97vw;
  z-index: 2;
}
@media print, screen and (min-width:768px) {
  .c-products__item-title-weight {
    font-size: clamp(7.68px, 1vw, 13px);
    height: clamp(17.72px, 2.31vw, 30px);
    right: clamp(-20px, -1.54vw, -11.82px);
    top: clamp(-15px, -1.15vw, -8.86px);
    width: clamp(17.72px, 2.31vw, 30px);
  }
}
.c-products__item-title-weight.-up {
  right: -0.64vw;
  top: -6.41vw;
}
@media print, screen and (min-width:768px) {
  .c-products__item-title-weight.-up {
    right: clamp(-5px, -0.38vw, -2.95px);
    top: clamp(-20px, -1.54vw, -11.82px);
  }
}
.c-products__item-fukidashi {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  aspect-ratio: 134/60;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 7.69vw;
  position: relative;
  width: 48.72vw;
}
@media print, screen and (min-width:768px) {
  .c-products__item-fukidashi {
    margin-top: clamp(11.82px, 1.54vw, 20px);
    width: clamp(115.2px, 15vw, 195px);
  }
}
.c-products__item-fukidashi.-right {
  margin-left: 6.41vw;
  margin-right: auto;
  padding-right: 2.56vw;
}
@media print, screen and (min-width:768px) {
  .c-products__item-fukidashi.-right {
    margin-left: clamp(14.77px, 1.92vw, 25px);
    padding-right: clamp(5.91px, 0.77vw, 10px);
  }
}
.c-products__item-fukidashi.-left {
  margin-left: auto;
  margin-right: 6.41vw;
  padding-left: 2.56vw;
}
.c-products__item-fukidashi.-left::before {
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
}
@media print, screen and (min-width:768px) {
  .c-products__item-fukidashi.-left {
    margin-right: clamp(14.77px, 1.92vw, 25px);
    padding-left: clamp(5.91px, 0.77vw, 10px);
  }
}
.c-products__item-fukidashi::before {
  background-image: url(../images/product_fukidashi.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
.c-products__item-fukidashi p {
  color: var(--color-01-gray);
  font-size: 3.08vw;
  font-weight: bold;
  letter-spacing: -0.03em;
  line-height: 1.5;
  position: relative;
  text-align: center;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-products__item-fukidashi p {
    font-size: clamp(7.09px, 0.92vw, 12px);
  }
}

.c-report {
  background-color: var(--color-01-yellow);
  color: var(--color-01-gray);
  padding: 12.82vw 5.13vw 15.38vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-report {
    padding: clamp(59.08px, 7.69vw, 100px) clamp(29.54px, 3.85vw, 50px);
  }
}
.c-report::before {
  background-image: url(../images/frame3.webp);
  background-position: center;
  background-repeat: repeat-x;
  background-size: auto 100%;
  content: "";
  display: block;
  height: 8.97vw;
  left: 0;
  position: absolute;
  top: -4.49vw;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-report::before {
    height: clamp(25.99px, 3.38vw, 44px);
    top: clamp(-22px, -1.69vw, -13px);
  }
}
@media print, screen and (min-width:768px) {
  .c-report__inner {
    margin: 0 auto;
    width: clamp(649.85px, 84.62vw, 1100px);
  }
}
.c-report__title {
  font-size: 7.69vw;
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.1;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-report__title {
    font-size: clamp(26.58px, 3.46vw, 45px);
  }
}

.c-set {
  background-color: var(--color-02-yellow);
  color: var(--color-00-black);
  padding: 12.82vw 5.13vw 15.38vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-set {
    padding: clamp(59.08px, 7.69vw, 100px) clamp(29.54px, 3.85vw, 50px);
  }
}
.c-set::before {
  background-image: url(../images/frame2.webp);
  background-position: center;
  background-repeat: repeat-x;
  background-size: auto 100%;
  content: "";
  display: block;
  height: 8.97vw;
  left: 0;
  position: absolute;
  top: -4.49vw;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-set::before {
    height: clamp(25.99px, 3.38vw, 44px);
    top: clamp(-22px, -1.69vw, -13px);
  }
}
@media print, screen and (min-width:768px) {
  .c-set__inner {
    margin: 0 auto;
    width: clamp(590.77px, 76.92vw, 1000px);
  }
}
.c-set__list {
  display: grid;
  gap: 10.26vw;
  grid-template-columns: 1fr;
  margin-top: 7.69vw;
}
@media print, screen and (min-width:768px) {
  .c-set__list {
    gap: clamp(23.63px, 3.08vw, 40px);
    margin-top: clamp(23.63px, 3.08vw, 40px);
  }
}
.c-set__item {
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  border: 4px solid var(--color-00-black);
  border-radius: 2.56vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-set__item {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-position: bottom clamp(-10px, -0.77vw, -5.91px) center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: clamp(11.82px, 1.54vw, 20px);
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: clamp(17.72px, 2.31vw, 30px);
  }
  .c-set__item:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .c-set__item:nth-child(odd) .c-set__item-button {
    margin-left: auto;
  }
}
.c-set__item-catch {
  color: var(--color-00-white);
  left: 50%;
  position: absolute;
  top: 0;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.c-set__item-catch::before {
  background-color: var(--color-00-black);
  clip-path: polygon(4% 0%, 100% 0%, 96% 100%, 0% 100%);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
.c-set__item-catch span {
  display: block;
  font-size: 3.59vw;
  font-weight: bold;
  letter-spacing: -0.1em;
  line-height: 1.1;
  padding: 1.28vw 4.1vw 1.67vw;
  position: relative;
  text-align: center;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-set__item-catch span {
    font-size: clamp(10.04px, 1.31vw, 17px);
    padding: clamp(3.54px, 0.46vw, 6px) clamp(9.45px, 1.23vw, 16px) clamp(4.73px, 0.62vw, 8px);
  }
}
.c-set__item-image {
  margin: -3.85vw -3.85vw 0;
}
@media print, screen and (min-width:768px) {
  .c-set__item-image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 clamp(212.68px, 27.69vw, 360px);
    flex: 0 0 clamp(212.68px, 27.69vw, 360px);
    margin: clamp(-20px, -1.54vw, -11.82px) 0 0 0;
  }
}
.c-set__item-content {
  padding: 3.85vw 3.85vw 7.69vw;
}
@media print, screen and (min-width:768px) {
  .c-set__item-content {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 0;
  }
}
@media print, screen and (min-width:768px) {
  .c-set__item-content-header {
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: clamp(5.91px, 0.77vw, 10px);
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}
.c-set__item-title {
  font-size: 5.38vw;
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.1;
  margin: -1.92vw -3.85vw 0;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-set__item-title {
    font-size: clamp(15.36px, 2vw, 26px);
    margin: 0;
  }
}
.c-set__item-price {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 6.15vw;
  font-weight: 900;
  gap: 1.03vw;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  letter-spacing: -0.03em;
  line-height: 1.1;
  margin-top: 0.64vw;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-set__item-price {
    font-size: clamp(16.54px, 2.15vw, 28px);
    margin-top: 0;
  }
}
.c-set__item-price > span {
  font-size: 3.08vw;
  font-weight: bold;
  letter-spacing: 0.03em;
}
@media print, screen and (min-width:768px) {
  .c-set__item-price > span {
    font-size: clamp(8.27px, 1.08vw, 14px);
  }
}
.c-set__item-text {
  font-size: 3.59vw;
  letter-spacing: -0.03em;
  line-height: 1.8;
  margin-top: 5.13vw;
}
@media print, screen and (min-width:768px) {
  .c-set__item-text {
    font-size: clamp(9.45px, 1.23vw, 16px);
    margin-top: clamp(11.82px, 1.54vw, 20px);
  }
}
.c-set__item-button {
  margin: 3.85vw auto 0;
  position: relative;
  width: 76.92vw;
}
@media print, screen and (min-width:768px) {
  .c-set__item-button {
    margin: clamp(8.86px, 1.15vw, 15px) 0 0 0;
    width: clamp(177.23px, 23.08vw, 300px);
  }
}
.c-set__item-button::before {
  background-color: var(--color-02-red);
  border-radius: 100px;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 1.28vw;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-set__item-button::before {
    top: clamp(4.73px, 0.62vw, 8px);
  }
}
.c-set__item-button-link {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-01-red);
  border-radius: 100px;
  color: var(--color-00-white);
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 3.33vw 2.56vw 3.59vw;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-set__item-button-link {
    padding: clamp(8.27px, 1.08vw, 14px) clamp(5.91px, 0.77vw, 10px) clamp(8.86px, 1.15vw, 15px);
    -webkit-transition: -webkit-transform 150ms ease-out;
    transition: -webkit-transform 150ms ease-out;
    transition: transform 150ms ease-out;
    transition: transform 150ms ease-out, -webkit-transform 150ms ease-out;
  }
  .c-set__item-button-link:hover {
    -webkit-transform: translateY(clamp(3.54px, 0.46vw, 6px));
    transform: translateY(clamp(3.54px, 0.46vw, 6px));
  }
}
.c-set__item-button-link::after {
  background-image: url(../images/icon-arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 3.08vw;
  position: absolute;
  right: 5.13vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 3.08vw;
}
@media print, screen and (min-width:768px) {
  .c-set__item-button-link::after {
    height: clamp(8.86px, 1.15vw, 15px);
    right: clamp(11.82px, 1.54vw, 20px);
    width: clamp(8.86px, 1.15vw, 15px);
  }
}
.c-set__item-button-text {
  font-size: 4.36vw;
  font-weight: bold;
  letter-spacing: -0.03em;
  line-height: 1.1;
}
@media print, screen and (min-width:768px) {
  .c-set__item-button-text {
    font-size: clamp(10.63px, 1.38vw, 18px);
  }
}
@media print, screen and (max-width:767px) {
  .c-set__item.-item1 {
    background-image: url(../images/set_spice1_sp.webp);
  }
}
@media print, screen and (min-width:768px) {
  .c-set__item.-item1 {
    background-image: url(../images/set_spice1_pc.webp);
  }
}
@media print, screen and (max-width:767px) {
  .c-set__item.-item2 {
    background-image: url(../images/set_spice2_sp.webp);
  }
}
@media print, screen and (min-width:768px) {
  .c-set__item.-item2 {
    background-image: url(../images/set_spice2_pc.webp);
  }
}
@media print, screen and (max-width:767px) {
  .c-set__item.-item3 {
    background-image: url(../images/set_spice3_sp.webp);
  }
}
@media print, screen and (min-width:768px) {
  .c-set__item.-item3 {
    background-image: url(../images/set_spice3_pc.webp);
  }
}
@media print, screen and (max-width:767px) {
  .c-set__item.-item4 {
    background-image: url(../images/set_spice4_sp.webp);
  }
}
@media print, screen and (min-width:768px) {
  .c-set__item.-item4 {
    background-image: url(../images/set_spice4_pc.webp);
  }
}

.c-recipe {
  background-color: var(--color-01-yellow);
  color: var(--color-01-black);
  padding: 12.82vw 5.13vw 15.38vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-recipe {
    padding: clamp(59.08px, 7.69vw, 100px) clamp(29.54px, 3.85vw, 50px);
  }
}
.c-recipe::before {
  background-image: url(../images/frame3.webp);
  background-position: center;
  background-repeat: repeat-x;
  background-size: auto 100%;
  content: "";
  display: block;
  height: 8.97vw;
  left: 0;
  position: absolute;
  top: -4.49vw;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-recipe::before {
    height: clamp(25.99px, 3.38vw, 44px);
    top: clamp(-22px, -1.69vw, -13px);
  }
}
@media print, screen and (min-width:768px) {
  .c-recipe__inner {
    margin: 0 auto;
    width: clamp(649.85px, 84.62vw, 1100px);
  }
}
.c-recipe__chef {
  margin: 6.41vw auto 0;
  position: relative;
  width: 82.05vw;
}
@media print, screen and (min-width:768px) {
  .c-recipe__chef {
    margin-top: clamp(29.54px, 3.85vw, 50px);
    width: clamp(378.09px, 49.23vw, 640px);
  }
}
.c-recipe__chef::before {
  background-color: var(--color-02-yellow);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transform: rotate(5deg);
  transform: rotate(5deg);
  width: 100%;
  z-index: 0;
}
.c-recipe__chef img {
  display: block;
  position: relative;
  z-index: 1;
}
.c-recipe__list {
  display: grid;
  gap: 12.82vw;
  grid-template-columns: 1fr;
  margin: 12.82vw 3.85vw 0;
}
@media print, screen and (min-width:768px) {
  .c-recipe__list {
    gap: clamp(29.54px, 3.85vw, 50px) clamp(35.45px, 4.62vw, 60px);
    grid-template-columns: repeat(2, 1fr);
    margin: clamp(70.89px, 9.23vw, 120px) 0 0;
    padding: 0 clamp(29.54px, 3.85vw, 50px);
  }
}
@media print, screen and (min-width:768px) {
  .c-recipe__item {
    display: grid;
    gap: 0;
    grid-template-columns: 1fr;
    grid-template-columns: subgrid;
    grid-template-rows: auto auto auto 1fr;
  }
}
.c-recipe__item-catch {
  background-color: var(--color-01-black);
  color: var(--color-00-white);
  display: block;
  font-size: 3.59vw;
  font-weight: bold;
  letter-spacing: -0.03em;
  line-height: 1;
  padding: 1.54vw 2.56vw 1.79vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .c-recipe__item-catch {
    font-size: clamp(8.27px, 1.08vw, 14px);
    margin: 0 auto;
    padding: clamp(4.73px, 0.62vw, 8px) clamp(8.86px, 1.15vw, 15px) clamp(5.91px, 0.77vw, 10px);
  }
}
.c-recipe__item-title {
  font-size: 8.97vw;
  font-weight: 900;
  letter-spacing: -0.1em;
  line-height: 1;
  margin-top: 2.56vw;
}
@media print, screen and (min-width:768px) {
  .c-recipe__item-title {
    font-size: clamp(20.68px, 2.69vw, 35px);
    margin-top: clamp(11.82px, 1.54vw, 20px);
    text-align: center;
  }
  .c-recipe__item-title br {
    display: none;
  }
}
.c-recipe__item-photo {
  margin-top: 5.13vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-recipe__item-photo {
    margin-top: clamp(17.72px, 2.31vw, 30px);
  }
}
.c-recipe__item-photo::before {
  background-color: var(--color-02-yellow);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
.c-recipe__item-photo img {
  display: block;
  position: relative;
  z-index: 1;
}
.c-recipe__item-text {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-03-yellow);
  color: var(--color-01-black);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.59vw;
  letter-spacing: -0.03em;
  line-height: 1.6;
  margin-inline: -3.85vw;
  margin-top: 2.56vw;
  padding: 5.13vw 5.13vw;
}
@media print, screen and (min-width:768px) {
  .c-recipe__item-text {
    font-size: clamp(8.86px, 1.15vw, 15px);
    margin-inline: 0;
    margin-top: clamp(11.82px, 1.54vw, 20px);
    padding: clamp(17.72px, 2.31vw, 30px) clamp(17.72px, 2.31vw, 30px);
  }
}
.c-recipe__item.-item1 .c-recipe__item-photo {
  -webkit-transform: rotate(2deg);
  transform: rotate(2deg);
}
.c-recipe__item.-item1 .c-recipe__item-photo::before {
  -webkit-transform: rotate(5deg);
  transform: rotate(5deg);
}
@media print, screen and (max-width:767px) {
  .c-recipe__item.-item1 .c-recipe__item-catch {
    margin-inline: auto 0;
  }
  .c-recipe__item.-item1 .c-recipe__item-title {
    text-align: right;
  }
}
.c-recipe__item.-item2 .c-recipe__item-photo {
  -webkit-transform: rotate(-3deg);
  transform: rotate(-3deg);
}
.c-recipe__item.-item2 .c-recipe__item-photo::before {
  -webkit-transform: rotate(-5deg);
  transform: rotate(-5deg);
}
.c-recipe__item.-item2 .c-recipe__item-title {
  letter-spacing: -0.05em;
}
@media print, screen and (max-width:767px) {
  .c-recipe__item.-item2 .c-recipe__item-catch {
    margin-left: -3.85vw;
  }
  .c-recipe__item.-item2 .c-recipe__item-title {
    margin-left: -3.85vw;
  }
}
.c-recipe__item.-item3 .c-recipe__item-photo {
  -webkit-transform: rotate(3deg);
  transform: rotate(3deg);
}
.c-recipe__item.-item3 .c-recipe__item-photo::before {
  -webkit-transform: rotate(4deg);
  transform: rotate(4deg);
}
@media print, screen and (min-width:768px) {
  .c-recipe__item.-item3 .c-recipe__item-photo {
    -webkit-transform: rotate(2deg);
    transform: rotate(2deg);
  }
  .c-recipe__item.-item3 .c-recipe__item-photo::before {
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg);
  }
}
@media print, screen and (max-width:767px) {
  .c-recipe__item.-item3 .c-recipe__item-catch {
    margin-left: auto;
    margin-right: -3.85vw;
  }
  .c-recipe__item.-item3 .c-recipe__item-title {
    margin-left: auto;
    margin-right: -3.85vw;
    text-align: right;
  }
}
.c-recipe__item.-item4 .c-recipe__item-photo {
  -webkit-transform: rotate(-2deg);
  transform: rotate(-2deg);
}
.c-recipe__item.-item4 .c-recipe__item-photo::before {
  -webkit-transform: rotate(-4deg);
  transform: rotate(-4deg);
}
@media print, screen and (min-width:768px) {
  .c-recipe__item.-item4 .c-recipe__item-photo {
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg);
  }
  .c-recipe__item.-item4 .c-recipe__item-photo::before {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
}
@media print, screen and (max-width:767px) {
  .c-recipe__item.-item4 .c-recipe__item-catch {
    margin-left: auto;
    margin-right: auto;
  }
  .c-recipe__item.-item4 .c-recipe__item-title {
    margin-left: -3.85vw;
    margin-right: -3.85vw;
  }
}

.c-review {
  background-color: var(--color-02-gray);
  color: var(--color-00-black);
  padding: 12.82vw 5.13vw 15.38vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-review {
    padding: clamp(59.08px, 7.69vw, 100px) clamp(29.54px, 3.85vw, 50px);
  }
}
.c-review::before {
  background-image: url(../images/frame2.webp);
  background-position: center;
  background-repeat: repeat-x;
  background-size: auto 100%;
  content: "";
  display: block;
  height: 8.97vw;
  left: 0;
  position: absolute;
  top: -4.49vw;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-review::before {
    height: clamp(25.99px, 3.38vw, 44px);
    top: clamp(-22px, -1.69vw, -13px);
  }
}
@media print, screen and (min-width:768px) {
  .c-review__inner {
    margin: 0 auto;
    width: clamp(649.85px, 84.62vw, 1100px);
  }
}
.c-review__list {
  display: grid;
  gap: 3.85vw;
  grid-template-columns: 1fr;
  margin: 7.69vw 3.85vw 0;
}
@media print, screen and (min-width:768px) {
  .c-review__list {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: clamp(17.72px, 2.31vw, 30px) clamp(14.18px, 1.85vw, 24px);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: clamp(23.63px, 3.08vw, 40px) 0;
  }
}
.c-review__item {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-00-white);
  border-radius: 2.56vw;
  display: grid;
  gap: 3.85vw;
  grid-template-columns: 24.36vw 1fr;
  padding: 6.41vw 3.85vw 3.85vw;
}
@media print, screen and (min-width:768px) {
  .c-review__item {
    border-radius: clamp(7.09px, 0.92vw, 12px);
    -webkit-box-flex: 0;
    -ms-flex: 0 0 clamp(206.77px, 26.92vw, 350px);
    flex: 0 0 clamp(206.77px, 26.92vw, 350px);
    gap: clamp(11.82px, 1.54vw, 20px);
    grid-template-columns: clamp(59.08px, 7.69vw, 100px) 1fr;
    overflow: hidden;
    padding: clamp(14.77px, 1.92vw, 25px) clamp(14.77px, 1.92vw, 25px) clamp(11.82px, 1.54vw, 20px);
  }
}
.c-review__item-image {
  display: block;
}
.c-review__item-image img {
  border-radius: 2.56vw;
  display: block;
  overflow: hidden;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-review__item-image img {
    border-radius: clamp(5.91px, 0.77vw, 10px);
  }
}
.c-review__item figcaption {
  display: block;
  font-size: 3.33vw;
  line-height: 1.1;
  margin-top: 3.21vw;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-review__item figcaption {
    font-size: clamp(8.86px, 1.15vw, 15px);
    margin-top: clamp(5.91px, 0.77vw, 10px);
  }
}
.c-review__item-content p {
  font-size: 3.46vw;
  letter-spacing: 0.03em;
  line-height: 1.7;
  margin-bottom: 0.5em;
}
@media print, screen and (min-width:768px) {
  .c-review__item-content p {
    font-size: clamp(8.86px, 1.15vw, 15px);
  }
}
.c-review__item-content.-long p {
  font-size: 3.33vw;
  letter-spacing: -0.03em;
  line-height: 1.6;
}
@media print, screen and (min-width:768px) {
  .c-review__item-content.-long p {
    font-size: clamp(8.27px, 1.08vw, 14px);
  }
}

.c-flow {
  background-color: var(--color-03-gray);
  color: var(--color-00-black);
  padding: 12.82vw 5.13vw 15.38vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-flow {
    padding: clamp(59.08px, 7.69vw, 100px) clamp(29.54px, 3.85vw, 50px);
  }
}
.c-flow::before {
  background-image: url(../images/frame4.webp);
  background-position: center;
  background-repeat: repeat-x;
  background-size: auto 100%;
  content: "";
  display: block;
  height: 8.97vw;
  left: 0;
  position: absolute;
  top: -4.49vw;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-flow::before {
    height: clamp(25.99px, 3.38vw, 44px);
    top: clamp(-22px, -1.69vw, -13px);
  }
}
@media print, screen and (min-width:768px) {
  .c-flow__inner {
    margin: 0 auto;
    width: clamp(649.85px, 84.62vw, 1100px);
  }
}
.c-flow__list {
  display: grid;
  gap: 2.56vw;
  grid-template-columns: 1fr;
  margin-top: 12.82vw;
}
@media print, screen and (min-width:768px) {
  .c-flow__list {
    gap: clamp(17.72px, 2.31vw, 30px);
    grid-template-columns: repeat(4, 1fr);
    margin-top: clamp(70.89px, 9.23vw, 120px);
  }
}
.c-flow__item {
  background-color: var(--color-00-white);
  margin-left: 20.51vw;
  padding: 5.13vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-flow__item {
    margin: 0;
    padding: clamp(35.45px, 4.62vw, 60px) clamp(11.82px, 1.54vw, 20px) clamp(23.63px, 3.08vw, 40px);
  }
}
.c-flow__item:after {
  background-color: var(--color-01-black);
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  content: "";
  display: block;
  height: 2.56vw;
  left: -14.62vw;
  position: absolute;
  top: 25.64vw;
  width: 5.13vw;
}
@media print, screen and (min-width:768px) {
  .c-flow__item:after {
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    height: clamp(14.18px, 1.85vw, 24px);
    left: auto;
    right: clamp(-23px, -1.77vw, -13.59px);
    top: clamp(41.35px, 5.38vw, 70px);
    width: clamp(8.27px, 1.08vw, 14px);
  }
}
.c-flow__item:last-child:after {
  display: none;
}
.c-flow__item-title {
  font-size: 4.1vw;
  font-weight: 900;
}
@media print, screen and (min-width:768px) {
  .c-flow__item-title {
    font-size: clamp(9.45px, 1.23vw, 16px);
  }
}
.c-flow__item-text {
  font-size: 3.59vw;
  font-weight: bold;
  letter-spacing: 0.03em;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .c-flow__item-text {
    font-size: clamp(7.68px, 1vw, 13px);
    margin-top: clamp(2.95px, 0.38vw, 5px);
  }
}
.c-flow__icon {
  display: block;
  left: -20.51vw;
  position: absolute;
  top: 0;
  width: 17.95vw;
}
@media print, screen and (min-width:768px) {
  .c-flow__icon {
    left: clamp(47.26px, 6.15vw, 80px);
    top: clamp(-50px, -3.85vw, -29.54px);
    width: clamp(41.35px, 5.38vw, 70px);
  }
}
.c-flow__icon-step {
  color: var(--color-03-red);
  display: block;
  font-family: var(--font-family-secondary);
  font-size: 4.23vw;
  line-height: 1;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-flow__icon-step {
    font-size: clamp(11.82px, 1.54vw, 20px);
  }
}
.c-flow__icon-image {
  margin: 1.28vw auto 0;
  width: 17.95vw;
}
@media print, screen and (min-width:768px) {
  .c-flow__icon-image {
    margin-top: clamp(2.95px, 0.38vw, 5px);
    width: clamp(41.35px, 5.38vw, 70px);
  }
}

.c-faq {
  background-color: var(--color-02-gray);
  color: var(--color-00-black);
  padding: 12.82vw 5.13vw 15.38vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-faq {
    padding: clamp(59.08px, 7.69vw, 100px) clamp(29.54px, 3.85vw, 50px);
  }
}
.c-faq::before {
  background-image: url(../images/frame5.webp);
  background-position: center;
  background-repeat: repeat-x;
  background-size: auto 100%;
  content: "";
  display: block;
  height: 8.97vw;
  left: 0;
  position: absolute;
  top: -4.49vw;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-faq::before {
    height: clamp(25.99px, 3.38vw, 44px);
    top: clamp(-22px, -1.69vw, -13px);
  }
}
@media print, screen and (min-width:768px) {
  .c-faq__inner {
    margin: 0 auto;
    width: clamp(590.77px, 76.92vw, 1000px);
  }
}
.c-faq__list {
  display: grid;
  gap: 2.56vw;
  grid-template-columns: 1fr;
  margin: 6.41vw 3.85vw 0;
}
@media print, screen and (min-width:768px) {
  .c-faq__list {
    gap: clamp(11.82px, 1.54vw, 20px);
    grid-template-columns: 1fr;
    margin: clamp(17.72px, 2.31vw, 30px) 0 0;
  }
}
.c-faq__item {
  background-color: var(--color-00-white);
  border-radius: 1.54vw;
}
@media print, screen and (min-width:768px) {
  .c-faq__item {
    border-radius: clamp(7.09px, 0.92vw, 12px);
  }
}
.c-faq__details[open] .c-faq__question-arrow {
  -webkit-transform: rotate(270deg);
  transform: rotate(270deg);
}
.c-faq__question {
  cursor: pointer;
  list-style: none;
}
@media print, screen and (min-width:768px) {
  .c-faq__question .c-faq__question-arrow {
    -webkit-transition: background-color 200ms ease;
    transition: background-color 200ms ease;
  }
  .c-faq__question .c-faq__question-text {
    -webkit-transition: color 200ms ease;
    transition: color 200ms ease;
  }
  .c-faq__question:hover .c-faq__question-arrow {
    background-color: var(--color-02-red);
  }
  .c-faq__question:hover .c-faq__question-text {
    color: var(--color-02-red);
  }
}
.c-faq__question::-webkit-details-marker {
  display: none;
}
.c-faq__question-body {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: var(--color-00-black);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.85vw;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-height: 15.38vw;
  padding: 3.85vw 3.85vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-faq__question-body {
    gap: clamp(17.72px, 2.31vw, 30px);
    min-height: clamp(47.26px, 6.15vw, 80px);
    padding: clamp(11.82px, 1.54vw, 20px) clamp(23.63px, 3.08vw, 40px) clamp(11.82px, 1.54vw, 20px) clamp(29.54px, 3.85vw, 50px);
  }
}
.c-faq__question-icon {
  color: var(--color-02-red);
  font-family: var(--font-family-secondary);
  font-size: 7.69vw;
  line-height: 1.1;
}
@media print, screen and (min-width:768px) {
  .c-faq__question-icon {
    font-size: clamp(21.27px, 2.77vw, 36px);
  }
}
.c-faq__question-text {
  font-size: 3.59vw;
  font-weight: 500;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .c-faq__question-text {
    font-size: clamp(9.45px, 1.23vw, 16px);
  }
}
.c-faq__question-arrow {
  background-color: var(--color-01-black);
  background-image: url(../images/icon-arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.28vw auto;
  border-radius: 50%;
  display: block;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 5.13vw;
  flex: 0 0 5.13vw;
  height: 5.13vw;
  margin-left: auto;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: -webkit-transform 200ms;
  transition: -webkit-transform 200ms;
  transition: transform 200ms;
  transition: transform 200ms, -webkit-transform 200ms;
  width: 5.13vw;
}
@media print, screen and (min-width:768px) {
  .c-faq__question-arrow {
    background-size: clamp(4.73px, 0.62vw, 8px) auto;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 clamp(14.18px, 1.85vw, 24px);
    flex: 0 0 clamp(14.18px, 1.85vw, 24px);
    height: clamp(14.18px, 1.85vw, 24px);
    width: clamp(14.18px, 1.85vw, 24px);
  }
}
.c-faq__answer {
  border-top: 1px solid var(--color-03-gray);
}
.c-faq__answer-body {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.85vw;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding: 3.85vw 3.85vw;
}
@media print, screen and (min-width:768px) {
  .c-faq__answer-body {
    gap: clamp(17.72px, 2.31vw, 30px);
    padding: clamp(11.82px, 1.54vw, 20px) clamp(23.63px, 3.08vw, 40px) clamp(11.82px, 1.54vw, 20px) clamp(29.54px, 3.85vw, 50px);
  }
}
.c-faq__answer-icon {
  color: var(--color-02-red);
  font-family: var(--font-family-secondary);
  font-size: 7.69vw;
  line-height: 1.1;
}
@media print, screen and (min-width:768px) {
  .c-faq__answer-icon {
    font-size: clamp(21.27px, 2.77vw, 36px);
  }
}
.c-faq__answer-text {
  font-size: 3.59vw;
  font-weight: 500;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .c-faq__answer-text {
    font-size: clamp(9.45px, 1.23vw, 16px);
  }
}
.c-faq__answer-text a {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: var(--color-01-blue);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: bold;
  gap: 1.28vw;
  margin-top: 1.28vw;
  text-decoration: underline;
}
@media print, screen and (min-width:768px) {
  .c-faq__answer-text a {
    gap: clamp(3.54px, 0.46vw, 6px);
    margin-top: clamp(5.91px, 0.77vw, 10px);
  }
  .c-faq__answer-text a:hover {
    text-decoration: none;
  }
}
.c-faq__answer-text a:before {
  background-color: var(--color-01-blue);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  content: "";
  display: inline-block;
  height: 2.05vw;
  margin-top: 1.03vw;
  width: 1.54vw;
}
@media print, screen and (min-width:768px) {
  .c-faq__answer-text a:before {
    height: clamp(5.91px, 0.77vw, 10px);
    margin-top: clamp(1.77px, 0.23vw, 3px);
    width: clamp(3.54px, 0.46vw, 6px);
  }
}
.c-faq__answer-note {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.08vw;
  font-weight: 500;
  gap: 0;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  line-height: 1.5;
  margin-top: 2.56vw;
}
@media print, screen and (min-width:768px) {
  .c-faq__answer-note {
    font-size: clamp(8.27px, 1.08vw, 14px);
    margin-top: clamp(11.82px, 1.54vw, 20px);
  }
}
.c-faq__answer-note span:first-child {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  margin-top: 0.77vw;
}
@media print, screen and (min-width:768px) {
  .c-faq__answer-note span:first-child {
    margin-top: clamp(2.36px, 0.31vw, 4px);
  }
}

.c-footer {
  background-color: var(--color-00-black);
  color: var(--color-00-white);
  padding: 3.85vw 3.85vw 25.64vw;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .c-footer {
    padding: clamp(11.82px, 1.54vw, 20px) clamp(11.82px, 1.54vw, 20px) clamp(59.08px, 7.69vw, 100px);
  }
}
.c-footer__copyright {
  font-size: 3.33vw;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .c-footer__copyright {
    font-size: clamp(8.27px, 1.08vw, 14px);
  }
}

.c-video {
  aspect-ratio: 16/9;
  margin: 6.41vw auto 0;
  position: relative;
  width: 82.05vw;
}
@media print, screen and (min-width:768px) {
  .c-video {
    margin-top: clamp(29.54px, 3.85vw, 50px);
    width: clamp(378.09px, 49.23vw, 640px);
  }
}
.c-video::before {
  aspect-ratio: 16/9;
  background-color: var(--color-02-yellow);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transform: rotate(5deg);
  transform: rotate(5deg);
  width: 100%;
  z-index: 0;
}
.c-video iframe {
  display: block;
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 1;
}

.c-cta {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background-color: rgba(0, 0, 0, 0.8);
  bottom: 0;
  height: 20.51vw;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  -webkit-transition: opacity 200ms;
  transition: opacity 200ms;
  width: 100%;
  z-index: 100;
}
@media print, screen and (min-width:768px) {
  .c-cta {
    height: clamp(47.26px, 6.15vw, 80px);
  }
}
.c-cta.-is-scrolled {
  opacity: 1;
  pointer-events: auto;
}
.c-cta__inner {
  height: 100%;
  position: relative;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-cta__inner {
    margin: 0 auto;
    width: clamp(649.85px, 84.62vw, 1100px);
  }
}
.c-cta__button {
  bottom: 3.85vw;
  margin: 0 auto;
  position: absolute;
  right: 1.92vw;
  width: 61.54vw;
}
@media print, screen and (min-width:768px) {
  .c-cta__button {
    bottom: clamp(10.04px, 1.31vw, 17px);
    left: calc(50% - clamp(236.31px, 30.77vw, 400px) / 2);
    right: auto;
    width: clamp(236.31px, 30.77vw, 400px);
  }
}
.c-cta__button::before {
  background-color: var(--color-02-red);
  border-radius: 2.56vw;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 1.28vw;
  width: 100%;
  z-index: -1;
}
@media print, screen and (min-width:768px) {
  .c-cta__button::before {
    border-radius: 100px;
    top: clamp(4.73px, 0.62vw, 8px);
  }
}
.c-cta__button-link {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-01-red);
  border-radius: 2.56vw;
  color: var(--color-00-white);
  cursor: pointer;
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 3.85vw 2.56vw 4.62vw 0;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-cta__button-link {
    border-radius: 100px;
    padding: clamp(7.68px, 1vw, 13px) clamp(5.91px, 0.77vw, 10px) clamp(8.27px, 1.08vw, 14px);
    -webkit-transition: -webkit-transform 150ms ease-out;
    transition: -webkit-transform 150ms ease-out;
    transition: transform 150ms ease-out;
    transition: transform 150ms ease-out, -webkit-transform 150ms ease-out;
  }
  .c-cta__button-link:hover {
    -webkit-transform: translateY(clamp(3.54px, 0.46vw, 6px));
    transform: translateY(clamp(3.54px, 0.46vw, 6px));
  }
}
.c-cta__button-link::after {
  background-image: url(../images/icon-arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 2.56vw;
  position: absolute;
  right: 2.56vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 2.56vw;
}
@media print, screen and (min-width:768px) {
  .c-cta__button-link::after {
    height: clamp(8.86px, 1.15vw, 15px);
    right: clamp(11.82px, 1.54vw, 20px);
    width: clamp(8.86px, 1.15vw, 15px);
  }
}
.c-cta__button-text {
  font-size: 4.36vw;
  font-weight: bold;
  letter-spacing: -0.03em;
  line-height: 1.1;
}
@media print, screen and (min-width:768px) {
  .c-cta__button-text {
    font-size: clamp(11.82px, 1.54vw, 20px);
  }
}
.c-cta .c-cta__image1,
.c-cta .c-cta__image2,
.c-cta .c-cta__image3,
.c-cta .c-cta__image4 {
  aspect-ratio: 1500/940;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  height: auto;
  left: 0;
  position: absolute;
  top: 0;
  width: 14.1vw;
}
@media print, screen and (min-width:768px) {
  .c-cta .c-cta__image1,
  .c-cta .c-cta__image2,
  .c-cta .c-cta__image3,
  .c-cta .c-cta__image4 {
    width: clamp(64.98px, 8.46vw, 110px);
  }
}
.c-cta .c-cta__image1 {
  background-image: url(../images/set_photo1.webp);
  left: 3.21vw;
  top: 1.03vw;
}
@media print, screen and (min-width:768px) {
  .c-cta .c-cta__image1 {
    left: clamp(59.08px, 7.69vw, 100px);
    top: clamp(0.59px, 0.08vw, 1px);
  }
}
.c-cta .c-cta__image2 {
  background-image: url(../images/set_photo2.webp);
  left: 17.95vw;
  top: 1.03vw;
}
@media print, screen and (min-width:768px) {
  .c-cta .c-cta__image2 {
    left: clamp(448.98px, 58.46vw, 760px);
    top: clamp(0.59px, 0.08vw, 1px);
  }
}
.c-cta .c-cta__image3 {
  background-image: url(../images/set_photo3.webp);
  left: 3.21vw;
  top: 9.62vw;
}
@media print, screen and (min-width:768px) {
  .c-cta .c-cta__image3 {
    left: clamp(129.97px, 16.92vw, 220px);
    top: clamp(0.59px, 0.08vw, 1px);
  }
}
.c-cta .c-cta__image4 {
  background-image: url(../images/set_photo4.webp);
  left: 17.95vw;
  top: 9.62vw;
}
@media print, screen and (min-width:768px) {
  .c-cta .c-cta__image4 {
    left: clamp(519.88px, 67.69vw, 880px);
    top: clamp(0.59px, 0.08vw, 1px);
  }
}