@charset "UTF-8";
* {
  box-sizing: unset;
}

.pc-mobile {
  display: flex !important;
}

.mobile-pc {
  display: none !important;
}

/* ★ library.css 의 표시타입별 유틸 체계에 맞춤 (2026-07-29).
   구 값은 flex 였으나 library.css 가 나중 로드라 어차피 block 으로 덮이고 있었다.
   flex/grid 가 필요하면 .pc 가 아니라 .pc-flex / .pc-grid 를 쓴다 (CLAUDE.md 핵심원칙 9). */
.pc {
  display: block !important;
}

.pc-flex {
  display: flex !important;
}

.pc-grid {
  display: grid !important;
}

.pc-inline {
  display: inline !important;
}

.tablet {
  display: none !important;
}

.mobile {
  display: none !important;
}

.absol {
  position: absolute;
}

.rltv {
  position: relative;
}

.flexrow {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
}

.flexcol {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

#bo_v > header {
  display: none;
}

p {
  word-break: keep-all !important;
}

@keyframes marquee3 {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes blk {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 0;
  }
  31% {
    opacity: 1;
  }
  99% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes ddm_m {
  0% {
    transform: scale(1);
  }
  50% {
    transform: matrix(1.05, 0.01, 0.01, 1.05, 0, -15);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes ddm_m_reverse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: matrix(0.8, 0.01, 0.01, 0.8, 0, -5);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes blk2 {
  0% {
    opacity: 0;
  }
  49% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  99% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes line-top {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(13px);
  }
}
/* 추가된 부분 */
@keyframes line-top-reverse {
  0% {
    transform: translateY(13px);
  }
  100% {
    transform: translateY(0px);
  }
}
@keyframes line-top-rotate {
  0% {
    transform: translateY(13px) rotateZ(0deg);
  }
  100% {
    transform: translateY(13px) rotateZ(45deg);
  }
}
/* 추가된 부분 */
@keyframes line-top-rotate-reverse {
  0% {
    transform: translateY(13px) rotateZ(45deg);
  }
  100% {
    transform: translateY(13px) rotateZ(0deg);
  }
}
@keyframes line-mid {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
/* 추가된 부분 */
@keyframes line-mid-reverse {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes line-mid-invisible {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes line-bot {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-13px);
  }
}
/* 추가된 부분 */
@keyframes line-bot-reverse {
  0% {
    transform: translateY(-13px);
  }
  100% {
    transform: translateY(0px);
  }
}
@keyframes line-bot-rotate {
  0% {
    transform: translateY(-13px) rotateZ(0deg);
  }
  100% {
    transform: translateY(-13px) rotateZ(135deg);
  }
}
/* 추가된 부분 */
@keyframes line-bot-rotate-reverse {
  0% {
    transform: translateY(-13px) rotateZ(135deg);
  }
  100% {
    transform: translateY(-13px) rotateZ(0deg);
  }
}
#content_wrap {
  padding-bottom: 3%;
}

.k_new_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.k_btn_inner {
  font-size: var(--bodyL);
  background: black;
  color: white;
  padding: 1% 3%;
  border-radius: calc(var(--px) * 30);
}

.k_btn_inner > a {
  color: white;
}

.k_new_btn > .k_btn_inner:nth-child(2) {
  background: rgba(0, 0, 0, 0.5607843137);
  margin-left: 2%;
  padding: 0.7% 2% !important;
}

#bo_w .bo_w_tit .frm_input {
  padding-right: 0 !important;
}

.k_btn_inner > input {
  outline: none;
  appearance: none;
  border: unset;
  background: unset;
  color: white;
  font-size: 1.1em;
}

#bo_v > header {
  display: block;
  position: relative;
  background: transparent;
  font-size: unset;
  padding: unset;
  border-bottom: 1px solid black;
  font-family: var(--font-pretendard);
}

#bo_v_title .bo_v_tit {
  display: block;
  font-size: var(--bodyL);
  margin: calc(var(--px) * 5) 0 0;
  word-break: break-all;
  font-weight: 500;
  letter-spacing: -0.06em;
  font-family: var(--font-pretendard) !important;
}

.board_title {
  font-family: var(--font-pretendard);
}

.k_new_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.k_btn_inner {
  font-size: var(--bodyL);
  background: black;
  color: white;
  padding: 1% 3%;
  border-radius: calc(var(--px) * 30);
}

.k_btn_inner > a {
  color: white;
}

