/* common */
@charset "utf-8";
@import url("https://spoqa.github.io/spoqa-han-sans/css/SpoqaHanSansNeo.css");

html {
  line-height: 1.4;
  -webkit-text-size-adjust: 100%;
}

body,
button,
p,
span {
  position: relative;
  font-family: "Spoqa Han Sans Neo", -apple-system, BlinkMacSystemFont, "Malgun Gothic", "맑은 고딕", dotum, "돋움", helvetica, "Apple SD Gothic Neo", sans-serif;
  letter-spacing: -0.05em;
  font-weight: 400;
}

button span, a {
  color: #ffffff;
}

body {
  direction: ltr;
  -webkit-text-size-adjust: none;
  word-break: keep-all;
  word-wrap: break-word;
}

body,
ul,
li,
button {
  margin: 0;
  padding: 0;
  -webkit-appearance: none;
}

div,
ul,
p {
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  border: 0;
}

p {
  margin: 0;
}

button {
  position: relative;
  border: 0 none;
  background-color: transparent;
  cursor: pointer;
  color: rgba(60, 44, 36, 0.8);
}

button span {
  z-index: 10;
}

.hover {
  position: absolute;
  z-index: 5;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0);
  top: 0;
  left: 0;
}

button:hover > .hover {
  background: rgba(0, 0, 0, 0.12);
}

/* typography */
.h1 {
  font-size: 21px;
  line-height: 28px;
}
.h2 {
  font-size: 20px;
  line-height: 28px;
}
.h3 {
  font-size: 18px;
  line-height: 135%;
}
.h3.bold {
  line-height: 24px;
}
.caption1 {
  font-size: 17px;
  line-height: 22px;
}
.caption2 {
  font-size: 15px;
  line-height: 20px;
}

.opacity_50 {
  opacity: 0.5;
}
.opacity_55 {
  opacity: 0.55;
}
.opacity_60 {
  opacity: 0.6;
}
.opacity_80 {
  opacity: 0.8;
}
.opacity_88 {
  opacity: 0.88;
}
.opacity_90 {
  opacity: 0.9;
}
.opacity_94 {
  opacity: 0.94;
}
.opacity_77 {
  opacity: 0.77;
}
.mid {
  font-weight: 500;
}
.semi_bold {
  font-weight: 600;
}
.bold {
  font-weight: 700;
}
.ext_bold {
  font-weight: 900 !important;
}

