@charset "UTF-8";
@font-face {
  font-family: "Pretendard";
  font-weight: 400;
  src: local("Pretendard Regular"), url("/e/kms/assets/fonts/Pretendard-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 700;
  src: local("Pretendard Bold"), url("/e/kms/assets/fonts/Pretendard-Bold.woff2") format("woff2");
}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, 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, button {
  margin: 0;
  padding: 0;
  border: 0;
  box-sizing: border-box;
  letter-spacing: 0;
  font-weight: 400;
  font-size: 12rem;
  font-family: "Pretendard";
  vertical-align: baseline;
}

body {
  line-height: 1 !important;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

a {
  text-decoration: none;
}

button {
  background-color: transparent;
  line-height: 1;
  cursor: pointer;
}

#webContent {
  padding: 0;
}

.event-wrap {
  overflow: visible;
  margin: 0 auto;
}

.wrap {
  position: relative;
  max-width: 720px;
  margin: 0 auto;
}

/* 팝업 */
.popup {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 99;
  max-width: 720px;
  overflow: auto;
  margin: 0 auto;
}
.popup.none {
  display: none;
}
.popup.active .dim {
  display: block;
}
.popup.active > .popup_container {
  transform: translateY(0%);
}
.popup.full > .popup_container {
  top: 0;
  border-radius: 0;
}
.popup.full > .popup_container .con {
  padding: 0 20rem;
  overflow-y: auto;
  height: calc(100% - 90rem);
}
.popup.bottomsheet > .popup_container {
  padding: 0 20rem;
}
.popup .dim {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: calc(100% + 1rem);
  background-color: #333;
  opacity: 0.5;
  overscroll-behavior: none;
  transition: all 0.5s ease-in-out;
}
.popup > .popup_container {
  position: fixed;
  bottom: 0;
  width: 100%;
  max-width: 720px;
  min-height: 1rem;
  border-radius: 16rem 16rem 0 0;
  transform: translateY(105%);
  transition: transform 0.5s ease;
  background-color: #fff;
  overflow: hidden;
  box-sizing: border-box;
}
.popup > .popup_container .pop_header {
  display: flex;
  height: 84rem;
  align-items: center;
  justify-content: space-between;
  padding: 0;
}
.popup > .popup_container .pop_header h1 {
  font-weight: bold;
  font-size: 20rem;
}
.popup > .popup_container .pop_header .close {
  width: 25rem;
  height: 25rem;
}
.popup > .popup_container .pop_header .close button {
  display: block;
  width: 100%;
  height: 100%;
  font-size: 0;
  line-height: 0;
  text-indent: -999rem;
  background: url("/e/kms/assets/images/event/2026/20260027/icon_header_close.png") no-repeat center center/25rem 25rem;
}
.popup > .popup_container .tab_menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1rem solid #dee2e6;
}
.popup > .popup_container .tab_menu li {
  flex: 1;
  position: relative;
  height: 48rem;
  text-align: center;
  line-height: 48rem;
  font-weight: 700;
  font-size: 18rem;
  color: #666;
}
.popup > .popup_container .tab_menu li.active {
  color: #333;
}
.popup > .popup_container .tab_menu li.active::after {
  content: "";
  position: absolute;
  bottom: -1rem;
  left: 0;
  width: 100%;
  height: 2rem;
  border-bottom: 2rem solid #333;
}
.popup > .popup_container .tab_content + .tab_content {
  display: none;
}
.popup > .popup_container .info {
  margin-bottom: 24rem;
  padding: 16rem;
  border-radius: 12rem;
  background-color: #f7f7f7;
  font-size: 14rem;
  line-height: 20rem;
  color: #333;
}
.popup > .popup_container .notice {
  padding-bottom: 20rem;
}
.popup > .popup_container .notice.no_bullet .list_dot > li {
  padding-left: 0;
}
.popup > .popup_container .notice.no_bullet .list_dot > li::before {
  display: none;
}
.popup > .popup_container .notice.no_bullet .list_dot > li .list_bar li::before {
  display: none;
}
.popup > .popup_container .notice dt {
  margin: 24rem 0 16rem;
  font-weight: bold;
  font-size: 18rem;
  color: #333;
}
.popup > .popup_container .notice p {
  margin-top: 16rem;
  font-size: 13rem;
  line-height: 20rem;
  color: #666;
}
.popup > .popup_container .notice ol li .tit {
  margin-bottom: 14rem;
  font-weight: bold;
  font-size: 16rem;
  line-height: 22rem;
  color: #333;
}
.popup > .popup_container .notice ol li .list_dot li {
  position: relative;
  padding-left: 11rem;
  font-size: 14rem;
  line-height: 20rem;
  color: #333;
}
.popup > .popup_container .notice ol li .list_dot li::before {
  content: "";
  display: block;
  position: absolute;
  top: 6rem;
  left: 0;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background-color: #bbb;
}
.popup > .popup_container .notice ol li .list_dot li + li {
  margin-top: 12rem;
}
.popup > .popup_container .notice ol li + li {
  margin-top: 24rem;
}
.popup > .popup_container .notice ol li .list_bar {
  margin-top: 10rem;
}
.popup > .popup_container .notice ol li .list_bar li {
  color: #333;
}
.popup > .popup_container .notice ol li .list_bar li + li {
  margin-top: 8rem;
}
.popup > .popup_container .notice ol li .list_bar li::before {
  width: 6rem;
  height: 1rem;
  border-radius: 0;
  top: 8rem;
  opacity: 1;
}
.popup > .popup_container .btn_wrap {
  position: fixed;
  width: 100%;
  bottom: 0;
  left: 0;
  padding: 30rem 0 20rem;
}
.popup > .popup_container .btn_wrap button {
  position: relative;
  z-index: 10;
  display: block;
  width: calc(100% - 40rem);
  height: 56rem;
  margin: 0 auto;
  background: #212266;
  border: 0;
  border-radius: 16rem;
  text-align: center;
  font-weight: 700;
  font-size: 16rem;
  color: #fff;
}
.popup > .popup_container .btn_wrap button:disabled {
  background: #eaeaf4;
  color: #a1a3c9;
}
.popup > .popup_container .list_dot li {
  position: relative;
  padding-left: 11rem;
  color: #333;
  font-size: 14rem;
  line-height: 19rem;
}
.popup > .popup_container .list_dot li + li {
  margin-top: 12rem;
}
.popup > .popup_container .list_dot li::before {
  content: "";
  display: block;
  position: absolute;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background-color: #bbb;
  left: 0;
  top: 7rem;
}
.popup > .popup_container h2 {
  margin: 0 0 2rem;
  font-weight: bold;
  font-size: 18rem;
  line-height: 24rem;
  color: #333;
}
.popup > .popup_container h3 {
  font-weight: bold;
  font-size: 16rem;
  line-height: 24rem;
  color: #333;
}
.popup > .popup_container h3 + p {
  margin-top: 16rem;
  font-size: 600px;
  font-size: 13rem;
  line-height: 20rem;
  color: #666;
}
.popup > .popup_container h3 + p + h4 {
  margin-top: 32rem;
}
.popup > .popup_container h4 {
  display: inline-flex;
  height: 32rem;
  align-items: center;
  justify-content: center;
  gap: 6rem;
  margin-bottom: 16rem;
  padding: 0 16rem 0 8rem;
  border-radius: 16rem;
  background-color: #ecf2fc;
  font-weight: 600;
  font-size: 14rem;
  color: #212266;
  line-height: 20rem;
}
.popup > .popup_container h4 span {
  display: inline-block;
  width: 20rem;
  height: 20rem;
  background-color: #212266;
  color: #ecf2fc;
  font-weight: 600;
  font-size: inherit;
  line-height: 20rem;
  text-align: center;
  border-radius: 50%;
}
.popup > .popup_container h5 {
  margin: 32rem 0 12rem;
  font-weight: bold;
  font-size: 16rem;
  line-height: 24rem;
  color: #333;
}
.popup > .popup_container .tbl_collect {
  width: 100%;
}
.popup > .popup_container .tbl_collect tr > * {
  padding: 12rem;
  font-weight: 600;
  font-size: 13rem;
  line-height: 18rem;
}
.popup > .popup_container .tbl_collect th {
  background-color: #f5f5f5;
  color: #333;
  border-radius: 6rem;
  border: 2rem solid #fff;
  text-align: left;
}
.popup > .popup_container .tbl_collect td {
  vertical-align: middle;
  color: #666;
}
.popup > .popup_container .tbl_collect td > * {
  display: block;
  font-size: inherit;
  color: inherit;
}
.popup > .popup_container .tbl_collect td .tit {
  margin-bottom: 4rem;
  font-weight: bold;
  color: #333;
}
.popup > .popup_container .tbl_collect td .noti {
  margin-top: 8rem;
}

