/* 210119 ÇÃ·¡½Ã Á¦°Å ÀÛ¾÷ */
header *,
header *:hover,
#main_visual *,
#main_visual *:hover,
#sub_visual *,
#sub_visual *:hover{
	font-family:'NotoSansKR', sans-serif !important;
	text-decoration:none !important;
	list-style:none;
	margin:0;
	padding:0;
	box-sizing:border-box;
}

header{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:space-between;
	height:105px;
	background:url('/img/common_img/header_bg_01.jpg') no-repeat 0 0;
	z-index:2;
}
header .logo{
	margin-left:35px;
}
header .bookmark{
	position:absolute;
	top:37px;
	right:40px;
	padding:5px;
	background:#208dd0;
	border-radius:0 0 5px 5px;
	box-shadow:0 0 3px rgba(0,0,0,0.2);
}
header > nav{padding-right:150px;}
header .menu_list{
	position:relative;
	display:flex;
}
header .menu_list > li{position:relative;}
header .menu_list > li:not(:last-child){margin-right:5px;}
header .menu_list > li > a{
	position:relative;
	display:block;
	height:45px;
	font-size:14px;
	font-weight:500;
	line-height:35px;
	letter-spacing:-0.05em;
	text-align:center;
	padding:0 25px;
	color:#313131;
	transition:all 0.3s;
	z-index:2;
}
header .menu_list > li > a::before{
	content:"";
	position:absolute;
	left:calc(50% - 5px);
	bottom:0;
	display:block;
	width:0;
	height:0;
	border-bottom:5px solid #49b1e9;
	border-left:5px solid transparent;
	border-right:5px solid transparent;
	opacity:0;
	transition:all 0.3s;
}
header .menu_list > li > a > span{
	position:relative;
	display:block;
	z-index:2;
}
header .depth2{
	position:absolute;
	top:45px;
	min-width:100%;
	font-size:0;
	white-space:nowrap;
	text-align:center;
	padding:0 15px;
	background:linear-gradient(#49b1e9 3%, #1c99dd 13%, #26a3e7 50%, #1592d6 55%, #2ba8ec 100%);
	border-radius:25px;
	box-shadow:3px 3px 7px rgba(0,0,0,0.2);
	opacity:0;
	visibility:hidden;
	transition:all 0.3s;
}
header .depth2 > li{
	display:inline-block;
	vertical-align:middle;
}
header .depth2 > li > a{
	display:inline-block;
	height:25px;
	font-size:12px;
	font-weight:300;
	line-height:25px;
	vertical-align:middle;
	padding:0 7px;
	color:#fff;
	transition:all 0.3s;
	text-shadow:0 0 3px rgba(0,0,0,0.2);
}
header .menu_list > li.menu02 > .depth2{
	left:-350px;
}

header .menu_list > li.on > a,
header .menu_list > li:hover > a{color:#075ac7;}
header .menu_list > li.on > .depth2,
header .menu_list > li:hover > .depth2{
	opacity:1;
	visibility:visible;
}
header .menu_list > li.on > a::before,
header .menu_list > li:hover > a::before{opacity:1;}
header .depth2 > li:hover > a{color:#fff7bd;}

#main_visual{
	position:relative;
	font-size:0;
	height:440px;
}
#main_visual .txt-w{
	position:absolute;
	top:50px;
	left:90px;
}
#main_visual .txt-w > span{
	display:inline-block;
	animation:txt 5s alternate infinite;
	opacity:0;
}
#main_visual .txt-w > .txt1{
	animation-delay:3.5s;
}
#main_visual .txt-w > .txt2{
	margin-left:15px;
	animation-delay:3.7s;
}
#main_visual .txt-w > .txt3{
	margin-left:10px;
	animation-delay:3.9s;
}
#main_visual .txt-w > .txt4{
	margin-top:5px;
	animation-delay:4.1s;
}
#main_visual .txt-w > .plane{
	position:absolute;
	top:-30px;
	right:110px;
	animation:txt 3s forwards;
	animation-delay:3s;
}
#main_visual .cont-w{
	position:absolute;
	top:160px;
	left:0;
	z-index:0;
}
#main_visual .cont-w > span{
	position:relative;
	display:block;
	max-width:0;
	animation:cont 1.5s forwards;
	overflow:hidden;
}
#main_visual .cont-w > .cont{animation-delay:0.2s;}
#main_visual .cont-w > .reflect{animation-delay:0.4s;}
#main_visual .obj-w{
	position:absolute;
	top:110px;
	right:0;
}
#main_visual .obj-w > span{
	position:absolute;
	animation:obj 1s forwards;
	opacity:0;
}
#main_visual .obj-w > .obj1{
	top:15px;
	right:5px;
	animation-delay:1.5s;
	z-index:2;
}
#main_visual .obj-w > .obj2{
	top:95px;
	right:175px;
	animation-delay:1.7s;
	z-index:3;
}
#main_visual .obj-w > .obj3{
	top:80px;
	right:0;
	animation-delay:1.9s;
	z-index:4;
}
#main_visual .obj-w > .obj4{
	top:90px;
	right:90px;
	animation-delay:2.1s;
	z-index:5;
}
#main_visual .obj-w > .obj5{
	top:0;
	right:135px;
	animation-delay:2.3s;
	z-index:1;
}
#main_visual .obj-w > .obj6{
	top:175px;
	right:0;
	animation-delay:2.5s;
	z-index:6;
}
#main_visual .gallery{
	position:absolute;
	bottom:30px;
	left:70px;
	width:445px;
	padding:10px 20px;
	background:#fff;
	border-radius:5px;
	box-shadow:0 0 5px rgba(0,0,0,0.5);
	z-index:7;
}
#main_visual .gallery::before{
	content:"";
	position:absolute;
	top:-20px;
	left:20px;
	display:block;
	width:96px;
	height:10px;
	background:url('/images/visual/gallery_txt.png') no-repeat 0 0;
}
#main_visual .gallery li{
	width:89px;
	height:57px;
}
#main_visual .gallery li a{
	display:block;
	text-align:center;
}
#main_visual .gallery li a img{
	display:inline-block;
}

