@charset "UTF-8";
html {
  box-sizing: border-box;
  /* Prevent adjustments of font size after orientation changes in iOS */
  word-break: normal;
  tab-size: 4;
  -webkit-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

*,
::before,
::after {
  /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  box-sizing: inherit;
  box-sizing: border-box;
  background-repeat: no-repeat;
}

::before,
::after {
  text-decoration: inherit;
  /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  padding: 0;
  /* Reset `padding` and `margin` of all elements */
  margin: 0;
}

/* # =================================================================
     # General elements
     # ================================================================= */
hr {
  height: 0;
  overflow: visible;
  color: inherit;
}

details,
main {
  display: block flow;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden] {
  display: none;
}

abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  border-bottom: none;
}

a {
  background-color: transparent;
}

a:active {
  outline-width: 0;
}

@media (any-hover: hover) {
  a:hover {
    outline-width: 0;
  }
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
}

pre {
  font-size: 1em;
}

b,
strong {
  font-weight: bolder;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  text-indent: 0;
  border-color: inherit;
}

iframe {
  border-style: none;
}

/* # =================================================================
     # Forms
     # ================================================================= */
input {
  border-radius: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  appearance: textfield;
  appearance: none;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  appearance: none;
}

textarea {
  overflow: auto;
  resize: vertical;
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
}

optgroup {
  font-weight: bold;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

/* Apply cursor pointer to button elements */
button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  cursor: pointer;
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  appearance: button;
}

button,
input,
select,
textarea {
  appearance: none;
  background-color: transparent;
  border-style: none;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline-width: 0;
}

select {
  appearance: none;
}

select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentcolor;
}

legend {
  display: table;
  max-width: 100%;
  color: inherit;
  white-space: normal;
  border: 0;
}

::-webkit-file-upload-button {
  font: inherit;
  color: inherit;
  appearance: button;
}

[disabled] {
  cursor: default;
}

/* # =================================================================
     # Specify media element style
     # ================================================================= */
img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

/* # =================================================================
     # Accessibility
     # ================================================================= */
[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled=true] {
  cursor: default;
}

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ul,
ol {
  padding: 0;
  list-style: "";
}

a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s;
}

