/* 黒いサイト用：墨黒 #101114 / 白 / 青 #6080FF。サイトの style.css の後ろに読み込む */
.jf{--jf-bg:#101114;--jf-ink:#fff;--jf-accent:#6080ff;--jf-muted:#aaadb6;--jf-line:#3a3c43;--jf-raise:#17191e;--jf-err:#ff9a9a;color:var(--jf-ink);font-size:17px;line-height:1.8}
.jf .jf-field{margin:0 0 24px;padding:0;border:0;min-width:0}
.jf label,.jf legend{display:block;font-size:17px;color:var(--jf-ink);margin:0 0 8px;padding:0}
.jf input[type=text],.jf textarea{width:100%;font:inherit;font-size:17px;color:var(--jf-ink);background:var(--jf-raise);border:1px solid var(--jf-line);border-radius:0;padding:12px 14px}
.jf textarea{resize:vertical}
.jf input[type=text]:focus-visible,.jf textarea:focus-visible,.jf input[type=radio]:focus-visible,.jf input[type=checkbox]:focus-visible,.jf .jf-submit:focus-visible{outline:2px solid var(--jf-accent);outline-offset:3px}
.jf .jf-opt{display:flex;align-items:center;gap:10px;margin:0 0 8px;cursor:pointer}
.jf input[type=radio],.jf input[type=checkbox]{width:20px;height:20px;accent-color:var(--jf-accent);flex-shrink:0}
.jf .jf-consent{color:var(--jf-muted);font-size:17px}
.jf .jf-consent .jf-opt{color:var(--jf-ink)}
.jf .jf-submit{font:inherit;font-size:17px;color:#fff;background:var(--jf-accent);border:1px solid var(--jf-accent);padding:14px 36px;cursor:pointer}
.jf .jf-submit:hover{background:#fff;color:var(--jf-bg);border-color:#fff}
.jf .jf-submit:disabled{opacity:.5;cursor:default}
.jf .jf-msg{border:1px solid var(--jf-line);background:var(--jf-raise);padding:16px 18px}
.jf .jf-msg[hidden]{display:none}
.jf .jf-msg.jf-ok{border-color:var(--jf-accent)}
.jf .jf-msg.jf-ng{border-color:var(--jf-err);color:var(--jf-err)}
.jf .jf-msg ul{margin:0;padding-left:1.2em}
.jf .jf-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media (min-width:720px){.jf .jf-opt{display:inline-flex;margin-right:22px}}
.jf .jf-lead{color:var(--jf-accent);font-size:16px;margin:0 0 20px}
.jf .jf-hint{display:block;font-size:14px;color:var(--jf-muted)}
.jf .jf-bad{border-color:var(--jf-err)!important;outline:1px solid var(--jf-err)}
.jf .jf-consent a{color:var(--jf-ink);text-decoration:underline}
.jf .jf-field{margin-bottom:18px}
.jf .jf-submit{min-height:48px;width:100%}
@media (min-width:720px){.jf .jf-submit{width:auto}}
.jf .jf-consent .jf-opt{align-items:flex-start}.jf .jf-consent input{margin-top:5px}
