@charset "utf-8";
/* ==========================================================
   소상공인 상생보험 모바일웹 : 서브페이지 컨텐츠
   - 사업안내(보험 소개) 외 서브페이지 공통
   ========================================================== */

/* ==========================================================
   사업안내 : 히어로
   ========================================================== */
.biz-hero {
	position: relative; width: 100%; height: 36rem; 
	background: linear-gradient(180deg, #FFF4ED 0, #FFE4D1 100%), linear-gradient(45deg, rgba(255,104,40,0) 0, rgba(255,104,40,0.03) 100%);
	padding: 4rem 2.4rem 8rem; overflow: hidden; box-sizing: border-box;
}
.biz-hero:before{position: absolute; top: -20rem; left: -24rem; width: 54.2rem; height: 34.8rem; border-radius: 34.8rem; filter: blur(3rem); content: ''; opacity: 0.8; transform: rotate(45deg); background: radial-gradient(ellipse at center,  rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%),
radial-gradient(ellipse at center,  rgba(251,251,242,1) 0%, rgba(251,251,242,0.98) 5%, rgba(251,251,242,0.96) 9%, rgba(251,251,242,0.93) 13%, rgba(251,251,242,0.90) 17%, rgba(251,251,242,0.86) 20%, rgba(251,251,242,0.82) 24%, rgba(251,251,242,0.77) 29%, rgba(251,251,242,0.71) 34%, rgba(251,251,242,0.65) 40%, rgba(251,251,242,0.57) 46%, rgba(251,251,242,0.48) 54%, rgba(251,251,242,0.38) 63%, rgba(251,251,242,0.27) 74%, rgba(251,251,242,0.14) 86%, rgba(251,251,242,0) 100%),
radial-gradient(ellipse at center,  rgba(251,251,242,1) 0%, rgba(251,251,242,0.98) 5%, rgba(251,251,242,0.96) 9%, rgba(251,251,242,0.93) 13%, rgba(251,251,242,0.90) 17%, rgba(251,251,242,0.86) 20%, rgba(251,251,242,0.82) 24%, rgba(251,251,242,0.77) 29%, rgba(251,251,242,0.71) 34%, rgba(251,251,242,0.65) 40%, rgba(251,251,242,0.57) 46%, rgba(251,251,242,0.48) 54%, rgba(251,251,242,0.38) 63%, rgba(251,251,242,0.27) 74%, rgba(251,251,242,0.14) 86%, rgba(251,251,242,0) 100%);
}
.biz-hero .hero-label {
	/* Caption/02 */
	position: relative;
	z-index: 2;
	display: block;
	color: var(--color-point);
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.4;
}
.biz-hero h2 {
	/* Heading/03 */
	position: relative;
	z-index: 2;
	margin-top: 0.8rem;
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.4;
}
.biz-hero .hero-illust {
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -12rem;
	width: 25rem;
	height: 25rem;
	z-index: 1;
}
.biz-hero .hero-illust img {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	will-change: transform;
	filter: drop-shadow(-1.6rem -1.1rem 2rem rgba(252, 252, 244, 0.9)) drop-shadow(-0.4rem -0.3rem 1.1rem #FCFCF4);
	animation: heroFloat 4s ease-in-out infinite;
}

@keyframes heroFloat {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50%      { transform: translate3d(0, -1.4rem, 0); }
}

/* @media (prefers-reduced-motion: reduce) {
	.biz-hero .hero-illust img { animation: none; }
} */

/* ==========================================================
   탭 (cm-tab 공통 구조)
   ========================================================== */
.cm-tab-container-JS { background-color: #FFE4D1; }

.sub-tab-wrapper-style {
	position: sticky;
	top: 9.7rem; /* sticky header 높이 (JS에서 실측값으로 보정) */
	z-index: 105;
	margin-top: -4.8rem;
	height: 4.8rem;
}
.sub-tab-bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 50%;
	height: 100%;
	background: #fff;
	border-radius: 1.6rem 1.6rem 0 0; /* 화면 벽에 붙는 쪽 모서리 라운드 */
	transition: left .3s ease;
}
/* 양옆 S커브 조각 : 상단 라운드 포함 탭 모양 (안쪽으로 1.6rem 겹쳐 bg 라운드를 덮음) */
.sub-tab-bg::before,
.sub-tab-bg::after {
	content: '';
	position: absolute;
	top: 0;
	width: 4rem;
	height: 100%;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}
.sub-tab-bg::before { left: -2.4rem; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 48' preserveAspectRatio='none'%3E%3Cpath d='M0 48 C10 48 16 42 19 32 L23 15 C25 6 30 0 38 0 L40 0 L40 48 Z' fill='%23fff'/%3E%3C/svg%3E"); }
.sub-tab-bg::after { right: -2.4rem; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 48' preserveAspectRatio='none'%3E%3Cpath d='M40 48 C30 48 24 42 21 32 L17 15 C15 6 10 0 2 0 L0 0 L0 48 Z' fill='%23fff'/%3E%3C/svg%3E"); }
/* 화면 벽에 붙는 쪽 조각은 숨김 → bg의 라운드 모서리 노출 */
.cm-tab-container-JS.tab-pos-0 .sub-tab-bg::before { display: none; }
.cm-tab-container-JS.tab-pos-1 .sub-tab-bg::after { display: none; }
/* 하단 주황 라인 - 배경 따라 같이 움직임 */
.sub-tab-bg em {
	position: absolute;
	left: 50%;
	bottom: -0.3rem;
	transform: translateX(-50%);
	width: 9.6rem;
	height: 0.3rem;
	border-radius: 10rem;
	background-color: var(--o500);
	display: block;
	z-index: 1;
	transition: width .3s ease;
}
/* 탭별 밑줄 길이 : 텍스트 폭 + 양옆 1.6rem (보상 안내 6.4rem+3.2 / 필요 서류 안내 9.7rem+3.2) */
.cm-tab-container-JS.tab-pos-1 .sub-tab-bg em { width: 13rem; }
.sub-tab-list-style { position: relative; height: 100%; }
.sub-tab-list-style ul { display: table; width: 100%; height: 100%; table-layout: fixed; position: relative; }
.sub-tab-list-style ul li { display: table-cell; vertical-align: middle; position: relative; width: 50%; }
.sub-tab-list-style ul li a { display: table; height: 4.8rem; width: 100%; }
.sub-tab-list-style ul li a em {
	/* Body/02 */
	display: table-cell;
	vertical-align: middle;
	color: var(--o300);
	font-size: 1.8rem;
	line-height: 1.4;
	letter-spacing: -0.03em;
	font-weight: 700;
	text-align: center;
	transition: color .3s;
}
.sub-tab-list-style ul li.selected a em { color: var(--o500); } /* 시안 렌더 기준 : 선택탭 O500 */
@media (hover: hover) {
	.sub-tab-list-style ul li:not(.selected) a:hover em { color: var(--o400); }
	.sub-tab-wrapper-style.is-fixed .sub-tab-list-style ul li:not(.selected) a:hover em { color: var(--n500); }
}

/* 컨텐츠 - 비활성 탭 쪽 모서리 라운드 */
.sub-tab-content-style { background-color: #fff; transition: border-radius .3s ease; padding: 4rem 2.4rem 4.8rem; }
.cm-tab-container-JS.tab-pos-0 .sub-tab-content-style { border-radius: 0 3.2rem 0 0; }
.cm-tab-container-JS.tab-pos-1 .sub-tab-content-style { border-radius: 3.2rem 0 0 0; }
.sub-tab-con { background-color: #fff; border: 0; }

/* 탭 sticky 고정 상태 */
.sub-tab-wrapper-style.is-fixed { background: #fff; box-shadow: 0 2px 0 var(--color-line); }
.sub-tab-wrapper-style.is-fixed .sub-tab-bg { border-radius: 0; }
.sub-tab-wrapper-style.is-fixed .sub-tab-bg::before,
.sub-tab-wrapper-style.is-fixed .sub-tab-bg::after { display: none; }
.sub-tab-wrapper-style.is-fixed .sub-tab-bg em { bottom: -2px; width: 100%; border-radius: 0; }
.sub-tab-wrapper-style.is-fixed .sub-tab-list-style ul li a em { color: var(--n300); }
.sub-tab-wrapper-style.is-fixed .sub-tab-list-style ul li.selected a em { color: var(--o500); }

/* ==========================================================
   사업안내 : 컨텐츠
   ========================================================== */
.biz-section { padding: 3.2rem 0; }
.biz-section:first-child { padding-top: 0; }
.biz-section + .biz-section { border-top: 1px solid var(--color-line); }
.biz-section h3 {
	/* Heading/05 */
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.2;
}
.biz-section .txt {
	/* Body/04 */
	margin-top: 1.6rem;
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--n500);
	line-height: 1.5;
}

/* 보장범위 리스트 */
.coverage-list { margin-top: 1.2rem; }
.coverage-list li {
	display: flex;
	gap: 0.8rem;
	align-items: center;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
}
.coverage-list li + li { margin-top: 0.8rem; }
.coverage-list .cv-label { flex-shrink: 0; color: var(--n500); } /* Body/04 */
.coverage-list .cv-dots {
	flex: 1;
	border-bottom: 2px dotted var(--n200);
	transform: translateY(0.2rem);
}
.coverage-list .cv-value { flex-shrink: 0; color: var(--n900); } /* Body/04 */

/* 서류 리스트 (개별 행형) */
.doc-download-list { margin-top: 1.2rem; }
.doc-download-list li + li { margin-top: 0.6rem; }
.doc-download-list .doc-row {
	position: relative;
	display: block;
	height: 5.6rem;
	background: var(--color-bg-gray);
	border-radius: 1.2rem;
	transition: background .2s;
}
.doc-download-list a.doc-row:active { background: var(--n100); }
@media (hover: hover) {
	.doc-download-list a.doc-row:hover { background: var(--n100); }
	.doc-download-list a.doc-row:hover .ico-download { transform: translateY(calc(-50% + 0.2rem)); }
}
.doc-download-list .doc-ico {
	position: absolute;
	left: 1.6rem;
	top: 50%;
	transform: translateY(-50%);
	width: 2.4rem;
	height: 2.4rem;
}
.doc-download-list .doc-name {
	/* Body/02 */
	position: absolute;
	left: 5.2rem;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.4;
	color: var(--n900);
}
.doc-download-list .ico-download {
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
	transition: transform .25s;
}
.doc-download-list .ico-download img { width: 2rem; height: 2rem; }

/* 회색 안내박스 */
.gray-box-area { padding-top: 1.6rem; }
.gray-box {
	padding: 1.6rem;
	background: var(--color-bg-gray);
	border-radius: 1.6rem;
}
.gray-box + .gray-box { margin-top: 1.2rem; }
.gray-box .box-tit { display: block; font-size: 1.4rem; font-weight: 700; line-height: 1.4; color: var(--n400); } /* Caption/02 */
.gray-box ul { margin-top: 1.2rem; }
.gray-box li {
	position: relative;
	padding-left: 0.9rem;
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--n500);
	line-height: 1.5;
}
.gray-box li + li { margin-top: 0.6rem; }
.gray-box li::before {
	content: "";
	position: absolute;
	left: 0.2rem;
	top: 1.1rem;
	width: 0.3rem;
	height: 0.3rem;
	border-radius: 50%;
	background: var(--n500);
}
.gray-box .has-tit li {padding-left: 8rem;}
.gray-box .has-tit li .tit{position: absolute; top: 0; left: 1rem; display: inline-block;}

/* ==========================================================
   폼 페이지 공통 (보험 청구 / 접수 확인)
   ========================================================== */
/* 스텝 진행바 (헤더 아래 고정) */
.step-progress {
	position: sticky;
	top: 9.7rem; /* sticky header 높이 */
	z-index: 105;
	height: 0.6rem;
	background: var(--n200);
	overflow: hidden;
}
.step-progress .gauge {
	display: block;
	height: 100%;
	background: linear-gradient(90deg, var(--o400) 0%, var(--o500) 100%);
	border-radius: 0 10rem 10rem 0;
	transition: width .4s ease;
}

/* 폼 페이지 레이아웃 */
.form-page { padding: 0 2.4rem 14rem; }

/* 페이지 타이틀 */
.form-title { padding: 4rem 0 0; }
.form-title .sub-copy {
	/* Caption/02 */
	display: block;
	color: var(--color-point);
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.4;
}
.form-title h2 {
	/* Heading/03 */
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.4;
}
.form-title .sub-copy + h2 { margin-top: 0.8rem; }

/* 폼 필드 : 라벨(Caption/03) + 입력(Body/04) */
.form-field { margin-top: 3.2rem; }
.form-field .field-label {
	display: block;
	padding-left: 0.2rem;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1;
	color: var(--n500);
}
/* 라벨 아래 요소는 어떤 형태든 1.2rem 간격 (inp / 랩퍼 박스 / 칩 등) */
.form-field .field-label + * { margin-top: 1.2rem; }
/* default.css의 input[type=...] 초기화(패딩/라디우스 제거)보다 우선하도록 태그 셀렉터 병기 */
.inp,
input.inp,
textarea.inp,
select.inp {
	display: block;
	width: 100%;
	padding: 1.2rem 1.6rem;
	background: var(--color-bg-gray);
	border: 1px solid var(--color-bg-gray);
	border-radius: 0.8rem;
	font-family: inherit;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: var(--ls-base);
	color: var(--n900);
	outline: 0;
	transition: background .2s, border-color .2s;
}
.inp::placeholder { color: var(--n400); }
/* 입력 중(포커스) / 입력 완료 : 흰 배경 + N900 보더 */
.inp:focus,
.inp.filled {
	background: var(--n0);
	border-color: var(--n900);
}
/* 정보 입력 페이지(사업장/사고/피해)는 포커스·입력 시 블루 배경 (Blue/50, 시안 기준) */
.blue-focus .inp:focus,
.blue-focus .inp.filled {
	background: #EEF2FE;
	border-color: #EEF2FE;
}
.inp-row { display: flex; gap: 0.8rem; }
.inp-row .inp { flex: 1; min-width: 0; }
/* 항상 라인형(흰 배경 + 보더) 입력 : 인증번호 등 */
.inp.always-line { background: var(--n0); border-color: var(--n900); }
.inp.always-line::placeholder { color: var(--n300); }

/* 타이머 포함 입력 (인증번호) */
.inp-timer-box { position: relative; }
.inp-timer-box .inp { padding-right: 7rem; }
.inp-timer-box .timer {
	/* Caption/03 */
	position: absolute;
	right: 1.6rem;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1;
	color: var(--o500);
}

/* 텍스트영역 */
textarea.inp { height: 12rem; resize: none; }

/* 폼 필드 내 파란 캡션 */
.form-field .blue-note { margin-top: 0.8rem; padding: 0 0.2rem; }

/* 단위 텍스트 포함 입력 (금액 등) : Body/03 */
.inp-unit-box { position: relative; }
.inp-unit-box .inp { padding-right: 4.4rem; }
.inp-unit-box .unit {
	position: absolute;
	right: 1.6rem;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.4;
	color: var(--n600);
}

/* 아이콘 버튼 포함 입력 (주소 검색 등) */
.inp-btn-box { position: relative; }
.inp-btn-box .inp { padding-right: 6rem; }
.inp-btn-box .inp-ico-btn {
	position: absolute;
	right: 0.6rem;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
}
.inp-btn-box .inp-ico-btn img { width: 2rem; height: 2rem; }

/* 칩 선택 (관계 등) : Body/03, 라디오 기반 */
.chip-tabs { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 1.2rem; }
.chip-tabs input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.chip-tabs label {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.8rem 1.6rem;
	background: var(--n0);
	border: 1px solid var(--n200);
	border-radius: 10rem;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.4;
	color: var(--n400);
	cursor: pointer;
	transition: background .2s, border-color .2s, color .2s;
}
.chip-tabs input:checked + label {
	background: var(--o50);
	border-color: var(--o200);
	color: var(--o500);
}
@media (hover: hover) {
	.chip-tabs label:hover { border-color: var(--n400); color: var(--n600); }
	.chip-tabs input:checked + label:hover { border-color: var(--o200); color: var(--o500); }
}

/* 파일 업로드 박스 */
.upload-box {
	background: var(--color-bg-gray);
	border-radius: 0.8rem;
	overflow: hidden;
}
.upload-box + .upload-box { margin-top: 0.8rem; }
.upload-box input[type=file] { display: none; }
.upload-box .upload-btn {
	/* Body/04 */
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 4.8rem;
	padding: 0 6rem 0 1.6rem;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	color: var(--n400);
	text-align: left;
	cursor: pointer;
}
.upload-box .upload-btn .ico {
	position: absolute;
	right: 0.6rem;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
}
.upload-box .upload-btn .ico img { width: 2rem; height: 2rem; }
/* 첨부된 파일 리스트 : Caption/01 */
.upload-files li {
	position: relative;
	display: flex;
	align-items: center;
	height: 4.8rem;
	padding: 0 6rem 0 1.6rem;
	border-top: 1px solid var(--n100);
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4;
	color: var(--n800);
}
.upload-files .file-name {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.upload-files .file-del {
	position: absolute;
	right: 0.6rem;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
}
.upload-files .file-del span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	background: var(--n200);
	border-radius: 50%;
	transition: background .2s;
}
.upload-files .file-del span img { width: 1.4rem; height: 1.4rem; }
@media (hover: hover) {
	.upload-files .file-del:hover span { background: var(--n300); }
}

/* 전자 서명 패드 */
.sign-pad {
	position: relative;
	height: 34rem;
	margin-top: 4rem;
	background: var(--n0);
	border: 2px solid var(--n200);
	border-radius: 2.4rem;
	overflow: hidden;
	touch-action: none;
}
.sign-pad .ph {
	/* Body/04 */
	position: absolute;
	left: 50%;
	top: 2.2rem;
	transform: translateX(-50%);
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	color: var(--n400);
	white-space: nowrap;
	pointer-events: none;
}
.sign-pad canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
/* 서명 후 노출되는 다시하기 버튼 (상단 중앙) */
.sign-pad .sign-retry-btn {
	/* Body/03 */
	display: none;
	position: absolute;
	left: 50%;
	top: 1.6rem;
	transform: translateX(-50%);
	z-index: 1; /* canvas 위 */
	align-items: center;
	justify-content: center;
	gap: 0.6rem;
	padding: 0.9rem 1.4rem;
	background-color: var(--n100);
	border-radius: 0.8rem;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: -0.03em;
	color: var(--n600);
	white-space: nowrap;
}
.sign-pad .sign-retry-btn img { width: 1.8rem; height: 1.8rem; }
.sign-pad.signed .sign-retry-btn { display: inline-flex; }
@media (hover: hover) {
	.sign-pad .sign-retry-btn:hover { background-color: var(--n200); }
}

/* 작은 회색 버튼 (인증번호 다시 받기 등) : Caption/03 */
.btn-sm-gray {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 2.4rem;
	padding: 0.9rem 1.2rem;
	background: var(--n100);
	border-radius: 0.6rem;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1;
	color: var(--n600);
	transition: background .2s;
}
.btn-sm-gray:active { background: var(--n200); }
@media (hover: hover) {
	.btn-sm-gray:hover { background: var(--n200); }
}

/* 하단 고정 버튼 영역 (하단 네비 위, 위쪽 페이드) */
.form-btn-area {
	position: fixed;
	left: 50%;
	bottom: 7.2rem;
	transform: translateX(-50%);
	width: 100%;
	max-width: 48rem;
	z-index: 150;
	padding: 2.4rem;
	background: var(--n0);
}
.form-btn-area::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -2.4rem;
	height: 4.8rem;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%);
	pointer-events: none;
}
/* 공통 블록 버튼 : Body/06 (SemiBold 18 / LH 120%) */
.form-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 5.6rem;
	padding: 0 2.4rem;
	background: var(--o500);
	border-radius: 1.2rem;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--o50);
	transition: background .2s, color .2s, transform .1s;
}
.form-btn:active { transform: scale(0.98); }
@media (hover: hover) {
	.form-btn:hover { background: var(--o600); }
}
/* 비활성(입력 미완료) 상태 */
.form-btn.disabled {
	background: var(--n100);
	color: var(--n400);
	pointer-events: none;
}

/* 안내 스텝 리스트 (번호 뱃지 + 점선 커넥터) */
.info-step-list { position: relative; }
.info-step-list::before {
	content: "";
	position: absolute;
	left: 1.6rem;
	top: 4rem;
	bottom: 3rem;
	border-left: 2px dashed var(--o100);
}
.info-step-list li {
	position: relative;
	display: flex;
	gap: 1.2rem;
	align-items: flex-start;
}
.info-step-list li + li { margin-top: 1.6rem; }
.info-step-list .num {
	/* Body/03 */
	position: relative;
	z-index: 1;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.2rem;
	height: 3.2rem;
	background: var(--o100);
	border-radius: 50%;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.4;
	color: var(--o600);
}
.info-step-list .txt-box { padding: 0.3rem 0; }
.info-step-list .txt-box strong { display: block; font-size: 1.8rem; font-weight: 600; line-height: 1.4; } /* Body/01 */
.info-step-list .txt-box p { margin-top: 0.5rem; font-size: 1.4rem; font-weight: 500; line-height: 1.4; color: var(--n500); } /* Caption/01 */

/* 청구 인트로 (청구 0) */
.claim-intro {
	display: flex;
	flex-direction: column;
	min-height: calc(100vh - 16.8rem); /* 헤더 9.6 + 네비 7.2 (버튼영역 10.4 는 아래 padding 으로 확보) */
	padding: 0 2.4rem 12.8rem; /* 하단 고정 버튼(10.4) + 여백 2.4 — 작은 화면에서 마지막 항목이 버튼에 가리지 않게 */
}
.claim-intro .claim-visual {
	position: relative;
	align-self: center;
	width: 22rem;
	height: 22rem;
	margin: auto 0;
}
.claim-intro .claim-visual::before {
	content: "";
	position: absolute;
	left: 0.6rem;
	top: 2rem;
	width: 20rem;
	height: 20rem;
	background: url("../images/content/claim_megaphone.png") no-repeat center / cover;
	filter: blur(3rem);
	opacity: 0.6;
}
.claim-intro .claim-visual img { position: relative; width: 100%; height: 100%; animation: heroFloat 4s ease-in-out infinite;}

/* ==========================================================
   완료 페이지 (접수 완료 / 인증 완료)
   ========================================================== */
.complete-page {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: calc(100vh - 22.4rem); /* 로고 헤더 4.8 + 버튼영역 10.4 + 네비 7.2 */
	padding: 2.4rem;
	text-align: center;
}
.complete-page .check-mark {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 10rem;
	height: 10rem;
	background: linear-gradient(90deg, var(--o400) 0%, var(--o500) 100%);
	border: 2px solid rgba(255, 104, 40, 0.5);
	border-radius: 50%;
	box-shadow: 0 2.8rem 4.8rem -1.1rem rgba(217, 78, 26, 0.1), 0 1.2rem 2.6rem -0.5rem rgba(224, 85, 32, 0.12), 0 0.3rem 0.8rem rgba(232, 101, 42, 0.08);
}
.complete-page .check-mark img { width: 4.8rem; height: 4.8rem; }
.complete-page .comp-tit {
	/* Heading/04 */
	margin-top: 3.2rem;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.4;
}
.complete-page .comp-txt {
	/* Body/05 */
	margin-top: 1rem;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.5;
	color: var(--n500);
}
.complete-page .comp-txt .num { color: var(--color-blue); text-decoration: underline; }

/* 완료 페이지 하단 버튼 2개 + 툴팁 */
.form-btn-area .btn-duo { display: flex; gap: 0.8rem; }
.form-btn-area .btn-duo .form-btn { flex: 1; font-size: 1.6rem; font-weight: 700; line-height: 1.4; }
.form-btn.gray { background: var(--n100); color: var(--n600); }
@media (hover: hover) {
	.form-btn.gray:hover { background: var(--n200); }
}
.complete-tooltip {
	/* Caption/01 */
	position: absolute;
	right: 3.5rem;
	bottom: 9rem;
	padding: 1rem;
	background: var(--n900);
	border-radius: 1.2rem;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4;
	color: var(--n50);
	text-align: center;
	filter: drop-shadow(0 0.4rem 0.6rem rgba(0, 0, 0, 0.12));
}
.complete-tooltip::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 100%;
	transform: translateX(-50%);
	border: 0.9rem solid transparent;
	border-top-color: var(--n900);
	border-bottom-width: 0;
}

