.tit_area {
  text-align: center;
  margin-bottom: 10.67vw;
}
.tit_area .sub_txt {
  font-size: 1.3928571429rem;
  font-weight: bold;
  margin-bottom: 3.33vw;
}
.tit_area .sec_tit {
  color: #e85a89;
  font-size: 1.8214285714rem;
  font-weight: bold;
}

/* #mv
-------------------------------*/
#mv {
  padding: 0;
}
#mv .mv_img {
  width: 100%;
}
#mv .mv_img img {
  width: 100%;
}

/* #intro
-------------------------------*/
#intro .tit_area .sec_tit {
  font-size: 2.14rem;
  line-height: 1.275;
}
#intro .point_list {
  display: block;
  margin-bottom: 30px;
}
#intro .point_list > div {
  width: 100%;
  margin-bottom: 0 !important;
  padding: 15px 0 12.5px;
  border: 1px solid #ccc;
}
#intro .point_list > div:nth-child(2) {
  border-top: none;
  border-bottom: none;
}
#intro .point_list .no_box {
  text-align: center;
}
#intro .point_list .no_box h3 {
  color: #a80f78;
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: 15px;
  line-height: 1.3;
}
#intro .point_list .no_box h3::after {
  display: block;
  content: "";
  width: 48%;
  height: 3px;
  background: #a80f78;
  margin: 8px auto 0;
}
#intro .point_list .no_box .point_txt {
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: 12px;
  line-height: 1.4411764706;
}
#intro .point_list .no_box .txt {
  text-align: left;
  width: 63.02vw;
  margin: auto;
}
#intro .note {
  font-size: 0.86rem;
  text-indent: -1em;
  padding-left: 1em;
  line-height: 1.5833333333;
}

/* #getting_started
-------------------------------*/
#getting_started {
  background: #feecf2;
  border: 1px solid #e85a89;
  padding: 6.93vw 5.33vw;
}
#getting_started .tit {
  font-size: 1.3928571429rem;
  font-weight: bold;
  margin-bottom: 4.53vw;
  text-align: center;
}
#getting_started .getting_started_list {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto 4vw;
}
#getting_started .getting_started_list li {
  width: 30.6479859895%;
}
#getting_started .getting_started_list li:not(:nth-child(3n)) {
  margin-right: 4.0280210158%;
}
#getting_started .getting_started_list li:not(:nth-child(-n + 3)) {
  margin-top: 4.0280210158%;
}

/* #recommended
-------------------------------*/
#recommended {
  text-align: center;
  margin-bottom: 16vw;
}
#recommended .recommended_tit {
  font-size: 1.3928571429rem;
  font-weight: bold;
  line-height: 1.3333333333;
  color: #fff;
  background-color: #e85a89;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center;
  height: 26.67vw;
  margin-bottom: 10.67vw;
}
#recommended .box_wrap .solution_area:not(:last-child) {
  margin-bottom: 10.67vw;
}
#recommended .box_wrap .solution_area .tit {
  font-size: 1.7142857143rem;
  font-weight: bold;
  line-height: 1.3125;
  margin-top: calc(0px - (((1em*1.3125) - 1em)/2));
  margin-bottom: calc(6.4vw - (((1em*1.3125) - 1em)/2));
}
#recommended .box_wrap .solution_area .solution_box {
  border: 1px solid #e85a89;
  border-radius: 5.6vw;
  padding: 7.07vw 0 1.33vw;
}
#recommended .box_wrap .solution_area .solution_box .tit_area {
  margin-bottom: 0;
}
#recommended .box_wrap .solution_area .solution_box .tit_area .solution_tit {
  font-size: 2rem;
  line-height: 1.3392857143;
}
#recommended .box_wrap .solution_area .solution_img {
  width: 79.6vw;
  margin: auto;
}