#main_visual .gallery .slick-arrow{
	position:absolute;
	top:28px;
	width:13px;
	height:21px;
	font-size:0;
	background:none;
	border:0;
	border-radius:0;
}
#main_visual .gallery .slick-prev{
	left:5px;
	background:url('/images/visual/arrow_prev.jpg') no-repeat 0 0;
}
#main_visual .gallery .slick-next{
	right:5px;
	background:url('/images/visual/arrow_next.jpg') no-repeat 0 0;
}

#sub_visual{
	position:relative;
	width:762px;
	height:148px;
	padding:20px 0 0 45px;
	animation:sub_v 1s forwards;
	background:url('/images/visual/sub_visual_03.png') no-repeat right bottom;
	box-sizing:border-box;
}
#sub_visual .txt-w > span{
	display:inline-block;
	transform:scale(0.8);
}
#sub_visual .txt-w > span > img{
	animation:txt 5s alternate infinite;
	opacity:0;
}
#sub_visual .txt-w > .txt1 > img{
	animation-delay:3.5s;
}
#sub_visual .txt-w > .txt2 > img{
	margin-left:-25px;
	animation-delay:3.7s;
}
#sub_visual .txt-w > .txt3 > img{
	margin-left:-10px;
	animation-delay:3.9s;
}
#sub_visual .txt-w > .txt4 > img{
	animation-delay:4.1s;
}

@keyframes txt{
	0%{opacity:0;	 transform:translateY(10px);}
	20%{opacity:1; transform:translateY(0);}
	100%{opacity:1; transform:translateY(0);}
}
@keyframes cont{
	0%{max-width:0; filter:blur(3px); opacity:0;}
	100%{max-width:600px; filter:blur(0); opacity:1;}
}
@keyframes obj{
	0%{transform:scale(0.95); opacity:0;}
	50%{transform:scale(1.05);}
	100%{transform:scale(1); opacity:1;}
}
@keyframes sub_v{
	0%{opacity:0;}
	100%{opacity:1;}
}