/*0101.asp, 0102.asp, 0103.asp 통합 CSS*/

:root {
	--color-point: #00c6ac;
	--text-color-primary: #1a1a1a;
	--text-color-secondary: #707070;
	--border-light: #e0e0e0;
	--color-background-soft: #f7f7f7;
    --layout-max-width: 1200px;
    --content-inner-width: 1200px;
}

/* 1. 기본 컨테이너 (Wide Menu 구조의 최상위 래퍼) */
.sub_wrap {
    width: var(--layout-max-width);
	margin: 0 auto;
	padding: 40px 0;
    box-sizing: border-box;
    background-color: #ffffff;
}

/* 2. 페이지 헤더 영역 (제목 + Location) */
.page_header_section {
    border-bottom: 2px solid var(--border-light);
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-bottom: 15px;
}

.page_header_section .title_wrap {
    flex-grow: 1;
}

.page_header_section .title_wrap h1 {
	font-size: 40px;
	font-weight: 800;
	color: var(--text-color-primary);
	margin: 0;
}

.page_header_section .title_wrap .s_txt {
	display: block;
	font-size: 16px;
	font-weight: 500;
	color: var(--text-color-secondary);
	margin: 20px 0;
}

.location_path {
	font-size: 13px;
	color: #999;
    padding-bottom: 5px;
    white-space: nowrap;
    margin: 20px 0;
}
.location_path img { vertical-align: middle; }
.location_path .arr { color: #ccc; margin: 0 5px; }
.location_path .current {
    font-weight: 600;
    color: var(--color-point);
}


/* 3. 2차 메뉴 (sm5_menu) - Full Width Line Focus Tab */
.sm5_menu {
    list-style: none;
	padding: 0;
	display: flex;
	border-bottom: 1px solid var(--border-light);
    background-color: #ffffff;
}

.sm5_menu li {
	flex-grow: 1;
	text-align: center;
}

.sm5_menu li a {
	display: block;
	padding: 18px 10px;
	color: var(--text-color-primary);
	font-size: 20px;
	font-weight: 500;
    border-bottom: 3px solid transparent;
    transition: all 0.2s;
}

.sm5_menu li.nav_on a {
	background-color: transparent;
	color: var(--color-point);
	font-weight: 700;
    border-bottom: 3px solid var(--color-point);
}

.sm5_menu li a:hover {
    color: var(--color-point);
}
.sm5_menu li a span { display: none; }


/* 4. 3차 탭 메뉴 (tab3_menu) - 버튼형 중앙 정렬 */
.tab3_menu {
	list-style: none;
	padding: 0;
	display: flex;
	margin: 50px 0;
	border-bottom: none;
    justify-content: center;
}
.tab3_menu li {
	margin-right: 10px;
}
.tab3_menu li a {
	display: block;
	padding: 10px 20px;
	color: var(--text-color-secondary);
	font-size: 20px;
	font-weight: 500;
	border: 1px solid var(--border-light);
    border-radius: 5px;
    background-color: #ffffff;
    transition: all 0.2s;
}
.tab3_menu li a.on {
	color: #ffffff;
	font-weight: 700;
	border-color: var(--color-point);
	background-color: var(--color-point);
}
.tab3_menu li a:hover:not(.on) {
    border-color: var(--color-point);
    color: var(--color-point);
}

/* 5. 본문 컨텐츠 영역 */
.main_content_area {
    width: 100%;
}

.ceo_content_box {
    max-width: var(--content-inner-width);
    margin: 0 auto;
}

.ceo_content_box img {
    width: 100%;
    max-width: 1200px;
    height: auto;
    margin-bottom: 40px;
}

.ceo_txt {
	line-height: 1.8;
	font-size: 17px;
	color: var(--text-color-primary);
}
.ceo_txt p {
	margin-bottom: 25px;
}
.ceo_txt strong {
	font-size: 23px;
	font-weight: 700;
	color: var(--text-color-primary);
}

.ceo_signature {
    text-align: center;
}
.ceo_signature p { margin: 5px 30px; }
.ceo_signature .ceo_sign {
	vertical-align: middle;
	margin-left: 15px;
    width: 120px;
}

/* 6. 인재상/경영철학 영역 (.ceo_article_content) */
.ceo_article_content {
    max-width: 1200px;
    margin: 0 auto;
    line-height: 1.8;
    font-size: 17px;
    color: #333;
    display: flex;
    flex-direction: column;
}

/* 인재상 개별 아이템 (0103.asp) */
.txt_box2 {
	display: flex;
	justify-content: space-between;
}

.people1, .people2, .people3 {
	flex-basis: calc(33.333% - 8px);
	padding: 30px;
	box-sizing: border-box;
	text-align: center;
	border-radius: 8px;
	transition: transform 0.3s, box-shadow 0.3s;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	height: 446px;
}

.people1:hover, .people2:hover, .people3:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 15px rgba(0, 0, 0, 0.2);
}

