@charset "utf-8";

/* /sub_page/ 레이아웃 — 헤더 바로 아래 비주얼 */

#container.kp-spage-layout {
	padding-top: 0;
	padding-bottom: 0;
	min-height: 0;
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
	background-color: #eaeffa;
	flex: 1 0 auto;
}

#container.kp-spage-layout > .sub_visual {
	position: relative;
	width: 100%;
	max-width: 100%;
	height: 550px;
	margin: 110px 0 0;
	background-color: #1a2a3a;
	background-image: url("../images/spage/sub_bg1.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
	box-sizing: border-box;
}

#container.kp-spage-layout > .sub_visual.sub_visual_bg2 {
	background-image: url("../images/spage/sub_bg2.png");
}

#container.kp-spage-layout > .sub_visual.sub_visual_bg3 {
	background-image: url("../images/spage/sub_bg3.png");
}

#container.kp-spage-layout > .sub_visual::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.22);
	pointer-events: none;
	z-index: 0;
}

#container.kp-spage-layout > .sub_visual .sub_visual_inner {
	position: relative;
	z-index: 1;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 24px 100px;
	box-sizing: border-box;
}

#container.kp-spage-layout > .sub_visual .sub_visual_inner h2 {
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	color: #fff;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 62px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -0.02em;
	text-align: center;
	text-shadow: 0 2px 14px rgba(0, 0, 0, 0.45);
	word-break: keep-all;
}

#container.kp-spage-layout > .sub_visual .sub_visual_tabs {
	position: absolute;
	left: 50%;
	bottom: 25px;
	z-index: 2;
	transform: translateX(-50%);
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 4px;
	margin: 0;
	padding: 8px 10px;
	list-style: none;
	width: auto;
	max-width: calc(100% - 40px);
	background: #fff;
	border-radius: 999px;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.16);
	box-sizing: border-box;
}

#container.kp-spage-layout > .sub_visual .sub_visual_tabs li {
	margin: 0;
	padding: 0;
	list-style: none;
	flex: 0 0 auto;
}

#container.kp-spage-layout > .sub_visual .sub_visual_tabs a {
	display: block;
	padding: 13px 26px;
	border-radius: 999px;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	color: #525252;
	text-decoration: none;
	white-space: nowrap;
	transition: color 0.15s ease, background 0.15s ease;
}

#container.kp-spage-layout > .sub_visual .sub_visual_tabs a:hover {
	color: #3f93ec;
}

#container.kp-spage-layout > .sub_visual .sub_visual_tabs li.is_on a,
#container.kp-spage-layout > .sub_visual .sub_visual_tabs a.is_on {
	background: #3f93ec;
	color: #fff;
}

/* 본문: 가로 100% 배경 + 내부 1200px */
#container.kp-spage-layout .contents {
	width: 100%;
	max-width: none;
	margin-left: auto;
	margin-right: auto;
	padding: 0 20px 80px;
	box-sizing: border-box;
	background-color: #eaeffa;
}

#container.kp-spage-layout .contents .list_area {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}

/* agree.php — 약관 보기 (sub_page) */
#container.kp-spage-layout > .contents.agree_contents {
	margin-top: 110px;
	padding-top: 0;
}

#container.kp-spage-layout .contents.agree_contents .board_area--agree {
	padding: 50px 0 0;
	box-sizing: border-box;
}

#container.kp-spage-layout .contents.agree_contents .board_ttl {
	margin: 0 0 20px;
	padding: 0;
	font-size: 22px;
	font-weight: 700;
	color: #2c2c2c;
	line-height: 1.3;
	letter-spacing: -0.3px;
}

#container.kp-spage-layout .contents.agree_contents .board_box {
	box-sizing: border-box;
	width: 100%;
	background: #fff;
	border: 1px solid #e3e8f0;
	border-radius: 14px;
	overflow: hidden;
	padding: 32px 48px 36px;
}

#container.kp-spage-layout .contents.agree_contents .agree_view_contents {
	line-height: 1.7;
	color: #333;
	font-size: 15px;
	overflow-wrap: break-word;
	white-space: pre-wrap;
}

#container.kp-spage-layout .contents.agree_contents .agree_view_empty {
	height: auto;
	margin: 0;
	padding: 40px 0;
	float: none;
	display: block;
	line-height: 1.5;
	font-size: 15px;
	color: #888;
	text-align: center;
}

/* 본문 섹션 타이틀 */
#container.kp-spage-layout .sub_page_head {
	text-align: center;
	padding: 100px 0 0;
}

#container.kp-spage-layout .contents .sub_page_head .sub_page_head_eyebrow {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 6px;
	padding: 0 0 0 0.14em;
	font-family: "Noto Sans KR", sans-serif;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.04em;
	color: #1f1f1f;
	text-transform: uppercase;
	text-align: center;
	box-sizing: border-box;
}

#container.kp-spage-layout .contents .list_area .sub_page_head_title {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 45px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
}

#container.kp-spage-layout .sub_page_head_blue {
	color: #3f93ec;
	font-weight: 700;
}

#container.kp-spage-layout .contents .sub_page_head_desc {
	display: block;
	width: 100%;
	max-width: 1100px;
	height: auto;
	margin: 28px auto 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub_page_head_desc em {
	display: inline;
	width: auto;
	float: none;
	font-style: normal;
	font-weight: 700;
	color: #3f93ec;
	line-height: inherit;
}

/* sub21 — 인적성검사 개요 카드 */
#container.kp-spage-layout .sub21_cards {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: wrap;
	gap: 24px;
	margin: 72px 0 100px;
	padding: 0;
}

#container.kp-spage-layout .sub21_card {
	flex: 0 0 585px;
	width: 585px;
	max-width: 100%;
	min-height: 450px;
	margin: 0;
	padding: 75px;
	border: 1px solid #e2e7ef;
	border-radius: 18px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub21_card_head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 75px;
	padding: 0;
	border-bottom: none;
}

#container.kp-spage-layout .sub21_card_title {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 27px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.03em;
	color: #1f1f1f;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub21_card_icon {
	flex: 0 0 auto;
	width: 88px;
	height: 88px;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub21_card_icon img {
	display: block;
	width: 88px;
	height: 88px;
	object-fit: contain;
}

#container.kp-spage-layout .contents .sub21_card_desc {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub21_card_desc em {
	display: inline;
	width: auto;
	float: none;
	font-style: normal;
	font-weight: 700;
	color: #3f93ec;
	line-height: inherit;
}

/* sub21 — 영역별 배경 (연한색 / 흰색 교차) */
#container.kp-spage-layout .contents.sub21_contents {
	padding: 0;
	background-color: transparent;
}

#container.kp-spage-layout .sub21_band--lite {
	background-color: #eaeffa;
	padding: 0 20px 100px;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub21_band--white {
	background-color: #fff;
	padding: 0 20px 100px;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub21_band--lite.sub21_band--next,
#container.kp-spage-layout .sub21_band--lite:last-child {
	padding: 0 20px 100px;
}

#container.kp-spage-layout .sub21_next_sec {
	min-height: 0;
}

/* sub22 — 검사의 구성 및 유형 */
#container.kp-spage-layout .contents.sub22_contents {
	padding: 0;
	background-color: transparent;
}

#container.kp-spage-layout .sub22_compose_panel {
	position: relative;
	width: 100%;
	margin: 56px 0 0;
	padding: 0 0 8px;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub22_badge {
	position: absolute;
	top: -78px;
	right: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 160px;
	height: 160px;
	margin: 0;
	padding: 12px 0;
	border-radius: 50%;
	box-sizing: border-box;
	background-color: #f37e81;
	box-shadow: 0 10px 24px rgba(243, 126, 129, 0.35);
}

#container.kp-spage-layout .sub22_badge_text {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 500;
	line-height: 1.35;
	letter-spacing: -0.03em;
	color: #fff;
	text-align: center;
	word-break: keep-all;
}

/* style.css #container .contents p span (block·float·250px) 충돌 방지 */
#container.kp-spage-layout .contents .sub22_badge_text,
#container.kp-spage-layout .contents .sub22_badge_text span {
	display: block;
	width: auto;
	float: none;
	line-height: inherit;
	color: #fff;
}

#container.kp-spage-layout .contents .sub22_badge_text {
	display: flex;
}

#container.kp-spage-layout .contents .sub22_badge_em {
	font-size: 30px;
	font-weight: 700;
	line-height: 1.15;
	margin-bottom: 6px;
}

#container.kp-spage-layout .contents .sub22_badge_line {
	font-size: 20px;
	font-weight: 500;
	line-height: 1.35;
}

#container.kp-spage-layout .sub22_compose_box {
	width: 100%;
	margin: 0;
	padding: 48px 56px 42px;
	border: 1px solid #e2e7ef;
	border-radius: 18px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub22_compose_box_title {
	margin: 0 0 24px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: left;
}

#container.kp-spage-layout .sub22_compose_table_wrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

#container.kp-spage-layout .sub22_compose_table {
	width: 100%;
	min-width: 720px;
	margin: 0;
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	border-top: 2px solid #000;
}

#container.kp-spage-layout .sub22_compose_table caption {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

#container.kp-spage-layout .sub22_compose_table col.sub22_compose_col_label {
	width: 18%;
}

#container.kp-spage-layout .sub22_compose_table col.sub22_compose_col_data {
	width: 41%;
}

#container.kp-spage-layout .sub22_compose_table th,
#container.kp-spage-layout .sub22_compose_table td {
	padding: 18px 16px;
	border: none;
	border-bottom: 1px solid #e8e8e8;
	box-sizing: border-box;
	vertical-align: middle;
	word-break: keep-all;
}

#container.kp-spage-layout .sub22_compose_table thead th {
	background-color: #f5f5f5;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	color: #1f1f1f;
	text-align: center;
}

#container.kp-spage-layout .sub22_compose_table thead th.sub22_compose_col_head--personality,
#container.kp-spage-layout .sub22_compose_table thead th.sub22_compose_col_head--job {
	background-color: #f5f5f5;
	color: #3f93ec;
}

#container.kp-spage-layout .sub22_compose_table tbody th {
	width: 18%;
	min-width: 120px;
	background-color: #fff;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.45;
	color: #1f1f1f;
	text-align: center;
}

#container.kp-spage-layout .sub22_compose_table tbody td {
	background-color: #fff;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.55;
	color: #1f1f1f;
	text-align: center;
}

#container.kp-spage-layout .sub22_compose_table tbody tr.sub22_compose_row--types td {
	padding-top: 20px;
	padding-bottom: 20px;
	vertical-align: top;
}

#container.kp-spage-layout .sub22_compose_table tbody td.sub22_compose_cell--list {
	text-align: left;
}

#container.kp-spage-layout .sub22_compose_list {
	margin: 0;
	padding: 0 0 0 1.2em;
	list-style: none;
}

#container.kp-spage-layout .sub22_compose_list li {
	margin: 0 0 8px;
	padding: 0;
	font-size: 15px;
	line-height: 1.65;
	color: #1f1f1f;
}

#container.kp-spage-layout .sub22_compose_list li:last-child {
	margin-bottom: 0;
}

#container.kp-spage-layout .sub22_compose_table tbody tr.sub22_compose_row--point td.sub22_compose_cell--point {
	background-color: #fdf0f0;
	font-weight: 500;
}

#container.kp-spage-layout .sub22_compose_table tbody tr:last-child th,
#container.kp-spage-layout .sub22_compose_table tbody tr:last-child td {
	border-bottom: none;
}

#container.kp-spage-layout .sub22_compose_note {
	margin: 18px 0 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: -0.02em;
	color: #8a8a8a;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub22_bottom_desc {
	display: block;
	width: 100%;
	max-width: 980px;
	height: auto;
	min-height: 0;
	margin: 56px auto 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub22_bottom_desc em {
	display: inline;
	font-style: normal;
	font-weight: 700;
	color: #3f93ec;
	line-height: inherit;
}

#container.kp-spage-layout .sub22_cta_wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 64px 0 100px;
	padding: 0;
}

#container.kp-spage-layout .sub22_cta_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-width: 280px;
	margin: 0;
	padding: 18px 34px;
	border: none;
	border-radius: 999px;
	box-sizing: border-box;
	background: linear-gradient(90deg, #3f93ec 0%, #2f7fe0 100%);
	box-shadow: 0 10px 24px rgba(47, 127, 224, 0.28);
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.02em;
	color: #fff;
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#container.kp-spage-layout .sub22_cta_btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(47, 127, 224, 0.34);
	color: #fff;
}

#container.kp-spage-layout .sub22_cta_icon {
	position: relative;
	flex: 0 0 auto;
	width: 28px;
	height: 28px;
	border: 2px solid #fff;
	border-radius: 50%;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub22_cta_icon::after {
	content: "";
	position: absolute;
	top: 45%;
	left: 50%;
	width: 7px;
	height: 12px;
	margin: 0;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	box-sizing: border-box;
	transform: translate(-55%, -60%) rotate(45deg);
}

/* sub23 — 검사의 목적과 활용 */
#container.kp-spage-layout .contents.sub23_contents {
	--sub23-panel-height: 414px;
	--sub23-panel-gap: 165px;
	--sub23-bridge-overlap: 320px;
	--sub23-head-white-trim: 180px;
	--sub23-overlap-lite: 120px;
	--sub23-overlap-white-up: 110px;
	padding: 0;
	background-color: transparent;
}

#container.kp-spage-layout .contents.sub23_contents .list_area {
	min-height: 0;
}

#container.kp-spage-layout .sub23_band {
	box-sizing: border-box;
}

#container.kp-spage-layout .sub23_band--lite {
	background-color: #eaeffa;
}

#container.kp-spage-layout .sub23_band--head {
	padding: 0 20px calc(150px + 90px);
}

#container.kp-spage-layout .sub23_band--head .sub_page_head {
	padding: 60px 0 0;
}

#container.kp-spage-layout .sub23_sections {
	padding: 0 20px 120px;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub23_sections.bg_white {
	background-color: #fff;
}

#container.kp-spage-layout .sub23_sections.sub23_sections--head.bg_white {
	padding-bottom: 0;
	margin-bottom: calc(-1 * (var(--sub23-head-white-trim) - 120px));
}

#container.kp-spage-layout .sub23_sections.sub23_sections--lite {
	display: flex;
	align-items: center;
	min-height: calc(var(--sub23-panel-height) + (var(--sub23-panel-gap) * 2) + var(--sub23-overlap-lite));
	padding-top: var(--sub23-overlap-lite);
	padding-bottom: var(--sub23-panel-gap);
	background-color: #eaeffa;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub23_sections.sub23_sections--lite .list_area {
	width: 100%;
}

#container.kp-spage-layout .sub23_panel--overlap-down {
	position: relative;
	z-index: 3;
	margin-bottom: calc(-1 * var(--sub23-overlap-lite));
}

#container.kp-spage-layout .sub23_panel--overlap-up-bridge {
	position: relative;
	z-index: 3;
	top: calc(-1 * var(--sub23-overlap-white-up));
	margin-bottom: calc(-1 * var(--sub23-overlap-white-up));
}

#container.kp-spage-layout .sub23_panel {
	position: relative;
	z-index: 2;
	width: 100%;
	margin: 0;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub23_panel--white.sub23_panel--overlap-up {
	top: -150px;
	margin-bottom: -150px;
}

#container.kp-spage-layout .sub23_panel--white.sub23_panel--headline {
	margin-bottom: 0;
}

