@charset "UTF-8";
.swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.container {
  display: none !important;
}

.sub {
  height: calc(var(--px) * 920);
  background-size: cover;
  justify-content: flex-end;
  background-color: #05130B;
  background-position: center;
}

.sub_tt01 {
  font-size: calc(var(--px) * 25);
  color: #84B952;
  font-family: "cofo-raffine", sans-serif;
  font-weight: 900;
}

.sub_tt02 {
  width: unset !important;
  height: calc(var(--px) * 41);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 1.5vw;
  margin-bottom: 2vw;
  font-size: calc(var(--px) * 55);
  font-weight: 800;
  color: #fff;
}
.sub_tt02 > img {
  width: unset !important;
  height: 100%;
}

.sub_tt03 {
  font-size: calc(var(--px) * 24);
  font-weight: 500;
  color: #fff;
  text-align: center;
  line-height: 1.5;
}
.sub_tt03 br.mobile-pc {
  display: block;
}
.sub_tt03.sub_tt03_mo br.mobile-pc {
  display: none;
}

.sub_circle {
  width: 56.798%;
  aspect-ratio: 1082/1081;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-bottom: -42%;
  margin-top: 6vw;
}
.sub_circle > img {
  animation-duration: 40s;
}

@keyframes sub_arrow_scroll {
  0% {
    transform: translateY(-0.4vw);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    transform: translateY(0.8vw);
    opacity: 0;
  }
}
.sub_arrow {
  width: 3.8818%;
  aspect-ratio: 42/52;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  top: 8%;
  filter: brightness(0) saturate(100%) invert(52%) sepia(53%) saturate(365%) hue-rotate(46deg) brightness(97%) contrast(88%);
  animation: sub_arrow_scroll 1.6s ease-in-out infinite;
}

.sub_site_map {
  flex-direction: row;
  justify-content: flex-start;
  height: calc(var(--px) * 82);
  background-color: #fff;
  border: 1px solid #D2D2D2;
  box-sizing: border-box;
  gap: 1.5vw;
}

.sub_site_map_01 {
  width: 1.31382%;
  aspect-ratio: 25/24;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-left: 10%;
}

.sub_site_map_arrow {
  width: 0.36794%;
  aspect-ratio: 7/13;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.sub_site_map_tt {
  font-size: calc(var(--px) * 16);
  font-weight: 500;
  color: #05130B;
  text-transform: uppercase;
}

@media screen and (max-width: 599px) {
  .sub {
    height: 100vw;
  }
  .sub_tt01 {
    font-size: 3.5vw;
  }
  .sub_tt02 {
    height: 8vw;
    font-size: 8vw;
    margin-top: 3vw;
    margin-bottom: 4vw;
  }
  .sub_tt03 {
    font-size: 4vw;
    text-align: center;
  }
  .sub_tt03 br.mobile-pc {
    display: block !important;
  }
  .sub_circle {
    width: 80.2%;
    margin-top: 10vw;
    margin-bottom: -50%;
  }
  .sub_arrow {
    width: 7.2%;
    top: 10.2%;
  }
  .sub_site_map {
    height: 14vw;
    gap: 3vw;
  }
  .sub_site_map_01 {
    width: 5.2%;
    margin-left: 5.2%;
  }
  .sub_site_map_arrow {
    width: 1.8%;
  }
  .sub_site_map_tt {
    font-size: 3.3vw;
  }
}
.con02 {
  background: #fff;
}
.con02 .con02_head {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
}
.con02 .head_title {
  font-size: calc(var(--px) * 44);
  line-height: 1.14;
  color: #05130b;
  letter-spacing: -0.025em;
  text-align: center;
}
.con02 .head_title b {
  font-weight: 800;
}
.con02 .head_title .m {
  font-weight: 500;
}
.con02 .head_title .eb {
  font-weight: 800;
}
.con02 .head_desc {
  margin-top: 2.35vw;
  font-size: calc(var(--px) * 18);
  line-height: 1.6;
  font-weight: 500;
  color: #282828;
  letter-spacing: -0.025em;
  text-align: center;
}
.con02 .head_desc .m {
  font-weight: 500;
}
.con02 .head_desc .eb {
  font-weight: 800;
}
.con02 .con02_body {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
}
.con02 .con02_left {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50.18%;
  height: 43.5vw;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.con02 .con02_right {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background: #fff;
  box-sizing: border-box;
}
.con02 .right_eyebrow {
  font-size: calc(var(--px) * 26);
  line-height: 1.4;
  font-weight: 500;
  color: #ee5e50;
  letter-spacing: -0.025em;
}
.con02 .right_title {
  margin-top: 1.15vw;
  font-size: calc(var(--px) * 44);
  line-height: 1;
  font-weight: 500;
  color: #05130b;
  letter-spacing: -0.025em;
}
.con02 .right_title b {
  font-weight: 800;
}
.con02 .right_title .m {
  font-weight: 500;
}
.con02 .right_title .eb {
  font-weight: 800;
}
.con02 .right_desc {
  margin-top: 1.67vw;
  font-size: calc(var(--px) * 18);
  line-height: 1.61;
  font-weight: 500;
  color: #05130b;
  letter-spacing: -0.025em;
}
.con02 .right_desc b {
  font-weight: 800;
}
.con02 .right_desc2 {
  margin-top: 1.67vw;
}

.gcon03 {
  display: flex;
  width: 100%;
  padding-top: 5.56vw;
}

.gcon03_body {
  display: flex;
  flex-direction: row;
  width: 100%;
}

.gcon03_left,
.gcon03_right {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 50%;
  aspect-ratio: 960/835;
  padding-top: 9.24vw;
  background-size: cover;
  background-position: center;
}

.gcon03_left {
  background-color: #130e0e;
  background-image: url(/images/gcon03_01.png);
}

.gcon03_right {
  background-color: #f9efec;
  background-image: url(/images/gcon03_04.png);
}

.gcon03_num {
  display: flex;
  justify-content: center;
  align-items: center;
}

.gcon03_num_01 {
  width: calc(var(--px) * 59);
  aspect-ratio: 59/47;
}

.gcon03_num_02 {
  width: calc(var(--px) * 66);
  aspect-ratio: 66/47;
}

.gcon03_title {
  margin-top: 1.88vw;
  font-size: calc(var(--px) * 28);
  line-height: 1.29;
  font-weight: 800;
  letter-spacing: -0.025em;
  text-align: center;
  white-space: nowrap;
}

.gcon03_left .gcon03_title {
  color: #fff;
}

.gcon03_right .gcon03_title {
  color: #ee5e50;
}

.gcon03_desc {
  margin-top: 1.57vw;
  font-size: calc(var(--px) * 18);
  line-height: 1.61;
  font-weight: 500;
  letter-spacing: -0.025em;
  text-align: center;
}

.gcon03_left .gcon03_desc {
  color: #fff;
}

.gcon03_right .gcon03_desc {
  color: #b47771;
}

.gcon03_core {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.72vw;
  width: calc(var(--px) * 544);
  aspect-ratio: 544/207;
}

.gcon04 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding-top: 5.7vw; /* (3497-3388)/1915 */
  padding-bottom: 3.5vw; /* (5759-5654)/1915 */
  background: #200f0d;
}

.c4_kp {
  font-size: calc(var(--px) * 30);
  line-height: 1;
  font-weight: 700;
  font-family: "CoFoRaffine-Bold", serif;
  color: #ffffff;
  letter-spacing: 0em;
  text-align: center;
}

/* ----- Card 2 ----- */
.c4b {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: calc(var(--px) * 1560); /* 1563/1915 */
  margin-top: 4vw; /* 19/1915 */
  gap: 1vw;
}

.gcon04_card {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
}

.gcon04_card02 {
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  padding-top: 4vw; /* 76/1915 */
  padding-bottom: 3.3vw; /* 64/1915 */
}

.c4b_eye {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--px) * 111);
  aspect-ratio: 111/23;
}