.people1 {
	margin-right: 12px;
	background-image: url(/img/sub/comp/bg_010301.jpg);
}
.people2 {
	margin-right: 12px;
	background-image: url(/img/sub/comp/bg_010302.jpg);
}
.people3 {
	background-image: url(/img/sub/comp/bg_010303.jpg);
}

.txt_box2 h3 {
	font-size: 22px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 15px 0;
	line-height: 1.4;
    margin-top: 80px !important;
}

.txt_box2 h3 span {
	display: block;
	font-size: 14px;
	font-weight: 500;
	color: var(--color-point);
	margin-bottom: 5px;
}

.txt_box2 p {
	font-size: 15px;
	line-height: 1.6;
	color: #fff;
	margin: 0;
	padding: 0;
}

/* 경영철학 아이템 (0102.asp) */
.philosophy_item {
    margin-bottom: 50px;
    padding: 30px 15px;
    border: 1px solid var(--border-light);
    border-radius: 5px;
    position: relative;
    overflow: hidden;
    background-color: #fafafa;
}

.bg_philosophy_01 {
    background: url(/img/sub/comp/bg_010201.jpg) no-repeat center center;
    background-size: cover;
    height: 320px;
}

.bg_philosophy_02 {
    background: url(/img/sub/comp/bg_010202.jpg) no-repeat center center;
    background-size: cover;
    height: 320px;
}

.bg_philosophy_03 {
    background: url(/img/sub/comp/bg_010203.jpg) no-repeat center center;
    background-size: cover;
    height: 320px;
}

.text_overlay {
    position: relative;
    z-index: 2;
    color: #fff;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
	margin: 30px 40px;
	
}

.philosophy_item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    z-index: 1;
}

.philosophy_item .greeting_head,
.greeting_right {
    font-size: 24px;
    font-weight: 700;
    margin-top: 15px;
    margin-bottom: 20px;
    color: #ffffff;
    border-left: 4px solid #ffffff;
    padding-left: 10px;
}

.philosophy_item p {
    margin-bottom: 30px;
    color: #eee;
}

.philosophy_item p strong {
    font-weight: 700;
    color: #fff;
    display: block;
    margin-top: 20px;
    margin-bottom: 5px;
    font-size: 18px;
}



/* 7. 모바일 대응 */
@media (max-width: 768px) {
    .sub_wrap { 
        width: 100%; /* 모바일에서 100% 너비 사용 */
        padding: 0 15px 50px 15px; 
    }

    .page_header_section {
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 20px;
    }
    .page_header_section .location_path {
        margin: 20px 0;
    }
    .page_header_section .title_wrap h1 {
        font-size: 32px;
    }

    .sm5_menu {
        flex-wrap: nowrap;
        overflow-x: scroll;
        margin-bottom: 40px;
        background-color: #ffffff;
    }
    .sm5_menu li {
        flex-shrink: 0;
        min-width: 80px;
    }
    .sm5_menu li.nav_on a {
        border-bottom-width: 2px;
    }

    .ceo_txt { font-size: 16px; }

}


