@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 (min-width: 1921px) {
  .slide-arrow {
    bottom: -129.375px;
    width: 56.25px;
    height: 56.25px;
  }
  .prev-arrow {
    left: 1125px;
  }
  .prev-arrow::after {
    width: 9px;
    height: 9px;
    border-right: 2.25px solid #fff;
    border-bottom: 2.25px solid #fff;
  }
  .next-arrow {
    left: 1192.5px;
  }
  .next-arrow::after {
    width: 9px;
    height: 9px;
    border-right: 2.25px solid #fff;
    border-bottom: 2.25px solid #fff;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .slide-arrow {
    bottom: -8.8461538462vw;
    width: 3.8461538462vw;
    height: 3.8461538462vw;
  }
  .prev-arrow {
    left: 76.9230769231vw;
  }
  .prev-arrow::after {
    width: 0.6153846154vw;
    height: 0.6153846154vw;
    border-right: 0.1538461538vw solid #fff;
    border-bottom: 0.1538461538vw solid #fff;
  }
  .next-arrow {
    left: 81.5384615385vw;
  }
  .next-arrow::after {
    width: 0.6153846154vw;
    height: 0.6153846154vw;
    border-right: 0.1538461538vw solid #fff;
    border-bottom: 0.1538461538vw solid #fff;
  }
}
@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 {
  position: relative;
  overflow: hidden;
  height: 860px;
}

.mvBg {
  height: 100%;
}

.mvImgs {
  position: absolute;
  top: 50%;
  left: calc(50% + 400px);
  -webkit-transform: translate(-50%, -50%) rotate(15deg);
          transform: translate(-50%, -50%) rotate(15deg);
  width: 765px;
}

.slider__wrapper {
  display: grid;
  -webkit-animation: vertical-animation 20s linear infinite;
          animation: vertical-animation 20s linear infinite;
}

.slide {
  position: relative;
  overflow: hidden;
  width: 100%;
  border-radius: 15px;
  margin: 0 auto 20px;
  -webkit-box-shadow: 0 10px 20px 0 rgba(22, 62, 134, 0.2);
          box-shadow: 0 10px 20px 0 rgba(22, 62, 134, 0.2);
}

.slide img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

@-webkit-keyframes vertical-animation {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
  }
}

@keyframes vertical-animation {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
  }
}
.mvCont {
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 1440px;
  margin: auto;
  padding: 0 40px;
}

.mvMs {
  width: 620px;
  height: 285px;
}
.mvMs .icon {
  mix-blend-mode: multiply;
}

.mvRead {
  margin-top: 40px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.77;
  letter-spacing: 0.02em;
}

.mvBtn {
  width: 300px;
  height: 64px;
  margin-top: 38px;
  border-radius: 40px;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.02em;
  color: #fff;
  background: var(--blue);
  -webkit-box-shadow: 0 10px 20px 0 rgba(77, 116, 189, 0.5);
          box-shadow: 0 10px 20px 0 rgba(77, 116, 189, 0.5);
}

.mvBtn__sp {
  display: none;
}

@media (min-width: 1921px) {
  .mv {
    height: 967.5px;
  }
  .mvImgs {
    left: calc(50% + 450px);
    width: 860.625px;
  }
  .slide {
    border-radius: 16.875px;
    margin: 0 auto 22.5px;
    -webkit-box-shadow: 0 11.25px 22.5px 0 rgba(22, 62, 134, 0.2);
            box-shadow: 0 11.25px 22.5px 0 rgba(22, 62, 134, 0.2);
  }
  .mvCont {
    max-width: 1620px;
    padding: 0 45px;
  }
  .mvMs {
    width: 697.5px;
    height: 320.625px;
  }
  .mvRead {
    margin-top: 45px;
    font-size: 20.25px;
  }
  .mvBtn {
    width: 337.5px;
    height: 72px;
    margin-top: 42.75px;
    border-radius: 45px;
    font-size: 22.5px;
    -webkit-box-shadow: 0 11.25px 22.5px 0 rgba(77, 116, 189, 0.5);
            box-shadow: 0 11.25px 22.5px 0 rgba(77, 116, 189, 0.5);
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .mv {
    height: 66.1538461538vw;
  }
  .mvImgs {
    left: calc(50% + 30.7692307692vw);
    width: 58.8461538462vw;
  }
  .slide {
    border-radius: 1.1538461538vw;
    margin: 0 auto 1.5384615385vw;
    -webkit-box-shadow: 0 0.7692307692vw 1.5384615385vw 0 rgba(22, 62, 134, 0.2);
            box-shadow: 0 0.7692307692vw 1.5384615385vw 0 rgba(22, 62, 134, 0.2);
  }
  .mvCont {
    max-width: 110.7692307692vw;
    padding: 0 3.0769230769vw;
  }
  .mvMs {
    width: 47.6923076923vw;
    height: 21.9230769231vw;
  }
  .mvRead {
    margin-top: 3.0769230769vw;
    font-size: 1.3846153846vw;
  }
  .mvBtn {
    width: 23.0769230769vw;
    height: 4.9230769231vw;
    margin-top: 2.9230769231vw;
    border-radius: 3.0769230769vw;
    font-size: 1.5384615385vw;
    -webkit-box-shadow: 0 0.7692307692vw 1.5384615385vw 0 rgba(77, 116, 189, 0.5);
            box-shadow: 0 0.7692307692vw 1.5384615385vw 0 rgba(77, 116, 189, 0.5);
  }
}
@media (max-width: 768px) {
  .mv {
    position: relative;
    height: 177.8666666667vw;
  }
  .mvBg img {
    height: 100%;
  }
  .mvImgs {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    top: unset;
    bottom: 13.3333333333vw;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%) rotate(10deg);
            transform: translate(-50%, -50%) rotate(10deg);
    width: unset;
  }
  .slider__wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-animation: horizontal-animation 20s linear infinite;
            animation: horizontal-animation 20s linear infinite;
  }
  .slide {
    width: 72.5333333333vw;
    border-radius: 4vw;
    margin: 0 2vw;
    -webkit-box-shadow: 0 2.6666666667vw 5.3333333333vw 0 rgba(22, 62, 134, 0.2);
            box-shadow: 0 2.6666666667vw 5.3333333333vw 0 rgba(22, 62, 134, 0.2);
  }
  @-webkit-keyframes horizontal-animation {
    from {
      -webkit-transform: translateX(0);
              transform: translateX(0);
    }
    to {
      -webkit-transform: translateX(-100%);
              transform: translateX(-100%);
    }
  }
  @keyframes horizontal-animation {
    from {
      -webkit-transform: translateX(0);
              transform: translateX(0);
    }
    to {
      -webkit-transform: translateX(-100%);
              transform: translateX(-100%);
    }
  }
  .mvCont {
    top: 26.6666666667vw;
    bottom: unset;
    left: 6.6666666667vw;
    right: unset;
    max-width: 86.6666666667vw;
    margin: unset;
    padding: 0;
  }
  .mvMs {
    width: 73.3333333333vw;
    height: 31.2vw;
  }
  .mvMs .icon {
    mix-blend-mode: multiply;
  }
  .mvRead {
    margin-top: 5.3333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.8;
  }
  .mvBtn {
    display: none;
  }
  .mvBtn__sp {
    position: absolute;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    bottom: 12vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 74.1333333333vw;
    height: 16.2666666667vw;
    border-radius: 10.6666666667vw;
    font-size: 4.8vw;
    font-weight: bold;
    color: #fff;
    -webkit-box-shadow: 0 2.6666666667vw 5.3333333333vw 0 rgba(77, 116, 189, 0.5);
            box-shadow: 0 2.6666666667vw 5.3333333333vw 0 rgba(77, 116, 189, 0.5);
    background: var(--blue);
  }
}
.ab {
  position: relative;
  overflow: hidden;
  padding-top: 185px;
  padding-bottom: 185px;
  background: #fff;
}

.abBg {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
}

.abBg__img {
  position: absolute;
  top: 50%;
  left: calc(50% + 10px);
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 1205px;
}

.abBg__img--lg {
  display: none;
}