#container.kp-spage-layout .sub23_panel--white {
	height: auto;
	padding: 0;
	border: none;
	border-radius: 18px;
	background-color: #fff;
	box-shadow: none;
	overflow: hidden;
}

#container.kp-spage-layout .sub23_panel--white .sub23_panel_img {
	border-radius: 14px;
}

/* 패널 공통 — 50:50 · 세로 중앙 · 높이 414px */
#container.kp-spage-layout .sub23_panel_inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	min-height: var(--sub23-panel-height);
	column-gap: 0;
	row-gap: 0;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub23_panel_inner .sub23_panel_media,
#container.kp-spage-layout .sub23_panel_inner .sub23_panel_body {
	min-width: 0;
}

/* 기본: 좌 이미지 · 우 텍스트 */
#container.kp-spage-layout .sub23_panel_inner:not(.sub23_panel_inner--reverse) .sub23_panel_media {
	grid-column: 1;
	grid-row: 1;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	height: 100%;
}

#container.kp-spage-layout .sub23_panel_inner:not(.sub23_panel_inner--reverse) .sub23_panel_body {
	grid-column: 2;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	width: 100%;
	height: 100%;
	padding: 0;
	box-sizing: border-box;
	text-align: left;
}

#container.kp-spage-layout .sub23_panel--headline .sub23_panel_inner:not(.sub23_panel_inner--reverse) .sub23_panel_body {
	padding-left: 20px;
	padding-right: 20px;
}

/* 반전: 좌 텍스트 · 우 이미지 */
#container.kp-spage-layout .sub23_panel_inner--reverse .sub23_panel_body {
	grid-column: 1;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	width: 100%;
	height: 100%;
	padding: 0;
	box-sizing: border-box;
	text-align: left;
}

#container.kp-spage-layout .sub23_panel_inner--reverse .sub23_panel_media {
	grid-column: 2;
	grid-row: 1;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
	height: 100%;
}

#container.kp-spage-layout .sub23_panel_media {
	flex: none;
	max-width: none;
}

#container.kp-spage-layout .sub23_panel_img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	border-radius: 14px;
	object-fit: none;
}

#container.kp-spage-layout .sub23_panel_body {
	flex: none;
	min-width: 0;
}

#container.kp-spage-layout .sub23_panel_inner--reverse {
	flex-direction: unset;
}

#container.kp-spage-layout .sub23_panel_title {
	margin: 0 0 20px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 33px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub23_panel_lead {
	display: block;
	height: auto;
	min-height: 0;
	margin: 0 0 18px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.75;
	letter-spacing: -0.02em;
	color: #3f93ec;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub23_panel_desc {
	display: block;
	height: auto;
	min-height: 0;
	margin: 0 0 14px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub23_panel_desc:last-child {
	margin-bottom: 0;
}

#container.kp-spage-layout .contents .sub23_panel_lead + .sub23_panel_desc {
	margin-top: 0;
}

#container.kp-spage-layout .contents .sub23_panel_desc + .sub23_panel_lead {
	margin-top: 0;
}

#container.kp-spage-layout .contents .sub23_blue {
	display: inline;
	font-style: normal;
	font-weight: inherit;
	color: #3f93ec;
	line-height: inherit;
}

/* sub23 — 검사 결과의 활용 카드 */
#container.kp-spage-layout .sub23_band--util {
	padding: 80px 20px 100px;
}

#container.kp-spage-layout .sub23_band--util .sub_page_head {
	padding: 0;
}

#container.kp-spage-layout .sub23_util_cards {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: wrap;
	gap: 24px;
	margin: 56px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub23_util_card {
	flex: 0 0 585px;
	width: 585px;
	max-width: 100%;
	margin: 0;
	padding: 56px 60px 60px;
	border: 1px solid #e2e7ef;
	border-radius: 18px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub23_util_card_head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 28px;
	padding: 0;
}

#container.kp-spage-layout .sub23_util_card_title {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0 0 20px;
	border-bottom: 1px solid #e2e7ef;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 27px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.03em;
	color: #1f1f1f;
	text-align: left;
	word-break: keep-all;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub23_util_card_blue {
	color: #3f93ec;
	font-weight: 700;
}

#container.kp-spage-layout .sub23_util_card_icon {
	flex: 0 0 auto;
	width: 88px;
	height: 88px;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub23_util_card_icon img {
	display: block;
	width: 88px;
	height: 88px;
	object-fit: contain;
}

#container.kp-spage-layout .sub23_util_list {
	margin: 0;
	padding: 0;
	list-style: none;
}

#container.kp-spage-layout .sub23_util_list li {
	position: relative;
	margin: 0 0 8px;
	padding: 0 0 0 16px;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub23_util_list li:last-child {
	margin-bottom: 0;
}

#container.kp-spage-layout .sub23_util_list li::before {
	content: "";
	position: absolute;
	top: 0.72em;
	left: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #1f1f1f;
}

/* sub24 — 인적성검사 항목 */
#container.kp-spage-layout .contents.sub24_contents {
	padding: 0;
	background-color: transparent;
}

#container.kp-spage-layout .sub24_band {
	box-sizing: border-box;
}

#container.kp-spage-layout .sub24_band--lite {
	background-color: #eaeffa;
	padding: 0 20px 100px;
}

#container.kp-spage-layout .contents.sub24_contents .sub_page_head .sub_page_head_desc {
	display: block;
	height: auto;
	min-height: 0;
	margin: 28px auto 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: center;
	word-break: keep-all;
	float: none;
	align-items: initial;
}

#container.kp-spage-layout .contents.sub24_contents .sub_page_head .sub_page_head_desc.sub24_head_desc {
	margin-top: 18px;
	font-size: 18px;
}

#container.kp-spage-layout .sub24_img {
	display: block;
	width: 100%;
	max-width: 1100px;
	height: auto;
	margin: 56px auto 0;
}

#container.kp-spage-layout .sub24_adult {
	margin: 72px 0 0;
	padding: 0;
}

#container.kp-spage-layout .contents.sub24_contents .sub24_adult_title {
	margin: 0 0 28px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 45px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents.sub24_contents .sub24_adult_title .sub24_black {
	color: #1f1f1f;
}

#container.kp-spage-layout .sub24_adult_box {
	padding: 48px 40px 44px;
	border: 1px solid #e2e7ef;
	border-radius: 18px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub24_table_title {
	margin: 0 0 20px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub24_adult_box .sub24_table_title + .sub24_table_wrap + .sub24_table_title {
	margin-top: 48px;
}

#container.kp-spage-layout .sub24_table_wrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

#container.kp-spage-layout .sub24_item_table,
#container.kp-spage-layout .sub24_time_table,
#container.kp-spage-layout .sub24_stu_time_table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	border-top: 1px solid #000;
}

#container.kp-spage-layout .sub24_item_table caption,
#container.kp-spage-layout .sub24_time_table caption,
#container.kp-spage-layout .sub24_stu_time_table caption {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

#container.kp-spage-layout .sub24_item_table col.sub24_item_col_type {
	width: 235px;
}

#container.kp-spage-layout .sub24_item_table col.sub24_item_col_count {
	width: 250px;
}

#container.kp-spage-layout .sub24_time_table col.sub24_time_col_label {
	width: 140px;
}

#container.kp-spage-layout .sub24_stu_time_table col.sub24_stu_col_group {
	width: 110px;
}

#container.kp-spage-layout .sub24_stu_time_table col.sub24_stu_col_target {
	width: 130px;
}

#container.kp-spage-layout .sub24_item_table th,
#container.kp-spage-layout .sub24_item_table td,
#container.kp-spage-layout .sub24_time_table th,
#container.kp-spage-layout .sub24_time_table td,
#container.kp-spage-layout .sub24_stu_time_table th,
#container.kp-spage-layout .sub24_stu_time_table td {
	padding: 16px 14px;
	border: 1px solid #e0e0e0;
	border-top: none;
	box-sizing: border-box;
	vertical-align: middle;
	word-break: keep-all;
}

#container.kp-spage-layout .sub24_item_table thead th,
#container.kp-spage-layout .sub24_time_table thead th,
#container.kp-spage-layout .sub24_stu_time_table thead th {
	background-color: #f8f8f8;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.45;
	color: #1f1f1f;
	text-align: center;
}

#container.kp-spage-layout .sub24_item_table tbody th,
#container.kp-spage-layout .sub24_time_table tbody th,
#container.kp-spage-layout .sub24_stu_time_table tbody th {
	background-color: #fff;
	font-size: 18px;
	line-height: 1.45;
	color: #1f1f1f;
	text-align: center;
}

#container.kp-spage-layout .sub24_item_table tbody th {
	font-weight: 500;
}

#container.kp-spage-layout .sub24_time_table tbody th {
	font-weight: 700;
}

#container.kp-spage-layout .sub24_stu_time_table tbody th {
	font-weight: 500;
}

#container.kp-spage-layout .sub24_item_table tbody td,
#container.kp-spage-layout .sub24_time_table tbody td,
#container.kp-spage-layout .sub24_stu_time_table tbody td {
	font-size: 18px;
	font-weight: 400;
	line-height: 1.65;
	text-align: center;
}

#container.kp-spage-layout .sub24_item_table tbody td,
#container.kp-spage-layout .sub24_stu_time_table tbody td {
	color: #707070;
}

#container.kp-spage-layout .sub24_time_table tbody td {
	color: #1f1f1f;
}

#container.kp-spage-layout .sub24_item_table tbody td.sub24_item_cell--list {
	text-align: left;
}

#container.kp-spage-layout .sub24_item_table th:first-child,
#container.kp-spage-layout .sub24_item_table td:first-child,
#container.kp-spage-layout .sub24_time_table th:first-child,
#container.kp-spage-layout .sub24_time_table td:first-child,
#container.kp-spage-layout .sub24_stu_time_table th:first-child,
#container.kp-spage-layout .sub24_stu_time_table td:first-child {
	border-left: none;
}

#container.kp-spage-layout .sub24_item_table th:last-child,
#container.kp-spage-layout .sub24_item_table td:last-child,
#container.kp-spage-layout .sub24_time_table th:last-child,
#container.kp-spage-layout .sub24_time_table td:last-child,
#container.kp-spage-layout .sub24_stu_time_table th:last-child,
#container.kp-spage-layout .sub24_stu_time_table td:last-child {
	border-right: none;
}

/* sub25 — 인적성검사 결과분석 */
#container.kp-spage-layout .contents.sub25_contents {
	padding: 0;
	background-color: transparent;
}

#container.kp-spage-layout .sub25_band {
	box-sizing: border-box;
}

#container.kp-spage-layout .sub25_band--lite {
	background-color: #eaeffa;
	padding: 0 20px 100px;
}

#container.kp-spage-layout .sub25_cards {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: wrap;
	gap: 24px;
	margin: 72px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub25_card {
	flex: 0 0 585px;
	width: 585px;
	max-width: 100%;
	min-height: 450px;
	margin: 0;
	padding: 65px 60px;
	border: 1px solid #e2e7ef;
	border-radius: 18px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub25_card_head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 75px;
	padding: 0;
}

#container.kp-spage-layout .sub25_card_title {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 27px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.03em;
	color: #1f1f1f;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub25_card_icon {
	flex: 0 0 auto;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub25_card_icon img {
	display: block;
	width: auto;
	height: auto;
	max-width: none;
}

#container.kp-spage-layout .contents .sub25_card_desc {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub25_card_desc em {
	display: inline;
	width: auto;
	float: none;
	font-style: normal;
	font-weight: 700;
	color: #3f93ec;
	line-height: inherit;
}

#container.kp-spage-layout .sub25_report {
	margin: 150px 0 0;
	padding: 0 0 20px;
}

#container.kp-spage-layout .sub25_report_head {
	padding-top: 0;
}

#container.kp-spage-layout .sub25_feat_cols {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-wrap: wrap;
	gap: 24px;
	margin: 56px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub25_feat_col {
	flex: 1 1 0;
	min-width: 280px;
	max-width: 384px;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub25_feat_card {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	min-height: 280px;
	margin: 0 0 52px;
	padding: 48px 24px 56px;
	border: 1px solid #e2e7ef;
	border-radius: 18px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub25_feat_icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: auto;
	height: auto;
	margin: 0 0 28px;
	padding: 0;
}

#container.kp-spage-layout .sub25_feat_icon img {
	display: block;
	width: auto;
	height: auto;
	max-width: none;
}

#container.kp-spage-layout .sub25_feat_title {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.03em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub25_feat_plus {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(-50%, 50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background-color: #3f93ec;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 28px;
	font-weight: 400;
	line-height: 1;
	color: #fff;
}

#container.kp-spage-layout .contents .sub25_feat_desc {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub25_guide {
	margin: 80px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub25_guide_box {
	padding: 56px 60px 64px;
	border: 1px solid #e2e7ef;
	border-radius: 18px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub25_guide_row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 32px 24px;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub25_guide_item {
	flex: 1 1 0;
	min-width: 240px;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub25_guide_title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.03em;
	color: #1f1f1f;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub25_guide_dot {
	flex: 0 0 auto;
	display: block;
	width: 14px;
	height: 14px;
	border: 2px solid #fff;
	border-radius: 50%;
	background-color: #3f93ec;
	box-shadow: 0 0 0 1px #3f93ec;
	box-sizing: border-box;
}

#container.kp-spage-layout .contents .sub25_guide_desc {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub25_guide_gallery {
	margin: 10px 0;
	padding: 0;
}

#container.kp-spage-layout .sub25_guide_img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}

#container.kp-spage-layout .sub25_individual,
#container.kp-spage-layout .sub25_summary {
	margin: 100px 0 0;
	padding: 0 0 20px;
}

#container.kp-spage-layout .contents.sub25_contents .sub25_individual_head,
#container.kp-spage-layout .contents.sub25_contents .sub25_summary_head {
	margin: 0;
	padding: 0;
	text-align: center;
}

#container.kp-spage-layout .contents.sub25_contents .sub25_individual_title,
#container.kp-spage-layout .contents.sub25_contents .sub25_summary_title {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents.sub25_contents .sub25_individual_subtitle,
#container.kp-spage-layout .contents.sub25_contents .sub25_summary_subtitle {
	display: block;
	width: 100%;
	height: auto;
	margin: 8px 0 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 33px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub25_individual_gallery,
#container.kp-spage-layout .sub25_summary_gallery {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 16px;
	width: 100%;
	margin: 40px 0 0;
	padding: 0;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

#container.kp-spage-layout .sub25_individual_item,
#container.kp-spage-layout .sub25_summary_item {
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 1px solid #e2e7ef;
	border-radius: 12px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.08);
	overflow: hidden;
}

#container.kp-spage-layout .sub25_individual_img,
#container.kp-spage-layout .sub25_summary_img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
}

#container.kp-spage-layout .sub25_sheet_divider,
#container.kp-spage-layout .sub25_cta_divider {
	display: block;
	width: 100%;
	height: 1px;
	margin: 0;
	padding: 0;
	border: 0;
	background-color: #e2e7ef;
}

#container.kp-spage-layout .sub25_individual .sub25_sheet_divider--top {
	margin-bottom: 40px;
}

#container.kp-spage-layout .sub25_individual .sub25_sheet_divider--bottom {
	margin-top: 40px;
}

#container.kp-spage-layout .sub25_cta_wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0 0 40px;
}

