@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;600;700;800&family=Poppins:wght@100;200;300;400;500;600;700;800;900&display=swap');
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.6/dist/web/static/pretendard.css");

* {
	font-family:'Montserrat', 'Pretendard';}

::selection {
	color:#0e7fd5;}

::-webkit-scrollbar {
	width:6px;
	height:6px;
	background:#fff;}

::-webkit-scrollbar-thumb {
	background:#0e7fd5;}

a {
	color:#000;
	text-decoration:none;}

input, textarea {
	outline:none;
	-moz-user-select:auto !important;
	-webkit-user-select:auto !important;
	-ms-user-select:auto !important;
	user-select:auto !important;}

header ul,
#main ul,
footer ul {
	list-style:none;
	margin:0;
	padding:0;}

body, html {
	max-width:100%;
	overflow-x:hidden;
	margin:0;
	padding:0;}

#cosmo {
	width:100%;}

header {
	width:100%;
	height:860px;
	background:url(slide.jpg) no-repeat;
	background-position:center top;}

header .inner {
	width:90%;
	margin:0 auto;
	padding:60px 0;
	display:flex;
	align-items:center;}

header .logo {
	flex:1;
	max-width:155px;}

header .logo img {
	height:30px;}

header .menu {
	max-width:830px;
	text-align:center;
	margin-left:40px;}

header .menu li {
	display:inline-block;
	margin-right:28px;}

header .menu li a {
	color:#fff;
	font-size:18px;
	font-weight:500;
	position:relative;}

header .menu li a:after {
	content:'';
	width:0;
	height:2px;
	background:#fff;
	position:absolute;
	left:50%;
	transform:translateX(-50%);
	bottom:-8px;
	display:block;
	transition:all 0.3s ease;}

header .menu li a:hover,
header .menu li a.active {
	color:#0e7fd5;
	transition:all 0.3s ease;}

header .menu li a:hover:after,
header .menu li a.active:after {
	width:100%;
	left:0;
	transform:translateX(0);}

header .link {
	flex:1;
	text-align:right;}

header .link a {
	font-size:12px;
	font-weight:500;
	color:#fff;}

header .link a:first-child {
	margin-right:12px;}

header .link img {
	width:14px;
	position:relative;
	top:2px;
	left:-4px;}

header .link a:first-child:after {
	content:'';
	width:1px;
	height:10px;
	background:rgba(255,255,255,0.4);
	display:inline-block;
	margin-left:12px;}

header .link a:first-child i {
	font-size:16px;
	position:relative;
	top:2px;
	left:-4px;}

header .link a:nth-child(2) i {
	margin-left:6px;
	font-size:10px;}

header .login {
	margin-left:12px;
	margin-right:0 !important;
	background:#0e7fd5;
	padding:10px 18px;
	border-radius:50px;}

header .login i {
	padding-right:12px;
	opacity:0.5;}

header .login:after {
	display:none !important;}

header .logout,
header .admin {
	color:#fff !important;
	margin-left:4px;
	background:#0e7fd5;
	padding:10px 18px;
	border-radius:50px;}

header .xe-widget-wrapper {
	overflow:visible !important;
	display:inline-block !important;}

.slide {
	width:90%;
	margin:180px auto 0;
	position:relative;
	color:#fff;}

.slide .text {
	opacity:0;
	font-size:64px;
	font-weight:900;
	line-height:70px;
	margin-bottom:20px;
	position:relative;
	animation:down 1.3s ease forwards;}

.slide span {
	opacity:0;
	font-size:20px;
	font-weight:500;
	line-height:30px;
	position:relative;
	animation:down2 1.3s 0.5s ease forwards;}

.slide .page {
	margin-top:100px;
	position:relative;}

.slide .page div {
	width:12px;
	height:12px;
	border-radius:50%;
	background:#fff;
	opacity:0.3;
	margin-right:14px;
	display:inline-block;
	position:relative;}

.slide .page div.active {
	opacity:1;}

.slide .page div:after {
	content:'';
	width:20px;
	height:20px;
	border-radius:50%;
	border:solid #fff 2px;
	display:block;
	position:absolute;
	top:-6px;
	left:-6px;
	opacity:0;
	transition:all 0.3s ease;}

.slide .page div.active:after {
	opacity:1;}

@keyframes down {
	0% {top:-50px; opacity:0;}
	100% {top:0px; opacity:1;}
}

@keyframes down2 {
	0% {top:-50px; opacity:0;}
	100% {top:0px; opacity:0.6;}
}

/*메인*/
#main {
	width:100%;}

header *,
#main *,
footer * {
	letter-spacing:-0.5px;}

/*인포*/
#main .info {
	background:#0e7fd5;
	padding:80px 0;}

#main .info .title {
	text-align:center;
	color:#fff;
	font-size:32px;
	font-weight:600;
	margin-bottom:60px;}

#main .info .title span {
	font-size:16px;
	opacity:0.3;
	display:block;
	margin-bottom:20px;}