.center {
  text-align: center;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.underline {
  text-decoration: underline;
}

.break_all {
  word-break: break-all;
}

/* color  */
body {
  background-color: #6596D0;
  color: #222222;
}
.white {
  color: #ffffff;
}
.black {
  color: #000000;
}
.black1 {
  color: #111111;
}
.black2 {
  color: #222222;
}
.black3 {
  color: #201E29;
}
.blue {
  color: #3D5766;
}
.red {
  color: #D93200;
}
.txt_accent {
  color: #D93200;
}

/* box */
.min_wrap {
  min-width: 360px;
  width: 100%;
  overflow: hidden;
}
.container {
  overflow: hidden;
  position: relative;
  width: 100%;
}

.flex_col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.flex_row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.grow {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.only_pc {
  display: block;
}
.only_mo {
  display: none;
}

.x_center {
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
}
.relative {
  position: relative;
}


/* fixed_top_button */
.fixed_top_button {
  position: fixed;
  z-index: 99;
  width: 504px;
  height: 118px;
  top: 0px;
  left: calc(50% - 252px);
  padding: 40px 11.2px 0px;
  gap: 11.2px;
  cursor: pointer;
}
.min_txt {
  position: absolute;
  top: 16.8px;
  left: 30.8px;
  width: 45px;
  height: 13px;
}
.fixed_inner {
  width: 481.6px;
  height: 77px;
  background: #EBFBF7;
  border: 1.4px solid #0B7498;
  box-shadow: 2.8px 5.6px 0px 0px #0B7498;
  border-radius: 11.2px;
  padding: 13.3px 14px 13.3px 39.2px;
  justify-content: space-between;
}
.kv_btn_txt {
  width: 182px;
  height: 28px;
}
.btn_wrap {
  width: 127px;
  height: 50.4px;
  gap: 2.8px;
  border-radius: 11.2px;
  padding: 11.2px 16.8px;
  flex-shrink: 0;
  background: #1B809C;
  border-radius: 11.2px;
}
.icon_right_1 {
  width: 19.6px;
  height: 19.6px;
}

/* main */
.main {
  width: 100%;
  height: 1039px;
  position: relative;
  background-color: #49B1CD;
}
.main_bg_wrap {
  width: 704.2px;
  height: 1038.8px;
  position: absolute;
}
.main_bg_wrap img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
}
.main_dim {
  position: absolute;
  width: 695px;
  background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 100%);
  background: -moz-linear-gradient(180deg, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 100%);
  background: -o-linear-gradient(180deg, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 100%);
}
.dim1 {
  height: 142px;
  top: 1px;
  left: 7.4px;
}
.dim2 {
  height: 158px;
  top: 881px;
  left: 0.4px;
  transform: rotate(180deg);
}
.main_gra {
  width: 42px;
  height: 1039px;
  position: absolute;
  top: 0px;
  background: -webkit-linear-gradient(270deg, rgba(73, 177, 205, 0) 0%, #49B1CD 100%);
  background: -moz-linear-gradient(270deg, rgba(73, 177, 205, 0) 0%, #49B1CD 100%);
  background: -o-linear-gradient(270deg, rgba(73, 177, 205, 0) 0%, #49B1CD 100%);
  background: linear-gradient(270deg, rgba(73, 177, 205, 0) 0%, #49B1CD 100%);
}
.gra1 {
  left: 0.2px;
}
.gra2 {
  right: 0.2px;
  transform: rotate(180deg);
}
.kv_main {
  position: relative;
  width: 504px;
  height: 100%;
}
.split_1 {
  position: absolute;
  width: 53.2px;
  height: 51.8px;
  top: 198.8px;
  left: 65.8px;
}
.split_2 {
  position: absolute;
  width: 88.2px;
  height: 98px;
  top: 294px;
  left: 378px;
}
.sub_title {
  width: auto;
  height: 53.2px;
  position: absolute;
  top: 163.8px;
  display: none;
}
.sub_title[data-idx="1"],
.sub_title[data-idx="2"] {
  width: 366.8px;
  height: 67.2px;
  top: 156.8px;
}
.card_name {
  display: none;
  position: absolute;
  height: 62px;
  top: 609px;
}
.kv_caption {
  display: none;
  white-space: nowrap;
  width: 100%;
  text-align: center;
}
.kv_caption[data-idx="1"] {
  left: -18px;
}
.main_title {
  width: 504px;
  height: auto;
  position: absolute;
  top: 163.8px;
  left: 0px;
  display: none;
}
.sub_title.active,
.main_title.active,
.card_name.active,
.kv_caption.active {
  display: block;
}
.kv_cont_box {
  width: 452px;
  height: 306px;
  gap: 8.4px;
  border-radius: 22.4px;
  padding: 30.8px 33.6px 22.4px;
  background: #FFFFFF4D;
  border: 1.4px solid #FFFFFFCC;
  position: absolute;
  top: 672px;
  left: 25px;
  z-index: 2;
  backdrop-filter: blur(5.6px);
}
.caption_title {
  width: 95.2px;
  height: 30.8px;
}
.kv_cont_box > .flex_col {
  width: 100%;
  gap: 11.2px;
  justify-content: flex-start;
  align-items: flex-start;
}
.kv_cont_btn {
  width: 100%;
  height: 75.6px;
  border-radius: 22.4px;
  overflow: hidden;
}
#go_apply.kv_cont_btn {
  background-color: #1B809C;
}
#go_detail.kv_cont_btn {
  background-color: #EBFBF7;
}
.kv_btn_txt_w {
  width: 182px;
  height: auto;
  margin-right: 5.6px;
}
.kv_cont_box > .flex_col > p {
  margin: 0 auto;
}

.swiper-container {
  width: 100%;
  max-width: 450px;
  position: absolute;
  top: 382px;
}
.swiper-wrapper {
  align-items: flex-end;
}

.swiper-slide {
  width: 131px;
  height: 210px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  transform-origin: center center;
  visibility: hidden;
  transform: rotate(0deg);
}
.swiper-slide.swiper-slide-active {
  z-index: 3;
  visibility: visible;
  transition: none;
  /* transition: transform 0.5s ease; */
}
.swiper-slide.swiper-slide-prev,
.swiper-slide.swiper-slide-next {
  width: 137px;
  height: 220px;
  z-index: 1;
  visibility: visible;
  transition: transform 0.5s ease, z-index 0.5s;
} 
.swiper-slide .motion, .swiper-slide img {
  width: 105px;
  height: 168px;
  z-index: 1;
}
.swiper-slide.swiper-slide-active .motion, 
.swiper-slide.swiper-slide-active img {
  width: 131px;
  height: 210px;
  z-index: 3;
}
.swiper-slide.swiper-slide-prev .motion {
  margin-top: 120px;
  margin-left: 20px;
  z-index: 2;
}
.swiper-slide.swiper-slide-prev img {
  transform: rotate(-5deg);
}
.swiper-slide.swiper-slide-next .motion {
  margin-top: 120px;
  margin-right: 19px;
  z-index: 2;
}
.swiper-slide.swiper-slide-next img {
  transform: rotate(5deg);
}
.swiper-button-prev, .swiper-button-next {
  width: 53.2px;
  height: 53.2px;
  position: absolute;
  /* top: 114px; */
  top: unset;
  bottom: -57px;
  border-radius: 50%;
  background: #FFFFFF4D;
  border: 1.4px solid #FFFFFFCC;
  backdrop-filter: blur(5.6px);
}
.swiper-button-prev {
  left: 0px;
}
.swiper-button-next {
  right: 0px;
}
.swiper-button-prev::after, .swiper-button-next::after {
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background-image: url("../../static/images/city_edition_18_cashback_2509/icon-right.png");
  background-repeat: no-repeat;
  background-size: 33.6px 33.6px;
  background-position: center;
}
.swiper-button-prev::after {
  transform: rotate(180deg);
}

/* 대상카드 swiper 애니메이션 */
/* flip */
.swiper_flip_left_before {
  opacity: 0;
  transform: perspective(2500px) rotateY(-100deg);
}
.swiper_flip_left {
  opacity: 1;
  transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
  transition-duration: .7s;
  transform: perspective(2500px) rotateY(0);
  backface-visibility: hidden;
  transition-property: transform;
}

/* event */
#event {
  background-color: #3388AC;
}
.eve_wrap {
  position: relative;
  width: 100%;
  max-width: 504px;
  margin: 0px auto;
  padding: 53.2px 19.6px;
  gap: 28px;
}
.eve_box {
  width: 100%;
  position: relative;
  background: #FFFFFF;
  border-radius: 50.4px;
}
.eve_box_inner {
  padding: 36.4px 33.6px;
}
.eve_tag {
  display: inline-block;
  background-color: #201E29;
  padding: 8.4px 16.8px;
  border-radius: 18.2px;
}
.eve_box > .flex_col {
  width: 100%;
  gap: 16.8px;
}
.eve_box > .flex_col > .flex_col,
.eve_box > .flex_col > .flex_col > .flex_col {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
}
.body_title {
  width: auto;
  height: 18.2px;
}
.gap_14 {
  gap: 14px;
}
.gap_8_4 {
  gap: 8.4px;
}
.gap_5_6 {
  gap: 5.6px;
}
/* event1 */
#event1.eve_box {
  gap: 50.4px;
}
.eve_title_1 {
  width: 252.4px;
  height: 52px;
}
.eve_img_1 {
  width: 397.6px;
  height: 134.4px;
}
.star_li {
  padding-left: 16.8px;
  position: relative;
}
.star_li::before {
  content: "※";
  font-size: inherit;
  font-weight: inherit;
  position: absolute;
  top: 0px;
  left: 0px;
}
.gray_tag {
  background: #0000000A;
  padding: 5.6px;
  border-radius: 8.4px;
  box-sizing: border-box;
  display: inline-block;
  margin-right: 8.4px;
}
.back_1 {
  width: 37.8px;
  height: 53.2px;
  flex-shrink: 0;
  margin-right: 11.2px;
}
.step {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
}
.body_title_4 {
  margin-right: 5.6px;
}
.star2_li {
  padding-left: 12.6px;
  position: relative;
}
.star2_li::before {
  content: "*";
  font-size: inherit;
  font-weight: inherit;
  position: absolute;
  top: 4.2px;
  left: 0px;
}

