body {
  color: #3f3f3f;
  background: #e7f8ff;
}

a {
  width: inherit;
  height: inherit;
  display: inline-block;
}

img {
  width: 100%;
  height: auto;
  display: block;
}

.hp_spNone {
  display: none !important;
}

/*----------- header -----------*/
.bl_header_ttl {
  background: #437fb5;
  padding: 2.03125vw;
  color: #fff;
  font-size: 3.28125vw;
  line-height: 1.1428571429;
  text-align: center;
}

.bl_header_logo {
  width: 38.75vw;
  margin: 2.34375vw auto 0;
}

/*-----------.bl_form_area -----------*/
.ly_form {
  padding: 1.5625vw 0 31.25vw;
}
.ly_form .error {
  display: block;
  color: #df3434;
  font-size: 2.8125vw;
  padding-bottom: 1.25vw;
}

.bl_form_ttl {
  color: #538ec4;
  text-align: center;
  font-size: 5vw;
  font-weight: bold;
  letter-spacing: 0.08em;
  padding: 4.375vw 0 4.6875vw;
  width: 93.75vw;
  height: 25vw;
  margin: 0 auto;
  background: url(../img/sp_form_backgroundImage.png) no-repeat center/cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.bl_form_flow {
  margin: 4.0625vw auto 0;
  width: 86.25vw;
}

.bl_form_txt {
  width: 87.5vw;
  font-size: 3.75vw;
  line-height: 1.25;
  margin: 0 auto;
}

.ly_form .bl_form_area {
  width: 96.875%;
  margin: 5.78125vw auto 0;
}
.ly_form dl {
  background: #fff;
  margin: 0 auto;
  border-top: solid 0.15625vw #bbb;
  padding: 1.5625vw 3.125vw 3.59375vw;
}
.ly_form dl:first-of-type {
  margin-top: 2.5vw;
}
.ly_form dt {
  font-size: 4.0625vw;
  line-height: 1.2307692308;
}
.ly_form dt label {
  line-height: 1.7777777778;
}
.ly_form dd {
  font-size: 3.8125vw;
  margin-top: 0.46875vw;
}
.ly_form dd p {
  font-size: 3.8125vw;
}
.ly_form dd span {
  margin: 0.46875vw 0 0 0.46875vw;
  display: block;
  font-size: 3.125vw;
  line-height: 1.15;
}
.ly_form dd span + span {
  margin-top: 2.8125vw;
}
.ly_form dl.req dt::after {
  content: "";
  background: url(../img/sp_form_icon_required.png) no-repeat center/contain;
  width: 10.15625vw;
  height: 3.90625vw;
  display: inline-block;
  vertical-align: middle;
}
.ly_form input[type=text], .ly_form input[type=tel], .ly_form input[type=email], .ly_form textarea, .ly_form select {
  border: none;
  width: 90.625vw;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #fef5e1;
  border-radius: 0.78125vw;
  font-size: 4.0625vw;
  line-height: 1.5;
  letter-spacing: 0.04em;
  padding: 1.71875vw 2.5vw;
  resize: none;
  cursor: pointer;
}
.ly_form input[type=text]::-webkit-input-placeholder, .ly_form textarea::-webkit-input-placeholder, .ly_form select::-webkit-input-placeholder {
  color: #c6c6c6;
}
.ly_form input[type=text]::-moz-placeholder, .ly_form textarea::-moz-placeholder, .ly_form select::-moz-placeholder {
  color: #c6c6c6;
}
.ly_form input[type=text]::-ms-input-placeholder, .ly_form textarea::-ms-input-placeholder, .ly_form select::-ms-input-placeholder {
  color: #c6c6c6;
}
.ly_form input[type=text]::placeholder, .ly_form textarea::placeholder, .ly_form select::placeholder {
  color: #c6c6c6;
}
.ly_form input[type=text]#zip_code1, .ly_form input[type=text]#zip_code2 {
  width: 34.375vw;
  margin-left: 1.875vw;
  margin-right: -0.46875vw;
}
.ly_form input[type=text]#zip_code1 {
  margin-left: 2.8125vw;
}
.ly_form select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #3f3f3f;
}
.ly_form textarea {
  height: 37.5vw;
  background: #ecf7fb;
}
.ly_form dl.address dd {
  font-size: 4.0625vw;
  line-height: 1.2307692308;
}
.ly_form dl.address dd select {
  margin-top: 0.78125vw;
}
.ly_form .form .school dd,
.ly_form .form .address dd {
  position: relative;
}
.ly_form .form .school select,
.ly_form dl.address dd #address01 {
  background:#fef5e1 url(../img/common_form_select_triangle.png) no-repeat center right 3.12vw / 2.18vw auto;
}
.ly_form .address dd::after {
  top: 25.6vw;
}
.ly_form dl.address dd span {
  font-size: 3.4375vw;
}
.ly_form dl.address dd span.bl_form_section {
  margin: 2.5vw 0 1.25vw;
}
.ly_form dl.address dd input[type=text]#address03 {
  margin-top: 1.5625vw;
}
.ly_form dl.target dd input[type=radio] {
  position: absolute;
  opacity: 0;
}
.ly_form dl.target dd input[type=radio] + label {
  width: 39.0625vw;
  cursor: pointer;
  display: inline-block;
  font-size: 4.0625vw;
  padding: 2.8125vw 3.125vw;
  border: solid 0.15625vw #c8c8c8;
  border-radius: 0.78125vw;
}
.ly_form dl.target dd input[type=radio] + label + input[type=radio] + label {
  margin-left: 4.6875vw;
}
.ly_form dl.target dd input[type=radio] + label:before {
  content: "";
  border-radius: 100%;
  background: #dedbd3;
  display: inline-block;
  width: 4.6875vw;
  height: 4.6875vw;
  position: relative;
  top: -0.1em;
  margin-right: 1.71875vw;
  vertical-align: middle;
  cursor: pointer;
  text-align: center;
  -webkit-transition: all 250ms ease;
  transition: all 250ms ease;
}
.ly_form dl.target dd input[type=radio]:checked + label {
  background: #d5ebff;
}
.ly_form dl.target dd input[type=radio]:checked + label:before {
  background-color: #ff7c6b;
  -webkit-box-shadow: inset 0 0 0 0.9375vw #fff;
          box-shadow: inset 0 0 0 0.9375vw #fff;
}
.ly_form dl.target dd input[type=radio]:focus + label:before {
  outline: none;
  border-color: #dedbd3;
}
.ly_form dl.target dd input[type=radio]:disabled + label:before {
  -webkit-box-shadow: inset 0 0 0 0.9375vw #fff;
          box-shadow: inset 0 0 0 0.9375vw #fff;
  border-color: #dedbd3;
  background: #dedbd3;
}
.ly_form dl.target dd input[type=radio] + label:empty:before {
  margin-right: 0;
}

