body {
  padding: 0;
}

#page.bg_men {
  background-image: url("https://static.balaan.co.kr/mobile/img/mem/bg_men.jpg");
}

#page .close-btn-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  padding: 1.6rem;
}

#page .close-btn-wrapper > img {
  width: 1.6rem;
}

#page .main-template {
  display: flex;
  flex-flow: column nowrap;
  padding: 1rem 1.6rem;
  justify-content: center;
  align-items: center;
}

#page .main-template .logo-wrapper {
  padding: 2.6rem;
}

#page .main-template .benefit-noti {
  font-size: 1.3rem;
  text-align: center;
  line-height: 2.1rem;
  color: #fff;
  font-weight: 400;
  font-family: hs, noto;
  margin-bottom: 5rem;
}

.login-form {
  width: 100%;
  margin: 2rem 0 8rem;
}

.login-form .input-wrapper {
  width: 100%;
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
  position: relative;
}

.login-form .input-wrapper > input {
  width: 100%;
  padding: 0.6rem 0.4rem;
  border: 0;
  border-bottom: 1px solid #dedede;
}

.login-form .input-wrapper > input:focus {
  border-bottom: 1px solid #fff;
}

.login-form .input-wrapper > input::placeholder {
  color: #dbdbdb;
}

.login-btn {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  padding: 1rem 0;
  margin-bottom: 0.6rem;
  font-weight: 500;
  font-family: hs, noto;
}

.login-btn.naver {
  background-color: #4db816;
  color: #fff;
}

.login-btn.kakao {
  background-color: #f2d223;
}

.login-btn.facebook {
  background-color: #3b5c95;
  color: #fff;
}

.login-btn.apple {
  background-color: #000;
  color: #fff;
}

.login-btn.normal {
  color: #fff;
  border: 0.1rem solid #fff;
  background: transparent;
  box-sizing: border-box;
}

.login-btn .sns-logo-wrapper {
  margin-right: 0.6rem;
}

.login-btn .sns-logo-wrapper,
.login-btn .login-btn-noti {
  display: flex;
  align-items: center;
}

.login-btn .sns-logo-wrapper > img {
  width: 2rem;
}

#page .additional-task-wrapper {
  display: flex;
  flex-flow: row nowrap;
  /*margin: 2rem 0 1.2rem;*/
  width: 100%;
  align-items: center;
  justify-content: space-evenly;
  color: #666;
  font-weight: 400;
  font-family: hs, noto;
  font-size: 1.2rem;
}

#page .additional-task-wrapper > a {
  width: 100%;
  text-align: center;
  padding: 0.1rem 0;
  color: #666;
  font-size: 1.1rem;
}

#page .additional-task-wrapper .join {
  border-right: 0.1rem solid #dbdbdb;
}

button#sign-in-with-apple-button {
  margin-top: -4.6rem;
  opacity: 0;
}

.login-submit {
  width: 100%;
  margin: 1rem 0 2rem;
  background-color: #f6f6f6;
  color: #999;
  padding: 1rem 0;
}

.login-submit.on {
  background-color: #000;
  color: #fff;
}

.find-id-wrapper {
  text-align: center;
}

.find-id-wrapper > a {
  font-weight: 300;
  text-decoration: underline;
  font-size: 1.1rem;
  padding: 0 0.8rem;
  letter-spacing: -0.05rem;
  color: #999;
}

.input-wrapper button.btn_clear {
  position: absolute;
  visibility: hidden;
  right: 0;
  top: 0;
  width: 3rem;
  height: 3rem;
  opacity: 0;
  transition-duration: .3s;
}

.input-wrapper button.btn_clear.on {
  visibility: visible;
  opacity: 1;
}

.input-wrapper button.btn_clear:after {
  top: 50%;
  left: 50%;
  width: 1.8rem;
  height: 1.8rem;
  margin: -0.9rem 0 0 -0.9rem;
  background-position: 100% 0.2rem;
}

#balaan #btn-facebook-login {margin-top: 0;}


div.layer-modal-wrapper {
  display: none;
}

div.layer-modal-wrapper.show {
  display: flex;

  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;

  align-items: center;
  justify-content: center;
  z-index: 9999999;
}

div.layer-background {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 999999;

  background-color: black;
  opacity: 0.5;
}

div.layer-modal {
  border-radius: 4px;
  background-color: #fff;
  padding: 0 2.1rem;

  font-family: lato, SpoqaHanSansNeo !important;

  margin: 0 2.1rem;
  height: 18.7rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;

  z-index: 9999999;
}

div.layer-modal * {
  font-family: lato, SpoqaHanSansNeo !important;
  color: #222;
  font-size: 1.2rem;
}

div.layer-modal.show {
  display: flex;

  width: 100%;
  margin: 0 1.6rem;
}

div.layer-contents {
  text-align: center;
}


div.layer-modal .layer-buttons {
  margin-top: 1.8rem;
  display: flex;
  align-items: center;
  justify-content: center;

}

div.layer-modal .layer-button {
  font-weight: bold;
  color: white;
  background-color: #020202;
  /*padding: 2rem 0.6rem;*/
  display: flex;
  align-items: center;
  justify-content: center;

  width: 11.7rem;
  height: 3.6rem;
  border-radius: 0.2rem;
}