#container.kp-spage-layout .sub25_cta_wrap .sub25_sheet_divider--cta {
	margin: 56px 0 40px;
}

#container.kp-spage-layout .sub25_cta_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-width: 320px;
	margin: 0;
	padding: 18px 40px;
	border: none;
	border-radius: 999px;
	box-sizing: border-box;
	background: linear-gradient(90deg, #3f93ec 0%, #2f7fe0 100%);
	box-shadow: 0 10px 24px rgba(47, 127, 224, 0.28);
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.02em;
	color: #fff;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#container.kp-spage-layout .sub25_cta_btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(47, 127, 224, 0.34);
	color: #fff;
}

#container.kp-spage-layout .sub25_cta_icon {
	position: relative;
	flex: 0 0 auto;
	width: 28px;
	height: 28px;
	border: 2px solid #fff;
	border-radius: 50%;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub25_cta_icon::after {
	content: "";
	position: absolute;
	top: 45%;
	left: 50%;
	width: 7px;
	height: 12px;
	margin: 0;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: translate(-50%, -50%) rotate(45deg);
	box-sizing: border-box;
}

/* sub31 — 단체검사 프로세스 */
#container.kp-spage-layout .contents.sub31_contents {
	padding: 0;
	background-color: transparent;
}

#container.kp-spage-layout .sub31_band {
	box-sizing: border-box;
}

#container.kp-spage-layout .sub31_band--lite {
	background-color: #eaeffa;
	padding: 0 20px 100px;
}

#container.kp-spage-layout .sub31_intro_box {
	margin: 72px 0 0;
	padding: 48px 60px 56px;
	border: 1px solid #e2e7ef;
	border-radius: 18px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub31_intro_head {
	display: flex;
	align-items: center;
	gap: 28px;
	margin: 0 0 40px;
	padding: 0;
}

#container.kp-spage-layout .sub31_intro_icon {
	flex: 0 0 auto;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub31_intro_icon img {
	display: block;
	width: auto;
	height: auto;
	max-width: none;
}

#container.kp-spage-layout .sub31_intro_body {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub31_intro_title {
	margin: 0 0 10px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.03em;
	color: #1f1f1f;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub31_intro_blue {
	color: #3f93ec;
	font-weight: 700;
}

#container.kp-spage-layout .contents .sub31_intro_desc {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub31_intro_gallery {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 16px;
	width: 100%;
	margin: 0;
	padding: 0;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

#container.kp-spage-layout .sub31_intro_item {
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
	padding: 0;
	border-radius: 8px;
	box-sizing: border-box;
	overflow: hidden;
}

#container.kp-spage-layout .sub31_intro_img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
}

#container.kp-spage-layout .sub31_apply {
	margin: 100px 0 0;
	padding: 0;
}

#container.kp-spage-layout .contents.sub31_contents .sub31_apply_head {
	margin: 0;
	padding: 0;
	text-align: center;
}

#container.kp-spage-layout .contents.sub31_contents .sub31_apply_title {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub31_apply_blue {
	color: #3f93ec;
	font-weight: 700;
}

#container.kp-spage-layout .sub31_apply_flow {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 0;
	width: 100%;
	margin: 48px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub31_apply_step {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub31_apply_card {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	min-height: 220px;
	margin: 0;
	padding: 40px 24px 36px;
	border: 1px solid #e2e7ef;
	border-radius: 16px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub31_apply_icon {
	flex: 0 0 auto;
	width: auto;
	height: auto;
	margin: 0 0 28px;
	padding: 0;
}

#container.kp-spage-layout .sub31_apply_icon img {
	display: block;
	width: auto;
	height: auto;
	max-width: none;
}

#container.kp-spage-layout .contents .sub31_apply_label {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub31_apply_arrow {
	position: relative;
	z-index: 3;
	flex: 0 0 20px;
	align-self: center;
	width: 20px;
	min-width: 20px;
	margin: 0;
	padding: 0;
	overflow: visible;
}

#container.kp-spage-layout .sub31_apply_arrow img {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: auto;
	height: auto;
	max-width: none;
	transform: translate(-50%, -50%);
}

/* sub31 — 관리자 이용방법 */
#container.kp-spage-layout .sub31_admin {
	margin: 100px 0 0;
	padding: 0;
}

#container.kp-spage-layout .contents.sub31_contents .sub31_admin_head {
	margin: 0;
	padding: 0;
	text-align: center;
}

#container.kp-spage-layout .contents.sub31_contents .sub31_admin_title {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub31_admin_blue {
	color: #1a68b9;
	font-weight: 700;
}

#container.kp-spage-layout .sub31_admin_flow,
#container.kp-spage-layout .sub31_examinee_flow {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 0;
	width: 100%;
	margin: 48px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub31_admin_step,
#container.kp-spage-layout .sub31_examinee_step {
	position: relative;
	z-index: 1;
	flex: 0 0 auto;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub31_admin_circle,
#container.kp-spage-layout .sub31_examinee_circle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 190px;
	height: 190px;
	margin: 0;
	padding: 20px;
	border: 1px solid #3f93ec;
	border-radius: 50%;
	box-sizing: border-box;
	box-shadow: 0 8px 20px rgba(63, 147, 236, 0.18);
}

#container.kp-spage-layout .sub31_admin_circle--1 {
	background-color: #f6f8fb;
}

#container.kp-spage-layout .sub31_admin_circle--2 {
	background-color: #e3f2fd;
}

#container.kp-spage-layout .sub31_admin_circle--3 {
	background-color: #dae5fb;
}

#container.kp-spage-layout .sub31_admin_circle--4 {
	background-color: #c8d9fa;
}

#container.kp-spage-layout .sub31_admin_circle--5 {
	background-color: #b6ccf7;
}

#container.kp-spage-layout .sub31_examinee_circle--1 {
	background-color: #f7fbff;
}

#container.kp-spage-layout .sub31_examinee_circle--2 {
	background-color: #edf5fd;
}

#container.kp-spage-layout .sub31_examinee_circle--3 {
	background-color: #e3effb;
}

#container.kp-spage-layout .sub31_examinee_circle--4 {
	background-color: #d9e9fa;
}

#container.kp-spage-layout .sub31_examinee_circle--5 {
	background-color: #cfe3f8;
}

#container.kp-spage-layout .contents .sub31_admin_label {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #1f4f8c;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub31_admin_label span {
	display: inline;
	width: auto;
	float: none;
	line-height: inherit;
	color: inherit;
	font-size: 24px;
	font-weight: inherit;
}

#container.kp-spage-layout .contents .sub31_examinee_label {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #1f4f8c;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub31_examinee_label span {
	display: inline;
	width: auto;
	float: none;
	line-height: inherit;
	color: inherit;
	font-size: 24px;
	font-weight: inherit;
}

#container.kp-spage-layout .sub31_admin_arrow,
#container.kp-spage-layout .sub31_examinee_arrow {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub31_admin_arrow img,
#container.kp-spage-layout .sub31_examinee_arrow img {
	display: block;
	width: auto;
	height: auto;
	max-width: none;
}

/* sub31 — 검사자 이용방법 */
#container.kp-spage-layout .sub31_examinee {
	margin: 100px 0 0;
	padding: 0 0 40px;
}

#container.kp-spage-layout .contents.sub31_contents .sub31_examinee_head {
	margin: 0;
	padding: 0;
	text-align: center;
}

#container.kp-spage-layout .contents.sub31_contents .sub31_examinee_title {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub31_examinee_blue {
	color: #2e84de;
	font-weight: 700;
}

#container.kp-spage-layout .sub31_examinee_notes {
	margin: 48px 0 0;
	padding: 0;
	text-align: center;
}

#container.kp-spage-layout .contents .sub31_examinee_note {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 10px;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: -0.02em;
	color: #707070;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub31_examinee_note:last-child {
	margin-bottom: 0;
}

#container.kp-spage-layout .contents .sub31_examinee_note .sub31_note_blue {
	display: inline;
	width: auto;
	float: none;
	line-height: inherit;
	font-size: inherit;
	font-weight: 700;
	color: #3f93ec;
}

#container.kp-spage-layout .sub31_cta_wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: 48px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub31_cta_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-width: 320px;
	margin: 0;
	padding: 18px 40px;
	border: none;
	border-radius: 999px;
	box-sizing: border-box;
	background: linear-gradient(90deg, #3f93ec 0%, #2f7fe0 100%);
	box-shadow: 0 10px 24px rgba(47, 127, 224, 0.28);
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.02em;
	color: #fff;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#container.kp-spage-layout .sub31_cta_btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(47, 127, 224, 0.34);
	color: #fff;
}

#container.kp-spage-layout .sub31_cta_icon {
	position: relative;
	flex: 0 0 auto;
	width: 28px;
	height: 28px;
	border: 2px solid #fff;
	border-radius: 50%;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub31_cta_icon::after {
	content: "";
	position: absolute;
	top: 45%;
	left: 50%;
	width: 7px;
	height: 12px;
	margin: 0;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: translate(-50%, -50%) rotate(45deg);
	box-sizing: border-box;
}

/* sub32 — 기업체검사 프로세스 */
#container.kp-spage-layout .contents.sub32_contents {
	padding: 0 0 80px;
	background-color: #eaeffa;
}

#container.kp-spage-layout .sub32_content_top {
	position: relative;
	width: 100%;
	min-height: 0;
	margin: 0;
	padding: 100px 20px 72px;
	box-sizing: border-box;
	overflow: hidden;
	background: linear-gradient(to bottom right, #efeaf9 0%, #d8eafd 100%);
}

#container.kp-spage-layout .sub32_content_top_blobs {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;
}

#container.kp-spage-layout .sub32_blob {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
}

#container.kp-spage-layout .sub32_blob--1 {
	top: -72px;
	left: -48px;
	width: 300px;
	height: 300px;
	background-color: rgba(0, 210, 255, 0.62);
}

#container.kp-spage-layout .sub32_blob--2 {
	right: 72px;
	bottom: -88px;
	width: 340px;
	height: 340px;
	background-color: rgba(63, 120, 255, 0.55);
}

#container.kp-spage-layout .sub32_blob--3 {
	right: -96px;
	bottom: -104px;
	width: 280px;
	height: 280px;
	background-color: rgba(0, 210, 255, 0.58);
}

#container.kp-spage-layout .sub32_content_top .list_area {
	position: relative;
	z-index: 1;
	min-height: 0;
	height: auto;
}

#container.kp-spage-layout .sub32_content_top .sub_page_head {
	padding: 0;
}

#container.kp-spage-layout .sub32_content_top .list_area > img {
	display: block;
	width: 100%;
	height: auto;
	margin: 80px 0 56px;
}

#container.kp-spage-layout .contents.sub32_contents > .list_area {
	padding: 0 20px;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub32_body .sub_page_head {
	padding-top: 80px;
}

#container.kp-spage-layout .sub32_apply_flow {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 0;
	width: 100%;
	margin: 48px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_apply_step {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_apply_card {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	min-height: 220px;
	margin: 0;
	padding: 40px 24px 36px;
	border: 1px solid #e2e7ef;
	border-radius: 16px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub32_apply_icon {
	flex: 0 0 auto;
	width: auto;
	height: auto;
	margin: 0 0 28px;
	padding: 0;
}

#container.kp-spage-layout .sub32_apply_icon img {
	display: block;
	width: auto;
	height: auto;
	max-width: none;
}

#container.kp-spage-layout .contents .sub32_apply_label {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub32_apply_arrow {
	position: relative;
	z-index: 3;
	flex: 0 0 20px;
	align-self: center;
	width: 20px;
	min-width: 20px;
	margin: 0;
	padding: 0;
	overflow: visible;
}

#container.kp-spage-layout .sub32_apply_arrow img {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: auto;
	height: auto;
	max-width: none;
	transform: translate(-50%, -50%);
}

#container.kp-spage-layout .sub32_admin {
	margin: 100px 0 0;
	padding: 0 0 40px;
}

#container.kp-spage-layout .contents.sub32_contents .sub32_admin_head {
	margin: 0;
	padding: 0;
	text-align: center;
}

#container.kp-spage-layout .contents.sub32_contents .sub32_admin_title {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub32_admin_blue {
	color: #1a68b9;
	font-weight: 700;
}

#container.kp-spage-layout .sub32_admin_flow {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 0;
	width: 100%;
	margin: 48px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_admin_step {
	flex: 0 0 auto;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_admin_circle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 190px;
	height: 190px;
	margin: 0;
	padding: 20px;
	border: 1px solid #3f93ec;
	border-radius: 50%;
	box-sizing: border-box;
	box-shadow: 0 8px 20px rgba(63, 147, 236, 0.18);
}

#container.kp-spage-layout .sub32_admin_circle--1 {
	background-color: #f6f8fb;
}

#container.kp-spage-layout .sub32_admin_circle--2 {
	background-color: #e3f2fd;
}

#container.kp-spage-layout .contents .sub32_admin_label {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #1f4f8c;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub32_admin_label span {
	display: inline;
	width: auto;
	float: none;
	line-height: inherit;
	color: inherit;
	font-size: 24px;
	font-weight: inherit;
}

#container.kp-spage-layout .sub32_admin_arrow {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_admin_arrow img {
	display: block;
	width: auto;
	height: auto;
	max-width: none;
}

#container.kp-spage-layout .sub32_admin_box {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 36px 40px;
	border: 1px solid #e2e7ef;
	border-radius: 16px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .sub32_admin_list {
	margin: 0;
	padding: 0;
	list-style: none;
}

#container.kp-spage-layout .sub32_admin_list li {
	position: relative;
	margin: 0;
	padding: 0 0 0 14px;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.7;
	letter-spacing: -0.02em;
	color: #525252;
	word-break: keep-all;
}

#container.kp-spage-layout .sub32_admin_list li + li {
	margin-top: 10px;
}

#container.kp-spage-layout .sub32_admin_list li::before {
	content: "";
	position: absolute;
	top: 0.72em;
	left: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #3f93ec;
	transform: translateY(-50%);
}

/* sub32 — 검사자 이용방법 */
#container.kp-spage-layout .sub32_examinee {
	margin: 100px 0 0;
	padding: 0 0 40px;
}

#container.kp-spage-layout .contents.sub32_contents .sub32_examinee_head {
	margin: 0;
	padding: 0;
	text-align: center;
}

#container.kp-spage-layout .contents.sub32_contents .sub32_examinee_title {
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub32_examinee_blue {
	color: #2e84de;
	font-weight: 700;
}

#container.kp-spage-layout .sub32_examinee_flow {
	display: flex;
	align-items: center;
	gap: 20px;
	width: 100%;
	margin: 48px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_examinee_circle {
	display: flex;
	flex: 0 0 190px;
	align-items: center;
	justify-content: center;
	width: 190px;
	height: 190px;
	margin: 0;
	padding: 20px;
	border: 1px solid #3f93ec;
	border-radius: 50%;
	box-sizing: border-box;
	background-color: #f6f8fb;
	box-shadow: 0 8px 20px rgba(63, 147, 236, 0.18);
}

#container.kp-spage-layout .contents .sub32_examinee_circle_label {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #1f4f8c;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub32_examinee_circle_label span {
	display: inline;
	width: auto;
	float: none;
	line-height: inherit;
	color: inherit;
	font-size: 24px;
	font-weight: inherit;
}