.c4b_title {
  margin-top: 0.9vw; /* 18/1915 */
  font-size: calc(var(--px) * 38);
  line-height: 1.211;
  font-weight: 500;
  color: #282828;
  font-family: "Pretendard Variable", sans-serif;
  letter-spacing: -0.025em;
  text-align: center;
}

.c4b_body {
  margin-top: 0.7vw;
  font-size: calc(var(--px) * 18);
  line-height: 1.611;
  font-weight: 500;
  color: #585858;
  font-family: "Pretendard Variable", sans-serif;
  letter-spacing: -0.025em;
  text-align: center;
}

.c4b_row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 1.3vw; /* 25/1915 */
  width: 74.6%; /* 1166/1563 */
}

.c4b_eff {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.c4b_e1 .c4b_eff_img {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--px) * 226);
  aspect-ratio: 226/196;
}

.c4b_e2 .c4b_eff_img {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--px) * 247);
  aspect-ratio: 247/226;
}

.c4b_e3 .c4b_eff_img {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--px) * 226);
  aspect-ratio: 226/226;
}

.c4b_e4 .c4b_eff_img {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--px) * 241);
  aspect-ratio: 241/226;
}

.c4b_eff_cap {
  font-size: calc(var(--px) * 17);
  line-height: 1.412;
  font-weight: 500;
  color: #585858;
  font-family: "Pretendard Variable", sans-serif;
  letter-spacing: -0.025em;
  text-align: center;
}

.c4b_e1 .c4b_eff_cap {
  margin-top: 1.5vw;
}

.c4b_e2 .c4b_eff_cap {
  margin-top: 1.1vw;
}

.c4b_e3 .c4b_eff_cap {
  margin-top: 0.9vw;
}

.c4b_e4 .c4b_eff_cap {
  margin-top: 0.9vw;
}

/* ----- Disclaimer ----- */
.c4_dis {
  margin-top: 3.2vw;
  font-size: calc(var(--px) * 18);
  line-height: 1.611;
  font-weight: 500;
  color: #a38481;
  font-family: "Pretendard Variable", sans-serif;
  letter-spacing: -0.025em;
  text-align: center;
}

