@charset "UTF-8";
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  min-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

:root {
  --c-blue: #005bac;
  --c-blue-light: #0083c0;
  --c-lightblue: #91d2f1;
  --c-pink: #ffbed6;
  --c-pink-light: #ffd7ea;
  --c-yellow: #ffff00;
  --c-magenta: #f91f7a;
  --c-white: #ffffff;
  --main: var(--c-pink-light);
  --accent: var(--c-blue);
  --base: #ffffff;
  --text-cl-01: #755555;
  --text-cl-02: #666666;
  --text-cl-03: #aaaaaa;
  --text-cl-04: #ffffff;
  --link-01: var(--c-blue);
  --text-cl-placeholder: var(--text-cl-03);
  --text-cl-alert: #f0a3a3;
  --border-cl-01: #dddddd;
  --border-cl-02: #e9eaef;
  --border-size-l: 3px;
  --border-size-m: 2px;
  --border-size-s: 1px;
  --radius-m: 4px;
  --bg-01: var(--main);
  --bg-alert: #fceded;
  --shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
  --shadow-blue: 2px 2px 10px rgba(79, 149, 181, 0.6);
  --shadow-yellow: 0 0 30px rgba(255, 255, 0, 0.4);
  --duration: 0.25s;
  --font-jp-01: "Noto Sans JP", "メイリオ", "Meiryo", "Osaka", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  --font-awesome: "Font Awesome 6 Pro";
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-bold: 700;
  --lh-normal: 2.2;
  --lh-narrow: 1.5;
  --lh-fit: 1;
}

html, body {
  width: 100%;
  min-height: 100%;
}

html {
  box-sizing: border-box;
  -ms-overflow-style: scrollbar;
}

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

body {
  margin: 0;
  overflow-x: clip;
  position: relative;
}
@media screen and (min-width: 768px) {
  body {
    font-size: clamp(13.6px, 1.111vw, 32px);
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: clamp(13.6px, 4.103vw, 32px);
  }
}

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

a {
  transition: all var(--duration);
}
a img {
  transition: var(--duration);
}
@media (any-hover: hover) {
  a:hover {
    text-decoration: none;
  }
  a:hover img {
    opacity: 0.6;
  }
}

a[href^="mailto:"], a[href^="tel:"] {
  text-decoration: underline !important;
}

img, svg {
  max-width: 100%;
  height: auto;
}

svg {
  fill: currentcolor;
}

strong {
  font-weight: var(--fw-bold);
}