/*0201.asp*/

/* 4. 본문 컨텐츠 영역 (중앙 집중형) */
.main_content_area {
	width: 100%;
}


/* 5. 3차 메뉴 (tab3) - 디자인 변경 및 폰트 크기 키움 (버튼형) */
.tab3_menu {
	list-style: none;
	padding: 0;
	display: flex;
	margin-bottom: 50px;
	border-bottom: none; /* 하단선 제거 */
	justify-content: center;
}
.tab3_menu li {
	margin-right: 10px; /* 탭 간 간격 조정 */
}
.tab3_menu li a {
	display: block;
	padding: 10px 20px; /* 버튼처럼 보이게 패딩 조정 */
	color: var(--text-color-secondary);
	font-size: 20px;
	font-weight: 500;
	border: 1px solid var(--border-light); /* 버튼 테두리 */
	border-radius: 5px;
	background-color: #ffffff;
	transition: all 0.2s;
}
.tab3_menu li a.on {
	color: #ffffff; /* 활성 탭 폰트 색 흰색 */
	font-weight: 700;
	border-color: var(--color-point);
	background-color: var(--color-point); /* 활성 탭 배경색 포인트 컬러 */
}
.tab3_menu li a:hover:not(.on) {
	border-color: var(--color-point);
	color: var(--color-point);
}

/* 5-1. 연혁 페이지 전용 3차 메뉴 스타일 (버튼형이 아닌 타이틀형) */
.tab3_menu.history_info {
	justify-content: center;
	border-bottom: none;
	margin-bottom: 60px;
	display: block; /* li를 중앙 정렬하기 위해 block으로 변경 */
	text-align: center;
}
.tab3_menu.history_info li {
	margin-right: 0;
	display: inline-block; /* li를 인라인 블록으로 만들어 중앙 정렬 */
}
.tab3_menu.history_info li.no_bd {
	color: var(--text-color-primary);
	font-size: 18px;
	font-weight: 500;
	text-align: center;
	padding: 0 40px;
}
.tab3_menu.history_info li.no_bd span {
	display: block;
	font-size: 28px; /* SINCE 1995 폰트 키움 */
	font-weight: 800;
	color: var(--color-point);
	margin-bottom: 5px;
}


/* 6. 컨텐츠 박스 (연혁 페이지에서는 100% 폭 사용) */
.ceo_content_box {
	max-width: var(--layout-max-width); /* 연혁은 전체 폭(1200px) 사용 */
	margin: 0 auto;
	padding: 0 40px; /* 좌우 패딩 추가 */
}

/* 8. 연혁 (Timeline) 스타일 추가 */
.history_timeline {
	max-width: 900px; /* 타임라인 중앙 정렬 및 폭 제한 */
	margin: 0 auto;
	position: relative;
	padding: 0 0 50px 0;
}

/* 타임라인 중앙선 */
.history_timeline::before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	width: 2px;
	height: 100%;
	background: var(--border-light);
	transform: translateX(-50%);
}

.history_list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.history_item {
	position: relative;
	margin-bottom: 50px;
	width: 50%;
	padding: 0 30px;
	box-sizing: border-box;
}

/* 좌/우 배치 */
.history_item:nth-child(odd) {
	left: 0;
	text-align: right;
}
.history_item:nth-child(even) {
	left: 50%;
	text-align: left;
}

/* 타임라인 점 */
.history_item::after {
	content: '';
	position: absolute;
	top: 10px;
	width: 16px;
	height: 16px;
	background: #ffffff;
	border: 3px solid var(--color-point);
	border-radius: 50%;
	z-index: 10;
	transform: translateY(-50%);
}
.history_item:nth-child(odd)::after {
	right: -11px; /* 중앙선에 붙이기 */
}
.history_item:nth-child(even)::after {
	left: -11px; /* 중앙선에 붙이기 */
}