@media (min-width: 1820px) {
  .abBg__img--df {
    display: none;
  }
  .abBg__img--lg {
    left: calc(50% + 50px);
    width: 1674px;
    display: block;
  }
}
.abTtl {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.abTtl .sub {
  position: absolute;
  top: 0;
  left: 50px;
  font-size: 15px;
  font-weight: bold;
}
.abTtl .ttl {
  font-size: 68px;
  font-weight: bold;
  text-align: center;
}
.abTtl .ttl span {
  font-size: 51px;
}

.abTtl__bg {
  position: absolute;
  bottom: -5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 564px;
}

.abTxt {
  margin-top: 45px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.95;
  text-align: center;
}
.abTxt span {
  margin: 0 5px;
  padding: 0 3px;
  color: #fff;
  background: -webkit-gradient(linear, left top, right top, from(#3791f4), to(#aecc48));
  background: -webkit-linear-gradient(left, #3791f4 0%, #aecc48 100%);
  background: linear-gradient(to right, #3791f4 0%, #aecc48 100%);
}

@media (min-width: 1921px) {
  .ab {
    padding-top: 208.125px;
    padding-bottom: 208.125px;
  }
  .abBg__img {
    left: calc(50% + 56.25px);
    width: 1883.25px;
  }
  .abTtl .sub {
    left: 56.25px;
    font-size: 16.875px;
  }
  .abTtl .ttl {
    font-size: 76.5px;
  }
  .abTtl .ttl span {
    font-size: 57.375px;
  }
  .abTtl__bg {
    bottom: -5.625px;
    width: 634.5px;
  }
  .abTxt {
    margin-top: 50.625px;
    font-size: 22.5px;
  }
  .abTxt span {
    margin: 0 5.625px;
    padding: 0 3.375px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .ab {
    padding-top: 14.2307692308vw;
    padding-bottom: 14.2307692308vw;
  }
  .abBg__img {
    left: calc(50% + 0.7692307692vw);
    width: 92.6923076923vw;
  }
  .abTtl .sub {
    left: 3.8461538462vw;
    font-size: 1.1538461538vw;
  }
  .abTtl .ttl {
    font-size: 5.2307692308vw;
  }
  .abTtl .ttl span {
    font-size: 3.9230769231vw;
  }
  .abTtl__bg {
    bottom: -0.3846153846vw;
    width: 43.3846153846vw;
  }
  .abTxt {
    margin-top: 3.4615384615vw;
    font-size: 1.5384615385vw;
  }
  .abTxt span {
    margin: 0 0.3846153846vw;
    padding: 0 0.2307692308vw;
  }
}
@media (max-width: 768px) {
  .ab {
    padding-top: 73.3333333333vw;
    padding-bottom: 80vw;
  }
  .abBg {
    width: 100vw;
  }
  .abBg__img {
    display: none;
  }
  .abTtl .sub {
    top: 0.8vw;
    left: 6.6666666667vw;
    font-size: 1.8666666667vw;
  }
  .abTtl .ttl {
    font-size: 9.0666666667vw;
  }
  .abTtl .ttl span {
    font-size: 6.9333333333vw;
  }
  .abTtl__bg {
    bottom: 0;
    width: 69.6vw;
  }
  .abTxt {
    margin-top: 10.1333333333vw;
    font-size: 4.8vw;
    line-height: 1.77;
  }
  .abTxt span {
    margin: 0 1.3333333333vw;
    padding: 0 0.8vw;
    color: #fff;
    background: -webkit-gradient(linear, left top, right top, from(#3791f4), to(#aecc48));
    background: -webkit-linear-gradient(left, #3791f4 0%, #aecc48 100%);
    background: linear-gradient(to right, #3791f4 0%, #aecc48 100%);
  }
}
.pl {
  position: relative;
  overflow: hidden;
}

.plTop {
  padding-top: 100px;
  padding-bottom: 70px;
  background: #000;
  background: -webkit-gradient(linear, left bottom, left top, from(#d3dae2), to(#fff));
  background: -webkit-linear-gradient(bottom, #d3dae2 0%, #fff 100%);
  background: linear-gradient(0deg, #d3dae2 0%, #fff 100%);
}

.plDeco__01 {
  position: absolute;
  top: 240px;
  left: -140px;
  width: 288px;
  height: 288px;
}

.plDeco__02 {
  position: absolute;
  top: 470px;
  right: -210px;
  width: 288px;
  height: 288px;
}

.plSub {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.45;
  text-align: center;
  color: var(--blue);
}

.plImg {
  margin-top: 60px;
}

.plTxt {
  margin: 60px auto 0;
  font-size: 32px;
  font-weight: bold;
  text-align: center;
}
.plTxt span {
  color: var(--blue);
}

.plLists {
  gap: 47px;
  margin-top: 70px;
}

.plList {
  position: relative;
  width: calc((100% - 94px) / 3);
  padding: 45px 0 33px;
  border-radius: 24px;
  background: #f1f1f1;
}

.plList__hd {
  position: absolute;
  top: -20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 44px;
  padding: 0 23px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background: #4e4e4e;
  white-space: nowrap;
}
.plList__hd span {
  margin-right: 3px;
  font-size: 20px;
}
.plList__hd::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #4e4e4e transparent transparent transparent;
  border-width: 12px 8px 0px 8px;
}

.plList__icon {
  width: 100px;
  margin: 0 auto;
}

.plList__txt {
  margin-top: 20px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}
.plList__txt span {
  color: var(--blue);
}

.plBox {
  margin-top: 50px;
  padding: 28px 0 29px;
  border: 2px solid #e34c4c;
  border-radius: 10px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.75;
  text-align: center;
  background: #fef2f2;
}
.plBox span {
  font-size: 24px;
  color: #e34c4c;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, rgba(245, 130, 126, 0.3)));
  background: -webkit-linear-gradient(transparent 50%, rgba(245, 130, 126, 0.3) 50%);
  background: linear-gradient(transparent 50%, rgba(245, 130, 126, 0.3) 50%);
}

.plBt {
  overflow: hidden;
  padding-top: 175px;
  padding-bottom: 60px;
  background: #fff;
}

.plBt__bg {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  height: 95px;
}

.plBt__sub {
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.plBt__ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 420px;
  height: 58px;
  margin: 10px auto 0;
  font-size: 40px;
  font-weight: bold;
  color: #fff;
  background: -webkit-gradient(linear, left top, right top, from(#3791f4), to(#aecc48));
  background: -webkit-linear-gradient(left, #3791f4 0%, #aecc48 100%);
  background: linear-gradient(to right, #3791f4 0%, #aecc48 100%);
}

.plBt__img {
  margin: 30px auto 0;
}

.plBt__scroll {
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  top: 425px;
  font-size: 233px;
  font-weight: bold;
  color: #f6f6f6;
  overflow: hidden;
  white-space: nowrap;
}
.plBt__scroll ul {
  margin: 0;
  padding: 0;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-animation: flowing 80s linear infinite;
          animation: flowing 80s linear infinite;
}
.plBt__scroll ul li {
  display: inline-block;
  margin: 0 20px;
  white-space: nowrap;
}

@-webkit-keyframes flowing {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}

@keyframes flowing {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@media (min-width: 1921px) {
  .plTop {
    padding-top: 112.5px;
    padding-bottom: 78.75px;
  }
  .plDeco__01 {
    top: 270px;
    left: -157.5px;
    width: 324px;
    height: 324px;
  }
  .plDeco__02 {
    top: 528.75px;
    right: -236.25px;
    width: 324px;
    height: 324px;
  }
  .plSub {
    font-size: 27px;
  }
  .plImg {
    margin-top: 67.5px;
  }
  .plTxt {
    margin: 67.5px auto 0;
    font-size: 36px;
  }
  .plLists {
    gap: 52.875px;
    margin-top: 78.75px;
  }
  .plList {
    width: calc((100% - 105.75px) / 3);
    padding: 50.625px 0 37.125px;
    border-radius: 27px;
  }
  .plList__hd {
    top: -22.5px;
    height: 49.5px;
    padding: 0 25.875px;
    border-radius: 9px;
    font-size: 18px;
  }
  .plList__hd span {
    margin-right: 3.375px;
    font-size: 22.5px;
  }
  .plList__hd::after {
    bottom: -11.25px;
    border-width: 13.5px 9px 0px 9px;
  }
  .plList__icon {
    width: 112.5px;
  }
  .plList__txt {
    margin-top: 22.5px;
    font-size: 22.5px;
  }
  .plBox {
    margin-top: 56.25px;
    padding: 31.5px 0 32.625px;
    border: 2.25px solid #e34c4c;
    border-radius: 11.25px;
    font-size: 22.5px;
  }
  .plBox span {
    font-size: 27px;
  }
  .plBt {
    padding-top: 196.875px;
    padding-bottom: 67.5px;
  }
  .plBt__bg {
    height: 106.875px;
  }
  .plBt__sub {
    font-size: 33.75px;
  }
  .plBt__ttl {
    width: 472.5px;
    height: 65.25px;
    margin: 11.25px auto 0;
    font-size: 45px;
  }
  .plBt__img {
    margin: 33.75px auto 0;
  }
  .plBt__scroll {
    top: 478.125px;
    font-size: 262.125px;
  }
  .plBt__scroll ul li {
    margin: 0 22.5px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .plTop {
    padding-top: 7.6923076923vw;
    padding-bottom: 5.3846153846vw;
  }
  .plDeco__01 {
    top: 18.4615384615vw;
    left: -10.7692307692vw;
    width: 22.1538461538vw;
    height: 22.1538461538vw;
  }
  .plDeco__02 {
    top: 36.1538461538vw;
    right: -16.1538461538vw;
    width: 22.1538461538vw;
    height: 22.1538461538vw;
  }
  .plSub {
    font-size: 1.8461538462vw;
  }
  .plImg {
    margin-top: 4.6153846154vw;
  }
  .plTxt {
    margin: 4.6153846154vw auto 0;
    font-size: 2.4615384615vw;
  }
  .plLists {
    gap: 3.6153846154vw;
    margin-top: 5.3846153846vw;
  }
  .plList {
    width: calc((100% - 7.2307692308vw) / 3);
    padding: 3.4615384615vw 0 2.5384615385vw;
    border-radius: 1.8461538462vw;
  }
  .plList__hd {
    top: -1.5384615385vw;
    height: 3.3846153846vw;
    padding: 0 1.7692307692vw;
    border-radius: 0.6153846154vw;
    font-size: 1.2307692308vw;
  }
  .plList__hd span {
    margin-right: 0.2307692308vw;
    font-size: 1.5384615385vw;
  }
  .plList__hd::after {
    bottom: -0.7692307692vw;
    border-width: 0.9230769231vw 0.6153846154vw 0vw 0.6153846154vw;
  }
  .plList__icon {
    width: 7.6923076923vw;
  }
  .plList__txt {
    margin-top: 1.5384615385vw;
    font-size: 1.5384615385vw;
  }
  .plBox {
    margin-top: 3.8461538462vw;
    padding: 2.1538461538vw 0 2.2307692308vw;
    border: 0.1538461538vw solid #e34c4c;
    border-radius: 0.7692307692vw;
    font-size: 1.5384615385vw;
  }
  .plBox span {
    font-size: 1.8461538462vw;
  }
  .plBt {
    padding-top: 13.4615384615vw;
    padding-bottom: 4.6153846154vw;
  }
  .plBt__bg {
    height: 7.3076923077vw;
  }
  .plBt__sub {
    font-size: 2.3076923077vw;
  }
  .plBt__ttl {
    width: 32.3076923077vw;
    height: 4.4615384615vw;
    margin: 0.7692307692vw auto 0;
    font-size: 3.0769230769vw;
  }
  .plBt__img {
    margin: 2.3076923077vw auto 0;
  }
  .plBt__scroll {
    top: 32.6923076923vw;
    font-size: 17.9230769231vw;
  }
  .plBt__scroll ul li {
    margin: 0 1.5384615385vw;
  }
}
@media (max-width: 768px) {
  .plTop {
    padding-top: 21.3333333333vw;
    padding-bottom: 18.6666666667vw;
  }
  .plDeco__01 {
    display: none;
  }
  .plDeco__02 {
    display: none;
  }
  .plSub {
    font-size: 5.3333333333vw;
  }
  .plImg {
    width: calc(100% + 8vw);
    margin-top: 10.6666666667vw;
    margin-left: -4vw;
  }
  .plTxt {
    margin: 16vw auto 0;
    font-size: 5.3333333333vw;
  }
  .plLists {
    gap: 12.5333333333vw;
    margin-top: 14.6666666667vw;
  }
  .plList {
    width: 100%;
    padding: 12vw 0 9.3333333333vw;
    border-radius: 6.4vw;
  }
  .plList__hd {
    top: -5.3333333333vw;
    height: 11.7333333333vw;
    padding: 0 6.1333333333vw;
    border-radius: 2.1333333333vw;
    font-size: 4.2666666667vw;
  }
  .plList__hd span {
    margin-right: 0.5333333333vw;
    font-size: 5.3333333333vw;
  }
  .plList__hd::after {
    bottom: -2.6666666667vw;
    border-width: 3.2vw 2.1333333333vw 0vw 2.1333333333vw;
  }
  .plList__icon {
    width: 26.6666666667vw;
    margin: 0 auto;
  }
  .plList__txt {
    margin-top: 5.3333333333vw;
    font-size: 4.8vw;
    line-height: 1.44;
  }
  .plBox {
    margin-top: 14.6666666667vw;
    padding: 8vw 8vw;
    border: 0.5333333333vw solid #e34c4c;
    border-radius: 2.6666666667vw;
    font-size: 4.8vw;
    line-height: 1.8;
  }
  .plBox span {
    font-size: 5.3333333333vw;
  }
  .plBt {
    padding-top: 28vw;
    padding-bottom: 42.6666666667vw;
  }
  .plBt__bg {
    height: 12.5333333333vw;
  }
  .plBt__sub {
    font-size: 6.9333333333vw;
  }
  .plBt__ttl {
    width: 86.6666666667vw;
    height: 13.6vw;
    margin: 1.3333333333vw auto 0;
    font-size: 8vw;
  }
  .plBt__img {
    width: calc(100% + 13.3333333333vw);
    margin-top: 13.3333333333vw;
    margin-left: -6.6666666667vw;
  }
  .plBt__scroll {
    top: unset;
    bottom: 16vw;
    font-size: 14.6666666667vw;
  }
  .plBt__scroll ul li {
    margin: 0 5.3333333333vw;
  }
}
.vl {
  padding-top: 120px;
  padding-bottom: 120px;
}

.vlBg img {
  -o-object-position: top;
     object-position: top;
}

.vlLists {
  width: 815px;
  margin-top: 80px;
  margin: 0 auto;
}

.vlList {
  margin-top: 80px;
}

.vlIcon.icon01 {
  width: 257px;
}
.vlIcon.icon02 {
  width: 223px;
}
.vlIcon.icon03 {
  width: 223px;
}
.vlIcon.icon04 {
  width: 265px;
}

.vlCont {
  width: 500px;
}

.vlNum {
  font-size: 20px;
  font-style: italic;
  color: var(--blue);
}
.vlNum span {
  font-size: 24px;
}

.vlTtl {
  margin-top: 5px;
  font-size: 30px;
  font-weight: bold;
}

.vlTxt {
  margin-top: 20px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.8;
}

@media (min-width: 1921px) {
  .vl {
    padding-top: 135px;
    padding-bottom: 135px;
  }
  .vlLists {
    width: 916.875px;
    margin-top: 90px;
    margin: 0 auto;
  }
  .vlList {
    margin-top: 90px;
  }
  .vlIcon.icon01 {
    width: 289.125px;
  }
  .vlIcon.icon02 {
    width: 250.875px;
  }
  .vlIcon.icon03 {
    width: 250.875px;
  }
  .vlIcon.icon04 {
    width: 298.125px;
  }
  .vlCont {
    width: 562.5px;
  }
  .vlNum {
    font-size: 22.5px;
  }
  .vlNum span {
    font-size: 27px;
  }
  .vlTtl {
    margin-top: 5.625px;
    font-size: 33.75px;
  }
  .vlTxt {
    margin-top: 22.5px;
    font-size: 18px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .vl {
    padding-top: 9.2307692308vw;
    padding-bottom: 9.2307692308vw;
  }
  .vlLists {
    width: 62.6923076923vw;
    margin-top: 6.1538461538vw;
    margin: 0 auto;
  }
  .vlList {
    margin-top: 6.1538461538vw;
  }
  .vlIcon.icon01 {
    width: 19.7692307692vw;
  }
  .vlIcon.icon02 {
    width: 17.1538461538vw;
  }
  .vlIcon.icon03 {
    width: 17.1538461538vw;
  }
  .vlIcon.icon04 {
    width: 20.3846153846vw;
  }
  .vlCont {
    width: 38.4615384615vw;
  }
  .vlNum {
    font-size: 1.5384615385vw;
  }
  .vlNum span {
    font-size: 1.8461538462vw;
  }
  .vlTtl {
    margin-top: 0.3846153846vw;
    font-size: 2.3076923077vw;
  }
  .vlTxt {
    margin-top: 1.5384615385vw;
    font-size: 1.2307692308vw;
  }
}
@media (max-width: 768px) {
  .vl {
    padding-top: 26.6666666667vw;
    padding-bottom: 26.6666666667vw;
  }
  .vlLists {
    width: 86.6666666667vw;
    margin-top: 16vw;
  }
  .vlList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 5.3333333333vw;
    margin-top: 18.6666666667vw;
  }
  .vlList.reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-flow: column-reverse;
        -ms-flex-flow: column-reverse;
            flex-flow: column-reverse;
  }
  .vlIcon.icon01 {
    width: 56.5333333333vw;
  }
  .vlIcon.icon02 {
    width: 56.5333333333vw;
  }
  .vlIcon.icon03 {
    width: 59.4666666667vw;
  }
  .vlIcon.icon04 {
    width: 70.6666666667vw;
  }
  .vlCont {
    width: 100%;
  }
  .vlNum {
    font-size: 5.3333333333vw;
  }
  .vlNum span {
    font-size: 6.4vw;
  }
  .vlTtl {
    margin-top: 1.3333333333vw;
    font-size: 8vw;
  }
  .vlTxt {
    margin-top: 5.3333333333vw;
    font-size: 4.2666666667vw;
  }
}
.st {
  position: relative;
  padding-top: 100px;
  padding-bottom: 120px;
}

.stTop span {
  font-size: 70px;
  font-style: italic;
  color: var(--blue);
}

.stBox {
  position: relative;
  margin-top: 95px;
  padding: 6px;
  border-radius: 50px;
  background: -webkit-gradient(linear, left top, right top, from(#e7f0c9), to(#c4dffb));
  background: -webkit-linear-gradient(left, #e7f0c9 0%, #c4dffb 100%);
  background: linear-gradient(90deg, #e7f0c9 0%, #c4dffb 100%);
}
.stBox:first-child {
  margin-top: 85px;
}

.stBox__wrap {
  gap: 45px;
  padding: 70px 50px;
  border-radius: 45px;
  background: -webkit-gradient(linear, left top, right top, from(#f9fbf2), to(#f1f7fe));
  background: -webkit-linear-gradient(left, #f9fbf2 0%, #f1f7fe 100%);
  background: linear-gradient(90deg, #f9fbf2 0%, #f1f7fe 100%);
}

.stIcon {
  position: absolute;
  top: -50px;
  left: 62px;
  width: 99px;
  height: 102px;
}
.stIcon.reverse {
  left: unset;
  right: 62px;
}

.stCont {
  width: calc(100% - 455px);
}

.stTtl {
  font-size: 45px;
  font-weight: 900;
  line-height: 1.33;
  background: -webkit-linear-gradient(330deg, #3791f4 0%, #aecc48 100%);
  background: linear-gradient(120deg, #3791f4 0%, #aecc48 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.stTxt {
  margin-top: 30px;
  font-size: 16px;
  line-height: 2;
}
.stTxt span {
  font-weight: 500;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, rgba(80, 203, 248, 0.3)));
  background: -webkit-linear-gradient(transparent 50%, rgba(80, 203, 248, 0.3) 50%);
  background: linear-gradient(transparent 50%, rgba(80, 203, 248, 0.3) 50%);
}

.stImg {
  width: 410px;
  height: 290px;
}

@media (min-width: 1921px) {
  .st {
    padding-top: 112.5px;
    padding-bottom: 135px;
  }
  .stTop span {
    font-size: 78.75px;
  }
  .stBox {
    margin-top: 106.875px;
    padding: 6.75px;
    border-radius: 56.25px;
  }
  .stBox:first-child {
    margin-top: 95.625px;
  }
  .stBox__wrap {
    gap: 50.625px;
    padding: 78.75px 56.25px;
    border-radius: 50.625px;
  }
  .stIcon {
    top: -56.25px;
    left: 69.75px;
    width: 111.375px;
    height: 114.75px;
  }
  .stIcon.reverse {
    right: 69.75px;
  }
  .stCont {
    width: calc(100% - 511.875px);
  }
  .stTtl {
    font-size: 50.625px;
  }
  .stTxt {
    margin-top: 33.75px;
    font-size: 18px;
  }
  .stImg {
    width: 461.25px;
    height: 326.25px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .st {
    padding-top: 7.6923076923vw;
    padding-bottom: 9.2307692308vw;
  }
  .stTop span {
    font-size: 5.3846153846vw;
  }
  .stBox {
    margin-top: 7.3076923077vw;
    padding: 0.4615384615vw;
    border-radius: 3.8461538462vw;
  }
  .stBox:first-child {
    margin-top: 6.5384615385vw;
  }
  .stBox__wrap {
    gap: 3.4615384615vw;
    padding: 5.3846153846vw 3.8461538462vw;
    border-radius: 3.4615384615vw;
  }
  .stIcon {
    top: -3.8461538462vw;
    left: 4.7692307692vw;
    width: 7.6153846154vw;
    height: 7.8461538462vw;
  }
  .stIcon.reverse {
    right: 4.7692307692vw;
  }
  .stCont {
    width: calc(100% - 35vw);
  }
  .stTtl {
    font-size: 3.4615384615vw;
  }
  .stTxt {
    margin-top: 2.3076923077vw;
    font-size: 1.2307692308vw;
  }
  .stImg {
    width: 31.5384615385vw;
    height: 22.3076923077vw;
  }
}
@media (max-width: 768px) {
  .st {
    padding-top: 21.3333333333vw;
    padding-bottom: 21.3333333333vw;
  }
  .stTop span {
    font-size: 9.3333333333vw;
  }
  .stBox {
    margin-top: 23.4666666667vw;
    padding: 2.1333333333vw;
    border-radius: 6.6666666667vw;
  }
  .stBox:first-child {
    margin-top: 23.4666666667vw;
  }
  .stBox__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 5.3333333333vw;
    padding: 16vw 4.2666666667vw 5.8666666667vw;
    border-radius: 5.3333333333vw;
  }
  .stBox__wrap.reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-flow: column-reverse;
        -ms-flex-flow: column-reverse;
            flex-flow: column-reverse;
  }
  .stIcon {
    top: -8vw;
    left: 11.7333333333vw;
    width: 17.3333333333vw;
    height: 17.8666666667vw;
  }
  .stIcon.reverse {
    left: unset;
    right: 11.7333333333vw;
  }
  .stCont {
    width: 100%;
  }
  .stTtl {
    font-size: 6.4vw;
    line-height: 1.45;
  }
  .stTxt {
    margin-top: 5.3333333333vw;
    font-size: 4.2666666667vw;
    font-weight: 500;
  }
  .stTxt span {
    font-weight: bold;
  }
  .stImg {
    width: 100%;
    height: auto;
  }
}
.pr {
  position: relative;
  overflow: hidden;
  padding-top: 60px;
  padding-bottom: 60px;
}

.prWrap {
  position: relative;
  padding: 100px 0;
}

.prBg {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  max-width: 1800px;
  width: 95%;
  height: 100%;
  border-radius: 100px;
  background: #f4f8f8;
}
.prBg img {
  height: 100%;
}

.prBg__icon01 {
  position: absolute;
  top: 134px;
  left: 83px;
  width: 221px;
  height: 238px;
}

.prBg__icon02 {
  position: absolute;
  bottom: 220px;
  right: 78px;
  width: 168px;
  height: 174px;
}

.prRd {
  margin-top: 30px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  text-align: center;
}

.prBoxs {
  position: relative;
  gap: 34.5px;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin-top: 60px;
}

.prIcon01 {
  position: absolute;
  top: -112px;
  left: 0;
  width: 220px;
  height: 130px;
  z-index: 1;
}

.prIcon02 {
  position: absolute;
  bottom: -80px;
  right: -80px;
  width: 180px;
  height: 183px;
  z-index: 1;
}

.prBox {
  position: relative;
  overflow: hidden;
  width: calc((100% - 69px) / 3);
  border-radius: 24px;
  background: #fff;
  -webkit-box-shadow: 0 3px 20px 0 rgba(12, 67, 127, 0.1);
          box-shadow: 0 3px 20px 0 rgba(12, 67, 127, 0.1);
}

.prHd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 80px;
  font-size: 26px;
  font-weight: bold;
  letter-spacing: 0.04em;
  color: #fff;
}
.prHd.green {
  background: #6fc992;
}
.prHd.sky {
  background: #3894c9;
}
.prHd.blue {
  background: #005eff;
}

.prTxt {
  padding: 20px 30px 16px;
  font-size: 14px;
  line-height: 1.8;
}

.prSub {
  margin-bottom: 6px;
  padding: 0 30px;
  font-size: 16px;
  font-weight: bold;
}

.prLine {
  width: 100%;
  height: 1px;
  margin-top: 16px;
  background: #e0e2e4;
}

.prNUms {
  gap: 3px;
  padding: 8px 0 15px;
}

.prNum {
  font-size: 50px;
  font-weight: bold;
  font-style: italic;
}

.prYen {
  font-size: 23px;
  font-weight: 900;
}

.prTax {
  margin-top: -2px;
  font-size: 12px;
  font-weight: bold;
  text-align: right;
}

@media (min-width: 1921px) {
  .pr {
    padding-top: 67.5px;
    padding-bottom: 67.5px;
  }
  .prWrap {
    padding: 112.5px 0;
  }
  .prBg {
    max-width: 2025px;
  }
  .prBg__icon01 {
    top: 150.75px;
    left: 93.375px;
    width: 248.625px;
    height: 267.75px;
  }
  .prBg__icon02 {
    bottom: 247.5px;
    right: 87.75px;
    width: 189px;
    height: 195.75px;
  }
  .prRd {
    margin-top: 33.75px;
    font-size: 18px;
  }
  .prBoxs {
    gap: 38.8125px;
    margin-top: 67.5px;
  }
  .prIcon01 {
    top: -126px;
    width: 247.5px;
    height: 146.25px;
  }
  .prIcon02 {
    bottom: -90px;
    right: -90px;
    width: 202.5px;
    height: 205.875px;
  }
  .prBox {
    width: calc((100% - 77.625px) / 3);
    border-radius: 27px;
    -webkit-box-shadow: 0 3.375px 22.5px 0 rgba(12, 67, 127, 0.1);
            box-shadow: 0 3.375px 22.5px 0 rgba(12, 67, 127, 0.1);
  }
  .prHd {
    height: 90px;
    font-size: 29.25px;
  }
  .prTxt {
    padding: 22.5px 33.75px 18px;
    font-size: 15.75px;
  }
  .prSub {
    margin-bottom: 6.75px;
    padding: 0 33.75px;
    font-size: 18px;
  }
  .prLine {
    margin-top: 18px;
  }
  .prNUms {
    gap: 3.375px;
    padding: 9px 0 16.875px;
  }
  .prNum {
    font-size: 56.25px;
  }
  .prYen {
    font-size: 25.875px;
  }
  .prTax {
    margin-top: -2.25px;
    font-size: 13.5px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .pr {
    padding-top: 4.6153846154vw;
    padding-bottom: 4.6153846154vw;
  }
  .prWrap {
    padding: 7.6923076923vw 0;
  }
  .prBg {
    max-width: 138.4615384615vw;
  }
  .prBg__icon01 {
    top: 10.3076923077vw;
    left: 6.3846153846vw;
    width: 17vw;
    height: 18.3076923077vw;
  }
  .prBg__icon02 {
    bottom: 16.9230769231vw;
    right: 6vw;
    width: 12.9230769231vw;
    height: 13.3846153846vw;
  }
  .prRd {
    margin-top: 2.3076923077vw;
    font-size: 1.2307692308vw;
  }
  .prBoxs {
    gap: 2.6538461538vw;
    margin-top: 4.6153846154vw;
  }
  .prIcon01 {
    top: -8.6153846154vw;
    width: 16.9230769231vw;
    height: 10vw;
  }
  .prIcon02 {
    bottom: -6.1538461538vw;
    right: -6.1538461538vw;
    width: 13.8461538462vw;
    height: 14.0769230769vw;
  }
  .prBox {
    width: calc((100% - 5.3076923077vw) / 3);
    border-radius: 1.8461538462vw;
    -webkit-box-shadow: 0 0.2307692308vw 1.5384615385vw 0 rgba(12, 67, 127, 0.1);
            box-shadow: 0 0.2307692308vw 1.5384615385vw 0 rgba(12, 67, 127, 0.1);
  }
  .prHd {
    height: 6.1538461538vw;
    font-size: 2vw;
  }
  .prTxt {
    padding: 1.5384615385vw 2.3076923077vw 1.2307692308vw;
    font-size: 1.0769230769vw;
  }
  .prSub {
    margin-bottom: 0.4615384615vw;
    padding: 0 2.3076923077vw;
    font-size: 1.2307692308vw;
  }
  .prLine {
    margin-top: 1.2307692308vw;
  }
  .prNUms {
    gap: 0.2307692308vw;
    padding: 0.6153846154vw 0 1.1538461538vw;
  }
  .prNum {
    font-size: 3.8461538462vw;
  }
  .prYen {
    font-size: 1.7692307692vw;
  }
  .prTax {
    margin-top: -0.1538461538vw;
    font-size: 0.9230769231vw;
  }
}
@media (max-width: 768px) {
  .pr {
    margin-top: 0;
    margin-bottom: 0;
    padding: 0;
  }
  .prWrap {
    padding-top: 21.3333333333vw;
    padding-bottom: 37.3333333333vw;
  }
  .prBg {
    width: 100%;
    background: unset;
  }
  .prRd {
    margin-top: 5.3333333333vw;
    font-size: 4vw;
    line-height: 1.8;
  }
  .prBoxs {
    gap: 8vw;
    margin-top: 38.4vw;
  }
  .prIcon01 {
    top: -19.2vw;
    width: 37.3333333333vw;
    height: 24vw;
  }
  .prIcon02 {
    bottom: -14.6666666667vw;
    right: -6.6666666667vw;
    width: 33.3333333333vw;
    height: 33.8666666667vw;
  }
  .prBox {
    width: 100%;
    border-radius: 6.4vw;
    -webkit-box-shadow: 0 0.8vw 5.3333333333vw 0 rgba(12, 67, 127, 0.1);
            box-shadow: 0 0.8vw 5.3333333333vw 0 rgba(12, 67, 127, 0.1);
  }
  .prHd {
    height: 21.3333333333vw;
    font-size: 6.4vw;
  }
  .prTxt {
    padding: 5.3333333333vw 5.8666666667vw 4.2666666667vw;
    font-size: 3.7333333333vw;
    line-height: 1.8;
  }
  .prSub {
    margin-bottom: 1.6vw;
    padding: 0 8vw;
    font-size: 4.2666666667vw;
  }
  .prLine {
    margin-top: 4.2666666667vw;
  }
  .prNUms {
    gap: 0.8vw;
    padding: 2.1333333333vw 0 4vw;
  }
  .prNum {
    font-size: 13.3333333333vw;
  }
  .prYen {
    font-size: 6.1333333333vw;
  }
  .prTax {
    margin-top: -0.5333333333vw;
    font-size: 3.2vw;
  }
}
.wo {
  margin-top: 120px;
  padding-bottom: 100px;
}

.woRead {
  margin-top: 40px;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
}

.woBox {
  margin-top: 40px;
  padding: 60px;
  border-radius: 50px;
  -webkit-box-shadow: 10px 10px 20px 0 rgba(12, 67, 127, 0.1);
          box-shadow: 10px 10px 20px 0 rgba(12, 67, 127, 0.1);
  background: #fff;
}

.woFlex {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 40px;
}

.woCont {
  width: calc(100% - 520px);
}

.woSub {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 122px;
  height: 28px;
  border-radius: 80px;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
}
.woSub.green {
  background: #6fc992;
}
.woSub.blue {
  background: #005eff;
}

.woTtl {
  margin-top: 20px;
  font-size: 34px;
  font-weight: bold;
}

.woLink {
  margin-top: 10px;
  font-size: 16px;
  font-weight: 500;
}
.woLink .icon {
  width: 20px;
  height: 20px;
}

.woTxt {
  margin-top: 30px;
  font-size: 14px;
  line-height: 1.85;
}

.woImg {
  width: 480px;
}

.woWide {
  margin-top: 35px;
}

@media (min-width: 1921px) {
  .wo {
    margin-top: 135px;
    padding-bottom: 112.5px;
  }
  .woRead {
    margin-top: 45px;
    font-size: 18px;
  }
  .woBox {
    margin-top: 45px;
    padding: 67.5px;
    border-radius: 56.25px;
    -webkit-box-shadow: 11.25px 11.25px 22.5px 0 rgba(12, 67, 127, 0.1);
            box-shadow: 11.25px 11.25px 22.5px 0 rgba(12, 67, 127, 0.1);
  }
  .woFlex {
    gap: 45px;
  }
  .woCont {
    width: calc(100% - 585px);
  }
  .woSub {
    width: 137.25px;
    height: 31.5px;
    border-radius: 90px;
    font-size: 14.625px;
  }
  .woTtl {
    margin-top: 22.5px;
    font-size: 38.25px;
  }
  .woLink {
    margin-top: 11.25px;
    font-size: 18px;
  }
  .woLink .icon {
    width: 22.5px;
    height: 22.5px;
  }
  .woTxt {
    margin-top: 33.75px;
    font-size: 15.75px;
  }
  .woImg {
    width: 540px;
  }
  .woWide {
    margin-top: 39.375px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .wo {
    margin-top: 9.2307692308vw;
    padding-bottom: 7.6923076923vw;
  }
  .woRead {
    margin-top: 3.0769230769vw;
    font-size: 1.2307692308vw;
  }
  .woBox {
    margin-top: 3.0769230769vw;
    padding: 4.6153846154vw;
    border-radius: 3.8461538462vw;
    -webkit-box-shadow: 0.7692307692vw 0.7692307692vw 1.5384615385vw 0 rgba(12, 67, 127, 0.1);
            box-shadow: 0.7692307692vw 0.7692307692vw 1.5384615385vw 0 rgba(12, 67, 127, 0.1);
  }
  .woFlex {
    gap: 3.0769230769vw;
  }
  .woCont {
    width: calc(100% - 40vw);
  }
  .woSub {
    width: 9.3846153846vw;
    height: 2.1538461538vw;
    border-radius: 6.1538461538vw;
    font-size: 1vw;
  }
  .woTtl {
    margin-top: 1.5384615385vw;
    font-size: 2.6153846154vw;
  }
  .woLink {
    margin-top: 0.7692307692vw;
    font-size: 1.2307692308vw;
  }
  .woLink .icon {
    width: 1.5384615385vw;
    height: 1.5384615385vw;
  }
  .woTxt {
    margin-top: 2.3076923077vw;
    font-size: 1.0769230769vw;
  }
  .woImg {
    width: 36.9230769231vw;
  }
  .woWide {
    margin-top: 2.6923076923vw;
  }
}
@media (max-width: 768px) {
  .wo {
    margin-top: 21.3333333333vw;
    padding-bottom: 21.3333333333vw;
  }
  .woRead {
    margin-top: 5.3333333333vw;
    margin-bottom: 18.6666666667vw;
    font-size: 4vw;
  }
  .woBox {
    width: calc(100% + 13.3333333333vw);
    margin-top: 8vw;
    margin-left: -6.6666666667vw;
    padding: 6.6666666667vw;
    border-radius: 6.4vw;
    -webkit-box-shadow: 2.6666666667vw 2.6666666667vw 5.3333333333vw 0 rgba(12, 67, 127, 0.1);
            box-shadow: 2.6666666667vw 2.6666666667vw 5.3333333333vw 0 rgba(12, 67, 127, 0.1);
  }
  .woFlex {
    gap: 5.3333333333vw;
  }
  .woCont {
    width: 100%;
  }
  .woSub {
    width: 32.5333333333vw;
    height: 7.4666666667vw;
    border-radius: 21.3333333333vw;
    font-size: 3.4666666667vw;
  }
  .woTtl {
    margin-top: 5.3333333333vw;
    font-size: 8vw;
  }
  .woLink {
    margin-top: 2.6666666667vw;
    font-size: 4vw;
  }
  .woLink .icon {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .woTxt {
    margin-top: 0;
    font-size: 3.7333333333vw;
    line-height: 1.85;
  }
  .woImg {
    width: 100%;
  }
  .woWide {
    margin-top: 8vw;
  }
}
.rc {
  position: relative;
  overflow: hidden;
  padding-top: 100px;
  padding-bottom: 100px;
  background: #fff;
}

.rcTtl {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 10px auto 0;
  padding: 0 8px;
  font-size: 40px;
  font-weight: bold;
  color: #fff;
  background: -webkit-gradient(linear, left top, right top, from(#3791f4), to(#aecc48));
  background: -webkit-linear-gradient(left, #3791f4 0%, #aecc48 100%);
  background: linear-gradient(to right, #3791f4 0%, #aecc48 100%);
}

.rcRead {
  margin-top: 30px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  text-align: center;
}

.rcImg {
  position: relative;
  margin: 70px auto 0;
  width: 731px;
}
.rcImg img {
  position: relative;
  z-index: 1;
}

.rc__scroll {
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  top: 125px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 233px;
  font-weight: bold;
  color: #f6f6f6;
  white-space: nowrap;
}
.rc__scroll ul {
  margin: 0;
  padding: 0;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-animation: flowing2 60s linear infinite;
          animation: flowing2 60s linear infinite;
}
.rc__scroll ul li {
  display: inline-block;
  margin: 0 20px;
  white-space: nowrap;
}

@-webkit-keyframes flowing2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}

@keyframes flowing2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
.rcBoxs {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 29px;
  margin-top: 80px;
}

.rcBox {
  width: calc((100% - 87px) / 4);
  padding: 30px 20px;
  border-radius: 24px;
  background: #f4f4f4;
}

.rcSub {
  width: 183px;
  height: 40px;
  margin: 0 auto;
  border-radius: 80px;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
}
.rcSub.green {
  background: #6fc992;
}
.rcSub.sky {
  background: #4aa5b6;
}
.rcSub.blue {
  background: #2582db;
}
.rcSub.bkue-dark {
  background: #005eff;
}

.rcTxt {
  margin-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #fff;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.8;
}

.rcList {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 20px auto 0;
}
.rcList li {
  position: relative;
  margin-top: 10px;
  padding-left: 25px;
  font-size: 15px;
  font-weight: bold;
}
.rcList li::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 15px;
  height: 15px;
  background: url(../img/icon/icon_check.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

@media (min-width: 1921px) {
  .rc {
    padding-top: 112.5px;
    padding-bottom: 112.5px;
  }
  .rcTtl {
    margin: 11.25px auto 0;
    padding: 0 9px;
    font-size: 45px;
  }
  .rcRead {
    margin-top: 33.75px;
    font-size: 18px;
  }
  .rcImg {
    margin: 78.75px auto 0;
    width: 822.375px;
  }
  .rc__scroll {
    top: 140.625px;
    font-size: 262.125px;
  }
  .rc__scroll p {
    margin: 0 22.5px;
  }
  .rcBoxs {
    gap: 32.625px;
    margin-top: 90px;
  }
  .rcBox {
    width: calc((100% - 97.875px) / 4);
    padding: 33.75px 22.5px;
    border-radius: 27px;
  }
  .rcSub {
    width: 205.875px;
    height: 45px;
    border-radius: 90px;
    font-size: 18px;
  }
  .rcTxt {
    margin-top: 22.5px;
    padding-bottom: 22.5px;
    font-size: 16.875px;
  }
  .rcList {
    margin: 22.5px auto 0;
  }
  .rcList li {
    margin-top: 11.25px;
    padding-left: 28.125px;
    font-size: 16.875px;
  }
  .rcList li::after {
    width: 16.875px;
    height: 16.875px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .rc {
    padding-top: 7.6923076923vw;
    padding-bottom: 7.6923076923vw;
  }
  .rcTtl {
    margin: 0.7692307692vw auto 0;
    padding: 0 0.6153846154vw;
    font-size: 3.0769230769vw;
  }
  .rcRead {
    margin-top: 2.3076923077vw;
    font-size: 1.2307692308vw;
  }
  .rcImg {
    margin: 5.3846153846vw auto 0;
    width: 56.2307692308vw;
  }
  .rc__scroll {
    top: 9.6153846154vw;
    font-size: 17.9230769231vw;
  }
  .rc__scroll p {
    margin: 0 1.5384615385vw;
  }
  .rcBoxs {
    gap: 2.2307692308vw;
    margin-top: 6.1538461538vw;
  }
  .rcBox {
    width: calc((100% - 6.6923076923vw) / 4);
    padding: 2.3076923077vw 1.5384615385vw;
    border-radius: 1.8461538462vw;
  }
  .rcSub {
    width: 14.0769230769vw;
    height: 3.0769230769vw;
    border-radius: 6.1538461538vw;
    font-size: 1.2307692308vw;
  }
  .rcTxt {
    margin-top: 1.5384615385vw;
    padding-bottom: 1.5384615385vw;
    font-size: 1.1538461538vw;
  }
  .rcList {
    margin: 1.5384615385vw auto 0;
  }
  .rcList li {
    margin-top: 0.7692307692vw;
    padding-left: 1.9230769231vw;
    font-size: 1.1538461538vw;
  }
  .rcList li::after {
    width: 1.1538461538vw;
    height: 1.1538461538vw;
  }
}
@media (max-width: 768px) {
  .rc {
    padding-top: 21.3333333333vw;
    padding-bottom: 21.3333333333vw;
  }
  .rcTtl {
    margin: 2.6666666667vw auto 0;
    padding: 0 2.6666666667vw;
    font-size: 6.6666666667vw;
  }
  .rcRead {
    margin-top: 8vw;
    font-size: 4vw;
    line-height: 1.8;
  }
  .rcImg {
    margin: 16vw auto 0;
    width: 86.6666666667vw;
  }
  .rc__scroll {
    top: 14.6666666667vw;
    font-size: 21.3333333333vw;
  }
  .rc__scroll p {
    margin: 0 2.6666666667vw;
  }
  .rcBoxs {
    gap: 8vw;
    margin-top: 13.3333333333vw;
  }
  .rcBox {
    width: 100%;
    padding: 8vw 5.3333333333vw;
    border-radius: 6.4vw;
  }
  .rcSub {
    width: 76vw;
    height: 12.2666666667vw;
    border-radius: 21.3333333333vw;
    font-size: 4.2666666667vw;
  }
  .rcTxt {
    margin-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
    font-size: 4vw;
  }
  .rcList {
    margin: 5.3333333333vw auto 0;
    margin: 5.3333333333vw 0 0 3.2vw;
  }
  .rcList li {
    margin-top: 2.6666666667vw;
    padding-left: 6.6666666667vw;
    font-size: 4vw;
  }
  .rcList li::after {
    width: 4vw;
    height: 4vw;
  }
}
.su {
  position: relative;
  padding-top: 100px;
  padding-bottom: 100px;
}

.suTop {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.suTtls .topSub {
  text-align: left;
}
.suTtls .topTtl {
  text-align: left;
}

.suRead {
  width: 670px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
}
.suRead span {
  font-weight: bold;
  color: var(--blue);
}

.suBoxs {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 50px;
  margin-top: 60px;
}

.suBox {
  width: calc((100% - 50px) / 2);
  padding: 30px;
  border-radius: 24px;
  background: #fff;
  -webkit-box-shadow: 10px 10px 20px 0 rgba(12, 67, 127, 0.1);
          box-shadow: 10px 10px 20px 0 rgba(12, 67, 127, 0.1);
}

.suBox__Hd {
  gap: 20px;
}
.suBox__Hd .icon {
  width: 90px;
}
.suBox__Hd .ttl {
  width: calc(100% - 110px);
  font-size: 26px;
  font-weight: bold;
  padding-bottom: 15px;
  border-bottom: 1px solid #d2dfef;
}

.suTxt {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.71;
}

@media (min-width: 1921px) {
  .su {
    padding-top: 112.5px;
    padding-bottom: 112.5px;
  }
  .suRead {
    width: 753.75px;
    font-size: 18px;
  }
  .suBoxs {
    gap: 56.25px;
    margin-top: 67.5px;
  }
  .suBox {
    width: calc((100% - 56.25px) / 2);
    padding: 33.75px;
    border-radius: 27px;
    -webkit-box-shadow: 11.25px 11.25px 22.5px 0 rgba(12, 67, 127, 0.1);
            box-shadow: 11.25px 11.25px 22.5px 0 rgba(12, 67, 127, 0.1);
  }
  .suBox__Hd {
    gap: 22.5px;
  }
  .suBox__Hd .icon {
    width: 101.25px;
  }
  .suBox__Hd .ttl {
    width: calc(100% - 123.75px);
    font-size: 29.25px;
    padding-bottom: 16.875px;
  }
  .suTxt {
    font-size: 15.75px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .su {
    padding-top: 7.6923076923vw;
    padding-bottom: 7.6923076923vw;
  }
  .suRead {
    width: 51.5384615385vw;
    font-size: 1.2307692308vw;
  }
  .suBoxs {
    gap: 3.8461538462vw;
    margin-top: 4.6153846154vw;
  }
  .suBox {
    width: calc((100% - 3.8461538462vw) / 2);
    padding: 2.3076923077vw;
    border-radius: 1.8461538462vw;
    -webkit-box-shadow: 0.7692307692vw 0.7692307692vw 1.5384615385vw 0 rgba(12, 67, 127, 0.1);
            box-shadow: 0.7692307692vw 0.7692307692vw 1.5384615385vw 0 rgba(12, 67, 127, 0.1);
  }
  .suBox__Hd {
    gap: 1.5384615385vw;
  }
  .suBox__Hd .icon {
    width: 6.9230769231vw;
  }
  .suBox__Hd .ttl {
    width: calc(100% - 8.4615384615vw);
    font-size: 2vw;
    padding-bottom: 1.1538461538vw;
  }
  .suTxt {
    font-size: 1.0769230769vw;
  }
}
@media (max-width: 768px) {
  .su {
    padding-top: 21.3333333333vw;
    padding-bottom: 21.3333333333vw;
  }
  .suTop {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .suTtls .topSub {
    text-align: center;
  }
  .suTtls .topTtl {
    text-align: left;
  }
  .suRead {
    width: 100%;
    margin-top: 5.3333333333vw;
    font-size: 4vw;
    line-height: 1.86;
    text-align: center;
  }
  .suBoxs {
    gap: 8vw;
    margin-top: 16vw;
  }
  .suBox {
    width: 100%;
    padding: 8vw 5.3333333333vw;
    border-radius: 3.2vw;
    -webkit-box-shadow: 2.6666666667vw 2.6666666667vw 5.3333333333vw 0 rgba(12, 67, 127, 0.1);
            box-shadow: 2.6666666667vw 2.6666666667vw 5.3333333333vw 0 rgba(12, 67, 127, 0.1);
  }
  .suBox__Hd {
    gap: 2.6666666667vw;
  }
  .suBox__Hd .icon {
    width: 18.6666666667vw;
  }
  .suBox__Hd .ttl {
    width: calc(100% - 21.3333333333vw);
    font-size: 5.3333333333vw;
    padding-bottom: 2.6666666667vw;
  }
  .suTxt {
    margin-top: 2.6666666667vw;
    font-size: 3.7333333333vw;
  }
}
.fl {
  position: relative;
  padding-top: 100px;
  background: #fff;
}

.flFlex {
  position: relative;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 50px;
  width: 815px;
  margin: 60px auto 0;
  z-index: 1;
}

.flImg {
  width: 50px;
}

.flMain {
  position: relative;
  padding-top: 30px;
}
.flMain::before {
  content: "";
  position: absolute;
  top: 50px;
  left: 20px;
  width: 8px;
  height: calc(100% - 120px);
  background: -webkit-gradient(linear, left bottom, left top, from(#f0f6ff), to(#f0f9f3));
  background: -webkit-linear-gradient(bottom, #f0f6ff 0%, #f0f9f3 100%);
  background: linear-gradient(0deg, #f0f6ff 0%, #f0f9f3 100%);
}

.flBox {
  position: relative;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 30px;
  margin-top: 30px;
}
.flBox:first-child {
  margin-top: 0;
}

.flIcon {
  width: 50px;
  height: 50px;
  border: 1px solid;
  border-radius: 50%;
  font-size: 20px;
  font-weight: bold;
  background: #fff;
}
.flIcon.flIcon01 {
  color: #6fc992;
  border-color: #6fc992;
}
.flIcon.flIcon02 {
  color: #6fc992;
  border-color: #6fc992;
}
.flIcon.flIcon03 {
  color: #4aa5b6;
  border-color: #4aa5b6;
}
.flIcon.flIcon04 {
  color: #4aa5b6;
  border-color: #4aa5b6;
}
.flIcon.flIcon05 {
  color: #2582db;
  border-color: #2582db;
}
.flIcon.flIcon06 {
  color: #2582db;
  border-color: #2582db;
}
.flIcon.flIcon07 {
  color: #005eff;
  border-color: #005eff;
}

.flCont {
  width: calc(100% - 80px);
  padding-top: 5px;
}

.flTtl {
  font-size: 24px;
  font-weight: bold;
}

.flTxt {
  margin-top: 10px;
  font-size: 15px;
  line-height: 1.66;
}

@media (min-width: 1921px) {
  .fl {
    padding-top: 112.5px;
  }
  .flFlex {
    gap: 56.25px;
    width: 916.875px;
    margin: 67.5px auto 0;
  }
  .flImg {
    width: 56.25px;
  }
  .flMain {
    padding-top: 33.75px;
  }
  .flMain::before {
    top: 56.25px;
    left: 22.5px;
    width: 9px;
    height: calc(100% - 135px);
  }
  .flBox {
    gap: 33.75px;
    margin-top: 33.75px;
  }
  .flIcon {
    width: 56.25px;
    height: 56.25px;
    font-size: 22.5px;
  }
  .flCont {
    width: calc(100% - 90px);
    padding-top: 5.625px;
  }
  .flTtl {
    font-size: 27px;
  }
  .flTxt {
    margin-top: 11.25px;
    font-size: 16.875px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .fl {
    padding-top: 7.6923076923vw;
  }
  .flFlex {
    gap: 3.8461538462vw;
    width: 62.6923076923vw;
    margin: 4.6153846154vw auto 0;
  }
  .flImg {
    width: 3.8461538462vw;
  }
  .flMain {
    padding-top: 2.3076923077vw;
  }
  .flMain::before {
    top: 3.8461538462vw;
    left: 1.5384615385vw;
    width: 0.6153846154vw;
    height: calc(100% - 9.2307692308vw);
  }
  .flBox {
    gap: 2.3076923077vw;
    margin-top: 2.3076923077vw;
  }
  .flIcon {
    width: 3.8461538462vw;
    height: 3.8461538462vw;
    font-size: 1.5384615385vw;
  }
  .flCont {
    width: calc(100% - 6.1538461538vw);
    padding-top: 0.3846153846vw;
  }
  .flTtl {
    font-size: 1.8461538462vw;
  }
  .flTxt {
    margin-top: 0.7692307692vw;
    font-size: 1.1538461538vw;
  }
}
@media (max-width: 768px) {
  .fl {
    padding-top: 21.3333333333vw;
    padding-bottom: 50.6666666667vw;
  }
  .flFlex {
    gap: 3.2vw;
    width: 100%;
    margin: 16vw auto 0;
  }
  .flImg {
    width: 8.2666666667vw;
  }
  .flMain {
    width: calc(100% - 8.2666666667vw - 3.2vw);
    padding-top: 0;
  }
  .flMain::before {
    top: 8vw;
    left: 5.3333333333vw;
    width: 2.1333333333vw;
    height: calc(100% - 42.6666666667vw);
  }
  .flBox {
    gap: 2.6666666667vw;
    margin-top: 8vw;
  }
  .flIcon {
    width: 12vw;
    height: 12vw;
    font-size: 5.3333333333vw;
  }
  .flCont {
    width: calc(100% - 14.6666666667vw);
    padding-top: 1.8666666667vw;
  }
  .flTtl {
    font-size: 5.3333333333vw;
  }
  .flTxt {
    margin-top: 3.2vw;
    font-size: 4vw;
  }
}
.faq {
  position: relative;
  margin-top: 335px;
  padding-bottom: 140px;
  background: #fff;
}

.faqBg {
  position: absolute;
  top: -450px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
}

.faqLists {
  margin: 70px auto 0;
  width: 815px;
}

.faqList {
  margin-top: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #e0e2e4;
}

.faqQues {
  gap: 5px;
  padding-right: 15px;
  font-size: 18px;
  font-weight: bold;
  color: var(--blue);
  cursor: pointer;
}
.faqQues .icon {
  width: 27px;
  font-size: 27px;
  font-weight: bold;
}
.faqQues p {
  width: calc(100% - 27px - 13px - 10px);
}
.faqQues .plus {
  position: relative;
  margin-left: auto;
  width: 13px;
  height: 8px;
}
.faqQues .plus::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  border-right: 2px solid var(--blue);
  border-bottom: 2px solid var(--blue);
  top: 50%;
  left: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}
.faqQues.active .plus::after {
  -webkit-transform: translateY(-50%) rotate(-135deg);
          transform: translateY(-50%) rotate(-135deg);
}

.faqAns {
  display: none;
  padding-top: 20px;
}

.faqAns__flex {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 5px;
  padding: 0 5px;
  font-weight: 500;
  font-size: 16px;
}
.faqAns__flex .icon {
  width: 18px;
  font-size: 18px;
  font-weight: bold;
}
.faqAns__flex p {
  width: calc(100% - 23px);
}

@media (min-width: 1921px) {
  .faq {
    margin-top: 376.875px;
    padding-bottom: 157.5px;
  }
  .faqBg {
    top: -506.25px;
  }
  .faqLists {
    margin: 78.75px auto 0;
    width: 916.875px;
  }
  .faqList {
    margin-top: 33.75px;
    padding-bottom: 33.75px;
  }
  .faqQues {
    gap: 5.625px;
    padding-right: 16.875px;
    font-size: 20.25px;
  }
  .faqQues .icon {
    width: 30.375px;
    font-size: 30.375px;
  }
  .faqQues p {
    width: calc(100% - 30.375px - 14.625px - 11.25px);
  }
  .faqQues .plus {
    width: 14.625px;
    height: 9px;
  }
  .faqQues .plus::after {
    width: 9px;
    height: 9px;
    border-right: 2.25px solid var(--blue);
    border-bottom: 2.25px solid var(--blue);
  }
  .faqAns {
    padding-top: 22.5px;
  }
  .faqAns__flex {
    gap: 5.625px;
    padding: 0 5.625px;
    font-size: 18px;
  }
  .faqAns__flex .icon {
    width: 20.25px;
    font-size: 20.25px;
  }
  .faqAns__flex p {
    width: calc(100% - 25.875px);
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .faq {
    margin-top: 25.7692307692vw;
    padding-bottom: 10.7692307692vw;
  }
  .faqBg {
    top: -34.6153846154vw;
  }
  .faqLists {
    margin: 5.3846153846vw auto 0;
    width: 62.6923076923vw;
  }
  .faqList {
    margin-top: 2.3076923077vw;
    padding-bottom: 2.3076923077vw;
  }
  .faqQues {
    gap: 0.3846153846vw;
    padding-right: 1.1538461538vw;
    font-size: 1.3846153846vw;
  }
  .faqQues .icon {
    width: 2.0769230769vw;
    font-size: 2.0769230769vw;
  }
  .faqQues p {
    width: calc(100% - 2.0769230769vw - 1vw - 0.7692307692vw);
  }
  .faqQues .plus {
    width: 1vw;
    height: 0.6153846154vw;
  }
  .faqQues .plus::after {
    width: 0.6153846154vw;
    height: 0.6153846154vw;
    border-right: 0.1538461538vw solid var(--blue);
    border-bottom: 0.1538461538vw solid var(--blue);
  }
  .faqAns {
    padding-top: 1.5384615385vw;
  }
  .faqAns__flex {
    gap: 0.3846153846vw;
    padding: 0 0.3846153846vw;
    font-size: 1.2307692308vw;
  }
  .faqAns__flex .icon {
    width: 1.3846153846vw;
    font-size: 1.3846153846vw;
  }
  .faqAns__flex p {
    width: calc(100% - 1.7692307692vw);
  }
}
@media (max-width: 768px) {
  .faq {
    position: relative;
    margin-top: 0;
    padding-top: 10.6666666667vw;
    padding-bottom: 21.3333333333vw;
  }
  .faqBg {
    top: -40vw;
  }
  .faqLists {
    margin: 16vw auto 0;
    width: 100%;
  }
  .faqList {
    margin-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
  }
  .faqQues {
    position: relative;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 1.8666666667vw;
    padding-right: 0;
    font-size: 4.2666666667vw;
  }
  .faqQues .icon {
    width: 6.6666666667vw;
    font-size: 6.4vw;
    line-height: 1;
  }
  .faqQues p {
    width: calc(100% - 1.8666666667vw - 6.6666666667vw);
    padding-right: 6.6666666667vw;
  }
  .faqQues .plus {
    width: 3.4666666667vw;
    height: 2.1333333333vw;
    top: 2.6666666667vw;
    right: 0;
  }
  .faqQues .plus::after {
    width: 1.8666666667vw;
    height: 1.8666666667vw;
    border-right: 0.5333333333vw solid var(--blue);
    border-bottom: 0.5333333333vw solid var(--blue);
  }
  .faqAns {
    display: none;
    padding-top: 2.6666666667vw;
  }
  .faqAns__flex {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 1.3333333333vw;
    padding: 0;
    font-size: 4vw;
  }
  .faqAns__flex .icon {
    width: 4.8vw;
    font-size: 4.8vw;
  }
  .faqAns__flex p {
    width: calc(100% - 6.1333333333vw);
  }
}
.col {
  position: relative;
  overflow: hidden;
  padding-top: 80px;
  padding-bottom: 120px;
  background: #fff;
}

.colBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 540px;
  background: #e7f0f2;
}

.colIcon {
  position: absolute;
  top: 0;
  right: 20px;
  width: 201px;
  height: 266px;
}

.colLogo {
  width: 735px;
  height: 230px;
  margin-left: -170px;
}

.colWrap {
  width: 100vw;
  margin-left: -170px;
  padding: 140px 0 60px 170px;
  border-radius: 80px 0 0 0;
  background: #fff;
}

.colTop {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 90px;
}

.colTop__ttls .topSub {
  text-align: left;
}
.colTop__ttls .topTtl {
  text-align: left;
}

.colRead {
  font-size: 16px;
  font-weight: 500;
}

.colLists {
  height: 395px;
  margin-top: 60px;
}

.colList {
  width: 530px;
  margin-right: 30px;
}

.colList__img {
  position: relative;
  overflow: hidden;
  width: 530px;
  height: 327px;
  border-radius: 8px;
}
.colList__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.colList__ttl {
  margin-top: 10px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.45;
}

.colBtn {
  width: 313px;
  height: 64px;
  margin: 0 auto;
  border: 1px solid var(--blue);
  border-radius: 40px;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.02em;
  color: var(--blue);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .colBtn:hover {
    color: #fff;
    background: var(--blue);
  }
}

@media (min-width: 1921px) {
  .col {
    padding-top: 90px;
    padding-bottom: 135px;
  }
  .colBg {
    height: 607.5px;
  }
  .colIcon {
    right: 22.5px;
    width: 226.125px;
    height: 299.25px;
  }
  .colLogo {
    width: 826.875px;
    height: 258.75px;
    margin-left: -191.25px;
  }
  .colWrap {
    margin-left: -191.25px;
    padding: 157.5px 0 67.5px 191.25px;
    border-radius: 90px 0 0 0;
  }
  .colTop {
    gap: 101.25px;
  }
  .colRead {
    font-size: 18px;
    font-weight: 500;
  }
  .colLists {
    height: 444.375px;
    margin-top: 67.5px;
  }
  .colList {
    width: 596.25px;
    margin-right: 33.75px;
  }
  .colList__img {
    width: 596.25px;
    height: 367.875px;
    border-radius: 9px;
  }
  .colList__ttl {
    margin-top: 11.25px;
    font-size: 22.5px;
  }
  .colBtn {
    width: 352.125px;
    height: 72px;
    border-radius: 45px;
    font-size: 22.5px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .col {
    padding-top: 6.1538461538vw;
    padding-bottom: 9.2307692308vw;
  }
  .colBg {
    height: 41.5384615385vw;
  }
  .colIcon {
    right: 1.5384615385vw;
    width: 15.4615384615vw;
    height: 20.4615384615vw;
  }
  .colLogo {
    width: 56.5384615385vw;
    height: 17.6923076923vw;
    margin-left: -13.0769230769vw;
  }
  .colWrap {
    margin-left: -13.0769230769vw;
    padding: 10.7692307692vw 0 4.6153846154vw 13.0769230769vw;
    border-radius: 6.1538461538vw 0 0 0;
  }
  .colTop {
    gap: 6.9230769231vw;
  }
  .colRead {
    font-size: 1.2307692308vw;
    font-weight: 500;
  }
  .colLists {
    height: 30.3846153846vw;
    margin-top: 4.6153846154vw;
  }
  .colList {
    width: 40.7692307692vw;
    margin-right: 2.3076923077vw;
  }
  .colList__img {
    width: 40.7692307692vw;
    height: 25.1538461538vw;
    border-radius: 0.6153846154vw;
  }
  .colList__ttl {
    margin-top: 0.7692307692vw;
    font-size: 1.5384615385vw;
  }
  .colBtn {
    width: 24.0769230769vw;
    height: 4.9230769231vw;
    border-radius: 3.0769230769vw;
    font-size: 1.5384615385vw;
  }
}
@media (max-width: 768px) {
  .col {
    padding-top: 17.3333333333vw;
    padding-bottom: 21.3333333333vw;
  }
  .colBg {
    height: 144vw;
  }
  .colIcon {
    top: 5.3333333333vw;
    right: 6.6666666667vw;
    width: 14.1333333333vw;
    height: 18.9333333333vw;
  }
  .colLogo {
    width: 66.1333333333vw;
    height: 20.5333333333vw;
    margin-left: 0;
  }
  .colWrap {
    width: 100vw;
    margin-left: -6.6666666667vw;
    padding: 20vw 0 13.3333333333vw 0;
    border-radius: 21.3333333333vw 0 0 0;
  }
  .colTop {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 5.3333333333vw;
    padding-left: 6.6666666667vw;
  }
  .colRead {
    font-size: 4vw;
  }
  .colLists {
    height: 72.8vw;
    margin-top: 16vw;
  }
  .colList {
    width: 86.6666666667vw;
    margin: 0 6.6666666667vw;
  }
  .colList__img {
    width: 86.6666666667vw;
    height: 53.3333333333vw;
    border-radius: 2.1333333333vw;
  }
  .colList__ttl {
    margin-top: 2.1333333333vw;
    font-size: 4.8vw;
    line-height: 1.8;
  }
  .colBtn {
    width: 69.0666666667vw;
    height: 16.2666666667vw;
    border-radius: 10.6666666667vw;
    font-size: 4.8vw;
  }
}
.cm {
  padding-top: 100px;
  padding-bottom: 80px;
}

.cmTop {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 4px;
}
.cmTop .icon {
  width: 146px;
  height: 46px;
}
.cmTop p {
  font-size: 35px;
  font-weight: bold;
}

.cmFlex {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 112px;
  margin-top: 50px;
}

.cmTxt {
  width: calc(100% - 112px - 328px);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.8;
}
.cmTxt span {
  font-weight: bold;
}

.cmImg {
  width: 328px;
}

@media (min-width: 1921px) {
  .cm {
    padding-top: 112.5px;
    padding-bottom: 90px;
  }
  .cmTop {
    gap: 4.5px;
  }
  .cmTop .icon {
    width: 164.25px;
    height: 51.75px;
  }
  .cmTop p {
    font-size: 39.375px;
  }
  .cmFlex {
    gap: 126px;
    margin-top: 56.25px;
  }
  .cmTxt {
    width: calc(100% - 126px - 369px);
    font-size: 18px;
  }
  .cmImg {
    width: 369px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .cm {
    padding-top: 7.6923076923vw;
    padding-bottom: 6.1538461538vw;
  }
  .cmTop {
    gap: 0.3076923077vw;
  }
  .cmTop .icon {
    width: 11.2307692308vw;
    height: 3.5384615385vw;
  }
  .cmTop p {
    font-size: 2.6923076923vw;
  }
  .cmFlex {
    gap: 8.6153846154vw;
    margin-top: 3.8461538462vw;
  }
  .cmTxt {
    width: calc(100% - 8.6153846154vw - 25.2307692308vw);
    font-size: 1.2307692308vw;
  }
  .cmImg {
    width: 25.2307692308vw;
  }
}
@media (max-width: 768px) {
  .cm {
    padding-top: 21.3333333333vw;
    padding-bottom: 21.3333333333vw;
  }
  .cmTop {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0.8vw;
  }
  .cmTop .icon {
    width: 35.2vw;
    height: 10.9333333333vw;
  }
  .cmTop p {
    font-size: 8.2666666667vw;
  }
  .cmFlex {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 10.6666666667vw;
    margin-top: 9.3333333333vw;
  }
  .cmTxt {
    width: 100%;
    font-size: 4.2666666667vw;
  }
  .cmImg {
    width: 77.3333333333vw;
  }
}
.ct {
  position: relative;
  padding-top: 120px;
  padding-bottom: 120px;
  background: #f4f4f4;
}

.ctRead {
  margin-top: 30px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.77;
  text-align: center;
}

.ctMain {
  width: 815px;
  margin: 60px 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: 18px;
  font-weight: bold;
}
.ctTtl .must {
  width: 34px;
  height: 22px;
  border-radius: 5px;
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  background: #f02727;
}

.ctRadio {
  width: 535px;
  gap: 30px;
}
.ctRadio input {
  accent-color: var(--blue);
}
.ctRadio label {
  font-size: 16px;
}

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

.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: #d4d4d4;
}

.ctAgree {
  margin-top: 35px;
  font-size: 18px;
  font-weight: bold;
  gap: 15px;
}
.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;
  margin: 0;
  border: 1px solid #d0d0d0;
  border-radius: 4px;
  -webkit-box-shadow: 0 0 0 0 transparent;
          box-shadow: 0 0 0 0 transparent;
  background: #ffffff;
}

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

.ctBtn button {
  position: relative;
  width: 300px;
  height: 64px;
  margin: 60px auto 0;
  border: none;
  border-radius: 40px;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.02em;
  color: #fff;
  background: #367dff;
  -webkit-box-shadow: 0 5px 6px 0 rgba(77, 116, 189, 0.3);
          box-shadow: 0 5px 6px 0 rgba(77, 116, 189, 0.3);
  cursor: pointer;
}

@media (min-width: 1921px) {
  .ct {
    padding-top: 135px;
    padding-bottom: 135px;
  }
  .ctRead {
    margin-top: 33.75px;
    font-size: 20.25px;
  }
  .ctMain {
    width: 916.875px;
    margin: 67.5px auto 0;
  }
  .ctFlex {
    margin-top: 40.5px;
  }
  .ctTtl {
    gap: 11.25px;
  }
  .ctTtl .ttl {
    font-size: 20.25px;
  }
  .ctTtl .must {
    width: 38.25px;
    height: 24.75px;
    border-radius: 5.625px;
    font-size: 13.5px;
  }
  .ctRadio {
    width: 601.875px;
    gap: 33.75px;
  }
  .ctRadio label {
    font-size: 18px;
  }
  .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 #333;
    border-bottom: 2.25px solid #333;
    right: 22.5px;
  }
  .ctAgree {
    margin-top: 39.375px;
    font-size: 20.25px;
    gap: 16.875px;
  }
  .ctAgree span {
    width: 27px;
    height: 27px;
  }
  .ctAgree input[type=checkbox] {
    width: 27px;
    height: 27px;
    border-radius: 4.5px;
  }
  .formAgree__error,
  .ctAgree__error {
    margin-top: 5.625px;
    font-size: 18px;
  }
  .ctBtn button {
    width: 337.5px;
    height: 72px;
    margin: 67.5px auto 0;
    border-radius: 45px;
    font-size: 22.5px;
    -webkit-box-shadow: 0 5.625px 6.75px 0 rgba(77, 116, 189, 0.3);
            box-shadow: 0 5.625px 6.75px 0 rgba(77, 116, 189, 0.3);
  }
}
@media screen and (min-width: 769px) and (max-width: 1339px) {
  .ct {
    padding-top: 9.2307692308vw;
    padding-bottom: 9.2307692308vw;
  }
  .ctRead {
    margin-top: 2.3076923077vw;
    font-size: 1.3846153846vw;
  }
  .ctMain {
    width: 62.6923076923vw;
    margin: 4.6153846154vw auto 0;
  }
  .ctFlex {
    margin-top: 2.7692307692vw;
  }
  .ctTtl {
    gap: 0.7692307692vw;
  }
  .ctTtl .ttl {
    font-size: 1.3846153846vw;
  }
  .ctTtl .must {
    width: 2.6153846154vw;
    height: 1.6923076923vw;
    border-radius: 0.3846153846vw;
    font-size: 0.9230769231vw;
  }
  .ctRadio {
    width: 41.1538461538vw;
    gap: 2.3076923077vw;
  }
  .ctRadio label {
    font-size: 1.2307692308vw;
  }
  .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 #333;
    border-bottom: 0.1538461538vw solid #333;
    right: 1.5384615385vw;
  }
  .ctAgree {
    margin-top: 2.6923076923vw;
    font-size: 1.3846153846vw;
    gap: 1.1538461538vw;
  }
  .ctAgree span {
    width: 1.8461538462vw;
    height: 1.8461538462vw;
  }
  .ctAgree input[type=checkbox] {
    width: 1.8461538462vw;
    height: 1.8461538462vw;
    border-radius: 0.3076923077vw;
  }
  .formAgree__error,
  .ctAgree__error {
    margin-top: 0.3846153846vw;
    font-size: 1.2307692308vw;
  }
  .ctBtn button {
    width: 23.0769230769vw;
    height: 4.9230769231vw;
    margin: 4.6153846154vw auto 0;
    border-radius: 3.0769230769vw;
    font-size: 1.5384615385vw;
    -webkit-box-shadow: 0 0.3846153846vw 0.4615384615vw 0 rgba(77, 116, 189, 0.3);
            box-shadow: 0 0.3846153846vw 0.4615384615vw 0 rgba(77, 116, 189, 0.3);
  }
}
@media (max-width: 768px) {
  .ct {
    padding-top: 21.3333333333vw;
    padding-bottom: 21.3333333333vw;
  }
  .ctRead {
    margin-top: 8vw;
    font-size: 4vw;
    line-height: 2.1;
  }
  .ctMain {
    width: 100%;
    margin: 17.3333333333vw 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;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 4vw;
    margin-top: 8vw;
  }
  .ctTtl {
    gap: 2.6666666667vw;
  }
  .ctTtl .ttl {
    font-size: 4.8vw;
  }
  .ctTtl .must {
    width: 9.0666666667vw;
    height: 5.8666666667vw;
    border-radius: 1.3333333333vw;
    font-size: 3.2vw;
  }
  .ctRadio {
    width: 100%;
    gap: 8vw;
  }
  .ctRadio label {
    font-size: 4.2666666667vw;
  }
  .ctInp {
    width: 100%;
  }
  .ctInp input,
  .ctInp select {
    width: 100%;
    height: 16vw;
    padding: 2.6666666667vw 4vw;
    border-radius: 2.1333333333vw;
    font-size: 4.2666666667vw;
  }
  .ctInp textarea {
    width: 100%;
    height: 37.3333333333vw;
    padding: 2.6666666667vw 4vw;
    border-radius: 2.1333333333vw;
    font-size: 4.2666666667vw;
  }
  .ctSel::after {
    width: 2.1333333333vw;
    height: 2.1333333333vw;
    border-right: 0.5333333333vw solid #333;
    border-bottom: 0.5333333333vw solid #333;
    right: 5.3333333333vw;
  }
  .ctAgree {
    margin-top: 8vw;
    font-size: 4.8vw;
    gap: 2.6666666667vw;
  }
  .ctAgree span {
    width: 6.4vw;
    height: 6.4vw;
  }
  .ctAgree input[type=checkbox] {
    width: 6.4vw;
    height: 6.4vw;
    border-radius: 1.0666666667vw;
  }
  .formAgree__error {
    font-size: 4.2666666667vw;
  }
  .ctBtn button {
    width: 80vw;
    height: 17.0666666667vw;
    margin: 16vw auto 0;
    border-radius: 10.6666666667vw;
    font-size: 4.8vw;
    -webkit-box-shadow: 0 1.3333333333vw 1.6vw 0 rgba(77, 116, 189, 0.3);
            box-shadow: 0 1.3333333333vw 1.6vw 0 rgba(77, 116, 189, 0.3);
  }
}/*# sourceMappingURL=top.css.map */