@charset "utf-8";
/* CSS Document */

*{box-sizing:border-box}
.intro{text-align:center;margin-bottom:42px; padding:0;}
.intro:before{content:"";display:block;width:72px;height:4px;background:#176a4a;margin:0 auto 24px}
.intro h1{margin:0 0 18px;color:#0d6246;font-size:clamp(28px,4vw,42px);line-height:1.35}
.lead{font-weight:700;font-size:18px;margin:0 0 8px}
.intro p:last-child{margin:0;color:#555}
.contact-form{border-top:1px solid #e2e5e3;padding-top:30px}
.field{margin-bottom:25px}
.field label{display:block;font-weight:700;margin-bottom:7px}
.required,
.optional{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:3px;font-size:12px;vertical-align:2px}
.required{background:#d9272e;color:#fff}
.optional{background:#eee;color:#555}
input,
select,textarea{width:100%;border:1px solid #cfd5d2;border-radius:4px;background:#fff;padding:13px 14px;font:inherit;color:#222}
input:focus,
select:focus,
textarea:focus{outline:2px solid #bcd9cc;border-color:#176a4a}
textarea{min-height:165px;resize:vertical}
.two{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.hint{margin:7px 0 0;font-size:13px;color:#666}
.privacy{display:flex;gap:11px;align-items:flex-start;/*background:#f7f8f7;*/padding:18px 18px 0;margin-top:30px;font-weight:600}
.privacy input{width:auto;margin-top:7px}
.privacy b{color:#/*c9232b*/FFFFFF;font-size:12px;margin-left:5px}
.privacy-link{margin:8px 0 0/*30px*/;/*padding-left:18px;font-size:14px*/}
.privacy-link a{color:#0d6246}
button{display:block;width:min(520px,100%);margin:0 auto;border:0;border-radius:5px;background:#076443;color:#fff;padding:17px 22px;font-size:20px;font-weight:700;cursor:pointer}
button span{float:right;font-size:28px;line-height:20px}
.after{text-align:center;color:#666;font-size:13px;margin-top:12px}
@media(max-width:640px)
{
.intro{text-align:left}
.intro:before{margin-left:0}
.intro h1{font-size:29px}
.lead{font-size:16px}
.intro br{display:none}
.two{grid-template-columns:1fr;gap:0}
button{font-size:18px}
}

/*追加記述*/
#contact { margin:0 auto; padding:72px 0 88px; background:#fff; color:#222; font-size:16px; font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic",Meiryo,sans-serif; line-height:1.75;}
#contact .intro { width:min(740px,calc(100% - 40px)); margin:0 auto; padding-bottom:40px;}
#contact form { width:min(740px,calc(100% - 40px)); margin:0 auto;}
label,
.hint { text-align:left;}
.privacy-field { margin-bottom:40px; padding-bottom:18px; text-align:left; background:#F4F4F4; border-radius:10px;}
.privacy-field > p { padding-left:3.0em;}
.privacy-field > p:first-of-type { color:#666666;}
.privacy-link a:hover { text-decoration:underline;}
@media(max-width:640px)
{
#contact { padding:42px 0 60px;}
#contact .intro { width:min(100% - 28px,720px); padding-bottom:20px;}
#contact form { width:min(100% - 28px,720px); padding:42px 0 60px;}
}