#container.kp-spage-layout .sub32_examinee_board {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_examinee_row {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: nowrap;
	gap: 0;
	width: 100%;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_examinee_row--bottom {
	flex-direction: row-reverse;
}

#container.kp-spage-layout .sub32_examinee_turn {
	display: flex;
	justify-content: flex-end;
	width: 100%;
	margin: 8px 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_examinee_pill {
	display: flex;
	flex: 1 1 0;
	align-items: center;
	justify-content: center;
	min-width: 0;
	min-height: 88px;
	margin: 0;
	padding: 16px 18px;
	border: 1px solid #3f93ec;
	border-radius: 999px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 6px 18px rgba(63, 147, 236, 0.12);
}

#container.kp-spage-layout .contents .sub32_examinee_pill_label {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #1f4f8c;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub32_examinee_arrow {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_examinee_arrow img {
	display: block;
	width: auto;
	height: auto;
	max-width: none;
}

#container.kp-spage-layout .sub32_examinee_arrow--left img {
	transform: rotate(180deg);
}

#container.kp-spage-layout .sub32_examinee_arrow--down img {
	transform: rotate(90deg);
}

#container.kp-spage-layout .sub32_sheet_divider {
	display: block;
	width: 100%;
	height: 1px;
	margin: 0;
	padding: 0;
	border: 0;
	background-color: #e2e7ef;
}

#container.kp-spage-layout .sub32_cta_wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub32_cta_wrap .sub32_sheet_divider--cta {
	margin: 56px 0 40px;
}

#container.kp-spage-layout .sub32_cta_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-width: 320px;
	margin: 0;
	padding: 18px 40px;
	border: none;
	border-radius: 999px;
	box-sizing: border-box;
	background: linear-gradient(90deg, #3f93ec 0%, #2f7fe0 100%);
	box-shadow: 0 10px 24px rgba(47, 127, 224, 0.28);
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.02em;
	color: #fff;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#container.kp-spage-layout .sub32_cta_btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(47, 127, 224, 0.34);
	color: #fff;
}

#container.kp-spage-layout .sub32_cta_icon {
	position: relative;
	flex: 0 0 auto;
	width: 28px;
	height: 28px;
	border: 2px solid #fff;
	border-radius: 50%;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub32_cta_icon::after {
	content: "";
	position: absolute;
	top: 45%;
	left: 50%;
	width: 7px;
	height: 12px;
	margin: 0;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: translate(-50%, -50%) rotate(45deg);
	box-sizing: border-box;
}

/* sub33 — 온라인 인성교육 */
#container.kp-spage-layout .contents.sub33_contents > .list_area {
	padding: 0 20px 80px;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub33_section {
	width: 100%;
	max-width: 1100px;
	margin: 56px auto 0;
	padding: 0;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub33_purpose_wrap {
	position: relative;
	z-index: 3;
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 0 0 -44px;
	padding: 0;
}

#container.kp-spage-layout .sub33_purpose {
	position: relative;
	left: auto;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: calc((100% - 40px) / 3);
	max-width: none;
	min-height: 132px;
	margin: 0 auto;
	padding: 28px 32px;
	border-radius: 16px;
	box-sizing: border-box;
	background: url("../images/spage/sub_img33_bg1.png") center center / cover no-repeat;
	text-align: center;
	transform: none;
}

#container.kp-spage-layout .contents .sub33_purpose_title {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 10px;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #fff;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub33_purpose_desc {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: -0.02em;
	color: rgba(255, 255, 255, 0.92);
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_card_flow {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 0;
	width: 100%;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub33_card_step {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub33_card_step--side {
	margin-bottom: 64px;
}

#container.kp-spage-layout .sub33_card_step--center {
	z-index: 2;
}

#container.kp-spage-layout .sub33_card {
	position: relative;
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	min-height: 280px;
	margin: 0;
	padding: 36px 28px 88px;
	border: 1px solid #e2e7ef;
	border-radius: 16px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
	overflow: hidden;
}

#container.kp-spage-layout .sub33_card_step--center .sub33_card {
	padding-top: 56px;
}

#container.kp-spage-layout .contents .sub33_card_title {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 18px;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_card_list {
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

#container.kp-spage-layout .sub33_card_list li {
	position: relative;
	margin: 0;
	padding: 0 0 0 14px;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: -0.02em;
	color: #4a4a4a;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_card_list li + li {
	margin-top: 6px;
}

#container.kp-spage-layout .sub33_card_list li::before {
	content: "·";
	position: absolute;
	top: 0;
	left: 0;
	font-weight: 700;
	color: #4a4a4a;
}

#container.kp-spage-layout .sub33_card_list--plain li::before {
	content: none;
}

#container.kp-spage-layout .sub33_card_list--plain li {
	padding-left: 0;
}

#container.kp-spage-layout .sub33_card_icon {
	position: absolute;
	right: 16px;
	bottom: 12px;
	z-index: 1;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	pointer-events: none;
}

#container.kp-spage-layout .sub33_card_icon img {
	display: block;
	width: auto;
	height: auto;
	max-width: 120px;
}

#container.kp-spage-layout .sub33_card_arrow {
	position: relative;
	z-index: 3;
	flex: 0 0 20px;
	align-self: flex-end;
	width: 20px;
	min-width: 20px;
	margin: 0 0 calc(64px + 140px);
	padding: 0;
	overflow: visible;
}

#container.kp-spage-layout .sub33_card_arrow img {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: auto;
	height: auto;
	max-width: none;
	transform: translate(-50%, -50%);
}

#container.kp-spage-layout .sub33_feature {
	--sub33-feat-gap: 32px;
	width: 100%;
	max-width: 1100px;
	margin: 100px auto 0;
	padding: 0;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub33_feature_head_wrap {
	position: relative;
	z-index: 3;
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 0;
	padding: 0;
	top: 62px;
}

#container.kp-spage-layout .sub33_feature_head {
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc((100% - var(--sub33-feat-gap) * 2) / 3);
	max-width: none;
	min-height: 88px;
	margin: 0 auto;
	padding: 24px 32px;
	border-radius: 16px;
	box-sizing: border-box;
	background: url("../images/spage/sub_img33_bg2.png") center center / cover no-repeat;
	text-align: center;
}

#container.kp-spage-layout .contents .sub33_feature_title {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #fff;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_feature_tree {
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: visible;
}

#container.kp-spage-layout .sub33_feature_lines {
	--sub33-feat-col: calc((100% - var(--sub33-feat-gap) * 2) / 3);
	position: relative;
	width: 100%;
	height: 56px;
	margin: 0;
	padding: 0;
	overflow: visible;
}

#container.kp-spage-layout .sub33_feature_line {
	position: absolute;
	display: block;
	margin: 0;
	padding: 0;
	background-color: #5eb8c4;
}

#container.kp-spage-layout .sub33_feature_line--stem {
	top: 0;
	left: 50%;
	width: 2px;
	height: 22px;
	margin-left: -1px;
}

#container.kp-spage-layout .sub33_feature_line--bar {
	top: 22px;
	left: calc(var(--sub33-feat-col) / 2);
	right: calc(var(--sub33-feat-col) / 2);
	height: 2px;
}

#container.kp-spage-layout .sub33_feature_line--leg {
	top: 22px;
	width: 2px;
	height: 34px;
}

#container.kp-spage-layout .sub33_feature_line--leg-left {
	left: calc(var(--sub33-feat-col) / 2 - 1px);
}

#container.kp-spage-layout .sub33_feature_line--leg-center {
	left: calc(var(--sub33-feat-col) + var(--sub33-feat-gap) + var(--sub33-feat-col) / 2 - 1px);
	height: 90px;
}

#container.kp-spage-layout .sub33_feature_line--leg-right {
	left: calc(var(--sub33-feat-col) * 2 + var(--sub33-feat-gap) * 2 + var(--sub33-feat-col) / 2 - 1px);
}

#container.kp-spage-layout .sub33_feature_node {
	position: absolute;
	top: 48px;
	display: block;
	width: 10px;
	height: 10px;
	margin-left: -5px;
	border: 2px solid #5eb8c4;
	border-radius: 50%;
	box-sizing: border-box;
	background-color: #fff;
}

#container.kp-spage-layout .sub33_feature_node--left {
	left: calc(var(--sub33-feat-col) / 2);
}

#container.kp-spage-layout .sub33_feature_node--center {
	left: calc(var(--sub33-feat-col) + var(--sub33-feat-gap) + var(--sub33-feat-col) / 2);
	top: 104px;
	z-index: 2;
}

#container.kp-spage-layout .sub33_feature_node--right {
	left: calc(var(--sub33-feat-col) * 2 + var(--sub33-feat-gap) * 2 + var(--sub33-feat-col) / 2);
}

#container.kp-spage-layout .sub33_feature_flow {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	flex-wrap: nowrap;
	gap: var(--sub33-feat-gap);
	width: 100%;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub33_feature_step {
	position: relative;
	z-index: 1;
	display: flex;
	flex: 1 1 0;
	flex-direction: column;
	min-width: 0;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub33_feature_step--side {
	margin-bottom: 56px;
}

#container.kp-spage-layout .sub33_feature_step--center {
	z-index: 2;
}

#container.kp-spage-layout .sub33_feature_card {
	position: relative;
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 112px;
	margin: 0;
	padding: 28px 20px;
	border-radius: 14px;
	box-sizing: border-box;
	text-align: center;
}

#container.kp-spage-layout .sub33_feature_card--blue {
	border: 1px solid #7ec8de;
	background-color: #eaf7fb;
}

#container.kp-spage-layout .sub33_feature_card--beige {
	border: 1px solid #d9c9a8;
	background-color: #f7f0e4;
}

#container.kp-spage-layout .sub33_feature_card--green {
	border: 1px solid #9fd4b0;
	background-color: #edf7f0;
}

#container.kp-spage-layout .contents .sub33_feature_label {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_feature_card--blue .sub33_feature_label {
	color: #1482a0;
}

#container.kp-spage-layout .sub33_feature_card--beige .sub33_feature_label {
	color: #6f5c32;
}

#container.kp-spage-layout .sub33_feature_card--green .sub33_feature_label {
	color: #2d7a4a;
}

#container.kp-spage-layout .sub33_strategy {
	width: 100%;
	max-width: 1100px;
	margin: 100px auto 0;
	padding: 0;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub33_strategy_head {
	width: 100%;
	margin: 0 0 40px;
	padding: 0;
	text-align: center;
}

#container.kp-spage-layout .contents .sub33_strategy_title {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_strategy_blue {
	color: #3f93ec;
	font-weight: 700;
}

#container.kp-spage-layout .contents .sub33_strategy_sub {
	display: block;
	width: 100%;
	height: auto;
	margin: 12px 0 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -0.02em;
	color: #6a6a6a;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_strategy_box {
	width: 100%;
	margin: 0;
	padding: 0;
	border: 1px solid #e2e7ef;
	border-radius: 16px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
	overflow: hidden;
}

#container.kp-spage-layout .sub33_strategy_grid {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: nowrap;
	width: 100%;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub33_strategy_item {
	display: flex;
	flex: 1 1 0;
	flex-direction: column;
	align-items: center;
	min-width: 0;
	margin: 0;
	padding: 40px 20px 36px;
	border-right: 1px solid #e2e7ef;
	box-sizing: border-box;
	text-align: center;
}

#container.kp-spage-layout .sub33_strategy_item:last-child {
	border-right: 0;
}

#container.kp-spage-layout .sub33_strategy_icon {
	flex: 0 0 auto;
	width: auto;
	height: auto;
	margin: 0 0 24px;
	padding: 0;
}

#container.kp-spage-layout .sub33_strategy_icon img {
	display: block;
	width: auto;
	height: auto;
	max-width: 88px;
	margin: 0 auto;
}

#container.kp-spage-layout .contents .sub33_strategy_item_title {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 14px;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub33_strategy_item_desc {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: -0.02em;
	color: #6a6a6a;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_strategy_foot {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 24px;
	width: 100%;
	margin: 0;
	padding: 28px 32px 32px;
	box-sizing: border-box;
	background-color: #e8f3fa;
}

#container.kp-spage-layout .sub33_strategy_checks {
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

#container.kp-spage-layout .sub33_strategy_checks li {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
	padding: 0 0 0 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: -0.02em;
	color: #1f4f8c;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_strategy_checks li + li {
	margin-top: 12px;
}

#container.kp-spage-layout .sub33_strategy_checks li::before {
	content: "";
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin-top: 2px;
	border-radius: 50%;
	background-color: #3f93ec;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M1 5.2 4.2 8.4 11 1.6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 11px 9px;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub33_program {
	width: 100%;
	max-width: 1100px;
	margin: 120px auto 0;
	padding: 0 0 20px;
	box-sizing: border-box;
}

#container.kp-spage-layout .contents.sub33_contents .sub33_program .sub_page_head_title {
	margin: 40px 0 56px;
}

#container.kp-spage-layout .sub33_program_box {
	width: 100%;
	margin: 0;
	padding: 36px 32px 32px;
	border: 1px solid #e2e7ef;
	border-radius: 16px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .contents .sub33_program_box_title {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 32px;
	padding: 0;
	float: none;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_program_table_wrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

#container.kp-spage-layout .sub33_program_table {
	width: 100%;
	min-width: 760px;
	margin: 0;
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	border-top: 1px solid #d8dde6;
}

#container.kp-spage-layout .sub33_program_table caption.sub33_program_caption {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

#container.kp-spage-layout .sub33_program_col_no {
	width: 52px;
}

#container.kp-spage-layout .sub33_program_col_course {
	width: 26%;
}

#container.kp-spage-layout .sub33_program_col_body {
	width: auto;
}

#container.kp-spage-layout .sub33_program_col_rate {
	width: 72px;
}

#container.kp-spage-layout .sub33_program_col_method {
	width: 120px;
}

#container.kp-spage-layout .sub33_program_table th,
#container.kp-spage-layout .sub33_program_table td {
	padding: 16px 14px;
	border: 1px solid #e2e7ef;
	box-sizing: border-box;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: -0.02em;
	color: #4a4a4a;
	vertical-align: middle;
	word-break: keep-all;
}

#container.kp-spage-layout .sub33_program_table thead th {
	background-color: #f6f8fb;
	font-size: 15px;
	font-weight: 700;
	color: #1f1f1f;
	text-align: center;
}

#container.kp-spage-layout .sub33_program_table tbody th[scope="row"] {
	background-color: #fff;
	font-weight: 700;
	color: #1f1f1f;
	text-align: center;
}

#container.kp-spage-layout .sub33_program_table td.sub33_program_course {
	font-weight: 700;
	color: #1f1f1f;
	text-align: center;
	padding-left: 18px;
	padding-right: 18px;
}

#container.kp-spage-layout .sub33_program_table td.sub33_program_body {
	text-align: left;
	vertical-align: top;
}

#container.kp-spage-layout .sub33_program_table tbody td:not(.sub33_program_course):not(.sub33_program_body) {
	text-align: center;
}

#container.kp-spage-layout .sub33_program_list {
	margin: 0;
	padding: 0;
	list-style: none;
}

#container.kp-spage-layout .sub33_program_list li {
	position: relative;
	margin: 0;
	padding: 0 0 0 12px;
	font-size: 15px;
	line-height: 1.65;
	color: #4a4a4a;
}

#container.kp-spage-layout .sub33_program_list li + li {
	margin-top: 4px;
}

