main {
  width: 100%;
  min-height: calc(100vh - var(--HeaderHeight));
  display: flex;
  align-items: center;
  justify-content: center;
  align-items: flex-start;
}

.title {
  font-size: 1.875em;
}

#login_box {
  margin-top: 20vh;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
}
#login_box .info {
  font-size: 1.25em;
  font-weight: 400;
}
#login_box .input_box {
  height: max-content;
  padding: 50rem 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  gap: 25rem;
}
#login_box .input_box .input {
  width: 100%;
  height: max-content;
  display: flex;
  justify-content: flex-end;
  position: relative;
}
#login_box .input_box .input span {
  width: max-content;
  margin-right: 30rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
#login_box .input_box .input input {
  width: 260rem;
  aspect-ratio: 33/4;
}
#login_box #login_btn {
  padding: 6rem 25rem;
}

#msg_box {
  width: max-content;
  margin-top: 5vh;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
}
#msg_box .input_box {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  padding: 5vh 0;
  gap: 30px;
}
#msg_box .input_box .input {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
#msg_box .input_box .input span {
  width: max-content;
  margin-right: 30rem;
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
#msg_box .input_box .input input, #msg_box .input_box .input textarea {
  width: 50vw;
  max-width: 600px;
}
#msg_box .input_box .input input {
  height: 30rem;
}
#msg_box .input_box #content span {
  align-items: flex-start;
}
#msg_box .input_box #content textarea {
  height: 30vh;
}
#msg_box .func_box {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20rem;
}
#msg_box .func_box .btn1 {
  width: 85rem;
  height: 40rem;
}
#msg_box .info {
  width: max-content;
  max-width: 100vw;
  background-color: #d9d9d9;
  border-radius: 5rem;
  padding: 20rem;
  margin: 8vh 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  align-items: flex-start;
  gap: 15rem;
}
#msg_box .info span {
  font-size: 1.25em;
  font-weight: 400;
}

@media screen and (max-width: 570px) {
  #login_box, #msg_box {
    font-size: 16px;
  }

  #msg_box .input_box {
    padding: 5vh 0 3vh 0;
    gap: 10px;
  }
  #msg_box .input_box .input {
    flex-direction: column;
  }
  #msg_box .input_box .input span {
    margin: 0;
    margin-bottom: 5px;
  }
  #msg_box .func_box {
    flex-direction: column;
    gap: 10px;
  }
  #msg_box .func_box .btn1 {
    width: 100%;
    max-width: 80vw;
    height: 50rem;
  }
  #msg_box .info {
    max-width: 80vw;
  }
}