@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, img, small, strong, b, dl, dt, dd, ol, ul, li,
form, label, legend, table, tbody, tfoot, thead, tr, th, td, footer, header, menu, nav, section, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: bottom;
  background: transparent;
}

html {
  touch-action: manipulation;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
}

ul li {
  list-style: none;
}

a {
  margin: 0;
  padding: 0;
  color: #333;
  text-decoration: none;
  vertical-align: baseline;
}

a:hover {
  opacity: 0.7;
}

table {
  border-spacing: 0;
}

img {
  width: 100%;
}

/* ===================================================================================
  resetここまで
=================================================================================== */
body {
  font-family: "Noto Sans JP", sans-serif;
  color: #333;
  font-size: 30px;
  font-weight: 500;
}
@media screen and (max-width: 750px) {
  body {
    font-size: 4vw;
  }
}

.wrap {
  max-width: 750px;
  margin: 0 auto;
}

.relative {
  position: relative;
}

.end {
  background: url(../img/end_bg.jpg) no-repeat bottom center/100%;
  padding-bottom: 37px;
}
@media screen and (max-width: 750px) {
  .end {
    padding-bottom: 4.9333333333vw;
  }
}
.end .top_text {
  color: #012A71;
  font-size: 42px;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.05em;
  padding: 35px 0 20px;
  background: #FFB2B2;
}
@media screen and (max-width: 750px) {
  .end .top_text {
    font-size: 5.6vw;
    padding: 4.6666666667vw 0 2.6666666667vw;
  }
}
.end .text01 {
  width: 662px;
  margin: 55px auto 20px;
}
@media screen and (max-width: 750px) {
  .end .text01 {
    width: 88.2666666667vw;
    margin: 7.3333333333vw auto 2.6666666667vw;
  }
}
.end .text02 {
  color: #012A71;
  font-size: 46px;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .end .text02 {
    font-size: 6.1333333333vw;
  }
}
.end .box {
  width: 646px;
  margin: 25px auto 100px;
  padding: 25px 0;
  border-radius: 20px;
  border: 3px solid #FF7C95;
  box-sizing: border-box;
}
@media screen and (max-width: 750px) {
  .end .box {
    width: 86.1333333333vw;
    margin: 3.3333333333vw auto 13.3333333333vw;
    padding: 3.3333333333vw 0;
    border-radius: 2.6666666667vw;
    border: 0.4vw solid #FF7C95;
  }
}
.end .box .text {
  color: #012A71;
  font-size: 30px;
  line-height: 1.73;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .end .box .text {
    font-size: 4vw;
  }
}
.end .box .text a {
  color: #012A71;
  text-decoration: underline;
}
.end .kome {
  font-size: 22px;
  font-weight: 400;
  text-align: right;
  margin-right: 25px;
}
@media screen and (max-width: 750px) {
  .end .kome {
    font-size: 2.9333333333vw;
    margin-right: 3.3333333333vw;
  }
}

