@charset "UTF-8";
/*** The new CSS reset - version 1.5.1 (last updated 1.3.2022) ***/
*:where(:not(iframe, canvas, img, svg, video):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

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

a,
button {
  cursor: revert;
}

ol,
ul,
menu {
  list-style: none;
}

table {
  border-collapse: collapse;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  -moz-appearance: revert;
  appearance: revert;
}

::-moz-placeholder {
  color: unset;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

.u-onlyPC {
  display: block;
}

.u-onlySP {
  display: none;
}

body {
  margin: 0;
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  min-width: 1280px;
  color: #151E2D;
}

img {
  image-rendering: -webkit-optimize-contrast;
}

.kv__wrap {
  background: linear-gradient(122.67deg, #5715AC 3.39%, #062678 87.62%);
  height: 840px;
  position: relative;
}
.kv__wrap::before {
  content: " ";
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/kv/bg_pc.svg);
  background-repeat: no-repeat;
  background-size: 2103px 100%;
  background-position: top center;
}

.kv {
  position: relative;
  max-width: 1280px;
  height: 100%;
  margin: 0 auto;
}
.kv__logo {
  padding-top: 70px;
}
.kv__ornament_shape_x3 {
  position: absolute;
  top: 160px;
  left: -170px;
  background-image: url(../img/kv/bg_shape_x3.svg);
  background-repeat: no-repeat;
  background-size: 662px 632px;
  width: 100%;
  height: 100%;
}
.kv__logo_img {
  position: relative;
  width: 152px;
}
.kv__tagline {
  font-size: 38px;
  font-weight: 700;
  color: #E9F2FF;
  line-height: 1.55;
  letter-spacing: 0.012em;
  position: relative;
  margin-top: 204px;
}
.kv__description {
  position: relative;
  margin-top: 20px;
  font-weight: normal;
  color: #E9F2FF;
  color: #B1C7F1;
  line-height: 180%;
  letter-spacing: 0.01em;
}

.problem__wrap {
  position: relative;
  min-width: 1280px;
  max-width: 1280px;
  margin: 100px auto 0;
  background-color: #fff;
}
.problem__ornament {
  position: absolute;
  width: 243px;
  height: 282px;
  top: -232px;
  left: 45px;
  z-index: 1;
}
.problem__title {
  font-size: 32px;
  font-weight: 700;
  color: #3A4258;
  text-align: center;
}
.problem__title-highlight {
  background: linear-gradient(135deg, #4A6DF7, #4AB29E);
  color: #fff;
  display: inline-block;
  padding: 8px 10px;
  margin: 0 6px;
  border-radius: 3px;
}
.problem__flex {
  display: flex;
  justify-content: center;
  margin-top: 60px;
}
.problem__flex_item {
  background: linear-gradient(110deg, rgba(36, 20, 202, 0.1), rgba(74, 138, 198, 0.1));
  position: relative;
  padding: 36px;
  margin: 0 12px;
  border-radius: 3px;
}
.problem__flex_title {
  font-size: 20px;
  font-weight: bold;
  color: #3280F6;
  background: -webkit-linear-gradient(45deg, #3280F6, #573EF1);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  display: inline-block;
  margin-bottom: 16px;
}
.problem__list_item {
  font-size: 14px;
  color: #3A4258;
  margin-bottom: 4px;
}
.problem__quote--top {
  position: absolute;
  top: 16px;
  left: 16px;
  width: 20px;
  height: 20px;
}
.problem__quote--bottom {
  position: absolute;
  bottom: 16px;
  right: 16px;
  width: 20px;
  height: 20px;
}

.feature_section {
  margin-bottom: 128px;
  position: relative;
}
.feature_section__ornament {
  position: absolute;
  top: -140px;
  background-repeat: no-repeat;
  background-size: cover;
  width: 224px;
  height: 714px;
}
.feature_section__ornament--left_blue {
  background-image: url(../img/feature/1st/section_ornament_left_blue.png);
  left: 0;
}
.feature_section__ornament--left_green {
  background-image: url(../img/feature/2nd/section_ornament_left_green.png);
  left: 0;
}
.feature_section__ornament--right_blue {
  background-image: url(../img/feature/1st/section_ornament_right_blue.png);
  right: 0;
}
.feature_section__ornament--right_green {
  background-image: url(../img/feature/2nd/section_ornament_right_green.png);
  right: 0;
}
.feature_section__wrap {
  display: flex;
  justify-content: space-between;
  min-width: 1280px;
  max-width: 1280px;
  width: 100%;
  height: 470px;
  margin: 0 auto;
}
.feature_section__left {
  position: relative;
  display: flex;
  align-items: center;
  width: 50%;
}
.feature_section__right {
  position: relative;
  display: flex;
  align-items: center;
  width: 50%;
}
.feature_section__text_wrap {
  margin: 0 auto;
}
.feature_section__h1 {
  font-size: 32px;
  font-weight: 700;
  color: #3A4258;
  line-height: 1.65;
  letter-spacing: 0.01em;
  margin-bottom: 20px;
}
.feature_section__paragraph {
  line-height: 2;
  font-weight: 400;
  margin-bottom: 20px;
}
.feature_section__paragraph:last-child {
  margin-bottom: 0;
}
.feature_section__image_wrap {
  height: 100%;
}
.feature_section__img {
  position: relative;
  height: auto;
}
.feature_section__img--1st_01 {
  top: 3px;
  left: -14px;
  max-width: 707px;
}
.feature_section__img--1st_02 {
  top: -140px;
  right: 103px;
  max-width: 842px;
}
.feature_section__img--1st_03 {
  top: 24px;
  left: -13px;
  max-width: 751px;
}
.feature_section__img--2nd_01 {
  top: 23px;
  left: -14px;
  max-width: 707px;
}
.feature_section__img--2nd_02 {
  top: 23px;
  left: -140px;
  max-width: 913px;
}
.feature_section__img--2nd_03 {
  top: -56px;
  right: 77px;
  max-width: 784px;
}
.feature_section__img_shadow {
  position: absolute;
  top: 0;
  border-radius: 8px;
  width: 960px;
  height: 470px;
}
.feature_section__img_shadow--blue {
  background: linear-gradient(90.03deg, rgba(72, 116, 248, 0.08) -36.45%, rgba(95, 196, 192, 0.024) 90.77%, rgba(98, 207, 184, 0) 98.46%);
}
.feature_section__img_shadow--green {
  background: linear-gradient(269.72deg, rgba(98, 207, 184, 0) 1.98%, rgba(98, 207, 184, 0.08) 15.22%, rgba(26, 223, 250, 0.032) 112.45%);
}
.feature_section__img_shadow--right {
  left: 0;
}
.feature_section__img_shadow--left {
  right: 0;
  transform: scaleX(-1);
}

.ornament {
  position: absolute;
  width: 1280px;
  margin: -70px auto 0;
  left: 0;
  right: 0;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.ornament__img {
  width: 270px;
}

.price {
  width: 1280px;
  margin: 100px auto 0;
  left: 0;
  right: 0;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.price__img {
  width: 850px;
}

.feature_1st__wrap {
  width: 100%;
  min-width: 1280px;
  margin-top: 100px;
  padding-bottom: 20px;
  background-color: #FAFBFF;
  overflow: hidden;
}
.feature_1st__section_title {
  font-size: 28px;
  font-weight: bold;
  color: #3A4258;
  text-align: center;
  margin-bottom: 80px;
  padding-top: 100px;
}
.feature_1st__section_logo {
  position: relative;
  top: 4px;
  width: 152px;
  display: inline-block;
  margin-right: 20px;
}

.color_blue {
  color: #457DF9;
}

.feature2nd__wrap {
  width: 100%;
  min-width: 1280px;
  padding-top: 100px;
  padding-bottom: 40px;
  background-color: #FBFFFE;
  position: relative;
  overflow: hidden;
}

.ready__flex {
  display: flex;
  justify-content: center;
}
.ready__flex_item {
  width: 480px;
}
.ready__title {
  font-size: 32px;
  font-weight: 700;
  color: #3A4258;
  line-height: 1.8;
  margin: 60px 0 24px 0;
}
.ready__text {
  line-height: 1.8;
  margin-bottom: 20px;
}
.ready__flex_img {
  position: relative;
  top: -16px;
}
.ready__img {
  position: relative;
  z-index: 1;
  width: 758px;
}
.ready__img_shadow {
  position: absolute;
  top: 60px;
  left: 80px;
  background: linear-gradient(269.72deg, rgba(98, 207, 184, 0) 1.98%, rgba(98, 207, 184, 0.08) 15.22%, rgba(26, 223, 250, 0.032) 112.45%);
  width: 758px;
  height: 503px;
  border-radius: 6px;
}

.color_green {
  color: #1AC09C;
}

.templete__flex {
  display: flex;
  justify-content: center;
}
.templete__flex_item {
  width: 480px;
}
.templete__title {
  font-size: 32px;
  font-weight: 700;
  color: #3A4258;
  line-height: 1.8;
  margin: 60px 0 24px 0;
}
.templete__text {
  line-height: 1.8;
  margin-bottom: 20px;
}
.templete__flex_img {
  position: relative;
  top: -16px;
}
.templete__img {
  position: relative;
  z-index: 1;
  width: 758px;
}
.templete__img_shadow {
  position: absolute;
  top: 60px;
  left: 80px;
  background: linear-gradient(269.72deg, rgba(98, 207, 184, 0) 1.98%, rgba(98, 207, 184, 0.08) 15.22%, rgba(26, 223, 250, 0.032) 112.45%);
  width: 758px;
  height: 300px;
  border-radius: 6px;
}

.analytics__flex {
  display: flex;
  justify-content: center;
}
.analytics__flex_item {
  width: 480px;
}
.analytics__title {
  font-size: 32px;
  font-weight: 700;
  color: #3A4258;
  line-height: 1.8;
  margin: 60px 0 24px 0;
}
.analytics__text {
  line-height: 1.8;
  margin-bottom: 20px;
}
.analytics__flex_img {
  position: relative;
  top: -16px;
}
.analytics__img {
  position: relative;
  z-index: 1;
  width: 758px;
}
.analytics__img_shadow {
  position: absolute;
  top: 60px;
  left: 80px;
  background: linear-gradient(269.72deg, rgba(98, 207, 184, 0) 1.98%, rgba(98, 207, 184, 0.08) 15.22%, rgba(26, 223, 250, 0.032) 112.45%);
  width: 758px;
  height: 300px;
  border-radius: 6px;
}
.tobe__wrap {
  width: 100%;
  margin: 0 auto;
  padding-bottom: 120px;
  overflow: hidden;
}
.tobe__section_title {
  font-size: 28px;
  font-weight: bold;
  color: #3A4258;
  text-align: center;
  margin: 100px 0 80px;
}
.tobe__section_logo {
  position: relative;
  top: 4px;
  width: 152px;
  display: inline-block;
  margin-right: 20px;
}
.tobe__flex--left {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  margin-left: 100px;
  margin-bottom: 40px;
  width: 1280px;
  margin: 0 auto;
}
.tobe__flex--left::before, .tobe__flex--left::after {
  content: " ";
  position: absolute;
  top: 0;
  width: 100%;
  height: 249px;
  background-repeat: repeat-x;
}
.tobe__flex--left::before {
  left: -100%;
  background-image: url(../img/tobe/bg_violet.svg);
  transform: scaleX(-1);
}
.tobe__flex--left::after {
  left: calc(100% - 98px);
  background-image: url(../img/tobe/bg_green.svg);
}
.tobe__flex--right {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  margin-right: 100px;
  width: 1280px;
  margin: 40px auto 0;
}
.tobe__flex--right::before, .tobe__flex--right::after {
  content: " ";
  position: absolute;
  top: 0;
  width: 100%;
  height: 249px;
  background-repeat: repeat-x;
}
.tobe__flex--right::before {
  left: calc(-100% + 138px);
  background-image: url(../img/tobe/bg_violet.svg);
  transform: scaleX(-1);
}
.tobe__flex--right::after {
  left: calc(100% + 40px);
  background-image: url(../img/tobe/bg_green.svg);
}
.tobe__flex_item {
  position: relative;
  padding: 48px 36px;
  background: linear-gradient(110deg, rgba(36, 20, 202, 0.1), rgba(74, 138, 198, 0.1));
  border-radius: 3px;
  width: 550px;
}
.tobe__flex_item_spacer {
  width: 40px;
}
.tobe__flex_title {
  font-size: 20px;
  font-weight: bold;
  color: #3280F6;
  background: -webkit-linear-gradient(45deg, #3280F6, #573EF1);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  display: inline-block;
  margin-bottom: 16px;
}
.tobe__text {
  font-size: 14px;
  color: #3A4258;
  margin-bottom: 4px;
}
.tobe__quote--top {
  position: absolute;
  top: 16px;
  left: 16px;
  width: 20px;
  height: 20px;
}
.tobe__quote--bottom {
  position: absolute;
  bottom: 16px;
  right: 16px;
  width: 20px;
  height: 20px;
}

.register__wrap_bg {
  background: linear-gradient(90deg, #5715AC 0%, #062678 100%);
  height: 676px;
  width: 100%;
}
.register__wrap {
  background-image: url(../img/register/bg_pc.svg);
  background-repeat: no-repeat;
  background-position: center center; /* 画像の表示位置を指定  */
  background-size: cover; /* 画像のサイズを指定    */
  width: 100%; /* 横幅のサイズを指定    */
  height: 100%;
}
.register__title {
  font-size: 38px;
  font-weight: 700;
  color: #E9F2FF;
  line-height: 1.55;
  letter-spacing: 0.012em;
  padding-top: 120px;
  text-align: center;
}
.register__text {
  color: #B1C7F1;
  margin-top: 20px;
  font-weight: 400;
  line-height: 1.8;
  text-align: center;
}
.register__btn_outer {
  background-image: url(../img/btn_register.png);
  width: 400px;
  height: 103px;
  background-size: cover;
  margin: 60px auto 0;
  border-radius: 24px;
  box-shadow: 22px 25px 60px rgba(252, 60, 0, 0.7);
  transition: background-image 0.6s, box-shadow 0.6s;
}
.register__btn_outer:hover {
  background-image: url(../img/btn_register-hover.png);
  box-shadow: 22px 25px 80px rgba(252, 60, 0, 0.9);
  cursor: pointer;
}
.register__btn_outer_left {
  position: absolute;
  background-image: url(../img/btn_register.png);
  width: 400px;
  height: 103px;
  background-size: cover;
  margin-left: 60px auto 0;
  margin-top: 60px;
  border-radius: 24px;
  box-shadow: 22px 25px 60px rgba(252, 60, 0, 0.7);
  transition: background-image 0.6s, box-shadow 0.6s;
}
.register__btn_outer_left:hover {
  background-image: url(../img/btn_register-hover.png);
  box-shadow: 22px 25px 80px rgba(252, 60, 0, 0.9);
  cursor: pointer;
}
.register__btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-weight: 800;
  font-size: 24px;
  color: #E9F2FF;
}
.register__btn > span {
  position: relative;
  top: -3px;
}

.footer {
  margin-top: 108px;
}
.footer__logo {
  width: 152px;
  margin: 0 auto;
}
.footer__list {
  display: flex;
  justify-content: space-between;
  margin-top: 24px;
  font-weight: 300;
  max-width: 260px;
  margin: 24px auto 0;
}
.footer__list_item {
  font-size: 12px;
  color: #E9F2FF;
}
.terms {
  width: 1280px;
  margin: 0 auto 100px;
  color: #3A4258;
  font-size: 14px;
  line-height: 1.8;
}
.terms__page_title {
  font-size: 32px;
  font-weight: bold;
  text-align: center;
  padding: 100px 0;
}
.terms__title {
  font-size: 20px;
  font-weight: bold;
  padding: 28px 0;
}
.terms__text {
  margin-bottom: 10px;
}
.terms__text--mb0 {
  margin-bottom: 0;
}
.terms__list_outline {
  list-style-type: decimal;
  margin-left: 16px;
}
.terms__list_outline--indent {
  list-style-type: decimal;
  margin-left: 32px;
}
@media (max-width: 600px) {
  .u-onlyPC {
    display: none;
  }
  .u-onlySP {
    display: block;
  }
  body {
    min-width: unset;
    font-size: 14px;
  }
  .kv__wrap {
    background: linear-gradient(89.59deg, #5715AC 0.18%, #062678 99.48%);
    height: 667px;
  }
  .kv__wrap::before {
    background-image: url(../img/kv/bg_sp.png);
    background-size: 375px 667px;
  }
  .kv {
    max-width: 100%;
    height: auto;
  }
  .kv__logo {
    padding-top: 60px;
  }
  .kv__logo > img {
    width: 120px;
  }
  .kv__ornament_shape_x3 {
    top: 65px;
    left: 0;
    background-size: 322px 298px;
  }
  .kv__tagline {
    margin-top: 26px;
    font-size: 26px;
  }
  .kv__description {
    margin-top: 4px;
  }
  .problem__wrap {
    min-width: auto;
    margin: 60px auto 0;
  }
  .problem__ornament {
    width: 140px;
    height: 163px;
    top: -157px;
    left: 35px;
    opacity: 0.4;
  }
  .problem__flex {
    flex-wrap: wrap;
  }
  .problem__flex_item {
    margin: 0 16px 16px;
  }
  .problem__list {
    max-width: 272px;
  }
  .feature_section {
    margin-bottom: 60px;
  }
  .feature_section__wrap {
    min-width: auto;
    flex-flow: column;
    height: auto;
    padding: 0 32px;
  }
  .feature_section__wrap--reverse_sp {
    flex-flow: column-reverse;
  }
  .feature_section__left {
    width: 100%;
  }
  .feature_section__right {
    width: 100%;
  }
  .feature_section__h1 {
    font-size: 24px;
  }
  .feature_section__paragraph {
    margin-bottom: 8px;
  }
  .feature_section__img {
    width: 100%;
    top: auto;
    left: auto;
    right: auto;
    margin-top: 12px;
  }
  .ornament {
    width: 100%;
    margin: -55px auto 0;
  }
  .ornament__img {
    width: 220px;
  }
  .price {
    width: 100%;
    margin: 100px auto 0;
  }
  .price__img {
    width: 380px;
  }
  .feature_1st__wrap {
    margin-top: 60px;
    min-width: auto;
  }
  .feature_1st__section_title {
    margin-top: 60px;
    margin-bottom: 60px;
    padding-top: 0;
  }
  .feature_1st__section_logo {
    margin-right: 8px;
  }
  .feature2nd__wrap {
    min-width: auto;
    padding-bottom: 0;
  }
  .tobe {
    padding: 0 16px;
  }
  .tobe__wrap {
    padding-bottom: 60px;
  }
  .tobe__section_title {
    margin: 60px 0;
  }
  .tobe__section_logo {
    margin-right: 8px;
  }
  .tobe__flex--left {
    width: 100%;
    justify-content: center;
  }
  .tobe__flex--left::before, .tobe__flex--left::after {
    content: none;
  }
  .tobe__flex--left {
    flex-wrap: wrap;
  }
  .tobe__flex--right {
    width: 100%;
    justify-content: center;
    margin: 16px auto 0;
  }
  .tobe__flex--right::before, .tobe__flex--right::after {
    content: none;
  }
  .tobe__flex--right {
    flex-wrap: wrap;
  }
  .tobe__flex_item_spacer {
    width: 100%;
    height: 16px;
  }
  .register__wrap_bg {
    height: auto;
    padding: 48px 0 40px;
  }
  .register__wrap {
    background-image: none;
    padding: 0 32px;
  }
  .register__title {
    font-size: 28px;
    font-weight: bold;
    color: #3A4258;
    color: #fff;
    text-align: left;
    padding-top: 0;
  }
  .register__text {
    text-align: left;
    margin-top: 4px;
  }
  .register__btn_outer {
    margin: 52px auto 0;
    max-width: 311px;
    width: 100%;
    height: 80px;
    border-radius: 19px;
  }
  .register__btn_outer_left {
    margin: 52px auto 0;
    max-width: 311px;
    width: 100%;
    height: 80px;
    border-radius: 19px;
  }
  .register__btn {
    font-size: 16px;
    letter-spacing: 1.8px;
  }
  .footer {
    margin-top: 60px;
  }
  .footer__list {
    margin: 20px auto 0;
  }
  .terms {
    width: 100%;
    padding: 0 32px;
  }
}
@media (max-width: 1340px) {
  .kv {
    padding: 0 32px;
  }
}