/* 메인 */
.main {
  position: relative;
  background: #fff;
}
.main img {
  width: 100%;
}
.main .top {
  line-height: 0;
}
.main h1 {
  position: absolute;
  top: 20rem;
  left: 20rem;
  z-index: 1;
  width: 72rem;
}
.main .share {
  position: absolute;
  top: 20rem;
  right: 20rem;
  z-index: 1;
  width: 26rem;
  height: 26rem;
}
.main .visual {
  background: #F6F7F9;
}
.main .account {
  padding: 40rem 20rem;
  background: #EDF2FD;
  line-height: 0;
}
.main .account button {
  margin: 20rem 10rem 0;
  line-height: 0;
}
.main .banner {
  line-height: 0;
}
.main .floating {
  position: sticky;
  bottom: 0;
  z-index: 10;
  line-height: 0;
}
.main .caution {
  line-height: 0;
}



/* 본인확인 */
.certified_agree {
  padding: 0 20rem;
}
.certified_agree .btn_close {
  margin: 0 -20rem;
  text-align: right;
}
.certified_agree .btn_close button {
  width: 64rem;
  height: 48rem;
  background: url("/e/kms/assets/images/event/2026/20260003/icon_header_close.png") no-repeat center/16rem 16rem;
  font-size: 0;
}
.certified_agree .title {
  padding: 10rem 0 16rem;
  line-height: 28rem;
  font-weight: 700;
  font-size: 20rem;
  color: #222;
}
.certified_agree .term {
  padding-bottom: 94rem;
}
.certified_agree .guide {
  position: relative;
  margin-bottom: 56rem;
  padding: 20rem 20rem 20rem 30rem;
  background-color: #f7f8fa;
  border-radius: 20rem;
  line-height: 22rem;
  font-size: 14rem;
  color: #333;
}
.certified_agree .guide::before {
  content: "";
  display: block;
  position: absolute;
  top: 20rem;
  left: 10rem;
  width: 18rem;
  height: 18rem;
  background: url("/e/kms/assets/images/event/2026/20260003/icon_light.png") no-repeat 0 0/18rem 18rem;
}
.certified_agree .title_label {
  display: block;
  padding-bottom: 8rem;
  line-height: 19rem;
  font-size: 14rem;
  color: #888;
}
.certified_agree .title_label.pb2 {
  padding-bottom: 2rem;
}
.certified_agree input[type=text] {
  width: 100%;
  height: 42rem;
  margin-bottom: 40rem;
  padding: 0;
  border: 0;
  border-bottom: 1rem solid #ddd;
  line-height: 28rem;
  font-size: 20rem;
  color: #333;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
}
.certified_agree input[type=text]::placeholder {
  color: #ccc;
}
.certified_agree .phone {
  display: flex;
  gap: 10rem;
}
.certified_agree .phone .btn_phone_front {
  width: 80rem;
  height: 43rem;
  background: url("/e/kms/assets/images/event/2026/20260003/icon_arrow.png") no-repeat right 8rem top 13rem/16rem 16rem;
  border-bottom: 1rem solid #ddd;
  text-align: left;
  font-weight: 600;
  font-size: 20rem;
  color: #333;
}
.certified_agree .phone input {
  flex: 1;
}
.certified_agree .phone .btn_certified {
  width: 72rem;
  height: 42rem;
  border: 1rem solid #212266;
  border-radius: 12rem;
  line-height: 43rem;
  font-weight: 600;
  font-size: 0;
  color: #212266;
}
.certified_agree .phone .btn_certified::after {
  content: "인증번호";
  font-size: 14rem;
}
.certified_agree .phone .btn_certified.re {
  border: 1rem solid #999;
  color: #333;
}
.certified_agree .phone .btn_certified.re::after {
  content: "재요청";
}
.certified_agree .certified {
  position: relative;
}
.certified_agree .certified .count {
  position: absolute;
  top: 12rem;
  right: 0;
  line-height: 18rem;
  font-weight: 700;
  font-size: 14rem;
  color: #888;
}
.certified_agree .title_caution {
  margin-bottom: 16rem;
  padding: 46rem 0 6rem;
  border-bottom: 1rem solid #ddd;
  line-height: 20rem;
  font-weight: 600;
  font-size: 16rem;
  color: #333;
}
.certified_agree .friend {
  padding: 20rem 0;
}
.certified_agree .friend .title_friend {
  padding-bottom: 5rem;
  font-weight: 600;
  font-size: 14rem;
}
.certified_agree .friend .friend_code {
  display: flex;
  align-items: center;
  gap: 10rem;
  padding-bottom: 5rem;
}
.certified_agree .friend .friend_code input {
  flex: 1;
  height: 30rem;
  margin: 0;
  border: 1rem solid #ddd;
}
.certified_agree .friend .friend_code button {
  width: 70rem;
  height: 32rem;
  background: #212266;
  border-radius: 8rem;
  font-size: 14rem;
  color: #fff;
}
.certified_agree .friend .caution li {
  padding-bottom: 0;
}
.certified_agree .table_col table {
  width: 100%;
  border-bottom: 1rem solid #8a8a8a;
  margin-bottom: 20rem;
}
.certified_agree .table_col table th {
  vertical-align: middle;
  font-weight: 400;
  background-color: #dee3ec;
  font-size: 12rem;
  color: #303030;
  padding: 8rem 10rem;
  text-align: center;
  border-top: 1rem solid #8a8a8a;
}
.certified_agree .table_col table td {
  padding: 8rem 10rem;
  vertical-align: middle;
  line-height: 16rem;
  font-size: 12rem;
  color: #303030;
  text-align: center;
  border-top: 1rem solid #8a8a8a;
}
.certified_agree .table_col table td.left {
  text-align: left;
}
.certified_agree .table_col table td select {
  width: 100%;
  font-size: 12rem;
}
.certified_agree .table_col table td strong {
  font-weight: 700;
  color: red;
}
.certified_agree .login_guide table {
  width: 100%;
  border-bottom: 1rem solid #8a8a8a;
  margin-bottom: 5rem;
}
.certified_agree .login_guide table th {
  font-weight: 400;
  background-color: #dee3ec;
  font-size: 12rem;
  color: #303030;
  padding: 8rem 10rem;
  text-align: left;
  border-top: 1rem solid #8a8a8a;
  width: 50%;
}
.certified_agree .login_guide table td {
  padding: 8rem 10rem;
  line-height: 16rem;
  font-size: 12rem;
  color: #303030;
  text-align: left;
  border-top: 1rem solid #8a8a8a;
}
.certified_agree .login_guide table td select {
  width: 100%;
  font-size: 12rem;
}
.certified_agree .login_guide table td strong {
  font-weight: 700;
  color: red;
}
.certified_agree .login_guide .guide_info {
  padding-bottom: 8rem;
}
.certified_agree .login_guide .guide_info li {
  position: relative;
  padding: 0 20rem 3rem 10rem;
  line-height: 16rem;
  font-size: 12rem;
  color: #666;
}
.certified_agree .login_guide .guide_info li::before {
  content: "";
  position: absolute;
  top: 6rem;
  left: 5rem;
  width: 3rem;
  height: 3rem;
  background-color: #bbb;
  border-radius: 50%;
}
.certified_agree .essential_wrap {
  margin-bottom: 16rem;
  border: 1rem solid #ddd;
  border-radius: 10rem;
}
.certified_agree .essential_wrap .radio {
  display: flex;
  gap: 54rem;
}
.certified_agree .essential_wrap .radio input {
  display: none;
}
.certified_agree .essential_wrap .radio input:checked + label::before {
  border: 1rem solid #212266;
}
.certified_agree .essential_wrap .radio input:checked + label::after {
  background-color: #212266;
}
.certified_agree .essential_wrap .radio label {
  position: relative;
  line-height: 20rem;
  padding-left: 28rem;
  font-size: 16rem;
  color: #333;
}
.certified_agree .essential_wrap .radio label::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 20rem;
  height: 20rem;
  box-sizing: border-box;
  border: 1rem solid #c7c7c7;
  border-radius: 50%;
}
.certified_agree .essential_wrap .radio label::after {
  content: "";
  position: absolute;
  top: 5rem;
  left: 5rem;
  width: 10rem;
  height: 10rem;
  background-color: #eee;
  border-radius: 50%;
  box-sizing: border-box;
}
.certified_agree .essential_wrap .title_wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16rem 20rem;
  border-bottom: 1rem solid #ddd;
}
.certified_agree .essential_wrap .title_wrap .title_essential {
  font-weight: 600;
  font-size: 14rem;
  color: #333;
}
.certified_agree .essential_wrap .title_wrap .radio {
  display: flex;
  gap: 16rem;
}
.certified_agree .essential_wrap .title_wrap .radio label {
  position: relative;
  line-height: 17rem;
  padding-left: 22rem;
  font-size: 12rem;
}
.certified_agree .essential_wrap .title_wrap .radio label::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 16rem;
  height: 16rem;
  box-sizing: border-box;
  border: 1rem solid #c7c7c7;
  border-radius: 50%;
}
.certified_agree .essential_wrap .title_wrap .radio label::after {
  content: "";
  position: absolute;
  top: 4rem;
  left: 4rem;
  width: 8rem;
  height: 8rem;
  box-sizing: border-box;
  background-color: #eee;
  border-radius: 50%;
}
.certified_agree .essential_wrap .contents {
  padding: 16rem 20rem 25rem;
}
.certified_agree .essential_wrap .contents .content {
  display: flex;
  gap: 8rem;
  padding-bottom: 26rem;
}
.certified_agree .essential_wrap .contents .content .icon {
  height: 20rem;
  padding: 0 8rem;
  background-color: #1998e9;
  border-radius: 4rem;
  line-height: 20rem;
  font-size: 10rem;
  color: #fff;
}
.certified_agree .essential_wrap .contents .content .text {
  flex: 1;
  font-size: 12rem;
  line-height: 20rem;
  color: #888;
}
.certified_agree .essential_wrap .account {
  display: flex;
  align-items: center;
  gap: 20rem;
  padding: 16rem 20rem;
}
.certified_agree .essential_wrap .account dt {
  font-weight: 600;
  font-size: 14rem;
  color: #333;
}
.certified_agree .essential_wrap .account dd {
  flex: 1;
  width: 100%;
}
.certified_agree .essential_wrap .account dd select {
  width: 100%;
  height: 40rem;
  border: 1px solid #c2c2c2;
  font-size: 14rem;
}
.certified_agree .grade_guide {
  margin-bottom: 40rem;
  padding: 20rem;
  border: 1rem solid #ddd;
  border-radius: 10rem;
}
.certified_agree .grade_guide .title_guide {
  padding-bottom: 20rem;
  font-weight: 600;
  font-size: 14rem;
  color: #333;
}
.certified_agree .grade_guide .grade {
  display: flex;
  height: 33rem;
  margin-bottom: 16rem;
}
.certified_agree .grade_guide .grade li {
  width: 20%;
  text-align: center;
  line-height: 32rem;
  font-size: 12rem;
  color: #fff;
}
.certified_agree .grade_guide .grade li:nth-child(1) {
  background: #1998e9;
  border-radius: 32rem 0 0 32rem;
}
.certified_agree .grade_guide .grade li:nth-child(2) {
  background: #17db6b;
  font-size: 11rem;
}
.certified_agree .grade_guide .grade li:nth-child(3) {
  background: #dec40d;
}
.certified_agree .grade_guide .grade li:nth-child(4) {
  background: #fb9527;
}
.certified_agree .grade_guide .grade li:nth-child(5) {
  background: #ea1600;
  border-radius: 0 32rem 32rem 0;
}
.certified_agree .grade_guide .summary {
  font-size: 12rem;
  color: #888;
}
.certified_agree .caution {
  padding-bottom: 8rem;
}
.certified_agree .caution li {
  position: relative;
  padding: 0 0 12rem 11rem;
  line-height: 16rem;
  font-size: 12rem;
  color: #666;
}
.certified_agree .caution li::before {
  content: "";
  position: absolute;
  top: 6rem;
  left: 0;
  width: 3rem;
  height: 3rem;
  background: #bbb;
  border-radius: 50%;
}
.certified_agree .caution li.red {
  color: #bd527e;
}
.certified_agree .btn_ok {
  display: block;
  width: 100%;
  height: 54rem;
  margin: 20rem 0;
  background: #212266;
  border-radius: 16rem;
  font-size: 16rem;
  color: #fff;
}
.certified_agree .btn_ok:disabled {
  background: #eaeaf4;
  color: #a1a3c9;
}
.certified_agree .btn_fixed {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #fff;
}
.certified_agree .btn_fixed .btn_ok {
  width: calc(100% - 40rem);
  margin: 0 20rem 20rem;
}
