@charset "UTF-8";
/* ===== 서브 공통 ===== */
:root {--sub-max:1400px;}
.sub_inner {box-sizing:content-box; max-width:var(--sub-max); margin:0 auto; padding:0 60px;}
/* 서브 비주얼 */
.sub_visual {position:relative; margin-top:90px; height:340px; background-position:center; background-size:cover; background-repeat:no-repeat;}
.sub_visual::before {content:''; position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,.35);}
.sub_visual .sub_inner {height:100%;}
.sub_visual .sub_visual_inner {position:relative; z-index:1; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center;}
.sub_visual .sub_visual_tit {font-size:46px; font-weight:700; color:#fff;}
.sub_visual .sub_visual_desc {padding-top:24px; font-size:18px; font-weight:400; color:#fff;}
/* 서브 2depth 탭 */
.sub_tab {position:relative; z-index:2; margin-top:-55px;}
.sub_tab ul {display:flex; align-items:center; justify-content:center; height:80px; background:#fff; box-shadow:0 10px 30px rgba(0,0,0,.15);}
.sub_tab ul li a {position:relative; display:inline-block; padding:0 32px; font-size:20px; font-weight:700; color:#111;}
.sub_tab ul li.active a {color:var(--point-color);}
.sub_tab ul li.active a::after {content:''; position:absolute; left:0; bottom:-30px; width:100%; height:5px; background:var(--point-color);}
/* 서브 컨텐츠 */
.sub_content {padding:80px 0 140px;}
/* 서브 페이지 타이틀 */
.sub_page_tit {margin:0 0 80px; text-align:center; font-size:36px; font-weight:700; color:#111;}
/* 서브 섹션 타이틀 */
.sub_sec_tit {margin:120px 0 32px; font-size:28px; font-weight:700; color:#111;}
/* 서브 공통 테이블 */
.sub_table {width:100%; border-top:2px solid var(--point-color); border-collapse:collapse;}
.sub_table th {width:260px; padding:20px 0; background:#f5f5f5; font-size:18px; font-weight:700; color:#111; text-align:center; border-bottom:1px solid #ddd;}
.sub_table td {padding:20px 40px; font-size:18px; font-weight:400; line-height:1.6; color:#757575; border-bottom:1px solid #ddd;}
/* ===== 사업개요 페이지 ===== */
.biz_overview {display:flex; gap:60px;}
.biz_overview .biz_overview_img {width:50%; border-radius:30px; overflow:hidden;}
.biz_overview .biz_overview_img img {display:block; width:100%; height:100%; object-fit:cover;}
.biz_overview .biz_overview_info {flex:1; margin-top:80px;}
.biz_overview .biz_overview_info ul li {display:flex; align-items:center;}
.biz_overview .biz_overview_info ul li + li {margin-top:20px;}
.biz_overview .biz_overview_info .label {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:150px; height:38px; border-radius:19px; background:#0b3d8f; font-size:18px; font-weight:700; color:#fff;}
.biz_overview .biz_overview_info p {margin-left:30px; font-size:18px; font-weight:400; line-height:1.6; color:#757575;}
/* ===== 특장점 페이지 ===== */
.feature_item {display:flex; align-items:center; gap:60px;}
.feature_item + .feature_item {margin-top:100px;}
.feature_item.rev {flex-direction:row-reverse;}
.feature_item .feature_img {width:50%; border-radius:30px; overflow:hidden;}
.feature_item .feature_img img {display:block; width:100%; height:auto;}
.feature_item .feature_txt {flex:1;}
.feature_item .feature_en {display:block; font-size:16px; font-weight:500; color:#111;}
.feature_item .feature_tit {display:block; margin-top:16px; font-size:36px; font-weight:800; color:#111;}
.feature_item .feature_txt ul {margin-top:54px;}
.feature_item .feature_txt ul li {position:relative; padding-left:16px; font-size:18px; font-weight:400; line-height:24px; color:#757575;}
.feature_item .feature_txt ul li::before {content:''; position:absolute; left:0; top:10px; width:4px; height:4px; background:var(--point-color);}
.feature_item .feature_txt ul li + li {margin-top:12px;}
/* ===== 커뮤니티 시설 페이지 ===== */
.comm_head {text-align:center;}
.comm_tit {font-size:36px; font-weight:700; color:#111;}
.comm_desc {margin-top:16px; font-size:18px; font-weight:400; color:#757575;}
.comm_divider {width:1px; height:50px; margin:40px auto 0; background:#ddd;}
.comm_list {display:flex; gap:70px; margin-top:60px;}
.comm_item {flex:1; text-align:center;}
.comm_item .comm_img {margin-bottom:24px;}
.comm_item .comm_img img {display:block; width:100%; height:auto;}
.comm_item .comm_item_tit {display:block; font-size:24px; font-weight:700; color:#111;}
.comm_item .comm_item_desc {margin-top:12px; font-size:18px; font-weight:400; line-height:1.5; color:#757575;}
.comm_notes {margin-top:60px;}
.comm_notes li {position:relative; padding-left:14px; font-size:16px; font-weight:400; line-height:1.6; color:#999;}
.comm_notes li::before {content:'•'; position:absolute; left:0;}
/* ===== 오시는 길 페이지 ===== */
.loc_map img {display:block; width:100%; height:auto;}
.loc_info {margin-top:50px;}
.loc_row {display:flex; align-items:center;}
.loc_row + .loc_row {margin-top:20px;}
.loc_label {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:150px; height:38px; border-radius:19px; background:#0b3d8f; font-size:18px; font-weight:700; color:#fff;}
.loc_row p {margin-left:28px; font-size:18px; font-weight:400; line-height:1.6; color:#757575;}
/* ===== 청약 자격요건 페이지 ===== */
.qual_sec {margin-top:60px;}
.qual_sec:first-child {margin-top:0;}
.qual_sec_tit {font-size:28px; font-weight:700; color:#111;}
.qual_sec_desc {margin-top:32px; margin-bottom:32px; font-size:18px; font-weight:400; line-height:1.6; color:#555;}
.qual_group_tit {padding-bottom:12px; border-bottom:2px solid #0184ba; font-size:22px; font-weight:700; color:#0184ba;}
.qual_group_body {padding:30px 10px 100px;}
.qual_row {display:flex; align-items:flex-start;}
.qual_row + .qual_row {margin-top:16px;}
.qual_label {display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:150px; height:40px; border-radius:20px; background:#0b3d8f; font-size:18px; font-weight:700; color:#fff;}
.qual_sec.general .qual_label {background:#0184ba;}
.qual_content {flex:1; margin-left:30px; padding-top:6px; font-size:18px; font-weight:400; line-height:28px; color:#555555;}
.qual_table {width:calc(100% - 180px); margin-top:16px; margin-left:180px; border-top:1px solid #ddd; border-collapse:collapse;}
.qual_table th {background:#f5f5f5; padding:16px 8px; font-size:16px; font-weight:700; color:#111; text-align:center; border-bottom:1px solid #ddd; border-right:1px solid #ddd;}
.qual_table td {padding:16px 8px; font-size:16px; font-weight:400; color:#333; text-align:center; border-bottom:1px solid #ddd; border-right:1px solid #ddd;}
.qual_table th:last-child,
.qual_table td:last-child {border-right:0;}
.qual_note {margin-top:12px; margin-bottom:40px; margin-left:180px; font-size:15px; font-weight:400; line-height:24px; color:#555555;}
.qual_note .sub {padding-left:12px;}
.qual_box {margin-top:60px; padding:32px 40px; border:1px solid #ddd; border-radius:8px;}
.qual_box_tit {display:block; font-size:24px; font-weight:700; color:#111;}
.qual_box ul {margin-top:16px;}
.qual_box li {position:relative; padding-left:14px; font-size:18px; font-weight:400; line-height:1.8; color:#555555;}
.qual_box li::before {content:''; position:absolute; left:0; top:14px; width:4px; height:4px; background:#0b3d8f;}
/* ===== 금융지원 안내 페이지 ===== */
.fin_banner {position:relative; min-height:420px; overflow:hidden;}
.fin_banner_bg {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.fin_banner_inner {position:relative; z-index:1; display:flex; flex-direction:column; justify-content:center; height:100%; min-height:420px; max-width:55%; padding:0 60px; background:linear-gradient(to right, rgba(245,245,245,.95) 65%, rgba(245,245,245,0)); box-sizing:border-box;}
.fin_banner_small {font-size:20px; font-weight:700; line-height:1.4; color:#333;}
.fin_banner_tit {display:block; margin-top:34px; font-size:36px; font-weight:700; line-height:52px; color:#004a8f;}
.fin_banner_desc {margin-top:34px; font-size:24px; font-weight:700; line-height:1.4; color:#199ad6;}
.fin_list {display:flex; gap:70px; margin-top:120px;}
.fin_item {flex:1; display:flex; align-items:flex-start; gap:30px;}
.fin_img {flex-shrink:0; width:285px;}
.fin_img img {display:block; width:100%; height:auto;}
.fin_body {flex:1; display:flex; flex-direction:column; align-items:flex-start; padding-top:16px;}
.fin_tit {display:block; font-size:24px; font-weight:700; line-height:1.4; color:#111;}
.fin_desc {margin-top:12px; font-size:18px; font-weight:400; line-height:1.6; color:#555555;}
.fin_btn {align-self:flex-end; margin-top:20px; flex-shrink:0; display:inline-flex; align-items:center; justify-content:center; height:44px; padding:0 24px; border-radius:22px; background:#004a8f; font-size:17px; font-weight:700; color:#fff;}
.fin_note {margin-top:80px; font-size:18px; font-weight:400; line-height:1.6; color:#555;}
/* ===== 입주자 모집공고 페이지 ===== */
.rec_banner {position:relative; min-height:480px; overflow:hidden;}
.rec_banner_bg {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.rec_banner_inner {position:relative; z-index:1; display:flex; flex-direction:column; justify-content:center; height:100%; min-height:480px; max-width:45%; padding:0 60px; box-sizing:border-box;}
.rec_banner_logo {display:block; width:180px; height:auto;}
.rec_banner_tit {display:block; margin-top:30px; font-size:28px; font-weight:700; line-height:1.4; color:#004a8f;}
.rec_banner_desc {margin-top:70px; font-size:24px; font-weight:400; line-height:1.6; color:#333;}
.rec_btn_wrap {margin-top:48px; text-align:center;}
.rec_btn {display:inline-flex; align-items:center; gap:10px; height:56px; padding:0 32px; border-radius:28px; background:#0b3d8f; font-size:17px; font-weight:700; line-height:1; color:#fff;}
.rec_btn img {width:20px; height:20px;}
/* ===== 청약신청조회 페이지 ===== */
.qcheck_head {display:flex; align-items:flex-end; justify-content:space-between;}
.qcheck_tit {font-size:24px; font-weight:700; line-height:1.4; color:#111;}
.qcheck_head .reg_required_note {margin-top:0;}
/* ===== 제출서류 안내 페이지 ===== */
.doc_tabs {display:flex; justify-content:center; gap:0; margin-bottom:24px;}
.doc_tab {width:320px; height:60px; background:#fff; border:1px solid #ddd; border-left:0; font-size:20px; font-weight:700; line-height:60px; color:#000; text-align:center;}
.doc_tab:first-child {border-left:1px solid #ddd;}
.doc_tab.active {background:#555; border-color:#555; color:#fff;}
.doc_panel {display:none;}
.doc_panel.active {display:block;}
.doc_sec_tit {font-size:28px; font-weight:700; line-height:1.4; color:#111;}
.doc_notes {margin-top:16px;}
.doc_notes li {position:relative; padding-left:14px; font-size:18px; font-weight:400; line-height:1.6; color:#222;}
.doc_notes li::before {content:''; position:absolute; left:0; top:10px; width:4px; height:4px; background:#0184ba;}
.doc_table {width:100%; margin-top:24px; table-layout:fixed; border-top:2px solid var(--point-color); border-collapse:collapse;}
.doc_table th {background:#f5f5f5; padding:16px 8px; font-size:18px; font-weight:700; line-height:1.4; color:#111; text-align:center; border-bottom:1px solid #ddd; border-right:1px solid #ddd;}
.doc_table td {padding:16px; font-size:18px; font-weight:400; line-height:1.6; color:#333; text-align:center; vertical-align:top; border-bottom:1px solid #ddd; border-right:1px solid #ddd;}
.doc_table td.doc_group {text-align:center; font-weight:700;}
.doc_table td.doc_type {text-align:center; font-weight:700;}
.doc_table td.doc_left {padding-left:24px; text-align:left;}
.doc_table td.doc_left p {font-size:18px; font-weight:400; line-height:1.6; color:#333;}
.doc_table td.doc_left p.doc_sub {margin-top:4px; font-size:14px; font-weight:400; line-height:1.6; color:#888;}
.doc_table td.doc_star {color:#0184ba;}
.doc_info {margin-top:24px;}
.doc_info li {position:relative; padding-left:14px; font-size:15px; font-weight:400; line-height:1.6; color:#888888;}
.doc_info li::before {content:''; position:absolute; left:0; top:8px; width:4px; height:4px; background:#aaaaaa;}
/* ===== 준비중 페이지 ===== */
.sub_ready {padding:120px 0; text-align:center;}
.sub_ready_spinner {width:64px; height:64px; margin:0 auto 32px; border:4px solid rgba(25,154,214,.2); border-top-color:var(--point-color); border-radius:50%; animation:sub_ready_spin 1s linear infinite;}
.sub_ready_tit {font-size:28px; font-weight:400; color:#333;}
.sub_ready_tit strong {font-weight:800;}
.sub_ready_desc {margin-top:20px; font-size:16px; font-weight:400; line-height:1.8; color:#999;}
@keyframes sub_ready_spin {
	to {transform:rotate(360deg);}
}
/* ===== 정책 페이지 ===== */
.policy_visual {margin-top:90px; height:200px; display:flex; align-items:center; justify-content:center; background:#f5f5f5;}
.policy_visual h2 {font-size:36px; font-weight:700; color:#111;}
.policy_content {box-sizing:content-box; max-width:1000px; margin:0 auto; padding:80px 60px 140px;}
.policy_content h3 {margin-top:48px; margin-bottom:12px; font-size:20px; font-weight:700; color:#111;}
.policy_content h3:first-child {margin-top:0;}
.policy_content p {font-size:16px; font-weight:400; line-height:1.8; color:#555;}
/* ===== 입주관심 등록 페이지 ===== */
.reg_notice {display:flex; align-items:center; gap:60px; margin-top:60px; padding:40px 60px; background:#0b3d8f; border-radius:14px;}
.reg_notice .reg_notice_logo {flex-shrink:0;}
.reg_notice .reg_notice_logo img {height:60px; width:auto;}
.reg_notice .reg_notice_txt p {font-size:16px; font-weight:400; line-height:1.7; color:#fff;}
.reg_sec_tit {margin:60px 0 24px; font-size:22px; font-weight:700; color:#111;}
.reg_terms_box {height:200px; overflow-y:auto; padding:24px; border:1px solid #ddd; background:#fafafa;}
.reg_terms_box p {font-size:15px; font-weight:400; line-height:1.8; color:#555;}
.reg_check {display:inline-block; margin-top:20px; font-size:16px; font-weight:400; line-height:1.6; color:#333;}
.reg_agree_list {margin-top:24px;}
.reg_agree_list .reg_check {display:block; margin-top:0;}
.reg_agree_list .reg_check + .reg_check {margin-top:12px;}
.reg_required_note {margin-top:40px; text-align:right; font-size:14px; font-weight:400; color:#999;}
.reg_form {margin-top:16px; border-top:2px solid var(--point-color);}
.reg_row {display:flex; align-items:center; min-height:70px; border-bottom:1px solid #eee;}
.reg_label {display:flex; flex-direction:column; justify-content:center; align-self:stretch; width:200px; flex-shrink:0; padding-left:20px; font-size:16px; font-weight:700; color:#111; background:#f5f5f5;}
.reg_field {flex:1; padding-left:40px;}
.reg_field input[type="text"],
.reg_field input[type="password"] {width:100%; max-width:500px; height:44px; padding:0 16px; border:1px solid #ddd; font-size:15px; font-family:inherit;}
.reg_field p {font-size:15px; font-weight:400; color:#333; line-height:1.6;}
.reg_label_sub {display:block; margin-top:4px; font-size:12px; font-weight:400; color:#999;}
.reg_radio_group {display:flex; flex-wrap:wrap; gap:24px;}
.reg_radio_group label {display:inline-flex; align-items:center; gap:8px; font-size:15px; font-weight:400; color:#333;}
.reg_radio_group input {width:16px; height:16px;}
.reg_notes {margin-top:24px;}
.reg_notes li {position:relative; padding-left:14px; font-size:14px; font-weight:400; color:#777; line-height:1.8;}
.reg_notes li::before {content:'•'; position:absolute; left:0;}
.reg_btns {display:flex; justify-content:center; gap:16px; margin-top:48px;}
.reg_btns button {width:180px; height:56px; border-radius:8px; font-size:17px; font-weight:700; color:#fff;}
.reg_btns .btn_round {border-radius:28px;}
.reg_btns .btn_register {background:#0b3d8f;}
.reg_btns .btn_cancel {background:#222;}
/* ===== 평면안내 페이지 ===== */
.fp_tabs {display:flex;}
.fp_tabs .fp_tab {flex:1; height:60px; background:#fff; border:1px solid #ddd; border-left:0; font-size:16px; font-weight:700; color:#555; cursor:pointer;}
.fp_tabs .fp_tab:first-child {border-left:1px solid #ddd;}
.fp_tabs .fp_tab.active {background:#555; border-color:#555; color:#fff;}
.fp_stats {display:flex; margin-top:60px;}
.fp_stat {flex:1; text-align:center;}
.fp_stat img {width:90px; height:90px;}
.fp_stat_label {display:block; margin-top:16px; font-size:16px; font-weight:400; color:var(--point-color);}
.fp_stat_value {display:block; margin-top:8px; font-size:26px; font-weight:800; color:#111;}
.fp_divider {margin-top:40px; height:2px; background:var(--point-color);}
.fp_viewer {position:relative; margin-top:40px; height:850px; background:#f2f2f2;}
.fp_slide_wrap {position:relative; width:100%; height:100%; overflow:hidden;}
.fp_slide {position:absolute; top:0; left:0; width:100%; height:100%; background-position:center; background-size:contain; background-repeat:no-repeat; opacity:0; transition:opacity .4s ease;}
.fp_slide.on {opacity:1;}
.fp_arrow {position:absolute; top:50%; margin-top:-22px; width:44px; height:44px; background:#fff; border:1px solid #ddd; border-radius:50%;}
.fp_arrow::after {content:''; position:absolute; top:50%; left:50%; width:10px; height:10px; border-right:2px solid #555; border-top:2px solid #555;}
.fp_arrow.prev {left:24px;}
.fp_arrow.prev::after {margin:-6px 0 0 -3px; transform:rotate(-135deg);}
.fp_arrow.next {right:24px;}
.fp_arrow.next::after {margin:-6px 0 0 -7px; transform:rotate(45deg);}
.fp_badge {position:absolute; top:24px; right:24px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; width:170px; height:96px; padding:16px; border-radius:50px; background:#0b3d8f; color:#fff;}
.fp_badge span {font-size:16px; font-weight:400;}
.fp_badge strong {font-size:24px; font-weight:800;}
.fp_vr_btn {position:absolute; left:24px; bottom:24px; height:40px; padding:0 20px; border-radius:20px; background:var(--point-color); font-size:15px; font-weight:700; color:#fff;}
.fp_notes {margin-top:24px;}
.fp_notes li {position:relative; padding-left:14px; font-size:14px; font-weight:400; color:#777; line-height:1.8;}
.fp_notes li::before {content:'•'; position:absolute; left:0;}
/* ===== 동호수배치도 페이지 (회색 박스 없이 이미지 100% 노출) ===== */
.unit_tabs {display:flex;}
.unit_tabs .unit_tab {flex:1; height:60px; background:#fff; border:1px solid #ddd; border-left:0; font-size:16px; font-weight:700; color:#555; cursor:pointer;}
.unit_tabs .unit_tab:first-child {border-left:1px solid #ddd;}
.unit_tabs .unit_tab.active {background:#555; border-color:#555; color:#fff;}
.unit_viewer {margin-top:40px;}
.unit_viewer img {display:block; width:100%; height:auto;}
/* ===== 공지사항 리스트 ===== */
.sub_board .board_list_top {display:flex; align-items:center; justify-content:space-between; margin-bottom:24px;}
.sub_board .board_total {font-size:16px; font-weight:400; color:#333;}
.sub_board .board_total span {font-weight:700;}
.sub_board .board_search {display:flex; gap:8px;}
.sub_board .board_search input {width:280px; height:44px; padding:0 16px; border:1px solid #ddd; font-size:14px; font-family:inherit;}
.sub_board .board_search .btn_search {display:inline-flex; align-items:center; justify-content:center; width:100px; height:44px; background:var(--point-color); font-size:14px; font-weight:700; color:#fff;}
.sub_board table.board_list {width:100%; table-layout:fixed; border-top:2px solid var(--point-color); border-collapse:collapse;}
.sub_board table.board_list th {background:#fff; font-size:16px; font-weight:700; color:#111; text-align:center; padding:20px 12px; border-bottom:1px solid #ddd;}
.sub_board table.board_list td {font-size:15px; font-weight:400; color:#555; text-align:center; padding:20px 12px; border-bottom:1px solid #eee;}
.sub_board table.board_list td.left {text-align:left; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.sub_board table.board_list td.left a {color:inherit;}
.sub_board table.board_list tr.notice td {color:#333; font-weight:500;}
.sub_board .badge_notice {display:inline-block; padding:4px 10px; border-radius:4px; background:var(--point-color); font-size:13px; font-weight:700; color:#fff;}
/*.sub_board .board_page {margin-top:40px; text-align:center;}
.sub_board .board_page a:not([class]) {display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; margin:0 4px; border-radius:50%; border:0; font-size:15px; font-weight:400; color:#555; background:none;}
.sub_board .board_page a.on {width:38px; height:38px; border-radius:50%; border:0; background:var(--point-color); color:#fff; font-weight:700; text-decoration:none;}*/
.sub_board .btn_list a.blue {background:var(--point-color);}
.sub_board .btn_list a.blue:hover {background:#157cad;}
/* 상세보기 메타정보 줄 */
.sub_board div.view_tit ul {flex-wrap:wrap; gap:12px 24px;}
/* ===== 공급유형 안내 페이지 ===== */
.supply_table {width:100%; margin-top:16px; border-top:2px solid var(--point-color); border-collapse:collapse;}
.supply_table th {vertical-align:middle; background:#f5f5f5; font-size:18px; font-weight:700; color:#111; text-align:center; padding:16px 8px; border-bottom:1px solid #ddd; border-right:1px solid #ddd;}
.supply_table th span {display:block; font-size:12px; font-weight:400; color:#757575;}
.supply_table td {vertical-align:middle; font-size:18px; font-weight:400; color:#333; text-align:center; padding:20px 8px; border-bottom:1px solid #ddd; border-right:1px solid #ddd;}
.supply_table thead tr:first-child > th:last-child,
.supply_table tbody tr > td:last-child {border-right:0;}
.supply_table tr.total td {font-weight:700; background:#fafafa;}
/* ===== 임대조건 페이지 ===== */
.lease_sec_head {display:flex; align-items:flex-end; justify-content:space-between; margin-top:100px;}
.lease_sec_head.first {margin-top:60px;}
.lease_sec_tit {font-size:28px; font-weight:700; color:#111;}
.lease_unit {font-size:18px; font-weight:400; color:#757575;}
.lease_table {width:100%; margin-top:24px; border-top:2px solid var(--point-color); border-collapse:collapse;}
.lease_table th {vertical-align:middle; background:#f5f5f5; font-size:18px; font-weight:700; color:#111; text-align:center; padding:16px 8px; border-bottom:1px solid #ddd; border-right:1px solid #ddd;}
.lease_table td {vertical-align:middle; font-size:18px; font-weight:400; color:#333; text-align:center; padding:20px 8px; border-bottom:1px solid #ddd; border-right:1px solid #ddd;}
.lease_table thead tr:first-child > th:last-child,
.lease_table tbody tr > td:last-child {border-right:0;}
.lease_table tr.subtotal td {font-weight:700; background:#f5f5f5;}
.lease_table tr.total td {font-weight:700; background:#fafafa;}
/* ===== 청약신청 페이지 ===== */
.apply_tabs {display:flex; margin-bottom:60px;}
.apply_tabs .apply_tab {flex:1; height:60px; background:#fff; border:1px solid #ddd; border-left:0; font-size:16px; font-weight:700; color:#555; cursor:pointer;}
.apply_tabs .apply_tab:first-child {border-left:1px solid #ddd;}
.apply_tabs .apply_tab.active {background:#555; border-color:#555; color:#fff;}
.apply_panel {display:none;}
.apply_panel.active {display:block;}
.apply_form_tit {font-size:22px; font-weight:700; color:#111; margin-bottom:16px;}
.apply_form_notice {display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; padding-bottom:16px; margin-bottom:8px; border-bottom:2px solid #000;}
.apply_form_warn {font-size:14px; font-weight:400; color:#e0212e;}
.apply_form_required {font-size:14px; font-weight:400; color:#999;}
.apply_row {display:flex; align-items:flex-start; padding:16px 0; border-bottom:1px solid #ddd;}
.apply_label {display:flex; align-items:center; width:200px; height:50px; flex-shrink:0; font-size:16px; font-weight:700; color:#111;}
.apply_label .req {margin-left:2px; color:#e0212e;}
.apply_label_sub {display:block; margin-top:4px; font-size:13px; font-weight:400; color:#999;}
.apply_field {flex:1;}
.apply_field input[type="text"],
.apply_field input[type="password"] {max-width:640px;}
.apply_field select {max-width:320px;}
.apply_note {margin-bottom:10px; font-size:13px; font-weight:400; color:#999;}
.apply_verify_group {display:flex; gap:10px;}
.apply_verify_group input {width:260px; max-width:100%;}
.apply_btn_dark {flex-shrink:0; height:50px; padding:0 20px; border-radius:6px; background:#444; font-size:15px; font-weight:700; color:#fff; white-space:nowrap;}
.apply_addr_zip {display:flex; gap:10px; margin-bottom:10px;}
.apply_addr_zip input {width:110px; max-width:100%;}
.apply_addr_line {max-width:640px; margin-bottom:10px;}
.apply_addr_line:last-child {margin-bottom:0;}
.apply_input_disabled {background:#f5f5f5; color:#999;}
.apply_input_disabled:disabled {background:#f5f5f5; color:#999; -webkit-text-fill-color:#999; opacity:1;}
.apply_field_inline {display:flex; align-items:center; flex-wrap:wrap; gap:16px;}
.apply_field_inline input {max-width:360px;}
.apply_inline_note {font-size:13px; font-weight:400; color:#e0212e;}
.apply_radio_group {display:flex; align-items:center; flex-wrap:wrap; gap:24px; min-height:50px;}
.apply_radio_group label {display:inline-flex; align-items:center; gap:8px; font-size:15px; font-weight:400; color:#333;}
.apply_radio_group input {width:20px; height:20px; accent-color:#000;}
.apply_radio_group label.apply_radio_disabled {color:#bbb; cursor:not-allowed;}
.apply_radio_group input:disabled {accent-color:#ccc; cursor:not-allowed;}
.apply_sub_head {margin:36px 0 20px; padding:14px 20px; background:#f5f5f5; font-size:16px; font-weight:700; color:#111;}
.apply_sec_tit {margin:60px 0 20px; font-size:22px; font-weight:700; color:#111;}
.apply_box {padding:32px 40px; border:1px solid #ddd; border-radius:8px;}
.apply_box p {font-size:15px; font-weight:400; line-height:1.8; color:#555;}
.apply_confirm_item + .apply_confirm_item {margin-top:28px;}
.apply_confirm_q {font-size:16px; font-weight:400; color:#333; line-height:1.6;}
.apply_confirm_item .apply_radio_group {padding-top:10px;}
.apply_agree_wrap {margin-top:24px; text-align:center;}
.apply_agree_wrap .check_wrap {display:inline-block;}
.apply_btns {display:flex; justify-content:center; gap:16px; margin-top:48px;}
.apply_btns button {width:180px; height:56px; border-radius:8px; font-size:17px; font-weight:700; color:#fff;}
.apply_btns .btn_register {background:#0b3d8f;}
.apply_btns .btn_cancel {background:#222;}
/* ===== 청약일정 페이지 ===== */
.sch_head {display:flex; justify-content:flex-end; margin-bottom:16px;}
.sch_range {font-size:20px; font-weight:700; color:#111;}
.sch_calendar {border-top:2px solid #222; border-left:1px solid #ddd;}
.sch_weekdays {display:grid; grid-template-columns:repeat(7,1fr); background:#f5f5f5;}
.sch_weekday {padding:14px 0; font-size:15px; font-weight:700; color:#111; text-align:center; border-right:1px solid #ddd; border-bottom:1px solid #ddd;}
.sch_weekday:last-child {border-right:0;}
.sch_week {position:relative; border-bottom:1px solid #ddd;}
.sch_days {display:grid; grid-template-columns:repeat(7,1fr); min-height:100px;}
.sch_week.has_event .sch_days {min-height:150px;}
.sch_day {padding:10px 12px; border-right:1px solid #eee;}
.sch_day:last-child {border-right:0;}
.sch_date {font-size:15px; font-weight:400; color:#333;}
.sch_day:first-child .sch_date {color:#ea4044;}
.sch_day:last-child .sch_date {color:#3584e7;}
.sch_days > .sch_day:nth-child(5) .sch_date {font-weight:700; color:#111;}
.sch_day.other_month .sch_date {color:#f9c5c6;}
.sch_day.holiday .sch_date {font-weight:400; color:#ea4044;}
.sch_days > .sch_day.holiday:nth-child(5) .sch_date {font-weight:700; color:#ea4044;}
.sch_events {position:absolute; left:0; top:42px; width:100%;}
.sch_event {position:absolute; padding:10px 8px; text-align:center;}
.sch_event_bar {padding:8px 4px; font-size:14px; font-weight:700; color:#fff; line-height:1.3;}
.sch_event_desc {margin-top:8px; font-size:13px; font-weight:400; color:#555; line-height:1.4;}
.sch_event--black .sch_event_bar {background:#222;}
.sch_event--orange .sch_event_bar {background:#fc990b;}
.sch_event--purple .sch_event_bar {background:#644498;}
.sch_event--navy .sch_event_bar {background:#014c8c;}
.sch_event--pink .sch_event_bar {background:#e31657;}
.sch_event--grey .sch_event_bar {background:#888;}
.sch_supply_tit {margin:60px 0 20px; font-size:22px; font-weight:700; color:#111;}
.sch_supply_table {border-top:1px solid #ddd;}
.sch_supply_row {display:flex; align-items:center; min-height:60px; border-bottom:1px solid #ddd;}
.sch_supply_label {width:280px; flex-shrink:0; padding:16px 8px; font-size:16px; font-weight:700; color:#111; text-align:center; background:#f5f5f5; align-self:stretch; display:flex; align-items:center; justify-content:center;}
.sch_supply_value {padding-left:40px; font-size:15px; font-weight:400; color:#333;}
/* ================= Responsive ================= */
@media screen and (max-width:1600px) {
	.sub_inner {padding:0 40px;}
}
@media screen and (max-width:1024px) {
	.sub_visual {height:260px;}
	.sub_visual .sub_visual_tit {font-size:34px;}
	.sub_tab ul li a {padding:0 20px; font-size:17px;}
	.sub_page_tit {font-size:28px;}
	.sub_sec_tit {margin-top:80px; font-size:24px;}
	.biz_overview {flex-direction:column; gap:32px;}
	.biz_overview .biz_overview_img {width:100%; height:320px;}
	.biz_overview .biz_overview_info {margin-top:0;}
	.feature_item {flex-direction:column; gap:32px;}
	.feature_item.rev {flex-direction:column;}
	.feature_item + .feature_item {margin-top:60px;}
	.feature_item .feature_img {width:100%; height:320px;}
	.feature_item .feature_tit {font-size:28px;}
	.comm_tit {font-size:28px;}
	.comm_list {gap:32px;}
	.comm_item .comm_item_tit {font-size:20px;}
	.comm_item .comm_item_desc {font-size:16px;}
	.feature_item .feature_txt ul {margin-top:32px;}
	.fp_viewer {height:420px;}
	.fp_badge {width:140px; height:76px; padding:12px; gap:2px;}
	.fp_badge span {font-size:14px;}
	.fp_badge strong {font-size:20px;}
	.fin_banner {min-height:340px;}
	.fin_banner_inner {min-height:340px; max-width:70%; padding:0 32px; background:linear-gradient(to right, rgba(245,245,245,.95) 75%, rgba(245,245,245,0));}
	.fin_banner_tit {font-size:24px;}
	.fin_banner_desc {font-size:16px;}
	.fin_list {margin-top:80px; gap:40px;}
	.rec_banner {min-height:380px;}
	.rec_banner_inner {min-height:380px; max-width:60%; padding:0 32px;}
	.rec_banner_logo {max-width:150px;}
	.rec_banner_tit {margin-top:22px; font-size:21px;}
	.rec_banner_desc {margin-top:50px; font-size:16px;}
	.fin_item {gap:20px;}
	.fin_img {width:180px;}
	.fin_tit {font-size:20px;}
	.table_scroll {overflow-x:auto;}
	.doc_table {min-width:1000px;}
	.supply_table {min-width:900px;}
	.lease_table {min-width:900px;}
	.sch_calendar {min-width:900px;}
}
@media screen and (max-width:768px) {
	.sub_inner {padding:0 20px;}
	.sub_visual {margin-top:70px; height:200px;}
	.sub_visual .sub_visual_tit {font-size:26px;}
	.sub_visual .sub_visual_desc {padding-top:8px; font-size:15px;}
	.sub_tab ul li.active a::after {height:3px; bottom:-22px;}
	.sub_tab {margin-top:-40px;}
	.sub_tab ul {height:60px;}
	.sub_tab ul li a {padding:0 12px; font-size:15px;}
	.sub_content {padding:60px 0 90px;}
	.sub_page_tit {margin:0 0 60px; font-size:24px;}
	.sub_sec_tit {margin:60px 0 20px; font-size:20px;}
	.sub_table th {width:120px; font-size:15px; padding:14px 0; vertical-align:middle;}
	.sub_table td {font-size:14px; padding:14px 16px; vertical-align:middle; line-height:20px;}
	.reg_agree_table th,
	.reg_agree_table td {width:50%;}
	.biz_overview .biz_overview_info ul li {align-items:flex-start;}
	.biz_overview .biz_overview_info {margin-top:0;}
	.biz_overview .biz_overview_info .label {width:110px; height:32px; border-radius:16px; font-size:14px;}
	.biz_overview .biz_overview_info p {margin-left:16px; font-size:14px;}
	.sub_ready {padding:80px 0;}
	.sub_ready_spinner {width:48px; height:48px; margin-bottom:24px;}
	.sub_ready_tit {font-size:20px;}
	.sub_ready_desc {font-size:14px;}
	.comm_head {padding:0 4%;}
	.comm_tit {font-size:22px;}
	.comm_desc {font-size:15px;}
	.comm_list {flex-direction:column; gap:40px; margin-top:40px;}
	.comm_notes {margin-top:40px;}
	.comm_notes li {font-size:14px;}
	.loc_info {margin-top:32px;}
	.loc_row {align-items:flex-start;}
	.loc_row + .loc_row {margin-top:14px;}
	.loc_label {width:100px; height:32px; font-size:14px;}
	.qual_sec {margin-top:40px;}
	.qual_sec_tit {font-size:22px;}
	.qual_sec_desc {margin-top:20px; margin-bottom:20px; font-size:14px;}
	.qual_group_tit {font-size:18px;}
	.qual_group_body {padding:20px 0 60px;}
	.qual_row {flex-direction:column;}
	.qual_row + .qual_row {margin-top:12px;}
	.qual_label {width:auto; min-width:100px; height:34px; padding:0 12px; border-radius:17px;}
	.qual_content {margin-left:0; margin-top:8px; padding-top:0; line-height:1.5; font-size:14px;}
	.qual_table {min-width:640px; margin-left:0; width:100%;}
	.qual_table th,
	.qual_table td {font-size:13px; padding:10px 6px;}
	.qual_note {margin-left:0; font-size:12px;}
	.qual_box {padding:20px;}
	.qual_box li {font-size:13px;}
	.fin_banner {min-height:280px;}
	.fin_banner_inner {min-height:0; height:auto; padding:24px; justify-content:flex-start; max-width:78%; background:linear-gradient(to right, rgba(245,245,245,.95) 70%, rgba(245,245,245,0));}
	.fin_banner_small {font-size:14px;}
	.fin_banner_tit {margin-top:14px; font-size:18px; line-height:1.4;}
	.fin_banner_desc {margin-top:14px; font-size:15px;}
	.fin_list {flex-direction:column; gap:32px; margin-top:60px;}
	.fin_item {flex-direction:column; gap:16px;}
	.fin_img {width:100%;}
	.fin_body {flex-direction:column; align-items:flex-start; gap:0; padding-top:0; width:100%;}
	.fin_tit {font-size:17px;}
	.fin_desc {margin-top:6px; font-size:13px;}
	.fin_btn {margin-top:16px; height:38px; padding:0 16px; font-size:13px;}
	.fin_note {margin-top:40px; font-size:14px;}
	.rec_banner {min-height:320px;}
	.rec_banner_inner {min-height:0; height:auto; padding:24px; justify-content:flex-start; max-width:82%;}
	.rec_banner_logo {max-width:100px;}
	.rec_banner_tit {margin-top:16px; font-size:17px;}
	.rec_banner_desc {margin-top:24px; font-size:13px;}
	.rec_btn_wrap {margin-top:32px;}
	.rec_btn {height:46px; padding:0 20px; font-size:14px;}
	.rec_btn img {width:16px; height:16px;}
	.doc_tabs {flex-direction:column;}
	.doc_tab {width:100%; height:48px; line-height:48px; font-size:16px; border-left:1px solid #ddd;}
	.doc_tab + .doc_tab {border-top:0;}
	.doc_sec_tit {font-size:22px;}
	.doc_notes li {font-size:14px;}
	.doc_notes li::before {top:7px;}
	.doc_table {min-width:900px;}
	.doc_table th {font-size:14px;}
	.doc_table td,
	.doc_table td.doc_left p {font-size:13px;}
	.doc_table td.doc_left p.doc_sub {font-size:11px;}
	.doc_info li {font-size:13px;}
	.doc_info li::before {top:6px;}
	.loc_row p {margin-left:16px; font-size:14px; line-height:32px;}
	.policy_visual {margin-top:70px; height:140px;}
	.policy_visual h2 {font-size:24px;}
	.policy_content {padding:50px 20px 90px;}
	.policy_content h3 {font-size:17px;}
	.policy_content p {font-size:14px;}
	.reg_notice {flex-direction:column; align-items:flex-start; gap:20px; padding:28px 24px; margin-top:32px;}
	.reg_notice .reg_notice_logo img {width:70%; height:auto;}
	.qcheck_head {flex-direction:column; align-items:flex-start; gap:8px;}
	.qcheck_tit {font-size:19px;}
	.reg_notice .reg_notice_txt p {font-size:14px;}
	.reg_sec_tit {margin:40px 0 16px; font-size:18px;}
	.reg_terms_box {height:160px; padding:16px;}
	.reg_row {flex-direction:column; align-items:flex-start; gap:12px; padding:24px 0;}
	.reg_label {width:100%; padding-left:0; background:transparent;}
	.reg_field {padding-left:0; width:100%;}
	.reg_field input[type="text"],
	.reg_field input[type="password"] {max-width:100%;}
	.reg_notes li {line-height:1.4;}
	.reg_btns button {width:calc(50% - 8px); height:48px; font-size:15px;}
	.reg_btns .btn_round {border-radius:24px;}
	.fp_tabs .fp_tab {height:44px; font-size:14px;}
	.fp_stats {flex-wrap:wrap; margin-top:32px;}
	.fp_stat {flex:0 0 50%; margin-top:20px;}
	.fp_stat img {width:56px; height:56px;}
	.fp_stat_label {font-size:13px;}
	.fp_stat_value {font-size:19px;}
	.fp_divider {margin-top:20px;}
	.fp_viewer {height:320px; margin-top:24px;}
	.fp_arrow {width:36px; height:36px; margin-top:-18px;}
	.fp_badge {width:110px; height:64px; padding:10px; gap:2px; top:12px; right:12px;}
	.fp_badge span {font-size:12px;}
	.fp_badge strong {font-size:17px;}
	.fp_vr_btn {left:12px; bottom:12px; height:32px; padding:0 14px; font-size:13px;}
	.unit_tabs .unit_tab {height:44px; font-size:14px;}
	.unit_viewer {margin-top:24px;}
	.apply_tabs {flex-wrap:wrap;}
	.apply_tabs .apply_tab {flex:0 0 50%; height:44px; font-size:13px; border-left:1px solid #ddd;}
	.apply_form_notice {flex-direction:column; align-items:flex-start; gap:4px; padding-bottom:12px;}
	.apply_row {flex-direction:column; padding:24px 0;}
	.apply_label {width:100%; height:auto; margin-bottom:8px;}
	.apply_field input[type="text"],
	.apply_field input[type="password"],
	.apply_field select,
	.apply_addr_line,
	.apply_field_inline input {width:100%; max-width:100%;}
	.apply_verify_group {flex-direction:column; gap:8px;}
	.apply_verify_group input {width:100%; max-width:100%;}
	.apply_addr_zip {flex-direction:column; gap:8px;}
	.apply_addr_zip input {width:100%; max-width:100%;}
	.apply_btn_dark {width:100%;}
	.apply_sub_head {margin:24px 0 16px; padding:12px 16px; font-size:15px;}
	.apply_sec_tit {margin:40px 0 16px; font-size:19px;}
	.apply_box {padding:20px;}
	.apply_btns button {width:calc(50% - 8px); height:48px; font-size:15px;}
	.sub_board .board_list_top {flex-direction:column; align-items:flex-start; gap:12px;}
	.sub_board .board_search {width:100%;}
	.sub_board .board_search input {flex:1; width:auto;}
	.table_scroll {overflow-x:auto;}
	.supply_table {min-width:900px;}
	.lease_table {min-width:900px;}
	.lease_table th,
	.lease_table td {font-size:13px; padding:12px 6px;}
	.lease_sec_head {margin-top:60px;}
	.lease_sec_head.first {margin-top:40px;}
	.lease_sec_tit {font-size:22px;}
	.lease_unit {font-size:14px;}
	.supply_table th,
	.supply_table td {font-size:13px; padding:12px 6px;}
	.sch_calendar {min-width:0;}
	.sch_range {font-size:17px;}
	.sch_weekday {padding:8px 0; font-size:12px;}
	.sch_day {padding:6px 3px;}
	.sch_date {font-size:12px;}
	.sch_days {min-height:56px;}
	.sch_week.has_event .sch_days {min-height:104px;}
	.sch_events {top:26px;}
	.sch_event {padding:0;}
	.sch_event_bar {padding:4px 1px; margin:0 1px; font-size:9px; line-height:1.25; word-break:keep-all;}
	.sch_event_desc {display:none;}
	.sch_supply_tit {margin:40px 0 16px; font-size:19px;}
	.sch_supply_row {flex-direction:column; align-items:stretch; min-height:auto;}
	.sch_supply_label {width:100%; padding:12px 8px;}
	.sch_supply_value {padding:12px 16px; text-align:center;}
	.sub_board table.board_list {min-width:700px;}
	.sub_board table.board_list th,
	.sub_board table.board_list td {font-size:13px; padding:14px 8px;}
	.sub_board div.view_tit ul {gap:8px 16px; padding:16px 4%;}
	.sub_board div.view_tit ul li {font-size:13px;}
	.sub_board .board_agree div.cont {padding:24px;}
}