/*모바일버전*/

div{word-break: break-word;}

/*모바일 Wrap*/
.hospital12_m_wrap{padding:30px 15px; font-size:15px;}

/*공동컬러*/
.point-font-color{color:#ff8800 !important;}
.point-sub-color{color:#876a00 !important;}
.border-color{color:#ff8800;}
.border-color2{color:#090909;}
.title-bg-color{background-color:#f8f8f8;}
.title-bg-color2{background-color:#efefef;}
.sub-bg-color{background-color:#ffcf53;}

.hospital12-wrap-box{margin-bottom:40px;}
.hospital12-num-rel{position: relative; margin-left: 20px; }
.hospital12-num-rel , .hospital12-num-rel > div {word-break: keep-all;}
.hospital12-num-abs{position: absolute; left: -21px;}
.hospital12_text_wrap{color:#666666; font-size:17px; letter-spacing:-0.5px; font-weight:300;}
.hospital12-num-rel02{position: relative; margin-left: 45px; }
.hospital12-num-abs02{position: absolute; left: -45px;}
.hospital12_line_bottom{padding-bottom:10px !important;}


/*타이틀 텍스트*/
.hospital12-title-box{text-align: center; margin-bottom: 20px;}
.hospital12-title-text1{color:#0c1d39; font-size:23px; letter-spacing:-0.5px; text-align:center; margin-bottom:5px; font-weight: 700; word-break: keep-all;}
.hospital12-title-text2{color:#666666;  letter-spacing:-0.5px; text-align:center; line-height:23px; word-break:keep-all; font-weight: 500; word-break: keep-all;}
.hospital12-title-text3{color:#666666; letter-spacing:-0.5px; line-height: 23px; text-align:center; font-weight: 500;word-break: keep-all; }
.hospital12-text-bold{font-weight:bold;}

/*메인 텍스트 밑줄*/
.hospital12-text-bg{display: inline-block; position: relative; font-weight: 400;}
.hospital12-text-bg:before{position: absolute; content: ""; display:block; background-color:rgba(255,207,83,20%); bottom:0px; left:-3px; height: 10px; width:102%; z-index: -1;} 

.hospital12-sub-wrap{padding-bottom:15px;}
.hospital12-sub-wrap2{padding-bottom:25px;}
.hospital12-sub-box{border: solid 1px #e1e1e1; border-top: none;}
.hospital12-content-box{padding:20px 15px;}

/*서브 텍스트*/

/*[class*="hospital12-sub-text"], [class*="hospital12-sub-text"] div, [class*="hospital12-sub-text"] span {word-break: keep-all;}*/
.hospital12-sub-text1{color:#333333; font-size:18px; letter-spacing:-0.5px; margin-bottom:20px; text-align:center; line-height:26px; word-break: keep-all;}
.hospital12-sub-text2{color:#666666;  letter-spacing:-0.5px; line-height: 23px; word-break: keep-all;}
.hospital12-sub-text3{color:#333333;  letter-spacing:-0.5px;  margin-bottom: 3px; font-weight:bold; line-height: 23px; word-break: keep-all;}
.hospital12-sub-text4{color:#666666;  letter-spacing:-0.5px; line-height:23px; padding-bottom: 10px; padding-left: 10px; position: relative; font-size:15px; word-break: keep-all;}
.hospital12-sub-text4:before{position: absolute; content: ""; display:block; width:5px; height:5px; background-color:#666666; top:8px; left:0px; border-radius: 50%;}
.hospital12-sub-text-border{border-bottom: 1px solid #333333; display: inline-block; margin-bottom: 10px;}
.hospital12-sub-text4:last-child{padding-bottom:0px;}
.hospital12-sub-text5{color:#666666;  letter-spacing:-0.5px; line-height: 23px; word-break: keep-all;}


/*서브 타이틀*/
.hospital12-sub-title1{color:#000000; font-weight:bold;font-size:19px; letter-spacing:-0.5px; padding: 15px; border-top: solid 1px;}
.hospital12-sub-title2{padding:15px 12px 15px 30px; font-size: 17px; font-weight:bold;border-top: solid 1px; letter-spacing: -0.5px; margin-bottom: 20px; position: relative; line-height: 22px;}
.hospital12-sub-title2:before{display: block; content: ""; position: absolute; left:14px; top:25px; background-color:#ff8800; border-radius: 50%; width:7px; height:7px; transform: translate(0px, -50%);}
.hospital12-sub-title3{font-size:17px; letter-spacing:-0.5px; font-weight: 500; position: relative; padding-left: 16px; padding-bottom: 5px;}
.hospital12-sub-title3:before{position: absolute; content: ""; display:block; width:5px; height:5px; background-color:#ff8800; top:10px; left:0px; border-radius: 50%;}
.hospital12-sub-title4{color:#999999;display: inline-block; padding-left: 5px; font-size:16px;}

/*hospital 3 - 의료진소개 페이지*/
.hospital12_03_con_title{font-size:22px; line-height:26px; letter-spacing:-0.5px; color:#FF8800;font-weight:500; margin-bottom:10px;}
.hospital12_03_docwrap_m{margin-bottom:85px;}
.hospital12_03_doctor{padding:20px  0 30px 0;}
.hospital12_main_title {margin-bottom:15px;}
.hospital12_02_ceoname{font-size:30px; line-height:26px; letter-spacing:-0.5px; color:#000;font-weight:300;}
.hospital12_02_ceo{font-size:18px; line-height:26px; letter-spacing:-0.5px; color:#000; margin-bottom:10px;font-weight:300;}
.hospital12_02_history_l{border-top:1px solid #ebebeb; padding:27px 0 27px 30px; margin-bottom:20px;}
.hospital12_02_con_title{font-size:25px; line-height:26px; letter-spacing:-0.5px; color:#1d9495;font-weight:bold; margin-bottom:17px;}
.hospital12_02_txt01{font-size:15px; line-height:26px; letter-spacing:-0.5px; color:#666666; font-weight:300;word-break: keep-all;}
.hospital12_02_bul{top:-11px; left:0;}
.hospital12_02_bul_r{bottom:-11px; right:0;}
.hospital12_02_history_r{ padding:27px 0 27px 30px; margin-bottom:20px; border-bottom:1px solid #ebebeb;}


/*미용 수정중 추가작업*/
.hospital12-sub-box_desp{color: #666666;font-size: 14px;letter-spacing: -1px;padding-bottom: 20px;line-height: 26px;padding:15px;border:1px  solid #e1e1e1;}


/*테이블 셋팅*/
.hospital12-sub-table {border:none ; padding-bottom:20px;}
.hospital12-sub-table td{font-size: 15px ; line-height:22px; padding:15px 9px;border:1px solid #e6e6e6;}
.hospital12-sub-table th{background: #f8f8f8 ; border-top:1px solid #999 ;font-size: 18px ;font-weight: 400 ; text-align: center; white-space: nowrap;padding:12px 40px;}
.hospital12-sub-table2 {border:none;}
.hospital12-sub-table2 td{font-size: 15px ; line-height:22px; padding:15px 15px;border:1px solid #e6e6e6;}
.hospital12-sub-table2 th{background: #f8f8f8 ; border-top:1px solid #999 ;font-size: 18px ;font-weight: 400 ; text-align: center; white-space: nowrap;padding:25px 40px;}

/*숫자*/
.hospital12-num-bigrel{margin-left:32px; position:relative;}
.hospital12-sub-textnum{padding: 2px 3px;width:15px; text-align:center !important;position: absolute;top: 2px;color: #ff8800;border: 1px solid #ff8800;border-radius: 3px;line-height: 12px;font-size: 12px;float: left;margin: 0;left:-32px;}
.hospital12-sub-textnum02{padding: 2px 3px;position: absolute;top: 2px;color: #333333;border: 1px solid #333333;border-radius: 3px;line-height: 12px;font-size: 13px;font-weight: 500;float: left;margin: 0;left:-32px;}

/*팁*/
.hospital12-tip-bigrel{margin-left:38px; position:relative; margin-bottom: 10px;}
.hospital12-sub-tip{padding: 2px 3px;position: absolute;top: 1px;color: #ff8800;border: 1px solid #ff8800;border-radius: 3px;line-height: 12px;font-size: 13px;font-weight: 300;float: left;margin: 0;left:-38px;}

/*메디컬 스킨케어 - 필링관리(스킨스케일링)*/
.hospital12_procedure_box{overflow: hidden; padding-bottom: 15px; width:100%;}
.hospital12_procedure_box130{width:42%; margin-right:8%;float:left; display: table; height:62px;}
.hospital12_procedure_box130_last{width:130px; float:left;}
.hospital12_procedure_conbox{ border:1px solid #c5c5c5; border-radius:5px; text-align:center; position:relative;color: #333;  font-size: 15px; letter-spacing: -0.5px; font-weight: 500; display: table-cell; vertical-align: middle;}
.hospital12_procedure_conbox_last{border:1px solid #c5c5c5; border-radius:5px; text-align:center; padding:20px 0;color: #333;  font-size: 15px; letter-spacing: -0.5px; font-weight: 500; }

.hospital12_procedure_conbox::after{position:absolute; display:block; content:''; 
width:10px; height:18px; background-image:url(hospital12_arrow_icon.png);
top:50%; right: calc(-11% - 5px); transform: translateY(-50%);}



/*진료안내*/
.hospital-notice-wrap{margin-bottom:20px;}
.hospital-notice-box{padding: 40px 0; text-align: center;}
.hospital-notice-border{border-bottom: solid 1px #ffffff; margin: 0px 34%;}
.hospital-notice-ab{bottom: 10px; right: 20px; font-weight: bold;}
.hospital-notice-title01{font-size: 20px; letter-spacing: 0.5px; font-weight: 300; color:#ffffff;}
.hospital-notice-text01{font-size:35px; color:#ffffff; line-height:48px; letter-spacing: -0.25px;}
.hospital-notice-text02{font-size: 20px; letter-spacing: -0.5px; line-height:35px; font-weight: bold; text-align: right; z-index:0; padding-right: 6px; display:inline-block;}
.hospital-notice-text02:before{position: absolute; content: "";  display: block; background-color: #ffcf53; opacity: 20%; bottom: 0px; left: -3px; height: 14px; width: 102%; z-index: -1;}
.hospital-notice-text03{font-size: 15px; letter-spacing: -0.5px; line-height:40px; color:#000000;}
.hospital-notice-text04{font-size: 25px; letter-spacing: -0.5px; line-height:48px; color:#000000; font-weight: bold; text-align: right;}


/*병원둘러보기*/
.floor_tab_wrap{border-bottom: 1px solid #dddddd;}
.floor_tab .current_sub{display:block;background: #f9f9f9;font-weight: bold;border-top: 1px solid #ddd;line-height:57px;}
.floor_tab .floor_tab_title, .floor_tab .AB-LF-common{font-size: 17px;font-weight:500;color:#333;}
.floor_tab .current_sub:hover span{color:#FF8800;}
.floor_tab .current_sub.on {border-top-color:#ffcf53;}
.floor_tab .current_sub.on .AB-LF-common, .floor_tab .current_sub.on .floor_tab_title{color:#FF8800;}
.floor_tab:nth-child(odd){border-right: 1px solid #ddd;}
.floor_tab:nth-child(6){border-bottom:1px solid #ddd;}
.floor_tab:nth-child(7){border-bottom:1px solid #ddd;}

.floor_tab:nth-child(1){border-top: 1px solid #ddd;}
.floor_tab:nth-child(2){border-top: 1px solid #ddd;}
.floor_tab .current_sub{border-bottom: 1px solid #ddd !important;}
.floor_tab .current_sub{border-top:none;}
.floor_tab:nth-child(7){border-bottom:none;}
.floor_tab:nth-child(6){border-bottom:none;}

/*의료진소개*/
.AB-sum-wrap2{position:relative;}
.AB-sum-wrap2 .AB-sum-overlay{display:block;background:rgba(12,29,57,0.8);position:absolute;bottom:-30px;left:0;width:100%;height:50px;transition:0.5s;}

/*서브페이지 공통*/

.img_br { border-radius: 10px; }
.img_br_02 { border-radius: 12px; }
.point_txt { font-weight: 800; color: #4CB4C6; }
.point-txt { color: #0c1d39; background: linear-gradient(transparent 60%, rgba(76,180,198,0.25) 60%); font-size: 18px; font-weight: 600; line-height:1.5; }

.video-wrap {
  position: relative;
  width: 100%; height: 50px;
  max-width: 800px; 
  margin: 0 auto; 
  padding-top: 35%; 
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.video-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.sub-intro { margin-top: 25px; border-radius: 15px; padding: 50px 20px; }

.sub-intro-title { text-align: center;padding-bottom: 25px;font-size: 25px; letter-spacing: -0.5px; font-weight: 700; color:#fff; line-height: 1.3; word-break: keep-all; }

.sub-intro-txt { font-size: 15px; font-weight: 500; color: #fff; line-height: 1.5; letter-spacing: -0.5px; text-align: center; word-break: keep-all; }

.desc {
  font-size: 15px;
  color: #444;
  line-height: 1.6; font-weight: 500; padding: 10px 0 20px;
}

.num-badge {
  min-width: 28px;
  display: inline-block;
  padding: 4px 4px;
  margin-right: 8px;
  border-radius: 6px;
  background: #4cb4c6;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
}

.desc_02 {
  font-size: 15px;
  color: #444;
  line-height: 1.6; font-weight: 800; padding: 10px 0 10px 0;
  display:flex;
  align-items:flex-start;
  gap:2px;
}

.desc_02_2 {
  font-size: 14px;
  color: #444;
  line-height: 1.3; font-weight: 500; padding: 0 0 10px 37px;
}

.desc_03 {
  font-size: 15px;
  color: #444;
  line-height: 1.6; font-weight: 500; padding: 10px 0 10px; text-align: center;
}

.num-badge_02 {
  min-width: 18px;
  display: inline-block;
  padding: 1px 4px;
  margin-right: 8px;
  border-radius: 6px;
  background: #4cb4c6;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
}

/*특별한 비수술 치료*/
.herniation-badge02 {
  flex: 1;
  display: flex;
  align-items: flex-start;
  gap: 10px;

  background: #f8fbfc;
  border: 1px solid #e6eef2;

  padding: 10px 10px;
  border-radius: 14px;

  font-size: 15px;
  color: #0c1d39;
  font-weight: 500;

  transition: all 0.2s ease; margin-bottom: 20px;
}

.herniation-badge02:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.06);
}

.herniation-badge02 i {
  color: #4cb4c6;
  font-size: 17px; font-weight: 500; padding-top: 6px;
}

/*치료*/
.jh-program-text {
  font-size: 16px;
  color: #444;
  line-height: 1.3;
}

/* 숫자 + 타이틀 묶음 */
.jh-program-head {
  /* display: flex; */
  align-items: flex-start;
  gap: 10px;
}

/* 숫자 */
.jh-program-num {
  font-size: 15px;
  font-weight: 700;
  color: #4cb4c6; 
  line-height: 1; 
  margin-top: 5px;
}

.jh-program-num2 {
  font-size: 15px;
  font-weight: 700;
  color: #4cb4c6; 
  line-height: 1; 
  margin-top: 2px;
}

/* 타이틀 */
.jh-program-title {
  font-size: 15px;
  font-weight: 600;
  color: #0c1d39; padding-left: 5px;
}

/* 설명 */
.jh-program-desc {
  display: block;
  margin-top: 6px;
  font-size: 15px;
  color: #666; line-height: 1.3; word-break: keep-all;
}

/* 주의사항 */
.treatment-section {
  padding: 0px 0 0;
  display: flex;
  justify-content: center;
  font-weight: 500;
  background: #fff;
}

.main-title {
  font-size: 45px;
  margin-bottom: 50px;
  color: #0c1d39;
  font-weight: 700; text-align: center;
}

.main-title span {
  color: #4cb4c6;
}

/* 카드 */
.treatment-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 80px;
}

.treatment-card {
  background: #f7f7f7;
  padding: 45px;
  border-radius: 16px;
  position: relative;
}

.treatment-card h3 {
  font-size: 24px;
  margin-bottom: 15px;
  font-weight: 700;
}

.treatment-card p {
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 8px;
}

.treatment-card strong {
  font-weight: 700;
}

/* NEW */
.badge {
  position: absolute;
  top: -10px;
  left: 15px;
  background: #4cb4c6;
  color: #fff;
  font-size: 14px;
  padding: 5px 20px;
  border-radius: 20px;
  font-weight: 700;
}

/* 프로세스 */
.process-box {
  display: flex;
  gap: 20px;
}

.process-step {
  flex: 1;
  background: #f8f8f8;
  padding: 35px 25px 25px; 
  border-radius: 20px;
  position: relative;
}


/* STEP 배지 (텍스트 포함 버전) */
.step-badge {
  position: absolute;
  top: -18px;
  left: 25px;
  padding: 8px 16px;
  background: #4cb4c6;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  border-radius: 999px;
  letter-spacing: 0.5px;
  box-shadow: 0 6px 12px rgba(0,0,0,0.1);
}

.process-step h3 {
  margin-top: 20px;
  margin-bottom: 15px;
  font-weight: 700; font-size: 24px;
}

/* 리스트 */
.process-step ul {
  list-style: none;
  padding: 0;
}

.process-step li {
  position: relative;
  padding-left: 16px;
  margin-bottom: 10px;
  font-size: 18px;
  line-height: 1.6;
}

/* 커스텀 블릿 */
.process-step li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 6px;
  height: 6px;
  background: #0c1d39;
  border-radius: 50%;
}

.note {
  margin-top: 10px;
  font-size: 16px;
  color: #777;
}

/* 주의사항 */
.warning {
  padding: 20px 24px;
  background: #0c1d39;
  color: #fff;
  border-radius: 12px;

  display: flex;
  /*align-items: center;*/
  gap: 14px;
}

/* 아이콘 */
.warning-icon {
  min-width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #4cb4c6;
  color: #fff;
  font-weight: 700;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 텍스트 영역 */
.warning-text {
  flex: 1;
}

/* 타이틀 강조 */
.warning-title {
  display: block;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 6px;
}

/* 본문 */
.warning p {
  font-size: 15px;
  line-height: 1.6;
  margin: 0;
  opacity: 0.9;
}

/* 오십견 */
.circle-box {
  text-align: center; padding: 20px 0;
}

.circle-title {
  display: inline-block;
  padding: 4px 44px;
  background: #0C1D39;
  border-radius: 999px;
  font-weight: 600;
  margin-bottom: 10px; font-size: 28px; color: #fff;
}

.circle-title-txt {
  font-weight: 600;
  margin-bottom: 10px; font-size: 28px; color: #0C1D39;
}

@media (max-width:768px){

  .circle-title{
    padding:4px 24px;
    font-size:16px;
    margin-bottom:8px;
  }

  .circle-title-txt{
    font-size:16px;
    margin-bottom:8px;
    line-height:1.4;
  }

}

.disk-sub-text {
  font-size: 15px;
  color: #444;
  line-height: 1.7; font-weight: 500; word-break: keep-all;
}

/* 담적 아이콘 컨텐츠 */
.jh-care-wrap{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:0;
  background: #F8FBFD;
  border-radius:30px;
  padding:60px 40px;
}

.jh-care-item{
  width:16.666%;
  min-width:180px;
  text-align:center;
  position:relative;
}

.jh-care-circle{
  width:150px;
  height:150px;
  margin:0 auto 34px;
  border-radius:50%;
  background:#fff;
  border:2px solid #dcecf1;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  box-shadow:
  0 15px 40px rgba(12,29,57,0.06);
  transition:0.35s;
}

.jh-care-circle::before{
  content:'';
  position:absolute;
  inset:-10px;
  border-radius:50%;
  border:1px dashed rgba(76,180,198,0.35);
}

.jh-care-circle img{
  width:150px;
  height:auto;
  object-fit:contain;
}

.jh-care-item:hover .jh-care-circle{
  transform:translateY(-10px);
  box-shadow:
  0 25px 45px rgba(12,29,57,0.12);
}

.jh-care-text h3{
  margin:0;
  font-size:19px;
  font-weight:600;
  line-height:1.45;
  color:#0c1d39;
  word-break:keep-all;
}

.jh-care-text span{
  width:54px;
  height:3px;
  background:#4cb4c6;
  display:block;
  margin:22px auto 0;
  border-radius:999px;
}

@media(max-width:1200px){

  .jh-care-item{
    width:33.333%;
    margin-bottom:25px;
  }

  .jh-care-item:nth-child(3)::after{
    display:none;
  }

}

@media(max-width:768px){

  .jh-care-wrap{
    padding:40px 20px 0px;
  }

  .jh-care-item{
    width:50%;
    min-width:auto;
  }

  .jh-care-item::after{
    display:none;
  }

  .jh-care-circle{
    width:85px;
    height:85px;
    margin-bottom:14px;
  }

  .jh-care-circle img{
    width:62px;
  }

  .jh-care-text h3{
    font-size:15px;
  }

}

/*Q&A 컨텐츠*/
.faq-wrap {
    width: 100%;
    border-top: 1px solid #dcdcdc;
}

.faq-item {
    padding: 42px 0;
    border-bottom: 1px solid #dcdcdc;
}

.faq-question {
    margin-bottom: 28px;
}

.faq-left {
    display: flex;
    align-items: center;
    gap: 22px;
}

.faq-q {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #0d2f73;
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.faq-title {
    font-size: 30px;
    font-weight: 700;
    color: #111;
    line-height: 1.4;
    word-break: keep-all;
}

.faq-answer {
    margin-left: 70px;
    padding: 55px 60px;
    background: #f4f4f4;
    border-radius: 28px;
    font-size: 20px;
    line-height: 1.9;
    color: #444;
    box-sizing: border-box; font-weight: 500;
}

/* 모바일 */
@media (max-width: 768px) {

    .faq-item {
        padding: 28px 0;
    }

    .faq-question {
        margin-bottom: 18px;
    }

    .faq-left {
        align-items: flex-start;
        gap: 14px;
    }

    .faq-q {
        width: 34px;
        height: 34px;
        font-size: 16px;
    }

    .faq-title {
        font-size: 18px;
    }

    .faq-answer {
        margin-left: 0;
        padding: 24px;
        border-radius: 18px;
        font-size: 15px;
        line-height: 1.7;
    }
}

/*컨텐츠(아이콘+텍스트)*/
.jh-benefit-wrap {
  max-width: 1200px;
  margin: 30px auto;
  padding: 20px;
}

.jh-point {
  color: #4cb4c6;
  font-weight: 700;
}

.jh-benefit-item {
  display: flex;
  align-items: flex-start;
  gap: 28px;
  padding: 36px 0;
  border-bottom: 1px solid rgba(12,29,57,0.08);
}

.jh-benefit-item:first-child {
  border-top: 1px solid rgba(12,29,57,0.08);
}

/* 아이콘 */
.jh-benefit-icon {
  width: 82px;
  height: 82px;
  min-width: 82px;
  border-radius: 24px;
  background: #0c1d39;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 30px rgba(12,29,57,0.10);
}

.jh-benefit-icon i {
  font-size: 32px;
  color: #4cb4c6;
}

.jh-benefit-icon2 {
  width: 160px;
  height: 160px;
  min-width: 160px;
  border-radius: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 30px rgba(12,29,57,0.10);
}

/* 텍스트 */
.jh-benefit-text {
  flex: 1;
  padding-top: 2px;
}

.jh-benefit-title {
  font-size: 30px;
  font-weight: 800;
  color: #0c1d39;
  margin-bottom: 14px;
  line-height: 1.3;
}

.jh-benefit-desc {
  font-size: 19px;
  line-height: 1.9;
  color: #444; font-weight: 500;
  word-break: keep-all;
}

/* 반응형 */
@media (max-width:768px){

  .jh-benefit-wrap{
    margin:20px auto;
    padding:0 16px;
  }

  .jh-benefit-item{
    gap:16px;
    padding:22px 0;
    align-items:flex-start;
  }

  .jh-benefit-icon{
    width:56px;
    height:56px;
    min-width:56px;
    border-radius:16px;
  }

  .jh-benefit-icon i{
    font-size:22px;
  }

  .jh-benefit-icon2{
    width:90px;
    height:90px;
    min-width:90px;
    border-radius:24px;
  }

  .jh-benefit-text{
    padding-top:0;
  }

  .jh-benefit-title{
    font-size:20px;
    line-height:1.4;
    margin-bottom:8px;
  }

  .jh-benefit-desc{
    font-size:15px;
    line-height:1.75;
    word-break:keep-all;
  }

}

/*컨텐츠(카드형)*/
.rehab-zigzag-sec {
  max-width: 1200px;
  margin: 0 auto;
  padding: 100px 20px;
}

.rehab-zigzag-grid {
  display: flex;
  gap: 20px;
  align-items: flex-start; /* 핵심 */
}

/* 카드 */
.rehab-zigzag-card {
  width: 33%;
  background: #0c1d39;
  border-radius: 24px;
  padding: 40px 25px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.1);
  position: relative;
}

.rehab-zigzag-card:nth-child(2),
.rehab-zigzag-card:nth-child(4) {
  top: 80px; 
}

/* 아이콘 */
.rehab-zigzag-icon {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #4cb4c6;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  font-size: 22px;
  color: #fff;
}

/* 타이틀 */
.rehab-zigzag-title {
  font-size: 28px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 12px;
}

/* 서브텍스트 */
.rehab-zigzag-desc {
  font-size: 16px;
  color: #fff;
  line-height: 1.6; word-break: keep-all;
}

/* 반응형 */
@media (max-width:768px){

  .rehab-zigzag-sec{
    padding:40px 15px;
  }

  .rehab-zigzag-grid{
    display:flex;
    flex-direction:column;
    gap:18px;
  }

  .rehab-zigzag-card{
    width:100%;
    padding:28px 22px;
    border-radius:18px;
    top:0 !important;
    box-sizing:border-box;
  }

  .rehab-zigzag-icon{
    width:46px;
    height:46px;
    font-size:18px;
    margin-bottom:16px;
  }

  .rehab-zigzag-title{
    font-size:20px;
    margin-bottom:10px;
    line-height:1.4;
  }

  .rehab-zigzag-desc{
    font-size:15px;
    line-height:1.7;
    word-break:keep-all;
  }

}

/*포인트배너*/
.header-container-1200 {
  width: 1200px;
  margin: 0 auto;
  padding: 40px 0;
  background-color: #ffffff;
  box-sizing: border-box;
}

/* 상단 비주얼 섹션 스타일 */
.visual-section {
  position: relative;
  width: 100%;
  height: 320px;
  background-color: #0c1d39;
  border-radius: 20px;
  display: table; 
  table-layout: fixed;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(12, 29, 57, 0.15);
}

/* POINT 말풍선 오브젝트 */
.point-balloon {
  position: absolute;
  top: 125px;
  left: 200px;
  background: #ff4757; 
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  padding: 6px 14px;
  border-radius: 30px;
  letter-spacing: 0.5px;
  box-shadow: 0 4px 10px rgba(255, 71, 87, 0.4);
  z-index: 10;
}
.point-balloon::after {
  content: '';
  position: absolute;
  bottom: -6px;
  left: 20px;
  border-width: 6px 6px 0;
  border-style: solid;
  border-color: #ff4757 transparent;
}

/* 타이틀 텍스트 박스 */
.title-box {
  display: table-cell;
  vertical-align: middle;
  width: 38%;
  padding-left: 0px; text-align: center;
  box-sizing: border-box;
}
.title-desc { font-size: 19px; color: #4cb4c6; font-weight: 500; padding-left: 8px; }
.subtitle {
  color: #4cb4c6;
  font-size: 19px;
  font-weight: 600;
  margin: 30px 0 8px 0;
  letter-spacing: -0.5px;
}
.main-title {
  color: #ffffff;
  font-size: 32px;
  font-weight: 700;
  margin: 0;
  letter-spacing: -1px;
  line-height: 1.3;
}

/* 이미지 갤러리 3분할 래퍼 */
.image-gallery {
  display: table-cell;
  vertical-align: middle;
  width: 62%;
  height: 100%;
  white-space: nowrap;
  font-size: 0; 
}
.img-wrap {
  display: inline-block;
  height: 320px;
  vertical-align: top;
  overflow: hidden;
  position: relative;
}
.img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.img-wrap:hover img {
  transform: scale(1.05); 
}

/* 원본 이미지 비율에 맞춰 부드럽게 분할 */
.img-sub-1 { width: 30%; border-right: 1px solid rgba(255,255,255,0.1); }
.img-sub-2 { width: 30%; border-right: 1px solid rgba(255,255,255,0.1); }
.img-main  { width: 40%; }

@media (max-width:768px){

  .header-container-1200{
    width:100%;
    padding:20px 0px;
  }

  .visual-section{
    display:flex;
    flex-direction:column;
    height:auto;
    border-radius:20px;
    overflow:hidden;
  }

  /* POINT 말풍선 */
  .point-balloon{
    top:48px;
    left:50%;
    transform:translateX(-50%);
    font-size:11px;
    padding:5px 10px;
}

.point-balloon::after{
    left:50%;
    transform:translateX(-50%);
}

  /* 텍스트 */
  .title-box{
    display:block;
    width:100%;
    padding:55px 20px 30px;
    text-align:center;
  }

  .title-desc{
    font-size:15px;
    padding-left:0;
  }

  .subtitle{
    font-size:16px;
    margin:18px 0 8px;
  }

  .main-title{
    font-size:26px;
    line-height:1.45;
    word-break:keep-all;
  }

  /* 이미지 */
  .image-gallery{
    display:flex;
    width:100%;
    height:180px;
  }

  .img-wrap{
    display:block;
    height:180px;
  }

  .img-sub-1,
  .img-sub-2{
    width:30%;
  }

  .img-main{
    width:40%;
  }

}

/*끝*/

/*해쉬태그 타이틀*/
.jh-head-title{
    display:flex;
    align-items:center;
    gap:16px;
    margin:15px 0;
}

.jh-head-num{
    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:#eef8fa;
    color:#4cb4c6;

    font-size:16px;
    font-weight:700; margin-bottom: 8px;
}

.jh-head-content h3{
    margin:0 0 12px;

    font-size:28px;
    font-weight:800;

    color:#0c1d39;
}

/*해쉬태그*/
.jh-hashtag-wrap{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:25px;
}

.jh-hashtag-wrap span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:12px 22px;
    border-radius:999px;
    background:#eef8fa;
    border:1px solid rgba(76,180,198,.25);
    color:#0c1d39;
    font-size:17px;
    font-weight:500;
    line-height:1;
    transition:.3s;
}

.jh-hashtag-wrap span:hover{
    background:#4cb4c6;
    color:#fff;
    transform:translateY(-2px);
}

@media (max-width:768px){

    /* 제목 */
    .jh-head-title{
        gap:10px;
        margin:0 0 16px;
    }

    .jh-head-num{
        width:34px;
        height:34px;
        min-width:34px;
        font-size:13px;
        margin-bottom:0;
    }

    .jh-head-content h3{
        font-size:22px;
        line-height:1.4;
        margin-bottom:0;
    }

    /* 해시태그 */
    .jh-hashtag-wrap{
        gap:8px;
        margin-top:18px;
    }

    .jh-hashtag-wrap span{
        padding:9px 14px;
        font-size:14px;
        line-height:1.4;
        border-radius:999px;
        word-break:keep-all;
    }

}

/*해쉬태그 끝*/

/*치료한약,보약 탭*/
.jah-medicine-tabs{
    display:flex;
    gap:12px;
    width:100%;
    max-width:1200px;
    margin:0 auto 60px;
}

.jah-medicine-tab{
    flex:1;

    height:62px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:14px;

    background:#fff;

    border:1px solid #dfe6ec;

    color:#0c1d39;
    text-decoration:none;

    font-size:18px;
    font-weight:600;

    transition:.3s;
}

.jah-medicine-tab:hover{
    border-color:#4cb4c6;
    transform:translateY(-2px);
}

.jah-medicine-tab.active{
    background:#4cb4c6;
    border-color:#4cb4c6;

    color:#fff;

    box-shadow:
    0 12px 24px rgba(12,29,57,.12);
}

@media (max-width:768px){

    .jah-medicine-tabs{
        display:flex;
        flex-wrap:wrap;
        gap:10px;
        margin:0 auto 40px;
    }

    .jah-medicine-tab{
        flex:0 0 calc(50% - 5px);
        max-width:calc(50% - 5px);

        height:42px;
        padding:0 10px;

        display:flex;
        align-items:center;
        justify-content:center;

        border-radius:6px;

        font-size:14px;
        line-height:1.3;
        text-align:center;
        word-break:keep-all;

        box-sizing:border-box;
    }

}

/*비만컨텐츠*/
.jh-combo-wrap{
    max-width:1200px;
    margin:0 auto;
}

/* 전체 구조 */

.jh-combo-grid{
    position:relative;

    width:820px;
    height:560px;

    margin:0 auto 60px;
}

/* 이미지 박스 */

.jh-combo-item{
    position:absolute;
}

.jh-img-box{
    width:220px;
    height:160px;

    background:#f7fafc;
    border:1px solid #e5edf2;
    border-radius:24px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#94a3b8;
    font-size:18px;
    font-weight:500;

    overflow:hidden;

    transition:.35s;
}

.jh-img-box img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.jh-img-box:hover{
    transform:translateY(-6px);

    box-shadow:
    0 18px 35px rgba(12,29,57,.08);
}

/* 위치 */

.top{
    top:0;
    left:300px;
}

.left{
    top:220px;
    left:10px;
}

.center{
    top:220px;
    left:300px;
}

.right{
    top:220px;
    left:580px;
}

.bottom{
    top:440px;
    left:300px;
}

/* + 아이콘 */

.jh-combo-item::after{
    content:'+';

    position:absolute;

    width:38px;
    height:38px;

    border-radius:50%;

    background:#d95d8c;

    color:#fff;

    font-size:26px;
    font-weight:300;

    display:flex;
    align-items:center;
    justify-content:center;

    box-shadow:
    0 8px 20px rgba(217,93,140,.25);

    z-index:10;
}

/* 상단 → 중앙 */

.top::after{
    bottom:-46px;
    left:50%;
    transform:translateX(-50%);
}

/* 좌측 → 중앙 */

.left::after{
    right:-53px;
    top:50%;
    transform:translateY(-50%);
}

/* 우측 → 중앙 */

.right::after{
    left:-48px;
    top:50%;
    transform:translateY(-50%);
}

/* 중앙 → 하단 */

.center::after{
    bottom:-47px;
    left:50%;
    transform:translateX(-50%);
}

/* 하단은 + 제거 */

.bottom::after{
    display:none;
}

/* 설명 박스 */

.jh-combo-desc{
    background:
    linear-gradient(
        135deg,
        #0c1d39,
        #173760
    );

    border-radius:999px;

    padding:28px 40px;

    color:#fff;

    text-align:center;

    font-size:19px;
    font-weight:500;
    line-height:1.6;
}

/* 모바일 */

@media(max-width:768px){

    .jh-combo-grid{
        width:100%;
        height:auto;

        display:flex;
        flex-direction:column;
        gap:20px;
    }

    .jh-combo-item{
        position:relative;
        top:auto !important;
        left:auto !important;
        right:auto !important;
    }

    .jh-img-box{
        width:100%;
        height:220px;
    }

    .jh-combo-item::after{
        display:none;
    }

    .jh-combo-desc{
        border-radius:24px;

        font-size:14px;
        padding:22px;
    }

}

.jah-collab-wrap{
    max-width:1200px;
    margin:0 auto;
}

.jah-collab-grid{
    position:relative;

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}

/* 카드 */

.jah-collab-item{
    position:relative;
    overflow:hidden;
    border-radius:24px;
    min-height:320px;
}

.jah-collab-image{
    width:100%;
    height:100%;
    min-height:320px;

    background:#edf2f6;
    border:1px solid #e5ecf1;

    transition:.5s ease;
}

/* 실제 이미지 */

.jah-collab-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.jah-collab-item:hover .jah-collab-image{
    transform:scale(1.05);
}

/* 오버레이 */

.jah-collab-item::after{
    content:'';
    position:absolute;
    inset:0;

    background:
    linear-gradient(
        180deg,
        rgba(12,29,57,.05),
        rgba(12,29,57,.18)
    );
}

/* 배지 */

.jah-collab-tag{
    position:absolute;
    left:30px;
    bottom:30px;

    z-index:2;

    padding:11px 18px;

    border-radius:999px;

    background:#0c1d39;
    color:#fff;

    font-size:15px;
    font-weight:500;
    line-height:1;
}

/* 오른쪽 카드 */

.jah-collab-right .jah-collab-tag{
    left:auto;
    right:30px;
}

/* 중앙 원 */

.jah-collab-center{
    position:absolute;

    width:250px;
    height:250px;

    top:50%;
    left:50%;

    transform:translate(-50%, -50%);

    z-index:20;
}

.jah-collab-center-inner{
    width:100%;
    height:100%;

    background:#0c1d39;

    border:8px solid #fff;
    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    text-align:center;

    color:#fff;
    font-size:42px;
    font-weight:700;
    letter-spacing:-1px;

    position:relative;

    box-shadow:
    0 20px 40px rgba(12,29,57,.18);
}

.jah-collab-center-inner::after{
    content:'';

    position:absolute;

    top:12px;
    left:12px;
    right:12px;
    bottom:12px;

    border-radius:50%;
    border:1px solid rgba(255,255,255,.25);
}

/* 모바일 */

@media (max-width:768px){

    .jah-collab-wrap{
        padding:0 0px;
    }

    .jah-collab-grid{
        grid-template-columns:1fr;
        gap:16px;
    }

    /* 가운데 원 제거 */
    .jah-collab-center{
        display:none;
    }

    .jah-collab-item{
        min-height:220px;
        border-radius:18px;
    }

    .jah-collab-image{
        min-height:220px;
    }

    .jah-collab-item:hover .jah-collab-image{
        transform:none;
    }

    .jah-collab-tag{
        left:18px;
        bottom:18px;
        padding:10px 16px;
        font-size:13px;
    }

    .jah-collab-right .jah-collab-tag{
        left:18px;
        right:auto;
    }
}

/*버튼*/
.line-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;

    padding:10px 18px;

    border:1px solid rgba(255,255,255,0.7);
    border-radius:999px;

    background:transparent;
    color:#fff;

    font-size:15px;
    font-weight:500;
    text-decoration:none;

    transition:all 0.3s ease;
}

.line-btn .arrow{
    font-size:16px;
    transition:transform 0.3s ease;
}

.line-btn:hover{
    background:#fff;
    color:#111;
}

.line-btn:hover .arrow{
    transform:translateX(4px);
}