@charset "UTF-8";
html {
  font-size: 16px;
}

body {
  font-family: "Noto Sans JP", sans-serif;
}

a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

a {
  transition: opacity 0.3s;
}
a:hover {
  opacity: 0.7;
}

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

/* Remove default padding */
ul,
ol {
  padding: 0;
}

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

/* Set core root defaults */
html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
img:not([alt]) {
  filter: blur(10px);
}

/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

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

.pc-bg {
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image: url(../../assets/img/pc_bg.jpg);
  background-size: 100%;
  background-repeat: repeat;
}

.pc-bg-logo {
  position: fixed;
  top: 0;
  right: 0;
  height: 100vh;
}

.pc-bg-logo img {
  height: 100vh;
  width: auto;
  display: block;
}


@media (min-width: 768px) {
  .phone-viewport {
    scroll-behavior: smooth;
  }
}
#first-arrival,
#drawing {
  scroll-margin-top: calc(var(--header-h, 0px) + 24px);
}

.header {
  position: fixed;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #FFF;
}

.header__inner {
  display: flex;
  align-items: center;
  height: inherit;
}

.header__nav {
  height: inherit;
}

.header__items {
  position: absolute;
  width: 15.873015873vw;
  top: 5.291005291vw;
  right: 12.6322751323vw;
  background-color: #fff;
  border-radius: 1.0582010582vw;
  padding: 1.5873015873vw 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  height: inherit;
}

.header__item {
  position: relative;
  height: inherit;
  padding: 1.0582010582vw 0;
}

.header__item:first-child {
  padding-top: unset;
}

.header__item:last-child {
  padding-bottom: unset;
}
@media screen and (min-width: 768px) {
  .header__item:last-child {
    padding-bottom: 1.0582010582vw;
  }
}

.header__item::before {
  position: absolute;
  content: "";
  width: 0.7936507937vw;
  height: 0.0661375661vw;
  background-color: #000;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
}

.header__item:last-child::before {
  background-color: transparent;
}
@media screen and (min-width: 768px) {
  .header__item:last-child::before {
  background-color: #000;
  }
}

.header__link {
  font-size: 1.1904761905vw;
  font-weight: 700;
  display: flex;
  align-items: center;
  color: #000;
  height: inherit;
}



/* ===== 900px以下2カラム配置 ===== */
/* @media (min-width: 768px) and (max-height: 899.98px) { */
  .header__items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.058vw;
    row-gap: 1.058vw;
    width: 19.047vw;
    padding: 1.587vw;
    justify-items: center;
    align-items: center;
  }

  .header__item::before {
    /* display: none; */
  }

  /* .header__item {
    height: auto;
  } */
  @media screen and (min-width: 768px) {
  .header__item {
    padding-bottom: 1.0582010582vw;
  }
}

  @media screen and (min-width: 768px) {
  .header__item:not(:first-child) {
    padding-top: unset;
  }
}

  .header__link {
    height: auto;
    line-height: 1.2;
    padding: 0.2vw 0;
  }
/* } */


.hamburger {
  position: fixed;
  z-index: 9999;
  top: 24px;
  right: 24px;
  width: 15.16px;
  height: 16px;
  cursor: pointer;
}
.hamburger::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 48px;
  height: 48px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: #000;
  pointer-events: none;
  transition: background 0.2s ease, box-shadow 0.2s ease;
}
.hamburger:hover::before, .hamburger:focus-visible::before {
  background: #fff;
}

.hamburger span {
  position: absolute;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 1.26px;
  transition: transform 0.3s, opacity 0.3s, background-color 0.3s;
  background-color: #fff;
}

.hamburger span:first-child {
  top: 0;
}

.hamburger span:nth-child(2) {
  top: 8px;
  transition: opacity 0.3s;
}

.hamburger span:nth-child(3) {
  top: 16px;
}

.hamburger.is-active span:first-child {
  top: 8px;
  transform: rotate(-45deg);
  width: 20px;
  left: -4px;
}

.hamburger.is-active span:nth-child(2) {
  opacity: 0;
}

.hamburger.is-active span:nth-child(3) {
  top: 8px;
  transform: rotate(45deg);
  width: 20px;
  left: -4px;
}

.hamburger.is-active::before {
  background: #fff;
}

.hamburger.is-active span {
  background-color: #5E66AD;
}

/* SPだけ初期は非表示。FV通過で .is-reveal を付けて表示 */
@media (max-width: 767.98px) {
  .js-hamburger {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px);
    transition: opacity 0.35s ease, transform 0.35s ease;
  }
  .js-hamburger.is-reveal {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .js-hamburger {
    transition: none;
  }
}
.drawer-menu {
  position: fixed;
  inset: 0;
  height: 100dvh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  touch-action: pan-y;
  z-index: 5000;
  display: none;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #5E66AD;
}

.drawer__side {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  background-image: url(../../assets/img/drawer_side.webp);
  background-size: 100% auto;
  background-repeat: repeat-y;
  width: 21.8829516539vw;
  height: 100vh;
  pointer-events: none;
}

.drawer__person {
  width: 51.6539440204vw;
  margin-left: 8.1424936387vw;
  margin-bottom: 3.4885496183vw;
}

.drawer__products {
  position: absolute;
  width: 37.4987277354vw;
  right: 12.8829516539vw;
  top: 31.8066157761vw;
}

.drawer-menu__inner {
  position: relative;
  width: 100%;
  height: inherit;
  z-index: 10;
}

.drawer-menu__items {
  display: flex;
  flex-direction: column;
  padding-top: 12.213740458vw;
  padding-left: 8.1424936387vw;
  padding-bottom: 9.5597964377vw;
}

.drawer-menu__item {
  display: inline-block;
}

.drawer-menu__item:not(:first-child) {
  margin-top: 8.1424936387vw;
}

.drawer-menu__link {
  font-size: 5.0890585242vw;
  font-weight: 700;
  color: #fff;
}

html.is-drawer-open,
body.is-drawer-open {
  overflow: hidden;
  height: 100dvh;
}

.fv {
  position: relative;
}

.fv__bg {
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}

.fv__inner {
  position: relative;
  z-index: 2;
  padding-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .fv__inner {
    padding-top: 1.0582010582vw;
  }
}

.fv__title {
  width: 87.786259542vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .fv__title {
    width: 22.8174603175vw;
  }
}

.fv__person {
  margin-top: -12.722vw;
}
@media screen and (min-width: 768px) {
  .fv__person {
    margin-top: -3.306vw;
  }
}