#container.kp-spage-layout .sub33_program_list li::before {
	content: "·";
	position: absolute;
	top: 0;
	left: 0;
	font-weight: 700;
	color: #4a4a4a;
}

#container.kp-spage-layout .sub33_cta_wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: 48px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub33_cta_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-width: 320px;
	margin: 0;
	padding: 18px 40px;
	border: none;
	border-radius: 999px;
	box-sizing: border-box;
	background: linear-gradient(90deg, #3f93ec 0%, #2f7fe0 100%);
	box-shadow: 0 10px 24px rgba(47, 127, 224, 0.28);
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.02em;
	color: #fff;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#container.kp-spage-layout .sub33_cta_btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(47, 127, 224, 0.34);
	color: #fff;
}

#container.kp-spage-layout .sub33_cta_icon {
	position: relative;
	flex: 0 0 auto;
	width: 28px;
	height: 28px;
	border: 2px solid #fff;
	border-radius: 50%;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub33_cta_icon::after {
	content: "";
	position: absolute;
	top: 45%;
	left: 50%;
	width: 7px;
	height: 12px;
	margin: 0;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: translate(-50%, -50%) rotate(45deg);
	box-sizing: border-box;
}

/* sub21 — 백분율 분포도 */
#container.kp-spage-layout .sub21_chart_sec {
	width: 100%;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub21_chart_box {
	width: 100%;
	margin: 72px 0 48px;
	padding: 40px 36px 28px;
	border: 1px solid #e2e7ef;
	border-radius: 18px;
	box-sizing: border-box;
	background-color: #fff;
}

#container.kp-spage-layout .sub21_chart_img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 auto;
}

#container.kp-spage-layout .sub21_dist_table_wrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

#container.kp-spage-layout .sub21_dist_table {
	width: 100%;
	min-width: 760px;
	margin: 0;
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	border-top: 1px solid #000;
}

#container.kp-spage-layout .sub21_dist_table caption {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

#container.kp-spage-layout .sub21_dist_table col.sub21_dist_col_label {
	width: 120px;
}

#container.kp-spage-layout .sub21_dist_table th,
#container.kp-spage-layout .sub21_dist_table td {
	padding: 16px 8px;
	border: 1px solid #e0e0e0;
	border-top: none;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	word-break: keep-all;
}

#container.kp-spage-layout .sub21_dist_table th:first-child,
#container.kp-spage-layout .sub21_dist_table td:first-child {
	border-left: none;
}

#container.kp-spage-layout .sub21_dist_table th:last-child,
#container.kp-spage-layout .sub21_dist_table td:last-child {
	border-right: none;
}

#container.kp-spage-layout .sub21_dist_table thead th {
	background-color: #f8f8f8;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.4;
	color: #1f1f1f;
}

#container.kp-spage-layout .sub21_dist_table tbody th {
	background-color: #fff;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.4;
	color: #1f1f1f;
}

#container.kp-spage-layout .sub21_dist_table tbody td {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	color: #1f1f1f;
	background-color: #fff;
}

#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_rate--a,
#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_score--a {
	color: #d63333;
}

#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_rate--b,
#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_score--b {
	color: #43942d;
}

#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_rate--c,
#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_score--c {
	color: #d96b13;
}

#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_rate--d,
#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_score--d {
	color: #1359d9;
}

#container.kp-spage-layout .sub21_dist_table tbody tr.sub21_dist_level_row td {
	padding: 18px 8px;
	font-size: 16px;
	font-weight: 700;
}

#container.kp-spage-layout .sub21_dist_table tbody tr.sub21_dist_level_row th {
	padding: 18px 8px;
	font-size: 16px;
	font-weight: 700;
	background-color: #fff;
	color: #1f1f1f;
}

#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_level--high {
	background-color: #fff5f5;
	color: #d63333;
}

#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_level--midhigh {
	background-color: #f5fff5;
	color: #43942d;
}

#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_level--midlow {
	background-color: #fffaf0;
	color: #d96b13;
}

#container.kp-spage-layout .sub21_dist_table tbody td.sub21_dist_level--low {
	background-color: #f0f8ff;
	color: #1359d9;
}

/* sub21 — 규준표 */
#container.kp-spage-layout .sub21_norm_box {
	width: 100%;
	margin: 52px 0 0;
	padding: 45px;
	border: 1px solid #e2e7ef;
	border-radius: 18px;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 70, 0.06);
}

#container.kp-spage-layout .contents .sub21_norm_intro {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 32px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: left;
	word-break: keep-all;
}

#container.kp-spage-layout .sub21_norm_table_wrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

#container.kp-spage-layout .sub21_norm_table {
	width: 100%;
	min-width: 640px;
	margin: 0;
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	border-top: 1px solid #000;
}

#container.kp-spage-layout .sub21_norm_table caption {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

#container.kp-spage-layout .sub21_norm_table col.sub21_norm_col_item {
	width: 34%;
}

#container.kp-spage-layout .sub21_norm_table th,
#container.kp-spage-layout .sub21_norm_table td {
	padding: 14px 12px;
	border: 1px solid #e0e0e0;
	border-top: none;
	box-sizing: border-box;
	vertical-align: middle;
	word-break: keep-all;
}

#container.kp-spage-layout .sub21_norm_table th:first-child,
#container.kp-spage-layout .sub21_norm_table td:first-child {
	border-left: none;
}

#container.kp-spage-layout .sub21_norm_table th:last-child,
#container.kp-spage-layout .sub21_norm_table td:last-child {
	border-right: none;
}

#container.kp-spage-layout .sub21_norm_table thead th {
	background-color: #f8f8f8;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	color: #1f1f1f;
	text-align: center;
}

#container.kp-spage-layout .sub21_norm_table tbody th {
	background-color: #fff;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.45;
	color: #5a5a5a;
	text-align: center;
}

#container.kp-spage-layout .sub21_norm_table tbody td {
	background-color: #fff;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.4;
	color: #5a5a5a;
	text-align: center;
}

/* sub21 — 상호상관 계수표 */
#container.kp-spage-layout .sub21_corr_sec {
	width: 100%;
	margin: 48px 0 0;
	padding: 0;
}

#container.kp-spage-layout .sub21_corr_title {
	margin: 0 0 10px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	text-align: left;
}

#container.kp-spage-layout .sub21_norm_box .sub21_corr_table_wrap + .sub21_corr_title {
	margin-top: 40px;
}

#container.kp-spage-layout .sub21_corr_table_wrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

#container.kp-spage-layout .sub21_corr_table {
	width: 100%;
	min-width: 1100px;
	margin: 0;
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	border-top: 2px solid #000;
	border-bottom: 1px solid #e0e0e0;
}

#container.kp-spage-layout .sub21_corr_table caption {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

#container.kp-spage-layout .sub21_corr_table col.sub21_corr_col_label {
	width: 250px;
}

#container.kp-spage-layout .sub21_corr_table thead th:first-child,
#container.kp-spage-layout .sub21_corr_table tbody th {
	width: 250px;
	min-width: 250px;
}

#container.kp-spage-layout .sub21_corr_table th,
#container.kp-spage-layout .sub21_corr_table td {
	padding: 14px 6px;
	border: none;
	border-bottom: 1px solid #e8e8e8;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	word-break: keep-all;
}

#container.kp-spage-layout .sub21_corr_table thead th {
	background-color: #f5f5f5;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.35;
	color: #1f1f1f;
}

#container.kp-spage-layout .sub21_corr_table tbody tr:last-child th,
#container.kp-spage-layout .sub21_corr_table tbody tr:last-child td {
	border-bottom: none;
}

#container.kp-spage-layout .sub21_corr_table tbody th {
	background-color: #f5f5f5;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.35;
	color: #1f1f1f;
}

#container.kp-spage-layout .sub21_corr_table tbody td {
	background-color: #fff;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.35;
	color: #5a5a5a;
}

#container.kp-spage-layout .contents .sub21_corr_note {
	display: block;
	width: 100%;
	margin: 14px 0 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -0.02em;
	color: #5a5a5a;
	text-align: right;
}

/* sub11 — 인트로 박스 (배경 sub_img11.png) */
#container.kp-spage-layout .sub11_intro {
	position: relative;
	width: 100%;
	min-height: 340px;
	margin: 100px 0;
	padding: 56px 64px;
	border-radius: 24px;
	overflow: hidden;
	box-sizing: border-box;
	background-color: #0f2346;
	background-image: url("../images/spage/sub_img11.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

#container.kp-spage-layout .sub11_intro_inner {
	position: relative;
	z-index: 1;
	max-width: 720px;
}

#container.kp-spage-layout .sub11_intro_title {
	margin: 0 0 28px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 33px;
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: -0.03em;
	color: #fff;
	word-break: keep-all;
}

#container.kp-spage-layout .sub11_intro_title strong {
	font-weight: 700;
	font-size: 39px;
}

#container.kp-spage-layout .contents .sub11_intro_desc {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 21px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: -0.02em;
	color: rgba(255, 255, 255, 0.92);
	word-break: keep-all;
}

/* style.css #container .contents p span (block·float·250px) 충돌 방지 */
#container.kp-spage-layout .contents .sub11_intro_desc span {
	display: inline;
	width: auto;
	float: none;
	line-height: inherit;
}

#container.kp-spage-layout .sub11_intro_accent {
	color: #5eb8ff;
	font-weight: 700;
}

#container.kp-spage-layout .sub11_intro_line3 {
	display: inline-block;
	color: #5eb8ff;
	font-weight: 700;
	white-space: nowrap;
}

#container.kp-spage-layout .sub11_intro_last {
	white-space: nowrap;
}

/* sub11 — 본문 */
#container.kp-spage-layout .sub11_article {
	width: 100%;
	padding: 0 65px;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub11_sec + .sub11_sec {
	margin-top: 44px;
}

#container.kp-spage-layout .sub11_sec_title {
	margin: 0 0 20px;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub11_sec p {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0 0 18px;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: -0.02em;
	color: #3a3a3a;
	word-break: keep-all;
}

/* style.css #container .contents p span (block·float·250px) 충돌 방지 */
#container.kp-spage-layout .contents .sub11_article p em,
#container.kp-spage-layout .contents .sub11_article p span {
	display: inline;
	width: auto;
	float: none;
	line-height: inherit;
	font-style: normal;
}

#container.kp-spage-layout .contents .sub11_sec p:last-child {
	padding-bottom: 0;
}

#container.kp-spage-layout .sub11_para_blue {
	color: #3f93ec;
	font-weight: 700;
}

#container.kp-spage-layout .sub11_blue_em {
	color: #3f93ec;
	font-weight: 700;
	font-style: normal;
}

#container.kp-spage-layout .sub11_sec_last {
	margin-top: 44px;
}

#container.kp-spage-layout .contents .sub11_sec_last p {
	font-size: 21px;
	line-height: 1.85;
}

#container.kp-spage-layout .sub11_sign {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 12px 16px;
	margin-top: 52px;
	padding-top: 8px;
}

#container.kp-spage-layout .sub11_sign_label {
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: -0.02em;
	color: #1f1f1f;
}

#container.kp-spage-layout .sub11_sign_img {
	display: block;
	width: auto;
	max-width: 140px;
	height: auto;
}

/* sub12 — 인증서류 */
#container.kp-spage-layout .sub12_certs {
	margin: 80px 0 100px;
	padding: 0;
}

#container.kp-spage-layout .sub12_cert_grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px 16px;
	margin: 0;
	padding: 56px 40px 48px;
	list-style: none;
	border: 1px solid #fff;
	border-radius: 18px;
	box-sizing: border-box;
	background: linear-gradient(180deg, #e8ecf3 0%, #edf1f9 50%, #d0d6e2 100%);
	box-shadow: 0 12px 32px rgba(18, 42, 74, 0.08);
}

#container.kp-spage-layout .sub12_cert_item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub12_cert_fig {
	width: 100%;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub12_cert_fig img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	object-fit: contain;
	filter: drop-shadow(0 4px 14px rgba(15, 35, 70, 0.14));
}

/* sub13 — 연혁 인트로 (배경 sub_img_13.png) */
#container.kp-spage-layout .sub13_intro {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 360px;
	min-height: 360px;
	margin: 80px 0 72px;
	padding: 48px 64px;
	border-radius: 24px;
	overflow: hidden;
	box-sizing: border-box;
	background-color: #1a3d6e;
	background-image: url("../images/spage/sub_img_13.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: center;
}

#container.kp-spage-layout .sub13_intro::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(12, 38, 82, 0.28);
	pointer-events: none;
}

#container.kp-spage-layout .contents .sub13_intro_desc {
	position: relative;
	z-index: 1;
	display: block;
	width: 100%;
	max-width: 920px;
	height: auto;
	margin: 0 auto;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 24px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: -0.02em;
	color: rgba(255, 255, 255, 0.95);
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub13_intro_desc em {
	font-size: 30px;
	font-weight: 700;
	font-style: normal;
}

#container.kp-spage-layout .sub13_timeline {
	margin: 0 0 100px;
	padding: 0 150px 0 0;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub13_era {
	--sub13-era-color: #0f6ed2;
	margin: 0;
	padding: 0;
}

#container.kp-spage-layout .sub13_era + .sub13_era {
	margin-top: 56px;
}

#container.kp-spage-layout .sub13_era--blue {
	--sub13-era-color: #0f6ed2;
}

#container.kp-spage-layout .sub13_era--teal {
	--sub13-era-color: #1a9aaa;
}

#container.kp-spage-layout .sub13_era--gold {
	--sub13-era-color: #c9a227;
}

/* 배지 좌 70px · 배지 우(타임라인 간격) 150px */
#container.kp-spage-layout .sub13_era_inner {
	display: grid;
	grid-template-columns: 195px minmax(0, 1fr);
	gap: 0 150px;
	align-items: start;
	padding-left: 70px;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub13_era_badge {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 195px;
	height: 195px;
	margin: 0;
	border-radius: 50%;
	background-color: var(--sub13-era-color);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	box-shadow: 0 8px 20px rgba(15, 35, 70, 0.12);
	flex-shrink: 0;
	text-align: center;
}

#container.kp-spage-layout .sub13_era--blue .sub13_era_badge {
	background-color: transparent;
	background-image: url("../images/spage/sub_img_13_c1.png");
	box-shadow: none;
}

#container.kp-spage-layout .sub13_era--teal .sub13_era_badge {
	background-color: transparent;
	background-image: url("../images/spage/sub_img_13_c2.png");
	box-shadow: none;
}

#container.kp-spage-layout .sub13_era--gold .sub13_era_badge {
	background-color: transparent;
	background-image: url("../images/spage/sub_img_13_c3.png");
	box-shadow: none;
}

#container.kp-spage-layout .sub13_era_badge_txt {
	margin: 0;
	padding: 0;
	text-align: center;
}

#container.kp-spage-layout .sub13_era_badge_main {
	display: block;
	font-family: "GmarketSansMedium", "Malgun Gothic", sans-serif;
	font-size: 48px;
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: #fff;
	word-break: keep-all;
}

#container.kp-spage-layout .sub13_era_badge_sub {
	display: block;
	font-family: "GmarketSansMedium", "Malgun Gothic", sans-serif;
	font-size: 30px;
	font-weight: 500;
	line-height: 0.9;
	letter-spacing: -0.02em;
	color: #fff;
	word-break: keep-all;
}

