
#hero_bg{background-image: url(./img/hero_bg.png); background-size: cover; background-repeat: no-repeat; min-height: 160px; margin-top: 90px;}
#service{background-image: url(./img/section2_bg.png); background-size: cover; background-repeat: no-repeat; min-height: 160px; margin-top: 90px;}
#out{background-image: url(./img/out.png); background-size: cover; background-repeat: no-repeat; min-height: 160px; margin-top: 90px;}

/*header*/
.header { background: transparent; height:75px; z-index: 120; position: relative; transition: .3s;}
.header.on { background: #fff; border-bottom:1px solid #d7d7d7; transition: none;}
.header.bg{background: #fff; border-bottom:1px solid #d7d7d7; transition: .3s;}
.pos {overflow: hidden;width: 0;height: 0;font-size: 0;line-height: 0;text-indent: -9999px;}
.main-header {
	position:fixed;
	top:0;
	left:0;
	width:100%;
}
.header > .in { height:100%; display:flex; justify-content:space-between; align-items: center; z-index: 1; width:1080px; margin: 0 auto;}
.logo-box {}
.logo-box > a { display:block; width: 86px; height: auto; background:url('../img/arttree.png') no-repeat center left/contain; text-indent:-9999px; transition-delay:.4s; }

.header > .in > div { display:flex; height:100%; align-items: center;}
.header-menu { height:100%; }
.header-menu > ul { display:flex; height:100%; z-index: 1; position: relative; }

.header-menu > ul > li { height:100%; position:relative; }
.header-menu > ul > li > a {height: calc(100% + 2px); display: flex; padding-left: 74px; align-items: center; font-size: 1.9rem; font-weight: 500; }
.header-menu > ul > li > a span { position:relative; padding: 0 3px; font-size:0.6rem; font-weight: 700;}

.header-menu > ul > li > a > span::after { transition:.1s; content:''; display:block; height:3px; width:100%; position:absolute; bottom:-27px; left:0; opacity:0; background:#3896ff;  }
.header-menu > ul > li.on > a > span::after { opacity:1; }
.header-menu > ul > li:hover > a > span::after { opacity:1; transition:.1s; }
				
.header.on .header-menu > ul > li > a > span::after { background:#3896ff; }
/* .header.on .header-menu > ul > li:hover > a { color:#3896ff; } */

.gnb-sub { position:absolute; top:75px; left:0; height:194px; width:100%; padding-top:0px; opacity:0; }
.gnb-sub li { text-align:left; padding-left: 74px; width: 100%;}
.gnb-sub li a { transition:.2s; padding: 5px 0; display: block; font-size:0.6rem; }
.gnb-sub li a:hover { color:#3896ff; transition:.2s; }

.gnb-sub li a span { position:relative; }
.gnb-sub li a:hover span {  }
.gnb-sub li a:hover span::after { opacity:1; }

.gnb-sub-bg { 
    top: 76px;
    right: 50%;
    transform: translateX(50%);
    height: 0px;
    background: #fff;
    position: absolute;
    transition: height .5s;
	box-shadow: 0 6px 8px rgb(0 0 0 / 5%);
}
.ml0 {margin-left:0 !important;}
.ml10 {margin-left:10px !important;}
.header.on .gnb-sub { opacity:1; transition:.5s .15s; }
.header-menu > ul > li { overflow:hidden; }
.header.on .header-menu > ul > li { overflow:visible; }

.header.on .gnb-sub-bg { height:194px !important; transition:height .5s; }

.bg-cover { position:fixed; top:0; left:0; right:0; bottom:0; display:none; z-index:100; background:rgba(0,0,0,.7); }

.gnb-all { margin-left: 15px; display:none; padding: 3px; margin-top: 10%; }

.header-resize {
	display: flex;
    align-items: center;
}
.header-resize button {
	font-size:2.1rem;
	background:none;
}
.header-resize button i {
    vertical-align: middle;
}
.header-resize span {
	font-size: 1.8rem;
    margin: 0 13px;
    font-weight: 500;
}

.gnb-all input[type="checkbox"] { display:none; }

.header-lang {
	display:flex;
    margin: 0 40px;
}
.header-lang li {
	margin-right:18px;
}
.header-lang li:last-of-type {
	margin-right:0;
}

.header-lang li a {
	font-size: 1.6rem;
    font-weight: 600;
    border-bottom: 2px solid #fff;
	color:#c5c5c5;
}
.header-lang li a.on {
    border-bottom: 2px solid #000;
	color:#000;
}
.main-header {
	position:fixed;
	top:0;
	left:0;
	width:100%;
}
.gnb-all-btn {
    position: relative;
    width: 30px;
    height: 20px;
    display: inline-block;
    cursor: pointer;
}
.gnb-all-btn span:nth-child(1) {
    top: 0px;
}
.gnb-all-btn span:nth-child(2) {
    bottom: 0px;
}
.gnb-all-btn span {
    position: absolute;
    display: inline-block;
    width: 24px;
    height: 3px;
    background: #000;
    transform-origin: 21.5px 1.5px;
    transition: transform .5s 0s, background .2s 0s;
}
.header-util.on .gnb-all-btn span {
    background: #fff;
}

.header-util.on .gnb-all-btn span:nth-child(1) {
    transform: rotate(-40deg);
}
.header-util.on .gnb-all-btn span:nth-child(2) {
    transform: rotate(40deg);
}

.header-sns {
    display: none;
    height: 80px;
    background: #fff;
    padding: 0 44px;
    align-items: center;
}
.header-menu.on .header-sns {
    display: flex;
	justify-content: center;
}
.header-sns > ul {
	display: flex;
}
.header-sns > ul li {
	display: flex;
	margin-right: 25px;
}
.header-sns > ul li:last-of-type {
	margin-right: 0;
}
.header-sns > ul li a {
	/*color:#cfcfcf;*/color:#666;
	font-size:2.5rem;
}

/*modal*/
.modal-wrap {
	display:none;
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	z-index:99999;
	color:#000;
}
.modal-in {
	width:970px;
	max-width:calc(100vw - 30px);
	height: 900px;
	max-height:95vh;
	background:#fff;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
}
.modal-top {
	background: #3896ff;
	display: flex;
	color:#fff;
	padding: 8px 15px;
	align-items: center;
	height: 100px;
}
.modal-top > h1 {
	margin: 0 auto;
	line-height:1.3;
	font-size: 3rem;
}
.modal-close {
	background: none;
    font-size: 3.5rem;
    right: 0;
    transform: translateY(-100%);
    color: #fff;
    top: -9px;
    position: absolute;
}
.modal-btm {
	padding: 37px 30px 37px;
	font-size: 1.4rem;
	line-height:1.7;
	height: calc(100% - 100px);
	overflow:auto;
	-ms-overflow-style: none;
	scrollbar-width: none; 
	text-align: left;
	position:relative;
}
.modal-btm::-webkit-scrollbar {
	display: none;
}
.modal-btm > h2 {
	font-size: 1.6rem;
	font-weight: 600;
	margin: 20px 0 5px;
}
.modal-btm > p {

}
.modal-indent-1 {
	margin-left:10px;
}
.modal-indent-2 {
	margin-left:20px;
}
.modal-bg {
	background:rgba(0,0,0,.7);
	width:100%;
	height:100%;
}
.modal-grad-top {
	position: fixed;
	z-index: 1;
	width: 100%;
	height: 50px;
	top: 100px;
	left: 0;
	background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(255,255,255,0.35) 65%, rgba(255,255,255,0) 100%); 
	background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(255,255,255,0.35) 65%,rgba(255,255,255,0) 100%); 
	background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(255,255,255,0.35) 65%,rgba(255,255,255,0) 100%); 
}
.modal-grad-btm {
	position: fixed;
	z-index: 1;
	width: 100%;
	height: 50px;
	bottom: 0;
	left: 0;
	background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 65%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 65%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 65%,rgba(255,255,255,1) 100%);
}


/*responsive*/
@media screen and (max-width:1400px){
	.header-menu > ul > li > a {
		padding-left: 74px;
	}
}
@media screen and (max-width:1200px){
    .header-menu > ul > li > a > span::after{
        display:none; 
    }
    .header-util{
        position: absolute;
        right: 15px;
        z-index: 99;
    }
    .header-search {
		width: 600px;
	}
	.gnb-sub-bg {
		display: none;
	}
	.header {
		height: 75px;
	}
	.logo-box > a {
		width: 86px;
		height: auto; 
	}
	.header-menu > ul > li > a {
		padding: 0px 8px;
		font-size: 1.5rem;
	}
	.header-menu {
		margin-right: 9px;
	}
	.search-btn {
		padding: 4px;
		width: 25px;
	}
	.modal-top > h1 {
		font-size: 2.8rem;
	}
	.header-menu {
		display:none;
	}
	.header-resize {
		display:none;
	}
	.header-lang {
		display:none;
	}
	.board-empty {
		font-size: 1.6rem;
	}
	.gnb-all-btn {
		height: 15px;
	}
	.board-empty img {
		margin-bottom: 14px;
		width: 130px;
	}
	#toYouList .board-empty {
		margin: -30px 0 -40px;	
	}

}/*1200px*/

