:root{font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic UI",Meiryo,system-ui,sans-serif;color:#1e2b45;background:#f4f6f9;font-size:16px;line-height:1.8}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:640px;margin:auto;padding:20px}header{border-bottom:1px solid #e2e8f0}header a{display:flex;gap:10px;align-items:center;color:#2563eb;text-decoration:none;font-size:27px;font-weight:800}header svg{width:48px;height:44px}h1{font-size:25px;line-height:1.5;margin:10px 0 16px}h2{font-size:22px}.card{background:white;border:1px solid #e2e8f0;border-radius:20px;padding:24px;margin-top:24px;box-shadow:0 1px 3px #0f172a0d}label{display:block;font-weight:700;margin:8px 0}input,select,textarea{display:block;width:100%;min-width:0;border:1px solid #a7b5c8;background:white;color:inherit;border-radius:12px;font:inherit;padding:12px;min-height:48px}textarea{resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}[aria-invalid=true]{border:2px solid #b91c1c}.required{color:#b91c1c;font-size:12px;margin-left:6px}.optional{font-size:12px;font-weight:400;color:#52647d;margin-left:6px}.error{color:#b91c1c;font-size:14px;margin:6px 0 22px}.error:empty{margin-bottom:22px}.notice{background:#eff6ff;color:#365175;border-radius:12px;padding:16px;font-size:14px}.privacy,#message-help{font-size:14px;color:#52647d}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}button{width:100%;border:0;border-radius:14px;padding:15px;font:inherit;font-weight:700;color:white;background:#2563eb;min-height:52px;cursor:pointer;margin-top:8px}button:disabled{opacity:.55;cursor:default}#retry{background:white;color:#2563eb;border:1px solid #2563eb}#status{color:#9f2727;overflow-wrap:anywhere}#receipt{overflow-wrap:anywhere}footer{text-align:center;color:#52647d;font-size:14px;padding-bottom:40px}#attachments-help{font-size:14px;color:#365175;background:#eff6ff;border-radius:12px;padding:12px 14px;margin:0 0 10px}#attachments-status{margin:6px 0 0}#attachment-list{list-style:none;padding:0;margin:8px 0 0}#attachment-list li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #e2e8f0}#attachment-list img{width:64px;height:64px;object-fit:contain;border:1px solid #dbe4ef;border-radius:8px;background:white}#attachment-list span{font-size:14px;overflow-wrap:anywhere}#attachment-list button{width:auto;font-size:14px;padding:6px 14px;min-height:44px;margin:0;background:#eff6ff;color:#1d4ed8}input[type=file]{padding:10px}[hidden]{display:none!important}@media(max-width:360px){header,main,footer{padding:16px}.card{padding:18px}h1{font-size:22px}}@media print{button,header{display:none}.card{box-shadow:none}body{background:white}}
