@charset "utf-8";

/* ==========================================================================
   non-reimbursement.css — 치과 non-reimbursement 페이지 전용 스타일
   --------------------------------------------------------------------------
   - 그린 테마 / 탭 전환형 아코디언
   - 색상 팔레트: #1c4103 진한그린 / #2c4f15 메인그린 / #8b9e70 세이지
     / #5c7f3a accent / #f4f3ee·#f7f7f4 베이지
   ========================================================================== */

.faq_wrap { background:#fff; color:#222; word-break:keep-all; max-width:850px;margin:0 auto;}
.faq_wrap * { box-sizing:border-box; }
.faq_wrap img { max-width:100%; display:block; }


/* ===== 1. 히어로 ===== */
.faq_hero { padding:64px 24px 70px; background:#1c4103; text-align:center; }
.faq_hero_label { margin:0 0 18px; font-size:13px; font-weight:600; letter-spacing:1.5px; color:#8ba36a; }
.faq_hero_tit { margin:0 0 20px; font-size:32px; font-weight:800; line-height:1.4; letter-spacing:-1px; color:#fff; }
.faq_hero_tit span { color:#cfe0a8; }
.faq_hero_sub { margin:0; font-size:15px; line-height:1.7; color:#b6c79a; }


/* ===== 2. 카테고리 탭 (sticky) ===== */
.faq_tabs {border-bottom:1px solid #e6e6df; }
.faq_tabs_inner { max-width:850px; margin:0 auto; display:flex; flex-wrap: wrap;
	padding:0 16px;}
.faq_tab {width: calc(100% / 4); padding:18px 14px; border:0; background:transparent; cursor:pointer;
	font-size:16px; font-weight:600; color:#999; white-space:nowrap; position:relative; transition:color .15s; }
.faq_tab:hover { color:#5c7f3a; }
.faq_tab.active { color:#1c4103; font-weight:800; }
.faq_tab.active::after { content:""; position:absolute; left:14px; right:14px; bottom:-1px; height:3px;
	background:#2c4f15; border-radius:2px; }


.faq_sec { display:none; max-width:850px; margin:0 auto; padding:48px 24px 60px; }
.faq_sec.active { display:block; }


.table_area { position: relative; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; margin-top: 20px; } 
.txt_m { display: none; } 
table {border-collapse: collapse;}
.sub_table { width: 100%; box-sizing: border-box; border-top: 2px solid #1c4103; border-left: 1px solid #e0e0e0;} 
.sub_table thead { background: #ebf8fd; } 
.sub_table tbody {text-align: center;}
.sub_table thead tr th,
.sub_table tbody tr th { padding: 15px 10px; color: #1c4103; background: #f6fbef; } 
.sub_table thead tr th.br_line { border-right: 1px solid #e0e0e0; } 
.sub_table tbody tr th.br_line { border-right: 1px solid #e0e0e0; border-bottom: 1px solid #e0e0e0; } 
.sub_table tbody tr td { padding: 15px; border-top: 1px solid #e0e0e0; border-bottom: 1px solid #e0e0e0; border-right: 1px solid #e0e0e0; } 
.sub_table tbody tr td.br_none { border-right: none; } 
.sub_table tbody tr td p { font-size: 18px; } 
.sub_table tbody tr td.text_s p { font-size: 12px !important; }

.sub_table tbody tr.t_c {background: #f6fbef; font-weight: 800; color: #1c4103;}

.sub_table th { border: 1px solid #e0e0e0; padding: 10px; } 
.sub_table th p { font-size: clamp(14px, 3vw, 16px); } 
.sub_table td { font-size: 16px; padding: 10px 5px; } 



/* ===== 반응형 ===== */
@media (max-width:600px){
	.faq_hero { padding:48px 20px 54px; }
	.faq_hero_tit { font-size:25px; }
	.faq_tab { padding:15px 11px; font-size:15px; }
	.faq_sec { padding:36px 18px 48px; }
	.faq_sec_tit { font-size:23px; }
	.faq_q { padding:20px 18px; font-size:16px; }
	.faq_a_inner { padding:0 18px 22px 18px; }
	.faq_ref { padding:48px 20px 56px; }
	.faq_ref_grid { grid-template-columns:1fr 1fr; }

  .txt_m { display: block; text-align: center; font-size: 16px;} 
  .sub_table {width: 120%;}
  .faq_tab {width: calc(100% / 2);}
}

@media (max-width:400px){
	.faq_ref_grid { grid-template-columns:1fr; }
}