#main .info .wrap {
	max-width:1300px;
	margin:0 auto;
	display:grid;
	grid-template-columns:1fr 1fr 1fr 1fr;
	gap:20px;}

#main .info .wrap .box {
	padding:50px 55px 40px;
	background:#003863;
	box-sizing:border-box;
	position:relative;}

#main .info .i_wrap {
	display:flex;
	justify-content:space-between;}

#main .info .i_wrap .icon {
	opacity:0.3;
	transition:all 0.3s ease;}

#main .info .i_wrap span {
	font-size:16px;
	color:#0e7fd5;
	font-weight:600;}

#main .info .con {
	margin-top:20px;
	font-size:24px;
	font-weight:700;
	color:#fff;}

#main .info .con span {
	display:block;
	margin-top:10px;
	color:#fff !important;
	opacity:0.4;
	font-size:16px;
	font-weight:300;}

#main .info .wrap .box:hover .icon {
	opacity:1;}

/*뉴스*/
#main .news {
	max-width:1300px;
	margin:0 auto;
	padding:60px 0;}

#main .news .t_wrap {
	display:flex;
	justify-content:space-between;}

#main .news .title {
	text-align:left;
	font-size:32px;
	font-weight:600;
	display:flex;
	align-items:center;
	margin-bottom:50px;}

#main .news .title span {
	font-size:16px;
	font-weight:400;
	opacity:0.4;
	margin-left:14px;}

#main .news .wrap {
	width:1700px;
	display:grid;
	grid-template-columns:1fr 1fr 1fr 1fr;
	gap:40px;}

#main .news .wrap .box {
	height:230px;
	border:solid #e5e5e5 1px;
	padding:20px 40px 30px;
	box-sizing:border-box;
	position:relative;}

#main .news .wrap .box h1 {
	font-size:20px;
	font-weight:600;
	line-height:140%;
	text-align:justify;
	letter-spacing:-1px !important;}

#main .news .date {
	font-size:14px;
	color:#0e7fd5;
	font-weight:500;
	position:absolute;
	left:40px;
	bottom:40px;}

#main .news .more {
	font-size:14px;
	opacity:0.5;
	position:absolute;
	right:40px;
	bottom:40px;}

#main .news .page {
	text-align:right;}

#main .news .page i {
	font-size:22px;
	margin-left:16px;
	color:#ccc;}

#main .news .page i:last-child {
	color:#0e7fd5;}

#main .recruit {
	width:100%;
	padding:100px 0;
	background:url(recruit.jpg) no-repeat;
	background-position:center bottom;
	background-attachment:fixed;
	text-align:center;
	font-size:40px;
	font-weight:500;
	color:#fff;
	letter-spacing:-2px;}

#main .recruit span {
	display:block;
	font-size:20px;
	color:#0e7fd5;
	margin-bottom:18px;}

#main .recruit div {
	margin-top:18px;}

#main .recruit a {
	color:#fff;
	font-weight:400;
	font-size:16px;
	padding:10px 24px;
	border-radius:100px;
	border:solid #fff 2px;
	box-sizing:border-box;
	transition:all 0.3s ease;}