/* ==========================================================
   바텀시트 공통
   ========================================================== */
#bottomSheetWrap {
	position: fixed;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	width: 100%;
	max-width: 48rem;
	height: 100%;
	z-index: 260;
	overflow: hidden;
	pointer-events: none;
	visibility: hidden;
	transition: visibility 0s .3s;
}
#bottomSheetWrap.on {
	visibility: visible;
	pointer-events: auto;
	transition: visibility 0s 0s;
}
#bottomSheetWrap .sheet-dim {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.6);
	opacity: 0;
	transition: opacity .3s;
}
#bottomSheetWrap.on .sheet-dim { opacity: 1; }
#bottomSheetWrap .bottom-sheet {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	background: var(--n0);
	border-radius: 3.2rem 3.2rem 0 0;
	transform: translateY(100%);
	transition: transform .3s cubic-bezier(0.22, 0.61, 0.36, 1);
}
#bottomSheetWrap.on .bottom-sheet { transform: translateY(0); }
.bottom-sheet .sheet-handle {
	position: absolute;
	left: 50%;
	top: 1rem;
	transform: translateX(-50%);
	width: 4.8rem;
	height: 0.4rem;
	border-radius: 1rem;
	background: var(--n200);
}
.bottom-sheet .sheet-inner { padding: 5.4rem 2.4rem 0; }
.bottom-sheet .sheet-tit {
	/* Heading/04 */
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.4;
}
/* 약관 동의 리스트 */
.sheet-terms-list { margin-top: 2.8rem; }
.sheet-terms-list li { display: flex; gap: 1.6rem; align-items: center; }
.sheet-terms-list li + li { margin-top: 0.8rem; }
.sheet-terms-list .term-name {
	/* Body/04 */
	flex: 1;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	color: var(--n500);
}
.sheet-terms-list .term-view-btn {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
}
.sheet-terms-list .term-view-btn img { width: 2rem; height: 2rem; }
/* 시트 하단 버튼 */
.bottom-sheet .sheet-btn-area { padding: 2.4rem 2.4rem 1.4rem; }
.bottom-sheet .txt-btn {
	/* Body/06 */
	display: block;
	margin: 1.4rem auto 2.4rem;
	padding: 0.4rem;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--n500);
	text-decoration: underline;
	text-align: center;
}