@property --root-font-size {
  syntax: "<length>";
  inherits: false;
  initial-value: 16px;
}
@font-face {
  font-family: "Local Yu Gothic";
  src: local("YuGothic"), local("Yu Gothic"), local("游ゴシック体");
}
:root {
  /* ===== レイアウト基準（カンプ実測・等倍）===== */
  --viewport-base: 1647;
  /* PC カンプ幅 */
  --viewport-mobile: 375;
  /* SP 基準幅（確定）参考サイト準拠 */
  --base-font-size: 16;
  --inner-base: 1100;
  /* 内容幅（左右余白 273.5px） */
  --inner-max: 1440px;
  --inner-padding-sp: calc(20 * var(--to-rem));
  --inner-width: calc(var(--inner-base) * 100vw / var(--viewport-base));
  --margin-offset: min(0px, calc(-50vw + (var(--inner-width) / 2)));
  --kv-extra: max(0px, calc((100vw - 1647 * var(--to-rem)) * 980 / 1647));
  /* ===== color===== */
  --color-text: #5a1800;
  /* 本文（濃茶） */
  --color-text-sub: #464646;
  /* 注釈 */
  --color-white: #fff;
  --color-bg: #fff;
  --color-red: #d20000;
  /* アクセント・当選人数 */
  --color-red-dark: #820000;
  --color-blue: #1e4c8c;
  /* ハガキ応募系 */
  --color-blue-light: #1e8cdc;
  --color-orange: #db5a32;
  --color-orange-lit: #ffa15a;
  --color-orange-vivid: #ff4923;
  --color-gold: #ffc33f;
  --color-brown-dark: #533400;
  --color-gray: #a3a3a3;
  --color-gray-bg: #e9e9e9;
  --color-gray-bg2: #e6e6e6;
  /* セクション背景 */
  --bg-section-gray: #f4f4f6;
  --grad-gold: linear-gradient(#fff8d1 0%, #fff8d9 33.44%, #ffedbf 67.5%, #ffe5ab 100%);
  /* ===== font ===== */
  /* 游ゴシックの後ろに Noto Sans JP を置く。 */
  --base-font-family: "Local Yu Gothic", "YuGothic", "Yu Gothic", "游ゴシック体", "Noto Sans JP", sans-serif;
  --font-sans: var(--base-font-family);
  /* 注釈だけ Noto Sans JP） */
  --font-note: "Noto Sans JP", var(--base-font-family);
  /* font-weight */
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-bold: 700;
  /* ===== px  rem 変換（テンプレ既存・そのまま使える）===== */
  --to-rem: calc(tan(atan2(1px, var(--root-font-size))) * 1rem);
  /* ===== その他 ===== */
  --z-index-header: 900;
  --z-index-modal: 1000;
  --duration: 0.3s;
  --header-height: 64px;
  --press-in: 0.06s;
  --press-out: 0.22s;
  --ease-press: cubic-bezier(0.3, 0.7, 0.4, 1);
}
@media screen and (width >= 768px) {
  :root {
    --header-height: 80px;
  }
}

/* ===== rem を vw に連動させる（本案件の核・参考サイト準拠）===== */
/* カンプ実測 px を calc(N * var(--to-rem)) で書けば、そのまま流動する */
html {
  overflow-x: clip;
  font-size: calc(var(--base-font-size) * 100vw / var(--viewport-base));
}

@media screen and (width <= 767.98px) {
  :root {
    --inner-width: calc(100vw - var(--inner-padding-sp) * 2);
    --margin-offset: calc(var(--inner-padding-sp) * -1);
  }
  html {
    font-size: calc(var(--base-font-size) * 100vw / var(--viewport-mobile));
  }
}
@media screen and (width >= 1787.59px) {
  :root {
    --inner-width: var(--inner-max);
  }
  html {
    font-size: 17.37px;
    /* = 16 × 1787.59 / 1647 */
  }
}
/* 画像は HTML 側に style="--w:実寸" を持たせる（参考サイト方式）
   --w を書き忘れた img が全幅に伸びないよう 99999 + max-width:100% で二重に止める。

   width は 100% ではなく --w で直に指定する。
 */
img {
  width: calc(var(--w, 99999) * var(--to-rem));
  max-width: 100%;
  height: auto;
}

a[href^=tel] {
  text-decoration: none;
}

@media screen and (width > 767.98px) {
  a[href^=tel] {
    pointer-events: none;
  }
}
a {
  color: inherit;
  -webkit-tap-highlight-color: transparent;
  /* 強調をなくす */
}

@media (any-hover: hover) {
  a:hover {
    text-decoration: none;
  }
}
img,
svg {
  vertical-align: middle;
}

:where(:any-link, button, [type=button], [type=reset], [type=submit], label[for], select, summary, [role=tab], [role=button]) {
  cursor: pointer;
}

:where(button, [type=button], [type=reset], [type=submit]) {
  touch-action: manipulation;
}

:focus:not(:focus-visible) {
  outline: none;
}

input[type=text] {
  font-size: 1rem;
  /* = 16px */
}

textarea {
  field-sizing: content;
}

body {
  position: relative;
  max-width: calc(1647 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
  font-family: var(--base-font-family);
  font-weight: var(--fw-regular);
  color: var(--color-text);
}

.main {
  position: relative;
}

.deco_zone {
  position: relative;
}

.deco_zone::after {
  position: absolute;
  top: calc(3847 * var(--to-rem));
  right: calc(50% - 50vw);
  left: calc(50% - 50vw);
  z-index: 1;
  height: calc(2 * var(--to-rem));
  content: "";
  background: repeating-linear-gradient(90deg, #d20000 0, #d20000 calc(10 * var(--to-rem)), transparent calc(10 * var(--to-rem)), transparent calc(20 * var(--to-rem)));
}

@media screen and (width <= 767.98px) {
  .deco_zone::after {
    display: none;
  }
}
.main > section,
.deco_zone > section,
.footer {
  grid-template-columns: minmax(0, 1fr);
}

.deco_dots_pic {
  display: contents;
}

.deco_dots {
  position: absolute;
  z-index: 1;
  width: calc(14.5 * var(--to-rem));
  max-width: none;
  object-position: top;
  pointer-events: none;
}

.deco_dots.-long {
  top: calc(32.5 * var(--to-rem));
  height: calc(6061 * var(--to-rem));
}

.deco_dots.-short {
  display: none;
}

.deco_dots.-left {
  left: calc(10.5 * var(--to-rem));
}

.deco_dots.-right.-long {
  right: calc(10.5 * var(--to-rem));
}

.deco_chara {
  position: absolute;
  top: calc(577 * var(--to-rem));
  left: calc(2 * var(--to-rem));
  z-index: 2;
  width: calc(43.25 * var(--to-rem));
  max-width: none;
  pointer-events: none;
}

@media screen and (width > 767.98px) {
  .main > section,
  .deco_zone > section,
  .footer {
    grid-template-columns: none;
  }
  .deco_dots {
    width: calc(29 * var(--to-rem));
  }
  .deco_dots.-long {
    top: calc(29 * var(--to-rem));
    height: calc(3783.5 * var(--to-rem));
  }
  .deco_dots.-short {
    top: calc(3884 * var(--to-rem));
    display: revert;
    width: calc(28.5 * var(--to-rem));
    height: calc(2048.5 * var(--to-rem));
  }
  .deco_dots.-left {
    left: calc(50% - 50vw + 35 * var(--to-rem));
  }
  .deco_dots.-right.-long {
    right: calc(50% - 50vw + 64 * var(--to-rem));
  }
  .deco_dots.-right.-short {
    right: calc(50% - 50vw + 67 * var(--to-rem));
  }
  .deco_chara {
    top: calc(2045 * var(--to-rem));
    left: calc(50% - 50vw + 4 * var(--to-rem));
    width: calc(86.5 * var(--to-rem));
  }
}
html {
  scroll-padding-top: calc(68 * var(--to-rem));
}

@media screen and (width > 767.98px) {
  html {
    scroll-padding-top: calc(108 * var(--to-rem));
  }
}
.target {
  scroll-margin-top: calc(38 * var(--to-rem));
}

@media screen and (width > 767.98px) {
  .present {
    scroll-margin-top: calc(96 * var(--to-rem));
  }
  .target {
    scroll-margin-top: calc(128 * var(--to-rem));
  }
}
@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}
.js-anim [data-anim] {
  opacity: 0;
}

.js-anim [data-anim^=stagger] {
  opacity: 1;
}

.js-anim [data-anim^=stagger] > * {
  opacity: 0;
}

@media (prefers-reduced-motion: reduce) {
  .js-anim [data-anim],
  .js-anim [data-anim^=stagger] > * {
    opacity: 1;
  }
}
.btn {
  position: relative;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: var(--fw-bold);
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
}

button.btn {
  padding: 0;
  font-family: inherit;
  color: inherit;
  appearance: none;
  background: none;
  border: 0;
}

:where(.btn, .regist_btn, .regist_link, .howto_post_btn, .xcp_btn, .outline_btn, .howto_nav_link, .lineup_top_btn, .lineup_acc_btn, .hist_cta_link, .pagetop, .xbanner, .gnav_link, .gnav_cta_link, .gnav_toggle, .gnav_close, .footer_shop_item, .contact_info_value a, .outline_note a, .modal_close, .kiyaku_link_btn) {
  --press: 0;
  --nudge: 0;
  --dur: var(--press-out);
}

@media (any-hover: hover) {
  :where(.btn, .regist_btn, .regist_link, .howto_post_btn, .xcp_btn, .outline_btn, .howto_nav_link, .lineup_top_btn, .lineup_acc_btn, .hist_cta_link, .pagetop, .xbanner, .gnav_link, .gnav_cta_link, .gnav_toggle, .gnav_close, .footer_shop_item, .contact_info_value a, .outline_note a, .modal_close, .kiyaku_link_btn):hover {
    --press: 0.5;
    --nudge: 1;
  }
}
:where(.btn, .regist_btn, .regist_link, .howto_post_btn, .xcp_btn, .outline_btn, .howto_nav_link, .lineup_top_btn, .lineup_acc_btn, .hist_cta_link, .pagetop, .xbanner, .gnav_link, .gnav_cta_link, .gnav_toggle, .gnav_close, .footer_shop_item, .contact_info_value a, .outline_note a, .modal_close, .kiyaku_link_btn):focus-visible {
  --press: 0.5;
  --nudge: 1;
}

:where(.btn, .regist_btn, .regist_link, .howto_post_btn, .xcp_btn, .outline_btn, .howto_nav_link, .lineup_top_btn, .lineup_acc_btn, .hist_cta_link, .pagetop, .xbanner, .gnav_link, .gnav_cta_link, .gnav_toggle, .gnav_close, .footer_shop_item, .contact_info_value a, .outline_note a, .modal_close, .kiyaku_link_btn):active {
  --press: 1;
  --nudge: 1;
  --dur: var(--press-in);
}

@media (any-hover: hover) {
  :where(.regist_btn, .howto_post_btn, .xcp_btn, .lineup_top_btn, .btn.-outline, .pagetop, .gnav_cta_link):hover {
    --press: 1;
  }
}
:where(.regist_btn, .howto_post_btn, .xcp_btn, .lineup_top_btn, .btn.-outline, .pagetop, .gnav_cta_link):focus-visible {
  --press: 1;
}

@media (prefers-reduced-motion: reduce) {
  :where(.btn, .regist_btn, .regist_link, .howto_post_btn, .xcp_btn, .outline_btn, .howto_nav_link, .lineup_top_btn, .lineup_acc_btn, .hist_cta_link, .pagetop, .xbanner, .gnav_link, .gnav_cta_link, .gnav_toggle, .gnav_close, .footer_shop_item, .contact_info_value a, .outline_note a, .modal_close, .kiyaku_link_btn),
  :where(.btn, .regist_btn, .regist_link, .howto_post_btn, .xcp_btn, .outline_btn, .howto_nav_link, .lineup_top_btn, .lineup_acc_btn, .hist_cta_link, .pagetop, .xbanner, .gnav_link, .gnav_cta_link, .gnav_toggle, .gnav_close, .footer_shop_item, .contact_info_value a, .outline_note a, .modal_close, .kiyaku_link_btn):active {
    --dur: 0s;
  }
}
.btn.-primary {
  position: relative;
  gap: calc(40 * var(--to-rem));
  min-width: calc(340 * var(--to-rem));
  min-height: calc(60 * var(--to-rem));
  padding-right: calc(45 * var(--to-rem));
  padding-left: calc(20 * var(--to-rem));
  font-size: calc(20 * var(--to-rem));
  color: var(--color-white);
  background: linear-gradient(110deg, transparent 42%, rgba(255, 255, 255, 0.45) 50%, transparent 58%) 110% 0/250% 100% no-repeat, linear-gradient(90deg, #e28027 0%, #d6382d 100%);
  border-radius: 0;
  --hl: calc(3 * 0.5 * var(--to-rem));
  --sy: calc(3 * 0.5 * var(--to-rem));
  box-shadow: inset 0 var(--hl) 0 rgba(255, 255, 255, 0.3019607843), inset 0 calc(-1 * var(--hl)) 0 rgba(0, 0, 0, 0.1490196078), 0 var(--sy) calc(2 * var(--sy)) rgba(0, 0, 0, 0.1215686275);
  transition: scale var(--dur) var(--ease-press);
  scale: calc(1 - 0.03 * max(0, 2 * var(--press, 0) - 1));
}

@media (any-hover: hover) {
  .btn.-primary:hover {
    background-position: -10% 0, 0 0;
    transition: scale var(--dur) var(--ease-press), background-position 0.45s ease-out;
  }
}
.btn.-primary:focus-visible {
  background-position: -10% 0, 0 0;
  transition: scale var(--dur) var(--ease-press), background-position 0.45s ease-out;
}

.btn.-primary::before {
  position: absolute;
  top: calc(4 * var(--to-rem));
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background: var(--color-text);
}

.btn.-primary::after {
  position: absolute;
  bottom: calc(4 * var(--to-rem));
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background: var(--color-text);
}

.btn.-outline {
  --sx: calc(4 * var(--to-rem));
  --sy: calc(4 * var(--to-rem));
  position: relative;
  gap: 0;
  width: calc(300 * var(--to-rem));
  min-width: 0;
  min-height: calc(65 * var(--to-rem));
  padding-right: 0;
  padding-left: 0;
  font-size: calc(52 * var(--to-rem));
  color: #820000;
  background: url("../images/btn-outline-frame@2x.RqBsvdph.webp") 0 0/100% 100% no-repeat;
  filter: drop-shadow(calc(var(--sx) * (1 - var(--press, 0))) calc(var(--sy) * (1 - var(--press, 0))) 0 rgb(230 193 125/min(1, 2 - 2 * var(--press, 0))));
  border-radius: 0;
  transition: translate var(--dur) var(--ease-press), filter var(--dur) var(--ease-press);
  translate: calc(var(--sx) * var(--press, 0)) calc(var(--sy) * var(--press, 0));
}

.btn.-outline::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
  background: linear-gradient(110deg, transparent 42%, rgba(255, 255, 255, 0.75) 50%, transparent 58%) 110% 0/250% 100% no-repeat;
  mask: url("../images/btn-outline-frame@2x.RqBsvdph.webp") 0 0/100% 100% no-repeat;
}

@media (any-hover: hover) {
  .btn.-outline:hover::after {
    background-position: -10% 0;
    transition: background-position 0.45s ease-out;
  }
}
.btn.-outline:focus-visible::after {
  background-position: -10% 0;
  transition: background-position 0.45s ease-out;
}

@media (any-hover: none) and (prefers-reduced-motion: no-preference) {
  .btn.-outline::after {
    animation: btn-shine 3.6s ease-out infinite;
  }
}
@keyframes btn-shine {
  0% {
    background-position: 110% 0;
  }
  12.5%, 100% {
    background-position: -10% 0;
  }
}
.btn.-outline .btn_arrow {
  position: absolute;
  top: calc(24 * var(--to-rem));
  width: calc(15 * var(--to-rem));
  height: calc(16 * var(--to-rem));
  transition: translate var(--dur) var(--ease-press);
  translate: 0 calc(3 * var(--to-rem) * var(--nudge, 0));
}

.btn.-outline .btn_arrow:first-child {
  left: calc(26 * var(--to-rem));
}

.btn.-outline .btn_arrow:last-child {
  right: calc(28 * var(--to-rem));
}

.btn.-small {
  width: calc(174 * var(--to-rem));
  min-height: calc(40 * var(--to-rem));
  font-size: calc(19 * var(--to-rem));
  color: #533400;
  letter-spacing: 0.04em;
  background: linear-gradient(#fff 0%, #fff 45%, #fdf3dd 100%);
  border: calc(1 * var(--to-rem)) solid #533400;
  border-radius: 999px;
  box-shadow: inset 0 0 0 999px rgb(83 52 0/calc(0.12 * var(--press, 0)));
  transition: translate var(--dur) var(--ease-press), box-shadow var(--dur) var(--ease-press);
  translate: 0 calc(var(--to-rem) * max(0, 2 * var(--press, 0) - 1));
}

.btn.-cta {
  width: 100%;
  min-width: 0;
  min-height: calc(96 * var(--to-rem));
  padding-right: calc(24 * var(--to-rem));
  padding-left: calc(24 * var(--to-rem));
  font-size: calc(24 * var(--to-rem));
  border-radius: calc(8 * var(--to-rem));
  box-shadow: 0 calc(4 * var(--to-rem)) calc(8 * var(--to-rem)) rgba(0, 0, 0, 0.1490196078);
}

.btn.-cta.-red {
  color: var(--color-white);
  background: linear-gradient(90deg, #f00 0%, #ff1600 25.3%, #ff5000 77.8%, #ff6a00 100%);
}

.btn.-cta.-white {
  color: #1e1e1e;
  background: var(--color-white);
}

.btn.-cta.-blue {
  color: var(--color-white);
  background: linear-gradient(90deg, #1e8cdc, #1e4c8c);
}

.btn.-primary .btn_arrow,
.btn.-small .btn_arrow {
  position: absolute;
  top: 50%;
  transition: translate var(--dur) var(--ease-press);
  translate: calc(4 * var(--to-rem) * var(--nudge, 0)) -50%;
}

.btn.-primary .btn_arrow {
  right: calc(35 * var(--to-rem));
}

.btn.-small .btn_arrow {
  right: calc(14 * var(--to-rem));
}

.btn_label {
  flex: 0 1 auto;
  width: calc(var(--w) * 0.5 * var(--to-rem));
  max-width: 100%;
  height: auto;
}

.btn.-outline .btn_label {
  width: calc(178.5 * var(--to-rem));
  max-width: none;
  translate: 0 calc(0 * var(--to-rem));
}

.btn.-small {
  padding-right: calc(6 * var(--to-rem));
}

.btn_arrow {
  flex: none;
  width: calc(10.5 * var(--to-rem));
  height: calc(8.5 * var(--to-rem));
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: currentcolor;
}

.btn.-small .btn_arrow {
  width: calc(12 * var(--to-rem));
  height: calc(12 * var(--to-rem));
}

.btn_arrow.-down {
  width: calc(29 * var(--to-rem));
  height: calc(33 * var(--to-rem));
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.btn:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

@media screen and (width > 767.98px) {
  .btn.-primary {
    min-width: calc(660 * var(--to-rem));
    min-height: calc(100 * var(--to-rem));
    padding-right: calc(40 * var(--to-rem));
    padding-left: calc(40 * var(--to-rem));
    font-size: calc(40 * var(--to-rem));
    --hl: calc(3 * var(--to-rem));
    --sy: calc(3 * var(--to-rem));
  }
  .btn.-primary::before {
    top: calc(8 * var(--to-rem));
  }
  .btn.-primary::after {
    bottom: calc(8 * var(--to-rem));
  }
  .btn_label {
    width: calc(var(--w) * var(--to-rem));
  }
  .btn_arrow {
    width: calc(21 * var(--to-rem));
    height: calc(17 * var(--to-rem));
  }
  .btn.-primary .btn_arrow {
    right: calc(45 * var(--to-rem));
  }
  .btn.-cta {
    width: calc(427 * var(--to-rem));
    min-width: auto;
  }
  .btn.-outline {
    --sx: calc(9 * var(--to-rem));
    --sy: calc(9 * var(--to-rem));
    width: calc(610 * var(--to-rem));
    min-width: auto;
    min-height: calc(130 * var(--to-rem));
    padding-right: calc(40 * var(--to-rem));
    padding-left: calc(40 * var(--to-rem));
  }
  .btn.-outline .btn_arrow {
    top: calc(48 * var(--to-rem));
    width: calc(30 * var(--to-rem));
    height: calc(34 * var(--to-rem));
  }
  .btn.-outline .btn_arrow:first-child {
    left: calc(57 * var(--to-rem));
  }
  .btn.-outline .btn_arrow:last-child {
    right: calc(62 * var(--to-rem));
  }
  .btn.-outline .btn_label {
    width: calc(var(--w) * var(--to-rem));
    max-width: 100%;
  }
  .btn.-small {
    width: calc(263 * var(--to-rem));
    min-height: calc(63 * var(--to-rem));
    padding-right: calc(10 * var(--to-rem));
    font-size: calc(28 * var(--to-rem));
    letter-spacing: normal;
    border-width: calc(2 * var(--to-rem));
  }
  .btn.-small .btn_arrow {
    right: calc(21 * var(--to-rem));
    width: calc(20 * var(--to-rem));
    height: calc(18 * var(--to-rem));
  }
}
.anniv {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(468 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
}

.ribbon {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.badge {
  position: absolute;
}

.badge.-fixed {
  position: fixed;
  z-index: calc(var(--z-index-header) - 2);
}

.chara {
  position: absolute;
  pointer-events: none;
}

.gnav {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: var(--z-index-header);
}

.gnav::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: -1;
  height: calc(100 * var(--to-rem));
  content: "";
  background: rgba(255, 255, 255, 0.95);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.gnav.is-scrolled::before {
  height: calc(60 * var(--to-rem));
  opacity: 1;
}

.gnav.is-scrolled .gnav_logo {
  top: calc(14 * var(--to-rem));
  width: calc(96 * var(--to-rem));
}

.gnav.is-scrolled .gnav_toggle {
  top: calc(6 * var(--to-rem));
  transform-origin: top right;
  scale: 0.6;
}

.gnav_logo,
.gnav_toggle {
  transition: top 0.3s ease, width 0.3s ease, scale 0.3s ease;
}

.gnav_logo {
  position: absolute;
  top: calc(10 * var(--to-rem));
  left: calc(10 * var(--to-rem));
  z-index: inherit;
  display: block;
  width: calc(120 * var(--to-rem));
}

.gnav_toggle {
  position: absolute;
  top: calc(10 * var(--to-rem));
  right: calc(10 * var(--to-rem));
  z-index: inherit;
  width: calc(61 * var(--to-rem));
  height: calc(80 * var(--to-rem));
  padding: 0;
  cursor: pointer;
  background: none;
  border: none;
}

.gnav_toggle::before {
  position: absolute;
  top: calc(15 * var(--to-rem));
  left: 0;
  width: calc(61 * var(--to-rem));
  height: calc(65 * var(--to-rem));
  content: "";
  background: url("../images/gnav-menu-shape@2x.OwldH4iN.png") no-repeat center/contain;
  transition: scale var(--dur) var(--ease-press);
  scale: calc(1 - 0.08 * max(0, 2 * var(--press, 0) - 1));
}

.gnav_toggle_label {
  position: absolute;
  top: 0;
  left: calc(8 * var(--to-rem));
  width: calc(44 * var(--to-rem));
}

.gnav_toggle_icon {
  position: absolute;
  top: calc(46.1 * var(--to-rem));
  left: calc(20 * var(--to-rem));
  display: block;
  width: calc(24 * var(--to-rem));
  height: calc(4 * var(--to-rem));
  background: #78582e;
  border-radius: 999px;
  transition: background var(--duration);
}

.gnav_toggle_icon::before,
.gnav_toggle_icon::after {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  background: #78582e;
  border-radius: 999px;
  transition: transform var(--duration), inset var(--duration);
}

.gnav_toggle_icon::before {
  top: calc(-10 * var(--to-rem));
  left: calc(3 * var(--to-rem));
}

.gnav_toggle_icon::after {
  top: calc(10 * var(--to-rem));
  left: calc(-3 * var(--to-rem));
}

.gnav_drawer {
  position: fixed;
  inset: 0;
  z-index: calc(var(--z-index-header) - 1);
  display: none;
  padding: calc(29 * var(--to-rem)) 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  background: #d3d3d3;
}

.gnav_toggle.is-open {
  visibility: hidden;
}

.gnav:has(.gnav_toggle.is-open) .gnav_logo {
  visibility: hidden;
}

.gnav_panel {
  position: relative;
  box-sizing: border-box;
  width: calc(318 * var(--to-rem));
  min-height: calc(603 * var(--to-rem));
  padding: calc(23 * var(--to-rem)) calc(30 * var(--to-rem)) calc(35.5 * var(--to-rem));
  margin: auto;
  border-radius: calc(20 * var(--to-rem));
}

.gnav_panel::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  content: "";
  background: url("../images/menu-border-sp.piwqkavr.png") no-repeat center;
  background-size: 100% 100%;
}

.gnav_panel::after {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: calc(100% - 1.5 * var(--to-rem));
  height: calc(100% - 1.5 * var(--to-rem));
  content: "";
  background-color: #fff;
  border-radius: calc(29 * var(--to-rem));
}

.gnav_close {
  position: absolute;
  top: calc(-8 * var(--to-rem));
  right: calc(-18.5 * var(--to-rem));
  z-index: 1;
  padding: 0;
  cursor: pointer;
  background: none;
  border: 0;
}

.gnav_close img {
  display: block;
  transition: scale var(--dur) var(--ease-press);
  scale: calc(1 - 0.08 * max(0, 2 * var(--press, 0) - 1));
}

.gnav_panel_logo {
  margin-top: calc(2 * var(--to-rem));
  margin-bottom: calc(31 * var(--to-rem));
}

.gnav_contents {
  max-width: calc(245 * var(--to-rem));
  padding-bottom: calc(4 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  border-bottom: calc(2 * var(--to-rem)) solid #d7a66f;
}

.gnav_list {
  padding-left: calc(26 * var(--to-rem));
  margin-top: calc(40 * var(--to-rem));
  list-style: none;
}

.gnav_item + .gnav_item {
  margin-top: calc(24 * var(--to-rem));
}

.gnav_item:nth-child(2) {
  margin-top: calc(18.5 * var(--to-rem));
}

.gnav_item:nth-child(3) {
  margin-top: calc(17.75 * var(--to-rem));
}

.gnav_item:nth-child(4) {
  margin-top: calc(19 * var(--to-rem));
}

.gnav_item:nth-child(5) {
  margin-top: calc(20.5 * var(--to-rem));
}

.gnav_link {
  display: flex;
  gap: calc(14 * var(--to-rem));
  align-items: center;
  text-decoration: none;
}

.gnav_item.-sub .gnav_link img {
  margin-left: calc(6 * var(--to-rem));
}

.gnav_dot {
  flex: none;
}

.gnav_label {
  transition: translate var(--dur) var(--ease-press);
  translate: calc(4 * var(--to-rem) * var(--nudge, 0)) 0;
}

.gnav_item.-sub {
  position: relative;
  padding-left: calc(54 * var(--to-rem));
}

.gnav_item.-sub::before {
  position: absolute;
  top: calc(-13 * var(--to-rem));
  bottom: 50%;
  left: calc(42 * var(--to-rem));
  width: calc(2 * var(--to-rem));
  content: "";
  background: #820000;
}

.gnav_item.-sub::after {
  position: absolute;
  bottom: calc(50% - 1 * var(--to-rem));
  left: calc(42 * var(--to-rem));
  width: calc(13 * var(--to-rem));
  height: calc(2 * var(--to-rem));
  content: "";
  background: #820000;
}

.gnav_item.-sub + .gnav_item.-sub::before {
  top: calc(-55 * var(--to-rem));
}

.gnav_cta {
  display: grid;
  gap: calc(15 * var(--to-rem));
  justify-content: center;
  margin-top: calc(28 * var(--to-rem));
}

.gnav_cta_link {
  --sy: calc(4 * var(--to-rem));
  position: relative;
  display: block;
  width: calc(260 * var(--to-rem));
  height: calc(50 * var(--to-rem));
  line-height: 0;
  border-radius: 999px;
  box-shadow: 0 calc(var(--sy) * (1 - var(--press, 0))) 0 rgb(var(--shadow)/min(1, 2 - 2 * var(--press, 0)));
  transition: translate var(--dur) var(--ease-press), box-shadow var(--dur) var(--ease-press);
  translate: 0 calc(var(--sy) * var(--press, 0));
}

.gnav_cta_link.-web {
  --shadow: 230 175 125;
  --line: #820000;
  background: linear-gradient(112.36deg, #e28027 12.5%, #d6382d 93.7%);
}

.gnav_cta_link.-post {
  --shadow: 115 190 220;
  --line: #8cd2ff;
  background: #1e8cdc;
}

.gnav_cta_link::before {
  position: absolute;
  inset: calc(2.25 * var(--to-rem));
  content: "";
  border: calc(1.5 * var(--to-rem)) solid var(--line);
  border-radius: 999px;
}

.gnav_cta_link::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
  background: linear-gradient(110deg, transparent 42%, rgba(255, 255, 255, 0.55) 50%, transparent 58%) 110% 0/250% 100% no-repeat;
  border-radius: 999px;
}

@media (any-hover: hover) {
  .gnav_cta_link:hover::after {
    background-position: -10% 0;
    transition: background-position 0.45s ease-out;
  }
}
.gnav_cta_link:focus-visible::after {
  background-position: -10% 0;
  transition: background-position 0.45s ease-out;
}

@media (any-hover: none) and (prefers-reduced-motion: no-preference) {
  .gnav_cta_link::after {
    animation: btn-shine 3.6s ease-out infinite;
  }
  .gnav_cta_link.-post::after {
    animation-delay: 0.25s;
  }
}
.gnav_cta_label {
  position: absolute;
  top: calc(15.15 * var(--to-rem));
  left: calc(29 * var(--to-rem));
  width: calc(176.75 * var(--to-rem));
  max-width: none;
  height: auto;
}

.gnav_cta_link.-post .gnav_cta_label {
  left: calc(53.25 * var(--to-rem));
  width: calc(128.75 * var(--to-rem));
}

.gnav_cta_arrow {
  position: absolute;
  top: calc(18.9 * var(--to-rem));
  left: calc(227.25 * var(--to-rem));
  width: calc(14.4 * var(--to-rem));
  height: calc(12.2 * var(--to-rem));
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: var(--color-white);
}

.gnav_cta_link:focus-visible {
  outline: 3px solid var(--line);
  outline-offset: 3px;
}

.gnav_promo {
  margin-top: calc(54.25 * var(--to-rem));
  text-align: center;
}

.gnav_promo_label {
  padding-right: calc(11 * var(--to-rem));
  margin-bottom: calc(4 * var(--to-rem));
  line-height: 0;
}

.gnav_promo .xbanner {
  display: block;
  width: calc(260 * var(--to-rem));
  margin-left: calc(-1 * var(--to-rem));
}

.gnav_promo .xbanner_img {
  width: 100%;
}

.gnav_chara {
  display: none;
  max-width: calc(170 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.gnav_promo.-ended .gnav_promo_label,
.gnav_promo.-ended .xbanner {
  display: none;
}

.gnav_promo.-ended .gnav_chara {
  display: block;
}

@media (any-hover: hover) {
  .gnav_logo_link:hover {
    opacity: 0.7;
    transition: opacity var(--duration);
  }
  .gnav_toggle:hover::before,
  .gnav_close:hover img {
    animation: gnav-wobble 0.6s var(--ease-press);
  }
  .gnav_link:hover .gnav_dot {
    animation: gnav-hop 0.5s var(--ease-press);
  }
}
.gnav_toggle:focus-visible::before,
.gnav_close:focus-visible img {
  animation: gnav-wobble 0.6s var(--ease-press);
}

.gnav_link:focus-visible .gnav_dot {
  animation: gnav-hop 0.5s var(--ease-press);
}

@keyframes gnav-wobble {
  0%, 100% {
    rotate: 0deg;
  }
  30% {
    rotate: -9deg;
  }
  60% {
    rotate: 6deg;
  }
  80% {
    rotate: -2deg;
  }
}
@keyframes gnav-hop {
  0%, 100% {
    translate: 0 0;
  }
  35% {
    translate: 0 calc(-6 * var(--to-rem));
  }
  65% {
    translate: 0 calc(1 * var(--to-rem));
  }
}
@media (prefers-reduced-motion: reduce) {
  .gnav_toggle:hover::before,
  .gnav_close:hover img,
  .gnav_link:hover .gnav_dot,
  .gnav_toggle:focus-visible::before,
  .gnav_close:focus-visible img,
  .gnav_link:focus-visible .gnav_dot {
    animation: none;
  }
}
.gnav_link:focus-visible,
.gnav_logo_link:focus-visible,
.gnav_toggle:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

.gnav_logo_link:focus-visible {
  opacity: 0.7;
}

@media screen and (width > 767.98px) {
  .gnav::before {
    height: calc(210 * var(--to-rem));
  }
  .gnav_panel::after {
    width: calc(100% - 3.5 * var(--to-rem));
    height: calc(100% - 3.5 * var(--to-rem));
    border-radius: 4.66%/8.86%;
  }
  .gnav_panel::before {
    background: url("../images/menu-border-pc.DtHzKxm7.png") no-repeat;
    background-size: 100% 100%;
  }
  .gnav.is-scrolled::before {
    height: calc(100 * var(--to-rem));
  }
  .gnav.is-scrolled .gnav_logo {
    top: calc(25 * var(--to-rem));
    width: calc(150 * var(--to-rem));
  }
  .gnav.is-scrolled .gnav_toggle {
    top: calc(10 * var(--to-rem));
    transform-origin: top right;
    scale: 0.5;
  }
  .gnav_logo {
    top: calc(32 * var(--to-rem));
    left: calc(45 * var(--to-rem));
    width: calc(200 * var(--to-rem));
  }
  .gnav:has(.gnav_toggle.is-open) .gnav_logo {
    visibility: visible;
  }
  .gnav_toggle {
    top: calc(40 * var(--to-rem));
    right: calc(78 * var(--to-rem));
    width: calc(122 * var(--to-rem));
    height: calc(160 * var(--to-rem));
  }
  .gnav_toggle::before {
    top: calc(30 * var(--to-rem));
    width: calc(122 * var(--to-rem));
    height: calc(130 * var(--to-rem));
  }
  .gnav_toggle_label {
    left: calc(17 * var(--to-rem));
    width: calc(88 * var(--to-rem));
  }
  .gnav_toggle_icon {
    top: calc(92.2 * var(--to-rem));
    left: calc(41 * var(--to-rem));
    width: calc(49 * var(--to-rem));
    height: calc(9 * var(--to-rem));
  }
  .gnav_toggle_icon::before {
    top: calc(-19 * var(--to-rem));
    left: calc(6 * var(--to-rem));
  }
  .gnav_toggle_icon::after {
    top: calc(19 * var(--to-rem));
    left: calc(-6 * var(--to-rem));
  }
  .gnav_drawer {
    padding: calc(140 * var(--to-rem)) 0;
  }
  .gnav_panel {
    display: grid;
    grid-template: "head list" auto "promo cta" 1fr/calc(612 * var(--to-rem)) 1fr;
    align-items: start;
    width: calc(1400 * var(--to-rem));
    min-height: calc(727 * var(--to-rem));
    padding: calc(129 * var(--to-rem)) calc(116 * var(--to-rem)) calc(81.5 * var(--to-rem));
    border-width: calc(6 * var(--to-rem));
    border-radius: calc(40 * var(--to-rem));
  }
  .gnav_panel_logo {
    display: none;
  }
  .gnav_close {
    top: calc(-70 * var(--to-rem));
    right: calc(-45 * var(--to-rem));
  }
  .gnav_close img {
    width: calc(122 * var(--to-rem));
  }
  .gnav_contents {
    grid-area: head;
    width: 100%;
    max-width: calc(498 * var(--to-rem));
    padding-bottom: calc(18 * var(--to-rem));
    margin-top: calc(-4 * var(--to-rem));
    margin-right: initial;
    margin-left: calc(-110 * var(--to-rem));
    border-bottom-width: calc(3 * var(--to-rem));
  }
  .gnav_contents img {
    width: calc(200 * var(--to-rem));
    margin-right: auto;
    margin-left: auto;
  }
  .gnav_list {
    grid-area: list;
    padding-left: 0;
    margin-top: calc(-58 * var(--to-rem));
  }
  .gnav_item + .gnav_item {
    margin-top: calc(35 * var(--to-rem));
  }
  .gnav_item:nth-child(3) {
    margin-top: calc(37 * var(--to-rem));
  }
  .gnav_item:nth-child(4) {
    margin-top: calc(35.5 * var(--to-rem));
  }
  .gnav_item:nth-child(5) {
    margin-top: calc(37 * var(--to-rem));
  }
  .gnav_link {
    gap: calc(29 * var(--to-rem));
  }
  .gnav_dot {
    width: calc(27 * var(--to-rem));
  }
  .gnav_label {
    width: auto;
  }
  .gnav_item:nth-child(1) .gnav_label {
    width: calc(74 * var(--to-rem));
  }
  .gnav_item:nth-child(2) .gnav_label {
    width: calc(281 * var(--to-rem));
  }
  .gnav_item:nth-child(3) .gnav_label {
    width: calc(311 * var(--to-rem));
  }
  .gnav_item:nth-child(4) .gnav_label {
    width: calc(132 * var(--to-rem));
  }
  .gnav_item:nth-child(5) .gnav_label {
    width: calc(197 * var(--to-rem));
  }
  .gnav_item.-sub {
    padding-left: calc(100 * var(--to-rem));
  }
  .gnav_item.-sub::before {
    top: calc(-15.5 * var(--to-rem));
    bottom: calc(50% - 6 * var(--to-rem));
    left: calc(73 * var(--to-rem));
    width: calc(4 * var(--to-rem));
  }
  .gnav_item.-sub::after {
    bottom: calc(50% - 6 * var(--to-rem));
    left: calc(73 * var(--to-rem));
    width: calc(23 * var(--to-rem));
    height: calc(4 * var(--to-rem));
  }
  .gnav_item.-sub + .gnav_item.-sub::before {
    top: calc(-85.5 * var(--to-rem));
  }
  .gnav_cta {
    grid-area: cta;
    gap: calc(30 * var(--to-rem));
    justify-content: start;
    margin-top: calc(49.5 * var(--to-rem));
    margin-left: calc(52 * var(--to-rem));
  }
  .gnav_cta_link {
    --sy: calc(8 * var(--to-rem));
    width: calc(470 * var(--to-rem));
    height: calc(90 * var(--to-rem));
  }
  .gnav_cta_link::before {
    inset: calc(4.6 * var(--to-rem));
    border-width: calc(2.8 * var(--to-rem));
  }
  .gnav_cta_label {
    top: calc(26 * var(--to-rem));
    left: calc(44.8 * var(--to-rem));
    width: calc(335 * var(--to-rem));
  }
  .gnav_cta_link.-post .gnav_cta_label {
    top: calc(27.5 * var(--to-rem));
    left: calc(113.3 * var(--to-rem));
    width: calc(244 * var(--to-rem));
  }
  .gnav_cta_arrow {
    top: calc(34 * var(--to-rem));
    left: calc(410.7 * var(--to-rem));
    width: calc(26 * var(--to-rem));
    height: calc(22 * var(--to-rem));
  }
  .gnav_promo {
    grid-area: promo;
    width: calc(451 * var(--to-rem));
    margin-top: calc(49 * var(--to-rem));
    margin-left: calc(3 * var(--to-rem));
  }
  .gnav_promo_label img {
    width: calc(187 * var(--to-rem));
  }
  .gnav_promo_label {
    padding-right: calc(22 * var(--to-rem));
    margin-bottom: calc(8 * var(--to-rem));
  }
  .gnav_chara {
    max-width: calc(358 * var(--to-rem));
  }
  .gnav_chara img {
    width: 100%;
  }
  .gnav_promo .xbanner {
    width: calc(451 * var(--to-rem));
    margin-left: 0;
  }
}
.header {
  font-size: calc(18 * var(--to-rem));
  font-weight: var(--fw-bold);
  font-feature-settings: "palt" 1;
  line-height: 1.6;
  color: var(--color-text);
  text-align: center;
  letter-spacing: 0.0278em;
}

.receipt_head {
  letter-spacing: 0.0278em;
}

.header.-white {
  color: var(--color-white);
}

.header_lead {
  font-size: calc(22 * var(--to-rem));
  font-weight: var(--fw-bold);
  font-feature-settings: "palt" 1;
  line-height: 1.545;
  color: var(--color-text);
  text-align: left;
  letter-spacing: 0.025em;
}

@media screen and (width > 767.98px) {
  .header {
    font-size: calc(30 * var(--to-rem));
    font-feature-settings: normal;
    letter-spacing: 0.04em;
  }
  .receipt_head {
    letter-spacing: 0.04em;
  }
  .header_lead {
    text-align: center;
  }
}
.modal {
  position: fixed;
  inset: 0;
  z-index: var(--z-index-modal);
  display: block flex;
  padding: calc(34 * var(--to-rem)) calc(20 * var(--to-rem));
  overflow-y: auto;
  visibility: hidden;
  background: rgba(0, 0, 0, 0.6);
  opacity: 0;
  transition: opacity var(--duration) ease, visibility 0s ease var(--duration);
}

.modal.is-open {
  visibility: visible;
  opacity: 1;
  transition: opacity var(--duration) ease, visibility 0s;
}

.modal_body {
  position: relative;
  width: 100%;
  max-width: calc(311.5 * var(--to-rem));
  padding: calc(79 * var(--to-rem)) calc(41 * var(--to-rem)) calc(110 * var(--to-rem)) calc(41 * var(--to-rem));
  margin: auto;
  border-radius: calc(21.5 * var(--to-rem));
}

.modal_body::before {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
  content: "";
  background: url("../images/modal-border-sp.BhYpmtHT.webp") no-repeat center;
  background-size: 100% 100%;
}

.modal_body::after {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: calc(100% - 1.5 * var(--to-rem));
  height: calc(100% - 1.5 * var(--to-rem));
  content: "";
  background: var(--color-white);
  border-radius: inherit;
}

.modal_img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: calc(21.5 * var(--to-rem));
}

.modal_close {
  position: absolute;
  top: calc(-7 * var(--to-rem));
  right: calc(-21.5 * var(--to-rem));
  z-index: 1;
  padding: 0;
  cursor: pointer;
  background: none;
  border: 0;
}

.modal_close img {
  display: block;
  width: calc(61 * var(--to-rem));
  height: auto;
  transition: scale var(--dur) var(--ease-press);
  scale: calc(1 - 0.08 * max(0, 2 * var(--press, 0) - 1));
}

@media (any-hover: hover) {
  .modal_close:hover img {
    animation: gnav-wobble 0.6s var(--ease-press);
  }
}
.modal_close:focus-visible img {
  animation: gnav-wobble 0.6s var(--ease-press);
}

@media (prefers-reduced-motion: reduce) {
  .modal_close:hover img,
  .modal_close:focus-visible img {
    animation: none;
  }
}
@media screen and (width > 767.98px) {
  .modal {
    padding: calc(84 * var(--to-rem)) calc(40 * var(--to-rem));
  }
  .modal_body {
    max-width: min(1393 * var(--to-rem), 1000px, max(700px, (100dvh - 94.48 * var(--to-rem)) / 0.9835));
    padding: calc(96 * var(--to-rem)) calc(136 * var(--to-rem)) calc(97 * var(--to-rem)) calc(135 * var(--to-rem));
    border-radius: 4.54%/4.887%;
  }
  .modal_body::before {
    background-image: url("../images/modal-border-pc.BbOJ5hNx.webp");
  }
  .modal_body::after {
    width: calc(100% - 3.5 * var(--to-rem));
    height: calc(100% - 3.5 * var(--to-rem));
  }
  .modal_img {
    border-radius: calc(62 * var(--to-rem));
  }
  .modal_close {
    top: 0;
    right: -3.518%;
    width: 8.686%;
    translate: 0 -56.15%;
  }
  .modal_close img {
    width: 100%;
  }
}
.note {
  font-size: calc(18 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 2;
}

.note_item {
  display: list-item;
  padding-left: 1em;
  text-indent: -1em;
  text-spacing-trim: trim-start;
  hanging-punctuation: first;
  list-style-position: inside;
  list-style-type: "※";
}

.note.-dot .note_item {
  list-style-type: "・";
}

.note.-inline {
  display: block flex;
  flex-wrap: wrap;
  gap: 0;
  justify-content: flex-start;
  font-family: var(--font-note);
  font-size: calc(9 * var(--to-rem));
  font-weight: var(--fw-medium);
  font-feature-settings: "palt" 1;
  line-height: 1.89;
  color: #000;
  letter-spacing: 0.025em;
}

.note.-inline .note_item {
  width: 100%;
  padding-left: 0;
  text-indent: 0;
}

@media screen and (width > 767.98px) {
  .note.-inline {
    gap: 0 1em;
    justify-content: center;
    font-size: calc(16 * var(--to-rem));
    line-height: 1.91;
  }
  .note.-inline .note_item {
    width: auto;
  }
}
.pagetop {
  --size: 88;
  --scale: calc(var(--size) / 208);
  --sx: calc(7 * var(--scale) * var(--to-rem));
  --sy: calc(7 * var(--scale) * var(--to-rem));
  position: fixed;
  right: calc(12 * var(--to-rem));
  bottom: calc(16 * var(--to-rem));
  z-index: 100;
  display: block;
  width: calc(var(--size) * var(--to-rem));
  height: calc(var(--size) * var(--to-rem));
  visibility: hidden;
  border-radius: 50%;
  box-shadow: calc(var(--sx) * (1 - var(--press, 0))) calc(var(--sy) * (1 - var(--press, 0))) 0 rgb(83 52 0/calc(0.18 * min(1, 2 - 2 * var(--press, 0))));
  opacity: 0;
  transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.4s ease, translate var(--dur) var(--ease-press), box-shadow var(--dur) var(--ease-press);
  transform: translateY(calc(12 * var(--to-rem)));
  translate: calc(var(--sx) * var(--press, 0)) calc(var(--sy) * var(--press, 0));
}

.pagetop.is-visible {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.pagetop_img {
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
}

.pagetop.is-visible:focus-visible {
  outline: 3px solid #830000;
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  .pagetop {
    transition: none;
    transform: none;
  }
}
@media screen and (width > 767.98px) {
  .pagetop {
    --size: 160;
    right: calc(40 * var(--to-rem));
    bottom: calc(40 * var(--to-rem));
  }
}
.prize {
  position: relative;
  box-sizing: border-box;
  width: calc(340 * var(--to-rem));
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  border: calc(6 * var(--to-rem)) solid #a01400;
  border-width: calc(3 * var(--to-rem));
  border-radius: calc(18 * var(--to-rem));
}

.prize.-set1 {
  border-color: #db5a32;
}

.prize_head {
  position: absolute;
  top: calc(-33 * var(--to-rem));
  left: 50%;
  width: calc(280 * var(--to-rem));
  max-width: none;
  line-height: 0;
  translate: -50% 0;
}

.prize_head img {
  width: 100%;
  max-width: none;
}

.prize_body {
  display: block grid;
  gap: 0;
  align-items: stretch;
  padding: calc(70 * var(--to-rem)) calc(26 * var(--to-rem)) 0;
}

.prize_img {
  position: relative;
  flex: none;
  width: 100%;
  height: auto;
  aspect-ratio: 281/175.5;
}

.prize_img_grid {
  display: block grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  border-radius: calc(10 * var(--to-rem));
}

.prize_img_note {
  position: absolute;
  top: 100%;
  left: 0;
  padding-top: calc(3 * var(--to-rem));
  font-family: var(--font-note);
  font-size: calc(9 * var(--to-rem));
  font-weight: var(--fw-medium);
  font-feature-settings: "palt" 1;
  line-height: 1.5;
  color: #000;
  letter-spacing: 0.025em;
  white-space: nowrap;
}

.prize_img_grid img {
  width: 100%;
  max-width: none;
  aspect-ratio: 240/150;
  object-fit: cover;
}

.prize_logo {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: calc(104 * var(--to-rem));
  max-width: none;
}

.prize_text {
  display: block grid;
  flex: 1;
  grid-template-rows: auto auto 1fr;
}

.prize_note {
  margin-right: calc(-6 * var(--to-rem));
  font-size: calc(15 * var(--to-rem));
  font-weight: var(--fw-bold);
  font-feature-settings: "palt" 1;
  line-height: 1.533;
  letter-spacing: 0.025em;
}

@media screen and (width < 374px) {
  .prize_note {
    font-size: calc(14 * var(--to-rem));
  }
}
.prize_note_set1 {
  margin-top: calc(21 * var(--to-rem));
}

.prize_note_set1,
.prize_note_set2 {
  margin-top: 0;
}

.prize_name {
  margin-top: 0;
  margin-right: -0.025em;
  font-size: calc(21 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.5;
  letter-spacing: 0.025em;
}

.prize_name span {
  font-size: calc(18 * var(--to-rem));
}

.prize_count {
  display: block flex;
  align-items: baseline;
  align-self: end;
  justify-content: flex-end;
  padding-right: calc(2 * var(--to-rem));
  margin-top: calc(25 * var(--to-rem));
  font-size: calc(18 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1;
  color: var(--color-red);
}

.prize.-set1 .prize_count {
  margin-top: calc(27 * var(--to-rem));
  color: #db5a32;
}

.prize_count.prize_count_set2 {
  padding-bottom: calc(27 * var(--to-rem));
}

.prize_count.prize_count_set2,
.prize_count.prize_count_set3 {
  padding-bottom: 0;
}

.prize_num {
  font-size: calc(33 * var(--to-rem));
  line-height: 1;
  letter-spacing: 0;
}

.prize.-set1 .prize_img img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
}

.prize.-set3 > .prize_body .prize_count {
  margin-top: calc(24 * var(--to-rem));
}

.prize.-set3 > .prize_body .prize_text {
  margin-top: calc(42 * var(--to-rem));
}

.prize.-set3 > .prize_body {
  padding-bottom: calc(41 * var(--to-rem));
}

.prize.-set1 .prize_text {
  margin-top: calc(39 * var(--to-rem));
}

.prize.-chance {
  background: linear-gradient(#fff8d9, #fff8d9) padding-box, linear-gradient(50deg, #caae0e 0%, #cdb115 3.6%, #d4b829 8.8%, #dfc549 15.1%, #efd675 22.1%, #f8df8e 25.6%, #caae0e 47.5%, #cdb115 50.5%, #d4b829 54.9%, #dfc549 60.1%, #efd675 66%, #ffe7a2 71.1%, #f7de8c 73.7%, #e2c852 79.2%, #caae0e 85%, #c6a70e 89%, #b9930e 94.9%, #ab7d0e 100%) border-box;
  border-color: transparent;
}

.prize.-chance .prize_head {
  top: calc(-25 * var(--to-rem));
  width: calc(251.5 * var(--to-rem));
}

.prize.-chance .prize_body {
  justify-items: center;
  padding-top: calc(46 * var(--to-rem));
  padding-bottom: calc(44 * var(--to-rem));
}

.prize_chance_head {
  width: calc(280 * var(--to-rem));
  max-width: none;
  line-height: 0;
}

.prize_chance_head img {
  width: 100%;
  max-width: none;
}

.prize.-chance .prize_img {
  width: calc(280 * var(--to-rem));
  max-width: 100%;
  height: auto;
  aspect-ratio: 280/175;
  margin-top: calc(11 * var(--to-rem));
}

.prize.-chance .prize_img img {
  background: var(--color-white);
  border-radius: calc(4.5 * var(--to-rem));
}

.prize.-chance .prize_text {
  justify-self: stretch;
  margin-top: calc(63 * var(--to-rem));
}

.prize.-chance .prize_count {
  margin-top: calc(35 * var(--to-rem));
}

.prize.-set1 .prize_body {
  padding-top: calc(70 * var(--to-rem));
  padding-bottom: calc(55 * var(--to-rem));
}

.prize.-set1 .prize_img {
  box-sizing: border-box;
  display: block grid;
  place-items: center;
  width: 100%;
  min-width: 0;
  height: calc(174 * var(--to-rem));
  background: var(--color-white);
  border-radius: calc(8 * var(--to-rem));
}

@media screen and (width > 767.98px) {
  .prize {
    width: calc(1330 * var(--to-rem));
    border-width: calc(6 * var(--to-rem));
    border-radius: calc(37 * var(--to-rem));
  }
  .prize_head {
    top: calc(-37.5 * var(--to-rem));
    width: calc(900 * var(--to-rem));
    max-width: calc(100% - 60 * var(--to-rem));
  }
  .prize_body {
    display: block flex;
    gap: calc(61 * var(--to-rem));
    padding: calc(104 * var(--to-rem)) calc(162 * var(--to-rem)) 0 calc(162 * var(--to-rem));
  }
  .prize.-chance .prize_body {
    display: block grid;
    grid-template: "img pill" auto "img text" 1fr/calc(480 * var(--to-rem)) minmax(0, 1fr);
    gap: 0 calc(61 * var(--to-rem));
    place-items: stretch;
    padding-top: calc(104 * var(--to-rem));
    padding-bottom: calc(104 * var(--to-rem));
  }
  .prize.-set1 .prize_body {
    padding-top: calc(110 * var(--to-rem));
    padding-bottom: calc(98 * var(--to-rem));
  }
  .prize_img {
    width: calc(480 * var(--to-rem));
    height: calc(300 * var(--to-rem));
    aspect-ratio: auto;
  }
  .prize.-set1 .prize_img {
    width: calc(480 * var(--to-rem));
    min-width: auto;
    height: calc(300 * var(--to-rem));
  }
  .prize.-set1 .prize_img img {
    width: calc(var(--w, 99999) * var(--to-rem));
    max-width: 100%;
    height: auto;
    max-height: none;
    object-fit: fill;
  }
  .prize_img_note {
    padding-top: calc(5 * var(--to-rem));
    font-size: calc(16 * var(--to-rem));
    line-height: 1.91;
  }
  .prize_logo {
    width: calc(180 * var(--to-rem));
  }
  .prize_note {
    margin-left: initial;
    font-size: calc(24 * var(--to-rem));
    line-height: 1.5;
  }
  .prize_note_set1 {
    margin-top: calc(21 * var(--to-rem));
  }
  .prize_note_set2 {
    margin-top: calc(24 * var(--to-rem));
  }
  .prize_name {
    margin-top: 0;
    font-size: calc(36 * var(--to-rem));
  }
  .prize_name span {
    font-size: calc(30 * var(--to-rem));
  }
  .prize_count {
    padding-right: calc(36 * var(--to-rem));
    margin-top: 0;
    font-size: calc(30 * var(--to-rem));
    line-height: normal;
  }
  .prize.-set3 > .prize_body .prize_count,
  .prize.-chance .prize_count,
  .prize.-set1 .prize_count {
    margin-top: 0;
  }
  .prize.-set3 > .prize_body .prize_text,
  .prize.-chance .prize_text,
  .prize.-set1 .prize_text {
    margin-top: 0;
  }
  .prize_count.prize_count_set2,
  .prize_count.prize_count_set3 {
    padding-bottom: calc(27 * var(--to-rem));
  }
  .prize_num {
    font-size: calc(56 * var(--to-rem));
  }
  .prize.-set3 > .prize_body {
    padding-bottom: calc(71 * var(--to-rem));
  }
  .prize.-set3 > .prize_body .prize_count {
    padding-right: calc(55 * var(--to-rem));
    margin-top: calc(38 * var(--to-rem));
  }
  .prize.-chance .prize_head {
    top: calc(-35.5 * var(--to-rem));
    width: calc(447 * var(--to-rem));
  }
  .prize.-chance .prize_chance_head {
    grid-area: pill;
    width: calc(530 * var(--to-rem));
    margin-left: calc(-24 * var(--to-rem));
  }
  .prize.-chance .prize_img {
    grid-area: img;
    width: calc(480 * var(--to-rem));
    height: calc(300 * var(--to-rem));
    aspect-ratio: auto;
    margin-top: 0;
  }
  .prize.-chance .prize_img img {
    border-radius: calc(8 * var(--to-rem));
  }
  .prize.-chance .prize_text {
    grid-area: text;
    margin-top: calc(9 * var(--to-rem));
  }
  .prize.-chance .prize_note {
    margin-top: 0;
  }
  .prize.-chance .prize_count {
    padding-bottom: 0;
    margin-bottom: calc(-13 * var(--to-rem));
  }
}
.step_list {
  display: block grid;
  grid-template-columns: 1fr;
  column-gap: calc(40 * var(--to-rem));
  justify-content: center;
  padding-right: 0;
  padding-left: 0;
}

.step {
  position: relative;
  box-sizing: border-box;
  width: calc(340 * var(--to-rem));
  height: calc(330 * var(--to-rem));
  border-radius: 20px;
}

.step.-web {
  background: #f4edda;
}

.step.-post {
  background: #bcdef0;
}

.step_badge {
  position: absolute;
  top: calc(-30 * var(--to-rem));
  left: calc(-10 * var(--to-rem));
  z-index: 1;
  width: calc(100 * var(--to-rem));
}

.step_img {
  position: absolute;
  line-height: 0;
}

.step_img.-shoot {
  top: calc(30 * var(--to-rem));
  left: calc(36 * var(--to-rem));
  width: calc(247 * var(--to-rem));
}

.step_img.-send {
  top: calc(53 * var(--to-rem));
  left: calc(78 * var(--to-rem));
  width: calc(144 * var(--to-rem));
}

.step_img.-products {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.step_product {
  position: absolute;
  max-width: none;
}

.step_product.-a {
  top: calc(42 * var(--to-rem));
  left: calc(105 * var(--to-rem));
  width: calc(130 * var(--to-rem));
}

.step_product.-b {
  top: calc(90 * var(--to-rem));
  left: calc(36 * var(--to-rem));
  width: calc(94 * var(--to-rem));
}

.step_product.-c {
  top: calc(93 * var(--to-rem));
  left: calc(198 * var(--to-rem));
  width: calc(110 * var(--to-rem));
}

.howto_web .step_list {
  row-gap: calc(45 * var(--to-rem));
}

.howto_post .step_list {
  row-gap: calc(60 * var(--to-rem));
  width: 100%;
  padding-right: var(--inner-padding-sp);
  padding-left: var(--inner-padding-sp);
}

.howto_web .step {
  width: 100%;
  height: calc(218 * var(--to-rem));
  border-radius: calc(13 * var(--to-rem));
}

.howto_post .step {
  width: 100%;
}

.howto_web .step_badge {
  top: calc(-21 * var(--to-rem));
  left: calc(-10.5 * var(--to-rem));
  width: calc(73 * var(--to-rem));
}

.howto_web .step_img.-shoot {
  top: calc(20 * var(--to-rem));
  left: calc(20.5 * var(--to-rem));
  width: calc(160 * var(--to-rem));
}

.howto_web .step_img.-send {
  top: calc(35 * var(--to-rem));
  left: calc(51.5 * var(--to-rem));
  width: calc(96 * var(--to-rem));
}

.howto_web .step_product.-a {
  top: calc(39 * var(--to-rem));
  left: calc(65.5 * var(--to-rem));
  width: calc(76 * var(--to-rem));
}

.howto_web .step_product.-b {
  top: calc(61 * var(--to-rem));
  left: calc(20.5 * var(--to-rem));
  width: calc(62 * var(--to-rem));
}

.howto_web .step_product.-c {
  top: calc(63 * var(--to-rem));
  left: calc(126.5 * var(--to-rem));
  width: calc(72 * var(--to-rem));
}

.howto_web .step_label {
  top: calc(177 * var(--to-rem));
  translate: calc(-3 * var(--to-rem)) 0;
}

.howto_web .step_label img {
  width: calc(var(--w) * 0.642 * var(--to-rem));
  max-width: none;
}

.step_label {
  position: absolute;
  top: calc(266 * var(--to-rem));
  left: 0;
  display: block grid;
  justify-items: center;
  width: 100%;
  line-height: 0;
}

@media screen and (width > 767.98px) {
  .step_list {
    grid-template-columns: repeat(3, calc(340 * var(--to-rem)));
    padding-right: 0;
    padding-left: 0;
  }
  .howto_web .step_list,
  .howto_post .step_list {
    row-gap: normal;
    width: auto;
    padding-right: 0;
    padding-left: 0;
  }
  .howto_web .step,
  .howto_post .step {
    width: calc(340 * var(--to-rem));
    height: calc(330 * var(--to-rem));
    border-radius: 20px;
  }
  .howto_web .step_label {
    translate: none;
  }
  .howto_web .step_badge {
    top: calc(-30 * var(--to-rem));
    left: calc(-10 * var(--to-rem));
    width: calc(100 * var(--to-rem));
  }
  .howto_web .step_img.-shoot {
    top: calc(30 * var(--to-rem));
    left: calc(36 * var(--to-rem));
    width: calc(247 * var(--to-rem));
  }
  .howto_web .step_img.-send {
    top: calc(53 * var(--to-rem));
    left: calc(78 * var(--to-rem));
    width: calc(144 * var(--to-rem));
  }
  .howto_web .step_product.-a {
    top: calc(42 * var(--to-rem));
    left: calc(105 * var(--to-rem));
    width: calc(130 * var(--to-rem));
  }
  .howto_web .step_product.-b {
    top: calc(90 * var(--to-rem));
    left: calc(36 * var(--to-rem));
    width: calc(94 * var(--to-rem));
  }
  .howto_web .step_product.-c {
    top: calc(93 * var(--to-rem));
    left: calc(198 * var(--to-rem));
    width: calc(110 * var(--to-rem));
  }
  .howto_web .step_label {
    top: calc(266 * var(--to-rem));
  }
  .howto_web .step_label img {
    width: calc(var(--w) * var(--to-rem));
    max-width: 100%;
  }
}
.contact_chara {
  display: block grid;
  justify-items: center;
  padding-top: calc(18 * var(--to-rem));
  padding-bottom: calc(79.5 * var(--to-rem));
  background: var(--color-white);
}

.contact_chara img {
  width: calc(246 * var(--to-rem));
  max-width: none;
  height: auto;
  translate: calc(-6 * var(--to-rem)) 0;
}

@media screen and (width > 767.98px) {
  .contact_chara {
    padding-top: calc(17 * var(--to-rem));
    padding-bottom: calc(91 * var(--to-rem));
  }
  .contact_chara img {
    width: calc(var(--w, 99999) * var(--to-rem));
    max-width: 100%;
    translate: none;
  }
}
.contact {
  display: block grid;
  justify-items: center;
  padding-top: calc(80.5 * var(--to-rem));
  padding-bottom: calc(56 * var(--to-rem));
}

.contact_body {
  box-sizing: border-box;
  width: 100%;
  max-width: calc(335 * var(--to-rem));
  padding-right: var(--inner-padding-sp);
  padding-left: var(--inner-padding-sp);
}

.contact_header {
  letter-spacing: 0.0278em;
}

.contact_office {
  padding-top: calc(37 * var(--to-rem));
  font-size: calc(21 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.3;
  color: var(--color-text);
  letter-spacing: -0.0476em;
}

.contact_info {
  display: block grid;
  padding-top: calc(21 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 2;
  color: var(--color-text);
  letter-spacing: 0;
}

.contact_info_row {
  display: block grid;
  grid-template-columns: max-content 1fr;
  column-gap: 0;
}

.contact_info_label {
  display: block;
  grid-template-columns: 1fr auto;
  padding-right: 0;
  letter-spacing: 0.056em;
}

.contact_info_row:nth-child(2) .contact_info_label {
  letter-spacing: -0.074em;
}

.contact_info_label::after {
  content: "：";
}

.contact_info_value {
  letter-spacing: 0.015em;
  overflow-wrap: anywhere;
}

.contact_info_value.-hours {
  font-feature-settings: "palt" 1;
}

.contact_info_sub {
  display: block;
  width: calc(290 * var(--to-rem));
  margin-top: calc(-7 * var(--to-rem));
  margin-left: calc(-80 * var(--to-rem));
  font-size: calc(14 * var(--to-rem));
  line-height: 1.429;
  letter-spacing: 0.036em;
}

.contact_info_sub.-extra {
  margin-top: 0;
  margin-left: calc(-84.5 * var(--to-rem));
}

.contact_info_row:nth-child(2) {
  grid-template-columns: 1fr;
}

.contact_info_row:nth-child(2) .contact_info_value {
  line-height: 1.281;
  letter-spacing: -0.017em;
}

.contact_note .note_item + .note_item {
  margin-top: calc(6 * var(--to-rem));
}

.contact_note {
  width: calc(307 * var(--to-rem));
  max-width: none;
  padding-top: calc(23 * var(--to-rem));
  font-family: var(--font-note);
  font-size: calc(10 * var(--to-rem));
  font-weight: var(--fw-bold);
  font-feature-settings: "palt" 1;
  line-height: 1.6;
  color: var(--color-text);
  letter-spacing: -0.017em;
}

.contact_info_value a {
  background: linear-gradient(currentcolor, currentcolor) 0 100%/calc(100% * var(--nudge, 0)) max(1px, 1 * var(--to-rem)) no-repeat;
  transition: background-size var(--dur) var(--ease-press);
}

.contact_info_value a:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

@media screen and (width > 767.98px) {
  .contact {
    padding-top: calc(160 * var(--to-rem));
    padding-bottom: calc(84 * var(--to-rem));
  }
  .contact_body {
    max-width: fit-content;
    padding-right: 0;
    padding-left: 0;
  }
  .contact_header {
    letter-spacing: 0.025em;
  }
  .contact_office {
    padding-top: calc(34 * var(--to-rem));
    font-size: calc(30 * var(--to-rem));
    line-height: 1.219;
    letter-spacing: 0.04em;
  }
  .contact_info {
    padding-top: calc(23 * var(--to-rem));
    font-size: calc(22 * var(--to-rem));
    line-height: 1.636;
    letter-spacing: normal;
  }
  .contact_info_row {
    display: grid;
    grid-template-columns: calc(190 * var(--to-rem)) auto 1fr;
    column-gap: normal;
  }
  .contact_info_row:nth-child(2) {
    grid-template-columns: calc(190 * var(--to-rem)) auto 1fr;
  }
  .contact_info_row:nth-child(2) .contact_info_value {
    line-height: inherit;
  }
  .contact_info_label {
    display: block grid;
    padding-right: calc(8 * var(--to-rem));
    letter-spacing: 0.02em;
  }
  .contact_info_row:nth-child(2) .contact_info_label {
    letter-spacing: 0.02em;
  }
  .contact_info_value {
    letter-spacing: 0.02em;
    overflow-wrap: normal;
  }
  .contact_info_sub {
    display: inline;
    width: auto;
    margin-top: 0;
    margin-left: 0;
    font-size: calc(20 * var(--to-rem));
    line-height: inherit;
    letter-spacing: inherit;
  }
  .contact_info_sub.-extra {
    display: block;
    margin-top: calc(1 * var(--to-rem));
    margin-left: 0;
    line-height: 1.65;
  }
  .contact_note .note_item + .note_item {
    margin-top: 0;
  }
  .contact_note {
    width: auto;
    max-width: none;
    padding-top: calc(16 * var(--to-rem));
    font-size: calc(16 * var(--to-rem));
    font-feature-settings: normal;
    line-height: 1.5;
    letter-spacing: 0.025em;
  }
}
.footer {
  display: block grid;
  justify-items: center;
  padding: calc(58 * var(--to-rem)) var(--inner-padding-sp) calc(10 * var(--to-rem));
  text-align: center;
  border-top: max(1px, 1 * var(--to-rem)) solid #ddd;
}

.footer_shop {
  position: relative;
  justify-self: center;
  width: calc(323 * var(--to-rem));
  max-width: 100%;
  height: calc(155 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
  translate: calc(-6.5 * var(--to-rem)) 0;
}

.footer_shop_item {
  position: absolute;
  display: block;
  line-height: 0;
  text-decoration: none;
}

.footer_shop_item.-omamesan {
  top: calc(17 * var(--to-rem));
  left: 0;
  width: calc(100 * var(--to-rem));
}

.footer_shop_item.-fujikkoni {
  top: 0;
  left: calc(126 * var(--to-rem));
  width: calc(84 * var(--to-rem));
}

.footer_shop_item.-shiokonbu {
  top: calc(14 * var(--to-rem));
  left: calc(238 * var(--to-rem));
  width: calc(85 * var(--to-rem));
}

.-fujikkoni .footer_shop_logo {
  width: calc(82 * var(--to-rem));
}

.-shiokonbu .footer_shop_logo {
  width: calc(80.5 * var(--to-rem));
  margin-left: calc(2.25 * var(--to-rem));
}

.footer_shop_logo,
.footer_shop_product {
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
}

.footer_shop_product {
  position: absolute;
  transition: translate var(--dur) var(--ease-press);
  translate: var(--tx, 0) round(var(--to-rem) * (-5 * var(--nudge, 0) + 6 * max(0, 2 * var(--press, 0) - 1)), 1px);
}

.-omamesan .footer_shop_product {
  top: calc(76 * var(--to-rem));
  left: calc(28 * var(--to-rem));
  width: calc(44 * var(--to-rem));
}

.-fujikkoni .footer_shop_product {
  top: calc(92 * var(--to-rem));
  left: 50%;
  width: calc(65 * var(--to-rem));
  --tx: -50%;
}

.-shiokonbu .footer_shop_product {
  top: calc(78 * var(--to-rem));
  left: calc(17 * var(--to-rem));
  width: calc(51 * var(--to-rem));
}

.footer_site {
  display: block grid;
  justify-items: center;
  padding-top: calc(98 * var(--to-rem));
}

.footer_site_logo {
  display: block;
  line-height: 0;
}

.footer_site_logo img {
  width: calc(152 * var(--to-rem));
  max-width: none;
  height: auto;
}

.footer_site_link {
  display: inline-flex;
  gap: calc(9 * var(--to-rem));
  align-items: center;
  padding-top: calc(26.5 * var(--to-rem));
  margin-left: calc(8 * var(--to-rem));
  font-family: var(--font-note);
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.5;
  color: #000;
  letter-spacing: 0.04em;
}

.footer_site_link::after {
  display: inline-block;
  width: calc(10 * var(--to-rem));
  height: calc(10 * var(--to-rem));
  content: "";
  background: url("../images/icon-external@2x.BzC1V3OC.webp") 0 0/100% 100% no-repeat;
}

.footer_copy {
  width: calc(100% + var(--inner-padding-sp) * 2);
  padding-top: calc(13.5 * var(--to-rem));
  margin-top: calc(87 * var(--to-rem));
  margin-right: calc(-1 * var(--inner-padding-sp));
  margin-left: calc(-1 * var(--inner-padding-sp));
  font-size: calc(12 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.3;
  color: #000;
  border-top: max(1px, 1 * var(--to-rem)) solid #ddd;
}

@media (any-hover: hover) {
  .footer_site:has(a:hover) a {
    opacity: 0.7;
    transition: opacity var(--duration);
  }
}
.footer_site:has(a:focus-visible) a {
  opacity: 0.7;
}

.footer_shop_item:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

.footer_site a:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
  opacity: 0.7;
}

@media screen and (width > 767.98px) {
  .footer {
    padding: calc(96 * var(--to-rem)) 0 calc(23 * var(--to-rem));
  }
  .footer_shop {
    justify-self: start;
    width: calc(785 * var(--to-rem));
    height: calc(315 * var(--to-rem));
    translate: none;
  }
  .-fujikkoni .footer_shop_logo,
  .-shiokonbu .footer_shop_logo {
    width: 100%;
    margin-left: 0;
  }
  .footer_shop_item.-omamesan {
    top: calc(34 * var(--to-rem));
    width: calc(200 * var(--to-rem));
  }
  .footer_shop_item.-fujikkoni {
    left: calc(321 * var(--to-rem));
    width: calc(168 * var(--to-rem));
  }
  .footer_shop_item.-shiokonbu {
    top: calc(29 * var(--to-rem));
    left: calc(615 * var(--to-rem));
    width: calc(170 * var(--to-rem));
  }
  .footer_shop_product {
    width: calc(var(--w) * var(--to-rem));
  }
  .-omamesan .footer_shop_product {
    top: calc(147 * var(--to-rem));
    left: calc(57 * var(--to-rem));
    width: calc(var(--w) * var(--to-rem));
  }
  .-fujikkoni .footer_shop_product {
    top: calc(185 * var(--to-rem));
    width: calc(var(--w) * var(--to-rem));
  }
  .-shiokonbu .footer_shop_product {
    top: calc(155 * var(--to-rem));
    left: calc(36 * var(--to-rem));
    width: calc(var(--w) * var(--to-rem));
  }
  .footer_site {
    padding-top: calc(133 * var(--to-rem));
  }
  .footer_site_logo img {
    width: calc(var(--w, 99999) * var(--to-rem));
    max-width: 100%;
  }
  .footer_site_link {
    padding-top: calc(23 * var(--to-rem));
    margin-left: calc(18 * var(--to-rem));
    font-size: calc(20 * var(--to-rem));
    line-height: 1.902;
  }
  .footer_site_link::after {
    width: calc(13 * var(--to-rem));
    height: calc(13 * var(--to-rem));
  }
  .footer {
    border-top-color: #787878;
  }
  .footer_copy {
    width: 100%;
    padding-top: calc(25 * var(--to-rem));
    margin-top: calc(107 * var(--to-rem));
    margin-right: 0;
    margin-left: 0;
    font-size: calc(18 * var(--to-rem));
    line-height: 1.219;
    border-top-color: #787878;
  }
}
.hero {
  position: relative;
  display: block grid;
  justify-items: center;
}

.hero_ttl {
  line-height: 0;
}

.hero_pic {
  display: contents;
}

.hero_ttl img {
  width: 100vw;
  max-width: none;
  aspect-ratio: 375/630;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  object-fit: cover;
}
@media screen and (width > 767.98px) {
  .hero_ttl img {
    width: 100vw;
    max-width: none;
    aspect-ratio: auto;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    object-fit: fill;
  }
}

@media screen and (width >= 1647px) {
  .history {
    --to-rem: 1px;
  }
}
.history .main {
  padding-bottom: calc(55 * var(--to-rem));
}

.history .main::before {
  position: absolute;
  inset: 0 calc(50% - 50vw);
  z-index: -1;
  content: "";
  background-image: url("../images/hist-bg-sp@2x.BFQiKCtN.webp");
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.hist_hero {
  padding-top: calc(132 * var(--to-rem));
  text-align: center;
}

.hist_hero_head_img {
  width: calc(291 * var(--to-rem));
}

.hist_hero_logos {
  margin-top: calc(36 * var(--to-rem));
}

.hist_hero_logos_img {
  width: calc(332 * var(--to-rem));
}

.hist_hero_lead {
  margin-top: calc(60 * var(--to-rem));
}

.hist_hero_lead_img {
  width: calc(248 * var(--to-rem));
}

.hist_hero_intro {
  margin-top: calc(44 * var(--to-rem));
}

.hist_hero_intro_img {
  width: calc(297 * var(--to-rem));
}

.hist_body {
  position: relative;
  padding-right: calc(18 * var(--to-rem));
  padding-left: calc(18 * var(--to-rem));
  margin-top: calc(51 * var(--to-rem));
}

.hist_shadow {
  display: none;
}

.hist_card {
  position: relative;
  padding-top: calc(117 * var(--to-rem));
  padding-right: calc(20 * var(--to-rem));
  padding-left: calc(20 * var(--to-rem));
  overflow: hidden;
  background: #fff;
  border-radius: calc(31 * var(--to-rem));
}
.hist_card::before {
  position: absolute;
  inset: 0;
  clip-path: polygon(0 31.39%, 100% 30.74%, 100% 68.02%, 0 67.37%);
  content: "";
  background: linear-gradient(211.5deg, #fff6ea 36.65%, #fef3e4 52.15%, #fef1de 59.9%, #fdedd6 67.64%);
}
.hist_card::after {
  position: absolute;
  inset: 0;
  clip-path: polygon(0 67.37%, 100% 68.02%, 100% 100%, 0 100%);
  content: "";
  background: linear-gradient(211.5deg, #fffef4 75.14%, #fffef1 79.01%, #fffded 84.17%, #fefde7 89.34%, #fdfbd8 95.3%);
}

.hist_chara {
  position: absolute;
  z-index: 1;
}
.hist_chara.-konbu {
  top: calc(18 * var(--to-rem));
  left: calc(236 * var(--to-rem));
  width: calc(72 * var(--to-rem));
}
.hist_chara.-trio {
  top: calc(1765 * var(--to-rem));
  left: calc(158 * var(--to-rem));
  width: calc(160 * var(--to-rem));
}
.hist_chara.-kuromame {
  top: calc(3795 * var(--to-rem));
  left: calc(248 * var(--to-rem));
  width: calc(62 * var(--to-rem));
}
.hist_chara.-omame {
  top: calc(5252.5 * var(--to-rem));
  left: calc(50% - 31 * var(--to-rem));
  z-index: 3;
  width: calc(62 * var(--to-rem));
}
.hist_chara img {
  width: 100%;
}

.hist_list {
  position: relative;
  z-index: 2;
  list-style: none;
}

.hist_list::before {
  position: absolute;
  top: calc(18 * var(--to-rem));
  left: calc(19 * var(--to-rem));
  z-index: 0;
  width: calc(4 * var(--to-rem));
  height: calc(4779 * var(--to-rem));
  content: "";
  background: #5a1800;
}

.hist_year {
  position: relative;
}

.hist_year::before {
  position: absolute;
  top: 50%;
  left: calc(-37 * var(--to-rem));
  width: calc(42 * var(--to-rem));
  height: calc(4 * var(--to-rem));
  content: "";
  background: linear-gradient(to right, #5a1800, var(--hist-line-color, #5a1800));
  transform: translateY(-50%);
}

.hist_year::after {
  position: absolute;
  top: 50%;
  left: calc(-59 * var(--to-rem));
  width: calc(24 * var(--to-rem));
  height: calc(24 * var(--to-rem));
  content: "";
  background: url("../images/dots.BbRaxfrM.png") 0 0/100% 100% no-repeat;
  transform: translateY(-50%);
}

.hist_item {
  position: relative;
  padding-left: calc(68 * var(--to-rem));
  margin-top: calc(var(--hist-mt, 63) * var(--to-rem));
}
.hist_item:first-child {
  margin-top: 0;
}
.hist_item:nth-of-type(1) {
  --hist-year-x: 16;
  --hist-photo-x: -7;
  --hist-photo-mt: 20;
}
.hist_item:nth-of-type(2) {
  --hist-mt: 57;
  --hist-year-x: 16;
  --hist-photo-x: -7;
  --hist-photo-mt: 19;
}
.hist_item:nth-of-type(3) {
  --hist-mt: 61;
  --hist-year-x: 16;
  --hist-photo-x: -7;
  --hist-photo-mt: 20;
  --hist-balloon-w: 149;
  --hist-balloon-h: 73;
  --hist-balloon-x: 37;
  --hist-balloon-mt: 16;
}
.hist_item:nth-of-type(4) {
  --hist-mt: 58;
  --hist-year-x: 17;
  --hist-photo-x: -7;
  --hist-photo-mt: 20;
}
.hist_item:nth-of-type(5) {
  --hist-mt: 45;
}
.hist_item:nth-of-type(6) {
  --hist-mt: 62;
  --hist-year-x: 16;
}
.hist_item:nth-of-type(7) {
  --hist-mt: 199;
  --hist-year-x: 17;
  --hist-photo-x: -7;
  --hist-photo-mt: 18;
  --hist-balloon-w: 92;
  --hist-balloon-h: 55;
  --hist-balloon-x: -12;
  --hist-balloon-mt: 10;
}
.hist_item:nth-of-type(8) {
  --hist-mt: 59;
  --hist-year-x: 16;
  --hist-photo-x: -7;
  --hist-photo-mt: 20;
}
.hist_item:nth-of-type(9) {
  --hist-mt: 59;
  --hist-year-x: 13;
}
.hist_item:nth-of-type(10) {
  --hist-mt: 60;
  --hist-year-x: 14;
  --hist-photo-x: -7;
  --hist-photo-mt: 19;
}
.hist_item:nth-of-type(11) {
  --hist-mt: 59;
  --hist-year-x: 13;
  --hist-photo-x: -7;
  --hist-photo-mt: 20;
}
.hist_item:nth-of-type(12) {
  --hist-mt: 60;
  --hist-year-x: 13;
  --hist-photo-x: 5;
  --hist-photo-mt: 19;
}
.hist_item:nth-of-type(13) {
  --hist-mt: 132;
  --hist-year-x: 14;
  --hist-photo-x: -7;
  --hist-photo-mt: 21;
}
.hist_item:nth-of-type(14) {
  --hist-mt: 47;
  --hist-year-x: 14;
  --hist-photo-x: -7;
  --hist-photo-mt: 21;
}
.hist_item:nth-of-type(15) {
  --hist-mt: 59;
  --hist-year-x: 14;
}

.hist_item.-fujikko {
  --hist-line-color: #03823a;
  color: #004e1a;
}
.hist_item.-fujikkoni {
  --hist-line-color: #044494;
  color: #001e8c;
}
.hist_item.-omamesan {
  --hist-line-color: #c65100;
  color: #d93e2c;
}

.hist_era {
  position: absolute;
  z-index: 3;
}
.hist_era.-showa {
  top: calc(72 * var(--to-rem));
  left: calc(29 * var(--to-rem));
  width: calc(24 * var(--to-rem));
}
.hist_era.-heisei {
  top: calc(-62 * var(--to-rem));
  left: calc(5 * var(--to-rem));
  width: calc(32 * var(--to-rem));
}
.hist_era.-reiwa {
  top: calc(-71 * var(--to-rem));
  left: calc(5 * var(--to-rem));
  width: calc(32 * var(--to-rem));
}
.hist_era img {
  width: 100%;
}

.hist_year {
  display: flex;
  align-items: flex-end;
}

.hist_year_img {
  width: calc(var(--w) * 0.5 * var(--to-rem));
  margin-left: calc(var(--hist-year-x, 0) * var(--to-rem));
}

.hist_year_unit {
  margin-bottom: calc(-5 * var(--to-rem));
  margin-left: calc(5 * var(--to-rem));
  font-family: "Noto Serif JP", serif;
  font-size: calc(26 * var(--to-rem));
  font-weight: 200;
  line-height: 1.4;
  color: currentcolor;
}

.hist_wareki {
  margin-top: calc(-4 * var(--to-rem));
  margin-left: calc(var(--hist-year-x, 0) * var(--to-rem));
  font-family: "Noto Serif JP", serif;
  font-size: calc(15 * var(--to-rem));
  font-weight: 700;
  line-height: 1.66;
  color: currentcolor;
}

.hist_band,
.hist_outro_band {
  position: relative;
  z-index: 2;
  font-size: inherit;
  font-weight: inherit;
}

.hist_band {
  margin-top: calc(7 * var(--to-rem));
}

.hist_band.-line {
  position: relative;
}

.hist_band.-line::before {
  position: absolute;
  top: 50%;
  left: calc(-26 * var(--to-rem));
  width: calc(26 * var(--to-rem));
  height: calc(4 * var(--to-rem));
  content: "";
  background: linear-gradient(to right, #5a1800, var(--hist-line-color, #5a1800));
  transform: translateY(-50%);
}

.hist_band.-line::after {
  position: absolute;
  top: calc(-277 * var(--to-rem));
  left: calc(-30 * var(--to-rem));
  z-index: 0;
  width: calc(4 * var(--to-rem));
  height: calc(304 * var(--to-rem));
  content: "";
  background: #5a1800;
}

.hist_band_img {
  display: block;
  width: calc(216 * var(--to-rem));
}

.hist_photo {
  margin-top: calc(var(--hist-photo-mt, 14) * var(--to-rem));
  text-align: center;
}

.hist_photo_img {
  position: relative;
  left: calc(var(--hist-photo-x, -7) * var(--to-rem));
  width: calc(var(--w) * 0.5 * var(--to-rem));
  max-width: none;
}

.hist_item:nth-of-type(12) .hist_photo_img {
  width: calc(241 * var(--to-rem));
}

.hist_balloon {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(var(--hist-balloon-w, 91.5) * var(--to-rem));
  height: calc(var(--hist-balloon-h, 55) * var(--to-rem));
  margin-top: calc(var(--hist-balloon-mt, 8) * var(--to-rem));
  margin-left: calc(var(--hist-balloon-x, 0) * var(--to-rem));
  font-size: calc(13 * var(--to-rem));
  font-weight: 700;
  line-height: 1.32;
  color: #5a1800;
  text-align: center;
  letter-spacing: var(--hist-balloon-ls, -0.06em);
  background: #fff;
  border: calc(2 * var(--to-rem)) solid #5a1800;
  border-radius: calc(8 * var(--to-rem));
}
.hist_balloon::before {
  position: absolute;
  top: calc(-13 * var(--to-rem));
  left: calc(26 * var(--to-rem));
  width: calc(15 * var(--to-rem));
  height: calc(12 * var(--to-rem));
  clip-path: polygon(0 100%, 100% 0, 90% 100%);
  content: "";
  background: #5a1800;
}
.hist_balloon::after {
  position: absolute;
  top: calc(-9 * var(--to-rem));
  left: calc(25 * var(--to-rem));
  width: calc(15 * var(--to-rem));
  height: calc(12 * var(--to-rem));
  clip-path: polygon(0 100%, 100% 0, 88% 100%);
  content: "";
  background: #fff;
}

.hist_item:nth-of-type(3) .hist_balloon {
  --hist-balloon-ls: 0;
}

.hist_item:nth-of-type(13) .hist_balloon {
  --hist-balloon-ls: -0.08em;
}

.hist_item:nth-of-type(3) .hist_balloon {
  justify-content: flex-start;
  padding-left: calc(11 * var(--to-rem));
  text-align: left;
}

.hist_item:nth-of-type(13) .hist_balloon {
  display: none;
}

.hist_item:nth-of-type(10) .hist_balloon {
  --hist-balloon-w: 80;
  --hist-balloon-h: 54;
  --hist-balloon-ls: -0.02em;
  --hist-balloon-mt: 28;
  --hist-balloon-x: 131;
}
.hist_item:nth-of-type(10) .hist_balloon::before {
  left: calc(19 * var(--to-rem));
  width: calc(15 * var(--to-rem));
  clip-path: polygon(100% 100%, 0 0, 4.8% 100%);
}
.hist_item:nth-of-type(10) .hist_balloon::after {
  left: calc(21 * var(--to-rem));
  width: calc(15 * var(--to-rem));
  clip-path: polygon(100% 100%, 0 0, 7% 100%);
}

.hist_outro {
  position: relative;
  z-index: 2;
  width: calc(340 * var(--to-rem));
  margin-top: calc(54 * var(--to-rem));
  margin-left: calc(-20 * var(--to-rem));
  text-align: center;
}

.hist_outro_band_img {
  position: relative;
  z-index: 2;
  width: calc(300 * var(--to-rem));
}

.hist_outro_logos {
  position: relative;
}

.hist_kira {
  position: absolute;
  z-index: -1;
}
.hist_kira img {
  width: 100%;
}
.hist_kira.-left {
  top: calc(-29 * var(--to-rem));
  left: calc(50 * var(--to-rem));
  width: calc(36 * var(--to-rem));
}
.hist_kira.-right {
  top: calc(124 * var(--to-rem));
  right: calc(23 * var(--to-rem));
  width: calc(58 * var(--to-rem));
}

.hist_outro_logos {
  margin-top: calc(45 * var(--to-rem));
}

.hist_outro_logos_img {
  width: calc(241 * var(--to-rem));
  margin-left: calc(30 * var(--to-rem));
}

.hist_outro_note {
  max-width: fit-content;
  padding-left: calc(54 * var(--to-rem));
  margin-inline: auto;
  margin-top: calc(36 * var(--to-rem));
}

.hist_outro_note_img {
  width: calc(217 * var(--to-rem));
}

.hist_outro_date {
  margin-bottom: calc(12 * var(--to-rem));
  margin-left: calc(117 * var(--to-rem));
  text-align: left;
}

.hist_outro_date_img {
  width: calc(106 * var(--to-rem));
}

.hist_outro_msg {
  position: relative;
  z-index: 1;
  display: block flex;
  align-items: center;
  justify-content: center;
  width: calc(315 * var(--to-rem));
  height: calc(165 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  background: url("../images/hist-foot-bg-sp.DfvqVnfT.webp") 0 0/100% 100% no-repeat;
}

.hist_outro_msg_img {
  width: calc(256 * var(--to-rem));
  translate: 0 calc(-2.5 * var(--to-rem));
}

.hist_outro_box {
  position: relative;
  margin-top: calc(161.6 * var(--to-rem));
  margin-bottom: calc(248.5 * var(--to-rem));
}

.hist_outro_box::before {
  position: absolute;
  top: calc(-453 * var(--to-rem));
  left: calc(38.2 * var(--to-rem));
  width: calc(5 * var(--to-rem));
  height: calc(458 * var(--to-rem));
  content: "";
  background: radial-gradient(circle closest-side, #5a1800 98%, transparent) 0 0/100% calc(9.5 * var(--to-rem)) repeat-y;
}

.hist_outro_bigarrow {
  position: absolute;
  top: calc(-141.5 * var(--to-rem));
  left: 50%;
  z-index: 0;
  width: calc(170 * var(--to-rem));
  line-height: 0;
  translate: -50% 0;
}
.hist_outro_bigarrow img {
  width: 100%;
  max-width: none;
  height: auto;
}

.hist_cta {
  margin-top: calc(93.4 * var(--to-rem));
  line-height: 0;
  text-align: center;
}

.hist_cta_link {
  --bw: calc(2 * var(--to-rem));
  --sx: calc(6 * var(--to-rem));
  --sy: calc(6 * var(--to-rem));
  position: relative;
  box-sizing: border-box;
  display: inline-block;
  width: calc(280 * var(--to-rem));
  height: calc(62 * var(--to-rem));
  vertical-align: top;
  border: var(--bw) solid #5a1800;
  transition: translate var(--dur) var(--ease-press);
  translate: calc(var(--sx) * var(--press, 0)) calc(var(--sy) * var(--press, 0));
}
.hist_cta_link::before {
  position: absolute;
  top: calc(var(--sy) - var(--bw));
  left: calc(var(--sx) - var(--bw));
  box-sizing: border-box;
  width: calc(280 * var(--to-rem));
  height: calc(62 * var(--to-rem));
  content: "";
  border: var(--bw) solid #5a1800;
  transition: translate var(--dur) var(--ease-press);
  translate: calc(-1 * var(--sx) * var(--press, 0)) calc(-1 * var(--sy) * var(--press, 0));
}
.hist_cta_link::after {
  position: absolute;
  top: calc(24 * var(--to-rem));
  left: calc(230 * var(--to-rem));
  width: 0;
  height: 0;
  content: "";
  border-top: calc(8 * var(--to-rem)) solid transparent;
  border-bottom: calc(8 * var(--to-rem)) solid transparent;
  border-left: calc(17 * var(--to-rem)) solid #5a1800;
  transition: translate var(--dur) var(--ease-press);
  translate: calc(4 * var(--to-rem) * var(--nudge, 0)) 0;
}

@media (any-hover: hover) {
  .hist_cta_link:hover {
    --press: 1;
  }
}
.hist_cta_link:focus-visible {
  --press: 1;
  outline: 3px solid #5a1800;
  outline-offset: 3px;
}

.hist_cta_img {
  position: absolute;
  top: calc(22 * var(--to-rem));
  left: calc(38 * var(--to-rem));
  width: calc(179 * var(--to-rem));
}

@media screen and (width > 767.98px) {
  .hist_card {
    padding: calc(155 * var(--to-rem)) calc(115 * var(--to-rem)) 0 calc(115 * var(--to-rem));
  }
  .hist_list {
    width: 100%;
    max-width: calc(900 * var(--to-rem));
    margin-right: auto;
    margin-left: auto;
  }
  .hist_list::before {
    top: calc(66 * var(--to-rem));
    left: calc(50% - 3.5 * var(--to-rem));
    width: calc(7 * var(--to-rem));
    height: calc(5388 * var(--to-rem));
  }
  .hist_year::after {
    top: calc(50% + var(--hist-dot-y, 0) * var(--to-rem));
    left: calc(-110 * var(--to-rem));
    width: calc(40 * var(--to-rem));
    height: calc(40 * var(--to-rem));
  }
  .hist_year::before {
    top: calc(50% + var(--hist-dot-y, 0) * var(--to-rem));
    left: calc(-70 * var(--to-rem));
    width: calc(88 * var(--to-rem));
    height: calc(7 * var(--to-rem));
  }
  .hist_item:nth-of-type(1) {
    --hist-dot-y: 17;
  }
  .hist_item:nth-of-type(2) {
    --hist-dot-y: 5;
  }
  .hist_item:nth-of-type(3) {
    --hist-dot-y: -4;
  }
  .hist_item:nth-of-type(4) {
    --hist-dot-y: 12;
  }
  .hist_item:nth-of-type(6) {
    --hist-dot-y: -7;
  }
  .hist_item:nth-of-type(7) {
    --hist-dot-y: 3;
  }
  .hist_item:nth-of-type(8) {
    --hist-dot-y: 43;
  }
  .hist_item:nth-of-type(9) {
    --hist-dot-y: -19;
  }
  .hist_item:nth-of-type(10) {
    --hist-dot-y: -2;
  }
  .hist_item:nth-of-type(12) {
    --hist-dot-y: -7;
  }
  .hist_item:nth-of-type(13) {
    --hist-dot-y: 5;
  }
  .hist_item:nth-of-type(14) {
    --hist-dot-y: 8;
  }
  .hist_item:nth-of-type(15) {
    --hist-dot-y: 4;
  }
  .hist_item:nth-of-type(-n + 4):nth-of-type(even) .hist_year::after,
  .hist_item:nth-of-type(n + 5):nth-of-type(odd) .hist_year::after {
    right: calc(-110 * var(--to-rem));
    left: auto;
  }
  .hist_item:nth-of-type(-n + 4):nth-of-type(even) .hist_year::before,
  .hist_item:nth-of-type(n + 5):nth-of-type(odd) .hist_year::before {
    right: calc(-70 * var(--to-rem));
    left: auto;
    background: linear-gradient(to left, #5a1800, var(--hist-line-color, #5a1800));
  }
  .history .main {
    padding-bottom: calc(143 * var(--to-rem));
  }
  .history .main::before {
    background-image: url("../images/hist-bg-pc@2x.CUluGk6X.webp");
  }
  .hist_hero {
    padding-top: calc(206 * var(--to-rem));
  }
  .hist_hero_head_img {
    width: calc(582 * var(--to-rem));
  }
  .hist_hero_logos {
    margin-top: calc(104 * var(--to-rem));
  }
  .hist_hero_logos_img {
    width: calc(663 * var(--to-rem));
  }
  .hist_hero_lead {
    margin-top: calc(137 * var(--to-rem));
  }
  .hist_hero_lead_img {
    width: calc(842 * var(--to-rem));
  }
  .hist_hero_intro {
    margin-top: calc(78 * var(--to-rem));
  }
  .hist_hero_intro_img {
    width: calc(1196 * var(--to-rem));
  }
  .hist_body {
    padding-right: calc(161 * var(--to-rem));
    padding-left: calc(160 * var(--to-rem));
    margin-top: calc(141 * var(--to-rem));
  }
  .hist_shadow {
    position: absolute;
    top: calc(-130 * var(--to-rem));
    left: calc(28 * var(--to-rem));
    display: block;
    width: calc(1590 * var(--to-rem));
    height: calc(6199 * var(--to-rem));
    background: url("../images/history-bg-shadow.QVNY-67Z.webp") 0 0/100% 100% no-repeat;
  }
  .hist_card {
    height: auto;
    border-radius: calc(62 * var(--to-rem));
  }
  .hist_card::before {
    clip-path: polygon(0 32.13%, 100% 29.98%, 100% 65.81%, 0 63.65%);
    background: linear-gradient(211.5deg, #fff6ea 37.49%, #fef2e1 51.24%, #fdedd6 61.42%);
  }
  .hist_card::after {
    clip-path: polygon(0 63.65%, 100% 65.81%, 100% 100%, 0 100%);
    background: linear-gradient(211.5deg, #fffef4 67.8%, #fffef0 74.32%, #fffded 80.84%, #fefce5 87.35%, #fdfbdc 91.69%, #fdfbd8 93.87%);
  }
  .hist_item_inner {
    width: calc(360 * var(--to-rem));
  }
  .hist_item {
    display: flex;
    padding-left: 0;
  }
  .hist_item:nth-of-type(-n+4):nth-of-type(odd), .hist_item:nth-of-type(n+6):nth-of-type(even) {
    justify-content: flex-end;
  }
  .hist_item:nth-of-type(1) {
    margin-top: calc(2 * var(--to-rem));
  }
  .hist_item:nth-of-type(2) {
    margin-top: calc(-230 * var(--to-rem));
  }
  .hist_item:nth-of-type(3) {
    margin-top: calc(-203 * var(--to-rem));
  }
  .hist_item:nth-of-type(4) {
    margin-top: calc(-380 * var(--to-rem));
  }
  .hist_item:nth-of-type(5) {
    margin-top: calc(31 * var(--to-rem));
  }
  .hist_item:nth-of-type(6) {
    margin-top: calc(6 * var(--to-rem));
  }
  .hist_item:nth-of-type(7) {
    margin-top: calc(197 * var(--to-rem));
  }
  .hist_item:nth-of-type(8) {
    margin-top: calc(-308 * var(--to-rem));
  }
  .hist_item:nth-of-type(9) {
    margin-top: calc(-165 * var(--to-rem));
  }
  .hist_item:nth-of-type(10) {
    margin-top: calc(5 * var(--to-rem));
  }
  .hist_item:nth-of-type(11) {
    margin-top: calc(-246 * var(--to-rem));
  }
  .hist_item:nth-of-type(12) {
    margin-top: calc(-242 * var(--to-rem));
  }
  .hist_item:nth-of-type(13) {
    margin-top: calc(181 * var(--to-rem));
  }
  .hist_item:nth-of-type(14) {
    margin-top: calc(-309 * var(--to-rem));
  }
  .hist_item:nth-of-type(15) {
    margin-top: calc(-183 * var(--to-rem));
  }
  .hist_outro {
    position: relative;
    width: calc(1326 * var(--to-rem));
    margin-top: calc(92 * var(--to-rem));
    margin-left: calc(-115 * var(--to-rem));
  }
  .hist_chara.-konbu {
    top: calc(148 * var(--to-rem));
    left: calc(140 * var(--to-rem));
    width: calc(145 * var(--to-rem));
  }
  .hist_chara.-trio {
    top: calc(2038 * var(--to-rem));
    left: calc(893 * var(--to-rem));
    width: calc(320 * var(--to-rem));
  }
  .hist_chara.-kuromame {
    top: calc(4001 * var(--to-rem));
    left: calc(421 * var(--to-rem));
    width: calc(124 * var(--to-rem));
  }
  .hist_chara.-omame {
    top: calc(5455 * var(--to-rem));
    left: calc(985.5 * var(--to-rem));
    z-index: 4;
    width: calc(125 * var(--to-rem));
  }
  .hist_outro_band_img {
    width: calc(901 * var(--to-rem));
  }
  .hist_outro_logos {
    margin-top: calc(41 * var(--to-rem));
  }
  .hist_outro_logos_img {
    width: calc(543 * var(--to-rem));
    margin-left: 0;
  }
  .hist_outro_note {
    margin-top: calc(33 * var(--to-rem));
  }
  .hist_outro_note_img {
    width: calc(863 * var(--to-rem));
    padding-left: 0;
  }
  .hist_outro_date {
    max-width: calc(900 * var(--to-rem));
    margin-right: auto;
    margin-bottom: calc(11 * var(--to-rem));
    margin-left: auto;
    text-align: left;
  }
  .hist_outro_date_img {
    width: calc(137 * var(--to-rem));
  }
  .hist_outro_box {
    margin-top: calc(118 * var(--to-rem));
    margin-bottom: calc(527 * var(--to-rem));
  }
  .hist_outro_box::before {
    content: none;
  }
  .hist_outro_bigarrow {
    top: calc(-283.3 * var(--to-rem));
    width: calc(340 * var(--to-rem));
  }
  .hist_outro_msg {
    width: calc(810 * var(--to-rem));
    height: calc(310 * var(--to-rem));
    background-image: url("../images/hist-foot-bg.DyPmBe8C.webp");
  }
  .hist_outro_msg_img {
    width: calc(471.5 * var(--to-rem));
    translate: none;
  }
  .hist_cta {
    margin-top: calc(133 * var(--to-rem));
  }
  .hist_cta_link {
    --bw: calc(3 * var(--to-rem));
    --sx: calc(10 * var(--to-rem));
    --sy: calc(10 * var(--to-rem));
    width: calc(679 * var(--to-rem));
    height: calc(103 * var(--to-rem));
  }
  .hist_cta_link::before {
    width: calc(679 * var(--to-rem));
    height: calc(103 * var(--to-rem));
  }
  .hist_cta_link::after {
    top: calc(38 * var(--to-rem));
    left: calc(520 * var(--to-rem));
    border-top-width: calc(15 * var(--to-rem));
    border-bottom-width: calc(15 * var(--to-rem));
    border-left-width: calc(34 * var(--to-rem));
  }
  .hist_cta_img {
    top: calc(35 * var(--to-rem));
    left: calc(137 * var(--to-rem));
    width: calc(358 * var(--to-rem));
  }
  .hist_kira.-left {
    top: calc(65 * var(--to-rem));
    left: calc(165 * var(--to-rem));
    width: calc(130 * var(--to-rem));
  }
  .hist_kira.-right {
    top: calc(46 * var(--to-rem));
    right: calc(146 * var(--to-rem));
    width: calc(100 * var(--to-rem));
  }
  .hist_date {
    padding-top: calc(24 * var(--to-rem));
  }
  .hist_year_img {
    width: calc(var(--w) * var(--to-rem));
    margin-left: calc(var(--hist-year-x, 0) * var(--to-rem));
  }
  .hist_item:nth-of-type(1) {
    --hist-year-x: 36;
    --hist-photo-x: -3;
    --hist-photo-mt: 23;
  }
  .hist_item:nth-of-type(2) {
    --hist-year-x: 8;
    --hist-photo-x: -12;
    --hist-photo-mt: 23;
  }
  .hist_item:nth-of-type(3) {
    --hist-balloon-mt: 39;
    --hist-balloon-w: 251;
    --hist-balloon-h: 122;
    --hist-balloon-x: 54;
    --hist-year-x: 36;
    --hist-photo-x: -3;
    --hist-photo-mt: 25;
  }
  .hist_item:nth-of-type(4) {
    --hist-year-x: 9;
    --hist-photo-x: -12;
    --hist-photo-mt: 29;
  }
  .hist_item:nth-of-type(6) {
    --hist-year-x: 35;
  }
  .hist_item:nth-of-type(7) {
    --hist-balloon-mt: 28;
    --hist-balloon-w: 152;
    --hist-balloon-h: 92;
    --hist-balloon-x: -47;
    --hist-year-x: 9;
    --hist-photo-x: -12;
    --hist-photo-mt: 26;
  }
  .hist_item:nth-of-type(8) {
    --hist-year-x: 36;
    --hist-photo-x: -3;
    --hist-photo-mt: 31;
  }
  .hist_item:nth-of-type(9) {
    --hist-year-x: -5;
  }
  .hist_item:nth-of-type(10) {
    --hist-year-x: 23;
    --hist-photo-x: 1;
    --hist-photo-mt: 22;
  }
  .hist_item:nth-of-type(11) {
    --hist-year-x: -5;
    --hist-photo-x: -11;
    --hist-photo-mt: 25;
  }
  .hist_item:nth-of-type(12) {
    --hist-year-x: 31;
    --hist-photo-x: 1;
    --hist-photo-mt: 25;
  }
  .hist_item:nth-of-type(13) {
    --hist-balloon-mt: -1;
    --hist-balloon-w: 152;
    --hist-balloon-h: 91;
    --hist-balloon-x: -47;
    --hist-year-x: -5;
    --hist-photo-x: -12;
    --hist-photo-mt: 40;
  }
  .hist_item:nth-of-type(14) {
    --hist-year-x: 24;
    --hist-photo-x: -3;
    --hist-photo-mt: 33;
  }
  .hist_item:nth-of-type(15) {
    --hist-year-x: -5;
  }
  .hist_band_img {
    width: calc(360 * var(--to-rem));
  }
  .hist_era.-showa {
    top: calc(124 * var(--to-rem));
    left: 50%;
    width: calc(40 * var(--to-rem));
    transform: translateX(-50%);
  }
  .hist_era.-heisei {
    top: calc(-79 * var(--to-rem));
    left: calc(423 * var(--to-rem));
    width: calc(54 * var(--to-rem));
  }
  .hist_era.-reiwa {
    top: calc(-76 * var(--to-rem));
    left: calc(423 * var(--to-rem));
    width: calc(54 * var(--to-rem));
  }
  .hist_year_unit {
    margin-bottom: calc(-10 * var(--to-rem));
    margin-left: calc(11 * var(--to-rem));
    font-size: calc(52 * var(--to-rem));
  }
  .hist_wareki {
    margin-top: calc(-8 * var(--to-rem));
    font-size: calc(30 * var(--to-rem));
  }
  .hist_band {
    margin-top: calc(11 * var(--to-rem));
  }
  .hist_band.-line::before {
    right: calc(-50 * var(--to-rem));
    left: initial;
    width: calc(50 * var(--to-rem));
    height: calc(7 * var(--to-rem));
    background: linear-gradient(to right, var(--hist-line-color, #5a1800), #5a1800);
  }
  .hist_band.-line::after {
    top: calc(-470 * var(--to-rem));
    right: calc(-50 * var(--to-rem));
    left: initial;
    width: calc(7 * var(--to-rem));
    height: calc(515 * var(--to-rem));
  }
  .hist_photo {
    margin-top: calc(var(--hist-photo-mt, 28) * var(--to-rem));
  }
  .hist_photo_img {
    position: relative;
    left: calc(var(--hist-photo-x, 0) * var(--to-rem));
    width: calc(var(--w) * var(--to-rem));
    max-width: none;
  }
  .hist_item:nth-of-type(12) .hist_photo_img {
    width: calc(var(--w) * var(--to-rem));
  }
  .hist_balloon {
    width: calc(var(--hist-balloon-w, 152) * var(--to-rem));
    height: calc(var(--hist-balloon-h, 92) * var(--to-rem));
    margin-top: calc(var(--hist-balloon-mt, 16) * var(--to-rem));
    font-size: calc(22 * var(--to-rem));
    line-height: 1.36;
    border-width: calc(3 * var(--to-rem));
    border-radius: calc(10 * var(--to-rem));
  }
  .hist_balloon::before {
    top: calc(-22 * var(--to-rem));
    left: calc(43 * var(--to-rem));
    width: calc(25 * var(--to-rem));
    height: calc(20 * var(--to-rem));
    clip-path: polygon(0 100%, 100% 0, 95.2% 100%);
  }
  .hist_balloon::after {
    top: calc(-17 * var(--to-rem));
    left: calc(41 * var(--to-rem));
    width: calc(25 * var(--to-rem));
    height: calc(20 * var(--to-rem));
    clip-path: polygon(0 100%, 100% 0, 93% 100%);
  }
  .hist_item:nth-of-type(3) .hist_balloon {
    padding-left: calc(23 * var(--to-rem));
  }
  .hist_item:nth-of-type(13) .hist_balloon {
    display: flex;
  }
  .hist_item:nth-of-type(10) .hist_item_inner {
    position: relative;
  }
  .hist_item:nth-of-type(10) .hist_balloon {
    --hist-balloon-w: 131;
    --hist-balloon-h: 92;
    position: absolute;
    top: calc(516 * var(--to-rem));
    left: calc(330 * var(--to-rem));
    margin-top: 0;
    margin-left: 0;
  }
  .hist_item:nth-of-type(10) .hist_balloon::before {
    left: calc(25 * var(--to-rem));
    width: calc(22 * var(--to-rem));
    clip-path: polygon(100% 100%, 0 0, 4.8% 100%);
  }
  .hist_item:nth-of-type(10) .hist_balloon::after {
    left: calc(27 * var(--to-rem));
    width: calc(22 * var(--to-rem));
    clip-path: polygon(100% 100%, 0 0, 7% 100%);
  }
}
.howto_post {
  display: block grid;
  justify-items: center;
  padding-top: 0;
  padding-bottom: calc(69 * var(--to-rem));
  background: var(--color-white);
}

.howto_post_head {
  width: calc(251 * var(--to-rem));
  line-height: 0;
}

.howto_post_lead {
  padding-top: calc(2 * var(--to-rem));
  margin-top: calc(28 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  line-height: 1.5625;
  color: var(--color-text);
  text-align: center;
}

.howto_post .step_list {
  grid-template-columns: 1fr;
  row-gap: calc(45 * var(--to-rem));
  width: calc(224 * var(--to-rem));
  padding-right: 0;
  padding-left: 0;
  margin-top: calc(44.5 * var(--to-rem));
  margin-left: calc(6 * var(--to-rem));
}

.step_img.-products-post {
  top: calc(42.2 * var(--to-rem));
  left: calc(36.5 * var(--to-rem));
  width: calc(272.5 * var(--to-rem));
}

.step_img.-write-post {
  top: calc(28.2 * var(--to-rem));
  left: calc(46.5 * var(--to-rem));
  width: calc(233 * var(--to-rem));
}

.step_img.-post {
  top: calc(34.2 * var(--to-rem));
  left: calc(63.5 * var(--to-rem));
  width: calc(211.5 * var(--to-rem));
}

.step_label.-three {
  top: calc(220 * var(--to-rem));
}

.howto_post_head img {
  --w: 251;
}

.howto_post .step {
  width: 100%;
  height: calc(218 * var(--to-rem));
  border-radius: calc(13 * var(--to-rem));
}

.howto_post .step_badge {
  top: calc(-20 * var(--to-rem));
  left: calc(-6 * var(--to-rem));
  width: calc(66 * var(--to-rem));
}

.howto_post .step_img {
  top: calc(6 * var(--to-rem));
  left: 50%;
  translate: -50% 0;
}

.howto_post .step_img img {
  width: 100%;
  height: 100%;
}

.howto_post .step_img.-products-post {
  top: calc(27 * var(--to-rem));
  width: calc(180 * var(--to-rem));
  height: calc(124 * var(--to-rem));
  translate: calc(-50% - 2 * var(--to-rem)) 0;
}

.howto_post .step_img.-write-post {
  top: calc(18 * var(--to-rem));
  width: calc(153 * var(--to-rem));
  height: calc(118 * var(--to-rem));
  translate: calc(-50% - 9.5 * var(--to-rem)) 0;
}

.howto_post .step_img.-post {
  top: calc(22 * var(--to-rem));
  width: calc(140 * var(--to-rem));
  height: calc(140 * var(--to-rem));
  translate: calc(-50% - 3.5 * var(--to-rem)) 0;
}

.howto_post .step_label {
  top: calc(177 * var(--to-rem));
  translate: calc(-3 * var(--to-rem)) 0;
}

.howto_post .step_label.-three {
  top: calc(146 * var(--to-rem));
}

.howto_post .step_label img {
  max-width: none;
}

.howto_post .step:nth-child(1) .step_label img {
  width: calc(129 * var(--to-rem));
}

.howto_post .step:nth-child(2) .step_label img {
  width: calc(168 * var(--to-rem));
}

.howto_post .step:nth-child(3) .step_label img {
  width: calc(107 * var(--to-rem));
}

.howto_post_btn img {
  width: calc(219 * var(--to-rem));
  max-width: none;
}

.howto_post_note .note_item {
  padding-left: 0.85em;
  text-indent: -0.85em;
}

.howto_post_btn {
  --sx: calc(4 * var(--to-rem));
  --sy: calc(5 * var(--to-rem));
  display: block grid;
  place-items: center;
  width: calc(276 * var(--to-rem));
  height: calc(62 * var(--to-rem));
  margin-top: calc(30 * var(--to-rem));
  background: #1e8cdc;
  border-radius: 999px;
  box-shadow: calc(var(--sx) * (1 - var(--press, 0))) calc(var(--sy) * (1 - var(--press, 0))) 0 rgb(216 208 195/min(1, 2 - 2 * var(--press, 0)));
  transition: translate var(--dur) var(--ease-press), box-shadow var(--dur) var(--ease-press);
  translate: calc(var(--sx) * var(--press, 0)) calc(var(--sy) * var(--press, 0));
}

.howto_post_note {
  width: 100%;
  max-width: fit-content;
  margin-top: calc(19 * var(--to-rem));
  font-family: var(--font-note);
  font-size: calc(10 * var(--to-rem));
  font-weight: 700;
  font-feature-settings: "palt" 1;
  line-height: 1.7;
  color: #000;
  letter-spacing: -0.078em;
}

.howto_post_btn:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

.howto_post_addr {
  margin-top: calc(46 * var(--to-rem));
  color: var(--color-text);
  text-align: center;
  translate: calc(-7.5 * var(--to-rem)) 0;
}

.howto_post_addr_text {
  margin-top: calc(12.5 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  font-feature-settings: "palt" 1;
  line-height: 1.5;
}

.howto_post_addr_zip,
.howto_post_addr_to {
  display: block;
}

.howto_post_addr_zip {
  letter-spacing: 0.027em;
}

.howto_post_addr_to {
  margin-top: calc(1.5 * var(--to-rem));
  font-size: calc(18 * var(--to-rem));
  letter-spacing: 0.04em;
}

.howto_post_addr_note {
  margin-top: calc(5.5 * var(--to-rem));
  font-size: calc(14 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.5;
  letter-spacing: 0.03em;
}

@media screen and (width > 767.98px) {
  .howto_post {
    padding-top: 0;
    padding-bottom: calc(187 * var(--to-rem));
  }
  .howto_post_head {
    width: calc(501 * var(--to-rem));
  }
  .howto_post_head img {
    --w: 501;
  }
  .howto_post_lead {
    padding-top: 0;
    font-size: calc(22 * var(--to-rem));
    line-height: 1.545;
    color: #000;
    text-align: center;
  }
  .howto_post .step_list {
    grid-template-columns: repeat(3, calc(340 * var(--to-rem)));
    row-gap: normal;
    width: auto;
    margin-top: calc(78 * var(--to-rem));
    margin-left: 0;
  }
  .howto_post .step {
    width: calc(340 * var(--to-rem));
    height: calc(330 * var(--to-rem));
    border-radius: 20px;
  }
  .howto_post .step_badge {
    top: calc(-30 * var(--to-rem));
    left: calc(-10 * var(--to-rem));
    width: calc(100 * var(--to-rem));
  }
  .howto_post .step_img {
    top: auto;
    left: auto;
    width: auto;
    height: auto;
    translate: none;
  }
  .howto_post .step_img.-products-post {
    top: calc(42.2 * var(--to-rem));
    left: calc(36.5 * var(--to-rem));
    width: calc(272.5 * var(--to-rem));
    height: auto;
    translate: none;
  }
  .howto_post .step_img.-write-post {
    top: calc(28.2 * var(--to-rem));
    left: calc(46.5 * var(--to-rem));
    width: calc(233 * var(--to-rem));
    height: auto;
    translate: none;
  }
  .howto_post .step_img.-post {
    top: calc(34.2 * var(--to-rem));
    left: calc(63.5 * var(--to-rem));
    width: calc(211.5 * var(--to-rem));
    height: auto;
    translate: none;
  }
  .howto_post .step_img img {
    width: calc(var(--w, 99999) * var(--to-rem));
    height: auto;
  }
  .howto_post .step_label {
    top: calc(266 * var(--to-rem));
    translate: none;
  }
  .howto_post .step_label.-three {
    top: calc(220 * var(--to-rem));
  }
  .howto_post .step_label img,
  .howto_post .step:nth-child(1) .step_label img,
  .howto_post .step:nth-child(2) .step_label img,
  .howto_post .step:nth-child(3) .step_label img {
    width: calc(var(--w, 99999) * var(--to-rem));
    max-width: 100%;
  }
  .howto_post_btn {
    width: calc(500 * var(--to-rem));
    height: calc(100 * var(--to-rem));
    margin-top: calc(72 * var(--to-rem));
    --sx: calc(8 * var(--to-rem));
    --sy: calc(10 * var(--to-rem));
  }
  .howto_post_btn img {
    width: calc(var(--w, 99999) * var(--to-rem));
    max-width: 100%;
  }
  .howto_post_note {
    margin-top: calc(31 * var(--to-rem));
    font-size: calc(16 * var(--to-rem));
    line-height: 1.75;
    letter-spacing: 0.025em;
  }
  .howto_post_note .note_item {
    padding-left: 1em;
    text-indent: -1em;
  }
  .howto_post_addr {
    margin-top: calc(92 * var(--to-rem));
    translate: none;
  }
  .howto_post_addr_text {
    margin-top: calc(15 * var(--to-rem));
    font-size: calc(30 * var(--to-rem));
    letter-spacing: 0.042em;
  }
  .howto_post_addr_zip {
    letter-spacing: inherit;
  }
  .howto_post_addr_zip,
  .howto_post_addr_to {
    display: inline;
  }
  .howto_post_addr_to {
    margin-top: 0;
    margin-left: calc(30 * var(--to-rem));
    font-size: inherit;
    letter-spacing: inherit;
  }
  .howto_post_addr_note {
    margin-top: calc(17 * var(--to-rem));
    font-size: calc(22 * var(--to-rem));
    letter-spacing: 0.026em;
  }
}
.howto_web {
  position: relative;
  display: block grid;
  justify-items: center;
  padding-bottom: calc(75 * var(--to-rem));
  background: var(--color-white);
}

.howto_web_head {
  position: relative;
  display: block grid;
  place-items: center;
  width: calc(250 * var(--to-rem));
  height: calc(50 * var(--to-rem));
  line-height: 0;
}

.howto_web_head_band {
  grid-area: 1/1;
  width: 100%;
  height: 100%;
  object-fit: fill;
}

.howto_web_head_text {
  grid-area: 1/1;
  width: calc(198 * var(--to-rem));
  max-width: 100%;
}

.howto_web .step_list {
  width: calc(224 * var(--to-rem));
  margin-top: calc(51 * var(--to-rem));
  margin-left: calc(6 * var(--to-rem));
}

.howto_web_note {
  position: absolute;
  top: calc(-20 * var(--to-rem));
  left: calc(144.5 * var(--to-rem));
  width: calc(105 * var(--to-rem));
  max-width: none;
  margin: 0;
}

@media screen and (width > 767.98px) {
  .howto_web {
    padding-bottom: calc(125 * var(--to-rem));
  }
  .howto_web_head {
    width: calc(501 * var(--to-rem));
    height: auto;
  }
  .howto_web_head_band {
    height: auto;
  }
  .howto_web_head_text {
    width: calc(var(--w) * var(--to-rem));
  }
  .howto_web .step_list {
    width: auto;
    margin-top: calc(67 * var(--to-rem));
    margin-left: 0;
  }
  .howto_web_note {
    top: calc(-30 * var(--to-rem));
    left: calc(240 * var(--to-rem));
    width: calc(172 * var(--to-rem));
  }
}
.howto {
  display: block grid;
  justify-items: center;
  padding-top: calc(86.5 * var(--to-rem));
  padding-bottom: calc(78 * var(--to-rem));
  background: var(--color-white);
}

.howto_lead {
  padding-top: calc(19 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  line-height: 1.594;
  text-align: center;
}

.howto_nav {
  display: block grid;
  grid-template-columns: repeat(2, calc(145 * var(--to-rem)));
  width: calc(290 * var(--to-rem));
  margin-top: calc(27 * var(--to-rem));
  border-left: calc(1 * var(--to-rem)) solid var(--color-text);
}

.howto_nav_item {
  display: block grid;
  place-items: center;
  height: calc(70 * var(--to-rem));
  border-right: calc(1 * var(--to-rem)) solid var(--color-text);
}

.howto_nav_link {
  display: block flex;
  flex-direction: column;
  gap: calc(12 * var(--to-rem));
  align-items: center;
  font-size: calc(18 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.194;
  color: var(--color-red);
  text-align: center;
  text-decoration: none;
  letter-spacing: 0.05em;
}

.howto_nav_link.-post {
  color: #1e8cdc;
}

.howto_nav_arrow {
  flex: none;
  width: calc(14 * var(--to-rem));
  height: calc(8 * var(--to-rem));
  background: url("../images/howto-arrow-web@2x.CDrXlcR3.webp") 0 0/100% 100% no-repeat;
  transition: translate var(--dur) var(--ease-press);
  translate: 0 calc(3 * var(--to-rem) * var(--nudge, 0));
}

.howto_nav_link.-post .howto_nav_arrow {
  background-image: url("../images/howto-arrow-post@2x.BYjbHQLs.webp");
}

.howto_nav_link:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

@media screen and (width > 767.98px) {
  .howto {
    padding-top: calc(149 * var(--to-rem));
    padding-bottom: calc(158 * var(--to-rem));
  }
  .howto_lead {
    padding-top: calc(13 * var(--to-rem));
    font-size: calc(22 * var(--to-rem));
    line-height: 1.545;
  }
  .howto_nav {
    grid-template-columns: repeat(2, calc(450 * var(--to-rem)));
    width: auto;
    margin-top: calc(39 * var(--to-rem));
  }
  .howto_nav_item {
    height: calc(71 * var(--to-rem));
  }
  .howto_nav_link {
    flex-direction: row;
    gap: calc(55 * var(--to-rem));
    font-size: calc(30 * var(--to-rem));
    line-height: inherit;
    text-align: inherit;
  }
  .howto_nav_link.-post {
    gap: calc(35 * var(--to-rem));
  }
  .howto_nav_arrow {
    width: calc(24 * var(--to-rem));
    height: calc(14 * var(--to-rem));
  }
}
.intro {
  position: relative;
  display: block grid;
  justify-items: center;
  padding-top: calc(25 * var(--to-rem));
  padding-bottom: calc(91 * var(--to-rem));
  overflow-x: clip;
}

.intro::before {
  position: absolute;
  inset: 0 calc(50% - 50vw) 0 calc(50% - 50vw);
  z-index: -1;
  content: "";
  background: url("../images/intro-bg@2x.ClMAJCT8.webp") 0 0/100% 100% no-repeat;
  background-size: cover;
}

.intro_xbanner {
  width: calc(350 * var(--to-rem));
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.xbanner {
  position: relative;
  display: block;
  transition: translate var(--dur) var(--ease-press);
  translate: 0 round(var(--to-rem) * max(0, 2 * var(--press, 0) - 1), 1px);
}

.xbanner::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
  background: linear-gradient(110deg, transparent 42%, rgba(255, 255, 255, 0.6) 50%, transparent 58%) 110% 0/250% 100% no-repeat;
}

@media (any-hover: hover) {
  .xbanner:hover::after {
    background-position: -10% 0;
    transition: background-position 0.45s ease-out;
  }
}
.xbanner:focus-visible::after {
  background-position: -10% 0;
  transition: background-position 0.45s ease-out;
}

@media (any-hover: none) and (prefers-reduced-motion: no-preference) {
  .xbanner::after {
    animation: btn-shine 3.6s ease-out infinite;
  }
}
.xbanner_img {
  width: 100%;
}

.intro_lead {
  padding-top: calc(127 * var(--to-rem));
}

.intro_lead_img {
  width: calc(280.75 * var(--to-rem));
  max-width: 100%;
}

.intro_anniv {
  position: relative;
  width: calc(252 * var(--to-rem));
  padding-top: calc(99 * var(--to-rem));
}

.intro_anniv_img {
  display: block;
}

.intro_btn {
  margin-top: calc(52 * var(--to-rem));
}

.intro_deco {
  position: absolute;
  max-width: none;
  pointer-events: none;
}

.intro_deco.-komochi {
  top: calc(154.5 * var(--to-rem));
  left: calc(27.5 * var(--to-rem));
  width: calc(76 * var(--to-rem));
  rotate: -11.46deg;
}

.intro_deco.-obukuro {
  top: calc(385.5 * var(--to-rem));
  right: auto;
  left: calc(301 * var(--to-rem));
  width: calc(66 * var(--to-rem));
  rotate: 5deg;
}

.intro_deco.-tanba {
  top: calc(602.5 * var(--to-rem));
  left: calc(20 * var(--to-rem));
  width: calc(56.5 * var(--to-rem));
  rotate: -10.62deg;
}

.xbanner:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

@media screen and (width > 767.98px) {
  .intro {
    padding-top: calc(53 * var(--to-rem));
    padding-bottom: calc(160 * var(--to-rem));
    overflow-x: visible;
  }
  .intro_deco.-komochi {
    top: calc(407 * var(--to-rem));
    left: calc(132 * var(--to-rem));
    width: calc(211 * var(--to-rem));
    rotate: -11.5deg;
  }
  .intro_deco.-obukuro {
    top: calc(770 * var(--to-rem));
    left: calc(1334.5 * var(--to-rem));
    width: calc(183 * var(--to-rem));
    rotate: 6.72deg;
  }
  .intro_deco.-tanba {
    top: calc(1046.5 * var(--to-rem));
    left: calc(187.5 * var(--to-rem));
    width: calc(157 * var(--to-rem));
    rotate: -7.24deg;
  }
  .intro_xbanner {
    width: calc(1260 * var(--to-rem));
    margin-right: 0;
    margin-left: 0;
  }
  .intro_lead {
    padding-top: calc(141 * var(--to-rem));
  }
  .intro_lead_img {
    width: calc(879 * var(--to-rem));
  }
  .intro_anniv {
    width: calc(469 * var(--to-rem));
    padding-top: calc(114.5 * var(--to-rem));
  }
  .intro_btn {
    margin-top: calc(119 * var(--to-rem));
  }
}
.kiyaku .main {
  position: relative;
  z-index: 0;
}

.kiyaku .main::before {
  position: absolute;
  inset: 0 calc(50% - 50vw);
  z-index: -1;
  content: "";
  background: #f9f5bf;
}

.kiyaku_page {
  padding-top: calc(111 * var(--to-rem));
  padding-bottom: calc(64 * var(--to-rem));
  color: var(--color-text);
}

.kiyaku_head {
  font-size: calc(20 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.5;
  text-align: center;
}

.kiyaku_panel {
  width: calc(340 * var(--to-rem));
  padding: calc(32 * var(--to-rem)) calc(30 * var(--to-rem)) calc(42 * var(--to-rem));
  margin-top: calc(32 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.8;
  background: var(--color-white);
  border-radius: calc(18 * var(--to-rem));
}

.kiyaku_sec {
  padding-top: calc(24 * var(--to-rem));
  padding-bottom: calc(24 * var(--to-rem));
  border-bottom: 1px solid var(--color-gray-bg);
}

.kiyaku_sec:last-of-type {
  border-bottom: 0;
}

.kiyaku_ttl {
  font-size: calc(20 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.5;
}

.kiyaku_subttl {
  display: block flex;
  gap: calc(4 * var(--to-rem));
  align-items: baseline;
  margin-top: calc(20 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.6;
}

.kiyaku_subttl::before {
  color: var(--color-orange);
  content: "■";
}

.kiyaku_text {
  margin: 0;
}

.kiyaku_text a,
.kiyaku_list a {
  text-decoration: none;
}

@media (any-hover: hover) {
  .kiyaku_text a:hover,
  .kiyaku_list a:hover {
    text-decoration: underline;
  }
}
.kiyaku_text a:focus-visible,
.kiyaku_list a:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

.kiyaku_text + .kiyaku_text,
.kiyaku_text + .kiyaku_list,
.kiyaku_list + .kiyaku_text,
.kiyaku_list + .kiyaku_list {
  margin-top: calc(8 * var(--to-rem));
}

.kiyaku_text.-bracket {
  font-weight: var(--fw-bold);
}

.kiyaku_list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.kiyaku_list > li {
  padding-left: 1em;
  text-indent: -1em;
}

.kiyaku_list.-num > li {
  padding-left: 0.75em;
  text-indent: -0.75em;
}

.kiyaku_list > li + li {
  margin-top: calc(4 * var(--to-rem));
}

.kiyaku_list.-sep,
.kiyaku_text.-sep,
.kiyaku_list > li.-sep {
  margin-top: calc(14 * var(--to-rem));
}

.kiyaku_enacted {
  margin-top: calc(24 * var(--to-rem));
  text-align: left;
}

.kiyaku_cta {
  padding-right: calc(6 * var(--to-rem));
  margin-top: calc(48 * var(--to-rem));
  line-height: 0;
  text-align: center;
}

.kiyaku_link_btn {
  --bw: calc(2 * var(--to-rem));
  --sx: calc(6 * var(--to-rem));
  --sy: calc(6 * var(--to-rem));
  --btn-w: calc(280 * var(--to-rem));
  --btn-h: calc(62 * var(--to-rem));
  position: relative;
  box-sizing: border-box;
  display: inline-block;
  width: var(--btn-w);
  height: var(--btn-h);
  text-decoration: none;
  vertical-align: top;
  border: var(--bw) solid var(--color-text);
  transition: translate var(--dur) var(--ease-press);
  translate: calc(var(--sx) * var(--press, 0)) calc(var(--sy) * var(--press, 0));
}

.kiyaku_link_btn::before {
  position: absolute;
  top: calc(var(--sy) - var(--bw));
  left: calc(var(--sx) - var(--bw));
  box-sizing: border-box;
  width: var(--btn-w);
  height: var(--btn-h);
  content: "";
  border: var(--bw) solid var(--color-text);
  transition: translate var(--dur) var(--ease-press);
  translate: calc(-1 * var(--sx) * var(--press, 0)) calc(-1 * var(--sy) * var(--press, 0));
}

.kiyaku_link_btn_img {
  position: absolute;
  top: calc(22 * var(--to-rem));
  left: calc(38 * var(--to-rem));
  width: calc(179 * var(--to-rem));
}

.kiyaku_link_btn::after {
  position: absolute;
  top: calc(24 * var(--to-rem));
  left: calc(230 * var(--to-rem));
  width: 0;
  height: 0;
  content: "";
  border-top: calc(8 * var(--to-rem)) solid transparent;
  border-bottom: calc(8 * var(--to-rem)) solid transparent;
  border-left: calc(17 * var(--to-rem)) solid var(--color-text);
  transition: translate var(--dur) var(--ease-press);
  translate: calc(4 * var(--to-rem) * var(--nudge, 0)) 0;
}

@media (any-hover: hover) {
  .kiyaku_link_btn:hover {
    --press: 1;
  }
}
.kiyaku_link_btn:focus-visible {
  --press: 1;
  outline: 3px solid var(--color-text);
  outline-offset: 3px;
}

@media screen and (width > 767.98px) {
  .kiyaku_page {
    padding-top: calc(190 * var(--to-rem));
    padding-bottom: calc(164 * var(--to-rem));
  }
  .kiyaku_head {
    font-size: calc(40 * var(--to-rem));
  }
  .kiyaku_panel {
    width: calc(1330 * var(--to-rem));
    padding: calc(81 * var(--to-rem)) calc(214.5 * var(--to-rem)) calc(141 * var(--to-rem));
    margin-top: calc(74 * var(--to-rem));
    font-size: calc(18 * var(--to-rem));
    line-height: 1.8;
    border-radius: calc(36 * var(--to-rem));
  }
  .kiyaku_sec {
    padding-top: calc(32 * var(--to-rem));
    padding-bottom: calc(32 * var(--to-rem));
  }
  .kiyaku_ttl {
    font-size: calc(28 * var(--to-rem));
  }
  .kiyaku_subttl {
    margin-top: calc(24 * var(--to-rem));
    font-size: calc(20 * var(--to-rem));
  }
  .kiyaku_list.-sep,
  .kiyaku_text.-sep,
  .kiyaku_list > li.-sep {
    margin-top: calc(18 * var(--to-rem));
  }
  .kiyaku_enacted {
    margin-top: calc(32 * var(--to-rem));
  }
  .kiyaku_cta {
    padding-right: calc(10 * var(--to-rem));
    margin-top: calc(118 * var(--to-rem));
  }
  .kiyaku_link_btn {
    --bw: calc(3 * var(--to-rem));
    --sx: calc(10 * var(--to-rem));
    --sy: calc(10 * var(--to-rem));
    --btn-w: calc(679 * var(--to-rem));
    --btn-h: calc(103 * var(--to-rem));
  }
  .kiyaku_link_btn_img {
    top: calc(35 * var(--to-rem));
    left: calc(137 * var(--to-rem));
    width: calc(358 * var(--to-rem));
  }
  .kiyaku_link_btn::after {
    top: calc(38 * var(--to-rem));
    left: calc(520 * var(--to-rem));
    border-top-width: calc(15 * var(--to-rem));
    border-bottom-width: calc(15 * var(--to-rem));
    border-left-width: calc(34 * var(--to-rem));
  }
}
@media screen and (width >= 1647px) {
  .lineup {
    --to-rem: 1px;
  }
}
.lineup .main {
  padding-top: calc(126 * var(--to-rem));
  padding-bottom: calc(112 * var(--to-rem));
}

.lineup .main::before {
  position: absolute;
  inset: 0 calc(50% - 50vw);
  z-index: -1;
  content: "";
  background: url("../images/lineup-bg-sp@2x.3QoIFAIb.webp") 0 0/100% 100% no-repeat;
}

.lineup_head {
  font-size: calc(15 * var(--to-rem));
  letter-spacing: 0.0333em;
}

.lineup_series {
  margin-top: calc(52 * var(--to-rem));
}

.lineup_series_logo {
  display: flex;
  justify-content: center;
  margin: 0 0 calc(46 * var(--to-rem));
}

.lineup_series.-omame .lineup_series_logo {
  margin-bottom: calc(65 * var(--to-rem));
}

.lineup_series_logo img {
  width: auto;
  height: calc(76 * var(--to-rem));
}

.lineup_series.-fujikkoni .lineup_series_logo img {
  height: calc(107 * var(--to-rem));
}

.lineup_series.-omame .lineup_series_logo img {
  height: calc(72 * var(--to-rem));
}

.lineup_acc {
  width: calc(350 * var(--to-rem));
  margin: calc(52 * var(--to-rem)) auto 0;
  overflow: hidden;
  background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to right, #ec6c00, #e62310) border-box;
  border: calc(2 * var(--to-rem)) solid transparent;
  border-radius: calc(5 * var(--to-rem));
}

.lineup_acc.-mirai {
  background: linear-gradient(#fff, #fff) padding-box, linear-gradient(160deg, #00469b, #15126f) border-box;
}

.lineup_series.-fujikko {
  margin-top: calc(128 * var(--to-rem));
}

.lineup_series.-fujikkoni {
  margin-top: calc(72 * var(--to-rem));
}

.lineup_acc.-mirai {
  margin-top: calc(54 * var(--to-rem));
}

.lineup_series.-omame {
  margin-top: calc(70 * var(--to-rem));
}

.lineup_acc.-amasa {
  margin-top: calc(57 * var(--to-rem));
}

.lineup_acc.-ozubu {
  margin-top: calc(27 * var(--to-rem));
}

.lineup_acc.-kobachi {
  margin-top: calc(46 * var(--to-rem));
}

.lineup_acc.-kobachip {
  margin-top: calc(41 * var(--to-rem));
}

.lineup_acc.-tanba {
  margin-top: calc(33 * var(--to-rem));
}

.lineup_acc_head {
  margin: calc(-2 * var(--to-rem)) calc(-2 * var(--to-rem)) 0;
}

.lineup_acc_btn {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: calc(14 * var(--to-rem)) calc(24 * var(--to-rem)) calc(10 * var(--to-rem));
  font-family: inherit;
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1;
  color: var(--color-white);
  letter-spacing: -0.05em;
  cursor: pointer;
  background: linear-gradient(to right, #ec6b00, #e62310);
  border: 0;
  box-shadow: inset 0 calc(3 * var(--to-rem) * max(0, 2 * var(--press, 0) - 1)) 0 rgba(0, 0, 0, 0.18);
  transition: filter var(--dur) var(--ease-press), box-shadow var(--dur) var(--ease-press);
  --dir: -1;
}

.lineup_acc.-mirai .lineup_acc_btn {
  letter-spacing: -0.07em;
  background: linear-gradient(to right, #00469b, #131773);
}

.lineup_acc_btn::after {
  position: absolute;
  top: 50%;
  right: calc(19 * var(--to-rem));
  width: calc(14 * var(--to-rem));
  aspect-ratio: 58/35;
  content: "";
  background: url("../images/arrow-white@2x.7npCN84A.webp") no-repeat center/contain;
  transition: transform 0.3s ease, translate var(--dur) var(--ease-press);
  transform: translateY(-50%);
  translate: 0 calc(3 * var(--to-rem) * var(--nudge, 0) * var(--dir));
}

.lineup_acc.is-closed .lineup_acc_btn {
  --dir: 1;
}

.lineup_acc.is-closed .lineup_acc_btn::after {
  transform: translateY(-50%) rotate(180deg);
}

@media (any-hover: hover) {
  .lineup_acc_btn:hover {
    filter: brightness(1.1);
  }
}
.lineup_acc_btn:focus-visible {
  filter: brightness(1.1);
}

.lineup_acc_body {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.3s ease;
}

.lineup_acc.is-closed .lineup_acc_body {
  grid-template-rows: 0fr;
}

.lineup_acc.is-animated .lineup_items {
  transition: padding 0.3s ease;
}

.lineup_acc.is-closed .lineup_items {
  padding-top: 0;
  padding-bottom: 0;
}

.lineup_acc_body > * {
  overflow: hidden;
}

.lineup_items {
  display: grid;
  grid-template-columns: repeat(3, calc(117 * var(--to-rem)));
  row-gap: calc(37 * var(--to-rem));
  align-items: start;
  justify-content: center;
  padding: 0;
  margin: 0;
  list-style: none;
}

.lineup_acc .lineup_items {
  grid-template-columns: repeat(3, calc(114 * var(--to-rem)));
  padding: calc(46 * var(--to-rem)) 0 calc(44 * var(--to-rem));
}

.lineup_series.-fujikko .lineup_items {
  row-gap: calc(32 * var(--to-rem));
}

.lineup_series.-omame .lineup_items {
  row-gap: calc(39 * var(--to-rem));
}

.lineup_acc.-amasa .lineup_items {
  row-gap: calc(34 * var(--to-rem));
}

.lineup_acc.-ozubu .lineup_items {
  row-gap: calc(34 * var(--to-rem));
}

.lineup_acc.-kobachi .lineup_items {
  row-gap: calc(38 * var(--to-rem));
}

.lineup_acc.-tanba .lineup_items {
  row-gap: calc(34 * var(--to-rem));
}

.lineup_item {
  display: flex;
  flex-direction: column;
  width: calc(95 * var(--to-rem));
  margin: 0 auto;
}

.lineup_item_img {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  height: calc(95 * var(--to-rem));
}

.lineup_item_img img {
  width: auto;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom center;
}

.lineup_series.-fujikko .lineup_item_img {
  height: calc(116 * var(--to-rem));
}

.lineup_series.-omame .lineup_item_img,
.lineup_acc.-amasa .lineup_item_img,
.lineup_acc.-ozubu .lineup_item_img,
.lineup_acc.-tanba .lineup_item_img {
  height: calc(111 * var(--to-rem));
}

.lineup_acc.-kobachi .lineup_item_img,
.lineup_acc.-kobachip .lineup_item_img {
  height: calc(94 * var(--to-rem));
}

.lineup_item_name {
  margin-top: calc(12 * var(--to-rem));
  font-size: calc(12 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.4;
  color: #5a1800;
  white-space: nowrap;
}

.lineup_acc.-ozubu .lineup_item_name,
.lineup_acc.-kobachi .lineup_item_name {
  color: #000;
}

.lineup_acc.-ozubu .lineup_item_name::first-line,
.lineup_acc.-kobachi .lineup_item_name::first-line {
  color: #5a1800;
}

.lineup_top {
  margin-top: calc(77 * var(--to-rem));
  text-align: center;
}

.lineup_top_btn {
  --sx: calc(5 * var(--to-rem));
  --sy: calc(7 * var(--to-rem));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(300 * var(--to-rem));
  height: calc(70 * var(--to-rem));
  background: #ffc878;
  border-radius: calc(35 * var(--to-rem));
  box-shadow: calc(var(--sx) * (1 - var(--press, 0))) calc(var(--sy) * (1 - var(--press, 0))) 0 0 rgb(216 208 195/min(1, 2 - 2 * var(--press, 0)));
  transition: translate var(--dur) var(--ease-press), box-shadow var(--dur) var(--ease-press);
  translate: calc(var(--sx) * var(--press, 0)) calc(var(--sy) * var(--press, 0));
}

.lineup_top_btn:focus-visible {
  outline: 3px solid #5a1800;
  outline-offset: 3px;
}

.lineup_top_btn img {
  width: calc(140 * var(--to-rem));
  height: auto;
}

@media screen and (width > 767.98px) {
  .lineup .main::before {
    background-image: url("../images/lineup-bg-pc@2x.C1-LPNXd.webp");
  }
  .lineup .main {
    padding-top: calc(200 * var(--to-rem));
    padding-bottom: calc(237 * var(--to-rem));
  }
  .lineup_head {
    font-size: calc(30 * var(--to-rem));
  }
  .lineup_series,
  .lineup_acc {
    margin-top: calc(147 * var(--to-rem));
  }
  .lineup_series.-fujikko {
    margin-top: calc(142 * var(--to-rem));
  }
  .lineup_series.-fujikkoni {
    margin-top: calc(142 * var(--to-rem));
  }
  .lineup_acc.-mirai {
    margin-top: calc(71 * var(--to-rem));
  }
  .lineup_series.-omame {
    margin-top: calc(146 * var(--to-rem));
  }
  .lineup_acc.-amasa {
    margin-top: calc(63 * var(--to-rem));
  }
  .lineup_acc.-ozubu {
    margin-top: calc(59 * var(--to-rem));
  }
  .lineup_acc.-kobachi {
    margin-top: calc(61 * var(--to-rem));
  }
  .lineup_acc.-kobachip {
    margin-top: calc(67 * var(--to-rem));
  }
  .lineup_acc.-tanba {
    margin-top: calc(66 * var(--to-rem));
  }
  .lineup_series_logo {
    margin-bottom: calc(71 * var(--to-rem));
  }
  .lineup_series_logo img {
    height: calc(91 * var(--to-rem));
  }
  .lineup_series.-fujikkoni .lineup_series_logo img {
    height: calc(128 * var(--to-rem));
  }
  .lineup_series.-omame .lineup_series_logo img {
    height: calc(77 * var(--to-rem));
  }
  .lineup_series.-omame .lineup_series_logo {
    margin-bottom: calc(71 * var(--to-rem));
  }
  .lineup_acc {
    width: calc(1100 * var(--to-rem));
    margin-top: calc(104 * var(--to-rem));
    border-radius: calc(6 * var(--to-rem));
  }
  .lineup_acc_btn {
    justify-content: center;
    height: calc(50 * var(--to-rem));
    padding-top: calc(13 * var(--to-rem));
    padding-bottom: calc(13 * var(--to-rem));
    font-size: calc(26 * var(--to-rem));
  }
  .lineup_acc_btn::after {
    right: calc(275 * var(--to-rem));
    width: calc(24 * var(--to-rem));
    aspect-ratio: 24/14;
  }
  .lineup_item {
    width: calc(168 * var(--to-rem));
  }
  .lineup_series.-fujikko .lineup_items,
  .lineup_series.-omame .lineup_items,
  .lineup_acc.-amasa .lineup_items,
  .lineup_acc.-ozubu .lineup_items,
  .lineup_acc.-kobachi .lineup_items,
  .lineup_acc.-tanba .lineup_items {
    row-gap: calc(49 * var(--to-rem));
  }
  .lineup_items {
    grid-template-columns: repeat(5, calc(228 * var(--to-rem)));
    row-gap: calc(49 * var(--to-rem));
  }
  .lineup_acc .lineup_items {
    grid-template-columns: repeat(5, calc(218 * var(--to-rem)));
    padding: calc(60 * var(--to-rem)) 0 calc(53 * var(--to-rem));
  }
  .lineup_item_img {
    height: calc(168 * var(--to-rem));
  }
  .lineup_series.-fujikko .lineup_item_img {
    height: calc(206 * var(--to-rem));
  }
  .lineup_series.-omame .lineup_item_img,
  .lineup_acc.-amasa .lineup_item_img,
  .lineup_acc.-ozubu .lineup_item_img,
  .lineup_acc.-tanba .lineup_item_img {
    height: calc(196 * var(--to-rem));
  }
  .lineup_acc.-kobachi .lineup_item_img,
  .lineup_acc.-kobachip .lineup_item_img {
    height: calc(167 * var(--to-rem));
  }
  .lineup_item_name {
    margin-top: calc(20 * var(--to-rem));
    font-size: calc(22 * var(--to-rem));
  }
  .lineup_top {
    margin-top: calc(177 * var(--to-rem));
  }
  .lineup_top_btn {
    width: calc(500 * var(--to-rem));
    height: calc(100 * var(--to-rem));
    border-radius: calc(50 * var(--to-rem));
    --sx: calc(8 * var(--to-rem));
    --sy: calc(10 * var(--to-rem));
  }
  .lineup_top_btn img {
    width: calc(192 * var(--to-rem));
  }
}
.outline {
  position: relative;
  display: block grid;
  justify-items: center;
  padding-top: calc(17 * var(--to-rem));
  padding-bottom: calc(105 * var(--to-rem));
  background: var(--color-white);
}

.outline_lead {
  padding-top: calc(15 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  line-height: 1.5313;
  text-align: center;
}

.outline_btn {
  display: block flex;
  gap: calc(10 * var(--to-rem));
  align-items: center;
  justify-content: center;
  width: calc(276 * var(--to-rem));
  height: calc(50 * var(--to-rem));
  margin-top: calc(21 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  color: var(--color-white);
  text-decoration: none;
  letter-spacing: 0.04em;
  background: var(--color-text);
  border-radius: calc(6 * var(--to-rem));
  transition: background-color var(--dur) var(--ease-press), translate var(--dur) var(--ease-press);
  translate: 0 calc(var(--to-rem) * max(0, 2 * var(--press, 0) - 1));
}

.outline_btn_arrow {
  flex: none;
  width: calc(9 * var(--to-rem));
  height: calc(11 * var(--to-rem));
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: currentcolor;
  transition: translate var(--dur) var(--ease-press);
  translate: calc(4 * var(--to-rem) * var(--nudge, 0)) 0;
}

.outline_note {
  width: 100%;
  max-width: fit-content;
  margin-top: calc(36.5 * var(--to-rem));
  font-family: var(--font-note);
  font-size: calc(10 * var(--to-rem));
  font-weight: 700;
  font-feature-settings: "palt" 1;
  line-height: 1.7;
  color: #000;
  letter-spacing: -0.078em;
}

.outline_note .note_item {
  padding-left: 0.85em;
  text-indent: -0.85em;
}

.outline_note a {
  text-decoration: none;
  background: linear-gradient(currentcolor, currentcolor) 0 100%/calc(100% * var(--nudge, 0)) max(1px, 1 * var(--to-rem)) no-repeat;
  transition: background-size var(--dur) var(--ease-press);
}

.outline_note a:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

.outline_chara {
  position: absolute;
  top: calc(390 * var(--to-rem));
  left: calc(2.5 * var(--to-rem));
  z-index: 2;
  width: calc(62.75 * var(--to-rem));
  max-width: none;
  pointer-events: none;
}

@media screen and (width > 767.98px) {
  .outline {
    padding-top: 0;
    padding-bottom: calc(357 * var(--to-rem));
  }
  .outline_lead {
    padding-top: calc(8 * var(--to-rem));
    font-size: calc(22 * var(--to-rem));
    line-height: 1.545;
  }
  .outline_btn {
    gap: calc(20 * var(--to-rem));
    width: calc(400 * var(--to-rem));
    height: calc(64 * var(--to-rem));
    margin-top: calc(35 * var(--to-rem));
    font-size: calc(27 * var(--to-rem));
  }
  .outline_btn_arrow {
    width: calc(23 * var(--to-rem));
    height: calc(19 * var(--to-rem));
  }
  .outline_note {
    margin-top: calc(75 * var(--to-rem));
    font-size: calc(16 * var(--to-rem));
    line-height: 1.75;
    letter-spacing: 0.025em;
  }
  .outline_note .note_item {
    padding-left: 1em;
    text-indent: -1em;
  }
  .outline_chara {
    top: calc(559.5 * var(--to-rem));
    left: calc(50% - 50vw + 6 * var(--to-rem));
    width: calc(125.5 * var(--to-rem));
  }
}
@media (any-hover: hover) {
  .outline_btn:hover {
    background-color: #7b2a05;
  }
}
.outline_btn:focus-visible {
  background-color: #7b2a05;
  outline: 3px solid var(--color-text);
  outline-offset: 3px;
}

.outline_btn:active {
  background-color: #481300;
}

.present {
  position: relative;
  display: block grid;
  justify-items: center;
  padding-top: calc(23 * var(--to-rem));
  padding-bottom: calc(110.5 * var(--to-rem));
  background: var(--color-white);
}

.present::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: calc(100% - 1px);
  left: calc(50% - 50vw);
  height: calc(35 * var(--to-rem));
  content: "";
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1647 156.59' preserveAspectRatio='none'%3E%3Cpath d='M0,156.59 Q823.5,-156.59 1647,156.59 Z' fill='%23fff'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;
}

.present_chara {
  position: static;
  top: calc(-96 * var(--to-rem));
  left: calc(1286 * var(--to-rem));
  z-index: 1;
  width: calc(144 * var(--to-rem));
  max-width: none;
  margin-right: auto;
  margin-left: auto;
}

.present_ttl {
  position: static;
  top: calc(-59 * var(--to-rem));
  left: calc(459 * var(--to-rem));
  z-index: 1;
  width: calc(288 * var(--to-rem));
  padding-top: calc(18 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
  line-height: 0;
}

.present_ribbon {
  width: calc(220 * var(--to-rem));
  padding-top: calc(12.5 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
  line-height: 0;
}

.present_ribbon + .prize {
  margin-top: calc(63.5 * var(--to-rem));
}

.prize + .prize {
  margin-top: calc(80 * var(--to-rem));
}

.prize + .prize.-chance {
  margin-top: calc(90 * var(--to-rem));
}

.present_period {
  width: calc(309 * var(--to-rem));
  padding-top: calc(23 * var(--to-rem));
  padding-bottom: calc(35 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
  line-height: 0;
}

.present_period_img {
  width: 100%;
}

.present_ttl_img,
.present_ribbon_img {
  width: 100%;
}

.present_note {
  box-sizing: border-box;
  width: fit-content;
  max-width: 100%;
  padding-top: calc(33.5 * var(--to-rem));
}

.note.-inline.present_note {
  display: block;
  font-size: calc(11 * var(--to-rem));
  line-height: 1.636;
}

.note.-inline.present_note .note_item {
  padding-left: 1em;
  text-indent: -1em;
}

.present_btn {
  margin-top: calc(51 * var(--to-rem));
}

@media screen and (width > 767.98px) {
  .present {
    padding-top: calc(57 * var(--to-rem));
    padding-bottom: calc(168 * var(--to-rem));
  }
  .present::before {
    height: calc(157 * var(--to-rem));
  }
  .present_chara {
    position: absolute;
    width: calc(281 * var(--to-rem));
    margin-right: 0;
    margin-left: 0;
  }
  .present_ttl {
    position: absolute;
    width: calc(736 * var(--to-rem));
    padding-top: 0;
    margin-right: 0;
    margin-left: 0;
  }
  .present_ribbon {
    width: calc(434 * var(--to-rem));
    padding-top: 0;
    margin-right: 0;
    margin-left: 0;
  }
  .present_ttl_img,
  .present_ribbon_img {
    width: calc(var(--w, 99999) * var(--to-rem));
  }
  .present_note {
    width: auto;
    padding-top: calc(55 * var(--to-rem));
  }
  .note.-inline.present_note {
    display: block flex;
    font-size: calc(20 * var(--to-rem));
    line-height: 1.91;
  }
  .note.-inline.present_note .note_item {
    padding-left: 0;
    text-indent: 0;
  }
  .present_btn {
    margin-top: calc(76 * var(--to-rem));
  }
  .present_ribbon + .prize {
    margin-top: calc(71 * var(--to-rem));
  }
  .prize + .prize,
  .prize + .prize.-chance {
    margin-top: calc(100 * var(--to-rem));
  }
  .present_period {
    box-sizing: border-box;
    width: calc(618.5 * var(--to-rem));
    height: calc(127.5 * var(--to-rem));
    padding-top: calc(3 * var(--to-rem));
    padding-bottom: 0;
    translate: calc(-3.5 * var(--to-rem)) 0;
  }
}
.receipt {
  position: relative;
  display: block grid;
  justify-items: center;
  padding-top: calc(12 * var(--to-rem));
  padding-bottom: calc(75 * var(--to-rem));
  background: var(--color-white);
}

.receipt_lead {
  padding-top: calc(19 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.5625;
  color: var(--color-text);
  text-align: center;
  letter-spacing: 0.025em;
}

.receipt_deadline {
  display: block grid;
  place-items: center;
  width: calc(275 * var(--to-rem));
  max-width: 100%;
  height: calc(80 * var(--to-rem));
  padding: 0;
  margin-top: calc(22 * var(--to-rem));
  margin-left: 0;
  line-height: 0;
  background: #ffe078;
  border-radius: 999px;
}

.receipt_deadline_img {
  width: calc(210 * var(--to-rem));
  max-width: none;
}

.receipt_chara {
  position: absolute;
  top: calc(996.3 * var(--to-rem));
  right: auto;
  left: calc(277.5 * var(--to-rem));
  z-index: 2;
  width: calc(63.5 * var(--to-rem));
  max-width: none;
  pointer-events: none;
}

.receipt_subhead {
  display: grid;
  place-items: center;
  width: calc(275 * var(--to-rem));
  max-width: 100%;
  height: calc(28 * var(--to-rem));
  margin-top: calc(78.5 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1;
  color: var(--color-text);
  color: #000;
  text-align: center;
  letter-spacing: -0.015em;
  background: var(--color-gray-bg2);
}

.receipt_subhead.-ng {
  margin-top: calc(122 * var(--to-rem));
}

.receipt_req {
  display: block grid;
  grid-template-columns: 1fr;
  gap: 0;
  align-items: start;
  width: calc(311 * var(--to-rem));
  max-width: 100%;
  padding-top: calc(32 * var(--to-rem));
  padding-right: 0;
  padding-left: 0;
  margin-left: 0;
}

.receipt_req_img {
  justify-self: start;
  margin-left: calc(30 * var(--to-rem));
  line-height: 0;
}

.receipt_req_note {
  padding-top: calc(36 * var(--to-rem));
  font-size: calc(12 * var(--to-rem));
  font-feature-settings: "palt" 1;
  line-height: 1.625;
  color: #000;
  letter-spacing: 0;
}

@media screen and (width < 374px) {
  .receipt_req_note {
    padding-top: calc(11 * var(--to-rem));
  }
}
.receipt_req_note .note_item {
  text-indent: calc(-6 * var(--to-rem));
}

.receipt_req_note .note_item + .note_item {
  margin-top: calc(6.5 * var(--to-rem));
}

.receipt_ng {
  display: block grid;
  grid-template-columns: repeat(2, calc(145 * var(--to-rem)));
  gap: calc(25 * var(--to-rem)) 0;
  justify-content: center;
  justify-items: center;
  padding-top: calc(32 * var(--to-rem));
  padding-right: 0;
  padding-left: 0;
}

.receipt_ng_item {
  display: block grid;
  grid-template-rows: 1fr calc(31 * var(--to-rem));
  row-gap: calc(16 * var(--to-rem));
  justify-items: center;
  height: calc(129 * var(--to-rem));
}

.receipt_ng_img {
  align-self: end;
  line-height: 0;
  text-align: center;
}

.receipt_ng_item:nth-child(1) .receipt_ng_img {
  translate: 0 calc(7 * var(--to-rem));
}

.receipt_ng_item:nth-child(2) .receipt_ng_img {
  translate: 0;
}

.receipt_ng_item:nth-child(3) .receipt_ng_img {
  translate: 0;
}

.receipt_ng_item:nth-child(4) .receipt_ng_img {
  translate: 0 calc(-24 * var(--to-rem));
}

.receipt_ng_item:nth-child(6) .receipt_ng_img {
  translate: 0 calc(2 * var(--to-rem));
}

.receipt_req_img img {
  width: calc(260 * var(--to-rem));
  max-width: none;
}

.receipt_ng_img img {
  max-width: none;
}

.receipt_ng_item:nth-child(1) .receipt_ng_img img {
  width: calc(61 * var(--to-rem));
}

.receipt_ng_item:nth-child(2) .receipt_ng_img img {
  width: calc(59 * var(--to-rem));
}

.receipt_ng_item:nth-child(3) .receipt_ng_img img {
  width: calc(78 * var(--to-rem));
}

.receipt_ng_item:nth-child(4) .receipt_ng_img img {
  width: calc(102 * var(--to-rem));
}

.receipt_ng_item:nth-child(5) .receipt_ng_img {
  translate: 0 calc(10 * var(--to-rem));
}

.receipt_ng_item:nth-child(5) .receipt_ng_img img {
  width: calc(80 * var(--to-rem));
}

.receipt_ng_item:nth-child(6) .receipt_ng_img img {
  width: calc(68 * var(--to-rem));
}

.receipt_ng_cap {
  display: block flex;
  gap: calc(7 * var(--to-rem));
  align-items: flex-start;
  justify-content: center;
  font-size: calc(11 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.409;
  color: var(--color-text);
  text-align: left;
  letter-spacing: 0.025em;
}

.receipt_ng_cap::before {
  flex: none;
  width: calc(12 * var(--to-rem));
  height: calc(12 * var(--to-rem));
  margin-top: calc(2 * var(--to-rem));
  clip-path: polygon(23.6% 0, 50% 26.4%, 76.4% 0, 100% 23.6%, 73.6% 50%, 100% 76.4%, 76.4% 100%, 50% 73.6%, 23.6% 100%, 0 76.4%, 26.4% 50%, 0 23.6%);
  content: "";
  background: #f0371c;
}

@media screen and (width > 767.98px) {
  .receipt {
    padding-top: 0;
    padding-bottom: calc(302 * var(--to-rem));
  }
  .receipt_chara {
    top: calc(813.8 * var(--to-rem));
    right: calc(50% - 50vw + 12 * var(--to-rem));
    left: auto;
    width: calc(127 * var(--to-rem));
  }
  .receipt_lead {
    padding-top: calc(18 * var(--to-rem));
    font-size: calc(22 * var(--to-rem));
    line-height: 1.6;
  }
  .receipt_deadline {
    width: calc(830 * var(--to-rem));
    height: calc(64 * var(--to-rem));
    margin-top: calc(26 * var(--to-rem));
    margin-left: calc(35 * var(--to-rem));
  }
  .receipt_deadline_img {
    width: calc(742 * var(--to-rem));
    max-width: 100%;
  }
  .receipt_subhead {
    width: calc(1100 * var(--to-rem));
    height: calc(56 * var(--to-rem));
    margin-top: calc(86 * var(--to-rem));
    font-size: calc(30 * var(--to-rem));
    letter-spacing: 0.04em;
  }
  .receipt_subhead.-ng {
    margin-top: calc(72 * var(--to-rem));
  }
  .receipt_req {
    grid-template-columns: calc(410 * var(--to-rem)) calc(620 * var(--to-rem));
    gap: normal;
    column-gap: calc(68 * var(--to-rem));
    width: calc(1098 * var(--to-rem));
    padding-top: calc(71 * var(--to-rem));
    margin-left: calc(65 * var(--to-rem));
  }
  .receipt_req_img {
    justify-self: auto;
    margin-left: 0;
  }
  .receipt_req_img img {
    width: calc(var(--w, 99999) * var(--to-rem));
    max-width: 100%;
  }
  .receipt_req_note {
    padding-top: calc(31 * var(--to-rem));
    font-size: calc(18 * var(--to-rem));
    font-feature-settings: normal;
    line-height: 1.6;
    letter-spacing: 0.02em;
  }
  .receipt_req_note .note_item {
    text-indent: -1em;
  }
  .receipt_req_note .note_item + .note_item {
    margin-top: calc(7 * var(--to-rem));
  }
  .receipt_ng {
    grid-template-columns: repeat(3, calc(220 * var(--to-rem)));
    gap: calc(26 * var(--to-rem)) calc(150 * var(--to-rem));
    padding-top: calc(35 * var(--to-rem));
  }
  .receipt_ng_item {
    grid-template-rows: 1fr calc(60 * var(--to-rem));
    row-gap: calc(19 * var(--to-rem));
    height: auto;
  }
  .receipt_ng_img img {
    max-width: 100%;
  }
  .receipt_ng_item:nth-child(1) .receipt_ng_img {
    translate: calc(-7 * var(--to-rem)) calc(0 * var(--to-rem));
  }
  .receipt_ng_item:nth-child(2) .receipt_ng_img {
    translate: 0 calc(8 * var(--to-rem));
  }
  .receipt_ng_item:nth-child(3) .receipt_ng_img {
    translate: calc(-12 * var(--to-rem)) calc(-9 * var(--to-rem));
  }
  .receipt_ng_item:nth-child(4) .receipt_ng_img {
    translate: calc(3 * var(--to-rem)) calc(-22 * var(--to-rem));
  }
  .receipt_ng_item:nth-child(5) .receipt_ng_img {
    translate: none;
  }
  .receipt_ng_item:nth-child(6) .receipt_ng_img {
    translate: calc(-17 * var(--to-rem)) calc(-6 * var(--to-rem));
  }
  .receipt_ng_item:nth-child(1) .receipt_ng_img img,
  .receipt_ng_item:nth-child(2) .receipt_ng_img img,
  .receipt_ng_item:nth-child(3) .receipt_ng_img img,
  .receipt_ng_item:nth-child(4) .receipt_ng_img img,
  .receipt_ng_item:nth-child(5) .receipt_ng_img img,
  .receipt_ng_item:nth-child(6) .receipt_ng_img img {
    width: calc(var(--w, 99999) * var(--to-rem));
  }
  .receipt_ng_cap {
    gap: calc(14 * var(--to-rem));
    font-size: calc(22 * var(--to-rem));
    line-height: 1.364;
  }
  .receipt_ng_cap::before {
    width: calc(24 * var(--to-rem));
    height: calc(24 * var(--to-rem));
    margin-top: calc(3 * var(--to-rem));
  }
}
.regist {
  position: relative;
  display: block grid;
  justify-items: center;
  padding-top: calc(18 * var(--to-rem));
  padding-bottom: calc(51 * var(--to-rem));
  overflow-x: clip;
  background: var(--color-white);
}

.regist_head {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  width: calc(242 * var(--to-rem));
  line-height: 0;
  translate: -50% 0;
}

.regist_box {
  position: relative;
  box-sizing: border-box;
  display: block grid;
  grid-template-columns: 1fr;
  row-gap: 0;
  justify-items: start;
  width: calc(300 * var(--to-rem));
  max-width: 100%;
  padding: calc(83 * var(--to-rem)) 0 calc(69.5 * var(--to-rem));
  background: #fffad2;
  border-radius: calc(35 * var(--to-rem));
}

.regist_chara {
  position: absolute;
  top: calc(226 * var(--to-rem));
  right: calc(0 * var(--to-rem));
  left: auto;
  width: calc(86 * var(--to-rem));
  max-width: none;
}

.regist_visual {
  position: relative;
  width: calc(131 * var(--to-rem));
  margin-bottom: calc(-9 * var(--to-rem));
  margin-left: calc(86 * var(--to-rem));
}

.regist_phone {
  width: calc(131 * var(--to-rem));
}

.regist_badge {
  position: absolute;
  top: calc(-37 * var(--to-rem));
  left: calc(-60 * var(--to-rem));
  width: calc(97 * var(--to-rem));
  max-width: none;
}

.regist_body {
  width: 100%;
  padding-top: calc(42 * var(--to-rem));
  padding-right: calc(32 * var(--to-rem));
  padding-left: calc(32 * var(--to-rem));
  color: var(--color-text);
}

.regist_lead {
  margin-bottom: 0;
  line-height: 0;
}

.regist_lead_img {
  width: calc(226 * var(--to-rem));
  max-width: none;
}

.regist_text {
  padding-top: calc(15 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  font-feature-settings: "palt" 1;
  line-height: 1.5625;
  letter-spacing: 0.025em;
}

.regist_em {
  font-style: normal;
  color: #f0371c;
}

.regist_text.-about {
  padding-top: calc(16 * var(--to-rem));
  margin-right: calc(-13 * var(--to-rem));
  margin-left: calc(-13 * var(--to-rem));
  line-height: 1.5625;
  text-align: center;
}

.regist_note {
  padding-top: calc(9 * var(--to-rem));
  margin-right: calc(-1 * var(--to-rem));
  margin-left: calc(-1 * var(--to-rem));
  font-family: var(--font-note);
  font-size: calc(11 * var(--to-rem));
  font-weight: var(--fw-bold);
  font-feature-settings: "palt" 1;
  line-height: 1.545;
  color: #f0371c;
  letter-spacing: 0.025em;
}

.regist_tag {
  width: calc(230 * var(--to-rem));
  margin-top: calc(52 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
  line-height: 0;
}

.regist_link {
  display: block flex;
  gap: calc(8 * var(--to-rem));
  align-items: center;
  justify-content: center;
  margin-top: calc(20.5 * var(--to-rem));
  font-size: calc(14 * var(--to-rem));
  font-weight: var(--fw-bold);
  color: var(--color-text);
  text-decoration: underline;
  letter-spacing: -0.064em;
}

.regist_link_arrow {
  width: calc(11 * var(--to-rem));
  height: calc(9 * var(--to-rem));
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: currentcolor;
  transition: translate var(--dur) var(--ease-press);
  translate: calc(3 * var(--to-rem) * var(--nudge, 0)) 0;
}

.regist_btns {
  display: block grid;
  grid-template-columns: 1fr;
  grid-column: 1/-1;
  gap: calc(25.5 * var(--to-rem));
  justify-content: center;
  width: calc(250 * var(--to-rem));
  margin-top: calc(49.5 * var(--to-rem));
  margin-right: auto;
  margin-left: auto;
}

.regist_btn {
  --sx: calc(4 * var(--to-rem));
  --sy: calc(4 * var(--to-rem));
  display: block grid;
  place-items: center;
  width: 100%;
  height: calc(74.5 * var(--to-rem));
  font-size: calc(18 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.333;
  text-align: center;
  text-decoration: none;
  letter-spacing: 0.025em;
  border-radius: calc(6 * var(--to-rem));
  box-shadow: calc(var(--sx) * (1 - var(--press, 0))) calc(var(--sy) * (1 - var(--press, 0))) 0 rgb(224 220 165/min(1, 2 - 2 * var(--press, 0)));
  transition: translate var(--dur) var(--ease-press), box-shadow var(--dur) var(--ease-press);
  translate: calc(var(--sx) * var(--press, 0)) calc(var(--sy) * var(--press, 0));
}

.regist_btn_label {
  width: calc(163 * var(--to-rem) * var(--label-w, 545) / 545);
  max-width: none;
  height: auto;
}

.regist_btn:nth-child(2) .regist_btn_label {
  --label-w: 487;
}

.regist_btn.-primary {
  color: var(--color-white);
  letter-spacing: 0.05em;
  background: linear-gradient(110deg, transparent 42%, rgba(255, 255, 255, 0.5) 50%, transparent 58%) 110% 0/250% 100% no-repeat, linear-gradient(90deg, #f00 0%, #f00 45%, #ff1200 60%, #ff2600 70%, #ff3a00 80%, #ff4f00 90%, #ff6400 100%);
}

.regist_btn.-plain {
  grid-column: 1/-1;
  justify-self: center;
  color: #1e1e1e;
  letter-spacing: 0.025em;
  background: linear-gradient(110deg, transparent 42%, rgba(255, 205, 120, 0.55) 50%, transparent 58%) 110% 0/250% 100% no-repeat, var(--color-white);
}

@media (any-hover: hover) {
  .regist_btn:hover {
    background-position: -10% 0, 0 0;
    transition: translate var(--dur) var(--ease-press), box-shadow var(--dur) var(--ease-press), background-position 0.3s ease-out;
  }
}
@media (any-hover: none) and (prefers-reduced-motion: no-preference) {
  .regist_btn {
    animation: regist-shine 3.6s ease-out infinite;
  }
  .regist_btn:nth-child(2) {
    animation-delay: 0.25s;
  }
  .regist_btn:nth-child(3) {
    animation-delay: 0.5s;
  }
}
@keyframes regist-shine {
  0% {
    background-position: 110% 0, 0 0;
  }
  8.4%, 100% {
    background-position: -10% 0, 0 0;
  }
}
@media (any-hover: hover) {
  .regist_link:hover {
    text-decoration: underline;
  }
}
.regist_btn:focus-visible {
  background-position: -10% 0, 0 0;
  outline: 3px solid currentcolor;
  outline-offset: 3px;
  transition: translate var(--dur) var(--ease-press), box-shadow var(--dur) var(--ease-press), background-position 0.3s ease-out;
}

.regist_link:focus-visible {
  text-decoration: underline;
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

@media screen and (width > 767.98px) {
  .regist {
    padding-top: calc(35 * var(--to-rem));
    padding-bottom: calc(90 * var(--to-rem));
    overflow-x: visible;
  }
  .regist_head {
    width: calc(400 * var(--to-rem));
  }
  .regist_box {
    grid-template-columns: calc(480 * var(--to-rem)) 1fr;
    row-gap: normal;
    justify-items: legacy;
    width: calc(1330 * var(--to-rem));
    padding: calc(73 * var(--to-rem)) calc(101 * var(--to-rem)) calc(58 * var(--to-rem)) calc(101 * var(--to-rem));
  }
  .regist_visual {
    width: calc(263 * var(--to-rem));
    margin-bottom: 0;
    margin-left: calc(159 * var(--to-rem));
  }
  .regist_phone {
    width: calc(263 * var(--to-rem));
  }
  .regist_badge {
    top: calc(-39 * var(--to-rem));
    left: calc(-145 * var(--to-rem));
    width: calc(200 * var(--to-rem));
  }
  .regist_chara {
    top: calc(-24 * var(--to-rem));
    right: auto;
    left: calc(1048 * var(--to-rem));
    width: calc(173 * var(--to-rem));
  }
  .regist_body {
    width: auto;
    padding-top: calc(24 * var(--to-rem));
    padding-right: 0;
    padding-left: calc(12 * var(--to-rem));
  }
  .regist_lead {
    margin-bottom: calc(-8 * var(--to-rem));
  }
  .regist_lead_img {
    width: calc(384 * var(--to-rem));
    max-width: 100%;
  }
  .regist_text {
    padding-top: calc(23 * var(--to-rem));
    font-size: calc(22 * var(--to-rem));
    font-feature-settings: normal;
    line-height: 1.545;
  }
  .regist_note {
    padding-top: calc(2 * var(--to-rem));
    margin-right: inherit;
    margin-left: inherit;
    font-size: calc(16 * var(--to-rem));
    line-height: 1.5;
  }
  .regist_tag {
    width: calc(270 * var(--to-rem));
    margin-top: calc(27 * var(--to-rem));
    margin-right: 0;
    margin-left: calc(-10 * var(--to-rem));
  }
  .regist_text.-about {
    padding-top: calc(10 * var(--to-rem));
    margin-right: 0;
    margin-left: 0;
    line-height: 1.545;
    text-align: start;
  }
  .regist_link {
    justify-content: normal;
    margin-top: calc(18 * var(--to-rem));
    font-size: calc(18 * var(--to-rem));
    letter-spacing: normal;
  }
  .regist_link_arrow {
    width: calc(15 * var(--to-rem));
    height: calc(12 * var(--to-rem));
  }
  .regist_btns {
    grid-template-columns: repeat(2, calc(420 * var(--to-rem)));
    gap: calc(30 * var(--to-rem)) calc(60 * var(--to-rem));
    width: auto;
    margin-top: calc(73 * var(--to-rem));
    margin-right: 0;
    margin-left: 0;
  }
  .regist_btn {
    --sx: calc(6 * var(--to-rem));
    --sy: calc(6 * var(--to-rem));
    width: calc(420 * var(--to-rem));
    height: calc(120 * var(--to-rem));
    font-size: calc(30 * var(--to-rem));
    border-radius: calc(10 * var(--to-rem));
  }
  .regist_btn_label {
    width: calc(272.5 * var(--to-rem) * var(--label-w, 545) / 545);
  }
  .regist_btn.-plain {
    letter-spacing: 0.025em;
  }
}
.reward {
  position: relative;
  display: block grid;
  justify-items: center;
  padding-top: calc(73 * var(--to-rem));
  padding-bottom: calc(39 * var(--to-rem));
}

.reward::after {
  position: absolute;
  inset: 0 calc(50% - 50vw) 0 calc(50% - 50vw);
  z-index: -1;
  content: "";
  background: url("../images/reward-bg-sp@2x.Cx1pOmm0.webp") center top no-repeat, radial-gradient(65% 55% at 50% 40%, #ffd899 19%, #f3c37d 60%, #e18228 91%, #b85500 100%);
  background-size: cover;
}

.reward::before {
  position: absolute;
  top: 0;
  right: calc(50% - 50vw);
  left: calc(50% - 50vw);
  height: calc(8 * var(--to-rem));
  content: "";
  background: var(--color-text);
}

.reward_lead {
  width: 100%;
  padding-left: calc(3 * var(--to-rem));
  line-height: 0;
  text-align: center;
}

.reward_lead_img {
  width: calc(315 * var(--to-rem));
  max-width: 100%;
}

.reward_head {
  display: inline-flex;
  justify-content: center;
  padding-top: calc(2 * var(--to-rem));
  margin-left: calc(9 * var(--to-rem));
  line-height: 0;
}

.reward_head_img {
  width: calc(343 * var(--to-rem));
  max-width: 100%;
}

.reward_text {
  padding-top: calc(12 * var(--to-rem));
  padding-left: calc(2 * var(--to-rem));
  font-size: calc(16 * var(--to-rem));
  font-weight: var(--fw-bold);
  font-feature-settings: "palt" 1;
  line-height: 1.562;
  color: var(--color-text);
  text-align: center;
  letter-spacing: 0.027em;
}

@media screen and (width > 767.98px) {
  .reward {
    padding-top: calc(132 * var(--to-rem));
    padding-bottom: calc(200 * var(--to-rem));
  }
  .reward::after {
    background: url("../images/reward-bg@2x.TZc65TlZ.webp") center top/calc(1655 * var(--to-rem)) auto no-repeat, radial-gradient(65% 55% at 50% 40%, #ffd899 19%, #f3c37d 60%, #e18228 91%, #b85500 100%);
    background-size: cover;
  }
  .reward::before {
    height: calc(24 * var(--to-rem));
  }
  .reward_lead {
    padding-left: 0;
  }
  .reward_lead_img {
    width: calc(620 * var(--to-rem));
  }
  .reward_head {
    padding-top: calc(5 * var(--to-rem));
    margin-left: 0;
  }
  .reward_head_img {
    width: calc(1175 * var(--to-rem));
  }
  .reward_text {
    padding-top: calc(1 * var(--to-rem));
    padding-left: 0;
    font-size: calc(30 * var(--to-rem));
    font-feature-settings: normal;
    line-height: 1.667;
    letter-spacing: 0.025em;
  }
}
.target {
  position: relative;
  display: block grid;
  justify-items: center;
  padding-top: calc(74.5 * var(--to-rem));
  padding-bottom: calc(87.5 * var(--to-rem));
}

.target::before {
  position: absolute;
  inset: 0 calc(50% - 50vw) 0 calc(50% - 50vw);
  z-index: -1;
  content: "";
  background: url("../images/target-bg-sp@2x.E4BiBSSz.webp") 0 0/100% 100% no-repeat;
  background-size: cover;
}

.target_chara {
  position: absolute;
  top: calc(-38 * var(--to-rem));
  right: calc(40 * var(--to-rem));
  left: auto;
  width: calc(82 * var(--to-rem));
}

.target_list {
  display: block grid;
  grid-template-columns: 1fr;
  row-gap: calc(73.5 * var(--to-rem));
  justify-content: center;
  width: calc(279 * var(--to-rem));
  padding-top: calc(39 * var(--to-rem));
  padding-right: 0;
  padding-left: 0;
}

.target_item {
  display: block grid;
  grid-template-rows: calc(155 * var(--to-rem)) auto;
  grid-template-columns: calc(126 * var(--to-rem)) 1fr;
  column-gap: calc(49 * var(--to-rem));
  justify-items: center;
}

.target_img {
  place-self: end center;
  align-self: end;
}

.target_item:nth-child(1) .target_img {
  width: calc(108 * var(--to-rem));
}

.target_item:nth-child(2) .target_img {
  width: calc(148 * var(--to-rem));
  max-width: none;
}

.target_item:nth-child(3) .target_img {
  width: calc(126 * var(--to-rem));
}

.target_name {
  place-self: center start;
  padding-top: 0;
  font-size: calc(20 * var(--to-rem));
  font-weight: var(--fw-bold);
  font-feature-settings: "palt" 1;
  line-height: 1.25;
  color: var(--color-text);
  text-align: left;
  letter-spacing: 0.04em;
}

.target_name_paren {
  font-size: calc(17 * var(--to-rem));
  line-height: 1.53;
}

.target_item .btn {
  grid-column: 1/-1;
  justify-self: center;
  margin-top: calc(32 * var(--to-rem));
}

@media screen and (width > 767.98px) {
  .target {
    padding-top: calc(79 * var(--to-rem));
    padding-bottom: calc(117 * var(--to-rem));
  }
  .target::before {
    background: url("../images/target-bg@2x.DAwZjS8X.webp") 0 0/100% 100% no-repeat;
    background-size: cover;
  }
  .target_chara {
    top: calc(-128 * var(--to-rem));
    right: auto;
    left: calc(185 * var(--to-rem));
    width: calc(166 * var(--to-rem));
  }
  .target_list {
    grid-template-columns: repeat(3, calc(420 * var(--to-rem)));
    row-gap: normal;
    width: auto;
    padding-top: calc(36 * var(--to-rem));
  }
  .target_item {
    grid-template-rows: calc(264 * var(--to-rem)) auto auto;
    grid-template-columns: none;
    column-gap: normal;
  }
  .target_img {
    place-self: auto;
    align-self: end;
  }
  .target_item:nth-child(1) .target_img,
  .target_item:nth-child(2) .target_img,
  .target_item:nth-child(3) .target_img {
    width: calc(var(--w, 99999) * var(--to-rem));
    max-width: 100%;
  }
  .target_name {
    place-self: auto;
    padding-top: calc(11 * var(--to-rem));
    font-size: calc(34 * var(--to-rem));
    line-height: 1.34;
    text-align: center;
  }
  .target_name_paren {
    font-size: calc(28 * var(--to-rem));
  }
  .target_item .btn {
    grid-column: auto;
    justify-self: auto;
    margin-top: calc(31 * var(--to-rem));
  }
}
.xcp {
  position: relative;
  display: block grid;
  justify-items: center;
  padding-top: calc(43 * var(--to-rem));
  padding-bottom: calc(95 * var(--to-rem));
  overflow-x: clip;
}

.xcp::before {
  position: absolute;
  inset: 0 calc(50% - 50vw) 0 calc(50% - 50vw);
  bottom: calc(-18 * var(--to-rem));
  z-index: -1;
  height: 100%;
  content: "";
  background: url("../images/bg-bokeh-warm-sp@2x.qJbRHs2f.webp") 0 0/100% 100% no-repeat;
  background-size: cover;
}

.xcp_logo_x {
  position: absolute;
  top: calc(25 * var(--to-rem));
  left: 50%;
  width: calc(35 * var(--to-rem));
  max-width: none;
  translate: -50% 0;
}

.xcp_chara {
  position: absolute;
  top: calc(231 * var(--to-rem));
  right: calc(8 * var(--to-rem));
  left: auto;
  z-index: 1;
  width: calc(94 * var(--to-rem));
  max-width: none;
}

.xcp_lead {
  display: block grid;
  justify-items: center;
  width: 100%;
  padding-top: calc(35.5 * var(--to-rem));
  line-height: 0;
  text-align: center;
}

.xcp_ttl {
  padding-top: calc(24.3 * var(--to-rem));
  line-height: 0;
  text-align: center;
}

.xcp_ttl img {
  margin-bottom: calc(-9.3 * var(--to-rem));
}

.xcp_box {
  position: relative;
  box-sizing: border-box;
  display: block grid;
  justify-items: center;
  width: calc(340 * var(--to-rem));
  max-width: 100%;
  padding: 0 calc(30 * var(--to-rem)) calc(60 * var(--to-rem));
  margin-top: calc(34 * var(--to-rem));
  background: var(--color-white);
  border-radius: calc(30 * var(--to-rem));
}

.xcp_present {
  display: block grid;
  justify-items: center;
  width: 100%;
}

.xcp_ribbon {
  width: calc(220 * var(--to-rem));
  margin-top: calc(-17 * var(--to-rem));
  line-height: 0;
  text-align: center;
}

.xcp_prizes {
  display: block grid;
  grid-template-columns: 1fr;
  gap: calc(62 * var(--to-rem)) calc(140 * var(--to-rem));
  justify-content: center;
  padding-top: calc(92 * var(--to-rem));
}

.xcp_prize {
  display: block grid;
  align-content: start;
  justify-items: start;
  color: var(--color-text);
}

.xcp_prize_img {
  width: calc(280 * var(--to-rem));
  height: calc(175 * var(--to-rem));
  object-fit: cover;
}

.xcp_prize_note {
  padding-top: calc(12 * var(--to-rem));
  font-size: calc(15 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.5;
  letter-spacing: -0.015em;
}

.xcp_prize_body {
  position: relative;
  width: 100%;
  padding-top: calc(1 * var(--to-rem));
}

.xcp_prize_name {
  margin-top: 0;
}

.xcp_prize_pill {
  position: absolute;
  top: calc(-28 * var(--to-rem));
  right: calc(-8 * var(--to-rem));
}

.xcp_prize_pill.-wide {
  top: calc(5 * var(--to-rem));
  right: calc(-8 * var(--to-rem));
}

.xcp_prize_name {
  font-size: calc(21 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.5;
  letter-spacing: -0.05em;
}

.xcp_prize_pill {
  width: calc(65.5 * var(--to-rem));
  line-height: 0;
}

.xcp_prize_pill.-wide {
  width: calc(70.5 * var(--to-rem));
}

.xcp_prize_pill img {
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
}

.xcp_prize_count {
  position: absolute;
  top: auto;
  right: 0;
  bottom: calc(-11 * var(--to-rem));
  display: block flex;
  align-items: baseline;
  padding-top: 0;
  font-size: calc(18 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.2;
  color: var(--color-red);
  translate: 0 calc(-11.5 * var(--to-rem));
}

.xcp_prize_num {
  font-size: calc(33 * var(--to-rem));
  line-height: 1.2;
}

.xcp_howto {
  display: block grid;
  justify-items: center;
  width: 100%;
  padding-top: calc(70.5 * var(--to-rem));
}

.xcp_steps {
  position: relative;
  display: block grid;
  grid-template-columns: calc(327 * var(--to-rem)) calc(87 * var(--to-rem)) calc(262 * var(--to-rem)) calc(149 * var(--to-rem)) calc(219 * var(--to-rem));
  grid-template-columns: 1fr;
  row-gap: calc(34 * var(--to-rem));
  justify-self: stretch;
  width: 100%;
  padding-top: calc(16 * var(--to-rem));
  margin-left: 0;
}

.xcp_step {
  position: relative;
  display: block grid;
  grid-template-rows: auto auto auto;
  grid-column: 1;
  align-content: start;
  justify-items: center;
  height: calc(192 * var(--to-rem));
  min-height: 0;
}

.xcp_step + .xcp_step {
  grid-column: 1;
}

.xcp_step + .xcp_step + .xcp_step {
  grid-template-rows: auto auto auto;
  grid-column: 1;
  align-content: start;
  justify-items: center;
  height: calc(192 * var(--to-rem));
  min-height: 0;
}

.xcp_step_badge {
  position: static;
  top: 0;
  left: 0;
  justify-self: start;
  width: calc(40 * var(--to-rem));
  margin-top: calc(14.5 * var(--to-rem));
  margin-left: calc(32 * var(--to-rem));
  line-height: 0;
}

.xcp_step img {
  width: calc(var(--w) * var(--to-rem));
  max-width: 100%;
}

.xcp_step_img {
  place-self: center;
  margin-top: calc(-34.5 * var(--to-rem));
  margin-left: 0;
  line-height: 0;
}

.xcp_step + .xcp_step .xcp_step_img {
  margin-top: calc(-26.5 * var(--to-rem));
  margin-left: 0;
}

.xcp_step + .xcp_step + .xcp_step .xcp_step_img {
  place-self: center;
  margin-top: calc(-42.5 * var(--to-rem));
  margin-left: calc(-2 * var(--to-rem));
}

.xcp_step_label {
  place-self: center;
  margin-top: calc(15.4 * var(--to-rem));
  margin-left: 0;
  line-height: 0;
  text-align: center;
}

.xcp_step_label img {
  width: calc(202 * var(--to-rem));
}

.xcp_step + .xcp_step .xcp_step_label img {
  width: calc(158.5 * var(--to-rem));
}

.xcp_step + .xcp_step + .xcp_step .xcp_step_label img {
  width: calc(198 * var(--to-rem));
}

.xcp_step + .xcp_step .xcp_step_label {
  margin-left: 0;
}

.xcp_step + .xcp_step + .xcp_step .xcp_step_label {
  place-self: center;
  margin-top: calc(16 * var(--to-rem));
  margin-left: 0;
  text-align: center;
}

.xcp_step_arrow {
  position: absolute;
  top: calc(75 * var(--to-rem));
  display: none;
  width: calc(60 * var(--to-rem));
  height: calc(45 * var(--to-rem));
  clip-path: polygon(0 26.7%, 50% 26.7%, 50% 0, 100% 50%, 50% 100%, 50% 71.1%, 0 71.1%);
  background: #ffc33f;
}

.xcp_step_arrow.-step1 {
  left: calc(309 * var(--to-rem));
}

.xcp_step_arrow.-step2 {
  left: calc(705 * var(--to-rem));
}

.xcp_btn {
  --sx: calc(4 * var(--to-rem));
  --sy: calc(5 * var(--to-rem));
  position: relative;
  box-sizing: border-box;
  display: inline flex;
  align-items: center;
  justify-content: center;
  width: calc(280 * var(--to-rem));
  min-height: calc(60 * var(--to-rem));
  padding-top: 0;
  padding-right: calc(20 * var(--to-rem));
  padding-left: calc(20 * var(--to-rem));
  font-size: calc(27 * var(--to-rem));
  font-weight: var(--fw-bold);
  line-height: 1.219;
  color: var(--color-white);
  text-align: center;
  background: #d20000;
  border-radius: 999px;
  box-shadow: calc(var(--sx) * (1 - var(--press, 0))) calc(var(--sy) * (1 - var(--press, 0))) 0 rgb(216 208 195/min(1, 2 - 2 * var(--press, 0)));
  transition: translate var(--dur) var(--ease-press), box-shadow var(--dur) var(--ease-press);
  translate: calc(var(--sx) * var(--press, 0)) calc(var(--sy) * var(--press, 0));
}

.xcp_howto .xcp_btn {
  margin-top: calc(15.6 * var(--to-rem));
}

.xcp_btn .btn_label {
  width: calc(170 * var(--to-rem));
  translate: calc(-12 * var(--to-rem)) 0;
}

.xcp_btn_arrow {
  position: absolute;
  top: 50%;
  right: calc(28 * var(--to-rem));
  width: calc(16 * var(--to-rem));
  height: calc(14 * var(--to-rem));
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: currentcolor;
  transition: translate var(--dur) var(--ease-press);
  translate: calc(4 * var(--to-rem) * var(--nudge, 0)) -50%;
}

.xcp_period {
  display: block grid;
  justify-items: center;
  width: 100%;
  margin-top: calc(60.5 * var(--to-rem));
}

.xcp_period_list {
  display: block grid;
  row-gap: calc(12 * var(--to-rem));
  width: calc(290 * var(--to-rem));
  max-width: 100%;
  margin-top: calc(23 * var(--to-rem));
  margin-right: calc(-5 * var(--to-rem));
  margin-left: calc(-5 * var(--to-rem));
}

.xcp_period_item {
  height: auto;
  padding: 0;
  line-height: 0;
}

.xcp_step:nth-child(3) .xcp_step_img img {
  width: calc(89 * var(--to-rem));
}

.xcp_step:nth-child(4) .xcp_step_img img {
  width: calc(81 * var(--to-rem));
}

.xcp_step:nth-child(5) .xcp_step_img img {
  width: calc(57.5 * var(--to-rem));
}

.xcp_lead img {
  width: calc(292 * var(--to-rem));
}

.xcp_ribbon img {
  width: 100%;
  max-width: none;
  height: auto;
}

.xcp_step_badge img {
  width: 100%;
  max-width: none;
  height: auto;
}

.xcp_step_img img {
  width: calc(70 * var(--to-rem));
  max-width: none;
  height: auto;
}

.xcp_step + .xcp_step + .xcp_step .xcp_step_img img {
  width: calc(57.5 * var(--to-rem));
}

.xcp_step:nth-child(4) .xcp_step_label {
  margin-top: calc(24.3 * var(--to-rem));
}

.xcp_step:not(:last-child) {
  position: relative;
  padding-bottom: calc(36 * var(--to-rem));
}

.xcp_step:not(:last-child)::after {
  position: absolute;
  bottom: calc(-28.5 * var(--to-rem));
  left: 50%;
  width: calc(23 * var(--to-rem));
  height: calc(30 * var(--to-rem));
  clip-path: polygon(30% 0, 70% 0, 70% 55%, 100% 55%, 50% 100%, 0 55%, 30% 55%);
  content: "";
  background: #ffc33f;
  translate: -50% 0;
}

.xcp_period_item img {
  width: calc(290 * var(--to-rem));
  max-width: none;
  margin-left: calc(-5 * var(--to-rem));
}

.xcp_btn:focus-visible {
  outline: 3px solid currentcolor;
  outline-offset: 3px;
}

@media screen and (width > 767.98px) {
  .xcp {
    padding-top: calc(158 * var(--to-rem));
    padding-bottom: calc(137 * var(--to-rem));
    overflow-x: visible;
  }
  .xcp::before {
    bottom: 0;
    background-image: url("../images/bg-bokeh-warm@2x.BYNPciS8.webp");
  }
  .xcp_logo_x {
    top: calc(155 * var(--to-rem));
    left: calc(194 * var(--to-rem));
    width: calc(80 * var(--to-rem));
    translate: none;
  }
  .xcp_lead {
    display: block;
    justify-items: normal;
    padding-top: 0;
  }
  .xcp_lead img {
    width: calc(var(--w, 99999) * var(--to-rem));
  }
  .xcp_chara {
    top: calc(366 * var(--to-rem));
    right: auto;
    left: calc(1340 * var(--to-rem));
    width: calc(204 * var(--to-rem));
  }
  .xcp_box {
    width: calc(1330 * var(--to-rem));
    padding: 0 calc(115 * var(--to-rem)) calc(171 * var(--to-rem)) calc(115 * var(--to-rem));
    margin-top: calc(105.2 * var(--to-rem));
    border-radius: calc(61 * var(--to-rem));
  }
  .xcp_ribbon {
    width: 100%;
    margin-top: calc(-50 * var(--to-rem));
  }
  .xcp_ribbon img {
    width: calc(var(--w, 99999) * var(--to-rem));
    max-width: 100%;
  }
  .xcp_prizes {
    grid-template-columns: calc(480 * var(--to-rem)) calc(480 * var(--to-rem));
    row-gap: normal;
    padding-top: calc(120 * var(--to-rem));
  }
  .xcp_prize_img {
    width: calc(480 * var(--to-rem));
    height: calc(300 * var(--to-rem));
  }
  .xcp_prize_note {
    padding-top: calc(23 * var(--to-rem));
    font-size: calc(24 * var(--to-rem));
    line-height: 1.36;
    letter-spacing: 0.025em;
  }
  .xcp_prize_body {
    padding-top: calc(8 * var(--to-rem));
  }
  .xcp_prize_name {
    margin-top: calc(-1 * var(--to-rem));
    font-size: calc(32 * var(--to-rem));
    line-height: 1.297;
    letter-spacing: 0;
  }
  .xcp_prize:nth-child(1) .xcp_prize_body {
    padding-top: calc(18 * var(--to-rem));
  }
  .xcp_prize_pill {
    top: calc(-30 * var(--to-rem));
    right: calc(-47 * var(--to-rem));
    width: calc(102 * var(--to-rem));
  }
  .xcp_prize_pill.-wide {
    top: calc(0 * var(--to-rem));
    right: calc(-33 * var(--to-rem));
    width: calc(122 * var(--to-rem));
  }
  .xcp_prize_pill.-wide + .xcp_prize_count {
    top: calc(26 * var(--to-rem));
  }
  .xcp_prize_pill img {
    width: calc(var(--w) * var(--to-rem));
  }
  .xcp_prize_count {
    top: calc(-5 * var(--to-rem));
    bottom: auto;
    padding-top: 0;
    font-size: calc(30 * var(--to-rem));
    line-height: 1.219;
    translate: none;
  }
  .xcp_prize_num {
    font-size: calc(56 * var(--to-rem));
    line-height: 1.22;
  }
  .xcp_howto {
    padding-top: calc(135 * var(--to-rem));
  }
  .xcp_steps {
    grid-template-columns: calc(327 * var(--to-rem)) calc(87 * var(--to-rem)) calc(262 * var(--to-rem)) calc(149 * var(--to-rem)) calc(219 * var(--to-rem));
    row-gap: normal;
    justify-self: start;
    width: auto;
    padding-top: calc(10 * var(--to-rem));
  }
  .xcp_step {
    grid-template-rows: 1fr calc(74 * var(--to-rem));
    align-content: normal;
    height: auto;
    min-height: calc(275 * var(--to-rem));
  }
  .xcp_step + .xcp_step {
    grid-column: 3;
  }
  .xcp_step + .xcp_step + .xcp_step {
    grid-template-rows: 1fr calc(74 * var(--to-rem));
    grid-column: 5;
    align-content: normal;
    justify-items: center;
    height: auto;
    min-height: calc(275 * var(--to-rem));
  }
  .xcp_step_arrow {
    display: block;
  }
  .xcp_step_badge {
    position: absolute;
    justify-self: auto;
    width: auto;
    margin-left: 0;
  }
  .xcp_step_badge img,
  .xcp_step_img img {
    width: calc(var(--w, 99999) * var(--to-rem));
    max-width: 100%;
  }
  .xcp_step + .xcp_step + .xcp_step .xcp_step_img img {
    width: calc(91 * var(--to-rem));
    max-width: 100%;
  }
  .xcp_step + .xcp_step + .xcp_step .xcp_step_img {
    place-self: start start;
    margin-top: 0;
    margin-left: calc(87 * var(--to-rem));
  }
  .xcp_step + .xcp_step .xcp_step_img {
    margin-top: calc(45 * var(--to-rem));
    margin-left: calc(71 * var(--to-rem));
  }
  .xcp_step + .xcp_step .xcp_step_label {
    margin-left: calc(11 * var(--to-rem));
  }
  .xcp_step + .xcp_step + .xcp_step .xcp_step_label {
    place-self: start start;
    margin-top: 0;
    margin-left: calc(46 * var(--to-rem));
    text-align: start;
  }
  .xcp_step:nth-child(4) .xcp_step_label {
    margin-top: 0;
  }
  .xcp_step:not(:last-child) {
    position: relative;
    padding-bottom: 0;
  }
  .xcp_step_label img,
  .xcp_step + .xcp_step .xcp_step_label img,
  .xcp_step + .xcp_step + .xcp_step .xcp_step_label img {
    width: calc(var(--w) * var(--to-rem));
  }
  .xcp_step_img {
    place-self: start start;
    margin-top: calc(16 * var(--to-rem));
    margin-left: calc(90 * var(--to-rem));
  }
  .xcp_step_label {
    place-self: start start;
    margin-top: 0;
    margin-left: calc(14 * var(--to-rem));
    text-align: start;
  }
  .xcp_step:not(:last-child)::after {
    content: none;
  }
  .xcp_btn {
    width: calc(540 * var(--to-rem));
    min-height: calc(100 * var(--to-rem));
    padding-right: calc(40 * var(--to-rem));
    padding-left: calc(40 * var(--to-rem));
    font-size: calc(50 * var(--to-rem));
    --sx: calc(8 * var(--to-rem));
    --sy: calc(10 * var(--to-rem));
  }
  .xcp_howto .xcp_btn {
    margin-top: calc(49 * var(--to-rem));
  }
  .xcp_btn .btn_label {
    width: calc(var(--w) * var(--to-rem));
    translate: calc(-31 * var(--to-rem)) calc(-2 * var(--to-rem));
  }
  .xcp_btn_arrow {
    right: calc(66 * var(--to-rem));
    width: calc(32 * var(--to-rem));
    height: calc(29 * var(--to-rem));
  }
  .xcp_period {
    margin-top: calc(142 * var(--to-rem));
  }
  .xcp_period_list {
    row-gap: calc(14 * var(--to-rem));
    width: calc(730 * var(--to-rem));
    margin-top: calc(21 * var(--to-rem));
    margin-right: 0;
    margin-left: 0;
  }
  .xcp_period_item {
    height: auto;
    padding: 0;
  }
  .xcp_period_item img {
    width: calc(var(--w, 99999) * var(--to-rem));
    max-width: 100%;
    margin-left: 0;
  }
  .xcp_step:nth-child(3) .xcp_step_img img {
    width: calc(140 * var(--to-rem));
  }
  .xcp_step:nth-child(4) .xcp_step_img img {
    width: calc(130 * var(--to-rem));
  }
  .xcp_step:nth-child(5) .xcp_step_img img {
    width: calc(91 * var(--to-rem));
  }
}
.xcp_prize {
  position: relative;
}

.xcp_prize_lead {
  position: absolute;
  top: calc(-50 * var(--to-rem));
  left: calc(10 * var(--to-rem));
  line-height: 0;
  text-align: center;
}

.xcp_prize_lead_img {
  width: calc(165.5 * var(--to-rem));
}

.xcp_prize_modal {
  width: 100%;
  padding-top: calc(17 * var(--to-rem));
  text-align: center;
}

.xcp_prize_modal .btn {
  width: auto;
  min-width: calc(203 * var(--to-rem));
  padding-right: calc(34 * var(--to-rem));
  padding-left: calc(18 * var(--to-rem));
  background: linear-gradient(180deg, #f3f48d 0%, #f3f48d 17.6%, #fbf5d2 38.3%, #e6de8b 50.6%, #dbd46b 62%, #d5ce5a 83.5%, #d5ce5a 100%);
  border: calc(1 * var(--to-rem)) solid var(--color-text);
}

@media screen and (width > 767.98px) {
  .xcp_prize_lead {
    top: calc(-77 * var(--to-rem));
    left: 50%;
    transform: translateX(-50%);
  }
  .xcp_prize_lead_img {
    width: calc(265 * var(--to-rem));
  }
  .xcp_prize_modal {
    padding-top: calc(39 * var(--to-rem));
  }
  .xcp_prize_modal .btn {
    width: calc(320 * var(--to-rem));
    padding-right: calc(49 * var(--to-rem));
  }
}
:root {
  --clip-triangle-top: polygon(50% 0, 100% 100%, 0 100%);
  --clip-triangle-bottom: polygon(0 0, 100% 0, 50% 100%);
  --clip-triangle-right: polygon(0 0, 100% 50%, 0 100%);
  --clip-triangle-left: polygon(0 50%, 100% 0, 100% 100%);
  --clip-triangle-lower-left: polygon(0 0, 100% 100%, 0 100%);
  --clip-triangle-upper-left: polygon(0 0, 100% 0, 0 100%);
  --clip-triangle-lower-right: polygon(100% 0, 100% 100%, 0 100%);
  --clip-triangle-upper-right: polygon(0 0, 100% 0, 100% 100%);
}

@media (width <= 767px) {
  [data-only-device=md] {
    display: none;
  }
}

@media (width >= 768px) {
  [data-only-device=sm] {
    display: none;
  }
}

.u-text__marker {
  background: linear-gradient(transparent 75%, var(--color-orange) 75%);
}

.u-text__inlineBlock {
  display: inline flow-root;
}

.u-text__indent {
  padding-left: 1em;
  text-indent: -1em;
}

.visible-sp {
  display: revert;
}

.hidden-sp {
  display: none;
}

@media screen and (width > 767.98px) {
  .visible-sp {
    display: none;
  }
  .hidden-sp {
    display: revert;
  }
}
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}