.jitsuwa {
  position: relative;
  letter-spacing: normal;
  font-family: var(--font-jp-01);
  color: var(--text-cl-01);
  font-weight: var(--fw-regular);
  line-height: var(--lh-normal);
  letter-spacing: normal;
  overflow-x: clip;
}
.jitsuwa .inner {
  position: relative;
  z-index: 1;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa .inner {
    max-width: min(2060px, 71.528vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa .inner {
    max-width: min(664px, 85.128vw);
  }
}
.jitsuwa-content {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .jitsuwa-content {
    padding: min(28px, 0.972vw) 0 min(220px, 7.639vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-content {
    padding: min(116px, 14.872vw) 0 min(112px, 14.359vw);
  }
}
.jitsuwa-cap {
  position: relative;
  width: 100%;
  overflow-x: clip;
  text-align: center;
  background-color: var(--cap-bgc);
}
@media screen and (min-width: 768px) {
  .jitsuwa-cap {
    height: min(204px, 7.083vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-cap {
    height: min(54px, 6.923vw);
  }
}
.jitsuwa-cap + * {
  position: relative;
  margin-top: -1px;
}
.jitsuwa-cap-img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
}
.jitsuwa-cap.--re .jitsuwa-cap-img {
  transform: scaleY(-1) translateY(0.5px);
}
.jitsuwa-hero {
  position: relative;
  width: 100%;
  margin-inline: auto;
  background-color: var(--c-magenta);
  overflow: visible;
  background-image: url("/q10kajitsu-gumi/jitsuwa-cp/assets/img/hero/bg_top.webp");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
}
@media screen and (min-width: 768px) {
  .jitsuwa-hero {
    padding-top: min(222px, 7.708vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hero {
    padding-top: min(278px, 35.641vw);
    background-size: min(1720px, 220.513vw);
  }
}
.jitsuwa-hero-inner {
  position: relative;
  height: 100%;
  max-width: min(2880px, 100vw);
  margin-inline: auto;
  overflow: visible;
}
.jitsuwa-hero-head {
  position: absolute;
  display: block;
  left: 50%;
  transform: translate(-50%, 0%);
}
@media screen and (min-width: 768px) {
  .jitsuwa-hero-head {
    top: max(-136px, -4.722vw);
    width: min(1880px, 65.278vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hero-head {
    top: max(-244px, -31.282vw);
    width: min(492px, 63.077vw);
  }
}
.jitsuwa-hero-wrap {
  position: relative;
  overflow: visible;
  background-color: var(--c-pink);
}
@media screen and (min-width: 768px) {
  .jitsuwa-hero-wrap {
    height: min(1604px, 55.694vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hero-wrap {
    height: min(1344px, 172.308vw);
  }
}
.jitsuwa-hero-wrap > .jitsuwa-cap.--re {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 4;
}
.jitsuwa-hero-title {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  z-index: 3;
}
@media screen and (min-width: 768px) {
  .jitsuwa-hero-title {
    top: max(-84px, -2.917vw);
    width: min(1720px, 59.722vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hero-title {
    top: min(76px, 9.744vw);
    width: min(560px, 71.795vw);
  }
}
.jitsuwa-hero-title img {
  display: block;
  width: 100%;
  height: auto;
}
.jitsuwa-hero-badge {
  position: absolute;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--c-yellow);
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: 0.05em;
  background-color: var(--c-magenta);
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .jitsuwa-hero-badge {
    left: min(412px, 14.306vw);
    top: min(262px, 9.097vw);
    width: min(288px, 10vw);
    height: min(288px, 10vw);
    font-size: clamp(12.75px, 1.042vw, 30px);
    rotate: -15deg;
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hero-badge {
    right: max(-14px, -1.795vw);
    top: min(304px, 38.974vw);
    width: min(200px, 25.641vw);
    height: min(200px, 25.641vw);
    font-size: clamp(9.35px, 2.821vw, 22px);
    rotate: 15deg;
    z-index: 4;
  }
}
.jitsuwa-hero-photo {
  position: absolute;
  display: block;
  height: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-hero-photo.--senpai {
    left: min(233.5px, 8.108vw);
    top: min(92px, 3.194vw);
    width: min(866px, 30.069vw);
    z-index: 2;
  }
  .jitsuwa-hero-photo.--tencho {
    left: min(958px, 33.264vw);
    top: min(258px, 8.958vw);
    width: min(904px, 31.389vw);
    z-index: 1;
  }
  .jitsuwa-hero-photo.--kohai {
    right: min(454px, 15.764vw);
    top: min(200px, 6.944vw);
    width: min(786px, 27.292vw);
    rotate: 6deg;
    z-index: 2;
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hero-photo.--senpai {
    left: max(-270px, -34.615vw);
    top: min(282px, 36.154vw);
    width: min(566px, 72.564vw);
    rotate: -5deg;
    z-index: 2;
  }
  .jitsuwa-hero-photo.--tencho {
    left: min(156px, 20vw);
    top: min(344px, 44.103vw);
    width: min(520px, 66.667vw);
    z-index: 1;
  }
  .jitsuwa-hero-photo.--kohai {
    right: max(-126px, -16.154vw);
    top: min(352px, 45.128vw);
    width: min(501.2px, 64.256vw);
    rotate: 6deg;
    z-index: 2;
  }
}
.jitsuwa-hero-fruit {
  position: absolute;
  z-index: 3;
  display: block;
  height: auto;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .jitsuwa-hero-fruit.--peach {
    left: 0;
    top: max(-184px, -6.389vw);
    width: min(492px, 17.083vw);
  }
  .jitsuwa-hero-fruit.--grape {
    right: 0;
    top: max(-360px, -12.5vw);
    width: min(612px, 21.25vw);
  }
  .jitsuwa-hero-fruit.--lemon {
    left: min(68px, 2.361vw);
    top: min(642px, 22.292vw);
    width: min(458px, 15.903vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hero-fruit.--peach {
    left: max(-64px, -8.205vw);
    top: max(-190px, -24.359vw);
    width: min(256px, 32.821vw);
  }
  .jitsuwa-hero-fruit.--grape {
    right: max(-96px, -12.308vw);
    top: max(-220px, -28.205vw);
    width: min(340px, 43.59vw);
  }
  .jitsuwa-hero-fruit.--lemon {
    left: min(2px, 0.256vw);
    top: min(726px, 93.077vw);
    width: min(324px, 41.538vw);
  }
}
.jitsuwa-hero-gumi {
  position: absolute;
  z-index: 3;
  display: block;
  height: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-hero-gumi {
    right: max(-90px, -3.125vw);
    top: min(612px, 21.25vw);
    width: min(448px, 15.556vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hero-gumi {
    left: min(470px, 60.256vw);
    top: min(788px, 101.026vw);
    width: min(252px, 32.308vw);
  }
}
.jitsuwa-hero-bubble {
  position: absolute;
  display: block;
  height: auto;
  mix-blend-mode: overlay;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .jitsuwa-hero-bubble.--1 {
    left: min(72px, 2.5vw);
    top: min(280px, 9.722vw);
    width: min(264px, 9.167vw);
    z-index: 4;
  }
  .jitsuwa-hero-bubble.--2 {
    right: max(-32px, -1.111vw);
    top: min(120px, 4.167vw);
    width: min(334px, 11.597vw);
  }
  .jitsuwa-hero-bubble.--3 {
    left: min(1086px, 37.708vw);
    top: min(762px, 26.458vw);
    width: min(360px, 12.5vw);
    z-index: 3;
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hero-bubble.--1 {
    left: max(-74px, -9.487vw);
    top: min(30px, 3.846vw);
    width: min(164px, 21.026vw);
    z-index: 4;
  }
  .jitsuwa-hero-bubble.--2 {
    right: max(-34px, -4.359vw);
    top: min(4px, 0.513vw);
    width: min(200px, 25.641vw);
  }
  .jitsuwa-hero-bubble.--3 {
    left: min(234px, 30vw);
    top: min(720px, 92.308vw);
    width: min(166px, 21.282vw);
    z-index: 4;
  }
}
.jitsuwa-package {
  position: relative;
  width: 100%;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .jitsuwa-package {
    margin-top: max(-640px, -22.222vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-package {
    margin-top: max(-478px, -61.282vw);
  }
}
.jitsuwa-package .jitsuwa-content {
  background-color: var(--c-pink-light);
}
@media screen and (min-width: 768px) {
  .jitsuwa-package .jitsuwa-content {
    padding-bottom: min(180px, 6.25vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-package .jitsuwa-content {
    padding-bottom: min(180px, 23.077vw);
  }
}
.jitsuwa-package-pkg {
  position: absolute;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .jitsuwa-package-pkg--peach {
    width: min(394px, 13.681vw);
    top: max(-278px, -9.653vw);
    right: min(328px, 11.389vw);
    rotate: 15deg;
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-package-pkg--peach {
    width: min(120px, 15.385vw);
    top: min(120px, 15.385vw);
    right: max(-22px, -2.821vw);
    rotate: 9deg;
  }
}
.jitsuwa-package-pkg--muscat {
  rotate: -12deg;
}
@media screen and (min-width: 768px) {
  .jitsuwa-package-pkg--muscat {
    width: min(252px, 8.75vw);
    top: max(-204px, -7.083vw);
    left: min(516px, 17.917vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-package-pkg--muscat {
    width: min(100px, 12.821vw);
    top: min(192px, 24.615vw);
    left: min(26px, 3.333vw);
  }
}
.jitsuwa-package-lead {
  text-align: center;
  color: var(--c-magenta);
  font-weight: var(--fw-bold);
}
@media screen and (min-width: 768px) {
  .jitsuwa-package-lead {
    margin-bottom: min(120px, 4.167vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-package-lead {
    margin-bottom: min(70px, 8.974vw);
  }
}
.jitsuwa-package-lead-main {
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .jitsuwa-package-lead-main {
    font-size: clamp(22.1px, 1.806vw, 52px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-package-lead-main {
    font-size: clamp(17px, 5.128vw, 40px);
  }
}
.jitsuwa-package-lead-main span {
  font-size: clamp(34px, 2.778vw, 80px);
}
@media screen and (max-width: 767px) {
  .jitsuwa-package-lead-main span {
    font-size: clamp(23.8px, 7.179vw, 56px);
  }
}
.jitsuwa-package-text {
  color: var(--c-blue);
  text-align: center;
  font-weight: var(--fw-bold);
}
@media screen and (min-width: 768px) {
  .jitsuwa-package-text {
    line-height: 2.4;
    font-size: clamp(15.3px, 1.25vw, 36px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-package-text {
    line-height: 2.2;
    font-size: clamp(13.6px, 4.103vw, 32px);
  }
}
.jitsuwa-package-text span {
  font-size: clamp(20.4px, 1.667vw, 48px);
}
@media screen and (max-width: 767px) {
  .jitsuwa-package-text span {
    font-size: clamp(17px, 5.128vw, 40px);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-package-list {
    margin-top: min(64px, 2.222vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-package-list {
    margin-top: min(64px, 8.205vw);
  }
}
.jitsuwa-present {
  position: relative;
  width: 100%;
  background-color: var(--c-lightblue);
  z-index: 2;
}
.jitsuwa-present .jitsuwa-content {
  background-color: var(--c-lightblue);
}
@media screen and (min-width: 768px) {
  .jitsuwa-present .jitsuwa-content {
    padding-bottom: min(180px, 6.25vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present .jitsuwa-content {
    padding-top: min(196px, 25.128vw);
    padding-bottom: min(170px, 21.795vw);
  }
}
.jitsuwa-present-prize {
  position: absolute;
  z-index: 1;
}
.jitsuwa-present-prize.--tshirt {
  transform: rotate(-23deg);
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-prize.--tshirt {
    width: min(700px, 24.306vw);
    top: max(-260px, -9.028vw);
    left: min(66px, 2.292vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-prize.--tshirt {
    display: none;
  }
}
.jitsuwa-present-prize.--tote {
  transform: rotate(23deg);
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-prize.--tote {
    width: min(500px, 17.361vw);
    top: min(40px, 1.389vw);
    right: min(240px, 8.333vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-prize.--tote {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-prize.--gumi {
    width: min(466px, 16.181vw);
    top: min(680px, 23.611vw);
    left: min(262px, 9.097vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-prize.--gumi {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-prize.--goods {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-prize.--goods {
    display: block;
    width: min(790px, 101.282vw);
    top: max(-264px, -33.846vw);
    left: 0;
  }
}
.jitsuwa-present-title {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-title {
    width: min(1240px, 43.056vw);
    margin-bottom: min(96px, 3.333vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-title {
    width: min(696px, 89.231vw);
    margin-bottom: min(36px, 4.615vw);
  }
}
.jitsuwa-present-text {
  font-weight: var(--fw-bold);
  color: var(--c-blue);
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-text {
    font-size: clamp(15.3px, 1.25vw, 36px);
    line-height: 2.4;
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-text {
    font-size: clamp(13.6px, 4.103vw, 32px);
    line-height: 2;
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-text .--accent {
    font-size: clamp(22.1px, 1.806vw, 52px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-text .--accent {
    font-size: clamp(17px, 5.128vw, 40px);
  }
}
.jitsuwa-present-day {
  display: block;
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-day {
    width: min(1134px, 39.375vw);
    margin: min(48px, 1.667vw) auto min(208px, 7.222vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-day {
    width: min(756px, 96.923vw);
    margin: min(60px, 7.692vw) auto min(140px, 17.949vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-step {
    margin-bottom: min(144px, 5vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-step {
    margin-bottom: min(100px, 12.821vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-step .jitsuwa-heading {
    margin-bottom: min(100px, 3.472vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-step .jitsuwa-heading {
    margin-bottom: min(80px, 10.256vw);
  }
}
.jitsuwa-present-step-flow {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-step-flow {
    width: min(2106px, 73.125vw);
    transform: translateX(min(20px, 0.694vw));
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-step-flow {
    width: min(640px, 82.051vw);
    transform: translateX(min(28px, 3.59vw));
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-btn {
    margin-bottom: min(120px, 4.167vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-btn {
    margin-bottom: min(128px, 16.41vw);
  }
}
.jitsuwa-present-shop {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-present-shop {
    width: min(1844px, 64.028vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-present-shop {
    width: min(714px, 91.538vw);
  }
}
.jitsuwa-drama {
  width: 100%;
  background-color: var(--c-pink-light);
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama {
    padding-top: clamp(20.4px, 1.667vw, 48px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama {
    padding: min(160px, 20.513vw) 0 0;
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama .jitsuwa-cap.--re {
    height: min(160px, 20.513vw);
  }
}
.jitsuwa-drama-en {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-en {
    top: min(40px, 1.389vw);
    width: min(1002px, 34.792vw);
  }
}
@media screen and (max-width: 1194px) {
  .jitsuwa-drama-en {
    top: 0;
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-en {
    top: max(-110px, -14.103vw);
    width: min(642px, 82.308vw);
  }
}
.jitsuwa-drama-contents {
  background-color: var(--c-pink);
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-contents {
    padding-top: min(132px, 4.583vw);
    padding-bottom: min(120px, 4.167vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-contents {
    padding-bottom: min(160px, 20.513vw);
  }
}
.jitsuwa-drama-head {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-head {
    margin-bottom: min(60px, 2.083vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-head {
    margin-bottom: min(48px, 6.154vw);
  }
}
.jitsuwa-drama-presents {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  color: var(--c-white);
  font-weight: var(--fw-bold);
  background-color: var(--c-blue);
  border-radius: 10px;
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-presents {
    font-size: clamp(13.6px, 1.111vw, 32px);
    padding: min(16px, 0.556vw) min(48px, 1.667vw);
    margin-bottom: min(48px, 1.667vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-presents {
    font-size: clamp(11.05px, 3.333vw, 26px);
    padding: min(12px, 1.538vw) min(36px, 4.615vw);
    margin-bottom: min(32px, 4.103vw);
  }
}
.jitsuwa-drama-presents::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: var(--c-yellow);
  border-radius: inherit;
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-presents::before {
    top: min(4px, 0.139vw);
    left: min(6px, 0.208vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-presents::before {
    top: min(4px, 0.513vw);
    left: min(6px, 0.769vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-title {
    width: min(1360px, 47.222vw);
    margin: min(70px, 2.431vw) auto min(80px, 2.778vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-title {
    width: min(664px, 85.128vw);
    margin: min(70px, 8.974vw) auto min(32px, 4.103vw);
  }
}
.jitsuwa-drama-schedule {
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-schedule {
    line-height: 1.25;
    font-size: clamp(17px, 1.389vw, 40px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-schedule {
    line-height: 1.6;
    font-size: clamp(13.6px, 4.103vw, 32px);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-schedule span {
    font-size: clamp(13.6px, 1.111vw, 32px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-schedule span {
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.jitsuwa-drama-digest {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-digest {
    margin-bottom: min(96px, 3.333vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-digest {
    margin-bottom: min(80px, 10.256vw);
  }
}
.jitsuwa-drama-digest-gumi {
  position: absolute;
  right: max(-220px, -7.639vw);
  bottom: max(-340px, -11.806vw);
  width: min(497px, 17.257vw);
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-digest-gumi {
    right: max(-124px, -15.897vw);
    bottom: max(-104px, -13.333vw);
    width: min(256px, 32.821vw);
  }
}
.jitsuwa-drama-about {
  text-align: center;
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-about {
    margin-bottom: min(140px, 4.861vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-about {
    margin-bottom: min(80px, 10.256vw);
  }
}
.jitsuwa-drama-about-lead {
  font-size: clamp(18.7px, 1.528vw, 44px);
  margin-bottom: min(12px, 0.417vw);
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-about-lead {
    font-size: clamp(15.3px, 4.615vw, 36px);
    margin-bottom: min(16px, 2.051vw);
  }
}
.jitsuwa-drama-about-lead-border {
  line-height: 1.25;
  font-size: clamp(27.2px, 2.222vw, 64px);
  color: #fff;
  -webkit-text-stroke: min(10px, 0.347vw) var(--c-blue);
  paint-order: stroke;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-about-lead-border {
    font-size: clamp(22.1px, 6.667vw, 52px);
    margin-bottom: min(64px, 8.205vw);
  }
}
.jitsuwa-drama-about-text {
  line-height: var(--lh-normal);
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-about-text {
    font-size: clamp(13.6px, 1.111vw, 32px);
    margin-top: min(64px, 2.222vw);
    margin-bottom: min(60px, 2.083vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-about-text {
    font-size: clamp(11.9px, 3.59vw, 28px);
    margin-bottom: min(64px, 8.205vw);
  }
}
.jitsuwa-drama-about-note {
  color: var(--c-magenta);
}
@media screen and (min-width: 768px) {
  .jitsuwa-drama-about-note {
    font-size: clamp(13.6px, 1.111vw, 32px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-about-note {
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.jitsuwa-drama-about-note span {
  font-size: clamp(18.7px, 1.528vw, 44px);
}
@media screen and (max-width: 767px) {
  .jitsuwa-drama-about-note span {
    font-size: clamp(15.3px, 4.615vw, 36px);
  }
}
.jitsuwa-heading {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  color: var(--c-white);
  font-weight: var(--fw-bold);
  line-height: var(--lh-fit);
  text-align: center;
  letter-spacing: 0.5em;
  background-color: var(--c-blue);
}
@media screen and (min-width: 768px) {
  .jitsuwa-heading {
    font-size: clamp(32.3px, 2.639vw, 76px);
    padding: 0.6315789474em 1.5789473684em;
    padding-right: 1.0789473684em;
    border-radius: min(40px, 1.389vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-heading {
    font-size: clamp(20.4px, 6.154vw, 48px);
    padding: min(36px, 4.615vw) min(64px, 8.205vw);
    padding-right: calc(min(80px, 10.256vw) - 0.5em);
    border-radius: min(20px, 2.564vw);
  }
}
.jitsuwa-heading::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: var(--c-yellow);
  border-radius: inherit;
}
@media screen and (min-width: 768px) {
  .jitsuwa-heading::before {
    top: min(10px, 0.347vw);
    left: min(14px, 0.486vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-heading::before {
    top: min(10px, 1.282vw);
    left: min(14px, 1.795vw);
  }
}
.jitsuwa-heading.--small {
  border-radius: min(20px, 0.694vw);
  letter-spacing: normal;
}
@media screen and (min-width: 768px) {
  .jitsuwa-heading.--small {
    font-size: clamp(11.9px, 0.972vw, 28px);
    padding: min(40px, 1.389vw) min(52px, 1.806vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-heading.--small {
    width: fit-content;
    font-size: clamp(10.2px, 3.077vw, 24px);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-heading.--small::before {
    top: min(6px, 0.208vw);
    left: min(4px, 0.139vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-heading.--small::before {
    top: min(6px, 0.769vw);
    left: min(4px, 0.513vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-heading.--long {
    letter-spacing: 0.1em;
    padding-right: 1.4789473684em;
    margin-bottom: min(152px, 5.278vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-heading.--long {
    letter-spacing: 0.2em;
    padding: min(20px, 2.564vw) min(10px, 1.282vw) min(28px, 3.59vw);
    margin-bottom: min(76px, 9.744vw);
    line-height: 1.6;
  }
  .jitsuwa-heading.--long span {
    display: block;
    font-size: clamp(13.6px, 4.103vw, 32px);
  }
}
.jitsuwa-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin-inline: auto;
  text-align: center;
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  line-height: var(--lh-narrow);
  letter-spacing: 0.05em;
  background-color: var(--c-yellow);
  border-radius: calc(infinity * min(2px, 0.069vw));
  box-shadow: var(--shadow-yellow);
  transition: transform var(--duration);
}
@media screen and (min-width: 768px) {
  .jitsuwa-btn {
    font-size: clamp(20.4px, 1.667vw, 48px);
    padding: min(44px, 1.528vw) min(92px, 3.194vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-btn {
    width: min(700px, 89.744vw);
    max-width: 100%;
    font-size: clamp(15.3px, 4.615vw, 36px);
    padding: min(36px, 4.615vw) min(20px, 2.564vw);
  }
}
@media (any-hover: hover) {
  .jitsuwa-btn:hover {
    transform: scale(0.95);
  }
}
.jitsuwa-btn small {
  display: block;
  font-weight: var(--fw-medium);
}
@media screen and (min-width: 768px) {
  .jitsuwa-btn small {
    font-size: clamp(11.9px, 0.972vw, 28px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-btn small {
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.jitsuwa-btn.--accent {
  color: var(--c-white);
  box-shadow: none;
  transition: filter var(--duration), transform var(--duration);
  background-color: var(--c-magenta);
}
@media screen and (min-width: 768px) {
  .jitsuwa-btn.--accent {
    font-size: clamp(13.6px, 1.111vw, 32px);
    padding: min(34px, 1.181vw) min(86px, 2.986vw);
    filter: drop-shadow(0 min(12px, 0.417vw) 0 rgba(0, 0, 0, 0.15));
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-btn.--accent {
    font-size: clamp(11.9px, 3.59vw, 28px);
    padding: min(46px, 5.897vw) min(52px, 6.667vw);
    filter: drop-shadow(0 min(12px, 1.538vw) 0 rgba(0, 0, 0, 0.15));
  }
}
@media (any-hover: hover) {
  .jitsuwa-btn.--accent:hover {
    filter: none;
    transform: translateY(min(12px, 0.417vw));
  }
}
.jitsuwa-movie {
  position: relative;
  aspect-ratio: 16/9;
  width: 100%;
  display: block;
}
.jitsuwa-movie::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: min(18px, 0.625vw);
  left: min(16px, 0.556vw);
  width: 100%;
  height: 100%;
  border-radius: min(40px, 1.389vw);
  background-color: var(--c-yellow);
}
@media screen and (max-width: 767px) {
  .jitsuwa-movie::before {
    top: min(6px, 0.769vw);
    left: min(6px, 0.769vw);
  }
}
.jitsuwa-movie::after {
  content: "";
  position: absolute;
  left: min(78px, 2.708vw);
  bottom: min(72px, 2.5vw);
  width: min(240px, 8.333vw);
  height: min(240px, 8.333vw);
  background-image: url("/q10kajitsu-gumi/jitsuwa-cp/assets/img/common/play.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .jitsuwa-movie::after {
    left: min(24px, 3.077vw);
    bottom: min(24px, 3.077vw);
    width: min(96px, 12.308vw);
    height: min(96px, 12.308vw);
  }
}
.jitsuwa-movie.--lg::after {
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}
.jitsuwa-movie img {
  border-radius: 20px;
  opacity: 1 !important;
}
@media (any-hover: hover) {
  .jitsuwa-movie:hover .jitsuwa-movie-play {
    opacity: 0.85;
  }
}
.jitsuwa-movie-label {
  margin-bottom: 0.5em;
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  line-height: var(--lh-narrow);
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .jitsuwa-movie-label {
    font-size: clamp(13.6px, 1.111vw, 32px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-movie-label {
    font-size: clamp(11.05px, 3.333vw, 26px);
  }
}
.jitsuwa-movie-time {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: var(--c-yellow);
  text-align: center;
  font-size: clamp(22.1px, 1.806vw, 52px);
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 767px) {
  .jitsuwa-movie-time {
    font-size: clamp(11.9px, 3.59vw, 28px);
    line-height: 1.3;
  }
}
.jitsuwa-movie:has(.jitsuwa-movie-time)::after {
  display: none;
}
.jitsuwa-sns {
  padding: min(138px, 4.792vw) min(0px, 0vw) min(346px, 12.014vw);
  background-color: var(--c-lightblue);
}
@media screen and (min-width: 768px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns {
    padding: min(80px, 2.778vw);
    border-radius: min(40px, 1.389vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns {
    padding: min(60px, 7.692vw) min(40px, 5.128vw) min(80px, 10.256vw);
    border-radius: min(40px, 5.128vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-inner {
    max-width: min(968px, 33.611vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-inner {
    max-width: min(480px, 61.538vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-decoration1 {
    top: min(36px, 1.25vw);
    left: max(-46px, -1.597vw);
    width: min(160px, 5.556vw);
    height: min(160px, 5.556vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-decoration1 {
    top: max(-40px, -5.128vw);
    right: max(-60px, -7.692vw);
    width: min(160px, 20.513vw);
    height: min(160px, 20.513vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-decoration2 {
    bottom: max(-62px, -2.153vw);
    left: min(82px, 2.847vw);
    width: min(160px, 5.556vw);
    height: min(160px, 5.556vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-decoration2 {
    bottom: min(40px, 5.128vw);
    left: max(-40px, -5.128vw);
    width: min(100px, 12.821vw);
    height: min(100px, 12.821vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-decoration3 {
    top: max(-80px, -2.778vw);
    right: max(-162px, -5.625vw);
    width: min(326px, 11.319vw);
    height: min(246px, 8.542vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-text {
    width: min(480px, 16.667vw);
    padding: min(30px, 1.042vw) min(70px, 2.431vw) min(30px, 1.042vw) min(50px, 1.736vw);
    font-size: clamp(17px, 1.389vw, 40px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-text {
    width: min(480px, 61.538vw);
    padding: min(30px, 3.846vw) min(70px, 8.974vw) min(30px, 3.846vw) min(50px, 6.41vw);
    margin-bottom: min(60px, 7.692vw);
    font-size: clamp(17px, 5.128vw, 40px);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-list {
    margin-left: min(40px, 1.389vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-sns .q10kajitsugumi-bnr-sns-list {
    margin-left: min(40px, 5.128vw);
  }
}

.jitsuwa-episode {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (min-width: 768px) {
  .jitsuwa-episode {
    gap: min(80px, 2.778vw) min(76px, 2.639vw);
    margin-bottom: min(120px, 4.167vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-episode {
    gap: min(48px, 6.154vw) min(30px, 3.846vw);
    margin-bottom: min(120px, 15.385vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-episode .jitsuwa-movie img {
    border-radius: min(12px, 1.538vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-episode .jitsuwa-movie::before {
    top: min(8px, 0.278vw);
    left: min(12px, 0.417vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-episode .jitsuwa-movie::before {
    top: min(6px, 0.769vw);
    left: min(6px, 0.769vw);
    border-radius: min(12px, 1.538vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-episode .jitsuwa-movie::after {
    left: min(40px, 1.389vw);
    bottom: min(40px, 1.389vw);
    width: min(160px, 5.556vw);
    height: min(160px, 5.556vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-episode .jitsuwa-movie::after {
    left: min(16px, 2.051vw);
    bottom: min(16px, 2.051vw);
    width: min(64px, 8.205vw);
    height: min(64px, 8.205vw);
  }
}

.jitsuwa-hint {
  display: flex;
  justify-content: center;
}
.jitsuwa-hint-balloon {
  background-color: var(--c-white);
  border-radius: min(40px, 1.389vw);
  text-align: center;
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  line-height: var(--lh-normal);
  position: relative;
}
@media screen and (min-width: 768px) {
  .jitsuwa-hint-balloon {
    max-width: min(1620px, 56.25vw);
    padding: min(72px, 2.5vw) min(160px, 5.556vw);
    font-size: clamp(13.6px, 1.111vw, 32px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hint-balloon {
    width: 100%;
    padding: min(66px, 8.462vw) min(56px, 7.179vw);
    font-size: clamp(13.6px, 4.103vw, 32px);
  }
}
.jitsuwa-hint-balloon::before {
  content: "";
  border-style: solid;
  border-color: transparent transparent var(--c-white) transparent;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .jitsuwa-hint-balloon::before {
    border-width: 0 min(36px, 1.25vw) min(44px, 1.528vw) min(36px, 1.25vw);
    top: max(-40px, -1.389vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hint-balloon::before {
    border-width: 0 min(28px, 3.59vw) min(36px, 4.615vw) min(28px, 3.59vw);
    top: max(-32px, -4.103vw);
  }
}
.jitsuwa-hint-deco1, .jitsuwa-hint-deco2, .jitsuwa-hint-deco3, .jitsuwa-hint-deco4 {
  position: absolute;
}
.jitsuwa-hint-deco1 {
  transform: rotate(10deg);
}
@media screen and (min-width: 768px) {
  .jitsuwa-hint-deco1 {
    top: min(96px, 3.333vw);
    left: max(-114px, -3.958vw);
    width: min(172px, 5.972vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hint-deco1 {
    top: max(-40px, -5.128vw);
    left: max(-40px, -5.128vw);
    width: min(142px, 18.205vw);
  }
}
.jitsuwa-hint-deco2 {
  transform: rotate(-15deg);
}
@media screen and (min-width: 768px) {
  .jitsuwa-hint-deco2 {
    right: 0;
    bottom: max(-54px, -1.875vw);
    width: min(154px, 5.347vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hint-deco2 {
    right: max(-40px, -5.128vw);
    bottom: max(-40px, -5.128vw);
    width: min(154px, 19.744vw);
  }
}
.jitsuwa-hint-deco3 {
  transform: rotate(-15deg);
}
@media screen and (min-width: 768px) {
  .jitsuwa-hint-deco3 {
    left: min(40px, 1.389vw);
    bottom: max(-60px, -2.083vw);
    width: min(172px, 5.972vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-hint-deco3 {
    display: none;
  }
}

.jitsuwa-character {
  width: 100%;
  background-color: var(--c-pink-light);
}
@media screen and (min-width: 768px) {
  .jitsuwa-character {
    padding: min(160px, 5.556vw) 0 min(100px, 3.472vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-character {
    padding: min(60px, 7.692vw) 0 min(120px, 15.385vw);
  }
}
.jitsuwa-character-list {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .jitsuwa-character-list {
    gap: min(164px, 5.694vw);
    margin-top: min(144px, 5vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-list {
    flex-direction: column;
    align-items: center;
    gap: min(80px, 10.256vw);
    margin-top: min(76px, 9.744vw);
  }
}
.jitsuwa-character-list.--sub {
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .jitsuwa-character-list.--sub {
    gap: min(40px, 1.389vw) min(136px, 4.722vw);
    margin-top: min(80px, 2.778vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-list.--sub {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: min(64px, 8.205vw) min(72px, 9.231vw);
    margin-top: min(86px, 11.026vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-character-list.--sub .jitsuwa-character-item {
    width: min(412px, 14.306vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-character-list.--sub .jitsuwa-character-role {
    font-size: clamp(14.45px, 1.181vw, 34px);
    margin-bottom: min(24px, 0.833vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-list.--sub .jitsuwa-character-role {
    font-size: clamp(11.9px, 3.59vw, 28px);
    margin-bottom: min(20px, 2.564vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-list.--sub .jitsuwa-character-photo {
    width: min(300px, 38.462vw);
  }
}
.jitsuwa-character-item {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .jitsuwa-character-item {
    width: min(578px, 20.069vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-item {
    width: 100%;
  }
}
.jitsuwa-character-role {
  color: #fff;
  font-weight: var(--fw-bold);
  line-height: var(--lh-narrow);
  -webkit-text-stroke: 4px var(--c-blue);
  paint-order: stroke;
}
@media screen and (min-width: 768px) {
  .jitsuwa-character-role {
    font-size: clamp(20.4px, 1.667vw, 48px);
    margin-bottom: min(32px, 1.111vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-role {
    font-size: clamp(20.4px, 6.154vw, 48px);
    margin-bottom: min(32px, 4.103vw);
  }
}
.jitsuwa-character-photo {
  position: relative;
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-photo {
    width: min(500px, 64.103vw);
    margin-inline: auto;
  }
}
.jitsuwa-character-desc {
  font-weight: var(--fw-bold);
  line-height: var(--lh-narrow);
  color: var(--c-blue);
}
@media screen and (min-width: 768px) {
  .jitsuwa-character-desc {
    margin-top: min(40px, 1.389vw);
    font-size: clamp(11.9px, 0.972vw, 28px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-desc {
    margin-top: min(32px, 4.103vw);
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.jitsuwa-character-desc strong {
  font-size: clamp(17px, 1.389vw, 40px);
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-desc strong {
    font-size: clamp(17px, 5.128vw, 40px);
  }
}
.jitsuwa-character-key {
  position: absolute;
  right: max(-26px, -0.903vw);
  bottom: min(52px, 1.806vw);
  width: max-content;
  color: var(--c-yellow);
  line-height: 1.2;
  font-weight: var(--fw-bold);
  background-color: var(--c-blue);
  border-radius: min(8px, 0.278vw);
  transform: rotate(-7deg);
}
@media screen and (min-width: 768px) {
  .jitsuwa-character-key {
    font-size: clamp(11.9px, 0.972vw, 28px);
    padding: min(12px, 0.417vw) min(32px, 1.111vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-key {
    right: max(-10px, -1.282vw);
    bottom: min(24px, 3.077vw);
    font-size: clamp(10.2px, 3.077vw, 24px);
    padding: min(8px, 1.026vw) min(32px, 4.103vw);
  }
}
.jitsuwa-character-btn {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .jitsuwa-character-btn {
    gap: min(32px, 1.111vw);
    margin-top: min(150px, 5.208vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-btn {
    margin-top: min(60px, 7.692vw);
  }
}
.jitsuwa-character-btn-text {
  display: block;
  width: clamp(262.65px, 21.458vw, 618px);
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .jitsuwa-character-btn-text {
    width: min(536px, 68.718vw);
    margin-bottom: min(32px, 4.103vw);
  }
}

.jitsuwa-song {
  width: 100%;
  background-color: var(--c-white);
}
.jitsuwa-song .jitsuwa-heading {
  letter-spacing: normal;
  padding-inline: 1em;
}
@media screen and (min-width: 768px) {
  .jitsuwa-song .inner {
    padding: min(320px, 11.111vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-song .inner {
    padding: min(220px, 28.205vw) 0;
  }
}
.jitsuwa-song-logos {
  display: block;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-song-logos {
    width: min(884px, 30.694vw);
    margin-top: min(104px, 3.611vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-song-logos {
    width: min(664px, 85.128vw);
    margin-top: min(70px, 8.974vw);
  }
}
.jitsuwa-song-block {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .jitsuwa-song-block {
    gap: min(80px, 2.778vw);
    margin-top: min(126px, 4.375vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-song-block {
    flex-direction: column;
    gap: min(48px, 6.154vw);
    margin-top: min(96px, 12.308vw);
  }
}
.jitsuwa-song-jacket {
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .jitsuwa-song-jacket {
    width: min(520px, 18.056vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-song-jacket {
    width: min(520px, 66.667vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-song-detail {
    max-width: min(1120px, 38.889vw);
  }
}
.jitsuwa-song-lead {
  color: var(--c-pink);
  font-weight: var(--fw-bold);
  line-height: var(--lh-narrow);
  -webkit-text-stroke: min(8px, 0.278vw) var(--c-blue);
  paint-order: stroke;
}
@media screen and (min-width: 768px) {
  .jitsuwa-song-lead {
    font-size: clamp(23.8px, 1.944vw, 56px);
    margin-bottom: min(40px, 1.389vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-song-lead {
    font-size: clamp(23.8px, 7.179vw, 56px);
    margin-bottom: min(32px, 4.103vw);
    text-align: center;
  }
}
.jitsuwa-song-text {
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .jitsuwa-song-text {
    font-size: clamp(15.3px, 1.25vw, 36px);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-song-text {
    text-align: center;
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-song-btn {
    margin-top: min(120px, 4.167vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-song-btn {
    margin-top: min(80px, 10.256vw);
  }
}

.jitsuwa-product {
  width: 100%;
  background-color: var(--c-lightblue);
}
.jitsuwa-product .jitsuwa-content {
  background-color: var(--c-lightblue);
}
@media screen and (min-width: 768px) {
  .jitsuwa-product .jitsuwa-content {
    padding-top: min(160px, 5.556vw);
    padding-bottom: min(340px, 11.806vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product .jitsuwa-content {
    padding-top: min(100px, 12.821vw);
    padding-bottom: min(220px, 28.205vw);
  }
}
.jitsuwa-product-inner {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-inner {
    width: min(1572px, 54.583vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-inner {
    width: min(660px, 84.615vw);
  }
}
.jitsuwa-product-lead {
  color: #fff;
  font-weight: var(--fw-bold);
  text-align: center;
  line-height: var(--lh-narrow);
  -webkit-text-stroke: 4px var(--c-blue);
  paint-order: stroke;
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-lead {
    font-size: clamp(20.4px, 1.667vw, 48px);
    margin-bottom: min(80px, 2.778vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-lead {
    line-height: 1.8;
    font-size: clamp(17px, 5.128vw, 40px);
    margin-bottom: min(180px, 23.077vw);
  }
}
.jitsuwa-product-view {
  position: relative;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-view {
    width: min(972px, 33.75vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-view {
    width: min(600px, 76.923vw);
  }
}
.jitsuwa-product-puru, .jitsuwa-product-juwa {
  position: absolute;
  z-index: 2;
  display: block;
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-puru {
    width: min(460px, 15.972vw);
    top: 0;
    left: max(-360px, -12.5vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-puru {
    width: min(292px, 37.436vw);
    top: max(-110px, -14.103vw);
    right: max(-152px, -19.487vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-juwa {
    top: 0;
    right: max(-540px, -18.75vw);
    width: min(528px, 18.333vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-juwa {
    width: min(352px, 45.128vw);
    left: max(-110px, -14.103vw);
    bottom: max(-266px, -34.103vw);
  }
}
.jitsuwa-product-gummi img {
  width: 100%;
}
.jitsuwa-product-caption {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-caption.--1 {
    left: max(-280px, -9.722vw);
    bottom: min(90px, 3.125vw);
    width: min(384px, 13.333vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-caption.--1 {
    left: 0;
    bottom: min(280px, 35.897vw);
    width: min(472px, 60.513vw);
  }
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-caption.--2 {
    right: max(-360px, -12.5vw);
    bottom: min(140px, 4.861vw);
    width: min(978px, 33.958vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-caption.--2 {
    right: max(-34px, -4.359vw);
    bottom: max(-140px, -17.949vw);
    width: min(556px, 71.282vw);
  }
}
.jitsuwa-product-feature {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-feature {
    width: min(1832px, 63.611vw);
    margin-top: max(-100px, -3.472vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-feature {
    width: 114.358974359vw;
    margin-top: min(200px, 25.641vw);
    margin-bottom: min(96px, 12.308vw);
  }
  .jitsuwa-product-feature img {
    transform: translateX(-8.5201793722vw);
  }
}
.jitsuwa-product-lineup-lead {
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  text-align: center;
  line-height: var(--lh-narrow);
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-lineup-lead {
    font-size: clamp(20.4px, 1.667vw, 48px);
    margin-top: min(120px, 4.167vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-lineup-lead {
    font-size: clamp(17px, 5.128vw, 40px);
    margin-bottom: min(64px, 8.205vw);
  }
}
.jitsuwa-product-lineup {
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-lineup {
    margin-top: min(96px, 3.333vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-lineup {
    width: min(560px, 71.795vw);
    margin-bottom: min(40px, 5.128vw);
  }
}
.jitsuwa-product-note {
  display: block;
  margin-inline: auto;
  color: var(--c-blue);
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-note {
    font-size: clamp(10.2px, 0.833vw, 24px);
    margin-top: min(48px, 1.667vw);
    line-height: var(--lh-narrow);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-note {
    font-size: clamp(10.2px, 3.077vw, 24px);
    margin: min(40px, 5.128vw) auto min(80px, 10.256vw);
  }
}
.jitsuwa-product-note .list {
  display: block;
  text-indent: -1em;
  padding-left: 1em;
}
.jitsuwa-product-btn {
  color: #fff;
  display: grid;
  place-items: center;
  width: fit-content;
  font-weight: var(--fw-bold);
  background-color: var(--c-blue);
}
@media screen and (min-width: 768px) {
  .jitsuwa-product-btn {
    margin: min(128px, 4.444vw) auto min(48px, 1.667vw);
    padding: min(28px, 0.972vw) min(112px, 3.889vw);
    border-radius: min(24px, 0.833vw);
  }
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-btn {
    width: min(496px, 63.59vw);
    padding: min(32px, 4.103vw) min(20px, 2.564vw);
    margin: 0 auto min(44px, 5.641vw);
    border-radius: min(20px, 2.564vw);
    font-size: clamp(13.6px, 4.103vw, 32px);
  }
}
.jitsuwa-product-board {
  display: block;
  margin-inline: auto;
  margin-bottom: min(160px, 5.556vw);
}
@media screen and (max-width: 767px) {
  .jitsuwa-product-board {
    margin-bottom: min(126px, 16.154vw);
  }
}

body.is-modal-open {
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  body.present .l-header {
    position: sticky;
    top: 0;
    z-index: 1000;
  }
}

.mt-0 {
  margin-top: 0 !important;
}

.text-center {
  text-align: center !important;
}

@media screen and (max-width: 767px) {
  .is-pc {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .is-sp {
    display: none;
  }
}

.present {
  position: relative;
  font-family: var(--font-jp-01);
  color: var(--text-cl-01);
  letter-spacing: 0.05em;
  font-feature-settings: "palt" 1;
}
.present .inner {
  position: relative;
  width: 100%;
  max-width: min(2880px, 100vw);
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .present .inner.--wide {
    max-width: min(2400px, 83.333vw);
  }
}
@media screen and (max-width: 767px) {
  .present .inner.--wide {
    padding-inline: min(32px, 4.103vw);
  }
}
@media screen and (min-width: 768px) {
  .present .inner.--slim {
    max-width: min(1992px, 69.167vw);
  }
}
@media screen and (max-width: 767px) {
  .present .inner.--slim {
    padding-inline: min(58px, 7.436vw);
  }
}

.present-heading {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .present-heading {
    margin-bottom: min(112px, 3.889vw);
  }
}
@media screen and (max-width: 767px) {
  .present-heading {
    margin-bottom: min(76px, 9.744vw);
  }
}
.present-heading-en img {
  display: inline-block;
  width: clamp(193.8px, 15.833vw, 456px);
}
@media screen and (max-width: 767px) {
  .present-heading-en img {
    width: clamp(153px, 46.154vw, 360px);
  }
}
.present-heading-ja {
  margin-top: min(40px, 1.389vw);
  color: var(--c-blue);
  font-weight: var(--fw-medium);
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .present-heading-ja {
    font-size: clamp(39.1px, 3.194vw, 92px);
  }
}
@media screen and (max-width: 767px) {
  .present-heading-ja {
    margin-top: min(20px, 2.564vw);
    font-size: clamp(25.5px, 7.692vw, 60px);
  }
}
.present-heading-ja .--accent {
  color: var(--c-magenta);
}
.present-heading-catch {
  text-align: center;
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .present-heading-catch {
    margin-bottom: min(52px, 1.806vw);
    font-size: clamp(17px, 1.389vw, 40px);
  }
}
@media screen and (max-width: 767px) {
  .present-heading-catch {
    margin-bottom: min(32px, 4.103vw);
  }
}
.present-heading-lead {
  line-height: 1.6;
  color: var(--c-blue);
  font-weight: var(--fw-medium);
}
@media screen and (min-width: 768px) {
  .present-heading-lead {
    text-align: center;
    font-size: clamp(12.75px, 1.042vw, 30px);
  }
}
@media screen and (max-width: 767px) {
  .present-heading-lead {
    font-size: clamp(12.75px, 3.846vw, 30px);
  }
}
@media screen and (max-width: 767px) {
  .present-heading-lead.--contact {
    text-align: center;
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}

.present-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight: var(--fw-bold);
  line-height: var(--lh-fit);
  letter-spacing: 0.02em;
  color: var(--c-blue);
  background-color: var(--c-yellow);
  border-radius: 9999px;
  box-shadow: var(--shadow-yellow);
}
.present-btn.--entry {
  transition: transform var(--duration);
  letter-spacing: 0.2em;
}
@media screen and (min-width: 768px) {
  .present-btn.--entry {
    width: min(568px, 19.722vw);
    min-height: min(144px, 5vw);
    font-size: min(48px, 1.667vw);
  }
}
@media screen and (max-width: 767px) {
  .present-btn.--entry {
    width: min(568px, 72.821vw);
    min-height: min(144px, 18.462vw);
    font-size: min(40px, 5.128vw);
  }
}
@media (any-hover: hover) {
  .present-btn.--entry:hover {
    transform: scale(0.95);
  }
}
.present-btn.--other {
  transition: transform var(--duration);
  letter-spacing: 0.2em;
}
@media screen and (min-width: 768px) {
  .present-btn.--other {
    width: max-content;
    padding: 1em 1.5em;
    font-size: clamp(20.4px, 1.667vw, 48px);
  }
}
@media screen and (max-width: 767px) {
  .present-btn.--other {
    width: min(568px, 72.821vw);
    min-height: min(128px, 16.41vw);
    font-size: clamp(15.3px, 4.615vw, 36px);
  }
}
@media (any-hover: hover) {
  .present-btn.--other:hover {
    transform: scale(0.95);
  }
}
.present-btn.--white {
  color: var(--c-blue);
  background-color: var(--c-white);
  box-shadow: 0 6px 0 rgba(0, 0, 0, 0.15);
  transition: box-shadow var(--duration), transform var(--duration);
}
@media screen and (min-width: 768px) {
  .present-btn.--white {
    width: clamp(272.85px, 22.292vw, 642px);
    min-height: min(104px, 3.611vw);
    font-size: clamp(13.6px, 1.111vw, 32px);
  }
}
@media screen and (max-width: 767px) {
  .present-btn.--white {
    width: 100%;
    max-width: min(456px, 58.462vw);
    min-height: min(96px, 12.308vw);
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
@media (any-hover: hover) {
  .present-btn.--white:hover {
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    transform: translateY(6px);
  }
}

@media screen and (min-width: 768px) {
  .present-drawer {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .present-drawer {
    position: fixed;
    top: 52px;
    left: 0;
    bottom: 0;
    width: 100%;
    max-height: 100%;
    overflow-y: auto;
    background: var(--c-blue);
    z-index: 900;
    padding-bottom: 24px;
    transform: translateY(-100%);
    opacity: 0;
    visibility: hidden;
    transition: transform 0.35s ease, opacity 0.35s ease, visibility 0.35s;
  }
  .present-drawer.is-open {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
.present-drawer-list {
  padding: 8px 20px 0;
}
.present-drawer-list > li {
  border-bottom: 1px dashed rgba(255, 255, 255, 0.4);
}
.present-drawer-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 30px;
  padding-right: 20px;
  color: var(--c-white);
  font-weight: var(--fw-medium);
  font-size: 20px;
  line-height: var(--lh-narrow);
}
.present-drawer-arrow {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  background-size: contain;
  background-image: url(/q10kajitsu-gumi/jitsuwa-cp/present/assets/img/common/arrow.svg);
}
.present-drawer-banner {
  display: block;
  margin: 24px 20px 0;
  text-align: center;
}
.present-drawer-banner img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}
.present-drawer-banner-text {
  display: inline-flex;
  align-items: center;
  gap: 0.4em;
  margin-top: 16px;
  font-size: 16px;
  color: var(--c-white);
  font-weight: var(--fw-medium);
}
.present-drawer-banner-text::after {
  content: "";
  width: 15px;
  height: 15px;
  background-image: url(/q10kajitsu-gumi/jitsuwa-cp/present/assets/img/common/target.svg);
}
@media screen and (min-width: 768px) {
  .present-drawer-overlay {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .present-drawer-overlay {
    position: fixed;
    inset: 52px 0 0;
    background: rgba(0, 0, 0, 0.35);
    z-index: 800;
  }
}
.present-drawer-toggle {
  display: none;
}
@media screen and (max-width: 767px) {
  .present-drawer-toggle {
    display: grid;
    place-items: center;
    margin-left: auto;
    width: 52px;
    height: 52px;
    background: transparent;
    cursor: pointer;
  }
}
.present-drawer-toggle-bar {
  position: relative;
  display: block;
  width: 25px;
  height: 3px;
  background: var(--c-blue);
  transition: transform 0.3s, opacity 0.3s;
}
.present-drawer-toggle-bar::before, .present-drawer-toggle-bar::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background: var(--c-blue);
  transition: transform 0.3s, opacity 0.3s;
}
.present-drawer-toggle-bar::before {
  top: -8px;
}
.present-drawer-toggle-bar::after {
  bottom: -8px;
}
.present-drawer-toggle.is-open .present-drawer-toggle-bar {
  background-color: transparent;
}
.present-drawer-toggle.is-open .present-drawer-toggle-bar::before {
  transform: translateY(8px) rotate(45deg);
}
.present-drawer-toggle.is-open .present-drawer-toggle-bar::after {
  transform: translateY(-8px) rotate(-45deg);
}

@media screen and (max-width: 767px) {
  .is-drawer-open {
    overflow: hidden;
  }
}

.present-hero {
  position: relative;
  width: 100%;
  overflow: clip;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .present-hero {
    background-image: url("/q10kajitsu-gumi/jitsuwa-cp/present/assets/img/hero/bg.webp");
    aspect-ratio: 1440/1044;
  }
}
@media screen and (max-width: 767px) {
  .present-hero {
    background-image: url("/q10kajitsu-gumi/jitsuwa-cp/present/assets/img/hero/sp/bg.webp");
    padding-bottom: 13.8461538462vw;
  }
}
.present-hero-visual {
  overflow: hidden;
}
.present-hero-img {
  display: block;
  height: auto;
}
.present-hero-img.--title {
  position: relative;
  width: 52.0833333333vw;
  margin: 6.5972222222vw auto 0;
}
.present-hero-img.--main {
  position: relative;
  width: 68.4027777778vw;
  margin-top: 1.1805555556vw;
  margin-left: 16.3194444444vw;
}
.present-hero-img.--right-1 {
  position: absolute;
  left: 76.3888888889vw;
  top: 6.1111111111vw;
  width: 13.2638888889vw;
}
.present-hero-img.--left-1 {
  position: absolute;
  left: 4.1666666667vw;
  top: 23.6111111111vw;
  width: 13.75vw;
}
.present-hero-img.--right-2 {
  position: absolute;
  left: 82.7777777778vw;
  top: 14.375vw;
  width: 14.0277777778vw;
}
.present-hero-img.--title-sp {
  width: 94.8717948718vw;
  margin: 15.3846153846vw auto 0;
}
.present-hero-img.--gumi-sp {
  width: 100%;
  margin-top: 5.1282051282vw;
}
.present-hero-img.--main-sp {
  width: 98.4615384615vw;
  margin-top: -0.5128205128vw;
  margin-left: 2.0512820513vw;
}
.present-hero-newpackage {
  position: absolute;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .present-hero-newpackage {
    left: 0vw;
    top: 1.9444444444vw;
    width: 27.0833333333vw;
  }
}
@media screen and (max-width: 767px) {
  .present-hero-newpackage {
    display: none;
  }
}
.present-hero-newpackage img {
  display: block;
  width: 100%;
  height: auto;
}
.present-hero-deco {
  position: absolute;
  mix-blend-mode: overlay;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .present-hero-deco.--bubble1 {
    left: -7.4305555556vw;
    bottom: 9.9305555556vw;
    width: 27.8472222222vw;
  }
}
@media screen and (max-width: 767px) {
  .present-hero-deco.--bubble1 {
    left: -27.4358974359vw;
    bottom: 9.7435897436vw;
    width: 52.8205128205vw;
  }
}
@media screen and (min-width: 768px) {
  .present-hero-deco.--bubble2 {
    top: 7.8472222222vw;
    left: -2.8472222222vw;
    width: 5.6944444444vw;
  }
}
@media screen and (max-width: 767px) {
  .present-hero-deco.--bubble2 {
    top: 32.5641025641vw;
    left: -18.2051282051vw;
    width: 30.2564102564vw;
  }
}
@media screen and (min-width: 768px) {
  .present-hero-deco.--bubble3 {
    right: -13.9583333333vw;
    bottom: 18.6111111111vw;
    width: 32.9166666667vw;
  }
}
@media screen and (max-width: 767px) {
  .present-hero-deco.--bubble3 {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .present-hero-deco.--bubble4 {
    top: 2.1527777778vw;
    right: -4.7222222222vw;
    width: 9.7916666667vw;
  }
}
@media screen and (max-width: 767px) {
  .present-hero-deco.--bubble4 {
    top: -4.6153846154vw;
    right: -7.6923076923vw;
    width: 22.5641025641vw;
  }
}
.present-hero-entry {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .present-hero-entry {
    margin-top: 1.3302777778vw;
  }
}
@media screen and (max-width: 767px) {
  .present-hero-entry {
    margin-top: 7.6923076923vw;
  }
}
.present-hero-entry-note {
  display: inline-flex;
  align-items: end;
  justify-content: center;
  color: var(--c-blue);
  font-weight: var(--fw-medium);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
@media screen and (min-width: 768px) {
  .present-hero-entry-note {
    gap: min(14px, 0.486vw);
    margin-top: min(48px, 1.667vw);
  }
}
@media screen and (max-width: 767px) {
  .present-hero-entry-note {
    gap: min(20px, 2.564vw);
    margin-top: min(32px, 4.103vw);
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.present-hero-entry-note img {
  display: block;
  width: min(20px, 0.694vw);
}
@media screen and (max-width: 767px) {
  .present-hero-entry-note img {
    width: min(20px, 2.564vw);
  }
}
.present-hero .js-img-2, .present-hero .js-img-3 {
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}
.present-hero .js-img-2:not(.is-visible), .present-hero .js-img-3:not(.is-visible) {
  opacity: 0;
  transform: translateY(30px);
}
@media screen and (max-width: 767px) {
  .present-hero .js-img-2:not(.is-visible), .present-hero .js-img-3:not(.is-visible) {
    transform: translateY(10px);
  }
}
.present-hero .js-img-1 {
  transform-origin: center center;
  transition: opacity 0.3s, transform 0.3s;
}
.present-hero .js-img-1:not(.is-visible) {
  opacity: 0;
  transform: scale(1.1) translateY(5%);
}
.present-hero .js-img-2 {
  transition-delay: 0.3s;
}
.present-hero .js-img-3 {
  transition-delay: 0.45s;
}

.present-follow {
  position: fixed;
  z-index: 500;
}
@media screen and (min-width: 768px) {
  .present-follow {
    top: 30%;
    right: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: min(24px, 0.833vw);
  }
}
@media screen and (max-width: 767px) {
  .present-follow {
    right: min(32px, 4.103vw);
    bottom: min(100px, 12.821vw);
  }
}
.present-follow-btn {
  display: grid;
  place-items: center;
  width: clamp(91.8px, 7.5vw, 216px);
  min-height: clamp(90.95px, 7.431vw, 214px);
  font-size: clamp(15.3px, 1.25vw, 36px);
  letter-spacing: 0.15em;
  border-radius: 16px 0 0 16px;
  filter: drop-shadow(0 0 20px rgba(15, 15, 15, 0.12));
  transition: width var(--duration);
}
@media (any-hover: hover) {
  .present-follow-btn:hover {
    width: clamp(99.45px, 8.125vw, 234px);
  }
}
@media screen and (max-width: 767px) {
  .present-follow-btn {
    border-radius: 50%;
  }
}
.present-follow-btn.--soon {
  filter: none;
  width: auto;
  height: auto;
  padding: 0;
  background-color: transparent;
  box-shadow: none;
  pointer-events: none;
}
.present-follow-qr {
  display: block;
  width: clamp(91.8px, 7.5vw, 216px);
  opacity: 1 !important;
}
@media screen and (max-width: 767px) {
  .present-follow-qr {
    display: none;
  }
}

.present-nav {
  background: var(--c-blue);
}
@media screen and (max-width: 767px) {
  .present-nav {
    display: none;
  }
}
.present-nav-list {
  display: flex;
  justify-content: center;
  padding: min(20px, 0.694vw) 0;
}
.present-nav-list > li {
  position: relative;
}
.present-nav-list > li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  height: 100%;
  transform: translateY(-50%);
  border-left: 2px dotted rgba(255, 255, 255, 0.6);
}
.present-nav-list > li:last-child::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 100%;
  border-left: 2px dotted rgba(255, 255, 255, 0.6);
}
.present-nav-list > li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: min(24px, 0.833vw);
  padding: min(38px, 1.319vw) min(80px, 2.778vw);
  color: var(--c-white);
  font-weight: var(--fw-medium);
  line-height: var(--lh-fit);
  white-space: nowrap;
  transition: opacity var(--duration);
}
@media (any-hover: hover) {
  .present-nav-list > li a:hover {
    opacity: 0.75;
  }
}
.present-nav-arrow {
  display: block;
  width: min(32px, 1.111vw);
  height: min(32px, 1.111vw);
  background: url(/q10kajitsu-gumi/jitsuwa-cp/present/assets/img/common/arrow.svg) no-repeat center center/contain;
}

.present-about {
  position: relative;
  overflow-x: clip;
  background-color: var(--c-lightblue);
}
.present-about-deco-head {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.present-about-deco-gumi {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .present-about-deco-gumi {
    top: max(-42px, -1.458vw);
    right: min(106px, 3.681vw);
    width: min(352px, 12.222vw);
  }
}
@media screen and (max-width: 767px) {
  .present-about-deco-gumi {
    top: max(-56px, -7.179vw);
    right: max(-32px, -4.103vw);
    width: min(216px, 27.692vw);
  }
}
.present-about-deco-bubble {
  position: absolute;
  mix-blend-mode: overlay;
}
@media screen and (min-width: 768px) {
  .present-about-deco-bubble.--1 {
    top: min(430px, 14.931vw);
    left: min(120px, 4.167vw);
    width: min(240px, 8.333vw);
  }
}
@media screen and (max-width: 767px) {
  .present-about-deco-bubble.--1 {
    top: min(320px, 41.026vw);
    left: max(-70px, -8.974vw);
    width: min(146px, 18.718vw);
  }
}
@media screen and (min-width: 768px) {
  .present-about-deco-bubble.--3 {
    left: max(-276px, -9.583vw);
    bottom: max(-356px, -12.361vw);
    width: min(460px, 15.972vw);
  }
}
@media screen and (max-width: 767px) {
  .present-about-deco-bubble.--3 {
    left: max(-26px, -3.333vw);
    bottom: max(-252px, -32.308vw);
    width: min(194px, 24.872vw);
  }
}
@media screen and (min-width: 768px) {
  .present-about-wrap {
    padding-top: min(240px, 8.333vw);
  }
}
@media screen and (max-width: 767px) {
  .present-about-wrap {
    padding-top: min(128px, 16.41vw);
  }
}
.present-about-lead {
  max-width: 100%;
  margin-inline: auto;
  color: var(--c-blue);
  font-weight: var(--fw-medium);
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  .present-about-lead {
    max-width: min(1095.6px, 69.167vw);
    margin-top: min(112px, 3.889vw);
    font-size: clamp(20.4px, 1.667vw, 48px);
  }
}
@media screen and (max-width: 767px) {
  .present-about-lead {
    margin-top: min(64px, 8.205vw);
  }
}
.present-about-lead mark {
  color: inherit;
  font-weight: var(--fw-bold);
  background: linear-gradient(transparent 8%, #ffffa1 8% 92%, transparent 92%);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.present-step {
  display: grid;
}
@media screen and (min-width: 768px) {
  .present-step {
    row-gap: min(302px, 10.486vw);
    margin-top: min(310px, 10.764vw);
  }
}
@media screen and (max-width: 767px) {
  .present-step {
    row-gap: min(180px, 23.077vw);
    margin-top: min(116px, 14.872vw);
  }
}
.present-step-item {
  position: relative;
  filter: drop-shadow(0 0 min(20px, 0.694vw) rgba(15, 15, 15, 0.12));
}
.present-step-item:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 50%;
  display: inline-block;
  background: url(/q10kajitsu-gumi/jitsuwa-cp/present/assets/img/about/step/arrow.svg) no-repeat center center/contain;
  transform: translate(-50%, 100%);
}
@media screen and (min-width: 768px) {
  .present-step-item:not(:last-child)::after {
    bottom: max(-80px, -2.778vw);
    width: min(52px, 1.806vw);
    height: min(62px, 2.153vw);
  }
}
@media screen and (max-width: 767px) {
  .present-step-item:not(:last-child)::after {
    bottom: max(-48px, -6.154vw);
    width: min(44px, 5.641vw);
    height: min(52px, 6.667vw);
  }
}
.present-step-label {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: max(-76px, -2.639vw);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 min(80px, 2.778vw);
  color: var(--c-white);
  background: var(--c-blue);
  border-radius: 9999px;
  font-weight: var(--fw-bold);
  line-height: 2.2;
  letter-spacing: normal;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .present-step-label {
    height: min(106px, 3.681vw);
    font-size: clamp(20.4px, 1.667vw, 48px);
  }
}
@media screen and (max-width: 767px) {
  .present-step-label {
    top: 0;
    height: clamp(29.75px, 8.974vw, 70px);
    padding: 0 min(56px, 7.179vw);
    transform: translate(-50%, -50%);
  }
}
.present-step-head {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: var(--c-white);
  border-radius: 20px 20px 0 0;
}
@media screen and (min-width: 768px) {
  .present-step-head {
    height: min(286px, 9.931vw);
  }
}
@media screen and (max-width: 767px) {
  .present-step-head {
    min-height: min(220px, 28.205vw);
    padding: min(60px, 7.692vw) min(144px, 18.462vw) min(40px, 5.128vw);
    border-radius: 16px 16px 0 0;
  }
}
.present-step-title {
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  line-height: 1.3;
  letter-spacing: normal;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .present-step-title {
    font-size: clamp(27.2px, 2.222vw, 64px);
  }
}
@media screen and (max-width: 767px) {
  .present-step-title {
    font-size: clamp(17px, 5.128vw, 40px);
  }
}
.present-step-note {
  color: var(--c-blue);
  line-height: 1.4;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .present-step-note {
    margin-top: min(12px, 0.417vw);
    font-size: clamp(9.35px, 0.764vw, 22px);
  }
}
@media screen and (max-width: 767px) {
  .present-step-note {
    margin-top: min(14px, 1.795vw);
    font-size: clamp(9.35px, 2.821vw, 22px);
  }
}
.present-step-icon {
  position: absolute;
  height: auto;
}
@media screen and (min-width: 768px) {
  .present-step-icon {
    top: min(28px, 0.972vw);
    right: clamp(153px, 12.5vw, 360px);
    width: min(190px, 6.597vw);
  }
}
@media screen and (max-width: 767px) {
  .present-step-icon {
    top: min(20px, 2.564vw);
    right: min(20px, 2.564vw);
    width: min(102px, 13.077vw);
  }
}
@media screen and (min-width: 768px) {
  .present-step-icon.--person {
    top: min(40px, 1.389vw);
    right: min(510px, 17.708vw);
    width: min(170px, 5.903vw);
  }
}
@media screen and (max-width: 767px) {
  .present-step-icon.--person {
    top: min(20px, 2.564vw);
    right: min(20px, 2.564vw);
    width: min(100px, 12.821vw);
  }
}
.present-step-deco {
  position: absolute;
  z-index: 1;
  height: auto;
}
@media screen and (min-width: 768px) {
  .present-step-deco--l {
    width: min(406px, 14.097vw);
    left: min(258px, 8.958vw);
    top: max(-98px, -3.403vw);
  }
}
@media screen and (max-width: 767px) {
  .present-step-deco--l {
    width: min(180px, 23.077vw);
    left: max(-32px, -4.103vw);
    top: max(-52px, -6.667vw);
  }
}
@media screen and (min-width: 768px) {
  .present-step-deco--r {
    width: min(472px, 16.389vw);
    left: min(1758px, 61.042vw);
    top: max(-54px, -1.875vw);
  }
}
@media screen and (max-width: 767px) {
  .present-step-deco--r {
    width: min(184px, 23.59vw);
    top: min(84px, 10.769vw);
    right: max(-6px, -0.769vw);
  }
}
.present-step-body {
  background: #ffe3ed;
  border-radius: 0 0 20px 20px;
}
@media screen and (min-width: 768px) {
  .present-step-body {
    padding: min(144px, 5vw) min(128px, 4.444vw) min(166px, 5.764vw);
  }
}
@media screen and (max-width: 767px) {
  .present-step-body {
    padding: min(56px, 7.179vw) min(38px, 4.872vw);
  }
}
.present-step-body--quiz {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .present-step-body--quiz {
    gap: min(58px, 2.014vw);
    padding: min(180px, 6.25vw) min(40px, 1.389vw);
  }
}
@media screen and (max-width: 767px) {
  .present-step-body--quiz {
    gap: min(32px, 4.103vw);
    padding: min(70px, 8.974vw);
  }
}
.present-step-btn {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .present-step-btn {
    margin-top: min(64px, 2.222vw);
  }
}
@media screen and (max-width: 767px) {
  .present-step-btn {
    margin-top: min(48px, 6.154vw);
  }
}

.present-shop-title {
  text-align: center;
  color: var(--c-blue);
  font-weight: var(--fw-bold);
}
@media screen and (min-width: 768px) {
  .present-shop-title {
    margin-bottom: min(40px, 1.389vw);
    font-size: clamp(17px, 1.389vw, 40px);
  }
}
@media screen and (max-width: 767px) {
  .present-shop-title {
    margin-bottom: min(32px, 4.103vw);
    font-size: clamp(13.6px, 4.103vw, 32px);
  }
}
.present-shop-note {
  text-align: center;
  color: var(--c-blue);
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .present-shop-note {
    margin-top: min(40px, 1.389vw);
    font-size: clamp(11.9px, 0.972vw, 28px);
  }
}
@media screen and (max-width: 767px) {
  .present-shop-note {
    margin-top: min(32px, 4.103vw);
    font-size: clamp(10.2px, 3.077vw, 24px);
  }
}
.present-shop-list {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .present-shop-list {
    gap: min(76px, 2.639vw);
  }
}
@media screen and (max-width: 767px) {
  .present-shop-list {
    flex-direction: column;
    align-items: center;
    gap: min(32px, 4.103vw);
  }
}
.present-shop-btn {
  display: block;
  transition: filter var(--duration), transform var(--duration);
}
@media screen and (min-width: 768px) {
  .present-shop-btn {
    width: min(613.334px, 21.296vw);
    filter: drop-shadow(0 min(12px, 0.417vw) 0 rgba(0, 0, 0, 0.15));
  }
}
@media screen and (max-width: 767px) {
  .present-shop-btn {
    width: min(590px, 75.641vw);
    filter: drop-shadow(0 min(16px, 2.051vw) 0 rgba(0, 0, 0, 0.15));
  }
}
@media (any-hover: hover) {
  .present-shop-btn:hover {
    filter: none;
    transform: translateY(min(12px, 0.417vw));
  }
}
.present-shop-btn img {
  opacity: 1 !important;
}

.present-movie {
  display: flex;
  justify-content: center;
}
.present-movie-btn {
  position: relative;
  display: block;
  max-width: 100%;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .present-movie-btn {
    width: min(1152px, 40vw);
  }
}
@media screen and (max-width: 767px) {
  .present-movie-btn {
    width: 100%;
  }
}
.present-movie-thumb {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .present-movie-thumb {
    border-radius: 16px;
  }
}
@media screen and (max-width: 767px) {
  .present-movie-thumb {
    border-radius: 9px;
  }
}
.present-movie-play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(160px, 5.556vw);
  height: auto;
  transition: transform var(--duration);
}
@media screen and (max-width: 767px) {
  .present-movie-play {
    width: min(88px, 11.282vw);
  }
}
@media (any-hover: hover) {
  .present-movie-btn:hover .present-movie-play {
    transform: translate(-50%, -50%) scale(1.08);
  }
}

.present-quiz-q {
  position: relative;
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .present-quiz-q {
    font-size: clamp(27.2px, 2.222vw, 64px);
  }
}
@media screen and (max-width: 767px) {
  .present-quiz-q {
    font-size: clamp(16.15px, 4.872vw, 38px);
  }
}
.present-quiz-q-blank {
  background: linear-gradient(var(--c-yellow), var(--c-yellow)) no-repeat left bottom/100% 6px;
  padding-bottom: 4px;
}
.present-quiz-a {
  color: var(--c-blue);
  font-weight: var(--fw-bold);
}
@media screen and (min-width: 768px) {
  .present-quiz-a {
    font-size: clamp(20.4px, 1.667vw, 48px);
  }
}
@media screen and (max-width: 767px) {
  .present-quiz-a {
    font-size: clamp(12.75px, 3.846vw, 30px);
  }
}

.present-modal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.present-modal.is-open {
  opacity: 1;
  visibility: visible;
}
.present-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.75);
  cursor: pointer;
}
.present-modal-inner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}
.present-modal-phone {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: var(--c-white);
  overflow-x: hidden;
  overflow-y: auto;
  border-radius: 80px;
}
@media screen and (min-width: 768px) {
  .present-modal-phone {
    position: relative;
    flex-shrink: 0;
    width: min(1080px, 100vw - 40px);
    height: 596px;
  }
}
@media screen and (max-width: 767px) {
  .present-modal-phone {
    width: min(716px, 91.795vw);
    padding: min(192px, 24.615vw) 0 min(114px, 14.615vw);
    gap: min(72px, 9.231vw);
  }
}
.present-modal-video {
  flex-shrink: 0;
  background: #000;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .present-modal-video {
    width: 274px;
    height: 457px;
  }
}
@media screen and (max-width: 767px) {
  .present-modal-video {
    width: min(548px, 70.256vw);
    height: min(914px, 117.179vw);
  }
}
.present-modal-video iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
}
.present-modal-close {
  cursor: pointer;
  background-image: url(/q10kajitsu-gumi/jitsuwa-cp/present/assets/img/common/close.svg);
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .present-modal-close {
    position: absolute;
    top: 47px;
    right: 47px;
    width: 54px;
    height: 54px;
    flex-shrink: unset;
  }
}
@media screen and (max-width: 767px) {
  .present-modal-close {
    position: relative;
    flex-shrink: 0;
    width: 21px;
    height: 21px;
  }
}

.present-prize {
  position: relative;
}
@media screen and (min-width: 768px) {
  .present-prize {
    padding: min(240px, 8.333vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .present-prize {
    padding-top: min(186px, 23.846vw);
  }
}
.present-prize-bg {
  position: absolute;
  z-index: 0;
  top: max(-1000px, -34.722vw);
  left: 0;
  width: min(2820px, 97.917vw);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .present-prize-bg {
    top: min(860px, 110.256vw);
    width: min(2820px, 361.538vw);
  }
}
.present-prize-card {
  position: relative;
  background: var(--c-white);
  filter: drop-shadow(0 0 min(20px, 0.694vw) rgba(15, 15, 15, 0.12));
  border-radius: 16px;
}
@media screen and (min-width: 768px) {
  .present-prize-card + .present-prize-card {
    margin-top: min(80px, 2.778vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-card + .present-prize-card {
    margin-top: min(96px, 12.308vw);
  }
}
.present-prize-card-body {
  position: relative;
  padding: min(102px, 3.542vw) min(158px, 5.486vw) min(88px, 3.056vw);
}
@media screen and (max-width: 767px) {
  .present-prize-card-body {
    display: flex;
    flex-direction: column;
    padding: min(32px, 4.103vw) min(52px, 6.667vw) min(52px, 6.667vw);
  }
}
@media screen and (min-width: 768px) {
  .present-prize-card:not(.--c) .present-prize-card-body {
    display: flex;
    align-items: flex-start;
    padding-right: min(102px, 3.542vw);
  }
}
@media screen and (max-width: 1194px) {
  .present-prize-card.--c .present-prize-card-body {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
  }
}
@media screen and (max-width: 1194px) {
  .present-prize-card.--c .present-prize-erabepay-about {
    position: static;
    flex-shrink: 0;
  }
}
.present-prize-card.--c .present-prize-erabepay-title {
  margin-inline: auto;
  width: 100%;
}
.present-prize-card.--c .present-prize-annotation {
  color: var(--c-blue);
}
@media screen and (min-width: 768px) {
  .present-prize-card.--c .present-prize-annotation {
    font-size: clamp(10.2px, 0.833vw, 24px);
    margin-top: min(44px, 1.528vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-card.--c .present-prize-annotation {
    width: 100%;
  }
}
.present-prize-cond {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: min(8px, 0.278vw);
  background: var(--c-blue);
  color: var(--c-white);
  font-weight: var(--fw-bold);
  border-radius: 16px 16px 0 0;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .present-prize-cond {
    height: clamp(63.75px, 5.208vw, 150px);
    padding-bottom: clamp(13.6px, 1.111vw, 32px);
    font-size: clamp(20.4px, 1.667vw, 48px);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-cond {
    height: min(118px, 15.128vw);
    padding-bottom: min(28px, 3.59vw);
  }
}
.present-prize-cond-num {
  display: flex;
  align-items: flex-end;
  gap: min(10px, 0.347vw);
  color: var(--c-yellow);
}
.present-prize-cond-num b {
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .present-prize-cond-num b {
    font-size: clamp(34px, 2.778vw, 80px);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-cond-num b {
    font-size: clamp(30.6px, 9.231vw, 72px);
  }
}
.present-prize-tag {
  position: absolute;
  z-index: 3;
  height: auto;
}
@media screen and (min-width: 768px) {
  .present-prize-tag {
    left: max(-72px, -2.5vw);
    top: min(40px, 1.389vw);
    width: min(190px, 6.597vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-tag {
    top: max(-50px, -6.41vw);
    left: max(-46px, -5.897vw);
    width: min(120px, 15.385vw);
  }
}
.present-prize-badge {
  position: absolute;
  z-index: 3;
  height: auto;
}
@media screen and (min-width: 768px) {
  .present-prize-badge {
    left: max(-55.5px, -3.504vw);
    top: min(129px, 8.144vw);
    width: min(135px, 8.523vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-badge {
    top: min(42.9px, 10vw);
    left: max(-23.1px, -5.385vw);
    width: min(97.9px, 22.82vw);
  }
}
.present-prize-num {
  position: absolute;
  z-index: 3;
  height: auto;
}
@media screen and (min-width: 768px) {
  .present-prize-num {
    top: min(106px, 3.681vw);
    right: min(64px, 2.222vw);
    width: min(264px, 9.167vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-num {
    top: min(150px, 19.231vw);
    right: min(32px, 4.103vw);
    width: min(162px, 20.769vw);
  }
}
.present-prize-text {
  color: var(--c-blue);
}
@media screen and (min-width: 768px) {
  .present-prize-text {
    width: min(840px, 29.167vw);
  }
}
.present-prize-name {
  font-weight: var(--fw-bold);
  line-height: 1.3;
  letter-spacing: normal;
  font-feature-settings: normal;
}
@media screen and (min-width: 768px) {
  .present-prize-name {
    font-size: clamp(27.2px, 2.222vw, 64px);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-name {
    font-size: clamp(20.4px, 6.154vw, 48px);
    text-align: center;
  }
}
.present-prize-desc {
  font-weight: var(--fw-medium);
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .present-prize-desc {
    margin-top: min(64px, 2.222vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-desc {
    margin-top: min(48px, 6.154vw);
    font-size: clamp(12.75px, 3.846vw, 30px);
  }
}
.present-prize-annotation {
  font-weight: var(--fw-medium);
  line-height: 1.6;
  color: var(--c-blue);
}
@media screen and (min-width: 768px) {
  .present-prize-annotation {
    margin-top: min(64px, 2.222vw);
    font-size: clamp(10.2px, 0.833vw, 24px);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-annotation {
    margin-top: min(32px, 4.103vw);
    font-size: clamp(10.2px, 3.077vw, 24px);
  }
}
@media screen and (min-width: 768px) {
  .present-prize-visual {
    flex-shrink: 0;
    width: min(898px, 31.181vw);
    margin-top: min(88px, 3.056vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-visual {
    order: -1;
    width: 100%;
    margin-top: min(72px, 9.231vw);
    margin-bottom: min(32px, 4.103vw);
  }
}
.present-prize-visual img {
  display: block;
  width: 100%;
  height: auto;
}
.present-prize-footnote {
  background: rgba(255, 255, 255, 0.7);
  border-radius: 16px;
  color: var(--c-blue);
}
.present-prize-footnote-head {
  font-weight: var(--fw-bold);
}
.present-prize-footnote-title {
  line-height: 1.3;
}
.present-prize-footnote-desc {
  font-weight: var(--fw-medium);
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .present-prize-footnote {
    display: flex;
    align-items: flex-start;
    gap: min(104px, 3.611vw);
    margin-top: min(80px, 2.778vw);
    padding: min(128px, 4.444vw);
  }
  .present-prize-footnote-head {
    flex-shrink: 0;
    font-size: clamp(13.6px, 1.111vw, 32px);
  }
  .present-prize-footnote-title {
    font-size: clamp(20.4px, 1.667vw, 48px);
  }
  .present-prize-footnote-desc {
    font-size: clamp(13.6px, 1.111vw, 32px);
    width: min(946px, 32.847vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-footnote {
    display: flex;
    flex-direction: column;
    gap: min(32px, 4.103vw);
    margin-top: min(64px, 8.205vw);
    padding: min(80px, 10.256vw);
  }
  .present-prize-footnote-head {
    text-align: center;
    font-size: clamp(13.6px, 4.103vw, 32px);
  }
  .present-prize-footnote-title {
    font-size: clamp(17px, 5.128vw, 40px);
  }
  .present-prize-footnote-desc {
    font-size: clamp(12.75px, 3.846vw, 30px);
  }
}
.present-prize-erabepay-title {
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .present-prize-erabepay-title {
    text-align: center;
    font-size: clamp(27.2px, 2.222vw, 64px);
    white-space: nowrap;
  }
}
@media screen and (max-width: 767px) {
  .present-prize-erabepay-title {
    text-align: left;
    padding-top: min(16px, 2.051vw);
    font-size: clamp(20.4px, 6.154vw, 48px);
  }
}
@media screen and (min-width: 768px) {
  .present-prize-erabepay-brands {
    width: min(916px, 31.806vw);
  }
}
@media screen and (min-width: 1195px) {
  .present-prize-erabepay-brands {
    transform: translateX(max(-60px, -2.083vw));
  }
}
@media screen and (max-width: 767px) {
  .present-prize-erabepay-brands {
    display: block;
    width: calc(100% + min(104px, 13.333vw));
    max-width: none;
    margin-left: max(-52px, -6.667vw);
  }
}
.present-prize-erabepay-about {
  line-height: 1.6;
  border-radius: 16px;
  background: #ededed;
}
@media screen and (min-width: 768px) {
  .present-prize-erabepay-about {
    position: absolute;
    left: min(1044px, 36.25vw);
    top: min(248px, 8.611vw);
    width: clamp(346.8px, 28.333vw, 816px);
    min-height: min(662px, 22.986vw);
    padding: min(92px, 3.194vw) min(80px, 2.778vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-erabepay-about {
    width: 100%;
    margin: min(48px, 6.154vw) 0 0;
    padding: min(80px, 10.256vw) min(52px, 6.667vw);
  }
}
.present-prize-erabepay-about-title {
  text-align: center;
}
.present-prize-erabepay-about-title img {
  display: inline-block;
  height: auto;
}
@media screen and (min-width: 768px) {
  .present-prize-erabepay-about-title img {
    width: min(648px, 22.5vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-erabepay-about-title img {
    width: calc(100% + min(104px, 13.333vw));
    max-width: none;
    margin-left: max(-52px, -6.667vw);
  }
}
.present-prize-erabepay-about-text {
  color: #003f65;
  margin-top: 1em;
  font-weight: var(--fw-medium);
}
@media screen and (min-width: 768px) {
  .present-prize-erabepay-about-text {
    font-size: clamp(11.9px, 0.972vw, 28px);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-erabepay-about-text {
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.present-prize-erabepay-about-note {
  color: #003f65;
  font-weight: var(--fw-medium);
}
@media screen and (min-width: 768px) {
  .present-prize-erabepay-about-note {
    margin-top: min(32px, 1.111vw);
    font-size: clamp(10.2px, 0.833vw, 24px);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-erabepay-about-note {
    margin-top: min(32px, 4.103vw);
    font-size: clamp(10.2px, 3.077vw, 24px);
  }
}
@media screen and (min-width: 768px) {
  .present-prize-erabepay-about-btn {
    margin-top: min(32px, 1.111vw);
  }
}
@media screen and (max-width: 767px) {
  .present-prize-erabepay-about-btn {
    margin-top: min(32px, 4.103vw);
    text-align: center;
  }
}

.present-product {
  color: var(--c-blue);
  padding-bottom: min(344px, 11.944vw);
}
@media screen and (max-width: 767px) {
  .present-product {
    padding: min(136px, 17.436vw) 0 min(160px, 20.513vw);
  }
}
.present-product-deco {
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .present-product-deco.--1 {
    top: max(-360px, -12.5vw);
    right: max(-140px, -4.861vw);
    width: min(772px, 26.806vw);
  }
}
@media screen and (max-width: 767px) {
  .present-product-deco.--1 {
    top: max(-78px, -10vw);
    right: max(-62px, -7.949vw);
    width: min(300px, 38.462vw);
  }
}
@media screen and (min-width: 768px) {
  .present-product-deco.--2 {
    top: min(612px, 21.25vw);
    left: max(-378px, -13.125vw);
    width: min(586px, 20.347vw);
  }
}
@media screen and (max-width: 767px) {
  .present-product-deco.--2 {
    left: max(-114px, -14.615vw);
    bottom: max(-132px, -16.923vw);
    width: min(288px, 36.923vw);
  }
}
.present-product-box {
  position: relative;
  margin-bottom: min(98px, 3.403vw);
  padding: min(144px, 5vw) min(206px, 7.153vw) min(114px, 3.958vw);
  border-radius: 32px;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .present-product-box {
    margin-bottom: min(86px, 11.026vw);
    padding: min(86px, 11.026vw) min(48px, 6.154vw) min(100px, 12.821vw);
  }
}
.present-product-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  font-weight: var(--fw-bold);
  letter-spacing: normal;
}
@media screen and (min-width: 768px) {
  .present-product-title {
    gap: min(12px, 0.417vw);
    font-size: clamp(27.2px, 2.222vw, 64px);
    margin-bottom: min(94px, 3.264vw);
  }
}
@media screen and (max-width: 767px) {
  .present-product-title {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .present-product-title .sub {
    font-size: clamp(20.4px, 1.667vw, 48px);
  }
}
.present-product-img {
  display: block;
  width: min(1776px, 61.667vw);
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .present-product-img {
    width: 100%;
  }
}
.present-product-note {
  font-weight: var(--fw-medium);
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .present-product-note {
    margin-top: min(100px, 3.472vw);
    font-size: clamp(10.2px, 0.833vw, 24px);
  }
}
@media screen and (max-width: 767px) {
  .present-product-note {
    margin-top: min(64px, 8.205vw);
    padding: 0 min(30px, 3.846vw);
    font-size: clamp(10.2px, 3.077vw, 24px);
  }
}
.present-product-note p + p {
  margin-top: 1.5em;
}

@media screen and (max-width: 767px) {
  .present-apply .inner {
    padding: 0 min(32px, 4.103vw);
  }
}
.present-apply-section {
  padding: min(258px, 8.958vw) 0 min(304px, 10.556vw);
  background-color: #FFD7EA;
}
@media screen and (max-width: 767px) {
  .present-apply-section {
    padding: min(172px, 22.051vw) 0 min(184px, 23.59vw);
  }
}
.present-apply-gap {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .present-apply-gap {
    gap: min(80px, 2.778vw);
    margin-top: min(80px, 2.778vw);
  }
}
@media screen and (max-width: 767px) {
  .present-apply-gap {
    gap: min(64px, 8.205vw);
    margin-top: min(64px, 8.205vw);
  }
}
.present-apply-receipt {
  display: flex;
  align-items: center;
  background: var(--c-white);
  border: 1px solid var(--c-blue);
  border-radius: min(32px, 1.111vw);
}
@media screen and (min-width: 768px) {
  .present-apply-receipt {
    gap: min(160px, 5.556vw);
    padding: min(80px, 2.778vw) min(198px, 6.875vw);
  }
}
@media screen and (max-width: 767px) {
  .present-apply-receipt {
    flex-direction: column;
    align-items: flex-start;
    gap: min(32px, 4.103vw);
    padding: min(48px, 6.154vw);
    border-radius: min(32px, 4.103vw);
  }
}
.present-apply-receipt-title {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: min(20px, 0.694vw);
  color: var(--c-blue);
  font-weight: var(--fw-bold);
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .present-apply-receipt-title {
    font-size: clamp(17px, 1.389vw, 40px);
  }
}
@media screen and (max-width: 767px) {
  .present-apply-receipt-title {
    margin-inline: auto;
    gap: min(16px, 2.051vw);
    font-size: clamp(13.6px, 4.103vw, 32px);
  }
}
.present-apply-receipt-title img {
  display: block;
  flex-shrink: 0;
  width: min(64px, 2.222vw);
}
@media screen and (max-width: 767px) {
  .present-apply-receipt-title img {
    width: min(64px, 8.205vw);
  }
}
.present-apply-receipt-list {
  color: var(--c-blue);
  font-weight: var(--fw-medium);
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .present-apply-receipt-list {
    width: min(952px, 33.056vw);
    font-size: clamp(13.6px, 1.111vw, 32px);
  }
}
@media screen and (max-width: 767px) {
  .present-apply-receipt-list {
    width: 100%;
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.present-apply-receipt-list li {
  list-style: disc;
  margin-left: min(48px, 1.667vw);
}
@media screen and (max-width: 767px) {
  .present-apply-receipt-list li {
    margin-left: min(40px, 5.128vw);
  }
}
.present-apply-notes {
  width: 100%;
  max-width: max-content;
  margin-inline: auto;
  color: var(--c-blue);
  font-size: clamp(11.9px, 0.972vw, 28px);
  font-weight: var(--fw-medium);
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .present-apply-notes {
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.present-apply-notes span {
  font-weight: var(--fw-bold);
  color: var(--c-magenta);
}
@media screen and (min-width: 768px) {
  .present-apply-step {
    width: calc(100% + min(68px, 2.361vw));
    margin-left: max(-34px, -1.181vw);
  }
}
@media screen and (max-width: 767px) {
  .present-apply-step {
    width: min(578px, 74.103vw);
    margin: 0 auto;
  }
}

.present-guide {
  padding-top: min(288px, 10vw);
}
@media screen and (max-width: 767px) {
  .present-guide {
    padding-top: min(160px, 20.513vw);
  }
}
.present-guide-title {
  margin-bottom: min(40px, 1.389vw);
  font-size: clamp(17px, 1.389vw, 40px);
  font-weight: var(--fw-bold);
  line-height: 1.3;
  letter-spacing: normal;
}
@media screen and (max-width: 767px) {
  .present-guide-title {
    line-height: 1.6;
    font-size: clamp(13.6px, 4.103vw, 32px);
    margin-bottom: min(64px, 8.205vw);
  }
}
.present-guide-desc {
  font-size: clamp(11.9px, 0.972vw, 28px);
  font-feature-settings: "palt" on;
  font-weight: var(--fw-medium);
  line-height: 160%;
}
@media screen and (max-width: 767px) {
  .present-guide-desc {
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.present-guide-desc > * + * {
  margin-top: 1.25em;
}

.present-contact {
  padding-top: min(288px, 10vw);
}
@media screen and (max-width: 767px) {
  .present-contact {
    padding-top: min(160px, 20.513vw);
  }
}
@media screen and (min-width: 768px) {
  .present-contact-bnr {
    max-width: min(1600px, 55.556vw);
    margin: min(288px, 10vw) auto 0;
  }
}
@media screen and (max-width: 767px) {
  .present-contact-bnr {
    padding: 0 min(64px, 8.205vw);
    margin: min(160px, 20.513vw) auto 0;
  }
}
.present-contact-notes {
  text-align: left;
}
@media screen and (min-width: 768px) {
  .present-contact-notes {
    max-width: min(1992px, 69.167vw);
    margin: min(64px, 2.222vw) auto 0;
  }
}
@media screen and (max-width: 767px) {
  .present-contact-notes {
    padding: 0 min(58px, 7.436vw);
    margin-top: min(48px, 6.154vw);
  }
}

.present-accordion {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .present-accordion {
    gap: min(80px, 2.778vw);
  }
}
@media screen and (max-width: 767px) {
  .present-accordion {
    gap: min(80px, 10.256vw);
  }
}

.accordion-item {
  overflow: hidden;
  background: var(--c-white);
}
@media screen and (min-width: 768px) {
  .accordion-item {
    border-radius: min(32px, 1.111vw);
  }
}
@media screen and (max-width: 767px) {
  .accordion-item {
    border-radius: min(24px, 3.077vw);
  }
}
.accordion-item.is-open .accordion-icon::after {
  opacity: 0;
}
.accordion-head {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  background: var(--c-blue);
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .accordion-head {
    align-items: center;
    min-height: clamp(84.15px, 6.875vw, 198px);
    padding: min(32px, 1.111vw) min(174px, 6.042vw);
  }
}
@media screen and (max-width: 767px) {
  .accordion-head {
    min-height: min(220px, 28.205vw);
    padding: min(48px, 6.154vw) min(44px, 5.641vw);
    padding-right: min(128px, 16.41vw);
  }
}
.accordion-title {
  color: var(--c-white);
  font-weight: var(--fw-bold);
  line-height: 1.3;
  display: flex;
  align-items: center;
  width: 100%;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .accordion-title {
    text-align: center;
    font-size: clamp(20.4px, 1.667vw, 48px);
  }
}
@media screen and (max-width: 767px) {
  .accordion-title {
    font-size: clamp(17px, 5.128vw, 40px);
  }
}
.accordion-icon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: var(--c-white);
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  .accordion-icon {
    right: min(80px, 2.778vw);
    width: min(80px, 2.778vw);
    height: min(80px, 2.778vw);
  }
}
@media screen and (max-width: 767px) {
  .accordion-icon {
    right: min(52px, 6.667vw);
    width: min(60px, 7.692vw);
    height: min(60px, 7.692vw);
  }
}
.accordion-icon::before, .accordion-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: var(--c-blue);
  border-radius: 1px;
}
@media screen and (min-width: 768px) {
  .accordion-icon::before {
    width: 14px;
    height: 2px;
  }
}
@media screen and (max-width: 767px) {
  .accordion-icon::before {
    width: 13px;
    height: 2px;
  }
}
.accordion-icon::after {
  transition: opacity var(--duration);
}
@media screen and (min-width: 768px) {
  .accordion-icon::after {
    width: 2px;
    height: 14px;
  }
}
@media screen and (max-width: 767px) {
  .accordion-icon::after {
    width: 2px;
    height: 13px;
  }
}
.accordion-body {
  overflow: hidden;
  transition: height 0.35s ease;
}
.accordion-body-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .accordion-body-inner {
    width: min(1582px, 54.931vw);
    margin-inline: auto;
    gap: min(96px, 3.333vw);
    padding: min(96px, 3.333vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .accordion-body-inner {
    gap: min(64px, 8.205vw);
    padding: min(64px, 8.205vw) min(78px, 10vw) min(68px, 8.718vw);
  }
}
.accordion-caption {
  width: 100%;
  border-radius: 16px;
  background: var(--c-white);
  border: 2px solid var(--c-magenta);
}
@media screen and (min-width: 768px) {
  .accordion-caption {
    padding: min(64px, 2.222vw) min(128px, 4.444vw);
  }
}
@media screen and (max-width: 767px) {
  .accordion-caption {
    padding: min(64px, 8.205vw) min(56px, 7.179vw);
  }
}
.accordion-caption p {
  color: var(--c-magenta);
  font-weight: var(--fw-bold);
  text-align: center;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .accordion-caption p {
    font-size: clamp(13.6px, 1.111vw, 32px);
  }
}
@media screen and (max-width: 767px) {
  .accordion-caption p {
    font-size: clamp(13.6px, 4.103vw, 32px);
  }
}
.accordion-img {
  width: 100%;
}
.accordion-img img {
  display: block;
  width: 100%;
}
.accordion-annotation {
  width: 100%;
  color: var(--c-blue);
  font-weight: var(--fw-medium);
  line-height: 1.6;
  margin-top: 1em;
}
@media screen and (min-width: 768px) {
  .accordion-annotation {
    font-size: clamp(11.9px, 0.972vw, 28px);
  }
}
@media screen and (max-width: 767px) {
  .accordion-annotation {
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.accordion.--faq {
  display: flex;
  flex-direction: column;
  gap: min(80px, 2.778vw);
}
@media screen and (max-width: 767px) {
  .accordion.--faq {
    gap: min(48px, 6.154vw);
    padding-inline: min(24px, 3.077vw);
  }
}
.accordion.--faq .accordion-head {
  justify-content: flex-start;
  padding-left: min(128px, 4.444vw);
}
@media screen and (max-width: 767px) {
  .accordion.--faq .accordion-head {
    padding: min(32px, 4.103vw) min(128px, 16.41vw) min(32px, 4.103vw) min(44px, 5.641vw);
  }
}
.accordion.--faq .accordion-title {
  font-size: clamp(17px, 1.389vw, 40px);
  text-align: left;
}
@media screen and (max-width: 767px) {
  .accordion.--faq .accordion-title {
    font-size: clamp(13.6px, 4.103vw, 32px);
    line-height: 1.6;
  }
}
.accordion.--faq .accordion-body-inner {
  display: block;
  width: 100%;
  font-weight: var(--fw-medium);
  line-height: 1.6;
  color: var(--c-blue);
}
@media screen and (min-width: 768px) {
  .accordion.--faq .accordion-body-inner {
    padding: min(80px, 2.778vw) min(128px, 4.444vw);
  }
}
@media screen and (max-width: 767px) {
  .accordion.--faq .accordion-body-inner {
    padding: min(48px, 6.154vw) min(52px, 6.667vw);
  }
}
.accordion.--faq .accordion-body-inner a {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .accordion.--faq .accordion-body-inner a:hover {
    text-decoration: none;
  }
}

.present-notes {
  width: 100%;
  color: var(--c-blue);
  font-weight: var(--fw-medium);
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .present-notes {
    font-size: clamp(11.9px, 0.972vw, 28px);
  }
}
@media screen and (max-width: 767px) {
  .present-notes {
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
.present-notes li::before {
  content: "※";
}
.present-notes .--accent {
  color: var(--c-magenta);
  font-weight: var(--fw-bold);
}

.present-faq {
  padding-top: min(288px, 10vw);
}
@media screen and (max-width: 767px) {
  .present-faq {
    padding-top: min(160px, 20.513vw);
  }
}
.present-faq-wrap {
  display: flex;
  flex-direction: column;
  gap: min(80px, 2.778vw);
}

.present-box {
  color: var(--c-blue);
  padding: min(192px, 6.667vw) min(206px, 7.153vw);
  border-radius: 16px;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .present-box {
    padding: min(96px, 12.308vw) min(76px, 9.744vw);
  }
}

.present-dot li {
  list-style: disc;
  margin-left: 1em;
}

.shop {
  margin-inline: auto;
  border-radius: 20px;
}
@media screen and (min-width: 768px) {
  .shop {
    padding: min(72px, 2.5vw) min(138px, 4.792vw) min(64px, 2.222vw);
    background: linear-gradient(90deg, rgba(253, 223, 173, 0.9) 0%, rgba(212, 155, 59, 0.9) 98.57%);
  }
}
@media screen and (max-width: 767px) {
  .shop {
    width: 100%;
    margin-inline: auto;
    padding: min(60px, 7.692vw) min(52px, 6.667vw);
    background: linear-gradient(180deg, #D49B3B 0%, #FDE1AE 50%, #E9BE75 100%);
  }
}
.shop-title {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  font-weight: var(--fw-bold);
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .shop-title {
    font-size: clamp(20.4px, 1.667vw, 48px);
    gap: min(32px, 1.111vw);
    margin-bottom: min(70px, 2.431vw);
  }
}
@media screen and (max-width: 767px) {
  .shop-title {
    flex-direction: column;
    font-size: clamp(17px, 5.128vw, 40px);
    gap: min(12px, 1.538vw);
    margin-bottom: min(48px, 6.154vw);
  }
}
.shop-mark {
  flex-shrink: 0;
  height: auto;
}
@media screen and (min-width: 768px) {
  .shop-mark--l {
    width: min(86px, 2.986vw);
  }
}
@media screen and (max-width: 767px) {
  .shop-mark--l {
    width: min(80px, 10.256vw);
  }
}
@media screen and (min-width: 768px) {
  .shop-mark--r {
    width: min(90px, 3.125vw);
  }
}
.shop-list {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .shop-list {
    gap: min(76px, 2.639vw);
  }
}
@media screen and (max-width: 767px) {
  .shop-list {
    flex-direction: column;
    align-items: center;
    gap: min(32px, 4.103vw);
  }
}
.shop-btn {
  display: block;
  filter: drop-shadow(0 min(12px, 0.417vw) 0 rgba(0, 0, 0, 0.15));
  transition: filter var(--duration), transform var(--duration);
}
@media screen and (min-width: 768px) {
  .shop-btn {
    width: min(613.334px, 21.296vw);
  }
}
@media screen and (max-width: 767px) {
  .shop-btn {
    width: min(590px, 75.641vw);
  }
}
@media (any-hover: hover) {
  .shop-btn:hover {
    filter: none;
    transform: translateY(min(12px, 0.417vw));
  }
}
.shop-btn img {
  opacity: 1 !important;
}
.shop-note {
  margin-top: 1.25em;
  font-size: clamp(11.9px, 0.972vw, 28px);
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .shop-note {
    font-size: clamp(11.9px, 3.59vw, 28px);
  }
}
@media screen and (min-width: 768px) {
  .shop.--slim .shop-btn {
    width: min(480px, 16.667vw);
    height: min(144px, 5vw);
  }
}

.q10kajitsugumi-bnr-x {
  filter: drop-shadow(0 0 min(20px, 0.694vw) rgba(15, 15, 15, 0.12));
  box-shadow: none;
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-x {
    margin-bottom: min(64px, 2.222vw);
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-x {
    margin-bottom: min(32px, 4.103vw);
  }
}
.q10kajitsugumi-bnr-x img {
  width: 100%;
}
.q10kajitsugumi-bnr-block {
  filter: drop-shadow(0 0 min(20px, 0.694vw) rgba(15, 15, 15, 0.12));
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-block {
    margin-bottom: min(64px, 2.222vw);
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-block {
    margin-bottom: min(32px, 4.103vw);
  }
}
.q10kajitsugumi-bnr-block-item img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-2column {
    margin-bottom: min(64px, 2.222vw);
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-2column {
    margin-bottom: min(80px, 10.256vw);
  }
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-2column-item {
    width: calc(50% - min(20px, 0.694vw));
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-2column-item:not(:last-child) {
    margin-bottom: min(32px, 4.103vw);
  }
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-sns {
    padding: min(80px, 2.778vw);
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-sns {
    padding: min(60px, 7.692vw) min(40px, 5.128vw) min(80px, 10.256vw);
  }
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-sns-inner {
    width: max-content;
    max-width: 484px;
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-sns-inner {
    max-width: min(480px, 61.538vw);
  }
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-sns-decoration1 {
    top: min(36px, 1.25vw);
    left: max(-46px, -1.597vw);
    width: min(160px, 5.556vw);
    height: min(160px, 5.556vw);
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-sns-decoration1 {
    top: max(-40px, -5.128vw);
    right: max(-60px, -7.692vw);
    width: min(160px, 20.513vw);
    height: min(160px, 20.513vw);
  }
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-sns-decoration2 {
    bottom: max(-62px, -2.153vw);
    left: min(82px, 2.847vw);
    width: min(160px, 5.556vw);
    height: min(160px, 5.556vw);
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-sns-decoration2 {
    bottom: min(40px, 5.128vw);
    left: max(-40px, -5.128vw);
    width: min(100px, 12.821vw);
    height: min(100px, 12.821vw);
  }
}
.q10kajitsugumi-bnr-sns-decoration3 {
  background: url(/q10kajitsu-gumi/jitsuwa-cp/present/assets/img/contact/gumi.png) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-sns-decoration3 {
    top: max(-58px, -2.014vw);
    right: max(-136px, -4.722vw);
    width: min(300px, 10.417vw);
    height: min(300px, 10.417vw);
  }
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-sns-text {
    width: min(480px, 16.667vw);
    padding: min(30px, 1.042vw) min(70px, 2.431vw) min(30px, 1.042vw) min(50px, 1.736vw);
    font-size: min(40px, 1.389vw);
    background: url(/q10kajitsu-gumi/jitsuwa-cp/present/assets/img/contact/bg_fukidashi.png) no-repeat center center/100%;
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-sns-text {
    display: grid;
    place-items: center;
    width: clamp(204px, 61.538vw, 480px);
    height: clamp(45.9px, 13.846vw, 108px);
    padding: 0;
    margin-bottom: min(60px, 7.692vw);
    font-size: clamp(17px, 5.128vw, 40px);
    border-radius: 9999px;
    background: linear-gradient(180deg, #0083C0 0%, #00B2BE 100%);
  }
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-sns-text.--gold {
    background: url(/q10kajitsu-gumi/jitsuwa-cp/assets/img/bg_fukidashi.svg) no-repeat center center/100%;
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-sns-text.--gold {
    background: linear-gradient(97deg, #FDE1AE 10.96%, #D49B3B 58.17%);
  }
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-sns-list {
    gap: min(40px, 1.389vw);
    flex-wrap: nowrap;
    margin-left: min(52px, 1.806vw);
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-sns-list {
    gap: min(60px, 7.692vw);
    margin-left: 0;
  }
}
@media screen and (min-width: 768px) {
  .q10kajitsugumi-bnr-sns-list-item {
    width: min(120px, 4.167vw);
  }
}
@media screen and (max-width: 767px) {
  .q10kajitsugumi-bnr-sns-list-item {
    width: min(120px, 15.385vw);
  }
}