@charset "UTF-8";
.l-container {
  inline-size: 90%;
  max-inline-size: 1040px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .l-container {
    max-inline-size: 500px;
  }
}

.l-container--md {
  inline-size: 55%;
  max-inline-size: 800px;
}
@media screen and (max-width: 768px) {
  .l-container--md {
    inline-size: 90%;
    max-inline-size: 500px;
  }
}

.l-container--sm {
  inline-size: 50%;
  max-inline-size: 700px;
}
@media screen and (max-width: 768px) {
  .l-container--sm {
    inline-size: 90%;
    max-inline-size: 500px;
  }
}

.footer {
  padding-block: clamp(16px, -0.044709389px + 2.086438152vw, 30px);
  background-color: #e50581;
  text-align: center;
}
.footer__copyright {
  font-size: clamp(9px, 0.9776453055px + 1.043219076vw, 16px);
  color: #fff;
}

@media screen and (max-width: 768px) {
  .footer {
    padding-block: clamp(20px, -0.2702702703px + 5.4054054054vw, 30px);
  }
  .footer__copyright {
    font-size: clamp(12px, -0.1621621622px + 3.2432432432vw, 18px);
  }
}
@media screen and (max-width: 768px) {
  .u-show--pc {
    display: none;
  }
}
@media screen and (max-width: 500px) {
  .u-show--pc-tab {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .u-show--tab {
    display: none;
  }
}
@media screen and (max-width: 500px) {
  .u-show--tab {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .u-show--tab-sp {
    display: none;
  }
}
@media screen and (min-width: 500px) {
  .u-show--sp {
    display: none;
  }
}
.hero {
  position: relative;
  inline-size: 100%;
  aspect-ratio: 1440/900;
  max-block-size: 900px;
  padding-block-start: clamp(144px, -0.4023845007px + 18.7779433681vw, 270px);
  background: url(../images/hero_bg_pc.jpg) no-repeat center/cover;
}
.hero__visual {
  position: absolute;
  inset-block-start: clamp(13px, -0.7526080477px + 1.7883755589vw, 25px);
  inset-inline-start: 50%;
  transform: translateX(-66.7%);
  inline-size: clamp(491px, 2.782414307px + 63.4873323398vw, 917px);
  pointer-events: none;
}
.hero__title {
  position: relative;
  z-index: 10;
  inline-size: clamp(353px, 1.1624441133px + 45.7526080477vw, 660px);
  margin-inline: auto;
  pointer-events: none;
}
.hero__lead {
  position: absolute;
  inset-block-end: clamp(27px, 0.6408345753px + 3.4277198212vw, 50px);
  inset-inline-start: calc(50% - clamp(241px, 1.4754098361px + 31.1475409836vw, 450px));
  transform: translateX(-50%);
  inline-size: clamp(239px, 0.6214605067px + 30.998509687vw, 447px);
}
.hero__badge {
  position: absolute;
  inset-block-start: clamp(30px, -0.9433681073px + 4.0238450075vw, 57px);
  inset-inline-end: clamp(27px, 0.6408345753px + 3.4277198212vw, 50px);
  z-index: 10;
  inline-size: clamp(91px, 0.4619970194px + 11.7734724292vw, 170px);
  pointer-events: none;
}
.hero__note {
  position: absolute;
  inset-block-end: clamp(7px, 0.1236959762px + 0.8941877794vw, 13px);
  inset-inline-end: clamp(8px, -0.0223546945px + 1.043219076vw, 15px);
  z-index: 10;
  font-size: clamp(10px, 0.8315946349px + 1.1922503726vw, 18px);
  color: #fff;
  font-weight: 500;
  text-stroke: clamp(3px, 0.7078986587px + 0.2980625931vw, 5px) #e50581;
  -webkit-text-stroke: clamp(3px, 0.7078986587px + 0.2980625931vw, 5px) #e50581;
  paint-order: stroke;
}
.hero__deco {
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  inline-size: clamp(309px, 0.7123695976px + 40.0894187779vw, 578px);
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .hero {
    aspect-ratio: 375/650;
    max-block-size: 970px;
    padding-block-start: clamp(205px, -3.7837837838px + 55.6756756757vw, 308px);
    background: url(../images/hero_bg_sp.jpg) no-repeat center/cover;
  }
  .hero__visual {
    inset-block-start: clamp(3px, -1.0540540541px + 1.0810810811vw, 5px);
    transform: translateX(-51.5%);
    inline-size: clamp(343px, -5.6486486486px + 92.972972973vw, 515px);
  }
  .hero__title {
    inline-size: clamp(337px, -5.5675675676px + 91.3513513514vw, 506px);
  }
  .hero__lead {
    inset-block-end: clamp(95px, -2.2972972973px + 25.9459459459vw, 143px);
    inset-inline-start: calc(50% - clamp(85px, -2.1621621622px + 23.2432432432vw, 128px));
    z-index: 10;
    inline-size: clamp(195px, -3.6486486486px + 52.972972973vw, 293px);
  }
  .hero__badge {
    inset-block-start: auto;
    inset-block-end: clamp(8px, -0.1081081081px + 2.1621621622vw, 12px);
    inset-inline-start: clamp(8px, -0.1081081081px + 2.1621621622vw, 12px);
    inset-inline-end: auto;
    inline-size: clamp(85px, -2.1621621622px + 23.2432432432vw, 128px);
  }
  .hero__note {
    inset-block-end: clamp(5px, -1.0810810811px + 1.6216216216vw, 8px);
    inset-inline-end: clamp(5px, -1.0810810811px + 1.6216216216vw, 8px);
    font-size: clamp(10px, -0.1351351351px + 2.7027027027vw, 15px);
    text-stroke: clamp(3px, -1.0540540541px + 1.0810810811vw, 5px) #e50581;
    -webkit-text-stroke: clamp(3px, -1.0540540541px + 1.0810810811vw, 5px) #e50581;
  }
  .hero__deco {
    inline-size: clamp(295px, -5px + 80vw, 443px);
  }
}
.application {
  padding-block: clamp(54px, 1.2816691505px + 6.8554396423vw, 100px) clamp(27px, 0.6408345753px + 3.4277198212vw, 50px);
  background: url(../images/application_bg_pc.jpg) no-repeat center bottom/cover;
}

@media screen and (max-width: 768px) {
  .application {
    padding-block: clamp(50px, -0.6756756757px + 13.5135135135vw, 75px) clamp(25px, -1.3513513514px + 7.027027027vw, 38px);
    background: url(../images/application_bg_sp.jpg) no-repeat center bottom/cover;
  }
}
.howto {
  margin-block-end: clamp(43px, 0.5961251863px + 5.5141579732vw, 80px);
}
.howto__wrap {
  border: 4px solid #e50581;
  border-radius: clamp(11px, 0.6855439642px + 1.3412816692vw, 20px);
  overflow: hidden;
}
.howto__head {
  padding-block: clamp(16px, -0.044709389px + 2.086438152vw, 30px);
  background-color: #e50581;
}
.howto__title {
  inline-size: clamp(295px, 0.4649776453px + 38.3010432191vw, 552px);
  margin-inline: auto;
}
.howto__body {
  padding: clamp(21px, -0.7749627422px + 2.8315946349vw, 40px) clamp(43px, 0.5961251863px + 5.5141579732vw, 80px) clamp(32px, -0.0894187779px + 4.172876304vw, 60px);
  background-color: #fff;
}
.howto__images {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(21px, -0.7749627422px + 2.8315946349vw, 40px);
  margin-block-end: clamp(35px, 0.6184798808px + 4.4709388972vw, 65px);
}
.howto__images-product {
  inline-size: clamp(195px, 1.3174366617px + 25.1862891207vw, 364px);
}
.howto__images-example {
  inline-size: clamp(233px, 0.3517138599px + 30.2533532042vw, 436px);
}
.howto__step {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(27px, 0.6408345753px + 3.4277198212vw, 50px);
  margin-block-end: clamp(27px, 0.6408345753px + 3.4277198212vw, 50px);
}
.howto__step-item {
  position: relative;
  padding: clamp(21px, -0.7749627422px + 2.8315946349vw, 40px) clamp(16px, -0.044709389px + 2.086438152vw, 30px) clamp(16px, -0.044709389px + 2.086438152vw, 30px);
  border-radius: clamp(11px, 0.6855439642px + 1.3412816692vw, 20px);
  background-color: #ffeef6;
}
.howto__step-item::before {
  content: "";
  position: absolute;
  inset-block-start: 50%;
  inset-inline-end: calc(0px - clamp(9px, -0.1684053651px + 1.1922503726vw, 17px));
  transform: translate(100%, -50%);
  inline-size: clamp(9px, 0.9776453055px + 1.043219076vw, 16px);
  aspect-ratio: 17/21;
  background: url(../images/howto_arrow_pc.png) no-repeat center/cover;
}
.howto__step-item:last-child::before {
  display: none;
}
.howto__step-num {
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: clamp(19px, 0.6631892697px + 2.3845007452vw, 35px);
  aspect-ratio: 1/1;
  border-radius: 100%;
  background-color: #e50581;
  font-size: clamp(11px, 0.6855439642px + 1.3412816692vw, 20px);
  color: #fff;
  font-weight: 700;
}
.howto__step-text {
  font-size: clamp(13px, 0.393442623px + 1.6393442623vw, 24px);
  font-weight: 700;
  line-height: 1.5;
}
.howto__address {
  display: flex;
  align-items: center;
  gap: clamp(64px, -0.1788375559px + 8.345752608vw, 120px);
  padding: clamp(16px, -0.044709389px + 2.086438152vw, 30px) clamp(32px, -0.0894187779px + 4.172876304vw, 60px);
  border-radius: clamp(11px, 0.6855439642px + 1.3412816692vw, 20px);
  background-color: #ffed7b;
}
.howto__address-term {
  font-size: clamp(16px, -0.044709389px + 2.086438152vw, 30px);
  color: #e50581;
  font-weight: 700;
}
.howto__address-desc {
  position: relative;
  font-size: clamp(13px, 0.393442623px + 1.6393442623vw, 24px);
  font-weight: 700;
  line-height: 1.5;
}
.howto__address-desc::before {
  content: "";
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: calc(0px - clamp(32px, -0.0894187779px + 4.172876304vw, 60px));
  transform: translateX(50%);
  inline-size: 2px;
  block-size: 100%;
  border-radius: 5px;
  background-color: #e50581;
}

@media screen and (max-width: 768px) {
  .howto {
    margin-block-end: clamp(27.5px, -1.8918918919px + 7.8378378378vw, 42px);
  }
  .howto__wrap {
    border-width: 3px;
    border-radius: clamp(10px, -0.1351351351px + 2.7027027027vw, 15px);
  }
  .howto__head {
    padding-block: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
  }
  .howto__title {
    inline-size: clamp(280px, -3.7837837838px + 75.6756756757vw, 420px);
  }
  .howto__body {
    padding: clamp(30px, -0.4054054054px + 8.1081081081vw, 45px) clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
  }
  .howto__images {
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    gap: clamp(7px, -1.1081081081px + 2.1621621622vw, 11px);
    margin-block-end: clamp(17px, -1.2432432432px + 4.8648648649vw, 26px);
  }
  .howto__images-product {
    inline-size: clamp(210px, -2.8378378378px + 56.7567567568vw, 315px);
  }
  .howto__images-example {
    inline-size: clamp(260px, -3.5135135135px + 70.2702702703vw, 390px);
  }
  .howto__step {
    grid-template-columns: 1fr;
    gap: clamp(35px, -1.4864864865px + 9.7297297297vw, 53px);
    margin-block-end: clamp(30px, -0.4054054054px + 8.1081081081vw, 45px);
  }
  .howto__step-item {
    display: grid;
    grid-template-columns: clamp(30px, -0.4054054054px + 8.1081081081vw, 45px) 1fr;
    align-items: center;
    gap: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
    padding: clamp(20px, -0.2702702703px + 5.4054054054vw, 30px) clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
    border-radius: clamp(10px, -0.1351351351px + 2.7027027027vw, 15px);
  }
  .howto__step-item::before {
    inset-block-start: auto;
    inset-block-end: calc(0px - clamp(8.5px, -0.6216216216px + 2.4324324324vw, 13px));
    inset-inline-start: 50%;
    inset-inline-end: auto;
    transform: translate(-50%, 100%);
    inline-size: clamp(18px, -0.2432432432px + 4.8648648649vw, 27px);
    aspect-ratio: 37/31;
    background: url(../images/howto_arrow_sp.png) no-repeat center/cover;
  }
  .howto__step-num {
    position: static;
    transform: translate(0%, 0%);
    inline-size: clamp(30px, -0.4054054054px + 8.1081081081vw, 45px);
    font-size: clamp(17px, -1.2432432432px + 4.8648648649vw, 26px);
  }
  .howto__step-text {
    font-size: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
  }
  .howto__address {
    display: block;
    padding: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
    border-radius: clamp(10px, -0.1351351351px + 2.7027027027vw, 15px);
  }
  .howto__address-term {
    padding-block-end: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
    margin-block-end: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
    border-block-end: 2px solid #e50581;
    font-size: clamp(18px, -0.2432432432px + 4.8648648649vw, 27px);
    text-align: center;
  }
  .howto__address-desc {
    font-size: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
  }
  .howto__address-desc::before {
    display: none;
  }
}
.submission {
  margin-block-end: clamp(43px, 0.5961251863px + 5.5141579732vw, 80px);
}
.submission__wrap {
  border: 4px solid #ff82bd;
  border-radius: clamp(11px, 0.6855439642px + 1.3412816692vw, 20px);
  overflow: hidden;
}
.submission__head {
  padding-block: clamp(16px, -0.044709389px + 2.086438152vw, 30px);
  background-color: #ff82bd;
}
.submission__title {
  inline-size: clamp(295px, 0.4649776453px + 38.3010432191vw, 552px);
  margin-inline: auto;
}
.submission__body {
  padding: clamp(32px, -0.0894187779px + 4.172876304vw, 60px) clamp(37px, -0.8196721311px + 4.9180327869vw, 70px) clamp(37px, -0.8196721311px + 4.9180327869vw, 70px);
  background-color: #fff;
}
.submission__deadline {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(16px, -0.044709389px + 2.086438152vw, 30px);
  margin-block-end: clamp(24px, -0.0670640835px + 3.129657228vw, 45px);
}
.submission__deadline-term {
  padding: clamp(8px, -0.0223546945px + 1.043219076vw, 15px) clamp(11px, 0.6855439642px + 1.3412816692vw, 20px);
  border-radius: clamp(5px, -0.7302533532px + 0.7451564829vw, 10px);
  background-color: #e50581;
  font-size: clamp(16px, -0.044709389px + 2.086438152vw, 30px);
  color: #fff;
  font-weight: 700;
}
.submission__deadline-desc time {
  display: inline-block;
  font-size: clamp(27px, 0.6408345753px + 3.4277198212vw, 50px);
  color: #e50581;
  font-weight: 700;
}
.submission__deadline-desc span {
  display: inline-block;
  margin-inline-start: clamp(7px, 0.1236959762px + 0.8941877794vw, 13px);
  font-size: clamp(11px, 0.6855439642px + 1.3412816692vw, 20px);
}
.submission__text {
  font-size: clamp(13px, 0.393442623px + 1.6393442623vw, 24px);
  line-height: 1.7;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .submission {
    margin-block-end: clamp(40px, -0.5405405405px + 10.8108108108vw, 60px);
  }
  .submission__wrap {
    border-width: 3px;
    border-radius: clamp(10px, -0.1351351351px + 2.7027027027vw, 15px);
  }
  .submission__head {
    padding-block: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
  }
  .submission__title {
    inline-size: clamp(280px, -3.7837837838px + 75.6756756757vw, 420px);
  }
  .submission__body {
    padding: clamp(25px, -1.3513513514px + 7.027027027vw, 38px) clamp(10px, -0.1351351351px + 2.7027027027vw, 15px) clamp(35px, -1.4864864865px + 9.7297297297vw, 53px);
  }
  .submission__deadline {
    flex-direction: column;
    gap: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
    margin-block-end: clamp(30px, -0.4054054054px + 8.1081081081vw, 45px);
  }
  .submission__deadline-term {
    padding: clamp(7px, -1.1081081081px + 2.1621621622vw, 11px) clamp(10px, -0.1351351351px + 2.7027027027vw, 15px);
    border-radius: clamp(5px, -1.0810810811px + 1.6216216216vw, 8px);
    font-size: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
  }
  .submission__deadline-desc {
    text-align: center;
  }
  .submission__deadline-desc time {
    margin-block-end: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
    font-size: clamp(28px, -0.3783783784px + 7.5675675676vw, 42px);
  }
  .submission__deadline-desc span {
    margin-inline-start: 0;
    font-size: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
  }
  .submission__text {
    font-size: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
  }
}
.caution {
  margin-block-end: clamp(43px, 0.5961251863px + 5.5141579732vw, 80px);
  text-align: center;
}
.caution__title {
  margin-block-end: clamp(32px, -0.0894187779px + 4.172876304vw, 60px);
  font-size: clamp(27px, 0.6408345753px + 3.4277198212vw, 50px);
  color: #e50581;
  font-weight: 700;
}
.caution__list {
  display: inline-block;
  text-align: left;
}
.caution__item {
  display: flex;
  align-items: baseline;
  font-size: clamp(13px, 0.393442623px + 1.6393442623vw, 24px);
  font-weight: 700;
  line-height: 1.7;
}
.caution__item::before {
  content: "※";
}

@media screen and (max-width: 768px) {
  .caution {
    margin-block-end: clamp(40px, -0.5405405405px + 10.8108108108vw, 60px);
  }
  .caution__title {
    margin-block-end: clamp(30px, -0.4054054054px + 8.1081081081vw, 45px);
    font-size: clamp(25px, -1.3513513514px + 7.027027027vw, 38px);
  }
  .caution__item {
    font-size: clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
  }
}
.marquee {
  inline-size: 100%;
}
.marquee__inner {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: clamp(8px, -0.0223546945px + 1.043219076vw, 15px);
  overflow: hidden;
}
.marquee__track {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: clamp(8px, -0.0223546945px + 1.043219076vw, 15px);
  animation: marquee 40s linear infinite 0.5s both;
  will-change: transform;
}
.marquee__item {
  flex: 0 0 auto;
  transform-origin: 50% 60%;
  animation: sway 5s ease-in-out infinite;
  will-change: transform;
}
.marquee__item:nth-child(2n) {
  animation-duration: 2.2s;
  animation-delay: -0.6s;
}
.marquee__item:nth-child(3n) {
  animation-duration: 2.9s;
  animation-delay: -1.1s;
}
.marquee__item:nth-child(4n) {
  animation-duration: 2.4s;
  animation-delay: -0.3s;
}
.marquee__item:nth-child(5n) {
  animation-duration: 3.1s;
  animation-delay: -0.9s;
}
.marquee .marquee__item img {
  inline-size: auto;
  block-size: clamp(107px, 0.4172876304px + 13.8599105812vw, 200px);
}

@media screen and (max-width: 768px) {
  .marquee {
    inline-size: 100%;
  }
  .marquee__inner {
    gap: clamp(7px, -1.1081081081px + 2.1621621622vw, 11px);
  }
  .marquee__track {
    gap: clamp(7px, -1.1081081081px + 2.1621621622vw, 11px);
  }
  .marquee .marquee__item img {
    block-size: clamp(100px, -1.3513513514px + 27.027027027vw, 150px);
  }
}
@keyframes marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes sway {
  0%, 100% {
    transform: translateY(0) rotate(-3deg);
  }
  50% {
    transform: translateY(3px) rotate(3deg);
  }
}
.info {
  padding-block: clamp(54px, 1.2816691505px + 6.8554396423vw, 100px);
  background: url(../images/info_bg_pc.jpg) no-repeat center top/cover;
}

@media screen and (max-width: 768px) {
  .info {
    padding-block: clamp(50px, -0.6756756757px + 13.5135135135vw, 75px);
    background: url(../images/info_bg_sp.jpg) no-repeat center top/cover;
  }
}
.contact {
  margin-block-end: clamp(43px, 0.5961251863px + 5.5141579732vw, 80px);
}
.contact__title {
  margin-block-end: clamp(21px, -0.7749627422px + 2.8315946349vw, 40px);
  font-size: clamp(19px, -0.4828614009px + 2.5335320417vw, 36px);
  color: #e50581;
  font-weight: 700;
  text-align: center;
}
.contact__body {
  padding: clamp(32px, -0.0894187779px + 4.172876304vw, 60px) clamp(43px, 0.5961251863px + 5.5141579732vw, 80px);
  border-radius: clamp(11px, 0.6855439642px + 1.3412816692vw, 20px);
  background-color: #ffeef6;
}
.contact__info {
  margin-block-end: clamp(21px, -0.7749627422px + 2.8315946349vw, 40px);
}
.contact__info-row {
  display: grid;
  grid-template-columns: 27.5% 1fr;
}
.contact__info-term, .contact__info-desc {
  font-size: clamp(13px, 0.393442623px + 1.6393442623vw, 24px);
  font-weight: 700;
  line-height: 1.7;
}
.contact__caution-item {
  display: flex;
  align-items: baseline;
  font-size: clamp(9px, 0.9776453055px + 1.043219076vw, 16px);
  line-height: 1.7;
}
.contact__caution-item::before {
  content: "※";
}

@media screen and (max-width: 768px) {
  .contact {
    margin-block-end: clamp(50px, -0.6756756757px + 13.5135135135vw, 75px);
  }
  .contact__title {
    margin-block-end: clamp(20px, -0.2702702703px + 5.4054054054vw, 30px);
    font-size: clamp(22px, -0.2972972973px + 5.9459459459vw, 33px);
  }
  .contact__body {
    padding: clamp(30px, -0.4054054054px + 8.1081081081vw, 45px) clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
    border-radius: clamp(10px, -0.1351351351px + 2.7027027027vw, 15px);
  }
  .contact__info {
    margin-block-end: clamp(25px, -1.3513513514px + 7.027027027vw, 38px);
  }
  .contact__info-row {
    grid-template-columns: 30% 1fr;
  }
  .contact__info-term, .contact__info-desc {
    font-size: clamp(16px, -0.2162162162px + 4.3243243243vw, 24px);
  }
  .contact__caution-item {
    font-size: clamp(14px, -0.1891891892px + 3.7837837838vw, 21px);
  }
}
.privacy {
  margin-block-end: clamp(43px, 0.5961251863px + 5.5141579732vw, 80px);
}
.privacy__title {
  margin-block-end: clamp(21px, -0.7749627422px + 2.8315946349vw, 40px);
  font-size: clamp(19px, -0.4828614009px + 2.5335320417vw, 36px);
  color: #e50581;
  font-weight: 700;
  text-align: center;
}
.privacy__body {
  block-size: clamp(187px, 0.1937406855px + 24.2921013413vw, 350px);
  padding: clamp(21px, -0.7749627422px + 2.8315946349vw, 40px) clamp(27px, 0.6408345753px + 3.4277198212vw, 50px);
  border: 1px solid #a1a1a1;
  background-color: #fff;
  overflow-x: hidden;
  overflow-y: scroll;
}
.privacy__block + .privacy__block {
  margin-block-start: clamp(14px, -0.8986587183px + 1.9374068554vw, 27px);
}
.privacy__heading {
  font-size: clamp(10px, 0.8315946349px + 1.1922503726vw, 18px);
  color: #e50581;
  font-weight: 700;
  line-height: 1.7;
}
.privacy__subHeading, .privacy__text, .privacy__link, .privacy__item {
  font-size: clamp(9px, 0.9776453055px + 1.043219076vw, 16px);
  line-height: 1.7;
}
.privacy__link {
  display: inline;
  color: #007eb9;
  text-decoration: underline;
  overflow-wrap: anywhere;
  word-break: break-word;
  transition: opacity 0.3s ease;
}
.privacy__list .privacy__item {
  display: flex;
  align-items: baseline;
}
.privacy__list .privacy__item::before {
  content: "・";
}
.privacy__list--ordered {
  counter-reset: ordered;
}
.privacy__list--ordered .privacy__item {
  display: flex;
  align-items: baseline;
}
.privacy__list--ordered .privacy__item::before {
  counter-increment: ordered;
  content: "（" counter(ordered) "）";
}

@media (hover: hover) {
  .privacy__link:hover {
    opacity: 0.6;
  }
}
.privacy__link:focus-visible {
  opacity: 0.6;
}

@media screen and (max-width: 768px) {
  .privacy {
    margin-block-end: clamp(40px, -0.5405405405px + 10.8108108108vw, 60px);
  }
  .privacy__title {
    margin-block-end: clamp(20px, -0.2702702703px + 5.4054054054vw, 30px);
    font-size: clamp(22px, -0.2972972973px + 5.9459459459vw, 33px);
  }
  .privacy__body {
    block-size: clamp(320px, -4.3243243243px + 86.4864864865vw, 480px);
    padding: clamp(20px, -0.2702702703px + 5.4054054054vw, 30px) clamp(15px, -1.2162162162px + 4.3243243243vw, 23px);
  }
  .privacy__block + .privacy__block {
    margin-block-start: clamp(23px, -1.3243243243px + 6.4864864865vw, 35px);
  }
  .privacy__heading {
    font-size: clamp(17px, -1.2432432432px + 4.8648648649vw, 26px);
  }
  .privacy__subHeading, .privacy__text, .privacy__link, .privacy__item {
    font-size: clamp(14px, -0.1891891892px + 3.7837837838vw, 21px);
  }
}
.special__link {
  position: relative;
  inline-size: clamp(251px, 0.0149031297px + 32.6378539493vw, 470px);
  padding-block: clamp(5px, -0.7302533532px + 0.7451564829vw, 10px);
  margin-inline: auto;
  border: 4px solid #0da13e;
  border-radius: clamp(27px, 0.6408345753px + 3.4277198212vw, 50px);
  background-color: #ffdc00;
  text-align: center;
  transition: opacity 0.3s ease;
}
.special__link::before {
  content: "";
  position: absolute;
  inset-block-start: 50%;
  inset-inline-end: clamp(16px, -0.044709389px + 2.086438152vw, 30px);
  transform: translateY(-50%);
  inline-size: clamp(9px, 0.9776453055px + 1.043219076vw, 16px);
  aspect-ratio: 17/21;
  background: url(../images/special_arrow.png) no-repeat center/cover;
}
.special__character {
  position: absolute;
  inset-block-start: -17.3%;
  inset-inline-start: -2.3%;
  inline-size: clamp(63px, -0.0327868852px + 8.1967213115vw, 118px);
}
.special__text {
  display: inline-block;
  padding-inline-start: clamp(14px, -0.8986587183px + 1.9374068554vw, 27px);
  font-size: clamp(13px, 0.393442623px + 1.6393442623vw, 24px);
  color: #0da13e;
  font-weight: 700;
  line-height: 1.4;
}

@media (hover: hover) {
  .special__link:hover {
    opacity: 0.6;
  }
}
.special__link:focus-visible {
  opacity: 0.6;
}

@media screen and (max-width: 768px) {
  .special__link {
    inline-size: clamp(310px, -4.1891891892px + 83.7837837838vw, 465px);
    padding-block: clamp(7px, -1.1081081081px + 2.1621621622vw, 11px);
    border-width: 2px;
    border-radius: clamp(30px, -0.4054054054px + 8.1081081081vw, 45px);
  }
  .special__link::before {
    inset-inline-end: clamp(20px, -0.2702702703px + 5.4054054054vw, 30px);
    inline-size: clamp(10px, -0.1351351351px + 2.7027027027vw, 15px);
  }
  .special__character {
    inset-block-start: -13.3%;
    inset-inline-start: -2%;
    inline-size: clamp(77px, -2.0540540541px + 21.0810810811vw, 116px);
  }
  .special__text {
    padding-inline-start: clamp(20px, -0.2702702703px + 5.4054054054vw, 30px);
    font-size: clamp(16px, -0.2162162162px + 4.3243243243vw, 24px);
  }
}
/*# sourceMappingURL=style.css.map */
