.soumu-login{min-height:100vh;padding:35px 28px;display:flex;flex-direction:column;justify-content:center;background:#edf3f9;color:#102c4b}.login-scene{container-type:inline-size;width:100%;max-width:1480px;aspect-ratio:1604/824;position:relative;margin:0 auto;border-radius:24px;box-shadow:0 24px 70px #213e6125;background:white}.approved-art{display:block;width:100%;height:auto;border-radius:24px}.official-brand{position:absolute;left:2.4%;top:2.4%;width:23%;height:10.3%;background:#fff;display:flex;flex-direction:column;justify-content:center;padding:0 1.2%;border-radius:8px}.official-brand img{width:100%;max-width:270px;height:auto}.official-brand span{font-size:clamp(10px,.82cqw,13px);padding-left:16%;line-height:1.2}.design-description{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.mobile-art{display:none}
.soumu-login-card{position:absolute;left:67.83%;top:10.3%;width:29.55%;min-height:77%;background:#fff;border-radius:1.5cqw;padding:3.4cqw 3.05cqw 1.1cqw;box-shadow:0 8px 20px #213e6108}.soumu-login-card h2{font-size:3.15cqw;line-height:1.25;letter-spacing:.06em;margin:0 0 .55cqw;font-weight:800}.login-subtitle{font-size:1.36cqw;white-space:nowrap;margin:0 0 2.55cqw;letter-spacing:-.055em}.soumu-login-card label{font-size:1.05cqw;margin:0 0 .4cqw;line-height:1.5}.soumu-login-card input:not([type=hidden]){height:3.65cqw;font-size:1.1cqw;border:1px solid #c9d9eb;background:#edf4fc;border-radius:5px;margin:0 0 1.65cqw;padding:.65cqw}.soumu-login-card .primary{width:100%;min-height:4cqw;border:0;background:linear-gradient(135deg,#20aeaf,#079696);box-shadow:0 5px 14px #0a96962c;font-size:1.55cqw;letter-spacing:.04em;padding:.6cqw;margin:0 0 .9cqw}.soumu-login-card .primary:hover{background:#087e80}.login-help{font-size:.86cqw;text-align:center;white-space:nowrap;margin:0}.warm-message{display:block;width:13.7cqw;height:auto;margin:1.75cqw -1.5cqw 0 auto}.soumu-login-card .error{font-size:.9cqw;margin:0 0 .8cqw;padding:.6cqw}.login-footnote{text-align:center;padding:16px 0 0;font-size:11px;color:#607b93}.login-footnote p{margin:0 0 3px}
@media(max-width:900px){.soumu-login{padding:18px 12px;display:block}.login-scene{max-width:600px;aspect-ratio:auto;border-radius:20px;padding:18px;background:white;overflow:hidden}.approved-art{display:none}.official-brand{position:static;width:250px;height:auto;padding:0;margin:0 0 15px;background:transparent}.official-brand span{font-size:12px}.mobile-art{display:block}.mobile-person{display:block;width:100%;height:330px;object-fit:cover;object-position:center 25%;border-radius:12px}.mobile-heading{display:block;width:100%;max-width:410px;height:auto;margin:18px 0}.mobile-art>p{font-size:13px;line-height:1.9}.mobile-features{display:flex;gap:14px;margin:22px 0;color:#17364b}.mobile-features p{font-size:10px;flex:1}.mobile-features b{font-size:12px}.soumu-login-card{position:static;width:100%;min-height:0;border-radius:16px;background:#f8fbfe;border:1px solid #e0e9f0;box-shadow:none;padding:25px 20px}.soumu-login-card h2{font-size:32px;margin-bottom:5px}.login-subtitle{font-size:14px;margin-bottom:28px}.soumu-login-card label{font-size:14px;margin-bottom:7px}.soumu-login-card input:not([type=hidden]){height:49px;font-size:16px;padding:10px;margin-bottom:22px}.soumu-login-card .primary{font-size:18px;min-height:52px;padding:10px;margin:0 0 13px}.login-help{font-size:11px}.warm-message{width:180px;margin:22px 0 0 auto;mix-blend-mode:multiply}.soumu-login-card .error{font-size:13px;padding:12px;margin-bottom:16px}.login-footnote{font-size:10px}}

@media(max-width:900px){.mobile-heading{clip-path:polygon(0 0,100% 0,100% 50%,85% 50%,85% 100%,0 100%)}}

/* v2: 一枚の横長デザインに実入力欄だけを重ねる */
@media(min-width:901px){
.login-scene{max-width:1400px;aspect-ratio:1923/818}
.official-brand{left:3.6%;top:3.6%;width:19%;height:10.5%;padding:0 .6%;background:#fff;border-radius:6px}
.official-brand img{max-width:235px}.official-brand span{font-size:11px}
.soumu-login-card{left:68.54%;top:10.15%;width:27.56%;height:78.97%;min-height:0;padding:0;background:transparent;box-shadow:none;border-radius:0}
.soumu-login-card h2,.login-subtitle,.soumu-login-card label,.login-help,.warm-message{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}
.soumu-login-card input:not([type=hidden]){position:absolute;left:9.43%;width:81.13%;height:9.75%;margin:0;padding:0 14px;font-size:16px;background:#edf4fc;border:1px solid #cadbeb;border-radius:5px}
#login-id{top:33.28%}#login-password{top:52.32%}
.soumu-login-card .primary{position:absolute;left:9.43%;top:65.79%;width:81.13%;height:10.06%;min-height:0;margin:0;padding:0;font-size:clamp(15px,1.55cqw,22px);border-radius:7px}
.soumu-login-card .error{position:absolute;left:9.43%;top:24%;width:81.13%;padding:3px 6px;margin:0;font-size:11px;line-height:1.4;z-index:2}
}
@media(max-width:900px){.mobile-heading{clip-path:none}.soumu-login-card h2{font-size:26px}}

@media(max-width:900px){.mobile-heading{clip-path:polygon(0 0,100% 0,100% 55%,84% 55%,84% 100%,0 100%)}}
/* 画像内の仮説明を隠し、確定した社員名を表示 */
@media(min-width:901px){.soumu-login-card .login-subtitle{position:absolute;left:8%;top:18%;width:85%;height:7%;clip-path:none;overflow:visible;white-space:nowrap;background:#fff;margin:0;padding:0 1%;font-size:clamp(11px,1.05cqw,15px);line-height:2;letter-spacing:0;color:#17364b}}

/* Revised supplied image; preserve series frame while mapping all overlays to the same frame. */
@media(min-width:901px){.approved-art{height:100%;object-fit:fill}}

/* Supplied artwork 1916x821: align real controls to its drawn input boxes. */
@media(min-width:901px){.soumu-login-card{left:68.8413%;top:10.1096%;width:27.714%;height:79.0499%}.soumu-login-card input:not([type=hidden]),.soumu-login-card .primary{left:9.4162%;width:80.9793%}#login-id{top:33.282%;height:9.7072%}#login-password{top:52.2342%;height:9.8613%}.soumu-login-card .primary{top:65.6394%;height:10.0154%}}
@media(max-width:900px){.mobile-person{object-fit:contain;object-position:center;background:#eef0f2}}