.gcon04_card_row {
  width: 50%;
  aspect-ratio: 780/624;
  display: flex;
  justify-content: center;
  align-items: center;
}

.gcon04_card01 .gcon04_card_row01 {
  background-image: url(/images/gcon04_02.png);
  background-size: cover;
  gap: 3vw;
}

.gcon04_card03 .gcon04_card_row01 {
  background-image: url(/images/gcon04_19.png);
  background-size: cover;
}

.gcon04_03 {
  width: calc(var(--px) * 218);
  height: calc(var(--px) * 260);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 8%;
}

.gcon04_09 {
  width: calc(var(--px) * 341);
  height: calc(var(--px) * 260);
  display: flex;
  justify-content: center;
  align-items: center;
}

.gcon04_card01_item_top {
  width: calc(var(--px) * 183);
  aspect-ratio: 183/50;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  top: -22%;
}

.gcon04_card01_item_bot {
  height: calc(var(--px) * 20);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  bottom: -7%;
}
.gcon04_card01_item_bot > img {
  width: unset !important;
  height: 100%;
}

.gcon04_08 {
  width: 22.4772%;
  aspect-ratio: 49/14;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.gcon04_12 {
  width: 14.793%;
  aspect-ratio: 50/14;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.gcon04_card01_item_bot_mm {
  top: 100%;
}

.gcon04_card01_item_left {
  width: 9.17441%;
  aspect-ratio: 20/226;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  right: 107%;
}

.gcon04_06 {
  width: 70%;
  aspect-ratio: 14/49;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  right: 100%;
}

.gcon04_20 {
  width: 52.9488%;
  aspect-ratio: 413/388;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

/* ----- Card 1 / Card 3 row02 (텍스트 영역) ----- */
.gcon04_card_row02 {
  /* width, display:flex 는 공통 base .gcon04_card_row 에서 받음 */
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding-top: 9.5vw; /* (3794-3612)/1915 — eyebrow top */
  padding-left: 4.2vw; /* (1043-962)/1915 — text 좌측 시작 */
  box-sizing: border-box;
}

.c4a_eye {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--px) * 109);
  aspect-ratio: 109/23;
}

.c4c_eye {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--px) * 114);
  aspect-ratio: 114/23;
}

.c4a_title,
.c4c_title {
  margin-top: 0.9vw; /* 18/1915 */
  font-size: calc(var(--px) * 38);
  line-height: 1.211;
  font-weight: 500;
  color: #282828;
  font-family: "Pretendard Variable", sans-serif;
  letter-spacing: -0.025em;
}
.c4a_title b,
.c4c_title b {
  font-weight: 800;
}

.c4a_body,
.c4c_body {
  font-size: calc(var(--px) * 18);
  line-height: 1.611;
  font-weight: 500;
  color: #585858;
  font-family: "Pretendard Variable", sans-serif;
  letter-spacing: -0.025em;
}
.c4a_body b,
.c4c_body b {
  font-weight: 800;
}

.c4a_body_a {
  margin-top: 2.2vw;
} /* 43/1915 — title bottom ~ body 1줄 */
.c4a_body_b {
  margin-top: 1.5vw;
} /* 29/1915 — 빈 줄(line-height) 효과 */
.c4c_body {
  margin-top: 2.6vw;
} /* 49/1915 — title bottom ~ body */
.gcon05 {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 11.4vw;
  padding-bottom: 11.85vw;
  background: #fff;
}

.gcon05_eyebrow_img {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--px) * 171);
  aspect-ratio: 171/18;
}

.gcon05_title {
  margin-top: 1.5vw;
  font-size: calc(var(--px) * 44);
  line-height: 1;
  font-weight: 500;
  color: #05130b;
  letter-spacing: -0.025em;
  text-align: center;
}
.gcon05_title b {
  font-weight: 800;
}

.gcon05_subtitle {
  margin-top: 1.6vw;
  font-size: calc(var(--px) * 18);
  line-height: 1.61;
  font-weight: 500;
  color: #05130b;
  letter-spacing: -0.025em;
  text-align: center;
}

.gcon05_list {
  display: flex;
  flex-direction: column;
  width: 75.3%;
  margin-top: 4.4vw;
}

.gcon05_row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-left: 10.7%;
  padding-right: 8.5%;
  box-sizing: border-box;
}

.gcon05_row_2 {
  margin-top: 1.1vw;
}

.gcon05_item {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 40%;
  justify-content: flex-start;
}

.gcon05_item_l .gcon05_desc {
  margin-left: 3.2vw;
}

.gcon05_item_r .gcon05_desc {
  margin-left: 2.9vw;
}

.gcon05_desc {
  width: 50%;
  font-size: calc(var(--px) * 18);
  line-height: 1.61;
  font-weight: 500;
  color: #05130b;
  letter-spacing: -0.025em;
  white-space: nowrap;
}

.gcon05_num {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "playfair-display", serif;
  font-weight: 700;
  font-size: calc(var(--px) * 28);
  letter-spacing: -0.025em;
  line-height: 1;
  color: #ee5e50;
  margin-top: -0.7vw;
}

