@media screen and (min-width: 769px) {
  .hero_wrap {
    background-image: url(../img/proposal/kv_pc.jpg);
  }
}
@media screen and (max-width: 768px) {
  .hero_wrap {
    background-image: url(../img/proposal/kv_sp.jpg);
  }
}

/*
.intro {
@include pc {
    width: divceil(900, 10, rem);
    margin: divceil(100, 10, rem) auto divceil(60, 10, rem);
}
@include sp {
    margin: divceil(100, 10, rem) 0 divceil(60, 10, rem);
}
.intro_inner{
    display: grid;
}
}
.btn_wrap {
    margin: 0 auto;
}
*/
@media screen and (min-width: 769px) {
  .contact {
    width: 90rem;
    margin: 10rem auto 6rem;
  }
}
@media screen and (max-width: 768px) {
  .contact {
    width: 100%;
    margin: 10rem 0 6rem;
  }
}
@media screen and (min-width: 769px) {
  .contact .contact_inner_txt {
    padding-bottom: 6.5rem;
  }
}
@media screen and (max-width: 768px) {
  .contact .contact_inner_txt {
    padding-bottom: 7rem;
    text-align: justify;
  }
}
.contact .contact_inner_txt .contact_ttl {
  font-weight: 500;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 769px) {
  .contact .contact_inner_txt .contact_ttl {
    font-size: 2rem;
    padding-bottom: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .contact .contact_inner_txt .contact_ttl {
    font-size: 2.8rem;
    line-height: 4.4rem;
    padding-bottom: 2rem;
  }
}
.contact .contact_inner_txt .precautions {
  text-align: justify;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 769px) {
  .contact .contact_inner_txt .precautions {
    font-size: 1.5rem;
    line-height: 2.6rem;
  }
}
@media screen and (max-width: 768px) {
  .contact .contact_inner_txt .precautions {
    font-size: 2.5rem;
    line-height: 4rem;
  }
}
.contact .contact_inner_txt .red {
  color: #e72410;
}

.mailform {
  padding: 0;
  margin: 0 auto;
}

.Form-Item {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .Form-Item {
    padding-bottom: 4rem;
    align-items: center;
  }
}
@media screen and (max-width: 768px) {
  .Form-Item {
    padding-bottom: 4rem;
    display: block;
  }
}
.Form-Item input + input {
  margin-top: 1.5rem;
}
@media screen and (min-width: 769px) {
  .Form-Item input[name=post] {
    width: 22rem;
  }
}
@media screen and (max-width: 768px) {
  .Form-Item input[name=post] {
    width: 30rem;
  }
}

.Form-Item:last-of-type {
  padding-bottom: 0;
}

.Form-Item-Label {
  letter-spacing: 0.03em;
}
@media screen and (min-width: 769px) {
  .Form-Item-Label {
    font-size: 1.6rem;
    padding-bottom: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .Form-Item-Label {
    width: 100%;
    font-size: 2.6rem;
    padding-bottom: 2rem;
  }
}

.Form-Item-Label-Required {
  display: inline-block;
  color: #e72410;
  vertical-align: top;
}
@media screen and (min-width: 769px) {
  .Form-Item-Label-Required {
    font-size: 0.6em;
  }
}
@media screen and (max-width: 768px) {
  .Form-Item-Label-Required {
    font-size: 0.6em;
  }
}

.Form-Item-Input {
  border: none;
  border-radius: 0.6rem;
  flex: 1;
  width: 100%;
  background: #eeeeee;
}
@media screen and (min-width: 769px) {
  .Form-Item-Input {
    padding-left: 1em;
    padding-right: 1em;
    height: 6rem;
    width: 90rem;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .Form-Item-Input {
    padding-left: 1em;
    padding-right: 0;
    height: 10rem;
    font-size: 2.6rem;
  }
}

.Form-Item-Textarea {
  border: none;
  border-radius: 0.6rem;
  flex: 1;
  width: 100%;
  background: #eeeeee;
}
@media screen and (min-width: 769px) {
  .Form-Item-Textarea {
    padding: 2em;
    height: 31rem;
    width: 90rem;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .Form-Item-Textarea {
    padding: 1.5em;
    height: 50rem;
    max-width: 100%;
    font-size: 2.6rem;
  }
}

@media screen and (min-width: 769px) {
  .consent {
    font-size: 1.5rem;
    line-height: 2.6rem;
  }
}
@media screen and (max-width: 768px) {
  .consent {
    font-size: 2.5rem;
    line-height: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .consent .consent_txt {
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .consent .consent_txt {
    padding-bottom: 6rem;
  }
}
.consent .matter {
  font-weight: 500;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 769px) {
  .consent .matter {
    font-size: 2rem;
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .consent .matter {
    font-size: 3.2rem;
    padding-bottom: 5rem;
  }
}
.consent .privacy {
  border: 1px solid #d2d7d7;
}
@media screen and (min-width: 769px) {
  .consent .privacy {
    padding: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .consent .privacy {
    padding: 5rem;
  }
}
.consent .privacy .privacy_inner {
  overflow: auto;
}
@media screen and (min-width: 769px) {
  .consent .privacy .privacy_inner {
    height: 23.2rem;
  }
}
@media screen and (max-width: 768px) {
  .consent .privacy .privacy_inner {
    height: 47.2rem;
  }
}
.consent .privacy .privacy_txt {
  text-align: justify;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .consent .privacy .privacy_txt {
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .consent .privacy .privacy_txt {
    padding-bottom: 4rem;
  }
}
.consent .privacy .privacy_txt .privacy_ttl {
  font-weight: 500;
  color: #0A64B4;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 769px) {
  .consent .privacy .privacy_txt .privacy_ttl {
    font-size: 1.7rem;
    padding-bottom: 1.2rem;
  }
}
@media screen and (max-width: 768px) {
  .consent .privacy .privacy_txt .privacy_ttl {
    font-size: 2.9rem;
    line-height: 4.4rem;
    padding-bottom: 2rem;
    text-indent: -1.8em;
    padding-left: 1.8em;
  }
}
.consent .privacy .privacy_txt:last-of-type {
  padding-bottom: 0;
}

@media screen and (max-width: 768px) {
  .link_btn {
    padding: 0 5.6rem;
  }
}

@media screen and (max-width: 768px) {
  .link_btn_p {
    letter-spacing: 0.03em;
  }
}

.link_btn.col_b {
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  .long {
    width: 37.2rem;
  }
}
@media screen and (max-width: 768px) {
  .long {
    width: 58.6rem;
  }
}

.post_src {
  display: inline-grid;
  place-content: center;
  background-color: #6E7878;
  border: none;
  border-radius: 0.6rem;
  color: #fff;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .post_src {
    font-size: 1.5rem;
    margin-left: 5px;
    width: 14.8rem;
    height: 6rem;
  }
}
@media screen and (max-width: 768px) {
  .post_src {
    margin-left: 2rem;
    width: 23rem;
    height: 10rem;
  }
}

.att,
.att_post,
.att_agree,
.att_valMail,
.att_tel,
.att_formatMail,
.att_kana,
.att_valMailEmpty {
  margin-top: 1rem;
  color: #E72410;
}
@media screen and (min-width: 769px) {
  .att,
  .att_post,
  .att_agree,
  .att_valMail,
  .att_tel,
  .att_formatMail,
  .att_kana,
  .att_valMailEmpty {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .att,
  .att_post,
  .att_agree,
  .att_valMail,
  .att_tel,
  .att_formatMail,
  .att_kana,
  .att_valMailEmpty {
    font-size: 2.5rem;
  }
}

.att_agree {
  text-align: center;
}

@media screen and (min-width: 769px) {
  .agree {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .agree {
    margin-top: 4rem;
  }
}

.agree_inner {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .agree_inner {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .agree_inner {
    -moz-column-gap: 3rem;
         column-gap: 3rem;
    font-size: 3rem;
  }
}
.agree_inner input[type=checkbox] {
  border: 1px solid #282828;
  border-radius: 0;
  vertical-align: -5px;
  position: relative;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media screen and (min-width: 769px) {
  .agree_inner input[type=checkbox] {
    width: 2.4rem;
    height: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .agree_inner input[type=checkbox] {
    width: 4rem;
    height: 4rem;
  }
}
.agree_inner input[type=checkbox]:checked:before {
  content: "";
  border-right: 5px solid #0A64B4;
  border-bottom: 5px solid #0A64B4;
  position: absolute;
  transform: rotate(50deg);
}
@media screen and (min-width: 769px) {
  .agree_inner input[type=checkbox]:checked:before {
    width: 1.4rem;
    height: 2.2rem;
    top: -0.3em;
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .agree_inner input[type=checkbox]:checked:before {
    width: 2.6rem;
    height: 3.8rem;
    top: -0.3em;
    right: 0;
  }
}
.agree_inner label {
  cursor: pointer;
}

.sec_btn {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 769px) {
  .sec_btn {
    margin-top: 3.5rem;
  }
}
@media screen and (max-width: 768px) {
  .sec_btn {
    margin-top: 5rem;
  }
}
.sec_btn::before, .sec_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  z-index: 1;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .sec_btn::before, .sec_btn::after {
    right: 3.5rem;
    width: 3.8rem;
    height: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .sec_btn::before, .sec_btn::after {
    right: 5.6rem;
    width: 5.8rem;
    height: 3.7rem;
  }
}
.sec_btn::before {
  background-color: #fff;
  border-radius: calc(infinity * 1px);
}
.sec_btn::after {
  -webkit-mask-image: url(/common/img/top/btn_arrow.svg#arrow);
          mask-image: url(/common/img/top/btn_arrow.svg#arrow);
  background-color: #0A64B4;
}
.sec_btn input {
  position: relative;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  color: #fff;
  font-weight: 500;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .sec_btn input {
    font-size: 1.6rem;
  }
}

.link {
  color: #0A64B4;
  text-decoration: underline;
}

.link:hover {
  color: #E72410;
}

.wpcf7-spinner {
  position: absolute !important;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}

.valmail {
  margin-top: 1.5rem;
}/*# sourceMappingURL=proposal.css.map */