:root {
	/* --brand-color: #0b223a;      */
	/* --brand-color: #1e4a87;      */
	--sub-bg-color: #f4f7f9;
	/* --text-muted: #666666; */
	--text-muted: #666666;
	--border-light: #e2e8f0;
}

/* ==========================================================================
   공통 하단 푸터 영역 (tail.css 단독 명세)
   ========================================================================== */

/* 풋터 전체 기본 스타일 (일반 스크롤 페이지용) */
.site_footer {
	position: relative;
	width: 100%;
	/* background-color: #727171; */
	background-color: #000000;
	/* font: #111111; */
	border-top: 1px solid #cbd5e1;
	padding: 30px 0;
	box-sizing: border-box;
	clear: both;
}

/* 풀스크롤 내부에 임베디드 되었을 때 하단 배치 제어 */
.site_footer.fullpage_footer {
	position: absolute !important;
	bottom: 0 !important;
	left: 0 !important;
	border-top: 1px solid #cbd5e1;
	padding: 20px 0;
	z-index: 10;
}

/* 1200px 중앙 격자 내 분할 구조 */
.site_footer .footer_w1200 {
	width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/* [좌측] 로고 배치 */
.footer_w1200 .footer_logo_zone {
	display: flex;
	align-items: center;
}

.footer_logo_zone .footer_logo_placeholder {
	width: 200px;
	/* width: 100px; */
	height: 68.25px;
	/* height: 34px; */
	/* border: 1px solid var(--brand-color); */
	border: none;
	/* background-color: #ffffff; */
	background-color: transparent;
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
}

.footer_logo_placeholder img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

/* [우측] 기업 정보 구역 정렬 설정 */
.footer_w1200 .footer_info_zone {
	text-align: right;
}

.footer_info_zone .info_row {
	font-size: 0.95rem;
	/* color: #4a5568; */
	color: #ffffff;
	line-height: 1.6;
	margin-bottom: 2px;
}

.footer_info_zone .info_row:last-child {
	margin-bottom: 0;
}

.info_row strong {
	/* color: #111111; */
	color: #b6b6b6;
	font-weight: 700;
}

.info_row .info_divider {
	display: inline-block;
	width: 1px;
	height: 11px;
	background-color: #cbd5e1;
	margin: 0 10px;
	vertical-align: middle;
}

/* 탑 버튼 레이아웃 제어 */
#top_btn {
	position: fixed;
	bottom: 30px;
	right: 30px;
	width: 45px;
	height: 45px;
	line-height: 43px;
	background: var(--brand-color);
	color: #ffffff;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	z-index: 999;
	font-size: 1.2rem;
	text-align: center;
}

/* 라이브러리가 주입한 fp-tableCell의 수직 정렬을 강제로 flex-start 구조로 전치 */
.main_sec_news .fp-tableCell,
.sub1_sec_history .fp-tableCell {
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
	height: 100% !important;
	position: relative !important;
}

/* 컨텐츠 내용물이 헤더와 푸터 사이 공간에 유연하게 배치되도록 세로 여백 보정 */
.main_sec_news .main_news_container,
.sub1_sec_history .sub1_container {
	margin-top: auto !important;
	margin-bottom: auto !important;
	padding-bottom: 150px !important;
	/* 푸터가 자리 잡을 하단 여백을 강제 방어 */
	box-sizing: border-box !important;
}