@charset "UTF-8";
img {
  width: 100%;
  height: auto;
  display: block;
}

a {
  text-decoration: underline;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.hp_spNone {
  display: none !important;
}

.ly_header {
  width: 100%;
  position: absolute;
  top: 5.46875vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.bl_header_logo {
  margin-left: 3.59375vw;
  width: 39.84375vw;
}

.bl_header_contact, .bl_header_dl {
  font-size: 3.125vw;
  font-weight: bold;
  letter-spacing: 0.1em;
  text-underline-offset: 0.2em;
  color: #fff;
  margin: 2.03125vw 2.65625vw 0 0;
}
.bl_header_contact::after, .bl_header_dl::after {
  content: ">";
  margin-left: 1.40625vw;
  display: inline-block;
}

.bl_header_dl::after {
  margin-left: 4.21875vw;
}

.ly_form {
  padding: 29.0625vw 0 0;
  background: url(../img/fv_background.jpg) no-repeat center;
  background-size: cover;
}

.bl_formFrame_wrapper {
  position: relative;
  padding-bottom: 21.875vw;
}
.bl_formFrame_wrapper.bl_formFrame_thanks {
  padding-bottom: 36.71875vw;
}

.bl_formFrame {
  position: relative;
  z-index: 10;
  display: block;
}

.bl_subFrame {
  width: 78.125vw;
  margin: 0 auto;
  text-align: center;
}

.bl_subFrame_top {
  text-align: center;
  color: #fff;
  border-top: solid 3px #2544c0;
  border-bottom: solid 3px #2544c0;
  padding: 6.25vw 0;
}
.bl_subFrame_top.bl_subFrame_topSub {
  padding: 8.59375vw 0;
}

.bl_subFrame_ttl {
  font-size: 6.875vw;
  font-weight: bold;
  line-height: 1.25;
  letter-spacing: 0.12em;
}

.bl_subFrame_subttl {
  font-size: 3.125vw;
  font-weight: bold;
  letter-spacing: 0.5em;
}

.bl_subFrame_img {
  margin-top: 6.25vw;
}

.bl_subFrame_cont {
  font-size: 3.125vw;
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: 0.1em;
  color: #f1e527;
  margin-top: 4.375vw;
}
.bl_subFrame_cont.bl_subFrame_contSub {
  color: #fff;
  margin-top: 8.59375vw;
}

.bl_subFrame_text {
  font-size: 3.125vw;
  line-height: 1.4;
  letter-spacing: 0.1em;
  color: #fff;
}
.bl_subFrame_text.bl_subFrame_textSub {
  margin-top: 4.375vw;
}
.bl_subFrame_text.bl_subFrame_textConfirm {
  text-align: left;
  letter-spacing: 0.08em;
  margin-top: 2.34375vw;
}

.bl_mainForm {
  width: 87.5vw;
  margin: 7.03125vw auto 0;
  background: #9fafef;
  border-radius: 3.125vw;
  overflow: hidden;
  padding: 5vw 0 8.59375vw;
}
.bl_mainForm .error {
  display: block;
  width: 100%;
  color: #df3434;
  font-size: 2.8125vw;
  padding-bottom: 1.25vw;
}
.bl_mainForm.bl_mainForm__contact {
  background: #cbc5ef;
}

.bl_mainForm_ttl {
  width: 76.5625vw;
  margin: 0 auto;
}
.bl_mainForm_ttl.bl_mainForm_ttl {
  width: 67.96875vw;
}

.bl_form_item:first-child {
  margin-top: 6.71875vw;
}

.bl_form_item {
  width: 78.125vw;
  margin: 0 auto 2.34375vw;
}
.bl_form_item dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.bl_form_item dt label {
  font-size: 3.4375vw;
  font-weight: bold;
  color: #fff;
}
.bl_form_item dt::after {
  content: "必須";
  color: #db557b;
  border: solid 1px #db557b;
  background: #fff;
  font-size: 2.8125vw;
  font-weight: 500;
  letter-spacing: 0.02em;
  padding: 0.46875vw 0.78125vw;
  margin-right: 0;
  margin-bottom: .8vw;
  line-height: 1;
}
.bl_form_item dt.form_none::after {
  content: none;
}
.bl_form_item dd input[type=text], .bl_form_item dd textarea {
  width: 100%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #fff;
  border: none;
  font-size: 3.4375vw;
  line-height: 1.5;
  resize: none;
  padding: 1.875vw 2.34375vw;
  border-radius: 0.625vw;
}
.bl_form_item dd input[type=text]::-webkit-input-placeholder, .bl_form_item dd textarea::-webkit-input-placeholder {
  color: #d1d7f1;
}
.bl_form_item dd input[type=text]::-moz-placeholder, .bl_form_item dd textarea::-moz-placeholder {
  color: #d1d7f1;
}
.bl_form_item dd input[type=text]::-ms-input-placeholder, .bl_form_item dd textarea::-ms-input-placeholder {
  color: #d1d7f1;
}
.bl_form_item dd input[type=text]::placeholder, .bl_form_item dd textarea::placeholder {
  color: #d1d7f1;
}
.bl_form_item dd textarea {
  height: 31.25vw;
}

.bl_form_privacypolicy {
  margin-top: 5.9375vw;
  font-size: 3.125vw;
  font-weight: bold;
  letter-spacing: 0.02em;
  color: #07156b;
  text-align: center;
  line-height: 1.5;
}
.bl_form_privacypolicy a {
  font-weight: bold;
  letter-spacing: 0.02em;
  color: #07156b;
  text-underline-offset: 0.2em;
  display: inline;
}

.bl_nextBtn input, #sent-prev input {
  margin: 3.28125vw auto 0;
  text-align: center;
  border: none;
  font-size: 4.0625vw;
  letter-spacing: 0.1em;
  font-weight: bold;
  color: #fff;
  width: 81.25vw;
  padding: 5.9375vw 0 4.0625vw;
  display: block;
  background: url(../img/info_button_arrow.png) no-repeat center right 2.1875vw, url(../img/header_button_request.png) no-repeat;
  background-size: 2.1875vw 3.59375vw, 121%;
}

.ly_footer {
  background: #151e53;
  padding: 0.78125vw 0;
  text-align: center;
}

.bl_footer_copyright {
  color: #fff;
  font-size: 1.875vw;
  letter-spacing: 0.1em;
}

#send-btn {
  width: 56.875vw;
  margin: 0 auto;
}
#send-btn input {
  width: 100%;
}