.fv__annotation {
  font-size: 3.0534351145vw;
  font-weight: 500;
  color: #fff;
  margin-top: -25.4452926209vw;
  margin-left: 6.6157760814vw;
}
@media screen and (min-width: 768px) {
  .fv__annotation {
    font-size: 0.7936507937vw;
    margin-top: -6.6137566138vw;
    margin-left: 1.7195767196vw;
  }
}

.fv__products {
  width: 87.786259542vw;
  margin: 0 auto;
  margin-top: 3.0534351145vw;
}
@media screen and (min-width: 768px) {
  .fv__products {
    width: 22.8174603175vw;
    margin-top: 0.7936507937vw;
  }
}

.heading {
  background-image: url(../../assets/img/heading_bg.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  padding-top: 19.5928753181vw;
  padding-bottom: 22.3918575064vw;
  margin-top: -13.9949109415vw;
}
@media screen and (min-width: 768px) {
  .heading {
    padding-top: 5.0925925926vw;
    padding-bottom: 5.8201058201vw;
    margin-top: -3.6375661376vw;
  }
}

.heading__text {
  font-size: 4.5801526718vw;
  font-weight: 500;
  line-height: 175%;
  color: #fff;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .heading__text {
    font-size: 1.1904761905vw;
  }
}

.heading-text-top {
  width: 84.7328244vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .heading-text-top {
    width: 22.0238095vw;
  }
}

.heading__text.size {
  font-size: 5.3435114504vw;
  margin-top: 2.0356234097vw;
}
@media screen and (min-width: 768px) {
  .heading__text.size {
    font-size: 1.3888888889vw;
    margin-top: 0.5291005291vw;
  }
}

.heading__annotation {
  font-size: 2.5445292621vw;
  font-weight: 400;
  margin-top: 5.0890585242vw;
  text-align: center;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .heading__annotation {
    font-size: 0.7936507937vw;
    margin-top: 1.3227513228vw;
  }
}

.campaign__title {
  width: 87.786259542vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .campaign__title {
    width: 22.8174603175vw;
  }
}

.campaign__subtitle {
  width: 78.8956743003vw;
  margin: 0 auto;
  margin-top: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .campaign__subtitle {
    width: 20.5066137566vw;
    margin-top: 1.5873015873vw;
  }
}

.first-arrival__wrap {
  margin-top: 15.267vw;
}
@media screen and (min-width: 768px) {
  .first-arrival__wrap {
    margin-top: 3.968vw;
  }
}

.first-arrival__inner {
  width: 91.8575063613vw;
  margin: 0 auto;
  background-color: #EAD4F0;
  border-radius: 2.0356234097vw;
  border: 2px solid #8D3FA3;
  padding-bottom: 11.4503816794vw;
}
@media screen and (min-width: 768px) {
  .first-arrival__inner {
    width: 23.8756613757vw;
    border-radius: 0.5291005291vw;
    padding-bottom: 2.9761904762vw;
  }
}

.first-arrival__title {
  width: 54.9618320611vw;
  margin: 0 auto;
  margin-top: -6.106870229vw;
}
@media screen and (min-width: 768px) {
  .first-arrival__title {
    width: 14.2857142857vw;
    margin-top: -1.5873015873vw;
  }
}

.first-arrival__items {
  padding-top: 4.0712468193vw;
  padding-bottom: 7.63358779vw;
}
@media screen and (min-width: 768px) {
  .first-arrival__items {
    padding-top: 1.0582010582vw;
    padding-bottom: 1.98412698vw;
  }
}

.first-arrival__item + .first-arrival__item {
  margin-top: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .first-arrival__item + .first-arrival__item {
    margin-top: 1.5873015873vw;
  }
}

.first-arrival__comment {
  width: 68.9567430025vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .first-arrival__comment {
    width: 17.9232804233vw;
  }
}

.first-arrival__item:nth-child(2) .first-arrival__comment {
  width: 52.9262086514vw;
}
@media screen and (min-width: 768px) {
  .first-arrival__item:nth-child(2) .first-arrival__comment {
    width: 13.7566137566vw;
  }
}

.first-arrival__item__title {
  width: 73.0279898219vw;
  margin: 0 auto;
  margin-top: 2.053435vw;
}
@media screen and (min-width: 768px) {
  .first-arrival__item__title {
    width: 18.9814814815vw;
    margin-top: 0.533730159vw;
  }
}

.first-arrival__item:nth-child(2) .first-arrival__item__title {
  width: 40.7124681934vw;
  margin-top: 2.79898219vw;
}
@media screen and (min-width: 768px) {
  .first-arrival__item:nth-child(2) .first-arrival__item__title {
    width: 10.582010582vw;
    margin-top: 0.727513228vw;
  }
}

.first-arrival__product {
  width: 65.0381679389vw;
  margin: 0 auto;
  margin-top: 5.8524173vw;
}
@media screen and (min-width: 768px) {
  .first-arrival__product {
    width: 16.9047619048vw;
    margin-top: 1.52116402vw;
  }
}

.first-arrival__item:nth-child(2) .first-arrival__product {
  width: 75.8269720102vw;
  margin-top: 3.81679389vw;
}
@media screen and (min-width: 768px) {
  .first-arrival__item:nth-child(2) .first-arrival__product {
    width: 19.708994709vw;
    margin-top: 0.992063492vw;
  }
}

.purchase-title__wrap {
  border-top: 2px solid #8D3FA3;
  padding: 3.0534351145vw 0 4.0712468193vw;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .purchase-title__wrap {
    padding: 0.7936507937vw 0 1.0582010582vw;
  }
}

.purchase__title {
  font-size: 6.106870229vw;
  font-weight: 700;
  color: #8D3FA3;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .purchase__title {
    font-size: 1.5873015873vw;
  }
}

.purchase-title__comment {
  width: 91.8575063613vw;
  margin: 0 auto;
  margin-top: 2.0356234097vw;
}
@media screen and (min-width: 768px) {
  .purchase-title__comment {
    width: 23.8756613757vw;
    margin-top: 0.5291005291vw;
  }
}

.purchase__item + .purchase__item {
  margin-top: 6.6157760814vw;
}
@media screen and (min-width: 768px) {
  .purchase__item + .purchase__item {
    margin-top: 1.7195767196vw;
  }
}

.purchase__item__title {
  width: 83.7150127226vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .purchase__item__title {
    width: 21.7592592593vw;
  }
}

.purchase__item__heading {
  width: 76.564vw;
  margin: 0 auto;
  margin-top: 5.0890585242vw;
}
@media screen and (min-width: 768px) {
  .purchase__item__heading {
    width: 19.900vw;
    margin-top: 1.3227513228vw;
  }
}

