@charset "UTF-8";
.page-wrap {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  overflow: hidden;
}
.page-wrap h1 + *, .page-wrap h2 + *, .page-wrap h3 + *,
.page-wrap h4 + *, .page-wrap h5 + *, .page-wrap h6 + * {
  margin-top: revert !important;
}
.page-wrap img {
  max-width: none;
}

@keyframes member-swaying {
  0% {
    rotate: 2deg;
  }
  10% {
    rotate: -2deg;
  }
  20% {
    rotate: 2deg;
  }
  30% {
    rotate: 0deg;
  }
  100% {
    rotate: 0deg;
  }
}
@media screen and (min-width: 768px) {
  .page-wrap .sp {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .page-wrap .pc {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .page-wrap .loading {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100dvh;
    background-color: #0037FF;
    z-index: 9003;
  }
  .page-wrap .loading__stitch {
    display: inline-block;
    position: absolute;
    left: 0;
    width: 100%;
    height: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto clamp(17.85px, 35 / 1512 * 100vw, 35px);
  }
  .page-wrap .loading__stitch--01 {
    top: clamp(17.85px, 35 / 1512 * 100vw, 35px);
  }
  .page-wrap .loading__stitch--02 {
    bottom: clamp(17.85px, 35 / 1512 * 100vw, 35px);
  }
  .page-wrap .loading__inner {
    display: grid;
    place-content: center;
    position: relative;
    margin-inline: auto;
    width: calc(1512 / 1512 * 100vw);
    height: calc(982 / 1512 * 100vw);
  }
  .page-wrap .loading__member-01-1, .page-wrap .loading__member-01-2, .page-wrap .loading__member-02 {
    display: block;
    position: absolute;
    top: calc(268 / 1512 * 100vw);
    left: calc(563 / 1512 * 100vw);
    width: calc(396 / 1512 * 100vw);
    opacity: 0;
    visibility: hidden;
  }
  .page-wrap .loading-shadow__member-01-2 {
    position: absolute;
    top: calc(268 / 1512 * 100vw);
    left: calc(563 / 1512 * 100vw);
    width: calc(396 / 1512 * 100vw);
    opacity: 0;
    visibility: hidden;
    mix-blend-mode: multiply;
  }
  .page-wrap .loading__products {
    display: flex;
    justify-content: center;
    column-gap: calc(18 / 1512 * 100vw);
    position: absolute;
    top: calc(334 / 1512 * 100vw);
    left: 47.5%;
  }
  .page-wrap .loading__products img {
    width: calc(36 / 1512 * 100vw);
  }
  .page-wrap .loading__texts {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: calc(505 / 1512 * 100vw);
    left: 51%;
    translate: -50% -50%;
    width: calc(215 / 1512 * 100vw);
  }
  .page-wrap .loading .loading__text {
    position: relative;
    width: calc(24 / 1512 * 100vw);
  }
  .page-wrap .loading .loading__text-01 {
    top: calc(-2 / 1512 * 100vw);
    right: calc(-8 / 1512 * 100vw);
    width: calc(21 / 1512 * 100vw);
  }
  .page-wrap .loading .loading__text-02 {
    right: calc(-8 / 1512 * 100vw);
  }
  .page-wrap .loading .loading__text-03 {
    right: calc(-4 / 1512 * 100vw);
  }
  .page-wrap .loading .loading__text-04 {
    right: calc(-2 / 1512 * 100vw);
  }
  .page-wrap .loading .loading__text-06 {
    left: calc(-4 / 1512 * 100vw);
  }
  .page-wrap .loading .loading__text-07 {
    left: calc(-8 / 1512 * 100vw);
  }
  .page-wrap .loading .loading__text-08 {
    left: calc(-12 / 1512 * 100vw);
  }
  .page-wrap .loading .loading__text-09 {
    left: calc(-16 / 1512 * 100vw);
  }
  .page-wrap .loading .loading__text-10 {
    left: calc(-20 / 1512 * 100vw);
  }
  .page-wrap .loading__pocket {
    display: block;
    position: absolute;
    top: calc(402 / 1512 * 100vw);
    left: 50.5%;
    width: calc(192 / 1512 * 100vw);
    opacity: 0;
    visibility: hidden;
  }
  .page-wrap .loading__pocket img {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .page-wrap .loading {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100dvh;
    background-color: #0037FF;
    z-index: 9003;
  }
  .page-wrap .loading__stitch {
    display: inline-block;
    position: absolute;
    left: 0;
    width: 100%;
    height: calc(21 / 390 * 100vw);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto calc(21 / 390 * 100vw);
  }
  .page-wrap .loading__stitch--01 {
    top: calc(14 / 390 * 100vw);
  }
  .page-wrap .loading__stitch--02 {
    bottom: calc(14 / 390 * 100vw);
  }
  .page-wrap .loading__inner {
    display: grid;
    place-content: center;
    position: relative;
    margin-inline: auto;
    width: calc(190 / 390 * 100vw);
    height: calc(265 / 390 * 100vw);
  }
  .page-wrap .loading__member-01-1, .page-wrap .loading__member-01-2, .page-wrap .loading__member-02 {
    display: block;
    position: absolute;
    top: calc(14 / 390 * 100vw);
    left: 50%;
    translate: -50% -50%;
    width: calc(270 / 390 * 100vw);
    opacity: 0;
    visibility: hidden;
  }
  .page-wrap .loading-shadow__member-01-2 {
    position: absolute;
    top: calc(14 / 390 * 100vw);
    left: 50%;
    translate: -50% -50%;
    width: calc(270 / 390 * 100vw);
    opacity: 0;
    visibility: hidden;
    mix-blend-mode: multiply;
  }
  .page-wrap .loading__products {
    display: flex;
    justify-content: center;
    column-gap: calc(12 / 390 * 100vw);
    position: absolute;
    top: calc(90 / 390 * 100vw);
    left: 50%;
    translate: -50% -50%;
  }
  .page-wrap .loading__products img {
    width: calc(24 / 390 * 100vw);
  }
  .page-wrap .loading__texts {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: calc(160 / 390 * 100vw);
    left: 53%;
    translate: -50% -50%;
  }
  .page-wrap .loading .loading__text {
    position: relative;
    width: calc(17 / 390 * 100vw);
  }
  .page-wrap .loading .loading__text-01 {
    top: calc(-0.8 / 390 * 100vw);
    right: calc(-8 / 390 * 100vw);
    width: calc(15.5 / 390 * 100vw);
  }
  .page-wrap .loading .loading__text-02 {
    right: calc(-7 / 390 * 100vw);
  }
  .page-wrap .loading .loading__text-03 {
    right: calc(-4 / 390 * 100vw);
  }
  .page-wrap .loading .loading__text-04 {
    right: calc(-2 / 390 * 100vw);
  }
  .page-wrap .loading .loading__text-06 {
    left: calc(-4 / 390 * 100vw);
  }
  .page-wrap .loading .loading__text-07 {
    left: calc(-8 / 390 * 100vw);
  }
  .page-wrap .loading .loading__text-08 {
    left: calc(-12 / 390 * 100vw);
  }
  .page-wrap .loading .loading__text-09 {
    left: calc(-16 / 390 * 100vw);
  }
  .page-wrap .loading .loading__text-10 {
    left: calc(-20 / 390 * 100vw);
  }
  .page-wrap .loading__pocket {
    display: block;
    position: absolute;
    top: calc(95 / 390 * 100vw);
    left: 50%;
    width: calc(154 / 390 * 100vw);
    opacity: 0;
    visibility: hidden;
  }
  .page-wrap .loading__pocket img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .page-wrap .kv {
    position: relative;
    height: clamp(445.23px, 873 / 1512 * 100vw, 873px);
    clip-path: shape(from 0.03% 97.07%, hline by -0.03%, vline by 2.5%, curve by 3.5% -0.68% with 1.58% -0.34%/3.27% -0.68%, hline by 11.87%, line by 8.07% 1.11%, hline by 21.79%, line by 26.15% -1.11%, line by 15.11% 1.11%, line by 13.49% -2.27%, vline by -0.42%, hline by 0.03%, vline to 0%, hline to 0.03%, vline by 97.07%, close);
    background-color: #0037FF;
    z-index: 1;
  }
  .page-wrap .kv-bg-stitch {
    display: inline-block;
    position: absolute;
    left: 0;
    width: 100%;
    height: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto clamp(17.85px, 35 / 1512 * 100vw, 35px);
  }
  .page-wrap .kv-bg-stitch--01 {
    top: clamp(5.1px, 10 / 1512 * 100vw, 10px);
  }
  .page-wrap .kv-bg-stitch--02 {
    bottom: clamp(11.73px, 23 / 1512 * 100vw, 23px);
  }
  .page-wrap .kv__inner {
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% 0;
    width: 100%;
    height: 100%;
    max-width: clamp(771.12px, 1512 / 1512 * 100vw, 1512px);
  }
  .page-wrap .kv__mainarea {
    position: absolute;
    top: clamp(108.63px, 213 / 1512 * 100vw, 213px);
    left: 50%;
    translate: -50% 0;
    width: clamp(258.06px, 506 / 1512 * 100vw, 506px);
    height: clamp(252.45px, 495 / 1512 * 100vw, 495px);
    z-index: 2;
  }
  .page-wrap .kv__mainarea-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .page-wrap .kv__mainarea-bg svg {
    width: 100%;
    height: 100%;
  }
  .page-wrap .kv__ttl {
    position: absolute;
    top: clamp(31.11px, 61 / 1512 * 100vw, 61px);
    left: clamp(51px, 100 / 1512 * 100vw, 100px);
    width: clamp(162.69px, 319 / 1512 * 100vw, 319px);
  }
  .page-wrap .kv__ttl img {
    width: 100%;
  }
  .page-wrap .kv__movie {
    position: absolute;
    width: clamp(75.48px, 148 / 1512 * 100vw, 148px);
    height: clamp(76.5px, 150 / 1512 * 100vw, 150px);
    z-index: 1;
    scale: 0.5;
    opacity: 0;
    visibility: hidden;
    transition: scale 0.5s cubic-bezier(0.06, 1.22, 0.69, 1.43) 0.2s;
  }
  .page-wrap .kv__movie.js-active {
    opacity: 1;
    visibility: visible;
    scale: 1;
  }
  .page-wrap .kv__movie:hover {
    scale: 1.05;
  }
  .page-wrap .kv__movie-link {
    display: block;
    width: 100%;
    height: 100%;
  }
  .page-wrap .kv__movie-link img {
    width: 100%;
  }
  .page-wrap .kv__text {
    position: absolute;
  }
  .page-wrap .kv__text .line--01 {
    display: block;
    width: clamp(98.43px, 193 / 1512 * 100vw, 193px);
    line-height: 1.2;
  }
  .page-wrap .kv__text .line--01 img {
    width: 100%;
  }
  .page-wrap .kv__text .line--02 {
    display: block;
    width: clamp(107.1px, 210 / 1512 * 100vw, 210px);
    line-height: 1.2;
  }
  .page-wrap .kv__text .line--02 img {
    width: 100%;
  }
  .page-wrap .kv__text .dotted {
    position: absolute;
    width: clamp(5.61px, 11 / 1512 * 100vw, 11px);
    height: clamp(4.59px, 9 / 1512 * 100vw, 9px);
  }
  .page-wrap .kv__text .dotted.color01 svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: #FF73D7;
  }
  .page-wrap .kv__text .dotted.color02 svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: #0037FF;
  }
  .page-wrap .kv__logo {
    position: absolute;
    top: clamp(23.46px, 46 / 1512 * 100vw, 46px);
    left: clamp(17.34px, 34 / 1512 * 100vw, 34px);
    width: clamp(75.99px, 149 / 1512 * 100vw, 149px);
  }
  .page-wrap .kv__logo img {
    width: 100%;
  }
  .page-wrap .kv__product {
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: clamp(312.12px, 612 / 1512 * 100vw, 612px);
    left: clamp(22.95px, 45 / 1512 * 100vw, 45px);
    width: clamp(110.16px, 216 / 1512 * 100vw, 216px);
    z-index: 2;
  }
  .page-wrap .kv__product img {
    width: clamp(52.53px, 103 / 1512 * 100vw, 103px);
  }
  .page-wrap .kv__campaign {
    position: absolute;
    top: clamp(304.98px, 598 / 1512 * 100vw, 598px);
    right: clamp(32.64px, 64 / 1512 * 100vw, 64px);
    width: clamp(87.21px, 171 / 1512 * 100vw, 171px);
    scale: 0.5;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease, scale 0.5s cubic-bezier(0.06, 1.22, 0.69, 1.43) 0.2s;
  }
  .page-wrap .kv__campaign.js-active {
    opacity: 1;
    visibility: visible;
    scale: 1;
  }
  .page-wrap .kv__campaign > a {
    display: block;
    transition: scale 0.3s ease;
  }
  .page-wrap .kv__campaign > a:hover {
    scale: 1.05;
  }
  .page-wrap .kv__campaign > a:hover::after {
    bottom: clamp(7.14px, 14 / 1512 * 100vw, 14px);
  }
  .page-wrap .kv__campaign > a::after {
    content: "";
    display: block;
    position: absolute;
    bottom: clamp(9.18px, 18 / 1512 * 100vw, 18px);
    left: 52%;
    translate: -50% 0;
    width: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    height: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    rotate: 135deg;
    transition: bottom 0.3s ease;
  }
  .page-wrap .kv__campaign img {
    width: 100%;
  }
  .page-wrap .kv-bg-change {
    width: 100%;
    height: 100%;
  }
  .page-wrap .kv-bg-change .js-active {
    opacity: 1;
    visibility: visible;
  }
  .page-wrap .kv-bg-change__01 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #00CCFF;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-bg-change__01-1 {
    position: absolute;
    top: clamp(94.35px, 185 / 1512 * 100vw, 185px);
    left: clamp(-117px, -117 / 1512 * 100vw, -59.67px);
    width: clamp(191.25px, 375 / 1512 * 100vw, 375px);
  }
  .page-wrap .kv-bg-change__01-2 {
    position: absolute;
    top: clamp(32.13px, 63 / 1512 * 100vw, 63px);
    left: clamp(555.39px, 1089 / 1512 * 100vw, 1089px);
    width: clamp(267.24px, 524 / 1512 * 100vw, 524px);
  }
  .page-wrap .kv-bg-change__01-3 {
    position: absolute;
    top: clamp(226.95px, 445 / 1512 * 100vw, 445px);
    left: clamp(81.6px, 160 / 1512 * 100vw, 160px);
    width: clamp(230.01px, 451 / 1512 * 100vw, 451px);
  }
  .page-wrap .kv-bg-change__02 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #6F4EFF;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-bg-change__02-1 {
    position: absolute;
    top: clamp(-229px, -229 / 1512 * 100vw, -116.79px);
    right: clamp(-381px, -381 / 1512 * 100vw, -194.31px);
    width: clamp(417.69px, 819 / 1512 * 100vw, 819px);
  }
  .page-wrap .kv-bg-change__02-2 {
    position: absolute;
    top: clamp(189.72px, 372 / 1512 * 100vw, 372px);
    left: clamp(-225px, -225 / 1512 * 100vw, -114.75px);
    width: clamp(211.14px, 414 / 1512 * 100vw, 414px);
  }
  .page-wrap .kv-bg-change__03 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #5DF16C;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-bg-change__03-1 {
    position: absolute;
    top: 0;
    left: clamp(-172px, -172 / 1512 * 100vw, -87.72px);
    width: auto;
    height: 100%;
  }
  .page-wrap .kv-bg-change__03-2 {
    position: absolute;
    top: 0;
    right: clamp(-316px, -316 / 1512 * 100vw, -161.16px);
    width: auto;
    height: 100%;
  }
  .page-wrap .kv-shadows {
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: max(-50%, -756px);
    width: 100%;
    height: 100%;
    max-width: clamp(771.12px, 1512 / 1512 * 100vw, 1512px);
    pointer-events: none;
  }
  .page-wrap .kv-shadows__scene {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    visibility: hidden;
  }
  .page-wrap .kv-shadows__scene.js-active {
    visibility: visible;
  }
  .page-wrap .kv-shadows__scene.js-active .kv-shadow-animation > img:first-child, .page-wrap .kv-shadows__scene.js-active .kv-shadow-animation > picture:first-child {
    animation: kv-animation-1 2s steps(1) infinite;
  }
  .page-wrap .kv-shadows__scene.js-active .kv-shadow-animation > img:nth-child(2), .page-wrap .kv-shadows__scene.js-active .kv-shadow-animation > picture:nth-child(2) {
    animation: kv-animation-2 2s steps(1) infinite;
  }
  .page-wrap .kv-shadow-animation {
    position: absolute;
  }
  .page-wrap .kv-shadow-animation > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    mix-blend-mode: multiply;
  }
  .page-wrap .kv-shadow-animation > img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-shadow-animation > picture {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    mix-blend-mode: multiply;
  }
  .page-wrap .kv-shadow-animation > picture:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-shadow-animation > picture img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv__shadow-member--01-1 {
    top: clamp(127.5px, 250 / 1512 * 100vw, 250px);
    left: clamp(142.8px, 280 / 1512 * 100vw, 280px);
    width: clamp(248.88px, 488 / 1512 * 100vw, 488px);
    height: clamp(293.25px, 575 / 1512 * 100vw, 575px);
  }
  .page-wrap .kv__shadow-member--01-2 {
    top: clamp(169.83px, 333 / 1512 * 100vw, 333px);
    right: clamp(146.88px, 288 / 1512 * 100vw, 288px);
    width: clamp(193.8px, 380 / 1512 * 100vw, 380px);
    height: clamp(290.19px, 569 / 1512 * 100vw, 569px);
  }
  .page-wrap .kv__shadow-member--02-1 {
    top: clamp(139.23px, 273 / 1512 * 100vw, 273px);
    left: clamp(119.85px, 235 / 1512 * 100vw, 235px);
    width: clamp(214.2px, 420 / 1512 * 100vw, 420px);
    height: clamp(290.7px, 570 / 1512 * 100vw, 570px);
  }
  .page-wrap .kv__shadow-member--02-2 {
    top: clamp(97.92px, 192 / 1512 * 100vw, 192px);
    right: clamp(144.33px, 283 / 1512 * 100vw, 283px);
    width: clamp(214.2px, 420 / 1512 * 100vw, 420px);
    height: clamp(86.7px, 170 / 1512 * 100vw, 170px);
  }
  .page-wrap .kv__shadow-member--03-1 {
    top: clamp(17.34px, 34 / 1512 * 100vw, 34px);
    left: clamp(319.77px, 627 / 1512 * 100vw, 627px);
    width: clamp(198.9px, 390 / 1512 * 100vw, 390px);
    height: clamp(127.5px, 250 / 1512 * 100vw, 250px);
  }
  .page-wrap .kv__shadow-member--03-2 {
    top: clamp(118.83px, 233 / 1512 * 100vw, 233px);
    left: clamp(159.12px, 312 / 1512 * 100vw, 312px);
    width: clamp(193.8px, 380 / 1512 * 100vw, 380px);
    height: clamp(290.7px, 570 / 1512 * 100vw, 570px);
  }
  .page-wrap .kv__shadow-member--front-03-1 {
    top: clamp(-179px, -179 / 1512 * 100vw, -91.29px);
    left: clamp(63.24px, 124 / 1512 * 100vw, 124px);
    width: clamp(198.9px, 390 / 1512 * 100vw, 390px);
    height: clamp(127.5px, 250 / 1512 * 100vw, 250px);
  }
  .page-wrap .kv-change__01 {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-change__01.js-active {
    display: block;
    opacity: 1;
    visibility: visible;
  }
  .page-wrap .kv-change__01 .kv__movie {
    top: clamp(-52px, -52 / 1512 * 100vw, -26.52px);
    right: clamp(-32px, -32 / 1512 * 100vw, -16.32px);
  }
  .page-wrap .kv-change__01 .kv__mainarea-bg svg {
    fill: #FF73D7;
  }
  .page-wrap .kv-change__01 .kv__object-member--01-1 {
    position: absolute;
    top: clamp(18.87px, 37 / 1512 * 100vw, 37px);
    left: clamp(-223px, -223 / 1512 * 100vw, -113.73px);
    width: clamp(248.88px, 488 / 1512 * 100vw, 488px);
    height: clamp(293.25px, 575 / 1512 * 100vw, 575px);
  }
  .page-wrap .kv-change__01 .kv__object-member--01-1 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__01 .kv__object-member--01-2 {
    position: absolute;
    top: clamp(61.2px, 120 / 1512 * 100vw, 120px);
    right: clamp(-213px, -213 / 1512 * 100vw, -108.63px);
    width: clamp(193.8px, 380 / 1512 * 100vw, 380px);
    height: clamp(290.19px, 569 / 1512 * 100vw, 569px);
  }
  .page-wrap .kv-change__01 .kv__object-member--01-2 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__01 .kv__object-member--01-2 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__01 .kv__object-product--01 {
    position: absolute;
    top: clamp(-127px, -127 / 1512 * 100vw, -64.77px);
    left: clamp(32.64px, 64 / 1512 * 100vw, 64px);
    width: clamp(81.6px, 160 / 1512 * 100vw, 160px);
    z-index: -1;
  }
  .page-wrap .kv-change__01 .kv__text {
    position: absolute;
    top: clamp(102px, 200 / 1512 * 100vw, 200px);
    right: clamp(-70px, -70 / 1512 * 100vw, -35.7px);
    translate: 100% 0;
    width: clamp(151.47px, 297 / 1512 * 100vw, 297px);
    height: clamp(64.77px, 127 / 1512 * 100vw, 127px);
  }
  .page-wrap .kv-change__01 .kv__text .line--01 {
    position: absolute;
    top: 0;
    left: 0;
    rotate: -22.27deg;
  }
  .page-wrap .kv-change__01 .kv__text .line--01 .dotted:first-of-type {
    top: clamp(-16px, -16 / 1512 * 100vw, -8.16px);
    left: clamp(3.06px, 6 / 1512 * 100vw, 6px);
  }
  .page-wrap .kv-change__01 .kv__text .line--01 .dotted:last-of-type {
    top: clamp(-12px, -12 / 1512 * 100vw, -6.12px);
    left: clamp(18.87px, 37 / 1512 * 100vw, 37px);
  }
  .page-wrap .kv-change__01 .kv__text .line--02 {
    position: absolute;
    top: clamp(22.44px, 44 / 1512 * 100vw, 44px);
    left: clamp(41.31px, 81 / 1512 * 100vw, 81px);
    rotate: -11.78deg;
  }
  .page-wrap .kv-change__01 .kv__text .line--02 .dotted:first-of-type {
    top: clamp(-11px, -11 / 1512 * 100vw, -5.61px);
    right: clamp(33.15px, 65 / 1512 * 100vw, 65px);
  }
  .page-wrap .kv-change__01 .kv__text .line--02 .dotted:last-of-type {
    top: clamp(-10px, -10 / 1512 * 100vw, -5.1px);
    right: clamp(15.3px, 30 / 1512 * 100vw, 30px);
  }
  .page-wrap .kv-change__02 {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-change__02.js-active {
    display: block;
    opacity: 1;
    visibility: visible;
  }
  .page-wrap .kv-change__02 .kv__movie {
    top: clamp(-56px, -56 / 1512 * 100vw, -28.56px);
    left: clamp(-36px, -36 / 1512 * 100vw, -18.36px);
  }
  .page-wrap .kv-change__02 .kv__mainarea-bg svg {
    fill: #1DE7C9;
  }
  .page-wrap .kv-change__02 .kv__object-member--02-1 {
    position: absolute;
    top: clamp(30.6px, 60 / 1512 * 100vw, 60px);
    left: clamp(-268px, -268 / 1512 * 100vw, -136.68px);
    width: clamp(214.2px, 420 / 1512 * 100vw, 420px);
    height: clamp(290.7px, 570 / 1512 * 100vw, 570px);
  }
  .page-wrap .kv-change__02 .kv__object-member--02-1 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__02 .kv__object-member--02-1 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__02 .kv__object-member--02-2 {
    position: absolute;
    top: clamp(-19px, -19 / 1512 * 100vw, -9.69px);
    right: clamp(-221px, -221 / 1512 * 100vw, -112.71px);
    width: clamp(214.2px, 420 / 1512 * 100vw, 420px);
    height: clamp(86.7px, 170 / 1512 * 100vw, 170px);
  }
  .page-wrap .kv-change__02 .kv__object-member--02-2 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__02 .kv__object-member--02-2 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__02 .kv__object-product--02 {
    position: absolute;
    top: clamp(-128px, -128 / 1512 * 100vw, -65.28px);
    left: clamp(143.82px, 282 / 1512 * 100vw, 282px);
    width: clamp(86.7px, 170 / 1512 * 100vw, 170px);
    z-index: -1;
  }
  .page-wrap .kv-change__02 .kv__text {
    position: absolute;
    top: clamp(56.1px, 110 / 1512 * 100vw, 110px);
    left: clamp(-570px, -570 / 1512 * 100vw, -290.7px);
    translate: 100% 0;
    width: clamp(119.85px, 235 / 1512 * 100vw, 235px);
    height: clamp(81.6px, 160 / 1512 * 100vw, 160px);
  }
  .page-wrap .kv-change__02 .kv__text .line--01 {
    position: absolute;
    top: 0;
    left: 0;
    rotate: 17.65deg;
  }
  .page-wrap .kv-change__02 .kv__text .line--01 .dotted:first-of-type {
    top: clamp(-16px, -16 / 1512 * 100vw, -8.16px);
    left: clamp(3.06px, 6 / 1512 * 100vw, 6px);
  }
  .page-wrap .kv-change__02 .kv__text .line--01 .dotted:last-of-type {
    top: clamp(-12px, -12 / 1512 * 100vw, -6.12px);
    left: clamp(18.87px, 37 / 1512 * 100vw, 37px);
  }
  .page-wrap .kv-change__02 .kv__text .line--02 {
    position: absolute;
    top: clamp(39.27px, 77 / 1512 * 100vw, 77px);
    left: clamp(14.28px, 28 / 1512 * 100vw, 28px);
    rotate: 9.22deg;
  }
  .page-wrap .kv-change__02 .kv__text .line--02 .dotted:first-of-type {
    top: clamp(-11px, -11 / 1512 * 100vw, -5.61px);
    right: clamp(33.15px, 65 / 1512 * 100vw, 65px);
  }
  .page-wrap .kv-change__02 .kv__text .line--02 .dotted:last-of-type {
    top: clamp(-10px, -10 / 1512 * 100vw, -5.1px);
    right: clamp(15.3px, 30 / 1512 * 100vw, 30px);
  }
  .page-wrap .kv-change__03 {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-change__03.js-active {
    display: block;
    opacity: 1;
    visibility: visible;
  }
  .page-wrap .kv-change__03 .kv__movie {
    top: clamp(155.55px, 305 / 1512 * 100vw, 305px);
    left: clamp(222.36px, 436 / 1512 * 100vw, 436px);
  }
  .page-wrap .kv-change__03 .kv__mainarea-bg svg {
    fill: #FF9011;
  }
  .page-wrap .kv-change__03 .kv__object-member--03-1 {
    position: absolute;
    top: clamp(-177px, -177 / 1512 * 100vw, -90.27px);
    left: clamp(63.24px, 124 / 1512 * 100vw, 124px);
    width: clamp(198.9px, 390 / 1512 * 100vw, 390px);
    height: clamp(127.5px, 250 / 1512 * 100vw, 250px);
  }
  .page-wrap .kv-change__03 .kv__object-member--03-1 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__03 .kv__object-member--03-1 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__03 .kv__object-member--03-2 {
    position: absolute;
    top: clamp(10.71px, 21 / 1512 * 100vw, 21px);
    left: clamp(-190px, -190 / 1512 * 100vw, -96.9px);
    width: clamp(193.8px, 380 / 1512 * 100vw, 380px);
    height: clamp(290.7px, 570 / 1512 * 100vw, 570px);
  }
  .page-wrap .kv-change__03 .kv__object-member--03-2 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__03 .kv__object-member--03-2 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__03 .kv__text {
    position: absolute;
    top: clamp(0.51px, 1 / 1512 * 100vw, 1px);
    left: clamp(261.63px, 513 / 1512 * 100vw, 513px);
    width: clamp(119.85px, 235 / 1512 * 100vw, 235px);
    height: clamp(81.6px, 160 / 1512 * 100vw, 160px);
  }
  .page-wrap .kv-change__03 .kv__text .line--01 {
    position: absolute;
    top: 0;
    left: 0;
    rotate: -24.65deg;
  }
  .page-wrap .kv-change__03 .kv__text .line--01 .dotted:first-of-type {
    top: clamp(-16px, -16 / 1512 * 100vw, -8.16px);
    left: clamp(3.06px, 6 / 1512 * 100vw, 6px);
  }
  .page-wrap .kv-change__03 .kv__text .line--01 .dotted:last-of-type {
    top: clamp(-12px, -12 / 1512 * 100vw, -6.12px);
    left: clamp(18.87px, 37 / 1512 * 100vw, 37px);
  }
  .page-wrap .kv-change__03 .kv__text .line--02 {
    position: absolute;
    top: clamp(19.89px, 39 / 1512 * 100vw, 39px);
    left: clamp(21.93px, 43 / 1512 * 100vw, 43px);
    rotate: -18.22deg;
  }
  .page-wrap .kv-change__03 .kv__text .line--02 .dotted:first-of-type {
    top: clamp(-11px, -11 / 1512 * 100vw, -5.61px);
    right: clamp(33.15px, 65 / 1512 * 100vw, 65px);
  }
  .page-wrap .kv-change__03 .kv__text .line--02 .dotted:last-of-type {
    top: clamp(-10px, -10 / 1512 * 100vw, -5.1px);
    right: clamp(15.3px, 30 / 1512 * 100vw, 30px);
  }
  .page-wrap .kv-change .js-active .kv-animation > img:first-child, .page-wrap .kv-change .js-active .kv-animation > picture:first-child, .page-wrap .kv-change .js-active .kv-shadow-animation > img:first-child, .page-wrap .kv-change .js-active .kv-shadow-animation > picture:first-child {
    animation: kv-animation-1 2s steps(1) infinite;
  }
  .page-wrap .kv-change .js-active .kv-animation > img:nth-child(2), .page-wrap .kv-change .js-active .kv-animation > picture:nth-child(2), .page-wrap .kv-change .js-active .kv-shadow-animation > img:nth-child(2), .page-wrap .kv-change .js-active .kv-shadow-animation > picture:nth-child(2) {
    animation: kv-animation-2 2s steps(1) infinite;
  }
  .page-wrap .kv-change .js-active .kv__object-member--01-1-1 {
    animation: kv-animation-1 2s steps(1) infinite;
  }
  .page-wrap .kv-change .js-active .kv__object-member--01-1-2 {
    opacity: 0;
    animation: kv-animation-2 2s steps(1) infinite;
  }
}
@keyframes kv-animation-1 {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes kv-animation-2 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  .page-wrap .kv {
    position: relative;
    height: calc(762 / 390 * 100vw);
    clip-path: shape(from 100% 96.84%, line by -0.06% -96.84%, hline to 0%, vline by 97.91%, line by 0.06% 2.09%, curve by 3.75% -0.31% with 1.43% -0.09%/2.47% -0.24%, hline by 13.7%, line by 8.05% 0.31%, hline by 23.94%, line by 26.08% -0.31%, hline by 4.17%, line by 12.32% 0.25%, line by 7.93% -0.7%, vline by -2.4%, close);
    background-color: #0037FF;
    z-index: 1;
  }
  .page-wrap .kv-bg-stitch {
    display: inline-block;
    position: absolute;
    left: 0;
    width: 100%;
    height: calc(21 / 390 * 100vw);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto calc(21 / 390 * 100vw);
  }
  .page-wrap .kv-bg-stitch--01 {
    top: calc(14 / 390 * 100vw);
  }
  .page-wrap .kv-bg-stitch--02 {
    bottom: calc(14 / 390 * 100vw);
  }
  .page-wrap .kv__inner {
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% 0;
    width: 100%;
    height: 100%;
  }
  .page-wrap .kv__mainarea {
    position: absolute;
    top: calc(250 / 390 * 100vw);
    left: 50%;
    translate: -50% 0;
    width: calc(282 / 390 * 100vw);
    height: calc(277 / 390 * 100vw);
    z-index: 2;
  }
  .page-wrap .kv__mainarea-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .page-wrap .kv__mainarea-bg svg {
    width: 100%;
    height: 100%;
  }
  .page-wrap .kv__ttl {
    position: absolute;
    top: calc(34 / 390 * 100vw);
    left: calc(56 / 390 * 100vw);
    width: calc(178 / 390 * 100vw);
  }
  .page-wrap .kv__ttl img {
    width: 100%;
  }
  .page-wrap .kv__movie {
    position: absolute;
    width: calc(96 / 390 * 100vw);
    height: calc(91 / 390 * 100vw);
    z-index: 1;
    scale: 0.5;
    opacity: 0;
    visibility: hidden;
    transition: scale 0.5s cubic-bezier(0.06, 1.22, 0.69, 1.43) 0.2s;
  }
  .page-wrap .kv__movie.js-active {
    opacity: 1;
    visibility: visible;
    scale: 1;
  }
  .page-wrap .kv__movie-link {
    display: block;
    width: 100%;
    height: 100%;
  }
  .page-wrap .kv__movie-link img {
    width: 100%;
  }
  .page-wrap .kv__text {
    position: absolute;
  }
  .page-wrap .kv__text .line--01 {
    display: block;
    width: calc(102 / 390 * 100vw);
    line-height: 1.2;
  }
  .page-wrap .kv__text .line--01 img {
    width: 100%;
  }
  .page-wrap .kv__text .line--02 {
    display: block;
    width: calc(118 / 390 * 100vw);
    line-height: 1.2;
  }
  .page-wrap .kv__text .line--02 img {
    width: 100%;
  }
  .page-wrap .kv__text .dotted {
    position: absolute;
    width: calc(7 / 390 * 100vw);
    height: calc(6 / 390 * 100vw);
  }
  .page-wrap .kv__text .dotted.color01 svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: #FF73D7;
  }
  .page-wrap .kv__text .dotted.color02 svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: #0037FF;
  }
  .page-wrap .kv__logo {
    position: absolute;
    top: calc(34 / 390 * 100vw);
    left: calc(8 / 390 * 100vw);
    width: calc(81 / 390 * 100vw);
  }
  .page-wrap .kv__logo img {
    width: 100%;
  }
  .page-wrap .kv__product {
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: calc(612 / 390 * 100vw);
    left: calc(19 / 390 * 100vw);
    width: calc(138 / 390 * 100vw);
    z-index: 2;
  }
  .page-wrap .kv__product img {
    width: calc(65 / 390 * 100vw);
  }
  .page-wrap .kv__campaign {
    position: absolute;
    top: calc(603 / 390 * 100vw);
    right: calc(22 / 390 * 100vw);
    width: calc(114 / 390 * 100vw);
    scale: 0.5;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease, scale 0.5s cubic-bezier(0.06, 1.22, 0.69, 1.43) 0.2s;
  }
  .page-wrap .kv__campaign.js-active {
    opacity: 1;
    visibility: visible;
    scale: 1;
  }
  .page-wrap .kv__campaign::after {
    content: "";
    display: block;
    position: absolute;
    bottom: calc(15 / 390 * 100vw);
    left: 53%;
    translate: -50% 0;
    width: calc(7 / 390 * 100vw);
    height: calc(7 / 390 * 100vw);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    rotate: 135deg;
    transition: bottom 0.3s ease;
  }
  .page-wrap .kv__campaign img {
    width: 100%;
  }
  .page-wrap .kv-bg-change {
    width: 100%;
    height: 100%;
  }
  .page-wrap .kv-bg-change .js-active {
    opacity: 1;
    visibility: visible;
  }
  .page-wrap .kv-bg-change__01 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #00CCFF;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-bg-change__01-1 {
    position: absolute;
    top: calc(83 / 390 * 100vw);
    left: calc(-36 / 390 * 100vw);
    width: calc(156 / 390 * 100vw);
  }
  .page-wrap .kv-bg-change__01-2 {
    position: absolute;
    top: calc(15 / 390 * 100vw);
    right: calc(-55 / 390 * 100vw);
    width: calc(220 / 390 * 100vw);
  }
  .page-wrap .kv-bg-change__01-4 {
    position: absolute;
    top: calc(299 / 390 * 100vw);
    left: calc(-61 / 390 * 100vw);
    width: calc(150 / 390 * 100vw);
  }
  .page-wrap .kv-bg-change__01-5 {
    position: absolute;
    top: calc(583 / 390 * 100vw);
    right: calc(-21 / 390 * 100vw);
    width: calc(226 / 390 * 100vw);
  }
  .page-wrap .kv-bg-change__02 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #6F4EFF;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-bg-change__02-1 {
    position: absolute;
    top: calc(-193 / 390 * 100vw);
    right: calc(-185 / 390 * 100vw);
    width: calc(415 / 390 * 100vw);
  }
  .page-wrap .kv-bg-change__02-2 {
    position: absolute;
    top: calc(356 / 390 * 100vw);
    left: calc(-136 / 390 * 100vw);
    width: calc(225 / 390 * 100vw);
  }
  .page-wrap .kv-bg-change__03 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #5DF16C;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-bg-change__03-1 {
    position: absolute;
    top: calc(-32 / 390 * 100vw);
    left: 0;
    width: auto;
    height: calc(100% + 32 / 390 * 100vw);
  }
  .page-wrap .kv-bg-change__03-2 {
    position: absolute;
    top: calc(-46 / 390 * 100vw);
    right: 0;
    width: auto;
    height: calc(100% + 46 / 390 * 100vw);
  }
  .page-wrap .kv-shadows {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
  }
  .page-wrap .kv-shadows__scene {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    visibility: hidden;
  }
  .page-wrap .kv-shadows__scene.js-active {
    visibility: visible;
  }
  .page-wrap .kv-shadows__scene.js-active .kv-shadow-animation > img:first-child, .page-wrap .kv-shadows__scene.js-active .kv-shadow-animation > picture:first-child {
    animation: kv-animation-1 2s steps(1) infinite;
  }
  .page-wrap .kv-shadows__scene.js-active .kv-shadow-animation > img:nth-child(2), .page-wrap .kv-shadows__scene.js-active .kv-shadow-animation > picture:nth-child(2) {
    animation: kv-animation-2 2s steps(1) infinite;
  }
  .page-wrap .kv-shadow-animation {
    position: absolute;
  }
  .page-wrap .kv-shadow-animation > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    mix-blend-mode: multiply;
  }
  .page-wrap .kv-shadow-animation > img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-shadow-animation > picture {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    mix-blend-mode: multiply;
  }
  .page-wrap .kv-shadow-animation > picture:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-shadow-animation > picture img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv__shadow-member--01-1 {
    top: calc(282 / 390 * 100vw);
    left: calc(-2 / 390 * 100vw);
    width: calc(244 / 390 * 100vw);
    height: calc(285 / 390 * 100vw);
  }
  .page-wrap .kv__shadow-member--01-2 {
    top: calc(328 / 390 * 100vw);
    right: calc(-45 / 390 * 100vw);
    width: calc(190 / 390 * 100vw);
    height: calc(284 / 390 * 100vw);
  }
  .page-wrap .kv__shadow-member--02-1 {
    top: calc(340 / 390 * 100vw);
    left: calc(-2 / 390 * 100vw);
    width: calc(210 / 390 * 100vw);
    height: calc(385 / 390 * 100vw);
  }
  .page-wrap .kv__shadow-member--02-2 {
    top: calc(292 / 390 * 100vw);
    right: calc(-39 / 390 * 100vw);
    width: calc(210 / 390 * 100vw);
    height: calc(284 / 390 * 100vw);
  }
  .page-wrap .kv__shadow-member--03-1 {
    top: calc(157 / 390 * 100vw);
    left: calc(116 / 390 * 100vw);
    width: calc(205 / 390 * 100vw);
    height: calc(136 / 390 * 100vw);
  }
  .page-wrap .kv__shadow-member--03-2 {
    top: calc(298 / 390 * 100vw);
    left: calc(-18 / 390 * 100vw);
    width: calc(190 / 390 * 100vw);
    height: calc(284 / 390 * 100vw);
  }
  .page-wrap .kv__shadow-member--front-03-1 {
    top: calc(-93 / 390 * 100vw);
    left: calc(66 / 390 * 100vw);
    width: calc(205 / 390 * 100vw);
    height: calc(136 / 390 * 100vw);
  }
  .page-wrap .kv-change__01 {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-change__01.js-active {
    display: block;
    opacity: 1;
    visibility: visible;
  }
  .page-wrap .kv-change__01.js-active .kv__object-member--01-1-1 {
    animation: kv-animation-1 2s steps(1) infinite;
  }
  .page-wrap .kv-change__01.js-active .kv__object-member--01-1-2 {
    animation: kv-animation-2 2s steps(1) infinite;
  }
  .page-wrap .kv-change__01 .kv__movie {
    top: calc(-20 / 390 * 100vw);
    right: calc(-27 / 390 * 100vw);
  }
  .page-wrap .kv-change__01 .kv__mainarea-bg svg {
    fill: #FF73D7;
  }
  .page-wrap .kv-change__01 .kv__object-member--01-1 {
    position: absolute;
    top: calc(32 / 390 * 100vw);
    left: calc(-56 / 390 * 100vw);
    width: calc(244 / 390 * 100vw);
    height: calc(285 / 390 * 100vw);
  }
  .page-wrap .kv-change__01 .kv__object-member--01-1-2 {
    opacity: 0;
  }
  .page-wrap .kv-change__01 .kv__object-member--01-1 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__01 .kv__object-member--01-1 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__01 .kv__object-member--01-2 {
    position: absolute;
    top: calc(78 / 390 * 100vw);
    right: calc(-99 / 390 * 100vw);
    width: calc(190 / 390 * 100vw);
    height: calc(284 / 390 * 100vw);
  }
  .page-wrap .kv-change__01 .kv__object-member--01-2 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__01 .kv__object-member--01-2 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__01 .kv__object-product--01 {
    position: absolute;
    top: calc(-77 / 390 * 100vw);
    left: calc(38 / 390 * 100vw);
    width: calc(91 / 390 * 100vw);
    z-index: -1;
  }
  .page-wrap .kv-change__01 .kv__text {
    position: absolute;
    top: calc(-79 / 390 * 100vw);
    right: calc(113 / 390 * 100vw);
    translate: 100% 0;
    width: calc(297 / 390 * 100vw);
    height: calc(127 / 390 * 100vw);
  }
  .page-wrap .kv-change__01 .kv__text .line--01 {
    position: absolute;
    top: 0;
    left: 0;
    rotate: -33.27deg;
  }
  .page-wrap .kv-change__01 .kv__text .line--01 .dotted:first-of-type {
    top: calc(-10 / 390 * 100vw);
    left: calc(1 / 390 * 100vw);
  }
  .page-wrap .kv-change__01 .kv__text .line--01 .dotted:last-of-type {
    top: calc(-9 / 390 * 100vw);
    left: calc(19 / 390 * 100vw);
  }
  .page-wrap .kv-change__01 .kv__text .line--02 {
    position: absolute;
    top: calc(15 / 390 * 100vw);
    left: calc(38 / 390 * 100vw);
    rotate: -22.78deg;
  }
  .page-wrap .kv-change__01 .kv__text .line--02 .dotted:first-of-type {
    top: calc(-7 / 390 * 100vw);
    right: calc(36 / 390 * 100vw);
  }
  .page-wrap .kv-change__01 .kv__text .line--02 .dotted:last-of-type {
    top: calc(-7 / 390 * 100vw);
    right: calc(16 / 390 * 100vw);
  }
  .page-wrap .kv-change__02 {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-change__02.js-active {
    display: block;
    opacity: 1;
    visibility: visible;
  }
  .page-wrap .kv-change__02 .kv__movie {
    top: calc(-20 / 390 * 100vw);
    left: calc(-26 / 390 * 100vw);
  }
  .page-wrap .kv-change__02 .kv__mainarea-bg svg {
    fill: #1DE7C9;
  }
  .page-wrap .kv-change__02 .kv__object-member--02-1 {
    position: absolute;
    top: calc(90 / 390 * 100vw);
    left: calc(-56 / 390 * 100vw);
    width: calc(210 / 390 * 100vw);
    height: calc(385 / 390 * 100vw);
  }
  .page-wrap .kv-change__02 .kv__object-member--02-1 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__02 .kv__object-member--02-1 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__02 .kv__object-member--02-2 {
    position: absolute;
    top: calc(42 / 390 * 100vw);
    right: calc(-93 / 390 * 100vw);
    width: calc(210 / 390 * 100vw);
    height: calc(284 / 390 * 100vw);
  }
  .page-wrap .kv-change__02 .kv__object-member--02-2 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__02 .kv__object-member--02-2 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__02 .kv__object-product--02 {
    position: absolute;
    top: calc(-72 / 390 * 100vw);
    right: calc(47 / 390 * 100vw);
    width: calc(106 / 390 * 100vw);
    z-index: -1;
  }
  .page-wrap .kv-change__02 .kv__text {
    position: absolute;
    top: calc(-106 / 390 * 100vw);
    right: calc(269 / 390 * 100vw);
    translate: 100% 0;
    width: calc(297 / 390 * 100vw);
    height: calc(127 / 390 * 100vw);
  }
  .page-wrap .kv-change__02 .kv__text .line--01 {
    position: absolute;
    top: 0;
    left: 0;
    rotate: 17.65deg;
  }
  .page-wrap .kv-change__02 .kv__text .line--01 .dotted:first-of-type {
    top: calc(-10 / 390 * 100vw);
    left: calc(1 / 390 * 100vw);
  }
  .page-wrap .kv-change__02 .kv__text .line--01 .dotted:last-of-type {
    top: calc(-9 / 390 * 100vw);
    left: calc(19 / 390 * 100vw);
  }
  .page-wrap .kv-change__02 .kv__text .line--02 {
    position: absolute;
    top: calc(41 / 390 * 100vw);
    left: calc(9 / 390 * 100vw);
    rotate: 9.22deg;
  }
  .page-wrap .kv-change__02 .kv__text .line--02 .dotted:first-of-type {
    top: calc(-8 / 390 * 100vw);
    right: calc(36 / 390 * 100vw);
  }
  .page-wrap .kv-change__02 .kv__text .line--02 .dotted:last-of-type {
    top: calc(-7 / 390 * 100vw);
    right: calc(16 / 390 * 100vw);
  }
  .page-wrap .kv-change__03 {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .page-wrap .kv-change__03.js-active {
    display: block;
    opacity: 1;
    visibility: visible;
  }
  .page-wrap .kv-change__03 .kv__movie {
    top: calc(-20 / 390 * 100vw);
    right: calc(-27 / 390 * 100vw);
  }
  .page-wrap .kv-change__03 .kv__mainarea-bg svg {
    fill: #FF9011;
  }
  .page-wrap .kv-change__03 .kv__object-member--03-1 {
    position: absolute;
    top: calc(-93 / 390 * 100vw);
    left: calc(66 / 390 * 100vw);
    width: calc(205 / 390 * 100vw);
    height: calc(136 / 390 * 100vw);
  }
  .page-wrap .kv-change__03 .kv__object-member--03-1 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__03 .kv__object-member--03-1 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__03 .kv__object-member--03-2 {
    position: absolute;
    top: calc(48 / 390 * 100vw);
    left: calc(-72 / 390 * 100vw);
    width: calc(190 / 390 * 100vw);
    height: calc(284 / 390 * 100vw);
  }
  .page-wrap .kv-change__03 .kv__object-member--03-2 img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .page-wrap .kv-change__03 .kv__object-member--03-2 img:nth-child(2) {
    opacity: 0;
  }
  .page-wrap .kv-change__03 .kv__text {
    position: absolute;
    top: calc(-145 / 390 * 100vw);
    left: calc(60 / 390 * 100vw);
    width: calc(297 / 390 * 100vw);
    height: calc(127 / 390 * 100vw);
  }
  .page-wrap .kv-change__03 .kv__text .line--01 {
    position: absolute;
    top: 0;
    left: 0;
    rotate: -30.65deg;
  }
  .page-wrap .kv-change__03 .kv__text .line--01 .dotted:first-of-type {
    top: calc(-10 / 390 * 100vw);
    left: calc(1 / 390 * 100vw);
  }
  .page-wrap .kv-change__03 .kv__text .line--01 .dotted:last-of-type {
    top: calc(-9 / 390 * 100vw);
    left: calc(19 / 390 * 100vw);
  }
  .page-wrap .kv-change__03 .kv__text .line--02 {
    position: absolute;
    top: calc(16 / 390 * 100vw);
    left: calc(43 / 390 * 100vw);
    rotate: -18.22deg;
  }
  .page-wrap .kv-change__03 .kv__text .line--02 .dotted:first-of-type {
    top: calc(-8 / 390 * 100vw);
    right: calc(36 / 390 * 100vw);
  }
  .page-wrap .kv-change__03 .kv__text .line--02 .dotted:last-of-type {
    top: calc(-7 / 390 * 100vw);
    right: calc(16 / 390 * 100vw);
  }
  .page-wrap .kv-change .js-active .kv-animation > img:first-child, .page-wrap .kv-change .js-active .kv-animation > picture:first-child, .page-wrap .kv-change .js-active .kv-shadow-animation > img:first-child, .page-wrap .kv-change .js-active .kv-shadow-animation > picture:first-child {
    animation: kv-animation-1 2s steps(1) infinite;
  }
  .page-wrap .kv-change .js-active .kv-animation > img:nth-child(2), .page-wrap .kv-change .js-active .kv-animation > picture:nth-child(2), .page-wrap .kv-change .js-active .kv-shadow-animation > img:nth-child(2), .page-wrap .kv-change .js-active .kv-shadow-animation > picture:nth-child(2) {
    animation: kv-animation-2 2s steps(1) infinite;
  }
}
@media screen and (min-width: 768px) {
  .page-wrap .outline {
    position: relative;
    margin-top: calc(-20 / 1512 * 100vw);
    background-color: #0037FF;
  }
  .page-wrap .outline__inner {
    position: relative;
    margin-inline: auto;
    padding-block: clamp(49.98px, 98 / 1512 * 100vw, 98px) clamp(71.4px, 140 / 1512 * 100vw, 140px);
    width: 100%;
    max-width: 1512px;
  }
  .page-wrap .outline__ttl {
    margin-inline: auto;
    width: clamp(312.12px, 612 / 1512 * 100vw, 612px);
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.2s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s;
    opacity: 0;
    scale: 1.2;
  }
  .page-wrap .outline__ttl.is-appear {
    opacity: 1;
    scale: 1;
  }
  .page-wrap .outline__ttl img {
    width: 100%;
  }
  .page-wrap .outline-bg-01 {
    position: absolute;
    top: clamp(96.9px, 190 / 1512 * 100vw, 190px);
    right: clamp(-41px, -41 / 1512 * 100vw, -20.91px);
    width: clamp(126.48px, 248 / 1512 * 100vw, 248px);
  }
  .page-wrap .outline-bg-02 {
    position: absolute;
    top: clamp(163.2px, 320 / 1512 * 100vw, 320px);
    left: clamp(-47px, -47 / 1512 * 100vw, -23.97px);
    width: clamp(124.95px, 245 / 1512 * 100vw, 245px);
  }
  .page-wrap .outline-bg-03 {
    position: absolute;
    top: clamp(498.78px, 978 / 1512 * 100vw, 978px);
    right: clamp(-100px, -100 / 1512 * 100vw, -51px);
    width: clamp(155.04px, 304 / 1512 * 100vw, 304px);
  }
  .page-wrap .outline-bg-04 {
    position: absolute;
    top: clamp(517.14px, 1014 / 1512 * 100vw, 1014px);
    left: clamp(-77px, -77 / 1512 * 100vw, -39.27px);
    width: clamp(116.28px, 228 / 1512 * 100vw, 228px);
  }
  .page-wrap .outline-bg-member-01 {
    position: absolute;
    top: clamp(229.5px, 450 / 1512 * 100vw, 450px);
    right: clamp(-450px, -450 / 1512 * 100vw, -229.5px);
    width: clamp(127.5px, 250 / 1512 * 100vw, 250px);
    transform-origin: 80% 55%;
  }
  .page-wrap .outline-bg-member-01-wrapper {
    position: absolute;
    top: clamp(220.32px, 432 / 1512 * 100vw, 432px);
    right: 0;
    width: clamp(127.5px, 250 / 1512 * 100vw, 250px);
  }
  .page-wrap .outline-bg-member-01-wrapper.is-appear .outline-bg-member-01 {
    animation: outline-member-01-appear 0.6s ease-in forwards, member-swaying 2s step-end 1s infinite;
  }
  @keyframes outline-member-01-appear {
    0% {
      top: clamp(102px, 200 / 1512 * 100vw, 200px);
      right: clamp(-250px, -250 / 1512 * 100vw, -127.5px);
    }
    85% {
      top: clamp(2.55px, 5 / 1512 * 100vw, 5px);
      right: clamp(-5px, -5 / 1512 * 100vw, -2.55px);
    }
    90% {
      top: clamp(7.65px, 15 / 1512 * 100vw, 15px);
      right: clamp(-15px, -15 / 1512 * 100vw, -7.65px);
    }
    100% {
      top: clamp(2.55px, 5 / 1512 * 100vw, 5px);
      right: clamp(-5px, -5 / 1512 * 100vw, -2.55px);
    }
  }
  .page-wrap .outline-bg-member-02 {
    position: absolute;
    top: clamp(357px, 700 / 1512 * 100vw, 700px);
    left: clamp(78.54px, 154 / 1512 * 100vw, 154px);
    width: clamp(180.03px, 353 / 1512 * 100vw, 353px);
    opacity: 0;
    transition: opacity 0s ease 0.6s;
  }
  .page-wrap .outline-bg-member-02.is-appear {
    opacity: 1;
    animation: outline-member-02-appear 0.6s ease-in 0.6s forwards, member-swaying 2s step-end 1.8s infinite;
  }
  @keyframes outline-member-02-appear {
    0% {
      top: clamp(357px, 700 / 1512 * 100vw, 700px);
      left: clamp(78.54px, 154 / 1512 * 100vw, 154px);
    }
    85% {
      top: clamp(321.3px, 630 / 1512 * 100vw, 630px);
      left: clamp(38.25px, 75 / 1512 * 100vw, 75px);
    }
    90% {
      top: clamp(306px, 600 / 1512 * 100vw, 600px);
      left: clamp(22.44px, 44 / 1512 * 100vw, 44px);
    }
    100% {
      top: clamp(311.61px, 611 / 1512 * 100vw, 611px);
      left: clamp(25.5px, 50 / 1512 * 100vw, 50px);
    }
  }
  .page-wrap .outline-bg-member-02-2 {
    top: clamp(311.61px, 611 / 1512 * 100vw, 611px);
    left: clamp(30.6px, 60 / 1512 * 100vw, 60px);
    opacity: 0;
  }
  .page-wrap .outline-bg-member-02-2.is-appear {
    animation: outline-member-02-2-appear 0s ease-in 1.6s forwards;
  }
  @keyframes outline-member-02-2-appear {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
  .page-wrap .outline-bg-member-03 {
    position: absolute;
    right: clamp(98.43px, 193 / 1512 * 100vw, 193px);
    width: clamp(198.9px, 390 / 1512 * 100vw, 390px);
  }
  .page-wrap .outline-bg-member-03-1 {
    bottom: clamp(-94px, -94 / 1512 * 100vw, -47.94px);
  }
  .page-wrap .outline-bg-member-03-1.is-appear {
    animation: outline-member-03-appear 0.2s ease-in 0.3s forwards;
  }
  @keyframes outline-member-03-appear {
    0% {
      bottom: clamp(-94px, -94 / 1512 * 100vw, -47.94px);
    }
    85% {
      bottom: clamp(10.2px, 20 / 1512 * 100vw, 20px);
    }
    90% {
      bottom: clamp(0px, 0 / 1512 * 100vw, 0px);
    }
    100% {
      bottom: clamp(8.16px, 16 / 1512 * 100vw, 16px);
    }
  }
  .page-wrap .outline-bg-member-03-2 {
    bottom: clamp(80.07px, 157 / 1512 * 100vw, 157px);
    z-index: 1;
    transition: opacity 0s ease 0.6s;
    opacity: 0;
    rotate: -2deg;
  }
  .page-wrap .outline-bg-member-03-2.is-appear {
    opacity: 1;
  }
  .page-wrap .outline-anchorarea {
    margin-top: clamp(19.38px, 38 / 1512 * 100vw, 38px) !important;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.2s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s;
    opacity: 0;
    scale: 1.2;
  }
  .page-wrap .outline-anchorarea.is-appear {
    opacity: 1;
    scale: 1;
  }
  .page-wrap .outline-anchorarea .anchors {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    margin-inline: auto;
    width: clamp(438.6px, 860 / 1512 * 100vw, 860px);
  }
  .page-wrap .outline-anchorarea .anchor {
    width: clamp(197.88px, 388 / 1512 * 100vw, 388px);
    transition: opacity 0.3s ease;
  }
  .page-wrap .outline-anchorarea .anchor:hover {
    opacity: 0.8;
  }
  .page-wrap .outline-anchorarea .anchor__link {
    display: block;
    position: relative;
    width: 100%;
  }
  .page-wrap .outline-anchorarea .anchor__inner {
    position: relative;
    padding: clamp(9.18px, 18 / 1512 * 100vw, 18px) clamp(12.24px, 24 / 1512 * 100vw, 24px) clamp(9.69px, 19 / 1512 * 100vw, 19px);
    filter: drop-shadow(clamp(3.57px, 7 / 1512 * 100vw, 7px) clamp(4.08px, 8 / 1512 * 100vw, 8px) 0 #FFE100);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzODgiIGhlaWdodD0iMTI4IiB2aWV3Qm94PSIwIDAgMzg4IDEyOCIgZmlsbD0ibm9uZSI+ICAgPHBhdGggZD0iTTAgOTAuMzkxN0w1LjQxNTc1IDE5LjEzNEw0OC43NDE4IDBIMzUwLjQ3N0wzODggMjguMzcxMUwzODIuNTg0IDk4LjMwOTNMMzUwLjQ3NyAxMjhIMzAuNTYwM0wwIDkwLjM5MTdaIiBmaWxsPSIjRkY3M0Q3Ii8+IDwvc3ZnPg==");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  .page-wrap .outline-anchorarea .anchor .deco {
    display: grid;
    place-content: center;
    position: absolute;
    top: clamp(-12px, -12 / 1512 * 100vw, -6.12px);
    left: clamp(-23px, -23 / 1512 * 100vw, -11.73px);
    width: clamp(45.9px, 90 / 1512 * 100vw, 90px);
    height: clamp(45.9px, 90 / 1512 * 100vw, 90px);
    border-radius: 50%;
    background-color: #FFE100;
    z-index: 1;
  }
  .page-wrap .outline-anchorarea .anchor .main-text {
    margin-inline: auto;
    width: clamp(102px, 200 / 1512 * 100vw, 200px);
  }
  .page-wrap .outline-anchorarea .anchor .main-text img {
    width: 100%;
  }
  .page-wrap .outline-anchorarea .anchor .sub-text {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: clamp(8.16px, 16 / 1512 * 100vw, 16px);
    margin-inline: auto;
    padding-block: clamp(1.02px, 2 / 1512 * 100vw, 2px);
    width: clamp(137.7px, 270 / 1512 * 100vw, 270px);
    border-radius: clamp(18.87px, 37 / 1512 * 100vw, 37px);
    border: 1px solid #0037FF;
    background-color: #fff;
    line-height: 1.3;
    color: #0037FF;
  }
  .page-wrap .outline-anchorarea .anchor .sub-text .ja {
    margin-right: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    font-weight: 900;
    font-size: clamp(6.63px, 13 / 1512 * 100vw, 13px);
    line-height: 1.3;
    letter-spacing: 0.18em;
  }
  .page-wrap .outline-anchorarea .anchor .sub-text .date .num {
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: clamp(14.79px, 29 / 1512 * 100vw, 29px);
    letter-spacing: 0.1em;
  }
  .page-wrap .outline-anchorarea .anchor .sub-text .date .en {
    margin-left: clamp(1.02px, 2 / 1512 * 100vw, 2px);
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: clamp(9.18px, 18 / 1512 * 100vw, 18px);
    letter-spacing: 0.08em;
  }
  .page-wrap .outline-anchorarea .anchor .sub-text .date .line {
    display: inline-block;
    margin-inline: clamp(2.55px, 5 / 1512 * 100vw, 5px);
    width: clamp(4.59px, 9 / 1512 * 100vw, 9px);
    height: 2px;
    background-color: #0037FF;
    vertical-align: super;
  }
  .page-wrap .outline-anchorarea .anchor .icon {
    display: block;
    position: absolute;
    top: 50%;
    right: clamp(11.73px, 23 / 1512 * 100vw, 23px);
    translate: 0 -50%;
    width: clamp(12.75px, 25 / 1512 * 100vw, 25px);
    height: clamp(12.75px, 25 / 1512 * 100vw, 25px);
    border-radius: 50%;
    border: 2px solid #0037FF;
    background-color: #FFE100;
    filter: none;
  }
  .page-wrap .outline-anchorarea .anchor .icon::after {
    content: "";
    position: absolute;
    top: 42%;
    left: 50%;
    translate: -50% -50%;
    width: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    height: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    border-top: 2px solid #0037FF;
    border-right: 2px solid #0037FF;
    rotate: 135deg;
  }
  .page-wrap .outline-anchorarea .anchor--01 .deco img {
    position: relative;
    top: clamp(-3px, -3 / 1512 * 100vw, -1.53px);
    width: clamp(31.11px, 61 / 1512 * 100vw, 61px);
  }
  .page-wrap .outline-anchorarea .anchor--02 .deco img {
    position: relative;
    top: clamp(-3px, -3 / 1512 * 100vw, -1.53px);
    width: clamp(28.05px, 55 / 1512 * 100vw, 55px);
  }
  .page-wrap .outline-content {
    position: relative;
    margin-top: clamp(39.78px, 78 / 1512 * 100vw, 78px);
    filter: drop-shadow(clamp(8.16px, 16 / 1512 * 100vw, 16px) clamp(8.16px, 16 / 1512 * 100vw, 16px) 0 #FFE100);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjE1IiBoZWlnaHQ9Ijg1MiIgdmlld0JveD0iMCAwIDEyMTUgODUyIiBmaWxsPSJub25lIj4gICA8cGF0aCBkPSJNMTA5My41IDBMMTM1IDE4LjIxOTVMMCAzNjEuMDMzTDg5LjUgODUyTDExNTIuNSA4MTIuMjA1TDEyMTUgNDYyLjY3OUwxMDkzLjUgMFoiIGZpbGw9IndoaXRlIi8+IDwvc3ZnPg==");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1), translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    opacity: 0;
    translate: 0 30px;
    scale: 0.3;
  }
  .page-wrap .outline-content.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .outline-content__inner {
    padding: clamp(34.68px, 68 / 1512 * 100vw, 68px) clamp(62.73px, 123 / 1512 * 100vw, 123px) clamp(59.67px, 117 / 1512 * 100vw, 117px) clamp(92.31px, 181 / 1512 * 100vw, 181px);
    margin-inline: auto;
    width: clamp(619.65px, 1215 / 1512 * 100vw, 1215px);
    clip-path: shape(from 90% 0%, line to 11.11% 2.14%, line to 0% 42.37%, line to 7.37% 100%, line to 94.86% 95.33%, line to 100% 54.31%, line to 90% 0%, close);
  }
  .page-wrap .outline-content__deco {
    display: grid;
    place-content: center;
    margin-inline: auto;
    width: clamp(217.26px, 426 / 1512 * 100vw, 426px);
    height: clamp(39.27px, 77 / 1512 * 100vw, 77px);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MjYiIGhlaWdodD0iNzciIHZpZXdCb3g9IjAgMCA0MjYgNzciIGZpbGw9Im5vbmUiPiAgIDxwYXRoIGQ9Ik0wIDU0LjM3NjNMNS45NDYxNiAxMS41MTAzTDUzLjUxNTUgMEgzODQuODAyTDQyNiAxNy4wNjdMNDIwLjA1NCA1OS4xMzkyTDM4NC44MDIgNzdIMzMuNTUzM0wwIDU0LjM3NjNaIiBmaWxsPSIjRkY3M0Q3Ii8+IDwvc3ZnPg==");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.5s, translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.5s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.5s;
    opacity: 0;
    translate: 0 20px;
    scale: 0.3;
  }
  .page-wrap .outline-content__deco.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .outline-content__deco img {
    width: clamp(162.69px, 319 / 1512 * 100vw, 319px);
  }
  .page-wrap .outline-content__ttl {
    margin-top: clamp(21.93px, 43 / 1512 * 100vw, 43px);
    font-weight: 600;
    font-size: clamp(18.36px, 36 / 1512 * 100vw, 36px);
    line-height: 1.25;
    letter-spacing: 0.19em;
    text-align: center;
  }
  .page-wrap .outline-content__btnarea {
    margin-top: clamp(15.3px, 30 / 1512 * 100vw, 30px);
    text-align: center;
  }
  .page-wrap .outline-content__btnlink {
    display: grid;
    place-content: center;
    position: relative;
    margin-inline: auto;
    width: clamp(154.02px, 302 / 1512 * 100vw, 302px);
    height: clamp(32.64px, 64 / 1512 * 100vw, 64px);
    border-radius: clamp(32.64px, 64 / 1512 * 100vw, 64px);
    border: 3px solid #0037FF;
    background-color: #FFE100;
    box-shadow: 0 clamp(3.06px, 6 / 1512 * 100vw, 6px) 0 0 #0037FF;
    font-weight: 600;
    font-size: clamp(9.69px, 19 / 1512 * 100vw, 19px);
    letter-spacing: 0.2em;
    transition: opacity 0.3s ease;
  }
  .page-wrap .outline-content__btnlink:hover {
    opacity: 0.8;
  }
  .page-wrap .outline-content__btnlink::after {
    content: "";
    position: absolute;
    top: 50%;
    right: clamp(18.87px, 37 / 1512 * 100vw, 37px);
    translate: 0 -50%;
    width: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    height: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    rotate: 45deg;
  }
  .page-wrap .outline-content .product {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    column-gap: clamp(15.81px, 31 / 1512 * 100vw, 31px);
    margin-top: clamp(32.64px, 64 / 1512 * 100vw, 64px) !important;
  }
  .page-wrap .outline-content .product__imgarea {
    width: clamp(214.2px, 420 / 1512 * 100vw, 420px);
  }
  .page-wrap .outline-content .product__imgbox {
    display: flex;
    justify-content: space-between;
    column-gap: clamp(8.67px, 17 / 1512 * 100vw, 17px);
  }
  .page-wrap .outline-content .product__imgbox img {
    width: 48%;
  }
  .page-wrap .outline-content .product__imgtext {
    display: flex;
    align-items: center;
    column-gap: clamp(9.18px, 18 / 1512 * 100vw, 18px);
    margin-top: clamp(6.12px, 12 / 1512 * 100vw, 12px);
  }
  .page-wrap .outline-content .product__imgtext-main {
    font-weight: 700;
    font-size: clamp(9.69px, 19 / 1512 * 100vw, 19px);
    letter-spacing: 0.1em;
  }
  .page-wrap .outline-content .product__imgtext-sub {
    display: inline-block;
    padding: clamp(1.53px, 3 / 1512 * 100vw, 3px) clamp(4.08px, 8 / 1512 * 100vw, 8px);
    border: 1px solid #000;
    font-weight: 500;
    font-size: clamp(6.12px, 12 / 1512 * 100vw, 12px);
    line-height: 1.2;
    letter-spacing: 0.1em;
  }
  .page-wrap .outline-content .product__textarea {
    padding-bottom: clamp(19.38px, 38 / 1512 * 100vw, 38px);
  }
  .page-wrap .outline-content .product__maintext {
    font-weight: 600;
    font-size: clamp(9.69px, 19 / 1512 * 100vw, 19px);
    line-height: 2.21;
    letter-spacing: 0.14em;
  }
  .page-wrap .outline-content .product__subtext {
    margin-top: clamp(8.67px, 17 / 1512 * 100vw, 17px);
    font-weight: 400;
    font-size: clamp(7.14px, 14 / 1512 * 100vw, 14px);
    line-height: 2.28;
    letter-spacing: 0.15em;
  }
}
@media screen and (max-width: 767px) {
  .page-wrap .outline {
    position: relative;
    margin-top: calc(-20 / 390 * 100vw);
    background-color: #0037FF;
  }
  .page-wrap .outline__inner {
    position: relative;
    padding-block: calc(70 / 390 * 100vw) calc(60 / 390 * 100vw);
  }
  .page-wrap .outline__ttl {
    margin-inline: auto;
    width: calc(328 / 390 * 100vw);
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.2s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s;
    opacity: 0;
    scale: 1.2;
  }
  .page-wrap .outline__ttl.is-appear {
    opacity: 1;
    scale: 1;
  }
  .page-wrap .outline__ttl img {
    width: 100%;
  }
  .page-wrap .outline-bg-01 {
    position: absolute;
    top: calc(182 / 390 * 100vw);
    right: calc(-35 / 390 * 100vw);
    width: calc(155 / 390 * 100vw);
  }
  .page-wrap .outline-bg-04 {
    position: absolute;
    top: calc(980 / 390 * 100vw);
    right: calc(-61 / 390 * 100vw);
    width: calc(121 / 390 * 100vw);
  }
  .page-wrap .outline-bg-05 {
    position: absolute;
    top: calc(334 / 390 * 100vw);
    left: calc(-83 / 390 * 100vw);
    width: calc(153 / 390 * 100vw);
  }
  .page-wrap .outline-bg-06 {
    position: absolute;
    top: calc(526 / 390 * 100vw);
    right: calc(-55 / 390 * 100vw);
    width: calc(122 / 390 * 100vw);
  }
  .page-wrap .outline-bg-07 {
    position: absolute;
    top: calc(763 / 390 * 100vw);
    left: calc(-50 / 390 * 100vw);
    width: calc(130 / 390 * 100vw);
  }
  .page-wrap .outline-bg-08 {
    position: absolute;
    top: calc(1117 / 390 * 100vw);
    left: calc(-61 / 390 * 100vw);
    width: calc(121 / 390 * 100vw);
  }
  .page-wrap .outline-bg-member-01 {
    position: absolute;
    top: calc(566 / 390 * 100vw);
    right: calc(-100 / 390 * 100vw);
    width: calc(179 / 390 * 100vw);
    z-index: 1;
    transform-origin: 100% 50%;
  }
  .page-wrap .outline-bg-member-01.is-appear {
    animation: outline-member-01-appear 0.4s ease-in 0.4s forwards, member-swaying 2s step-end 1.5s infinite;
  }
  @keyframes outline-member-01-appear {
    0% {
      right: calc(-100 / 390 * 100vw);
    }
    70% {
      right: calc(-8 / 390 * 100vw);
    }
    85% {
      right: calc(-25 / 390 * 100vw);
    }
    100% {
      right: calc(-3 / 390 * 100vw);
    }
  }
  @keyframes member-swaying-outline-01 {
    0% {
      transform: rotate(12deg);
    }
    10% {
      transform: rotate(7deg);
    }
    20% {
      transform: rotate(12deg);
    }
    30% {
      transform: rotate(7deg);
    }
    100% {
      transform: rotate(12deg);
    }
  }
  .page-wrap .outline-bg-member-02 {
    position: absolute;
    top: calc(600 / 390 * 100vw);
    left: calc(-32 / 390 * 100vw);
    width: calc(274 / 390 * 100vw);
    rotate: 21deg;
    opacity: 0;
    transition: opacity 0s ease 0.6s;
  }
  .page-wrap .outline-bg-member-02-2 {
    rotate: 11deg;
  }
  .page-wrap .outline-bg-member-02.is-appear {
    opacity: 1;
    animation: outline-member-02-appear 0.6s ease-in 0.6s forwards, member-swaying-outline-02 2s step-end 1.8s infinite;
  }
  @keyframes outline-member-02-appear {
    0% {
      top: calc(623 / 390 * 100vw);
      left: calc(-32 / 390 * 100vw);
    }
    75% {
      top: calc(538 / 390 * 100vw);
      left: calc(-83 / 390 * 100vw);
    }
    85% {
      top: calc(548 / 390 * 100vw);
      left: calc(-70 / 390 * 100vw);
    }
    100% {
      top: calc(544 / 390 * 100vw);
      left: calc(-78 / 390 * 100vw);
    }
  }
  @keyframes member-swaying-outline-02 {
    0% {
      rotate: 23deg;
    }
    10% {
      rotate: 19deg;
    }
    20% {
      rotate: 23deg;
    }
    30% {
      rotate: 21deg;
    }
    100% {
      rotate: 21deg;
    }
  }
  .page-wrap .outline-bg-member-02-2 {
    top: calc(544 / 390 * 100vw);
    left: calc(-70 / 390 * 100vw);
    opacity: 0;
  }
  .page-wrap .outline-bg-member-02-2.is-appear {
    animation: outline-member-02-2-appear 0s ease-in 1.6s forwards;
  }
  @keyframes outline-member-02-2-appear {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
  .page-wrap .outline-anchorarea {
    margin-top: calc(43 / 390 * 100vw) !important;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.2s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s;
    opacity: 0;
    scale: 1.2;
  }
  .page-wrap .outline-anchorarea.is-appear {
    opacity: 1;
    scale: 1;
  }
  .page-wrap .outline-anchorarea .anchors {
    display: grid;
    row-gap: calc(31 / 390 * 100vw);
    margin-inline: auto;
    width: calc(299 / 390 * 100vw);
  }
  .page-wrap .outline-anchorarea .anchor {
    width: 100%;
  }
  .page-wrap .outline-anchorarea .anchor__link {
    display: block;
    position: relative;
    width: 100%;
  }
  .page-wrap .outline-anchorarea .anchor__inner {
    position: relative;
    padding: calc(16 / 390 * 100vw) calc(46 / 390 * 100vw) calc(17 / 390 * 100vw);
    filter: drop-shadow(calc(4 / 390 * 100vw) calc(6 / 390 * 100vw) 0 #FFE100);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyODEiIGhlaWdodD0iMTE5IiB2aWV3Qm94PSIwIDAgMjgxIDExOSIgZmlsbD0ibm9uZSI+ICAgPHBhdGggZD0iTTAgODMuNjc0N0wzLjkxMzQyIDE3LjcxMjJMMzUuMjIwNyAwSDI1My4yNTRMMjgwLjM2OCAyNi4yNjI5TDI3Ni40NTUgOTEuMDAzOUwyNTMuMjU0IDExOC40ODhIMjIuMDgyOEwwIDgzLjY3NDdaIiBmaWxsPSIjRkY3M0Q3Ii8+IDwvc3ZnPg==");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    line-height: 1.3;
  }
  .page-wrap .outline-anchorarea .anchor .deco {
    display: grid;
    place-content: center;
    position: absolute;
    top: calc(-9 / 390 * 100vw);
    left: calc(-31 / 390 * 100vw);
    width: calc(74 / 390 * 100vw);
    height: calc(74 / 390 * 100vw);
    border-radius: 50%;
    background-color: #FFE100;
    z-index: 1;
  }
  .page-wrap .outline-anchorarea .anchor .main-text {
    margin-inline: auto;
    width: calc(166 / 390 * 100vw);
  }
  .page-wrap .outline-anchorarea .anchor .main-text img {
    width: 100%;
  }
  .page-wrap .outline-anchorarea .anchor .sub-text {
    display: grid;
    margin-top: calc(11 / 390 * 100vw);
    margin-inline: auto;
    padding-block: calc(4 / 390 * 100vw) calc(2 / 390 * 100vw);
    width: calc(189 / 390 * 100vw);
    border-radius: calc(37 / 390 * 100vw);
    border: 2px solid #0037FF;
    background-color: #fff;
    text-align: center;
    color: #0037FF;
  }
  .page-wrap .outline-anchorarea .anchor .sub-text .ja {
    font-weight: 900;
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.2;
    letter-spacing: 0.18em;
  }
  .page-wrap .outline-anchorarea .anchor .sub-text .date .num {
    margin-left: calc(2 / 390 * 100vw);
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: calc(24 / 390 * 100vw);
    line-height: 1;
    letter-spacing: 0.1em;
  }
  .page-wrap .outline-anchorarea .anchor .sub-text .date .en {
    margin-left: calc(2 / 390 * 100vw);
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: calc(15 / 390 * 100vw);
    letter-spacing: 0.08em;
  }
  .page-wrap .outline-anchorarea .anchor .sub-text .date .line {
    display: inline-block;
    margin-inline: calc(4 / 390 * 100vw);
    width: calc(7 / 390 * 100vw);
    height: 2px;
    background-color: #0037FF;
    vertical-align: super;
  }
  .page-wrap .outline-anchorarea .anchor .icon {
    display: block;
    position: absolute;
    top: 50%;
    right: calc(20 / 390 * 100vw);
    translate: 0 -50%;
    width: calc(21 / 390 * 100vw);
    height: calc(21 / 390 * 100vw);
    border-radius: 50%;
    border: 2px solid #0037FF;
    background-color: #FFE100;
    filter: none;
  }
  .page-wrap .outline-anchorarea .anchor .icon::after {
    content: "";
    position: absolute;
    top: 46%;
    left: 50%;
    translate: -50% -50%;
    width: calc(5 / 390 * 100vw);
    height: calc(5 / 390 * 100vw);
    border-top: 2px solid #0037FF;
    border-right: 2px solid #0037FF;
    rotate: 135deg;
  }
  .page-wrap .outline-anchorarea .anchor--01 .deco img {
    position: relative;
    top: calc(-2 / 390 * 100vw);
    width: calc(50 / 390 * 100vw);
  }
  .page-wrap .outline-anchorarea .anchor--02 .deco img {
    position: relative;
    top: calc(-2 / 390 * 100vw);
    width: calc(51 / 390 * 100vw);
  }
  .page-wrap .outline-content {
    margin-top: calc(49 / 390 * 100vw);
    filter: drop-shadow(calc(8 / 390 * 100vw) calc(10 / 390 * 100vw) 0 #FFE100);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzNDQiIGhlaWdodD0iODUxIiB2aWV3Qm94PSIwIDAgMzQ0IDg1MSIgZmlsbD0ibm9uZSI+ICAgPHBhdGggZD0iTTMwNC40NzcgMEw0MS4xMjMgMy40NTc4M0wwIDYxLjU1NjhWNzk2LjkxTDUzLjYyIDg1MC43MjJIMjkyLjEyNEwzMzQuNDg2IDc5MS45MTdMMzQzLjQ4MyA0Ny4xNzQ1TDMwNC40NzcgMFoiIGZpbGw9IndoaXRlIi8+IDwvc3ZnPg==");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1), translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    opacity: 0;
    translate: 0 30px;
    scale: 0.3;
  }
  .page-wrap .outline-content.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .outline-content__inner {
    padding: calc(41 / 390 * 100vw) calc(40 / 390 * 100vw) calc(51 / 390 * 100vw);
    margin-inline: auto;
    width: calc(343 / 390 * 100vw);
  }
  .page-wrap .outline-content__deco {
    display: grid;
    place-content: center;
    margin-inline: auto;
    width: calc(239 / 390 * 100vw);
    height: calc(50 / 390 * 100vw);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNDAiIGhlaWdodD0iNTEiIHZpZXdCb3g9IjAgMCAyNDAgNTEiIGZpbGw9Im5vbmUiPiAgIDxwYXRoIGQ9Ik0wIDM1LjUwMzVMMy4zMzk1MSA3LjUxNTM1TDMwLjA1NTYgMEgyMTYuMTE0TDIzOS4yNTIgMTEuMTQzNEwyMzUuOTEyIDM4LjYxMzNMMjE2LjExNCA1MC4yNzUxSDE4Ljg0NDRMMCAzNS41MDM1WiIgZmlsbD0iI0ZGNzNENyIvPiA8L3N2Zz4=");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.5s, translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.5s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.5s;
    opacity: 0;
    translate: 0 20px;
    scale: 0.3;
  }
  .page-wrap .outline-content__deco.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .outline-content__deco img {
    width: calc(184 / 390 * 100vw);
  }
  .page-wrap .outline-content__ttl {
    margin-top: calc(23 / 390 * 100vw);
    font-weight: 700;
    font-size: calc(22 / 390 * 100vw);
    line-height: 1.59;
    letter-spacing: 0.18em;
    text-align: center;
  }
  .page-wrap .outline-content__btnarea {
    margin-top: calc(27 / 390 * 100vw);
    text-align: center;
  }
  .page-wrap .outline-content__btnlink {
    display: grid;
    place-content: center;
    position: relative;
    margin-inline: auto;
    width: calc(230 / 390 * 100vw);
    height: calc(50 / 390 * 100vw);
    border-radius: calc(64 / 390 * 100vw);
    border: 2px solid #0037FF;
    background-color: #FFE100;
    box-shadow: 0 calc(4.59 / 390 * 100vw) 0 0 #0037FF;
    font-weight: 700;
    font-size: calc(15 / 390 * 100vw);
    letter-spacing: 0.17em;
  }
  .page-wrap .outline-content__btnlink::after {
    content: "";
    position: absolute;
    top: 50%;
    right: calc(28 / 390 * 100vw);
    translate: 0 -50%;
    width: calc(6 / 390 * 100vw);
    height: calc(6 / 390 * 100vw);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    rotate: 45deg;
  }
  .page-wrap .outline-content .product {
    display: grid;
    margin-top: calc(18 / 390 * 100vw) !important;
  }
  .page-wrap .outline-content .product__imgarea {
    grid-row: 2/3;
    margin-top: calc(27 / 390 * 100vw) !important;
    width: calc(255 / 390 * 100vw);
  }
  .page-wrap .outline-content .product__imgbox {
    display: flex;
    justify-content: space-between;
    column-gap: calc(10 / 390 * 100vw);
  }
  .page-wrap .outline-content .product__imgbox img {
    width: 50%;
  }
  .page-wrap .outline-content .product__imgtext {
    margin-top: calc(12 / 390 * 100vw);
    text-align: center;
  }
  .page-wrap .outline-content .product__imgtext-main {
    font-weight: 700;
    font-size: calc(20 / 390 * 100vw);
    letter-spacing: 0.15em;
  }
  .page-wrap .outline-content .product__imgtext-sub {
    display: inline-block;
    position: relative;
    top: calc(-3 / 390 * 100vw);
    padding: calc(3 / 390 * 100vw) calc(12 / 390 * 100vw);
    border: 1px solid #000;
    font-weight: 500;
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.2;
    letter-spacing: 0.16em;
  }
  .page-wrap .outline-content .product__textarea {
    display: contents;
  }
  .page-wrap .outline-content .product__maintext {
    grid-row: 1/2;
    font-weight: 700;
    font-size: calc(15 / 390 * 100vw);
    line-height: 2.27;
    letter-spacing: 0.1em;
    text-align: justify;
  }
  .page-wrap .outline-content .product__subtext {
    margin-top: calc(17 / 390 * 100vw);
    font-weight: 400;
    font-size: calc(13 / 390 * 100vw);
    line-height: 2.15;
    letter-spacing: 0.14em;
    text-align: justify;
  }
}
@media screen and (min-width: 768px) {
  .page-wrap .movie {
    position: relative;
    margin-top: calc(-5 / 390 * 100vw);
    clip-path: shape(from 100% 1.67%, vline to 0.18%, curve by -3.5% 0.29% with -1.58% 0.14%/-3.27% 0.29%, hline by -11.86%, line by -8.06% -0.47%, hline by -21.78%, line by -26.14% 0.47%, line to 13.78% 0%, line to 0% 0.22%, vline by 99.78%, hline by 99.93%, line by 0.07% -98.33%, close);
    background-color: #00CCFF;
  }
  .page-wrap .movie__inner {
    position: relative;
    margin-inline: auto;
    padding-block: clamp(79.05px, 155 / 1512 * 100vw, 155px) clamp(66.81px, 131 / 1512 * 100vw, 131px);
    width: 100%;
    max-width: 1512px;
  }
  .page-wrap .movie-wrapper {
    position: relative;
  }
  .page-wrap .movie-bg-stitch {
    display: inline-block;
    position: absolute;
    top: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    left: 0;
    width: 100%;
    height: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto clamp(17.85px, 35 / 1512 * 100vw, 35px);
  }
  .page-wrap .movie-bg-01 {
    position: absolute;
    top: clamp(102px, 200 / 1512 * 100vw, 200px);
    right: clamp(-200px, -200 / 1512 * 100vw, -102px);
    width: clamp(213.69px, 419 / 1512 * 100vw, 419px);
  }
  .page-wrap .movie-bg-02 {
    position: absolute;
    top: clamp(163.2px, 320 / 1512 * 100vw, 320px);
    left: clamp(-105px, -105 / 1512 * 100vw, -53.55px);
    width: clamp(114.75px, 225 / 1512 * 100vw, 225px);
  }
  .page-wrap .movie-bg-03 {
    position: absolute;
    top: clamp(311.1px, 610 / 1512 * 100vw, 610px);
    left: clamp(15.3px, 30 / 1512 * 100vw, 30px);
    width: clamp(180.03px, 353 / 1512 * 100vw, 353px);
  }
  .page-wrap .movie-bg-04 {
    position: absolute;
    top: clamp(408px, 800 / 1512 * 100vw, 800px);
    right: clamp(12.24px, 24 / 1512 * 100vw, 24px);
    width: clamp(178.5px, 350 / 1512 * 100vw, 350px);
  }
  .page-wrap .movie-bg-05 {
    position: absolute;
    top: clamp(617.1px, 1210 / 1512 * 100vw, 1210px);
    left: clamp(-186px, -186 / 1512 * 100vw, -94.86px);
    width: clamp(218.79px, 429 / 1512 * 100vw, 429px);
  }
  .page-wrap .movie-bg-06 {
    position: absolute;
    top: clamp(673.2px, 1320 / 1512 * 100vw, 1320px);
    right: clamp(-220px, -220 / 1512 * 100vw, -112.2px);
    width: clamp(180.03px, 353 / 1512 * 100vw, 353px);
  }
  .page-wrap .movie-bg-member-wrapper {
    position: relative;
    margin-inline: auto;
    width: 100%;
    max-width: 1512px;
  }
  .page-wrap .movie-bg-member-01 {
    position: absolute;
    top: clamp(-330px, -330 / 1512 * 100vw, -168.3px);
    left: clamp(9.69px, 19 / 1512 * 100vw, 19px);
    width: clamp(184.11px, 361 / 1512 * 100vw, 361px);
    z-index: 1;
    animation: member-swaying 2s step-end 0.3s infinite;
  }
  .page-wrap .movie-bg-member-02 {
    position: absolute;
    top: clamp(65.28px, 128 / 1512 * 100vw, 128px);
    left: clamp(96.9px, 190 / 1512 * 100vw, 190px);
    width: clamp(66.3px, 130 / 1512 * 100vw, 130px);
    z-index: 1;
    animation: member-swaying 2s step-end -0.3s infinite;
    opacity: 0;
    transition: opacity 0s ease 0.6s, scale 0.3s ease 0.6s;
    scale: 0.8;
  }
  .page-wrap .movie-bg-member-02.is-appear {
    opacity: 1;
    scale: 1;
  }
  .page-wrap .movie-bg-member-03 {
    position: absolute;
    top: clamp(295.8px, 580 / 1512 * 100vw, 580px);
    right: clamp(103.53px, 203 / 1512 * 100vw, 203px);
    width: clamp(53.55px, 105 / 1512 * 100vw, 105px);
    opacity: 0;
    transition: opacity 0s ease 0.6s;
  }
  .page-wrap .movie-bg-member-03.is-appear {
    opacity: 1;
    animation: movie-member-03-appear 0.4s ease-in 0.4s forwards, member-swaying 2s step-end 1.2s infinite;
  }
  @keyframes movie-member-03-appear {
    0% {
      right: clamp(103.53px, 203 / 1512 * 100vw, 203px);
    }
    85% {
      right: clamp(60.18px, 118 / 1512 * 100vw, 118px);
    }
    90% {
      right: clamp(47.43px, 93 / 1512 * 100vw, 93px);
    }
    100% {
      right: clamp(52.53px, 103 / 1512 * 100vw, 103px);
    }
  }
  .page-wrap .movie-bg-member-04 {
    position: absolute;
    top: clamp(-150px, -150 / 1512 * 100vw, -76.5px);
    right: clamp(15.3px, 30 / 1512 * 100vw, 30px);
    width: clamp(66.3px, 130 / 1512 * 100vw, 130px);
    z-index: 1;
    animation: member-swaying 2s step-end 0.1s infinite;
  }
  .page-wrap .movie-content {
    position: relative;
    margin-inline: auto;
    width: clamp(566.1px, 1110 / 1512 * 100vw, 1110px);
    padding-bottom: clamp(10.2px, 20 / 1512 * 100vw, 20px);
    overflow: hidden;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1), translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    opacity: 0;
    translate: 0 30px;
    scale: 0.3;
  }
  .page-wrap .movie-content.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .movie-content__inner {
    padding-block: clamp(24.48px, 48 / 1512 * 100vw, 48px) clamp(67.32px, 132 / 1512 * 100vw, 132px);
    width: clamp(561px, 1100 / 1512 * 100vw, 1100px);
    filter: drop-shadow(clamp(12.24px, 24 / 1512 * 100vw, 24px) clamp(10.71px, 21 / 1512 * 100vw, 21px) 0 #0037FF);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMTAwIDE5ODQiPiAgIDxnPiAgICAgPHBhdGggZD0iTTAsMjA4LjM5TDE2My4wMywwaDc4MC4wNGwxNDMuODksMjAwLjM0LDEzLjA0LDE2NDkuNDgtMTAxLjI4LDEzNC4xN0gxMzYuMDNMMCwxODQ5LjgzVjIwOC4zOVoiIHN0eWxlPSJmaWxsOiAjZmZmOyIvPiAgIDwvZz4gPC9zdmc+");
    background-size: 108% 102%;
    background-repeat: no-repeat;
    background-position: center;
  }
  .page-wrap .movie-content__ttl {
    display: grid;
    place-content: center;
    margin-inline: auto;
    width: clamp(210.63px, 413 / 1512 * 100vw, 413px);
    height: clamp(40.29px, 79 / 1512 * 100vw, 79px);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MTMiIGhlaWdodD0iNzkiIHZpZXdCb3g9IjAgMCA0MTMgNzkiIGZpbGw9Im5vbmUiPiAgIDxwYXRoIGQ9Ik0wIDU1Ljc4ODdMNS43NjQ3MSAxMS44MDkzTDUxLjg4MjQgMEgzNzMuMDU5TDQxMyAxNy41MTAzTDQwNy4yMzUgNjAuNjc1M0wzNzMuMDU5IDc5SDMyLjUyOTRMMCA1NS43ODg3WiIgZmlsbD0iI0ZGNzNENyIvPiA8L3N2Zz4=");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.7s, translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.7s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.7s;
    opacity: 0;
    translate: 0 20px;
    scale: 0.3;
  }
  .page-wrap .movie-content__ttl.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .movie-content__ttl img {
    width: clamp(155.04px, 304 / 1512 * 100vw, 304px);
  }
  .page-wrap .movie-content__subttl {
    margin-top: clamp(21.42px, 42 / 1512 * 100vw, 42px) !important;
    font-weight: 600;
    font-size: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    line-height: 1.28;
    letter-spacing: 0.21em;
    text-align: center;
  }
  .page-wrap .movie-content__subttl .dotted {
    position: relative;
  }
  .page-wrap .movie-content__subttl .dotted::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% -100%;
    width: clamp(5.61px, 11 / 1512 * 100vw, 11px);
    height: clamp(4.59px, 9 / 1512 * 100vw, 9px);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
  }
  .page-wrap .movie-content__subttl .dotted.color01::before {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMSIgdmlld0JveD0iMCAwIDExIDExIiBmaWxsPSJub25lIj4gICA8cGF0aCBkPSJNMTAuNDg3MiAyLjk2NDY0TDkuNjEzNyA4LjUyNzc3TDQuMTEyNzQgMTAuODAxTDcuMDk1ODJlLTA1IDcuMjY2MDJMMS4yMjYzMiAxLjUyNDQ3TDYuNDMxNTEgLTAuMDAwMTE4Njg0TDEwLjQ4NzIgMi45NjQ2NFoiIGZpbGw9IiNGRjczRDciLz4gPC9zdmc+");
  }
  .page-wrap .movie-content__subttl .dotted.color02::before {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMSIgdmlld0JveD0iMCAwIDExIDExIiBmaWxsPSJub25lIj4gICA8cGF0aCBkPSJNMTAuNDg3MiAyLjk2NDY0TDkuNjEzNyA4LjUyNzc3TDQuMTEyNzQgMTAuODAxTDcuMDk1ODJlLTA1IDcuMjY2MDJMMS4yMjYzMiAxLjUyNDQ3TDYuNDMxNTEgLTAuMDAwMTE4Njg0TDEwLjQ4NzIgMi45NjQ2NFoiIGZpbGw9IiMwMDM3RkYiLz4gPC9zdmc+");
  }
  .page-wrap .movie-content__lead {
    margin-top: clamp(20.4px, 40 / 1512 * 100vw, 40px) !important;
    font-weight: 600;
    font-size: clamp(8.16px, 16 / 1512 * 100vw, 16px);
    line-height: 2.31;
    letter-spacing: 0.37em;
    text-align: center;
  }
  .page-wrap .movie-content__slider {
    position: relative;
    margin-top: clamp(23.97px, 47 / 1512 * 100vw, 47px);
    padding-top: clamp(67.32px, 132 / 1512 * 100vw, 132px);
  }
  .page-wrap .movie-content__slider .swiper {
    height: clamp(373.32px, 732 / 1512 * 100vw, 732px);
  }
  .page-wrap .movie-content__slider .swiper-slide {
    width: clamp(209.1px, 410 / 1512 * 100vw, 410px);
    height: clamp(373.32px, 732 / 1512 * 100vw, 732px);
    scale: 0.7;
    transition: scale 0.3s ease;
  }
  .page-wrap .movie-content__slider .swiper-slide::before {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: clamp(32.64px, 64 / 1512 * 100vw, 64px);
    left: clamp(-47px, -47 / 1512 * 100vw, -23.97px);
    width: clamp(66.81px, 131 / 1512 * 100vw, 131px);
    height: clamp(67.32px, 132 / 1512 * 100vw, 132px);
    background-image: url(../images/movie_icon_start.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    transition: scale 0.5s cubic-bezier(0.06, 1.22, 0.69, 1.43) 0.2s, opacity 0.3s ease 0.5s, visibility 0.3s ease 0.5s;
    scale: 0.5;
    opacity: 0;
    visibility: hidden;
  }
  .page-wrap .movie-content__slider .swiper-slide-active {
    scale: 1;
  }
  .page-wrap .movie-content__slider .swiper-slide-active::before {
    scale: 1;
    opacity: 1;
    visibility: visible;
  }
  .page-wrap .movie-content__slider .swiper-slide:hover::before {
    scale: 1.1;
  }
  .page-wrap .movie-content__slider .swiper-wrapper {
    align-items: center;
  }
  .page-wrap .movie-content__slider .swiper-pagination {
    display: flex;
    justify-content: center;
    top: 0;
    left: 50%;
    bottom: auto;
    translate: -50% 0;
    column-gap: clamp(8.16px, 16 / 1512 * 100vw, 16px);
    width: clamp(322.32px, 632 / 1512 * 100vw, 632px);
    height: clamp(26.01px, 51 / 1512 * 100vw, 51px);
    z-index: 0;
  }
  .page-wrap .movie-content__slider .swiper-pagination-bullet {
    display: grid;
    place-content: center;
    width: clamp(102px, 200 / 1512 * 100vw, 200px);
    height: clamp(26.01px, 51 / 1512 * 100vw, 51px);
    border: clamp(1.53px, 3 / 1512 * 100vw, 3px) solid #0037FF;
    border-radius: clamp(26.01px, 51 / 1512 * 100vw, 51px);
    background-color: #0037FF;
    font-weight: 600;
    font-size: clamp(10.2px, 20 / 1512 * 100vw, 20px);
    letter-spacing: 0.21em;
    color: #fff;
    opacity: 1;
    transition: opacity 0.3s ease;
  }
  .page-wrap .movie-content__slider .swiper-pagination-bullet:hover {
    opacity: 0.8;
  }
  .page-wrap .movie-content__slider .swiper-pagination-bullet-active {
    background-color: #FFE100;
    box-shadow: 0 clamp(3.06px, 6 / 1512 * 100vw, 6px) 0 0 #0037FF;
    color: #000;
  }
  .page-wrap .movie-content__slider .swiper-button-prev, .page-wrap .movie-content__slider .swiper-button-next {
    display: grid;
    place-content: center;
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    width: clamp(22.95px, 45 / 1512 * 100vw, 45px);
    height: clamp(27.54px, 54 / 1512 * 100vw, 54px);
    background-color: #0037FF;
    z-index: 1;
  }
  .page-wrap .movie-content__slider .swiper-button-prev::before, .page-wrap .movie-content__slider .swiper-button-prev::after, .page-wrap .movie-content__slider .swiper-button-next::before, .page-wrap .movie-content__slider .swiper-button-next::after {
    display: none;
  }
  .page-wrap .movie-content__slider .swiper-button-prev {
    left: clamp(132.09px, 259 / 1512 * 100vw, 259px);
    clip-path: polygon(0 50%, 100% 0, 100% 100%);
  }
  .page-wrap .movie-content__slider .swiper-button-next {
    right: clamp(132.09px, 259 / 1512 * 100vw, 259px);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
  }
  .page-wrap .movie-content .movie-slide {
    position: relative;
  }
  .page-wrap .movie-content .movie-slide__inner {
    border-radius: clamp(20.4px, 40 / 1512 * 100vw, 40px);
    border: clamp(3.06px, 6 / 1512 * 100vw, 6px) solid #0037FF;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
  .page-wrap .movie-content .movie-slide__inner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .page-wrap .movie-content .members {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    column-gap: clamp(24.99px, 49 / 1512 * 100vw, 49px);
    position: relative;
    margin-top: clamp(28.56px, 56 / 1512 * 100vw, 56px);
    margin-inline: auto;
    width: clamp(433.5px, 850 / 1512 * 100vw, 850px);
    padding: clamp(20.91px, 41 / 1512 * 100vw, 41px) clamp(25.5px, 50 / 1512 * 100vw, 50px) clamp(16.32px, 32 / 1512 * 100vw, 32px);
    border-radius: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    background-color: #F2F5FF;
  }
  .page-wrap .movie-content .member {
    display: grid;
    grid-template-columns: clamp(72.42px, 142 / 1512 * 100vw, 142px) 1fr;
    grid-template-rows: clamp(87.72px, 172 / 1512 * 100vw, 172px) 1fr;
    gap: clamp(7.14px, 14 / 1512 * 100vw, 14px) clamp(6.12px, 12 / 1512 * 100vw, 12px);
    width: 50%;
  }
  .page-wrap .movie-content .member__imgbox {
    grid-column: 1/2;
    width: clamp(72.42px, 142 / 1512 * 100vw, 142px);
  }
  .page-wrap .movie-content .member__imgbox img {
    width: 100%;
  }
  .page-wrap .movie-content .member__name {
    grid-column: 2/3;
    align-content: end;
  }
  .page-wrap .movie-content .member__name-ja {
    font-weight: 700;
    font-size: clamp(10.2px, 20 / 1512 * 100vw, 20px);
    line-height: 1.4;
    letter-spacing: 0.24em;
  }
  .page-wrap .movie-content .member__name-en {
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: clamp(5.1px, 10 / 1512 * 100vw, 10px);
    letter-spacing: 0.07em;
  }
  .page-wrap .movie-content .member__textarea {
    display: contents;
  }
  .page-wrap .movie-content .member__text {
    grid-column: 1/3;
    font-weight: 500;
    font-size: clamp(7.14px, 14 / 1512 * 100vw, 14px);
    line-height: 1.78;
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 767px) {
  .page-wrap .movie {
    position: relative;
    margin-top: calc(-5 / 390 * 100vw);
    clip-path: shape(from 100% 0.16%, line by -7.01% -0.16%, line by -16.61% 0.17%, line to 47.64% 0%, hline by -23.95%, line by -8.87% 0.17%, hline to 1.77%, curve by -1.77% -0.17% with -0.38% 0%/0.08% -0.11%, vline by 100%, hline by 100%, vline to 0.16%, close);
    background-color: #00CCFF;
  }
  .page-wrap .movie__inner {
    position: relative;
    margin-inline: auto;
    padding-block: calc(65 / 390 * 100vw) calc(67 / 390 * 100vw);
    width: 100%;
  }
  .page-wrap .movie-wrapper {
    position: relative;
  }
  .page-wrap .movie-bg-stitch {
    display: inline-block;
    position: absolute;
    top: calc(14 / 390 * 100vw);
    left: 0;
    width: 100%;
    height: calc(21 / 390 * 100vw);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto calc(21 / 390 * 100vw);
  }
  .page-wrap .movie-bg-02 {
    position: absolute;
    top: calc(123 / 390 * 100vw);
    left: calc(-19 / 390 * 100vw);
    width: calc(112 / 390 * 100vw);
  }
  .page-wrap .movie-bg-04 {
    position: absolute;
    top: calc(310 / 390 * 100vw);
    right: calc(-100 / 390 * 100vw);
    width: calc(176 / 390 * 100vw);
  }
  .page-wrap .movie-bg-05 {
    position: absolute;
    top: calc(346 / 390 * 100vw);
    left: calc(-28 / 390 * 100vw);
    width: calc(183 / 390 * 100vw);
  }
  .page-wrap .movie-bg-06 {
    position: absolute;
    top: calc(836 / 390 * 100vw);
    right: calc(-89 / 390 * 100vw);
    width: calc(157 / 390 * 100vw);
  }
  .page-wrap .movie-bg-07 {
    position: absolute;
    top: calc(50 / 390 * 100vw);
    right: calc(-116 / 390 * 100vw);
    width: calc(192 / 390 * 100vw);
  }
  .page-wrap .movie-bg-08 {
    position: absolute;
    top: calc(1016 / 390 * 100vw);
    left: calc(-56 / 390 * 100vw);
    width: calc(115 / 390 * 100vw);
  }
  .page-wrap .movie-bg-09 {
    position: absolute;
    top: calc(1195 / 390 * 100vw);
    right: calc(-52 / 390 * 100vw);
    width: calc(185 / 390 * 100vw);
  }
  .page-wrap .movie-bg-10 {
    position: absolute;
    top: calc(1400 / 390 * 100vw);
    left: calc(-79 / 390 * 100vw);
    width: calc(167 / 390 * 100vw);
  }
  .page-wrap .movie-bg-member-wrapper {
    position: relative;
    width: 100%;
  }
  .page-wrap .movie-bg-member-01 {
    position: absolute;
    top: calc(-205 / 390 * 100vw);
    left: calc(192 / 390 * 100vw);
    width: calc(258 / 390 * 100vw);
    z-index: 1;
    animation: member-swaying 2s step-end 0.3s infinite;
  }
  .page-wrap .movie-bg-member-02 {
    position: absolute;
    top: calc(555 / 390 * 100vw);
    left: calc(-116 / 390 * 100vw);
    width: calc(90 / 390 * 100vw);
    rotate: 52deg;
    z-index: 1;
  }
  .page-wrap .movie-bg-member-02.is-appear {
    animation: movie-member-02-appear 0.5s ease-in 0.6s forwards, member-swaying-movie-02 2s step-end 1.8s infinite;
  }
  @keyframes movie-member-02-appear {
    0% {
      left: calc(-116 / 390 * 100vw);
    }
    75% {
      left: calc(-30 / 390 * 100vw);
    }
    85% {
      left: calc(-56 / 390 * 100vw);
    }
    100% {
      left: calc(-46 / 390 * 100vw);
    }
  }
  @keyframes member-swaying-movie-02 {
    0% {
      rotate: 54deg;
    }
    10% {
      rotate: 50deg;
    }
    20% {
      rotate: 54deg;
    }
    30% {
      rotate: 52deg;
    }
    100% {
      rotate: 52deg;
    }
  }
  .page-wrap .movie-bg-member-03 {
    position: absolute;
    top: calc(946 / 390 * 100vw);
    right: calc(72 / 390 * 100vw);
    width: calc(78 / 390 * 100vw);
    rotate: -88deg;
    z-index: 1;
    animation: member-swaying-movie-03 2s step-end -0.3s infinite;
  }
  @keyframes member-swaying-movie-03 {
    0% {
      rotate: -86deg;
    }
    10% {
      rotate: -90deg;
    }
    20% {
      rotate: -86deg;
    }
    30% {
      rotate: -88deg;
    }
    100% {
      rotate: -88deg;
    }
  }
  .page-wrap .movie-content {
    position: relative;
    margin-inline: auto;
    padding-bottom: calc(10 / 390 * 100vw);
    width: calc(348 / 390 * 100vw);
    overflow: hidden;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1), translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    opacity: 0;
    translate: 0 30px;
    scale: 0.3;
  }
  .page-wrap .movie-content.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .movie-content__inner {
    padding-block: calc(34 / 390 * 100vw) calc(59 / 390 * 100vw);
    width: calc(343 / 390 * 100vw);
    filter: drop-shadow(calc(8 / 390 * 100vw) calc(10 / 390 * 100vw) 0 #0037FF);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNDMuNDggMTkyMCI+ICAgPGc+ICAgICA8cGF0aCBkPSJNMjk1LjY4LDIuNkw0MS4xMiwwLDAsNzYuMXYxNzk2Ljk1czU0LjIzLDQ2Ljk1LDU0LjIzLDQ2Ljk1aDIzNi4xMmw0OS40Mi0yOS43NiwzLjcyLTE4MjcuNTFMMjk1LjY4LDIuNloiIHN0eWxlPSJmaWxsOiAjZmZmOyIvPiAgIDwvZz4gPC9zdmc+");
    background-size: 102% 100%;
    background-repeat: no-repeat;
    background-position: center;
  }
  .page-wrap .movie-content__ttl {
    display: grid;
    place-content: center;
    margin-inline: auto;
    width: calc(239 / 390 * 100vw);
    height: calc(50 / 390 * 100vw);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNDAiIGhlaWdodD0iNTEiIHZpZXdCb3g9IjAgMCAyNDAgNTEiIGZpbGw9Im5vbmUiPiAgIDxwYXRoIGQ9Ik0wIDM1LjUwMzVMMy4zMzk1MSA3LjUxNTM1TDMwLjA1NTYgMEgyMTYuMTE0TDIzOS4yNTIgMTEuMTQzNEwyMzUuOTEyIDM4LjYxMzNMMjE2LjExNCA1MC4yNzUxSDE4Ljg0NDRMMCAzNS41MDM1WiIgZmlsbD0iI0ZGNzNENyIvPiA8L3N2Zz4=");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.7s, translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.7s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.7s;
    opacity: 0;
    translate: 0 20px;
    scale: 0.3;
  }
  .page-wrap .movie-content__ttl.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .movie-content__ttl img {
    width: calc(168 / 390 * 100vw);
  }
  .page-wrap .movie-content__subttl {
    margin-top: calc(25 / 390 * 100vw) !important;
    font-weight: 700;
    font-size: calc(26 / 390 * 100vw);
    line-height: 1.9;
    letter-spacing: 0.21em;
    text-align: center;
  }
  .page-wrap .movie-content__subttl .dotted {
    position: relative;
  }
  .page-wrap .movie-content__subttl .dotted::before {
    content: "";
    position: absolute;
    top: 9%;
    left: 41%;
    translate: -50% -100%;
    width: calc(8.4 / 390 * 100vw);
    height: calc(7.1 / 390 * 100vw);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
  }
  .page-wrap .movie-content__subttl .dotted.color01::before {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5IiBoZWlnaHQ9IjgiIHZpZXdCb3g9IjAgMCA5IDgiIGZpbGw9Im5vbmUiPiAgIDxwYXRoIGQ9Ik02LjA4MTY1IC0wLjAwMDExMjc3Mkw4LjA5NzQ5IDMuNjU3MDVMNS45MDY1NCA3LjQ4ODc5TDEuODkwMDkgNy4yODU3OEwtNi44NjMzMmUtMDUgMy4zNjM3NkwyLjM1NzcxIDAuMTA1MTY3TDYuMDgxNjUgLTAuMDAwMTEyNzcyWiIgZmlsbD0iI0ZGNzNENyIvPiA8L3N2Zz4=");
  }
  .page-wrap .movie-content__subttl .dotted.color02::before {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4IiBoZWlnaHQ9IjkiIHZpZXdCb3g9IjAgMCA4IDkiIGZpbGw9Im5vbmUiPiAgIDxwYXRoIGQ9Ik0yLjk0ODQ1IDkuNjc5M2UtMDVMNi43MzA4NiAxLjc2OTc5TDcuMjE1MzggNi4xNTcwMkwzLjg0OTA4IDguMzU3MjdMMC4wMTIzNDQ2IDYuMjk5NDhMOC40NzA1MWUtMDUgMi4yNzczN0wyLjk0ODQ1IDkuNjc5M2UtMDVaIiBmaWxsPSIjMDAzN0ZGIi8+IDwvc3ZnPg==");
  }
  .page-wrap .movie-content__lead {
    margin-top: calc(20 / 390 * 100vw) !important;
    margin-inline: auto;
    width: calc(285 / 390 * 100vw);
    font-weight: 700;
    font-size: calc(14 / 390 * 100vw);
    line-height: 2.64;
    letter-spacing: 0.13em;
    text-align: justify;
  }
  .page-wrap .movie-content__slider {
    position: relative;
    margin-top: calc(39 / 390 * 100vw);
    padding-top: calc(125 / 390 * 100vw);
  }
  .page-wrap .movie-content__slider .swiper {
    height: calc(344 / 390 * 100vw);
  }
  .page-wrap .movie-content__slider .swiper-slide {
    width: calc(74 / 390 * 100vw);
    height: calc(344 / 390 * 100vw);
    scale: 0.75;
    transition: scale 0.3s ease;
  }
  .page-wrap .movie-content__slider .swiper-slide::before {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: calc(26 / 390 * 100vw);
    left: calc(-29 / 390 * 100vw);
    width: calc(88 / 390 * 100vw);
    height: calc(89 / 390 * 100vw);
    background-image: url(../images/movie_icon_start.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    transition: scale 0.5s cubic-bezier(0.06, 1.22, 0.69, 1.43) 0.2s, opacity 0.3s ease 0.5s, visibility 0.3s ease 0.5s;
    scale: 0.5;
    opacity: 0;
    visibility: hidden;
  }
  .page-wrap .movie-content__slider .swiper-slide-active {
    width: calc(206 / 390 * 100vw);
    height: calc(344 / 390 * 100vw);
    scale: 1;
  }
  .page-wrap .movie-content__slider .swiper-slide-active::before {
    scale: 1;
    opacity: 1;
    visibility: visible;
  }
  .page-wrap .movie-content__slider .swiper-wrapper {
    align-items: center;
  }
  .page-wrap .movie-content__slider .swiper-pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    top: 0;
    bottom: auto;
    gap: calc(13 / 390 * 100vw) calc(15 / 390 * 100vw);
    height: calc(93 / 390 * 100vw);
    z-index: 0;
  }
  .page-wrap .movie-content__slider .swiper-pagination-bullet {
    flex-shrink: 0;
    display: grid;
    place-content: center;
    margin: 0 !important;
    width: calc(135 / 390 * 100vw);
    height: calc(38 / 390 * 100vw);
    border: calc(2.1 / 390 * 100vw) solid #0037FF;
    border-radius: calc(70 / 390 * 100vw);
    background-color: #0037FF;
    font-weight: 700;
    font-size: calc(15 / 390 * 100vw);
    letter-spacing: 0.21em;
    color: #fff;
    opacity: 1;
  }
  .page-wrap .movie-content__slider .swiper-pagination-bullet-active {
    background-color: #FFE100;
    box-shadow: 0 calc(4.2 / 390 * 100vw) 0 0 #0037FF;
    color: #000;
  }
  .page-wrap .movie-content__slider .swiper-button-prev, .page-wrap .movie-content__slider .swiper-button-next {
    display: grid;
    place-content: center;
    position: absolute;
    top: 58%;
    translate: 0 -50%;
    width: calc(17 / 390 * 100vw);
    height: calc(21 / 390 * 100vw);
    background-color: #0037FF;
    z-index: 1;
  }
  .page-wrap .movie-content__slider .swiper-button-prev::before, .page-wrap .movie-content__slider .swiper-button-prev::after, .page-wrap .movie-content__slider .swiper-button-next::before, .page-wrap .movie-content__slider .swiper-button-next::after {
    display: none;
  }
  .page-wrap .movie-content__slider .swiper-button-prev {
    left: calc(42 / 390 * 100vw);
    clip-path: polygon(0 50%, 100% 0, 100% 100%);
  }
  .page-wrap .movie-content__slider .swiper-button-next {
    right: calc(42 / 390 * 100vw);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
  }
  .page-wrap .movie-content .movie-slide {
    position: relative;
  }
  .page-wrap .movie-content .movie-slide__inner {
    border-radius: calc(20 / 390 * 100vw);
    border: calc(3 / 390 * 100vw) solid #0037FF;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
  .page-wrap .movie-content .movie-slide__inner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .page-wrap .movie-content .members {
    display: grid;
    row-gap: calc(29 / 390 * 100vw);
    position: relative;
    margin-top: calc(41 / 390 * 100vw);
    margin-inline: auto;
    width: calc(300 / 390 * 100vw);
    padding: calc(34 / 390 * 100vw) calc(30 / 390 * 100vw) calc(19 / 390 * 100vw);
    border-radius: calc(20 / 390 * 100vw);
    background-color: #F2F5FF;
  }
  .page-wrap .movie-content .member {
    display: grid;
    grid-template-columns: calc(120 / 390 * 100vw) 1fr;
    gap: calc(14 / 390 * 100vw) calc(12 / 390 * 100vw);
  }
  .page-wrap .movie-content .member__imgbox {
    grid-column: 1/2;
  }
  .page-wrap .movie-content .member__imgbox img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    object-position: 50% 0;
  }
  .page-wrap .movie-content .member__name {
    grid-column: 2/3;
    align-content: end;
  }
  .page-wrap .movie-content .member__name-ja {
    font-weight: 700;
    font-size: calc(20 / 390 * 100vw);
    line-height: 1.4;
    letter-spacing: 0.24em;
  }
  .page-wrap .movie-content .member__name-en {
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: calc(10 / 390 * 100vw);
    letter-spacing: 0.02em;
  }
  .page-wrap .movie-content .member__textarea {
    display: contents;
  }
  .page-wrap .movie-content .member__text {
    grid-column: 1/3;
    font-weight: 500;
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.78;
    letter-spacing: 0.1em;
    text-align: justify;
  }
}
@media screen and (min-width: 768px) {
  .page-wrap .modal__overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9003;
  }
  .page-wrap .modal__container {
    display: grid;
    grid-template-rows: 0 1fr;
    width: clamp(306px, 600 / 1512 * 100vw, 600px);
    height: clamp(306px, 600 / 1512 * 100vw, 600px);
    max-height: 80dvh;
  }
  .page-wrap .modal__header {
    height: 0;
    overflow: visible;
  }
  .page-wrap .modal__close {
    display: grid;
    place-content: center;
    position: absolute;
    top: clamp(-43px, -43 / 1512 * 100vw, -21.93px);
    right: clamp(-7px, -7 / 1512 * 100vw, -3.57px);
    translate: 100% 0;
    width: clamp(30.6px, 60 / 1512 * 100vw, 60px);
    height: clamp(30.6px, 60 / 1512 * 100vw, 60px);
    border-radius: 50%;
    border: clamp(2.55px, 5 / 1512 * 100vw, 5px) solid #0037FF;
    background: #FFE100;
  }
  .page-wrap .modal__close:focus-visible {
    outline: none;
  }
  .page-wrap .modal__close::before {
    content: "✕";
    position: relative;
    top: clamp(-3px, -3 / 1512 * 100vw, -1.53px);
    font-size: clamp(15.3px, 30 / 1512 * 100vw, 30px);
    font-weight: 900;
    color: #0037FF;
  }
  .page-wrap .modal__content {
    border: clamp(3.06px, 6 / 1512 * 100vw, 6px) solid #0037FF;
    border-radius: clamp(20.4px, 40 / 1512 * 100vw, 40px);
    background-color: #0037FF;
    box-shadow: clamp(1.53px, 3 / 1512 * 100vw, 3px) clamp(1.53px, 3 / 1512 * 100vw, 3px) 0 0 #000;
    box-sizing: border-box;
    overflow: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .page-wrap .modal__content::-webkit-scrollbar {
    display: none;
  }
  .page-wrap .modal__inner {
    height: 100%;
  }
  .page-wrap .modal__movie {
    position: relative;
    width: 100%;
    height: 100%;
  }
  .page-wrap .modal__movie img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .page-wrap .modal__movie video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .page-wrap .modal__movie twitterwidget {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
  .page-wrap .modal__movie twitterwidget iframe {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
  .page-wrap .modal__movie .twitter-tweet-rendered {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  @keyframes mmfadeIn {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes mmfadeOut {
    from {
      opacity: 1;
    }
    to {
      opacity: 0;
    }
  }
  @keyframes mmslideIn {
    from {
      transform: translateY(15%);
    }
    to {
      transform: translateY(0);
    }
  }
  @keyframes mmslideOut {
    from {
      transform: translateY(0);
    }
    to {
      transform: translateY(-10%);
    }
  }
  .page-wrap .micromodal-slide {
    display: none;
  }
  .page-wrap .micromodal-slide.is-open {
    display: block;
  }
  .page-wrap .micromodal-slide[aria-hidden=false] .modal__overlay {
    animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .page-wrap .micromodal-slide[aria-hidden=false] .modal__container {
    animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .page-wrap .micromodal-slide[aria-hidden=true] .modal__overlay {
    animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .page-wrap .micromodal-slide[aria-hidden=true] .modal__container {
    animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .page-wrap .micromodal-slide .modal__container,
  .page-wrap .micromodal-slide .modal__overlay {
    will-change: transform;
  }
}
@media screen and (max-width: 767px) {
  .page-wrap .modal__overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9003;
  }
  .page-wrap .modal__container {
    display: grid;
    grid-template-rows: 0 1fr;
    width: calc(325 / 390 * 100vw);
    min-width: 325px;
    max-height: 80dvh;
  }
  .page-wrap .modal__header {
    height: 0;
    overflow: visible;
  }
  .page-wrap .modal__close {
    display: grid;
    place-content: center;
    position: absolute;
    top: calc(-62 / 390 * 100vw);
    right: calc(28 / 390 * 100vw);
    translate: 100% 0;
    width: calc(43 / 390 * 100vw);
    height: calc(43 / 390 * 100vw);
    border-radius: 50%;
    border: calc(3.6 / 390 * 100vw) solid #0037FF;
    background: #FFE100;
  }
  .page-wrap .modal__close:focus-visible {
    outline: none;
  }
  .page-wrap .modal__close::before {
    content: "✕";
    position: relative;
    top: calc(-1 / 390 * 100vw);
    font-size: calc(20 / 390 * 100vw);
    font-weight: 900;
    color: #0037FF;
  }
  .page-wrap .modal__content {
    border: calc(4.7 / 390 * 100vw) solid #0037FF;
    border-radius: calc(23.7 / 390 * 100vw);
    box-sizing: border-box;
    overflow: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .page-wrap .modal__content::-webkit-scrollbar {
    display: none;
  }
  .page-wrap .modal__inner {
    height: 100%;
  }
  .page-wrap .modal__movie {
    position: relative;
    width: 100%;
    height: 100%;
  }
  .page-wrap .modal__movie img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .page-wrap .modal__movie video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .page-wrap .modal__movie twitterwidget {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
  .page-wrap .modal__movie twitterwidget iframe {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
  .page-wrap .modal__movie .twitter-tweet-rendered {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  @keyframes mmfadeIn {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes mmfadeOut {
    from {
      opacity: 1;
    }
    to {
      opacity: 0;
    }
  }
  @keyframes mmslideIn {
    from {
      transform: translateY(15%);
    }
    to {
      transform: translateY(0);
    }
  }
  @keyframes mmslideOut {
    from {
      transform: translateY(0);
    }
    to {
      transform: translateY(-10%);
    }
  }
  .page-wrap .micromodal-slide {
    display: none;
  }
  .page-wrap .micromodal-slide.is-open {
    display: block;
  }
  .page-wrap .micromodal-slide[aria-hidden=false] .modal__overlay {
    animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .page-wrap .micromodal-slide[aria-hidden=false] .modal__container {
    animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .page-wrap .micromodal-slide[aria-hidden=true] .modal__overlay {
    animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .page-wrap .micromodal-slide[aria-hidden=true] .modal__container {
    animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .page-wrap .micromodal-slide .modal__container,
  .page-wrap .micromodal-slide .modal__overlay {
    will-change: transform;
  }
}
@media screen and (min-width: 768px) {
  .page-wrap .campaign {
    position: relative;
    background-color: #6F4EFF;
  }
  .page-wrap .campaign__inner {
    position: relative;
    margin-inline: auto;
    padding-block: clamp(76.5px, 150 / 1512 * 100vw, 150px) clamp(81.6px, 160 / 1512 * 100vw, 160px);
    width: 100%;
    max-width: 1512px;
  }
  .page-wrap .campaign__ttl {
    margin-inline: auto;
    width: clamp(332.52px, 652 / 1512 * 100vw, 652px);
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.2s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s;
    opacity: 0;
    scale: 1.2;
  }
  .page-wrap .campaign__ttl.is-appear {
    opacity: 1;
    scale: 1;
  }
  .page-wrap .campaign__ttl img {
    width: 100%;
  }
  .page-wrap .campaign__lead {
    margin-top: clamp(18.87px, 37 / 1512 * 100vw, 37px) !important;
    font-weight: 600;
    font-size: clamp(10.2px, 20 / 1512 * 100vw, 20px);
    line-height: 2.05;
    letter-spacing: 0.25em;
    text-align: center;
    color: #fff;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.2s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s;
    opacity: 0;
    scale: 1.2;
  }
  .page-wrap .campaign__lead.is-appear {
    opacity: 1;
    scale: 1;
  }
  .page-wrap .campaign-bg-line-01 {
    position: absolute;
    top: clamp(-8px, -8 / 1512 * 100vw, -4.08px);
    left: 50%;
    translate: -50% 0;
    width: 100%;
    min-width: 1600px;
  }
  .page-wrap .campaign-bg-stitch-01, .page-wrap .campaign-bg-stitch-02 {
    display: inline-block;
    position: absolute;
    top: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    left: 0;
    width: 100%;
    height: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto clamp(17.85px, 35 / 1512 * 100vw, 35px);
  }
  .page-wrap .campaign-bg-01 {
    position: absolute;
    top: clamp(39.27px, 77 / 1512 * 100vw, 77px);
    right: clamp(-379px, -379 / 1512 * 100vw, -193.29px);
    width: clamp(406.47px, 797 / 1512 * 100vw, 797px);
  }
  .page-wrap .campaign-bg-02 {
    position: absolute;
    top: clamp(215.73px, 423 / 1512 * 100vw, 423px);
    left: clamp(-259px, -259 / 1512 * 100vw, -132.09px);
    width: clamp(281.52px, 552 / 1512 * 100vw, 552px);
  }
  .page-wrap .campaign-bg-03 {
    position: absolute;
    top: clamp(515.1px, 1010 / 1512 * 100vw, 1010px);
    right: clamp(2.04px, 4 / 1512 * 100vw, 4px);
    width: clamp(210.63px, 413 / 1512 * 100vw, 413px);
  }
  .page-wrap .campaign-bg-04 {
    position: absolute;
    top: clamp(719.1px, 1410 / 1512 * 100vw, 1410px);
    left: clamp(-171px, -171 / 1512 * 100vw, -87.21px);
    width: clamp(210.63px, 413 / 1512 * 100vw, 413px);
  }
  .page-wrap .campaign-bg-member-01 {
    position: absolute;
    top: clamp(-334px, -334 / 1512 * 100vw, -170.34px);
    left: clamp(5.61px, 11 / 1512 * 100vw, 11px);
    width: clamp(156.57px, 307 / 1512 * 100vw, 307px);
    animation: member-swaying 2s step-end 0.3s infinite;
  }
  .page-wrap .campaign-bg-member-02 {
    position: absolute;
    top: clamp(184.62px, 362 / 1512 * 100vw, 362px);
    left: clamp(84.15px, 165 / 1512 * 100vw, 165px);
    width: clamp(127.5px, 250 / 1512 * 100vw, 250px);
    z-index: 1;
    transform-origin: 70% 60%;
    animation: member-swaying 2s step-end 0.1s infinite;
  }
  .page-wrap .campaign-bg-member-03 {
    position: absolute;
    top: clamp(1067.43px, 2093 / 1512 * 100vw, 2093px);
    right: clamp(32.13px, 63 / 1512 * 100vw, 63px);
    width: clamp(127.5px, 250 / 1512 * 100vw, 250px);
    z-index: 1;
    animation: member-swaying 2s step-end -0.3s infinite;
  }
  .page-wrap .campaign-bg-member-04 {
    position: absolute;
    top: clamp(1139.85px, 2235 / 1512 * 100vw, 2235px);
    left: clamp(-39px, -39 / 1512 * 100vw, -19.89px);
    width: clamp(201.45px, 395 / 1512 * 100vw, 395px);
  }
  .page-wrap .campaign-bg-member-04.is-appear {
    animation: campaign-member-04-appear 0.2s ease-in 0.6s forwards, member-swaying 2s step-end 1.8s infinite;
  }
  @keyframes campaign-member-04-appear {
    0% {
      top: clamp(1139.85px, 2235 / 1512 * 100vw, 2235px);
    }
    85% {
      top: clamp(1125.57px, 2207 / 1512 * 100vw, 2207px);
    }
    90% {
      top: clamp(1099.05px, 2155 / 1512 * 100vw, 2155px);
    }
    100% {
      top: clamp(1093.95px, 2145 / 1512 * 100vw, 2145px);
    }
  }
  .page-wrap .campaign-bg-member-05 {
    position: absolute;
    top: clamp(1530px, 3000 / 1512 * 100vw, 3000px);
    left: clamp(-100px, -100 / 1512 * 100vw, -51px);
    width: clamp(127.5px, 250 / 1512 * 100vw, 250px);
    transform-origin: 23% 73%;
  }
  .page-wrap .campaign-bg-member-05.is-appear {
    animation: campaign-member-05-appear 0.4s ease-in 0.6s forwards, member-swaying 2s step-end 1.8s infinite;
  }
  @keyframes campaign-member-05-appear {
    0% {
      left: clamp(-100px, -100 / 1512 * 100vw, -51px);
    }
    75% {
      left: clamp(0px, 0 / 1512 * 100vw, 0px);
    }
    85% {
      left: clamp(-20px, -20 / 1512 * 100vw, -10.2px);
    }
    100% {
      left: clamp(-5px, -5 / 1512 * 100vw, -2.55px);
    }
  }
  .page-wrap .campaign-bg-member-06 {
    position: absolute;
    top: clamp(-110px, -110 / 1512 * 100vw, -56.1px);
    right: clamp(24.48px, 48 / 1512 * 100vw, 48px);
    width: clamp(91.8px, 180 / 1512 * 100vw, 180px);
  }
  .page-wrap .campaign-bg-member-06.is-appear {
    animation: member-swaying 2s step-end 1.8s infinite;
  }
  .page-wrap .campaign-bg__bottom {
    position: absolute;
    top: 50%;
    left: calc(50% - 50vw);
    width: 100vw;
    height: 50%;
    background-color: #5DF16C;
    clip-path: shape(from 100% 0.19%, curve by -3.75% 0.27% with -1.58% 0.11%/-3.5% 0.27%, hline by -11.87%, line by -8.07% -0.45%, hline by -21.79%, line by -26.16% 0.45%, line to 13.48% 0%, line to 0% 0.24%, vline by 99.76%, hline by 100%, vline to 0.19%, close);
  }
  .page-wrap .campaign-bg__bottom-inner {
    position: relative;
    margin-inline: auto;
    width: 100%;
    max-width: 1512px;
  }
  .page-wrap .campaign-bg-05 {
    position: absolute;
    top: clamp(-17px, -17 / 1512 * 100vw, -8.67px);
    right: clamp(-331px, -331 / 1512 * 100vw, -168.81px);
    width: clamp(495.21px, 971 / 1512 * 100vw, 971px);
  }
  .page-wrap .campaign-bg-06 {
    position: absolute;
    top: clamp(-30px, -30 / 1512 * 100vw, -15.3px);
    left: clamp(-314px, -314 / 1512 * 100vw, -160.14px);
    width: clamp(495.21px, 971 / 1512 * 100vw, 971px);
  }
  .page-wrap .campaign-bg-07 {
    position: absolute;
    top: clamp(233.58px, 458 / 1512 * 100vw, 458px);
    right: clamp(-83px, -83 / 1512 * 100vw, -42.33px);
    width: clamp(406.98px, 798 / 1512 * 100vw, 798px);
  }
  .page-wrap .campaign-bg-08 {
    position: absolute;
    top: clamp(544.17px, 1067 / 1512 * 100vw, 1067px);
    left: clamp(-608px, -608 / 1512 * 100vw, -310.08px);
    width: clamp(510px, 1000 / 1512 * 100vw, 1000px);
  }
  .page-wrap .campaign-bg-09 {
    position: absolute;
    top: clamp(678.81px, 1331 / 1512 * 100vw, 1331px);
    right: clamp(-655px, -655 / 1512 * 100vw, -334.05px);
    width: clamp(510px, 1000 / 1512 * 100vw, 1000px);
  }
  .page-wrap .campaign-contents {
    display: grid;
    row-gap: clamp(52.02px, 102 / 1512 * 100vw, 102px);
    margin-top: clamp(39.27px, 77 / 1512 * 100vw, 77px);
    margin-inline: auto;
    width: clamp(561px, 1100 / 1512 * 100vw, 1100px);
  }
  .page-wrap .campaign-content {
    position: relative;
    width: 100%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    filter: drop-shadow(clamp(7.14px, 14 / 1512 * 100vw, 14px) clamp(9.69px, 19 / 1512 * 100vw, 19px) 0 #0037FF);
  }
  .page-wrap .campaign-content-wrapper {
    position: relative;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1), translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    opacity: 0;
    translate: 0 30px;
    scale: 0.3;
  }
  .page-wrap .campaign-content-wrapper.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .campaign-content__inner {
    padding: clamp(40.8px, 80 / 1512 * 100vw, 80px) clamp(45.9px, 90 / 1512 * 100vw, 90px) clamp(66.3px, 130 / 1512 * 100vw, 130px);
  }
  .page-wrap .campaign-content__deco {
    display: grid;
    place-content: center;
    position: absolute;
    top: clamp(-25px, -25 / 1512 * 100vw, -12.75px);
    right: clamp(19.89px, 39 / 1512 * 100vw, 39px);
    width: clamp(96.9px, 190 / 1512 * 100vw, 190px);
    height: clamp(96.9px, 190 / 1512 * 100vw, 190px);
    border-radius: 50%;
    background-color: #FFE100;
    z-index: 1;
  }
  .page-wrap .campaign-content__deco img {
    width: clamp(66.3px, 130 / 1512 * 100vw, 130px);
  }
  .page-wrap .campaign-content__ttl {
    display: grid;
    place-content: center;
    margin-inline: auto;
    width: clamp(189.21px, 371 / 1512 * 100vw, 371px);
    height: clamp(36.21px, 71 / 1512 * 100vw, 71px);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzNzEiIGhlaWdodD0iNzEiIHZpZXdCb3g9IjAgMCAzNzEgNzEiIGZpbGw9Im5vbmUiPiAgIDxwYXRoIGQ9Ik0wIDUwLjEzOTJMNS4xNzg0NiAxMC42MTM0TDQ2LjYwNjIgMEgzMzUuMTIxTDM3MSAxNS43MzcxTDM2NS44MjIgNTQuNTMwOUwzMzUuMTIxIDcxSDI5LjIyMTNMMCA1MC4xMzkyWiIgZmlsbD0iI0ZGNzNENyIvPiA8L3N2Zz4=");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1) 0.7s, translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.7s, scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.7s;
    opacity: 0;
    translate: 0 20px;
    scale: 0.3;
  }
  .page-wrap .campaign-content__ttl.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .campaign-content__ttl img {
    width: clamp(116.79px, 229 / 1512 * 100vw, 229px);
  }
  .page-wrap .campaign-content .present {
    display: grid;
    margin-top: clamp(24.48px, 48 / 1512 * 100vw, 48px) !important;
    padding-bottom: clamp(8.16px, 16 / 1512 * 100vw, 16px);
  }
  .page-wrap .campaign-content .present__textarea {
    padding-left: clamp(24.48px, 48 / 1512 * 100vw, 48px);
  }
  .page-wrap .campaign-content .present__deco {
    padding-left: clamp(6.12px, 12 / 1512 * 100vw, 12px);
    border-left: clamp(3.06px, 6 / 1512 * 100vw, 6px) solid #0037FF;
    font-weight: 700;
    font-size: clamp(8.67px, 17 / 1512 * 100vw, 17px);
    line-height: 1.47;
    letter-spacing: 0.22em;
  }
  .page-wrap .campaign-content .present__maintext {
    margin-top: clamp(7.65px, 15 / 1512 * 100vw, 15px);
    font-weight: 600;
    font-size: clamp(18.36px, 36 / 1512 * 100vw, 36px);
    line-height: 1.27;
    letter-spacing: 0.17em;
  }
  .page-wrap .campaign-content .present__subtext {
    display: flex;
    align-items: center;
    column-gap: clamp(5.61px, 11 / 1512 * 100vw, 11px);
    margin-top: clamp(5.1px, 10 / 1512 * 100vw, 10px);
    color: #0037FF;
  }
  .page-wrap .campaign-content .present__subtext .ja {
    padding: clamp(3.06px, 6 / 1512 * 100vw, 6px) clamp(4.08px, 8 / 1512 * 100vw, 8px) clamp(3.57px, 7 / 1512 * 100vw, 7px);
    border: 2px solid #0037FF;
    font-weight: 900;
    font-size: clamp(7.14px, 14 / 1512 * 100vw, 14px);
    line-height: 1;
    letter-spacing: 0.22em;
  }
  .page-wrap .campaign-content .present__subtext .num {
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: clamp(19.89px, 39 / 1512 * 100vw, 39px);
    letter-spacing: 0.1em;
  }
  .page-wrap .campaign-content .present__subtext .en {
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: clamp(12.75px, 25 / 1512 * 100vw, 25px);
    letter-spacing: 0.08em;
  }
  .page-wrap .campaign-content .present__subtext .line {
    display: inline-block;
    margin-inline: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    width: clamp(6.12px, 12 / 1512 * 100vw, 12px);
    height: clamp(1.53px, 3 / 1512 * 100vw, 3px);
    background-color: #0037FF;
    vertical-align: super;
  }
  .page-wrap .campaign-content .present__btnarea {
    grid-column: 1/2;
    display: grid;
    row-gap: clamp(18.87px, 37 / 1512 * 100vw, 37px);
    margin-top: clamp(5.1px, 10 / 1512 * 100vw, 10px);
  }
  .page-wrap .campaign-content .present__btn {
    width: clamp(127.5px, 250 / 1512 * 100vw, 250px);
  }
  .page-wrap .campaign-content .present__btnlink {
    display: block;
    position: relative;
    padding-block: clamp(7.65px, 15 / 1512 * 100vw, 15px);
    height: 100%;
    border-radius: clamp(29.58px, 58 / 1512 * 100vw, 58px);
    border: clamp(1.53px, 3 / 1512 * 100vw, 3px) solid #0037FF;
    box-shadow: 0 clamp(3.06px, 6 / 1512 * 100vw, 6px) 0 0 #0037FF;
    background-color: #FFE100;
    font-weight: 600;
    font-size: clamp(9.18px, 18 / 1512 * 100vw, 18px);
    line-height: 1.3;
    letter-spacing: 0.21em;
    text-align: center;
    transition: opacity 0.3s ease;
  }
  .page-wrap .campaign-content .present__btnlink:hover {
    opacity: 0.8;
  }
  .page-wrap .campaign-content .present__btnlink::after {
    content: "";
    position: absolute;
    top: 50%;
    right: clamp(13.26px, 26 / 1512 * 100vw, 26px);
    translate: 0 -50%;
    width: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    height: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    rotate: 45deg;
  }
  .page-wrap .campaign-content .present__btnlink img {
    display: inline-block;
    margin-right: clamp(5.61px, 11 / 1512 * 100vw, 11px);
    vertical-align: middle;
  }
  .page-wrap .campaign-content .present__imgarea img {
    width: 100%;
  }
  .page-wrap .campaign-content .present__note {
    grid-column: 1/3;
    font-weight: 500;
    font-size: clamp(6.12px, 12 / 1512 * 100vw, 12px);
    letter-spacing: 0.17em;
  }
  .page-wrap .campaign-content .units {
    display: grid;
    row-gap: clamp(30.09px, 59 / 1512 * 100vw, 59px);
  }
  .page-wrap .campaign-content .unit {
    position: relative;
  }
  .page-wrap .campaign-content .unit__ttl {
    padding-block: clamp(5.1px, 10 / 1512 * 100vw, 10px);
    background-color: #EFEFEF;
    font-weight: 700;
    font-size: clamp(9.69px, 19 / 1512 * 100vw, 19px);
    letter-spacing: 0.34em;
    text-align: center;
  }
  .page-wrap .campaign-content .unit .product {
    display: flex;
    justify-content: center;
    column-gap: clamp(20.4px, 40 / 1512 * 100vw, 40px);
    margin-top: clamp(18.87px, 37 / 1512 * 100vw, 37px) !important;
  }
  .page-wrap .campaign-content .unit .product__imgbox {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    column-gap: clamp(8.67px, 17 / 1512 * 100vw, 17px);
  }
  .page-wrap .campaign-content .unit .product__imgbox img {
    width: clamp(75.99px, 149 / 1512 * 100vw, 149px);
  }
  .page-wrap .campaign-content .unit .product__maintext {
    font-weight: 600;
    font-size: clamp(14.28px, 28 / 1512 * 100vw, 28px);
    letter-spacing: 0.15em;
  }
  .page-wrap .campaign-content .unit .product__subtext {
    display: inline-block;
    margin-top: clamp(2.55px, 5 / 1512 * 100vw, 5px);
    padding: clamp(1.02px, 2 / 1512 * 100vw, 2px) clamp(2.04px, 4 / 1512 * 100vw, 4px) clamp(1.53px, 3 / 1512 * 100vw, 3px);
    border: 1px solid #000;
    font-weight: 600;
    font-size: clamp(6.12px, 12 / 1512 * 100vw, 12px);
    line-height: 1;
    letter-spacing: 0.18em;
  }
  .page-wrap .campaign-content .unit .product__text {
    margin-top: clamp(14.79px, 29 / 1512 * 100vw, 29px);
    font-size: clamp(8.16px, 16 / 1512 * 100vw, 16px);
    line-height: 2.18;
    letter-spacing: 0.26em;
  }
  .page-wrap .campaign-content .unit .method {
    display: flex;
    justify-content: space-between;
    column-gap: clamp(31.62px, 62 / 1512 * 100vw, 62px);
    margin-top: clamp(15.81px, 31 / 1512 * 100vw, 31px) !important;
  }
  .page-wrap .campaign-content .unit .method__imgbox {
    flex-shrink: 0;
    width: clamp(98.43px, 193 / 1512 * 100vw, 193px);
    margin-right: clamp(20.4px, 40 / 1512 * 100vw, 40px);
  }
  .page-wrap .campaign-content .unit .method__imgbox img {
    width: 100%;
  }
  .page-wrap .campaign-content .unit .steps {
    display: grid;
    row-gap: clamp(12.75px, 25 / 1512 * 100vw, 25px);
  }
  .page-wrap .campaign-content .unit .step {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    column-gap: clamp(12.75px, 25 / 1512 * 100vw, 25px);
  }
  .page-wrap .campaign-content .unit .step__num {
    display: grid;
    place-content: center;
    position: relative;
    width: clamp(72.93px, 143 / 1512 * 100vw, 143px);
    height: clamp(20.4px, 40 / 1512 * 100vw, 40px);
    border-radius: clamp(7.65px, 15 / 1512 * 100vw, 15px);
    background-color: #FF73D7;
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: clamp(14.79px, 29 / 1512 * 100vw, 29px);
    letter-spacing: 0.11em;
    color: #0037FF;
  }
  .page-wrap .campaign-content .unit .step__text {
    font-weight: 500;
    font-size: clamp(8.67px, 17 / 1512 * 100vw, 17px);
    line-height: 1.76;
    letter-spacing: 0.1em;
  }
  .page-wrap .campaign-content .unit .step__text a {
    text-decoration: underline;
    transition: opacity 0.3s ease;
  }
  .page-wrap .campaign-content .unit .step__text a:hover {
    opacity: 0.8;
  }
  .page-wrap .campaign-content .unit .step:not(:last-of-type) .step__num::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    translate: -50% 55%;
    width: clamp(14.28px, 28 / 1512 * 100vw, 28px);
    height: clamp(9.69px, 19 / 1512 * 100vw, 19px);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    background-color: #FF73D7;
  }
  .page-wrap .campaign-content .unit .howto {
    position: relative;
    margin-top: clamp(15.3px, 30 / 1512 * 100vw, 30px) !important;
  }
  .page-wrap .campaign-content .unit .howto__text {
    font-weight: 700;
    font-size: clamp(9.18px, 18 / 1512 * 100vw, 18px);
    letter-spacing: 0.15em;
  }
  .page-wrap .campaign-content .unit .howto__list {
    margin-top: clamp(7.65px, 15 / 1512 * 100vw, 15px);
  }
  .page-wrap .campaign-content .unit .howto__item {
    font-weight: 500;
    font-size: clamp(7.14px, 14 / 1512 * 100vw, 14px);
    line-height: 2;
    letter-spacing: 0.15em;
  }
  .page-wrap .campaign-content .unit .howto__imgbox {
    position: absolute;
    top: clamp(5.61px, 11 / 1512 * 100vw, 11px);
    right: clamp(22.95px, 45 / 1512 * 100vw, 45px);
    width: clamp(180.03px, 353 / 1512 * 100vw, 353px);
  }
  .page-wrap .campaign-content .unit .howto__imgbox img {
    width: 100%;
  }
  .page-wrap .campaign-content .unit .howto__notes {
    margin-top: clamp(19.38px, 38 / 1512 * 100vw, 38px);
  }
  .page-wrap .campaign-content .unit .howto__note {
    font-weight: 500;
    font-size: clamp(6.12px, 12 / 1512 * 100vw, 12px);
    line-height: 1.91;
    letter-spacing: 0.17em;
  }
  .page-wrap .campaign-content .unit .factors {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: clamp(13.26px, 26 / 1512 * 100vw, 26px) clamp(5.1px, 10 / 1512 * 100vw, 10px);
    margin-top: clamp(11.73px, 23 / 1512 * 100vw, 23px);
    width: clamp(163.2px, 320 / 1512 * 100vw, 320px);
  }
  .page-wrap .campaign-content .unit .factor {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    column-gap: clamp(5.1px, 10 / 1512 * 100vw, 10px);
  }
  .page-wrap .campaign-content .unit .factor .num {
    display: grid;
    place-content: center;
    width: clamp(12.24px, 24 / 1512 * 100vw, 24px);
    height: clamp(12.24px, 24 / 1512 * 100vw, 24px);
    border-radius: 50%;
    background-color: #FF73D7;
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: clamp(8.16px, 16 / 1512 * 100vw, 16px);
    letter-spacing: 0;
    color: #0037FF;
  }
  .page-wrap .campaign-content .unit .factor .text {
    font-weight: 500;
    font-size: clamp(8.16px, 16 / 1512 * 100vw, 16px);
    line-height: 1.375;
    letter-spacing: 0.12em;
  }
  .page-wrap .campaign-content .unit .attention {
    margin-top: clamp(25.5px, 50 / 1512 * 100vw, 50px);
    padding: clamp(20.4px, 40 / 1512 * 100vw, 40px) clamp(35.7px, 70 / 1512 * 100vw, 70px);
    border-radius: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    background-color: #F2F5FF;
  }
  .page-wrap .campaign-content .unit .attention__text {
    font-weight: 700;
    font-size: clamp(9.18px, 18 / 1512 * 100vw, 18px);
    letter-spacing: 0.17em;
    text-align: center;
  }
  .page-wrap .campaign-content .unit .attention__line {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: clamp(22.95px, 45 / 1512 * 100vw, 45px);
    margin-top: clamp(12.75px, 25 / 1512 * 100vw, 25px);
  }
  .page-wrap .campaign-content .unit .attention__line:not(:first-of-type) {
    margin-top: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    padding-top: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    border-top: clamp(2.04px, 4 / 1512 * 100vw, 4px) solid #0037FF;
  }
  .page-wrap .campaign-content .unit .attention__icon {
    display: block;
    position: relative;
    width: clamp(38.76px, 76 / 1512 * 100vw, 76px);
    height: clamp(38.76px, 76 / 1512 * 100vw, 76px);
  }
  .page-wrap .campaign-content .unit .attention__icon.cross::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: clamp(43.35px, 85 / 1512 * 100vw, 85px);
    height: clamp(6.63px, 13 / 1512 * 100vw, 13px);
    border-radius: clamp(6.63px, 13 / 1512 * 100vw, 13px);
    background-color: #FF73D7;
    rotate: 45deg;
  }
  .page-wrap .campaign-content .unit .attention__icon.cross::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: clamp(43.35px, 85 / 1512 * 100vw, 85px);
    height: clamp(6.63px, 13 / 1512 * 100vw, 13px);
    border-radius: clamp(6.63px, 13 / 1512 * 100vw, 13px);
    background-color: #FF73D7;
    rotate: -45deg;
  }
  .page-wrap .campaign-content .unit .attention__icon.circle {
    border-radius: 50%;
    border: clamp(6.63px, 13 / 1512 * 100vw, 13px) solid #FF73D7;
  }
  .page-wrap .campaign-content .unit .attention__list {
    width: clamp(283.56px, 556 / 1512 * 100vw, 556px);
  }
  .page-wrap .campaign-content .unit .attention__item {
    font-weight: 500;
    font-size: clamp(7.65px, 15 / 1512 * 100vw, 15px);
    line-height: 2.1333333333;
    letter-spacing: 0.15em;
  }
  .page-wrap .campaign-content .unit .term {
    margin-top: clamp(14.79px, 29 / 1512 * 100vw, 29px) !important;
    height: clamp(110.16px, 216 / 1512 * 100vw, 216px);
    overflow-y: scroll;
    scrollbar-width: thin;
    /* つまみを黒、背景を赤に */
    scrollbar-color: #0037FF #F7F7F7;
  }
  .page-wrap .campaign-content .unit .term::-webkit-scrollbar {
    width: clamp(4.08px, 8 / 1512 * 100vw, 8px);
  }
  .page-wrap .campaign-content .unit .term::-webkit-scrollbar-thumb {
    width: clamp(2.55px, 5 / 1512 * 100vw, 5px);
    background-color: #0037FF;
    border-radius: clamp(2.55px, 5 / 1512 * 100vw, 5px);
  }
  .page-wrap .campaign-content .unit .term::-webkit-scrollbar-track {
    background-color: #F7F7F7;
  }
  .page-wrap .campaign-content .unit .term::-webkit-scrollbar-button {
    display: none;
  }
  .page-wrap .campaign-content .unit .term__box {
    display: grid;
    row-gap: clamp(10.2px, 20 / 1512 * 100vw, 20px);
    padding-right: clamp(15.3px, 30 / 1512 * 100vw, 30px);
  }
  .page-wrap .campaign-content .unit .term__ttl {
    font-size: clamp(9.18px, 18 / 1512 * 100vw, 18px);
    line-height: 1.33;
    letter-spacing: 0.1em;
  }
  .page-wrap .campaign-content .unit .term__text {
    margin-top: clamp(4.08px, 8 / 1512 * 100vw, 8px);
    font-weight: 400;
    font-size: clamp(7.14px, 14 / 1512 * 100vw, 14px);
    line-height: 2;
    letter-spacing: 0.05em;
  }
  .page-wrap .campaign-content#present-01 {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMTAwIDI3ODAiPiAgIDxnPiAgICAgPHBhdGggZD0iTTAsMTcyLjc5TDE1MC40NSwwaDc5Mi40bDEzNi4xMiwxOTYuMjEsMjEuMDIsMjQ1MS43NC0xMTYuMTEsMTMyLjA1SDEyNS4xMUwwLDI2NjQuNzZWMTcyLjc5WiIgc3R5bGU9ImZpbGw6ICNmZmY7Ii8+ICAgPC9nPiA8L3N2Zz4=");
  }
  .page-wrap .campaign-content#present-01 .step__num {
    height: clamp(27.54px, 54 / 1512 * 100vw, 54px);
  }
  .page-wrap .campaign-content#present-01 .present {
    grid-template-columns: clamp(219.3px, 430 / 1512 * 100vw, 430px) clamp(225.93px, 443 / 1512 * 100vw, 443px);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea {
    margin-top: clamp(13.77px, 27 / 1512 * 100vw, 27px);
    padding-left: clamp(30.09px, 59 / 1512 * 100vw, 59px);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child {
    width: clamp(189.21px, 371 / 1512 * 100vw, 371px);
    height: clamp(32.64px, 64 / 1512 * 100vw, 64px);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child .present__btnlink::after {
    right: clamp(16.32px, 32 / 1512 * 100vw, 32px);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child .small {
    font-size: clamp(7.65px, 15 / 1512 * 100vw, 15px);
    letter-spacing: 0.12em;
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child .large {
    font-size: clamp(9.18px, 18 / 1512 * 100vw, 18px);
    letter-spacing: 0.13em;
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child .present__btndeco {
    translate: -19% -50%;
    width: clamp(52.53px, 103 / 1512 * 100vw, 103px);
    height: clamp(52.53px, 103 / 1512 * 100vw, 103px);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child .present__btndeco img {
    width: clamp(41.31px, 81 / 1512 * 100vw, 81px);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child {
    margin-left: clamp(-6px, -6 / 1512 * 100vw, -3.06px);
    width: clamp(156.06px, 306 / 1512 * 100vw, 306px);
    height: clamp(31.62px, 62 / 1512 * 100vw, 62px);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child .present__btnlink::after {
    right: clamp(10.2px, 20 / 1512 * 100vw, 20px);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child .small {
    font-size: clamp(6.12px, 12 / 1512 * 100vw, 12px);
    letter-spacing: 0.11em;
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child .large {
    font-size: clamp(7.14px, 14 / 1512 * 100vw, 14px);
    letter-spacing: 0.11em;
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child .present__btndeco {
    translate: -13% -48%;
    width: clamp(40.8px, 80 / 1512 * 100vw, 80px);
    height: clamp(40.8px, 80 / 1512 * 100vw, 80px);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child .present__btndeco img {
    width: clamp(32.13px, 63 / 1512 * 100vw, 63px);
  }
  .page-wrap .campaign-content#present-01 .present__btnlink {
    display: grid;
    place-content: center;
    padding-left: clamp(24.48px, 48 / 1512 * 100vw, 48px);
    padding-block: clamp(9.18px, 18 / 1512 * 100vw, 18px);
    font-size: clamp(8.16px, 16 / 1512 * 100vw, 16px);
    letter-spacing: 0.09em;
  }
  .page-wrap .campaign-content#present-01 .present__btndeco {
    display: grid;
    place-content: center;
    position: absolute;
    top: 50%;
    border-radius: 50%;
    background-color: #0037FF;
  }
  .page-wrap .campaign-content#present-01 .present__btndeco img {
    margin-inline: auto;
    width: clamp(34.17px, 67 / 1512 * 100vw, 67px);
  }
  .page-wrap .campaign-content#present-01 .present__imgarea {
    grid-column: 2/3;
    grid-row: 1/3;
    place-self: center;
  }
  .page-wrap .campaign-content#present-01 .present__imgarea img {
    position: relative;
    top: clamp(20.4px, 40 / 1512 * 100vw, 40px);
    left: clamp(19.38px, 38 / 1512 * 100vw, 38px);
    scale: 1.15;
  }
  .page-wrap .campaign-content#present-01 .present__note {
    margin-top: clamp(24.99px, 49 / 1512 * 100vw, 49px);
  }
  .page-wrap .campaign-content#present-02 {
    background-image: url("../images/bg_present_02_pc.svg");
    background-repeat: no-repeat;
    background-size: 100%;
  }
  .page-wrap .campaign-content#present-02 .present {
    grid-template-columns: clamp(219.3px, 430 / 1512 * 100vw, 430px) clamp(248.37px, 487 / 1512 * 100vw, 487px);
  }
  .page-wrap .campaign-content#present-02 .present__btnlink::after {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .page-wrap .campaign {
    position: relative;
    background-color: #6F4EFF;
    z-index: 1;
  }
  .page-wrap .campaign-wrapper {
    position: relative;
  }
  .page-wrap .campaign__inner {
    position: relative;
    margin-inline: auto;
    padding-block: calc(80 / 390 * 100vw) calc(50 / 390 * 100vw);
    width: 100%;
  }
  .page-wrap .campaign__ttl {
    position: relative;
    margin-inline: auto;
    width: calc(183 / 390 * 100vw);
  }
  .page-wrap .campaign__ttl img {
    width: 100%;
  }
  .page-wrap .campaign__lead {
    position: relative;
    margin-top: calc(28 / 390 * 100vw) !important;
    font-weight: 700;
    font-size: calc(14 / 390 * 100vw);
    line-height: 2;
    letter-spacing: 0.25em;
    text-align: center;
    color: #fff;
  }
  .page-wrap .campaign-bg-line-01 {
    position: absolute;
    top: calc(-8 / 390 * 100vw);
    left: 50%;
    translate: -50% 0;
    width: 100%;
    min-width: 1600px;
  }
  .page-wrap .campaign-bg-stitch-01, .page-wrap .campaign-bg-stitch-02 {
    display: inline-block;
    position: absolute;
    top: calc(14 / 390 * 100vw);
    left: 0;
    width: 100%;
    height: calc(21 / 390 * 100vw);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto calc(21 / 390 * 100vw);
  }
  .page-wrap .campaign-bg-01 {
    position: absolute;
    top: calc(25 / 390 * 100vw);
    right: calc(-120 / 390 * 100vw);
    width: calc(220 / 390 * 100vw);
  }
  .page-wrap .campaign-bg-02 {
    position: absolute;
    top: calc(314 / 390 * 100vw);
    left: calc(-182 / 390 * 100vw);
    width: calc(313 / 390 * 100vw);
  }
  .page-wrap .campaign-bg-03 {
    position: absolute;
    top: calc(940 / 390 * 100vw);
    right: calc(-96 / 390 * 100vw);
    width: calc(313 / 390 * 100vw);
  }
  .page-wrap .campaign-bg-04 {
    position: absolute;
    top: calc(1200 / 390 * 100vw);
    left: calc(-136 / 390 * 100vw);
    width: calc(313 / 390 * 100vw);
  }
  .page-wrap .campaign-bg-12 {
    position: absolute;
    top: calc(1641 / 390 * 100vw);
    right: calc(-53 / 390 * 100vw);
    width: calc(312 / 390 * 100vw);
  }
  .page-wrap .campaign-bg-member-01 {
    position: absolute;
    top: calc(-133 / 390 * 100vw);
    left: calc(1 / 390 * 100vw);
    width: calc(228 / 390 * 100vw);
    rotate: -8deg;
    transform-origin: 30% 43%;
    animation: member-swaying-campaign-01 2s step-end 0.3s infinite;
  }
  .page-wrap .campaign-bg-member-01-2 {
    position: absolute;
    top: calc(-133 / 390 * 100vw);
    left: calc(1 / 390 * 100vw);
    width: calc(228 / 390 * 100vw);
    rotate: -8deg;
    transform-origin: 30% 43%;
    animation: member-swaying-campaign-01 2s step-end 0.3s infinite;
  }
  @keyframes member-swaying-campaign-01 {
    0% {
      rotate: -6deg;
    }
    10% {
      rotate: -10deg;
    }
    20% {
      rotate: -6deg;
    }
    30% {
      rotate: -8deg;
    }
    100% {
      rotate: -8deg;
    }
  }
  .page-wrap .campaign-bg-member-02 {
    position: absolute;
    top: calc(1953 / 390 * 100vw);
    left: calc(-58 / 390 * 100vw);
    width: calc(180 / 390 * 100vw);
    z-index: 1;
    transform-origin: 70% 60%;
    animation: member-swaying 2s step-end 0.1s infinite;
  }
  .page-wrap .campaign-bg-member-03 {
    position: absolute;
    top: calc(1483 / 390 * 100vw);
    right: calc(-222 / 390 * 100vw);
    width: calc(200 / 390 * 100vw);
    rotate: -41deg;
    z-index: 1;
  }
  .page-wrap .campaign-bg-member-03.is-appear {
    animation: campaign-member-03-appear 0.4s ease-in 0.6s forwards, member-swaying-campaign-03 2s step-end 1.8s infinite;
  }
  @keyframes campaign-member-03-appear {
    0% {
      top: calc(1483 / 390 * 100vw);
      right: calc(-222 / 390 * 100vw);
    }
    70% {
      top: calc(1453 / 390 * 100vw);
      right: calc(-101 / 390 * 100vw);
    }
    85% {
      top: calc(1458 / 390 * 100vw);
      right: calc(-121 / 390 * 100vw);
    }
    100% {
      top: calc(1447 / 390 * 100vw);
      right: calc(-106 / 390 * 100vw);
    }
  }
  @keyframes member-swaying-campaign-03 {
    0% {
      rotate: -39deg;
    }
    10% {
      rotate: -43deg;
    }
    20% {
      rotate: -39deg;
    }
    30% {
      rotate: -41deg;
    }
    100% {
      rotate: -41deg;
    }
  }
  .page-wrap .campaign-bg-member-04 {
    position: absolute;
    bottom: calc(-5 / 390 * 100vw);
    left: calc(72 / 390 * 100vw);
    width: calc(224 / 390 * 100vw);
    z-index: 1;
    opacity: 0;
    scale: 0.8;
    transition: opacity 0.3s ease-in 0.3s, scale 0.3s ease-in 0.3s, bottom 0.3s ease-in 0.3s;
  }
  .page-wrap .campaign-bg-member-04.is-appear {
    opacity: 1;
    scale: 1;
    bottom: 0;
  }
  .page-wrap .campaign-bg-member-05 {
    position: absolute;
    top: calc(3254 / 390 * 100vw);
    left: calc(-114 / 390 * 100vw);
    width: calc(209 / 390 * 100vw);
    rotate: -9deg;
    transform-origin: 23% 73%;
  }
  .page-wrap .campaign-bg-member-05.is-appear {
    animation: campaign-member-05-appear 0.4s ease-in 0.6s forwards, member-swaying-campaign-05 2s step-end 1.8s infinite;
  }
  @keyframes campaign-member-05-appear {
    0% {
      left: calc(-114 / 390 * 100vw);
    }
    70% {
      left: calc(3 / 390 * 100vw);
    }
    85% {
      left: calc(-9 / 390 * 100vw);
    }
    100% {
      left: calc(-5 / 390 * 100vw);
    }
  }
  @keyframes member-swaying-campaign-05 {
    0% {
      rotate: -7deg;
    }
    10% {
      rotate: -11deg;
    }
    20% {
      rotate: -7deg;
    }
    30% {
      rotate: -9deg;
    }
    100% {
      rotate: -9deg;
    }
  }
  .page-wrap .campaign-bg-member-06 {
    position: absolute;
    top: calc(-87 / 390 * 100vw);
    right: calc(49 / 390 * 100vw);
    width: calc(138 / 390 * 100vw);
  }
  .page-wrap .campaign-bg-member-06.is-appear {
    animation: member-swaying 2s step-end 0.1s infinite;
  }
  .page-wrap .campaign-bg-member-07 {
    position: absolute;
    top: calc(4775 / 390 * 100vw);
    right: calc(-93 / 390 * 100vw);
    width: calc(94 / 390 * 100vw);
  }
  .page-wrap .campaign-bg-member-07.is-appear {
    animation: campaign-member-07-appear 0.2s ease-in 0.6s forwards, member-swaying 2s step-end 1.8s infinite;
  }
  @keyframes campaign-member-07-appear {
    0% {
      right: calc(-93 / 390 * 100vw);
    }
    70% {
      right: calc(0 / 390 * 100vw);
    }
    85% {
      right: calc(-10 / 390 * 100vw);
    }
    100% {
      right: calc(-2 / 390 * 100vw);
    }
  }
  .page-wrap .campaign-bg__bottom {
    position: absolute;
    top: 50%;
    left: calc(50% - 50vw);
    width: 100vw;
    height: 50%;
    background-color: #5DF16C;
    clip-path: shape(from 100% 0.19%, curve by -3.75% 0.27% with -1.58% 0.11%/-3.5% 0.27%, hline by -11.87%, line by -8.07% -0.45%, hline by -21.79%, line by -26.16% 0.45%, line to 13.48% 0%, line to 0% 0.24%, vline by 99.76%, hline by 100%, vline to 0.19%, close);
  }
  .page-wrap .campaign-bg__bottom-inner {
    position: relative;
    margin-inline: auto;
    width: 100%;
  }
  .page-wrap .campaign-bg-06 {
    position: absolute;
    top: calc(631 / 390 * 100vw);
    right: calc(-285 / 390 * 100vw);
    width: calc(597 / 390 * 100vw);
    rotate: 22deg;
  }
  .page-wrap .campaign-bg-07 {
    position: absolute;
    top: calc(808 / 390 * 100vw);
    left: calc(-198 / 390 * 100vw);
    width: calc(600 / 390 * 100vw);
  }
  .page-wrap .campaign-bg-09 {
    position: absolute;
    top: calc(1800 / 390 * 100vw);
    right: calc(-452 / 390 * 100vw);
    width: calc(1012 / 390 * 100vw);
    rotate: 90deg;
  }
  .page-wrap .campaign-bg-10 {
    position: absolute;
    top: calc(1667 / 390 * 100vw);
    left: calc(-329 / 390 * 100vw);
    width: calc(877 / 390 * 100vw);
    rotate: 7deg;
  }
  .page-wrap .campaign-bg-11 {
    position: absolute;
    top: calc(16 / 390 * 100vw);
    left: calc(-131 / 390 * 100vw);
    width: calc(507 / 390 * 100vw);
    rotate: -5deg;
  }
  .page-wrap .campaign-contents {
    display: grid;
    row-gap: calc(41 / 390 * 100vw);
    margin-top: calc(38 / 390 * 100vw);
    margin-inline: auto;
    width: calc(340 / 390 * 100vw);
  }
  .page-wrap .campaign-content {
    position: relative;
    margin-left: calc(-6 / 390 * 100vw);
    width: 100%;
    background-repeat: no-repeat;
    background-size: 107% 101.5%;
    background-position: center;
    filter: drop-shadow(calc(7.95 / 390 * 100vw) calc(9.94 / 390 * 100vw) 0 #0037FF);
  }
  .page-wrap .campaign-content-wrapper {
    position: relative;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1), translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    opacity: 0;
    translate: 0 30px;
    scale: 0.3;
  }
  .page-wrap .campaign-content-wrapper.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .campaign-content__inner {
    padding: calc(41 / 390 * 100vw) calc(20 / 390 * 100vw) calc(78 / 390 * 100vw);
  }
  .page-wrap .campaign-content__deco {
    display: grid;
    place-content: center;
    position: absolute;
    width: calc(97 / 390 * 100vw);
    height: calc(97 / 390 * 100vw);
    border-radius: 50%;
    background-color: #FFE100;
    z-index: 1;
  }
  .page-wrap .campaign-content__deco img {
    width: calc(65 / 390 * 100vw);
  }
  .page-wrap .campaign-content__deco--01 {
    top: calc(292 / 390 * 100vw);
    left: calc(11 / 390 * 100vw);
  }
  .page-wrap .campaign-content__deco--02 {
    top: calc(264 / 390 * 100vw);
    left: calc(5 / 390 * 100vw);
  }
  .page-wrap .campaign-content__ttl {
    display: grid;
    place-content: center;
    margin-inline: auto;
    width: calc(197 / 390 * 100vw);
    height: calc(50 / 390 * 100vw);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOTgiIGhlaWdodD0iNTEiIHZpZXdCb3g9IjAgMCAxOTggNTEiIGZpbGw9Im5vbmUiPiAgIDxwYXRoIGQ9Ik0wIDM1LjUwMzVMMi43OTA3MyA3LjUxNTM1TDI1LjExNjUgMEgxNzguMzc1TDE5Ni4yMDkgMTAuMjc0MUwxOTcuMTQ1IDM4LjYxMzNMMTgwLjYgNTAuMjc1MUgxNS43NDc3TDAgMzUuNTAzNVoiIGZpbGw9IiNGRjczRDciLz4gPC9zdmc+");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
  .page-wrap .campaign-content__ttl img {
    width: calc(135 / 390 * 100vw);
  }
  .page-wrap .campaign-content .present {
    display: grid;
    margin-top: calc(17 / 390 * 100vw) !important;
    padding-bottom: calc(14 / 390 * 100vw);
  }
  .page-wrap .campaign-content .present__textarea {
    display: contents;
  }
  .page-wrap .campaign-content .present__textbox {
    grid-row: 1/2;
  }
  .page-wrap .campaign-content .present__deco {
    font-weight: 700;
    font-size: calc(13 / 390 * 100vw);
    line-height: 1.61;
    letter-spacing: 0.17em;
    text-align: center;
  }
  .page-wrap .campaign-content .present__maintext {
    margin-top: calc(8 / 390 * 100vw);
    font-weight: 700;
    font-size: calc(26 / 390 * 100vw);
    line-height: 1.46;
    letter-spacing: 0.17em;
    text-align: center;
  }
  .page-wrap .campaign-content .present__subtext {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: calc(6 / 390 * 100vw);
    margin-top: calc(17 / 390 * 100vw);
    color: #0037FF;
  }
  .page-wrap .campaign-content .present__subtext .ja {
    margin-top: calc(-1 / 390 * 100vw);
    padding: calc(5 / 390 * 100vw) calc(7 / 390 * 100vw) calc(5 / 390 * 100vw);
    border: 2px solid #0037FF;
    font-weight: 900;
    font-size: calc(13 / 390 * 100vw);
    line-height: 1;
    letter-spacing: 0.16em;
  }
  .page-wrap .campaign-content .present__subtext .num {
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: calc(32 / 390 * 100vw);
    letter-spacing: 0.07em;
  }
  .page-wrap .campaign-content .present__subtext .en {
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: calc(20.5 / 390 * 100vw);
    letter-spacing: 0.05em;
  }
  .page-wrap .campaign-content .present__subtext .line {
    display: inline-block;
    margin-inline: calc(4 / 390 * 100vw);
    width: calc(9.86 / 390 * 100vw);
    height: calc(2.4 / 390 * 100vw);
    background-color: #0037FF;
    vertical-align: super;
  }
  .page-wrap .campaign-content .present__btnarea {
    grid-row: 3/4;
    display: grid;
    place-content: center;
    row-gap: calc(26 / 390 * 100vw);
    margin-top: calc(11 / 390 * 100vw);
  }
  .page-wrap .campaign-content .present__btn {
    margin-inline: auto;
    width: calc(210 / 390 * 100vw);
    height: calc(50 / 390 * 100vw);
  }
  .page-wrap .campaign-content .present__btnlink {
    display: grid;
    place-content: center;
    grid-template-columns: auto auto;
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: calc(50 / 390 * 100vw);
    border: calc(2.37 / 390 * 100vw) solid #0037FF;
    box-shadow: 0 calc(4.73 / 390 * 100vw) 0 0 #0037FF;
    background-color: #FFE100;
    font-weight: 700;
    font-size: calc(15.77 / 390 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.21em;
    text-align: center;
    transition: opacity 0.3s ease;
  }
  .page-wrap .campaign-content .present__btnlink:hover {
    opacity: 0.8;
  }
  .page-wrap .campaign-content .present__btnlink::after {
    content: "";
    position: absolute;
    top: 50%;
    right: calc(25 / 390 * 100vw);
    translate: 0 -50%;
    width: calc(6 / 390 * 100vw);
    height: calc(6 / 390 * 100vw);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    rotate: 45deg;
  }
  .page-wrap .campaign-content .present__btndeco {
    display: grid;
    place-content: center;
    position: absolute;
    top: 50%;
    translate: -17% -50%;
    width: calc(80 / 390 * 100vw);
    height: calc(80 / 390 * 100vw);
    border-radius: 50%;
    background-color: #0037FF;
  }
  .page-wrap .campaign-content .present__btndeco img {
    margin-inline: auto;
    width: 89%;
  }
  .page-wrap .campaign-content .present__imgarea {
    margin-top: calc(4 / 390 * 100vw);
    grid-row: 2/3;
  }
  .page-wrap .campaign-content .present__imgarea img {
    width: 100%;
  }
  .page-wrap .campaign-content .present__note {
    grid-row: 4/5;
    margin-top: calc(46 / 390 * 100vw);
    font-weight: 400;
    font-size: calc(11.5 / 390 * 100vw);
    line-height: 1.5;
    letter-spacing: 0;
  }
  .page-wrap .campaign-content .units {
    display: grid;
    row-gap: calc(41 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit {
    min-width: 0;
  }
  .page-wrap .campaign-content .unit__ttl {
    padding-block: calc(11 / 390 * 100vw);
    background-color: #EFEFEF;
    font-weight: 700;
    font-size: calc(16 / 390 * 100vw);
    letter-spacing: 0.24em;
    text-align: center;
  }
  .page-wrap .campaign-content .unit .product {
    margin-top: calc(24 / 390 * 100vw) !important;
  }
  .page-wrap .campaign-content .unit .product__imgbox {
    display: flex;
    justify-content: center;
    align-items: stretch;
    column-gap: calc(21.57 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .product__imgbox img {
    width: calc(105 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .product__textarea {
    text-align: center;
  }
  .page-wrap .campaign-content .unit .product__maintext {
    margin-top: calc(13 / 390 * 100vw);
    font-weight: 700;
    font-size: calc(20 / 390 * 100vw);
    line-height: 1.4;
    letter-spacing: 0.16em;
  }
  .page-wrap .campaign-content .unit .product__subtext {
    display: inline-block;
    margin-top: calc(7 / 390 * 100vw);
    padding: calc(2 / 390 * 100vw) calc(13 / 390 * 100vw) calc(3 / 390 * 100vw);
    border: 1px solid #000;
    font-weight: 500;
    font-size: calc(12 / 390 * 100vw);
    line-height: 1;
    letter-spacing: 0.16em;
  }
  .page-wrap .campaign-content .unit .product__text {
    margin-top: calc(21 / 390 * 100vw);
    margin-inline: auto;
    width: calc(292 / 390 * 100vw);
    font-weight: 500;
    font-size: calc(15 / 390 * 100vw);
    line-height: 2.067;
    letter-spacing: 0.19em;
    text-align: justify;
  }
  .page-wrap .campaign-content .unit .method {
    margin-top: calc(23 / 390 * 100vw) !important;
  }
  .page-wrap .campaign-content .unit .method__imgbox {
    margin-top: calc(18 / 390 * 100vw);
    margin-inline: auto;
    width: calc(190 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .method__imgbox img {
    width: 100%;
  }
  .page-wrap .campaign-content .unit .steps {
    display: grid;
    row-gap: calc(25 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .step {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    column-gap: calc(10 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .step__num {
    flex-shrink: 0;
    display: grid;
    place-content: center;
    position: relative;
    width: calc(51 / 390 * 100vw);
    height: calc(74 / 390 * 100vw);
    border-radius: calc(9.72 / 390 * 100vw);
    background-color: #FF73D7;
    text-align: center;
  }
  .page-wrap .campaign-content .unit .step__num-text {
    display: grid;
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: calc(15 / 390 * 100vw);
    line-height: 1;
    letter-spacing: 0.11em;
    color: #0037FF;
  }
  .page-wrap .campaign-content .unit .step__num-text span {
    display: inline-block;
    margin-top: calc(2 / 390 * 100vw);
    font-size: calc(22.51 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .step__text {
    font-weight: 500;
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.78;
    letter-spacing: 0.09em;
  }
  .page-wrap .campaign-content .unit .step__text a {
    text-decoration: underline;
    transition: opacity 0.3s ease;
  }
  .page-wrap .campaign-content .unit .step__text a:hover {
    opacity: 0.8;
  }
  .page-wrap .campaign-content .unit .step:not(:last-of-type) .step__num::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    translate: -50% 55%;
    width: clamp(14.28px, 28 / 1512 * 100vw, 28px);
    height: clamp(9.69px, 19 / 1512 * 100vw, 19px);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    background-color: #FF73D7;
  }
  .page-wrap .campaign-content .unit .howto {
    position: relative;
    margin-top: calc(21 / 390 * 100vw) !important;
  }
  .page-wrap .campaign-content .unit .howto__text {
    font-weight: 700;
    font-size: calc(16 / 390 * 100vw);
    line-height: 1.75;
    letter-spacing: 0.09em;
  }
  .page-wrap .campaign-content .unit .howto__list {
    margin-top: calc(10 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .howto__item {
    font-weight: 500;
    font-size: calc(13 / 390 * 100vw);
    line-height: 1.84;
    letter-spacing: 0.02em;
  }
  .page-wrap .campaign-content .unit .howto__imgbox {
    margin-top: calc(30 / 390 * 100vw);
    padding-right: calc(30 / 390 * 100vw);
    width: 100%;
  }
  .page-wrap .campaign-content .unit .howto__imgbox img {
    width: 100%;
  }
  .page-wrap .campaign-content .unit .howto__notes {
    margin-top: calc(4 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .howto__note {
    display: inline;
    font-weight: 500;
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.75;
    letter-spacing: 0.11em;
    text-align: justify;
  }
  .page-wrap .campaign-content .unit .factors {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(9.65 / 390 * 100vw) calc(29 / 390 * 100vw);
    margin-top: calc(12 / 390 * 100vw);
    width: calc(255 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .factor {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    column-gap: calc(9 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .factor .num {
    display: grid;
    place-content: center;
    width: calc(21.64 / 390 * 100vw);
    height: calc(21.64 / 390 * 100vw);
    border-radius: 50%;
    background-color: #FF73D7;
    font-family: "New Amsterdam", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: calc(16 / 390 * 100vw);
    letter-spacing: 0;
    color: #0037FF;
  }
  .page-wrap .campaign-content .unit .factor .text {
    font-weight: 500;
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.39;
    letter-spacing: 0.09em;
  }
  .page-wrap .campaign-content .unit .attention {
    position: relative;
    margin-top: calc(59 / 390 * 100vw);
    padding: calc(32 / 390 * 100vw) calc(13 / 390 * 100vw);
    border-radius: calc(35 / 390 * 100vw);
    background-color: #F2F5FF;
  }
  .page-wrap .campaign-content .unit .attention__text {
    font-weight: 700;
    font-size: calc(15 / 390 * 100vw);
    line-height: 1.8;
    letter-spacing: 0.14em;
    text-align: center;
  }
  .page-wrap .campaign-content .unit .attention__line {
    margin-top: calc(27 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .attention__line:not(:first-of-type) {
    margin-top: calc(23 / 390 * 100vw);
    padding-top: calc(23 / 390 * 100vw);
    border-top: calc(4 / 390 * 100vw) solid #0037FF;
  }
  .page-wrap .campaign-content .unit .attention__icon {
    display: block;
    position: relative;
    margin-inline: auto;
    width: calc(55 / 390 * 100vw);
    height: calc(55 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .attention__icon.cross::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: calc(70 / 390 * 100vw);
    height: calc(8.6 / 390 * 100vw);
    border-radius: calc(8.6 / 390 * 100vw);
    background-color: #FF73D7;
    rotate: 45deg;
  }
  .page-wrap .campaign-content .unit .attention__icon.cross::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: calc(70 / 390 * 100vw);
    height: calc(8.6 / 390 * 100vw);
    border-radius: calc(8.6 / 390 * 100vw);
    background-color: #FF73D7;
    rotate: -45deg;
  }
  .page-wrap .campaign-content .unit .attention__icon.circle {
    border-radius: 50%;
    border: calc(8.6 / 390 * 100vw) solid #FF73D7;
  }
  .page-wrap .campaign-content .unit .attention__list {
    margin-top: calc(20 / 390 * 100vw);
    padding-left: calc(2 / 390 * 100vw);
    width: 100%;
  }
  .page-wrap .campaign-content .unit .attention__item {
    display: inline;
    font-weight: 500;
    font-size: calc(13 / 390 * 100vw);
    line-height: 2;
    letter-spacing: 0.02em;
  }
  .page-wrap .campaign-content .unit .term {
    margin-top: calc(15 / 390 * 100vw) !important;
    height: calc(320 / 390 * 100vw);
    overflow-y: scroll;
    scrollbar-width: thin;
    scrollbar-color: #0037FF #F7F7F7;
  }
  .page-wrap .campaign-content .unit .term::-webkit-scrollbar {
    width: calc(9 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .term::-webkit-scrollbar-thumb {
    width: calc(9 / 390 * 100vw);
    background-color: #0037FF;
    border-radius: calc(9 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .term::-webkit-scrollbar-track {
    background-color: #F7F7F7;
  }
  .page-wrap .campaign-content .unit .term::-webkit-scrollbar-button {
    display: none;
  }
  .page-wrap .campaign-content .unit .term__box {
    display: grid;
    row-gap: calc(20 / 390 * 100vw);
    padding-right: calc(14 / 390 * 100vw);
  }
  .page-wrap .campaign-content .unit .term__ttl {
    font-size: calc(16 / 390 * 100vw);
    line-height: 1.33;
    letter-spacing: 0.1em;
  }
  .page-wrap .campaign-content .unit .term__text {
    margin-top: calc(8 / 390 * 100vw);
    font-weight: 400;
    font-size: calc(13 / 390 * 100vw);
    line-height: 1.7;
    letter-spacing: 0.05em;
    overflow-wrap: anywhere;
  }
  .page-wrap .campaign-content#present-01 {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMzkuODUgMzU2MCI+ICAgPGc+ICAgICA8cGF0aCBkPSJNMjkzLjc3LDBINTQuOTZMMCwxMTEuNjR2MzM4MC4wOGw1Ni40NCw2OC4yOWgyMzIuMDJsNDkuMS01NS4yNiwyLjI5LTMzOTkuODJMMjkzLjc3LDBaIiBzdHlsZT0iZmlsbDogI2ZmZjsiLz4gICA8L2c+IDwvc3ZnPg==");
  }
  .page-wrap .campaign-content#present-01 .present__btnarea {
    padding-left: calc(11 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child {
    width: calc(261 / 390 * 100vw);
    height: calc(45 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child .present__btnlink::after {
    right: calc(23 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child .small {
    grid-column: 1/3;
    font-size: calc(10 / 390 * 100vw);
    letter-spacing: 0.12em;
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child .large {
    grid-column: 1/3;
    font-size: calc(12 / 390 * 100vw);
    letter-spacing: 0.13em;
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child .present__btndeco {
    translate: -19% -50%;
    width: calc(73 / 390 * 100vw);
    height: calc(73 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:first-child .present__btndeco img {
    width: calc(63 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child {
    width: calc(216 / 390 * 100vw);
    height: calc(43 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child .present__btnlink::after {
    right: calc(17 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child .small {
    grid-column: 1/3;
    font-size: calc(8.4 / 390 * 100vw);
    letter-spacing: 0.11em;
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child .large {
    grid-column: 1/3;
    font-size: calc(9.8 / 390 * 100vw);
    letter-spacing: 0.11em;
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child .present__btndeco {
    translate: -13% -48%;
    width: calc(56 / 390 * 100vw);
    height: calc(56 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-01 .present__btnarea .present__btn:last-child .present__btndeco img {
    width: calc(46 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-01 .present__btn {
    width: calc(268 / 390 * 100vw);
    height: calc(60 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-01 .present__btnlink {
    padding: calc(7 / 390 * 100vw) calc(0 / 390 * 100vw) calc(8 / 390 * 100vw) calc(21 / 390 * 100vw);
    line-height: 1.33;
    letter-spacing: 0.17em;
  }
  .page-wrap .campaign-content#present-01 .present__imgarea {
    margin-left: calc(36 / 390 * 100vw);
    margin-right: calc(10 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-02 {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzNDQiIGhlaWdodD0iMTI4NCIgdmlld0JveD0iMCAwIDM0NCAxMjg0IiBmaWxsPSJub25lIj4gICA8cGF0aCBkPSJNMjk1LjY4NSAxLjczODlMNDEuMTIzMSAxLjMzMzQ2ZS0wNUw5LjA4Mzc1ZS0wNSA1MC44ODM5TDAgMTI1Mi4zOUw1NC4yMjk4IDEyODMuNzlIMjkwLjM0NUwzMzkuNzY0IDEyNjMuODlMMzQzLjQ4NCA0MS45NDJMMjk1LjY4NSAxLjczODlaIiBmaWxsPSJ3aGl0ZSIvPiA8L3N2Zz4=");
    background-size: 106% 100%;
  }
  .page-wrap .campaign-content#present-02 .present__imgarea {
    margin-top: calc(-11 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-02 .present__btnarea {
    margin-top: calc(-2 / 390 * 100vw);
  }
  .page-wrap .campaign-content#present-02 .present__btnlink::after {
    display: none;
  }
  .page-wrap .campaign-content#present-02 .present__btnlink img {
    margin-right: calc(6 / 390 * 100vw);
  }
}
@media screen and (min-width: 768px) {
  .page-wrap .contact {
    position: relative;
    margin-top: clamp(-10px, -10 / 1512 * 100vw, -5.1px);
    clip-path: shape(from 100% 0%, curve by -3.49% 1.19% with -1.69% 0.4%/-3.14% 1.19%, hline by -11.87%, line by -8.07% -1.19%, hline by -21.79%, line by -26.16% 1.19%, line to 13.74% 0%, line to 0% 0.63%, vline by 99.37%, curve by 3.1% -1.19% with 1.69% -0.4%/2.76% -1.19%, hline by 11.87%, line by 8.07% 1.19%, hline by 21.79%, line by 26.16% -1.19%, line by 14.88% 1.19%, line by 14.13% -1.19%, vline to 0%, close);
    background-color: #0037FF;
  }
  .page-wrap .contact__inner {
    padding-block: clamp(71.4px, 140 / 1512 * 100vw, 140px) clamp(81.6px, 160 / 1512 * 100vw, 160px);
  }
  .page-wrap .contact-wrapper {
    position: relative;
  }
  .page-wrap .contact-bg-member-wrapper {
    position: relative;
    margin-inline: auto;
    width: 100%;
    max-width: 1512px;
  }
  .page-wrap .contact-bg-member-01 {
    position: absolute;
    top: clamp(-264px, -264 / 1512 * 100vw, -134.64px);
    left: clamp(-6px, -6 / 1512 * 100vw, -3.06px);
    width: clamp(127.5px, 250 / 1512 * 100vw, 250px);
    z-index: 1;
    animation: member-swaying 2s step-end -0.5s infinite;
  }
  .page-wrap .contact-bg-member-02 {
    position: absolute;
    top: clamp(-321px, -321 / 1512 * 100vw, -163.71px);
    right: clamp(38.76px, 76 / 1512 * 100vw, 76px);
    width: clamp(127.5px, 250 / 1512 * 100vw, 250px);
    z-index: 1;
    animation: member-swaying 2s step-end 0.1s infinite;
  }
  .page-wrap .contact-bg-stitch-01 {
    display: inline-block;
    position: absolute;
    top: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    left: 0;
    width: 100%;
    height: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto clamp(17.85px, 35 / 1512 * 100vw, 35px);
  }
  .page-wrap .contact-bg-stitch-02 {
    display: inline-block;
    position: absolute;
    bottom: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    left: 0;
    width: 100%;
    height: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto clamp(17.85px, 35 / 1512 * 100vw, 35px);
  }
  .page-wrap .contact-content {
    margin-inline: auto;
    padding: clamp(27.54px, 54 / 1512 * 100vw, 54px) clamp(68.85px, 135 / 1512 * 100vw, 135px);
    width: clamp(571.2px, 1120 / 1512 * 100vw, 1120px);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMTIwIiBoZWlnaHQ9IjU0OSIgdmlld0JveD0iMCAwIDExMjAgNTQ5IiBmaWxsPSJub25lIj4gICA8cGF0aCBkPSJNMTAzNC44NyAwSDk2LjA2NzlMMCAxMTUuNTYyTDkuMDM2MDkgNDQ2LjI3NkwxMTMuMTg5IDU0OUgxMDIwLjZMMTEyMCA0NDYuMjc2TDExMDguMTEgODQuNTU3NkwxMDM0Ljg3IDBaIiBmaWxsPSIjRkZGQUZBIi8+IDwvc3ZnPg==");
    background-size: contain;
    background-repeat: no-repeat;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1), translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    opacity: 0;
    translate: 0 30px;
    scale: 0.3;
  }
  .page-wrap .contact-content.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .contact-content__ttl {
    display: grid;
    place-content: center;
    margin-inline: auto;
    width: clamp(355.47px, 697 / 1512 * 100vw, 697px);
    height: clamp(39.78px, 78 / 1512 * 100vw, 78px);
    border-radius: clamp(51px, 100 / 1512 * 100vw, 100px);
    background-color: #FFE100;
    font-weight: 700;
    font-size: clamp(11.22px, 22 / 1512 * 100vw, 22px);
    letter-spacing: 0.24em;
  }
  .page-wrap .contact-content__maintext {
    margin-top: clamp(12.24px, 24 / 1512 * 100vw, 24px);
    font-weight: 700;
    font-size: clamp(14.28px, 28 / 1512 * 100vw, 28px);
    line-height: 1.68;
    letter-spacing: 0.23em;
    text-align: center;
  }
  .page-wrap .contact-content .mail {
    display: grid;
    place-content: center;
    margin-top: clamp(12.75px, 25 / 1512 * 100vw, 25px);
    margin-inline: auto;
    width: clamp(237.66px, 466 / 1512 * 100vw, 466px);
    height: clamp(39.78px, 78 / 1512 * 100vw, 78px);
    border: clamp(1.53px, 3 / 1512 * 100vw, 3px) solid #FF73D7;
    border-radius: clamp(7.65px, 15 / 1512 * 100vw, 15px);
  }
  .page-wrap .contact-content .mail__link {
    font-weight: 700;
    font-size: clamp(12.24px, 24 / 1512 * 100vw, 24px);
    letter-spacing: 0.11em;
    color: #0037FF;
  }
  .page-wrap .contact-content__subtext {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: clamp(19.38px, 38 / 1512 * 100vw, 38px);
    margin-top: clamp(17.85px, 35 / 1512 * 100vw, 35px);
    color: #0037FF;
  }
  .page-wrap .contact-content__subtext .date {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    column-gap: clamp(4.08px, 8 / 1512 * 100vw, 8px);
  }
  .page-wrap .contact-content__subtext .date .num {
    font-weight: 700;
    font-size: clamp(14.79px, 29 / 1512 * 100vw, 29px);
    letter-spacing: 0.09em;
  }
  .page-wrap .contact-content__subtext .date .day {
    display: grid;
    place-content: center;
    width: clamp(13.77px, 27 / 1512 * 100vw, 27px);
    height: clamp(13.77px, 27 / 1512 * 100vw, 27px);
    border-radius: 50%;
    background-color: #0037FF;
    font-weight: 700;
    font-size: clamp(7.65px, 15 / 1512 * 100vw, 15px);
    color: #fff;
  }
  .page-wrap .contact-content__subtext .time {
    position: relative;
    font-weight: 700;
    font-size: clamp(13.77px, 27 / 1512 * 100vw, 27px);
    letter-spacing: 0.12em;
  }
  .page-wrap .contact-content__subtext .time::before {
    content: "";
    position: absolute;
    top: 50%;
    left: clamp(-19px, -19 / 1512 * 100vw, -9.69px);
    translate: 0 -50%;
    width: clamp(1.02px, 2 / 1512 * 100vw, 2px);
    height: clamp(12.75px, 25 / 1512 * 100vw, 25px);
    background-color: #0037FF;
  }
  .page-wrap .contact-content__subtext .time .small {
    margin-left: clamp(4.59px, 9 / 1512 * 100vw, 9px);
    font-size: clamp(7.14px, 14 / 1512 * 100vw, 14px);
  }
  .page-wrap .contact-content__note {
    margin-top: clamp(10.2px, 20 / 1512 * 100vw, 20px);
    font-weight: 500;
    font-size: clamp(6.63px, 13 / 1512 * 100vw, 13px);
    line-height: 1.92;
    letter-spacing: 0.09em;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .page-wrap .contact {
    position: relative;
    margin-top: calc(-10 / 390 * 100vw);
    clip-path: shape(from 100% 0.88%, line by -6.95% -0.88%, line by -16.61% 0.4%, line to 47.69% 0%, hline by -23.95%, line by -8.87% 0.4%, hline to 4.23%, curve to 0% 0% with 3.85% 0.4%/1.85% 0.13%, vline by 100%, curve by 4.31% -0.4% with 1.85% -0.13%/3.93% -0.4%, hline by 10.56%, line by 8.87% 0.4%, hline by 23.95%, line by 28.75% -0.4%, line by 16.61% 0.4%, line by 6.95% -0.88%, line by -0.06% -2.7%, line by 0.06% -95.54%, close);
    background-color: #0037FF;
  }
  .page-wrap .contact__inner {
    padding-block: calc(58 / 390 * 100vw) calc(60 / 390 * 100vw);
  }
  .page-wrap .contact-wrapper {
    position: relative;
    margin-inline: auto;
    width: 100%;
    z-index: 1;
  }
  .page-wrap .contact-bg-member-01 {
    position: absolute;
    top: calc(-178 / 390 * 100vw);
    left: calc(-33 / 390 * 100vw);
    width: calc(180 / 390 * 100vw);
    z-index: 1;
    animation: member-swaying 2s step-end -0.5s infinite;
  }
  .page-wrap .contact-bg-stitch-01 {
    display: inline-block;
    position: absolute;
    top: calc(14 / 390 * 100vw);
    left: 0;
    width: 100%;
    height: calc(21 / 390 * 100vw);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto calc(21 / 390 * 100vw);
  }
  .page-wrap .contact-bg-stitch-02 {
    display: inline-block;
    position: absolute;
    bottom: calc(14 / 390 * 100vw);
    left: 0;
    width: 100%;
    height: calc(21 / 390 * 100vw);
    background-image: url(../images/img_stitch.png);
    background-repeat: repeat-x;
    background-size: auto calc(21 / 390 * 100vw);
  }
  .page-wrap .contact-content {
    margin-inline: auto;
    padding: calc(41 / 390 * 100vw) calc(34 / 390 * 100vw) calc(49 / 390 * 100vw);
    width: calc(332 / 390 * 100vw);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMzIuNjEgNTcwIj4gICA8Zz4gICAgIDxwYXRoIGQ9Ik0yODYuMzIuNzdMMzkuODIsMCwwLDU2LjI5djQ1OC4wNWw1Ni44OSw1NS42N2gyMjQuMjZsNDcuODUtNTEuNDksMy42LTQ2Ny44MUwyODYuMzIuNzdaIiBzdHlsZT0iZmlsbDogI2ZmZjsiLz4gICA8L2c+IDwvc3ZnPg==");
    background-size: contain;
    background-repeat: no-repeat;
    transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1), translate 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    opacity: 0;
    translate: 0 30px;
    scale: 0.3;
  }
  .page-wrap .contact-content.is-appear {
    opacity: 1;
    translate: 0 0;
    scale: 1;
  }
  .page-wrap .contact-content__ttl {
    display: grid;
    place-content: center;
    margin-inline: auto;
    width: calc(260 / 390 * 100vw);
    height: calc(61 / 390 * 100vw);
    border-radius: calc(100 / 390 * 100vw);
    background-color: #FFE100;
    font-weight: 700;
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.43;
    letter-spacing: 0.16em;
    text-align: center;
  }
  .page-wrap .contact-content__maintext {
    margin-top: calc(18 / 390 * 100vw);
    font-weight: 700;
    font-size: calc(21 / 390 * 100vw);
    line-height: 1.57;
    letter-spacing: 0.25em;
    text-align: center;
  }
  .page-wrap .contact-content .mail {
    display: grid;
    place-content: center;
    margin-top: calc(18 / 390 * 100vw);
    margin-inline: auto;
    height: calc(60 / 390 * 100vw);
    border: calc(2.3 / 390 * 100vw) solid #FF73D7;
    border-radius: calc(11.6 / 390 * 100vw);
  }
  .page-wrap .contact-content .mail__link {
    font-weight: 700;
    font-size: calc(16 / 390 * 100vw);
    letter-spacing: 0.04em;
    color: #0037FF;
  }
  .page-wrap .contact-content__subtext {
    margin-top: calc(13 / 390 * 100vw);
    color: #0037FF;
  }
  .page-wrap .contact-content__subtext .date {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    column-gap: calc(3 / 390 * 100vw);
  }
  .page-wrap .contact-content__subtext .date .num {
    font-weight: 700;
    font-size: calc(24 / 390 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.09em;
  }
  .page-wrap .contact-content__subtext .date .day {
    display: grid;
    place-content: center;
    position: relative;
    top: calc(2 / 390 * 100vw);
    padding-bottom: calc(1 / 390 * 100vw);
    width: calc(23 / 390 * 100vw);
    height: calc(23 / 390 * 100vw);
    border-radius: 50%;
    background-color: #0037FF;
    font-weight: 700;
    font-size: calc(13 / 390 * 100vw);
    color: #fff;
  }
  .page-wrap .contact-content__subtext .time {
    position: relative;
    font-weight: 700;
    font-size: calc(21 / 390 * 100vw);
    letter-spacing: 0.08em;
  }
  .page-wrap .contact-content__subtext .time .small {
    font-size: calc(11 / 390 * 100vw);
  }
  .page-wrap .contact-content__note {
    margin-top: calc(17 / 390 * 100vw);
    font-weight: 500;
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.91;
    letter-spacing: 0.1em;
    text-align: justify;
  }
}
.page-wrap .copyright-ctn .peanuts-box {
  display: flex;
  align-items: center;
  flex-direction: column;
}
.page-wrap .copyright-ctn .peanuts-box > .logo {
  width: 35.2205128205vw;
  font-size: 0;
}
.page-wrap .copyright-ctn .peanuts-box > .logo img {
  width: 100%;
}
@media (min-width: 768px) {
  .page-wrap .copyright-ctn .peanuts-box > .logo {
    width: clamp(92.9523809524px, 12.1031746032vw, 183px);
  }
}
.page-wrap .copyright-ctn .peanuts-box > .copyright {
  margin-top: 2.8205128205vw;
  text-align: center;
  letter-spacing: 0;
  font-family: var(--font-family-inter);
  font-size: 2.5641025641vw;
  line-height: 1.37;
}
@media (max-width: 767.98px) {
  .page-wrap .copyright-ctn .peanuts-box > .copyright {
    transform: scale(0.9);
  }
}
@media (min-width: 768px) {
  .page-wrap .copyright-ctn .peanuts-box > .copyright {
    margin-top: clamp(9.6507936508px, 1.2566137566vw, 19px);
    font-size: clamp(6.0952380952px, 0.7936507937vw, 12px);
    line-height: 1.25;
  }
}
.page-wrap .copyright-ctn .peanuts-box > .copyright small {
  font-size: inherit;
}
@media (any-hover: hover) {
  .page-wrap .copyright-ctn .peanuts-box > .copyright a:hover {
    text-decoration: underline;
  }
}
.page-wrap .environment-ctn {
  padding: 7.6923076923vw 4vw 7.1794871795vw;
}
.page-wrap .environment-ctn .environment-box {
  padding: 3.8461538462vw 4%;
  border: 1px solid #8e8e8e;
  border-radius: 1.5384615385vw;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media (min-width: 768px) {
  .page-wrap .environment-ctn .environment-box {
    margin: 0 auto;
    padding: clamp(20.3174603175px, 2.6455026455vw, 40px) clamp(40.6349206349px, 5.291005291vw, 80px);
    border-radius: clamp(3.0476190476px, 0.3968253968vw, 6px);
    max-width: clamp(467.3015873016px, 60.8465608466vw, 920px);
  }
}
.page-wrap .environment-ctn .environment-box > .h {
  margin-bottom: 2.5641025641vw;
  margin-bottom: clamp(2.5396825397px, 0.3306878307vw, 5px);
  font-size: 3.5897435897vw;
  font-weight: 700;
}
@media (min-width: 768px) {
  .page-wrap .environment-ctn .environment-box > .h {
    margin-bottom: clamp(3.0476190476px, 0.3968253968vw, 6px);
    font-size: clamp(8.126984127px, 1.0582010582vw, 16px);
  }
}
.page-wrap .environment-ctn .environment-box > .lead {
  font-size: 3.0769230769vw;
}
@media (min-width: 768px) {
  .page-wrap .environment-ctn .environment-box > .lead {
    font-size: clamp(8.126984127px, 1.0582010582vw, 16px);
  }
}
.page-wrap .environment-ctn .environment-box > .environment-items {
  margin-top: 1.5384615385vw;
}
@media (min-width: 768px) {
  .page-wrap .environment-ctn .environment-box > .environment-items {
    margin-top: clamp(8.126984127px, 1.0582010582vw, 16px);
  }
}
.page-wrap .environment-ctn .environment-item {
  position: relative;
  padding-left: 1em;
  font-size: 3.5897435897vw;
  font-weight: 700;
}
@media (min-width: 768px) {
  .page-wrap .environment-ctn .environment-item {
    font-size: clamp(8.126984127px, 1.0582010582vw, 16px);
  }
}
.page-wrap .environment-ctn .environment-item::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 767.98px) {
  .page-wrap .environment-ctn .environment-item > .version-items {
    margin-top: -0.2564102564vw;
    margin-right: -5.8974358974vw;
    margin-left: 1.0256410256vw;
  }
}
@media (min-width: 768px) {
  .page-wrap .environment-ctn .environment-item > .version-items {
    margin-top: clamp(-1px, -0.0661375661vw, -0.5079365079px);
    margin-left: clamp(3.0476190476px, 0.3968253968vw, 6px);
  }
}
@media (min-width: 768px) {
  .page-wrap .environment-ctn .environment-items {
    display: flex;
    justify-content: space-between;
  }
}
.page-wrap .environment-ctn .version-items {
  display: flex;
  flex-wrap: wrap;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.page-wrap .environment-ctn .version-items :not(:last-child) {
  margin-right: 5.8974358974vw;
}
@media (min-width: 768px) {
  .page-wrap .environment-ctn .version-items :not(:last-child) {
    margin-right: clamp(13.7142857143px, 1.7857142857vw, 27px);
  }
}
.page-wrap .environment-ctn .version-items > .item {
  font-size: 3.0769230769vw;
  font-weight: 400;
}
@media (min-width: 768px) {
  .page-wrap .environment-ctn .version-items > .item {
    font-size: clamp(7.619047619px, 0.9920634921vw, 15px);
  }
}
@media (min-width: 768px) {
  .page-wrap .environment-ctn {
    padding: clamp(47.746031746px, 6.2169312169vw, 94px) 0 clamp(48.7619047619px, 6.3492063492vw, 96px);
  }
}/*# sourceMappingURL=style.css.map */