.gcon05_line {
  width: 100%;
  background: #b4b8b5;
}

.gcon05_line_1 {
  height: 1px;
  margin-top: 1.25vw;
}

.gcon05_line_2 {
  height: 1px;
  margin-top: 1.41vw;
}

.gcon07 {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding-top: 8.6vw;
  padding-bottom: 6.9vw;
  background: #ffffff;
}

.gcon07_head {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.gcon07_eyebrow {
  font-size: calc(var(--px) * 24);
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1;
  color: #ee5e50;
  text-align: center;
}

.gcon07_title {
  margin-top: 1.5vw;
  font-size: calc(var(--px) * 44);
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 1;
  color: #05130b;
  font-family: "Pretendard Variable", sans-serif;
  text-align: center;
}
.gcon07_title b {
  font-weight: 800;
}

.gcon07_list {
  display: flex;
  flex-direction: column;
  width: 75.4%;
  margin-top: 3.1vw;
}

.gcon07_row {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
  padding-left: 10.7%;
  line-height: 3.6vw;
  border-bottom: 1px solid #b4b8b5;
  box-sizing: border-box;
}

.gcon07_num {
  display: inline-block;
  width: 5.8%;
  font-size: calc(var(--px) * 28);
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 3.6vw;
  color: #ee5e50;
  font-family: "playfair-display", serif;
  margin-top: -0.7vw;
}

.gcon07_text {
  width: 36.3%;
  font-size: calc(var(--px) * 18);
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 3.6vw;
  color: #05130b;
  font-family: "Pretendard Variable", sans-serif;
  white-space: nowrap;
}

.gcon06 {
  padding-top: 8.09vw;
  padding-bottom: 11.28vw;
  background: #f9f2f1;
}

.gcon06_top {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.gcon06_faq_img {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--px) * 40);
  aspect-ratio: 40/21;
}

.gcon06_title {
  margin-top: 1.31vw;
  font-size: calc(var(--px) * 44);
  line-height: 0.82;
  color: #05130b;
  letter-spacing: -0.025em;
  text-align: center;
}
.gcon06_title .m {
  font-weight: 500;
}
.gcon06_title .eb {
  font-weight: 800;
}

.gcon06_grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 2.61vw;
  width: 73.3%;
  row-gap: 1.2vw;
}

.gcon06_card_img {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--px) * 682);
  aspect-ratio: 682/334;
}

/* gcon08 */
.gcon08 {
  padding-top: 7vw;
  padding-bottom: 7vw;
  background-color: #200F0D;
}

.gcon08_01 {
  width: 7.87412%;
  aspect-ratio: 150/18;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-bottom: 1vw;
}

.gcon08_tt01 {
  font-weight: 500;
  font-size: calc(var(--px) * 44);
  margin-bottom: 2vw;
}

