:root{color-scheme:light;--bg:#f7faf7;--surface:#fff;--text:#1f2937;--muted:#66736a;--line:#dfeadf;--accent:#44cb71;--accent-dark:#248c49;--soft:#eff9f1;--max-width:920px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.85;overflow-wrap:anywhere}a{color:var(--accent-dark);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}:focus-visible{outline:3px solid #156d37;outline-offset:4px}.skip-link{position:absolute;z-index:10;left:16px;top:-100px;background:#fff;padding:8px 16px;border-radius:8px}.skip-link:focus{top:8px}.site-header{background:linear-gradient(135deg,#6dd472,#44cb71);color:#fff}.header-inner,main,.footer-inner{width:min(calc(100% - 32px),var(--max-width));margin:0 auto}.header-inner{padding:50px 0 44px}.brand{display:inline-block;margin:0 0 12px;color:#fff;text-decoration:none;font-size:1.12rem;font-weight:750;letter-spacing:.05em}h1{margin:0;font-size:clamp(1.85rem,4.8vw,3.1rem);line-height:1.35;letter-spacing:.01em}.lead{margin:18px 0 0;max-width:740px;color:#fff;font-size:1rem}main{padding:28px 0 60px}.intro{display:flex;justify-content:space-between;gap:8px 20px;flex-wrap:wrap;margin:0 0 24px;color:var(--muted);font-size:.875rem}.intro a{text-decoration:none}.form-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px rgba(40,100,55,.07);padding:clamp(24px,5vw,52px)}.card-heading{display:flex;gap:17px;align-items:flex-start}.heading-icon{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;background:var(--soft);color:var(--accent-dark);border-radius:14px;margin-top:2px}.heading-icon svg{width:26px;height:26px}h2{margin:0;color:#236b3b;font-size:clamp(1.2rem,3vw,1.5rem);line-height:1.6}.card-heading p{margin:7px 0 0;color:var(--muted);font-size:.9rem}.required-note{margin:28px 0 24px;padding-top:24px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}.required,.optional{display:inline-block;vertical-align:middle;margin-left:8px;padding:1px 7px;border-radius:4px;font-size:.7rem;font-weight:500;line-height:1.7}.required{background:#e8f5eb;color:#216c39}.optional{background:#f1f4f1;color:#66736a}.required-note .required{margin-left:0}.field{margin-bottom:25px}label{display:block;font-weight:600;font-size:.95rem;margin-bottom:9px}input:not([type=checkbox]),select,textarea{display:block;width:100%;border:1px solid #cbd8ce;border-radius:9px;background:#fff;color:var(--text);padding:12px 14px;line-height:1.65;min-height:50px;transition:border-color .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:#839187;opacity:1}input:not([type=checkbox]):focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-dark);box-shadow:0 0 0 3px #248c4918}select{appearance:none;padding-right:46px}.select-wrap{position:relative}.select-wrap:after{content:"";pointer-events:none;position:absolute;right:19px;top:20px;width:8px;height:8px;border-bottom:1.5px solid var(--muted);border-right:1.5px solid var(--muted);transform:rotate(45deg)}textarea{min-height:195px;resize:vertical}.hint{margin:7px 0 0;color:var(--muted);font-size:.8rem;line-height:1.75}.message-meta{display:flex;gap:12px;align-items:baseline;justify-content:space-between}.message-meta>span{flex-shrink:0;font-size:.75rem;color:var(--muted)}.field-error{color:#b42318;font-size:.82rem;margin:5px 0 0;line-height:1.65}.field-error:empty{display:none}[aria-invalid=true]{border-color:#b42318!important}.device-details{border:1px solid var(--line);border-radius:10px;background:#fbfdfb;margin-top:30px}.device-details summary{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;font-size:.9rem;cursor:pointer;list-style:none}.device-details summary::-webkit-details-marker{display:none}.device-details summary svg{width:20px;height:20px;flex-shrink:0;color:var(--muted)}.device-details[open] summary svg{transform:rotate(180deg)}.device-inner{padding:0 18px 18px}.device-inner>.hint{margin:0 0 18px}.device-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.device-grid .field{margin:0}.device-grid label{font-size:.82rem}.consent-area{margin:30px 0}.consent-line{display:flex;gap:11px;align-items:flex-start}.consent-line input{width:20px;height:20px;margin:4px 0 0;flex-shrink:0;accent-color:var(--accent-dark)}.consent-line label{font-size:.87rem;font-weight:400;margin:0}.consent-area .field-error{margin-left:31px}.submit-area{text-align:center}.submit-area button{display:inline-flex;justify-content:center;align-items:center;gap:26px;padding:15px 30px;min-height:56px;background:var(--accent-dark);color:#fff;border:0;border-radius:10px;font-size:1rem;font-weight:650;min-width:300px;box-shadow:0 4px 12px #248c4920}.submit-area button:hover:not(:disabled){background:#1d763d}.submit-area svg{width:21px;height:21px}.submit-area>.hint{margin-top:13px}.contact-note{margin:27px 0 0;padding:23px 26px;background:var(--soft);border-radius:12px;border-left:4px solid var(--accent)}.contact-note h2{font-size:1rem;margin-bottom:8px}.contact-note p{margin:0;color:var(--muted);font-size:.86rem}.contact-note p+p{margin-top:8px}.contact-note a{font-weight:650}.site-footer{border-top:1px solid var(--line);background:#fff}.footer-inner{padding:24px 0 calc(24px + env(safe-area-inset-bottom));text-align:center;color:var(--muted);font-size:.85rem}.footer-inner nav{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 24px}.footer-inner p{margin:8px 0 0;font-size:.8rem}.bot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.error-summary{background:#fff5f3;border:1px solid #efd2cb;border-radius:9px;color:#9b2b1c;padding:15px 18px;margin:0 0 22px;font-size:.9rem}.error-summary p{margin:0}.error-summary ul{margin:6px 0 0;padding-left:20px}.error-summary a{color:inherit}.success-content{text-align:center;padding:40px 0;outline:none}.success-icon{background:var(--soft);color:var(--accent-dark);width:70px;height:70px;border-radius:50%;display:grid;place-items:center;margin:0 auto 24px}.success-icon svg{width:35px;height:35px}.success-content p{margin:20px 0}.success-content strong{font-weight:600}.secondary-button{border:1px solid var(--accent-dark);background:#fff;color:var(--accent-dark);border-radius:9px;padding:11px 22px;margin-top:16px}.notice{padding:16px;background:var(--soft);border-radius:8px;font-size:.85rem}
@media(max-width:680px){.header-inner{padding:34px 0 30px}h1{font-size:1.8rem}.lead{font-size:.9rem}.lead br{display:none}main{padding-top:20px}.intro{display:grid;font-size:.8rem;margin-bottom:18px}.form-card{padding:25px 20px;border-radius:14px}.card-heading{gap:12px}.heading-icon{width:38px;height:38px;flex-basis:38px;border-radius:10px}.heading-icon svg{width:23px;height:23px}.card-heading h2{font-size:1.15rem}.card-heading p{font-size:.82rem}.required-note{margin-top:22px}.device-grid{grid-template-columns:1fr;gap:18px}.device-details summary{padding:15px 13px}.device-inner{padding:0 13px 17px}.message-meta{display:block}.message-meta>span{display:block;text-align:right;margin-top:5px}.submit-area button{width:100%;min-width:0;padding:15px 12px;gap:18px}.contact-note{padding:19px 18px}.consent-line label{font-size:.82rem}.success-content{padding:20px 0}.success-content h2{font-size:1.25rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