.k_new_btn > .k_btn_inner:nth-child(2) {
  background: rgba(0, 0, 0, 0.5607843137);
  margin-left: 2%;
  padding: 0.7% 2% !important;
}

#bo_w .bo_w_tit .frm_input {
  padding-right: 0 !important;
}

.k_btn_inner > input {
  outline: none;
  appearance: none;
  border: unset;
  background: unset;
  color: white;
  font-size: 1.1em;
}

#bo_v > header {
  display: block;
  position: relative;
  background: transparent;
  font-size: unset;
  padding: unset;
  border-bottom: 1px solid black;
  font-family: var(--font-pretendard);
}

#bo_v_con {
  margin: calc(var(--px) * 30) 0;
  width: 100%;
  line-height: 1.7em;
  min-height: calc(var(--px) * 200);
  word-break: break-all;
  overflow: hidden;
  font-size: 1.3em;
  font-family: var(--font-pretendard);
}

.mac_opt img {
  max-width: 100%;
}

#tttt {
  opacity: 1;
  z-index: 9999;
}

#content_wrap {
  padding-bottom: 0% !important;
}

header h1 {
  margin: calc(var(--px) * 50) 0;
  font-size: 0.7em;
  font-weight: 100;
  text-align: center;
  font-family: var(--font-pretendard);
}

/* ★ 아래 드롭다운 규칙은 관리자메뉴(.admin_head) 전용 — 스코프를 한정하지 않으면
   퍼블 주메뉴(.header__list)의 ul/li/a 까지 잡아 색·폭이 통째로 깨진다. */
header .admin_head {
  width: 13.5%;
  margin: 0 auto;
  right: -16%;
}

header .admin_head li {
  float: left;
  list-style: none;
  position: relative;
  width: 100%;
}

header .admin_head li a {
  font-family: var(--font-pretendard);
  font-size: var(--bodyS);
  font-weight: 700;
  text-transform: uppercase;
  position: relative;
  color: #d90000;
  text-decoration: none;
  border: 3px solid #d90000;
  letter-spacing: 1px;
  padding: 6% 9%;
  display: block;
  z-index: 5000;
  width: 100%;
  box-sizing: border-box;
}

header .admin_head li a i {
  font-size: 0.7em !important;
  position: absolute;
  right: 10%;
  top: 40%;
}

header .admin_head li .drop-down {
  position: absolute;
  padding: 0;
  display: none;
  margin: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  background: white;
}

header .admin_head li .drop-down li {
  position: relative;
  float: none;
  width: 100%;
}

header .admin_head li .drop-down li a {
  border-top: none;
  width: 100%;
}

header .admin_head li .drop-down li a:hover {
  background: #d90000;
  color: #ffffff;
}

header .admin_head li .drop-down li:nth-of-type(1) a {
  border-top: none;
}

header .accent {
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #d90000;
  position: absolute;
  transition: 0.3s ease;
}

header .animate {
  width: 100%;
  transition: 0.3s ease;
}

header .item:hover {
  color: #ffffff;
}

header > .admin_head {
  right: 1%;
  top: 114%;
  background: white;
}

/* -------------------header 커스텀 시작------------------- */
@keyframes dropHeader {
  0% {
    top: calc(var(--px) * -91);
  }
  100% {
    top: 0;
  }
}
@keyframes insertHeader {
  0% {
    top: 0;
  }
  100% {
    top: calc(var(--px) * -91);
  }
}

header.drop {
  top: 0;
}

header.insert {
  top: calc(var(--px) * -91);
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: calc(var(--px) * 91);
  display: flex;
  justify-content: center;
  background-color: #fff;
  font-family: var(--font-family);
  color: #000;
  letter-spacing: -0.05em;
  transition-duration: 0.3s;
  transition-property: top;

  .header__inner {
    width: calc(var(--px) * 1800);
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .header__logo {
    width: calc(var(--px) * 157);
    display: flex;
    align-items: center;

    img {
      width: 100%;
    }
  }

  .header__list {
    display: flex;
    align-items: center;
    gap: calc(var(--px) * 119);
  }

  .header__link {
    font-size: var(--bodyL);
    font-weight: 300;
  }

  .header__tel {
    padding-inline: calc(var(--px) * 24);
    height: calc(var(--px) * 45);
    border-radius: calc(var(--px) * 21);
    background-color: var(--sc);
    color: #000;
    font-size: var(--subheadM);
    font-weight: 700;
    white-space: nowrap;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color 0.3s ease, color 0.3s ease;
  }

  .header__tel:hover {
    background-color: #000;
    color: var(--sc);
  }
}

.header__list,
.header__submenu {
  margin: 0;
  padding: 0;
  list-style: none;
}

.header__nav,
.header__list,
.header__item {
  height: 100%;
}

.header__item {
  position: relative;
  display: flex;
  align-items: center;
}

.header__link {
  position: relative;
  /* Pretendard Variable 이라 weight 도 보간된다 */
  transition: font-weight 0.25s ease, color 0.25s ease;
}

.header__link::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: calc(var(--px) * -5);
  left: 0;
  height: 1px;
  background: currentColor;
  opacity: 0;
  transform: scaleX(0.4);
  transform-origin: center;
  transition: opacity 0.25s ease, transform 0.25s ease;
}

