@charset "UTF-8";
@media screen and (max-width: 768px) {
  .sp {
    display: block !important;
  }
  .pc {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  .pc {
    display: block;
  }
  .sp {
    display: none !important;
  }
}
.slide-arrow {
  position: absolute;
  bottom: -115px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--blue);
  z-index: 1;
  cursor: pointer;
}
.slide-arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.prev-arrow {
  left: 1000px;
}
.prev-arrow::after {
  left: calc(50% + 1px);
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: translate(-50%, -50%) rotate(135deg);
          transform: translate(-50%, -50%) rotate(135deg);
}

.next-arrow {
  left: 1060px;
}
.next-arrow::after {
  left: calc(50% - 1px);
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

@media (max-width: 768px) {
  .slide-arrow {
    top: 22.6666666667vw;
    bottom: unset;
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
  .prev-arrow {
    left: 2.6666666667vw;
  }
  .prev-arrow::after {
    width: 1.6vw;
    height: 1.6vw;
    border-right: 0.5333333333vw solid #fff;
    border-bottom: 0.5333333333vw solid #fff;
  }
  .next-arrow {
    left: unset;
    right: 2.6666666667vw;
  }
  .next-arrow::after {
    width: 1.6vw;
    height: 1.6vw;
    border-right: 0.5333333333vw solid #fff;
    border-bottom: 0.5333333333vw solid #fff;
  }
}
.mv {
  overflow: hidden;
  height: 1000px;
}

.mvBg {
  height: 100%;
}

.mvBoxs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 14px;
  height: 1000px;
  position: absolute;
  top: 0;
  left: calc(50% + 710px);
  -webkit-transform: translateX(-50%) rotate(34deg);
          transform: translateX(-50%) rotate(34deg);
}

.mvBox {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  will-change: transform;
  -webkit-animation: cardAni 60s linear infinite;
          animation: cardAni 60s linear infinite;
}
.mvBox:nth-child(2) {
  -webkit-animation: cardAni02 60s linear infinite;
          animation: cardAni02 60s linear infinite;
}

@-webkit-keyframes cardAni {
  0% {
    -webkit-transform: translateY(-65%);
            transform: translateY(-65%);
  }
  100% {
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%);
  }
}

@keyframes cardAni {
  0% {
    -webkit-transform: translateY(-65%);
            transform: translateY(-65%);
  }
  100% {
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%);
  }
}
@-webkit-keyframes cardAni02 {
  0% {
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%);
  }
  100% {
    -webkit-transform: translateY(-65%);
            transform: translateY(-65%);
  }
}
@keyframes cardAni02 {
  0% {
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%);
  }
  100% {
    -webkit-transform: translateY(-65%);
            transform: translateY(-65%);
  }
}
.mvImg {
  width: 245px;
  margin-top: 16px;
  border-radius: 40px;
  -webkit-box-shadow: 20px 20px 30px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 20px 20px 30px 0 rgba(0, 0, 0, 0.1);
}

.mvCont {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  max-width: 1200px;
  z-index: 3;
}

.mvText {
  width: 755px;
}

.mvBnr {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 10;
}

.mvBnr__close {
  width: 31px;
  height: 31px;
  margin-left: auto;
  cursor: pointer;
}

.mvBnr__link {
  display: block;
  width: 376px;
  height: auto;
}