/* ==========================================================
   접수 확인 - 리스트 (status/list.php)
   ========================================================== */
.status-page {
	background: linear-gradient(180deg, var(--o50) -10%, #fff 110%);
	padding: 4rem 2.4rem 4.8rem;
	min-height: calc(100vh - 16.9rem); /* 헤더 9.7 + 하단네비 7.2 */
}
/* 총 건수 + 진행 중만 보기 */
.status-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 0.2rem;
}
.status-head .total {
	/* Body/06 */
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.03em;
	color: var(--n900);
}
.status-head .total .num { color: var(--o500); }
.filter-toggle {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.8rem 0 0.8rem 0.8rem; /* 터치 영역 확보 */
}
.filter-toggle .chk {
	position: relative;
	width: 1.6rem;
	height: 1.6rem;
	border-radius: 50%;
	background-color: var(--n900);
	opacity: 0.3;
	transition: background-color .2s, opacity .2s;
}
.filter-toggle .chk img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 0.9rem;
	height: 0.9rem;
}
.filter-toggle.on .chk { background-color: var(--o500); opacity: 1; }
.filter-toggle .txt {
	font-size: 1.2rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.03em;
	color: var(--n600);
}
/* 리스트 카드 */
.status-list { margin-top: 2.6rem; }
.status-list > li + li { margin-top: 1.2rem; }
/* 진행 중만 보기 : 종결 건 숨김 */
.status-list.filtering > li.closed { display: none; }
.status-list .card {
	display: block;
	background-color: #fff;
	border-radius: 2.4rem;
	box-shadow: 0 28px 48px -11px rgba(217, 78, 26, 0.14), 0 12px 26px -5px rgba(224, 85, 32, 0.16), 0 3px 8px 0 rgba(232, 101, 42, 0.1);
	overflow: hidden;
	transition: transform .3s ease;
}
@media (hover: hover) {
	.status-list .card:hover { transform: translateY(-0.3rem); }
}
.status-list .card-head { padding: 2.4rem 2.4rem 1rem; }
.status-list .card-tit {
	/* Heading/04 */
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin-top: 1rem;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.03em;
	color: var(--n900);
	white-space: nowrap;
}
.status-list .card-tit .type { color: var(--n400); }
.status-list .card-info { padding: 0 1.2rem 1.2rem; }
.status-list .card-info .info-box {
	background-color: var(--n50);
	border-radius: 1.4rem;
	padding: 1.6rem;
}
/* 라벨 ---- 값 (점선 리더) 공통 */
.dot-rows li {
	display: flex;
	align-items: center;
	gap: 0.8rem;
}
.dot-rows li + li { margin-top: 1rem; }
.dot-rows .lb {
	flex-shrink: 0;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.03em;
	color: var(--n500);
}
.dot-rows .line {
	flex: 1;
	height: 0;
	border-top: 2px dotted var(--n200);
}
.dot-rows .val {
	flex-shrink: 0;
	/* max-width: 19.1rem; */
	max-width: 60%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.03em;
	color: var(--n900);
	text-align: right;
}
/* 상태 뱃지 (리스트용 12px) */
.badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.5rem 0.8rem;
	border-radius: 10rem;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.03em;
}
.badge.bd-progress { background-color: var(--o100); color: var(--o600); }   /* 센터 접수 / 보험사 접수 완료 / 사고처리 진행 중 */
.badge.bd-paid { background-color: #E2E9FE; color: var(--color-blue); }     /* 지급 완료 (Blue/75) */
.badge.bd-denied { background-color: var(--n500); color: #fff; }            /* 지급 불가 */
.badge.bd-cancel { background-color: var(--n100); color: var(--n500); }     /* 청구 취소 */

/* 헤더 서브바 우측 새로고침 버튼 (list.php) */
.header-sub-bar .refresh-btn {
	position: absolute;
	right: 1.6rem;
	top: 0.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
}
.header-sub-bar .refresh-btn img { width: 2rem; height: 2rem; }

/* ==========================================================
   접수 확인 - 상세보기 (status/detail_*.php)
   ========================================================== */
.detail-view { background-color: #fff; }
/* 상단 그라데이션 영역 (타이틀 + 요약카드 + 탭) */
.detail-hero-area { background: linear-gradient(180deg, rgba(255, 244, 237, 0.75) 0%, rgba(255, 230, 213, 0.75) 100%); }
.detail-hero { padding: 4rem 2.4rem 4.8rem; }
/* 상태 + 구분 필 */
.detail-hero .pills { display: flex; align-items: center; gap: 0.4rem; }
.st-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.6rem 1rem;
	border-radius: 10rem;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.03em;
}
.st-pill.st-progress { background-color: var(--o500); color: var(--o50); }   /* 센터 접수 / 보험사 접수 완료 / 사고처리 진행 중 */
.st-pill.st-paid { background-color: var(--color-blue); color: #EEF2FE; }    /* 지급 완료 */
.st-pill.st-denied { background-color: var(--n900); color: #fff; }           /* 지급 불가 */
.st-pill.st-cancel { background-color: var(--n500); color: #fff; }           /* 청구 취소 */
.st-pill.st-outline { background-color: #fff; border: 1px solid var(--n400); color: var(--n500); } /* 온라인/오프라인 접수 구분 */
/* 사고유형 + 접수번호 */
.detail-hero .dt-tit {
	/* Heading/03 */
	display: flex;
	align-items: center;
	gap: 0.6rem;
	margin-top: 1.2rem;
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.03em;
	color: var(--n900);
	white-space: nowrap;
}
.detail-hero .dt-tit .type { opacity: 0.4; }
/* 요약 카드 */
.detail-info-card {
	margin-top: 2.4rem;
	background-color: #fff;
	border-radius: 1.2rem;
	box-shadow: 0 12px 26px 0 rgba(224, 85, 32, 0.16), 0 3px 8px 0 rgba(232, 101, 42, 0.1);
	padding: 1.4rem 1.6rem;
}
.detail-info-card .dot-rows .lb,
.detail-info-card .dot-rows .val { font-size: 1.4rem; line-height: 1.4; }
.detail-info-card .dot-rows li + li { margin-top: 0.6rem; }

/* 탭 (정적 링크 버전 - cm-tab 디자인 재사용) */
.detail-tabs {
	position: relative;
	height: 4.8rem;
}
.detail-tabs .sub-tab-bg { transition: none; }
.detail-view.tab-pos-0 .detail-tabs .sub-tab-bg { left: 0; }
.detail-view.tab-pos-1 .detail-tabs .sub-tab-bg { left: 50%; }
.detail-view.tab-pos-0 .detail-tabs .sub-tab-bg::before { display: none; }
.detail-view.tab-pos-1 .detail-tabs .sub-tab-bg::after { display: none; }
.detail-tabs ul { display: table; width: 100%; height: 100%; table-layout: fixed; position: relative; }
.detail-tabs ul li { display: table-cell; vertical-align: middle; position: relative; width: 50%; }
.detail-tabs ul li a { display: table; height: 4.8rem; width: 100%; }
.detail-tabs ul li a em {
	/* Body/02 */
	display: table-cell;
	vertical-align: middle;
	color: var(--o300);
	font-size: 1.8rem;
	line-height: 1.4;
	letter-spacing: -0.03em;
	font-weight: 700;
	text-align: center;
	transition: color .3s;
}
.detail-tabs ul li.selected a em { color: var(--o500); }
@media (hover: hover) {
	.detail-tabs ul li:not(.selected) a:hover em { color: var(--o400); }
}

/* 탭 컨텐츠 바디 */
.detail-body { background-color: #fff; padding: 4rem 2.4rem 4.8rem; }
/* 상세보기 하단 [목록] 버튼 (260918 검수 1차) */
.dv-list-btn { margin-top: 4rem; }
.dv-list-btn .form-btn { width: 100%; }
.detail-view.tab-pos-0 .detail-body { border-radius: 0 3.2rem 0 0; }
.detail-view.tab-pos-1 .detail-body { border-radius: 3.2rem 0 0 0; }

/* 상세 섹션 */
.dv-section h3 {
	/* Heading/05 */
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.03em;
	color: var(--n900);
}
.dv-section + .dv-section { margin-top: 3.2rem; padding-top: 3.2rem; border-top: 1px solid var(--n100); }
.dv-rows { margin-top: 1.6rem; }
.dv-rows > li { display: flex; align-items: flex-start; gap: 1.6rem; }
.dv-rows > li + li { margin-top: 0.8rem; }
.dv-rows .lb {
	/* Body/04 */
	flex-shrink: 0;
	width: 8.4rem;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	color: var(--n500);
}
.dv-rows.narrow .lb { width: 5.8rem; }
.dv-rows .val {
	flex: 1;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	color: var(--n900);
	word-break: break-all;
}
/* 첨부파일 링크 */
.dv-files li + li { margin-top: 0.4rem; }
.dv-files a {
	display: inline-flex;
	align-items: flex-start;
	gap: 0.6rem;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	color: var(--n900);
	text-decoration: underline;
}
.dv-files a img { width: 1.6rem; height: 1.6rem; margin-top: 0.4rem; }
/* 전자 서명 이미지 */
.dv-sign { margin-top: 1.6rem; width: 100%; height: 20rem; border-radius: 1.6rem; border: 2px solid var(--n200); box-sizing: border-box; display: flex; align-items: center; justify-content: center;}
.dv-sign img { display: block; max-width: 100%; max-height: 100%;}
/* 비고 박스 */
.dv-note {
	margin-top: 2rem;
	background-color: var(--n50);
	border-radius: 1.6rem;
	padding: 1.6rem;
}
.dv-note strong {
	/* Caption/02 */
	display: block;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.03em;
	color: var(--n400);
}
.dv-note p {
	margin-top: 1.2rem;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	color: var(--n500);
}
/* 결과 없음 (센터 접수) */
.dv-empty { padding: 8rem 0 12rem; text-align: center; }
.dv-empty .ico { display: block; width: 6.4rem; height: 6.4rem; margin: 0 auto; }
.dv-empty .ico img { width: 100%; height: 100%; }
.dv-empty .tit {
	/* Body/02 */
	margin-top: 1.6rem;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.03em;
	color: var(--n900);
}
.dv-empty .txt {
	/* Caption/01 */
	margin-top: 0.4rem;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: -0.03em;
	color: var(--n500);
}

/* ==========================================================
   폼 부가 요소 (조건부 입력 / 데이트피커)
   ========================================================== */
/* 관계 '기타' 선택 시 노출 입력 / 주소 검색 후 상세주소 입력 */
.chip-etc-box,
.addr-detail-box { display: none; margin-top: 0.8rem; }

/* jQuery UI 데이트피커 커스텀 (시안 팔레트 기준) */
.ui-datepicker {
	display: none;
	width: 30rem;
	padding: 1.6rem;
	background: #fff;
	border: 1px solid var(--n200);
	border-radius: 1.6rem;
	box-shadow: 0 12px 26px 0 rgba(17, 22, 27, 0.12), 0 3px 8px 0 rgba(17, 22, 27, 0.06);
	z-index: 300 !important;
}
.ui-datepicker .ui-datepicker-header {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.4rem 0 1.2rem;
}
.ui-datepicker .ui-datepicker-title {
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--n900);
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
	position: absolute;
	top: 0;
	width: 3.2rem;
	height: 3.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	border-radius: 0.8rem;
	color: var(--n500);
	font-size: 0;
}
.ui-datepicker .ui-datepicker-prev { left: 0; }
.ui-datepicker .ui-datepicker-next { right: 0; }
.ui-datepicker .ui-datepicker-prev::before,
.ui-datepicker .ui-datepicker-next::before {
	content: '';
	width: 0.8rem;
	height: 0.8rem;
	border-left: 2px solid var(--n500);
	border-bottom: 2px solid var(--n500);
}
.ui-datepicker .ui-datepicker-prev::before { transform: rotate(45deg); margin-left: 0.3rem; }
.ui-datepicker .ui-datepicker-next::before { transform: rotate(225deg); margin-right: 0.3rem; }
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span { display: none; }
.ui-datepicker table.ui-datepicker-calendar {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}
.ui-datepicker th {
	padding: 0.6rem 0;
	font-size: 1.3rem;
	font-weight: 600;
	color: var(--n400);
}
.ui-datepicker td { padding: 0.2rem 0; text-align: center; }
.ui-datepicker td a,
.ui-datepicker td span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.4rem;
	height: 3.4rem;
	margin: 0 auto;
	border-radius: 50%;
	font-size: 1.4rem;
	font-weight: 500;
	color: var(--n800);
}
.ui-datepicker td span.ui-state-default { color: var(--n300); } /* 비활성 날짜 */
.ui-datepicker td a.ui-state-active {
	background: var(--o500);
	color: #fff;
	font-weight: 700;
}
.ui-datepicker td a.ui-state-highlight:not(.ui-state-active) { color: var(--o500); font-weight: 700; } /* 오늘 */
@media (hover: hover) {
	.ui-datepicker td a:not(.ui-state-active):hover { background: var(--o50); }
	.ui-datepicker .ui-datepicker-prev:hover,
	.ui-datepicker .ui-datepicker-next:hover { background: var(--n50); }
}


/* ==========================================================
  FAQ
   ========================================================== */
.faq-page {padding: 4rem 2.4rem;}
.faq-list-con2 .faq-item{overflow:hidden; border:1px solid var(--header-line); border-radius:1rem; transition:all 0.3s;}
.faq-list-con2 .faq-item + .faq-item{margin-top: 1rem;}
.faq-list-con2 .faq-item dt,
.faq-list-con2 .faq-item dd{padding: 2rem 5rem;}
.faq-list-con2 .faq-item dt{position:relative; cursor:pointer; padding-left: 4.5rem; border-radius: 0.7rem;}
.faq-list-con2 .faq-item dt .faq-title{display:block; color:var(--color-txt); font-size:1.5rem; font-weight:500; line-height:1.3; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; vertical-align:top;}
.faq-list-con2 .faq-item dt .arrow{position:absolute; top: 1.8rem; right: 1.5rem;}
.faq-list-con2 .faq-item dt i{color:var(--color-txt); font-size:2.4rem;}
.faq-list-con2 .faq-item dd{display:none; position:relative; background:#fff; padding: 2rem;}
.faq-list-con2 .faq-item dd .answer-con{font-size:1.5rem; line-height: 1.5; color: var(--color-txt); letter-spacing:-0.025em;}
.faq-list-con2 .faq-item dt .question-icon,
.faq-list-con2 .faq-item dd .answer-icon{position:absolute; top:1.7rem; left:2rem; font-size:1.6rem; font-weight:600; color: var(--color-txt);}
.faq-list-con2 .faq-item dd .answer-icon{display:block; position:static; margin-bottom:0.7rem;}

/* FAQ2 :: Open */
.faq-list-con2 .faq-item.open{border:1px solid var(--o500);}
.faq-list-con2 .faq-item.open dt{background-color: var(--o500); border-radius: 0.7rem 0.7rem 0 0;}
.faq-list-con2 .faq-item.open dt .faq-title{white-space:normal; text-overflow:unset; color:#fff;}
.faq-list-con2 .faq-item.open dt .faq-category,
.faq-list-con2 .faq-item.open dt .question-icon,
.faq-list-con2 .faq-item.open dt i{color:#fff;}
.faq-list-con2 .faq-item.open dt .arrow i{transform:rotate(-180deg);}


/* ****************** 공통 :: PAGING ********************** */
.paging{display:flex; justify-content:center; width:100%; text-align:center; margin-top: 3.5rem; flex-wrap:wrap;}
.paging a{position:relative; display:block; width:30px; height:30px; line-height:30px; margin:0 2px; border:1px solid #ddd; text-align:center; font-size:13px; color:#868686; letter-spacing:-0.25px; background-color:#fff; }
.paging a:hover{color:#222;}
.paging a.cur{border-color:#333; background-color:#333; color:#fff;}
.paging a.paging-arrow i{position:relative; top:-1px; vertical-align:middle; color:inherit; font-size:24px;}
.paging:not(.no-margin) a.paging-prev{margin-right:2px}
.paging:not(.no-margin) a.paging-next{margin-left:2px}
.paging .paging-first i,
.paging .paging-last i{transform:translateX(-8px)}
.paging .paging-first i:before,
.paging .paging-last i:before{display:block;width:7px}
/* Style02(라인) */
.paging-style03 a{width:auto; padding:0 7px 3px; margin:0 5px; border:0; font-size:16px}
.paging-style03 a.cur{background-color:transparent; color:#333;}
.paging-style03 a.cur:after{position:absolute; bottom:0px; left:50%; width:100%; margin-left:-50%; height:2px; background-color:#333; content:"";}