.header__item:hover > .header__link,
.header__item:focus-within > .header__link,
.header__item.is-current > .header__link {
  font-weight: 700;
}

.header__item:hover > .header__link::after,
.header__item:focus-within > .header__link::after,
.header__item.is-current > .header__link::after {
  opacity: 1;
  transform: scaleX(1);
}

.header__submenu {
  position: absolute;
  top: 100%;
  left: 50%;
  width: calc(var(--px) * 160);
  background: #fff;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateX(-50%) translateY(calc(var(--px) * -4));
  transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
}

.header__item:hover > .header__submenu,
.header__item:focus-within > .header__submenu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

.header__submenu-link {
  width: 100%;
  height: calc(var(--px) * 52);
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  color: #000;
  font-size: var(--bodyM);
  font-weight: 300;
  text-decoration: none !important;
  box-sizing: border-box;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.header__submenu-link:hover,
.header__submenu-link:focus-visible,
.header__submenu-link.is-current {
  background: #000;
  color: #fff;
}

.header_quick {
  position: fixed;
  bottom: 18vw;
  right: 2.5%;
  width: calc(var(--px) * 132);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  z-index: 11111;
  gap: 0.5vw;
}

.header_quick_item {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: all 0.3s;
}

.header_quick_item img {
  width: 100%;
}

/* -------------------header 커스텀 끝------------------- */
@media screen and (max-width: 599px) {
  body.header-menu-open {
    overflow: hidden;
  }

  .pc-mobile {
    display: none !important;
  }

  .mobile-pc {
    display: flex !important;
  }

  .pc-inline {
    display: none !important;
  }

  .header,
  .header.drop,
  .header.insert {
    height: 15vw;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    transition: none;
  }

  .header .header__inner {
    width: 100%;
    padding: 0 5vw;
    box-sizing: border-box;
  }

  .header .header__logo {
    width: auto;
  }

  .header .header__logo img {
    width: 34vw !important;
    height: auto !important;
  }

  .header .header__tel {
    display: none;
  }

  .header__nav {
    position: fixed !important;
    top: 0;
    right: -78vw;
    width: 78vw;
    height: 100dvh;
    pointer-events: none;
    padding: 20vw 8vw 8vw;
    box-sizing: border-box;
    overflow-y: auto;
    background: #fff;
    /* 닫힘 상태에선 그림자를 걸지 않는다 — 패널은 화면 밖(right:-78vw)이어도 그림자는 왼쪽으로
       퍼져 화면 우측 끝에 띠로 보인다. 열릴 때만 켜고 이동과 같은 길이로 페이드시킨다. */
    box-shadow: none;
    transition: right 0.3s ease, box-shadow 0.3s ease;
    z-index: 10010;
  }

  .header__nav.is-open {
    right: 0;
    pointer-events: auto;
    box-shadow: -1vw 0 5vw rgba(0, 0, 0, 0.12);
  }

  .header .header__list {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .header .header__item {
    width: 100%;
    height: auto;
    display: block;
  }

  .header .header__link {
    display: block;
    width: 100%;
    padding: 3.2vw 0;
    box-sizing: border-box;
    font-size: var(--headS);
    font-weight: 500;
    text-align: center;
  }

  .header .header__link::after {
    display: none;
  }

  .header .header__item.is-current > .header__link {
    font-weight: 700;
  }

  /* ★ 모바일 2차메뉴 = 아코디언. 열림/닫힘은 뷰포트가 아니라 런타임 상태(.is-expanded)라
     display 토글 금지 원칙의 예외다(CLAUDE.md 핵심원칙 9).
     ★ PC 의 :hover/:focus-within 규칙(특이도 0,3,0)이 이 리셋(0,2,0)을 이겨서
     터치로 focus 가 걸리면 translateX(-50%) 가 되살아난다 → 메뉴가 왼쪽으로 밀린다.
     같은 셀렉터를 .header 스코프로 다시 눌러 특이도를 역전시킨다. */
  .header .header__submenu,
  .header .header__item:hover > .header__submenu,
  .header .header__item:focus-within > .header__submenu {
    position: static;
    width: 100%;
    display: grid;
    gap: 1px;
    background: #e8e8e8;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.28s ease;
  }

  .header .header__item.is-expanded > .header__submenu {
    max-height: 60vw;
  }

  .header .header__submenu-link {
    height: auto;
    padding: 2.6vw 0;
    font-size: var(--bodyM);
  }

  /* 아코디언 화살표 — PC 밑줄용 ::after 를 모바일에선 chevron 으로 재사용 */
  .header .header__item--has-submenu > .header__link::after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    right: 2vw;
    bottom: auto;
    left: auto;
    width: 1.8vw;
    height: 1.8vw;
    background: none;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    opacity: 1;
    transform: translateY(-70%) rotate(45deg);
    transition: transform 0.28s ease;
  }

  .header .header__item--has-submenu.is-expanded > .header__link::after {
    transform: translateY(-20%) rotate(-135deg);
  }

  .hamburger {
    position: absolute;
    top: 50%;
    right: 5vw;
    width: 8vw;
    height: 6vw;
    padding: 0;
    border: 0;
    background: transparent;
    transform: translateY(-50%);
    z-index: 10020;
  }

  .hamburger-menu {
    position: relative;
    display: block;
    width: 8vw;
    height: 5vw;
  }

  .hamburger .line {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: #000;
    transform-origin: center;
    transition: top 0.3s ease, bottom 0.3s ease, opacity 0.3s ease, transform 0.3s ease;
  }

  .hamburger .top-reverse {
    top: 0;
  }

  .hamburger .mid-reverse {
    top: 50%;
    transform: translateY(-50%);
  }

  .hamburger .bot-reverse {
    bottom: 0;
  }

  .hamburger.is-open .top-reverse {
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
  }

  .hamburger.is-open .mid-reverse {
    opacity: 0;
  }

  .hamburger.is-open .bot-reverse {
    bottom: 50%;
    transform: translateY(50%) rotate(-45deg);
  }

  .header_menu-bg {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 10000;
  }

  .header_menu-bg.is-open {
    opacity: 1;
    pointer-events: auto;
  }

  .header_quick {
    bottom: 44.3vw;
    right: 2.3vw;
    /* 18vw(=67.5px @375) 는 배너 글자가 안 읽혔다 — 24vw(90px)로 확대.
       bottom 고정 + column 이라 커지는 방향은 위쪽, quick 상담바와 안 겹친다. */
    width: 24vw;
    gap: 2vw;
  }

  .header_quick_item {
    aspect-ratio: 1;
    overflow: hidden;
  }

  .header_quick_item img {
    width: 110%;
    max-width: none;
    flex: 0 0 auto;
  }

  body.header-menu-open .header_quick {
    opacity: 0;
    pointer-events: none;
  }
}
.k_new_btn {
  margin-bottom: 6%;
  margin-top: 2%;
}

#bo_v_title .bo_v_tit {
  display: block;
  font-size: var(--bodyL);
  margin: calc(var(--px) * 5) 0 0;
  word-break: break-all;
  font-weight: 700;
  letter-spacing: -0.06em;
  font-family: var(--font-pretendard) !important;
}

