@charset "UTF-8";
.txt-pink {
  color: #e85298;
}

.txt-blue {
  color: #21b8ce;
}

.txt-yellow {
  color: #fff269;
}

.txt-red {
  color: #d00000;
}

.txt-center {
  text-align: center;
}

.fw-20 {
  font-size: 2rem;
}

.registerPage .subpage_title_wrap {
  margin-bottom: -1rem;
}
.registerPage .contents_wrap {
  margin-top: -4rem;
}
.registerPage .waveB_bottom::after {
  display: none;
}
.registerPage__text {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.8;
}
.registerPage__text.-center {
  text-align: center;
}
.registerPage__text.-pink {
  color: #e85298;
}
.registerPage__text.-blue {
  color: #21b8ce;
}
.registerPage__text.-yellow {
  color: #fff269;
}
.registerPage .txt-yellow {
  color: #fff269;
}
.registerPage .waveD_bottom, .registerPage__bg {
  overflow: hidden;
}
.registerPage img {
  max-width: 100%;
  height: auto;
}
.registerPage ~ .pagetop_wrap .pagetop {
  padding-bottom: 1rem;
}
.registerPage ~ .pagetop_wrap .pagetop img {
  display: none;
}
.registerPage ~ .pagetop_wrap .pagetop a {
  position: relative;
  display: flex;
  justify-content: center;
}
.registerPage ~ .pagetop_wrap .pagetop a::after {
  content: "";
  width: 4rem;
  height: 4rem;
  background: url(../images/app/btn_pagetop2.png) no-repeat;
  background-size: cover;
  display: block;
}
.registerPage__sectionHeading {
  color: #333;
  font-size: 4.8rem;
  font-weight: 900;
  text-align: center;
  margin: 0 0 2rem;
}
.registerPage__sectionHeading.-pink {
  color: #e85298;
}
.registerPage__sectionHeading.-blue {
  color: #21b8ce;
}
.registerPage__giftBanner {
  margin-bottom: 6rem;
  padding-bottom: 6rem;
  border-bottom: 1px solid rgba(33, 184, 206, 0.4);
}
.registerPage .bg_waveB {
  padding-top: 12rem;
  background: #FFFCE1;
}
.registerPage__bgBlue {
  position: relative;
}
.registerPage__campaignLead {
  color: #21b8ce;
  font-size: 4.8rem;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
  max-width: 91.4rem;
  margin: 6.4rem auto 2.4rem;
  -webkit-text-stroke: 8px white;
  paint-order: stroke fill;
}
.registerPage__campaignLead-big {
  font-size: 6.8rem;
  letter-spacing: 0.136rem;
}
.registerPage__campaignImage {
  margin: 3.2rem 0;
}
.registerPage__welcomeBannerText {
  font-size: 2rem;
  font-weight: 700;
  margin-top: -3rem;
}
@media screen and (max-width: 768px) {
  .registerPage__welcomeBannerText {
    font-size: 1.2rem;
    margin-top: 0;
  }
}
.registerPage__ButtonWrap {
  margin-top: 2.5rem;
}
.registerPage__downloadSection {
  background: #fffbcf;
  border: 4px solid #21b8ce;
  border-radius: 1rem;
  padding: 4.8rem 6rem;
  margin: 4.8rem 0 8rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .registerPage__downloadSection {
    padding: 4.8rem 4%;
    margin-left: -4%;
    margin-right: -4%;
    width: 108%;
    max-width: none;
  }
}
.registerPage__downloadSectionTitle {
  color: #21b8ce;
  font-size: 3.5rem;
  font-weight: 700;
  text-align: center;
  margin: 0 0 4.8rem;
}
@media screen and (max-width: 768px) {
  .registerPage__downloadSectionTitle {
    font-size: 2rem;
    margin-bottom: 1.5rem;
  }
}
.registerPage__downloadSectionInner {
  gap: 4.8rem;
}
.registerPage__downloadSectionNote {
  font-size: 2rem;
  font-weight: 500;
  font-weight: 500;
  text-align: center;
  line-height: 1.6;
  color: #D00000;
  margin-top: 2rem;
}
.registerPage__appCard {
  flex: 1;
  min-width: 280px;
  max-width: 440px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .registerPage__appCard {
    min-width: 100%;
    max-width: 100%;
  }
}
.registerPage__appCardBanner {
  position: relative;
}
.registerPage__downloadSectionDivider {
  width: 1px;
  min-height: 200px;
  background: transparent;
  border-left: 4px dotted #21B8CE;
  flex-shrink: 0;
  align-self: stretch;
  margin: 0 1rem;
}
@media screen and (max-width: 768px) {
  .registerPage__downloadSectionDivider {
    width: 100%;
    min-height: 0;
    height: 2px;
    margin: 1.5rem 0;
    border-left: none;
    border-top: 4px dotted #21B8CE;
  }
}
.registerPage__appCardBody {
  background: #fff;
  border-radius: 12px;
  padding: 2.4rem;
  width: 100%;
  flex: 1;
  gap: 2.4rem;
}
@media screen and (max-width: 768px) {
  .registerPage__appCardBody {
    padding: 1.2rem;
  }
}
.registerPage__appCardHead {
  gap: 1.6rem;
}
.registerPage__appCardName {
  font-size: 2rem;
  font-weight: 700;
  margin: 0;
  line-height: 1.3;
}
.registerPage__appCardMain {
  gap: 3.2rem;
  margin: auto;
}
.registerPage__appCardQr {
  flex-shrink: 0;
}
.registerPage__appCardQr img {
  display: block;
  width: 120px;
  height: 120px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 768px) {
  .registerPage__appCardQr img {
    width: 100px;
    height: 100px;
  }
}
.registerPage__appCardBtns {
  gap: 1.6rem;
  flex: 1;
  min-width: 0;
}
.registerPage__storeBtn {
  transition: opacity 0.2s;
}
.registerPage__storeBtn:hover {
  opacity: 0.9;
}
.registerPage__storeBtnImg {
  display: block;
  height: 34px;
  width: auto;
  max-width: 120px;
  -o-object-fit: contain;
     object-fit: contain;
}
.registerPage__storeBtn--apple {
  color: #fff;
}
.registerPage__storeBtn--apple .registerPage__storeBtnLabel {
  font-size: 1.3rem;
}
.registerPage__storeBtn--apple .registerPage__storeBtnSub {
  font-size: 1rem;
  opacity: 0.9;
  margin-top: 0.2rem;
}
.registerPage__storeBtn--google {
  background: #fff;
  color: #000;
}
.registerPage__storeBtn--google .registerPage__storeBtnLabel {
  font-size: 1.3rem;
}
.registerPage__storeBtn--google .registerPage__storeBtnSub {
  font-size: 1rem;
  color: #666;
  margin-top: 0.2rem;
}
.registerPage__ctaRow {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 768px) {
  .registerPage__ctaRow {
    flex-direction: column;
    gap: 1.5rem;
    align-items: stretch;
  }
}
.registerPage__ctaBox {
  flex: 1;
  min-width: 260px;
  max-width: 320px;
  border-radius: 1.2rem;
  padding: 2rem 1.5rem;
  text-align: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
}
.registerPage__ctaBox--pink {
  background: #fff;
  border: 3px solid #e85298;
}
.registerPage__ctaBox--blue {
  background: #fff;
  border: 3px solid #21b8ce;
}
.registerPage__ctaBoxTitle {
  font-size: 1.6rem;
  font-weight: 700;
  color: #333;
  margin: 0;
}
.registerPage__ctaBoxNote {
  font-size: 1.2rem;
  color: #666;
  margin: 0;
}
.registerPage__ctaBtn {
  display: inline-block;
  padding: 1rem 2rem;
  border-radius: 2rem;
  font-size: 1.4rem;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.05em;
  transition: opacity 0.2s, transform 0.2s;
  margin-top: 0.5rem;
}
.registerPage__ctaBtn:hover {
  opacity: 0.9;
  transform: scale(1.02);
}
.registerPage__ctaBtn--pink {
  background: #e85298;
  box-shadow: 0 2px 8px rgba(232, 82, 152, 0.4);
}
.registerPage__ctaBtn--blue {
  background: #21b8ce;
  box-shadow: 0 2px 8px rgba(33, 184, 206, 0.4);
}
.registerPage__memberLink {
  text-align: center;
  margin: 0;
  font-size: 1.2rem;
}
.registerPage__Steps--head {
  color: #21b8ce;
  text-align: center;
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1.4;
  -webkit-text-stroke: 6px white;
  paint-order: stroke fill;
}
.registerPage__Steps--head-sub {
  font-size: 3.2rem;
}
.registerPage__Steps--image {
  margin-top: 6.4rem;
}
.registerPage__Steps--btns {
  gap: 6rem;
}
.registerPage__Steps--label {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
.registerPage__Steps--label .check {
  margin-left: 0.2rem;
  margin-right: 0.2rem;
}
.registerPage__Steps--link {
  text-decoration: none;
  gap: 2.4rem;
  color: #000 !important;
  flex: 1;
}
.registerPage__Steps--link:hover {
  color: #000;
  opacity: 1;
}
.registerPage__Steps--link:hover .registerPage__Steps--btn {
  opacity: 0.8;
}
.registerPage__Steps--btn {
  width: 52rem;
  max-width: 100%;
  height: 18.4rem;
  padding: 4rem 10rem 2.4rem;
  gap: 1.2rem;
  font-size: 3.2rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.4;
  border-radius: 1.2rem;
  position: relative;
  text-align: center;
}
.pink .registerPage__Steps--btn {
  background: #e85298;
}
.blue .registerPage__Steps--btn {
  background: #21b8ce;
}
.registerPage__Steps--num {
  font-size: 3.2rem;
}
.pink .registerPage__Steps--num {
  color: #e85298;
}
.blue .registerPage__Steps--num {
  color: #21b8ce;
}
.registerPage__Steps--num::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #e85298;
}
.registerPage__Steps--btn-arrow {
  position: absolute;
  bottom: 4.8rem;
  left: 50%;
  transform: translateX(-50%);
  width: 24px;
  height: 12px;
}
.registerPage__simulation {
  margin-top: 2rem;
  margin-bottom: 4.8rem;
  gap: 6.4rem;
}
.registerPage__simulationItem--choice {
  gap: 2rem;
}
.registerPage__simulationItem--choiceItem {
  flex: 1 1 50%;
}
.registerPage__simulationItem--choiceItem-box {
  cursor: pointer;
  background: #fff;
  border: 4px solid;
  border-radius: 1rem;
  padding: 1.2rem 2rem 2.4rem;
  height: 16rem;
  width: 32rem;
  text-align: center;
  transition: box-shadow 0.2s ease;
  position: relative;
}
.pink .registerPage__simulationItem--choiceItem-box {
  border-color: #e85298;
}
.blue .registerPage__simulationItem--choiceItem-box {
  border-color: #21b8ce;
}
.registerPage__simulationItem--choiceItem-box:hover {
  box-shadow: 0 4px 12px rgba(232, 82, 152, 0.25);
}
.registerPage__simulationItem--choiceInput {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.registerPage__simulationItem--choiceItem-text {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 1.6rem;
}
.registerPage__simulationItem--choiceItem-label {
  text-align: center;
  font-size: 4rem;
  font-weight: 700;
  -webkit-text-stroke: 4px #fff;
  paint-order: stroke fill;
}
.pink .registerPage__simulationItem--choiceItem-label {
  color: #e85298;
}
.blue .registerPage__simulationItem--choiceItem-label {
  color: #21b8ce;
}
.registerPage__simulationItem--choiceItem-check {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  border: 2px solid;
  border-radius: 50%;
  background: #fff;
  flex-shrink: 0;
  transition: background 0.2s ease, border-color 0.2s ease;
  position: absolute;
  bottom: 2rem;
}
.pink .registerPage__simulationItem--choiceItem-check {
  border-color: #e85298;
}
.blue .registerPage__simulationItem--choiceItem-check {
  border-color: #21b8ce;
}
.registerPage__simulationItem--choiceItem-check::after {
  content: "";
  display: block;
  width: 1rem;
  height: 1.5rem;
  margin-bottom: 0.5rem;
  border: solid #E4E4E4;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.pink .registerPage__simulationItem--choiceInput:checked ~ .registerPage__simulationItem--choiceItem-check {
  border-color: #e85298;
  background: #e85298;
}
.blue .registerPage__simulationItem--choiceInput:checked ~ .registerPage__simulationItem--choiceItem-check {
  border-color: #21b8ce;
  background: #21b8ce;
}
.registerPage__simulationItem--choiceInput:checked ~ .registerPage__simulationItem--choiceItem-check::after {
  border-color: #fff;
}
.registerPage__sectionSupport {
  padding: 4rem 0 5rem;
}
@media screen and (max-width: 768px) {
  .registerPage__sectionSupport {
    padding: 3rem 0 2rem;
  }
}
.registerPage__sectionSupport__sectionHeading {
  color: #fff;
}
.registerPage__supportInner {
  margin: 4rem 8rem 0;
}
.registerPage__supportContent {
  flex: 1;
}
.registerPage__supportBanner {
  position: relative;
  display: inline-block;
  background: #fff;
  border: 1px solid #e85298;
  border-radius: 2.8rem;
  margin-bottom: 2rem;
  width: 36rem;
  height: 5.6rem;
  text-align: center;
  font-size: 3rem;
  font-weight: 700;
  color: #e85298;
}
.blue .registerPage__supportBanner {
  border-color: #21b8ce;
  color: #21b8ce;
}
.registerPage__supportBanner::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -10px;
  transform: translateX(-50%);
  border: 10px solid transparent;
  border-top-color: #e85298;
  border-bottom: none;
}
.blue .registerPage__supportBanner::after {
  border-top-color: #21b8ce;
}
.registerPage__supportBanner::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  transform: translateX(-50%);
  border: 10px solid transparent;
  border-top-color: #fff;
  border-bottom: none;
  z-index: 1;
}
.registerPage__supportBannerStars {
  position: absolute;
  top: -2.4rem;
  right: -0.8rem;
}
.registerPage__supportBannerText {
  color: #e85298;
  font-size: 3rem;
  font-weight: 700;
}
.blue .registerPage__supportBannerText {
  color: #21b8ce;
}
.registerPage__supportList {
  gap: 1.2rem;
  margin-bottom: 2.4rem;
}
.registerPage__supportItem {
  gap: 1rem;
}
.registerPage__supportCheck {
  flex-shrink: 0;
}
.registerPage__supportItemText {
  flex: 1;
}
.registerPage__supportCta {
  position: relative;
  width: 100%;
  background: #e85298;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  text-decoration: none;
  padding: 1.4rem 2rem;
  transition: opacity 0.2s;
  height: 6.4rem;
  border-radius: 1.2rem;
}
.registerPage__supportCta:hover {
  opacity: 0.9;
}
.registerPage__supportCta:visited {
  color: #fff;
}
@media screen and (max-width: 768px) {
  .registerPage__supportCta {
    font-size: 1.4rem;
    padding: 1.2rem 1.6rem;
  }
}
.registerPage__supportCtaArrow {
  position: absolute;
  right: 1rem;
}
.registerPage__supportVisual {
  flex-shrink: 0;
}
.registerPage__sectionFlow {
  padding: 4rem 0 8rem;
}
.registerPage__sectionFlowTitle {
  position: relative;
  color: #e85298;
  font-size: 3.2rem;
  font-weight: 900;
  text-align: center;
  margin: 0 auto 4.8rem;
  line-height: 1.4;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 1;
  padding: 0 2rem;
}
.blue .registerPage__sectionFlowTitle {
  color: #21b8ce;
}
.registerPage__sectionFlowTitle::after {
  content: "";
  position: absolute;
  background: url(../images/register/bg_gradient_yellow.png) no-repeat center bottom;
  background-size: contain;
  bottom: -0.4em;
  height: 3.6em;
  z-index: -1;
  width: 100%;
  left: 0;
}
.registerPage__flowStepList {
  gap: 4.8rem;
}
.registerPage__flowStepItem {
  margin: 0;
}
.registerPage__flowStepCard {
  gap: 2.5rem;
  background: #fff;
  border-radius: 1rem;
  position: relative;
  z-index: 1;
  padding: 3rem 3rem 5rem;
}
.registerPage__flowStepBody {
  flex: 1;
}
.registerPage__flowStepTitle {
  border-radius: 0.4rem;
  background: #e85298;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 700;
  padding: 1rem 1rem;
  margin-bottom: 1.6rem;
  width: -moz-fit-content;
  width: fit-content;
}
.blue .registerPage__flowStepTitle {
  background: #21b8ce;
}
.registerPage__flowStepText {
  padding-right: 8%;
}
.registerPage__flowStepVisual {
  position: absolute;
  top: -5rem;
  right: -8rem;
  width: 24rem;
}
.registerPage__flowStepBadge {
  display: inline-block;
  background: #e85298;
  color: #fff;
  font-size: 3.2rem;
  font-weight: 400;
  position: relative;
  padding: 0rem 1.5rem 0rem 1.5rem;
  margin-left: -5.3rem;
  height: 5.8rem;
}
.blue .registerPage__flowStepBadge {
  background: #21b8ce;
}
.registerPage__flowStepBadge::before {
  content: "";
  position: absolute;
  bottom: -1rem;
  left: 0;
  width: 2.3rem;
  height: 1.2rem;
  background: linear-gradient(20deg, transparent 50%, #C04377 50%);
}
.blue .registerPage__flowStepBadge::before {
  background: linear-gradient(20deg, transparent 50%, #21b8ce 50%);
}
.registerPage__flowStepBadgeNum {
  font-size: 3.8rem;
}
.registerPage__flowStepHeading {
  color: #e85298;
  font-size: 3.2rem;
  font-weight: 900;
  margin: 0 0 3.2rem;
  line-height: 1.4;
  gap: 3rem;
}
.blue .registerPage__flowStepHeading {
  color: #21b8ce;
}
.registerPage__flowStepContentLeft {
  flex: 0 0 70%;
}
.registerPage__flowStepContent {
  margin-bottom: 2.4rem;
}
.registerPage__flowStepText {
  margin: 2rem 0 3.2rem;
}
.registerPage__flowStepBtn {
  gap: 0.8rem;
  background: #e85298;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  text-decoration: none;
  padding: 2rem 3.2rem;
  border-radius: 1.2rem;
  transition: opacity 0.2s;
  width: 56.8rem;
  margin: auto;
  position: relative;
  line-height: 1.6;
  text-align: center;
  width: 68rem;
  max-width: 100%;
  margin-top: 4rem;
}
.blue .registerPage__flowStepBtn {
  background: #21b8ce;
}
.registerPage__flowStepBtn:hover {
  opacity: 0.9;
}
.registerPage__flowStepBtn:visited {
  color: #fff;
}
.registerPage__flowStepBtnArrow {
  position: absolute;
  right: 1rem;
  line-height: 1;
}
.registerPage__flowStepNote {
  width: 100%;
  border-radius: 1rem;
  border: 4px solid;
  padding: 1.6rem 3.2rem 1.6rem 4.8rem;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.7;
  margin-top: 2rem;
  text-align: left;
}
.registerPage__flowStepNote:hover {
  opacity: 1;
}
.blue .registerPage__flowStepNote {
  border-color: #21b8ce;
}
.pink .registerPage__flowStepNote {
  border-color: #e85298;
}
.registerPage__flowStepNoteTitle {
  margin-left: -2.2rem;
}
.registerPage__flowStepNoteTitle::before {
  content: "※";
}
.registerPage__flowStepNote2 {
  font-size: 2rem;
  font-weight: 500;
  margin-bottom: 3rem;
  line-height: 1.6;
}
.registerPage__flowStepVisual {
  flex-shrink: 0;
}
.registerPage__flowStepPhoto {
  flex-shrink: 0;
}
.registerPage__robotGuide {
  background: #fff;
  border-radius: 1rem;
  padding: 6.4rem 4.8rem;
  margin-top: 4.8rem;
  margin-bottom: 4.8rem;
}
.registerPage__robotGuideTitle {
  color: #21b8ce;
  font-size: 3.2rem;
  font-weight: 900;
  text-align: center;
  margin: 0 0 4.8rem;
}
.registerPage__robotStepList {
  margin: 0 auto 2rem;
  padding: 16rem 6rem 5rem;
  border-radius: 2rem;
  background-color: #F2F2F2;
  max-width: 93rem;
  gap: 3.2rem;
  position: relative;
}
.registerPage__robotGuidePoint {
  position: absolute;
  top: 0;
  left: 0;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  background: #FFF269;
  padding: 2rem;
}
.registerPage__robotGuidePointLabel {
  flex-shrink: 0;
  display: inline-block;
  background: #E82427;
  color: #FFF269;
  font-size: 3.2rem;
  font-weight: 400;
  padding: 0.8rem 1rem 0.6rem;
  position: absolute;
  margin-top: -2.5rem;
  margin-left: -3rem;
}
.registerPage__robotGuidePointLabel::before {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  left: 0;
  width: 1.2rem;
  height: 0.6rem;
  background: linear-gradient(20deg, transparent 50%, #E82427 50%);
}
.registerPage__robotGuidePointText {
  font-size: 3.2rem;
  font-weight: 900;
  color: #E82427;
  -webkit-text-stroke: 3px #fff;
  paint-order: stroke fill;
  padding-left: 10rem;
  line-height: 1.2;
}
.registerPage__robotStepRow {
  gap: 3.2rem;
}
.registerPage__robotStepItem {
  position: relative;
  width: 35.8rem;
  max-width: calc(50% - 3.2rem);
  gap: 1.8rem;
}
.registerPage__robotStepItem.w100 {
  width: 100%;
  max-width: 100%;
}
.registerPage__robotStepItemInner {
  gap: 4.8rem;
}
.registerPage__robotStepLine {
  height: 2px;
  background: #fff;
}
.registerPage__robotStepDivider {
  border-left: 2px solid #fff;
  flex-shrink: 0;
  align-self: stretch;
}
.registerPage__robotStepNum {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: #21b8ce;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  border-radius: 8px;
}
.registerPage__robotStepImg {
  border-radius: 8px;
  overflow: hidden;
  background: #f5f5f5;
}
.registerPage__robotStepImg img {
  width: 100%;
  height: auto;
  display: block;
}
.registerPage__robotStepText {
  font-size: 1.6rem;
  line-height: 1.8;
}
.registerPage__robotStepNote {
  font-size: 1.4rem;
}
.registerPage__robotStepHighlight {
  color: #21b8ce;
  font-size: 3.2rem;
  font-weight: 900;
  letter-spacing: 0.16rem;
}
.registerPage__robotPoint {
  gap: 1rem;
  background: #fff;
  border-radius: 1rem;
  padding: 2rem;
  margin-top: 1.8rem;
  border-radius: 1rem;
  background: #FFF269;
}
.registerPage__robotPointLabel {
  flex-shrink: 0;
  display: inline-block;
  background: #E82427;
  color: #FFF269;
  font-size: 1.6rem;
  font-weight: 400;
  padding: 0.8rem 1rem 0.6rem;
  position: absolute;
  margin-top: -3.5rem;
  margin-left: -3rem;
}
.registerPage__robotPointLabel::before {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  left: 0;
  width: 1.2rem;
  height: 0.6rem;
  background: linear-gradient(20deg, transparent 50%, #E82427 50%);
}
.registerPage__robotPointBody {
  flex: 1;
  min-width: 0;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.7;
  gap: 0.8rem;
}
.registerPage__robotPointTitle {
  color: #E82427;
  -webkit-text-stroke: 2px #fff;
  paint-order: stroke fill;
  font-size: 1.8rem;
  font-weight: 700;
}
.registerPage__robotPointNote {
  font-size: 1.4rem;
  margin-top: 0.8rem;
  color: #E82427;
  font-weight: 500;
  display: flex;
}
.registerPage__robotPointNote::before {
  content: "※";
}
.registerPage__sectionRegBg {
  background: url(../images/register/bg_pink.svg) center top;
  position: relative;
}
.registerPage__sectionReg {
  padding-top: 16rem;
  padding-bottom: 16rem;
  margin-bottom: -5rem;
}
.registerPage__sectionReg .registerPage__sectionHeading {
  -webkit-text-stroke: 8px white;
  paint-order: stroke fill;
}
.registerPage__sectionPreReg {
  background: url(../images/register/bg_prereg.svg) center top;
  padding-top: 12rem;
  padding-bottom: 16rem;
  position: relative;
}
.registerPage__sectionPreReg .registerPage__sectionHeading {
  -webkit-text-stroke: 8px white;
  paint-order: stroke fill;
}
.registerPage__sectionPreReg-steps {
  background-color: #fff;
  padding: 6.4rem;
  border-radius: 1rem;
  gap: 4.8rem;
}
.registerPage__sectionPreReg-steps .appStep3__item--note {
  font-size: 1.4rem;
}
.registerPage .appStep3__item {
  padding: 0 4rem;
}
.registerPage__sectionPreReg-stepsTitle {
  font-size: 3.5rem;
  font-weight: 900;
  color: #21b8ce;
  text-align: center;
  margin-bottom: 0;
}
.registerPage .appStep3List {
  width: 93rem;
  max-width: 100%;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .registerPage__text {
    font-size: 1.6rem;
  }
  .registerPage__sectionHeading {
    font-size: 2.4rem;
  }
  .registerPage .waveD_bottom img {
    max-width: none;
    width: 200%;
  }
  .registerPage .bg_waveB {
    padding-top: 4rem;
  }
  .registerPage .contents_wrap {
    margin-top: -2rem;
  }
  .registerPage__giftBanner {
    margin-top: 2rem;
    margin-bottom: 4.8rem;
    padding-bottom: 4rem;
  }
  .registerPage__downloadSectionInner {
    gap: 2.4rem;
  }
  .registerPage__downloadSectionNote {
    font-size: 1.4rem;
    text-align: left;
  }
  .registerPage__appCardMain {
    gap: 2rem;
  }
  .registerPage__appCardName {
    font-size: 1.8rem;
  }
  .registerPage__appCardLogo {
    width: 4rem;
  }
  .registerPage__appCardQr {
    width: 12rem;
  }
  .registerPage__storeBtn--apple {
    width: 13.7rem;
  }
  .registerPage__storeBtn--google {
    width: 17rem;
  }
  .registerPage__Steps--head {
    font-size: 2.4rem;
    -webkit-text-stroke: 2px white;
    gap: 0.8rem;
  }
  .registerPage__Steps--head-sub {
    font-size: 1.6rem;
  }
  .registerPage__Steps--image {
    margin-top: 2.4rem;
  }
  .registerPage__Steps--btns {
    gap: 0.8rem;
    margin-top: 2.4rem;
  }
  .registerPage__Steps--label {
    font-size: 1.3rem;
  }
  .registerPage__Steps--label .check {
    width: 1.6rem;
  }
  .registerPage__Steps--link {
    gap: 1.6rem;
  }
  .registerPage__Steps--btn {
    width: 100%;
    max-width: 100%;
    height: 14rem;
    padding: 1.2rem 0 2.4rem;
    font-size: 1.8rem;
    justify-content: center;
  }
  .registerPage__Steps--num {
    font-size: 1.8rem;
  }
  .registerPage__Steps--btn-arrow {
    bottom: 2.8rem;
    width: 16px;
  }
  .registerPage__simulation {
    margin-top: 2rem;
    margin-bottom: 3.2rem;
    gap: 4.8rem;
  }
  .registerPage__simulationArrow {
    width: 5.8rem;
    margin: auto;
  }
  .registerPage__simulationItem--choice {
    gap: 0.5rem;
  }
  .registerPage__simulationItem--choiceItem-box {
    border: 3px solid;
    padding: 1.2rem 0.6rem 2.4rem;
    height: 14rem;
    width: 100%;
  }
  .registerPage__simulationItem--choiceItem-text {
    font-size: 1.4rem;
    margin-bottom: 2rem;
  }
  .registerPage__simulationItem--choiceItem-label {
    font-size: 2.4rem;
  }
  .registerPage__simulationItem--choiceItem-check {
    width: 3rem;
    height: 3rem;
    border: 2px solid;
    bottom: 2rem;
  }
  .registerPage__simulationItem--choiceItem-check::after {
    width: 1rem;
    height: 1.5rem;
    margin-bottom: 0.5rem;
    border-width: 0 2px 2px 0;
  }
  .registerPage__supportInner {
    margin: 2rem 0 0;
    gap: 2.4rem;
  }
  .registerPage__supportVisual {
    max-width: 20rem;
  }
  .registerPage__supportBanner {
    border-radius: 2.8rem;
    margin-bottom: 2rem;
    width: 30rem;
    height: 4.6rem;
    font-size: 3rem;
    max-width: 100%;
  }
  .registerPage__supportBannerStars {
    max-width: 3.5rem;
  }
  .registerPage__supportBannerText {
    font-size: 2.4rem;
  }
  .registerPage__supportList {
    gap: 1.2rem;
    margin-bottom: 2.4rem;
  }
  .registerPage__supportItem {
    gap: 1rem;
  }
  .registerPage__supportCta {
    font-size: 1.6rem;
    padding: 1.2rem 1.6rem;
    height: 4.4rem;
    border-radius: 0.8rem;
  }
  .registerPage__supportCtaArrow {
    right: 1rem;
  }
  .registerPage__sectionFlow {
    padding: 4rem 0 4rem;
  }
  .registerPage__sectionFlowTitle {
    font-size: 1.9rem;
    padding: 0;
  }
  .registerPage__sectionFlowTitle::after {
    bottom: -0.4em;
    height: 3.6em;
  }
  .registerPage__flowStepCard {
    padding: 0.8rem 1.6rem 2rem;
    margin-left: 0;
    margin-right: 0;
  }
  .registerPage__flowStepTitle {
    font-size: 1.6rem;
    padding: 1rem;
    margin-bottom: 1.6rem;
  }
  .registerPage__flowStepText {
    padding-left: 0;
    padding-right: 0;
  }
  .registerPage__flowStepVisual {
    top: -3rem;
    right: 1rem;
    width: 11rem;
  }
  .registerPage__flowStepBadge {
    font-size: 2rem;
    padding: 0.4rem 1.5rem 0rem 1.5rem;
    margin-left: -3rem;
    height: 3.3rem;
    width: 10rem;
  }
  .registerPage__flowStepBadge::before {
    width: 1.5rem;
    height: 1.2rem;
  }
  .registerPage__flowStepBadgeNum {
    font-size: 2rem;
  }
  .registerPage__flowStepHeading {
    font-size: 1.8rem;
    margin-bottom: 1.2rem;
  }
  .registerPage__flowStepText {
    margin: 1rem 0 1.6rem;
  }
  .registerPage__flowStepImg {
    width: 9rem;
    margin: 0.8rem auto 0;
  }
  .registerPage__flowStepBtn {
    font-size: 1.6rem;
    padding: 1.2rem 1.2rem;
    border-radius: 0.8rem;
    width: 100%;
    margin-top: 1rem;
  }
  .registerPage__flowStepBtnArrow {
    max-width: 2rem;
  }
  .registerPage__flowStepNote {
    border-radius: 0.8rem;
    border: 2px solid;
    padding: 1rem 1.2rem;
    font-size: 1.4rem;
    margin-top: 2rem;
  }
  .registerPage__flowStepNoteTitle {
    margin-left: 0;
  }
  .registerPage__flowStepNote2 {
    font-size: 1.4rem;
    margin-bottom: 3rem;
  }
  .registerPage__robotGuide {
    padding: 2rem 2rem;
  }
  .registerPage__robotGuideTitle {
    font-size: 2.4rem;
    margin: 0 0 2rem;
    font-weight: 900;
  }
  .registerPage__robotStepList {
    padding: 12rem 1.2rem 1.2rem;
    max-width: 100%;
  }
  .registerPage__robotGuidePoint {
    padding: 2rem;
    padding-bottom: 1.4rem;
    padding-right: 1.2rem;
    top: 1rem;
  }
  .registerPage__robotGuidePointLabel {
    font-size: 1.8rem;
    margin-top: -3.5rem;
    padding: 0.4rem 1rem 0;
  }
  .registerPage__robotGuidePointText {
    font-size: 2rem;
    padding-left: 0;
  }
  .registerPage__robotStepRow {
    gap: 2.4rem;
  }
  .registerPage__robotStepItem {
    width: 100%;
    max-width: 100%;
    gap: 1rem;
  }
  .registerPage__robotStepItemInner {
    gap: 0.8rem;
  }
  .registerPage__robotStepDivider {
    border-bottom: 2px solid #fff;
    border-left: none;
  }
  .registerPage__robotStepNum {
    width: 30px;
    height: 30px;
    font-size: 2rem;
    border-radius: 0.6667rem;
  }
  .registerPage__robotStepText {
    font-size: 1.4rem;
  }
  .registerPage__robotStepNote {
    font-size: 1.2rem;
  }
  .registerPage__robotStepHighlight {
    font-size: 2.4rem;
  }
  .registerPage__robotPoint {
    padding: 2rem;
    margin-top: 1.8rem;
  }
  .registerPage__robotPointLabel {
    font-size: 1.6rem;
    padding: 0.8rem 1rem 0.6rem;
    margin-top: -2.5rem;
    margin-left: -3rem;
  }
  .registerPage__robotPointLabel::before {
    bottom: -0.5rem;
    width: 1.2rem;
    height: 0.6rem;
  }
  .registerPage__robotPointBody {
    font-size: 1.4rem;
    padding-top: 1.6rem;
  }
  .registerPage__robotPointNote {
    padding-left: 0;
  }
  .registerPage__robotPointImg img {
    width: 100%;
  }
  .registerPage__sectionReg {
    padding-top: 12rem;
    padding-bottom: 12rem;
  }
  .registerPage__sectionReg .registerPage__sectionHeading {
    -webkit-text-stroke: 2px white;
  }
  .registerPage__sectionPreReg {
    padding-bottom: 8rem;
  }
  .registerPage__sectionPreReg .registerPage__sectionHeading {
    -webkit-text-stroke: 2px white;
  }
  .registerPage__sectionPreReg-steps {
    padding: 3.2rem 2rem;
    gap: 2.4rem;
  }
  .registerPage__sectionPreReg-steps .appStep3__item--note {
    font-size: 1.4rem;
  }
  .registerPage__sectionPreReg-stepsTitle {
    font-size: 2.4rem;
  }
  .registerPage .appStep3List {
    width: 100%;
  }
  .registerPage .appStep3__item {
    padding: 0 1.2rem;
  }
}

.registerPage__sectionYellow {
  background: #fffbcf url(../images/register/bg_stripe_diagonal.svg) top center;
  padding: 5rem 0 8rem;
  margin-bottom: -4rem;
}

.registerPage__sectionPink {
  background: #FBE2EB;
  padding: 3rem 0 5rem;
  position: relative;
  margin-bottom: -5rem;
}

.registerPage__sectionBlue {
  background: #E8F8FA;
  padding: 3rem 4% 6rem;
  position: relative;
  margin-bottom: -5rem;
}

@media screen and (max-width: 768px) {
  .subpage_title::before {
    background: transparent;
  }
  .subpage_title h1.pagetitle_h1 img {
    width: 30.2rem;
    margin-top: 1rem;
  }
  .registerPage__bg img {
    max-width: none;
    width: 200%;
  }
  .registerPage__sectionYellow {
    padding: 5rem 0 12rem;
    margin-bottom: -2rem;
  }
  .registerPage__sectionPink {
    padding: 3rem 0 5rem;
    margin-bottom: -5rem;
  }
  .registerPage__sectionBlue {
    padding: 3rem 4% 6rem;
    margin-bottom: -5rem;
  }
  .fw-20 {
    font-size: 1.8rem;
  }
}/*# sourceMappingURL=register.css.map */