html {
  font-size: 1vw;
  font-weight: 500;
}

a {
  text-decoration: none;
  display: inline-block;
}

img {
  width: 100%;
}

li {
  list-style: none;
}

.pc {
  display: block !important;
}

span.pc {
  display: inline !important;
}

.sp {
  display: none !important;
}

@media screen and (max-width: 780px) {
  .pc {
    display: none !important;
  }
  span.pc {
    display: inline !important;
  }
  .sp {
    display: block !important;
  }
}
body, p, span, b, div {
  font-family: "IBM Plex Sans", sans-serif;
  font-family: "IBM Plex Sans JP", sans-serif;
}

@media screen and (min-width: 780px) {
  a:hover {
    opacity: 0.7;
  }
}
body {
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 100;
  font-style: normal;
}

body {
  background-color: #1F384D;
}

.func, .melit {
  background-color: #E2F9FF;
}

header {
  height: 5.9722222222vw;
  position: fixed;
  top: 0;
  z-index: 10;
  background-color: #1F384D;
  width: 100%;
}
header .header_wrap {
  display: flex;
  justify-content: space-between;
}
header .header_wrap .header_logo {
  width: 32.0138888889vw;
}
header .header_wrap .header_contact {
  display: flex;
  justify-content: space-between;
  width: 46.5277777778vw;
  padding-right: 7.1527777778vw;
}
header .header_wrap .header_tel {
  width: 21.5944444444vw;
  padding-top: 0.3472222222vw;
}
header .header_wrap .header_mail {
  width: 23.3333333333vw;
  padding-top: 0.8333333333vw;
}
header .header_wrap .header_mail a {
  display: inline-block;
}

.sp_contact {
  display: none;
}

.kv {
  width: 100%;
  margin-top: 5.9722222222vw;
  position: relative;
}
.kv .kv_cp {
  min-height: 20px;
}
.kv_img {
  width: 100%;
  text-align: center;
}
.kv_img picture img{
  height: calc(100vh - 23vw);
  max-height: calc(100vw * 613 /1441 ) ;
  width: auto;
  max-width: ;
  margin-bottom: -5vw;
}

.kv_btn_wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10%;
  justify-content: space-between;
  width: 89.5138888889vw;
  margin: -5.2083333333vw auto 0;
  margin-top: 100px;
}
.kv_el_wrap {
  display: flex;
  justify-content: space-between;
  width: 89.5138888889vw;
  margin: -5.2083333333vw auto 0;
  margin-top: 100px;
}
.kv_el_wrap li {
  width: 27.6388888889vw;
}
.kv_logo {
  top: 1.7361111111vw;
  left: 7.8472222222vw;
  position: absolute;
  width: 10.625vw;
}

.huan {
  background-image: url(../img/bg1.png), url(../img/bg2_1.png);
  background-size: 100%, 100%;
  background-repeat: no-repeat;
  background-position: top 2.7777777778vw center, bottom 0 center;
  padding-top: 3.8194444444vw;
}
.huan_h {
  width: 54.8118055556vw;
  margin: auto;
}
.huan_li {
  width: 57.5vw;
  color: #ffffff;
  font-weight: 700;
  font-size: 2.0833333333vw;
  margin: 3.8611111111vw auto 0;
}
.huan_li li {
  display: flex;
  align-items: center;
}
.huan_li img {
  width: 4.0972222222vw;
  margin-right: 1.3888888889vw;
}
.huan_text {
  width: 41.3888888889vw;
  margin: 2.6388888889vw auto 0;
  padding-top: 6.9444444444vw;
  background-image: url(../img/huan_bg.png);
  background-repeat: no-repeat;
  background-size: 36.4798611111vw auto;
  background-position: top 0.6944444444vw center;
}
.huan_text img {
  margin-bottom: -2.7777777778vw;
}

