body {
  font-family: noto-sans-cjk-jp, sans-serif;
  font-style: normal;
}

.ja {
  font-family: fot-tsukuardgothic-std, sans-serif;
}

.pc {
  display: none;
}

.sp {
  display: block;
}

@media screen and (min-width: 769px) {
  .pc {
    display: block;
  }
  .sp {
    display: none;
  }
}
.flex {
  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;
}

img {
  width: 100%;
}

.inner {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 769px) {
  .inner {
    max-width: 500px;
    margin: 0 auto;
    padding: 0 7.5px;
  }
}

.inner_ans {
  max-width: 500px;
  margin: 0 auto;
  padding: 0 7.5px;
}
@media screen and (min-width: 769px) {
  .inner_ans {
    max-width: 1024px;
  }
}

.sec__title {
  font-size: 30px;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0.05em;
  font-weight: bold;
  margin-bottom: 30px;
}

.sec__line {
  width: 50px;
  height: 3px;
  margin: 0 auto;
  background: #2c95de;
}

.btn {
  max-width: 320px;
  width: 100%;
  position: relative;
  margin: 0 auto;
}
.btn__wrapper {
  background: #ffec00;
  border-radius: 80px;
  height: 80px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  gap: 5px;
  position: relative;
  z-index: 2;
}
.btn__sub {
  font-size: 18px;
  font-weight: 900;
  text-align: center;
  color: #299de1;
}
.btn__text {
  font-size: 24px;
  font-weight: 900;
  text-align: center;
  color: #299de1;
  padding-bottom: 5px;
}
.btn__bg {
  position: absolute;
  background: #a69c03;
  width: 100%;
  height: 100%;
  z-index: 1;
  border-radius: 80px;
  top: 6px;
}
.btn__img {
  margin-bottom: 5px;
}

.mv {
  background: url(../img/bg_sp.png);
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 22px;
}
.mv__logo {
  width: 117px;
  padding-left: 22.5px;
  margin-bottom: 30px;
}
@media screen and (min-width: 769px) {
  .mv__logo {
    margin: 0 auto 30px;
    padding-left: 0;
  }
}
.mv__box {
  background: #fff;
  border: 2px solid #000;
  border-radius: 10px;
  padding: 8px 8px 16px;
}
.mv__box--img {
  margin-top: -55px;
  margin-bottom: 28px;
}
.mv__box--read {
  font-size: 12px;
  text-align: center;
  color: #717171;
  margin-top: 23px;
}
.mv__media {
  padding: 30px 22.5px 45px;
}

