
/* ============================================================
   ADD-ON 22   (sub47 : ES DNA 셀포인트 줄기세포 주사)
   ------------------------------------------------------------
   · HEAD / 2단(cont_row) / 효과 체크원(circle_eff) 등은 기존 재사용
   · 신규 : .visual_full(풀블리드 비주얼) / .sec_stem(줄기세포 치료
             3원+설명+원심분리기, 제대혈이란 박스, 처리 플로우) / .qna
   ============================================================ */

/* ---------- HEAD : 이미지 우측 블리드 ---------- */
@media (min-width:769px){
.sub47 .sub_head_img{right:calc(50% - 50vw);z-index:3;}
.sub47 .sub_copy:before{content:"";position:absolute;top:50%;right:calc(50% - 50vw);width:100vw;height:1px;background:rgba(255,255,255,.28);}
}

/* ---------- VISUAL : 풀블리드 ---------- */
.sub47 .sec_visual{padding:calc(120 * var(--u)) 0 0;}
.visual_full{width:100vw;margin-left:calc(50% - 50vw);}
.visual_full img{width:100%;display:block;}

/* ---------- 2단 이미지 폭 / 소제목 보조 ---------- 
.sub47 .cont_row_img{flex:0 0 calc(500 * var(--u));}
.sub47 .cont_row_img img{width:100%;}
.sub47 .sec_row1{padding:calc(150 * var(--u)) 0 0;}
.sub47 .sec_row2{padding:calc(150 * var(--u)) 0 0;}*/
.stit_sm{display:inline-block;margin-bottom:max(6px, calc(12 * var(--u)));font-size:max(15px, calc(22 * var(--u)));font-weight:400;color:#555;}

/* ============================================================
   .sec_stem : 줄기세포 치료
   ============================================================ */
.sec_stem{padding:calc(150 * var(--u)) 0;}
.sec_stem>.inner>.sec_tit{margin-top:calc(18 * var(--u));line-height:1.35;}

/* 3원 + 설명 */
.stem_cells{position:relative;margin-top:max(40px, calc(90 * var(--u)));}
.stem_list{position:relative;width:calc(1180 * var(--u));max-width:100%;}
.stem_list:before{content:"";position:absolute;left:calc(94 * var(--u));top:calc(94 * var(--u));bottom:calc(94 * var(--u));width:1px;background:#dcdcdc;}
.stem_list>li{position:relative;display:flex;align-items:center;gap:calc(60 * var(--u));}
.stem_list>li+li{margin-top:calc(60 * var(--u));}
.stem_circle{position:relative;z-index:1;flex:0 0 calc(188 * var(--u));display:flex;flex-direction:column;align-items:center;justify-content:center;width:calc(188 * var(--u));height:calc(188 * var(--u));border:1px solid #cfcfcf;border-radius:50%;background:#fff;text-align:center;}
.stem_circle b{font-size:max(15px, calc(22 * var(--u)));font-weight:600;line-height:1.3;color:var(--point);}
.stem_circle em{margin-top:max(6px, calc(10 * var(--u)));font-family:'Montserrat',sans-serif;font-style:normal;font-size:max(9px, calc(12 * var(--u)));line-height:1.3;letter-spacing:0.02em;color:#a0a0a0;}
.stem_desc{flex:1 1 auto;min-width:0;font-size:max(13px, calc(17 * var(--u)));line-height:1.75;letter-spacing:-0.03em;color:#555;}
.stem_machine{position:absolute;right:0;bottom:0;width:calc(292 * var(--u));}
.stem_machine img{width:100%;}

/* 제대혈이란 박스 */
.stem_note{margin-top:max(40px, calc(96 * var(--u)));padding:calc(60 * var(--u)) calc(66 * var(--u));background:var(--bg-gray);}
.stem_note strong{display:block;position:relative;margin-bottom:max(18px, calc(34 * var(--u)));padding-left:calc(20 * var(--u));font-size:max(15px, calc(21 * var(--u)));font-weight:600;color:var(--point);}
.stem_note strong:before{content:"";position:absolute;left:0;top:calc(2 * var(--u));width:calc(3 * var(--u));height:calc(20 * var(--u));background:var(--point);}
.stem_note p{font-size:max(13px, calc(17 * var(--u)));line-height:1.85;letter-spacing:-0.03em;color:#555;}

/* 처리 플로우 */
.stem_flow{display:flex;align-items:center;justify-content:center;gap:calc(20 * var(--u));margin-top:max(40px, calc(90 * var(--u)));}
.flow_g1{flex:0 0 auto;text-align:center;}
.flow_box{display:block;padding:calc(14 * var(--u)) calc(28 * var(--u));border:1px solid #ddd;font-size:max(12px, calc(17 * var(--u)));color:#444;}
.flow_box.on{border-color:#e08a5a;color:#c56a3a;}
.flow_box2{display:block;margin-top:calc(6 * var(--u));padding:calc(14 * var(--u)) calc(28 * var(--u));border:1px solid #333;font-size:max(12px, calc(16 * var(--u)));color:#333;}
.flow_src{display:flex;justify-content:center;gap:calc(20 * var(--u));margin:calc(14 * var(--u)) 0;font-size:max(11px, calc(15 * var(--u)));color:#555;}
.flow_src li.on{color:#c56a3a;}
.flow_g1 .flow_box:last-child{margin-top:calc(20 * var(--u));}
.flow_arw{flex:0 0 auto;width:calc(40 * var(--u));}
.flow_step{flex:0 0 auto;text-align:center;}
.flow_step img{width:calc(120 * var(--u));}
.flow_step p{margin-top:calc(14 * var(--u));font-size:max(12px, calc(16 * var(--u)));color:#444;}
.flow_g3{flex:0 0 auto;text-align:center;}
.flow_lbl{display:block;font-size:max(11px, calc(15 * var(--u)));color:#555;}
.flow_arw2{width:calc(150 * var(--u));margin:calc(8 * var(--u)) 0;}
.flow_end{flex:0 0 auto;font-size:max(15px, calc(22 * var(--u)));font-weight:700;line-height:1.35;letter-spacing:-0.03em;color:var(--point);}

/* 구분선 래퍼 */
.sec_div_wrap{padding:0;}
.sec_div_wrap .sec_div{height:1px;background:#d8d8d8;}

/* ---------- EFFECT ---------- */
.sec_eff{padding:calc(120 * var(--u)) 0 calc(150 * var(--u));}
.sec_eff .sec_txt.tc{margin-top:max(20px, calc(40 * var(--u)));}
.sec_eff .circle_eff{margin-top:max(40px, calc(80 * var(--u)));gap:calc(80 * var(--u));}
.sec_eff .circle_eff>li{width:calc(200 * var(--u));height:calc(200 * var(--u));flex:0 0 calc(200 * var(--u));}

/* ============================================================
   .qna : 검정 Q&A
   ============================================================ */
.qna{background:var(--point);}
.qna .inner{display:flex;gap:calc(90 * var(--u));padding:calc(140 * var(--u)) 0;}
.qna_head{flex:0 0 calc(430 * var(--u));}
.qna_head span{display:block;margin-bottom:calc(20 * var(--u));font-family:'Montserrat',sans-serif;font-size:max(15px, calc(24 * var(--u)));font-weight:700;letter-spacing:0.04em;color:#fff;}
.qna_head strong{font-family:'Montserrat',sans-serif;font-size:max(50px, calc(120 * var(--u)));font-weight:800;line-height:1;color:#fff;}
.qna_list{flex:1 1 auto;min-width:0;}
.qna_list>li+li{margin-top:calc(60 * var(--u));}
.qna_q{position:relative;padding:0 0 calc(28 * var(--u)) calc(46 * var(--u));border-bottom:1px solid #444;font-size:max(15px, calc(21 * var(--u)));font-weight:500;line-height:1.5;letter-spacing:-0.03em;color:#fff;}
.qna_q i{position:absolute;left:0;top:0;font-family:'Montserrat',sans-serif;font-style:normal;font-size:max(15px, calc(22 * var(--u)));font-weight:700;}
.qna_a{position:relative;margin-top:calc(30 * var(--u));padding-left:calc(46 * var(--u));}
.qna_a i{position:absolute;left:0;top:0;font-family:'Montserrat',sans-serif;font-style:normal;font-size:max(15px, calc(22 * var(--u)));font-weight:700;}
.qna_a p{font-size:max(13px, calc(17 * var(--u)));line-height:1.75;letter-spacing:-0.03em;color:#c7c7c7;}
.qna_a p+p{margin-top:max(16px, calc(28 * var(--u)));}

/* ============================================================
   ADD-ON 22 : responsive
   ============================================================ */
@media (max-width:1280px){
.sub47 .sec_visual{padding:100px 0 0;}
.sub47 .sec_row1,.sub47 .sec_row2{padding:100px 0 0;}
.sec_stem{padding:100px 0;}
.stem_list{width:100%;}
.stem_machine{position:relative;width:220px;margin:40px auto 0;right:auto;bottom:auto;}
.sec_eff{padding:90px 0 100px;}
.qna .inner{flex-direction:column;gap:40px;padding:90px 0;}
.qna_head{flex:0 0 auto;}
.qna_head strong{font-size:64px;}
}
@media (max-width:1024px){
.stem_desc{font-size:14px;}
.stem_flow{flex-wrap:wrap;gap:16px;}
.sec_eff .circle_eff{gap:30px 6%;}
.sec_eff .circle_eff>li{flex:0 0 30%;width:auto;height:auto;aspect-ratio:1/1;}
}
@media (max-width:768px){
.sub47 .sec_visual{padding:70px 0 0;}
.sub47 .sec_row1,.sub47 .sec_row2{padding:70px 0 0;}
.sec_stem{padding:70px 0;}
.stem_list:before{display:none;}
.stem_list>li{flex-direction:column;gap:16px;text-align:center;}
.stem_desc{text-align:center;}
.stem_note{padding:34px 24px;}
.stem_flow{flex-direction:column;}
.flow_arw{transform:rotate(90deg);}
.flow_arw2{transform:rotate(90deg);width:60px;}
.sec_eff{padding:70px 0 70px;}
.sec_eff .circle_eff>li{flex:0 0 46%;}
.qna .inner{padding:70px 0;}
.qna_head strong{font-size:50px;}
}