/* #plan
-------------------------------*/
#plan {
  margin-bottom: 16vw;
}
#plan .plan_list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-bottom: 6.67vw;
}
#plan .plan_box {
  width: 43.33vw;
  border: 0.4vw solid;
  text-align: center;
  padding-top: 2.27vw;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-flex-direction: column;
  flex-direction: column;
}
#plan .plan_box:not(:nth-child(-n+2)) {
  margin-top: 3.47vw;
}
#plan .plan_box .subtit {
  width: 35.33vw;
  height: 5.33vw;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center;
  border-radius: 100vh;
  margin: 0 auto 2vw;
  font-size: 0.86rem;
  font-weight: 400;
}
#plan .plan_box .name_area {
  width: 35.33vw;
  height: 14.67vw;
  margin: 0 auto;
  background: #fff;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center;
}
#plan .plan_box .name_area .sub {
  font-size: 0.79rem;
  font-weight: bold;
  margin-bottom: 1.87vw;
}
#plan .plan_box .name_area .name {
  font-size: 1.71rem;
  font-weight: bold;
  letter-spacing: 0.1em;
}
#plan .plan_box .txt_area {
  color: #fff;
  height: 31.2vw;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-flex-direction: column;
  flex-direction: column;
  padding: 2.27vw 0 4.27vw;
}
#plan .plan_box .txt_area .plan {
  font-size: 1.71rem;
  font-weight: bold;
  margin-bottom: 3.2vw;
}
#plan .plan_box .txt_area .subtit {
  background: #fff;
}
#plan .plan_box .txt_area .txt {
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: -0.03em;
  margin: auto;
}
#plan .plan_box .price_area {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center;
  height: 22.4vw;
  background-color: rgba(255, 255, 255, 0.8);
}
#plan .plan_box .price_area .subtit {
  color: #fff;
}
#plan .plan_box .price_area .price strong {
  font-size: 2.46rem;
  font-weight: 700;
}
#plan .plan_box .price_area .price strong span {
  font-size: 1.82rem;
}
#plan .plan_box .price_area .price small {
  font-size: 1.29rem;
  font-weight: 700;
}
#plan .kasou {
  background-color: #036EB8;
  border-color: #036EB8;
}
#plan .kasou .name_area {
  color: #036EB8;
}
#plan .kasou .txt_area .subtit {
  color: #036EB8;
}
#plan .kasou .price_area .subtit {
  background-color: #036EB8;
}
#plan .kasou .price_area .price {
  color: #036EB8;
}
#plan .oneday {
  background-color: #3AB27D;
  border-color: #3AB27D;
}
#plan .oneday .name_area {
  color: #3AB27D;
}
#plan .oneday .txt_area .subtit {
  color: #3AB27D;
}
#plan .oneday .price_area .subtit {
  background-color: #3AB27D;
}
#plan .oneday .price_area .price {
  color: #3AB27D;
}
#plan .kazoku_zenkoku {
  background-color: #EA604B;
  border-color: #EA604B;
}
#plan .kazoku_zenkoku .name_area {
  color: #EA604B;
}
#plan .kazoku_zenkoku .txt_area .subtit {
  color: #EA604B;
}
#plan .kazoku_zenkoku .price_area .subtit {
  background-color: #EA604B;
}
#plan .kazoku_zenkoku .price_area .price {
  color: #EA604B;
}
#plan .kazokusel_zenkoku {
  background-color: #7D4697;
  border-color: #7D4697;
}
#plan .kazokusel_zenkoku .name_area {
  color: #7D4697;
}
#plan .kazokusel_zenkoku .txt_area .subtit {
  color: #7D4697;
}
#plan .kazokusel_zenkoku .price_area .subtit {
  background-color: #7D4697;
}
#plan .kazokusel_zenkoku .price_area .price {
  color: #7D4697;
}
#plan .simple_kasou {
  background-color: #A88E4D;
  border-color: #A88E4D;
}
#plan .simple_kasou .name_area {
  color: #A88E4D;
}
#plan .simple_kasou .txt_area .subtit {
  color: #A88E4D;
}
#plan .simple_kasou .price_area .subtit {
  background-color: #A88E4D;
}
#plan .simple_kasou .price_area .price {
  color: #A88E4D;
}
#plan .chokusou {
  background-color: #AF5E92;
  border-color: #AF5E92;
}
#plan .chokusou .name_area {
  color: #AF5E92;
}
#plan .chokusou .txt_area .subtit {
  color: #AF5E92;
}
#plan .chokusou .price_area .subtit {
  background-color: #AF5E92;
}
#plan .chokusou .price_area .price {
  color: #AF5E92;
}
#plan .price_info {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-flex-direction: column;
  flex-direction: column;
}
#plan .price_info dt {
  text-align: center;
  font-size: 1.25rem;
  font-weight: 700;
  color: #e85a89;
}
#plan .price_info dd {
  order: 1;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6428571429;
  margin-top: calc(0px - (((1em*1.6428571429) - 1em)/2));
  margin-bottom: calc(0px - (((1em*1.6428571429) - 1em)/2));
}
#plan .price_info::after {
  content: "";
  display: block;
  width: 10.67vw;
  height: 0.53vw;
  background-color: #e85a89;
  margin: 4vw auto;
}

/* #step
-------------------------------*/
#step {
  margin-bottom: 16vw;
}
#step .tit_area .sec_tit {
  margin-left: -1em;
  margin-right: -1em;
}
#step .step li {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border: 1px solid #e85a89;
  height: 28.33vw;
  -webkit-align-items: center;
  align-items: center;
  padding: 0 4.93vw;
}
#step .step li .no {
  width: 16vw;
  margin-right: 4vw;
}
#step .step li .txt_area {
  flex: 1;
}
#step .step li .tit {
  font-size: 1.1785714286rem;
  font-weight: bold;
  margin-bottom: 3.87vw;
}
#step .step li:not(:last-child) {
  position: relative;
  margin-bottom: 9.33vw;
}
#step .step li:not(:last-child)::after {
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  display: block;
  border-width: 4vw 4vw 0 4vw;
  border-color: #e85a89 transparent transparent transparent;
  position: absolute;
  left: 50%;
  z-index: 0;
  translate: -50% 0;
  top: 100%;
  margin-top: 2.67vw;
}

/* #outro
-------------------------------*/
#outro .tit_area {
  background: #feecf2;
  margin-bottom: 0;
}
#outro .tit_area .inner {
  padding: 6.67vw 0;
  position: relative;
}
#outro .tit_area .inner::after, #outro .tit_area .inner::before {
  content: "";
  display: block;
  background-size: 100% 100%;
  position: absolute;
  bottom: 21.87vw;
}
#outro .tit_area .inner::before {
  width: 18.09vw;
  aspect-ratio: 135.6996/176.0179;
  left: -2.4vw;
  background-image: url("../img/outro_img01.png");
}
#outro .tit_area .inner::after {
  width: 16.79vw;
  aspect-ratio: 125.9131/169.7179;
  right: -4.13vw;
  background-image: url("../img/outro_img02.png");
}
#outro .tit_area .inner .sec_tit {
  font-size: 2.04rem;
}
#outro .contact_area {
  background-color: #e85a89;
}
#outro .contact_area .inner {
  padding: 6.67vw 0;
}
#outro .contact_area .inner .tel_box, #outro .contact_area .inner .request_btn {
  width: 92vw;
  margin: auto;
}
#outro .contact_area .inner .tel_box:not(:last-child), #outro .contact_area .inner .request_btn:not(:last-child) {
  margin-bottom: 4vw;
}

.bottom_area {
  display: none;
}
