*{box-sizing:border-box}body{margin:0;background:#f5f6f8;color:#17263c;font:18px/1.6 "Malgun Gothic","Apple SD Gothic Neo",sans-serif}header{background:#17263c;color:#fff;padding:20px max(20px,calc((100vw - 900px)/2));display:flex;justify-content:space-between}header a{color:#fff;text-decoration:none;font-size:24px;font-weight:bold}main{max-width:940px;margin:auto;padding:24px 20px 60px}h1{font-size:30px}h2{font-size:24px;margin-top:0}p{margin:12px 0}a{color:#204b80}button,input,select{font:inherit}button{background:#17263c;color:#fff;border:1px solid #17263c;border-radius:10px;min-height:52px;padding:10px 20px;cursor:pointer}button:disabled{opacity:.55;cursor:wait}.secondary{background:#fff;color:#17263c}input:not([type=radio]),select{display:block;border:1px solid #a1adbd;border-radius:8px;padding:12px;width:100%;min-height:52px;margin:5px 0 16px}label{display:block;font-weight:600}fieldset{border:1px solid #ccd4df;border-radius:10px;margin:0 0 20px;padding:16px}.radio{margin:12px 0;font-weight:400}.radio input{width:22px;height:22px;vertical-align:middle;margin-right:10px}.card{background:#fff;border:1px solid #dce1e8;padding:24px;border-radius:16px;margin:20px 0}.heading,.actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.actions{justify-content:flex-start;flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.hint,small{color:#57667a;font-size:16px}small{display:block}.hint{background:#f3f5f8;padding:12px;border-radius:8px}#notice{padding:12px;border-radius:8px;min-height:24px;white-space:pre-wrap}#notice:empty{padding:0}#notice[data-error=true]{background:#fff0ec;color:#9a2e21}#notice[data-error=false]{background:#edf7ef;color:#225e31}progress{width:100%;height:24px;accent-color:#17263c}.entry{border-top:1px solid #e1e6ee;padding:14px 0;overflow-wrap:anywhere}.entry p{margin:5px 0}.entry small{font-size:15px}[hidden]{display:none!important}:focus-visible{outline:3px solid #cc8315;outline-offset:3px}@media(max-width:650px){body{font-size:17px}.card{padding:20px}.form-grid{grid-template-columns:1fr}.heading{flex-wrap:wrap}h1{font-size:26px}button{width:100%}.heading button{width:auto}}
.visitor-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.visitor-grid>div{background:#f3f5f8;border-radius:12px;padding:18px}.visitor-grid span{display:block;font-size:17px;color:#57667a}.visitor-grid strong{display:block;font-size:32px;color:#17263c}
textarea{font:inherit;width:100%;padding:12px;border:1px solid #a1adbd;border-radius:8px;resize:vertical;margin:5px 0 16px;min-height:150px}