.purchase__item:nth-child(2) .purchase__item__heading {
  width: 83.6030534351vw;
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .purchase__item:nth-child(2) .purchase__item__heading {
    width: 21.7301587302vw;
    margin-top: 1.0582010582vw;
  }
}

.purchase__item__product {
  margin-top: 6.035623vw;
}
@media screen and (min-width: 768px) {
  .purchase__item__product {
    margin-top: 1.56878307vw;
  }
}

.purchase__item:nth-child(2) .purchase__item__product {
  margin-top: 2.68956743vw;
}
@media screen and (min-width: 768px) {
  .purchase__item:nth-child(2) .purchase__item__product {
    margin-top: 0.6990740741vw;
  }
}

.purchase__item__product__img {
  width: 66.106870229vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .purchase__item__product__img {
    width: 17.1825396825vw;
  }
}

.purchase__item:nth-child(2) .purchase__item__product__img {
  width: 79.3893129771vw;
}
@media screen and (min-width: 768px) {
  .purchase__item:nth-child(2) .purchase__item__product__img {
    width: 20.6349206349vw;
  }
}

.purchase__item__product__name {
  font-size: 3.3078880407vw;
  font-weight: 500;
  line-height: 150%;
  text-align: center;
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .purchase__item__product__name {
    font-size: 0.8597883598vw;
    margin-top: 1.0582010582vw;
  }
}

.purchase__item__product__name .size {
  font-size: 2.5445292621vw;
}
@media screen and (min-width: 768px) {
  .purchase__item__product__name .size {
    font-size: 0.6613756614vw;
  }
}

.purchase__item__product__name.margin {
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .purchase__item__product__name.margin {
    margin-top: 1.0582010582vw;
  }
}

.purchase__item__product__price {
  font-size: 3.0534351145vw;
  font-weight: 500;
  line-height: 150%;
  text-align: center;
  color: #89738E;
  margin-top: 2.5445292621vw;
}
@media screen and (min-width: 768px) {
  .purchase__item__product__price {
    font-size: 0.7936507937vw;
    margin-top: 0.6613756614vw;
  }
}

.purchase__annotation__wrap {
  width: 79.6437659033vw;
  margin: 0 auto;
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .purchase__annotation__wrap {
    width: 20.7010582011vw;
    margin-top: 1.0582010582vw;
  }
}

