/*----------------------------------------
  p-login
----------------------------------------*/
.p-login {
  min-height: 100vh;
  text-align: center;
  background: url(../../../images/v2/design/9_login/bg-login01.png) top center/cover;
}
.p-login:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.p-login__container {
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  padding: 14.4927536232vw 0;
  padding-top:calc(14.4927536232vw + env(safe-area-inset-top));
}
@media screen and (min-width: 1025px) {
  .p-login__container {
    padding: 60px 0;
  }
}
.p-login__logo {
  width: 54.347826087vw;
  margin: 0 auto 5.7971014493vw;
}
@media screen and (min-width: 1025px) {
  .p-login__logo {
    width: 225px;
    margin: 0 auto 24px;
  }
}
.p-login__message {
  font-size: 4.1062801932vw;
  text-align: center;
  color: #646464;
  margin: 0 0 6.7632850242vw;
}
@media screen and (min-width: 1025px) {
  .p-login__message {
    font-size: 1.7rem;
    margin: 0 0 28px;
  }
}
.p-login__notes {
  /* font-size: 4.1062801932vw; */
  font-size: 1.5rem;
  text-align: center;
  color: #646464;
  margin: 0 0 1.9323671498vw;
}
@media screen and (min-width: 1025px) {
  .p-login__notes {
    font-size: 1.7rem;
    margin: 0 0 8px;
  }
}
.p-login__content {
  width: 72.4637681159vw;
  margin: auto;
}
@media screen and (min-width: 1025px) {
  .p-login__content {
    width: 300px;
  }
}
.p-login__form {
  display: flex;
  flex-direction: column;
  gap: 2.8985507246vw;
  margin: 0 0 4.8309178744vw;
}
@media screen and (min-width: 1025px) {
  .p-login__form {
    gap: 12px;
    margin: 0 0 20px;
  }
}
.p-login__form-input {
  position: relative;
}
.p-login__form-input input {
  width: 100%;
  height: 12.077294686vw;
  font-size: 3.6231884058vw;
  line-height: 1;
  padding: 0 2.4154589372vw;
  border: 1px solid #8C8785;
}
@media screen and (min-width: 1025px) {
  .p-login__form-input input {
    height: 50px;
    font-size: 1.5rem;
    padding: 0 10px;
  }
}
.p-login__form-input button {
  position: absolute;
  top: 0;
  right: 2.4154589372vw;
  bottom: 0;
  width: 5.7971014493vw;
  height: 5.7971014493vw;
  background: url(../../../images/v2/design/common/icon-eye01.svg);
  margin: auto;
}
@media screen and (min-width: 1025px) {
  .p-login__form-input button {
    right: 10px;
    width: 24px;
    height: 24px;
  }
}
.p-login__form-input button.is-active {
  background: url(../../../images/v2/design/common/icon-eye01_off.svg);
}
.p-login__button {
  display: flex;
  flex-direction: column;
  gap: 2.4154589372vw;
  margin: 0 0 7.2463768116vw;
}
@media screen and (min-width: 1025px) {
  .p-login__button {
    gap: 10px;
    margin: 0 0 30px;
  }
}
.p-login__button:last-child {
  margin: 0;
}
.p-login__button-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 10.6280193237vw;
  font-size: 5.0724637681vw;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  color: #fff;
  background: #FF3573;
  border: 2px solid #fff;
  border-radius: 24.154589372vw;
  margin: auto;
  box-shadow: 0.4830917874vw 0.4830917874vw 0.4830917874vw rgba(0, 0, 0, 0.3);
}
@media screen and (min-width: 1025px) {
  .p-login__button-submit {
    height: 44px;
    font-size: 2.1rem;
    border-radius: 100px;
    box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
  }
}
.p-login__button-submit--color-white {
  color: #FF3573;
  background: #fff;
  border: 2px solid #FF3573;
}
.p-login__button-submit--color-purple {
  background: #760087;
}
.p-login__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.8985507246vw;
  margin: 0 0 9.6618357488vw;
}
@media screen and (min-width: 1025px) {
  .p-login__text {
    gap: 12px;
    margin: 0 0 40px;
  }
}
.p-login__text p {
  font-size: 3.8647342995vw;
  color: #FF3573;
}
@media screen and (min-width: 1025px) {
  .p-login__text p {
    font-size: 1.6rem;
  }
}
.p-login__text p a {
  color: #FF3573;
  text-decoration: underline;
}
.p-login__text--color-purple p {
  color: #760087;
}
.p-login__text--color-purple p a {
  color: #760087;
}
.p-login__return a {
  display: flex;
  align-items: center;
  gap: 1.9323671498vw;
  font-size: 4.8309178744vw;
  color: #646464;
}
@media screen and (min-width: 1025px) {
  .p-login__return a {
    gap: 8px;
    font-size: 2rem;
  }
}
.p-login__return a:before {
  content: "";
  display: block;
  width: 2.4154589372vw;
  height: 2.4154589372vw;
  border-left: 2px solid #646464;
  border-bottom: 2px solid #646464;
  rotate: 45deg;
}
@media screen and (min-width: 1025px) {
  .p-login__return a:before {
    width: 10px;
    height: 10px;
  }
}

.p-login form{
  display: contents;
}

a:link.normal {
  text-decoration: underline;
  color: #006699;
}

.c-button__link_pw_mail{
  text-decoration: underline;
  display: block;
  text-align: center;
  color: blue;
}
/*----------------------------------------
	パスワードオンオフ切り替え
----------------------------------------*/

#eye-on { display: none; width: 18px; height: 100%; }
#eye-off { display: none; width: 18px; height: 100%; }
@media screen and (max-width: 750px) {
	#eye-on { display: none; width: 22px; height: 100%;}
	#eye-off { display: none; width: 22px; height: 100%; }
}

.eye_icon{
  position: absolute;
  right: 1rem;
  height: 100%;
}

.password_input {
  display: flex;
  position: relative;
  align-items: baseline;
  align-content: center;
  justify-content: space-evenly;
}