@media screen and (max-width:768px){
	.mo-only {
		display:block;
	}
	.phone-over {
		display:none !important;
	}
	
	.header {
		height: 65px;
	}
	.logo-box > a {
		width: 86px;
		height: auto;
	}
	.header-menu { 
		position: fixed;
		height: 100%;
		width: 100%;
		background: #16cae5;
		top: 0;
		left: 100%;
		transition:.5s;
	}
	.header-menu.on { 
		left: 0;
		transition:.5s;
	}
	.header-menu > ul {
		flex-direction: column;
	    justify-content: center;
	}
	.header-menu > ul > li {
		height: auto;
	    margin-bottom: 16px;
		text-align:center;
	}
	.header-menu > ul > li:last-of-type {
	    margin-bottom: 0;
	}
	.header-menu > ul > li > a {
		padding: 4px 8px;
		display: inline-block;
	    font-size: 2.1rem;
	}
	.header-menu > ul > li > a > span > span {
		top: -11px;
		right: -26px;
		background: #18252d;
		color: #16cae5;
		font-size: 1rem;
		padding: 0px 5px;
	}
	.hbg-btn { 
		font-size: 3rem; 
		background: none; 
		color: #fff; 
		margin-left: 12px; 
		z-index: 100; 
	}
	.modal-top > h1 {
		font-size: 2rem;
	}
	.modal-top {
		height: 50px;
	}
	.modal-close {
		font-size: 2.5rem;
	}
	.modal-in {
	}
	.modal-btm {
		padding: 16px 15px 25px;
		height: calc(100% - 50px);
		font-size: 1.2rem;
		line-height: 1.6;
	}
	.modal-btm > h2 {
		margin-bottom: 0px;
		font-size: 1.6rem;
	}
	.modal-btm > h3 {
		font-size: 1.3rem;
		margin: 14px 0 1px;
	}	
	.modal-grad-top {
		top: 50px;
		height: 35px;
	}
	.modal-grad-btm {
		height: 35px;
	}
	.board-empty {
		font-size: 1.4rem;
	}




}/*768px*/


