.wrap { width: 1600px; margin: 0 auto; }

/* head */
.head { position: fixed; top: 0px; left: 0px; z-index:99; width: 100%; height: 100px; }
.head.scrolled { background: #1e4d7b; }
.head .wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; height: 100%; }
.head .logo img { height: 70px; }
.head .menu ul { display: flex; flex-wrap: wrap; }
.head .menu ul li { position: relative; }
.head .menu ul li > a { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; height: 60px; padding: 0 40px; color: #fff; font-size: 20px; font-weight: 600; }

.smenu_dl { overflow: hidden; position: absolute; left: -20%; top: 95%; padding: 20px 0px; width: 140%; background: rgba(0, 0, 0, 0.8); border-radius: 3px; z-index: 999; display: none; }
.smenu_dl dd { margin-bottom: 10px; text-align: center; transition: 0.5s; }
.smenu_dl dd:last-child { margin-bottom: 0px; border-bottom: none; }
.smenu_dl dd:hover {  }
.smenu_dl dd a { display: block; color: rgba(255, 255, 255, 0.8); font-size: 1em; letter-spacing: -0.03em; transition: 0.3s; }
.smenu_dl dd a:hover { color: #fff; text-decoration: underline; }

nav#accordian { display: none; }
.burger { display: none; }

/* footer */
.footer { text-align: center; padding: 60px 0; background: #111; color: #999; line-height: 1.6; }
.footer span { position: relative; padding: 0 20px; }
.footer span:after { content:''; position: absolute; right: 0px; top: 15%; width: 1px; height: 70%; background: rgba(255, 255, 255, 0.6); }
.footer span.noline:after { display: none; }
.footer span.point { color: #fff; }
.footer p { margin-top: 15px; }

/* main */
.swiper { width: 100%; height: 100%; }
.swiper-slide { display: flex; justify-content: center; align-items: center; }
.swiper-slide img { display: block; width: 100%; height: 100%; object-fit: cover; }

.main_vis { position: relative; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 100%; height: 100vh; padding-top: 0px; background: #222; background-size: cover; }

.swiper-slide .main_vis_bg { position: absolute; left: 0%; top: 0%; width: 100%; height: 100%; transform: scale(1.1); transition: all 4s; }
.swiper-slide-active .main_vis_bg { transform:scale(1); }

.main_vis_bg01 { background: #222 url('../image/main/main_vis01.jpg') center top no-repeat; background-size: cover; }
.main_vis_bg02 { background: #222 url('../image/main/main_vis02.jpg') center top no-repeat; background-size: cover; }
.main_vis_bg03 { background: #222 url('../image/main/main_vis01.jpg') center top no-repeat; background-size: cover; }

/* ===========================
   메인 전체 컨테이너
=========================== */
.main_arrow { position: absolute; right: 5%; bottom: 130px; z-index: 98; display: flex; justify-content: center; align-items: center; flex-wrap: nowrap; }
.main_vis .swiper-pagingbox { position: relative; z-index: 1000; display: flex; align-items: center; gap: 16px; }

/* ===========================
   숫자 (현재 / 전체)
=========================== */
.swiper-page { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; color: rgba(255,255,255,0.5); font-family: 'Presentation'; line-height: 1; }
.page-current, .page-total { text-align: center; width: 28px; height: 24px; line-height: 24px; color: rgba(255,255,255,0.5); font-size: 15px; font-weight: 700; }
.page-current { width: 40px; color: #fff; font-size: 30px; font-weight: 700; }
.page-total { display: flex; flex-wrap: wrap; align-content: flex-end; line-height: 1; }

/* ===========================
   Progressbar (fill div 방식)
=========================== */
.swiper-progress-bar { overflow: hidden; position: relative; width: 130px; height: 2px; background: rgba(255,255,255,0.3); border-radius: 2px; display: none;}

/* 채워지는 바 */
.swiper-progress-bar .progress-fill { position: absolute; left: 0; top: 0; height: 100%; width: 0%; background: #fff; transition: width 5s linear; }

/* ===========================
   Prev / Next 버튼
=========================== */
.main_vis .swiper-button-prev, .main_vis .swiper-button-next { position: relative; top: auto; left: auto; right: auto; width: 80px; height: 80px; margin-top: 0; color: rgba(255,255,255,0.9); border: 3px solid rgba(255, 255, 255, 0.5); border-radius: 500px; }
.main_vis .swiper-button-prev:hover, .main_vis .swiper-button-next:hover { border: 3px solid rgba(255, 255, 255, 1); }

.main_vis .swiper-button-prev:after, .main_vis .swiper-button-next:after { font-family: 'xeicon' !important; font-size: 24px; }
.main_vis .swiper-button-prev:after { content: "\e93c"; /* < */ }
.main_vis .swiper-button-next:after { content: "\e93f"; /* > */ }

/* ===========================
   Pause / Play 버튼
=========================== */
.swiper-button-pause { position: relative; text-align: center; width: 24px; height: 24px; color: rgba(255,255,255,0.9); line-height: 24px; cursor: pointer; }
.swiper-button-pause:after { font-family: 'xeicon' !important; font-size: 2em; content: "\ea3b"; /* ❚❚ 일시정지 */ }
.swiper-button-pause.playing:after { content: "\ea3e"; /* ▶ 재생 */ }

/* ===========================
   Swiper 기본 Fraction 숨김
=========================== */
.main_vis .swiper-pagination { display: none !important; }

.main_text { position: absolute; bottom: 130px; left: 0px; z-index: 8; display: flex; flex-wrap: wrap; align-items: center; width: 100%; color: #fff; }
.main_text p { font-family: 'Presentation'; font-size: 76px; font-weight: 200; text-shadow: 0 0 60px rgba(0, 0, 0, 0.5); letter-spacing: 0.03em; word-break: keep-all; }
.main_text p strong { font-weight: 800; }

/* ===========================
   main_contents
=========================== */

/* 헤더 섹션 */
.header {
	padding: 120px 30px 30px 30px;
	text-align: center;
}

.header h1 {
	color: #2563a8;
	font-size: 2.2em;
	font-weight: 800;
	margin-bottom: 5px;
}

.header .subtitle {
	color: #2563a8;
	font-size: 1.8em;
	font-weight: 800;
	margin-bottom: 20px;
}

.header p {
	color: #666;
	font-size: 1em;
	line-height: 1.6;
	margin-bottom: 8px;
}

.header .highlight {
	text-decoration: underline;
	text-decoration-color: #e63946;
}

/* 사업개요 섹션 */
.section-title {
	background: linear-gradient(135deg, #2563a8 0%, #1e5a9e 100%);
	color: white;
	padding: 12px 20px;
	font-size: 18px;
	font-weight: 700;
	margin: 0;
}

.info-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0;
	border-right: 1px solid #ddd;
}

.info-item {
	border-left: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	display: flex;
}

.info-item:last-child { border-right: 1px solid #ddd; }

.info-label {
	background: #f8f9fa;
	padding: 15px;
	font-weight: 700;
	color: #2563a8;
	font-size: 1.05em;
	width: 150px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-right: 1px solid #ddd;
}

.info-content {
	padding: 15px;
	flex: 1;
	font-size: 1em;
	line-height: 1.6;
	color: #333;
}

.info-content ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.info-content li {
	margin-bottom: 4px;
}

.info-content .sub {
	padding-left: 15px;
	color: #666;
	font-size: 1em;
}

.badge {
	background: linear-gradient(135deg, #1e4d7b 0%, #2563a8 100%);
	color: #ffd700;
	padding: 15px 25px;
	text-align: center;
	font-size: 1.3em;
	font-weight: 900;
	margin: 0;
    margin-top: 30px;
	border-radius: 5px;
}

.badge small {
	display: block;
	color: white;
	margin-top: 5px;
	font-weight: 400;
}

/* 지도 섹션 */
.map-section {
	padding: 40px 30px;
	background: linear-gradient(to bottom, rgba(255,255,255,0.95), rgba(240,244,248,0.95)),
				url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><rect fill="%23e8f0f7" width="100" height="100"/></svg>');
}

.map-title {
	text-align: center;
	margin-bottom: 15px;
}

.map-title h2 {
	color: #2563a8;
	font-size: 2em;
	font-weight: 900;
	margin-bottom: 10px;
}

.map-title p {
	color: #666;
	font-size: 1em;
	line-height: 1.8;
}

.map-image {
	margin: 30px 0;
	text-align: center;
}

.map-image img {
	max-width: 100%;
	height: auto;
	border: 3px solid #ddd;
	border-radius: 8px;
	box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

/* 1지구/2지구 섹션 */
.district-section {
	padding: 120px 30px;
	background: white;
}

.district-header {
	background: linear-gradient(135deg, #2563a8 0%, #1e5a9e 100%);
	color: white;
	padding: 15px 20px;
	font-size: 1.6em;
	font-weight: 700;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.district-header::before {
	content: '🏢';
	font-size: 24px;
}

.district-text { margin-bottom: 20px; color: #666; font-size: 1em; line-height: 1.8; }

.district-content { display: flex; flex-wrap: wrap; gap: 20px; }

.district-map { display: flex; flex-wrap: wrap; gap: 2%; text-align: center; width: 100%; }
.district-map img { max-width: 49%; height: auto; border-radius: 8px; border: 2px solid #ddd; }
.district-map p { width: 100%; }

.district-info { display: flex; gap: 15px; width: 100%; }

.district-box { flex: 1; padding: 30px; background: #f4f4f4; border-radius: 0px 8px 8px 0px; border-left: 4px solid #2563a8; }
.district-box h4 { color: #2563a8; font-size: 1.2em; margin-bottom: 8px; }
.district-box p { color: #666; font-size: 1em; line-height: 1.6; word-break: keep-all; }

/* 유치업종 배치계획 */
.industry-section {
	padding: 120px 30px;
	background: #f8f9fa;
}

.industry-section h3 {
	color: #c85a28;
	font-size: 1.6em;
	font-weight: 700;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 3px solid #c85a28;
}

.industry-section .subtitle {
	color: #666;
	font-size: 1.05em;
	margin-bottom: 20px;
	font-style: italic;
}

.industry-content {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
	align-items: start;
}

.industry-text {
	font-size: 1em;
	line-height: 1.8;
	color: #333;
}

.industry-text h4 { font-size: 1.3em; }

.industry-map {
	text-align: center;
}

.industry-map img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
    border: 2px solid #ddd;
}

.industry-table {
	margin-top: 20px;
	margin-bottom: 10px;
	border: 1px solid #ddd;
	border-radius: 8px;
	overflow: hidden;
}

.industry-table table {
	width: 100%;
	border-collapse: collapse;
}

.industry-table th {
	background: #c85a28;
	color: white;
	padding: 12px;
	font-size: 1em;
	font-weight: 700;
	text-align: center;
}

.industry-table tbody th { width: 120px; background: #f1e9e5; color: #c85a28; border-bottom: 1px solid #ddd; }

.industry-table td {
	padding: 10px 20px;
	font-size: 1em;
	border-bottom: 1px solid #ddd;
	color: #333;
}

.industry-table tr:last-child td, .industry-table tr:last-child th {
	border-bottom: none;
}

/* 사업추진일정 & 세계혜택안내 */
.bottom-section { display: flex; flex-wrap: wrap; }

.timeline-section {
	width: 100%;
	padding: 120px 30px;
	background: linear-gradient(to bottom, rgba(37,99,168,0.05), rgba(37,99,168,0.1));
}

.timeline-section h3 {
	color: #2563a8;
	font-size: 1.6em;
	font-weight: 700;
	margin-bottom: 30px;
	padding-bottom: 10px;
	border-bottom: 3px solid #2563a8;
}

.timeline-item {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 20px;
	position: relative;
}

.timeline-item::before {
	content: '';
	position: absolute;
	left: 50px;
	top: 45px;
	bottom: -40px;
	width: 2px;
	background: #2563a8;
}

.timeline-item:last-child::before {
	display: none;
}

.timeline-badge {
	background: #2563a8;
	color: white;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 1em;
	flex-shrink: 0;
	z-index: 1;
}

.timeline-content {
	background: white;
	padding: 15px;
	border-radius: 8px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.1);
	flex: 1;
}

.timeline-content h4 {
	color: #2563a8;
	font-size: 1.05em;
	margin-bottom: 5px;
}

.timeline-content p {
	color: #666;
	font-size: 1em;
	line-height: 1.5;
}

.benefits-section {
	width: 100%;
	padding: 120px 30px;
	background: white;
}

.benefits-section .wrap { display: flex; flex-wrap: wrap; gap: 30px 2%; }

.benefits-section h3 {
	width: 100%;
	color: #2563a8;
	font-size: 1.6em;
	font-weight: 700;
	padding-bottom: 10px;
	border-bottom: 3px solid #2563a8;
}

.benefit-item {
	width: 49%;
	padding: 30px;
	background: #f4f4f4;
	border-radius: 0 8px 8px 0;
	border-left: 4px solid #2563a8;
}

.benefit-item h4 {
	color: #2563a8;
	font-size: 1.2em;
	margin-bottom: 20px;
	font-weight: 700;
}

.benefit-item h4 p { margin-top: 10px; margin-left: 30px; font-size: 0.85em; font-weight: 500; line-height: 1; }

.benefit-item p {
	color: #666;
	font-size: 1em;
	line-height: 1.7;
}
.benefit-item dl { margin-left: 30px; }
.benefit-item dl dd { position: relative; margin-bottom: 10px; padding-left: 20px; }
.benefit-item dl dd:last-child { margin-bottom: 0px; }
.benefit-item dl dd:after { content:''; position: absolute; left: 0px; top: 6px; width: 5px; height: 5px; border: 1px solid #2563a8; border-radius: 5px; }

.location-section {
    width: 100%;
    padding: 120px 30px;
	background: linear-gradient(to bottom, rgba(37, 99, 168, 0.05), rgba(37, 99, 168, 0.1));
}

.location-section h3 {
	width: 100%;
	margin-bottom: 30px;
	color: #2563a8;
	font-size: 1.6em;
	font-weight: 700;
	padding-bottom: 10px;
	border-bottom: 3px solid #2563a8;
}

.root_daum_roughmap_landing { max-width: 100% !important; }

@media (max-width: 768px) {
	.info-grid {
		grid-template-columns: 1fr;
	}

	.district-content,
	.industry-content,
	.bottom-section {
		grid-template-columns: 1fr;
	}

	.header h1 {
		font-size: 2em;
	}

	.header .subtitle {
		font-size: 18px;
	}
}

/* sub */
.sub_vis { position: relative; display: flex; flex-wrap: wrap; align-items: center; width: 100%; height: 550px; background: #222 url('../image/main/main_vis01.jpg') center center no-repeat; background-size: cover; }
.sub_vis h2 { color: #fff; font-family: 'Presentation'; font-size: 62px; font-weight: 200; text-shadow: 0 0 60px rgba(0, 0, 0, 0.5); letter-spacing: 0.03em; word-break: keep-all; }
.sub_vis h2 strong { font-weight: 800; }

.sub_contents { margin: 100px 0; }
.sub_title { text-align: center; }
.sub_title h2 { margin-bottom: 80px; font-size: 45px; }