/* ===== 공통 레이아웃 ===== */
.w1180, .w1720 {width:100%;margin:0 auto;padding:0 20px;box-sizing:border-box}
.w1180 {max-width:1180px}
.w1720 {max-width:1600px}   /* 와이드 기준폭. 헤더(.w2200)·푸터·이벤트(.ev_inner)는 제외 (260917) */
/* ==========================================================
   Freesentation (서브 전용 국문 폰트)
   ========================================================== */

/* ===== 서브 전용 폰트 적용 ===== */
.sv, .sub {font-family:var(--ff-sans)}
.sv .ff_bodoni, .sub .ff_bodoni {font-family:var(--ff-serif)}
/* ===== 서브 비주얼 ===== */
.sv {position:relative;height:46vh;min-height:360px;overflow:hidden;background:#000;color:#fff}
.sv_bg {position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.65}
.sv_dim {position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to right,rgba(0,0,0,.7),rgba(0,0,0,.2),rgba(0,0,0,.5))}
.sv_inner {position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;width:100%;max-width:min(1600px,92vw);height:100%;margin:0 auto;padding:0 32px}
.sv_eng {margin-bottom:12px;font-size:12px;line-height:1.5;letter-spacing:.42em;text-transform:uppercase;color:#ff6a00}
.sv_tit {font-size:84px;font-weight:500;line-height:1;letter-spacing:-.06em}
.sv_desc {max-width:576px;margin-top:20px;font-size:16px;line-height:1.5;color:rgba(255,255,255,.7);word-break:keep-all;text-wrap:pretty}

/* ===== 서브 탭 ===== */
.sub {width:100%;background:#fff;overflow:hidden}
.sub_tabs {display:flex;flex-wrap:wrap;align-items:center;justify-content:center;row-gap:12px;margin:64px auto 56px}
.sub_tab_item {display:flex;align-items:center}
.sub_tab {padding:0 12px;font-size:16px;font-weight:500;line-height:1.5;letter-spacing:-.055em;color:rgba(0,0,0,.75);transition:color .2s}
.sub_tab:hover {color:#ff6a00}
.sub_tab.on {font-weight:700;color:#ff6a00}
.sub_tab_bar {user-select:none;color:rgba(0,0,0,.4)}

/* ===== 서브 콘텐츠 ===== */
.sub_cont {width:100%;scroll-margin-top:112px}
.sub_panel {display:none}
.sub_panel.on {display:block}
.sub_img {display:block;width:100%}
.sub_overlap {position:relative;z-index:10;margin-top:-14.8vw;width:100%}

@media (max-width:1024px){
.sv {height:38vh}
.sv_inner {padding:0 20px}
.sv_tit {font-size:56px}
}

@media (max-width:767px){
.sv {min-height:300px}
.sv_eng {font-size:11px;letter-spacing:.3em}
.sv_tit {font-size:42px}
.sv_desc {margin-top:16px;font-size:14px}
.sub_tabs {margin:40px auto 32px;padding:0 16px}
.sub_tab {padding:9px 8px;font-size:15px}   /* 세로 여백 : 탭 높이 23px → 41px 로 (260826) */
}

/* ===== 에르네 스토리 · Heritage & Renaissance ===== */
.hr {position:relative;padding:100px 0;background:#fff url('/assets/images/sub/sub_01_img0101.jpg') no-repeat center -50px;background-size:1920px auto;text-align:center;overflow:hidden}
.hr_circles {position:relative;z-index:2;display:flex;align-items:center;justify-content:center}
.hr_circle {display:flex;flex-direction:column;align-items:center;justify-content:center;width:400px;height:400px;border:1px solid rgba(0,0,0,.12);border-radius:50%}
.hr_circle:last-child {margin-left:-28px}
.hr_eng {font-size:38px;font-weight:400;line-height:1.2;letter-spacing:-.01em;color:#3a3a3a;white-space:nowrap}
.hr_eng b {font-weight:700;color:#b27a37}
.hr_txt {margin-top:44px;font-size:18px;line-height:1.5;color:#555;word-break:keep-all;text-wrap:pretty}
.hr_bot {position:relative;z-index:2;margin-top:170px}
.hr_label {font-size:16px;font-weight:500;line-height:1.5;color:#ec6c00}
.hr_slogan {margin-top:12px;font-size:27px;font-weight:500;line-height:1.4;letter-spacing:-.02em;color:#3a3a3a;word-break:keep-all;text-wrap:pretty}

/* ===== 등장 모션 ===== */
.hr_circle {opacity:0;transition:opacity 1s ease,transform 1.1s cubic-bezier(.25,.6,.3,1)}
.hr_circle_l {transform:translateX(60px)}
.hr_circle_r {transform:translateX(-60px)}
.hr.show .hr_circle_l, .hr.show .hr_circle_r {opacity:1;transform:translateX(0);background:#fff}
.hr_eng {opacity:0;transform:translateY(16px);transition:opacity .8s ease .5s,transform .8s cubic-bezier(.25,.6,.3,1) .5s}
.hr.show .hr_eng {opacity:1;transform:translateY(0)}
.hr_txt {opacity:0;transform:translateY(16px);transition:opacity .8s ease .7s,transform .8s cubic-bezier(.25,.6,.3,1) .7s}
.hr.show .hr_txt {opacity:1;transform:translateY(0)}
.hr_label {opacity:0;transform:translateY(20px);transition:opacity .8s ease .9s,transform .8s cubic-bezier(.25,.6,.3,1) .9s}
.hr.show .hr_label {opacity:1;transform:translateY(0)}
.hr_slogan {opacity:0;transform:translateY(20px);transition:opacity .8s ease 1.05s,transform .8s cubic-bezier(.25,.6,.3,1) 1.05s}
.hr.show .hr_slogan {opacity:1;transform:translateY(0)}

@media (max-width:1400px){
.hr {padding:120px 0;background-size:1600px auto;background-position:center 160px}
.hr_circle {width:340px;height:340px}
.hr_eng {font-size:32px}
.hr_txt {margin-top:36px;font-size:15px}
.hr_bot {margin-top:140px}
.hr_slogan {font-size:26px}
}

@media (max-width:1024px){
.hr {padding:100px 0;background-size:1300px auto;background-position:center 140px}
.hr_circle {width:290px;height:290px}
.hr_circle:last-child {margin-left:-20px}
.hr_eng {font-size:26px}
.hr_txt {margin-top:28px;font-size:14px}
.hr_bot {margin-top:110px}
.hr_label {font-size:14px}
.hr_slogan {font-size:22px}
}

@media (max-width:767px){
.hr {padding:70px 20px;background-size:900px auto;background-position:center 200px}
.hr_circles {flex-direction:column}
.hr_circle {width:250px;height:250px}
.hr_circle:last-child {margin-top:-24px;margin-left:0}
.hr_circle_l {transform:translateY(30px)}
.hr_circle_r {transform:translateY(-30px)}
.hr.show .hr_circle_l, .hr.show .hr_circle_r {transform:translateY(0)}
.hr_eng {font-size:21px}
.hr_txt {margin-top:20px;font-size:13px}
.hr_bot {margin-top:70px}
.hr_label {font-size:13px}
.hr_slogan {font-size:17px}
}

@media (prefers-reduced-motion:reduce){
.hr_circle, .hr_eng, .hr_txt, .hr_label, .hr_slogan {opacity:1;transform:none;transition:none}
}

/* ===== 에르네 스토리 · Crafting Timeless Beauty ===== */
.ct {padding:100px 0;background:#fff}
.ct_inner {display:grid;grid-template-columns:1fr 1.28fr;align-items:center;gap:100px}
.ct_img_box {overflow:hidden}
.ct_img {display:block;width:100%;height:auto}
.ct_label {font-size:20px;font-weight:400;line-height:1.4;color:#ec6c00}
.ct_tit {margin-top:24px;font-size:96px;font-weight:400;line-height:1.1;letter-spacing:-.02em;color:#111}
.ct_desc {position:relative;margin-top:70px}
.ct_type {font-size:23px;font-weight:400;line-height:1.55;color:#333;word-break:keep-all;text-wrap:pretty;white-space:pre-line}
.ct_type + .ct_type {margin-top:34px}
.ct_type::after {content:'';display:inline-block;width:1px;height:1em;margin-left:2px;background:#333;vertical-align:-2px;opacity:0}
.ct_type.typing::after {opacity:1;animation:ct_caret .8s step-end infinite}
@keyframes ct_caret {0%,100%{opacity:1} 50%{opacity:0}}

/* ===== 등장 모션 ===== */
.ct_img_box {opacity:0;transform:translateX(-70px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.25,.6,.3,1)}
.ct.show .ct_img_box {opacity:1;transform:translateX(0)}
.ct_info {opacity:0;transform:translateX(70px);transition:opacity 1s ease .15s,transform 1.1s cubic-bezier(.25,.6,.3,1) .15s}
.ct.show .ct_info {opacity:1;transform:translateX(0)}

@media (max-width:1400px){
.ct {padding:120px 0}
.ct_inner {gap:70px}
.ct_label {font-size:19px}
.ct_tit {margin-top:20px;font-size:70px}
.ct_desc {margin-top:50px}
.ct_type {font-size:17px}
.ct_type + .ct_type {margin-top:28px}
}

@media (max-width:1024px){
.ct {padding:100px 0}
.ct_inner {grid-template-columns:1fr;gap:44px}
.ct_img_box {transform:translateY(40px)}
.ct_info {transform:translateY(40px)}
.ct.show .ct_img_box, .ct.show .ct_info {transform:translateY(0)}
.ct_label {font-size:17px}
.ct_tit {margin-top:16px;font-size:50px}
.ct_desc {margin-top:36px}
.ct_type {font-size:16px;line-height:1.5}
.ct_type + .ct_type {margin-top:24px}
}

@media (max-width:767px){
.ct {padding:70px 0}
.ct_inner {gap:32px}
.ct_label {font-size:15px}
.ct_tit {font-size:35px}
.ct_desc {margin-top:28px}
.ct_type {font-size:14px;line-height:1.5}
.ct_type + .ct_type {margin-top:20px}
}

@media (prefers-reduced-motion:reduce){
.ct_img_box, .ct_info {opacity:1;transform:none;transition:none}
.ct_type.typing::after {animation:none;opacity:0}
}

/* ==========================================================
   에르네의 원칙
   ========================================================== */
.pr {padding:100px 0;overflow:hidden;background:#fff}
.pr_inner {display:grid;grid-template-columns:1fr 1fr;gap:80px}
.pr_left {padding-top:60px}

/* ===== 항목 ===== */
.pr_item {position:relative;text-align:right}
.pr_item + .pr_item {margin-top:180px}
.pr_num {position:absolute;top:-46px;left:0;font-size:84px;line-height:1;color:#c9c9c9}
.pr_item_c .pr_num {left:20px}
.pr_tit {position:relative;font-size:45px;font-weight:400;line-height:1.3;letter-spacing:-.02em;color:#1a1a1a;word-break:keep-all;text-wrap:pretty}
.pr_desc {margin-top:26px;font-size:20px;line-height:1.55;color:#555;word-break:keep-all;text-wrap:pretty}

/* ===== 원 3개 ===== */
.pr_circles {display:flex;align-items:center;justify-content:flex-start;margin-top:120px}
.pr_circle {display:flex;align-items:center;justify-content:center;width:290px;height:290px;border-radius:50%;background:rgba(240,112,32,.1)}
.pr_circle + .pr_circle {margin-left:-70px}
.pr_circle span {font-size:20px;font-weight:500;color:#fa7f24}

/* ===== 우측 이미지 ===== */
.pr_right {position:relative}
/* 예전에는 높이를 88vh 로 고정하고 아래 사진을 top:78% 에 두었는데,
   사진 높이가 그 안에 들어가지 않아 아래쪽이 .pr 의 overflow:hidden 에
   잘려 나갔다 (1920 에서 428px, 1280 에서 324px). (260917)
   1024 이하에서 이미 쓰고 있던 방식 — 위 사진이 높이를 정하고,
   아래 사진은 바닥에 붙이며, padding-bottom 으로 겹칠 자리를 만드는 —
   을 데스크톱에도 그대로 적용한다. 두 장 모두 온전히 보인다. */
.pr_sticky {position:sticky;top:0;height:auto;min-height:0;padding-bottom:26%}
.pr_vis_a {position:relative;z-index:1;width:60%;margin-left:auto;overflow:hidden}
.pr_vis_b {position:absolute;top:auto;bottom:0;left:2%;z-index:2;width:56%;overflow:hidden}
.pr_vis_a img, .pr_vis_b img {display:block;width:100%;height:auto}

/* ===== 등장 모션 ===== */
.pr_item, .pr_circles {opacity:0;transform:translateY(50px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.pr_item.show, .pr_circles.show {opacity:1;transform:translateY(0)}
.pr_num {opacity:0;transform:translateY(24px) scale(.94);transition:opacity .9s ease .15s,transform .9s cubic-bezier(.25,.6,.3,1) .15s}
.pr_item.show .pr_num {opacity:1;transform:translateY(0) scale(1)}
.pr_desc {opacity:0;transform:translateY(20px);transition:opacity .8s ease .35s,transform .8s cubic-bezier(.25,.6,.3,1) .35s}
.pr_item.show .pr_desc {opacity:1;transform:translateY(0)}
.pr_circle {opacity:0;transform:scale(.86);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.pr_circles.show .pr_circle {opacity:1;transform:scale(1)}
.pr_circles.show .pr_circle:nth-child(2) {transition-delay:.15s}
.pr_circles.show .pr_circle:nth-child(3) {transition-delay:.3s}
.pr_vis_a, .pr_vis_b {opacity:0;transform:translateY(60px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.25,.6,.3,1)}
.pr_vis_a.on, .pr_vis_b.on {opacity:1;transform:translateY(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.pr {padding:120px 0}
.pr_inner {gap:50px}
.pr_item {padding-left:90px}
.pr_item + .pr_item {margin-top:130px}
.pr_num {top:-34px;font-size:63px}
.pr_tit {font-size:38px}
.pr_desc {margin-top:20px;font-size:15px}
.pr_circles {margin-top:90px}
.pr_circle {width:220px;height:220px}
.pr_circle + .pr_circle {margin-left:-52px}
.pr_circle span {font-size:18px}
.pr_sticky {top:100px;height:auto;min-height:0;padding-bottom:26%}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.pr {padding:100px 0}
.pr_inner {grid-template-columns:1fr;gap:50px}
.pr_left {padding-top:0}
.pr_item {padding-left:70px;text-align:left}
.pr_item + .pr_item {margin-top:90px}
.pr_item_c .pr_num {left:0}
.pr_num {top:-26px;font-size:49px}
.pr_tit {font-size:30px}
.pr_desc {font-size:14px}
.pr_desc br {display:none}
.pr_circles {justify-content:center;margin-top:60px}
.pr_circle {width:180px;height:180px}
.pr_circle + .pr_circle {margin-left:-40px}
.pr_circle span {font-size:16px}
.pr_right {order:-1}
.pr_sticky {position:relative;top:0;height:auto;min-height:0;padding-bottom:30%}
.pr_vis_a {position:relative;width:62%;margin-left:auto}
.pr_vis_b {position:absolute;top:auto;bottom:0;left:2%;width:56%}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.pr {padding:70px 0}
.pr_item {padding-top:44px;padding-left:0}
.pr_item + .pr_item {margin-top:70px}
.pr_num {top:0;left:0;font-size:38px}
.pr_item_c .pr_num {left:0}
.pr_tit {font-size:23px}
.pr_desc {margin-top:16px;font-size:13px;line-height:1.5}
.pr_circles {margin-top:50px}
.pr_circle {width:125px;height:125px}
.pr_circle + .pr_circle {margin-left:-28px}
.pr_circle span {font-size:13px}
.pr_sticky {padding-bottom:34%}
.pr_vis_a {width:66%}
.pr_vis_b {width:58%}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.pr_item, .pr_circles, .pr_num, .pr_desc, .pr_circle, .pr_vis_a, .pr_vis_b {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   연혁 (ABOUT HERNE)
   ========================================================== */
.hy {padding:100px 0;overflow:hidden;background:#f7f2ef}
.hy_head {text-align:center}
.hy_tit {font-size:70px;font-weight:400;line-height:1.1;letter-spacing:-.01em;color:#1a1a1a}
.hy_stit {margin-top:14px;font-size:18px;font-weight:400;line-height:1.5;letter-spacing:-.02em;color:#ec6c00}

/* ===== 타임라인 ===== */
.hy_wrap {margin-top:120px}
.hy_list {position:relative;display:flex;margin:200px 0 200px}
.hy_list::before {content:'';position:absolute;top:0;left:0;width:100%;height:1px;background:#333}
.hy_item {position:relative;flex:1;height:0}
.hy_item::before {content:'';position:absolute;top:0;left:50%;width:11px;height:11px;border-radius:50%;background:#ec6c00;transform:translate(-50%,-50%)}
.hy_box {position:absolute;left:50%;display:flex;flex-direction:column;width:360px;margin-left:-180px;text-align:center}
/* 항목이 flex:1 로 나뉘고 말풍선은 각 항목 중앙(left:50%) 에 폭 360px 로
   놓이기 때문에, 첫·마지막 것은 컨테이너 밖으로 180px 씩 나가
   .hy 의 overflow:hidden 에 잘려 보이지 않았다. (1400px 이하에서 특히 심함)
   양 끝만 가운데 정렬 대신 안쪽으로 붙인다. (260917) */
.hy_item:first-child .hy_box {left:0;margin-left:0;align-items:flex-start;text-align:left}
.hy_item:last-child .hy_box {left:auto;right:0;margin-left:0;align-items:flex-end;text-align:right}
/* 퀵메뉴(.quick, 오른쪽 20px 고정)가 마지막 항목 글자를 64px 가렸다.
   퀵메뉴가 보이는 폭(1025px~)에서, 본문이 화면 끝까지 닿는 구간(~1860px)
   에서만 마지막 말풍선을 안쪽으로 들인다. 오른쪽 정렬은 그대로다. (261006) */
@media (min-width:1025px) and (max-width:1860px){
	.hy_item:last-child .hy_box {right:92px}
}
.hy_top .hy_box {bottom:26px;justify-content:flex-end}
.hy_bot .hy_box {top:26px}
.hy_year {order:0;font-size:23px;font-weight:700;line-height:1.2;letter-spacing:-.02em;color:#1a1a1a;white-space:nowrap}
.hy_top .hy_year {order:1;margin-top:14px}
.hy_bot .hy_year {margin-bottom:14px}
.hy_txt {font-size:20px;font-weight:500;line-height:1.5;letter-spacing:-.03em;color:#333;white-space:nowrap}
.hy_sm {font-size:16px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#777;white-space:nowrap}

/* ===== 하단 로고 · 슬로건 ===== */
.hy_bottom {text-align:center}
.hy_logo {display:block;width:200px;height:auto;margin:0 auto}
.hy_slogan {margin-top:56px;font-size:27px;font-weight:500;line-height:1.5;letter-spacing:-.03em;color:#1a1a1a;word-break:keep-all;text-wrap:pretty}

/* ===== 등장 모션 ===== */
.hy_tit, .hy_stit, .hy_logo, .hy_slogan {opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.hy.show .hy_tit, .hy.show .hy_stit, .hy.show .hy_logo, .hy.show .hy_slogan {opacity:1;transform:translateY(0)}
.hy.show .hy_stit {transition-delay:.15s}
.hy.show .hy_slogan {transition-delay:.15s}
.hy_list::before {transform:scaleX(0);transform-origin:left center;transition:transform 1.4s cubic-bezier(.25,.6,.3,1) .2s}
.hy.show .hy_list::before {transform:scaleX(1)}
.hy_item {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s cubic-bezier(.25,.6,.3,1)}
.hy.show .hy_item {opacity:1;transform:translateY(0)}
.hy.show .hy_item:nth-child(1) {transition-delay:.35s}
.hy.show .hy_item:nth-child(2) {transition-delay:.45s}
.hy.show .hy_item:nth-child(3) {transition-delay:.55s}
.hy.show .hy_item:nth-child(4) {transition-delay:.65s}
.hy.show .hy_item:nth-child(5) {transition-delay:.75s}
.hy.show .hy_item:nth-child(6) {transition-delay:.85s}
.hy.show .hy_item:nth-child(7) {transition-delay:.95s}
.hy.show .hy_item:nth-child(8) {transition-delay:1.05s}
.hy.show .hy_item:nth-child(9) {transition-delay:1.15s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.hy_tit {font-size:56px}
.hy_stit {font-size:18px}
.hy_wrap {margin-top:90px}
/* 글이 길어지면 말풍선이 선 위아래로 더 자라 제목·하단 로고를 침범했다.
   (영문 1300px 에서 아래 17px 겹침, 다른 언어도 2px 밖에 안 남았다)
   위아래 여백을 넉넉히 둔다. (261006) */
.hy_list {margin:180px 0 175px}
.hy_box {width:300px;margin-left:-150px}
/* 폭이 좁아지면 한 줄로 못 담는 문구가 있어 줄바꿈을 허용한다 */
.hy_txt, .hy_sm {white-space:normal;word-break:keep-all}
.hy_year {font-size:22px}
.hy_txt {font-size:14px}
.hy_sm {font-size:13px}
.hy_logo {width:170px}
.hy_slogan {margin-top:44px;font-size:21px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.hy_tit {font-size:42px}
.hy_stit {font-size:17px}
.hy_wrap {margin-top:60px}
/* 점은 .hy_item 기준, 선은 .hy_list 기준이라 .hy_list 의 padding-left(6px)
   만큼 점만 오른쪽으로 밀려 선과 5.5px 어긋나 있었다.
   안쪽여백을 걷어내 둘이 같은 기준점을 쓰게 하고, 그만큼 .hy_item 에 더해
   본문 위치는 그대로 둔다. (261006) */
.hy_list {display:block;margin:0 0 90px;padding-left:0}
.hy_list::before {top:6px;left:5px;width:1px;height:calc(100% - 6px)}
.hy_item {height:auto;padding-left:40px}
.hy_item + .hy_item {margin-top:34px}
.hy_item::before {top:8px;left:5.5px;width:10px;height:10px;transform:translateX(-50%)}
.hy_box {position:static;width:auto;margin-left:0;text-align:left}
/* 가로 타임라인용 첫·마지막 칸 보정이 세로 배치에서도 그대로 남아 있었다.
   .hy_item:last-child .hy_box 쪽이 .hy_box 보다 선택자 셈이 세서,
   마지막 연도(2026)만 오른쪽 끝에 붙고 글자도 오른쪽 정렬이 됐다.
   세로로 쌓이는 구간에서는 전부 점 라인 기준 왼쪽으로 맞춘다. (261006) */
.hy_item:first-child .hy_box,
.hy_item:last-child .hy_box {position:static;left:auto;right:auto;margin-left:0;align-items:flex-start;text-align:left}
.hy_top .hy_year, .hy_bot .hy_year {order:-1;margin:0 0 6px}
.hy_year {font-size:20px}
.hy_txt {font-size:15px;white-space:normal;word-break:keep-all;text-wrap:pretty}
.hy_sm {font-size:14px;white-space:normal;word-break:keep-all;text-wrap:pretty}
.hy_logo {width:150px}
.hy_slogan {margin-top:36px;font-size:19px}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.hy {padding:70px 0}
.hy_tit {font-size:34px}
.hy_stit {margin-top:10px;font-size:15px}
.hy_wrap {margin-top:44px}
.hy_list {margin-bottom:70px}
.hy_item {padding-left:32px}
.hy_item + .hy_item {margin-top:26px}
.hy_item::before {width:8px;height:8px}
.hy_year {font-size:17px}
.hy_txt {font-size:14px}
.hy_sm {font-size:13px}
.hy_logo {width:120px}
.hy_slogan {margin-top:28px;font-size:16px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.hy_tit, .hy_stit, .hy_logo, .hy_slogan, .hy_item {opacity:1;transform:none;transition:none}
.hy_list::before {transform:none;transition:none}
}

/* ==========================================================
   공간 갤러리
   ========================================================== */
.gl {position:relative;width:100%;overflow:hidden;background:#f7f2ef}
/* 예전에는 높이를 540px 로 고정해서, 화면 폭이 달라지면 칸 비율이 같이
   달라지고 object-fit:cover 가 사진을 위아래/좌우로 다르게 잘라냈다.
   갤러리 사진은 모두 435x580 = 3:4 이므로 칸에 그 비율을 그대로 주고
   높이는 폭을 따라가게 한다. 이제 잘리는 곳 없이 비율대로 줄어든다. (260917) */
.gl_list {display:flex;width:100%;height:auto}
.gl_item {position:relative;flex:1 1 20%;min-width:0;aspect-ratio:3/4;overflow:hidden;background:#f7f2ef;transition:flex-grow .7s cubic-bezier(.25,.6,.3,1)}
.gl_img {display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.25,.6,.3,1)}
.gl_list:hover .gl_item {flex-grow:.86}
.gl_list:hover .gl_item:hover {flex-grow:1.56}
.gl_item:hover .gl_img {transform:scale(1.06)}

/* ===== 등장 모션 ===== */
/* 올라오는 모션은 그대로 두고, 그동안 뒤로 비치던 바탕만
   흰색에서 윗 섹션(.hy)과 같은 #f7f2ef 로 맞췄다. (260915) */
.gl_item {opacity:0;transform:translateY(40px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1),flex-grow .7s cubic-bezier(.25,.6,.3,1)}
.gl.show .gl_item {opacity:1;transform:translateY(0)}
.gl.show:not(.gl_roll) .gl_item:nth-child(2) {transition-delay:.1s}
.gl.show:not(.gl_roll) .gl_item:nth-child(3) {transition-delay:.2s}
.gl.show:not(.gl_roll) .gl_item:nth-child(4) {transition-delay:.3s}
.gl.show:not(.gl_roll) .gl_item:nth-child(5) {transition-delay:.4s}

/* ===== 사진이 6장 이상이면 한 장씩 넘어가는 롤링 =====
   PHP 에서 목록을 두 벌 깔고 --gl-cnt(장수) 와 --gl-dur(재생시간) 를 넣어 준다.
   한 장 밀고 잠깐 멈추기를 반복하며, 트랙이 -50% 까지 가면 두 번째 벌의
   같은 자리라 처음으로 돌아가도 이음매가 보이지 않는다.
   구간이 장수에 따라 달라지므로 @keyframes gl_step 은 content/sub_01.php
   가 장수에 맞춰 만들어 넣는다. 이동량을 트랙 대비 % 로 잡아서 화면 폭이
   바뀌어도(20vw / 30vw / 46vw) 계산이 그대로 맞는다. */
.gl_roll .gl_list {width:max-content;animation:gl_step var(--gl-dur,28s) cubic-bezier(.65,0,.35,1) infinite}
.gl_roll .gl_item {flex:0 0 20vw}
.gl_roll:hover .gl_list {animation-play-state:paused}
.gl_roll .gl_list:hover .gl_item, .gl_roll .gl_list:hover .gl_item:hover {flex-grow:0}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
/* .gl_list 높이는 .gl_item 의 3:4 비율이 정한다 */
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
/* 높이는 비율이 정한다 */
.gl_list:hover .gl_item, .gl_list:hover .gl_item:hover {flex-grow:1}
.gl_roll .gl_list:hover .gl_item, .gl_roll .gl_list:hover .gl_item:hover {flex-grow:0}
.gl_roll .gl_item {flex:0 0 30vw}
.gl_item:hover .gl_img {transform:none}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.gl_list {flex-wrap:wrap;height:auto}
.gl_item {flex:0 0 33.3333%}
.gl_item:nth-child(4), .gl_item:nth-child(5) {flex:0 0 50%}
/* 롤링은 모바일에서도 한 줄을 유지한다 */
.gl_roll .gl_list {flex-wrap:nowrap}
.gl_roll .gl_item, .gl_roll .gl_item:nth-child(4), .gl_roll .gl_item:nth-child(5) {flex:0 0 46vw}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.gl_item {opacity:1;transform:none;transition:none}
.gl_img {transition:none}
.gl_item:hover .gl_img {transform:none}
.gl_roll .gl_list {animation:none}
.gl_roll {overflow-x:auto}
}


/* ==========================================================
   원장 인사말 (Meet the Doctors)
   ========================================================== */
.dm {padding:100px 0;overflow:hidden;background:#fff}
.dm_head {margin-bottom:100px}
.dm_label {font-size:17px;font-weight:600;line-height:1.5;letter-spacing:-.01em;color:#ec6c00}
.dm_tit {margin-top:14px;font-size:78px;font-weight:500;line-height:1.05;letter-spacing:-.01em;color:#111}
.dm_body {display:grid;grid-template-columns:1fr 1fr;align-items:flex-end;gap:40px}
.dm_txt_box {display:flex;flex-direction:column;gap:15px}
.dm_txt {font-size:22px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#333;word-break:keep-all;text-wrap:pretty}
.dm_img_box {overflow:hidden}
.dm_img {display:block;width:100%;height:auto}

/* ===== 등장 모션 ===== */
.dm_label {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.dm.show .dm_label {opacity:1;transform:translateY(0)}
.dm_tit {opacity:0;transform:translateY(28px);transition:opacity .9s ease .15s,transform 1s cubic-bezier(.25,.6,.3,1) .15s}
.dm.show .dm_tit {opacity:1;transform:translateY(0)}
.dm_txt {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s cubic-bezier(.25,.6,.3,1)}
.dm.show .dm_txt {opacity:1;transform:translateY(0)}
.dm.show .dm_txt:nth-child(1) {transition-delay:.35s}
.dm.show .dm_txt:nth-child(2) {transition-delay:.45s}
.dm.show .dm_txt:nth-child(3) {transition-delay:.55s}
.dm.show .dm_txt:nth-child(4) {transition-delay:.65s}
.dm.show .dm_txt:nth-child(5) {transition-delay:.75s}
.dm_img_box {opacity:0;transform:translateX(70px);transition:opacity 1s ease .3s,transform 1.1s cubic-bezier(.25,.6,.3,1) .3s}
.dm.show .dm_img_box {opacity:1;transform:translateX(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.dm_head {margin-bottom:80px}
.dm_label {font-size:17px}
.dm_tit {font-size:61px}
.dm_body {gap:60px}
.dm_txt_box {gap:26px}
.dm_txt {font-size:15px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.dm_head {margin-bottom:56px}
.dm_label {font-size:16px}
.dm_tit {font-size:45px}
.dm_body {grid-template-columns:1fr;gap:44px}
.dm_txt_box {gap:24px}
.dm_txt {font-size:15px;line-height:1.5}
.dm_txt br {display:none}
.dm_img_box {order:-1;transform:translateY(40px)}
.dm.show .dm_img_box {transform:translateY(0)}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.dm {padding:70px 0}
.dm_head {margin-bottom:40px}
.dm_label {font-size:14px}
.dm_tit {margin-top:10px;font-size:36px}
.dm_body {gap:32px}
.dm_txt_box {gap:20px}
.dm_txt {font-size:14px;line-height:1.5}
}

/* ====================================.dr_img======================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.dm_label, .dm_tit, .dm_txt, .dm_img_box {opacity:1;transform:none;transition:none}
}


/* ==========================================================
   대표원장 프로필
   ========================================================== */
.dr {padding:100px 0;overflow:hidden;background:#fff}
.dr_inner {display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}

/* ===== 좌측 이미지 ===== */
.dr_img_box {position:relative}
.dr_img {display:block;width:100%;height:900px;object-fit:cover;object-position:center top;background:#f3efec}
.dr_sign {position:absolute;bottom:-4%;left:50%;z-index:2;width:66%;height:auto;transform:translateX(-50%)}
/* ===== 우측 정보 ===== */
.dr_eng {font-size:20px;font-weight:500;line-height:1.4;letter-spacing:0;color:#ec6c00}
.dr_name {display:flex;align-items:flex-end;margin-top:18px;font-size:59px;font-weight:800;line-height:1.2;letter-spacing:.12em;color:#111}
.dr_pos {margin-left:8px;font-size:27px;font-weight:500;letter-spacing:-.03em}
.dr_career {margin-top:130px}
.dr_list + .dr_list {margin-top:28px}
.dr_li {font-size:20px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#333;word-break:keep-all;text-wrap:pretty}

/* ===== 등장 모션 ===== */
.dr_img_box {opacity:0;transform:translateX(-60px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.25,.6,.3,1)}
.dr.show .dr_img_box {opacity:1;transform:translateX(0)}
.dr_sign {opacity:0;transition:opacity 1s ease .8s}
.dr.show .dr_sign {opacity:1}
.dr_eng {opacity:0;transform:translateY(20px);transition:opacity .8s ease .2s,transform .9s cubic-bezier(.25,.6,.3,1) .2s}
.dr.show .dr_eng {opacity:1;transform:translateY(0)}
.dr_name {opacity:0;transform:translateY(24px);transition:opacity .9s ease .35s,transform 1s cubic-bezier(.25,.6,.3,1) .35s}
.dr.show .dr_name {opacity:1;transform:translateY(0)}
.dr_list {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s cubic-bezier(.25,.6,.3,1)}
.dr.show .dr_list {opacity:1;transform:translateY(0)}
.dr.show .dr_list:nth-child(1) {transition-delay:.5s}
.dr.show .dr_list:nth-child(2) {transition-delay:.6s}
.dr.show .dr_list:nth-child(3) {transition-delay:.7s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.dr_inner {gap:60px}
.dr_img {height:560px}
.dr_eng {font-size:19px}
.dr_name {margin-top:14px;font-size:40px}
.dr_pos {font-size:25px}
.dr_career {margin-top:90px}
.dr_list + .dr_list {margin-top:24px}
.dr_li {font-size:16px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.dr_inner {grid-template-columns:1fr;gap:44px}
.dr_img_box {max-width:480px;margin:0 auto;transform:translateY(40px)}
.dr.show .dr_img_box {transform:translateY(0)}
.dr_img {height:520px}
.dr_eng {font-size:17px}
.dr_name {margin-top:12px;font-size:38px}
.dr_pos {font-size:21px}
.dr_career {margin-top:44px}
.dr_list + .dr_list {margin-top:22px}
.dr_li {font-size:15px}

}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.dr {padding:70px 0}
.dr_inner {gap:32px}
.dr_img {height:420px}
.dr_eng {font-size:14px}
.dr_name {margin-top:10px;font-size:28px;letter-spacing:.08em}
.dr_pos {margin-left:6px;font-size:17px}
.dr_career {margin-top:32px}
.dr_list + .dr_list {margin-top:20px}
.dr_li {font-size:14px;line-height:1.45}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.dr_img_box, .dr_sign, .dr_eng, .dr_name, .dr_list {opacity:1;transform:none;transition:none}
}


/* ==========================================================
   원장 프로필 - 좌우 반전
   ========================================================== */
.dr_rev .dr_inner {grid-template-columns:1fr 1fr}
.dr_rev .dr_info {text-align:right}
.dr_rev .dr_name {justify-content:flex-end}
.dr_rev .dr_img_box {transform:translateX(60px)}
.dr.dr_rev.show .dr_img_box {transform:translateX(0)}

/* ===== 전문 분야 ===== */
.dr_major {margin-top:16px;font-size:22px;font-weight:600;line-height:1.4;letter-spacing:-.03em;color:#111}

/* ===== 등장 모션 ===== */
.dr_major {opacity:0;transform:translateY(20px);transition:opacity .8s ease .45s,transform .9s cubic-bezier(.25,.6,.3,1) .45s}
.dr.show .dr_major {opacity:1;transform:translateY(0)}
.dr.show .dr_list:nth-child(4) {transition-delay:.8s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.dr_major {margin-top:12px;font-size:20px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.dr_rev .dr_inner {grid-template-columns:1fr}   /* 위 .dr_rev .dr_inner{1fr 1fr} 가 미디어쿼리 밖에 있어 여기서 풀어줘야 한다 (260826) */
.dr_rev .dr_info {text-align:left}
.dr_rev .dr_name {justify-content:flex-start}
.dr_rev .dr_img_box {order:-1;transform:translateY(40px)}
.dr.dr_rev.show .dr_img_box {transform:translateY(0)}
.dr_major {font-size:18px}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.dr_major {margin-top:10px;font-size:16px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.dr_major {opacity:1;transform:none;transition:none}
}


/* ==========================================================
   유튜브
   ========================================================== */
.yt {padding:100px 0;overflow:hidden;background:#fff}
.yt_frame {position:relative;width:100%;padding-top:56.25%;overflow:hidden;background:#000}
.yt_frame iframe {position:absolute;top:0;left:0;width:100%;height:100%;border:0}
.yt_info {margin-top:36px}
.yt_tit {font-size:34px;font-weight:700;line-height:1.3;letter-spacing:-.03em;color:#111}
.yt_desc {margin-top:20px;font-size:20px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#555;word-break:keep-all;text-wrap:pretty}

/* ===== 등장 모션 ===== */
.yt_frame {opacity:0;transform:translateY(50px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.25,.6,.3,1)}
.yt.show .yt_frame {opacity:1;transform:translateY(0)}
.yt_tit {opacity:0;transform:translateY(20px);transition:opacity .8s ease .3s,transform .9s cubic-bezier(.25,.6,.3,1) .3s}
.yt.show .yt_tit {opacity:1;transform:translateY(0)}
.yt_desc {opacity:0;transform:translateY(20px);transition:opacity .8s ease .45s,transform .9s cubic-bezier(.25,.6,.3,1) .45s}
.yt.show .yt_desc {opacity:1;transform:translateY(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.yt_info {margin-top:30px}
.yt_tit {font-size:29px}
.yt_desc {margin-top:16px;font-size:16px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.yt_info {margin-top:26px}
.yt_tit {font-size:25px}
.yt_desc {margin-top:14px;font-size:15px}
.yt_desc br {display:none}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.yt {padding:70px 0}
.yt_info {margin-top:20px}
.yt_tit {font-size:20px}
.yt_desc {margin-top:12px;font-size:14px;line-height:1.45}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.yt_frame, .yt_tit, .yt_desc {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   인스타그램 배너
   ========================================================== */
.ig {position:relative;padding:100px 0;overflow:hidden;background:#c9bfb8 url('/assets/images/sub/sub_02_img03_bg.jpg') no-repeat center center;background-size:cover;text-align:center}
.ig::before {content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.12)}
.ig_inner {position:relative;z-index:2}
.ig_tit {font-size:42px;font-weight:500;line-height:1.4;letter-spacing:-.03em;color:#fff;word-break:keep-all;text-wrap:pretty}
.ig_eng {margin-top:12px;font-size:16px;font-weight:500;line-height:1.4;letter-spacing:.02em;color:#f07a2a}

/* ===== 아이콘 버튼 ===== */
.ig_list {display:flex;align-items:center;justify-content:center;gap:22px;margin-top:56px}
.ig_btn {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100px;height:100px;padding:16px 0;border-radius:18px;background:linear-gradient(150deg,#f9704b 0%,#f5316f 46%,#e0269b 100%);box-shadow:0 6px 18px rgba(0,0,0,.18);transition:transform .35s cubic-bezier(.25,.6,.3,1),box-shadow .35s ease,opacity .8s ease}
.ig_btn:hover {transform:translateY(-6px);box-shadow:0 12px 26px rgba(0,0,0,.26)}
.ig_ico {display:flex;align-items:center;justify-content:center;width:42px;height:42px;color:#fff}
.ig_ico svg {width:100%;height:100%}
.ig_txt {font-size:15px;font-weight:700;line-height:1;letter-spacing:0;color:#fff}

/* ===== 등장 모션 ===== */
.ig_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.ig.show .ig_tit {opacity:1;transform:translateY(0)}
.ig_eng {opacity:0;transform:translateY(20px);transition:opacity .8s ease .15s,transform .9s cubic-bezier(.25,.6,.3,1) .15s}
.ig.show .ig_eng {opacity:1;transform:translateY(0)}
.ig_btn {opacity:0;transform:translateY(28px) scale(.9)}
.ig.show .ig_btn {opacity:1;transform:translateY(0) scale(1)}
.ig.show .ig_btn:hover {transform:translateY(-6px) scale(1)}
.ig.show .ig_btn:nth-child(1) {transition-delay:.3s}
.ig.show .ig_btn:nth-child(2) {transition-delay:.42s}
.ig.show .ig_btn:nth-child(3) {transition-delay:.54s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.ig_tit {font-size:26px}
.ig_eng {font-size:17px}
.ig_list {gap:18px;margin-top:46px}
.ig_btn {gap:9px;width:94px;height:94px;padding:14px 0;border-radius:16px}
.ig_ico {width:39px;height:39px}
.ig_txt {font-size:14px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.ig_tit {font-size:22px}
.ig_eng {font-size:15px}
.ig_list {gap:16px;margin-top:40px}
.ig_btn {gap:8px;width:86px;height:86px;padding:13px 0}
.ig.show .ig_btn:hover {transform:none;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.ig_ico {width:36px;height:36px}
.ig_txt {font-size:13px}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.ig {padding:70px 0}
.ig_tit {font-size:18px}
.ig_eng {margin-top:10px;font-size:13px}
.ig_list {gap:12px;margin-top:32px}
.ig_btn {gap:7px;width:76px;height:76px;padding:11px 0;border-radius:14px}
.ig_ico {width:31px;height:31px}
.ig_txt {font-size:11px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.ig_tit, .ig_eng, .ig_btn {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   보유장비 인트로
   ========================================================== */
.eq {padding:100px 0;overflow:hidden;background:#fff}
.eq_head {text-align:center}
.eq_label {font-size:17px;font-weight:600;line-height:1.5;letter-spacing:0;color:#ec6c00}
.eq_tit {margin-top:14px;font-size:77px;font-weight:400;line-height:1.05;letter-spacing:-.01em;color:#111}
.eq_img_box {margin-top:80px;overflow:hidden}
.eq_img {display:block;width:100%;height:auto}
.eq_desc {margin-top:60px;text-align:center}
.eq_txt {font-size:20px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#555;word-break:keep-all;text-wrap:pretty}
.eq_txt + .eq_txt {margin-top:34px}

/* ===== 등장 모션 ===== */
.eq_label {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.eq.show .eq_label {opacity:1;transform:translateY(0)}
.eq_tit {opacity:0;transform:translateY(28px);transition:opacity .9s ease .15s,transform 1s cubic-bezier(.25,.6,.3,1) .15s}
.eq.show .eq_tit {opacity:1;transform:translateY(0)}
.eq_img_box {opacity:0;transform:translateY(50px);transition:opacity 1s ease .3s,transform 1.1s cubic-bezier(.25,.6,.3,1) .3s}
.eq.show .eq_img_box {opacity:1;transform:translateY(0)}
.eq_txt {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s cubic-bezier(.25,.6,.3,1)}
.eq.show .eq_txt {opacity:1;transform:translateY(0)}
.eq.show .eq_txt:nth-child(1) {transition-delay:.55s}
.eq.show .eq_txt:nth-child(2) {transition-delay:.68s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.eq_label {font-size:17px}
.eq_tit {font-size:61px}
.eq_img_box {margin-top:64px}
.eq_desc {margin-top:50px}
.eq_txt {font-size:16px}
.eq_txt + .eq_txt {margin-top:28px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.eq_label {font-size:16px}
.eq_tit {font-size:42px;line-height:1.2}
.eq_img_box {margin-top:48px}
.eq_desc {margin-top:40px}
.eq_txt {font-size:15px;line-height:1.5}
.eq_txt br {display:none}
.eq_txt + .eq_txt {margin-top:24px}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.eq {padding:70px 0}
.eq_label {font-size:14px}
.eq_tit {margin-top:10px;font-size:30px}
.eq_img_box {margin-top:34px}
.eq_desc {margin-top:30px}
.eq_txt {font-size:14px;line-height:1.5}
.eq_txt + .eq_txt {margin-top:20px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.eq_label, .eq_tit, .eq_img_box, .eq_txt {opacity:1;transform:none;transition:none}
}


/* ==========================================================
   HERNE Process
   ========================================================== */
.ps {padding:100px 0;overflow:hidden;background:#fff}
.ps_head {text-align:center}
.ps_label {font-size:17px;font-weight:600;line-height:1.5;letter-spacing:0;color:#ec6c00}
.ps_tit {margin-top:14px;font-size:77px;font-weight:400;line-height:1.05;letter-spacing:-.01em;color:#111}
.ps_lead {margin-top:56px;font-size:16px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#555;word-break:keep-all;text-wrap:pretty}

/* ===== 포인트 항목 ===== */
.ps_list {margin-top:130px}
.ps_item {display:grid;grid-template-columns:1fr 1.06fr;align-items:center;gap:80px}
.ps_item + .ps_item {margin-top:120px}
.ps_item_rev .ps_info {order:2}
.ps_item_rev .ps_img_box {order:1}
.ps_num {font-size:17px;font-weight:600;line-height:1.4;letter-spacing:0;color:#ec6c00}
.ps_sub {margin-top:16px;font-size:42px;font-weight:400;line-height:1.35;letter-spacing:-.03em;color:#111;word-break:keep-all;text-wrap:pretty}
.ps_txt {margin-top:26px;font-size:20px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#555;word-break:keep-all;text-wrap:pretty}
.ps_txt + .ps_txt {margin-top:28px}
.ps_img_box {overflow:hidden}
.ps_img {display:block;width:100%;height:auto}

/* ===== 등장 모션 ===== */
.ps_label {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.ps.show .ps_label {opacity:1;transform:translateY(0)}
.ps_tit {opacity:0;transform:translateY(28px);transition:opacity .9s ease .15s,transform 1s cubic-bezier(.25,.6,.3,1) .15s}
.ps.show .ps_tit {opacity:1;transform:translateY(0)}
.ps_lead {opacity:0;transform:translateY(20px);transition:opacity .8s ease .3s,transform .9s cubic-bezier(.25,.6,.3,1) .3s}
.ps.show .ps_lead {opacity:1;transform:translateY(0)}
.ps_info {opacity:0;transform:translateX(-60px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.25,.6,.3,1)}
.ps_item.show .ps_info {opacity:1;transform:translateX(0)}
.ps_img_box {opacity:0;transform:translateX(60px);transition:opacity 1s ease .15s,transform 1.1s cubic-bezier(.25,.6,.3,1) .15s}
.ps_item.show .ps_img_box {opacity:1;transform:translateX(0)}
.ps_item_rev .ps_info {transform:translateX(60px)}
.ps_item_rev .ps_img_box {transform:translateX(-60px)}
.ps_item_rev.show .ps_info, .ps_item_rev.show .ps_img_box {transform:translateX(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.ps_label {font-size:17px}
.ps_tit {font-size:61px}
.ps_lead {margin-top:46px;font-size:16px}
.ps_list {margin-top:100px}
.ps_item {gap:60px}
.ps_item + .ps_item {margin-top:100px}
.ps_num {font-size:16px}
.ps_sub {margin-top:14px;font-size:30px}
.ps_txt {margin-top:22px;font-size:15px}
.ps_txt + .ps_txt {margin-top:24px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.ps_label {font-size:16px}
.ps_tit {font-size:45px}
.ps_lead {margin-top:36px;font-size:15px;line-height:1.5}
.ps_lead br {display:none}
.ps_list {margin-top:70px}
.ps_item {grid-template-columns:1fr;gap:36px}
.ps_item + .ps_item {margin-top:80px}
.ps_item_rev .ps_info, .ps_item_rev .ps_img_box {order:0}
.ps_sub {font-size:25px}
.ps_txt {font-size:15px;line-height:1.5}
.ps_txt br {display:none}
.ps_info, .ps_item_rev .ps_info {transform:translateY(40px)}
.ps_img_box, .ps_item_rev .ps_img_box {transform:translateY(40px)}
.ps_item.show .ps_info, .ps_item.show .ps_img_box {transform:translateY(0)}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.ps {padding:70px 0}
.ps_label {font-size:14px}
.ps_tit {margin-top:10px;font-size:34px}
.ps_lead {margin-top:28px;font-size:14px}
.ps_list {margin-top:50px}
.ps_item {gap:26px}
.ps_item + .ps_item {margin-top:60px}
.ps_num {font-size:14px}
.ps_sub {margin-top:12px;font-size:20px}
.ps_txt {margin-top:18px;font-size:14px;line-height:1.5}
.ps_txt + .ps_txt {margin-top:20px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.ps_label, .ps_tit, .ps_lead, .ps_info, .ps_img_box {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   맞춤 시술 과정
   ========================================================== */
.st {padding:100px 0;overflow:hidden;background:#fff}
.st_tit {font-size:23px;font-weight:700;line-height:1.4;letter-spacing:-.03em;color:#111}
.st_list {display:grid;grid-template-columns:repeat(4,1fr);margin-top:56px}
.st_item {position:relative;padding-right:30px}
.st_num {font-size:32px;font-weight:400;line-height:1.2;letter-spacing:-.02em;color:#111}
.st_line {position:relative;height:1px;margin:18px 0 22px;background:#333}
.st_line::after {content:'';position:absolute;top:50%;right:0;width:7px;height:7px;border-top:1px solid #333;border-right:1px solid #333;transform:translateY(-50%) rotate(45deg)}
.st_sub {font-size:22px;font-weight:400;line-height:1.4;letter-spacing:-.03em;color:#111}
.st_txt {margin-top:8px;font-size:17px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#555;word-break:keep-all;text-wrap:pretty}

/* ===== 등장 모션 ===== */
.st_tit {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.st.show .st_tit {opacity:1;transform:translateY(0)}
.st_num, .st_sub, .st_txt {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s cubic-bezier(.25,.6,.3,1)}
.st.show .st_num, .st.show .st_sub, .st.show .st_txt {opacity:1;transform:translateY(0)}
.st_line {transform:scaleX(0);transform-origin:left center;transition:transform 1s cubic-bezier(.25,.6,.3,1)}
.st.show .st_line {transform:scaleX(1)}
.st.show .st_item:nth-child(1) .st_num {transition-delay:.2s}
.st.show .st_item:nth-child(1) .st_line {transition-delay:.3s}
.st.show .st_item:nth-child(1) .st_sub {transition-delay:.5s}
.st.show .st_item:nth-child(1) .st_txt {transition-delay:.56s}
.st.show .st_item:nth-child(2) .st_num {transition-delay:.35s}
.st.show .st_item:nth-child(2) .st_line {transition-delay:.45s}
.st.show .st_item:nth-child(2) .st_sub {transition-delay:.65s}
.st.show .st_item:nth-child(2) .st_txt {transition-delay:.71s}
.st.show .st_item:nth-child(3) .st_num {transition-delay:.5s}
.st.show .st_item:nth-child(3) .st_line {transition-delay:.6s}
.st.show .st_item:nth-child(3) .st_sub {transition-delay:.8s}
.st.show .st_item:nth-child(3) .st_txt {transition-delay:.86s}
.st.show .st_item:nth-child(4) .st_num {transition-delay:.65s}
.st.show .st_item:nth-child(4) .st_line {transition-delay:.75s}
.st.show .st_item:nth-child(4) .st_sub {transition-delay:.95s}
.st.show .st_item:nth-child(4) .st_txt {transition-delay:1.01s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.st_tit {font-size:23px}
.st_list {margin-top:46px}
.st_item {padding-right:30px}
.st_num {font-size:28px}
.st_line {margin:16px 0 20px}
.st_sub {font-size:17px}
.st_txt {font-size:13px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.st_tit {font-size:21px}
.st_list {grid-template-columns:repeat(2,1fr);gap:44px 0;margin-top:40px}
.st_item {padding-right:24px}
.st_num {font-size:25px}
.st_sub {font-size:16px}
.st_txt {font-size:13px}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.st {padding:70px 0}
.st_tit {font-size:18px}
.st_list {grid-template-columns:1fr;gap:32px 0;margin-top:30px}
.st_item {padding-right:0}
.st_num {font-size:22px}
.st_line {margin:12px 0 16px}
.st_sub {font-size:16px}
.st_txt {margin-top:6px;font-size:13px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.st_tit, .st_num, .st_sub, .st_txt {opacity:1;transform:none;transition:none}
.st_line {transform:none;transition:none}
}

/* ==========================================================
   장비 롤링
   ========================================================== */
.dv {padding:100px 0;overflow:hidden;background:#fff}
.dv_head {text-align:center}
.dv_label {font-size:17px;font-weight:600;line-height:1.5;letter-spacing:.02em;color:#ec6c00}
.dv_tit {margin-top:10px;font-size:48px;font-weight:400;line-height:1.3;letter-spacing:-.03em;color:#333}
.dv_wrap {position:relative;width:100%;margin-top:70px;overflow:hidden}
/* 마우스를 올려도 멈추지 않고 계속 흐른다. 재생시간(--dv-dur)과 출발 시점은
   장비 수·화면 폭에 맞춰 sub.js 가 넣어 준다. (260915) */
.dv_track {display:flex;width:max-content;will-change:transform;
	animation:dv_roll var(--dv-dur,60s) linear infinite}
@keyframes dv_roll {from {transform:translate3d(0,0,0)} to {transform:translate3d(-50%,0,0)}}
.dv_item {flex:0 0 auto;width:300px;margin-right:24px}
.dv_img_box {overflow:hidden}
.dv_img {display:block;width:100%;height:auto}
.dv_name {margin-top:20px;font-size:20px;font-weight:400;line-height:1.4;letter-spacing:-.03em;color:#333;text-align:center}

/* ===== 등장 모션 ===== */
.dv_label {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.dv.show .dv_label {opacity:1;transform:translateY(0)}
.dv_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease .15s,transform 1s cubic-bezier(.25,.6,.3,1) .15s}
.dv.show .dv_tit {opacity:1;transform:translateY(0)}
.dv_wrap {opacity:0;transform:translateY(40px);transition:opacity 1s ease .3s,transform 1.1s cubic-bezier(.25,.6,.3,1) .3s}
.dv.show .dv_wrap {opacity:1;transform:translateY(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.dv_label {font-size:16px}
.dv_tit {font-size:34px}
.dv_wrap {margin-top:56px}
.dv_item {width:260px;margin-right:20px}
.dv_name {margin-top:16px;font-size:16px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.dv_label {font-size:15px}
.dv_tit {font-size:28px}
.dv_wrap {margin-top:44px}
.dv_item {width:220px;margin-right:16px}
.dv_name {margin-top:14px;font-size:15px}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.dv {padding:70px 0}
.dv_label {font-size:13px}
.dv_tit {margin-top:8px;font-size:22px}
.dv_wrap {margin-top:32px}
.dv_item {width:160px;margin-right:12px}
.dv_name {margin-top:12px;font-size:13px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.dv_label, .dv_tit, .dv_wrap {opacity:1;transform:none;transition:none}
.dv_track {animation:none}
}

/* ==========================================================
   오시는길
   ========================================================== */
.lo {padding:100px 0;overflow:hidden;background:#fff}
.lo_inner {display:grid;grid-template-columns:1fr 1.15fr;align-items:stretch;gap:80px}
.lo_tit {font-size:61px;font-weight:400;line-height:1.1;letter-spacing:-.01em;color:#111}

/* ===== 주소 ===== */
.lo_addr {margin-top:40px}
.lo_name {font-size:22px;font-weight:700;line-height:1.4;letter-spacing:-.03em;color:#111}
.lo_bar {margin:0 2px;font-weight:400;color:#999}
.lo_txt {margin-top:10px;font-size:18px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#555}

/* ===== 지도 버튼 ===== */
.lo_btns {display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.lo_btn {display:flex;align-items:center;gap:7px;padding:8px 14px;border:1px solid #ddd;border-radius:4px;background:#fff;transition:border-color .25s ease,box-shadow .25s ease}
.lo_btn:hover {border-color:#ec6c00;box-shadow:0 4px 12px rgba(0,0,0,.07)}
.lo_ico {display:flex;align-items:center;justify-content:center;width:17px;height:17px}
.lo_ico svg {width:100%;height:100%}
.lo_ico_n {color:#03c75a}
.lo_ico_k {color:#fee500}
.lo_ico_g {color:#ea4335}
.lo_btn_txt {font-size:16px;font-weight:600;line-height:1;letter-spacing:0;color:#555}

/* ===== 진료시간 · 전화 ===== */
.lo_detail {display:grid;grid-template-columns:1fr 1.1fr;gap:30px;margin-top:56px;padding-top:36px;border-top:1px solid #e5e5e5}
.lo_sub {font-size:22px;font-weight:600;line-height:1.4;letter-spacing:-.03em;color:#111}
.lo_time {margin-top:22px}
.lo_time_li {display:flex;font-size:18px;font-weight:400;line-height:1.5;letter-spacing:-.02em;color:#333}
.lo_day {flex:0 0 auto;width:80px;letter-spacing:.4em}
.lo_note {margin-top:16px;font-size:16px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#999}
.lo_tel {display:inline-block;margin-top:16px;font-size:61px;font-weight:400;line-height:1.2;letter-spacing:-.01em;color:#111}

/* ===== 지도 ===== */
.lo_map {overflow:hidden}
.lo_map .root_daum_roughmap {width:100%!important;height:100%!important}
.lo_map .root_daum_roughmap .wrap_map {width:100%!important;height:100%!important}
.lo_map .root_daum_roughmap .wrap_controllers {display:none!important}

/* ===== 등장 모션 ===== */
.lo_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.lo.show .lo_tit {opacity:1;transform:translateY(0)}
.lo_addr {opacity:0;transform:translateY(20px);transition:opacity .8s ease .15s,transform .9s cubic-bezier(.25,.6,.3,1) .15s}
.lo.show .lo_addr {opacity:1;transform:translateY(0)}
.lo_btns {opacity:0;transform:translateY(20px);transition:opacity .8s ease .28s,transform .9s cubic-bezier(.25,.6,.3,1) .28s}
.lo.show .lo_btns {opacity:1;transform:translateY(0)}
.lo_detail {opacity:0;transform:translateY(20px);transition:opacity .8s ease .4s,transform .9s cubic-bezier(.25,.6,.3,1) .4s}
.lo.show .lo_detail {opacity:1;transform:translateY(0)}
.lo_map {opacity:0;transform:translateX(60px);transition:opacity 1s ease .25s,transform 1.1s cubic-bezier(.25,.6,.3,1) .25s}
.lo.show .lo_map {opacity:1;transform:translateX(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.lo_inner {gap:60px}
.lo_tit {font-size:45px}
.lo_addr {margin-top:32px}
.lo_name {font-size:21px}
.lo_txt {font-size:16px}
.lo_detail {margin-top:44px;padding-top:30px}
.lo_sub {font-size:18px}
.lo_time_li {font-size:16px}
.lo_day {width:60px}
.lo_tel {font-size:37px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.lo_inner {grid-template-columns:1fr;gap:44px}
.lo_tit {font-size:37px}
.lo_addr {margin-top:26px}
.lo_name {font-size:19px}
.lo_txt {font-size:15px}
.lo_detail {margin-top:36px;padding-top:26px}
.lo_sub {font-size:17px}
.lo_time {margin-top:16px}
.lo_time_li {font-size:15px}
.lo_day {width:56px}
.lo_tel {font-size:32px}
.lo_map {order:-1;transform:translateY(40px)}
.lo.show .lo_map {transform:translateY(0)}
.lo_map .root_daum_roughmap, .lo_map .root_daum_roughmap .wrap_map {height:320px!important}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.lo {padding:70px 0}
.lo_tit {font-size:32px}
.lo_addr {margin-top:22px}
.lo_name {font-size:17px}
.lo_txt {margin-top:8px;font-size:14px}
.lo_btns {gap:6px;margin-top:18px}
.lo_btn {padding:7px 11px}
.lo_btn_txt {font-size:11px}
.lo_detail {grid-template-columns:1fr;gap:26px;margin-top:30px;padding-top:24px}
.lo_sub {font-size:16px}
.lo_time_li {font-size:14px}
.lo_day {width:50px}
.lo_note {margin-top:12px;font-size:12px}
.lo_tel {margin-top:12px;font-size:27px}
.lo_map .root_daum_roughmap, .lo_map .root_daum_roughmap .wrap_map {height:260px!important}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.lo_tit, .lo_addr, .lo_btns, .lo_detail, .lo_map {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   교통편
   ========================================================== */
.tr {padding:100px 0;overflow:hidden;background:#f7e6d8}
.tr_inner {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:80px}
.tr_img_box {overflow:hidden;border-radius:20px}
.tr_img {display:block;width:100%;height:auto}

/* ===== 지하철 ===== */
.tr_info {width:100%;min-width:0}
.tr_subway {display:flex;align-items:center;width:100%}
.tr_col {flex:none;width:33%;box-sizing:border-box;text-align:left}
.tr_col:first-child {padding-right:50px}
.tr_col + .tr_col {padding-left:50px;border-left:1px solid rgba(0,0,0,.15)}
.tr_line {font-size:23px;font-weight:500;line-height:1.4;letter-spacing:-.03em;color:#111}
.tr_exit {margin-top:12px;font-size:27px;font-weight:700;line-height:1.4;letter-spacing:-.03em;color:#111}
.tr_mark {padding:2px 8px;background:#ec6c00;color:#fff}

/* ===== 안내문 ===== */
.tr_txt {margin-top:70px;font-size:18px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#555;word-break:keep-all;text-wrap:pretty}

/* ===== 등장 모션 ===== */
.tr_img_box {opacity:0;transform:translateX(-60px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.25,.6,.3,1)}
.tr.show .tr_img_box {opacity:1;transform:translateX(0)}
.tr_subway {opacity:0;transform:translateY(24px);transition:opacity .9s ease .2s,transform 1s cubic-bezier(.25,.6,.3,1) .2s}
.tr.show .tr_subway {opacity:1;transform:translateY(0)}
.tr_txt {opacity:0;transform:translateY(20px);transition:opacity .8s ease .4s,transform .9s cubic-bezier(.25,.6,.3,1) .4s}
.tr.show .tr_txt {opacity:1;transform:translateY(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.tr_inner {gap:60px}
.tr_col:first-child {padding-right:40px}
.tr_col + .tr_col {padding-left:40px}
.tr_line {font-size:22px}
.tr_exit {font-size:25px}
.tr_txt {margin-top:56px;font-size:17px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.tr_inner {grid-template-columns:minmax(0,1fr);gap:44px}
.tr_img_box {transform:translateY(40px);border-radius:16px}
.tr.show .tr_img_box {transform:translateY(0)}
.tr_col:first-child {padding-right:32px}
.tr_col + .tr_col {padding-left:32px}
.tr_line {font-size:19px}
.tr_exit {margin-top:10px;font-size:21px}
.tr_txt {margin-top:40px;font-size:16px;line-height:1.5}
.tr_txt br {display:none}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.tr {padding:70px 0}
.tr_inner {gap:32px}
.tr_img_box {border-radius:12px}
.tr_subway {flex-direction:column;align-items:flex-start;gap:20px}
.tr_col {width:100%}
.tr_col:first-child {padding-right:0}
.tr_col + .tr_col {padding-top:20px;padding-left:0;border-top:1px solid rgba(0,0,0,.15);border-left:0}
.tr_line {font-size:16px}
.tr_exit {margin-top:8px;font-size:18px}
.tr_mark {padding:2px 6px}
.tr_txt {margin-top:30px;font-size:14px;line-height:1.45}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.tr_img_box, .tr_subway, .tr_txt {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   오시는 방법
   ========================================================== */
.wy {overflow:hidden;background: url('/assets/images/sub/sub_04_bg.jpg') no-repeat center center;background-size:cover}

/* ===== 상단 - 영상 ===== */
.wy_top {position:relative;padding:100px 0;}
.wy_head {position:relative;z-index:2;text-align:center}
.wy_label {font-size:17px;font-weight:600;line-height:1.5;letter-spacing:-.01em;color:#ec6c00}
.wy_tit {margin-top:14px;font-size:45px;font-weight:400;line-height:1.3;letter-spacing:-.03em;color:#333}
.wy_movies {position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:70px}
.wy_movie {position:relative;width:100%;padding-top:56.25%;overflow:hidden;background:#000}
.wy_movie iframe {position:absolute;top:0;left:0;width:100%;height:100%;border:0}
/* ===== 하단 - 교통수단 카드 ===== */
.wy_bot {position:relative;padding:100px 0;}
.wy_cards {position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:36px}
.wy_card {padding:40px 34px 44px;border:1px solid #ec6c00;background:rgba(255,255,255,.9);text-align:center}
.wy_card_ico {display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 auto;color:#333}
.wy_card_ico svg {width:100%;height:100%}
.wy_card_tit {margin-top:14px;font-size:39px;font-weight:400;line-height:1.2;letter-spacing:-.01em;color:#111}
.wy_card_sub {margin-top:8px;font-size:20px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#555}
.wy_tag {display:inline-block;margin-top:26px;padding:9px 22px;border-radius:30px;font-size:18px;font-weight:600;line-height:1.4;letter-spacing:-.03em;color:#fff;word-break:keep-all;text-wrap:pretty}
.wy_tag_gray {background:#8a8a8a}
.wy_tag_beige {background:#d3ad4c}
.wy_tag_green {background:#37a443}
.wy_tag_blue {background:#386de8}
.wy_tag_red {background:#e8504f}
.wy_card_lead {margin-top:22px;font-size:22px;font-weight:700;line-height:1.5;letter-spacing:-.03em;color:#111;word-break:keep-all;text-wrap:pretty}
.wy_card_txt {margin-top:12px;font-size:18px;font-weight:400;line-height:1.45;letter-spacing:-.03em;color:#555;word-break:keep-all;text-wrap:pretty}
.wy_card_img_box {margin-top:24px;overflow:hidden}
.wy_card_img {display:block;width:100%;height:auto}
.wy_card_note {margin-top:32px;font-size:16px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#aaa;word-break:keep-all;text-wrap:pretty}

/* ===== 등장 모션 ===== */
.wy_label {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.wy.show .wy_label {opacity:1;transform:translateY(0)}
.wy_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease .15s,transform 1s cubic-bezier(.25,.6,.3,1) .15s}
.wy.show .wy_tit {opacity:1;transform:translateY(0)}
.wy_movie {opacity:0;transform:translateY(40px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.25,.6,.3,1)}
.wy.show .wy_movie {opacity:1;transform:translateY(0)}
.wy.show .wy_movie:nth-child(1) {transition-delay:.3s}
.wy.show .wy_movie:nth-child(2) {transition-delay:.42s}
.wy_card {opacity:0;transform:translateY(40px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.wy_bot.show .wy_card {opacity:1;transform:translateY(0)}
.wy_bot.show .wy_card:nth-child(2) {transition-delay:.15s}
.wy_bot.show .wy_card:nth-child(3) {transition-delay:.3s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.wy_label {font-size:17px}
.wy_tit {font-size:37px}
.wy_movies {gap:30px;margin-top:56px}
.wy_cards {gap:26px}
.wy_card {padding:34px 26px 38px}
.wy_card_tit {font-size:29px}
.wy_card_sub {font-size:15px}
.wy_tag {margin-top:22px;padding:8px 18px;font-size:15px}
.wy_card_lead {font-size:19px}
.wy_card_txt {font-size:14px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.wy_label {font-size:16px}
.wy_tit {font-size:34px}
.wy_movies {gap:22px;margin-top:44px}
.wy_cards {grid-template-columns:1fr;gap:22px}
.wy_card {padding:34px 30px 38px}
.wy_card_tit {font-size:27px}
.wy_card_txt br {display:none}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.wy_top {padding:70px 0}
.wy_bot {padding:70px 0}
.wy_label {font-size:14px}
.wy_tit {margin-top:10px;font-size:26px}
.wy_movies {grid-template-columns:1fr;gap:20px;margin-top:32px}
.wy_card {padding:30px 20px 34px}
.wy_card_ico {width:38px;height:38px}
.wy_card_tit {font-size:23px}
.wy_card_sub {font-size:14px}
.wy_tag {margin-top:20px;padding:7px 16px;font-size:14px}
.wy_card_lead {margin-top:18px;font-size:17px}
.wy_card_txt {font-size:13px}
.wy_card_note {margin-top:26px;font-size:13px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.wy_label, .wy_tit, .wy_movie, .wy_card {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   첨단재생의료 지정
   ========================================================== */
/* 줄기세포 도입(.rg) + 센터 비주얼(.cp) 이 배경 한 장을 함께 쓴다. (260915)
   배경을 래퍼(.cell_bg) 로 올리고 두 블록은 비워 두므로 경계가 생기지 않는다.
   ※ cell_01_bg1.jpg 는 1920x942 가로형이라 두 블록 높이(비율 1.05~1.09)에
      맞추느라 1.3~1.55 배 확대된다. PC 에서는 로고가 온전히 들어오지만
      세로로 긴 이미지로 바꾸면 확대 없이 더 선명하고 모바일 잘림도 줄어든다.
      교체할 때는 아래 url 만 바꾸면 된다. */
/* 두 섹션을 다시 각자 배경으로 되돌린다. .cell_bg 는 묶어두는 껍데기만 남긴다. (260917) */
.cell_bg {position:relative}
.rg {position:relative;overflow:hidden;background:#0b2350 url('/assets/images/sub/cell_01_bg1.jpg') no-repeat center center;background-size:cover}
.rg_inner {position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.72fr);align-items:end;gap:40px;min-height:540px}
.rg_info {padding: 200px 0 90px;}

/* ===== 인증 마크 ===== */
.rg_marks {display:flex;align-items:center;gap:22px}
.rg_mark {display:block;height:38px;width:auto}

/* ===== 텍스트 ===== */
.rg_tit {margin-top:56px;font-size:39px;font-weight:700;line-height:1.45;letter-spacing:-.03em;color:#fff;word-break:keep-all;text-wrap:pretty}
.rg_brand {margin-top:44px}
.rg_name {font-size:27px;font-weight:400;line-height:1.4;letter-spacing:-.03em;color:rgba(255,255,255,.9)}
.rg_sub {margin-top:12px;font-size:20px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:rgba(255,255,255,.85)}
.rg_bold {font-size:23px;font-weight:700;color:#fff}
.rg_kr {font-size:20px;color:rgba(255,255,255,.7)}
.rg_txt {margin-top:52px;font-size:20px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:rgba(255,255,255,.7);word-break:keep-all;text-wrap:pretty}

/* ===== 원장 이미지 ===== */
.rg_img_box {position:relative;align-self:end;text-align:right}
.rg_img {display:inline-block;width:100%;max-width:520px;height:auto}

/* ===== 등장 모션 ===== */
.rg_marks {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.rg.show .rg_marks {opacity:1;transform:translateY(0)}
.rg_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease .15s,transform 1s cubic-bezier(.25,.6,.3,1) .15s}
.rg.show .rg_tit {opacity:1;transform:translateY(0)}
.rg_brand {opacity:0;transform:translateY(20px);transition:opacity .8s ease .3s,transform .9s cubic-bezier(.25,.6,.3,1) .3s}
.rg.show .rg_brand {opacity:1;transform:translateY(0)}
.rg_txt {opacity:0;transform:translateY(20px);transition:opacity .8s ease .45s,transform .9s cubic-bezier(.25,.6,.3,1) .45s}
.rg.show .rg_txt {opacity:1;transform:translateY(0)}
.rg_img_box {opacity:0;transform:translateX(60px);transition:opacity 1s ease .2s,transform 1.1s cubic-bezier(.25,.6,.3,1) .2s}
.rg.show .rg_img_box {opacity:1;transform:translateX(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.rg_inner {min-height:460px}
.rg_info {padding:70px 0}
.rg_mark {height:32px}
.rg_tit {margin-top:44px;font-size:31px}
.rg_brand {margin-top:36px}
.rg_name {font-size:22px}
.rg_sub {font-size:17px}
.rg_bold {font-size:20px}
.rg_txt {margin-top:42px;font-size:15px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.rg_inner {grid-template-columns:minmax(0,1fr);gap:0;min-height:0}
.rg_info {padding:70px 0 0}
.rg_marks {gap:18px}
.rg_mark {height:28px}
.rg_tit {margin-top:34px;font-size:26px}
.rg_brand {margin-top:30px}
.rg_name {font-size:20px}
.rg_sub {font-size:16px}
.rg_bold {font-size:18px}
.rg_txt {margin-top:32px;font-size:15px;line-height:1.45}
.rg_txt br {display:none}
.rg_img_box {max-width:420px;margin:30px auto 0;transform:translateY(40px)}
.rg.show .rg_img_box {transform:translateY(0)}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.rg_info {padding:50px 0 0}
.rg_marks {gap:14px}
.rg_mark {height:24px}
.rg_tit {margin-top:26px;font-size:21px}
.rg_brand {margin-top:24px}
.rg_name {font-size:17px}
.rg_sub {margin-top:8px;font-size:14px}
.rg_bold {font-size:16px}
.rg_kr {font-size:13px}
.rg_txt {margin-top:26px;font-size:13px}
.rg_img_box {max-width:300px;margin-top:24px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.rg_marks, .rg_tit, .rg_brand, .rg_txt, .rg_img_box {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   줄기세포 센터 비주얼
   ========================================================== */
/* 배경은 cell_01_bg5.jpg, 그 위에 검은 막을 깔아 글자가 읽히게 한다.
   글 묶음은 오른쪽으로 보내고 글자는 왼쪽 정렬한다. (260917) */
.cp {position:relative;padding:140px 0;overflow:hidden;background:#111 url('/assets/images/sub/cell_01_bg5.jpg') no-repeat center center;background-size:cover;text-align:left}
.cp::before {content:'';position:absolute;top:0;left:0;width:100%;height:100%;
	background:linear-gradient(to right,rgba(0,0,0,.35),rgba(0,0,0,.45) 45%,rgba(0,0,0,.66));pointer-events:none}
.cp_inner {position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-end}
.cp_lead, .cp_tit, .cp_brand {width:min(560px,100%);text-align:center}
.cp_lead {font-size:22px;font-weight:400;line-height:1.6;letter-spacing:-.02em;color:rgba(255,255,255,.75);word-break:keep-all;text-wrap:pretty}
.cp_tit {margin-top:44px;font-size:52px;font-weight:400;line-height:1.35;letter-spacing:-.03em;color:#fff;word-break:keep-all;text-wrap:pretty}
.cp_brand {margin-top:34px;font-size:49px;font-weight:400;line-height:1.2;letter-spacing:-.01em;color:#fff}
.cp_bold {font-weight:800}

/* ===== 등장 모션 ===== */
.cp_lead {opacity:0;transform:translateY(24px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.25,.6,.3,1)}
.cp.show .cp_lead {opacity:1;transform:translateY(0)}
.cp_tit {opacity:0;transform:translateY(28px);transition:opacity 1s ease .25s,transform 1.1s cubic-bezier(.25,.6,.3,1) .25s}
.cp.show .cp_tit {opacity:1;transform:translateY(0)}
.cp_brand {opacity:0;transform:translateY(24px);transition:opacity 1s ease .45s,transform 1.1s cubic-bezier(.25,.6,.3,1) .45s}
.cp.show .cp_brand {opacity:1;transform:translateY(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.cp {padding:120px 0}
.cp_lead {font-size:18px}
.cp_tit {margin-top:36px;font-size:42px}
.cp_brand {margin-top:28px;font-size:39px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.cp {padding:100px 0}
.cp_lead {font-size:16px;line-height:1.55}
.cp_tit {margin-top:30px;font-size:36px}
.cp_brand {margin-top:24px;font-size:34px}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.cp {padding:70px 0}
/* 좁은 화면에서는 글 묶음을 가득 채운다 */
.cp_inner {align-items:stretch}
.cp_lead, .cp_tit, .cp_brand {width:100%}
.cp_lead {font-size:14px}
.cp_tit {margin-top:24px;font-size:26px}
.cp_brand {margin-top:20px;font-size:26px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.cp_lead, .cp_tit, .cp_brand {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   Bio Stem-Cell PRF 소개
   ========================================================== */
/* 배경이미지(cell_01_bg3.jpg) 는 걷어내고 바탕색만 쓴다.
   본문 글꼴은 :root 의 --ff-serif 와 같은 값이다.
   → Instrument Serif(영문) → ChosunilboNM(국문) → serif  (260915) */
.bs {position:relative;padding:100px 0;overflow:hidden;background:#f6f4f1;text-align:center;
	font-family:'Instrument Serif','ChosunilboNM',serif}
.bs_inner {position:relative;z-index:2}
.bs_txt {font-size:18px;font-weight:400;line-height:1.55;letter-spacing:-.03em;color:#555;word-break:keep-all;text-wrap:pretty}
.bs_txt + .bs_txt {margin-top:40px}
.bs_point {margin:56px 0;font-size:22px;font-weight:700;line-height:1.45;letter-spacing:-.03em;color:#ff8400;word-break:keep-all;text-wrap:pretty}

/* ===== 등장 모션 ===== */
.bs_txt, .bs_point {opacity:0;transform:translateY(20px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.bs.show .bs_txt, .bs.show .bs_point {opacity:1;transform:translateY(0)}
.bs.show .bs_txt:nth-child(1) {transition-delay:.15s}
.bs.show .bs_txt:nth-child(2) {transition-delay:.3s}
.bs.show .bs_point {transition-delay:.45s}
.bs.show .bs_txt:nth-child(4) {transition-delay:.6s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.bs_txt {font-size:15px}
.bs_txt + .bs_txt {margin-top:34px}
.bs_point {margin:48px 0;font-size:20px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.bs_txt {font-size:15px;line-height:1.55}
.bs_txt + .bs_txt {margin-top:30px}
.bs_point {margin:40px 0;font-size:18px;line-height:1.55}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.bs {padding:70px 0}
.bs_txt {font-size:13px;line-height:1.5}
.bs_txt + .bs_txt {margin-top:24px}
.bs_point {margin:32px 0;font-size:15px;line-height:1.5}
.bs_point br {display:none}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.bs_txt, .bs_point {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   PRF 시너지 프로그램
   ========================================================== */
.sy {padding:100px 0;overflow:hidden;background:#fff}

/* ===== 상단 마퀴 ===== */
.sy_marquee {width:100%;overflow:hidden}
.sy_marquee_track {display:flex;width:max-content;animation:sy_flow 56s linear infinite}
.sy_marquee_group {display:flex;flex:0 0 auto}
.sy_marquee_txt {flex:0 0 auto;padding-right:80px;font-size:68px;font-weight:400;line-height:1.2;letter-spacing:.02em;color:#d5d5d5;white-space:nowrap}
@keyframes sy_flow {0%{transform:translate3d(0,0,0)} 100%{transform:translate3d(-50%,0,0)}}

/* ===== 타이틀 ===== */
.sy_head {margin-top:130px;text-align:center}
.sy_label {font-size:15px;font-weight:400;line-height:1.5;letter-spacing:-.02em;color:#f0904a}
.sy_label_b {font-weight:700}
.sy_tit {margin-top:14px;font-size:39px;font-weight:500;line-height:1.4;letter-spacing:-.03em;color:#333}
.sy_eng {margin-top:14px;font-size:17px;font-weight:400;line-height:1.5;letter-spacing:.14em;color:#888}
.sy_eng_bar {margin:0 14px;letter-spacing:0;color:#ccc}

/* ===== 육각 카드 ===== */
.sy_list {display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:60px}
.sy_item {position:relative;aspect-ratio:1/1.14;overflow:hidden;cursor:pointer;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%)}
.sy_img {position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.25,.6,.3,1)}
.sy_dim {position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.45);opacity:0;transition:opacity .5s ease}
.sy_cont {position:absolute;top:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:0 12px;text-align:center}
.sy_name {font-size:23px;font-weight:700;line-height:1.4;letter-spacing:-.03em;color:#fff;word-break:keep-all;text-wrap:pretty}
.sy_desc {max-height:0;margin-top:0;overflow:hidden;opacity:0;transform:translateY(12px);transition:max-height .6s cubic-bezier(.25,.6,.3,1),margin-top .6s cubic-bezier(.25,.6,.3,1),opacity .5s ease .1s,transform .6s cubic-bezier(.25,.6,.3,1) .1s}
.sy_txt {font-size:20px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#fff;word-break:keep-all;text-wrap:pretty}
.sy_txt + .sy_txt {margin-top:14px}
.sy_sm {margin-top:6px;font-size:18px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:rgba(255,255,255,.75)}

/* ===== 호버 ===== */
.sy_item:hover .sy_img {transform:scale(1.12)}
.sy_item:hover .sy_dim {opacity:1}
.sy_item:hover .sy_desc {max-height:300px;margin-top:16px;opacity:1;transform:translateY(0)}

/* ===== 등장 모션 ===== */
.sy_label {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.sy.show .sy_label {opacity:1;transform:translateY(0)}
.sy_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease .12s,transform 1s cubic-bezier(.25,.6,.3,1) .12s}
.sy.show .sy_tit {opacity:1;transform:translateY(0)}
.sy_eng {opacity:0;transform:translateY(20px);transition:opacity .8s ease .24s,transform .9s cubic-bezier(.25,.6,.3,1) .24s}
.sy.show .sy_eng {opacity:1;transform:translateY(0)}
.sy_item {opacity:0;transform:translateY(40px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.sy.show .sy_item {opacity:1;transform:translateY(0)}
.sy.show .sy_item:nth-child(1) {transition-delay:.36s}
.sy.show .sy_item:nth-child(2) {transition-delay:.46s}
.sy.show .sy_item:nth-child(3) {transition-delay:.56s}
.sy.show .sy_item:nth-child(4) {transition-delay:.66s}
.sy.show .sy_item:nth-child(5) {transition-delay:.76s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.sy_marquee_txt {padding-right:60px;font-size:54px}
.sy_head {margin-top:100px}
.sy_tit {font-size:29px}
.sy_eng {font-size:16px}
.sy_list {gap:12px;margin-top:50px}
.sy_name {font-size:17px}
.sy_txt {font-size:13px}
.sy_txt + .sy_txt {margin-top:12px}
.sy_sm {font-size:11px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.sy_marquee_txt {padding-right:44px;font-size:40px}
.sy_head {margin-top:70px}
.sy_label {font-size:14px}
.sy_tit {font-size:24px}
.sy_eng {font-size:15px}
.sy_list {grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px}
.sy_dim {opacity:1}
.sy_desc {max-height:300px;margin-top:16px;opacity:1;transform:translateY(0)}
.sy_item:hover .sy_img {transform:none}
.sy_name {font-size:18px}
.sy_txt {font-size:13px}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.sy {padding:70px 0}
.sy_marquee_txt {padding-right:30px;font-size:32px}
.sy_head {margin-top:50px}
.sy_label {font-size:13px}
.sy_tit {margin-top:10px;font-size:19px}
.sy_eng {font-size:13px;letter-spacing:.1em}
.sy_eng_bar {margin:0 8px}
.sy_list {grid-template-columns:repeat(2,1fr);gap:10px;margin-top:32px}
.sy_name {font-size:15px}
.sy_desc {margin-top:10px}
.sy_txt {font-size:11px;line-height:1.5}
.sy_txt + .sy_txt {margin-top:8px}
.sy_sm {font-size:10px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.sy_marquee_track {animation:none}
.sy_label, .sy_tit, .sy_eng, .sy_item {opacity:1;transform:none;transition:none}
.sy_img, .sy_dim, .sy_desc {transition:none}
}

/* ==========================================================
   줄기세포 시술 단계
   ========================================================== */
.sc {padding:100px 0;overflow:hidden;background:#fff}
.sc_head {text-align:center}
.sc_lead {font-size:22px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#555}
.sc_tit {margin-top:14px;font-size:39px;font-weight:700;line-height:1.5;letter-spacing:-.03em;color:#fe7303;word-break:keep-all;text-wrap:pretty}
.sc_txt {margin-top:34px;font-size:22px;font-weight:400;line-height:1.6;letter-spacing:-.03em;color:#555;word-break:keep-all;text-wrap:pretty}

/* ===== 본문 ===== */
.sc_body {display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);align-items:center;gap:0;margin-top:80px}

/* ===== 단계 ===== */
.sc_step + .sc_step {margin-top:28px}
.sc_step_tit {font-size:35px;font-weight:400;line-height:1.4;letter-spacing:-.03em;color:#222;word-break:keep-all;text-wrap:pretty}
.sc_step_num {font-weight:400;color:#222}
.sc_step_txt {margin-top:10px;font-size:22px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#666;word-break:keep-all;text-wrap:pretty}

/* ===== 이미지 ===== */
.sc_imgs {display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.sc_img_box {overflow:hidden}
.sc_img {display:block;width:100%;height:540px;object-fit:cover;transition:transform .8s cubic-bezier(.25,.6,.3,1)}
.sc_img_box:hover .sc_img {transform:scale(1.06)}

/* ===== 등장 모션 ===== */
.sc_lead {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.sc.show .sc_lead {opacity:1;transform:translateY(0)}
.sc_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease .12s,transform 1s cubic-bezier(.25,.6,.3,1) .12s}
.sc.show .sc_tit {opacity:1;transform:translateY(0)}
.sc_txt {opacity:0;transform:translateY(20px);transition:opacity .8s ease .26s,transform .9s cubic-bezier(.25,.6,.3,1) .26s}
.sc.show .sc_txt {opacity:1;transform:translateY(0)}
.sc_step {opacity:0;transform:translateX(-40px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.sc.show .sc_step {opacity:1;transform:translateX(0)}
.sc.show .sc_step:nth-child(1) {transition-delay:.4s}
.sc.show .sc_step:nth-child(2) {transition-delay:.52s}
.sc.show .sc_step:nth-child(3) {transition-delay:.64s}
.sc.show .sc_step:nth-child(4) {transition-delay:.76s}
.sc_img_box {opacity:0;transform:translateY(40px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.sc.show .sc_img_box {opacity:1;transform:translateY(0)}
.sc.show .sc_img_box:nth-child(1) {transition-delay:.4s}
.sc.show .sc_img_box:nth-child(2) {transition-delay:.5s}
.sc.show .sc_img_box:nth-child(3) {transition-delay:.6s}
.sc.show .sc_img_box:nth-child(4) {transition-delay:.7s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.sc_tit {font-size:26px}
.sc_txt {margin-top:28px;font-size:15px;line-height:1.55}
.sc_body {gap:50px;margin-top:64px}
.sc_step + .sc_step {margin-top:42px}
.sc_step_tit {font-size:22px}
.sc_step_txt {font-size:15px}
.sc_img {height:250px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.sc_lead {font-size:15px}
.sc_tit {font-size:22px}
.sc_txt {margin-top:24px;font-size:15px;line-height:1.55}
.sc_txt br {display:none}
.sc_body {grid-template-columns:minmax(0,1fr);gap:44px;margin-top:50px}
.sc_step + .sc_step {margin-top:34px}
.sc_step_tit {font-size:20px}
.sc_step_txt {font-size:14px}
.sc_step {transform:translateY(30px)}
.sc.show .sc_step {transform:translateY(0)}
.sc_imgs {order:-1}
.sc_img {height:220px}
.sc_img_box:hover .sc_img {transform:none}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.sc {padding:70px 0}
.sc_lead {font-size:13px}
.sc_tit {margin-top:10px;font-size:18px}
.sc_txt {margin-top:20px;font-size:13px;line-height:1.5}
.sc_body {gap:34px;margin-top:36px}
.sc_step + .sc_step {margin-top:26px}
.sc_step_tit {font-size:17px}
.sc_step_txt {margin-top:6px;font-size:13px}
.sc_imgs {grid-template-columns:repeat(2,1fr);gap:6px}
.sc_img {height:170px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.sc_lead, .sc_tit, .sc_txt, .sc_step, .sc_img_box {opacity:1;transform:none;transition:none}
.sc_img {transition:none}
}

/* ==========================================================
   PRF 특장점
   ========================================================== */
.pf {position:relative;padding:100px 0;overflow:hidden;background:#5c5c5c url('/assets/images/sub/cell_01_bg4.jpg') no-repeat center center;background-size:cover}
.pf::before {content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(60,60,60,.4)}
.pf_head {position:relative;z-index:2;text-align:center}
.pf_label {font-size:17px;font-weight:400;line-height:1.5;letter-spacing:-.02em;color:#f0904a}
.pf_label_b {font-weight:700}
.pf_tit {margin-top:14px;font-size:39px;font-weight:500;line-height:1.4;letter-spacing:-.03em;color:#fff}

/* ===== 본문 ===== */
.pf_body {position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1fr);align-items:center;gap:90px;margin-top:70px}
.pf_img_box {overflow:hidden;background:#fff}
.pf_img {display:block;width:100%;height:auto}

/* ===== 리스트 ===== */
.pf_item + .pf_item {margin-top:44px}
.pf_item_tit {font-size:35px;font-weight:500;line-height:1.4;letter-spacing:-.03em;color:#fff;word-break:keep-all;text-wrap:pretty}
.pf_item_txt {margin-top:12px;font-size:18px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:rgba(255,255,255,.75);word-break:keep-all;text-wrap:balance}

/* ===== 등장 모션 ===== */
.pf_label {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.pf.show .pf_label {opacity:1;transform:translateY(0)}
.pf_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease .14s,transform 1s cubic-bezier(.25,.6,.3,1) .14s}
.pf.show .pf_tit {opacity:1;transform:translateY(0)}
.pf_img_box {opacity:0;transform:translateX(-50px);transition:opacity 1s ease .28s,transform 1.1s cubic-bezier(.25,.6,.3,1) .28s}
.pf.show .pf_img_box {opacity:1;transform:translateX(0)}
.pf_item {opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.pf.show .pf_item {opacity:1;transform:translateY(0)}
.pf.show .pf_item:nth-child(1) {transition-delay:.4s}
.pf.show .pf_item:nth-child(2) {transition-delay:.5s}
.pf.show .pf_item:nth-child(3) {transition-delay:.6s}
.pf.show .pf_item:nth-child(4) {transition-delay:.7s}
.pf.show .pf_item:nth-child(5) {transition-delay:.8s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.pf_label {font-size:16px}
.pf_tit {font-size:27px}
.pf_body {gap:60px;margin-top:56px}
.pf_item + .pf_item {margin-top:36px}
.pf_item_tit {font-size:22px}
.pf_item_txt {font-size:14px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.pf_label {font-size:15px}
.pf_tit {font-size:23px}
.pf_body {grid-template-columns:minmax(0,1fr);gap:44px;margin-top:44px}
.pf_img_box {max-width:400px;margin:0 auto;transform:translateY(40px)}
.pf.show .pf_img_box {transform:translateY(0)}
.pf_item + .pf_item {margin-top:30px}
.pf_item_tit {font-size:20px}
.pf_item_txt {font-size:14px;line-height:1.55}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.pf {padding:70px 0}
.pf_label {font-size:13px}
.pf_tit {margin-top:10px;font-size:18px}
.pf_body {gap:34px;margin-top:34px}
.pf_img_box {max-width:280px}
.pf_item + .pf_item {margin-top:24px}
.pf_item_tit {font-size:16px}
.pf_item_txt {margin-top:8px;font-size:13px;line-height:1.5}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.pf_label, .pf_tit, .pf_img_box, .pf_item {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   골수 줄기세포
   ========================================================== */
.bm {padding:100px 0;overflow:hidden;background:#fff}
.bm_eng {font-size:49px;font-weight:500;line-height:1.1;letter-spacing:-.01em;color:#e8e9de}
.bm_tit {margin-top:6px;font-size:39px;font-weight:500;line-height:1.4;letter-spacing:-.03em;color:#333}

/* ===== 본문 ===== */
.bm_body {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:80px;margin-top:50px}
.bm_img_box {overflow:hidden;border-radius:0 40px 40px 0}
.bm_img {display:block;width:100%;height:100%;object-fit:cover}

/* ===== 리스트 ===== */
.bm_list {display:flex;flex-direction:column;justify-content:center}
.bm_item {position:relative;padding-left:34px}
.bm_item + .bm_item {margin-top:70px}
.bm_num {position:absolute;top:-38px;left:0;z-index:1;font-size:57px;font-weight:400;line-height:1;letter-spacing:-.02em;color:#eeeee6}
.bm_cont {position:relative;z-index:2}
.bm_item_tit {font-size:35px;font-weight:500;line-height:1.4;letter-spacing:-.03em;color:#222;word-break:keep-all;text-wrap:pretty}
.bm_item_txt {margin-top:12px;font-size:18px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:#666;word-break:keep-all;text-wrap:balance}

/* ===== 등장 모션 ===== */
.bm_eng {opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.bm.show .bm_eng {opacity:1;transform:translateY(0)}
.bm_tit {opacity:0;transform:translateY(20px);transition:opacity .8s ease .15s,transform .9s cubic-bezier(.25,.6,.3,1) .15s}
.bm.show .bm_tit {opacity:1;transform:translateY(0)}
.bm_img_box {opacity:0;transform:translateX(-70px);transition:opacity 1s ease .28s,transform 1.1s cubic-bezier(.25,.6,.3,1) .28s}
.bm.show .bm_img_box {opacity:1;transform:translateX(0)}
.bm_item {opacity:0;transform:translateX(70px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.bm.show .bm_item {opacity:1;transform:translateX(0)}
.bm.show .bm_item:nth-child(1) {transition-delay:.42s}
.bm.show .bm_item:nth-child(2) {transition-delay:.56s}
.bm.show .bm_item:nth-child(3) {transition-delay:.7s}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.bm_eng {font-size:40px}
.bm_tit {font-size:36px}
.bm_body {gap:60px;margin-top:44px}
.bm_item + .bm_item {margin-top:56px}
.bm_num {top:-32px;font-size:49px}
.bm_item_tit {font-size:31px}
.bm_item_txt {font-size:17px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.bm_eng {font-size:34px}
.bm_tit {font-size:26px}
.bm_body {grid-template-columns:minmax(0,1fr);gap:44px;margin-top:36px}
.bm_img_box {border-radius:0 24px 24px 0;transform:translateY(40px)}
.bm.show .bm_img_box {transform:translateY(0)}
.bm_img {height:auto}
.bm_item {padding-left:28px;transform:translateY(30px)}
.bm.show .bm_item {transform:translateY(0)}
.bm_item + .bm_item {margin-top:44px}
.bm_num {top:-26px;font-size:40px}
.bm_item_tit {font-size:23px}
.bm_item_txt {font-size:15px;line-height:1.45}
.bm_item_txt br {display:none}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.bm {padding:70px 0}
.bm_eng {font-size:24px}
.bm_tit {margin-top:4px;font-size:19px}
.bm_body {gap:34px;margin-top:28px}
.bm_img_box {border-radius:0 16px 16px 0}
.bm_item {padding-left:22px}
.bm_item + .bm_item {margin-top:34px}
.bm_num {top:-20px;font-size:36px}
.bm_item_tit {font-size:17px}
.bm_item_txt {margin-top:8px;font-size:14px;line-height:1.55}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.bm_eng, .bm_tit, .bm_img_box, .bm_item {opacity:1;transform:none;transition:none}
}

/* ==========================================================
   혈액 줄기세포 - 좌우 반전
   ========================================================== */
.bm_rev .bm_head {text-align:right}
.bm_rev .bm_img_box {border-radius:40px 0 0 40px;transform:translateX(70px)}
.bm_rev.show .bm_img_box {transform:translateX(0)}
.bm_rev .bm_item {transform:translateX(-70px)}
.bm_rev.show .bm_item {transform:translateX(0)}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.bm_rev .bm_head {text-align:left}
.bm_rev .bm_list {order:2}
.bm_rev .bm_img_box {order:1;border-radius:24px 0 0 24px;transform:translateY(40px)}
.bm_rev.show .bm_img_box {transform:translateY(0)}
.bm_rev .bm_item {transform:translateY(30px)}
.bm_rev.show .bm_item {transform:translateY(0)}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.bm_rev .bm_img_box {border-radius:16px 0 0 16px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.bm_rev .bm_img_box, .bm_rev .bm_item {transform:none;transition:none}
}

/* ==========================================================
   Q&A
   ========================================================== */
/* 배경이미지(cell_01_bg3.jpg) 와 그 위를 덮던 흰 막(::before) 을 걷어내고
   먹색 단색으로 바꿨다. 바탕이 어두워졌으므로 글자·구분선·화살표를
   전부 흰색 계열로 뒤집는다. (260915) */
.qa {position:relative;padding:100px 0;overflow:hidden;background:#222222}
.qa_inner {position:relative;z-index:2}
.qa_head {text-align:center}
.qa_tit {font-size:56px;font-weight:400;line-height:1.1;letter-spacing:-.02em;color:#fff}
.qa_stit {margin-top:10px;font-size:20px;font-weight:400;line-height:1.4;letter-spacing:-.03em;color:rgba(255,255,255,.8)}

/* ===== 리스트 ===== */
.qa_list {margin-top:56px;border-top:4px solid #fff;border-bottom:4px solid #fff}
.qa_item + .qa_item {border-top:1px solid rgba(255,255,255,.3)}
.qa_q {display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:21px 10px;background:none;text-align:left;cursor:pointer}
.qa_q_txt {font-size:20px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:rgba(255,255,255,.78);word-break:keep-all;text-wrap:balance;transition:font-weight .2s ease,color .2s ease}
.qa_q:hover .qa_q_txt {font-weight:700;color:#fff}
.qa_item.on .qa_q_txt {font-weight:700;color:#fff}
.qa_arrow {flex:0 0 auto;width:0;height:0;border-top:9px solid #fff;border-right:7px solid transparent;border-left:7px solid transparent;transition:transform .4s cubic-bezier(.25,.6,.3,1)}
.qa_item.on .qa_arrow {transform:rotate(180deg)}

/* ===== 답변 ===== */
.qa_a {max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.25,.6,.3,1)}
.qa_a_inner {padding:0 10px 28px}
.qa_a_txt {font-size:18px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:rgba(255,255,255,.65);word-break:keep-all;text-wrap:balance}

/* ===== 등장 모션 ===== */
.qa_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.qa.show .qa_tit {opacity:1;transform:translateY(0)}
.qa_stit {opacity:0;transform:translateY(20px);transition:opacity .8s ease .15s,transform .9s cubic-bezier(.25,.6,.3,1) .15s}
.qa.show .qa_stit {opacity:1;transform:translateY(0)}
.qa_list {opacity:0;transform:translateY(30px);transition:opacity .9s ease .3s,transform 1s cubic-bezier(.25,.6,.3,1) .3s}
.qa.show .qa_list {opacity:1;transform:translateY(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.qa_tit {font-size:47px}
.qa_stit {font-size:20px}
.qa_list {margin-top:46px}
.qa_q {padding:21px 8px}
.qa_q_txt {font-size:17px}
.qa_a_inner {padding:0 8px 24px}
.qa_a_txt {font-size:15px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.qa_tit {font-size:38px}
.qa_stit {font-size:18px}
.qa_list {margin-top:38px}
.qa_q {padding:19px 6px}
.qa_q_txt {font-size:16px}
.qa_a_inner {padding:0 6px 22px}
.qa_a_txt {font-size:15px;line-height:1.5}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.qa {padding:70px 0}
.qa_tit {font-size:34px}
.qa_stit {margin-top:8px;font-size:15px}
.qa_list {margin-top:28px;border-top-width:3px;border-bottom-width:3px}
.qa_q {gap:14px;padding:16px 4px}
.qa_q_txt {font-size:14px}
.qa_arrow {border-top-width:7px;border-right-width:5px;border-left-width:5px}
.qa_a_inner {padding:0 4px 18px}
.qa_a_txt {font-size:13px;line-height:1.45}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.qa_tit, .qa_stit, .qa_list {opacity:1;transform:none;transition:none}
.qa_a, .qa_arrow {transition:none}
}

/* ==========================================================
   시술 안내 카테고리
   ========================================================== */
.cg {padding:100px 0;overflow:hidden;background:#fff}
.cg_tit {font-size:16px;font-weight:800;line-height:1.4;letter-spacing:-.05em;color:#111}
.cg_list {display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:28px}
.cg_item {display:flex;flex-direction:column;align-items:center;min-height:224px;padding:24px;border:1px solid rgba(0,0,0,.15);background:#fff;text-align:center;transition:transform .3s ease,border-color .3s ease,background-color .3s ease,color .3s ease,box-shadow .3s ease,opacity .8s ease;cursor:pointer}
.cg_item:hover {transform:translateY(-4px);border-color:#ff6a00}
.cg_item.on {border-color:#ff6a00;background:#ff6a00;color:#fff;box-shadow:0 14px 32px rgba(255,106,0,.18)}
.cg_ico {display:flex;align-items:center;justify-content:center;width:48px;height:48px;color:currentColor}
.cg_ico svg {width:100%;height:100%}
.cg_name {margin-top:24px;font-size:18px;font-weight:800;line-height:1.4;letter-spacing:-.055em;color:currentColor}
.cg_txt {margin-top:12px;font-size:16px;font-weight:400;line-height:1.45;letter-spacing:-.03em;color:rgba(0,0,0,.5);word-break:keep-all;text-wrap:balance}
.cg_item.on .cg_txt {color:rgba(255,255,255,.8)}
.cg_more {display:inline-flex;align-items:center;gap:4px;margin-top:20px;font-size:16px;font-weight:700;line-height:1;color:#ff6a00}
.cg_item.on .cg_more {color:#fff}
.cg_more svg {transition:transform .3s ease}
.cg_item:hover .cg_more svg {transform:translateX(4px)}

/* ===== 안내문 ===== */
.cg_note {display:flex;align-items:flex-start;justify-content:center;gap:12px;margin-top:28px;padding:20px;background:#f6f5f4}
.cg_note_ico {flex:0 0 auto;width:18px;height:18px;margin-top:2px;color:#ff6a00}
.cg_note_ico svg {width:100%;height:100%}
.cg_note_txt {font-size:16px;font-weight:400;line-height:1.45;letter-spacing:-.03em;color:rgba(0,0,0,.55);text-align:center;word-break:keep-all;text-wrap:pretty}

/* ===== 등장 모션 ===== */
.cg_tit {opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.25,.6,.3,1)}
.cg.show .cg_tit {opacity:1;transform:translateY(0)}
.cg_item {opacity:0}
.cg.show .cg_item {opacity:1}
.cg.show .cg_item:nth-child(1) {transition-delay:.15s}
.cg.show .cg_item:nth-child(2) {transition-delay:.22s}
.cg.show .cg_item:nth-child(3) {transition-delay:.29s}
.cg.show .cg_item:nth-child(4) {transition-delay:.36s}
.cg.show .cg_item:nth-child(5) {transition-delay:.43s}
.cg.show .cg_item:nth-child(6) {transition-delay:.5s}
.cg_note {opacity:0;transform:translateY(20px);transition:opacity .8s ease .6s,transform .9s cubic-bezier(.25,.6,.3,1) .6s}
.cg.show .cg_note {opacity:1;transform:translateY(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.cg_list {grid-template-columns:repeat(3,1fr)}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.cg_list {grid-template-columns:repeat(2,1fr)}
.cg_item {min-height:200px}
.cg_item:hover {transform:none}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.cg {padding:70px 0}
.cg_tit {font-size:16px}
.cg_list {grid-template-columns:1fr;gap:10px;margin-top:20px}
.cg_item {min-height:0;padding:24px 20px}
.cg_ico {width:40px;height:40px}
.cg_name {margin-top:18px;font-size:15px}
.cg_txt {font-size:12px}
.cg_txt br {display:none}
.cg_more {margin-top:16px}
.cg_note {gap:10px;margin-top:20px;padding:18px 16px}
.cg_note_txt {font-size:12px;text-align:left}
}

/* ==========================================================
   시술 후 주의사항
   ========================================================== */
.cr {padding:100px 0;overflow:hidden;border-top:1px solid rgba(0,0,0,.06);border-bottom:1px solid rgba(0,0,0,.06);background:#fcfbfa}
.cr_tit {font-size:56px;font-weight:500;line-height:1.2;letter-spacing:-.055em;color:#111;text-align:center;word-break:keep-all;text-wrap:pretty}

/* ===== 탭 ===== */
.cr_tabs {display:flex;flex-wrap:wrap;justify-content:center;margin-top:40px;border-bottom:1px solid rgba(0,0,0,.15)}
.cr_tab {padding:16px;border-bottom:2px solid transparent;background:none;font-size:18px;font-weight:700;line-height:1.4;letter-spacing:-.05em;color:rgba(0,0,0,.45);transition:color .25s ease,border-color .25s ease;cursor:pointer}
.cr_tab:hover {color:#111}
.cr_tab.on {border-bottom-color:#ff6a00;color:#ff6a00}

/* ===== 패널 ===== */
.cr_panel {display:none}
.cr_panel.on {display:block}
.cr_body {display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;margin-top:32px}
.cr_side {border:1px solid rgba(0,0,0,.1);background:#fff}
.cr_side_btn {display:block;width:100%;padding:20px 24px;border-bottom:1px solid rgba(0,0,0,.1);background:none;font-size:16px;font-weight:700;line-height:1.4;letter-spacing:-.03em;color:rgba(0,0,0,.65);text-align:left;transition:background-color .25s ease,color .25s ease;cursor:pointer;word-break:keep-all;text-wrap:pretty}
.cr_side_btn:last-child {border-bottom:0}
.cr_side_btn:hover {background:rgba(0,0,0,.025)}
.cr_side_btn.on {background:rgba(255,106,0,.05);color:#ff6a00}

/* ===== 아코디언 ===== */
.cr_cont {border:1px solid rgba(0,0,0,.1);background:#fff}
.cr_acc {border-bottom:1px solid rgba(0,0,0,.1)}
.cr_acc:last-child {border-bottom:0}
.cr_acc_q {display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:20px 24px;background:none;text-align:left;cursor:pointer}
.cr_acc_q_txt {font-size:16px;font-weight:700;line-height:1.5;letter-spacing:-.03em;color:#111;transition:color .25s ease;word-break:keep-all;text-wrap:balance}
.cr_acc_q:hover .cr_acc_q_txt {color:#ff6a00}
.cr_acc_arrow {flex:0 0 auto;color:#111;transition:transform .4s cubic-bezier(.25,.6,.3,1)}
.cr_acc.on .cr_acc_arrow {transform:rotate(180deg)}
.cr_acc_a {max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.25,.6,.3,1)}
.cr_acc_a_inner {padding:0 24px 24px}
.cr_acc_txt {font-size:16px;font-weight:400;line-height:1.6;letter-spacing:-.03em;color:rgba(0,0,0,.6);word-break:keep-all;text-wrap:balance}

/* 시술별 주의사항 단계 01~06 (261013) */
.cr_steps {margin:0;padding:0;list-style:none}
.cr_step {padding:16px 0;border-top:1px solid rgba(0,0,0,.08)}
.cr_step:first-child {padding-top:0;border-top:0}
.cr_step:last-child {padding-bottom:0}
.cr_step_tit {display:flex;align-items:baseline;gap:8px;margin-bottom:6px;
	font-size:15px;font-weight:700;line-height:1.5;letter-spacing:-.03em;color:#111;word-break:keep-all}
.cr_step_no {flex:0 0 auto;font-size:13px;font-weight:700;letter-spacing:.04em;color:#ff6a00}

/* ===== 등장 모션 ===== */
.cr_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.cr.show .cr_tit {opacity:1;transform:translateY(0)}
.cr_tabs {opacity:0;transform:translateY(20px);transition:opacity .8s ease .18s,transform .9s cubic-bezier(.25,.6,.3,1) .18s}
.cr.show .cr_tabs {opacity:1;transform:translateY(0)}
.cr_body {opacity:0;transform:translateY(24px);transition:opacity .9s ease .32s,transform 1s cubic-bezier(.25,.6,.3,1) .32s}
.cr.show .cr_body {opacity:1;transform:translateY(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.cr_tit {font-size:44px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.cr_tit {font-size:36px}
.cr_tabs {margin-top:32px}
.cr_tab {padding:14px 12px;font-size:13px}
.cr_body {grid-template-columns:minmax(0,1fr);gap:16px}
.cr_side {display:flex;flex-wrap:wrap}
.cr_side_btn {flex:1 1 auto;width:auto;padding:14px 16px;border-right:1px solid rgba(0,0,0,.1);border-bottom:0;font-size:13px;text-align:center}
.cr_side_btn:last-child {border-right:0}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.cr {padding:70px 0}
.cr_tit {font-size:24px}
.cr_tabs {margin-top:24px}
.cr_tab {padding:12px 10px;font-size:12px}
.cr_side {display:none}
.cr_acc_q {padding:16px}
.cr_acc_q_txt {font-size:13px}
.cr_acc_a_inner {padding:0 16px 18px}
.cr_acc_txt {font-size:13px;line-height:1.55}
.cr_step {padding:12px 0}
.cr_step_tit {gap:6px;font-size:13px}
.cr_step_no {font-size:11.5px}
}

/* ==========================================================
   자주 묻는 질문 (FAQ)
   ========================================================== */
.fq {padding:100px 0;overflow:hidden;background:#fff}
.fq_tit {font-size:54px;font-weight:500;line-height:1.2;letter-spacing:-.055em;color:#111;text-align:center;word-break:keep-all;text-wrap:pretty}

/* ===== 리스트 ===== */
.fq_list {display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:40px}
.fq_item {align-self:start;border:1px solid rgba(0,0,0,.1);background:#fff}
.fq_q {display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:16px 20px;background:none;text-align:left;cursor:pointer}
.fq_q_txt {font-size:16px;font-weight:700;line-height:1.5;letter-spacing:-.04em;color:#111;transition:color .25s ease;word-break:keep-all;text-wrap:balance}
.fq_q:hover .fq_q_txt {color:#ff6a00}
.fq_q_mark {margin-right:12px;color:#ff6a00}
.fq_arrow {flex:0 0 auto;color:#111;transition:transform .4s cubic-bezier(.25,.6,.3,1)}
.fq_item.on .fq_arrow {transform:rotate(180deg)}
.fq_a {max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.25,.6,.3,1)}
.fq_a_inner {padding:0 20px 20px}
.fq_a_txt {font-size:16px;font-weight:400;line-height:1.55;letter-spacing:-.03em;color:rgba(0,0,0,.6);word-break:keep-all;text-wrap:balance}

/* ===== 상담 안내 ===== */
.fq_cs {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-top:48px;padding:40px;background:#fcf0e9}
.fq_cs_info {display:flex;align-items:flex-start;gap:20px}
.fq_cs_ico {flex:0 0 auto;width:47px;height:47px;color:#ff6a00}
.fq_cs_ico svg {width:100%;height:100%}
.fq_cs_tit {font-size:18px;font-weight:800;line-height:1.4;letter-spacing:-.055em;color:#111}
.fq_cs_txt {margin-top:8px;font-size:14px;font-weight:400;line-height:1.45;letter-spacing:-.03em;color:rgba(0,0,0,.6);word-break:keep-all;text-wrap:pretty}
.fq_cs_btns {display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.fq_cs_btn {display:flex;align-items:center;justify-content:center;gap:8px;min-height:80px;padding:0 20px;border:1px solid rgba(0,0,0,.1);background:#fff;font-size:14px;font-weight:700;letter-spacing:-.03em;color:#111;text-align:center;transition:border-color .25s ease,color .25s ease}
.fq_cs_btn:hover {border-color:#ff6a00;color:#ff6a00}
.fq_cs_btn svg {flex:0 0 auto;color:#ff6a00}
.fq_note {margin-top:36px;font-size:12px;font-weight:400;line-height:1.6;letter-spacing:-.03em;color:rgba(0,0,0,.35);word-break:keep-all;text-wrap:pretty}

/* ===== 등장 모션 ===== */
.fq_tit {opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.fq.show .fq_tit {opacity:1;transform:translateY(0)}
.fq_list {opacity:0;transform:translateY(24px);transition:opacity .9s ease .2s,transform 1s cubic-bezier(.25,.6,.3,1) .2s}
.fq.show .fq_list {opacity:1;transform:translateY(0)}
.fq_cs {opacity:0;transform:translateY(24px);transition:opacity .9s ease .35s,transform 1s cubic-bezier(.25,.6,.3,1) .35s}
.fq.show .fq_cs {opacity:1;transform:translateY(0)}
.fq_note {opacity:0;transition:opacity .8s ease .5s}
.fq.show .fq_note {opacity:1}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.fq_tit {font-size:42px}
.fq_cs {padding:32px}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.fq_tit {font-size:34px}
.fq_list {grid-template-columns:minmax(0,1fr);margin-top:32px}
.fq_cs {grid-template-columns:minmax(0,1fr);gap:28px;margin-top:36px;padding:28px}
.fq_cs_txt br {display:none}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.fq {padding:70px 0}
.fq_tit {font-size:24px}
.fq_list {gap:10px;margin-top:24px}
.fq_q {gap:12px;padding:14px 16px}
.fq_q_txt {font-size:13px}
.fq_q_mark {margin-right:8px}
.fq_a_inner {padding:0 16px 16px}
.fq_a_txt {font-size:13px;line-height:1.5}
.fq_cs {gap:22px;padding:24px 20px}
.fq_cs_info {gap:14px}
.fq_cs_ico {width:36px;height:36px}
.fq_cs_tit {font-size:17px}
.fq_cs_txt {font-size:13px}
.fq_cs_btns {grid-template-columns:minmax(0,1fr);gap:8px}
.fq_cs_btn {min-height:56px;font-size:13px}
.fq_note {margin-top:28px;font-size:11px;line-height:1.55}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.cg_tit, .cg_item, .cg_note, .cr_tit, .cr_tabs, .cr_body, .fq_tit, .fq_list, .fq_cs, .fq_note {opacity:1;transform:none;transition:none}
.cr_acc_a, .cr_acc_arrow, .fq_a, .fq_arrow {transition:none}
}

/* ==========================================================
   시그니처
   ========================================================== */
.sg {padding:100px max(4vw, calc((100% - 1600px) / 2));overflow:hidden;background:#080808;color:#fff}
.sg_inner {width:100%}

/* ===== 헤더 ===== */
.sg_head {display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.15)}
.sg_label {font-size:12px;font-weight:700;line-height:1.4;letter-spacing:.28em;text-transform:uppercase;color:#ff6a00}
.sg_tit {margin-top:12px;font-size:63px;font-weight:400;line-height:1;letter-spacing:-.02em;color:#fff}
.sg_desc {max-width:384px;font-size:14px;font-weight:400;line-height:1.45;letter-spacing:-.03em;color:rgba(255,255,255,.55);word-break:keep-all;text-wrap:pretty}

/* ===== 영상 ===== */
.sg_movie {position:relative;width:100%;margin-top:48px;padding-top:56.25%;overflow:hidden;border-radius:8px;background:#000;box-shadow:0 0 40px rgba(0,0,0,.6)}
.sg_movie iframe {position:absolute;top:0;left:0;width:100%;height:100%;border:0}

/* ===== 배너 슬라이드 ===== */
/* 배너 세 장의 실제 박스 크기를 똑같이 맞춘다. (260915)
   예전에는 :first-child 의 왼쪽 / :last-child 의 오른쪽 패딩만 빼서,
   가운데 것만 좌우 12px 씩 들어가 12px 좁았다(479/467/479).
   이제 모든 아이템에 좌우 12px 을 주고 트랙을 -12px 씩 당겨
   바깥 끝은 그대로 맞추면서 세 박스를 같은 폭으로 만든다.
   트랙 폭 기준 % 이동이므로 슬라이드 계산식은 그대로 유효하다. */
.sg_slide {margin-top:48px;overflow:hidden}
.sg_track {display:flex;margin:0 -12px;touch-action:pan-y;transition:transform .5s ease-out}
.sg_track.dragging {transition:none;cursor:grabbing;user-select:none}
.sg_item {flex:0 0 33.3333%;padding:0 12px}
.sg_img {-webkit-user-drag:none;user-drag:none}

/* 슬라이드 진행 바 (261013)
   배너가 옆으로 넘어간다는 걸 알 수 있게 아래에 가는 바를 둔다.
   칠해진 길이가 '한 화면에 보이는 장수 / 전체 장수' 이고, 넘길수록 옆으로 간다. */
.sg_bar {position:relative;height:3px;margin-top:22px;overflow:hidden;border-radius:2px;background:rgba(255,255,255,.14)}
.sg_bar.off {display:none}
.sg_bar_fill {position:absolute;top:0;left:0;width:33.3333%;height:100%;border-radius:2px;background:#ff6a00;
	transition:transform .5s ease-out,width .3s ease}

/* 모바일 제목 탭 — 767 이하에서만 보인다 */
.sg_tabs {display:none}
.sg_btn {display:block;width:100%;overflow:hidden;border:1px solid rgba(255,255,255,.15);background:#000;text-align:left;transition:border-color .5s ease,box-shadow .5s ease;cursor:pointer}
.sg_btn:hover {border-color:rgba(255,106,0,.8)}
.sg_btn.on {border-color:#ff6a00;box-shadow:0 0 35px rgba(255,106,0,.35)}
.sg_img_box {position:relative;display:block;overflow:hidden}
.sg_img {display:block;width:100%;height:auto;transition:transform .7s cubic-bezier(.25,.6,.3,1)}
.sg_btn:hover .sg_img {transform:scale(1.035)}
.sg_img_dim {position:absolute;left:0;bottom:0;width:100%;height:33.3333%;background:linear-gradient(to top,rgba(0,0,0,.55),transparent)}
.sg_info {display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:20px}
.sg_info_l {display:block}
.sg_num {display:block;font-size:11px;font-weight:700;line-height:1.4;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.sg_name {display:block;margin-top:8px;font-size:18px;font-weight:800;line-height:1.4;letter-spacing:-.03em;color:#ff6a00}
.sg_more {flex:0 0 auto;padding:6px 12px;border:1px solid #ff6a00;font-size:11px;font-weight:700;line-height:1.4;color:#ff6a00;transition:background-color .3s ease,color .3s ease}
.sg_btn:hover .sg_more {background:#ff6a00;color:#fff}

/* ===== 상세 ===== */
.sg_detail {margin-top:64px;padding:40px;border-top:1px solid #ff6a00;background:#111;scroll-margin-top:96px}
.sg_detail_top {display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,.7fr);align-items:stretch;gap:32px}
.sg_detail_img {display:block;width:100%;height:58vh;min-height:480px;object-fit:cover}
.sg_detail_info {display:flex;flex-direction:column;justify-content:space-between;padding:40px;border:1px solid rgba(255,255,255,.15)}
.sg_detail_label {font-size:12px;font-weight:700;line-height:1.4;letter-spacing:.28em;text-transform:uppercase;color:#ff6a00}
.sg_detail_tit {margin-top:20px;font-size:52px;font-weight:400;line-height:.95;letter-spacing:-.02em;color:#fff}
.sg_detail_eng {margin-top:16px;font-size:14px;font-weight:700;line-height:1.4;letter-spacing:.16em;color:#ff6a00}
.sg_detail_txt {max-width:512px;margin-top:36px;font-size:16px;font-weight:400;line-height:1.6;letter-spacing:-.03em;color:rgba(255,255,255,.7);word-break:keep-all;text-wrap:pretty}
.sg_detail_foot {margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.15)}
.sg_detail_note {font-size:14px;font-weight:400;line-height:1.5;letter-spacing:-.03em;color:rgba(255,255,255,.5);word-break:keep-all;text-wrap:pretty}
.sg_detail_close {margin-top:24px;padding:11px 17px;border:1px solid rgba(255,255,255,.3);background:none;font-size:14px;font-weight:700;letter-spacing:-.03em;color:#fff;transition:border-color .3s ease,background-color .3s ease;cursor:pointer}
.sg_detail_close:hover {border-color:#ff6a00;background:#ff6a00}
.sg_detail_bot {margin-top:32px}
.sg_detail_full {display:block;width:100%;height:auto;object-fit:contain}

/* ===== 등장 모션 ===== */
.sg_head {opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.sg.show .sg_head {opacity:1;transform:translateY(0)}
.sg_movie {opacity:0;transform:translateY(40px);transition:opacity 1s ease .2s,transform 1.1s cubic-bezier(.25,.6,.3,1) .2s}
.sg.show .sg_movie {opacity:1;transform:translateY(0)}
.sg_item {opacity:0;transform:translateY(40px);transition:opacity .9s ease,transform 1s cubic-bezier(.25,.6,.3,1)}
.sg.show .sg_item {opacity:1;transform:translateY(0)}
.sg.show .sg_item:nth-child(1) {transition-delay:.4s}
.sg.show .sg_item:nth-child(2) {transition-delay:.52s}
.sg.show .sg_item:nth-child(3) {transition-delay:.64s}
.sg_detail {opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .7s cubic-bezier(.25,.6,.3,1)}
.sg_detail.show {opacity:1;transform:translateY(0)}

/* ==========================================================
   1400
   ========================================================== */
@media (max-width:1400px){
.sg_tit {font-size:49px}
.sg_movie {margin-top:40px}
.sg_slide {margin-top:40px}
.sg_bar {margin-top:18px}
.sg_name {font-size:18px}
.sg_detail {margin-top:56px;padding:32px}
.sg_detail_top {gap:24px}
.sg_detail_img {height:50vh;min-height:400px}
.sg_detail_info {padding:32px}
.sg_detail_tit {font-size:42px}
.sg_detail_txt {margin-top:28px;font-size:15px;line-height:1.55}
}

/* ==========================================================
   1024
   ========================================================== */
@media (max-width:1024px){
.sg_head {flex-direction:column;align-items:flex-start;gap:16px}
.sg_tit {font-size:38px}
.sg_desc {max-width:none;font-size:13px}
.sg_movie {margin-top:32px}
.sg_slide {margin-top:32px}
.sg_bar {margin-top:16px;height:2px}
.sg_item {flex:0 0 50%}
.sg_btn:hover .sg_img {transform:none}
.sg_info {padding:16px}
.sg_name {font-size:17px}
.sg_detail {margin-top:44px;padding:24px}
.sg_detail_top {grid-template-columns:minmax(0,1fr);gap:20px}
.sg_detail_img {height:auto;min-height:0}
.sg_detail_info {padding:26px}
.sg_detail_tit {margin-top:16px;font-size:38px}
.sg_detail_txt {max-width:none;margin-top:24px;font-size:15px}
.sg_detail_foot {margin-top:28px}
.sg_detail_bot {margin-top:20px}
}

/* ==========================================================
   767
   ========================================================== */
@media (max-width:767px){
.sg {padding:70px 20px}
.sg_head {padding-bottom:20px}
.sg_label {font-size:11px;letter-spacing:.22em}
.sg_tit {margin-top:8px;font-size:32px}
.sg_desc {font-size:13px}
.sg_movie {margin-top:26px}
.sg_track {margin:0}
.sg_item {flex:0 0 100%;padding:0}
/* 제목 탭 : 헤더 바로 아래에 고정한다. (260915)
   헤더가 position:fixed / top:16px / 높이 64px 이라 아래 끝이 80px 이다.
   .sg · .sub · body 가 모두 overflow:hidden 이라 position:sticky 는 동작하지
   않는다(조상에 transform 은 없어서 fixed 는 정상 동작한다).
   그래서 fixed 로 붙이고, 배너 영역이 화면에 있을 때만 .on 으로 보이게 한다.
   좌우를 화면 끝까지 늘려서 뒤 내용이 비치지 않도록 한다. */
/* 한 줄에 3개씩 깔고 최대 3줄까지 보여 준다. 그보다 많으면 이 안에서만 밀어 본다.
   예전에는 한 줄로 늘어서 옆으로 밀어야 해서 뒤쪽 탭이 있는지 알기 어려웠다. (261013) */
.sg_tabs {position:fixed;top:80px;left:0;right:0;z-index:40;
	display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:10px 20px;background:rgba(8,8,8,.94);
	max-height:min(46vh,190px);overflow-y:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
	opacity:0;visibility:hidden;transform:translateY(-10px);
	transition:opacity .25s ease,transform .25s ease,visibility .25s ease}
.sg_tabs.on {opacity:1;visibility:visible;transform:none}
.sg_tabs::-webkit-scrollbar {display:none}
/* 칸이 좁으니 글자는 두 줄까지 쓰고, 그보다 길면 … 으로 줄인다 */
.sg_tab {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
	min-width:0;padding:9px 6px;border:1px solid rgba(255,255,255,.25);border-radius:0;background:none;
	font-family:inherit;font-size:11.5px;font-weight:700;line-height:1.3;letter-spacing:-.02em;
	color:rgba(255,255,255,.6);text-align:center;word-break:keep-all;overflow:hidden;cursor:pointer;
	transition:border-color .25s ease,background-color .25s ease,color .25s ease}
.sg_tab.on {border-color:#ff6a00;background:#ff6a00;color:#fff}
.sg_slide {margin-top:26px}   /* 탭이 fixed 라 흐름에서 빠진다 */
.sg_info {gap:12px;padding:14px}
.sg_num {font-size:10px}
.sg_name {margin-top:6px;font-size:16px}
.sg_more {padding:5px 10px;font-size:10px}
.sg_detail {margin-top:34px;padding:18px}
.sg_detail_info {padding:20px}
.sg_detail_label {font-size:11px;letter-spacing:.22em}
.sg_detail_tit {margin-top:12px;font-size:28px}
.sg_detail_eng {margin-top:10px;font-size:12px}
.sg_detail_txt {margin-top:18px;font-size:14px;line-height:1.55}
.sg_detail_foot {margin-top:22px;padding-top:16px}
.sg_detail_note {font-size:13px}
.sg_detail_close {margin-top:18px;padding:10px 16px;font-size:13px}
}

/* ==========================================================
   모션 최소화 설정
   ========================================================== */
@media (prefers-reduced-motion:reduce){
.sg_head, .sg_movie, .sg_item, .sg_detail {opacity:1;transform:none;transition:none}
.sg_img, .sg_more, .sg_btn {transition:none}
}

/* ==========================================================
   1921 이상 — 4K 등 초광폭 화면
   ----------------------------------------------------------
   기본 디자인이 1720px 기준이라 3840px 에서는 내용이 화면 가운데
   45% 안에만 몰려 허전해 보인다. 이 구간에서만 컨테이너·글자·
   롤링 칸을 한 단계씩 키운다. 1920 이하는 전혀 건드리지 않는다.
   (260916)
   ========================================================== */
@media (min-width:1921px){
/* 서브 비주얼 — 폭은 1600 고정, 글자만 키운다 */
.sv_eng {font-size:14px;margin-bottom:16px}
.sv_tit {font-size:106px}
.sv_desc {max-width:720px;margin-top:24px;font-size:17px}

/* 공간 갤러리 */
/* 높이는 비율이 정한다 */

/* 장비 롤링 — 칸을 키워 같은 장비가 덜 반복돼 보이게 */
.dv_item {width:400px;margin-right:32px}
.dv_label {font-size:18px}
.dv_tit {font-size:59px}
.dv_name {margin-top:24px;font-size:23px}

/* 줄기세포 도입 · 센터 비주얼 */
.rg_tit {font-size:49px}
.rg_txt {font-size:23px}
.bs_txt {font-size:22px}
.bs_point {margin:64px 0;font-size:25px}

/* 시그니처 */
.sg_tit {font-size:77px}
.sg_desc {max-width:460px;font-size:16px}

/* Q&A */
.qa_tit {font-size:68px}
.qa_stit {font-size:23px}
.qa_q_txt {font-size:23px}
.qa_a_txt {font-size:21px}

/* 오시는길 */
.lo_time_li {font-size:22px}
.lo_day {width:100px}
.lo_note {font-size:17px}
}

/* ═══════════ 비국문 조판 보정 (260921) — 영문·일문과 같은 처리 ═══════════
   1) .hy_txt / .hy_sm : 1400px 초과 구간에만 white-space:nowrap 이 걸려 있다.
      국문은 한 줄에 들어가지만 중문은 넘쳐 옆 항목 글자 위로 겹친다.
      1400px 이하에 이미 있는 줄바꿈 규칙을 그 위 구간에도 적용한다.
      ※ 중문에 word-break:keep-all 을 쓰면 CJK 를 한 덩어리로 봐서 줄바꿈이 막힌다.
        기본값으로 두고 line-break:strict 로 금칙처리만 켠다.
   2) .hy_box : 줄바꿈을 허용하면 360px 말풍선이 꽉 차 같은 줄 이웃과 겹친다.
      같은 줄 이웃의 중심 간격이 '항목 폭 × 2' 이므로 190% 로 두면 간격이 남는다.
   3) .hr_txt : .hr_circle 이 align-items:center 라 글자 길이만큼만 차지한다.
      원 밖으로 나간 꼬리를 옆 원의 흰 배경이 덮으므로 원 지름의 75% 로 묶는다. */
@media (min-width:1401px) {
	.hy_txt, .hy_sm { white-space: normal; word-break: normal; line-break: strict; }
	.hy_box { width: 190%; margin-left: -95%; }
	.hy_item:first-child .hy_box { width: 145%; }
	.hy_item:last-child  .hy_box { width: 145%; }
	/* 국문보다 글이 길어 말풍선이 두 배 가까이 높다(영문 240px, 국문 126px).
	   그대로 두면 위로는 'ABOUT HERNE' 제목을, 아래로는 로고를 덮는다.
	   (영문 위 66px·아래 36px, 일문 위 36px 겹침) 선 위아래 여백을 더 준다. */
	.hy_list { margin: 300px 0 280px; }
}
.hr_txt { max-width: 75%; }

/* 출구 표기 : '新论岘站 7号' 과 '出口' 가 글자 단위로 갈라지지 않게,
   띄어쓰기 자리에서만 끊기도록 묶어 둔다. */
.tr_exit, .tr_mark { word-break: keep-all; }


/* ==========================================================================
   시그니처 배너 ─ 올린 이미지 크기와 상관없이 같은 칸에 맞춘다 (260929)
   --------------------------------------------------------------------------
   예전에는 .sg_img 가 height:auto 라 이미지의 원래 비율 그대로 늘어났다.
   그래서 세로가 긴 이미지를 하나 올리면 그 카드만 길어져 줄이 어긋났다.
   (기존 배너 960x1200 = 4:5 기준, 748x1000 을 올렸더니 529px 자리에 566px)

   이제 칸을 4:5 로 고정하고 이미지를 cover 로 채운다.
   세로가 길든 가로가 길든 가운데를 기준으로 잘려 들어가므로 줄이 늘 맞는다.
   권장 업로드 크기는 960 x 1200 px ─ 그대로 올리면 잘리는 곳 없이 꽉 찬다.
   ========================================================================== */
.sg_img_box {aspect-ratio:4 / 5}
.sg_img {height:100%;object-fit:cover;object-position:center}

/* 상세 화면 위쪽 이미지
   PC 는 이미 58vh 로 잘라 쓰고 있었는데 모바일만 height:auto 라
   세로로 아주 긴 이미지를 올리면 화면을 한참 넘어갔다.
   평소 크기는 그대로 두고, 너무 긴 것만 70vh 에서 잘리게 한다. */
@media (max-width:767px) {
	.sg_detail_img {max-height:70vh;object-fit:cover;object-position:center}
}

/* ===== 유튜브 썸네일 (261006) =====
   의료진 소개·오시는 방법 영상은 탭 안(.sub_panel{display:none})에 있다.
   숨어 있을 때 임베드가 제 크기를 0 으로 읽어 120x90 썸네일을 받아 가고,
   탭을 열면 그걸 1140px 로 늘려 9.5배 확대돼 뭉개졌다.
   이제 1280x720 썸네일을 직접 깔고, 누를 때 진짜 플레이어를 넣는다.
   (.yt_frame 과 .wy_movie 둘 다 padding-top:56.25% 틀이라 같은 규칙을 쓴다) */
.ytf {position:absolute;top:0;left:0;display:block;width:100%;height:100%;padding:0;border:0;background:#000;cursor:pointer;overflow:hidden}
.ytf_img {display:block;width:100%;height:100%;object-fit:cover}
.ytf_btn {position:absolute;top:50%;left:50%;display:grid;place-items:center;width:72px;height:50px;border-radius:12px;background:rgba(0,0,0,.72);color:#fff;transform:translate(-50%,-50%);transition:background .2s,transform .2s}
.ytf:hover .ytf_btn {background:#f00;transform:translate(-50%,-50%) scale(1.06)}
.ytf:focus-visible {outline:2px solid #ff6a00;outline-offset:-2px}

@media (max-width:767px){
.ytf_btn {width:58px;height:40px}
.ytf_btn svg {width:24px;height:24px}
}