.purchase__item__annotation {
  font-size: 2.5445292621vw;
  font-weight: 400;
  line-height: 175%;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (min-width: 768px) {
  .purchase__item__annotation {
    font-size: 0.6613756614vw;
  }
}

.purchase__btn {
  margin-top: 4.1984732824vw;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .purchase__btn {
    margin-top: 1.0912698413vw;
  }
}

.purchase__link {
  position: relative;
  display: flex;
  align-items: center;
  padding-left: 6.106870229vw;
  font-size: 3.5623409669vw;
  font-weight: 700;
  color: #fff;
  width: 47.3129770992vw;
  height: 9.8727735369vw;
  background-color: #DD4E47;
  border: 1.2px solid #fff;
  border-radius: 18.320610687vw;
  box-shadow: 0 4.8px 12px 0 rgba(0, 0, 0, 0.25);
}
@media screen and (min-width: 768px) {
  .purchase__link {
    padding-left: 1.5873015873vw;
    font-size: 0.9259259259vw;
    width: 12.2976190476vw;
    height: 2.5661375661vw;
    border-radius: 4.7619047619vw;
  }
}

.purchase__link::before {
  position: absolute;
  content: "";
  background-image: url(../../assets/img/purchase-btn_icon.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 4.5648854962vw;
  height: 5.8015267176vw;
  right: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .purchase__link::before {
    width: 1.1865079365vw;
    height: 1.5079365079vw;
    right: 1.5873015873vw;
  }
}

.online-btn__wrap {
  margin-top: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .online-btn__wrap {
    margin-top: 1.5873015873vw;
  }
}

.online-text__heading {
  font-size: 4.071vw;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .online-text__heading {
    font-size: 1.058vw;
  }
}

.online-btn__comment {
  width: 71.2468193384vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .online-btn__comment {
    width: 18.5185185185vw;
  }
}

.online-btn {
  display: flex;
  justify-content: center;
  margin-top: 2.0356234097vw;
}
@media screen and (min-width: 768px) {
  .online-btn {
    margin-top: 0.5291005291vw;
  }
}

.online-btn.btn_02 {
  margin-top: 2.2900763359vw;
}
@media screen and (min-width: 768px) {
  .online-btn.btn_02 {
    margin-top: 0.5952380952vw;
  }
}

.online-btn__link {
  position: relative;
  display: flex;
  align-items: center;
  font-size: 4.3256997455vw;
  font-weight: 700;
  color: #fff;
  width: 79.6437659033vw;
  height: 20.3562340967vw;
  border: 2px solid #fff;
  background-color: #8D3FA3;
  border-radius: 15.2671755725vw;
  box-shadow: 0 5px 10px 0 #AF7DBC;
  padding-left: 33.0788804071vw;
}
@media screen and (min-width: 768px) {
  .online-btn__link {
    font-size: 1.1243386243vw;
    width: 20.7010582011vw;
    height: 5.291005291vw;
    border-radius: 3.9682539683vw;
    padding-left: 8.5978835979vw;
  }
}

.online-btn.btn_02 .online-btn__link {
  background-color: #BA1537;
  padding-left: 12.7226463104vw;
}
@media screen and (min-width: 768px) {
  .online-btn.btn_02 .online-btn__link {
    padding-left: 3.3068783069vw;
  }
}

.online-btn__link::before {
  position: absolute;
  content: "";
  width: 14.2493638677vw;
  height: 14.2493638677vw;
  background-image: url(../../assets/img/online-btn_icon_01.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  left: 14.7582697201vw;
}
@media screen and (min-width: 768px) {
  .online-btn__link::before {
    width: 3.7037037037vw;
    height: 3.7037037037vw;
    left: 3.835978836vw;
  }
}

.online-btn.btn_02 .online-btn__link::before {
  background-image: url(../../assets/img/online-btn_icon_02.webp);
  left: unset;
  right: 12.7226463104vw;
}
@media screen and (min-width: 768px) {
  .online-btn.btn_02 .online-btn__link::before {
    right: 3.3068783069vw;
  }
}

.online-btn__link:after {
  position: absolute;
  content: "";
  background-image: url(../../assets/img/link-icon.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 3.8167938931vw;
  height: 3.8167938931vw;
  top: 50%;
  transform: translateY(-50%);
  right: 14.7582697201vw;
}
@media screen and (min-width: 768px) {
  .online-btn__link:after {
    width: 0.9920634921vw;
    height: 0.9920634921vw;
    right: 3.835978836vw;
  }
}

.online-btn.btn_02 .online-btn__link::after {
  right: 30.9160305344vw;
}
@media screen and (min-width: 768px) {
  .online-btn.btn_02 .online-btn__link::after {
    right: 8.0357142857vw;
  }
}

.drawing {
  margin-top: 9.9236641221vw;
}
@media screen and (min-width: 768px) {
  .drawing {
    margin-top: 2.5793650794vw;
  }
}

.drawing__inner {
  background-color: #F9D8DF;
  border-radius: 2.0356234097vw;
  border: 2px solid #BA1537;
  width: 91.8575063613vw;
  margin: 0 auto;
  padding-bottom: 10.1781170483vw;
}
@media screen and (min-width: 768px) {
  .drawing__inner {
    border-radius: 0.5291005291vw;
    width: 23.8756613757vw;
    padding-bottom: 2.6455026455vw;
  }
}

.drawing__title {
  width: 54.9618320611vw;
  margin: 0 auto;
  margin-top: -5.8524173028vw;
}
@media screen and (min-width: 768px) {
  .drawing__title {
    width: 14.2857142857vw;
    margin-top: -1.5211640212vw;
  }
}

.drawing__heading {
  width: 74.737vw;
  margin: 0 auto;
  margin-top: 3.5623409669vw;
}
@media screen and (min-width: 768px) {
  .drawing__heading {
    width: 19.425vw;
    margin-top: 0.9259259259vw;
  }
}

.drawing__item {
  margin-top: 2.9745547074vw;
}
@media screen and (min-width: 768px) {
  .drawing__item {
    margin-top: 0.7731481481vw;
  }
}

.drawing__item__comment {
  width: 64.8854961832vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .drawing__item__comment {
    width: 16.8650793651vw;
  }
}

.drawing__item__title {
  width: 48.0916030534vw;
  margin: 0 auto;
  margin-top: 1.78117048vw;
}
@media screen and (min-width: 768px) {
  .drawing__item__title {
    width: 12.5vw;
    margin-top: 0.462962963vw;
  }
}

.drawing__item__product {
  width: 70.99236641vw;
  margin-top: 1.07124682vw;
  margin-left: 15.77608142vw;
}
@media screen and (min-width: 768px) {
  .drawing__item__product {
    width: 18.45238095vw;
    margin-top: 0.278439153vw;
    margin-left: 4.1005291vw;
  }
}

.drawing-item_product__text {
  font-size: 3.05343511vw;
  font-weight: 400;
  line-height: 175%;
  margin-top: 4.07124682vw;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .drawing-item_product__text {
    font-size:  0.79365079vw;
    margin-top: 1.05820106vw;
  }
}

.drawing-description__title {
  width: 75.8651399491vw;
  margin: 0 auto;
  margin-top: 3.0534351145vw;
}
@media screen and (min-width: 768px) {
  .drawing-description__title {
    width: 19.7189153439vw;
    margin-top: 0.7936507937vw;
  }
}

.drawing-description__product {
  width: 79.3893129771vw;
  margin-top: 4.5801526718vw;
}
@media screen and (min-width: 768px) {
  .drawing-description__product {
    width: 20.6349206349vw;
    margin-top: 1.1904761905vw;
  }
}

.drawing-description__price {
  color: #AB717D;
}

.drawing-btn {
  display: flex;
  justify-content: center;
  margin-top: 8.1424936387vw;
}
@media screen and (min-width: 768px) {
  .drawing-btn {
    margin-top: 2.1164021164vw;
  }
}

.drawing-btn__link {
  font-size: 5.0890585242vw;
  font-weight: 700;
  color: #fff;
  width: 79.6437659033vw;
  height: 13.2315521628vw;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 2px solid #fff;
  border-radius: 15.2671755725vw;
  background-color: #2880DE;
  box-shadow: 0 5px 10px 0 #2880DE;
}
@media screen and (min-width: 768px) {
  .drawing-btn__link {
    font-size: 1.3227513228vw;
    width: 20.7010582011vw;
    height: 3.4391534392vw;
    border-radius: 3.9682539683vw;
  }
}

.movie__wrap {
  background-image: url(../../assets/img/movie_bg.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  padding-top: 35.368956743vw;
  padding-bottom: 14.2493638677vw;
}
@media screen and (min-width: 768px) {
  .movie__wrap {
    padding-top: 9.1931216931vw;
    padding-bottom: 3.7037037037vw;
  }
}

.movie__title {
  width: 53.68956743vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .movie__title {
    width: 13.955026455vw;
  }
}

.movie__text {
  font-size: 4.0712468193vw;
  font-weight: 700;
  margin-top: 6.106870229vw;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .movie__text {
    font-size: 1.0582010582vw;
    margin-top: 1.5873015873vw;
  }
}

.movie__link {
  position: relative;
  width: 91.8575063613vw;
  margin: 0 auto;
  margin-top: 8.1424936387vw;
}
@media screen and (min-width: 768px) {
  .movie__link {
    width: 23.8756613757vw;
    margin-top: 2.1164021164vw;
  }
}

.movie__link__text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 4.07124682vw;
}
@media screen and (min-width: 768px) {
  .movie__link__text {
    font-size: 1.05820106vw;
  }
}

.products__inner {
  background-color: #5E66AD;
  padding-top: 11.4503816794vw;
}
@media screen and (min-width: 768px) {
  .products__inner {
    padding-top: 2.9761904762vw;
  }
}

.products__title {
  width: 54.9618320611vw;
  margin: 0 auto;
  margin-bottom: 4.071vw;
}
@media screen and (min-width: 768px) {
  .products__title {
    width: 14.2857142857vw;
    margin-bottom: 1.058vw;
  }
}

.products-item__wrap {
  background-image: url(../../assets/img/products-item_wrap_bg_01.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 87.786259542vw;
  margin: 0 auto;
  padding-bottom: 4.07124682vw;
  padding-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .products-item__wrap {
    width: 22.8174603175vw;
    padding-bottom: 1.05820106vw;
    padding-top: 1.0582010582vw;
  }
}

.products-item__wrap.contents_02 {
  background-image: url(../../assets/img/products-item_wrap_bg_02.webp);
  margin-bottom: unset;
  padding-bottom: unset;
}
.products-item__heading {
  font-size: 5.0890585242vw;
  font-weight: 700;
  line-height: 150%;
  text-align: center;
  color: #fff;
  background-color: #5E66AD;
  border-radius: 2.0356234097vw;
  width: 58.0152671756vw;
  height: 19.3384223919vw;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .products-item__heading {
    font-size: 1.3227513228vw;
    border-radius: 0.5291005291vw;
    width: 15.0793650794vw;
    height: 5.0264550265vw;
  }
}

.products-item__wrap.contents_02 .products-item__heading {
  width: 68.1933842239vw;
  height: 19.3384223919vw;
}
@media screen and (min-width: 768px) {
  .products-item__wrap.contents_02 .products-item__heading {
    width: 17.7248677249vw;
    height: 5.0264550265vw;
  }
}

.products-item__type {
  width: 73.2824427vw;
  margin: 0 auto;
  padding-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .products-item__type {
    width: 19.047619vw;
    padding-top: 1.0582010582vw;
  }
}

.products-item__wrap.contents_02 .products-item__type {
  width: 60.55979644vw;
}
@media screen and (min-width: 768px) {
  .products-item__wrap.contents_02 .products-item__type {
    width: 15.74074074vw;
  }
}

.products-items {
  padding: 0 6.106870229vw;
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .products-items {
    padding: 0 1.5873015873vw;
    margin-top: 1.0582010582vw;
  }
}

.products-item__wrap.contents_02 .products-items {
  margin-top: 8.1424936387vw;
}
@media screen and (min-width: 768px) {
  .products-item__wrap.contents_02 .products-items {
    margin-top: 2.1164021164vw;
  }
}

.products-item {
  padding-top: 6.106870229vw;
  padding-bottom: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .products-item {
    padding-top: 1.5873015873vw;
    padding-bottom: 1.5873015873vw;
  }
}

.products-item:not(:last-child) {
  border-bottom: 1px solid #DEDFED;
}

.products-item__img {
  width: 44.9287531807vw;
  margin-left: 22.1374045802vw;
  margin-top: -3.3078880407vw;
}
@media screen and (min-width: 768px) {
  .products-item__img {
    width: 11.6779100529vw;
    margin-left: 5.753968254vw;
    margin-top: -0.8597883598vw;
  }
}

.products-item:nth-child(2) .products-item__img {
  width: 44.6743002545vw;
  margin-left: 22.3918575064vw;
}
@media screen and (min-width: 768px) {
  .products-item:nth-child(2) .products-item__img {
    width: 11.6117724868vw;
    margin-left: 5.8201058201vw;
  }
}

.products-item:nth-child(3) .products-item__img {
  width: 30.8778625954vw;
  margin-left: unset;
  margin: 0 auto;
  padding-top: 2.0356234097vw;
}
@media screen and (min-width: 768px) {
  .products-item:nth-child(3) .products-item__img {
    width: 8.0257936508vw;
    padding-top: 0.5291005291vw;
  }
}

.products-item__wrap.contents_02 .products-item__img {
  width: 44.7888040712vw;
  margin-left: 22.3918575064vw;
  margin-top: -5.0890585242vw;
}
@media screen and (min-width: 768px) {
  .products-item__wrap.contents_02 .products-item__img {
    width: 11.6415343915vw;
    margin-left: 5.8201058201vw;
    margin-top: -1.3227513228vw;
  }
}

.products-item__description {
  width: 36.32824427vw;
  margin: 0 auto;
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .products-item__description {
    width: 9.44246032vw;
    margin-top: 1.0582010582vw;
  }
}

.products-item:nth-child(2) .products-item__description {
  width: 48.19338422vw;
}
@media screen and (min-width: 768px) {
  .products-item:nth-child(2) .products-item__description {
    width: 12.52645503vw;
  }
}

.products-item:nth-child(3) .products-item__description {
  width: 48.09414758vw;
}
@media screen and (min-width: 768px) {
  .products-item:nth-child(3) .products-item__description {
    width: 12.50066138vw;
  }
}

.products-item__wrap.contents_02 .products-item__description {
  width: 52.4351145vw;
  margin-top: 4.1348600509vw;
}
@media screen and (min-width: 768px) {
  .products-item__wrap.contents_02 .products-item__description {
    width: 13.62896825vw;
    margin-top: 1.0747354497vw;
  }
}

.products-item__name {
  width: 13.2315521628vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .products-item__name {
    width: 3.4391534392vw;
  }
}

.products-item:nth-child(2) .products-item__name {
  width: 13.7404580153vw;
}
@media screen and (min-width: 768px) {
  .products-item:nth-child(2) .products-item__name {
    width: 3.5714285714vw;
  }
}

.products-item:nth-child(3) .products-item__name {
  width: 14.5038167939vw;
}
@media screen and (min-width: 768px) {
  .products-item:nth-child(3) .products-item__name {
    width: 3.7698412698vw;
  }
}

.products-item__price {
  font-size: 3.0534351145vw;
  font-weight: 500;
  line-height: 150%;
  text-align: center;
  color: #5D5D5D;
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .products-item__price {
    font-size: 0.7936507937vw;
    margin-top: 1.0582010582vw;
  }
}

.products-item__annotation__wrap {
  width: 87.786259542vw;
  margin: 0 auto;
  font-size: 2.5445292621vw;
  font-weight: 400;
  line-height: 1.5;
  color: #fff;
  margin-top: 4.0712468193vw;
  padding-bottom: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .products-item__annotation__wrap {
    width: 22.8174603175vw;
    font-size: 0.6613756614vw;
    margin-top: 1.0582010582vw;
    padding-bottom: 1.5873015873vw;
  }
}

.brand-top {
  width: 87.786259542vw;
  margin: 0 auto;
  margin-top: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .brand-top {
    width: 22.8174603175vw;
    margin-top: 1.5873015873vw;
  }
}

.brand {
  margin-top: -15.709vw;
  padding-top: 19.847vw;
  padding-bottom: 12.213740458vw;
  background-image: url(../../assets/img/brand_bg.webp);
  background-size: 100%;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .brand {
    margin-top: -4.083vw;
    padding-top: 5.158vw;
    padding-bottom: 3.1746031746vw;
  }
}

.brand__inner {
  padding: 0 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .brand__inner {
    padding: 0 1.5873015873vw;
  }
}

.brand__logo {
  width: 42.1323155216vw;
}
@media screen and (min-width: 768px) {
  .brand__logo {
    width: 10.9510582011vw;
  }
}

.brand__heading {
  font-size: 4.5801526718vw;
  font-weight: 700;
  line-height: 175%;
  /* padding-top: 4.606vw; */
}
@media screen and (min-width: 768px) {
  .brand__heading {
    font-size: 1.1904761905vw;
    /* padding-top: 1.075vw; */
  }
}

.brand-text {
  width: 87.78625954vw;
  margin: 0 auto;
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .brand-text {
    width: 22.81746032vw;
    margin-top: 1.0582010582vw;
  }
}

.brand-annotation__wrap {
  font-size: 2.5445292621vw;
  font-weight: 400;
  line-height: 175%;
  display: flex;
  margin-top: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .brand-annotation__wrap {
    font-size: 0.6613756614vw;
    margin-top: 1.5873015873vw;
  }
}

.brand-annotation {
  margin-left: 2.2900763359vw;
}
@media screen and (min-width: 768px) {
  .brand-annotation {
    margin-left: 0.5952380952vw;
  }
}

.brand__introduction {
  width: 74.3002544529vw;
  margin-top: 12.213740458vw;
}
@media screen and (min-width: 768px) {
  .brand__introduction {
    width: 19.3121693122vw;
    margin-top: 3.1746031746vw;
  }
}

.brand-btn {
  margin-top: 8.1424936387vw;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .brand-btn {
    margin-top: 2.1164021164vw;
  }
}

.brand-btn__link {
  font-size: 5.0890585242vw;
  font-weight: 700;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000;
  width: 79.6437659033vw;
  height: 13.2315521628vw;
  border: 2px solid #fff;
  border-radius: 15.2671755725vw;
  box-shadow: 0 5px 10px 0 rgba(0, 3, 6, 0.3);
}
@media screen and (min-width: 768px) {
  .brand-btn__link {
    font-size: 1.3227513228vw;
    width: 20.7010582011vw;
    height: 3.4391534392vw;
    border-radius: 3.9682539683vw;
  }
}

.profile {
  padding-top: 8.1424936387vw;
  padding-bottom: 8.1424936387vw;
  background-image: url(../../assets/img/profile_bg.webp);
  background-size: 100%;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .profile {
    padding-top: 2.1164021164vw;
    padding-bottom: 2.1164021164vw;
  }
}

.profile__title {
  font-size: 5.0890585242vw;
  font-weight: 700;
  width: 64.3765903308vw;
  height: 11.7048346056vw;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 16.2849872774vw;
}
@media screen and (min-width: 768px) {
  .profile__title {
    font-size: 1.3227513228vw;
    width: 16.7328042328vw;
    height: 3.0423280423vw;
    border-radius: 4.2328042328vw;
  }
}

.profile__items {
  margin-top: 7.1246819338vw;
}
@media screen and (min-width: 768px) {
  .profile__items {
    margin-top: 1.8518518519vw;
  }
}

.profile__item + .profile__item {
  margin-top: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .profile__item + .profile__item {
    margin-top: 1.5873015873vw;
  }
}

.profile__item:first-child .profile__img {
  width: 58.2697201018vw;
}
@media screen and (min-width: 768px) {
  .profile__item:first-child .profile__img {
    width: 15.1455026455vw;
  }
}

.profile__img {
  width: 62.0865139949vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .profile__img {
    width: 16.1375661376vw;
  }
}

.profile__text {
  font-size: 3.5623409669vw;
  font-weight: 500;
  line-height: 175%;
  color: #fff;
  padding-top: 2.0356234097vw;
  width: 87.786259542vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .profile__text {
    font-size: 0.9259259259vw;
    padding-top: 0.5291005291vw;
    width: 22.8174603175vw;
  }
}

.share {
  margin: 12.213740458vw 0;
}
@media screen and (min-width: 768px) {
  .share {
    margin: 3.1746031746vw 0;
  }
}

.share__title {
  font-size: 4.0712468193vw;
  font-weight: 700;
  font-family: "Inter", sans-serif;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .share__title {
    font-size: 1.0582010582vw;
  }
}

.share__inner {
  display: flex;
  justify-content: center;
  margin-top: 4.0712468193vw;
  gap: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .share__inner {
    margin-top: 1.0582010582vw;
    gap: 1.5873015873vw;
  }
}

.share__link img {
  width: 12.213740458vw;
  height: 12.213740458vw;
}
@media screen and (min-width: 768px) {
  .share__link img {
    width: 3.1746031746vw;
    height: 3.1746031746vw;
  }
}

.conclusion {
  background-color: #F0F1FC;
  border-radius: 4.0712468193vw;
  width: 87.0229007634vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .conclusion {
    border-radius: 1.0582010582vw;
    width: 22.619047619vw;
  }
}

.conclusion__inner {
  padding-bottom: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .conclusion__inner {
    padding-bottom: 1.5873015873vw;
  }
}

.terms {
  margin-top: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .terms {
    margin-top: 1.5873015873vw;
  }
}

.conclusion__title {
  font-size: 4.0712468193vw;
  font-weight: 700;
  line-height: 1.5;
  color: #5E66AD;
  border: 1px solid #5E66AD;
  border-radius: 12.7226463104vw;
  width: 40.7124681934vw;
  height: 8.1424936387vw;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .conclusion__title {
    font-size: 1.0582010582vw;
    border-radius: 3.3068783069vw;
    width: 10.582010582vw;
    height: 2.1164021164vw;
  }
}

.terms__items {
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .terms__items {
    margin-top: 1.0582010582vw;
  }
}

.terms__item {
  font-size: 3.5623409669vw;
  font-weight: 500;
  line-height: 1.5;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (min-width: 768px) {
  .terms__item {
    font-size: 0.9259259259vw;
  }
}

.terms__item + .terms__item {
  margin-top: 1.5267175573vw;
}
@media screen and (min-width: 768px) {
  .terms__item + .terms__item {
    margin-top: 0.3968253968vw;
  }
}

.conclusion-detail {
  margin-top: 6.106870229vw;
}
@media screen and (min-width: 768px) {
  .conclusion-detail {
    margin-top: 1.5873015873vw;
  }
}

.conclusion-detail .conclusion__title {
  margin-bottom: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .conclusion-detail .conclusion__title {
    margin-bottom: 1.0582010582vw;
  }
}

.conclusion-detail__label {
  font-size: 3.5623409669vw;
  font-weight: 700;
  line-height: 1.7142857143;
  color: #5E66AD;
}
@media screen and (min-width: 768px) {
  .conclusion-detail__label {
    font-size: 0.9259259259vw;
  }
}

.conclusion-detail__text {
  font-size: 3.5623409669vw;
  font-weight: 500;
  line-height: 1.7142857143;
  margin-bottom: 2.0356234097vw;
}
@media screen and (min-width: 768px) {
  .conclusion-detail__text {
    font-size: 0.9259259259vw;
    margin-bottom: 0.5291005291vw;
  }
}

.annotation__items {
  margin-top: 2.0356234097vw;
}
@media screen and (min-width: 768px) {
  .annotation__items {
    margin-top: 0.5291005291vw;
  }
}

.method__item:nth-child(2) .annotation__items {
  margin-top: 1.0178117048vw;
}
@media screen and (min-width: 768px) {
  .method__item:nth-child(2) .annotation__items {
    margin-top: 0.2645502646vw;
  }
}

.annotation__item {
  font-size: 3.0534351145vw;
  font-weight: 400;
  line-height: 175%;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (min-width: 768px) {
  .annotation__item {
    font-size: 0.7936507937vw;
  }
}

.method__wrap {
  margin-top: 2.0356234097vw;
}
@media screen and (min-width: 768px) {
  .method__wrap {
    margin-top: 0.5291005291vw;
  }
}

.method__items {
  margin-top: 2.0356234097vw;
}
@media screen and (min-width: 768px) {
  .method__items {
    margin-top: 0.5291005291vw;
  }
}

.method__item:first-child,
.method__item:nth-child(2) {
  border-bottom: 1px solid #5E66AD;
  padding-bottom: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .method__item:first-child,
.method__item:nth-child(2) {
    padding-bottom: 1.0582010582vw;
  }
}

.method__item:nth-child(2),
.method__item:nth-child(3) {
  padding-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .method__item:nth-child(2),
.method__item:nth-child(3) {
    padding-top: 1.0582010582vw;
  }
}

.method__title--donki {
  width: 78.8804071247vw;
}
@media screen and (min-width: 768px) {
  .method__title--donki {
    width: 20.5026455026vw;
  }
}

.method__title--online {
  width: 61.0687022901vw;
}
@media screen and (min-width: 768px) {
  .method__title--online {
    width: 15.873015873vw;
  }
}

.method__title--drawing {
  width: 18.320610687vw;
}
@media screen and (min-width: 768px) {
  .method__title--drawing {
    width: 4.7619047619vw;
  }
}

.method__product {
  font-size: 3.8167938931vw;
  font-weight: 700;
  line-height: 1.6;
  margin-top: 1.0178117048vw;
}
@media screen and (min-width: 768px) {
  .method__product {
    font-size: 0.9920634921vw;
    margin-top: 0.2645502646vw;
  }
}

.method__product__description {
  font-size: 3.5623409669vw;
  font-weight: 500;
  line-height: 1.5;
  margin-top: 1.0178117048vw;
}
@media screen and (min-width: 768px) {
  .method__product__description {
    font-size: 0.9259259259vw;
    margin-top: 0.2645502646vw;
  }
}

.pdf__link {
  color: #000;
  border-bottom: 1px solid #000;
}

.method__wrap .terms__items {
  margin-top: 1.0178117048vw;
}
@media screen and (min-width: 768px) {
  .method__wrap .terms__items {
    margin-top: 0.2645502646vw;
  }
}

.target-product {
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .target-product {
    margin-top: 1.0582010582vw;
  }
}

.target-product__label {
  width: 18.320610687vw;
}
@media screen and (min-width: 768px) {
  .target-product__label {
    width: 4.7619047619vw;
  }
}

.target-product__name {
  font-size: 3.3078880407vw;
  font-weight: 500;
  line-height: 1.5384615385;
  margin-top: 1.0178117048vw;
}
@media screen and (min-width: 768px) {
  .target-product__name {
    font-size: 0.8597883598vw;
    margin-top: 0.2645502646vw;
  }
}

.target-product__name.contents_02 {
  margin-top: 3.0534351145vw;
}
@media screen and (min-width: 768px) {
  .target-product__name.contents_02 {
    margin-top: 0.7936507937vw;
  }
}

.target-product__name .size {
  font-size: 2.5445292621vw;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .target-product__name .size {
    font-size: 0.6613756614vw;
  }
}

.target-product__price {
  font-size: 3.3078880407vw;
  font-weight: 500;
  line-height: 1.5384615385;
  color: #5D5D5D;
  margin-top: 1.0178117048vw;
}
@media screen and (min-width: 768px) {
  .target-product__price {
    font-size: 0.8597883598vw;
    margin-top: 0.2645502646vw;
  }
}

/* アコーディオン */
/* トグルボタン */
.acc__summary {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  width: 100%;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2.7989821883vw 6.106870229vw;
  font-size: 5.0890585242vw;
  font-weight: 700;
  color: #fff;
  border: none;
  border-radius: 4.0712468193vw;
  background: #5E66AD;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .acc__summary {
    padding: 0.7275132275vw 1.5873015873vw;
    font-size: 1.3227513228vw;
    border-radius: 1.0582010582vw;
  }
}

.acc__icon {
  position: relative;
  width: 6.106870229vw;
  height: 6.106870229vw;
  border-radius: 12.7226463104vw;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .acc__icon {
    width: 1.5873015873vw;
    height: 1.5873015873vw;
    border-radius: 3.3068783069vw;
  }
}

.acc__icon::before,
.acc__icon::after {
  content: "";
  position: absolute;
  inset: 0;
  top: 0.1272264631vw;
  left: 50%;
  transform: translateX(-50%);
  margin: auto;
  width: 3.3078880407vw;
  height: 0.2798982188vw;
  background: #5E66AD;
  transform-origin: center;
  transition: transform 0.25s ease;
}
@media screen and (min-width: 768px) {
  .acc__icon::before,
.acc__icon::after {
    width: 0.8597883598vw;
    height: 0.0727513228vw;
    top: 0.0330687831vw;
  }
}

.acc__icon::before {
  transform: translate(-50%, -50%);
}

.acc__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

/* 開いているときは「×」に変形 */
.acc__summary[aria-expanded=true] .acc__icon::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.acc__summary[aria-expanded=true] .acc__icon::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.acc__panel {
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.acc__panel .terms,
.acc__panel .conclusion-detail {
  padding: 0 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .acc__panel .terms,
.acc__panel .conclusion-detail {
    padding: 0 1.0582010582vw;
  }
}

@media (prefers-reduced-motion: reduce) {
  .acc__panel {
    transition: none;
  }
}
.acc__summary {
  border-radius: 4.0712468193vw;
  transition: border-radius 0.25s ease;
}
@media screen and (min-width: 768px) {
  .acc__summary {
    border-radius: 1.0582010582vw;
  }
}

.acc__summary[aria-expanded=true] {
  border-radius: 4.0712468193vw 4.0712468193vw 0 0;
}
@media screen and (min-width: 768px) {
  .acc__summary[aria-expanded=true] {
    border-radius: 1.0582010582vw 1.0582010582vw 0 0;
  }
}

.acc__panel {
  border-radius: 0 0 4.0712468193vw 4.0712468193vw;
  border-top: 1px solid #E5E7EB;
  transition: max-height 0.3s ease;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .acc__panel {
    border-radius: 0 0 1.0582010582vw 1.0582010582vw;
  }
}

.contact {
  margin-top: 12.213740458vw;
}
@media screen and (min-width: 768px) {
  .contact {
    margin-top: 3.1746031746vw;
  }
}

.contact__inner {
  padding: 6.106870229vw 4.0712468193vw;
  background-color: #5E66AD;
  border-radius: 4.0712468193vw;
  width: 87.0229007634vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .contact__inner {
    padding: 1.5873015873vw 1.0582010582vw;
    border-radius: 1.0582010582vw;
    width: 22.619047619vw;
  }
}

.contact__title {
  font-size: 4.0712468193vw;
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
  width: 40.7124681934vw;
  height: 8.1424936387vw;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #fff;
  border-radius: 12.7226463104vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .contact__title {
    font-size: 1.0582010582vw;
    width: 10.582010582vw;
    height: 2.1164021164vw;
    border-radius: 3.3068783069vw;
  }
}

.tel-number {
  font-size: 4.0712468193vw;
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  margin-top: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .tel-number {
    font-size: 1.0582010582vw;
    margin-top: 1.0582010582vw;
  }
}

.reception__wrap {
  margin-top: 4.0712468193vw;
  margin-bottom: 4.0712468193vw;
}
@media screen and (min-width: 768px) {
  .reception__wrap {
    margin-top: 1.0582010582vw;
    margin-bottom: 1.0582010582vw;
  }
}

.reception {
  font-size: 3.5623409669vw;
  font-weight: 400;
  line-height: 1.7142857143;
  color: #fff;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .reception {
    font-size: 0.9259259259vw;
  }
}

.contact__annotation {
  font-size: 3.0534351145vw;
  font-weight: 400;
  line-height: 175%;
  color: #fff;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (min-width: 768px) {
  .contact__annotation {
    font-size: 0.7936507937vw;
  }
}

.footer {
  padding: 6.106870229vw 0;
}
@media screen and (min-width: 768px) {
  .footer {
    padding: 1.5873015873vw 0;
    margin-bottom: 6.0846560847vw;
  }
}

.copyright {
  font-size: 3.0534351145vw;
  font-weight: 400;
  line-height: 1.5;
  font-family: "Inter", sans-serif;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .copyright {
    font-size: 0.7936507937vw;
  }
}

.copyright.contents_02 {
  margin-top: 2.0356234097vw;
}
@media screen and (min-width: 768px) {
  .copyright.contents_02 {
    margin-top: 0.5291005291vw;
  }
}

/* ===== PCフレーム ===== */
@media (min-width: 768px) {
  html, body {
    height: 100%;
    overflow: hidden;
    background: #fff;
  }
  .pc-stage {
    position: relative;
    height: 100dvh;
    width: 100%;
  }
  .pc-stage__rail--left {
    left: 0;
  }
  .pc-stage__rail--right {
    position: relative;
    right: 0;
  }
  .pc_logo {
    position: absolute;
    width: 24.1369047619vw;
    top: 5.291005291vw;
    left: 5.9312169312vw;
    z-index: 10;
  }
  .pc_campaign {
    position: absolute;
    width: 31.2374338624vw;
    top: 14.1474867725vw;
    left: 2.380952381vw;
    z-index: 10;
  }
  .pc_product_01 {
    position: absolute;
    width: 10.1851851852vw;
    top: 24.2063492063vw;
    left: 3.7037037037vw;
    z-index: 10;
  }
  .pc_product_02 {
    position: absolute;
    width: 9.6560846561vw;
    top: 24.7354497354vw;
    left: 22.3544973545vw;
    z-index: 10;
  }
  .pc_product_03 {
    position: absolute;
    width: 11.1111111111vw;
    top: 26.5873015873vw;
    right: 23.0515873016vw;
    z-index: 10;
  }
  .pc_product_04 {
    position: absolute;
    width: 9.4576719577vw;
    top: 23.6111111111vw;
    right: 4.9437830688vw;
    z-index: 10;
  }
  .pc_person_01 {
    position: absolute;
    /* width: 35.3022486772vw; */
    width: 33.3022486772vw;
    left: 0.5291005291vw;
    bottom: 0;
  }
  .pc_person_02 {
    position: absolute;
    /* width: 42.9894179894vw; */
    width: 40.9894179894vw;
    right: 0;
    bottom: 0;
  }

/* ===== 780px以下　人画像を縮小 ===== */
@media (max-height: 940px) {
  .pc_person_01 {
    width: calc(380 / 1512 * 100vw);
    left: 3.5vw;
    height: auto;
  }

  .pc_person_02 {
    width: calc(460 / 1512 * 100vw);
    right: 3vw;
  }
}
/* 
@media (max-height: 780px) {
  .pc_person_01 {
    width: calc(450 / 1512 * 100vw);
    left: 3.5vw;
    height: auto;
  }

  .pc_person_02 {
    width: calc(550 / 1512 * 100vw);
    right: 3vw;
  }
} */

@media (max-height: 700px) {
  .pc_person_01 {
    width: calc(320 / 1512 * 100vw);
    left: 7vw;
    height: auto;
  }

  .pc_person_02 {
    width: calc(380 / 1512 * 100vw);
    right: 8vw;
  }
}






  /* 中央の“スマホ画面” */
  .phone-viewport {
    position: relative;
    width: 25.9920634921vw;
    /* height: 100dvh; */
    height: calc(100dvh - 6.3492063492vw);
    margin: 0 auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: #fff;
    margin-top: 6.3492063492vw;
  }
  .phone-viewport_bg {
    position: absolute;
    width: 28.1084656085vw;
    height: 100dvh;
    background-color: #fff;
    border-radius: 1.0582010582vw;
    top: 5.291005291vw;
    left: 50%;
    transform: translateX(-50%);
  }
  .header {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }
}
.md-none {
  display: none;
}
@media screen and (min-width: 768px) {
  .md-none {
    display: block;
  }
}

.md-show {
  display: block;
}
@media screen and (min-width: 768px) {
  .md-show {
    display: none;
  }
}

.phone-viewport {
  overflow: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.phone-viewport::-webkit-scrollbar {
  width: 0;
  height: 0;
}


.drawer-menu,
.drawer__side {
  height: 100vh;
}

@supports (height: 100dvh) {
  .drawer-menu,
  .drawer__side {
    height: 100dvh;
  }
}

@supports (height: 100lvh) {
  .drawer-menu,
  .drawer__side {
    height: 100lvh;
  }
}

@supports (-webkit-touch-callout: none) {
  html, body {
    height: -webkit-fill-available;
  }
  .drawer-menu,
  .drawer__side {
    height: -webkit-fill-available;
  }
}