.func {
  background-image: url(../img/bg2_2.png), url(../img/func_bg.png);
  margin-top: -0.0694444444vw;
  padding-bottom: 1.0416666667vw;
  background-repeat: no-repeat;
  background-position: top 0 center, top -0.6944444444vw left 0vw;
  background-size: 100% auto, 72.5694444444vw, auto;
}
.func_h {
  width: 58.45625vw;
  margin: auto;
  padding: 2.0208333333vw 0 0;
}
.func_h1 {
  margin: 0.6944444444vw auto 0;
}
.func_h1 picture {
  width: 67.9840277778vw;
  display: block;
  margin: auto;
}
.func_el_li {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 2.4305555556vw auto 0;
}
.func_el_li li {
  margin: 0 1.0416666667vw 3.8194444444vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.func_el_img {
  width: 28.1944444444vw;
}
.func_el_h {
  position: absolute;
  width: 20.3472222222vw;
  top: -1.3888888889vw;
  left: 50%;
  transform: translateX(-50%);
}
.func_el_tx {
  position: absolute;
  bottom: -1.0416666667vw;
  left: 50%;
  transform: translateX(-50%);
  width: 28.125vw;
  min-height: 8.4722222222vw;
  background-color: #1F384D;
  border-radius: 0.6944444444vw;
  padding: 0.9027777778vw 1.0416666667vw 0;
  box-sizing: border-box;
  line-height: 2.3em;
}
.func_el_tx p {
  color: #ffffff;
  font-size: 1.6666666667vw;
  font-weight: 600;
}
.func_h2 picture {
  width: 56.5277777778vw;
  margin: 2.5vw auto 0;
  display: block;
}
.func_icon_wrap {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 84.1666666667vw;
  margin: 0.6944444444vw auto 0;
}
.func_icon_wrap li {
  width: 12.2222222222vw;
  margin: 0 0.9027777778vw 2.0833333333vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 1.6666666667vw;
  font-weight: 900;
  white-space: nowrap;
}
.func_icon_wrap li img {
  margin-bottom: 0.6944444444vw;
}

.ex {
  background-image: url(../img/bg3.png), url(../img/bg2_1.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: top center, bottom center;
}
.ex_h {
  width: 61.3569444444vw;
  padding: 6.5972222222vw 0 0;
  margin: auto;
}
.ex_movie_wrap {
  width: 89.5833333333vw;
  margin: 3.8194444444vw auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.ex_movie_el {
  width: 42.4305555556vw;
  margin-bottom: 4.375vw;
}
.ex_movie_h {
  display: flex;
  width: 100%;
  justify-content: flex-start;
  align-items: center;
}
.ex_movie_no {
  color: #1F384D;
  font-size: 1.5277777778vw;
  font-weight: 700;
  background-color: #ffffff;
  padding: 0.3472222222vw;
  display: flex;
  align-items: center;
}
.ex_movie_no span:first-of-type {
  margin-right: 0.3472222222vw;
}
.ex .no {
  display: inline-flex;
  background-color: #1F384D;
  width: 2.2222222222vw;
  height: 2.2222222222vw;
  border-radius: 1000%;
  color: #ffffff;
  justify-content: center;
  align-items: center;
}
.ex_movie_htx {
  color: #ffffff;
  font-size: 2.2222222222vw;
  font-weight: 700;
  padding: 0.4166666667vw 1.0416666667vw 0;
}
.ex_movie_htx small {
  font-size: 1.1111111111vw;
}
.ex_movie_video video {
  width: 100%;
  height: 23.9583333333vw;
}
.ex_movie_text {
  color: #ffffff;
  font-size: 1.3888888889vw;
  font-weight: 500;
  margin-top: 1.0416666667vw;
  line-height: 1.6em;
}
.ex_h1 {
  width: 56.5277777778vw;
  margin: auto;
}
.ex_place_wrap {
  width: 78.7513888889vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 1.3888888889vw auto 0;
  padding-bottom: 6.9444444444vw;
}
.ex_place_el {
  width: 23.4722222222vw;
  border: 0.0694444444vw solid #F74A0D;
  margin-bottom: 4.1666666667vw;
  position: relative;
}
.ex_place_el::before, .ex_place_el::after {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: -0.2083333333vw;
  width: 1.0416666667vw;
  height: 1.0416666667vw;
}
.ex_place_el::before {
  background-image: url(../img/ex_b4.png);
  left: -0.2083333333vw;
}
.ex_place_el::after {
  background-image: url(../img/ex_b3.png);
  right: -0.2083333333vw;
}
.ex_place_h {
  background-color: #F74A0D;
  font-size: 1.875vw;
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  padding: 0.9027777778vw 0 0.4861111111vw;
  position: relative;
}
.ex_place_h::before, .ex_place_h::after {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  top: -0.2083333333vw;
  width: 1.0416666667vw;
  height: 1.0416666667vw;
}
.ex_place_h::before {
  background-image: url(../img/ex_b1.png);
  left: -0.2083333333vw;
}
.ex_place_h::after {
  background-image: url(../img/ex_b2.png);
  right: -0.2083333333vw;
}
.ex_place_tx {
  color: #ffffff;
  font-size: 1.3888888889vw;
  font-weight: 500;
  padding: 0.6944444444vw 0.9027777778vw;
  line-height: 1.5em;
  position: relative;
}

.melit {
  margin-top: -0.0694444444vw;
  padding-bottom: 1px;
  background-image: url(../img/bg2_2.png);
  background-position: top center;
  background-size: 100% auto;
  background-repeat: no-repeat;
}
.melit_h {
  width: 62.3861111111vw;
  margin: 0 auto 1.3888888889vw;
}
.melit_h img {
  margin-top: -2.0833333333vw;
}
.melit_wrap {
  border: #ffffff solid 0.0694444444vw;
  width: 89.5138888889vw;
  margin: 0 auto 2.7777777778vw;
  padding: 1.0416666667vw;
  box-sizing: border-box;
}
.melit_box {
  background-color: #ffffff;
  padding: 1px;
}
.melit_h1 {
  width: 65.1388888889vw;
  margin: auto;
}
.melit_subh {
  padding-top: 2.0833333333vw;
  font-size: 2.4305555556vw;
  font-weight: 700;
  color: #F74A0D;
  text-align: center;
  position: relative;
}
.melit_subh::before {
  content: "";
  width: 15.2083333333vw;
  height: 0.2777777778vw;
  background-color: #F74A0D;
  position: absolute;
  bottom: -0.3472222222vw;
  left: 50%;
  transform: translateX(-50%);
}
.melit_1 .melit_box {
  background-image: url(../img/melit_bg1.png), url(../img/melit_bg2.png);
  background-position: top left, bottom right;
  background-size: 100% auto;
  background-repeat: no-repeat;
}
.melit_1_img1 {
  margin: 2.7777777778vw auto 0;
  width: 82.4305555556vw;
}
.melit_1_txt {
  width: 74.1666666667vw;
  font-size: 1.5972222222vw;
  font-weight: 600;
  color: #1F384D;
  margin: 2.0833333333vw auto 0;
  line-height: 1.7em;
}
.melit_1_img2 {
  width: 73.2638888889vw;
  margin: 1.3888888889vw auto 0;
  padding-bottom: 3.125vw;
}
.melit_2 .melit_box {
  background-image: url(../img/melit_bg1.png);
  background-position: top left;
  background-size: 100% auto;
  background-repeat: no-repeat;
}
.melit_h2 {
  width: 55.0694444444vw;
  margin: auto;
}
.melit_2_tag {
  display: flex;
  justify-content: space-between;
  width: 83.8888888889vw;
  margin: 2.2916666667vw auto 0;
}
.melit_tag {
  background-color: #00A3CE;
  font-size: 2.5vw;
  font-weight: 700;
  color: #ffffff;
  display: flex;
  padding: 0.4166666667vw;
  box-sizing: border-box;
}
.melit_tag p {
  border: #ffffff solid 0.0694444444vw;
  padding: 1.5277777778vw 2.0138888889vw 0.9722222222vw;
}
.melit_tag span {
  display: inline-block;
  font-size: 0.9722222222vw;
}
.melit_2_h2 {
  font-size: 2.5694444444vw;
  font-weight: 800;
  color: #1F384D;
  margin: 2.6388888889vw 2.4305555556vw 0;
}
.melit_2_h2::before {
  content: "";
  display: inline-block;
  width: 2.4305555556vw;
  height: 2.4305555556vw;
  background-color: #1F384D;
  margin-right: 0.5555555556vw;
}
.melit_2_list {
  display: flex;
  justify-content: space-between;
  width: 83.6805555556vw;
  margin: 1.5972222222vw auto;
}
.melit_2_el {
  width: 27.0833333333vw;
  border: 0.1388888889vw solid #1F384D;
}
.melit_2_el_h {
  display: flex;
  align-items: center;
}
.melit_2_el_h_no {
  background-color: #1F384D;
  font-size: 1.5277777778vw;
  font-weight: 700;
  color: #ffffff;
  padding: 0.5555555556vw 0.8333333333vw 0.3472222222vw;
}
.melit_2_el_h_no span {
  display: inline-flex;
  width: 2.2916666667vw;
  height: 2.2916666667vw;
  background-color: #ffffff;
  color: #1F384D;
  border-radius: 1000px;
  justify-content: center;
  align-items: center;
  padding-top: 0.1em;
  box-sizing: border-box;
  margin-left: 0.3472222222vw;
}
.melit_2_el_h_money {
  font-size: 2.5694444444vw;
  color: #1F384D;
  font-weight: 800;
  flex-grow: 1;
  text-align: center;
  padding-top: 0.5555555556vw;
  box-sizing: border-box;
}
.melit_2_el_h_money span {
  font-size: 1.9444444444vw;
}
.melit_2_el_img {
  position: relative;
}
.melit_2_el_imgtx {
  position: absolute;
  font-size: 1.9444444444vw;
  font-weight: 800;
  color: #ffffff;
  bottom: 1.3888888889vw;
  padding: 0.6944444444vw 0.3472222222vw 0.3472222222vw;
  background-color: #1F384D;
}
.melit_2_el_tx {
  font-size: 1.3888888889vw;
  font-weight: 500;
  padding: 0.3472222222vw 1.0416666667vw 0.6944444444vw;
  line-height: 1.5em;
}
.melit_3 .melit_box {
  background-image: url(../img/melit_bg1.png);
  background-position: top left;
  background-size: 100% auto;
  background-repeat: no-repeat;
}
.melit_h3 {
  width: 79.0972222222vw;
  margin: auto;
}
.melit_3_img {
  width: 75.6944444444vw;
  margin: auto;
}
.melit_3_text {
  text-align: center;
  font-size: 2.0833333333vw;
  font-weight: 700;
  color: #1F384D;
  line-height: 1.6em;
  padding-bottom: 4.1666666667vw;
}

.flow {
  background-image: url(../img/bg3.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
.flow_h {
  width: 58.1798611111vw;
  margin: auto;
  padding-top: 4.1666666667vw;
}
.flow_step {
  width: 89.4444444444vw;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 2.4305555556vw auto 0;
}
.flow_el {
  width: 29.0277777778vw;
  display: flex;
  flex-direction: column;
  margin-bottom: 0.6944444444vw;
}
.flow_el_h {
  display: flex;
  justify-content: space-between;
  align-items: end;
}
.flow_el_h_no {
  font-size: 5vw;
  font-weight: 900;
  color: #ffffff;
  opacity: 0.13;
  transform: translateY(0.6944444444vw);
}
.flow_el_h_iocn {
  width: 9.9305555556vw;
  background-color: #F74A0D;
  border-radius: 2.0833333333vw 2.0833333333vw 0 0;
}
.flow_el_txwrap {
  border: solid 0.0694444444vw #F74A0D;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.875vw;
  position: relative;
}
.flow_el_txwrap::after {
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  position: absolute;
  width: 1.9444444444vw;
  height: 4.8611111111vw;
  background-image: url(../img/flow_arrow.png);
  top: 35%;
  left: -1.1805555556vw;
}
.flow_el_txh {
  font-size: 2.2222222222vw;
  font-weight: 900;
  color: #ffffff;
  font-size: 2.2222222222vw;
  font-weight: 900;
  color: #ffffff;
  line-height: 1.5em;
}
.flow_el_txh::before, .flow_el_txh::after {
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  position: absolute;
  width: 1.0416666667vw;
  height: 1.0416666667vw;
}
.flow_el_txh::before {
  background-image: url(../img/flow_b1.png);
  top: -0.2083333333vw;
  left: -0.2083333333vw;
}
.flow_el_txh::after {
  background-image: url(../img/flow_b3.png);
  bottom: -0.2083333333vw;
  right: -0.2083333333vw;
}
.flow_el_tx {
  font-size: 1.3888888889vw;
  font-weight: 400;
  color: #ffffff;
  line-height: 1.3em;
  margin-top: 0.7638888889vw;
}
.flow_el_tx::before {
  content: "";
  background-image: url(../img/flow_b2.png);
  bottom: -0.2083333333vw;
  left: -0.2083333333vw;
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  position: absolute;
  width: 1.0416666667vw;
  height: 1.0416666667vw;
}
.flow_el:first-of-type .flow_el_txwrap::after {
  display: none;
}
.flow_el:last-of-type .flow_el_tx {
  line-height: 1.1em;
  letter-spacing: -0.1em;
  margin-top: 0.2777777778vw;
}

.qa {
  background-image: url(../img/bg1.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top 6.9444444444vw center;
  padding: 6.9444444444vw 0 0;
}
.qa_h {
  width: 56.7111111111vw;
  margin: 0 auto;
  padding-top: 6.25vw;
}
.qa_list {
  width: 62.6736111111vw;
  margin: 2.9166666667vw auto 0;
}
.qa_el {
  color: #ffffff;
  border-bottom: #F74A0D solid 0.0694444444vw;
}
.qa_el dl {
  padding: 2.0833333333vw 4.5138888889vw 1.875vw 6.5972222222vw;
}
.qa_el dt {
  font-size: 1.6666666667vw;
  font-weight: 600;
  display: flex;
  align-items: center;
  margin-bottom: 1.0416666667vw;
}
.qa_el dd {
  font-size: 1.3888888889vw;
  font-weight: 400;
  display: flex;
  align-items: start;
  line-height: 1.7em;
}
.qa_el dd p {
  padding-top: 0.6944444444vw;
}
.qa_icon {
  width: 3.6111111111vw;
  display: block;
  margin-right: 2.0833333333vw;
}

.contact{
  background-image: url(../img/bg1.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top 0 center;
  margin-top: 8.68vw;
}
.contact_h {
  width: 56.7111111111vw;
  margin: 0 auto;
  padding-top: 9.652778vw;
}
.contact_form {
  margin: 4.9306vw auto 0;
  max-width: 56.319444vw;
}

.form {

}

.form__list {

}

.form__item:not(:first-of-type) {
  margin-top: 1.38889vw;
}

.form__labels {

}

.form__label {
  
}

.form__label-text {
  display: flex;
  align-items: center;
  gap: 1.38889vw;
  font-weight: 700;
  font-size: 1.38889vw;
  line-height: 1;
  color: #fff;
}
.form__label-text span{
  display: flex;
  align-items: center;
  padding: 2px 1.28472222vw 0;
  border-radius: 10px;
  background-color: #F74A0D;
}

.form__input {
  margin-top: 0.69444444vw;
}

.form__input-text {
  width: 100%;
  padding: 0.83333333vw 2.08333333vw;
  font-weight: 700;
  font-size: 1.38889vw;
  color: #042E54;
  border: 1px solid #707070;
  box-sizing: border-box;
}

.form__input-text::placeholder,
.form__textarea::placeholder {
  color: rgba(4, 46, 84, 0.1);
}

.is-error-name,
.is-error-kana,
.is-error-tel,
.is-error-email,
.is-error-cheek {
  font-weight: 700;
  font-size: 0.83333333vw;
  color: #F74A0D;
}
.is-error-cheek{
  text-align: center;
}

.form__label-textarea{
  font-weight: 700;
  font-size: 1.38889vw;
  line-height: 1;
  color: #fff;
}

.form__textarea {
  width: 100%;
  height: 9.65277778vw;
  padding: 0.83333333vw 2.08333333vw;
  font-weight: 700;
  font-size: 1.38889vw;
  color: #042E54;
  border: 1px solid #707070;
  box-sizing: border-box;
}

.form__check {
  margin-top: 1.38889vw;
}

.form__check-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.73611111vw;
}
.form__check-btn span,
.form__check-btn a{
  font-weight: 700;
  font-size: 1.25vw;
  color: #fff;
}
.form__check-btn a{
  text-decoration: underline;
}
input[type=checkbox] {
    margin: 0;
    padding: 0;
    border: none;
    border-radius: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.form__check-btn input{
  position: relative;
  width: 2.22222222rem;
  height: 2.22222222rem;
  background-color: transparent;
  border: 1px solid #707070;
}

.form__check-btn input:checked::before {
    position: absolute;
    top: -0.8rem;
    left: 0.3rem;
    transform: rotate(45deg);
    width: 1.4rem;
    height: 2.3rem;
    border-right: 3px solid #707070;
    border-bottom: 3px solid #707070;
    content: "";
}

.form__btn-wrap {
  margin-top: 2.98611111vw;
}

.form__btn{
  text-align: center;
}

.form__btn input {
  width: 30.55555556vw;
  background-color: #00A3CE;
  color: #fff;
  font-weight: 700;
  font-size: 1.66667vw;
  line-height: 1;
  padding: 1.944444vw 0;
  border: none;
  border-radius: 52px;
  cursor: pointer;
}

.form__tx {
  margin-top: 0.625vw;
  font-weight: 700;
  font-size: 1.25vw;
  color: #fff;
  text-align: center;
}

footer {
  width: 86.1111111111vw;
  margin: 6.9444444444vw auto 0;
  border-top: #00A3CE solid 0.0694444444vw;
  text-align: center;
  font-size: 1.25vw;
  font-weight: 400;
  color: #ffffff;
  padding: 1.7361111111vw 0;
}

.contact_thanks{
  margin: 5vw auto 0;
  max-width: 56.319444vw;
}
.contact_thanks p{
  font-weight: 700;
  font-size: 1.38889vw;
  line-height: 1.5;
  color: #fff;
}
.contact_thanks p:not(:first-of-type){
  margin-top: 1.38889vw;
}

@media screen and (max-width: 780px) {
  header {
    height: 12.8205128205vw;
    position: relative;
    z-index: 0;
  }
  header .header_wrap .header_logo {
    width: 68.2051282051vw;
  }
  header .header_wrap .header_contact {
    display: none;
  }
  .sp_contact {
    display: flex;
    background-color: #1F384D;
    width: 100%;
    height: 14.9282051282vw;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    bottom: 0;
    z-index: 10;
  }
  .sp_contact .sp_tel {
    width: 47.1794871795vw;
    margin-left: 2.0512820513vw;
    padding-bottom: 2.0512820513vw;
  }
  .sp_contact .sp_mail {
    width: 46.6666666667vw;
    margin-right: 1.5384615385vw;
  }
  .sp_contact .sp_mail a{
    display: inline-block;
  }
  .kv {
    margin-top: 0;
  }

.kv .kv_cp{display: none;}

.kv_img {
  width: 100%;
  text-align: center;
}

.kv_img picture img {
  height: auto;
  max-height: none;
  width: 100%;
  margin-bottom: 0vw;
}



  .kv_btn_wrap {
    grid-template-columns: 1fr;
    gap: 30px;
    margin-top: 20px;
  }
  .kv_el_wrap {
    display: flex;
    justify-content: space-around;
    width: 96.441025641vw;
    margin: -5.8974358974vw auto 0;
    flex-wrap: wrap;
    margin-top: 50px;
  }
  .kv_el_wrap li {
    width: 46.9230769231vw;
  }
  .kv_el3 {
    margin-top: -1.7948717949vw;
  }
  .kv_logo {
    top: -11.5384615385vw;
    left: auto;
    right: 1.2820512821vw;
    position: absolute;
    width: 25.641025641vw;
    border: 0.5128205128vw solid #1F384D;
  }
  .huan {
    background-position: top 3.3333333333vw center, bottom 0 center;
    padding-top: 4.6153846154vw;
  }
  .huan_h {
    width: 83.4128205128vw;
  }
  .huan_li {
    width: 74.358974359vw;
    font-size: 4.6153846154vw;
    margin: 10.7692307692vw auto 0;
  }
  .huan_li img {
    width: 7.4358974359vw;
    margin-right: 2.5641025641vw;
    margin-top: -3.8461538462vw;
  }
  .huan_li li {
    line-height: 1.2em;
    margin-bottom: 3.5897435897vw;
  }
  .huan_text {
    width: 59.4871794872vw;
    margin: 0vw auto 0;
    padding-top: 11.5384615385vw;
    background-image: url(../img/huan_bg_sp.png);
    background-size: 64.1025641026vw auto;
    background-position: top 0vw center;
  }
  .huan_text img {
    margin-bottom: -6.4102564103vw;
  }
  .func {
    margin-top: -0.0256410256vw;
    padding-bottom: 6.6666666667vw;
    background-position: top 0 center, top 0vw left 0vw;
    background-size: 100% auto, 76.9230769231vw, auto;
  }
  .func_h {
    width: 82.2461538462vw;
    margin: auto;
    padding: 0vw 0 0;
  }
  .func_h1 {
    margin: 3.3333333333vw auto 0;
  }
  .func_h1 picture {
    width: 88.7179487179vw;
  }
  .func_el_li {
    margin: 5.8974358974vw auto 0;
  }
  .func_el_li li {
    margin: 0 0vw 21.7948717949vw;
  }
  .func_el_img {
    width: 46.1538461538vw;
  }
  .func_el_h {
    position: absolute;
    width: 35.8974358974vw;
    top: -1.7948717949vw;
  }
  .func_el_tx {
    bottom: auto;
    top: 42.0512820513vw;
    width: 43.5897435897vw;
    min-height: 5.641025641vw;
    border-radius: 2.5641025641vw;
    padding: 0.7692307692vw 1.2820512821vw 1.2820512821vw;
    line-height: 5.3em;
    letter-spacing: -0.2em;
  }
  .func_el_tx p {
    color: #ffffff;
    font-size: 3.5897435897vw;
    font-weight: 600;
  }
  .func_h2 picture {
    width: 78.9743589744vw;
    margin: 3.8461538462vw auto 0;
  }
  .func_icon_wrap {
    width: 84.6153846154vw;
    margin: 4.358974359vw auto 0;
  }
  .func_icon_wrap li {
    width: 24.358974359vw;
    margin: 0 1.7948717949vw 3.8461538462vw;
    display: flex;
    font-size: 3.3333333333vw;
  }
  .func_icon_wrap li img {
    margin-bottom: 1.0256410256vw;
  }
  .ex_h {
    width: 86.3256410256vw;
    padding: 1.7948717949vw 0 0;
    margin: auto;
  }
  .ex_movie_wrap {
    width: 89.7435897436vw;
    margin: 5.641025641vw auto 0;
  }
  .ex_movie_el {
    width: 156.6666666667vw;
    margin-bottom: 7.1794871795vw;
  }
  .ex_movie_no {
    font-size: 3.0769230769vw;
    padding: 1.2820512821vw 0.7692307692vw 0.5128205128vw;
  }
  .ex_movie_no span:first-of-type {
    margin-right: 1.2820512821vw;
  }
  .ex .no {
    width: 4.6153846154vw;
    height: 4.6153846154vw;
    padding-top: 0.2564102564vw;
    box-sizing: border-box;
  }
  .ex_movie_htx {
    font-size: 4.6153846154vw;
    padding: 1.7948717949vw 1.5384615385vw 0;
  }
  .ex_movie_htx small {
    font-size: 4.1025641026vw;
  }
  .ex_movie_video video {
    height: 50.7692307692vw;
  }
  .ex_movie_text {
    color: #ffffff;
    font-size: 3.5897435897vw;
    font-weight: 500;
    margin-top: 1.0256410256vw;
    line-height: 1.5em;
  }
  .ex_h1 {
    width: 78.5333333333vw;
    margin: auto;
  }
  .ex_place_wrap {
    width: 93.2051282051vw;
    margin: 5.1282051282vw auto 0;
    padding-bottom: 11.5384615385vw;
    justify-content: space-around;
  }
  .ex_place_el {
    width: 43.5897435897vw;
    margin-bottom: 2.5641025641vw;
  }
  .ex_place_el::before, .ex_place_el::after {
    bottom: -0.5128205128vw;
    width: 2.3076923077vw;
    height: 2.3076923077vw;
  }
  .ex_place_el::before {
    left: -0.5128205128vw;
  }
  .ex_place_el::after {
    right: -0.5128205128vw;
  }
  .ex_place_h {
    font-size: 3.3333333333vw;
    padding: 1.7948717949vw 0 1.2820512821vw;
  }
  .ex_place_h::before, .ex_place_h::after {
    top: -0.5128205128vw;
    width: 2.3076923077vw;
    height: 2.3076923077vw;
  }
  .ex_place_h::before {
    left: -0.5128205128vw;
  }
  .ex_place_h::after {
    right: -0.5128205128vw;
  }
  .ex_place_tx {
    font-size: 3.5897435897vw;
    padding: 1.5384615385vw 2.5641025641vw;
    line-height: 1.1em;
    position: relative;
    min-height: 11.5384615385vw;
  }
  .melit {
    margin-top: -0.0256410256vw;
  }
  .melit_h {
    width: 89.8948717949vw;
    margin: 0 auto 4.1025641026vw;
  }
  .melit_h img {
    margin-top: -3.8461538462vw;
  }
  .melit_wrap {
    border: none;
    width: 100%;
    margin: 0 auto 6.9230769231vw;
    padding: 0 5.1282051282vw;
    position: relative;
  }
  .melit_h1 {
    width: 86.7384615385vw;
    margin: auto;
  }
  .melit_subh {
    padding-top: 3.8461538462vw;
    font-size: 3.3333333333vw;
  }
  .melit_subh::before {
    content: "";
    width: 22.0512820513vw;
    height: 0.2564102564vw;
    bottom: 0vw;
  }
  .melit_1 .melit_box {
    background-image: url(../img/melit_bg1.png), url(../img/melit_bg2.png);
    background-position: top left, bottom right;
    background-size: 100% auto;
    background-repeat: no-repeat;
  }
  .melit_1_img1 {
    margin: 5.8974358974vw auto 0;
    width: 87.9487179487vw;
  }
  .melit_1_txt {
    width: 89.7435897436vw;
    font-size: 3.5897435897vw;
    font-weight: 500;
    margin: 1.5384615385vw auto 0;
    line-height: 1.4em;
  }
  .melit_1_img2 {
    width: 84.8923076923vw;
    margin: 0vw auto 0;
    padding-bottom: 4.6153846154vw;
  }
  .melit_2 .melit_box {
    height: 133.3333333333vw;
  }
  .melit_h2 {
    width: 73.6615384615vw;
    margin: auto;
  }
  .melit_2_tag {
    width: 68.4615384615vw;
    margin: 0.7692307692vw auto 0;
    flex-wrap: wrap;
  }
  .melit_tag {
    font-size: 3.8461538462vw;
    padding: 0.7692307692vw;
    margin: 0 0 2.0512820513vw;
  }
  .melit_tag p {
    border: #ffffff solid 0.2564102564vw;
    padding: 1.5384615385vw 2.0512820513vw 1.2820512821vw;
  }
  .melit_tag span {
    display: inline-block;
    font-size: 2.0512820513vw;
    font-weight: 500;
    letter-spacing: -0.05em;
    line-height: 1.2em;
  }
  .melit_intro::after, .melit_intro::before {
    content: "";
    display: block;
    position: absolute;
    width: 9.2307692308vw;
    height: 9.2307692308vw;
    top: 80.7692307692vw;
    background-size: contain;
    z-index: 10;
  }
  .melit_intro::before {
    background-image: url(../img/melit_left.png);
    left: 7.6923076923vw;
  }
  .melit_intro::after {
    background-image: url(../img/melit_right.png);
    right: 7.6923076923vw;
  }
  .melit_intro.start::before {
    display: none;
  }
  .melit_intro.end::after {
    display: none;
  }
  .melit_2_h2 {
    font-size: 3.5897435897vw;
    margin: 2.5641025641vw 3.8461538462vw 0;
  }
  .melit_2_h2::before {
    content: "";
    display: inline-block;
    width: 3.5897435897vw;
    height: 3.5897435897vw;
    background-color: #1F384D;
    margin-right: 0vw;
  }
  .melit_2_scroll {
    width: 100%;
    position: absolute;
    left: 0;
    overflow: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .melit_2_scroll::-webkit-scrollbar {
    display: none;
  }
  .melit_2_list {
    width: 206.4102564103vw;
    margin: 2.3076923077vw auto 0;
    padding: 0 15.3846153846vw 5.1282051282vw;
  }
  .melit_2_el {
    width: 65.4333333333vw;
    border: 0.5128205128vw solid #1F384D;
  }
  .melit_2_el_h_no {
    background-color: #1F384D;
    font-size: 3.0769230769vw;
    font-weight: 700;
    color: #ffffff;
    padding: 0.7692307692vw 2.0512820513vw 1.0256410256vw;
  }
  .melit_2_el_h_no span {
    display: inline-flex;
    width: 5.1282051282vw;
    height: 5.1282051282vw;
    padding-top: 0.1em;
    margin-left: 1.2820512821vw;
  }
  .melit_2_el_h_money {
    font-size: 5.8974358974vw;
    padding-top: 0vw;
  }
  .melit_2_el_h_money span {
    font-size: 4.358974359vw;
  }
  .melit_2_el_imgtx {
    font-size: 4.1025641026vw;
    bottom: 3.8461538462vw;
    padding: 1.2820512821vw 2.0512820513vw 0.7692307692vw;
    background-color: #1F384D;
  }
  .melit_2_el_tx {
    font-size: 3.5897435897vw;
    padding: 2.3076923077vw 3.8461538462vw 1.0256410256vw;
    line-height: 1.4em;
  }
  .melit_3 .melit_box {
    background-image: url(../img/melit_bg1.png);
    background-position: top left;
    background-size: 100% auto;
    background-repeat: no-repeat;
  }
  .melit_h3 {
    width: 93.6615384615vw;
  }
  .melit_h3 img {
    transform: translateX(-2%);
  }
  .melit_3_img {
    width: 80.7692307692vw;
    margin-top: 2.5641025641vw;
  }
  .melit_3_text {
    font-size: 4.1025641026vw;
    font-weight: 700;
    line-height: 1.3em;
    padding-bottom: 3.8461538462vw;
  }
  .flow {
    background-image: url(../img/bg3.png);
  }
  .flow_h {
    width: 79.1615384615vw;
    padding-top: 2.5641025641vw;
  }
  .flow_step {
    width: 89.7435897436vw;
    margin: 1.2820512821vw auto 0;
  }
  .flow_el {
    width: 89.7435897436vw;
    margin-bottom: 2.5641025641vw;
  }
  .flow_el_h_no {
    font-size: 7.6923076923vw;
    transform: translateY(0vw);
  }
  .flow_el_h_iocn {
    width: 20.041025641vw;
    background-color: #F74A0D;
    border-radius: 3.8461538462vw 3.8461538462vw 0 0;
  }
  .flow_el_txwrap {
    border: solid 0.5128205128vw #F74A0D;
    padding: 3.5897435897vw;
  }
  .flow_el_txwrap::after {
    display: none;
  }
  .flow_el_txh {
    font-size: 5.1282051282vw;
    font-weight: 900;
    color: #ffffff;
    line-height: 1em;
  }
  .flow_el_txh::before, .flow_el_txh::after {
    width: 3.8461538462vw;
    height: 3.8461538462vw;
  }
  .flow_el_txh::before {
    top: -0.7692307692vw;
    left: -0.7692307692vw;
  }
  .flow_el_txh::after {
    bottom: -0.7692307692vw;
    right: -0.7692307692vw;
  }
  .flow_el_tx {
    font-size: 3.5897435897vw;
    font-weight: 400;
    color: #ffffff;
    line-height: 1.3em;
    margin-top: 2.3076923077vw;
  }
  .flow_el_tx::before {
    content: "";
    background-image: url(../img/flow_b2.png);
    bottom: -0.7692307692vw;
    left: -0.7692307692vw;
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
    position: absolute;
    width: 3.8461538462vw;
    height: 3.8461538462vw;
  }
  .flow_el:first-of-type .flow_el_txwrap::after {
    display: none;
  }
  .flow_el:last-of-type .flow_el_tx {
    line-height: 1.3em;
    letter-spacing: 0em;
    margin-top: 2.3076923077vw;
  }
  .qa {
    background-position: top 10.2564102564vw center;
    padding: 0vw 0 0;
  }
  .qa_h {
    width: 79.1615384615vw;
    margin: 0 auto;
    padding-top: 15.3846153846vw;
  }
  .qa_list {
    width: 89.7435897436vw;
    margin: 2.5641025641vw auto 0;
  }
  .qa_el {
    border-bottom: #F74A0D solid 0.2564102564vw;
  }
  .qa_el dl {
    padding: 6.4102564103vw 0vw 5.1282051282vw 0vw;
  }
  .qa_el dt {
    font-size: 4.6153846154vw;
    margin-bottom: 1.7948717949vw;
  }
  .qa_el dd {
    font-size: 3.5897435897vw;
    line-height: 1.3em;
  }
  .qa_el dd p {
    padding-top: 2.5641025641vw;
  }
  .qa_icon {
    width: 7.6923076923vw;
    margin-right: 2.5641025641vw;
  }
  .contact{
    margin-top: 13.07672308vw;
    background-image: url(../img/bg1-sp.png);
  }
  .contact_h{
    width: 78.9744vw;
    padding-top: 9.48717949vw;
  }
  .contact_form{
    margin-top: 10.769231vw;
    max-width: 89.7435897436vw;
  }
  .form__label-text{
    gap: 5.12820513vw;
    font-size: 4.102564vw;
  }
  .form__label-text span{
    font-size: 3.589744vw;
    padding: 2px 4.615386vw 0;
  }
  .form__input{
    margin-top: 1.28205128vw;
  }
  .form__input-text{
    padding: 2.56410256vw;
    font-size: 4.61538462vw;
  }
  .form__item:not(:first-of-type){
    margin-top: 5.12820513vw;
  }
  .form__label-textarea{
    font-size: 4.102564vw;
  }
  .form__textarea{
    height: 35.64102564vw;
    padding: 2.56410256vw;
    font-size: 3.58974359vw;
  }
  .form__check{
    margin-top: 5.12820513vw;
  }
  .form__check-btn{
    gap: 2.82051282vw;
  }
  .form__check-btn span,
  .form__check-btn a{
    font-size: 3.58974359vw;
    line-height: 1.5;
  }
  .form__check-btn input{
    width: 5.12820513rem;
    height: 5.12820513rem;
  }
  .form__check-btn input:checked::before {
    top: -2.6rem;
    left: 0.3rem;
    width: 3rem;
    height: 5.9rem;
  }
  .is-error-name, .is-error-kana, .is-error-tel, .is-error-email, .is-error-cheek{
    font-size: 2.56410256vw;
  }
  .is-error-cheek{
    text-align: left;
  }
  .form__btn-wrap{
    margin-top: 7.17948718vw;
  }
  .form__btn input{
    width: 78.71794872vw;
    font-size: 4.102564vw;
    padding: 5.12820513vw;
  }
  .form__tx{
    margin-top: 2.56410256vw;
    font-size: 3.58974359vw;
  }
  footer {
    width: 100%;
    margin: 12.8205128205vw auto 0;
    font-size: 2.5641025641vw;
    padding: 3.8461538462vw 0 16.6666666667vw;
  }
  .contact_thanks{
  margin: 8vw auto 0;
  max-width: 70vw;
}
.contact_thanks p{
  font-size: 2.7vw;
  line-height: 1.5;
  color: #fff;
}
.contact_thanks p:not(:first-of-type){
  margin-top: 2.4vw;
}
}/*# sourceMappingURL=style.css.map */