.history_date {
	font-size: 24px;
	font-weight: 800;
	color: var(--color-point);
	margin-bottom: 5px;
	display: block;
}

.history_text {
	font-size: 16px;
	line-height: 1.6;
	color: var(--text-color-primary);
}

.history_detail {
	display: block;
	margin-top: 5px;
	font-size: 14px;
	color: var(--text-color-secondary);
}


/* 7. 모바일 대응 */
@media (max-width: 768px) {
	.sub_wrap { padding: 0 15px 50px 15px; }

	.page_header_section {
		flex-direction: column;
		align-items: flex-start;
	}
	.page_header_section .location_path {
		margin-top: 10px;
	}
	.page_header_section .title_wrap h1 {
		font-size: 32px;
	}

	.sm5_menu {
		flex-wrap: nowrap;
		overflow-x: scroll;
		margin-bottom: 40px;
		background-color: #ffffff;
	}
	.sm5_menu li {
		flex-shrink: 0;
		min-width: 80px;
	}
	.sm5_menu li.nav_on a {
		border-bottom-width: 2px;
	}

	/* 모바일 연혁 대응 (단일 컬럼) */
	.history_timeline::before {
		left: 20px; /* 중앙선을 왼쪽으로 이동 */
	}

	.history_item {
		width: 100%;
		left: 0 !important;
		padding-left: 50px; /* 텍스트 시작점 조정 */
		padding-right: 15px; /* 오른쪽 여백 확보 */
		text-align: left !important;
	}
	
	.history_item::after {
		left: 20px;
		transform: translate(-50%, -50%);
	}
	.history_item:nth-child(odd)::after {
		right: auto;
	}
	.history_item:nth-child(even)::after {
		left: 20px;
	}
	
	.history_date { font-size: 20px; }
	.ceo_content_box { padding: 0 15px; } /* 모바일 패딩 조정 */
}

/*0301.asp*/

/* 5-1. 조직도 페이지 전용 3차 메뉴 스타일 (타이틀형) */
.tab3_menu.org_info { /* 조직도 전용 클래스 추가 */
	justify-content: center;
	border-bottom: none;
	margin-bottom: 60px;
	display: block;
	text-align: center;
}
.tab3_menu.org_info li {
	margin-right: 0;
	display: inline-block;
}
.tab3_menu.org_info li.no_bd {
	color: var(--text-color-primary);
	font-size: 18px;
	font-weight: 500;
	text-align: center;
	padding: 0 40px;
}
.tab3_menu.org_info li.no_bd span {
	display: block;
	font-size: 28px; 
	font-weight: 800;
	color: var(--color-point);
	margin-bottom: 5px;
}


/* 6. 컨텐츠 박스 (조직도는 중앙에 이미지 배치) */
.ceo_content_box {
	max-width: var(--layout-max-width);
	margin: 0 auto;
	padding: 0 40px; 
}
.org_chart_wrap {
	text-align: center;
	margin-top: 50px;
	padding-bottom: 50px;
}
.org_chart_wrap img {
	max-width: 100%;
	height: auto;
}


/* 7. 모바일 대응 */
@media (max-width: 768px) {
	.sub_wrap { padding: 0 15px 50px 15px; }

	.page_header_section {
		flex-direction: column;
		align-items: flex-start;
		margin-bottom: 20px;
	}
	.page_header_section .location_path {
		margin-top: 10px;
	}
	.page_header_section .title_wrap h1 {
		font-size: 32px;
	}

	.sm5_menu {
		flex-wrap: nowrap;
		overflow-x: scroll;
		margin-bottom: 40px;
		background-color: #ffffff;
	}
	.sm5_menu li {
		flex-shrink: 0;
		min-width: 80px;
	}
	.sm5_menu li.nav_on a {
		border-bottom-width: 2px;
	}
	.ceo_content_box { padding: 0 15px; } /* 모바일 패딩 조정 */
}