.gcon08_video {
  width: calc(var(--px) * 1278);
  aspect-ratio: 1278/719;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: #585858;
}
.gcon08_video iframe {
  pointer-events: all;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 599px) {
  /* ----- gcon03 — 01/02 2-col ----- */
  .gcon03 {
    padding-top: 0;
  }
  .gcon03_body {
    flex-direction: column;
  }
  .gcon03_left,
  .gcon03_right {
    width: 100%;
    aspect-ratio: 960/698;
    padding-top: 12vw;
    padding-bottom: 12vw;
    background-position: top;
  }
  .gcon03_num_01 {
    width: 10vw;
    aspect-ratio: 59/47;
  }
  .gcon03_num_02 {
    width: 11vw;
    aspect-ratio: 66/47;
  }
  .gcon03_title {
    margin-top: 3vw;
    font-size: 5vw;
    line-height: 1.3;
    white-space: normal;
  }
  .gcon03_desc {
    margin-top: 3vw;
    font-size: 3.3vw;
    line-height: 1.6;
    padding: 0 5%;
    box-sizing: border-box;
  }
  .gcon03_core {
    margin-top: 4vw;
    width: 70vw;
    aspect-ratio: 544/207;
  }
  /* ----- gcon04 — Key Point 3-카드 ----- */
  .gcon04 {
    padding-top: 12vw;
    padding-bottom: 12vw;
  }
  .c4_kp {
    font-size: 5vw;
  }
  .c4b {
    width: 92%;
    margin-top: 6vw;
    gap: 4vw;
  }
  /* Card 1 / Card 3 — row01 + row02 세로 스택 */
  .gcon04_card01,
  .gcon04_card03 {
    flex-direction: column;
  }
  .gcon04_card_row {
    width: 100%;
    aspect-ratio: auto;
  }
  .gcon04_card01 .gcon04_card_row01,
  .gcon04_card03 .gcon04_card_row01 {
    aspect-ratio: 780/500;
    background-size: cover;
  }
  .gcon04_card01 .gcon04_card_row02,
  .gcon04_card03 .gcon04_card_row02 {
    padding: 8vw 6%;
    align-items: center;
    text-align: center;
  }
  .gcon04_03 {
    width: 28vw;
    height: auto;
    aspect-ratio: 228/228;
    margin-left: 0;
  }
  .gcon04_09 {
    width: 38vw;
    height: auto;
    aspect-ratio: 341/260;
  }
  .gcon04_card01_item_top {
    width: 22vw;
    aspect-ratio: 183/50;
  }
  .gcon04_card01_item_bot {
    height: 2.5vw;
  }
  /* Card 1/3 텍스트 */
  .c4a_eye {
    width: 16vw;
    aspect-ratio: 109/23;
  }
  .c4c_eye {
    width: 17vw;
    aspect-ratio: 114/23;
  }
  .c4a_title,
  .c4c_title {
    margin-top: 3vw;
    font-size: 5vw;
    line-height: 1.3;
    text-align: center;
  }
  .c4a_body,
  .c4c_body {
    font-size: 3.3vw;
    line-height: 1.6;
    text-align: center;
  }
  .c4a_body_a {
    margin-top: 4vw;
  }
  .c4a_body_b {
    margin-top: 3vw;
  }
  .c4c_body {
    margin-top: 4vw;
  }
  /* Card 2 — 텍스트 + effector 4개 */
  .gcon04_card02 {
    padding-top: 10vw;
    padding-bottom: 10vw;
  }
  .c4b_eye {
    width: 17vw;
    aspect-ratio: 111/23;
  }
  .c4b_title {
    margin-top: 3vw;
    font-size: 5vw;
    line-height: 1.3;
  }
  .c4b_body {
    margin-top: 3vw;
    font-size: 3.3vw;
    line-height: 1.6;
    padding: 0 12%;
    box-sizing: border-box;
  }
  .c4b_row {
    margin-top: 6vw;
    width: 92%;
    flex-wrap: wrap;
    justify-content: space-around;
    row-gap: 5vw;
  }
  .c4b_eff {
    width: 45%;
  }
  .c4b_e1 .c4b_eff_img {
    width: 30vw;
    aspect-ratio: 226/196;
  }
  .c4b_e2 .c4b_eff_img {
    width: 33vw;
    aspect-ratio: 247/226;
  }
  .c4b_e3 .c4b_eff_img {
    width: 30vw;
    aspect-ratio: 226/226;
  }
  .c4b_e4 .c4b_eff_img {
    width: 32vw;
    aspect-ratio: 241/226;
  }
  .c4b_eff_cap {
    font-size: 3.3vw;
    line-height: 1.5;
  }
  .c4b_e1 .c4b_eff_cap,
  .c4b_e2 .c4b_eff_cap,
  .c4b_e3 .c4b_eff_cap,
  .c4b_e4 .c4b_eff_cap {
    margin-top: 3vw;
  }
  /* Disclaimer */
  .c4_dis {
    margin-top: 8vw;
    width: 90%;
    font-size: 3.3vw;
    line-height: 1.6;
  }
  /* ----- gcon05 — 추천대상 ----- */
  .gcon05 {
    padding-top: 14vw;
    padding-bottom: 14vw;
  }
  .gcon05_eyebrow_img {
    width: 25vw;
    aspect-ratio: 171/18;
  }
  .gcon05_title {
    margin-top: 3vw;
    font-size: 5.5vw;
    line-height: 1.2;
  }
  .gcon05_subtitle {
    margin-top: 3vw;
    font-size: 3.3vw;
    line-height: 1.6;
    padding: 0 5%;
    box-sizing: border-box;
  }
  .gcon05_list {
    margin-top: 8vw;
    width: 90%;
  }
  .gcon05_row {
    flex-direction: column;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
  }
  .gcon05_row_2 {
    margin-top: 0vw;
  }
  .gcon05_item {
    width: 100%;
    justify-content: center;
    padding-top: 4vw;
    padding-bottom: 4vw;
    border-bottom: 1px solid #b4b8b5;
    flex-direction: column;
    gap: 3vw;
  }
  .gcon05_item_l .gcon05_desc,
  .gcon05_item_r .gcon05_desc {
    margin-left: 0vw;
  }
  .gcon05_desc {
    width: auto;
    font-size: 3.3vw;
    line-height: 1.5;
    white-space: normal;
    text-align: center;
  }
  .gcon05_num {
    font-size: 4.2vw;
    margin-top: -1.5vw;
  }
  .gcon05_line_1,
  .gcon05_line_2 {
    display: none;
  }
  /* ----- gcon07 — 시술 후 주의사항 ----- */
  .gcon07 {
    padding-top: 14vw;
    padding-bottom: 12vw;
  }
  .gcon07_eyebrow {
    font-size: 3.5vw;
  }
  .gcon07_title {
    margin-top: 3vw;
    font-size: 5.5vw;
    line-height: 1.2;
  }
  .gcon07_list {
    margin-top: 6vw;
    width: 90%;
  }
  .gcon07_row {
    flex-direction: row;
    align-items: flex-start;
    padding: 3vw 0;
    line-height: 1.6;
    box-sizing: border-box;
  }
  .gcon07_num {
    width: 9vw;
    font-size: 4.2vw;
    line-height: 1.6;
    margin-top: -1.5vw;
  }
  .gcon07_text {
    width: auto;
    flex: 1;
    font-size: 3.3vw;
    line-height: 1.6;
    white-space: normal;
  }
  /* ----- gcon06 — FAQ 2x2 → stack ----- */
  .gcon06 {
    padding-top: 14vw;
    padding-bottom: 14vw;
  }
  .gcon06_faq_img {
    width: 8vw;
    aspect-ratio: 40/21;
  }
  .gcon06_title {
    margin-top: 3vw;
    font-size: 5.5vw;
    line-height: 1.2;
  }
  .gcon06_grid {
    margin-top: 6vw;
    width: 94%;
    flex-direction: column;
    row-gap: 3vw;
  }
  .gcon06_card_img {
    width: 100%;
    aspect-ratio: 682/334;
  }
  /* ----- gcon08 — 영상 ----- */
  .gcon08 {
    padding-top: 12vw;
    padding-bottom: 12vw;
  }
  .gcon08_01 {
    width: 25vw;
    aspect-ratio: 150/18;
    margin-bottom: 3vw;
  }
  .gcon08_tt01 {
    font-size: 5.5vw;
    margin-bottom: 5vw;
    text-align: center;
  }
  .gcon08_video {
    width: 90%;
    aspect-ratio: 1278/719;
  }
}
/* sub06 */
.hcon10 {
  padding-top: 6vw;
  padding-bottom: 8vw;
}

