@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&family=Shippori+Mincho:wght@700&display=swap');
:root{--green:#185a42;--lime:#d8e865;--ink:#142019;--muted:#6d776f;--line:#dce3dc}*{box-sizing:border-box}body{margin:0;background:#f4f6f1;color:var(--ink);font-family:"Noto Sans JP",sans-serif}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.auth-brand{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,8vw,110px);background:var(--green);color:white}.auth-brand:after{content:"薬";position:absolute;right:-50px;bottom:-120px;color:#fff0;font:700 min(50vw,650px) "Shippori Mincho";text-shadow:0 0 0 #ffffff0c}.auth-brand>span,.eyebrow{position:relative;z-index:1;color:var(--lime);font-size:11px;font-weight:800;letter-spacing:.2em}.auth-brand h1{position:relative;z-index:1;margin:20px 0;font:700 clamp(42px,6vw,78px)/1.3 "Shippori Mincho"}.auth-brand p{position:relative;z-index:1;opacity:.72}.auth-card{width:min(440px,calc(100% - 40px));margin:auto;background:white;border:1px solid var(--line);border-radius:24px;padding:42px;box-shadow:0 22px 70px #193c2715}.mark{display:grid;place-items:center;width:55px;height:55px;margin-bottom:30px;border-radius:16px;background:var(--green);color:white;font:700 30px "Shippori Mincho"}.auth-card .eyebrow{color:var(--green)}.auth-card h2{margin:8px 0 10px;font:700 30px "Shippori Mincho"}.lead{color:var(--muted);font-size:13px;line-height:1.7;margin-bottom:24px}.auth-error{margin-bottom:18px;padding:12px 14px;border-left:4px solid #b43b39;border-radius:8px;background:#fff0ef;color:#922e2c;font-size:13px}form{display:grid;gap:17px}label{display:grid;gap:7px;font-size:12px;font-weight:700}label small{color:var(--muted);font-weight:400}input{width:100%;border:1px solid var(--line);border-radius:11px;background:#fafbf9;color:var(--ink);font:inherit;padding:13px 14px;outline:none}input:focus{border-color:var(--green);box-shadow:0 0 0 3px #185a4215}button{border:0;border-radius:999px;background:var(--lime);color:#142718;font:700 14px inherit;padding:15px 19px;cursor:pointer}button span{float:right}.auth-card>small{display:block;margin-top:20px;text-align:center;color:var(--muted);font-size:10px}@media(max-width:760px){.auth-shell{display:block}.auth-brand{min-height:230px;padding:35px 25px}.auth-brand h1{font-size:39px;margin:10px 0}.auth-card{position:relative;margin:-28px auto 30px;padding:28px 22px}.mark{width:45px;height:45px;margin-bottom:20px}}