/*0401~2.asp*/

/* 4. 본문 컨텐츠 영역 (중앙 집중형) */
.main_content_area {
	width: 100%;
}


/* 5. 3차 메뉴 (tab3) - 디자인 변경 및 폰트 크기 키움 (버튼형) */
.tab3_menu { /* tab3 클래스명을 tab3_menu로 통일 */
	list-style: none;
	padding: 0;
	display: flex;
	margin-bottom: 40px;
	border-bottom: none; /* 하단선 제거 */
	justify-content: center;
	flex-wrap: wrap; /* 모바일 대응 */
}
.tab3_menu li {
	margin: 5px 5px; /* 탭 간격 조정 및 모바일에서 줄 바꿈 대비 */
}
.tab3_menu li a {
	display: block;
	padding: 10px 20px; /* 버튼처럼 보이게 패딩 조정 */
	color: var(--text-color-secondary);
	font-size: 18px; /* 폰트 사이즈 조정 */
	font-weight: 500;
	border: 1px solid var(--border-light); /* 버튼 테두리 */
	border-radius: 5px;
	background-color: #ffffff;
	transition: all 0.2s;
	white-space: nowrap;
}
.tab3_menu li a.on {
	color: #ffffff; /* 활성 탭 폰트 색 흰색 */
	font-weight: 700;
	border-color: var(--color-point);
	background-color: var(--color-point); /* 활성 탭 배경색 포인트 컬러 */
}
.tab3_menu li a:hover:not(.on) {
	border-color: var(--color-point);
	color: var(--color-point);
}


/* 6. 컨텐츠 박스 */
.ceo_content_box { /* 장비현황에서는 100% 폭과 패딩 사용 */
	max-width: var(--layout-max-width);
	margin: 0 auto;
	padding: 0 40px; 
}


/* --- 장비현황 (Equipment) 스타일 --- */

/* 기계 그룹 타이틀 */
.machine-group-title {
	font-size: 28px; /* 제목 폰트 크기 키움 */
	font-weight: 700; /* 제목 폰트 굵기 조절 */
	margin:0 0 40px 0;
	color: var(--text-color-primary);
	text-align: center;
	letter-spacing: -0.5px; 
}
.machine-group-title:first-of-type {
	margin-top: 0;
}

/* 머신 컨테이너 */
.machine-container {
	padding: 0; /* 내부 패딩 제거 (외부 ceo_content_box 사용) */
	max-width: 1120px; /* 컨테이너 최대 폭 조정 */
	margin: 0 auto;
}

.machine-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 20px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.machine-item {
	background-color: #fff;
	border-radius: 8px;
	overflow: hidden;
	cursor: pointer; /* 클릭 가능 표시 */
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
}

.machine-item:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
}

.machine-item img {
	width: 100%;
	height: 200px;
	object-fit: cover;
	display: block;
}

.machine-info {
	padding: 20px 15px; 
	text-align: center;
	flex-grow: 1; 
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.machine-info h4 {
	margin: 0 0 5px 0;
	font-size: 18px;
	font-weight: 700;
	color: var(--color-point); /* 포인트 컬러로 강조 */
	line-height: 1.4;
}

.machine-info p {
	margin: 0;
	font-size: 15px;
	color: var(--text-color-secondary);
	line-height: 1.5;
}

.machine-info span {
	display: block;
	font-weight: 600; 
	color: var(--text-color-primary);
	margin-top: 8px; 
	font-size: 16px; 
}

hr {
	border: 0;
	border-top: 1px solid var(--border-light);
	margin: 60px 0;
}

/* --- 모달 (Modal) 스타일 --- */
#machineModal {
	display: none; /* JS에서 'flex'로 제어 */
	position: fixed;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background-color: rgba(0, 0, 0, 0.8);
	backdrop-filter: blur(5px); /* 배경 흐림을 조금 줄임 */
	-webkit-backdrop-filter: blur(5px);
	justify-content: center;
	align-items: center;
	padding: 20px;
}

