@charset "utf-8";

@font-face {
  font-family: 'Pretendard-Regular';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
}

/* CSS Reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p,
blockquote, pre, a, abbr, address, big, cite, code, del, dfn, em,
img, ins, kbd, q, s, samp, small, strike, strong, sub, tt, var, b, u,
i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table,
caption,  body, tfoot, thead, tr, th, td, article, aside, canvas, details,
embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
button, input {
  border:none;
  outline: none;
  font-family: 'Pretendard-Regular', sans-serif;
}
body {
  font-family: 'Pretendard-Regular', sans-serif;
  line-height: 1;
}
ul, ol {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
header {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 72px;
  padding: 1rem;
  background: #272c32;
  color: #fff;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

/* 로그인 페이지 */
.intro-wrap {
  background: #ffffff;
  position: relative;
  height: 100vh;
}
.intro-wrap header {
  background: #00a0dc;
  height: 40px;
}
.intro-wrap header img {
  width: auto;
  /* height: 24px; */
}
.intro-wrap .home-btn {
  margin: 24px 0;
  text-align: center;
}
.intro-wrap .home-btn i {
  cursor: pointer;
  font-size: 2rem;
}
.intro-wrap .top-space {
  margin: 25px 0;
}

.login-wrap {
  /* background: #fff; */
  padding: 1rem 0;
  margin: 0 auto;
  margin-bottom: 50px;
  border-radius: 1rem;
  width: 90%;
  max-width: 500px;
  /* box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04); */
}
.login-wrap h2 {
  font-family: 'Pretendard-Regular', sans-serif;
  text-align: center;
  font-size: 22px;
  word-break: keep-all;
  /* padding: 0 10px; */
  margin-bottom: 20px;
  /* border-bottom: 1px solid #ddd; */
  width: 90%;
  margin: 0 auto 40px auto;
}
.login-wrap img {
  display: block;
  width: 100%;
}
.login-wrap p {
  display: flex;
  align-items: center;
  padding: 1.2em 0;
}
.login-wrap p label {
  display: flex;
  margin-right: 10px;
  min-width: 35px;
}
.login-wrap p span {
  flex-shrink: 0;
  width: 80px;
  font-size: 17px;
  text-align: center;
  color: #5c5c5c;
}
.login-wrap p input {
  flex-grow: 1;
  /* background: #f6f6f6; */
  border: 0;
  padding: 20px 10px;
  width:100%;
  border-bottom: 1px solid #ddd;
  font-size: 16px;
  margin-left: 12px;
}
.login-wrap p select {
  width: 100%;
  min-height: 40px;
  padding: 8px 10px;
  background: #fff;
  border: 2px solid #ccc;
}
.login-wrap p select option:disabled {
  display: none;
}
.login-wrap p select option{
}
.login-wrap .block-auto-pass {
  width: 0;
  height: 0;
  padding: 0;
}
.login-wrap .block-auto-pass input {
  width: 0;
  height: 0;
  border: 0;
  padding: 0;
}
.tya-login-wrap p {
  padding: 0 2rem;
  text-align: center;
  line-height: 23px;
  padding: 1.2em 1.5rem;
  justify-content: center;
  font-size: 17px;
}
.tya-login-wrap p input {
  flex-shrink: 0;
  width: 42%;
  margin: 0 2%;
  padding: 20px 5px;
  font-size: 19px;
}
.connect-btn {
  border: 0;
  background: #00a0dc;
  color: #fff;
  border-radius: 10px;
  padding: 25px 20px;
  width: 100%;
  margin: 30px auto;
  display: block;
  cursor: pointer;
  font-size: 17px;
}
.reservation-btn {
  border: 0;
  background: #00a0dc;
  color: #fff;
  border-radius: 10px;
  padding: 20px;
  width: 90%;
  margin: 30px auto;
  display: block;
  cursor: pointer;
  font-size: 17px;
}
.tyaUser-connect {
  border: 0;
  background: none;
  text-align: center;
  display: block;
  margin: 0 auto;
  color: #00a0dc;
  border-bottom: 1px solid #00a0dc;
  padding-bottom: 4px;
  font-weight: bold;
  cursor: pointer;
  font-size: 17px;
}
.return-connect {
  border: 0;
  background: none;
  text-align: center;
  display: block;
  margin: 0 auto;
  color: #00a0dc;
  border-bottom: 1px solid #00a0dc;
  padding-bottom: 4px;
  font-weight: bold;
  cursor: pointer;
  font-size: 15px;
}
.pw-notice {
  display: block;
  text-align: center;
  padding-top: 1rem;
  color: #f44336;
  word-break: keep-all;
}
.pw-notice i {
  font-size: 1.3em;
  vertical-align: middle;
}
.terms-of-service {
  cursor: pointer;
  display: inline-flex;
  width: 88%;
  /* background: #414141a1; */
  background: rgba(65, 65, 65, 0.63);
  justify-content: space-between;
  padding: 8px;
  margin-top: 8px;
  color: #fff;
}
.tos-modal {
  position: absolute;
  top: 300px;
  left: auto;
  width: 90%;
  max-width: 500px;
  padding-bottom: 2rem;
  background: #fff;
  outline: 1px solid #ccc;
  height: 100%;
  max-height: 532px;
  font-size: 20px;
  overflow-y: scroll;
}
.tos-modal .header-wrap {
  display: flex;
  justify-content: space-between;
  padding: 1rem;
  border-bottom: 1px solid #ccc;
}
.tos-modal .header-wrap span {
  cursor: pointer;
}
.tos-modal .context-wrap {
  font-family: sans-serif;
  padding: 1.3rem 0.8rem;
  white-space: pre-line;
  line-height: 1.6rem;
}

.hidden {
  display: none !important;
}

@media all and (max-width: 769px) {
  header {
    height: 52px;
  }
}

@media all and (max-width: 548px) {
  header {
    height: 48px;
  }

  .tos-modal {
    max-height: 542px;
  }
}

@media all and (max-width: 480px) {
  header {
    height: 48px;
  }
}

@media all and (max-width: 400px) {
  .terms-of-service {
    width: 84%;
  }

  .tos-modal {
    max-height: 514px;
  }
}

/* css End */
