*,*::before,*::after{box-sizing:border-box}
html,body{height:100%;margin:0;padding:0;font-family:"Noto Sans JP","Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
body{background:#f7f7f7;color:#222}

.password-container{max-width:420px;margin:0 auto;padding:40px 20px 20px;text-align:center;display:flex;flex-direction:column;justify-content:flex-start}
.password-title{font-size:22px;font-weight:700;margin:0 0 48px}
.password-message{font-size:18px;color:#222;line-height:1.9}
.password-message p{margin:18px 0}

.password-form{background:#fff;border:1px solid #e6e6e6;border-radius:12px;padding:20px;box-shadow:0 2px 8px rgba(0,0,0,0.04);text-align:left}
.form-group{margin-bottom:16px}
.form-group label{display:block;font-weight:600;margin-bottom:8px}
.form-group input[type="email"]{width:100%;padding:12px 14px;border:1px solid #ddd;border-radius:8px;font-size:16px}
.form-group input[type="email"]:focus{outline:none;border-color:#4aa3ff;box-shadow:0 0 0 3px rgba(74,163,255,0.15)}
.submit-btn{width:100%;background:#222;color:#fff;border:none;padding:12px 16px;border-radius:8px;font-weight:700;cursor:pointer}
.submit-btn:hover{background:#000}

@media(min-width:768px){
  .password-container{margin-top:40px}
  .password-title{font-size:26px}
  .password-message{font-size:20px}
}

.back-login{ text-align:center; margin-top:36px }
.back-btn{ display:inline-block; background:#fff; border:1px solid #e6e6e6; color:#222; padding:12px 20px; border-radius:8px; text-decoration:none; font-weight:600 }
.back-btn:active,.back-btn:focus{ outline:none; box-shadow:0 2px 0 rgba(0,0,0,0.04) }