.modal-content {
	display: flex;
	flex-direction: column;
	background-color: #fff;
	max-width: 600px; /* 모달 최대 폭 지정 */
	padding: 30px;
	border-radius: 12px;
	position: relative;
	width: 90%; /* 모바일 대응 */
	text-align: center;
	animation: fadeIn 0.3s ease-out;
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.25);
}

.close-btn {
	text-align: right;
	margin-bottom: 10px;
}
.close {
	color: #aaa;
	font-size: 30px;
	font-weight: bold;
	cursor: pointer;
	line-height: 1;
	transition: color 0.2s;
	display: inline-block;
}
.close:hover,
.close:focus {
	color: var(--color-point);
	text-decoration: none;
}

.modal-content img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
	margin: 0 auto 20px auto; /* 이미지 중앙 정렬 */
	display: block;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.modal-text {
	text-align: center;
	padding: 0 10px;
}

.modal-text h3 {
	font-size: 24px;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 15px;
	color: var(--color-point);
	line-height: 1.3;
	word-break: break-word;
}

.modal-text p {
	font-size: 20px;
	color: var(--text-color-primary);
	line-height: 1.7;
	margin-bottom: 0;
	word-break: break-word;
}

@keyframes fadeIn {
	from { opacity: 0; transform: translateY(-20px); }
	to { opacity: 1; transform: translateY(0); }
}

/* 7. 모바일 대응 */
@media (max-width: 768px) {
	.sub_wrap { padding: 0 15px 50px 15px; }

	.page_header_section {
		flex-direction: column;
		align-items: flex-start;
		margin-bottom: 20px;
	}
	.page_header_section .location_path {
		margin-top: 10px;
	}
	.page_header_section .title_wrap h1 {
		font-size: 32px;
	}

	.sm5_menu {
		flex-wrap: nowrap;
		overflow-x: scroll;
		margin-bottom: 40px;
		background-color: #ffffff;
	}
	.sm5_menu li {
		flex-shrink: 0;
		min-width: 80px;
	}
	.sm5_menu li.nav_on a {
		border-bottom-width: 2px;
	}

	.ceo_content_box { padding: 0 15px; } /* 모바일 패딩 조정 */

	.machine-list {
		grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); /* 모바일에서 최소 크기 조정 */
	}

	.modal-content {
		padding: 20px;
	}
}


/*0501~2.asp*/

/* 4. 본문 컨텐츠 영역 (중앙 집중형) */
.main_content_area {
	width: 100%;
}


/* 5. 3차 메뉴 (tab3) - 디자인 변경 및 폰트 크기 키움 (버튼형) */
.tab3_menu { /* tab3 클래스명을 tab3_menu로 통일 */
	list-style: none;
	padding: 0;
	display: flex;
	margin-bottom: 40px;
	border-bottom: none; /* 하단선 제거 */
	justify-content: center;
	flex-wrap: wrap; /* 모바일 대응 */
}
.tab3_menu li {
	margin: 5px 5px; /* 탭 간격 조정 및 모바일에서 줄 바꿈 대비 */
}
.tab3_menu li a {
	display: block;
	padding: 10px 20px; /* 버튼처럼 보이게 패딩 조정 */
	color: var(--text-color-secondary);
	font-size: 18px; /* 폰트 사이즈 조정 */
	font-weight: 500;
	border: 1px solid var(--border-light); /* 버튼 테두리 */
	border-radius: 5px;
	background-color: #ffffff;
	transition: all 0.2s;
	white-space: nowrap;
}
.tab3_menu li a.on {
	color: #ffffff; /* 활성 탭 폰트 색 흰색 */
	font-weight: 700;
	border-color: var(--color-point);
	background-color: var(--color-point); /* 활성 탭 배경색 포인트 컬러 */
}
.tab3_menu li a:hover:not(.on) {
	border-color: var(--color-point);
	color: var(--color-point);
}