/* style.css #container .contents p span (block·float·250px) 충돌 방지 */
#container.kp-spage-layout .contents .sub13_era_badge .sub13_era_badge_main,
#container.kp-spage-layout .contents .sub13_era_badge .sub13_era_badge_sub {
	width: auto;
	float: none;
}

#container.kp-spage-layout .sub13_era_list {
	position: relative;
	margin: 0;
	padding: 4px 0 0;
	list-style: none;
	border-left: none;
	box-sizing: border-box;
}

#container.kp-spage-layout .sub13_era_list::before {
	content: "";
	position: absolute;
	left: 0;
	top: 6px;
	bottom: 0;
	width: 2px;
	background-color: var(--sub13-era-color);
}

#container.kp-spage-layout .sub13_year_item {
	position: relative;
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr);
	gap: 0 48px;
	align-items: start;
	margin: 0;
	padding: 0 0 32px 20px;
}

#container.kp-spage-layout .sub13_year_item:last-child {
	padding-bottom: 8px;
}

#container.kp-spage-layout .sub13_year_dot {
	position: absolute;
	left: 0;
	top: 8px;
	width: 22px;
	height: 22px;
	border: 4px solid var(--sub13-era-color);
	border-radius: 50%;
	background-color: #eaeffa;
	box-sizing: border-box;
	transform: translateX(-50%);
}

#container.kp-spage-layout .sub13_year_label {
	grid-column: 1;
	margin: 0;
	padding: 0;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 27px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.02em;
	color: #1f1f1f;
	word-break: keep-all;
}

#container.kp-spage-layout .sub13_year_body {
	grid-column: 2;
	min-width: 0;
}

#container.kp-spage-layout .contents .sub13_year_body p {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0 0 6px;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.7;
	letter-spacing: -0.02em;
	color: #4a4a4a;
	word-break: keep-all;
}

#container.kp-spage-layout .contents .sub13_year_body p:last-child {
	padding-bottom: 0;
}

/* sub14 — 인적성검사 시행처 */
#container.kp-spage-layout .sub14_inst_list {
	margin: 80px 0 100px;
}

#container.kp-spage-layout .sub14_inst {
	display: flex;
	align-items: stretch;
	width: 100%;
	margin: 0;
	border: 1px solid #d4dae6;
	border-top: 2px solid #b8c2d4;
	box-sizing: border-box;
	background-color: #fff;
	overflow: hidden;
}

#container.kp-spage-layout .sub14_inst + .sub14_inst {
	margin-top: 150px;
}

#container.kp-spage-layout .sub14_inst_label {
	flex: 0 0 130px;
	width: 130px;
	min-width: 130px;
	max-width: 130px;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding: 28px 8px;
	box-sizing: border-box;
	background-color: #0f6ed2;
	background-repeat: repeat-y;
	background-position: top center;
	background-size: 100% auto;
}

#container.kp-spage-layout .sub14_inst_label--bg1 {
	background-image: url("../images/spage/sub_img14_bg1.png");
}

#container.kp-spage-layout .sub14_inst_label--bg2 {
	background-image: url("../images/spage/sub_img14_bg2.png");
}

#container.kp-spage-layout .sub14_inst_label--bg3 {
	background-image: url("../images/spage/sub_img14_bg3.png");
}

#container.kp-spage-layout .sub14_inst_label--bg4 {
	background-image: url("../images/spage/sub_img14_bg4.png");
}

#container.kp-spage-layout .sub14_inst_label_txt {
	display: block;
	font-family: "GmarketSansMedium", "Malgun Gothic", sans-serif;
	font-size: 30px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: #fff;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub14_inst_label_sub {
	display: block;
	margin-top: 6px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.3;
}

#container.kp-spage-layout .sub14_inst_body {
	flex: 1 1 auto;
	min-width: 0;
	background-color: #f4f7fa;
}

#container.kp-spage-layout .sub14_inst_row .sub14_inst_cell:nth-child(odd) {
	background-color: transparent;
}

#container.kp-spage-layout .sub14_inst_row .sub14_inst_cell:nth-child(even) {
	background-color: #fff;
}

#container.kp-spage-layout .sub14_inst_body .screen_out {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

#container.kp-spage-layout .sub14_inst_grid {
	display: flex;
	flex-direction: column;
	width: 100%;
}

#container.kp-spage-layout .sub14_inst_row {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

#container.kp-spage-layout .sub14_inst_cell {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 15px 10px;
	border-right: 1px solid #e2e7ef;
	border-bottom: 1px solid #e2e7ef;
	box-sizing: border-box;
	font-family: "Noto Sans KR", "Malgun Gothic", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: -0.02em;
	color: #333;
	text-align: center;
	word-break: keep-all;
}

#container.kp-spage-layout .sub14_inst_row .sub14_inst_cell:nth-child(4n) {
	border-right: none;
}

#container.kp-spage-layout .sub14_inst_row:last-child .sub14_inst_cell {
	border-bottom: none;
}

#container.kp-spage-layout .sub14_inst_cell_note {
	grid-column: 2 / span 3;
	border-right: none;
}

#container.kp-spage-layout .sub14_inst_row_note .sub14_inst_cell:first-child {
	border-right: 1px solid #e2e7ef;
}

#container.kp-spage-layout .sub14_inst_row_note .sub14_inst_cell:first-child:nth-child(4n) {
	border-right: 1px solid #e2e7ef;
}

/* style.css #container .contents p span (block·float·250px) 충돌 방지 */
#container.kp-spage-layout .contents .sub13_intro_desc span,
#container.kp-spage-layout .contents .sub13_intro_desc em,
#container.kp-spage-layout .contents .sub13_year_body p span {
	display: inline;
	width: auto;
	float: none;
	line-height: inherit;
}

@media (max-width: 1100px) {
	#container.kp-spage-layout .sub12_cert_grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 36px 28px;
		padding: 44px 28px 36px;
	}

	#container.kp-spage-layout .sub14_inst {
		flex-direction: column;
	}

	#container.kp-spage-layout .sub14_inst_label {
		flex: none;
		width: 100%;
		min-width: 0;
		max-width: none;
		align-items: center;
		padding: 18px 16px;
		background-repeat: repeat-x;
		background-position: left center;
		background-size: auto 100%;
	}

	#container.kp-spage-layout .sub14_inst_label_txt {
		font-size: 20px;
	}

	#container.kp-spage-layout .sub14_inst_row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#container.kp-spage-layout .sub14_inst_row .sub14_inst_cell:nth-child(4n) {
		border-right: 1px solid #e2e7ef;
	}

	#container.kp-spage-layout .sub14_inst_row .sub14_inst_cell:nth-child(2n) {
		border-right: none;
	}

	#container.kp-spage-layout .sub14_inst_cell_note {
		grid-column: 1 / -1;
		border-right: none;
	}

	#container.kp-spage-layout .sub14_inst_label_sub {
		font-size: 14px;
	}
}

@media (max-width: 1240px) {
	#container.kp-spage-layout .sub21_cards {
		flex-direction: column;
		align-items: center;
	}

	#container.kp-spage-layout .sub25_cards {
		flex-direction: column;
		align-items: center;
	}

	#container.kp-spage-layout .sub25_feat_cols {
		flex-direction: column;
		align-items: center;
	}

	#container.kp-spage-layout .sub25_feat_col {
		width: 100%;
		max-width: 480px;
	}

	#container.kp-spage-layout .sub25_guide_row {
		flex-direction: column;
		gap: 28px;
	}

	#container.kp-spage-layout .sub25_guide_item {
		flex: 1 1 auto;
		width: 100%;
		min-width: 0;
	}
}