#main .recruit a i {
	padding-left:15px;
	font-size:14px;
	transition:all 0.3s ease;}

#main .recruit a:hover {
	background:#fff;
	color:#0e7fd5;
	font-weight:600;}

#main .recruit a:hover i {
	padding-left:5px;}

/*푸터*/
footer {
	background:#222;
	color:#fff;}

footer .inner {
	max-width:1300px;
	margin:0 auto;
	position:relative;}

footer .set {
	padding:40px 0 30px;}

footer .set li {
	display:inline-block;
	font-size:16px;
	margin-right:24px;}

footer .set li:nth-child(3) {
	color:#0e7fd5;}

footer .set2 li {
	display:inline-block;
	font-size:14px;
	font-weight:300;
	margin-right:14px;}

footer .set2 li:after {
	content:'';
	width:1px;
	height:10px;
	background:rgba(255,255,255,0.3);
	display:inline-block;
	margin-left:14px;}

footer .set2 li:last-child:after,
.toggle {
	display:none;}

footer .copy {
	padding:10px 0 60px;
	font-size:12px;
	opacity:0.5;}

footer a {
	color:#fff;}

footer .top {
	position:absolute;
	top:40px;
	right:0;
	font-size:16px;}

footer .top i {
	display:block;
	font-size:14px;
	margin-bottom:2px;
	color:#0e7fd5;}

footer .top a {
	text-align:center;}

.mob {
	display:none;}

@media screen and (min-width:1301px) and (max-width:1600px) {
header .inner {
	width:94%;
	padding:50px 0;}

header .logo {
	max-width:130px;}

header .logo img {
	height:25px;}

header .menu {
	margin-left:30px;}

header .menu li {
	margin-right:22px;}

header .menu li a {
	font-size:16px;}
}

@media screen and (min-width:1081px) and (max-width:1300px) {
header .inner {
	width:94%;
	padding:40px 0;}

header .logo {
	max-width:110px;}

header .logo img {
	height:22px;}

header .menu {
	margin-left:18px;}

header .menu li {
	margin-right:16px;}

header .menu li a {
	font-size:15px;}

header .link > a:first-child {
	display:none;}

header .link a:first-child:after {
	margin-left:6px;}

header .link a:nth-child(2) i {
	margin-left:6px;}

/*인포*/
#main .info .title span {
	font-size:14px;
	margin-bottom:15px;}

#main .info .wrap {
	width:90%;}

#main .info .wrap .box {
	padding:30px;}

#main .info .i_wrap .icon img {
	width:60px;}

/*뉴스*/
#main .news {
	width:90%;}

#main .news .wrap {
	width:1450px;
	gap:30px;}

/*푸터*/
footer .inner {
	width:90%;}
}