/* 6. 컨텐츠 박스 */
.ceo_content_box { /* 장비현황에서는 100% 폭과 패딩 사용 */
	max-width: var(--layout-max-width);
	margin: 0 auto;
}


/* --- 오시는길 (Directions) 스타일 - 극도 미니멀리즘 UI --- */

/* 회사 전경 이미지 */
.Map_nonom {
	text-align: center;
	margin-bottom: 60px; /* 상하 간격 확보 */
	border: none;
	padding: 0;
}
.Map_nonom img {
	max-width: 100%;
    width: 1200px;
	height: auto;
	display: block;
	margin: 0 auto 15px auto;
	border-radius: 6px; /* 모서리를 약간만 둥글게 */
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); /* 아주 연한 그림자로만 테두리 느낌 */
	transition: box-shadow 0.3s;
}
.Map_nonom img:hover {
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
}
.Map_nonom p {
	font-size: 18px;
	color: var(--text-color-secondary);
	margin: 20px 0;
	font-weight: 400; /* 일반 폰트 굵기 */
}

/* 지도와 정보 섹션 컨테이너 */
.Map_info {
	margin-bottom: 60px; /* 하단 간격 확보 */
	padding: 0; /* 배경색 제거 및 패딩 제거 */
	background-color: transparent; /* 배경색 투명 */
	border-radius: 0;
}

/* 지도 영역 */
.Map_info .map {
	margin-bottom: 50px; /* 마진 증가 */
	border: 1px solid var(--border-light); /* 연한 테두리만 다시 추가하여 영역 구분 */
	border-radius: 6px;
	overflow: hidden;
	box-shadow: none; /* 그림자 제거 */
}

/* 다음 지도 컨테이너 */
.root_daum_roughmap {
	width: 100% !important;?
	height: 420px; /* 지도 높이 약간 더 키움 */
}

/* 주소 정보 영역 - 미니멀리즘 강화 */
.Map_info .add {
	padding: 25px 0 5px 0; /* 상단 패딩으로 지도와 분리 */
	border: none;
	border-top: 2px solid var(--border-light); /* 상단에 굵은 연한 구분선 */
}
.Map_info .add p {
	font-size: 18px;
	line-height: 1.6;
	margin: 0 0 20px 0;
	color: var(--text-color-primary);
	display: flex;
	align-items: center; 
}
.Map_info .add p:last-child {
	margin-bottom: 0;
}
.Map_info .add p span {
	font-weight: 700; /* 라벨 볼드 처리 */
	font-size: 18px;
	display: inline-block;
	width: 110px; /* 라벨 너비 조정 */
	color: var(--text-color-primary); /* 라벨 색상은 기본 텍스트 색상 */
	flex-shrink: 0;
}


/* 7. 모바일 대응 */
@media (max-width: 768px) {
	
	.Map_info {
		padding: 0;
	}
	.root_daum_roughmap {
		height: 300px; /* 모바일에서 지도 높이 조정 */
	}
	.Map_info .add {
		padding: 20px 0 5px 0;
	}
	.Map_info .add p {
		font-size: 16px;
		margin-bottom: 15px;
	}
	.Map_info .add p span {
		width: 90px; /* 모바일에서 라벨 너비 조정 */
	}
}

/* 7. 모바일 대응 */
@media (max-width: 768px) {
	.root_daum_roughmap {
		height: 250px; /* 모바일에서 지도 높이 조정 */
	}
	.Map_info .add p {
		font-size: 16px;
	}
	.Map_info .add p span {
		width: 100px; /* 모바일에서 라벨 너비 조정 */
	}
	.Map_info .add p span::before {
		font-size: 18px;
	}
}