@media screen and (max-width:1200px){
	.pc-only {
		display: none;
	}
	.gnb-all {
		display: block;
		margin-left: 13px;
	}
	.in {
		padding: 0 15px;
	}
	.header.on .header-menu > ul > li:hover > a {
		color: #000;
	}
	.header-lang {
		color: #fff;
		z-index: 1;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0, -50%);
		margin:0 0 0 15px;
	}
	.header-lang li {
	    margin-right: 11px;
	}
	.header-lang li a {
		font-size: 1.6rem;
		font-weight: 300;
		border: 1px solid #fff;
		border-radius: 20px;
		padding: 3px 12px;
		color:#fff;
	}
	.header-lang li a.on {
		background:#ecac2f;
		border-color:#ecac2f;
		color:#fff;
	}
	.header.on .gnb-sub { 
		transition:0s;
	}
	.header-menu {
		position: fixed;
		height: 100%;
		width: 100%;
		top: 0;
		left: 100%;
		transition: .5s;
		display:block;
	} 
	.header-menu.on {
		left: 0;
		transition: .5s;
		background: #3896ff;
	}
	.header-menu.on .header-lang {
		display:flex;
	}
	.header-menu > ul {
		flex-direction: column;
		padding: 10px 44px 0px;
		margin-top: 80px;
	    height: calc(100vh - 160px);
		height: calc(var(--vh, 1vh) * 100 - 160px);
		background: #fff;
		overflow: auto;
		-ms-overflow-style: none;
		scrollbar-width: none;
	} 
	.header-menu > ul::-webkit-scrollbar {
		display: none;
	}
	.gnb-sub {
		position: static;
		height: auto;
		opacity: 1;
	}
	.header-menu > ul > li {
		margin-bottom:0;
	    height: auto;
		overflow:visible;
	}
	.header-menu > ul > li > a {
		/* padding: 12px 0 18px; */
		font-size: 3rem;
		display: inline-block;
		height: auto;
		font-weight: 600;
		color: #000;
	}
	.header-menu > ul > li > a span {
		padding: 0;
		position:relative;
	    font-size: 1.2rem;
	}
	/* .header-menu > ul > li > a span::after {
		background: #3896ff;
		width: 25px;
		height: 3px;
		content: '';
		display: inline-block;
		margin: 0 0 7px 13px;
		transform: rotate(0deg);
		transform-origin: center center;
		transition: transform .4s;
	}
	
	.header-menu > ul > li.active > a span::after {
		transform: rotate(360deg);
		transition: transform .4s;
	} */

	.gnb-sub li a:hover { 
		color:#3896ff; 
	}
	.gnb-sub {
		position: static;
		height: auto;
		opacity: 1;
		padding: 20px 42px;
		margin: 0 -44px;
		background: #f5f5f5;
		width: calc(100% + 88px);
	    display: none;
	}
    .gnb-sub .first{
        padding-top: 0 !important;
    }
	.gnb-sub li {
		text-align: left;
		color:#3896ff;
	}
	.gnb-sub li a {
		padding: 12px 0;
	    font-size:1rem;
	    display: inline-block;
	}
	.header-menu > ul > li > a::after {
		display: none;
	}
	.header-search-wrap {
		top: 80px;
	}
}
@media screen and (max-width:768px){
    .gnb-all {
		display: block;
		margin-left: 13px;
		position: relative;
		top: -2px;	
	}
	.in {
		padding: 0 15px!important;
	}

	.header-menu {
		background: #3896ff;
	} 	
	.header-menu > ul > li {
		text-align: left;
	}
	.header-menu > ul {
		justify-content: flex-start;
		margin-top: 65px;
	}
	.header-search form button {
		padding: 5px 10px;
	}

	.header-lang li a {
		font-size: 1.3rem;
	}
	.header-menu > ul > li > a span {
		font-size: 1.2rem;
	}
	.gnb-sub li a {
		font-size: 1rem;
		padding: 10px 0;
	}
	.header-menu > ul {
		height: calc(var(--vh, 1vh) * 100 - 145px);
	}

}
