/* 先方確認用・簡易パスワード認証。サイト本体のスタイルから独立。 */
.password-gate{display:none}
html.password-gate-locked{overflow:hidden}
/* 裏のページ（ローディング含む）は解除まで描かない。Safariで重なりが帯状に透けるため */
html.password-gate-locked body>*:not(#passwordGate){visibility:hidden}
html.password-gate-locked .loader{display:none}
html.password-gate-locked .password-gate{
  position:fixed;inset:0;z-index:10000;display:grid;place-items:center;
  min-height:100dvh;padding:24px;
  background:
    radial-gradient(circle,rgba(20,20,20,.13) 1.6px,transparent 2px) 0 0/18px 18px,
    linear-gradient(160deg,#F4F092 0%,#FDE6AA 55%,#F3D12D 100%);
  transition:opacity .26s ease,visibility .26s ease;
}
.password-gate.is-unlocked{opacity:0;visibility:hidden}
.password-gate__card{
  position:relative;width:min(100%,390px);padding:38px 30px 32px;text-align:center;
  border:4px solid #141414;border-radius:22px;background:#FFFDF6;
  box-shadow:7px 7px 0 #141414;
}
.password-gate__logo{display:block;width:min(230px,74%);height:auto;margin:0 auto 22px}
.password-gate__title{margin:0;color:#141414;font:900 22px/1.35 "Zen Maru Gothic",sans-serif}
.password-gate__lead{margin:10px 0 24px;color:#333;font:500 14px/1.8 "Zen Maru Gothic",sans-serif}
.password-gate__form{text-align:left}
.password-gate__label{display:block;margin:0 0 7px;color:#6E55A0;font:700 13px/1.4 "Zen Maru Gothic",sans-serif}
.password-gate__input{
  box-sizing:border-box;width:100%;height:50px;padding:0 14px;border:3px solid #141414;border-radius:12px;
  background:#fff;color:#141414;font:500 17px "Zen Maru Gothic",sans-serif;outline:none;
}
.password-gate__input:focus{box-shadow:0 0 0 4px rgba(146,120,182,.35)}
.password-gate__error{margin:9px 0 0;color:#C8364A;font:700 13px/1.4 "Zen Maru Gothic",sans-serif}
.password-gate__button{
  display:block;width:100%;height:52px;margin-top:18px;border:3px solid #141414;border-radius:999px;
  background:#EC6F83;color:#fff;cursor:pointer;
  font:900 16px "Zen Maru Gothic",sans-serif;box-shadow:4px 4px 0 #141414;transition:transform .15s ease,box-shadow .15s ease;
}
.password-gate__button:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 #141414}
.password-gate__button:active{transform:translate(3px,3px);box-shadow:1px 1px 0 #141414}
.password-gate__button:focus-visible{outline:3px solid #5CC3EA;outline-offset:3px}
@media (max-width:420px){.password-gate__card{padding:32px 22px 28px}}
@media (prefers-reduced-motion:reduce){.password-gate,.password-gate__button{transition:none}}
