@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;400;500;700&display=swap");
.inner { width: 100%; max-width: 1040px; padding: 0 20px; margin: 0 auto; }
@media (max-width: 959px) { .inner { max-width: 88%; padding: 0; } }

.inner_w { width: 100%; max-width: 1140px; margin: 0 auto; padding: 0 20px; }
@media (max-width: 959px) { .inner_w { max-width: 88%; padding: 0; } }

.inner_s { width: 100%; max-width: 970px; margin: 0 auto; padding: 0 20px; }
@media (max-width: 959px) { .inner_s { max-width: 88%; padding: 0; } }

.inner_ss, .Contact, .Thanks { width: 100%; max-width: 800px; margin: 0 auto; padding: 0 20px; }
@media (max-width: 959px) { .inner_ss, .Contact, .Thanks { max-width: 88%; padding: 0; } }

@media (max-width: 959px) { .f_info { display: none; } }

.Contact { margin: -10px auto 140px auto; }
@media (max-width: 959px) { .Contact { margin: -9vw auto 18vw auto; } }
.Contact em { display: block; margin-bottom: 20px; font-size: 24px; font-weight: 700; letter-spacing: 0; line-height: 1.8em; font-style: normal; }
@media (max-width: 959px) { .Contact em { font-size: 4vw; line-height: 2em; margin-bottom: 10vw; } }
.Contact em + p { font-size: 16px; font-weight: 500; line-height: 2.2em; }
@media (max-width: 959px) { .Contact em + p { font-size: 3.5vw; line-height: 2.1em; } }
.Contact h2 { margin-bottom: 2.6em; font-size: 37px; font-weight: 700; line-height: 100%; }
@media (max-width: 959px) { .Contact h2 { font-size: 7vw; margin-bottom: 1.3em; } }
.Contact h2 i { display: block; margin-top: 17px; font-size: 0.45em; font-weight: 500; line-height: 100%; }
.Contact .wpcf7 p { margin: 0 0 0.5em 0; font-size: 17.5px; font-weight: 500; line-height: 2.2em; }
@media (max-width: 959px) { .Contact .wpcf7 p { font-size: 3.3vw; margin: 0 0 0.2em 0; } }
.Contact .wpcf7 i { color: #D61518; }

input[type="text"], input[type="email"], input[type="tel"], textarea, button, select { margin: 0; padding: 0; border: none; border-radius: 0; background: none; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; width: 100%; margin-bottom: 1.5em; padding: 0.9em 1.5em 1.1em 1.5em; font-size: 17px; font-family: "Zen Kaku Gothic New", sans-serif; font-weight: 500; border-radius: 8px; background: #F1F0F3; }
@media (max-width: 959px) { input[type="text"], input[type="email"], input[type="tel"], textarea, button, select { font-size: 3.5vw; margin-bottom: 1em; padding: 0.7em 1em 0.9em 1.2em; } }
input[type="text"]::placeholder, input[type="email"]::placeholder, input[type="tel"]::placeholder, textarea::placeholder, button::placeholder, select::placeholder { color: #96969E; }

select.is-empty { color: #96969E; }

textarea { height: auto; margin: 0 0 0 0; padding: 0.5em 1.5em; }
@media (max-width: 959px) { textarea { height: 65vw; margin: 0; } }

input::-ms-clear, input::-ms-reveal { visibility: hidden; }

select { border-radius: 8px; background: #F1F0F3 url(../img/select.svg) no-repeat right 2em center/1.3em auto; }
@media (max-width: 959px) { select { width: 100%; background: #F1F0F3 url(../img/select.svg) no-repeat right 1.5em center/1em auto; } }

.wpcf7 p.policy { padding-top: 2.5em; font-size: 15px important; font-weight: 400; text-align: center; }
@media (max-width: 959px) { .wpcf7 p.policy { padding-top: 1.5em; font-size: 3.3vw; font-weight: 500; } }
.wpcf7 p.policy span.wpcf7-list-item { line-height: 100% !important; }
.wpcf7 p.policy span.wpcf7-list-item-label { line-height: 100% !important; }
.wpcf7 p.policy label { line-height: 100% !important; }
.wpcf7 p.policy a:link, .wpcf7 p.policy a:visited { text-decoration: underline; text-underline-offset: 8px; }
.wpcf7 p.policy a:hover { opacity: 0.7; }

input[type="submit"] { display: block; cursor: pointer; width: 260px; padding: 1.1em 0 1.1em 2em; margin: 1.75em auto 1em auto; color: #fff; font-size: 18px; text-align: left; line-height: 100%; border: none; background: #174097 url(../img/submit.svg) no-repeat right 12% center/13% auto; -webkit-transition: all .3s; transition: all .3s; }
@media (max-width: 959px) { input[type="submit"] { width: 70%; margin: 3em auto 0 auto; padding: 1.3em 0 1.3em 4em; font-size: 3.3vw; background: #174097 url(../img/submit.svg) no-repeat right 20% center/10% auto; } }
input[type="submit"]:hover { background-color: #696A6D; }

#result { margin-top: 1em; font-size: 15px; }
@media (max-width: 959px) { #result { font-size: 3.5vw; } }

.wpcf7-not-valid-tip, .err-msg { width: 100%; margin: -1em 0 1.5em 0; color: red; }
@media (max-width: 959px) { .wpcf7-not-valid-tip, .err-msg { font-size: 3.5vw; } }

.Contact a.Btn, .Thanks a.Btn { display: -webkit-flex; display: flex; margin: 75px auto 200px auto; border: 1px solid #434040; }
@media (max-width: 959px) { .Contact a.Btn, .Thanks a.Btn { margin: 30vw auto 25vw auto; } }
.Contact a.Btn > div:nth-child(1), .Thanks a.Btn > div:nth-child(1) { width: 38%; background: url(../img/Tel.svg) no-repeat right center/auto 100%; }
@media (max-width: 959px) { .Contact a.Btn > div:nth-child(1), .Thanks a.Btn > div:nth-child(1) { width: 40%; } }
.Contact a.Btn > div:nth-child(1) p, .Thanks a.Btn > div:nth-child(1) p { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-box-align: center; align-items: center; height: 100%; font-size: 19px; font-weight: 400; line-height: 1.8em; }
@media (max-width: 959px) { .Contact a.Btn > div:nth-child(1) p, .Thanks a.Btn > div:nth-child(1) p { padding-right: 0.7em; font-size: 3.3vw; font-weight: 700; line-height: 2em; letter-spacing: 0; } }
.Contact a.Btn > div:nth-child(2), .Thanks a.Btn > div:nth-child(2) { width: 58%; padding: 24px 0; text-align: center; }
@media (max-width: 959px) { .Contact a.Btn > div:nth-child(2), .Thanks a.Btn > div:nth-child(2) { padding: 7vw 0 9vw 0; } }
.Contact a.Btn > div:nth-child(2) em, .Thanks a.Btn > div:nth-child(2) em { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-box-align: center; align-items: center; margin: 0 !important; font-size: 42px; font-weight: 700; line-height: 1.2em; font-style: normal; }
@media (max-width: 959px) { .Contact a.Btn > div:nth-child(2) em, .Thanks a.Btn > div:nth-child(2) em { -webkit-flex-direction: column; flex-direction: column; font-size: 6.5vw; } }
.Contact a.Btn > div:nth-child(2) em:before, .Thanks a.Btn > div:nth-child(2) em:before { content: ""; display: block; width: 1.1em; height: 1.1em; margin-right: 0.6em; border-radius: 50%; background: #003892 url(../img/tell.svg) no-repeat center center/50% auto; }
@media (max-width: 959px) { .Contact a.Btn > div:nth-child(2) em:before, .Thanks a.Btn > div:nth-child(2) em:before { width: 1.5em; height: 1.5em; margin: 0 0 0.8em 0; } }
.Contact a.Btn > div:nth-child(2) > div, .Thanks a.Btn > div:nth-child(2) > div { margin-top: 15px; }
@media (max-width: 959px) { .Contact a.Btn > div:nth-child(2) > div, .Thanks a.Btn > div:nth-child(2) > div { margin-top: 2.8vw; } }
.Contact a.Btn > div:nth-child(2) > div span, .Thanks a.Btn > div:nth-child(2) > div span { font-size: 16px; }
@media (max-width: 959px) { .Contact a.Btn > div:nth-child(2) > div span, .Thanks a.Btn > div:nth-child(2) > div span { display: block; font-size: 3vw; font-weight: 500; } }
.Contact a.Btn > div:nth-child(2) > div span + span, .Thanks a.Btn > div:nth-child(2) > div span + span { margin-left: 1.5em; }
@media (max-width: 959px) { .Contact a.Btn > div:nth-child(2) > div span + span, .Thanks a.Btn > div:nth-child(2) > div span + span { margin: 0.2em 0 0 0; } }
.Contact a.Btn:hover, .Thanks a.Btn:hover { opacity: 0.7; }

.Thanks { margin: 280px auto 310px auto; }
@media (max-width: 959px) { .Thanks { margin: 18vw auto 26vw auto; } }
.Thanks h2 { margin: 0 0 35px 0; font-size: 24px; font-weight: 700; line-height: 100%; }
@media (max-width: 959px) { .Thanks h2 { font-size: 4.5vw; line-height: 1.5em; margin: 0 0 1.1em 0; } }
.Thanks p { font-size: 16px; font-weight: 500; line-height: 2.4em; letter-spacing: 0; }
@media (max-width: 959px) { .Thanks p { font-size: 3.5vw; line-height: 2.2em; } }
.Thanks p + p { color: #393b92; padding-left: 1em; text-indent: -1em; }

.Back { padding: 83px 0; margin: 180px 0 0 0; border-top: 1px solid #c8c5c5; }
@media (max-width: 959px) { .Back { display: none; } }
.Back a:link, .Back a:visited { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; }
.Back a:link:before, .Back a:visited:before { content: ""; display: block; width: 47px; height: 47px; margin-right: 30px; background: url(../img/Back01.svg) no-repeat top left/100% auto; }
.Back a:link:hover:before, .Back a:visited:hover:before { background: url(../img/Back02.svg) no-repeat top left/100% auto; }
.Back a:link span, .Back a:visited span { position: relative; font-size: 44px; font-weight: 700; }
.Back a:link span:before, .Back a:visited span:before { content: ""; position: absolute; left: 0; bottom: -18px; width: 0; height: 1px; background: #033884; transition: 0.3s; }
.Back a:link:hover span, .Back a:visited:hover span { color: #174097; }
.Back a:link:hover span:before, .Back a:visited:hover span:before { width: 100%; }