.board_title {
  font-weight: 700;
  font-family: var(--font-pretendard);
}

.k_new_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.k_btn_inner {
  font-size: var(--bodyL);
  background: black;
  color: white;
  padding: 1% 3%;
  border-radius: calc(var(--px) * 30);
}

.k_btn_inner > a {
  color: white;
}

.k_new_btn > .k_btn_inner:nth-child(2) {
  background: rgba(0, 0, 0, 0.5607843137);
  margin-left: 2%;
  padding: 0.7% 2% !important;
}

#bo_w .bo_w_tit .frm_input {
  padding-right: 0px !important;
}

.k_btn_inner > input {
  outline: none;
  appearance: none;
  border: unset;
  background: unset;
  color: white;
  font-size: 1.1em;
}

#bo_v > header {
  display: block;
  position: relative;
  background: transparent;
  font-size: unset;
  padding: unset;
  border-bottom: 1px solid black;
  font-family: var(--font-pretendard);
  font-weight: 900;
}

#bo_v_con {
  margin: calc(var(--px) * 30) 0;
  width: 100%;
  line-height: 1.7em;
  min-height: calc(var(--px) * 200);
  word-break: break-all;
  overflow: hidden;
  font-size: 1.3em;
  font-family: var(--font-pretendard);
}

/* ===== 팝업레이어 (#hd_pop) — 정본 일원화 =====
   딤 = #hd_pop 풀스크린 반투명 오버레이 한 겹.
   (구 section filter 방식은 헤더·푸터·섹션 여백이 안 어두워지고 서브마다 불균일해 폐기) */