@media (min-width: 1921px) {
  .mv {
    height: 1125px;
  }
  .mvBoxs {
    gap: 15.75px;
    height: 1125px;
    left: calc(50% + 798.75px);
  }
  .mvImg {
    width: 275.625px;
    margin-top: 18px;
    border-radius: 45px;
    -webkit-box-shadow: 22.5px 22.5px 33.75px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 22.5px 22.5px 33.75px 0 rgba(0, 0, 0, 0.1);
  }
  .mvCont {
    max-width: 1350px;
  }
  .mvText {
    width: 849.375px;
  }
  .mvBnr__close {
    width: 34.875px;
    height: 34.875px;
  }
  .mvBnr__link {
    width: 423px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .mv {
    height: 76.9230769231vw;
  }
  .mvBoxs {
    gap: 1.0769230769vw;
    height: 76.9230769231vw;
    left: calc(50% + 54.6153846154vw);
  }
  .mvImg {
    width: 18.8461538462vw;
    margin-top: 1.2307692308vw;
    border-radius: 3.0769230769vw;
    -webkit-box-shadow: 1.5384615385vw 1.5384615385vw 2.3076923077vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 1.5384615385vw 1.5384615385vw 2.3076923077vw 0 rgba(0, 0, 0, 0.1);
  }
  .mvCont {
    max-width: 92.3076923077vw;
  }
  .mvText {
    width: 58.0769230769vw;
  }
  .mvBnr__close {
    width: 2.3846153846vw;
    height: 2.3846153846vw;
  }
  .mvBnr__link {
    width: 28.9230769231vw;
  }
}
@media (max-width: 768px) {
  .mv {
    height: 181.3333333333vw;
  }
  .mvBoxs {
    gap: 2.1333333333vw;
    height: 181.3333333333vw;
    left: calc(50% + 64vw);
  }
  .mvImg {
    width: 26.6666666667vw;
    margin-top: 4.2666666667vw;
    border-radius: 10.6666666667vw;
    -webkit-box-shadow: 5.3333333333vw 5.3333333333vw 8vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 5.3333333333vw 5.3333333333vw 8vw 0 rgba(0, 0, 0, 0.1);
  }
  .mvCont {
    top: 32.8vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    max-width: 86.6666666667vw;
  }
  .mvText {
    width: 100%;
  }
  .mvBnr {
    bottom: 2.6666666667vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 86.6666666667vw;
  }
  .mvBnr__close {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .mvBnr__link {
    width: 86.6666666667vw;
  }
}
.ab {
  overflow: hidden;
  padding-top: 100px;
  padding-bottom: 120px;
  background: #fff;
}

.abLogo {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 693px;
}

.abTtl {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  padding-top: 35px;
  font-size: 39px;
  font-weight: bold;
  text-align: center;
}
.abTtl span {
  font-size: 50px;
  font-weight: bold;
  background: -webkit-linear-gradient(315deg, #f864af 0%, #ba48d5 100%);
  background: linear-gradient(135deg, #f864af 0%, #ba48d5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.abTxt {
  margin-top: 35px;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.45;
  text-align: center;
}
.abTxt .pink {
  color: #f854a8;
}

.abImg {
  position: absolute;
  top: -155px;
  right: 30px;
  width: 91px;
}

.abBox {
  margin-top: 48px;
  padding: 65px 110px 57px;
}

.abBox__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.abBox__bg img {
  height: 100%;
}

.abBox__icon {
  position: absolute;
  top: -30px;
  left: 30px;
  width: 107px;
}

.abBox__lists {
  position: relative;
  gap: 15px 40px;
}
.abBox__lists li {
  gap: 10px;
  width: calc((100% - 40px) / 2);
  padding-bottom: 5px;
  border-bottom: 2px solid #fff;
  font-size: 25px;
  font-weight: bold;
}
.abBox__lists li .icon {
  width: 28px;
  height: 28px;
}

@media (min-width: 1921px) {
  .ab {
    padding-top: 112.5px;
    padding-bottom: 135px;
  }
  .abLogo {
    width: 779.625px;
  }
  .abTtl {
    padding-top: 39.375px;
    font-size: 43.875px;
  }
  .abTtl span {
    font-size: 56.25px;
  }
  .abTxt {
    margin-top: 39.375px;
    font-size: 22.5px;
  }
  .abImg {
    top: -174.375px;
    right: 33.75px;
    width: 102.375px;
  }
  .abBox {
    margin-top: 54px;
    padding: 73.125px 123.75px 64.125px;
  }
  .abBox__icon {
    top: -33.75px;
    left: 33.75px;
    width: 120.375px;
  }
  .abBox__lists {
    gap: 16.875px 45px;
  }
  .abBox__lists li {
    gap: 11.25px;
    width: calc((100% - 45px) / 2);
    padding-bottom: 5.625px;
    border-bottom: 2.25px solid #fff;
    font-size: 28.125px;
  }
  .abBox__lists li .icon {
    width: 31.5px;
    height: 31.5px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .ab {
    padding-top: 7.6923076923vw;
    padding-bottom: 9.2307692308vw;
  }
  .abLogo {
    width: 53.3076923077vw;
  }
  .abTtl {
    padding-top: 2.6923076923vw;
    font-size: 3vw;
  }
  .abTtl span {
    font-size: 3.8461538462vw;
  }
  .abTxt {
    margin-top: 2.6923076923vw;
    font-size: 1.5384615385vw;
  }
  .abImg {
    top: -11.9230769231vw;
    right: 2.3076923077vw;
    width: 7vw;
  }
  .abBox {
    margin-top: 3.6923076923vw;
    padding: 5vw 8.4615384615vw 4.3846153846vw;
  }
  .abBox__icon {
    top: -2.3076923077vw;
    left: 2.3076923077vw;
    width: 8.2307692308vw;
  }
  .abBox__lists {
    gap: 1.1538461538vw 3.0769230769vw;
  }
  .abBox__lists li {
    gap: 0.7692307692vw;
    width: calc((100% - 3.0769230769vw) / 2);
    padding-bottom: 0.3846153846vw;
    border-bottom: 0.1538461538vw solid #fff;
    font-size: 1.9230769231vw;
  }
  .abBox__lists li .icon {
    width: 2.1538461538vw;
    height: 2.1538461538vw;
  }
}
@media (max-width: 768px) {
  .ab {
    padding-top: 17.3333333333vw;
    padding-bottom: 16vw;
  }
  .abLogo {
    width: 86.6666666667vw;
  }
  .abTtl {
    padding-top: 0;
    font-size: 5.8666666667vw;
  }
  .abTtl span {
    font-size: 8.5333333333vw;
  }
  .abTxt {
    margin-top: 4.5333333333vw;
    font-size: 3.4666666667vw;
    white-space: nowrap;
  }
  .abImg {
    top: -50.6666666667vw;
    right: -4vw;
    width: 13.3333333333vw;
  }
  .abBox {
    margin-top: 12.8vw;
    padding: 9.3333333333vw 3.4666666667vw 6.6666666667vw;
  }
  .abBox__icon {
    top: -8vw;
    left: 4vw;
    width: 18.6666666667vw;
  }
  .abBox__lists {
    gap: 4vw;
  }
  .abBox__lists li {
    gap: 1.6vw;
    width: 35.2vw;
    padding-bottom: 1.3333333333vw;
    border-bottom: 0.5333333333vw solid #fff;
    font-size: 3.7333333333vw;
    white-space: nowrap;
  }
  .abBox__lists li:nth-child(2n) {
    width: 40.5333333333vw;
  }
  .abBox__lists li .icon {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
  }
  .abBox__lists li .txt {
    width: calc(100% - 4.2666666667vw - 1.6vw);
  }
}
.it {
  padding-top: 165px;
  padding-bottom: 110px;
  background: #e2e5f3;
}

.itTtl {
  position: relative;
  font-size: 40px;
  font-weight: bold;
  text-align: center;
}
.itTtl span {
  position: relative;
  font-size: 50px;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(60%, #fff399));
  background: -webkit-linear-gradient(transparent 75%, #fff399 60%);
  background: linear-gradient(transparent 75%, #fff399 60%);
}
.itTtl span::after {
  content: "・・・";
  position: absolute;
  top: -35px;
  left: calc(50% + 5px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 36px;
  letter-spacing: 0.4em;
}

.itIcon {
  position: absolute;
  top: -40px;
  left: 90px;
  width: 184px;
}

.itImg {
  width: 804px;
  margin: 55px auto 0;
}

.tr {
  padding-top: 80px;
  padding-bottom: 210px;
}
.tr::after {
  content: "";
  position: absolute;
  top: -75px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 1px;
  height: 130px;
  background: #f864af;
}

.trTop {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.trIcon {
  position: absolute;
  top: -20px;
  right: 20px;
  width: 223px;
}

.trSub {
  position: relative;
  font-size: 40px;
  font-weight: bold;
  text-align: center;
}

.trTtl {
  font-size: 51px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
.trTtl span {
  margin: 0 10px;
  font-size: 105px;
  background: -webkit-linear-gradient(315deg, #f864af 0%, #ba48d5 100%);
  background: linear-gradient(135deg, #f864af 0%, #ba48d5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.trBox {
  width: 727px;
  margin: 50px auto 0;
}

.trImg {
  width: 500px;
  margin: 75px auto 0;
}

@media (min-width: 1921px) {
  .it {
    padding-top: 185.625px;
    padding-bottom: 123.75px;
  }
  .itTtl {
    font-size: 45px;
  }
  .itTtl span {
    font-size: 56.25px;
  }
  .itTtl span::after {
    top: -39.375px;
    left: calc(50% + 5.625px);
    font-size: 40.5px;
  }
  .itIcon {
    top: -45px;
    left: 101.25px;
    width: 207px;
  }
  .itImg {
    width: 904.5px;
    margin: 61.875px auto 0;
  }
  .tr {
    padding-top: 90px;
    padding-bottom: 236.25px;
  }
  .tr::after {
    top: -84.375px;
    height: 146.25px;
  }
  .trIcon {
    top: -22.5px;
    right: 22.5px;
    width: 250.875px;
  }
  .trSub {
    font-size: 45px;
  }
  .trTtl {
    font-size: 57.375px;
  }
  .trTtl span {
    margin: 0 11.25px;
    font-size: 118.125px;
  }
  .trBox {
    width: 817.875px;
    margin: 56.25px auto 0;
  }
  .trImg {
    width: 562.5px;
    margin: 84.375px auto 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .it {
    padding-top: 12.6923076923vw;
    padding-bottom: 8.4615384615vw;
  }
  .itTtl {
    font-size: 3.0769230769vw;
  }
  .itTtl span {
    font-size: 3.8461538462vw;
  }
  .itTtl span::after {
    top: -2.6923076923vw;
    left: calc(50% + 0.3846153846vw);
    font-size: 2.7692307692vw;
  }
  .itIcon {
    top: -3.0769230769vw;
    left: 6.9230769231vw;
    width: 14.1538461538vw;
  }
  .itImg {
    width: 61.8461538462vw;
    margin: 4.2307692308vw auto 0;
  }
  .tr {
    padding-top: 6.1538461538vw;
    padding-bottom: 16.1538461538vw;
  }
  .tr::after {
    top: -5.7692307692vw;
    height: 10vw;
  }
  .trIcon {
    top: -1.5384615385vw;
    right: 1.5384615385vw;
    width: 17.1538461538vw;
  }
  .trSub {
    font-size: 3.0769230769vw;
  }
  .trTtl {
    font-size: 3.9230769231vw;
  }
  .trTtl span {
    margin: 0 0.7692307692vw;
    font-size: 8.0769230769vw;
  }
  .trBox {
    width: 55.9230769231vw;
    margin: 3.8461538462vw auto 0;
  }
  .trImg {
    width: 38.4615384615vw;
    margin: 5.7692307692vw auto 0;
  }
}
@media (max-width: 768px) {
  .it {
    padding-top: 18.6666666667vw;
    padding-bottom: 13.3333333333vw;
  }
  .itTtl {
    font-size: 5.3333333333vw;
  }
  .itTtl span {
    font-size: 6.6666666667vw;
  }
  .itTtl span::after {
    top: -8vw;
    left: calc(50% + 1.3333333333vw);
    font-size: 6.4vw;
    letter-spacing: 0.2em;
  }
  .itIcon {
    top: -10.6666666667vw;
    left: 2.6666666667vw;
    width: 32vw;
  }
  .itImg {
    width: 94.6666666667vw;
    margin: 8vw auto 0;
    margin-top: 8vw;
    margin-left: -4vw;
  }
  .tr {
    padding-top: 18.6666666667vw;
    padding-bottom: 13.3333333333vw;
  }
  .tr::after {
    top: -5.3333333333vw;
    height: 15.4666666667vw;
  }
  .trIcon {
    top: -9.3333333333vw;
    right: -1.3333333333vw;
    width: 36vw;
  }
  .trSub {
    font-size: 4.8vw;
  }
  .trTtl {
    margin-top: 3.4666666667vw;
    font-size: 6.4vw;
  }
  .trTtl span {
    margin: 0 2.6666666667vw;
    font-size: 14.6666666667vw;
  }
  .trBox {
    width: 73.3333333333vw;
    margin: 8vw auto 0;
  }
  .trImg {
    width: 73.3333333333vw;
    margin: 8vw auto 0;
  }
}
.st {
  margin-top: -90px;
  padding-top: 120px;
  padding-bottom: 210px;
}

.stBg img {
  -o-object-position: top center;
     object-position: top center;
}

.stTop {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.stIcon {
  position: absolute;
  top: -50px;
  left: calc(50% - 220px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 237px;
}

.stTtl {
  position: relative;
  width: 427px;
  margin: 0 auto;
}

.stBoxs {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.stBox {
  width: 916px;
  margin-top: 50px;
  margin-left: -60px;
  padding: 50px 60px;
  gap: 40px;
  border-radius: 50px;
  background: #fff;
  -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
}
.stBox:nth-child(2) {
  margin-left: unset;
  margin-right: -60px;
}

.stBox__img {
  width: 306px;
}

.stBox__cont {
  width: calc(100% - 346px);
}
.stBox__cont .ttl {
  padding-bottom: 16px;
  border-bottom: 1px solid #f864af;
  font-size: 34px;
  font-weight: bold;
  line-height: 1.38;
}
.stBox__cont .ttl span {
  color: #f854a8;
}
.stBox__cont .txt {
  padding-top: 26px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.77;
}

@media (min-width: 1921px) {
  .st {
    margin-top: -101.25px;
    padding-top: 135px;
    padding-bottom: 236.25px;
  }
  .stIcon {
    top: -56.25px;
    left: calc(50% - 247.5px);
    width: 266.625px;
  }
  .stTtl {
    width: 480.375px;
  }
  .stBox {
    width: 1030.5px;
    margin-top: 56.25px;
    margin-left: -67.5px;
    padding: 56.25px 67.5px;
    gap: 45px;
    border-radius: 56.25px;
    -webkit-box-shadow: 0 0 33.75px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 33.75px 0 rgba(0, 0, 0, 0.1);
  }
  .stBox__img {
    width: 344.25px;
  }
  .stBox__cont {
    width: calc(100% - 389.25px);
  }
  .stBox__cont .ttl {
    padding-bottom: 18px;
    font-size: 38.25px;
  }
  .stBox__cont .txt {
    padding-top: 29.25px;
    font-size: 20.25px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .st {
    margin-top: -6.9230769231vw;
    padding-top: 9.2307692308vw;
    padding-bottom: 16.1538461538vw;
  }
  .stIcon {
    top: -3.8461538462vw;
    left: calc(50% - 16.9230769231vw);
    width: 18.2307692308vw;
  }
  .stTtl {
    width: 32.8461538462vw;
  }
  .stBox {
    width: 70.4615384615vw;
    margin-top: 3.8461538462vw;
    margin-left: -4.6153846154vw;
    padding: 3.8461538462vw 4.6153846154vw;
    gap: 3.0769230769vw;
    border-radius: 3.8461538462vw;
    -webkit-box-shadow: 0 0 2.3076923077vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 2.3076923077vw 0 rgba(0, 0, 0, 0.1);
  }
  .stBox__img {
    width: 23.5384615385vw;
  }
  .stBox__cont {
    width: calc(100% - 26.6153846154vw);
  }
  .stBox__cont .ttl {
    padding-bottom: 1.2307692308vw;
    font-size: 2.6153846154vw;
  }
  .stBox__cont .txt {
    padding-top: 2vw;
    font-size: 1.3846153846vw;
  }
}
@media (max-width: 768px) {
  .st {
    margin-top: 0;
    padding-top: 18.6666666667vw;
    padding-bottom: 23.2vw;
  }
  .stIcon {
    top: -sp(40);
    left: calc(50% - 24vw);
    width: 36.2666666667vw;
  }
  .stTtl {
    width: 65.6vw;
    margin: 0 auto;
  }
  .stBox {
    width: 100%;
    margin-top: 5.8666666667vw;
    margin-left: 0;
    padding: 8vw 6.6666666667vw;
    gap: 2.6666666667vw;
    border-radius: 5.3333333333vw;
    -webkit-box-shadow: 0 0 8vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 8vw 0 rgba(0, 0, 0, 0.1);
  }
  .stBox:nth-child(2) {
    margin-right: 0;
  }
  .stBox__img {
    width: 53.3333333333vw;
    margin: 0 auto;
  }
  .stBox__cont {
    width: 100%;
  }
  .stBox__cont .ttl {
    padding-bottom: 1.8666666667vw;
    font-size: 5.6vw;
  }
  .stBox__cont .txt {
    padding-top: 2.6666666667vw;
    font-size: 3.7333333333vw;
    line-height: 1.8;
  }
}
.su {
  margin-top: -70px;
  padding-top: 140px;
  padding-bottom: 120px;
}

.suBg img {
  -o-object-position: top center;
     object-position: top center;
}

.suHd {
  position: relative;
  width: 250px;
  height: 66px;
  margin: 0 auto;
  border-radius: 10px;
  font-size: 27px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #fff;
  background: #283990;
}
.suHd::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #283990 transparent transparent transparent;
  border-width: 17px 17.5px 0px 17.5px;
}

.suTtl {
  font-size: 62px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
.suTtl span {
  font-size: 102px;
  font-weight: bold;
  font-style: italic;
  color: #f864af;
}

.suSub {
  font-size: 36px;
  font-weight: bold;
  text-align: center;
}

.suFlex {
  margin-top: 70px;
  gap: 45px;
}

.suFlex__img {
  width: 432px;
}

.suBox {
  width: calc(100% - 432px - 45px);
  padding: 20px 20px 25px;
  border: 2px solid #ffd1e8;
  border-radius: 20px;
}
.suBox .ttl {
  height: 40px;
  border-radius: 20px;
  font-size: 23px;
  font-weight: bold;
  letter-spacing: 0.06em;
  background: -webkit-gradient(linear, left bottom, left top, from(#fff0f8), color-stop(50%, #fff), to(#fff0f8));
  background: -webkit-linear-gradient(bottom, #fff0f8 0%, #fff 50%, #fff0f8 100%);
  background: linear-gradient(0deg, #fff0f8 0%, #fff 50%, #fff0f8 100%);
}
.suBox .list {
  margin-top: 20px;
}
.suBox .list li {
  margin-top: 14px;
  gap: 10px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.suBox .list .icon {
  width: 28px;
}
.suBox .list p {
  width: calc(100% - 38px);
  font-size: 18px;
  font-weight: bold;
}
.suBox .list p span {
  color: #f854a8;
}

.suTxts {
  position: relative;
  margin-top: 50px;
}

.suTxt {
  width: 622px;
  font-size: 16px;
  line-height: 2;
}
.suTxt span {
  font-weight: bold;
}

.suIcon {
  position: absolute;
  top: -65px;
  right: 0;
  width: 236px;
}

.suImg {
  margin-top: 60px;
}

@media (min-width: 1921px) {
  .su {
    margin-top: -78.75px;
    padding-top: 157.5px;
    padding-bottom: 135px;
  }
  .suHd {
    width: 281.25px;
    height: 74.25px;
    border-radius: 11.25px;
    font-size: 30.375px;
  }
  .suHd::after {
    bottom: -11.25px;
    border-width: 19.125px 17xl 5 0px 17xl 5;
  }
  .suTtl {
    font-size: 69.75px;
  }
  .suTtl span {
    font-size: 114.75px;
  }
  .suSub {
    font-size: 40.5px;
  }
  .suFlex {
    margin-top: 78.75px;
    gap: 50.625px;
  }
  .suFlex__img {
    width: 486px;
  }
  .suBox {
    width: calc(100% - 486px - 50.625px);
    padding: 22.5px 22.5px 28.125px;
    border: 2.25px solid #ffd1e8;
    border-radius: 22.5px;
  }
  .suBox .ttl {
    height: 45px;
    border-radius: 22.5px;
    font-size: 25.875px;
  }
  .suBox .list {
    margin-top: 22.5px;
  }
  .suBox .list li {
    margin-top: 15.75px;
    gap: 11.25px;
  }
  .suBox .list .icon {
    width: 31.5px;
  }
  .suBox .list p {
    width: calc(100% - 42.75px);
    font-size: 20.25px;
  }
  .suTxts {
    margin-top: 56.25px;
  }
  .suTxt {
    width: 699.75px;
    font-size: 18px;
  }
  .suIcon {
    top: -73.125px;
    width: 265.5px;
  }
  .suImg {
    margin-top: 67.5px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .su {
    margin-top: -5.3846153846vw;
    padding-top: 10.7692307692vw;
    padding-bottom: 9.2307692308vw;
  }
  .suHd {
    width: 19.2307692308vw;
    height: 5.0769230769vw;
    border-radius: 0.7692307692vw;
    font-size: 2.0769230769vw;
  }
  .suHd::after {
    bottom: -0.7692307692vw;
    border-width: 1.3076923077vw 17xl 5 0vw 17xl 5;
  }
  .suTtl {
    font-size: 4.7692307692vw;
  }
  .suTtl span {
    font-size: 7.8461538462vw;
  }
  .suSub {
    font-size: 2.7692307692vw;
  }
  .suFlex {
    margin-top: 5.3846153846vw;
    gap: 3.4615384615vw;
  }
  .suFlex__img {
    width: 33.2307692308vw;
  }
  .suBox {
    width: calc(100% - 33.2307692308vw - 3.4615384615vw);
    padding: 1.5384615385vw 1.5384615385vw 1.9230769231vw;
    border: 0.1538461538vw solid #ffd1e8;
    border-radius: 1.5384615385vw;
  }
  .suBox .ttl {
    height: 3.0769230769vw;
    border-radius: 1.5384615385vw;
    font-size: 1.7692307692vw;
  }
  .suBox .list {
    margin-top: 1.5384615385vw;
  }
  .suBox .list li {
    margin-top: 1.0769230769vw;
    gap: 0.7692307692vw;
  }
  .suBox .list .icon {
    width: 2.1538461538vw;
  }
  .suBox .list p {
    width: calc(100% - 2.9230769231vw);
    font-size: 1.3846153846vw;
  }
  .suTxts {
    margin-top: 3.8461538462vw;
  }
  .suTxt {
    width: 47.8461538462vw;
    font-size: 1.2307692308vw;
  }
  .suIcon {
    top: -5vw;
    width: 18.1538461538vw;
  }
  .suImg {
    margin-top: 4.6153846154vw;
  }
}
@media (max-width: 768px) {
  .su {
    margin-top: -8vw;
    padding-top: 13.3333333333vw;
    padding-bottom: 16vw;
  }
  .suHd {
    width: 35.2vw;
    height: 8.8vw;
    border-radius: 1.6vw;
    font-size: 3.7333333333vw;
  }
  .suHd::after {
    bottom: -1.8666666667vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-color: #283990 transparent transparent transparent;
    border-width: 2.1333333333vw 2.1333333333vw 0vw 2.1333333333vw;
  }
  .suTtl {
    margin-top: 1.3333333333vw;
    font-size: 7.7333333333vw;
  }
  .suTtl span {
    font-size: 12.8vw;
  }
  .suSub {
    font-size: 4.2666666667vw;
  }
  .suFlex {
    margin-top: 8vw;
    gap: 5.3333333333vw;
  }
  .suFlex__img {
    width: 100%;
  }
  .suBox {
    width: 100%;
    padding: 5.3333333333vw 4vw;
    border: 0.5333333333vw solid #ffd1e8;
    border-radius: 5.3333333333vw;
  }
  .suBox .ttl {
    height: 8vw;
    border-radius: 5.3333333333vw;
    font-size: 4.2666666667vw;
  }
  .suBox .list {
    margin-top: 3.7333333333vw;
  }
  .suBox .list li {
    margin-top: 2.6666666667vw;
    gap: 2.1333333333vw;
  }
  .suBox .list .icon {
    width: 5.8666666667vw;
  }
  .suBox .list p {
    width: calc(100% - 8vw);
    font-size: 4vw;
  }
  .suTxts {
    margin-top: 8vw;
  }
  .suTxt {
    width: 100%;
    margin-top: 5.3333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.78;
  }
  .suIcon {
    position: relative;
    top: unset;
    right: unset;
    width: 50.6666666667vw;
    margin: 0 auto;
  }
  .suImg {
    margin-top: 8vw;
  }
}
.rs {
  padding-top: 160px;
  padding-bottom: 140px;
  overflow: hidden;
}

.rsTop {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.rsTop__icon {
  position: absolute;
  top: -40px;
  right: -150px;
  width: 159px;
  height: 105px;
}

.rsTop__img {
  position: relative;
  width: 483px;
  margin: 0 auto;
}

.rsEn {
  font-size: 20px;
  font-weight: bold;
  font-style: italic;
  letter-spacing: 0.02em;
  color: #f864af;
  text-align: center;
}

.rsEn01 {
  margin-top: 93px;
}

.rsEn02 {
  margin-top: 110px;
}

.rsEn03 {
  margin-top: 130px;
}

.rsTtl {
  position: relative;
  margin-top: 14px;
  padding-bottom: 20px;
  font-size: 36px;
  line-height: 1.44;
  font-weight: bold;
  text-align: center;
}
.rsTtl::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: -webkit-gradient(linear, left top, right top, from(#f864af), to(#ba48d5));
  background: -webkit-linear-gradient(left, #f864af 0%, #ba48d5 100%);
  background: linear-gradient(90deg, #f864af 0%, #ba48d5 100%);
}

.rsTxt {
  margin-top: 43px;
  font-size: 16px;
  line-height: 1.8;
}
.rsTxt span {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #fff399));
  background: -webkit-linear-gradient(transparent 70%, #fff399 70%);
  background: linear-gradient(transparent 70%, #fff399 70%);
}

.rsBoxs {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 45px;
  margin-top: 40px;
}

.rsBox {
  position: relative;
  width: 220px;
  height: 220px;
  gap: 16px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  border-radius: 24px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  background: url(../img/top/reason_box_bg.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.rsBox .icon {
  width: 100px;
  height: 100px;
}

.rsMs {
  position: relative;
  margin-top: 96px;
  padding: 73px 55px 65px;
  border: 4px solid #ffd1e8;
  border-radius: 20px;
  background: #fff;
}

.rsMs__icon {
  position: absolute;
  top: -57px;
  left: 0;
  width: 114px;
  height: 114px;
}

.rsMs__txt {
  width: 560px;
  font-size: 31px;
  font-weight: 900;
  line-height: 1.645;
  background: -webkit-linear-gradient(315deg, #f864af 0%, #ba48d5 100%);
  background: linear-gradient(135deg, #f864af 0%, #ba48d5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.rsMs__img {
  position: absolute;
  top: -40px;
  right: 20px;
  width: 252px;
  height: 252px;
}

.rsImg01 {
  width: 730px;
  margin: 60px auto 0;
}

.rsImg02 {
  margin-top: 80px;
}

.rsImg03 {
  width: 775px;
  margin: 60px auto 0;
}

@media (min-width: 1921px) {
  .rs {
    padding-top: 180px;
    padding-bottom: 157.5px;
  }
  .rsTop__icon {
    top: -45px;
    right: -168.75px;
    width: 178.875px;
    height: 118.125px;
  }
  .rsTop__img {
    width: 543.375px;
  }
  .rsEn {
    font-size: 22.5px;
  }
  .rsEn01 {
    margin-top: 104.625px;
  }
  .rsEn02 {
    margin-top: 123.75px;
  }
  .rsEn03 {
    margin-top: 146.25px;
  }
  .rsTtl {
    margin-top: 15.75px;
    padding-bottom: 22.5px;
    font-size: 40.5px;
  }
  .rsTtl::after {
    height: 4.5px;
  }
  .rsTxt {
    margin-top: 48.375px;
    font-size: 18px;
  }
  .rsBoxs {
    gap: 50.625px;
    margin-top: 45px;
  }
  .rsBox {
    width: 247.5px;
    height: 247.5px;
    gap: 18px;
    border-radius: 27px;
    font-size: 18px;
  }
  .rsMs {
    margin-top: 108px;
    padding: 82.125px 61.875px 73.125px;
    border: 4.5px solid #ffd1e8;
    border-radius: 22.5px;
  }
  .rsMs__icon {
    top: -64.125px;
    width: 128.25px;
    height: 128.25px;
  }
  .rsMs__txt {
    width: 630px;
    font-size: 34.875px;
  }
  .rsMs__img {
    top: -45px;
    right: 22.5px;
    width: 283.5px;
    height: 283.5px;
  }
  .rsImg01 {
    width: 821.25px;
    margin: 67.5px auto 0;
  }
  .rsImg02 {
    margin-top: 90px;
  }
  .rsImg03 {
    width: 871.875px;
    margin: 67.5px auto 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .rs {
    padding-top: 12.3076923077vw;
    padding-bottom: 10.7692307692vw;
  }
  .rsTop__icon {
    top: -3.0769230769vw;
    right: -11.5384615385vw;
    width: 12.2307692308vw;
    height: 8.0769230769vw;
  }
  .rsTop__img {
    width: 37.1538461538vw;
  }
  .rsEn {
    font-size: 1.5384615385vw;
  }
  .rsEn01 {
    margin-top: 7.1538461538vw;
  }
  .rsEn02 {
    margin-top: 8.4615384615vw;
  }
  .rsEn03 {
    margin-top: 10vw;
  }
  .rsTtl {
    margin-top: 1.0769230769vw;
    padding-bottom: 1.5384615385vw;
    font-size: 2.7692307692vw;
  }
  .rsTtl::after {
    height: 0.3076923077vw;
  }
  .rsTxt {
    margin-top: 3.3076923077vw;
    font-size: 1.2307692308vw;
  }
  .rsBoxs {
    gap: 3.4615384615vw;
    margin-top: 3.0769230769vw;
  }
  .rsBox {
    width: 16.9230769231vw;
    height: 16.9230769231vw;
    gap: 1.2307692308vw;
    border-radius: 1.8461538462vw;
    font-size: 1.2307692308vw;
  }
  .rsMs {
    margin-top: 7.3846153846vw;
    padding: 5.6153846154vw 4.2307692308vw 5vw;
    border: 0.3076923077vw solid #ffd1e8;
    border-radius: 1.5384615385vw;
  }
  .rsMs__icon {
    top: -4.3846153846vw;
    width: 8.7692307692vw;
    height: 8.7692307692vw;
  }
  .rsMs__txt {
    width: 43.0769230769vw;
    font-size: 2.3846153846vw;
  }
  .rsMs__img {
    top: -3.0769230769vw;
    right: 1.5384615385vw;
    width: 19.3846153846vw;
    height: 19.3846153846vw;
  }
  .rsImg01 {
    width: 56.1538461538vw;
    margin: 4.6153846154vw auto 0;
  }
  .rsImg02 {
    margin-top: 6.1538461538vw;
  }
  .rsImg03 {
    width: 59.6153846154vw;
    margin: 4.6153846154vw auto 0;
  }
}
@media (max-width: 768px) {
  .rs {
    padding-top: 20.5333333333vw;
    padding-bottom: 16vw;
  }
  .rsTop__icon {
    top: -9.3333333333vw;
    right: -10.6666666667vw;
    width: 28vw;
    height: auto;
  }
  .rsTop__img {
    width: 73.3333333333vw;
  }
  .rsEn {
    font-size: 5.3333333333vw;
  }
  .rsEn01 {
    margin-top: 10.1333333333vw;
  }
  .rsEn02 {
    margin-top: 30.6666666667vw;
  }
  .rsEn03 {
    margin-top: 21.3333333333vw;
  }
  .rsTtl {
    margin-top: 2.6666666667vw;
    padding-bottom: 5.3333333333vw;
    font-size: 5.8666666667vw;
  }
  .rsTtl::after {
    height: 1.0666666667vw;
  }
  .rsTxt {
    margin-top: 5.3333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.8;
  }
  .rsBoxs {
    gap: 3.7333333333vw;
    margin-top: 10.6666666667vw;
  }
  .rsBox {
    width: 73.3333333333vw;
    height: 26.1333333333vw;
    gap: 2.6666666667vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: unset;
        -ms-flex-flow: unset;
            flex-flow: unset;
    padding: 3.7333333333vw;
    border-radius: 5.3333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.42;
    background: url(../img/top/reason_box_bg_sp.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    text-align: left;
  }
  .rsBox .icon {
    width: 18.6666666667vw;
    height: 18.6666666667vw;
  }
  .rsBox p {
    width: calc(100% - 21.3333333333vw);
  }
  .rsMs {
    width: calc(100% + 13.3333333333vw);
    margin-top: 8vw;
    margin-left: -6.6666666667vw;
    padding: 8vw 6.6666666667vw;
    border: 1.0666666667vw solid #ffd1e8;
    border-radius: 3.2vw;
  }
  .rsMs__txt {
    width: 100%;
    font-size: 4.5333333333vw;
    line-height: 1.5;
  }
  .rsMs__img {
    top: unset;
    bottom: -21.3333333333vw;
    right: 6.6666666667vw;
    width: 34.6666666667vw;
    height: 34.6666666667vw;
  }
  .rsImg01 {
    width: 102.6666666667vw;
    margin-top: 4vw;
    margin-left: -8vw;
  }
  .rsImg02 {
    width: calc(100% + 10.6666666667vw);
    margin-top: 10.6666666667vw;
    margin-left: -5.3333333333vw;
  }
  .rsImg03 {
    width: 68.8vw;
    margin: 8vw auto 0;
  }
}
.wo {
  overflow: hidden;
  padding-top: 110px;
  padding-bottom: 140px;
}

.woEn {
  position: absolute;
  top: 16px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 304px;
  font-weight: bold;
  font-style: italic;
  text-align: center;
  white-space: nowrap;
  color: #fae7f1;
}

.woEn__bottom {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 304px;
  font-weight: bold;
  font-style: italic;
  line-height: 1.2;
  color: #e4e8fa;
  white-space: nowrap;
}

.woLists {
  margin-top: 60px;
}
.woLists .slick-list {
  overflow: unset;
}

.woList {
  width: 214px;
  margin: 0 10px;
  border-radius: 25px;
  -webkit-box-shadow: 0 3px 26px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 3px 26px 0 rgba(0, 0, 0, 0.1);
}

@media (min-width: 1921px) {
  .wo {
    padding-top: 123.75px;
    padding-bottom: 157.5px;
  }
  .woEn {
    top: 18px;
    font-size: 342px;
  }
  .woEn__bottom {
    font-size: 342px;
  }
  .woLists {
    margin-top: 67.5px;
  }
  .woList {
    width: 240.75px;
    margin: 0 11.25px;
    border-radius: 28.125px;
    -webkit-box-shadow: 0 3.375px 29.25px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 3.375px 29.25px 0 rgba(0, 0, 0, 0.1);
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .wo {
    padding-top: 8.4615384615vw;
    padding-bottom: 10.7692307692vw;
  }
  .woEn {
    top: 1.2307692308vw;
    font-size: 23.3846153846vw;
  }
  .woEn__bottom {
    font-size: 23.3846153846vw;
  }
  .woLists {
    margin-top: 4.6153846154vw;
  }
  .woList {
    width: 16.4615384615vw;
    margin: 0 0.7692307692vw;
    border-radius: 1.9230769231vw;
    -webkit-box-shadow: 0 0.2307692308vw 2vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0.2307692308vw 2vw 0 rgba(0, 0, 0, 0.1);
  }
}
@media (max-width: 768px) {
  .wo {
    padding-top: 18.6666666667vw;
    padding-bottom: 21.3333333333vw;
  }
  .woEn {
    top: 6.6666666667vw;
    font-size: 17.8666666667vw;
  }
  .woEn__bottom {
    bottom: 2.6666666667vw;
    font-size: 17.8666666667vw;
  }
  .woLists {
    margin-top: 8vw;
  }
  .woList {
    width: 27.7333333333vw;
    margin: 0 1.8666666667vw;
    -webkit-box-shadow: 0 0.8vw 6.9333333333vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0.8vw 6.9333333333vw 0 rgba(0, 0, 0, 0.1);
  }
}
.cs {
  margin-top: 170px;
}

.csBox {
  position: relative;
  display: block;
  margin-top: 90px;
  padding: 60px;
  border-radius: 30px;
  background: #fff;
}
@media (any-hover: hover) {
  .csBox:hover .csImg img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

.csImg {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
}
.csImg img {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.csTtl {
  position: absolute;
  top: -45px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 178px;
  height: 80px;
}

.csNote {
  margin-top: 20px;
  padding: 20px;
  border-radius: 10px;
  background: #f5f5f5;
}
.csNote li {
  gap: 8px;
  margin-top: 10px;
}
.csNote li:first-child {
  margin-top: 0;
}
.csNote .ttl {
  font-size: 16px;
  font-weight: bold;
}
.csNote .txt {
  font-size: 14px;
}

.csPt {
  margin-top: 20px;
}

.csPt__ttl {
  gap: 8px;
  font-size: 20px;
  font-weight: bold;
  color: #f854a8;
}
.csPt__ttl .icon {
  width: 28px;
  height: 28px;
}

.csPt__txt {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.71;
}

@media (min-width: 1921px) {
  .cs {
    margin-top: 191.25px;
  }
  .csBox {
    margin-top: 101.25px;
    padding: 67.5px;
    border-radius: 33.75px;
  }
  .csTtl {
    top: -50.625px;
    width: 200.25px;
    height: 90px;
  }
  .csNote {
    margin-top: 22.5px;
    padding: 22.5px;
    border-radius: 11.25px;
  }
  .csNote li {
    gap: 9px;
    margin-top: 11.25px;
  }
  .csNote .ttl {
    font-size: 18px;
  }
  .csNote .txt {
    font-size: 15.75px;
  }
  .csPt {
    margin-top: 22.5px;
  }
  .csPt__ttl {
    gap: 9px;
    font-size: 22.5px;
  }
  .csPt__ttl .icon {
    width: 31.5px;
    height: 31.5px;
  }
  .csPt__txt {
    margin-top: 11.25px;
    font-size: 15.75px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .cs {
    margin-top: 13.0769230769vw;
  }
  .csBox {
    margin-top: 6.9230769231vw;
    padding: 4.6153846154vw;
    border-radius: 2.3076923077vw;
  }
  .csTtl {
    top: -3.4615384615vw;
    width: 13.6923076923vw;
    height: 6.1538461538vw;
  }
  .csNote {
    margin-top: 1.5384615385vw;
    padding: 1.5384615385vw;
    border-radius: 0.7692307692vw;
  }
  .csNote li {
    gap: 0.6153846154vw;
    margin-top: 0.7692307692vw;
  }
  .csNote .ttl {
    font-size: 1.2307692308vw;
  }
  .csNote .txt {
    font-size: 1.0769230769vw;
  }
  .csPt {
    margin-top: 1.5384615385vw;
  }
  .csPt__ttl {
    gap: 0.6153846154vw;
    font-size: 1.5384615385vw;
  }
  .csPt__ttl .icon {
    width: 2.1538461538vw;
    height: 2.1538461538vw;
  }
  .csPt__txt {
    margin-top: 0.7692307692vw;
    font-size: 1.0769230769vw;
  }
}
@media (max-width: 768px) {
  .cs {
    margin-top: 17.8666666667vw;
  }
  .csBox {
    width: calc(100% + 13.3333333333vw);
    margin-top: 12.5333333333vw;
    margin-left: -6.6666666667vw;
    padding: 10.6666666667vw 6.6666666667vw;
    border-radius: 5.3333333333vw;
  }
  .csTtl {
    top: -6.6666666667vw;
    width: 29.6vw;
    height: 13.3333333333vw;
  }
  .csNote {
    margin-top: 7.4666666667vw;
    padding: 5.3333333333vw;
    border-radius: 2.6666666667vw;
  }
  .csNote li {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 2.6666666667vw;
    margin-top: 2.6666666667vw;
  }
  .csNote .ttl {
    font-size: 3.7333333333vw;
    white-space: nowrap;
  }
  .csNote .txt {
    font-size: 3.7333333333vw;
  }
  .csPt {
    margin-top: 5.3333333333vw;
  }
  .csPt__ttl {
    gap: 2.1333333333vw;
    font-size: 4.2666666667vw;
  }
  .csPt__ttl .icon {
    width: 6.6666666667vw;
    height: 6.6666666667vw;
  }
  .csPt__txt {
    margin-top: 3.4666666667vw;
    font-size: 3.7333333333vw;
    line-height: 1.78;
  }
}
.pl {
  padding-top: 90px;
  padding-bottom: 90px;
  background: #fff;
}

.plIcon {
  position: absolute;
  top: 25px;
  right: 40px;
  width: 162px;
  height: 186px;
}

.plTxt {
  margin-top: 50px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.55;
  text-align: center;
}

.plImg {
  margin-top: 40px;
}

.plBnr {
  width: 700px;
  margin: 60px auto 0;
}

.plBnr__img {
  display: block;
  width: 100%;
  height: auto;
}

.plBnr__hd {
  margin-top: 30px;
  font-size: 24px;
  font-weight: bold;
  color: #f864af;
}

.plBnr__list {
  margin-top: 14px;
}
.plBnr__list li {
  position: relative;
  margin-top: 6px;
  padding-left: 18px;
  font-size: 18px;
  font-weight: 500;
}
.plBnr__list li::after {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #f864af;
}

.plBnr__note {
  margin-top: 6px;
  font-size: 14px;
  font-weight: 500;
  color: #333333;
}

@media (min-width: 1921px) {
  .pl {
    padding-top: 101.25px;
    padding-bottom: 101.25px;
  }
  .plIcon {
    top: 28.125px;
    right: 45px;
    width: 182.25px;
    height: 209.25px;
  }
  .plTxt {
    margin-top: 56.25px;
    font-size: 20.25px;
  }
  .plImg {
    margin-top: 45px;
  }
  .plBnr {
    width: 787.5px;
    margin: 67.5px auto 0;
  }
  .plBnr__hd {
    margin-top: 33.75px;
    font-size: 27px;
  }
  .plBnr__list {
    margin-top: 15.75px;
  }
  .plBnr__list li {
    margin-top: 6.75px;
    padding-left: 20.25px;
    font-size: 20.25px;
  }
  .plBnr__list li::after {
    top: 9px;
    width: 13.5px;
    height: 13.5px;
  }
  .plBnr__note {
    margin-top: 6.75px;
    font-size: 15.75px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .pl {
    padding-top: 6.9230769231vw;
    padding-bottom: 6.9230769231vw;
  }
  .plIcon {
    top: 1.9230769231vw;
    right: 3.0769230769vw;
    width: 12.4615384615vw;
    height: 14.3076923077vw;
  }
  .plTxt {
    margin-top: 3.8461538462vw;
    font-size: 1.3846153846vw;
  }
  .plImg {
    margin-top: 3.0769230769vw;
  }
  .plBnr {
    width: 53.8461538462vw;
    margin: 4.6153846154vw auto 0;
  }
  .plBnr__hd {
    margin-top: 2.3076923077vw;
    font-size: 1.8461538462vw;
  }
  .plBnr__list {
    margin-top: 1.0769230769vw;
  }
  .plBnr__list li {
    margin-top: 0.4615384615vw;
    padding-left: 1.3846153846vw;
    font-size: 1.3846153846vw;
  }
  .plBnr__list li::after {
    top: 0.6153846154vw;
    width: 0.9230769231vw;
    height: 0.9230769231vw;
  }
  .plBnr__note {
    margin-top: 0.4615384615vw;
    font-size: 1.0769230769vw;
  }
}
@media (max-width: 768px) {
  .pl {
    padding-top: 13.3333333333vw;
    padding-bottom: 13.3333333333vw;
  }
  .plTxt {
    margin-top: 8vw;
    font-size: 3.7333333333vw;
    line-height: 1.78;
  }
  .plImg {
    margin-top: 5.3333333333vw;
  }
  .plBnr {
    width: 100%;
    margin: 5.3333333333vw auto 0;
  }
  .plBnr__hd {
    margin-top: 4.2666666667vw;
    font-size: 4.2666666667vw;
  }
  .plBnr__list {
    margin-top: 2.6666666667vw;
  }
  .plBnr__list li {
    margin-top: 2.1333333333vw;
    padding-left: 4.2666666667vw;
    font-size: 3.7333333333vw;
  }
  .plBnr__list li::after {
    top: 1.6vw;
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
  .plBnr__note {
    margin-top: 2.1333333333vw;
    font-size: 3.2vw;
  }
}
.fl {
  padding-top: 90px;
  padding-bottom: 90px;
}

.flTop {
  margin-top: 50px;
  font-size: 18px;
  font-weight: 500;
  text-align: center;
}

.flBoxs {
  margin-top: 40px;
}

.flBox {
  position: relative;
  margin-top: 40px;
  border: 4px solid #f854a8;
  border-radius: 20px;
  background: #fff;
}
.flBox::after {
  content: "";
  position: absolute;
  top: -44px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 4px;
  height: 40px;
  background: #f854a8;
}
.flBox:first-child::after {
  display: none;
}

.flBox__hd {
  height: 80px;
  padding: 25px 0;
  border-radius: 15px 15px 0 0;
  font-size: 25px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background: #f854a8;
}

.flBox__wrap {
  padding: 32px;
}

.flBox__ttl {
  position: relative;
  margin-top: 20px;
  padding-left: 15px;
  font-size: 16px;
  font-weight: bold;
}
.flBox__ttl:first-child {
  margin-top: 0;
}
.flBox__ttl::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f854a8;
}

.flBox__txt {
  margin-top: 3px;
  padding-left: 15px;
  font-size: 16px;
  line-height: 1.8;
}

@media (min-width: 1921px) {
  .fl {
    padding-top: 101.25px;
    padding-bottom: 101.25px;
  }
  .flTop {
    margin-top: 56.25px;
    font-size: 20.25px;
  }
  .flBoxs {
    margin-top: 45px;
  }
  .flBox {
    margin-top: 45px;
    border: 4.5px solid #f854a8;
    border-radius: 22.5px;
  }
  .flBox::after {
    top: -49.5px;
    width: 4.5px;
    height: 45px;
  }
  .flBox__hd {
    height: 90px;
    padding: 28.125px 0;
    border-radius: 16.875px 16.875px 0 0;
    font-size: 28.125px;
  }
  .flBox__wrap {
    padding: 36px;
  }
  .flBox__ttl {
    margin-top: 22.5px;
    padding-left: 16.875px;
    font-size: 18px;
  }
  .flBox__ttl::after {
    width: 11.25px;
    height: 11.25px;
  }
  .flBox__txt {
    margin-top: 3.375px;
    padding-left: 16.875px;
    font-size: 18px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .fl {
    padding-top: 6.9230769231vw;
    padding-bottom: 6.9230769231vw;
  }
  .flTop {
    margin-top: 3.8461538462vw;
    font-size: 1.3846153846vw;
  }
  .flBoxs {
    margin-top: 3.0769230769vw;
  }
  .flBox {
    margin-top: 3.0769230769vw;
    border: 0.3076923077vw solid #f854a8;
    border-radius: 1.5384615385vw;
  }
  .flBox::after {
    top: -3.3846153846vw;
    width: 0.3076923077vw;
    height: 3.0769230769vw;
  }
  .flBox__hd {
    height: 6.1538461538vw;
    padding: 1.9230769231vw 0;
    border-radius: 1.1538461538vw 1.1538461538vw 0 0;
    font-size: 1.9230769231vw;
  }
  .flBox__wrap {
    padding: 2.4615384615vw;
  }
  .flBox__ttl {
    margin-top: 1.5384615385vw;
    padding-left: 1.1538461538vw;
    font-size: 1.2307692308vw;
  }
  .flBox__ttl::after {
    width: 0.7692307692vw;
    height: 0.7692307692vw;
  }
  .flBox__txt {
    margin-top: 0.2307692308vw;
    padding-left: 1.1538461538vw;
    font-size: 1.2307692308vw;
  }
}
@media (max-width: 768px) {
  .fl {
    padding-top: 13.3333333333vw;
    padding-bottom: 10.6666666667vw;
  }
  .flTop {
    margin-top: 8vw;
    font-size: 3.7333333333vw;
  }
  .flBoxs {
    margin-top: 8vw;
  }
  .flBox {
    margin-top: 5.3333333333vw;
    border: 1.0666666667vw solid #f854a8;
    border-radius: 5.3333333333vw;
  }
  .flBox::after {
    top: -6.4vw;
    width: 1.0666666667vw;
    height: 5.3333333333vw;
  }
  .flBox__hd {
    height: auto;
    padding: 4vw 6.6666666667vw;
    border-radius: 2.6666666667vw 2.6666666667vw 0 0;
    font-size: 4.8vw;
  }
  .flBox__wrap {
    padding: 5.3333333333vw 6.6666666667vw 5.3333333333vw 6.6666666667vw;
  }
  .flBox__ttl {
    margin-top: 2.6666666667vw;
    padding-left: 4vw;
    font-size: 4.2666666667vw;
  }
  .flBox__ttl::after {
    left: 0;
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
  .flBox__txt {
    margin-top: 1.3333333333vw;
    padding-left: 4vw;
    font-size: 3.7333333333vw;
    line-height: 1.78;
  }
}
.faq {
  padding-top: 80px;
  padding-bottom: 80px;
  background: #fff;
}

.faqBoxs {
  margin-top: 50px;
}

.faqBox {
  margin-top: 40px;
}

.faqQues {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 5px;
  padding-bottom: 16px;
  border-bottom: 1px solid #adb3d5;
}
.faqQues .icon {
  width: 35px;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.2;
  color: #283990;
}
.faqQues p {
  width: calc(100% - 40px);
  padding-top: 4px;
  font-size: 22px;
  font-weight: bold;
}

.faqAns {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 5px;
  padding-top: 16px;
}
.faqAns .icon {
  width: 35px;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.2;
  color: #f854a8;
}
.faqAns p {
  width: calc(100% - 40px);
  padding-top: 4px;
  font-size: 16px;
  line-height: 1.8;
}

@media (max-width: 768px) {
  .faq {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .faqBoxs {
    margin-top: 30px;
  }
  .faqBox {
    margin-top: 20px;
  }
  .faqQues {
    gap: 9px;
    padding-bottom: 14px;
  }
  .faqQues .icon {
    width: 25px;
    font-size: 22px;
  }
  .faqQues p {
    width: calc(100% - 34px);
    padding-top: 2px;
    font-size: 16px;
  }
  .faqAns {
    gap: 5px;
    padding-top: 10px;
  }
  .faqAns .icon {
    width: 25px;
    font-size: 22px;
  }
  .faqAns p {
    width: calc(100% - 30px);
    padding-top: 2px;
    font-size: 14px;
  }
}
.ct {
  padding-top: 80px;
  padding-bottom: 140px;
  background: #fff;
}

.ctWrap {
  padding: 60px 65px;
  border-radius: 30px;
  background: #f5f5f5;
}

.ctMain {
  margin: 50px auto 0;
}

.ctForm {
  display: none;
}
.ctForm.active {
  display: block;
}

.ctFlex {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 36px;
}

.ctTtl {
  gap: 10px;
}
.ctTtl .ttl {
  font-size: 16px;
  font-weight: 500;
}
.ctTtl .must {
  width: 34px;
  height: 22px;
  border-radius: 5px;
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  background: #f23e6f;
}

.ctRadio {
  width: 535px;
  gap: 30px;
}
.ctRadio input[type=radio] {
  position: relative;
  width: 20px;
  height: 20px;
  border: 1px solid #bcbcbc;
  border-radius: 50%;
  accent-color: #f864af;
  background: #fff;
  vertical-align: -4px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.ctRadio input[type=radio]:checked:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #f864af;
}

.ctInp {
  width: 535px;
}
.ctInp input,
.ctInp select {
  width: 535px;
  height: 60px;
  padding: 10px 15px;
  border: 1px solid #cecece;
  border-radius: 8px;
  font-family: "notosansjp", serif;
  font-size: 16px;
  color: #333;
}
.ctInp input::-webkit-input-placeholder, .ctInp select::-webkit-input-placeholder {
  color: #cecece;
}
.ctInp input::-moz-placeholder, .ctInp select::-moz-placeholder {
  color: #cecece;
}
.ctInp input:-ms-input-placeholder, .ctInp select:-ms-input-placeholder {
  color: #cecece;
}
.ctInp input::-ms-input-placeholder, .ctInp select::-ms-input-placeholder {
  color: #cecece;
}
.ctInp input::placeholder,
.ctInp select::placeholder {
  color: #cecece;
}
.ctInp textarea {
  width: 535px;
  height: 140px;
  padding: 10px 15px;
  border: 1px solid #cecece;
  border-radius: 8px;
  font-family: "notosansjp", serif;
  font-size: 16px;
}
.ctInp textarea::-webkit-input-placeholder {
  color: #cecece;
}
.ctInp textarea::-moz-placeholder {
  color: #cecece;
}
.ctInp textarea:-ms-input-placeholder {
  color: #cecece;
}
.ctInp textarea::-ms-input-placeholder {
  color: #cecece;
}
.ctInp textarea::placeholder {
  color: #cecece;
}

.ctSel {
  position: relative;
}
.ctSel::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}
.ctSel select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #cecece;
}

.ctAgree {
  margin-top: 40px;
  font-size: 16px;
  font-weight: bold;
  gap: 10px;
}
.ctAgree a {
  color: #333;
  text-decoration: underline;
}
.ctAgree .mwform-checkbox-field-text {
  display: none;
}
.ctAgree span {
  width: 24px;
  height: 24px;
}
.ctAgree input[type=checkbox] {
  position: relative;
  width: 24px;
  height: 24px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #ffffff;
  border: 2px solid #bcbcbc;
  border-radius: 4px;
  -webkit-box-shadow: 0 0 0 0 transparent;
          box-shadow: 0 0 0 0 transparent;
}
.ctAgree input[type=checkbox]::before {
  content: "";
  position: absolute;
  width: 5px;
  height: 10px;
  border-right: 2px solid #f854a8;
  border-bottom: 2px solid #f854a8;
  top: calc(50% - 1px);
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  opacity: 0;
}
.ctAgree input[type=checkbox]:checked::before {
  opacity: 1;
}

.formAgree__error,
.ctAgree__error {
  margin-top: 5px;
  font-size: 16px;
  color: #dd3030;
  text-align: center;
}

.ctBtn button {
  position: relative;
  width: 280px;
  height: 60px;
  margin: 40px auto 0;
  border: none;
  border-radius: 30px;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.02em;
  color: #fff;
  background: #283990;
  cursor: pointer;
}

@media (min-width: 1921px) {
  .ct {
    padding-top: 90px;
    padding-bottom: 157.5px;
  }
  .ctWrap {
    padding: 67.5px 73.125px;
    border-radius: 33.75px;
  }
  .ctMain {
    margin: 56.25px auto 0;
  }
  .ctFlex {
    margin-top: 40.5px;
  }
  .ctTtl {
    gap: 11.25px;
  }
  .ctTtl .ttl {
    font-size: 18px;
  }
  .ctTtl .must {
    width: 38.25px;
    height: 24.75px;
    border-radius: 5.625px;
    font-size: 13.5px;
  }
  .ctRadio {
    width: 601.875px;
    gap: 33.75px;
  }
  .ctRadio input[type=radio] {
    width: 22.5px;
    height: 22.5px;
    vertical-align: -4.5px;
  }
  .ctRadio input[type=radio]:checked:before {
    width: 15.75px;
    height: 15.75px;
  }
  .ctInp {
    width: 601.875px;
  }
  .ctInp input,
  .ctInp select {
    width: 601.875px;
    height: 67.5px;
    padding: 11.25px 16.875px;
    border-radius: 9px;
    font-size: 18px;
  }
  .ctInp textarea {
    width: 601.875px;
    height: 157.5px;
    padding: 11.25px 16.875px;
    border-radius: 9px;
    font-size: 18px;
  }
  .ctSel::after {
    width: 9px;
    height: 9px;
    border-right: 2.25px solid #141414;
    border-bottom: 2.25px solid #141414;
    right: 22.5px;
  }
  .ctAgree {
    margin-top: 45px;
    font-size: 18px;
    gap: 11.25px;
  }
  .ctAgree span {
    width: 27px;
    height: 27px;
  }
  .ctAgree input[type=checkbox] {
    width: 27px;
    height: 27px;
    border: 2.25px solid #bcbcbc;
    border-radius: 4.5px;
  }
  .ctAgree input[type=checkbox]::before {
    width: 5.625px;
    height: 11.25px;
    border-right: 2.25px solid #f854a8;
    border-bottom: 2.25px solid #f854a8;
  }
  .formAgree__error,
  .ctAgree__error {
    margin-top: 5.625px;
    font-size: 18px;
  }
  .ctBtn button {
    width: 315px;
    height: 67.5px;
    margin: 45px auto 0;
    border-radius: 33.75px;
    font-size: 20.25px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1300px) {
  .ct {
    padding-top: 6.1538461538vw;
    padding-bottom: 10.7692307692vw;
  }
  .ctWrap {
    padding: 4.6153846154vw 5vw;
    border-radius: 2.3076923077vw;
  }
  .ctMain {
    margin: 3.8461538462vw auto 0;
  }
  .ctFlex {
    margin-top: 2.7692307692vw;
  }
  .ctTtl {
    gap: 0.7692307692vw;
  }
  .ctTtl .ttl {
    font-size: 1.2307692308vw;
  }
  .ctTtl .must {
    width: 2.6153846154vw;
    height: 1.6923076923vw;
    border-radius: 0.3846153846vw;
    font-size: 0.9230769231vw;
  }
  .ctRadio {
    width: 41.1538461538vw;
    gap: 2.3076923077vw;
  }
  .ctRadio input[type=radio] {
    width: 1.5384615385vw;
    height: 1.5384615385vw;
    vertical-align: -0.3076923077vw;
  }
  .ctRadio input[type=radio]:checked:before {
    width: 1.0769230769vw;
    height: 1.0769230769vw;
  }
  .ctInp {
    width: 41.1538461538vw;
  }
  .ctInp input,
  .ctInp select {
    width: 41.1538461538vw;
    height: 4.6153846154vw;
    padding: 0.7692307692vw 1.1538461538vw;
    border-radius: 0.6153846154vw;
    font-size: 1.2307692308vw;
  }
  .ctInp textarea {
    width: 41.1538461538vw;
    height: 10.7692307692vw;
    padding: 0.7692307692vw 1.1538461538vw;
    border-radius: 0.6153846154vw;
    font-size: 1.2307692308vw;
  }
  .ctSel::after {
    width: 0.6153846154vw;
    height: 0.6153846154vw;
    border-right: 0.1538461538vw solid #141414;
    border-bottom: 0.1538461538vw solid #141414;
    right: 1.5384615385vw;
  }
  .ctAgree {
    margin-top: 3.0769230769vw;
    font-size: 1.2307692308vw;
    gap: 0.7692307692vw;
  }
  .ctAgree span {
    width: 1.8461538462vw;
    height: 1.8461538462vw;
  }
  .ctAgree input[type=checkbox] {
    width: 1.8461538462vw;
    height: 1.8461538462vw;
    border: 0.1538461538vw solid #bcbcbc;
    border-radius: 0.3076923077vw;
  }
  .ctAgree input[type=checkbox]::before {
    width: 0.3846153846vw;
    height: 0.7692307692vw;
    border-right: 0.1538461538vw solid #f854a8;
    border-bottom: 0.1538461538vw solid #f854a8;
  }
  .formAgree__error,
  .ctAgree__error {
    margin-top: 0.3846153846vw;
    font-size: 1.2307692308vw;
  }
  .ctBtn button {
    width: 21.5384615385vw;
    height: 4.6153846154vw;
    margin: 3.0769230769vw auto 0;
    border-radius: 2.3076923077vw;
    font-size: 1.3846153846vw;
  }
}
@media (max-width: 768px) {
  .ct {
    padding-top: 10.6666666667vw;
    padding-bottom: 16vw;
  }
  .ctWrap {
    width: calc(100% + 13.3333333333vw);
    margin-left: -6.6666666667vw;
    padding: 13.3333333333vw;
    border-radius: 5.3333333333vw;
  }
  .ctMain {
    margin: 8vw auto 0;
  }
  .ctFlex {
    margin-top: 5.3333333333vw;
    gap: 2.6666666667vw;
  }
  .ctTtl {
    gap: 2.6666666667vw;
  }
  .ctTtl .ttl {
    font-size: 3.7333333333vw;
  }
  .ctTtl .must {
    width: 7.4666666667vw;
    height: 4.8vw;
    border-radius: 1.3333333333vw;
    font-size: 2.4vw;
  }
  .ctRadio {
    width: 100%;
    gap: 5.8666666667vw;
  }
  .ctRadio input[type=radio] {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
    vertical-align: -1.0666666667vw;
  }
  .ctRadio input[type=radio]:checked:before {
    width: 2.9333333333vw;
    height: 2.9333333333vw;
  }
  .ctInp input,
  .ctInp select {
    width: 100%;
    height: 10.6666666667vw;
    padding: 2.1333333333vw 4vw;
    border-radius: 1.3333333333vw;
    font-size: 4.2666666667vw;
  }
  .ctInp textarea {
    width: 100%;
    height: 37.3333333333vw;
    padding: 2.1333333333vw 4vw;
    border-radius: 1.3333333333vw;
    font-size: 4.2666666667vw;
  }
  .ctSel::after {
    width: 2.1333333333vw;
    height: 2.1333333333vw;
    border-right: 0.5333333333vw solid #141414;
    border-bottom: 0.5333333333vw solid #141414;
    right: 5.3333333333vw;
  }
  .ctAgree {
    margin-top: 8vw;
    font-size: 3.7333333333vw;
    gap: 2.6666666667vw;
  }
  .ctAgree span {
    width: 4.8vw;
    height: 4.8vw;
  }
  .ctAgree input[type=checkbox] {
    width: 4.8vw;
    height: 4.8vw;
    border: 0.5333333333vw solid #bcbcbc;
    border-radius: 1.0666666667vw;
  }
  .ctAgree input[type=checkbox]::before {
    width: 1.0666666667vw;
    height: 2.1333333333vw;
    border-right: 0.5333333333vw solid #f854a8;
    border-bottom: 0.5333333333vw solid #f854a8;
  }
  .formAgree__error,
  .ctAgree__error {
    margin-top: 1.3333333333vw;
    font-size: 3.7333333333vw;
  }
  .ctBtn button {
    width: 73.3333333333vw;
    height: 16vw;
    margin: 8vw auto 0;
    border-radius: 15.4666666667vw;
    font-size: 4.2666666667vw;
  }
}/*# sourceMappingURL=top.css.map */