/* event2 (toggle) */
.toggle_wrap {
  width: 100%;
  box-sizing: border-box;
}
.toggle_button_wrap {
  width: 100%;
  padding: 36.4px 54.9px 0px;
  height: 329.2px;
  justify-content: flex-start;
  gap: 16.8px;
}
.toggle_button_wrap > .flex_row {
  width: 100%;
  justify-content: space-between;
}
.eve_title_2 {
  width: 317.2px;
  height: 52px;
}
.eve_img_2 {
  width: 280px;
  height: 140px;
}

.toggle_cont > .eve_box_inner {
  width: 100%;
  gap: 16.8px;
  justify-content: flex-start;
  align-items: flex-start;
}
.toggle_cont > .eve_box_inner > .flex_col {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
}
.care_tag_wrap {
  width: 100%;
  justify-content: flex-start;
}
.care_tag {
  background-color: #F67D5D;
  border-radius: 138.6px;
  padding: 5.6px 11.2px;
}
ul.care_ul {
  list-style: none;
  padding-left: 22px;
}
ul.care_ul li.default {
  width: 100%;
  position: relative;
}
ul.care_ul li.default::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background-color: #201E29;
  position: absolute;
  top: 9px;
  left: -13px;
}
.care_gray_box {
  width: 100%;
  background: #201E291A;
  border-radius: 18.2px;
  padding: 14px 22.4px;
}