@media (max-width: 768px) {
	#container.kp-spage-layout .contents .list_area .sub_page_head_title {
		font-size: 32px;
	}

	#container.kp-spage-layout .sub_page_head {
		padding-top: 80px;
	}

	#container.kp-spage-layout .contents .sub_page_head .sub_page_head_eyebrow {
		font-size: 17px;
		padding-left: 0.12em;
		margin-bottom: 4px;
	}

	#container.kp-spage-layout .contents .sub_page_head_desc {
		margin-top: 20px;
		font-size: 16px;
		line-height: 1.7;
	}

	#container.kp-spage-layout .sub22_compose_panel {
		display: flex;
		flex-direction: column;
		align-items: center;
		margin-top: 40px;
		padding: 0 0 8px;
	}

	#container.kp-spage-layout .sub22_badge {
		position: relative;
		top: auto;
		right: auto;
		flex: 0 0 auto;
		width: 160px;
		height: 160px;
		margin: 32px auto 28px;
		padding: 16px 12px;
		transform: none;
	}

	#container.kp-spage-layout .sub22_badge_text {
		gap: 4px;
		font-size: 14px;
	}

	#container.kp-spage-layout .contents .sub22_badge_em {
		font-size: 26px;
		margin-bottom: 2px;
		line-height: 1.1;
	}

	#container.kp-spage-layout .contents .sub22_badge_line {
		font-size: 13px;
		line-height: 1.25;
		letter-spacing: -0.04em;
	}

	#container.kp-spage-layout .sub22_compose_box {
		width: 100%;
		padding: 32px 20px 28px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub22_compose_box_title {
		margin-bottom: 18px;
		font-size: 20px;
	}

	#container.kp-spage-layout .sub22_compose_table {
		min-width: 640px;
	}

	#container.kp-spage-layout .sub22_compose_table th,
	#container.kp-spage-layout .sub22_compose_table td {
		padding: 14px 10px;
		font-size: 14px;
	}

	#container.kp-spage-layout .sub22_compose_list li {
		font-size: 13px;
	}

	#container.kp-spage-layout .contents .sub22_bottom_desc {
		margin-top: 40px;
		font-size: 15px;
		line-height: 1.75;
		text-align: left;
	}

	#container.kp-spage-layout .sub22_cta_wrap {
		margin: 48px 0 60px;
	}

	#container.kp-spage-layout .sub22_cta_btn {
		min-width: 0;
		width: 100%;
		max-width: 320px;
		padding: 16px 28px;
		font-size: 17px;
	}

	#container.kp-spage-layout .sub23_band--head {
		padding: 0 16px 32px;
	}

	#container.kp-spage-layout .sub23_band--head .sub_page_head {
		padding: 48px 0 0;
	}

	#container.kp-spage-layout .contents.sub23_contents {
		--sub23-panel-height: auto;
		--sub23-panel-gap: 100px;
		--sub23-bridge-overlap: 200px;
		--sub23-head-white-trim: 140px;
		--sub23-overlap-lite: 80px;
		--sub23-overlap-white-up: 60px;
	}

	#container.kp-spage-layout .sub23_sections.sub23_sections--head.bg_white {
		margin-bottom: 0;
	}

	#container.kp-spage-layout .sub23_sections.sub23_sections--lite {
		display: flex;
		align-items: center;
		min-height: 0;
		padding-top: 48px;
		padding-bottom: var(--sub23-panel-gap);
	}

	#container.kp-spage-layout .sub23_sections {
		padding: 0 16px 80px;
	}

	#container.kp-spage-layout .sub23_panel--white.sub23_panel--overlap-up {
		top: 0;
		margin-bottom: 0;
	}

	#container.kp-spage-layout .contents.sub23_contents .sub23_panel--overlap-down {
		margin-bottom: 0;
	}

	#container.kp-spage-layout .contents.sub23_contents .sub23_panel--overlap-up-bridge {
		top: 0;
		margin-bottom: 0;
	}

	#container.kp-spage-layout .contents.sub23_contents .sub23_panel + .sub23_panel {
		margin-top: 48px;
	}

	#container.kp-spage-layout .sub23_panel--white {
		height: auto;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub23_panel_inner,
	#container.kp-spage-layout .sub23_panel_inner--reverse {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		min-height: 0;
		gap: 28px;
	}

	#container.kp-spage-layout .sub23_panel_inner:not(.sub23_panel_inner--reverse) .sub23_panel_media,
	#container.kp-spage-layout .sub23_panel_inner:not(.sub23_panel_inner--reverse) .sub23_panel_body,
	#container.kp-spage-layout .sub23_panel_inner--reverse .sub23_panel_media,
	#container.kp-spage-layout .sub23_panel_inner--reverse .sub23_panel_body {
		grid-column: auto;
		grid-row: auto;
		width: 100%;
		height: auto;
		justify-content: flex-start;
		align-items: flex-start;
	}

	#container.kp-spage-layout .contents.sub23_contents .sub23_panel_media {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	#container.kp-spage-layout .contents.sub23_contents .sub23_panel_img {
		margin-left: auto;
		margin-right: auto;
	}

	#container.kp-spage-layout .contents.sub23_contents .sub23_util_card_head {
		flex-direction: column;
		align-items: stretch;
	}

	#container.kp-spage-layout .contents.sub23_contents .sub23_util_card_icon {
		align-self: center;
		margin-left: auto;
		margin-right: auto;
	}

	#container.kp-spage-layout .sub23_panel--white .sub23_panel_img {
		width: 100%;
		height: auto;
		max-width: 100%;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub23_panel_media {
		flex: none;
		width: 100%;
		max-width: none;
	}

	#container.kp-spage-layout .sub23_panel_title {
		margin-bottom: 16px;
		font-size: 22px;
	}

	#container.kp-spage-layout .contents .sub23_panel_lead {
		margin-bottom: 14px;
		font-size: 16px;
	}

	#container.kp-spage-layout .contents .sub23_panel_desc {
		font-size: 15px;
		line-height: 1.75;
	}

	#container.kp-spage-layout .sub23_band--util {
		padding: 60px 16px 80px;
	}

	#container.kp-spage-layout .sub23_util_cards {
		gap: 20px;
		margin-top: 40px;
	}

	#container.kp-spage-layout .sub23_util_card {
		flex: 1 1 auto;
		width: 100%;
		padding: 36px 28px 32px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub23_util_card_head {
		margin-bottom: 22px;
	}

	#container.kp-spage-layout .sub23_util_card_title {
		padding-bottom: 16px;
	}

	#container.kp-spage-layout .sub23_util_card_title {
		font-size: 20px;
	}

	#container.kp-spage-layout .sub23_util_card_icon,
	#container.kp-spage-layout .sub23_util_card_icon img {
		width: 72px;
		height: 72px;
	}

	#container.kp-spage-layout .sub23_util_list li {
		margin-bottom: 6px;
		font-size: 15px;
		line-height: 1.6;
	}

	#container.kp-spage-layout .sub24_band--lite {
		padding: 0 16px 60px;
	}

	#container.kp-spage-layout .contents.sub24_contents .sub_page_head .sub_page_head_desc {
		margin-top: 20px;
		font-size: 21px;
		line-height: 1.7;
	}

	#container.kp-spage-layout .contents.sub24_contents .sub_page_head .sub_page_head_desc.sub24_head_desc {
		font-size: 18px;
	}

	#container.kp-spage-layout .sub24_img {
		margin-top: 40px;
	}

	#container.kp-spage-layout .sub24_adult {
		margin-top: 48px;
	}

	#container.kp-spage-layout .contents.sub24_contents .sub24_adult_title {
		margin-bottom: 20px;
		font-size: 28px;
	}

	#container.kp-spage-layout .sub24_adult_box {
		padding: 28px 16px 24px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub24_table_title {
		margin-bottom: 14px;
		font-size: 18px;
	}

	#container.kp-spage-layout .sub24_adult_box .sub24_table_title + .sub24_table_wrap + .sub24_table_title {
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub24_item_table,
	#container.kp-spage-layout .sub24_time_table,
	#container.kp-spage-layout .sub24_stu_time_table {
		min-width: 640px;
	}

	#container.kp-spage-layout .sub24_stu_time_table {
		min-width: 860px;
	}

	#container.kp-spage-layout .sub24_item_table thead th,
	#container.kp-spage-layout .sub24_time_table thead th,
	#container.kp-spage-layout .sub24_stu_time_table thead th,
	#container.kp-spage-layout .sub24_item_table tbody th,
	#container.kp-spage-layout .sub24_time_table tbody th,
	#container.kp-spage-layout .sub24_stu_time_table tbody th,
	#container.kp-spage-layout .sub24_item_table tbody td,
	#container.kp-spage-layout .sub24_time_table tbody td,
	#container.kp-spage-layout .sub24_stu_time_table tbody td {
		padding: 12px 10px;
		font-size: 15px;
		line-height: 1.6;
	}

	#container.kp-spage-layout .sub21_cards {
		flex-direction: column;
		align-items: center;
		gap: 20px;
		margin: 48px 0 60px;
	}

	#container.kp-spage-layout .sub21_card {
		flex: 1 1 auto;
		width: 100%;
		min-height: 0;
		padding: 40px 28px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub21_card_head {
		margin-bottom: 40px;
		padding-bottom: 0;
	}

	#container.kp-spage-layout .sub21_card_title {
		font-size: 20px;
	}

	#container.kp-spage-layout .sub21_card_icon,
	#container.kp-spage-layout .sub21_card_icon img {
		width: 72px;
		height: 72px;
	}

	#container.kp-spage-layout .contents .sub21_card_desc {
		font-size: 15px;
		line-height: 1.75;
	}

	#container.kp-spage-layout .sub25_cards {
		flex-direction: column;
		align-items: center;
		gap: 20px;
		margin: 48px 0 0;
	}

	#container.kp-spage-layout .sub25_card {
		flex: 1 1 auto;
		width: 100%;
		min-height: 0;
		padding: 40px 18px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub25_card_head {
		margin-bottom: 40px;
	}

	#container.kp-spage-layout .sub25_card_title {
		font-size: 20px;
	}

	#container.kp-spage-layout .contents .sub25_card_desc {
		font-size: 15px;
		line-height: 1.75;
	}

	#container.kp-spage-layout .sub25_band--lite {
		padding: 0 16px 60px;
	}

	#container.kp-spage-layout .sub25_report {
		margin-top: 80px;
	}

	#container.kp-spage-layout .sub25_report_head {
		padding-top: 0;
	}

	#container.kp-spage-layout .sub25_feat_cols {
		flex-direction: column;
		align-items: center;
		gap: 48px;
		margin-top: 40px;
	}

	#container.kp-spage-layout .sub25_feat_col {
		flex: 1 1 auto;
		width: 100%;
		max-width: 100%;
	}

	#container.kp-spage-layout .sub25_feat_card {
		min-height: 0;
		margin-bottom: 44px;
		padding: 36px 20px 48px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub25_feat_icon {
		margin-bottom: 20px;
	}

	#container.kp-spage-layout .sub25_feat_title {
		font-size: 20px;
	}

	#container.kp-spage-layout .sub25_feat_plus {
		width: 40px;
		height: 40px;
		font-size: 24px;
	}

	#container.kp-spage-layout .contents .sub25_feat_desc {
		font-size: 15px;
		line-height: 1.7;
	}

	#container.kp-spage-layout .sub25_guide {
		margin-top: 48px;
	}

	#container.kp-spage-layout .sub25_guide_box {
		padding: 32px 18px 36px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub25_guide_row {
		gap: 24px;
	}

	#container.kp-spage-layout .sub25_guide_title {
		margin-bottom: 10px;
		font-size: 18px;
		gap: 8px;
	}

	#container.kp-spage-layout .sub25_guide_dot {
		width: 12px;
		height: 12px;
	}

	#container.kp-spage-layout .contents .sub25_guide_desc {
		font-size: 15px;
		line-height: 1.7;
	}

	#container.kp-spage-layout .sub25_guide_gallery {
		margin: 10px 0;
	}

	#container.kp-spage-layout .sub25_individual,
	#container.kp-spage-layout .sub25_summary {
		margin-top: 60px;
	}

	#container.kp-spage-layout .contents.sub25_contents .sub25_individual_title,
	#container.kp-spage-layout .contents.sub25_contents .sub25_summary_title {
		font-size: 20px;
	}

	#container.kp-spage-layout .contents.sub25_contents .sub25_individual_subtitle,
	#container.kp-spage-layout .contents.sub25_contents .sub25_summary_subtitle {
		margin-top: 6px;
		font-size: 26px;
	}

	#container.kp-spage-layout .sub25_individual_gallery,
	#container.kp-spage-layout .sub25_summary_gallery {
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: stretch;
		justify-content: flex-start;
		gap: 16px;
		margin-top: 28px;
		overflow-x: visible;
	}

	#container.kp-spage-layout .sub25_individual_item,
	#container.kp-spage-layout .sub25_summary_item {
		flex: 1 1 auto;
		width: 100%;
		max-width: 100%;
		border-radius: 10px;
	}

	#container.kp-spage-layout .sub25_individual .sub25_sheet_divider--top {
		margin-bottom: 28px;
	}

	#container.kp-spage-layout .sub25_individual .sub25_sheet_divider--bottom {
		margin-top: 28px;
	}

	#container.kp-spage-layout .sub25_cta_wrap .sub25_sheet_divider--cta {
		margin: 40px 0 28px;
	}

	#container.kp-spage-layout .sub25_cta_btn {
		min-width: 0;
		width: 100%;
		max-width: 360px;
		padding: 16px 28px;
		font-size: 17px;
	}

	#container.kp-spage-layout .sub31_band--lite {
		padding: 0 16px 60px;
	}

	#container.kp-spage-layout .sub31_intro_box {
		margin-top: 48px;
		padding: 32px 18px 36px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub31_intro_head {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		margin-bottom: 28px;
	}

	#container.kp-spage-layout .sub31_intro_title {
		font-size: 20px;
	}

	#container.kp-spage-layout .contents .sub31_intro_desc {
		font-size: 15px;
	}

	#container.kp-spage-layout .sub31_intro_gallery {
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		gap: 12px;
		overflow-x: visible;
	}

	#container.kp-spage-layout .sub31_intro_item {
		flex: 1 1 auto;
		width: 100%;
		max-width: none;
		border-radius: 10px;
	}

	#container.kp-spage-layout .sub31_intro_img {
		width: 100%;
		height: auto;
	}

	#container.kp-spage-layout .sub31_apply {
		margin-top: 60px;
	}

	#container.kp-spage-layout .contents.sub31_contents .sub31_apply_title {
		font-size: 26px;
	}

	#container.kp-spage-layout .sub31_apply_flow {
		flex-direction: column;
		align-items: center;
		gap: 12px;
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub31_apply_step {
		flex: 0 0 auto;
		width: 100%;
		max-width: 360px;
	}

	#container.kp-spage-layout .sub31_apply_card {
		min-height: 0;
		padding: 32px 20px 28px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub31_apply_icon {
		margin-bottom: 20px;
	}

	#container.kp-spage-layout .contents .sub31_apply_label {
		font-size: 17px;
	}

	#container.kp-spage-layout .sub31_apply_arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		position: static;
		flex: 0 0 auto;
		width: auto;
		min-width: 0;
		align-self: center;
		margin: 0 auto;
		padding: 0;
		overflow: visible;
	}

	#container.kp-spage-layout .contents.sub31_contents .sub31_apply_arrow img {
		position: static;
		top: auto;
		left: auto;
		transform: rotate(90deg);
	}

	#container.kp-spage-layout .sub31_admin {
		margin-top: 60px;
	}

	#container.kp-spage-layout .contents.sub31_contents .sub31_admin_title {
		font-size: 26px;
	}

	#container.kp-spage-layout .sub31_admin_flow {
		flex-direction: column;
		align-items: center;
		gap: 12px;
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub31_admin_step {
		flex: 0 0 auto;
		width: auto;
		max-width: none;
		margin: 0;
	}

	#container.kp-spage-layout .sub31_admin_circle {
		width: 190px;
		height: 190px;
		margin: 0 auto;
	}

	#container.kp-spage-layout .contents .sub31_admin_label {
		font-size: 18px;
	}

	#container.kp-spage-layout .contents .sub31_admin_label span {
		font-size: 20px;
	}

	#container.kp-spage-layout .sub31_admin_arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
		margin: 0 auto;
		padding: 0;
	}

	#container.kp-spage-layout .contents.sub31_contents .sub31_admin_arrow img {
		transform: rotate(90deg);
	}

	#container.kp-spage-layout .sub31_examinee {
		margin-top: 60px;
		padding-bottom: 20px;
	}

	#container.kp-spage-layout .contents.sub31_contents .sub31_examinee_title {
		font-size: 26px;
	}

	#container.kp-spage-layout .sub31_examinee_flow {
		flex-direction: column;
		align-items: center;
		gap: 12px;
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub31_examinee_step {
		flex: 0 0 auto;
		width: auto;
		max-width: none;
		margin: 0;
	}

	#container.kp-spage-layout .sub31_examinee_circle {
		width: 190px;
		height: 190px;
		margin: 0 auto;
	}

	#container.kp-spage-layout .contents .sub31_examinee_label {
		font-size: 16px;
	}

	#container.kp-spage-layout .sub31_examinee_arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
		margin: 0 auto;
		padding: 0;
	}

	#container.kp-spage-layout .contents.sub31_contents .sub31_examinee_arrow img {
		transform: rotate(90deg);
	}

	#container.kp-spage-layout .sub31_examinee_notes {
		margin-top: 32px;
		padding: 0 4px;
	}

	#container.kp-spage-layout .contents .sub31_examinee_note {
		font-size: 14px;
		line-height: 1.7;
	}

	#container.kp-spage-layout .sub31_cta_wrap {
		margin-top: 36px;
	}

	#container.kp-spage-layout .sub31_cta_btn {
		min-width: 0;
		width: 100%;
		max-width: 360px;
		padding: 16px 28px;
		font-size: 17px;
	}

	#container.kp-spage-layout .sub32_content_top {
		padding: 72px 16px 56px;
	}

	#container.kp-spage-layout .sub32_content_top .list_area > img {
		margin: 56px 0 40px;
	}

	#container.kp-spage-layout .sub32_body .sub_page_head {
		padding-top: 56px;
	}

	#container.kp-spage-layout .sub32_apply_flow {
		flex-direction: column;
		align-items: center;
		gap: 12px;
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub32_apply_step {
		flex: 0 0 auto;
		width: 100%;
		max-width: 360px;
	}

	#container.kp-spage-layout .sub32_apply_card {
		min-height: 0;
		padding: 32px 20px 28px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub32_apply_icon {
		margin-bottom: 20px;
	}

	#container.kp-spage-layout .contents .sub32_apply_label {
		font-size: 17px;
	}

	#container.kp-spage-layout .sub32_apply_arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		position: static;
		flex: 0 0 auto;
		width: auto;
		min-width: 0;
		align-self: center;
		margin: 0 auto;
		padding: 0;
		overflow: visible;
	}

	#container.kp-spage-layout .contents.sub32_contents .sub32_apply_arrow img {
		position: static;
		top: auto;
		left: auto;
		display: block;
		width: auto;
		height: auto;
		max-width: none;
		transform: rotate(90deg);
	}

	#container.kp-spage-layout .sub32_admin {
		margin-top: 60px;
		padding-bottom: 20px;
	}

	#container.kp-spage-layout .contents.sub32_contents .sub32_admin_title {
		font-size: 26px;
	}

	#container.kp-spage-layout .sub32_admin_flow {
		flex-direction: column;
		align-items: center;
		gap: 12px;
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub32_admin_step {
		flex: 0 0 auto;
		width: auto;
	}

	#container.kp-spage-layout .sub32_admin_circle {
		margin: 0 auto;
	}

	#container.kp-spage-layout .contents .sub32_admin_label {
		font-size: 18px;
	}

	#container.kp-spage-layout .contents .sub32_admin_label span {
		font-size: 20px;
	}

	#container.kp-spage-layout .sub32_admin_arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
		margin: 0 auto;
		padding: 0;
	}

	#container.kp-spage-layout .contents.sub32_contents .sub32_admin_arrow img {
		transform: rotate(90deg);
	}

	#container.kp-spage-layout .sub32_admin_box {
		width: 100%;
		max-width: 360px;
		margin: 0 auto;
		padding: 28px 20px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub32_admin_list li {
		font-size: 15px;
	}

	#container.kp-spage-layout .sub32_examinee {
		margin-top: 60px;
		padding-bottom: 20px;
	}

	#container.kp-spage-layout .contents.sub32_contents .sub32_examinee_title {
		font-size: 26px;
	}

	#container.kp-spage-layout .sub32_examinee_flow {
		flex-direction: column;
		align-items: stretch;
		gap: 24px;
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub32_examinee_circle {
		flex: 0 0 auto;
		margin: 0 auto;
	}

	#container.kp-spage-layout .sub32_examinee_board {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 12px;
		width: 100%;
	}

	#container.kp-spage-layout .sub32_examinee_row {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}

	#container.kp-spage-layout .sub32_examinee_row--bottom {
		flex-direction: column;
	}

	#container.kp-spage-layout .sub32_examinee_turn {
		display: flex;
		justify-content: center;
		width: 100%;
		margin: 0;
		padding: 0;
	}

	#container.kp-spage-layout .sub32_examinee_arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
		margin: 0 auto;
		padding: 0;
	}

	#container.kp-spage-layout .contents.sub32_contents .sub32_examinee_arrow img,
	#container.kp-spage-layout .contents.sub32_contents .sub32_examinee_arrow--left img,
	#container.kp-spage-layout .contents.sub32_contents .sub32_examinee_arrow--right img,
	#container.kp-spage-layout .contents.sub32_contents .sub32_examinee_arrow--down img {
		transform: rotate(90deg);
	}

	#container.kp-spage-layout .sub32_examinee_pill {
		flex: 1 1 auto;
		width: 100%;
		max-width: 360px;
		min-height: 0;
		margin: 0 auto;
		padding: 14px 18px;
	}

	#container.kp-spage-layout .contents .sub32_examinee_pill_label {
		font-size: 15px;
	}

	#container.kp-spage-layout .sub32_cta_wrap .sub32_sheet_divider--cta {
		margin: 40px 0 28px;
	}

	#container.kp-spage-layout .sub32_cta_btn {
		min-width: 0;
		width: 100%;
		max-width: 360px;
		padding: 16px 28px;
		font-size: 17px;
	}

	#container.kp-spage-layout .contents.sub33_contents > .list_area {
		padding-bottom: 60px;
	}

	#container.kp-spage-layout .sub33_section {
		margin-top: 40px;
	}

	#container.kp-spage-layout .sub33_purpose_wrap {
		margin-bottom: 24px;
	}

	#container.kp-spage-layout .sub33_purpose {
		width: 100%;
		max-width: 360px;
		min-height: 0;
		padding: 24px 20px;
	}

	#container.kp-spage-layout .contents .sub33_purpose_title {
		font-size: 20px;
	}

	#container.kp-spage-layout .contents .sub33_purpose_desc {
		font-size: 15px;
	}

	#container.kp-spage-layout .sub33_card_flow {
		flex-direction: column;
		align-items: center;
		gap: 12px;
	}

	#container.kp-spage-layout .sub33_card_step {
		flex: 0 0 auto;
		width: 100%;
		max-width: 360px;
	}

	#container.kp-spage-layout .sub33_card_step--side {
		margin-bottom: 0;
	}

	#container.kp-spage-layout .sub33_card_step--center .sub33_card {
		padding-top: 28px;
	}

	#container.kp-spage-layout .sub33_card {
		min-height: 0;
		padding: 28px 20px 80px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .contents .sub33_card_title {
		font-size: 19px;
		margin-bottom: 14px;
	}

	#container.kp-spage-layout .sub33_card_list li {
		font-size: 15px;
	}

	#container.kp-spage-layout .sub33_card_icon img {
		max-width: 96px;
	}

	#container.kp-spage-layout .sub33_card_arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		position: static;
		flex: 0 0 auto;
		width: auto;
		min-width: 0;
		align-self: center;
		margin: 0 auto;
		padding: 0;
		overflow: visible;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_card_arrow img {
		position: static;
		top: auto;
		left: auto;
		transform: rotate(90deg);
	}

	#container.kp-spage-layout .sub33_feature {
		margin-top: 60px;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_head_wrap {
		top: 0;
		margin-bottom: 40px;
	}

	#container.kp-spage-layout .sub33_feature_tree {
		display: none;
	}

	#container.kp-spage-layout .sub33_feature_head {
		width: 100%;
		max-width: 360px;
		min-height: 0;
		padding: 22px 20px;
	}

	#container.kp-spage-layout .contents .sub33_feature_title {
		font-size: 20px;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_flow {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
		margin-bottom: 0;
	}

	#container.kp-spage-layout .sub33_feature_step {
		flex: 1 1 auto;
		width: 100%;
	}

	#container.kp-spage-layout .sub33_feature_step--side {
		margin-bottom: 0;
	}

	#container.kp-spage-layout .sub33_feature_card {
		min-height: 0;
		padding: 22px 18px;
	}

	#container.kp-spage-layout .contents .sub33_feature_label {
		font-size: 17px;
	}

	#container.kp-spage-layout .sub33_strategy {
		margin-top: 60px;
	}

	#container.kp-spage-layout .contents .sub33_strategy_title {
		font-size: 24px;
	}

	#container.kp-spage-layout .contents .sub33_strategy_sub {
		font-size: 16px;
		margin-top: 10px;
	}

	#container.kp-spage-layout .sub33_strategy_head {
		margin-bottom: 28px;
	}

	#container.kp-spage-layout .sub33_strategy_grid {
		flex-direction: column;
	}

	#container.kp-spage-layout .sub33_strategy_item {
		padding: 28px 20px;
		border-right: 0;
		border-bottom: 1px solid #e2e7ef;
	}

	#container.kp-spage-layout .sub33_strategy_item:last-child {
		border-bottom: 0;
	}

	#container.kp-spage-layout .sub33_strategy_icon {
		margin-bottom: 18px;
	}

	#container.kp-spage-layout .sub33_strategy_icon img {
		max-width: 72px;
	}

	#container.kp-spage-layout .contents .sub33_strategy_item_title {
		font-size: 17px;
		margin-bottom: 10px;
	}

	#container.kp-spage-layout .contents .sub33_strategy_item_desc {
		font-size: 14px;
	}

	#container.kp-spage-layout .sub33_strategy_foot {
		flex-direction: column;
		gap: 16px;
		padding: 24px 20px;
	}

	#container.kp-spage-layout .sub33_strategy_checks li {
		font-size: 14px;
	}

	#container.kp-spage-layout .sub33_program {
		margin-top: 80px;
		padding-bottom: 0;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_program .sub_page_head_title {
		margin: 28px 0 40px;
	}

	#container.kp-spage-layout .sub33_program_box {
		padding: 24px 16px 20px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .contents .sub33_program_box_title {
		font-size: 19px;
		margin-bottom: 24px;
	}

	#container.kp-spage-layout .sub33_program_table th,
	#container.kp-spage-layout .sub33_program_table td {
		padding: 12px 10px;
		font-size: 13px;
	}

	#container.kp-spage-layout .sub33_program_list li {
		font-size: 13px;
	}

	#container.kp-spage-layout .sub33_cta_wrap {
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub33_cta_btn {
		min-width: 0;
		width: 100%;
		max-width: 360px;
		padding: 16px 28px;
		font-size: 17px;
	}

	#container.kp-spage-layout .sub21_band--lite {
		padding: 0 16px 60px;
	}

	#container.kp-spage-layout .sub21_band--white {
		padding: 0 16px 60px;
	}

	#container.kp-spage-layout .sub21_band--lite:last-child {
		padding: 0 16px 60px;
	}

	#container.kp-spage-layout .sub21_chart_box {
		margin-top: 48px;
		margin-bottom: 32px;
		padding: 24px 16px 16px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub21_dist_table th,
	#container.kp-spage-layout .sub21_dist_table td {
		padding: 12px 6px;
		font-size: 13px;
	}

	#container.kp-spage-layout .sub21_dist_table thead th,
	#container.kp-spage-layout .sub21_dist_table tbody th {
		font-size: 13px;
	}

	#container.kp-spage-layout .sub21_dist_level_row th,
	#container.kp-spage-layout .sub21_dist_level_row td {
		padding: 14px 6px;
		font-size: 13px;
	}

	#container.kp-spage-layout .sub21_norm_box {
		margin-top: 38px;
		padding: 32px 24px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .contents .sub21_norm_intro {
		margin-bottom: 24px;
		font-size: 15px;
		line-height: 1.75;
	}

	#container.kp-spage-layout .sub21_norm_table th,
	#container.kp-spage-layout .sub21_norm_table td {
		padding: 10px 8px;
		font-size: 13px;
	}

	#container.kp-spage-layout .sub21_norm_table thead th {
		font-size: 13px;
	}

	#container.kp-spage-layout .sub21_norm_table tbody th {
		font-size: 12px;
	}

	#container.kp-spage-layout .sub21_corr_sec {
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub21_corr_title {
		margin-bottom: 14px;
		font-size: 15px;
	}

	#container.kp-spage-layout .sub21_corr_table th,
	#container.kp-spage-layout .sub21_corr_table td {
		padding: 10px 4px;
		font-size: 14px;
	}

	#container.kp-spage-layout .contents .sub21_corr_note {
		font-size: 12px;
	}

	#container.kp-spage-layout .sub11_intro {
		min-height: 280px;
		margin: 48px 0;
		padding: 36px 32px;
		border-radius: 18px;
	}

	#container.kp-spage-layout .sub11_intro_title {
		font-size: 26px;
		margin-bottom: 20px;
	}

	#container.kp-spage-layout .sub11_intro_inner {
		max-width: 100%;
	}

	#container.kp-spage-layout .contents .sub11_intro_desc {
		font-size: 15px;
		line-height: 1.7;
	}

	#container.kp-spage-layout .sub11_intro_line3,
	#container.kp-spage-layout .sub11_intro_last {
		white-space: normal;
		display: inline;
	}

	#container.kp-spage-layout .sub11_article {
		padding-left: 20px;
		padding-right: 20px;
	}

	#container.kp-spage-layout .sub11_sec + .sub11_sec {
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub11_sec_title {
		font-size: 17px;
		margin-bottom: 14px;
	}

	#container.kp-spage-layout .contents .sub11_sec p {
		font-size: 15px;
		line-height: 1.8;
		padding-bottom: 14px;
	}

	#container.kp-spage-layout .contents .sub11_sec_last p {
		font-size: 17px;
	}

	#container.kp-spage-layout .sub11_sec_last {
		margin-top: 32px;
	}

	#container.kp-spage-layout .sub11_sign {
		margin-top: 36px;
		gap: 10px 12px;
	}

	#container.kp-spage-layout .sub11_sign_label {
		font-size: 16px;
	}

	#container.kp-spage-layout .sub12_certs {
		margin: 48px 0 60px;
	}

	#container.kp-spage-layout .sub12_cert_grid {
		grid-template-columns: 1fr;
		gap: 32px;
		padding: 40px 24px 36px;
		border-radius: 14px;
	}

	#container.kp-spage-layout .sub12_cert_fig img {
		max-width: 320px;
	}

	#container.kp-spage-layout .sub13_intro {
		height: auto;
		min-height: 220px;
		margin: 48px 0 40px;
		padding: 32px 24px;
		border-radius: 20px;
		background-size: cover;
		background-position: center center;
	}

	#container.kp-spage-layout .contents .sub13_intro_desc {
		font-size: 18px;
		line-height: 1.75;
	}

	#container.kp-spage-layout .contents .sub13_intro_desc em {
		font-size: 22px;
	}

	#container.kp-spage-layout .sub13_timeline {
		margin-bottom: 60px;
		padding: 0 16px;
	}

	#container.kp-spage-layout .sub13_era_inner {
		grid-template-columns: 1fr;
		gap: 16px;
		padding-left: 0;
	}

	#container.kp-spage-layout .sub13_era_badge {
		width: 140px;
		height: 140px;
		margin: 0 auto;
	}

	#container.kp-spage-layout .sub13_era_badge_main {
		font-size: 36px;
	}

	#container.kp-spage-layout .sub13_era_badge_sub {
		font-size: 22px;
	}

	#container.kp-spage-layout .sub13_era_list {
		margin-top: 0;
		padding-top: 0;
	}

	#container.kp-spage-layout .sub13_year_item {
		grid-template-columns: 72px minmax(0, 1fr);
		gap: 0 20px;
		padding: 0 0 28px 18px;
	}

	#container.kp-spage-layout .sub13_year_dot {
		left: 0;
		top: 7px;
		width: 14px;
		height: 14px;
		border-width: 3px;
		transform: translateX(-50%);
	}

	#container.kp-spage-layout .sub13_year_label {
		font-size: 18px;
	}

	#container.kp-spage-layout .contents .sub13_year_body p {
		font-size: 14px;
		line-height: 1.65;
	}

	#container.kp-spage-layout .sub14_inst_list {
		margin: 48px 0 60px;
	}

	#container.kp-spage-layout .sub14_inst + .sub14_inst {
		margin-top: 150px;
	}

	#container.kp-spage-layout .sub14_inst_label {
		padding: 14px 12px;
	}

	#container.kp-spage-layout .sub14_inst_label_txt {
		font-size: 17px;
	}

	#container.kp-spage-layout .sub14_inst_label_sub {
		font-size: 13px;
	}

	#container.kp-spage-layout .sub14_inst_cell {
		padding: 12px 8px;
		font-size: 13px;
	}
}