#sent-prev {
  margin-top: 7.03125vw;
  text-align: center;
}

#prev-btn {
  width: 47.5vw;
  margin: 3.125vw auto 0;
}

.go_top {
  margin-top: 10.15625vw;
  text-align: center;
}
.go_top a {
  color: #fff;
  font-size: 3.75vw;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.go_top a:hover {
  text-decoration: none;
}

.bl_formFrame_wrapper.bl_formFrame_wrapperContact {
  padding-bottom: 23.4375vw;
}

.bl_subFrame_contactHead {
  font-size: 4.6875vw;
  font-weight: bold;
  color: #15205b;
  width: 78.125vw;
  margin: 5.46875vw auto 0;
}

.bl_subFrame_contactTxt, .bl_subFrame_confirmTxt {
  font-size: 3.75vw;
  color: #15205b;
  line-height: 1.5;
  width: 78.125vw;
  margin: 6.25vw auto 0;
}

.bl_mainForm.bl_mainForm__contact {
  padding-bottom: 10.9375vw;
}

.bl_thanks {
  text-align: center;
  padding-top: 7.03125vw;
}

.bl_thanks_ttl {
  font-size: 3.75vw;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.1666666667;
  color: #fff;
  margin-top: 7.03125vw;
  text-align: center;
}

.bl_thanks_txt {
  font-size: 3.125vw;
  color: #fff;
  line-height: 1.4;
  text-align: left;
  margin-top: 4.6875vw;
}

.bl_thanksDl {
  width: 90.625vw;
  margin: 0 auto;
  text-align: center;
}

.bl_thanksDl_img {
  width: 78.125vw;
  margin: 12.5vw auto 0;
}

.bl_thanksDl_btn {
  margin: 4.375vw auto;
  width: 81.25vw;
  text-align: center;
  border: none;
  padding: 5.15625vw 0 3.59375vw;
  display: block;
  background: url(../img/info_button_dl.png) no-repeat center right 3.90625vw, url(../img/header_button_request.png) no-repeat;
  background-size: 4.6875vw 4.21875vw, 102%;
}
.bl_thanksDl_btn a {
  font-size: 4.0625vw;
  letter-spacing: 0.1em;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
}
