@media screen and (max-width: 1280px) {
	
	.wrap { width: 96%; margin: 0 auto; }

	/* popup */
	.hd_pops { left: 2% !important; top: 80px !important; }	
	.hd_pops { left: 2% !important; max-width: 96%; height: auto; }
	.hd_pops_con { max-width: 100% !important; width: auto !important; height: auto !important; }
	.hd_pops_con a { display: inline-block; }

	/* main */
	.main_text > img { width: 70%; }
	.main_con01_info { width: 100%; }

	/* sub */
	.companyinfo_list01 li { width: 100%; }

}

@media screen and (max-width: 1050px) {
	
	/* footer */
	.footer_logo img { height: 40px; }

}

@media screen and (max-width: 1024px) {
	
	/* head */
	.head .wrap { height: 70px; }
	.head .logo { top: 15px; }
	.logo img { height: 40px; }
	.menu, .hd-menu { display: none; }

	nav.mobile_menu { position: fixed; top: -100vh; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; width: 100%; height: 100vh; z-index: 999; background: rgba(0, 0, 0, 0.95); border-bottom-right-radius: 100%; border-bottom-left-radius: 100%; transition: all 650ms cubic-bezier(1,0,0,1); }
	nav.mobile_menu.open { top: 0; padding: 80px 80px; border-radius: initial; }

	.menu-toggler { position: fixed; top: 25px; right: 2%; z-index: 9999; width: 32px; height: 20px; display: flex; flex-direction: column; justify-content: space-between; transition: all 650ms ease-out; cursor: pointer; }
	.menu-toggler.open { transform: rotate(-45deg); }

	.bar { background-color: #22282d; width: 100%; height: 2px; border-radius: 0.8rem; }
	.open .bar { background-color: #fff; }
	.bar.half { width: 100%; }
	.bar.top { transform-origin: right; transition: transform 650ms cubic-bezier(0.54, -0.81, 0.57, 0.57); }
	.open .bar.top { width: 50%; transform: rotate(-450deg) translateX(0.45rem); }
	.bar.bottom { align-self: flex-end; transform-origin: left; transition: transform 650ms cubic-bezier(0.54, -0.81, 0.57, 0.57); }
	.open .bar.bottom { width: 50%; transform: rotate(-450deg) translateX(-0.45rem); }
	
	.nav-inner { display: flex; width: 100%; flex-wrap: wrap; justify-content: space-between; align-items: center; }
	.nav-list { display: flex; justify-content: center; align-items: flex-start; flex-direction: column; width: 100%; height: 100%; }
	.nav-list li { margin-bottom: 30px; width: 100%; text-align: center; }
	.nav-list li:last-child { margin-bottom: 0px; }
	.nav-list li a { position: relative; color: #fff; font-size: 1.3em; font-weight: 600; }

	.nav-inner ul ul { display: none; float: left; width: 100%; margin-top: 30px; }
	.nav-inner ul ul li { float: left; width: 100%; margin-bottom:0px; }
	.nav-inner ul ul li a { display: inline-block; padding: 0px; color: rgba(255, 255, 255, 0.7); font-size: 1.1em; font-weight: 300; line-height: 1.8; text-decoration: none; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -o-transition: all 0.5s; -ms-transition: all 0.5s; transition: all 0.5s; }
	.nav-inner ul ul li a:hover { color: rgba(255, 255, 255, 1); }
	.nav-inner ul ul li a:before { display: none; height: 1px; }

	/* footer */
	.footer { padding: 50px 0; }
	.footer_logo { text-align: center; width: 100%; margin-bottom: 30px; }
	.footer_info { text-align: center; width: 100%; font-size: 1em; }

	/* main */
	.main_vis { height: 90vh; margin-top: 70px; }
	.main_text > img { max-width: 80%; }

	.main_con { padding: 60px 0; }
	.main_con h2 span { font-size: 15px; }
	.main_con h2 { text-align: center; font-size: 45px; }
	
	.main_con01_logolist li { text-align: center; }
	.main_con01_logolist dl { justify-content: center; gap: 15px; }

	.main_con02 { padding: 120px 0; }
	.main_con02:before { bottom: -70px; font-size: 442px; line-height: 1; }
	.main_con02 span.stitle { font-size: 20px; }
	.main_con02 h3 { font-size: 48px; }
	.main_con02_more { width: 230px; height: 65px; font-size: 20px; }
	.main_con02_more i { font-size: 20px; }

	/* sub */
	.sub_vis { height: 400px; }
	.sub_text img { max-width: 65%; }

	.sub_contents { margin-bottom: 60px; }
	.sub_title h2 { font-size: 55px; }
	
	.sub_contents h3 { font-size: 25px; }

	.post_imgbox { text-align: center; width: 100%; margin-bottom: 30px; }
	.post_infobox { width: 100%; padding-left: 0px; }
	.post_infolist li dl { justify-content: center; }
	.post_infolist li dl dd { justify-content: center; text-align: center; font-size: 18px; }

}

@media screen and (max-width: 768px) {
	
	body { font-size: 15px; }
	
	/* footer */
	.footer_info span { display: block; width: 100%; }
	.footer_info span.line { margin-right: 0; padding-right: 0; }
	.footer_info span.line:after { display: none; }

	/* main */
	.main_btnbox { gap: 0 2%; width: 100%; }
	.main_btn01 { width: 49%; height: 70px; font-size: 22px; }

	.main_con h2 { margin-bottom: 30px; }

	.main_con02 h3 { margin-bottom: 50px; font-size: 42px; line-height: 1.4; }

	/* sub */
	.sub_vis { height: 300px; margin-bottom: 50px; }
	.sub_text { margin-top: 50px; }
	
	.sub_title { margin-bottom: 30px; }
	.sub_title p { margin-top: 10px; font-size: 13px; }

	#sub_page { font-size: 1.1em; }
	.sub_contents h4 { font-size: 18px; }
	.sub_contents h5 { font-size: 16px; }
	
	.table_resp { overflow-x: scroll; }
	
	.step_list01 { margin-bottom: 30px; gap: 20px 2%; }
	.step_list01 li { flex: none; width: 49%; }
	.step_list01 li:nth-child(2n+1) { margin-left: 0; }
	
	.people_list { gap: 0 2%; }
	.people_list li { width: 32%; padding-bottom: 20px; }
	.people_list li .imgbox { margin-bottom: 20px; }

	.program_list li { width: 49%; margin-left: 2%; }
	.program_list li:nth-child(3n+1) { margin-left: 2%; }
	.program_list li:nth-child(2n+1) { margin-left: 0%; }
	.program_list li .textbox { padding: 30px 10px; }
	.program_list li .textbox h4 { font-size: 1.15em; }

	.policy_list01 li .imgbox { width: 180px; }
	.policy_list01 li dl { width: calc(100% - 180px); padding-left: 30px; }
	.policy_list01 li dl dd strong { width: 70px; }
	.policy_list01 li dl dd p { width: calc(100% - 70px); padding-left: 15px; }

	.companyinfo_list01 li .imgbox { width: 180px; }
	.companyinfo_list01 li dl { width: calc(100% - 180px); padding: 0 20px; }
	.companyinfo_list01 li dl dd p { padding-left: 15px; }

}

@media screen and (max-width: 575px) {
	
	/* main */
	.main_vis { height: 60vh; }

	.main_btn01 { height: 60px; font-size: 20px; }
	.main_btn01 img { width: 14px; }
	
	.main_con02 { padding: 100px 0; }
	.main_con02 span.stitle { margin-bottom: 20px; font-size: 16px; }
	.main_con02 h3 { font-size: 32px; }

	/* sub */
	.sub_vis { height: 250px; }
	
	.sub_title h2 { font-size: 42px; }
	
	.sub_contents h3 { font-size: 20px; }

	.policy_list01 li .imgbox { text-align: center; width: 100%; margin-bottom: 20px; }
	.policy_list01 li dl { width: 100%; padding-left: 0px; }
	
	.companyinfo_list01 li .imgbox { text-align: center; width: 100%; margin-bottom: 20px; }
	.companyinfo_list01 li dl { width: 100%; padding: 0px; }

}

@media screen and (max-width: 500px) {
	
	/* main */
	.main_btnbox { gap: 10px 0; }
	.main_btn01 { width: 100%; }

}

@media screen and (max-width: 480px) {
	
	body { font-size: 14px; }

	/* head */
	.head .logo { top: 25px; }
	.logo img { height: 30px; }

	/* main */
	.main_con { padding: 50px 0; }
	
	.main_con02 { padding: 100px 0; }
	.main_con02:before { bottom: -40px; font-size: 222px; line-height: 1; }

	/* sub */
	.sub_vis { height: 200px; margin-bottom: 30px; }
	.sub_contents { margin-bottom: 60px; }
	
	.sub_page_inr { margin-bottom: 50px; }
	.sub_page_lastinr { margin-bottom: 0px; }

	.sub_contents h5 { font-size: 15px; }
	
	.information .main_con01_info { margin-bottom: 30px; }
	.root_daum_roughmap .wrap_map { height: 300px !important; }

	
}

@media screen and (max-width: 430px) {
	
	body { font-size: 13px; }

	/* footer */
	.footer_logo img { height: 35px; }

	/* main */
	.main_con h2 span { font-size: 14px; }
	.main_con h2 { font-size: 36px; }

	.main_con02 h3 { margin-bottom: 30px; font-size: 28px; }
	.main_con02_more { width: 200px; height: 60px; border-radius: 5px; font-size: 17px; }
	.main_con02_more i { font-size: 18px; }

	/* sub */
	.sub_title h2 { font-size: 35px; }
	
}

@media screen and (max-width: 375px) {
	
	/* sub */
	.people_list li { width: 100%; margin-bottom: 20px; }
	.people_list li:last-child { margin-bottom: 0px; }

	.program_list li { width: 100%; margin-left: 0%; }
	
}