@charset "UTF-8";
body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif;
  color: #333;
  font-size: 3.6458333333vw;
}

.sp_only {
  display: block;
}

.pc_only {
  display: none;
}

#wrap .float_area {
  width: 100%;
  padding: 1.953125vw 0;
  background: rgba(115, 177, 240, 0.3);
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999;
}
#wrap .float_area .float_btn {
  width: 78.125vw;
  margin: 0 auto;
}
#wrap #fv {
  background: url("../img/sp_fv_bg.jpg") no-repeat top center/100%, #FAFAFA;
  height: 174.4791666667vw;
}
#wrap #fv .inner {
  padding-top: 9.765625vw;
}
#wrap #fv .inner .img01 {
  width: 85.9375vw;
  margin: 0 auto 59.2447916667vw;
}
#wrap #fv .inner .fv_text_area .img02 {
  width: 58.59375vw;
  margin: 0 auto;
}
#wrap #fv .inner .fv_text_area .fv_text {
  font-size: 4.1666666667vw;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.05em;
  margin: 3.2552083333vw 0 7.1614583333vw;
}
#wrap .cta_btn01 a {
  display: block;
  color: #fff;
  font-size: 4.9479166667vw;
  line-height: 14.84375vw;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.08em;
  width: 78.125vw;
  height: 15.625vw;
  margin: 0 auto;
  padding-left: 7.8125vw;
  border-radius: 1.3020833333vw;
  -webkit-filter: drop-shadow(1.3020833333vw 1.3020833333vw 1.3020833333vw rgba(20, 59, 99, 0.3));
          filter: drop-shadow(1.3020833333vw 1.3020833333vw 1.3020833333vw rgba(20, 59, 99, 0.3));
  background: #3EB2F7;
  background: linear-gradient(90deg, rgb(62, 178, 247) 0%, rgb(97, 107, 241) 100%);
  box-sizing: border-box;
}
#wrap .cta_btn01 a span {
  position: relative;
}
#wrap .cta_btn01 a span::before, #wrap .cta_btn01 a span::after {
  content: "";
  display: block;
  position: absolute;
}
#wrap .cta_btn01 a span::before {
  width: 13.0208333333vw;
  height: 13.0208333333vw;
  background: url(../img/cta_icon_free.svg) no-repeat top left/100%;
  top: -5.859375vw;
  left: -15.3645833333vw;
}
#wrap .cta_btn01 a span::after {
  width: 3.6458333333vw;
  height: 3.6458333333vw;
  background: url(../img/cta_icon_arrow.svg) no-repeat top left/100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  right: -5.859375vw;
}
#wrap .cta_btn01 a span strong {
  font-size: 115%;
  font-weight: 700;
  vertical-align: 0;
}
#wrap .cta_btn02 {
  margin-top: 5.2083333333vw;
}
#wrap .cta_btn02 a {
  display: block;
  color: #346eba;
  font-size: 4.1666666667vw;
  line-height: 11.4583333333vw;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.08em;
  width: 67.7083333333vw;
  height: 11.71875vw;
  margin: 0 auto;
  border-radius: 1.3020833333vw;
  -webkit-filter: drop-shadow(1.3020833333vw 1.3020833333vw 1.3020833333vw rgba(20, 59, 99, 0.3));
          filter: drop-shadow(1.3020833333vw 1.3020833333vw 1.3020833333vw rgba(20, 59, 99, 0.3));
  border: 1px solid #346eba;
  background: #fff;
  box-sizing: border-box;
}
#wrap .cta_btn02 a span {
  padding-right: 5.859375vw;
  position: relative;
}
#wrap .cta_btn02 a span::after {
  content: "";
  display: block;
  width: 3.3854166667vw;
  height: 3.3854166667vw;
  background: url(../img/cta_icon_arrow_b.svg) no-repeat top left/100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  position: absolute;
  top: 50%;
  right: 0;
}
#wrap #worries {
  background: url("../img/sp_worries_bg.jpg") no-repeat top center/100%, #FAFAFA;
  padding: 10.4166666667vw 0 28.6458333333vw;
}
#wrap #worries .top_icon {
  width: 21.484375vw;
  margin: 0 auto;
}
#wrap #worries h2 {
  font-size: 6.25vw;
  line-height: 1.33;
  text-align: center;
  font-weight: 900;
  letter-spacing: 0.05em;
  margin: 1.953125vw 0 9.1145833333vw;
}
#wrap #worries h2 strong {
  color: #346EBA;
  font-weight: 900;
}
#wrap #worries .worries_list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 5.2083333333vw 2.6041666667vw;
  width: 88.5416666667vw;
  margin: 0 auto 13.0208333333vw;
}
#wrap #worries .worries_list li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42.96875vw;
  height: 32.5520833333vw;
  border-radius: 1.3020833333vw;
  background: #fff;
  -webkit-filter: drop-shadow(0 0 1.3020833333vw rgba(0, 0, 0, 0.1));
          filter: drop-shadow(0 0 1.3020833333vw rgba(0, 0, 0, 0.1));
  position: relative;
}
#wrap #worries .worries_list li::before {
  content: "";
  display: block;
  width: 5.2083333333vw;
  height: 4.5572916667vw;
  margin: 0 auto;
  background: url(../img/worries_icon_check.svg) no-repeat top left/100%;
  position: absolute;
  top: -1.5625vw;
  left: 0;
  right: 0;
}
#wrap #worries .worries_list li p {
  font-size: 3.6458333333vw;
  line-height: 1.57;
  text-align: center;
  letter-spacing: 0.05em;
}
#wrap #worries .worries_list li p strong {
  color: #346EBA;
  font-weight: 700;
}
#wrap #worries .worries_box {
  width: 89.5833333333vw;
  margin: 0 auto;
  padding: 13.0208333333vw 0 10.4166666667vw;
  border-radius: 19.53125vw 0 0 0;
  background: #E1E9EF;
  position: relative;
}
#wrap #worries .worries_box::before {
  content: "";
  display: block;
  width: 1px;
  height: 13.0208333333vw;
  margin: 0 auto;
  background: #113256;
  position: absolute;
  top: -6.5104166667vw;
  left: 0;
  right: 0;
}
#wrap #worries .worries_box h3 {
  font-size: 6.25vw;
  line-height: 1.33;
  text-align: center;
  font-weight: 900;
  letter-spacing: 0.05em;
}
#wrap #worries .worries_box h3 strong {
  color: #346EBA;
  font-weight: 900;
}
#wrap #worries .worries_box .text_box {
  display: flex;
  align-items: center;
  flex-direction: column-reverse;
  gap: 7.8125vw;
  margin: 4.5572916667vw 0 5.2083333333vw;
}
#wrap #worries .worries_box .text_box .text_area .text {
  line-height: 1.71;
  text-align: center;
  letter-spacing: 0.05em;
}
#wrap #worries .worries_box .text_box .text_area .text strong {
  color: #346EBA;
  font-weight: 700;
}
#wrap #worries .worries_box .text_box .text_area .text:first-child {
  margin-bottom: 5.859375vw;
}
#wrap #worries .worries_box .text_box .worries_img {
  width: 61.1979166667vw;
}
#wrap #worries .bot_text01 {
  font-size: 4.1666666667vw;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.05em;
  margin-bottom: 1.953125vw;
}
#wrap #worries .bot_text02 {
  text-align: center;
}
#wrap #worries .bot_text02 strong {
  color: #fff;
  font-size: 5.2083333333vw;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 0.05em;
  background: linear-gradient(transparent 10%, #346EBA 10% 100%, transparent 100%);
}
#wrap #solution {
  background: url("../img/sp_solution_bg_top.jpg") no-repeat top center/100%, url("../img/sp_solution_bg_bot.jpg") no-repeat bottom center/100%, #E0EDFF;
}
#wrap #solution .inner {
  padding: 84.6354166667vw 0 12.3697916667vw;
  position: relative;
}
#wrap #solution .inner h2 {
  width: 85.4166666667vw;
  margin: 0 auto;
  position: absolute;
  top: -22.1354166667vw;
  left: 0;
  right: 0;
}
#wrap #solution .inner .top_text {
  font-size: 4.1666666667vw;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.05em;
  margin-bottom: 7.8125vw;
}
#wrap #solution .inner .top_text strong {
  color: #346EBA;
  font-weight: 700;
}
#wrap #solution .inner .bfaf_area .bfaf_box:first-child {
  margin-bottom: 10.4166666667vw;
}
#wrap #solution .inner .bfaf_area .bfaf_box .before {
  width: 58.59375vw;
  height: 58.59375vw;
  margin: 0 auto;
  padding-top: 13.671875vw;
  border-radius: 50%;
  background: #fff;
  box-sizing: border-box;
}
#wrap #solution .inner .bfaf_area .bfaf_box .before .tit {
  width: 19.2708333333vw;
  margin: 0 auto 4.5572916667vw;
}
#wrap #solution .inner .bfaf_area .bfaf_box .before .text {
  font-size: 4.1666666667vw;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.05em;
}
#wrap #solution .inner .bfaf_area .bfaf_box .before .text strong {
  font-weight: 700;
}
#wrap #solution .inner .bfaf_area .bfaf_box .arrow {
  width: 6.3802083333vw;
  margin: -8.3333333333vw auto 3.90625vw;
}
#wrap #solution .inner .bfaf_area .bfaf_box .after {
  width: 84.6354166667vw;
  margin: 0 auto;
  padding-bottom: 9.1145833333vw;
  border-radius: 1.3020833333vw;
  -webkit-filter: drop-shadow(0 0 1.953125vw rgba(0, 95, 173, 0.2));
          filter: drop-shadow(0 0 1.953125vw rgba(0, 95, 173, 0.2));
  background: #ADCFF7;
}
#wrap #solution .inner .bfaf_area .bfaf_box .after .text {
  line-height: 1.71;
  letter-spacing: 0.05em;
  width: 72.9166666667vw;
  margin: 3.90625vw auto 0;
}
#wrap #solution .inner .bfaf_area .bfaf_box .after .text strong {
  font-weight: 700;
  background: linear-gradient(transparent 10%, #E5F75B 10% 100%, transparent 100%);
}
#wrap #solution .inner .solution_bot_text {
  font-size: 4.1666666667vw;
  line-height: 1.5;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.05em;
  width: 78.125vw;
  margin: 9.765625vw auto 3.90625vw;
  position: relative;
}
#wrap #solution .inner .solution_bot_text strong {
  color: #346EBA;
  font-weight: 700;
}
#wrap #solution .inner .solution_bot_text::before, #wrap #solution .inner .solution_bot_text::after {
  content: "";
  display: block;
  width: 0.2604166667vw;
  height: 14.3229166667vw;
  background: #1A1A1A;
  position: absolute;
  bottom: 0;
}
#wrap #solution .inner .solution_bot_text::before {
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
  left: 0;
}
#wrap #solution .inner .solution_bot_text::after {
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
  right: 0;
}
#wrap #solution .inner .solution_img {
  width: 94.53125vw;
  margin: 0 auto;
}
#wrap .tit_area {
  color: #346EBA;
  text-align: center;
}
#wrap .tit_area.line {
  margin-bottom: 9.765625vw;
}
#wrap .tit_area.line h2 {
  position: relative;
}
#wrap .tit_area.line h2::before {
  content: "";
  display: block;
  width: 13.0208333333vw;
  height: 1px;
  margin: 0 auto;
  background: #2B59AD;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -5.2083333333vw;
}
#wrap .tit_area.line.white h2::before {
  background: #fff;
}
#wrap .tit_area.white {
  color: #fff;
}
#wrap .tit_area .tit_text {
  font-size: 3.125vw;
  letter-spacing: 0.05em;
  margin-bottom: 1.953125vw;
}
#wrap .tit_area h2 {
  font-size: 6.25vw;
  font-weight: 900;
  letter-spacing: 0.05em;
}
#wrap #features {
  background: url("../img/sp_features_bg_top.jpg") no-repeat top center/100%, url("../img/sp_features_bg_bot.jpg") no-repeat bottom center/100%, #FAFAFA;
}
#wrap #features .inner {
  padding: 13.0208333333vw 0;
}
#wrap #features .inner .top_text {
  font-size: 4.1666666667vw;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.05em;
  margin-bottom: 9.765625vw;
}
#wrap #features .inner .features_area {
  margin-bottom: 5.859375vw;
}
#wrap #features .inner .features_area .features_box:first-child {
  margin-bottom: 11.71875vw;
}
#wrap #features .inner .features_area .features_box .img {
  width: 84.6354166667vw;
  margin: 0 auto;
  border-radius: 2.6041666667vw;
  box-shadow: 0 0 1.953125vw rgba(0, 0, 0, 0.2);
}
#wrap #features .inner .features_area .features_box .text_area {
  width: 82.03125vw;
  margin: 0 auto;
}
#wrap #features .inner .features_area .features_box .text_area h3 {
  font-size: 5.2083333333vw;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.05em;
  margin: 7.1614583333vw 0 6.5104166667vw;
}
#wrap #features .inner .features_area .features_box .text_area .text {
  line-height: 1.71;
  letter-spacing: 0.05em;
}
#wrap #features .inner .features_bot_icon {
  width: 16.1458333333vw;
  margin: 0 auto;
}
#wrap #features .inner .features_bot_text {
  font-size: 4.1666666667vw;
  line-height: 1.5;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.05em;
  width: 80.7291666667vw;
  margin: 2.6041666667vw auto 9.1145833333vw;
  position: relative;
}
#wrap #features .inner .features_bot_text::before, #wrap #features .inner .features_bot_text::after {
  content: "";
  display: block;
  width: 0.2604166667vw;
  height: 18.2291666667vw;
  background: #1A1A1A;
  position: absolute;
  bottom: 0;
}
#wrap #features .inner .features_bot_text::before {
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
  left: 0;
}
#wrap #features .inner .features_bot_text::after {
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
  right: 0;
}
#wrap #features .inner .features_bot_text strong {
  color: #346EBA;
  font-weight: 700;
}
#wrap #features .inner .video_box {
  width: 84.6354166667vw;
  height: 47.65625vw;
  margin: 7.8125vw auto 0;
  position: relative;
}
#wrap #features .inner .video_box video {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
#wrap #record {
  background: url("../img/sp_record_bg_top.jpg") no-repeat top center/100%, url("../img/sp_record_bg_bot.jpg") no-repeat bottom center/100%, #346EBA;
  padding: 13.0208333333vw 0;
}
#wrap #record .top_text_area {
  width: 89.3229166667vw;
  margin: 0 auto;
  position: relative;
}
#wrap #record .top_text_area::before, #wrap #record .top_text_area::after {
  content: "";
  display: block;
  width: 10.2864583333vw;
  height: 24.609375vw;
  position: absolute;
  top: 0;
}
#wrap #record .top_text_area::before {
  background: url(../img/record_frame_l.svg) no-repeat top left/100%;
  left: 0;
}
#wrap #record .top_text_area::after {
  background: url(../img/record_frame_r.svg) no-repeat top left/100%;
  right: 0;
}
#wrap #record .top_text_area .text {
  color: #fff;
  line-height: 1.71;
  text-align: center;
  letter-spacing: 0.05em;
  margin: 0 0 18.2291666667vw;
}
#wrap #record .record_list .record_box {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 78.125vw;
  margin: 0 auto;
  padding: 11.0677083333vw 0 6.5104166667vw;
  border-radius: 1.3020833333vw;
  -webkit-filter: drop-shadow(0 0 1.953125vw rgba(0, 33, 56, 0.5));
          filter: drop-shadow(0 0 1.953125vw rgba(0, 33, 56, 0.5));
  background: #fff;
  position: relative;
}
#wrap #record .record_list .record_box:first-child {
  margin-bottom: 13.0208333333vw;
  padding-top: 7.1614583333vw;
}
#wrap #record .record_list .record_box .icon {
  width: 34.375vw;
  margin: 0 auto;
  position: absolute;
  top: -8.8541666667vw;
  left: 0;
  right: 0;
}
#wrap #record .record_list .record_box h4 {
  text-align: center;
  font-weight: 400;
}
#wrap #record .record_list .record_box h4 span {
  display: inline-block;
  color: #fff;
  line-height: 5.9895833333vw;
  text-align: center;
  letter-spacing: 0.05em;
  height: 6.5104166667vw;
  padding: 0 3.2552083333vw;
  background: #3EB2F7;
  background: linear-gradient(90deg, rgb(62, 178, 247) 0%, rgb(80, 142, 244) 70%, rgb(97, 107, 241) 100%);
}
#wrap #record .record_list .record_box .text01 {
  text-align: center;
  margin: 1.953125vw 0 2.6041666667vw;
}
#wrap #record .record_list .record_box .text01 span {
  font-size: 4.1666666667vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  padding: 0 1.3020833333vw;
  background: linear-gradient(transparent 70%, #E5F75B 70% 100%, transparent 100%);
}
#wrap #record .record_list .record_box .text01 span strong {
  font-size: 7.2916666667vw;
  font-weight: 700;
}
#wrap #record .record_list .record_box .text02 {
  font-size: 4.1666666667vw;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin: 3.2552083333vw 0;
}
#wrap #record .record_list .record_box .text03 {
  line-height: 1.57;
  text-align: center;
  letter-spacing: 0.05em;
}
#wrap #record .record_list .record_box .kome {
  color: #666;
  font-size: 2.6041666667vw;
  line-height: 1.4;
  text-align: center;
  letter-spacing: 0.05em;
  margin-top: 1.953125vw;
}
#wrap #record .record_list .record_box .text_in {
  margin-bottom: 3.90625vw;
}
#wrap #record .record_list .record_box .text_in .text_in01 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.6041666667vw;
  text-align: center;
  width: 10.4166666667vw;
  height: 10.4166666667vw;
  margin: 0 auto 1.953125vw;
  border-radius: 50%;
  border: 1px solid #1A1A1A;
}
#wrap #record .record_list .record_box .text_in .text_in02 {
  font-size: 4.1666666667vw;
  font-weight: 700;
  letter-spacing: 0.05em;
}
#wrap #record .record_bot_box {
  width: 89.1927083333vw;
  margin: 9.765625vw auto 0;
  padding: 1.953125vw 0 3.2552083333vw;
  position: relative;
}
#wrap #record .record_bot_box .text {
  color: #fff;
  line-height: 1.71;
  text-align: center;
  letter-spacing: 0.05em;
}
#wrap #record .record_bot_box .text strong {
  font-weight: 700;
}
#wrap #record .record_bot_box span::before, #wrap #record .record_bot_box span::after {
  content: "";
  display: block;
  width: 3.90625vw;
  height: 3.90625vw;
  position: absolute;
}
#wrap #record .record_bot_box span::before {
  border-top: 0.2604166667vw solid #fff;
  top: 0;
}
#wrap #record .record_bot_box span::after {
  border-bottom: 0.2604166667vw solid #fff;
  bottom: 0;
}
#wrap #record .record_bot_box span.frame_l::before, #wrap #record .record_bot_box span.frame_l::after {
  border-left: 0.2604166667vw solid #fff;
  left: 0;
}
#wrap #record .record_bot_box span.frame_r::before, #wrap #record .record_bot_box span.frame_r::after {
  border-right: 0.2604166667vw solid #fff;
  right: 0;
}
#wrap #plans {
  background: #FAFAFA;
  padding: 13.0208333333vw 0;
}
#wrap #plans .plans_list {
  margin: 7.1614583333vw 0 3.90625vw;
}
#wrap #plans .plans_list .plans_box {
  width: 78.125vw;
  margin: 0 auto;
  padding: 5.859375vw 0 7.8125vw;
  border-radius: 1.3020833333vw;
  -webkit-filter: drop-shadow(0 0 1.3020833333vw rgba(0, 0, 0, 0.1));
          filter: drop-shadow(0 0 1.3020833333vw rgba(0, 0, 0, 0.1));
  box-sizing: border-box;
}
#wrap #plans .plans_list .plans_box:first-child {
  margin-bottom: 5.2083333333vw;
  background: #E0EDFF;
}
#wrap #plans .plans_list .plans_box:first-child .line {
  width: 40.234375vw;
}
#wrap #plans .plans_list .plans_box:last-child {
  background: #7CC9F7;
  background: linear-gradient(150deg, rgb(124, 201, 247) 0%, rgb(126, 170, 244) 70%, rgb(128, 136, 241) 100%);
}
#wrap #plans .plans_list .plans_box:last-child .line {
  width: 48.6979166667vw;
}
#wrap #plans .plans_list .plans_box .check {
  width: 4.5572916667vw;
  margin: 0 auto;
}
#wrap #plans .plans_list .plans_box .tit {
  font-size: 4.1666666667vw;
  text-align: center;
  letter-spacing: 0.05em;
  margin: 1.953125vw 0;
}
#wrap #plans .plans_list .plans_box .line {
  margin: 0 auto;
}
#wrap #plans .plans_list .plans_box .price {
  font-size: 4.1666666667vw;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin-top: 2.6041666667vw;
}
#wrap #plans .plans_list .plans_box .price strong {
  font-size: 6.25vw;
  font-weight: 700;
  margin-left: 1.953125vw;
}
#wrap #plans .deco_text {
  margin-left: 13.9322916667vw;
}
#wrap #plans .deco_text span {
  display: block;
  font-size: 4.1666666667vw;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 0.05em;
  padding-left: 10.4166666667vw;
  position: relative;
}
#wrap #plans .deco_text span::before {
  content: "";
  display: block;
  width: 8.4635416667vw;
  height: 9.6354166667vw;
  background: url(../img/plans_icon_deco.svg) no-repeat top left/100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  position: absolute;
  top: 50%;
  left: 0;
}
#wrap #plans .deco_text span strong {
  font-weight: 700;
  background: linear-gradient(transparent 70%, #E5F75B 70% 100%, transparent 100%);
}
#wrap #plans .slc_box {
  width: 78.125vw;
  padding: 11.71875vw 0 10.4166666667vw;
  margin: 13.671875vw auto 0;
  border: 1px solid #B3B3B3;
  border-radius: 1.3020833333vw;
  background: #fff;
  position: relative;
}
#wrap #plans .slc_box h3 {
  text-align: center;
  position: absolute;
  top: -3.90625vw;
  left: 0;
  right: 0;
}
#wrap #plans .slc_box h3 strong {
  display: inline-block;
  color: #fff;
  font-size: 3.6458333333vw;
  line-height: 7.5520833333vw;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.05em;
  width: 39.0625vw;
  height: 7.8125vw;
  border-radius: 100vw;
  background: #346EBA;
}
#wrap #plans .slc_box .img {
  width: 65.1041666667vw;
  margin: 0 auto;
}
#wrap #plans .slc_box .text_area {
  width: 65.1041666667vw;
  margin: 4.5572916667vw auto 0;
}
#wrap #plans .slc_box .text_area .text {
  line-height: 1.71;
  letter-spacing: 0.05em;
}
#wrap #plans .slc_box .text_area .btn {
  margin-top: 4.5572916667vw;
}
#wrap #plans .slc_box .text_area .btn a {
  display: block;
  line-height: 11.4583333333vw;
  text-align: center;
  letter-spacing: 0.05em;
  width: 52.0833333333vw;
  height: 11.71875vw;
  margin: 0 auto;
  padding-right: 1.3020833333vw;
  border: 1px solid #1A1A1A;
  border-radius: 0.6510416667vw;
  background: #fff;
  box-sizing: border-box;
  position: relative;
}
#wrap #plans .slc_box .text_area .btn a::before, #wrap #plans .slc_box .text_area .btn a::after {
  content: "";
  display: block;
  width: 1.3020833333vw;
  height: 1.3020833333vw;
  border-top: 1px solid #1A1A1A;
  border-right: 1px solid #1A1A1A;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  position: absolute;
  top: 50%;
  right: 7.8125vw;
}
#wrap #faq {
  background: #E0EDFF;
  padding: 13.0208333333vw 0;
}
#wrap #faq .faq_area {
  margin-top: 7.1614583333vw;
}
#wrap #faq .faq_area .faq_box {
  width: 89.5833333333vw;
  margin: 0 auto;
  padding: 7.8125vw 0 6.5104166667vw;
  border-radius: 10px;
  -webkit-filter: drop-shadow(0 0 1.3020833333vw rgba(0, 0, 0, 0.1));
          filter: drop-shadow(0 0 1.3020833333vw rgba(0, 0, 0, 0.1));
  background: #fff;
}
#wrap #faq .faq_area .faq_box:not(:first-child) {
  margin-top: 7.8125vw;
}
#wrap #faq .faq_area .faq_box .faq_q,
#wrap #faq .faq_area .faq_box .faq_a {
  letter-spacing: 0.05em;
  margin-left: 3.90625vw;
  padding-left: 9.1145833333vw;
  position: relative;
}
#wrap #faq .faq_area .faq_box .faq_q::before,
#wrap #faq .faq_area .faq_box .faq_a::before {
  content: "";
  display: block;
  width: 6.5104166667vw;
  height: 6.5104166667vw;
  position: absolute;
  top: 0;
  left: 0;
}
#wrap #faq .faq_area .faq_box .faq_q {
  font-size: 4.1666666667vw;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 5.2083333333vw;
}
#wrap #faq .faq_area .faq_box .faq_q::before {
  background: url(../img/faq_icon_q.svg) no-repeat top left/100%;
}
#wrap #faq .faq_area .faq_box .faq_a {
  line-height: 1.66;
  width: 73.3072916667vw;
}
#wrap #faq .faq_area .faq_box .faq_a::before {
  background: url(../img/faq_icon_a.svg) no-repeat top left/100%;
}
#wrap #cta_area {
  background: #346EBA;
  padding: 8.4635416667vw 0;
}
#wrap #flow {
  background: url("../img/sp_flow_bg.jpg") no-repeat top center/100%, #EEF8FC;
  padding: 13.0208333333vw 0 13.0208333333vw;
  box-sizing: border-box;
}
#wrap #flow .flow_area {
  margin-top: 7.1614583333vw;
}
#wrap #flow .flow_area .flow_box {
  display: flex;
  align-items: center;
  gap: 1.3020833333vw;
  width: 89.5833333333vw;
  min-height: 36.4583333333vw;
  margin: 0 auto;
  padding: 7.1614583333vw 0 6.5104166667vw;
  border-radius: 23.4375vw;
  background: #fff;
  box-sizing: border-box;
  position: relative;
  -webkit-filter: drop-shadow(0 0 1.3020833333vw rgba(0, 0, 0, 0.1));
          filter: drop-shadow(0 0 1.3020833333vw rgba(0, 0, 0, 0.1));
}
#wrap #flow .flow_area .flow_box:not(:first-child) {
  margin-top: 9.375vw;
}
#wrap #flow .flow_area .flow_box:not(:first-child)::before {
  content: "";
  display: block;
  width: 9.1145833333vw;
  height: 9.375vw;
  margin: 0 auto;
  background: url(../img/flow_icon_arrow.svg) no-repeat top left/100%;
  position: absolute;
  top: -9.375vw;
  left: 0;
  right: 0;
}
#wrap #flow .flow_area .flow_box:not(:first-child) .img {
  margin-bottom: 13.0208333333vw;
}
#wrap #flow .flow_area .flow_box .num {
  width: 10.4166666667vw;
  position: absolute;
  top: -4.5572916667vw;
  left: 3.90625vw;
}
#wrap #flow .flow_area .flow_box .img {
  width: 26.0416666667vw;
  margin-left: 3.90625vw;
}
#wrap #flow .flow_area .flow_box .text_area {
  width: 51.8229166667vw;
}
#wrap #flow .flow_area .flow_box .text_area h3 {
  color: #346EBA;
  font-size: 4.1666666667vw;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin-bottom: 1.953125vw;
}
#wrap #flow .flow_area .flow_box .text_area .text {
  line-height: 1.71;
  letter-spacing: 0.05em;
}
#wrap #flow .flow_area .flow_box .text_area .kome {
  color: #666;
  font-size: 2.6041666667vw;
  line-height: 1.4;
  margin-top: 1.3020833333vw;
}
#wrap #research {
  background: url("../img/sp_research_bg.jpg") no-repeat top center/100%, #F5F9FC;
  height: 173.1770833333vw;
  padding-top: 13.0208333333vw;
  box-sizing: border-box;
}
#wrap #research h2 {
  font-size: 6.25vw;
  line-height: 1.33;
  text-align: center;
  font-weight: 900;
  letter-spacing: 0.05em;
}
#wrap #research h2 strong {
  color: #346EBA;
  font-weight: 900;
}
#wrap #research .top_text {
  text-align: center;
  margin: 7.1614583333vw auto;
}
#wrap #research .top_text strong {
  display: inline-block;
  color: #fff;
  font-size: 4.1666666667vw;
  line-height: 4.9479166667vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  background: #73B1F0;
  width: 76.8229166667vw;
  height: 5.2083333333vw;
  margin: 0 auto;
  font-weight: 700;
}
#wrap #research .top_text strong:first-child {
  margin-bottom: 0.9114583333vw;
}
#wrap #research .text {
  font-size: 3.125vw;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.05em;
  margin-bottom: 7.1614583333vw;
}
#wrap #research .img {
  width: 85.546875vw;
  margin: 0 auto 10.4166666667vw;
}
#wrap .footer {
  background: #346eba;
  padding: 5.2083333333vw 0;
}
#wrap .footer .foot_nav {
  display: flex;
  align-items: center;
  justify-content: center;
}
#wrap .footer .foot_nav li {
  color: #fff;
  font-size: 2.6041666667vw;
  position: relative;
}
#wrap .footer .foot_nav li::before {
  content: "|";
  font-size: 2.6041666667vw;
  padding: 0 1.3020833333vw;
}
#wrap .footer .foot_nav li:first-child::before {
  content: none;
}
#wrap .footer .foot_nav li a {
  color: #fff;
}/*# sourceMappingURL=style_sp.css.map */