.ly_form.bl_form_area#chk dl.target dd {
  margin-top: 0.9375vw;
  font-size: 0;
}

.ly_form.bl_form_area#chk dl.school dd::after {
  border-left: 1.25vw solid transparent;
  border-right: 1.25vw solid transparent;
  border-top: 2.34375vw solid #000;
  content: "";
  position: absolute;
  right: 3.4375vw;
  bottom: 3.4375vw;
  width: 0;
  pointer-events: none;
}

.ly_form.bl_form_area#chk dl.address dd {
  position: relative;
}
.ly_form.bl_form_area#chk dl.address dd::after {
  border-left: 1.25vw solid transparent;
  border-right: 1.25vw solid transparent;
  border-top: 2.34375vw solid #000;
  content: "";
  position: absolute;
  right: 3.4375vw;
  bottom: 31.71875vw;
  width: 0;
  pointer-events: none;
}

dl.school dd {
  position: relative;
}

.bl_privacypolicy_agree {
  display: table;
  font-size: 0;
  margin: 0 auto;
  width: 100%;
  position: relative;
  border-top: solid 0.15625vw #bbb;
  text-align: center;
  padding-top: 12.03125vw;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.bl_privacypolicy_agree input[type=checkbox] {
  opacity: 0;
}
.bl_privacypolicy_agree input[type=checkbox] + label {
  cursor: pointer;
  display: block;
  font-size: 4.0625vw;
  font-weight: bold;
  line-height: 1.3076923077;
  letter-spacing: 0.05em;
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  padding-left: 10.9375vw;
}
.bl_privacypolicy_agree input[type=checkbox] + label a {
  color: #075ee0;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.3076923077;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  display: inline;
  position: relative;
  z-index: 2;
}
.bl_privacypolicy_agree input[type=checkbox] + label a:hover {
  opacity: 1;
  text-decoration: none;
}
.bl_privacypolicy_agree::after {
  content: "";
  background: url(../img/sp_form_icon_required.png) no-repeat center/contain;
  width: 10.15625vw;
  height: 3.90625vw;
  display: inline-block;
  vertical-align: middle;
  margin-left: 2.34375vw;
}
.bl_privacypolicy_agree input[type=checkbox] + label::before {
  content: "";
  background: url(../img/sp_form_icon_check_box.png) no-repeat center/contain;
  display: block;
  width: 6.25vw;
  height: 6.25vw;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.bl_privacypolicy_agree input[type=checkbox] + label::after {
  content: "";
  background: url(../img/sp_form_icon_check_on.png) no-repeat center/contain;
  display: block;
  opacity: 0;
  width: 3.75vw;
  height: 2.96875vw;
  position: absolute;
  left: 1.09375vw;
  top: 1.71875vw;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.bl_privacypolicy_agree input[type=checkbox]:checked + label::after {
  opacity: 1;
}

.bl_form_confirm {
  width: 87.1875vw;
  margin: 9.6875vw auto 0;
}
.bl_form_confirm input {
  border: none;
  font-size: 2.8125vw;
  letter-spacing: 0.1em;
  text-align: center;
}
.bl_form_confirm input.bl_form_confirmBtn {
  font-size: 0;
}

.bl_form_confirmBtn {
  width: 100%;
  height: 20vw;
  background: url(../img/sp_form_button_next.png) no-repeat center/cover;
}

.bl_send_list {
  padding: 9.6875vw 0 0;
  border-top: solid 0.15625vw #bbb;
  text-align: center;
}
.bl_send_list input {
  width: 87.1875vw;
  border: none;
  font-size: 2.8125vw;
  letter-spacing: 0.1em;
  text-align: center;
}
.bl_send_list input.bl_form_sendBtn {
  font-size: 0;
}

.bl_form_sendBtn {
  width: 100%;
  height: 20vw;
  background: url(../img/sp_confirm_button_submit.png) no-repeat center/cover;
}

.el_form_prevBtn {
  font-size: 4.0625vw;
  line-height: 1.0769230769;
  letter-spacing: 0.08em;
  text-align: center;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  margin-top: 9.0625vw;
  display: block;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.el_form_prevBtn:hover {
  text-decoration: none;
}

.bl_form_wrapper.bl_form_wrapper--thanks {
  margin: 11.71875vw auto 0;
  width: 87.5vw;
}

.bl_thanks_ttl {
  text-align: center;
  font-size: 5vw;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.5625;
  color: #538ec4;
}

.bl_thanks_txt {
  font-size: 4.0625vw;
  line-height: 1.8;
  letter-spacing: 0.04em;
  margin-top: 5.15625vw;
}
.bl_thanks_txt + .bl_thanks_txt {
  margin-top: 7.03125vw;
}
.bl_thanks_txt.__center {
  text-align: center;
}

.bl_thanks_downloadBtn {
  width: 81.875vw;
  margin: 6.875vw auto 0;
}

.bl_thanks_top {
  width: 37.1875vw;
  margin: 30vw auto 0;
}

/*----------- footer -----------*/
.ly_footer {
  background: #437fb5;
  text-align: center;
  padding: 0.46875vw 0 1.09375vw;
}

.bl_footer_copyright {
  color: #fff;
  font-size: 3.125vw;
  line-height: 1.4;
  letter-spacing: 0.08em;
}

input#next-btn {
  display: block;
  background: url(../img/sp_form_button_next.png) no-repeat top center;
  background-size: 100% auto;
  font-size: 0;
  width: 87.188vw;
  height: 20vw;
  margin: 4vw auto 0;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.sendBtn {
  display: block;
  background-image: url(../img/sp_confirm_button_submit.png);
  background-size: 100% auto;
  font-size: 0;
  width: 87.188vw;
  height: 20vw;
  margin: 80px auto 0;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