#hd_pop {
  position: fixed;
  inset: 0;
  z-index: 3000;
  width: 100vw;
  height: 100svh;
  margin: 0 auto;
  background: rgba(0, 0, 0, 0.5);
  pointer-events: auto;
}

/* 팝업 박스 — 위치는 어드민 좌표(.hd_pops 인라인 top/left) 유지 */
#hd_pop > div {
  border-radius: calc(var(--px) * 30);
  overflow: hidden;
  background: black;
}

#hd_pop > .hd_pops {
  box-shadow: 0 calc(var(--px) * 4) calc(var(--px) * 6) rgba(0, 0, 0, 0.25);
}

.hd_pops img {
  width: 100% !important;
}

#hd_pop > div > div > iframe {
  height: 100%;
  pointer-events: auto;
}

/* footer 버튼 — 딤이 클릭을 막아도 pointer-events:all 로 닫기 버튼은 클릭 가능.
   ★ #hd_pop 로 스코프하는 이유: 그누보드 기본 default.css 가
     `.hd_pops_footer .hd_pops_reject{background:#000}` / `.hd_pops_close{position:absolute;top:0;right:0}`
     처럼 클래스 2개 셀렉터로 잡고 있어, 한 클래스짜리 규칙은 로드 순서와 무관하게 진다.
     (구 newwin 인라인 <style> 은 이걸 !important 로 이겼다 — id 스코프로 대체) */
#hd_pop .hd_pops_footer {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  background: #f7f7f7;
  font-size: var(--bodyS) !important;
  pointer-events: all;
}

#hd_pop .hd_pops_footer button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 33%;
  position: relative;
  inset: auto;            /* default.css 의 top:0;right:0 무력화 */
  color: #666666;
  background: #f7f7f7;
}

#hd_pop .hd_pops_footer .hd_pops_close_all {
  border-left: 1px solid rgba(0, 0, 0, 0.07);
  border-right: 1px solid rgba(0, 0, 0, 0.07);
}

#hd_pop .hd_pops_con > p {
  display: flex;
}

#hd_pop .hd_pops_footer .hd_pops_reject {
  font-family: var(--font-pretendard);
  font-weight: 700;
}

/* 태블릿·갤럭시 폴드(600~1024): 딤을 flex 컨테이너로 써 박스를 화면 중앙에.
   어드민 absolute left 만 풀어 중앙정렬(좌표가 박혀 한쪽으로 치우치는 것 방지) */
@media screen and (max-width: 1023px) and (min-width: 600px) {
  #hd_pop {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 2vw;
  }
  #hd_pop > .hd_pops {
    left: auto !important;
    top: auto !important;
    /* 이미지 팝업은 fit-content 가 이미지 폭이라 충분하지만, 짧은 텍스트 팝업이
       footer 버튼 3개보다 좁아지는 것만 min 으로 막는다 */
    min-width: 320px;
    max-width: 60%;
    width: fit-content !important;
    height: fit-content !important;
    border-radius: 22px;
  }
  #hd_pop .hd_pops_con {
    width: fit-content !important;
    height: fit-content !important;
  }
  .hd_pops_footer {
    font-size: 2.6vw !important;
  }
}

@media screen and (max-width: 599px) {
  #hd_pop {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #hd_pop > div {
    margin: 0 auto !important;
    width: 90% !important;
    left: auto !important;
    top: auto !important;
    border-radius: 22px;
  }
  .hd_pops_con {
    width: 100% !important;
    height: auto !important;
  }
  .hd_pops_footer {
    font-size: 2.6vw !important;
  }
  .main_small_title {
    font-size: 3.1vw;
    line-height: 4.7vw;
  }
}
