.main_header {
  background-color: #fff;
  padding: 8px 3%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (min-width: 961px) {
  .main_header {
    padding: 17px 3%;
  }
  .main_header__logo img {
    width: 60px;
  }
}

.main_wrapper {
  width: 100%;
  background-color: #fff;
  /*margin-right: 14vw;
  margin-left: auto;
  box-shadow: 0px 4px 44px 0px rgba(0, 41, 200, 0.14);*/
}
@media screen and (max-width: 1300px) {
  .main_wrapper {
    /*margin-right: 6vw;*/
  }
}
@media screen and (max-width: 960px) {
  .main_wrapper {
    /*width: 450px;
    max-width: 100%;*/
  }
}
@media screen and (max-width: 800px) {
  .main_wrapper {
    /*margin: 0 auto;*/
  }
}

.fv {
  background-color: #E699B8;
  position: relative;
  margin-bottom: 18px;
}
.fv picture img {
  width: 100%;
}
@media screen and (min-width: 961px) {
  .fv {
    margin-bottom: 70px;
  }
}

.contact {
  background: linear-gradient(to right, #80BCD3, #CCAED1 47%, #E896B5);
  padding-bottom: 30px;
  margin-bottom: 60px;
}
.contact--02 {
  padding-top: 30px;
  margin-bottom: 0;
}
@media screen and (min-width: 961px) {
  .contact--02 {
    padding: 80px 0;
  }
}
@media screen and (min-width: 961px) {
  .contact .wrap01 {
    width: 600px;
  }
}

.secChatbot {
  background: linear-gradient(to right bottom, rgba(128, 188, 211, 0.5), rgba(204, 174, 209, 0.5) 43%, rgba(232, 150, 181, 0.5));
  padding-bottom: 50vh;
  padding-top: 1px;
  min-height: 150vh;
}

.chatbot {
  max-width: 450px;
  margin: 0 auto;
}
.chatbot--top {
  border-radius: 10px;
  background-color: #fff;
  padding: 20px 5%;
  max-width: 600px;
}
.chatbot__top_txt {
  text-align: center;
  font-size: 15px;
  font-weight: 500;
  margin-bottom: 20px;
}
.chatbot__blk01 {
  margin-top: 50px;
  display: none;
}
@media screen and (min-width: 961px) {
  .chatbot__blk01 {
    margin-top: 80px;
  }
}
.chatbot__blk01.active {
  display: block;
}
.chatbot__blk01--top {
  margin-top: 0;
  margin-bottom: 30px;
}
.chatbot__flex {
  margin-bottom: 30px;
  display: flex;
  -moz-column-gap: 10px;
       column-gap: 10px;
  opacity: 0;
  transform: translateX(-10%);
  animation: slideanime forwards ease 0.8s;
}
.chatbot__icon {
  background-color: #E699B8;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  padding: 2%;
  flex-shrink: 0;
}
.chatbot__questions {
  margin-top: 20px;
}
.chatbot__question {
  background-color: #E699B8;
  color: #fff;
  letter-spacing: 0.1em;
  border: solid 2px #E699B8;
  font-weight: 500;
  padding: 10px;
  border-radius: 0 10px 10px 10px;
  font-size: 15px;
}
.chatbot input[type=radio] {
  display: none;
}
.chatbot input[type=radio]:checked + label {
  background: #E699B8;
  color: #fff;
}
.chatbot__items {
  display: flex;
  flex-wrap: wrap;
  border-radius: 10px;
  background-color: #fff;
  padding: 20px 5%;
  grid-row-gap: 15px;
  justify-content: space-between;
  opacity: 0;
  transform: translateX(-10%);
  animation: slideanime forwards ease 0.8s 0.3s;
}
.chatbot__items--top {
  padding: 0;
  background-color: transparent;
}
@keyframes slideanime {
  0% {
    opacity: 0;
    transform: translateX(-10%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.chatbot__label01 {
  border: solid 2px #E699B8;
  display: block;
  color: #E699B8;
  font-weight: bold;
  padding: 9px;
  text-align: center;
  border-radius: 6px;
  width: 100%;
  background-color: #fff;
  font-size: 16px;
  transition: all ease 0.3s;
  cursor: pointer;
  font-size: 15px;
}
.chatbot__label01--50 {
  width: 48%;
}
.chatbot__label02 {
  font-size: 15px;
  font-weight: 500;
  margin-bottom: -5px;
}
.chatbot .error_txt {
  font-size: 13px;
  font-weight: 500;
  color: #D91235;
  margin-top: -5px;
}
.chatbot input[type=email], .chatbot input[type=text], .chatbot input[type=url], .chatbot input[type=tel], .chatbot textarea {
  font-weight: 500;
  font-size: 16px;
  padding: 9px;
  width: 100%;
  display: block;
  border: solid 1px #DEDEDE;
  background-color: #fff;
  border-radius: 6px;
  font-family: "Noto Sans JP", sans-serif;
}
.chatbot input[type=email]::-moz-placeholder, .chatbot input[type=text]::-moz-placeholder, .chatbot input[type=url]::-moz-placeholder, .chatbot input[type=tel]::-moz-placeholder, .chatbot textarea::-moz-placeholder {
  font-size: 14px;
  color: #DEDEDE;
}
.chatbot input[type=email]::placeholder, .chatbot input[type=text]::placeholder, .chatbot input[type=url]::placeholder, .chatbot input[type=tel]::placeholder, .chatbot textarea::placeholder {
  font-size: 14px;
  color: #DEDEDE;
}
.chatbot input[type=email]:focus, .chatbot input[type=text]:focus, .chatbot input[type=url]:focus, .chatbot input[type=tel]:focus, .chatbot textarea:focus {
  outline: none;
}
.chatbot input[type=submit] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  font-size: 16px;
  display: inline-block;
  position: relative;
  width: 293px;
  max-width: 100%;
  border-radius: 60px;
  background: center right 28px/18px url("../img/ico-arrow-white.png") no-repeat;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 16px;
  border: none;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 20px;
  transition: all ease 0.3s;
  cursor: pointer;
  pointer-events: none;
  background-color: #D2D6E4;
}
.chatbot input[type=submit].active {
  background-color: #DD4040;
  pointer-events: auto;
}
.chatbot input[type=submit]:hover {
  opacity: 0.7;
  pointer-events: auto;
}
.chatbot input[type=submit].submit_last {
  width: 330px;
  padding: 22px 5%;
  font-size: 18px;
}
.chatbot__select {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  display: block;
  color: #E699B8;
  font-weight: bold;
  padding: 10px;
  border: solid 2px #E699B8;
  border-radius: 6px;
  width: 100%;
  background-color: #fff;
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  background: center right 10px/10px url("../img/ico-select.png") no-repeat #fff;
}
.chatbot__select:focus {
  outline: none;
}
.chatbot__btn_blk {
  margin-top: 40px;
}

.form {
  position: relative;
}
.form__blk01 {
  padding: 30px 5%;
  background-color: #fff;
  border-radius: 10px;
  display: none;
}
.form__blk01.first {
  display: block;
}
.form__blk01.last {
  min-height: 300px;
  padding-top: 40%;
}
.form__sending {
  font-size: 16px;
  text-align: center;
  font-weight: bold;
  color: #E699B8;
}
.form__txt01 {
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 1em;
  text-align: center;
}
.form__items {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.form__items--gap20 {
  gap: 20px;
}
.form__item {
  width: 100%;
}
.form__label01 {
  display: block;
  color: #E699B8;
  font-weight: bold;
  padding: 9px;
  text-align: center;
  border: solid 1px #E699B8;
  border-radius: 6px;
  width: 100%;
  background-color: #fff;
  font-size: 16px;
  transition: all ease 0.3s;
  cursor: pointer;
}
.form__label01:hover {
  opacity: 0.8;
}
.form__label01--50 {
  width: calc(50% - 5px);
}
.form__label02 {
  display: block;
  font-size: 14px;
  font-weight: bold;
  color: #3C3C3C;
  padding-bottom: 10px;
}
.form__select {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  display: block;
  color: #E699B8;
  font-weight: bold;
  padding: 9px;
  border: solid 1px #E699B8;
  border-radius: 6px;
  width: 100%;
  background-color: #fff;
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  background: center right 10px/10px url("../img/ico-select.png") no-repeat #fff;
}
.form__select:focus {
  outline: none;
}
.form__select--gray {
  border-color: #DEDEDE;
}
.form__input_hidden {
  display: none;
}
.form__input_hidden:checked + label {
  background-color: #E699B8;
  color: #fff;
}
.form input[type=email], .form input[type=text], .form input[type=url], .form input[type=tel], .form textarea {
  font-weight: bold;
  font-size: 16px;
  padding: 9px;
  width: 100%;
  display: block;
  border: solid 1px #DEDEDE;
  background-color: #fff;
  border-radius: 6px;
  font-family: "Noto Sans JP", sans-serif;
}
.form input[type=email]::-moz-placeholder, .form input[type=text]::-moz-placeholder, .form input[type=url]::-moz-placeholder, .form input[type=tel]::-moz-placeholder, .form textarea::-moz-placeholder {
  font-size: 14px;
  color: #DEDEDE;
}
.form input[type=email]::placeholder, .form input[type=text]::placeholder, .form input[type=url]::placeholder, .form input[type=tel]::placeholder, .form textarea::placeholder {
  font-size: 14px;
  color: #DEDEDE;
}
.form input[type=email]:focus, .form input[type=text]:focus, .form input[type=url]:focus, .form input[type=tel]:focus, .form textarea:focus {
  outline: none;
}
.form__btn_blk {
  width: 100%;
  margin-top: 30px;
}
.form__btn_blk__flex {
  display: flex;
  align-items: center;
  -moz-column-gap: 20px;
       column-gap: 20px;
  justify-content: center;
}
.form input[type=submit] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  font-size: 16px;
  display: inline-block;
  position: relative;
  width: 293px;
  max-width: 100%;
  border-radius: 60px;
  background: center right 28px/18px url("../img/ico-arrow-white.png") no-repeat;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 16px;
  border: none;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 20px;
  transition: all ease 0.3s;
  cursor: pointer;
  pointer-events: none;
  background-color: #D2D6E4;
}
.form input[type=submit].active {
  background-color: #E699B8;
  pointer-events: auto;
}
.form input[type=submit]:hover {
  opacity: 0.7;
  pointer-events: auto;
}
.form__btn01 {
  font-size: 18px;
  padding-bottom: 0.1em;
  font-family: "Noto Sans JP", sans-serif;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  position: relative;
  display: inline-block;
  width: 113px;
  height: 40px;
  border-radius: 60px;
  border: none;
  color: #fff;
  font-weight: bold;
  position: relative;
  transition: all ease 0.3s;
  cursor: pointer;
  pointer-events: none;
  background-color: #000;
  opacity: 0.3;
}
.form__btn01.active {
  pointer-events: auto;
  background-color: #E699B8;
  opacity: 1;
}
.form__btn01:hover {
  opacity: 0.7;
}
.form__btn01:after {
  display: block;
  content: "";
  position: absolute;
  width: 5px;
  height: 5px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(45deg);
  top: 0;
  bottom: 0;
  right: 14px;
  margin: auto;
}
.form__btn01--return {
  background-color: #fff;
  border: solid 1px #DEDEDE;
  color: #3C3C3C;
  pointer-events: auto;
}
.form__btn01--return:after {
  transform: rotate(-135deg);
  right: auto;
  left: 14px;
  border-color: #3C3C3C;
}
.form__btn01--thanks {
  width: 154px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
}
.form .error_txt {
  font-size: 14px;
  font-weight: 500;
  color: #D91235;
  line-height: 1.6;
}
.form__step {
  font-size: 12px;
  display: flex;
  justify-content: center;
  -moz-column-gap: 7px;
       column-gap: 7px;
  text-align: center;
  margin-bottom: 30px;
}
.form__step__en {
  font-family: "Inter", sans-serif;
  color: #F8E0EA;
  font-weight: bold;
  display: block;
}
.form__step__en.active {
  color: #E699B8;
}
.form__step__jp {
  display: block;
  color: #fff;
  font-weight: 500;
  background-color: #F8E0EA;
  width: 90px;
  border-radius: 106px;
  padding: 0.5em;
}
.form__step__jp.active {
  background-color: #E699B8;
}
.form__step__arrow {
  display: block;
  width: 4px;
  height: 4px;
  border-top: solid 1px #E699B8;
  border-right: solid 1px #E699B8;
  transform: rotate(45deg);
  margin-top: 2.5em;
}

.thanks {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
}
.thanks__wrap {
  width: 800px;
  margin: 0 auto;
  max-width: 90%;
}
.thanks__blk01 {
  padding: 80px 8% 60px;
  background-color: #fff;
  box-shadow: 4.267px 4.267px 0px 0px #D4ECFD;
  border-radius: 10px;
}
@media screen and (max-width: 960px) {
  .thanks__blk01 {
    padding: 60px 5% 30px;
  }
}
.thanks__ttl {
  text-align: center;
  margin-bottom: -2em;
}
.thanks__ttl__span {
  background-color: #E699B8;
  display: inline-block;
  border-radius: 52px;
  color: #fff;
  font-weight: bold;
  font-size: 22px;
  padding: 0.8em;
  width: 90%;
  max-width: 14em;
}
@media screen and (max-width: 960px) {
  .thanks__ttl__span {
    font-size: 18px;
  }
}
.thanks__txt01 {
  font-size: 16px;
  padding-bottom: 33px;
  text-align: center;
}
@media screen and (max-width: 600px) {
  .thanks__txt01 {
    font-size: 14px;
    text-align: left;
  }
}
.thanks__btn01 {
  text-align: center;
  margin-bottom: 44px;
}
.thanks__btn01__a {
  display: inline-block;
  background: linear-gradient(to right, #30ACDC, #CB89D5 47%, #E9548C);
  box-shadow: 0 4px 2px #9C778F;
  color: #fff;
  font-weight: bold;
  line-height: 1.5;
  border-radius: 999px;
  font-size: 18px;
  position: relative;
  width: 100%;
  max-width: 500px;
  padding: 1em;
  transition: all ease 0.3s;
}
@media screen and (max-width: 960px) {
  .thanks__btn01__a {
    font-size: 16px;
    padding: 5px;
  }
}
.thanks__btn01__a--line {
  width: 100%;
  max-width: 500px;
}
.thanks__btn01__a:hover {
  opacity: 0.7;
}
.thanks__btn01__a:after {
  display: block;
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  border-left: solid 7px #fff;
  border-top: solid 7px transparent;
  border-right: solid 7px transparent;
  border-bottom: solid 7px transparent;
  top: 0;
  bottom: 0;
  right: 31px;
  margin: auto;
}

.top01 {
  margin-bottom: 30px;
  background: linear-gradient(transparent 4%, #D8F1FF 4%, #D8F1FF 100%);
  padding-bottom: 40px;
}
.top01__slider {
  padding-bottom: 30px;
}
.top01__dl {
  background-color: #fff;
  padding: 22px 5%;
  border-radius: 10px;
}
.top01__dt {
  text-align: center;
  font-size: 16px;
  letter-spacing: 0.17em;
  padding-bottom: 0.5em;
  border-bottom: solid 1px #D8F1FF;
  margin-bottom: 0.7em;
  font-weight: 500;
}
.top01__dd {
  font-size: 14px;
  line-height: 1.6;
}

.swiper .swiper-pagination {
  position: relative;
  top: auto;
  bottom: auto;
  width: auto;
  margin: auto;
  display: flex;
  margin: 0;
}

.swiper-pagination-bullet {
  background-color: #fff;
  opacity: 1;
}

.swiper-pagination-bullet-active {
  background-color: #E699B8;
}

.swiper-button-next, .swiper-button-prev {
  width: 34px;
  height: 34px;
  position: relative;
  top: auto;
  right: auto;
  left: auto;
  transform: none;
  margin: auto;
  flex-shrink: 0;
}
.swiper-button-next:after, .swiper-button-prev:after {
  display: none;
}

.swiper-button-next {
  background: center/contain url("../img/arrow-right.png") no-repeat;
  margin-left: 0;
  margin-right: auto;
}

.swiper-button-prev {
  background: center/contain url("../img/arrow-left.png") no-repeat;
  margin-left: auto;
  margin-right: 0;
}

.swiper__deco {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 18px;
       column-gap: 18px;
  margin-top: 20px;
}

.top02 {
  margin-top: 50px;
}
@media screen and (min-width: 961px) {
  .top02 .wrap01 {
    width: 900px;
    position: relative;
  }
}
.top02__slider {
  position: relative;
}
.top02__img01 {
  position: absolute;
  right: 5%;
  top: -60px;
}
@media screen and (min-width: 961px) {
  .top02__img01 {
    top: -100px;
    right: 0;
  }
}
.top02__bg {
  background-color: #FBF0F4;
  padding: 40px 0 30px;
  position: relative;
}

.bad {
  margin-top: 55px;
  margin-bottom: 30px;
  padding: 40px 0 30px;
  position: relative;
  background-color: #EDEDED;
}
@media screen and (min-width: 961px) {
  .bad {
    margin-bottom: 100px;
    padding: 60px 0 70px;
  }
  .bad .wrap01 {
    width: 900px;
    position: relative;
  }
}
.bad__li {
  position: relative;
  margin-bottom: 10px;
}
.bad__li:last-of-type {
  margin-bottom: 0;
}

.top03 {
  padding-bottom: 50px;
}
.top03__li {
  margin-bottom: 10px;
}
.top03__li:last-of-type {
  margin-bottom: 0;
}

.top04 {
  background: linear-gradient(to bottom, rgba(128, 188, 211, 0.15), rgba(204, 174, 209, 0.15) 43%, rgba(232, 150, 181, 0.15));
  padding: 60px 0;
}
@media screen and (min-width: 961px) {
  .top04 {
    padding: 100px 0;
  }
}
.top04__ol {
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 961px) {
  .top04__ol {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 25px 2.6%;
  }
  .top04__ol:after {
    display: block;
    content: "";
    position: absolute;
    background: linear-gradient(to right, #80BCD3, #CCAED1 47%, #E896B5);
    height: 2px;
    width: 60%;
    left: 8%;
    bottom: 100px;
  }
}
.top04__ol:before {
  display: block;
  content: "";
  position: absolute;
  width: 2px;
  height: 90%;
  background: linear-gradient(to bottom, #80BCD3, #CCAED1 47%, #E896B5);
  top: 0;
  bottom: 0;
  left: 15%;
  margin: auto;
  z-index: 1;
}
@media screen and (min-width: 961px) {
  .top04__ol:before {
    background: linear-gradient(to right, #80BCD3, #CCAED1 47%, #E896B5);
    height: 2px;
    width: 100%;
    top: 120px;
    right: -30px;
    bottom: auto;
    left: auto;
  }
}
.top04__li {
  position: relative;
  z-index: 2;
  margin-bottom: 15px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  min-height: 78px;
  padding: 20px 5%;
  background-color: #fff;
}
.top04__li:last-of-type {
  margin-bottom: 0;
}
@media screen and (min-width: 961px) {
  .top04__li {
    flex-direction: column;
    width: 23%;
    padding: 20px 20px;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 0;
  }
}
.top04__num {
  font-family: "Inter", sans-serif;
  color: #E699B8;
  font-weight: bold;
  font-size: 30px;
  margin-right: 15px;
}
@media screen and (min-width: 961px) {
  .top04__num {
    margin-right: 0;
    margin-bottom: 10px;
  }
}
.top04__num--top {
  margin-top: 0;
  margin-bottom: auto;
}
@media screen and (min-width: 961px) {
  .top04__num--top {
    margin-bottom: 10px;
  }
}
.top04__txt01 {
  margin-right: 15px;
}
@media screen and (min-width: 961px) {
  .top04__txt01 {
    margin-bottom: 30px;
    margin-right: 0;
  }
}
.top04__txt01__span01 {
  display: block;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.6;
}
@media screen and (min-width: 961px) {
  .top04__txt01__span01 {
    font-size: min(1.6vw, 16px);
  }
}
.top04__txt01__span02 {
  font-size: 13px;
  margin-top: 0.4em;
  display: block;
}
.top04__ico {
  margin-right: 0;
  margin-left: auto;
  width: 50px;
  text-align: center;
  flex-shrink: 0;
}
@media screen and (min-width: 961px) {
  .top04__ico {
    margin-right: auto;
    margin-top: auto;
    margin-bottom: 0;
  }
}

.top05 {
  padding: 60px 0;
}
@media screen and (min-width: 961px) {
  .top05 {
    padding: 70px 0 100px;
  }
  .top05 .wrap01 {
    width: 900px;
  }
}
.top05__dl {
  background-color: #fff;
  padding: 20px 0;
  margin-bottom: 7px;
  border-bottom: solid 1px #D6D6D6;
  line-height: 1.7;
}
.top05__dl:last-of-type {
  margin-bottom: 0;
  border-bottom: none;
}
.top05__dt, .top05__dd {
  position: relative;
  padding-left: 43px;
}
.top05__dt:before, .top05__dd:before {
  display: block;
  content: "";
  position: absolute;
  font-size: 24px;
  font-weight: bold;
  top: -7px;
  left: 0;
  font-family: "Inter", sans-serif;
}
.top05__dt {
  cursor: pointer;
  padding-right: 22px;
}
.top05__dt:before {
  color: #80BCD3;
  content: "Q";
}
.top05__dt:after {
  width: 7px;
  height: 7px;
  display: block;
  content: "";
  position: absolute;
  border-top: solid 2px #80BCD3;
  border-right: solid 2px #80BCD3;
  transform: rotate(135deg);
  top: 9px;
  right: 0;
  margin: auto;
  transition: all ease 0.5s;
}
.top05__dt.active:after {
  border-color: #80BCD3;
  transform: rotate(-45deg);
}
.top05__dd {
  margin-top: 30px;
  display: none;
}
.top05__dd:before {
  content: "A";
  color: #E896B5;
}

.top06 {
  background-color: #fff;
  padding: 50px 0 60px;
}
@media screen and (min-width: 961px) {
  .top06 {
    padding: 70px 0 150px;
  }
  .top06 .wrap01 {
    width: 900px;
  }
}
.top06__dl {
  border-bottom: solid 1px #E699B8;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
@media screen and (min-width: 961px) {
  .top06__dl {
    display: flex;
    padding-bottom: 30px;
    margin-bottom: 35px;
  }
}
.top06__dt {
  font-weight: bold;
  padding-bottom: 10px;
}
@media screen and (min-width: 961px) {
  .top06__dt {
    min-width: 300px;
  }
}

.top07 {
  padding-bottom: 20px;
  margin-bottom: 50px;
  background: linear-gradient(transparent 5%, #F1FAFF 5%, #F1FAFF 100%);
}
.cmn_note01 {
  font-size: 0.7em;
  text-align: right;
  margin-top: 1em;
}

.cta01 {
  display: flex;
  flex-direction: column;
  margin-bottom: 60px;
  gap: 30px;
}
@media screen and (min-width: 961px) {
  .cta01 {
    margin-bottom: 100px;
    justify-content: center;
    gap: 5%;
    flex-direction: row;
  }
}

.about {
  margin-bottom: 40px;
}
@media screen and (min-width: 961px) {
  .about {
    margin-bottom: 100px;
  }
}
.about__txt {
  margin-bottom: 40px;
  line-height: 1.6;
  font-weight: 500;
}
@media screen and (min-width: 961px) {
  .about__flex {
    display: flex;
    -moz-column-gap: 7%;
         column-gap: 7%;
    justify-content: space-between;
    align-items: center;
  }
  .about__txt_blk {
    width: 44%;
    flex-shrink: 0;
  }
}

.font_blue {
  color: #2685AD;
}

.problem {
  padding: 60px 0;
  background: linear-gradient(to bottom, #80BCD3, #CCAED1 47%, #E896B5);
}
.problem__ttl {
  text-align: center;
  color: #fff;
  font-weight: bold;
  margin-bottom: 20px;
}
@media screen and (min-width: 961px) {
  .problem__ttl {
    margin-bottom: 40px;
  }
}
.problem__ttl__en {
  display: block;
  margin-bottom: 20px;
}
.problem__ttl__jp {
  display: block;
  line-height: 1.6;
  font-size: 24px;
}
@media screen and (min-width: 961px) {
  .problem__ttl__jp {
    font-size: 32px;
  }
}
.problem__ttl i {
  position: relative;
}
.problem__ttl i:after {
  display: block;
  content: "";
  position: absolute;
  width: 3px;
  height: 3px;
  background-color: #fff;
  border-radius: 50%;
  top: -1px;
  right: 0;
  left: 0;
  margin: auto;
}
.problem__ul {
  padding: 30px 6%;
  border-radius: 10px;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  grid-row-gap: 20px;
  margin-bottom: 20px;
}
@media screen and (min-width: 961px) {
  .problem__ul {
    width: 700px;
    margin: 0 auto 50px;
    padding: 40px 13%;
  }
}
.problem__li {
  padding-left: 30px;
  position: relative;
  line-height: 1.8;
  font-weight: 500;
}
.problem__li .font_blue {
  font-weight: bold;
}
.problem__li:before {
  display: block;
  content: "";
  position: absolute;
  width: 15px;
  height: 15px;
  background: center/contain url("../img/ico-arrow_grade.png") no-repeat;
  top: 7px;
  left: 4px;
}
.problem__txt {
  color: #fff;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}

.reason {
  padding: 60px 0 30px;
}
@media screen and (min-width: 961px) {
  .reason {
    padding: 100px 0;
  }
}
.reason__ul {
  margin-top: 54px;
}
.reason__li {
  margin-bottom: 44px;
  position: relative;
  padding: 40px 5% 30px;
  border-radius: 10px;
  border: solid 2px #E699B8;
}
@media screen and (min-width: 961px) {
  .reason__li {
    display: flex;
    -moz-column-gap: 5%;
         column-gap: 5%;
  }
  .reason__li .ttl_grade {
    max-width: 333px;
  }
}
.reason__li:last-of-type {
  margin-bottom: 0;
}
.reason__num {
  position: absolute;
  font-weight: bold;
  color: #E699B8;
  font-size: 32px;
  border: solid 2px #E699B8;
  background-color: #fff;
  border-radius: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 84px;
  height: 48px;
  line-height: 1;
  left: 5%;
  top: 0;
  transform: translateY(-50%);
}
.reason__txt {
  line-height: 1.6;
  font-weight: 500;
  margin-bottom: 20px;
}
.reason__img {
  border-radius: 10px;
  overflow: hidden;
}
@media screen and (min-width: 961px) {
  .reason__img {
    width: 48%;
    flex-shrink: 0;
  }
}
.reason__img img {
  width: 100%;
}

.popup_cta {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100svh;
  z-index: 1000;
}
.popup_cta a {
  transition: all ease 0.3s;
  display: block;
}
.popup_cta__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}
.popup_cta__contents {
  width: 1000px;
  max-width: 80%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  left: 0;
  margin: auto;
}
.popup_cta__inner {
  max-height: 80svh;
  overflow: auto;
}
.popup_cta__close {
  position: absolute;
  right: 0;
  top: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background-color: #000;
  border: solid 1px #fff;
  line-height: 1;
  font-size: 20px;
  font-weight: 900;
  transform: translateY(-100%);
  cursor: pointer;
}

.gauge {
  display: none;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 54px;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.05);
}
.gauge__inner {
  width: 450px;
  max-width: 90%;
  margin: 0 auto;
}
.gauge__flex {
  display: flex;
  align-items: center;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
.gauge__bar {
  flex-grow: 1;
  background-color: #D8F1FF;
  border-radius: 100px;
  height: 30px;
  padding: 5px;
}
.gauge__inbar {
  display: block;
  width: 45%;
  background: linear-gradient(to right, #80BCD3, #CCAED1 47%, #E896B5);
  border-radius: 100px;
  height: 100%;
  transition: all ease 0.5s;
}
.gauge__txts {
  color: #80BCD3;
  font-weight: 500;
  font-size: 14px;
}
.gauge__num {
  font-size: 1.6em;
  font-weight: bold;
  display: inline-block;
  padding-right: 0.1em;
}

.lastMassage {
  text-align: center;
}
.lastMassage__txt01 {
  font-weight: bold;
  color: #80BCD3;
  font-size: 1.1em;
  margin-bottom: 5px;
}
.lastMassage__txt02 {
  font-size: 14px;
}/*# sourceMappingURL=page_style.css.map */