.about {
  padding-top: 60px;
  padding-bottom: 45px;
  background: #f2f2f2;
  position: relative;
}
.about::after {
  content: "";
  position: absolute;
  background: url(../img/point_bg_sp.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  bottom: -42px;
  left: 0;
  width: 100%;
  height: 42.5px;
}
.about__img {
  padding: 0 20px;
  margin-top: 50px;
  margin-bottom: 50px;
}

.point {
  padding-top: 100px;
  padding-bottom: 80px;
}
.point__item {
  margin-top: 50px;
}
.point__item--img {
  width: 50%;
  margin: 0 auto 30px;
}
.point__item--title {
  font-size: 20px;
  color: #299de1;
  text-align: center;
  font-weight: 500;
  margin-bottom: 20px;
}
.point__item--text {
  padding: 0 20px;
  font-size: 17px;
  color: #333333;
  line-height: 1.75;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.simulation {
  background: url(../img/bg_foot_sp.png);
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 50px;
  padding-bottom: 70px;
}
.simulation__top {
  width: 80%;
  margin: 0 auto;
  margin-bottom: 40px;
}
.simulation__num {
  width: 320px;
  margin: 0 auto 42px;
  position: relative;
}
.simulation__num--main {
  position: absolute;
  top: 0;
  background: #2c95de;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  font-size: 17.5px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: 0.8s;
  transition: 0.8s;
}
.simulation__num #numq1 {
  left: 0px;
}
.simulation__num #numq2 {
  left: 61px;
}
.simulation__num #numq3 {
  left: 119px;
}
.simulation__num #numq4 {
  left: 178px;
}
.simulation__num #numq5 {
  left: 236px;
}
.simulation__num #numq6 {
  left: 295px;
}
.simulation__box {
  background: #fff;
  border: 2px solid #000;
  border-radius: 10px;
  padding: 27px 18px 55px;
}
.simulation__item {
  display: none;
}
.simulation__item--title {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  color: #2b93d0;
  line-height: 1.4;
  margin-bottom: 30px;
}
.simulation__item--btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px 16px;
  margin-top: 30px;
}
.simulation__item--btns.column {
  margin-top: 60px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
}
.simulation__item--btn {
  border-radius: 10px;
  height: 55px;
  width: calc(50% - 8px);
  position: relative;
  cursor: pointer;
}
.simulation__item--btn.column {
  width: 100%;
}
.simulation__item--btn.checkbox-type::after,
.simulation__item--btn::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #a69c03;
  border-radius: 10px;
  top: 5px;
  z-index: 1;
}
.simulation__item--btn input {
  display: none;
}
.simulation__item--btn input[type=button],
.simulation__item--btn input[type=submit] {
  display: block;
  border: none;
    opacity: .7;
    cursor: pointer;
}
.simulation__item--btn.checkbox-type label.on,
.simulation__item--btn label {
  background: #ffec00;
  border-radius: 10px;
  width: 100%;
  height: 100%;
  font-size: 20px;
  color: #2c95de;
  font-weight: bold;
  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;
  position: relative;
  z-index: 2;
  cursor: pointer;
  transition: all .3s;
}
.simulation__item--btn label.on{
  transform: translateY(3px);
}
.simulation__item--btn.checkbox-type::after,
.simulation__item--btn.no::after {
  background: #2f2f2f;
}
.simulation__item--btn.checkbox-type label,
.simulation__item--btn.no label {
  color: #333333;
  background: #d1d1d1;
}
.simulation__item--btn.no .simulation__item--label {
  color: #333333;
  background: #d1d1d1;
}
.simulation__item--label {
  background: #ffec00;
  border-radius: 10px;
  width: 100%;
  height: 100%;
  font-size: 20px;
  color: #2c95de;
  font-weight: bold;
  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;
  position: relative;
  z-index: 2;
}
.error-text{
  font-size: 16px;
  font-weight: 700;
  color: #FF0000;
  padding: 4vh 0;
  text-align: center;
  display: none;
}
.error-item .error-text{
  display: block;
}
.simulation__item--inps {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-right: 10px;
}
.simulation__item--inp {
  max-width: 225px;
  width: 100%;
  height: 55px;
  border-radius: 10px;
  border: 2.5px solid #2c95de;
  padding: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-left: 30px;
}
.simulation__item--inp--text {
  color: #2c95de;
  font-weight: bold;
  font-size: 22.5px;
  padding-left: 8px;
}
.simulation__item--inp input {
  font-size: 16px;
  border: none;
  width: 100%;
  height: 100%;
}
.simulation__item--inp input:focus {
  outline: none;
}
.simulation__name {
  margin-bottom: 30px;
}
.simulation__name--title {
  color: #2c95de;
  font-size: 22.5px;
  font-weight: bold;
  margin-bottom: 5px;
}
.simulation__name--inp {
  width: 100%;
  height: 55px;
  border-radius: 10px;
  border: 2.5px solid #2c95de;
  padding: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.simulation__name--inp input {
  font-size: 16px;
  border: none;
  width: 100%;
  height: 100%;
}
.simulation__name--inp input:focus {
  outline: none;
}

.footer {
  padding-top: 60px;
  padding-bottom: 30px;
}
.footer__logo {
  width: 107px;
  margin: 0 auto 20px;
}
.footer__text {
  font-size: 13px;
  text-align: center;
  line-height: 1.7;
  color: #333333;
  font-weight: 500;
}
.footer__copy {
  font-size: 13px;
  font-weight: 500;
  color: #a0a0a0;
  text-align: center;
  margin-top: 10px;
}

.ans_mv {
  background: url(../img/mv_answer_bg_sp.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  padding-top: 22px;
  padding-bottom: 65px;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .ans_mv {
    background: url(../img/fv_bg_pc.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
  }
}
.ans_mv__main {
  max-width: 355px;
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.ans_mv__sub {
  white-space: nowrap;
  font-size: 25px;
  font-weight: bold;
  color: #333333;
  letter-spacing: 0.05em;
  position: absolute;
  top: 155px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.ans_mv__text {
  white-space: nowrap;
  color: #2c95de;
  font-size: 37.5px;
  font-weight: bold;
  letter-spacing: 0.05em;
  position: absolute;
  top: 200px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.ans_mv__text .small {
  font-size: 18px;
  color: #333333;
  vertical-align: bottom;
}
.ans_mv__icon {
  width: 100%;
  position: absolute;
  top: -60px;
}
@media screen and (min-width: 769px) {
  .ans_mv__icon {
    width: 1024px;
    left: 50%;
    -webkit-transform: translate(-50%);
            transform: translate(-50%);
  }
}
.ans_mv__people {
  width: 100px;
  position: absolute;
  bottom: -70px;
  left: 46%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 769px) {
  .ans_mv__people {
    width: 140px;
  }
}

.result {
  background: #fbf17a;
  position: relative;
  padding-top: 30px;
  padding-bottom: 20px;
}
@media screen and (min-width: 769px) {
  .result {
    margin-top: -3px;
    margin-bottom: 70px;
  }
}
.result::after {
  content: "";
  position: absolute;
  background: url(../img/result_bg_icon.png);
  background-repeat: no-repeat;
  background-size: 100%;
  bottom: -42px;
  width: 100%;
  height: 42px;
}
@media screen and (min-width: 769px) {
  .result::after {
    background: url(../img/result_bg_icon_pc.png);
    background-repeat: no-repeat;
    background-size: 100%;
    bottom: -85px;
    max-width: 1920px;
    width: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    height: 85px;
  }
}
.result .inner {
  padding: 0 20px;
}
.result__top {
  width: 225px;
  margin: 0 auto 20px;
}
@media screen and (min-width: 769px) {
  .result__top {
    width: 350px;
    margin: 30px auto 50px;
  }
}
.result__main {
  position: relative;
  padding: 35px 15px 20px;
  margin-bottom: 50px;
}
@media screen and (min-width: 769px) {
  .result__main {
    padding: 75px 50px 40px;
  }
}
.result__main--box {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.result__main--box img {
  height: 100%;
}
.result__main--top {
  position: relative;
  font-size: 20px;
  font-weight: bold;
  color: #333333;
  line-height: 1.625;
  margin-bottom: 10px;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 769px) {
  .result__main--top {
    font-size: 30px;
  }
}
.result__main--top .blue {
  color: #2c95de;
}
.result__main--line {
  position: relative;
  height: 1px;
  width: 100%;
  background: #828282;
  margin-top: 15px;
  margin-bottom: 15px;
}
.result__main--flex {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
}
.result__main--flex.mb {
  margin-bottom: 25px;
}
@media screen and (min-width: 769px) {
  .result__main--flex.mb {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 769px) {
  .result__main--flex_pc {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 100px;
    -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;
  }
}
.result__main--icon {
  width: 45px;
}
.result__main--text {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.625;
  color: #333333;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 769px) {
  .result__main--text {
    font-size: 26px;
    line-height: 1.4;
  }
}
.result__main--text .green {
  color: #75a919;
}
.result__main--text .purple {
  color: #af61ff;
}
.result__foot--img {
  margin-bottom: 30px;
}
.result__foot--text {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.625;
  color: #333333;
}

.cvarea {
  padding-top: 100px;
}
.cvarea .inner {
  padding: 0 20px;
}
.cvarea__top {
  margin-bottom: 20px;
}
.cvarea__top--title {
  text-align: center;
  color: #2c95de;
  font-size: 27px;
  font-weight: bold;
  line-height: 1.35;
  margin-bottom: 10px;
}
.cvarea__top--read {
  font-size: 19px;
  color: #333333;
  font-weight: 500;
  text-align: center;
}
.cvarea__item {
  margin-bottom: 55px;
}
.cvarea__box {
  position: relative;
}
.cvarea__box--img {
  position: relative;
}
.cvarea__box .btn {
  position: absolute;
  bottom: 50px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}/*# sourceMappingURL=style.css.map */

/* 追加 */
/* display */
@media (max-width: 768px) {
  .sp_dn {
    display: none;
  }
}

.sp_db {
  display: none;
}
@media (max-width: 768px) {
  .sp_db {
    display: block;
  }
}

.mv__box--img {
  margin-top: 0;
}
.mv__box {
  padding: 20px 100px;
}
.btn__img {
  max-width: 600px;
  margin: 0 auto;
}
.btn {
  max-width: 600px;
  display: block;
}
@media (max-width: 768px) {
  .mv__box {
    padding: 8px 8px 16px;
  }
  .mv__box--img {
    margin-top: -50px;
  }
}

.mv__media {
  width: 600px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .mv__media {
    width: 100%;
  }
}

.point__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.point__item--img {
  width: 70%;
}
.point__item {
  width: 32%;
}
.point__item--title {
  line-height: 1.5;
}
.point__item--text {
  font-size: 15px;
}
@media (max-width: 768px) {
  .point__items {
    display: flex;
    justify-content: space-between;
  }
  .point__item--img {
    width: 50%;
  }
  .point__item {
    width: 100%;
  }
  .point__item--text {
    font-size: 17px;
  }
}

.simulation {
  padding: 150px 0;
}
.simulation__top {
  width: 600px;
}
.simulation__item--btns {
  justify-content: center;
}
.simulation__item--btn {
  width: 320px;
}

.simulation__box {
  padding-bottom: 100px;
}
.simulation__num {
  margin-bottom: 80px;
}
.simulation__item--title {
  margin-bottom: 100px;
}
.simulation_row {
  display: flex;
  justify-content: space-between;
}
.simulation_row .item--name {
  width: 48%;
}

@media (max-width: 768px) {
  .simulation {
    padding-top: 50px;
    padding-bottom: 70px;
  }
  .simulation__top {
    width: 100%;
  }
  .simulation__num {
    margin-bottom: 40px;
    width: 100%;
  }
  .simulation__item--title {
    margin-bottom: 30px;
  }
  .simulation__box {
    padding-bottom: 50px;
  }
  .simulation__item--btn {
    width: 47%;
  }
  .simulation__num #numq2 {
    left: 55px;
  }
  .simulation__num #numq3 {
    left: 110px;
  }
  .simulation__num #numq4 {
    left: 165px;
  }
  .simulation__num #numq5 {
    left: 216px;
  }
  .simulation__num #numq6 {
    left: 272px;
  }
}

.mv__box--img .sp_dn {
  position: relative;
}
.mv__box--img .sp_dn .mv_item_blue {
  position: absolute;
  width: 6%;
  bottom: -60px;
  left: -60px;
}

/* answer */
.ans_mv__people {
  z-index: 100;
  bottom: -65px;
  width: 180px;
  left: 95%;
}
@media (max-width: 768px) {
  .ans_mv__people {
    width: 120px;
    left: 45%;
  }
}

.about2_text {
  text-align: center;
  padding: 30px 0;
}
.about2_text p {
  font-size: 28px;
  line-height: 1.6;
}
.result_graph img {
  border: 3px solid #c4c4c4;
  border-radius: 10px;
}
.result_graph {
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .result_graph {
    margin-bottom: 10px;
  }
  .result_graph img {
    border: 1px solid #c4c4c4;
    border-radius: 5px;
  }
  .about2_text p {
    font-size: 20px;
  }
  .result .inner {
    width: 90%;
    padding: 0;
  }
}

.free_ttl {
  text-align: center;
  margin-bottom: 30px;
}
.free_ttl h3 {
  font-size: 28px;
  line-height: 1.6;
}
.free_ttl h3 span {
  font-size: 36px;
  color: #2c95de;
  display: block;
}
.free_point {
  margin-bottom: 60px;
}
.free_point_img {
  border: 3.5px solid #000;
  border-top: none;
  border-bottom: none;
  margin-top: -5px;
}
.free_point_textarea {
  background-color: #f3f8f9;
  padding: 30px;
  border: 4px solid #000;
  border-top: none;
  border-radius: 0 0 10px 10px;
}
.free_point_list {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}
.free_point_list li {
  color: #2c95de;
  font-size: 20px;
  font-weight: bold;
}
.free_point_list li span img {
  width: 20px;
}

.free_point_text {
  margin-bottom: 30px;
}
.free_point_text p {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
.text_red {
  color: #de562c;
}
@media (max-width: 768px) {
  .free {
    padding-top: 100px;
  }
  .free_point_list {
    display: block;
  }
  .free_point_list li {
    margin-bottom: 20px;
  }
  .free_point_textarea {
    padding: 20px 10px 50px;
  }
  .free_point_img {
    border: 4px solid #000;
    border-bottom: none

  }
  .free_ttl h3 {
    font-size: 20px;
  }
  .free_ttl h3 span {
  font-size: 24px;
  }
  .inner {
    width: 90%;
  }
  .free_point {
    margin-bottom: 30px;
  }
}

.contact__form {
  margin: 0 auto;
  width: 600px;
}
.formItem {
  flex-direction: column;
    /* justify-content: center;
    align-items: center; */
}
.formItem dd {
  width: 100%;
}

.formItem:not(:first-child).is-show {
  margin: 0 auto;
  width: 100%;
}
.formItem__button {
  width: 100%;
}
.contact__title {
  margin-bottom: 30px;
  line-height: 1.5;
}

@media (max-width: 768px) {
.contact__form {
  width: 100%;
}
}

@media (max-width: 768px) {
  .footer {
    padding-top: 20px;
  }
}