.result .result_fv {
  background: url(../img/result_bg01.jpg) no-repeat top left/100%;
}
.result .fv {
  padding-bottom: 25px;
}
@media screen and (max-width: 750px) {
  .result .fv {
    padding-bottom: 3.3333333333vw;
  }
}
.result .result_about h2 {
  color: #012A71;
  font-size: 44px;
  line-height: 1.59;
  text-align: center;
  font-weight: 900;
  position: relative;
}
@media screen and (max-width: 750px) {
  .result .result_about h2 {
    font-size: 5.8666666667vw;
  }
}
.result .result_about h2::before, .result .result_about h2::after {
  content: "";
  display: block;
  width: 64px;
  height: 124px;
  position: absolute;
  top: 25px;
}
@media screen and (max-width: 750px) {
  .result .result_about h2::before, .result .result_about h2::after {
    width: 8.5333333333vw;
    height: 16.5333333333vw;
    top: 3.3333333333vw;
  }
}
.result .result_about h2::before {
  background: url(../img/result_about_tit_line_l.png) no-repeat top left/100%;
  left: 38px;
}
@media screen and (max-width: 750px) {
  .result .result_about h2::before {
    left: 5.0666666667vw;
  }
}
.result .result_about h2::after {
  background: url(../img/result_about_tit_line_r.png) no-repeat top left/100%;
  right: 38px;
}
@media screen and (max-width: 750px) {
  .result .result_about h2::after {
    right: 5.0666666667vw;
  }
}
.result .result_about h2 span {
  background: linear-gradient(transparent 75%, #FFD8D8 75% 100%, transparent 100%);
}
.result .result_about .text01 {
  color: #012A71;
  font-size: 32px;
  line-height: 1.68;
  text-align: center;
  font-weight: 700;
  margin: 60px 0 30px;
}
@media screen and (max-width: 750px) {
  .result .result_about .text01 {
    font-size: 4.2666666667vw;
    margin: 8vw 0 4vw;
  }
}
.result .result_about .text02 {
  color: #FF7C95;
  font-size: 40px;
  line-height: 1.85;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .result .result_about .text02 {
    font-size: 5.3333333333vw;
  }
}
.result .result_about .text02 strong {
  padding-bottom: 8px;
  background-image: linear-gradient(to right, #FF7C95, #FF7C95 3px, transparent 3px);
  background-size: 10px 3px;
  background-position: left bottom;
  background-repeat: repeat-x;
}
@media screen and (max-width: 750px) {
  .result .result_about .text02 strong {
    padding-bottom: 1.0666666667vw;
    background-image: linear-gradient(to right, #FF7C95, #FF7C95 0.4vw, transparent 0.4vw);
    background-size: 1.3333333333vw 0.4vw;
  }
}
.result .result_about .rel {
  position: relative;
}
.result .result_about .rel .text {
  font-size: 30px;
  line-height: 1.66;
  text-align: center;
  font-weight: 500;
  position: absolute;
  top: 310px;
  left: 0;
  right: 0;
}
@media screen and (max-width: 750px) {
  .result .result_about .rel .text {
    font-size: 4vw;
    top: 41.3333333333vw;
  }
}
.result .result_dog {
  background: url(../img/result_bg02_top.jpg) no-repeat top left/100%, url(../img/result_bg02_bot.jpg) no-repeat bottom left/100%, url(../img/result_bg0203_mid.jpg) repeat-y top left/100%;
  padding: 220px 0 150px;
}
@media screen and (max-width: 750px) {
  .result .result_dog {
    padding: 29.3333333333vw 0 20vw;
  }
}
.result .result_cat {
  background: url(../img/result_bg03_top.jpg) no-repeat top left/100%, url(../img/result_bg03_bot.jpg) no-repeat bottom left/100%, url(../img/result_bg0203_mid.jpg) repeat-y top left/100%;
  padding-bottom: 233px;
}
@media screen and (max-width: 750px) {
  .result .result_cat {
    padding-bottom: 31.0666666667vw;
  }
}
.result .card_box {
  box-sizing: border-box;
}
.result .card_box .box {
  width: 646px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .result .card_box .box {
    width: 86.1333333333vw;
  }
}
.result .card_box .box .block {
  margin-bottom: 95px;
}
@media screen and (max-width: 750px) {
  .result .card_box .box .block {
    margin-bottom: 12.6666666667vw;
  }
}
.result .card_box .box .block:last-child {
  margin-bottom: 0;
}
.result .card_box .box .block .img {
  width: 550px;
  margin: 0 auto;
  position: relative;
  z-index: 9;
}
@media screen and (max-width: 750px) {
  .result .card_box .box .block .img {
    width: 73.3333333333vw;
  }
}
.result .card_box .box .block .img img {
  filter: drop-shadow(15px 15px 15px rgba(0, 0, 0, 0.3));
  position: relative;
  z-index: 99;
}
@media screen and (max-width: 750px) {
  .result .card_box .box .block .img img {
    filter: drop-shadow(2vw 2vw 2vw rgba(0, 0, 0, 0.3));
  }
}
.result .card_box .box .block .name {
  text-align: center;
  margin: 40px auto 0;
}
@media screen and (max-width: 750px) {
  .result .card_box .box .block .name {
    margin: 5.3333333333vw auto 0;
  }
}
.result .card_box .box .block .name strong {
  display: inline-block;
  color: #fff;
  font-size: 32px;
  line-height: 1.4;
  text-align: center;
  font-weight: 700;
  min-width: 300px;
  padding: 5px 40px 8px;
  border-radius: 40px;
  background: #012A71;
}
@media screen and (max-width: 750px) {
  .result .card_box .box .block .name strong {
    font-size: 4.2666666667vw;
    min-width: 40vw;
    padding: 0.6666666667vw 5.3333333333vw 1.0666666667vw;
    border-radius: 5.3333333333vw;
  }
}
.result .card_box .text {
  font-size: 32px;
  line-height: 2.37;
  text-align: center;
  margin-top: 155px;
}
@media screen and (max-width: 750px) {
  .result .card_box .text {
    font-size: 4.2666666667vw;
    margin-top: 20.6666666667vw;
  }
}
.result .card_box .text strong {
  font-weight: 700;
  padding-bottom: 10px;
  border-bottom: 3px solid #fff;
}
@media screen and (max-width: 750px) {
  .result .card_box .text strong {
    padding-bottom: 1.3333333333vw;
    border-bottom: 0.4vw solid #fff;
  }
}
.result .result_howto {
  background: #FFE5E5;
  padding: 145px 0 70px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .result .result_howto {
    padding: 19.3333333333vw 0 9.3333333333vw;
  }
}
.result .result_howto h2 {
  color: #FF7C95;
  font-size: 54px;
  line-height: 1.37;
  text-align: center;
  font-weight: 700;
  position: absolute;
  top: -25px;
  left: 0;
  right: 0;
}
@media screen and (max-width: 750px) {
  .result .result_howto h2 {
    font-size: 7.2vw;
    top: -3.3333333333vw;
  }
}
.result .result_howto .box {
  width: 646px;
  margin: 0 auto;
  padding: 60px 0;
  border-radius: 20px;
  background: #fff;
}
@media screen and (max-width: 750px) {
  .result .result_howto .box {
    width: 86.1333333333vw;
    padding: 8vw 0;
    border-radius: 2.6666666667vw;
  }
}
.result .result_howto .box .text {
  font-size: 30px;
  line-height: 1.8;
  text-align: center;
  margin-bottom: 60px;
}
@media screen and (max-width: 750px) {
  .result .result_howto .box .text {
    font-size: 4vw;
    margin-bottom: 8vw;
  }
}
.result .result_howto .box .btn a {
  display: flex;
  align-items: center;
  text-align: center;
  width: 540px;
  height: 100px;
  margin: 0 auto;
  border-radius: 50px;
  background: #FFE5E5;
  position: relative;
}
@media screen and (max-width: 750px) {
  .result .result_howto .box .btn a {
    width: 72vw;
    height: 13.3333333333vw;
    border-radius: 6.6666666667vw;
  }
}
.result .result_howto .box .btn a span {
  color: #324297;
  font-size: 26px;
  font-weight: 700;
  padding-left: 60px;
}
@media screen and (max-width: 750px) {
  .result .result_howto .box .btn a span {
    font-size: 3.4666666667vw;
    padding-left: 8vw;
  }
}
.result .result_howto .box .btn a::before, .result .result_howto .box .btn a::after {
  content: "";
  display: block;
  position: absolute;
}
.result .result_howto .box .btn a::before {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #324297;
  right: 32px;
}
@media screen and (max-width: 750px) {
  .result .result_howto .box .btn a::before {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    right: 4vw;
  }
}
.result .result_howto .box .btn a::after {
  box-sizing: border-box;
  border: 8px solid transparent;
  border-left: 11px solid #fff;
  right: 37px;
}
@media screen and (max-width: 750px) {
  .result .result_howto .box .btn a::after {
    border: 1.0666666667vw solid transparent;
    border-left: 1.4666666667vw solid #fff;
    right: 4.9333333333vw;
  }
}
.result .result_thanks {
  padding-bottom: 35px;
}
@media screen and (max-width: 750px) {
  .result .result_thanks {
    padding-bottom: 4.6666666667vw;
  }
}
.result .result_thanks .text {
  line-height: 1.8;
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 750px) {
  .result .result_thanks .text {
    margin-bottom: 4vw;
  }
}
.result .result_thanks .thanks_btn a {
  display: flex;
  align-items: center;
  text-align: center;
  width: 580px;
  height: 130px;
  margin: 0 auto;
  border-radius: 70px;
  background: #FF7C95;
  position: relative;
}
@media screen and (max-width: 750px) {
  .result .result_thanks .thanks_btn a {
    width: 77.3333333333vw;
    height: 17.3333333333vw;
    border-radius: 9.3333333333vw;
  }
}
.result .result_thanks .thanks_btn a span {
  color: #fff;
  font-size: 34px;
  font-weight: 700;
  padding-left: 110px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .result .result_thanks .thanks_btn a span {
    font-size: 4.5333333333vw;
    padding-left: 14.6666666667vw;
  }
}
.result .result_thanks .thanks_btn a span::before {
  content: "";
  display: block;
  width: 51px;
  height: 40px;
  background: url(../img/thanks_btn_icon.png) no-repeat top left/100%;
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  left: 39px;
}
@media screen and (max-width: 750px) {
  .result .result_thanks .thanks_btn a span::before {
    width: 6.8vw;
    height: 5.3333333333vw;
    left: 5.2vw;
  }
}
.result .result_thanks .thanks_btn a::before, .result .result_thanks .thanks_btn a::after {
  content: "";
  display: block;
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
}
.result .result_thanks .thanks_btn a::before {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #fff;
  right: 32px;
}
@media screen and (max-width: 750px) {
  .result .result_thanks .thanks_btn a::before {
    width: 6.6666666667vw;
    height: 6.6666666667vw;
    right: 4.2666666667vw;
  }
}
.result .result_thanks .thanks_btn a::after {
  box-sizing: border-box;
  border: 10px solid transparent;
  border-left: 13px solid #FF7C95;
  right: 38px;
}
@media screen and (max-width: 750px) {
  .result .result_thanks .thanks_btn a::after {
    border: 1.3333333333vw solid transparent;
    border-left: 1.7333333333vw solid #FF7C95;
    right: 5.0666666667vw;
  }
}
.result .result_bot {
  background: url(../img/result_bg04.jpg) no-repeat bottom left/100%;
  padding: 55px 0 120px;
}
@media screen and (max-width: 750px) {
  .result .result_bot {
    padding: 7.3333333333vw 0 16vw;
  }
}
.result .result_bot .box {
  width: 646px;
  margin: 0 auto;
  padding: 35px 0;
  border: 4px solid #FF7C95;
  border-radius: 20px;
  background: #fff;
}
@media screen and (max-width: 750px) {
  .result .result_bot .box {
    width: 86.1333333333vw;
    padding: 4.6666666667vw 0;
    border: 0.5333333333vw solid #FF7C95;
    border-radius: 2.6666666667vw;
  }
}
.result .result_bot .box .text {
  color: #012A71;
  font-size: 32px;
  line-height: 50px;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .result .result_bot .box .text {
    font-size: 4.2666666667vw;
    line-height: 6.6666666667vw;
  }
}
.result .result_bot .box .text span {
  font-size: 28px;
}
@media screen and (max-width: 750px) {
  .result .result_bot .box .text span {
    font-size: 3.7333333333vw;
  }
}
.result .result_bot .arrow {
  width: 90px;
  margin: 20px auto 0;
}
@media screen and (max-width: 750px) {
  .result .result_bot .arrow {
    width: 12vw;
    margin: 2.6666666667vw auto 0;
  }
}

.fv {
  background: url("../img/fv_bg.jpg") no-repeat top center/100%, #fff;
}
.fv .fv_icon {
  width: 134px;
  position: absolute;
  top: 19px;
  right: 30px;
}
@media screen and (max-width: 750px) {
  .fv .fv_icon {
    width: 17.8666666667vw;
    top: 2.5333333333vw;
    right: 4vw;
  }
}
.fv .text_area01 {
  color: #fff;
  font-size: 30px;
  line-height: 1.3;
  text-align: center;
  font-weight: 700;
  position: absolute;
  top: 130px;
  left: 117px;
}
@media screen and (max-width: 750px) {
  .fv .text_area01 {
    font-size: 4vw;
    top: 17.3333333333vw;
    left: 15.6vw;
  }
}
.fv .text_area01 strong {
  font-size: 38px;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .fv .text_area01 strong {
    font-size: 5.0666666667vw;
  }
}
.fv .text_area02 {
  color: #012A71;
  font-weight: 700;
  text-align: center;
  position: absolute;
  top: 190px;
  left: 0;
  right: 0;
}
@media screen and (max-width: 750px) {
  .fv .text_area02 {
    top: 25.3333333333vw;
  }
}
.fv .text_area02 .text01 {
  font-size: 34px;
}
@media screen and (max-width: 750px) {
  .fv .text_area02 .text01 {
    font-size: 4.5333333333vw;
  }
}
.fv .text_area02 .text02 {
  color: #FF7C95;
  font-size: 40px;
  font-weight: 900;
  padding: 20px 0 12px;
}
@media screen and (max-width: 750px) {
  .fv .text_area02 .text02 {
    font-size: 5.3333333333vw;
    padding: 2.6666666667vw 0 1.6vw;
  }
}
.fv .text_area02 .text02 strong {
  font-size: 52px;
  vertical-align: -2px;
  background-position: top left 0px;
  background-repeat: repeat-x;
  background-size: 52px 10px;
  background-image: radial-gradient(5px 5px at center center, #012A71, #012A71 100%, transparent, transparent);
}
@media screen and (max-width: 750px) {
  .fv .text_area02 .text02 strong {
    font-size: 6.9333333333vw;
    vertical-align: -0.2666666667vw;
    background-size: 6.9333333333vw 1.3333333333vw;
    background-image: radial-gradient(0.6666666667vw 0.6666666667vw at center center, #012A71, #012A71 100%, transparent, transparent);
  }
}
.fv .text_area02 .text03 {
  font-size: 45px;
}
@media screen and (max-width: 750px) {
  .fv .text_area02 .text03 {
    font-size: 6vw;
  }
}
.fv .sns_area .tit {
  text-align: center;
  padding: 20px 0 22px;
}
@media screen and (max-width: 750px) {
  .fv .sns_area .tit {
    padding: 2.6666666667vw 0 2.9333333333vw;
  }
}
.fv .sns_area .tit span {
  color: #012A71;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.06em;
  position: relative;
}
@media screen and (max-width: 750px) {
  .fv .sns_area .tit span {
    font-size: 3.7333333333vw;
  }
}
.fv .sns_area .tit span::before, .fv .sns_area .tit span::after {
  content: "";
  display: block;
  width: 1.5px;
  height: 30px;
  background: #012A71;
  position: absolute;
  top: 8px;
}
@media screen and (max-width: 750px) {
  .fv .sns_area .tit span::before, .fv .sns_area .tit span::after {
    width: 0.2vw;
    height: 4vw;
    top: 1.0666666667vw;
  }
}
.fv .sns_area .tit span::before {
  transform: rotate(-25deg);
  left: -20px;
}
@media screen and (max-width: 750px) {
  .fv .sns_area .tit span::before {
    left: -2.6666666667vw;
  }
}
.fv .sns_area .tit span::after {
  transform: rotate(25deg);
  right: -20px;
}
@media screen and (max-width: 750px) {
  .fv .sns_area .tit span::after {
    right: -2.6666666667vw;
  }
}
.fv .sns_area .sns_list {
  display: flex;
  justify-content: center;
  gap: 20px;
  padding-bottom: 30px;
}
@media screen and (max-width: 750px) {
  .fv .sns_area .sns_list {
    gap: 2.6666666667vw;
    padding-bottom: 4vw;
  }
}
.fv .sns_area .sns_list li {
  width: 106px;
}
@media screen and (max-width: 750px) {
  .fv .sns_area .sns_list li {
    width: 14.1333333333vw;
  }
}

.sbsc {
  background: #fff;
  padding: 35px 0 10px;
}
@media screen and (max-width: 750px) {
  .sbsc {
    padding: 4.6666666667vw 0 1.3333333333vw;
  }
}
.sbsc h2 {
  color: #FF7C95;
  font-size: 64px;
  text-align: center;
  font-weight: 900;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 750px) {
  .sbsc h2 {
    font-size: 8.5333333333vw;
  }
}
.sbsc .top_text {
  color: #012A71;
  font-size: 36px;
  line-height: 1.5;
  text-align: center;
  font-weight: 700;
  padding: 30px 0 25px;
}
@media screen and (max-width: 750px) {
  .sbsc .top_text {
    font-size: 4.8vw;
    padding: 4vw 0 3.3333333333vw;
  }
}
.sbsc .sbsc_box {
  width: 646px;
  margin: 0 auto;
  padding: 50px 0;
  border-radius: 20px;
  background: #FFCDCD;
}
@media screen and (max-width: 750px) {
  .sbsc .sbsc_box {
    width: 86.1333333333vw;
    padding: 6.6666666667vw 0;
    border-radius: 2.6666666667vw;
  }
}
.sbsc .sbsc_box .sbsc_list {
  margin-left: 109px;
}
@media screen and (max-width: 750px) {
  .sbsc .sbsc_box .sbsc_list {
    margin-left: 14.5333333333vw;
  }
}
.sbsc .sbsc_box .sbsc_list li {
  width: 497px;
  margin-top: 35px;
  padding: 30px 35px;
  border-radius: 10px;
  background: #fff;
  box-sizing: border-box;
  position: relative;
}
@media screen and (max-width: 750px) {
  .sbsc .sbsc_box .sbsc_list li {
    width: 66.2666666667vw;
    margin-top: 4.6666666667vw;
    padding: 4vw 4.6666666667vw;
    border-radius: 1.3333333333vw;
  }
}
.sbsc .sbsc_box .sbsc_list li:first-child {
  margin-top: 0;
}
.sbsc .sbsc_box .sbsc_list li:first-child .num::before {
  content: none;
}
.sbsc .sbsc_box .sbsc_list li:first-child .text a {
  text-decoration: none;
  border-bottom: 3px solid #012A71;
}
@media screen and (max-width: 750px) {
  .sbsc .sbsc_box .sbsc_list li:first-child .text a {
    border-bottom: 0.4vw solid #012A71;
  }
}
.sbsc .sbsc_box .sbsc_list li .num {
  width: 134px;
  margin-top: -67px;
  position: absolute;
  top: 50%;
  left: -123px;
}
@media screen and (max-width: 750px) {
  .sbsc .sbsc_box .sbsc_list li .num {
    width: 17.8666666667vw;
    margin-top: -8.9333333333vw;
    left: -16.4vw;
  }
}
.sbsc .sbsc_box .sbsc_list li .num::before {
  content: "";
  display: block;
  width: 54px;
  height: 44px;
  margin: 0 auto;
  background: url(../img/sbsc_icon_arrow.png) no-repeat top left/100%;
  position: absolute;
  top: -70px;
  left: 0;
  right: 0;
}
@media screen and (max-width: 750px) {
  .sbsc .sbsc_box .sbsc_list li .num::before {
    width: 7.2vw;
    height: 5.8666666667vw;
    top: -9.3333333333vw;
  }
}
.sbsc .sbsc_box .sbsc_list li .text {
  color: #012A71;
  font-size: 32px;
  line-height: 1.38;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .sbsc .sbsc_box .sbsc_list li .text {
    font-size: 4.2666666667vw;
  }
}
.sbsc .sbsc_box .sbsc_list li .text a {
  color: #012A71;
  text-decoration: underline;
}
.sbsc .sbsc_box .sbsc_list li .text span {
  font-size: 26px;
  vertical-align: 2px;
}
@media screen and (max-width: 750px) {
  .sbsc .sbsc_box .sbsc_list li .text span {
    font-size: 3.4666666667vw;
    vertical-align: 0.2666666667vw;
  }
}
.sbsc .sbsc_box .sbsc_list li .text strong {
  color: #FF7C95;
  font-weight: 700;
}
.sbsc .sbsc_box .sbsc_list li:nth-child(2) a {
  color: #FF7C95;
}
.sbsc .period,
.sbsc .sponsored {
  margin-top: 45px;
}
@media screen and (max-width: 750px) {
  .sbsc .period,
  .sbsc .sponsored {
    margin-top: 6vw;
  }
}
.sbsc .period h3,
.sbsc .sponsored h3 {
  color: #fff;
  font-size: 32px;
  text-align: center;
  width: 290px;
  margin: 0 auto 15px;
  padding: 10px 0;
  border-radius: 30px;
  background: #012A71;
}
@media screen and (max-width: 750px) {
  .sbsc .period h3,
  .sbsc .sponsored h3 {
    font-size: 4.2666666667vw;
    width: 38.6666666667vw;
    margin: 0 auto 2vw;
    padding: 1.3333333333vw 0;
    border-radius: 4vw;
  }
}
.sbsc .period .text,
.sbsc .sponsored .text {
  color: #012A71;
  font-size: 36px;
  line-height: 1.38;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .sbsc .period .text,
  .sbsc .sponsored .text {
    font-size: 4.8vw;
  }
}

.about {
  background: url("../img/about_bg.jpg") no-repeat top center/100%, #FFE5E5;
  padding-bottom: 55px;
}
@media screen and (max-width: 750px) {
  .about {
    padding-bottom: 7.3333333333vw;
  }
}
.about h2 {
  color: #FF7C95;
  font-size: 64px;
  font-weight: 900;
  text-align: center;
  padding: 17px 0 48px;
}
@media screen and (max-width: 750px) {
  .about h2 {
    font-size: 8.5333333333vw;
    padding: 2.2666666667vw 0 6.4vw;
  }
}
.about .about_box {
  width: 646px;
  margin: 0 auto;
  padding: 55px 0 90px;
  border-radius: 20px;
  background: #fff;
}
@media screen and (max-width: 750px) {
  .about .about_box {
    width: 86.1333333333vw;
    padding: 7.3333333333vw 0 12vw;
    border-radius: 2.6666666667vw;
  }
}
.about .about_box .top_box {
  margin-bottom: 90px;
}
@media screen and (max-width: 750px) {
  .about .about_box .top_box {
    margin-bottom: 12vw;
  }
}
.about .about_box .top_box .text {
  line-height: 1.8;
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 750px) {
  .about .about_box .top_box .text {
    margin-bottom: 4vw;
  }
}
.about .about_box .top_box .btn a {
  display: flex;
  align-items: center;
  text-align: center;
  width: 540px;
  height: 100px;
  margin: 0 auto;
  border-radius: 50px;
  background: #FFE5E5;
  position: relative;
}
@media screen and (max-width: 750px) {
  .about .about_box .top_box .btn a {
    width: 72vw;
    height: 13.3333333333vw;
    border-radius: 6.6666666667vw;
  }
}
.about .about_box .top_box .btn a span {
  color: #324297;
  font-size: 26px;
  font-weight: 700;
  padding-left: 60px;
}
@media screen and (max-width: 750px) {
  .about .about_box .top_box .btn a span {
    font-size: 3.4666666667vw;
    padding-left: 8vw;
  }
}
.about .about_box .top_box .btn a::before, .about .about_box .top_box .btn a::after {
  content: "";
  display: block;
  position: absolute;
}
.about .about_box .top_box .btn a::before {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #324297;
  right: 32px;
}
@media screen and (max-width: 750px) {
  .about .about_box .top_box .btn a::before {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    right: 4vw;
  }
}
.about .about_box .top_box .btn a::after {
  box-sizing: border-box;
  border: 8px solid transparent;
  border-left: 11px solid #fff;
  right: 37px;
}
@media screen and (max-width: 750px) {
  .about .about_box .top_box .btn a::after {
    border: 1.0666666667vw solid transparent;
    border-left: 1.4666666667vw solid #fff;
    right: 4.9333333333vw;
  }
}
.about .about_box h3 {
  color: #fff;
  font-size: 46px;
  line-height: 85px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.04em;
  width: 570px;
  height: 88px;
  margin: 0 auto;
  border-radius: 10px;
  background: #012A71;
}
@media screen and (max-width: 750px) {
  .about .about_box h3 {
    font-size: 6.1333333333vw;
    line-height: 11.3333333333vw;
    width: 76vw;
    height: 11.7333333333vw;
    border-radius: 1.3333333333vw;
  }
}
.about .about_box .theme_box {
  margin-bottom: 80px;
}
@media screen and (max-width: 750px) {
  .about .about_box .theme_box {
    margin-bottom: 10.6666666667vw;
  }
}
.about .about_box .theme_box .img {
  width: 750px;
  margin: 0 -52px;
}
@media screen and (max-width: 750px) {
  .about .about_box .theme_box .img {
    width: 100vw;
    margin: 0 -6.9333333333vw;
  }
}
.about .about_box .theme_box .head {
  text-align: center;
}
.about .about_box .theme_box .head strong {
  color: #FF7C95;
  font-size: 54px;
  padding-bottom: 5px;
  background-image: linear-gradient(to right, #FF7C95, #FF7C95 3px, transparent 2px);
  background-size: 8px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
}
@media screen and (max-width: 750px) {
  .about .about_box .theme_box .head strong {
    font-size: 7.2vw;
    padding-bottom: 0.6666666667vw;
    background-image: linear-gradient(to right, #FF7C95, #FF7C95 0.4vw, transparent 0.2666666667vw);
    background-size: 1.0666666667vw 0.2666666667vw;
  }
}
.about .about_box .theme_box .text {
  line-height: 1.66;
  text-align: center;
  margin-top: 45px;
}
@media screen and (max-width: 750px) {
  .about .about_box .theme_box .text {
    margin-top: 6vw;
  }
}
.about .about_box .winner_box {
  margin-bottom: 85px;
}
@media screen and (max-width: 750px) {
  .about .about_box .winner_box {
    margin-bottom: 11.3333333333vw;
  }
}
.about .about_box .winner_box .winner_type {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 30px;
}
@media screen and (max-width: 750px) {
  .about .about_box .winner_box .winner_type {
    gap: 2.6666666667vw;
    margin-top: 4vw;
  }
}
.about .about_box .winner_box .winner_type div {
  width: 260px;
  height: 260px;
  border-radius: 130px;
  background: #FFB2B2;
}
@media screen and (max-width: 750px) {
  .about .about_box .winner_box .winner_type div {
    width: 34.6666666667vw;
    height: 34.6666666667vw;
    border-radius: 17.3333333333vw;
  }
}
.about .about_box .winner_box .winner_type div .icon {
  width: 72px;
  margin: 25px auto 10px;
}
@media screen and (max-width: 750px) {
  .about .about_box .winner_box .winner_type div .icon {
    width: 9.6vw;
    margin: 3.3333333333vw auto 1.3333333333vw;
  }
}
.about .about_box .winner_box .winner_type div .type {
  color: #fff;
  font-size: 30px;
  line-height: 46px;
  font-weight: 700;
  text-align: center;
  width: 178px;
  height: 48px;
  margin: 0 auto;
  border-radius: 25px;
  background: #012A71;
}
@media screen and (max-width: 750px) {
  .about .about_box .winner_box .winner_type div .type {
    font-size: 4vw;
    line-height: 6.1333333333vw;
    width: 23.7333333333vw;
    height: 6.4vw;
    border-radius: 3.3333333333vw;
  }
}
.about .about_box .winner_box .winner_type div .num {
  color: #012A71;
  font-size: 48px;
  font-weight: 700;
  text-align: center;
  margin-top: 5px;
}
@media screen and (max-width: 750px) {
  .about .about_box .winner_box .winner_type div .num {
    font-size: 6.4vw;
    margin-top: 0.6666666667vw;
  }
}
.about .about_box .winner_box .winner_type div .num strong {
  font-size: 70px;
  font-weight: 700;
  vertical-align: -3px;
}
@media screen and (max-width: 750px) {
  .about .about_box .winner_box .winner_type div .num strong {
    font-size: 9.3333333333vw;
    vertical-align: -0.4vw;
  }
}
.about .about_box .winner_box .total {
  text-align: center;
}
.about .about_box .winner_box .total strong {
  color: #FF7C95;
  font-size: 54px;
  font-weight: 700;
  padding-bottom: 5px;
  background-image: linear-gradient(to right, #FF7C95, #FF7C95 3px, transparent 2px);
  background-size: 8px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
}
@media screen and (max-width: 750px) {
  .about .about_box .winner_box .total strong {
    font-size: 7.2vw;
    padding-bottom: 0.6666666667vw;
    background-image: linear-gradient(to right, #FF7C95, #FF7C95 0.4vw, transparent 0.2666666667vw);
    background-size: 1.0666666667vw 0.2666666667vw;
  }
}
.about .about_box .winner_box .total strong span {
  font-size: 84px;
  vertical-align: -4px;
  padding: 0 15px;
}
@media screen and (max-width: 750px) {
  .about .about_box .winner_box .total strong span {
    font-size: 11.2vw;
    vertical-align: -0.5333333333vw;
    padding: 0 2vw;
  }
}
.about .about_box .quali {
  margin-bottom: 75px;
}
@media screen and (max-width: 750px) {
  .about .about_box .quali {
    margin-bottom: 10vw;
  }
}
.about .about_box .quali .quali_list {
  width: 540px;
  margin: 20px auto 25px;
}
@media screen and (max-width: 750px) {
  .about .about_box .quali .quali_list {
    width: 72vw;
    margin: 2.6666666667vw auto 3.3333333333vw;
  }
}
.about .about_box .quali .quali_list li {
  padding: 18px 0 18px 63px;
  background-image: linear-gradient(to right, #FF7C95, #FF7C95 3px, transparent 2px);
  background-size: 8px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
  position: relative;
}
@media screen and (max-width: 750px) {
  .about .about_box .quali .quali_list li {
    padding: 2.4vw 0 2.4vw 8.4vw;
    background-image: linear-gradient(to right, #FF7C95, #FF7C95 0.4vw, transparent 0.2666666667vw);
    background-size: 1.0666666667vw 0.2666666667vw;
  }
}
.about .about_box .quali .quali_list li:last-child {
  background-image: none;
}
.about .about_box .quali .quali_list li::before {
  content: "";
  display: block;
  width: 48px;
  height: 48px;
  background: url(../img/about_icon_check.png) no-repeat top left/100%;
  position: absolute;
  top: 20px;
  left: 0;
}
@media screen and (max-width: 750px) {
  .about .about_box .quali .quali_list li::before {
    width: 6.4vw;
    height: 6.4vw;
    top: 2.6666666667vw;
  }
}
.about .about_box .quali .quali_list li .text {
  line-height: 1.66;
}
.about .about_box .quali .quali_list li .text strong {
  color: #FF7C95;
}
.about .about_box .quali .quali_list li .text a {
  color: #FF7C95;
  text-decoration: underline;
}
.about .about_box .quali .kome {
  color: #666;
  font-size: 22px;
  line-height: 1.54;
  font-weight: 400;
  width: 540px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .about .about_box .quali .kome {
    font-size: 2.9333333333vw;
    width: 72vw;
  }
}
.about .about_box .conditions .conditions_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 26px;
  margin: 25px 0 32px;
}
@media screen and (max-width: 750px) {
  .about .about_box .conditions .conditions_list {
    gap: 0 3.4666666667vw;
    margin: 3.3333333333vw 0 4.2666666667vw;
  }
}
.about .about_box .conditions .conditions_list li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 260px;
  height: 260px;
  border-radius: 130px;
  background: #FFB2B2;
}
@media screen and (max-width: 750px) {
  .about .about_box .conditions .conditions_list li {
    width: 34.6666666667vw;
    height: 34.6666666667vw;
    border-radius: 17.3333333333vw;
  }
}
.about .about_box .conditions .conditions_list li:first-child {
  margin: 0 140px -15px;
}
@media screen and (max-width: 750px) {
  .about .about_box .conditions .conditions_list li:first-child {
    margin: 0 18.6666666667vw -2vw;
  }
}
.about .about_box .conditions .conditions_list li:first-child .text {
  font-size: 38px;
  line-height: 1.31;
}
@media screen and (max-width: 750px) {
  .about .about_box .conditions .conditions_list li:first-child .text {
    font-size: 5.0666666667vw;
  }
}
.about .about_box .conditions .conditions_list li .tit {
  color: #fff;
  font-size: 28px;
  line-height: 46px;
  font-weight: 700;
  text-align: center;
  width: 208px;
  height: 48px;
  margin-top: 30px;
  border-radius: 25px;
  background: #012A71;
}
@media screen and (max-width: 750px) {
  .about .about_box .conditions .conditions_list li .tit {
    font-size: 3.7333333333vw;
    line-height: 6.1333333333vw;
    width: 27.7333333333vw;
    height: 6.4vw;
    margin-top: 4vw;
    border-radius: 3.3333333333vw;
  }
}
.about .about_box .conditions .conditions_list li .text {
  color: #012A71;
  font-size: 32px;
  line-height: 1.2;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .about .about_box .conditions .conditions_list li .text {
    font-size: 4.2666666667vw;
  }
}
.about .about_box .conditions .conditions_list li .text strong {
  font-size: 48px;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .about .about_box .conditions .conditions_list li .text strong {
    font-size: 6.4vw;
  }
}
.about .about_box .conditions .kome_list {
  width: 540px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .about .about_box .conditions .kome_list {
    width: 72vw;
  }
}
.about .about_box .conditions .kome_list li {
  display: flex;
  color: #666;
  font-size: 22px;
  line-height: 1.54;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .about .about_box .conditions .kome_list li {
    font-size: 2.9333333333vw;
  }
}

.step {
  background: url("../img/step_bg.jpg") no-repeat top center/100%, #fff;
  padding: 105px 0 50px;
}
@media screen and (max-width: 750px) {
  .step {
    padding: 14vw 0 6.6666666667vw;
  }
}
.step .tit_area .head {
  color: #fff;
  font-size: 40px;
  line-height: 64px;
  text-align: center;
  font-weight: 700;
  width: 240px;
  height: 66px;
  margin: 0 auto;
  border-radius: 35px;
  background: #012A71;
  position: relative;
}
@media screen and (max-width: 750px) {
  .step .tit_area .head {
    font-size: 5.3333333333vw;
    line-height: 8.5333333333vw;
    width: 32vw;
    height: 8.8vw;
    border-radius: 4.6666666667vw;
  }
}
.step .tit_area .head::before {
  content: "";
  display: block;
  width: 6px;
  height: 30px;
  margin: 0 auto;
  border-radius: 5px;
  background: #012A71;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -19px;
}
@media screen and (max-width: 750px) {
  .step .tit_area .head::before {
    width: 0.8vw;
    height: 4vw;
    border-radius: 0.6666666667vw;
    bottom: -2.5333333333vw;
  }
}
.step .tit_area h2 {
  color: #012A71;
  font-size: 64px;
  line-height: 1.3;
  text-align: center;
  font-weight: 900;
  margin: 15px 0 85px;
}
@media screen and (max-width: 750px) {
  .step .tit_area h2 {
    font-size: 8.5333333333vw;
    margin: 2vw 0 11.3333333333vw;
  }
}
.step .tit_area h2 strong {
  font-size: 72px;
}
@media screen and (max-width: 750px) {
  .step .tit_area h2 strong {
    font-size: 9.6vw;
  }
}
.step .step_box {
  width: 646px;
  margin: 0 auto;
  padding: 53px 0 57px;
  border-radius: 20px;
  background: #324297;
}
@media screen and (max-width: 750px) {
  .step .step_box {
    width: 86.1333333333vw;
    padding: 7.0666666667vw 0 7.6vw;
    border-radius: 2.6666666667vw;
  }
}
.step .step_box .step_list {
  margin-left: 110px;
}
@media screen and (max-width: 750px) {
  .step .step_box .step_list {
    margin-left: 14.6666666667vw;
  }
}
.step .step_box .step_list li {
  width: 497px;
  margin-top: 40px;
  padding: 30px 37px;
  border-radius: 10px;
  background: #fff;
  box-sizing: border-box;
  position: relative;
}
@media screen and (max-width: 750px) {
  .step .step_box .step_list li {
    width: 66.2666666667vw;
    margin-top: 5.3333333333vw;
    padding: 4vw 4.9333333333vw;
    border-radius: 1.3333333333vw;
  }
}
.step .step_box .step_list li:first-child {
  margin-top: 0;
}
.step .step_box .step_list li:first-child .num {
  top: 5px;
}
@media screen and (max-width: 750px) {
  .step .step_box .step_list li:first-child .num {
    top: 0.6666666667vw;
  }
}
.step .step_box .step_list li:last-child .num {
  top: 27px;
}
@media screen and (max-width: 750px) {
  .step .step_box .step_list li:last-child .num {
    top: 3.6vw;
  }
}
.step .step_box .step_list li:last-child .num::before {
  content: none;
}
.step .step_box .step_list li .num {
  width: 134px;
  position: absolute;
  top: 50px;
  left: -123px;
}
@media screen and (max-width: 750px) {
  .step .step_box .step_list li .num {
    width: 17.8666666667vw;
    top: 6.6666666667vw;
    left: -16.4vw;
  }
}
.step .step_box .step_list li .num::before {
  content: "";
  display: block;
  width: 54px;
  height: 44px;
  margin: 0 auto;
  background: url(../img/step_icon_arrow.png) no-repeat top left/100%;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -64px;
}
@media screen and (max-width: 750px) {
  .step .step_box .step_list li .num::before {
    width: 7.2vw;
    height: 5.8666666667vw;
    bottom: -8.5333333333vw;
  }
}
.step .step_box .step_list li .text {
  color: #012A71;
  font-size: 32px;
  line-height: 1.37;
}
@media screen and (max-width: 750px) {
  .step .step_box .step_list li .text {
    font-size: 4.2666666667vw;
  }
}
.step .step_box .step_list li .text strong {
  color: #FF7C95;
}
.step .step_box .step_list li .text span {
  font-size: 0.6em;
  vertical-align: 0.4em;
}
.step .kome {
  color: #666;
  font-size: 22px;
  line-height: 1.54;
  font-weight: 400;
  width: 650px;
  margin: 30px auto 0;
}
@media screen and (max-width: 750px) {
  .step .kome {
    font-size: 2.9333333333vw;
    width: 86.6666666667vw;
    margin: 4vw auto 0;
  }
}

.image {
  background: url("../img/image_bg_top.jpg") no-repeat top center/100%, url("../img/image_bg_bot.jpg") no-repeat bottom center/100%, #FFB2B2;
  padding-bottom: 100px;
}
@media screen and (max-width: 750px) {
  .image {
    padding-bottom: 13.3333333333vw;
  }
}
.image h2 {
  color: #012A71;
  font-size: 64px;
  font-weight: 900;
  text-align: center;
  margin: 10px 0 5px;
}
@media screen and (max-width: 750px) {
  .image h2 {
    font-size: 8.5333333333vw;
    margin: 1.3333333333vw 0 0.6666666667vw;
  }
}
.image .kome {
  font-size: 22px;
  line-height: 1.54;
  font-weight: 400;
  width: 646px;
  margin: 35px auto 0;
}
@media screen and (max-width: 750px) {
  .image .kome {
    font-size: 2.9333333333vw;
    width: 86.1333333333vw;
    margin: 4.6666666667vw auto 0;
  }
}

.insurance {
  background: url("../img/insurance_bg.jpg") no-repeat bottom center/100%, #FFEC9E;
  padding: 16px 0 145px;
}
@media screen and (max-width: 750px) {
  .insurance {
    padding: 2.1333333333vw 0 19.3333333333vw;
  }
}
.insurance .tit_area .top {
  color: #fff;
  font-size: 32px;
  line-height: 54px;
  text-align: center;
  letter-spacing: 0.02em;
  width: 480px;
  height: 56px;
  margin: 0 auto;
  border-radius: 30px;
  background: #012A71;
}
@media screen and (max-width: 750px) {
  .insurance .tit_area .top {
    font-size: 4.2666666667vw;
    line-height: 7.2vw;
    width: 64vw;
    height: 7.4666666667vw;
    border-radius: 4vw;
  }
}
.insurance .tit_area h2 {
  color: #012A71;
  font-size: 50px;
  line-height: 1.3;
  text-align: center;
  font-weight: 900;
  margin: 15px 0 30px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .insurance .tit_area h2 {
    font-size: 6.6666666667vw;
    margin: 2vw 0 4vw;
  }
}
.insurance .tit_area h2 strong {
  font-size: 58px;
}
@media screen and (max-width: 750px) {
  .insurance .tit_area h2 strong {
    font-size: 7.7333333333vw;
  }
}
.insurance .tit_area h2::before, .insurance .tit_area h2::after {
  content: "";
  display: block;
  width: 65px;
  height: 124px;
  position: absolute;
  top: 0;
}
@media screen and (max-width: 750px) {
  .insurance .tit_area h2::before, .insurance .tit_area h2::after {
    width: 8.6666666667vw;
    height: 16.5333333333vw;
  }
}
.insurance .tit_area h2::before {
  background: url(../img/insurance_tit_line_l.png) no-repeat top left/100%;
  left: 70px;
}
@media screen and (max-width: 750px) {
  .insurance .tit_area h2::before {
    left: 9.3333333333vw;
  }
}
.insurance .tit_area h2::after {
  background: url(../img/insurance_tit_line_r.png) no-repeat top left/100%;
  right: 70px;
}
@media screen and (max-width: 750px) {
  .insurance .tit_area h2::after {
    right: 9.3333333333vw;
  }
}
.insurance .bnr {
  width: 646px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .insurance .bnr {
    width: 86.1333333333vw;
  }
}
.insurance .bnr a:hover {
  opacity: 1;
  filter: brightness(1.1);
}

.qa {
  background: #fff;
  padding: 40px 0 55px;
}
@media screen and (max-width: 750px) {
  .qa {
    padding: 5.3333333333vw 0 7.3333333333vw;
  }
}
.qa .top {
  color: #324297;
  font-size: 34px;
  text-align: center;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 750px) {
  .qa .top {
    font-size: 4.5333333333vw;
  }
}
.qa h2 {
  color: #FF7C95;
  font-size: 64px;
  text-align: center;
  font-weight: 900;
  letter-spacing: 0.06em;
  margin: 20px 0 60px;
}
@media screen and (max-width: 750px) {
  .qa h2 {
    font-size: 8.5333333333vw;
    margin: 2.6666666667vw 0 8vw;
  }
}
.qa .qa_area .qa_box {
  margin-top: 35px;
}
@media screen and (max-width: 750px) {
  .qa .qa_area .qa_box {
    margin-top: 4.6666666667vw;
  }
}
.qa .qa_area .qa_box .qa_q {
  color: #324297;
  font-size: 36px;
  line-height: 1.44;
  font-weight: 700;
  padding: 0 0 25px 165px;
  background-image: linear-gradient(to right, #666, #666 3px, transparent 2px);
  background-size: 8px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
  position: relative;
  cursor: pointer;
}
@media screen and (max-width: 750px) {
  .qa .qa_area .qa_box .qa_q {
    font-size: 4.8vw;
    padding: 0 0 3.3333333333vw 22vw;
    background-image: linear-gradient(to right, #666, #666 0.4vw, transparent 0.2666666667vw);
    background-size: 1.0666666667vw 0.2666666667vw;
  }
}
.qa .qa_area .qa_box .qa_q::before {
  content: "Q.";
  color: #fff;
  font-size: 52px;
  line-height: 80px;
  font-weight: 700;
  text-align: right;
  width: 140px;
  height: 96px;
  padding-right: 25px;
  border-radius: 0 50px 50px 0;
  background: #324297;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 750px) {
  .qa .qa_area .qa_box .qa_q::before {
    font-size: 6.9333333333vw;
    line-height: 10.6666666667vw;
    width: 18.6666666667vw;
    height: 12.8vw;
    padding-right: 3.3333333333vw;
    border-radius: 0 6.6666666667vw 6.6666666667vw 0;
  }
}
.qa .qa_area .qa_box .qa_q::after {
  content: "";
  display: block;
  width: 35px;
  height: 20px;
  margin-top: -10px;
  background: url(../img/qa_arrow.png) no-repeat top left/100%;
  transition: all 0.3s;
  position: absolute;
  top: 50%;
  right: 40px;
}
@media screen and (max-width: 750px) {
  .qa .qa_area .qa_box .qa_q::after {
    width: 4.6666666667vw;
    height: 2.6666666667vw;
    margin-top: -1.3333333333vw;
    right: 5.3333333333vw;
  }
}
.qa .qa_area .qa_box .qa_q.active::after {
  transform: rotate(180deg);
}
.qa .qa_area .qa_box .qa_a {
  display: none;
  line-height: 1.53;
  text-align: justify;
  font-weight: 400;
  padding: 30px 50px 35px 140px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .qa .qa_area .qa_box .qa_a {
    padding: 4vw 6.6666666667vw 4.6666666667vw 18.6666666667vw;
  }
}
.qa .qa_area .qa_box .qa_a::before {
  content: "A.";
  color: #FF7C95;
  font-size: 52px;
  font-weight: 700;
  position: absolute;
  top: 15px;
  left: 65px;
}
@media screen and (max-width: 750px) {
  .qa .qa_area .qa_box .qa_a::before {
    font-size: 6.9333333333vw;
    top: 2vw;
    left: 8.6666666667vw;
  }
}
.qa .qa_area .qa_box .qa_a a {
  text-decoration: underline;
}

.contact {
  background: url("../img/contact_bg.jpg") no-repeat top center/100%, #324297;
  padding-bottom: 90px;
}
@media screen and (max-width: 750px) {
  .contact {
    padding-bottom: 12vw;
  }
}
.contact h2 {
  color: #fff;
  font-size: 44px;
  line-height: 1.2;
  font-weight: 700;
  text-align: center;
  margin: 10px 0 30px;
}
@media screen and (max-width: 750px) {
  .contact h2 {
    font-size: 5.8666666667vw;
    margin: 1.3333333333vw 0 4vw;
  }
}
.contact h2 strong {
  font-size: 64px;
  font-weight: 900;
}
@media screen and (max-width: 750px) {
  .contact h2 strong {
    font-size: 8.5333333333vw;
  }
}
.contact .top_text {
  color: #fff;
  text-align: center;
  line-height: 1.66;
  text-align: center;
  font-weight: 400;
  margin-bottom: 40px;
}
@media screen and (max-width: 750px) {
  .contact .top_text {
    margin-bottom: 5.3333333333vw;
  }
}
.contact .contact_box {
  width: 646px;
  margin: 40px auto 0;
  padding: 35px 0 60px;
  border-radius: 20px;
  background: #fff;
}
@media screen and (max-width: 750px) {
  .contact .contact_box {
    width: 86.1333333333vw;
    margin: 5.3333333333vw auto 0;
    padding: 4.6666666667vw 0 8vw;
    border-radius: 2.6666666667vw;
  }
}
.contact .contact_box.first {
  margin: 0 auto;
}
.contact .contact_box h3 {
  color: #324297;
  font-size: 40px;
  line-height: 1.35;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .contact .contact_box h3 {
    font-size: 5.3333333333vw;
  }
}
.contact .contact_box .top_text01 {
  font-size: 20px;
  text-align: center;
  font-weight: 400;
  margin: 15px 0 30px;
}
@media screen and (max-width: 750px) {
  .contact .contact_box .top_text01 {
    font-size: 2.6666666667vw;
    margin: 2vw 0 4vw;
  }
}
.contact .contact_box .top_text02 {
  line-height: 1.36;
  text-align: center;
  font-weight: 700;
  margin-bottom: 20px;
}
@media screen and (max-width: 750px) {
  .contact .contact_box .top_text02 {
    margin-bottom: 2.6666666667vw;
  }
}
.contact .contact_box .top_text02 strong {
  color: #FF7C95;
  font-weight: 700;
}
.contact .contact_box p[class^=text0] {
  color: #CF253E;
  font-size: 28px;
  line-height: 1.17;
  font-weight: 700;
  text-align: center;
  position: absolute;
}
@media screen and (max-width: 750px) {
  .contact .contact_box p[class^=text0] {
    font-size: 3.7333333333vw;
  }
}
.contact .contact_box .text01 {
  top: 125px;
  right: 20px;
}
@media screen and (max-width: 750px) {
  .contact .contact_box .text01 {
    top: 16.6666666667vw;
    right: 3.3333333333vw;
  }
}
.contact .contact_box .text02 {
  top: 530px;
  right: 20px;
}
@media screen and (max-width: 750px) {
  .contact .contact_box .text02 {
    top: 70.6666666667vw;
    right: 2.6666666667vw;
  }
}
.contact .contact_box .contact_btn {
  margin-top: 30px;
}
@media screen and (max-width: 750px) {
  .contact .contact_box .contact_btn {
    margin-top: 4vw;
  }
}
.contact .contact_box .contact_btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 580px;
  height: 130px;
  margin: 0 auto;
  padding-right: 50px;
  border-radius: 70px;
  background: #FF7C95;
  box-sizing: border-box;
  position: relative;
}
@media screen and (max-width: 750px) {
  .contact .contact_box .contact_btn a {
    width: 77.3333333333vw;
    height: 17.3333333333vw;
    padding-right: 6.6666666667vw;
    border-radius: 9.3333333333vw;
  }
}
.contact .contact_box .contact_btn a span {
  color: #fff;
  line-height: 1.36;
  text-align: center;
  font-weight: 700;
}
.contact .contact_box .contact_btn a::before, .contact .contact_box .contact_btn a::after {
  content: "";
  display: block;
  position: absolute;
}
.contact .contact_box .contact_btn a::before {
  width: 51px;
  height: 51px;
  border-radius: 50%;
  background: #fff;
  right: 32px;
}
@media screen and (max-width: 750px) {
  .contact .contact_box .contact_btn a::before {
    width: 6.8vw;
    height: 6.8vw;
    right: 4.2666666667vw;
  }
}
.contact .contact_box .contact_btn a::after {
  box-sizing: border-box;
  border: 11px solid transparent;
  border-left: 14px solid #FF7C95;
  right: 37px;
}
@media screen and (max-width: 750px) {
  .contact .contact_box .contact_btn a::after {
    border: 1.4666666667vw solid transparent;
    border-left: 1.8666666667vw solid #FF7C95;
    right: 4.9333333333vw;
  }
}

#terms {
  background: #fff;
  padding: 100px 0 120px;
}
@media screen and (max-width: 750px) {
  #terms {
    padding: 13.3333333333vw 0 16vw;
  }
}
#terms .terms_box {
  width: 646px;
  margin: 0 auto;
  border-radius: 20px;
  border: 7px solid #FFE5E5;
  box-sizing: border-box;
}
@media screen and (max-width: 750px) {
  #terms .terms_box {
    width: 86.1333333333vw;
    border-radius: 2.6666666667vw;
    border: 0.9333333333vw solid #FFE5E5;
  }
}
#terms .terms_box .terms_tit {
  color: #FF7C95;
  font-size: 40px;
  line-height: 116px;
  text-align: center;
  font-weight: 700;
  height: 120px;
  position: relative;
}
@media screen and (max-width: 750px) {
  #terms .terms_box .terms_tit {
    font-size: 5.3333333333vw;
    line-height: 15.4666666667vw;
    height: 16vw;
  }
}
#terms .terms_box .terms_tit::after {
  content: "";
  display: block;
  width: 35px;
  height: 20px;
  margin-top: -10px;
  background: url(../img/terms_arrow.png) no-repeat top left/100%;
  transition: all 0.3s;
  position: absolute;
  top: 50%;
  right: 40px;
}
@media screen and (max-width: 750px) {
  #terms .terms_box .terms_tit::after {
    width: 4.6666666667vw;
    height: 2.6666666667vw;
    margin-top: -1.3333333333vw;
    right: 5.3333333333vw;
  }
}
#terms .terms_box .terms_tit.active::after {
  transform: rotate(180deg);
}
#terms .terms_box .terms_in {
  display: none;
  margin-top: 30px;
  padding-bottom: 55px;
}
@media screen and (max-width: 750px) {
  #terms .terms_box .terms_in {
    margin-top: 4vw;
    padding-bottom: 7.3333333333vw;
  }
}
#terms .terms_box .terms_in .text {
  color: #666;
  font-size: 22px;
  line-height: 1.54;
  font-weight: 400;
  width: 566px;
  margin: 35px auto 0;
}
@media screen and (max-width: 750px) {
  #terms .terms_box .terms_in .text {
    font-size: 2.9333333333vw;
    width: 75.4666666667vw;
    margin: 4.6666666667vw auto 0;
  }
}
#terms .terms_box .terms_in .text:first-child {
  margin: 0 auto;
}
#terms .terms_box .terms_in .text strong {
  margin-left: -10px;
}
@media screen and (max-width: 750px) {
  #terms .terms_box .terms_in .text strong {
    margin-left: -1.3333333333vw;
  }
}
#terms .terms_box .terms_in .text a {
  color: #666;
  text-decoration: underline;
}/*# sourceMappingURL=style.css.map */