/* footer */
.footer {
  width: 100%;
  background-color: #111111;
  color: #F6EEF0;
}
.footer_wrap {
  align-items: flex-start;
  padding: 36.4px 19.6px 50.4px;
  gap: 14px;
}
.footer_title {
  gap: 8.4px;
  padding-left: 11.2px;
}
.alert {
  width: 25.2px;
}
.footer ul {
  list-style: none;
}
.footer ul p {
  padding-left: 28px;
  margin-bottom: 5.6px;
}
.footer ul li {
  position: relative;
}
.footer ul li::before {
  position: absolute;
}
.footer .li_txt {
  display: block;
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding-left: 16px;
}
.footer ul li.default {
  padding-left: 10px;
}
.footer ul li.default.important {
  margin-bottom: 5.6px;
}
.footer ul li.default::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background-color: #F9F6F4;
  top: 9px;
}
.footer ul li.dashed::before {
  content: "-";
}
.footer ul li.star::before {
  content: '※';
  border-radius: 0px;
  background-color: unset;
  top: 0px;
  left: 3px;
  width: auto;
  height: auto;
}
.footer .dashed_wrap {
  padding-left: 24px;
}

.no-click {
  cursor:default !important;
}

.star-wrap {
  align-items: flex-start;
  gap: 6px;
}
.icon-star {
  width: 11px;
}
.banner-wrap {
  width: 100%;
  background: linear-gradient(95deg, #E7F5FF 0%, #FEFAFA 100%);
  box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.15);
  justify-content: center;
}
.banner-min-wrap {
  width: 100%;
  max-width: 504px;
  padding: 34px;
  justify-content: space-between;
  overflow: hidden;
  box-sizing: border-box;
}
.cloud {
  z-index: 1;
  position: absolute;
}
.cloud-left {
  width: 308px;
  bottom: -19px;
  left: 34px;
}
.cloud-right {
  width: 277px;
  bottom: -.6px;
  right: -85px;
}
.text-left {
  z-index: 5;
  height: 90px;
}
.text-right {
  z-index: 5;
  height: 57px;
}

.cont-title-wrap {
  align-items: flex-start;
}
.cont-title {
  align-items: flex-start;
}
.star-text-wrap li.flex_row {
  align-items: flex-start;
}
.ali-left {
  align-items: flex-start;
}