/* 태블릿 가로 ~ 노트북 */
@media (max-width: 1200px) {
	#container.kp-spage-layout > .sub_visual .sub_visual_inner h2 {
		font-size: 50px;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_tabs a {
		padding: 11px 18px;
		font-size: 15px;
	}
}

/* 헤더 모바일 메뉴 전환 구간 (style.css 1100px 기준) */
@media (max-width: 1100px) {
	/* 햄버거 메뉴가 서브 비주얼 탭보다 위에 오도록 */
	body:has(#container.kp-spage-layout) #header:has(.top.is_menu_open) {
		z-index: 1000;
	}

	#container.kp-spage-layout {
		position: relative;
		z-index: 0;
	}

	#container.kp-spage-layout > .sub_visual {
		z-index: 0;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_tabs {
		z-index: 1;
	}

	#container.kp-spage-layout > .sub_visual {
		margin-top: 88px;
		height: 480px;
	}

	#container.kp-spage-layout > .contents.agree_contents {
		margin-top: 88px;
	}

	/* sub32 — 기업체검사 신청 플로우 (태블릿) */
	#container.kp-spage-layout .sub32_apply_flow {
		flex-direction: column;
		align-items: center;
		gap: 12px;
	}

	#container.kp-spage-layout .sub32_apply_step {
		flex: 0 0 auto;
		width: 100%;
		max-width: 360px;
	}

	#container.kp-spage-layout .sub32_apply_arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		position: static;
		flex: 0 0 auto;
		width: auto;
		min-width: 0;
		align-self: center;
		margin: 0 auto;
		padding: 0;
		overflow: visible;
	}

	#container.kp-spage-layout .contents.sub32_contents .sub32_apply_arrow img {
		position: static;
		top: auto;
		left: auto;
		display: block;
		transform: rotate(90deg);
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_inner {
		padding-bottom: 110px;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_inner h2 {
		font-size: 42px;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_tabs {
		max-width: calc(100% - 24px);
		border-radius: 24px;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_tabs a {
		padding: 10px 14px;
		font-size: 14px;
	}

	/* sub33 — 교육훈련 특징 (태블릿·모바일) */
	#container.kp-spage-layout .contents.sub33_contents .sub33_feature {
		margin-top: 60px;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_head_wrap {
		top: 0;
		margin-bottom: 40px;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_tree {
		display: none;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_head {
		width: 100%;
		max-width: 360px;
		min-height: 0;
		padding: 22px 20px;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_title {
		font-size: 20px;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_flow {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
		margin-bottom: 0;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_step {
		flex: 1 1 auto;
		width: 100%;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_step--side {
		margin-bottom: 0;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_card {
		min-height: 0;
		padding: 22px 18px;
	}

	#container.kp-spage-layout .contents.sub33_contents .sub33_feature_label {
		font-size: 17px;
	}
}

@media (max-width: 768px) {
	#container.kp-spage-layout > .sub_visual {
		margin-top: 78px;
		height: 400px;
	}

	#container.kp-spage-layout > .contents.agree_contents {
		margin-top: 78px;
	}

	#container.kp-spage-layout .contents.agree_contents .board_area--agree {
		padding-top: 50px;
	}

	#container.kp-spage-layout .contents.agree_contents .board_box {
		padding: 28px 28px 32px;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_inner h2 {
		font-size: 32px;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_tabs {
		width: calc(100% - 20px);
		max-width: none;
		padding: 6px;
		border-radius: 18px;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_tabs a {
		padding: 9px 12px;
		font-size: 13px;
		white-space: normal;
		text-align: center;
	}

	#container.kp-spage-layout .contents {
		padding-left: 20px;
		padding-right: 20px;
		padding-bottom: 60px;
	}

	/* sub32 — 상단 영역: list_area min-height(500px) 해제 (모바일) */
	#container.kp-spage-layout .sub32_content_top,
	#container.kp-spage-layout .sub32_content_top .list_area {
		min-height: 0;
		height: auto;
	}

	#container.kp-spage-layout .sub32_content_top {
		padding: 72px 16px 56px;
	}

	#container.kp-spage-layout .sub32_content_top .sub_page_head {
		padding: 0;
	}

	#container.kp-spage-layout .sub32_content_top .list_area > img {
		margin: 56px 0 40px;
	}

	#container.kp-spage-layout .sub32_body .sub_page_head {
		padding-top: 56px;
	}
}

@media (max-width: 480px) {
	#container.kp-spage-layout > .sub_visual {
		height: 360px;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_inner h2 {
		font-size: 26px;
		line-height: 1.35;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_tabs {
		bottom: 16px;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_tabs li {
		flex: 1 1 calc(50% - 4px);
		min-width: 0;
	}

	#container.kp-spage-layout > .sub_visual .sub_visual_tabs a {
		padding: 8px 10px;
		font-size: 12px;
	}
}