.hcon10_01 {
  width: 6.87674%;
  aspect-ratio: 131/19;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.hcon10_title {
  font-size: calc(var(--px) * 44);
  font-weight: 500;
  margin-top: 1vw;
}

.hcon10_mid {
  width: calc(var(--px) * 1073);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #F7FBF2;
  padding-top: 1.5vw;
  padding-bottom: 2.5vw;
  margin-top: 1.5vw;
}

.hcon10_mid_tt01 {
  font-size: calc(var(--px) * 18);
  font-weight: 500;
  line-height: 1.5;
  margin-top: 1vw;
}

.hcon10_mid_tt02 {
  font-size: calc(var(--px) * 13);
  font-weight: 500;
  margin-top: 0.7vw;
}

.hcon10_tab_wrap {
  border-bottom: 1px solid #71994B;
  height: 4vw;
  gap: 6vw;
  margin-top: 1vw;
  margin-bottom: 2vw;
}

.hcon10_tab {
  cursor: pointer;
  width: 7.5vw;
  height: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: calc(var(--px) * 22);
  font-weight: 500;
  transition: font-weight 0.3s;
}

.hcon10_tab_line {
  width: 0%;
  height: calc(var(--px) * 5);
  display: flex;
  justify-content: center;
  align-items: center;
  bottom: 0%;
  background-color: #71994B;
  transition: width 0.3s;
}

.hcon10_tab.hcon10_active {
  font-weight: 800;
}
.hcon10_tab.hcon10_active .hcon10_tab_line {
  width: 100%;
}

.hcon10_slide {
  top: 0%;
  width: calc(var(--px) * 1078);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
  transition: transform 0.3s, opacity 0.3s;
}
.hcon10_slide.hcon10_active {
  opacity: 1;
  transform: translateY(0);
  pointer-events: all;
}
.hcon10_slide.absol {
  position: absolute;
}

.hcon10_slide_row {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.hcon10_slide_item {
  width: calc(var(--px) * 533);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.hcon10_slide_img {
  aspect-ratio: 533/302;
}
.hcon10_slide_img > img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.hcon10_slide_tt {
  height: calc(var(--px) * 77);
  color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: calc(var(--px) * 18);
  font-weight: 500;
  padding: 0 2vw;
}

.hcon10_slide_tt_before {
  background-color: #05130B;
}

.hcon10_slide_tt_after {
  background-color: #71994B;
}

.hcon10_08 {
  width: 15.1052%;
  aspect-ratio: 69/21;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.hcon10_11 {
  width: 12.6971%;
  aspect-ratio: 58/21;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.hcon10_arr {
  width: 2.46729%;
  aspect-ratio: 47/38;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.hcon10_arr_prev {
  left: 17.5%;
}

.hcon10_arr_next {
  right: 17.5%;
}

@media (max-width: 599px) {
  /* ----- hcon10 — 시술 전후 사진 (탭 + 슬라이드) ----- */
  .hcon10 {
    padding-top: 14vw;
    padding-bottom: 20vw;
  }
  .hcon10_01 {
    width: 24vw;
    aspect-ratio: 131/19;
  }
  .hcon10_title {
    font-size: 5.5vw;
    line-height: 1.3;
    margin-top: 3.5vw;
  }
  .hcon10_mid {
    width: 90.2%;
    padding-top: 6vw;
    padding-bottom: 7vw;
    margin-top: 6vw;
  }
  .hcon10_03 {
    width: 9vw;
    aspect-ratio: 60/60;
  }
  .hcon10_mid_tt01 {
    font-size: 3.3vw;
    line-height: 1.6;
    margin-top: 3vw;
    padding: 0;
    box-sizing: border-box;
  }
  .hcon10_mid_tt02 {
    font-size: 3.3vw;
    line-height: 1.5;
    margin-top: 3vw;
  }
  .hcon10_tab_wrap {
    height: auto;
    gap: 4vw;
    margin-top: 7vw;
    margin-bottom: 7vw;
  }
  .hcon10_tab {
    width: 38vw;
    padding: 3.2vw 0;
    font-size: 4vw;
  }
  .hcon10_tab_line {
    height: 0.6vw;
  }
  .hcon10_slide {
    width: 92vw;
  }
  .hcon10_slide_row {
    flex-direction: column;
    gap: 5vw;
  }
  .hcon10_slide_item {
    width: 100%;
  }
  .hcon10_slide_tt {
    height: 13vw;
    font-size: 3.3vw;
    padding: 0 5vw;
  }
  .hcon10_arr {
    display: flex;
    width: 8vw;
    top: auto;
    bottom: -10vw;
  }
  .hcon10_arr_prev {
    left: 39.2%;
  }
  .hcon10_arr_next {
    right: 39.2%;
  }
}
/* sub07 */
.icon06 {
  padding-top: 7vw;
  background-color: #FCF7EE;
}

.icon06_01 {
  width: 7.29669%;
  aspect-ratio: 139/18;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.icon06_tt01 {
  font-size: calc(var(--px) * 44);
  font-weight: 500;
  margin-top: 1vw;
}

.icon06_tt02 {
  font-size: calc(var(--px) * 18);
  font-weight: 500;
  margin-top: 1vw;
}

.icon06_03 {
  width: 34.6983%;
  aspect-ratio: 661/871;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-top: 1vw;
  margin-left: 1%;
}

.icon06_line {
  display: flex;
  align-items: center;
  gap: 0.9vw;
}

.icon06_line_l {
  gap: 0.8vw;
}

.icon06_line_tt {
  font-size: calc(var(--px) * 18);
  font-weight: 500;
  line-height: 1;
  color: #05130b;
  letter-spacing: -0.025em;
  white-space: nowrap;
}

.icon06_line_img {
  width: calc(var(--px) * 113);
  aspect-ratio: 113/10;
  display: flex;
  justify-content: center;
  align-items: center;
}

.icon06_line01 .icon06_line_img {
  width: calc(var(--px) * 327);
  aspect-ratio: 327/10;
}

.icon06_line02 .icon06_line_img {
  width: calc(var(--px) * 327);
  aspect-ratio: 327/10;
}

.icon06_line01 {
  top: 20.5vw;
  left: -9.8%;
}

.icon06_line02 {
  top: 26.2vw;
  left: -15.6%;
}

.icon06_line03 {
  top: 9.5vw;
  left: 63.8%;
}

.icon06_line04 {
  top: 12.6vw;
  left: 75.5%;
}

.icon06_line05 {
  top: 15.5vw;
  left: 76.9%;
}

.icon06_line06 {
  top: 19vw;
  left: 76.9%;
}

.icon06_line07 {
  top: 21.3vw;
  left: 74%;
}

.icon06_line08 {
  top: 32.7vw;
  left: 59.9%;
}

.icon06_02 {
  width: 87.8741%;
  aspect-ratio: 1674/193;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  top: 43%;
}

.icon09 {
  height: calc(var(--px) * 947);
  background-image: url(/images/icon09_01.png);
}

.icon09_left_tt01 {
  font-size: calc(var(--px) * 24);
  font-weight: 500;
}

.icon09_left_tt02 {
  font-size: calc(var(--px) * 44);
  font-weight: 500;
  margin-top: 0.5vw;
}

.icon09_left {
  left: 11%;
  top: 21%;
}

.icon09_right {
  font-size: calc(var(--px) * 18);
  font-weight: 500;
  line-height: 1.6;
  right: 13%;
  bottom: 18%;
  text-align: end;
}

.icon09_right_tt02 {
  margin-top: 1.7vw;
}

.icon09_02 {
  width: 35.3282%;
  aspect-ratio: 673/929;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  bottom: -24%;
}

@media (max-width: 599px) {
  /* ----- icon06 — 울트라콜 200 시술부위 (얼굴 콜아웃) ----- */
  .icon06 {
    padding-top: 14vw;
    padding-bottom: 0;
  }
  .icon06_01 {
    width: 26vw;
    aspect-ratio: 139/18;
  }
  .icon06_tt01 {
    font-size: 5.5vw;
    line-height: 1.3;
    margin-top: 3vw;
    text-align: center;
  }
  .icon06_tt02 {
    font-size: 3.3vw;
    line-height: 1.6;
    margin-top: 3vw;
    text-align: center;
    padding: 0 6%;
    box-sizing: border-box;
  }
  .icon06_02 {
    display: none;
  }
  .icon06_03 {
    width: 56vw;
    margin-top: 14vw;
    margin-left: 0;
  }
  /* 콜아웃 라벨 — PC top(vw)을 이미지 높이 대비 %로 변환, left(%)는 PC 유지 */
  .icon06_line_tt {
    font-size: 3vw;
  }
  .icon06_line_img {
    width: 10vw;
  }
  .icon06_line01 .icon06_line_img,
  .icon06_line02 .icon06_line_img {
    width: 26vw;
  }
  .icon06_line01 {
    top: 44.8%;
    left: -21.8%;
  }
  .icon06_line02 {
    top: 57.3%;
    left: -28.6%;
  }
  .icon06_line03 {
    top: 20.8%;
  }
  .icon06_line04 {
    top: 27.6%;
  }
  .icon06_line05 {
    top: 33.9%;
  }
  .icon06_line06 {
    top: 41.5%;
  }
  .icon06_line07 {
    top: 46.6%;
  }
  .icon06_line08 {
    top: 71.5%;
  }
  /* ----- icon09 — 대표원장 콜라겐 리프팅 ----- */
  .icon09 {
    height: auto;
    padding: 16vw 0 0;
    background-size: cover;
    background-position: center;
  }
  .icon09_left {
    position: relative;
    left: auto;
    top: auto;
    order: 1;
    text-align: center;
    padding: 0 6%;
    box-sizing: border-box;
  }
  .icon09_left_tt01 {
    font-size: 3.5vw;
    line-height: 1.5;
  }
  .icon09_left_tt02 {
    font-size: 5.5vw;
    line-height: 1.3;
    margin-top: 2vw;
  }
  .icon09_02 {
    position: relative;
    bottom: auto;
    order: 4;
    width: 56vw;
    margin-top: 9vw;
    margin-bottom: -17vw;
  }
  .icon09_right {
    position: relative;
    right: auto;
    bottom: auto;
    order: 3;
    margin-top: 6vw;
    font-size: 3.3vw;
    line-height: 1.7;
    text-align: center;
    padding: 0 6%;
    box-sizing: border-box;
  }
  .icon09_right_tt02 {
    margin-top: 4vw;
  }
}
/* lconCommon 공통 */
.lconCommon {
  padding: 7vw 0 10vw;
}

.lconCommon_main {
  width: calc(var(--px) * 1920);
}

.lconCommon_row {
  width: 50%;
  height: calc(var(--px) * 855);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  overflow: hidden;
  box-sizing: border-box;
}

.lconCommon_row01 {
  padding-right: 4vw;
  padding-left: 9vw;
  justify-content: flex-start;
}

.lconCommon_row02 {
  background-color: #585858;
}

.lconCommon_row_top {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  margin-top: calc(var(--px) * 88);
}

.lconCommon_row_top_tt01 {
  font-size: calc(var(--px) * 24);
  font-weight: 700;
  color: #8F75C9;
  font-style: italic;
}

.lconCommon_row_top_tt02 {
  font-size: calc(var(--px) * 26);
  font-weight: 500;
  margin-top: 1vw;
}

.lconCommon_row_top_tt03 {
  font-size: calc(var(--px) * 44);
  font-weight: 800;
  margin-top: 0.3vw;
}

.lconCommon_row_bot {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  flex-direction: column;
  text-align: end;
  margin-top: calc(var(--px) * 99);
}

.lconCommon_row_bot_circle {
  width: calc(var(--px) * 374);
  aspect-ratio: 374/207;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.lconCommon_row_bot_tt01 {
  font-size: calc(var(--px) * 18);
  font-weight: 500;
  color: #E5DCF7;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
  gap: 1.5vw;
  margin-top: 2.5vw;
}

.lconCommon_row_bot_link {
  width: calc(var(--px) * 197);
  aspect-ratio: 197/64;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-top: 2vw;
}

@media (max-width: 599px) {
  /* ----- lconCommon 공통 모바일 (lcon04/04_bot/06/07 등 — 가로 2-row → 세로 스택) ----- */
  .lconCommon {
    padding: 14vw 0 0;
  }
  .lconCommon_main {
    width: 100%;
    flex-direction: column;
  }
  .lconCommon_row {
    width: 100%;
    height: auto;
  }
  .lconCommon_row01 {
    padding-left: 6%;
    padding-right: 6%;
    box-sizing: border-box;
  }
  .lconCommon_row_top {
    margin-top: 0;
    align-items: center;
  }
  .lconCommon_row_top_tt01 {
    font-size: 5.5vw;
  }
  .lconCommon_row_top_tt02 {
    margin-top: 3vw;
    font-size: 3.8vw;
    line-height: 1.4;
    text-align: center;
  }
  .lconCommon_row_top_tt03 {
    margin-top: 2vw;
    font-size: 7vw;
    text-align: center;
  }
  .lconCommon_row_bot {
    align-items: center;
    text-align: center;
    margin-top: 8vw;
  }
  .lconCommon_row_bot_circle {
    width: 60vw;
    aspect-ratio: 374/207;
  }
  .lconCommon_row_bot_tt01 {
    margin-top: 6vw;
    font-size: 3.3vw;
    line-height: 1.6;
    gap: 4vw;
    text-align: center;
  }
  .lconCommon_row_bot_link {
    width: 38vw;
    aspect-ratio: 197/64;
    margin-top: 6vw;
  }
  .lconCommon_row02 {
    height: 90vw;
    margin-top: 10vw;
  }
}
/* lconCommon 공통 */