/* On-site contact form (replaces the main site's form). */
.cf-panel{background:#fff;border:1px solid #dedbd2;padding:36px 32px;box-shadow:0 10px 30px rgba(16,35,59,.06)}
.cf-panel h2{margin:6px 0 10px}
.cf-lead{margin:0 0 24px;color:#5f6b74;font-size:15px;line-height:1.9}
.cf-form{display:grid;gap:18px;position:relative}
.cf-field{display:grid;gap:8px}
.cf-field label{font-size:14px;font-weight:700;color:#142c3d;display:flex;align-items:center;gap:8px}
.cf-req,.cf-opt{font-size:11px;font-weight:700;padding:2px 8px;line-height:1.6;border-radius:2px}
.cf-req{background:#122b3d;color:#fff}
.cf-opt{background:#efece4;color:#5f6b74}
.cf-field input,.cf-field textarea{width:100%;box-sizing:border-box;font:16px/1.7 'Yu Gothic',Meiryo,sans-serif;color:#142c3d;background:#fffefa;border:1px solid #cfcabd;padding:12px 14px;border-radius:2px}
.cf-field textarea{min-height:170px;resize:vertical}
.cf-field input:focus,.cf-field textarea:focus{outline:2px solid #a68b52;outline-offset:1px;border-color:#a68b52}
.cf-hp{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}
.cf-consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.8}
.cf-consent input{width:20px;height:20px;margin-top:4px;flex:none}
.cf-consent a{text-decoration:underline;text-underline-offset:3px}
.cf-submit{justify-self:start;min-height:48px;padding:12px 28px;cursor:pointer;border:1px solid #d6bd84;background:#c2a565;color:#122b3d;font-size:15px}
.cf-submit:disabled{opacity:.6;cursor:wait}
.cf-note{margin:0;font-size:12px;color:#5f6b74;line-height:1.8}
.cf-msg{margin:0;padding:14px 16px;font-size:14px;line-height:1.75;border-radius:4px}
.cf-msg.is-ok{background:#eef7ee;color:#1e5b2a;border:1px solid #cfe6cf}
.cf-msg.is-error{background:#fbeceb;color:#8a2b23;border:1px solid #f0cfcc}
@media(max-width:540px){.cf-panel{padding:26px 20px}.cf-submit{justify-self:stretch}}