@media screen and (max-width:1080px){
html.open {
	overflow:hidden;}

header {
	height:560px;
	background-size:1360px;}

header .inner {
	width:90%;
	padding:30px 0;}

header .logo {
	max-width:155px;}

header .logo img {
	height:20px;}

header .link2 {
	display:flex;
	justify-content:space-between;
	align-items:center;
	border-bottom:solid #dfdfdf 1px;
	padding:15px 25px;}

header .link2 a {
	font-size:11px;
	font-weight:500;}

header .link2 a:first-child i {
	font-size:10px;
	position:relative;
	margin-left:3px;}

header .login {
	color:#fff;
	background:#0e7fd5;
	padding:8px 14px;
	border-radius:50px;}

header .login i {
	padding-right:12px;
	opacity:0.5;}

header .logout {
	color:#fff;
	background:#0e7fd5;
	padding:8px 14px;
	border-radius:50px;
	margin-left:2px;}

header .admin {
	position:absolute;
	left:23px;
	top:440px;
	background:none;
	color:#333 !important;
	padding:0;
	font-size:16px !important;}

header .menu {
	width:250px;
	height:100%;
	position:fixed;
	top:0;
	left:-250px;
	z-index:999;
	margin:0;
	padding-bottom:30px;
	background:#fff;
	box-sizing:border-box;
	transition:all 0.3s ease;
	overflow-y:auto;}

header .menu ul {
	padding:25px;}

header .menu.open {
	left:0;}

header .menu li {
	display:block;
	margin:0 0 18px;
	text-align:left;}

header .menu li a {
	color:#333;
	font-size:16px;}

header .menu li a:after {
	background:#0e7fd5;
	bottom:-4px;}

header .menu li a:hover {
	color:#0e7fd5;
	transition:all 0.3s ease;}

header .menu li a:hover:after {
	width:100%;
	left:0;
	transform:translateX(0);}

.back {
	width:100%;
	height:100%;
	position:fixed;
	top:0;
	left:0;
	background-color:rgba(0,0,0,0.6);
	z-index:99;
	display:none;}

.back.open {
	display:block;}

header .link {
	display:none;}

header .toggle {
	flex:1;
	display:block;
	color:#fff;
	font-size:18px;
	text-align:right;
	margin-top:-6px;}

.slide {
	width:90%;
	margin:60px auto 0;}

.slide .text {
	font-size:34px;
	line-height:40px;
	margin-bottom:20px;}

.slide span {
	font-size:14px;
	line-height:24px;
	letter-spacing:-1px;}

.slide .page {
	margin-top:50px;}

.slide .page div {
	width:8px;
	height:8px;
	margin-right:10px;}

.slide .page div:after {
	width:14px;
	height:14px;
	top:-5px;
	left:-5px;}

/*메인*/
/*인포*/
#main .info {
	padding:40px 0;}

#main .info .title {
	font-size:24px;
	line-height:32px;
	margin-bottom:40px;}

#main .info .title span {
	font-size:14px;
	margin-bottom:15px;}

#main .info .wrap {
	width:90%;
	margin:0 auto;
	grid-template-columns:1fr 1fr;
	gap:10px;}

#main .info .wrap .box {
	padding:20px;}

#main .info .i_wrap .icon img {
	width:40px;}

#main .info .i_wrap span {
	font-size:14px;}

#main .info .con {
	margin-top:10px;
	font-size:18px;}

#main .info .con span {
	margin-top:10px;
	font-size:12px;}

/*뉴스*/
#main .news {
	width:90%;
	padding:40px 0;}

#main .news .title {
	font-size:24px;
	display:block;
	margin-bottom:30px;}

#main .news .title span {
	display:block;
	font-size:14px;
	margin-left:0;
	margin-top:5px;}

#main .news .wrap {
	width:100%;
	display:grid;
	grid-template-columns:1fr;
	overflow-x:auto;
	overflow-y:hidden;
	gap:20px;}

#main .news .wrap .box {
	height:160px;
	padding:10px 20px 20px;}

#main .news .wrap .box h1 {
	font-size:18px;}

#main .news .date {
	font-size:12px;
	left:20px;
	bottom:20px;}

#main .news .more {
	font-size:12px;
	right:20px;
	bottom:20px;}

#main .news .page i {
	font-size:18px;
	margin-left:14px;}

#main .recruit {
	padding:60px 0;
	background-size:1360px auto;
	font-size:22px;}

#main .recruit span {
	font-size:16px;
	margin-bottom:10px;}

#main .recruit div {
	margin-top:18px;}

#main .recruit a {
	font-size:13px;
	padding:8px 18px;}

#main .recruit a i {
	font-size:12px;}

/*푸터*/
footer .inner {
	width:90%;}

footer .set {
	padding:30px 0 20px;}

footer .set2 {
	line-height:22px;}

footer .set li,
footer .set2 li {
	font-size:12px;
	margin-right:6px;}

footer .set2 li:after {
	margin-left:6px;}

footer .set li:last-child,
footer .set2 li:nth-child(2):after {
	display:none;}

footer .copy {
	padding:10px 0 60px;
	line-height:22px;
	font-size:11px;
	opacity:0.5;}

footer a {
	color:#fff;}

footer .top {
	top:30px;
	font-size:13px;}

footer .top i {
	font-size:12px;}

.pc {
	display:none;}

.mob {
	display:block;}
}