@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Nanum+Myeongjo:wght@400;700;800&family=Nanum+Pen+Script&family=Noto+Sans+KR:wght@100;300;400;500;700;900&family=Roboto:wght@100;300;400;500;700;900&display=swap');
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");
@import url('https://unpkg.com/boxicons@2.1.4/css/boxicons.min.css');
:root {
	--gnb_size : 80px;
	--max_width : 1100px;
	--color_main : #004999;
	--color_point : #ff6c00;
	--color_point2 : #30547a;
	--color_point3: #ffc395;
	--color_point4: #003065;
	--color_point5 : #c4e1ff;
	--color_point6 : #b23121;
	--color_point7 : #f1f8ff;
	--bgColor_main:#fff;
	--bgColor_body : #fff;
	--border_main : 1px solid rgba(0,0,0,.1);
	--border_2 : 1px solid rgba(0,0,0,.3);
	--_scrollWidth : 20px;
	--_scrollBg:#eaeaea;
	--boxshadow:0 0 10px 0 rgba(0,0,0,0.1);
	--font_size:18px;
}
@media screen and (max-width:1024px){
	:root {
	--gnb_size : 70px;
	--max_width : 100%;
	}
}
@media screen and (max-width:768px){
	:root {
	--gnb_size : 40px;
	--max_width : 100%;
	--font_size:16px;
	}
}
body::-webkit-scrollbar { width: calc(var(--_scrollWidth) - 8px); height: calc(var(--_scrollWidth) - 8px); }
body::-webkit-scrollbar-track { background: var(--_scrollBg); border-radius: 0; }
body::-webkit-scrollbar-thumb { background: var(--color_main); border-radius:var(--_scrollWidth); border:3px solid var(--_scrollBg); }
body { font-family:"Roboto","Noto Sans KR", "sans-serif"; font-weight:400; font-size: 14px; word-break:keep-all; background-color:var(--bgColor_body); color:#2d2828}
#nprogress .bar { background-color: var(--color_point) !important; }
#nprogress .spinner-icon { border-top-color: var(--color_point) !important; border-left-color: var(--color_point) !important; }

.btn_jin { 
--btn_size:40px;
border:1px solid var(--color_main); border-radius:6px; height:var(--btn_size); line-height:1; color:var(--color_main); font-size: calc(var(--btn_size) * .3); font-family:"NSN"; font-weight:600; padding:0 calc(var(--btn_size) * .5);  width: fit-content; display:flex; align-items: center; justify-content: center; background-color:var(--bgColor_body); box-shadow: 0 0 10px 0 rgba(0,0,0,.1); transition:.3s ease } 
.btn_jin:hover { background-color:var(--color_point4);}
.btn_jin i.bx { font-size:1.2em; margin-right:5px;}
.btn_jin em { color:var(--color_point); margin-left:10px;}
.btn_jin.big { 
--btn_size:50px;
} 
.btn_jin.circle { border-radius:50px}

/*///////////////////////////////
 헤더 푸터
*/
header { width:100%; position:fixed; top:0; left:0; display:flex; justify-content: space-between; align-items: flex-start; padding:50px; z-index: 10; transition:.3s ease;}
.logo_main { position:fixed; top:0; left:0; font-family:"NSN"; color:var(--color_main);  transition:.3s ease; transform: scale(100%); padding:50px; z-index: 10; text-shadow: 0 0 20px #fff;
	--logo_size:18px;
}
.logo_main li { display:flex; }
.logo_main li + li { margin-top:5px;}
.logo_main li span { line-height:1}
.logo_main li.s1 {align-items: center; font-size:var(--logo_size);  transition:.3s ease}
.logo_main li.s1 img {height:calc(var(--logo_size) * .88); margin-right:calc(var(--logo_size) * .2);  transition:.3s ease}
.logo_main li.s2 { align-items: flex-end;}
.logo_main li.s2 span:nth-child(1) { font-size:40px; font-weight:100;  letter-spacing:-2px; padding-bottom: .3em; transition:.3s ease}
.logo_main li.s2 span:nth-child(2) { font-size:100px; font-weight:900; letter-spacing:-8px; transition:.3s ease}
.logo_main li.s3 { flex-direction: column;  font-weight:100; font-size:12px;  transition:.3s ease}
.logo_main li.s3 span + span { margin-top:2px;}
.logo_main li.s3 em { font-weight:400;}

.logo_sub { position:fixed; top:20px; left:20px; display:flex; align-items: center; 
	--logo_size:18px;
}

.logo_sub li.s1 img {height:calc(var(--logo_size) * .8); margin-right:calc(var(--logo_size) * .2);  transition:.3s ease}
.logo_sub li.s2 { margin-left:20px;}
.logo_sub li.s2 span:nth-child(1) { font-size:var(--logo_size);  font-weight:100; color:var(--color_main);  }
.logo_sub li.s2 span:nth-child(2) { font-size:var(--logo_size);  font-weight:900; color:var(--color_main); }

.gnb_con { z-index: 10; position:fixed; top:10px; right:10px;  display:flex; align-items: center; flex-direction: column;}
.gnb_open { display:flex; align-items: center; justify-content: center; font-size:calc(var(--gnb_size) * .6); width:var(--gnb_size); height:var(--gnb_size); border-radius:100%; background-color:var(--color_main); color:#fff; }
.gnb_home { display:flex; align-items: center; justify-content: center; font-size:calc(var(--gnb_size) * .3); width:calc(var(--gnb_size) * .6); height:calc(var(--gnb_size) * .6); border-radius:100%; background-color:var(--color_point2); color:#fff; transition:.3s ease;
	opacity:0;
	visibility: hidden;
}
.gnb_con:hover .gnb_home { 
	opacity:1;
	visibility: visible;
	transform: translateY(5px); 
}

footer { padding:100px 0; margin-top:10px; border-top:var(--border_main) }

footer ul { background-color:var(--bgColor_main); margin:0 auto; width:100%; max-width:var(--max_width); display:flex; align-items: center; }
footer ul li.info { display:flex; flex-direction: column; padding-left:50px;} 
footer ul li.info span + span {margin-top:5px }
footer ul li.info em { font-weight:600; color:var(--color_point2); margin:0 5px 0 20px}
footer ul li span.quicklink { display:flex; align-items: center; justify-content: ; padding-bottom:10px}
footer ul li span.quicklink a { display:flex; align-items: center; justify-content: center; font-size:12px;  }
footer ul li span.quicklink a i { font-size:1.2em; margin-right:2px; color:var(--color_point2);  }
footer ul li span.quicklink a + a { margin-left:20px;}
footer ul li.past_issues {margin-left: auto;}
footer ul img { width:80px;}

footer ul.etc { flex-direction: column; text-align: center;}
footer ul.etc li.info { padding-left:0; padding-top:10px;}

nav {position:fixed; width:100%; height:100%; min-height:100vh; left:0; top:0; z-index:100; background-color:rgba(255,255,255,.9); /*backdrop-filter: blur(5px); */ display:flex; justify-content: flex-end; transition:1s ease;
	opacity:0;
	visibility: hidden;
	--logo_nav_size:18px;
	--gnb_gab:30px;
	

}
nav > ul { display:flex; max-width: 80%; width:1000px; box-shadow: -3px 0px 10px 0px rgba(0, 0, 0,.5);  background-color:#fff; transition:.5s ease;
	opacity:0;
	visibility: hidden;
	transform: translateX(10px); 
	

}
nav > ul > li:nth-child(1) { background-color:#0b1326; color:#fff; padding:50px 30px; font-size:var(--logo_nav_size); min-width:300px; text-align: right; background-repeat: no-repeat; background-position: center bottom; background-size: 100% auto; }
nav .logo_nav img {height:calc(var(--logo_nav_size) * .75); margin-right:calc(var(--logo_nav_size) * .2);  }
nav .logo_nav li.s1 { display: flex; align-items: center; justify-content: flex-end;}
nav .logo_nav li.s2 span:nth-child(1) { font-size:40px; font-weight:100;  letter-spacing:-2px; }
nav .logo_nav li.s2 span:nth-child(2) { font-size:100px; font-weight:900; letter-spacing:-5px; }
nav > ul > li:nth-child(2) { padding:var(--gnb_gab) 50px; width: -webkit-fill-available; }
nav ul.gnb { /*height:calc(100vh - (var(--gnb_gab) * 2)); */width:100%; height: -webkit-fill-available; overflow:auto;}
nav ul.gnb li { padding:10px 10px; display:flex;}
nav ul.gnb li.dap0 { padding:20px 10px}
nav ul.gnb li.dap0 a { font-size:14px; font-weight:700; font-family:"NSN";  display:flex; align-items: center; }
nav ul.gnb li.dap0 a i { font-size:1.2em; margin-right:3px;}
nav ul.gnb li.dap1 { padding-left:10px; font-size:20px; font-weight:700; padding-top:15px}
nav ul.gnb li.dap1 em { font-weight:900; color:var(--color_point)}
nav ul.gnb li.dap2 { padding-left:20px;}
nav ul.gnb li.dap2 a { width:150px;}
nav ul.gnb li.dap2 span { font-size:.85em; display:block; color:#398eeb}
nav ul.gnb li + li {border-top:var(--border_main) }
nav .gnb_close { z-index:101; position:absolute; top:0; right:0; font-size:40px; height:50px; width:50px; display:flex; align-items: center; justify-content: center;}
nav.gnbShow {
	opacity:1;
	visibility: visible;
}
nav.gnbShow > ul { 
	opacity:1;
	visibility: visible;
	transform: translateX(0);
}
nav .gnb a.active { font-weight: 900; color:var(--color_main)}
nav .navbg { position:fixed; width:100%; height:100vh; top:0; left:0; z-index:-1}
nav .login { display:flex; align-items: flex-end; flex-direction: column; padding:20px 0 0 0;}
nav .login h2 { font-size:14px; font-weight:700; margin:0 0 10px 0; line-height:1.4 }
nav .login span { display:block; font-size:12px;  font-weight:400;  padding:5px 0 0 0;  }

/*///////////////////////////////
 메인
*/
.banner { padding-bottom:50px;}
.banner li { display:flex; justify-content: center; background-position:center bottom; background-size:auto 105%;     background-repeat: no-repeat;  transition:5s ease }
.banner .owl-item.active li { background-size:auto 100% ; }
.banner .box_con { width:100%; max-width:var(--max_width); position:relative; }
.banner .box_con img { max-width:1000px; }
.banner .box_title { position:absolute; bottom:50px; right:10px; text-align:right; display: flex; flex-direction: column; align-items: flex-end; text-shadow: 0 0 20px #ffffff;} 
.banner .box_title  h3,
.banner .box_title  h2 { padding:0; margin:0;  font-family:"NSN"; }
.banner .box_title  h3 { font-size:20px; font-weight:600; line-height: 1; letter-spacing:-1px; }
.banner .box_title  h2 { font-size:50px; font-weight:300; line-height: 1.2; margin-top:10px; letter-spacing:-1px; color:var(--color_main) }
.banner .box_title  h2 span { font-weight:900}
.banner .box_title .btn_jin { margin-top:20px;}

#main { background-color:var(--bgColor_main); margin:0 auto; width:100%; max-width:var(--max_width); }
#main .main_list { display:flex; justify-content: center; flex-wrap: wrap;  font-family:"NSN"; }
#main .main_list li {width:calc((100% / 3) - 10px); transition:1s ease; margin:0 5px}
#main .main_list li a { width: 100%; border-radius:20px; padding-bottom:30px; margin-bottom:20px; box-shadow:2px 2px 10px 0px rgba(0,0,0,.1); background-color:#fff; overflow: hidden;}
#main .main_list li:hover { transform: translateY(0px) scale(102%) !important;  transition:.3s ease; z-index:1; }
#main .main_list li:hover a {box-shadow:2px 2px 10px 0px rgb(0 73 153 / 24%)}
#main .main_list li div img { width:100%;}
#main .main_list li h3,
#main .main_list li h2,
#main .main_list li .hash,
#main .main_list li a > span { padding:0 20px; margin:0}
#main .main_list li h3 { font-size:14px; font-weight:400;  color:var(--color_main); margin-top:20px; }
#main .main_list li h2 { font-size:22px; font-weight:400; line-height: 1.4; margin-top:10px; letter-spacing:-1px; min-height: 95px;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

#main .main_list li h2 span { font-weight:900}
#main .main_list li .hash { display:flex; flex-wrap: wrap; margin-top:30px;  }
#main .main_list li .hash span { border: 1px solid #bbd7ff; height: 26px; display: flex; align-items: center; color: #81b4ff; line-height: 1; justify-content: center; font-size: .7em; padding: 0 10px; border-radius: 40px; width: fit-content; margin: 2px; }

#main .news_list {display: flex; justify-content: space-between; flex-wrap: wrap;
--icon_size : 80px;
}
#main .news_list li {width:calc((100% / 3) - 10px); transition:.3s ease }
#main .news_list li:hover { transform: translateY(-5px) !important;}
#main .news_list li:hover a span:nth-child(3) { color:var(--color_point); }
#main .news_list li a {border-radius:100px; margin-bottom:20px; box-shadow:2px 2px 10px 0px rgba(0,0,0,.1); display: flex; align-items: center; padding:15px; font-family:"NSN"; color:#000; line-height: 1;}
#main .news_list li a span:nth-child(1) { background-color:var(--color_main); display:flex; align-items: center; justify-content: center; width:var(--icon_size); height:var(--icon_size); border-radius:100px; flex-shrink: 0; }
#main .news_list li a span:nth-child(1) img { width:50%;}
#main .news_list li a span:nth-child(2) { padding-left:20px; font-size:24px;}
#main .news_list li a span:nth-child(2) em { color:var(--color_main); font-weight:900;}
#main .news_list li a span:nth-child(3) { margin-left:auto; font-size:40px; color:#eaeaea; transition:.3s ease }

#sub { padding:0 0 100px 0}

#sub .title_box { display:flex;  justify-content: center; border-bottom:1px solid var(--color_main); max-height:700px; }
#sub .title_box li { width:50%; max-width:700px; overflow:hidden;}
#sub .title_box li.title { display:flex; flex-direction: column; justify-content: center; padding-left:100px; transition:.3s ease}
#sub .title_box li.mvisu { display:flex; align-items: center; justify-content: center; }
#sub .title_box li.mvisu img { width:100%; }
#sub .title_box .category { font-size:20px; font-weight:700; position:relative;  transition:.3s ease}
#sub .title_box h1 { font-size:50px; font-weight:300; font-family:"NSN"; color:var(--color_main); margin:0; margin-top:70px;  transition:.3s ease}
#sub .title_box h1 i { font-style: italic; }
#sub .title_box h1.gap-minuse {
    text-indent: -20px;
}
#sub .title_box h1 span { font-weight:700;}
#sub .title_box .title_sub {  font-size:25px; margin-top:50px; color:var(--color_point2);  transition:.3s ease}
#sub .title_box .title_sub.big {  font-size:50px; font-weight:500;}
#sub .title_box .title_sub span { font-weight:700;}
#sub .title_box .title_man {  font-size:20px; margin-top:50px;line-height: 1.4;  transition:.3s ease}
#sub .title_box .title_man span { font-weight:700;}
#sub .title_box .title_man em { font-size:.8em; color:var(--color_point6)}
@media screen and (max-width:1400px){
	#sub .title_box li.title {padding-left:7vw;}
	#sub .title_box .category { font-size:1.4vw; }
	#sub .title_box h1 { font-size:4vw; margin-top:3vw;}
	#sub .title_box h1.gap-minuse {
		text-indent: -1.5vw;
	}
	#sub .title_box .title_sub {  font-size:1.8vw; margin-top:2vw;}
	#sub .title_box .title_sub.big {  font-size:4vw; margin-top:2vw;}
	#sub .title_box .title_man {  font-size:1.5vw; margin-top:2vw;}

}

#sub .sub_list { padding-top:50px;}
#sub .sub_list > li { width:100%; max-width:var(--max_width); ; margin:0 auto; padding:0 20px;}
#sub .sub_list .category { font-size:20px; font-weight:700; position:relative; margin-top:100px;}
/*
#sub .sub_list .category:after { content:""; display:block; width:100vw; height:1px; position:absolute; bottom:0; left: -100vw; background-color: var(--color_main)}
*/
#sub .sub_list h1 { font-size:50px; font-weight:300; font-family:"NSN"; color:var(--color_main); margin:0; margin-top:70px; letter-spacing:-4px; word-spacing:4px}
#sub .sub_list h1 i { font-style: italic; }
#sub .sub_list h1.gap-minuse {
    text-indent: -20px;
}
#sub .sub_list h1 span { font-weight:700;}
#sub .sub_list .title_sub {  font-size:30px; margin-top:50px; color:var(--color_point2)}
#sub .sub_list .title_sub span { font-weight:700;}
#sub .sub_list .title_man {  font-size:20px; margin-top:50px; text-align:right; line-height: 1.4;}
#sub .sub_list .title_man span { font-weight:700;}
#sub .sub_list .title_man em { font-size:.8em; color:var(--color_point6)}

#sub .sub_list .dec {  font-size:24px; color:var(--color_point2); line-height:1.6; margin-top:100px;  word-break: break-all;  }
#sub .sub_list .dec b { font-weight:700;}
#sub .sub_list .dec div { text-align:right; font-size:.8em; color:#333}
#sub .sub_list .dec div span { font-weight:700; }

#sub .sub_list .contents { margin-top:100px;}
#sub .sub_list .contents h2 { font-size:24px; line-height:1.6; color:var(--color_main);  font-family:"NSN"; font-weight:400; word-break: break-all; text-align: justify; letter-spacing:-1px; word-spacing:2px;  margin:0;  }
#sub .sub_list .contents h2 span { font-weight:700; }
#sub .sub_list .contents h3 { font-size:20px; line-height:1.6;  font-family:"NSN"; font-weight:400; word-break: break-all; text-align: justify; letter-spacing:0px; word-spacing:2px; margin:0; }
#sub .sub_list .contents h3 span { font-weight:700; }
#sub .sub_list .contents h4 { font-size:16px; line-height:1.6;  font-family:"NSN"; font-weight:400; word-break: break-all; text-align: justify; letter-spacing:0px; word-spacing:2px; margin:0; }
#sub .sub_list .contents h4 span { font-weight:700; }


#sub .sub_list .contents p { font-size:var(--font_size); line-height:1.65; word-break: break-all; }
#sub .sub_list .contents p.paper { font-style: italic; color:var(--color_point2); font-size:16px}

#sub .sub_list .contents h2 span.q { background-color:var(--color_main); color:#fff; font-size:.8em; border-radius:4px; padding: 5px 8px; vertical-align: middle;}
#sub .sub_list .contents p span.q { background-color:var(--color_point2); color:#fff;  font-size:.8em; border-radius:4px; padding:2px 4px 2px 5px; vertical-align: text-bottom;}
#sub .sub_list .contents p span.a { background-color:var(--color_point); color:#fff;  font-size:.8em; border-radius:4px; padding:2px 4px 2px 5px; vertical-align: text-bottom;}

#sub .sub_list .contents h1 + p { margin-top:20px;}
#sub .sub_list .contents h2 + p { margin-top:20px;}

#sub .sub_list .contents .owl-carousel + p,
#sub .sub_list .contents div.img + p,
#sub .sub_list .contents * + h2 { margin-top:100px;}
#sub .sub_list .contents div.img.left + p,
#sub .sub_list .contents div.img.right + p { margin-top:20px;}
#sub .sub_list .contents div + p,
#sub .sub_list .contents p + p { margin-top:20px;}
#sub .sub_list .contents sup { color:var(--color_point); font-weight:700}
#sub .sub_list .contents .annotation { margin-top:50px; padding-top:50px; border-top:var(--border_main)}
#sub .sub_list .contents .annotation li + li { margin-top:10px;}
#sub .sub_list .contents .annotation li em { font-weight:700; color:var(--color_point); margin-top:-5px;}


#sub .sub_list .img { margin-top:100px; text-align:center}
#sub .sub_list .img.left {width:45%; float:left; margin:30px 0; padding-right:50px;}
#sub .sub_list .img.right {width:45%; float:right; margin:30px 0; padding-left:50px;}

#sub .sub_list .img.news {width:50%; float:left; margin:50px 0; padding-right:50px;}
#sub .sub_list .img.topgapno {margin-top:0}
#sub .sub_list .img.topgaph2 {margin-top:100px}
#sub .sub_list .img img { width:100%; border-radius:20px;}
#sub .sub_list .img.wi70 img { width:70%; }
#sub .sub_list .img.wi50 img { width:50%; }
#sub .sub_list .full { max-width:100%; margin:0; margin-top:100px; /*display:flex; align-items: center; justify-content: center;  overflow:hidden; */ height:600px; 
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
	background-position: center;
}

#sub .sub_list .nimg { padding-top:30px; padding-bottom:30px;}
#sub .sub_list .nimg.left {width:45%; float:left; padding-right:50px;}
#sub .sub_list .nimg.right {width:45%; float:right;  padding-left:50px; }
#sub .sub_list .nimg.pt { padding-top:30px}
#sub .sub_list .nimg.pb { padding-bottom:30px}
#sub .sub_list .nimg img {max-width:100%; }
#sub .sub_list .caption { padding:10px; background-color: var(--color_point7); font-size:.9em;     word-break: break-all;}

#sub .sub_list .split { display:flex; justify-content: space-between; }
#sub .sub_list .split li { flex-grow: 1; width: 100%;}
#sub .sub_list .split li + li { margin-left:20px; }
#sub .sub_list .split li img { width:100%; }

.pagenavi { position:sticky; padding-right:10px; bottom:10px; margin-left: calc(100vw - 80px); margin-top: -100px; z-index: 10;  box-shadow: 0 0 10px 0 rgba(0,0,0,.1);
	--navi_size:60px;
}
.pagenavi a { width:var(--navi_size); height:var(--navi_size); border: var(--border_main); display:flex; align-items: center; justify-content: center; flex-direction: column; background-color:rgba(255,255,255,.8);flex-shrink: 0;  }
.pagenavi a i { font-size:calc(var(--navi_size) * .5);}
.pagenavi a i.bxs-home { font-size:calc(var(--navi_size) * .3);}
.pagenavi span { font-size:8.5px;}

.pagemove { margin:0 auto; width: 100%; max-width: var(--max_width); display:flex; justify-content: space-between; border-top:var(--border_main); padding:50px 0 0 0}
.pagemove li { display: flex; align-items: center;}
.pagemove li > i { font-size:30px; padding:0 30px;}
.pagemove li div span { display:block; font-size:1.1em; margin-top:5px; opacity:.8}
.pagemove li:nth-child(2) div { text-align:right}
.pagemove a { font-size:1.4em; font-weight:700}

.ani_bg { background-image: linear-gradient(var(--color_point3), var(--color_point3)); background-size: 0% 100%; background-position: 0% 0%; background-repeat: no-repeat; transition: 1s; }
.ani_bg.active {background-size: 100% 100%;}

.share_sns { display:flex; justify-content: center; align-items: center; padding:50px 0 100px 0; margin-top: -100px; line-height: 1;}
.share_sns.private { font-size:14px; }
.share_sns.private i  { font-size:1.4em; margin-right:2px; color:var(--color_point)}
.share_sns a { font-size:1.4em; display: flex;}
.share_sns a i.bi { font-size:.75em}
.share_sns a + a {margin-left:40px }
.share_sns span { font-size:12px; line-height:1; padding-right:20px;}


.logo_main.etc { position:relative; text-align:center;
	--logo_size: 30px;
}
.logo_main.etc li { justify-content: center; }
.logo_main.etc li.s3 { font-size:14px}
.error_con { display:flex; height:50vh; align-items: center; justify-content: center; flex-direction: column; }
.error_con h1 { padding:0; margin:0; line-height:1; font-size:100px; font-weight:100}
.error_con h2 { padding:0; margin:0; line-height:1; font-size:50px; font-weight:700; color:var(--color_main)}
.error_con p { font-size:20px; padding:30px 0 50px 0; text-align:center}
#main.book { padding:50px 0; text-align:right}
#main.book .main_list li {width:calc((100% / 4) - 10px); }
#main.book .main_list li h2 { font-size:50px; font-weight:900; margin-top: 5px;  line-height: 1; min-height:unset}
#main.book .main_list li h2 em { font-size:20px; font-weight:400; margin-right:10px;}

table.tbl_adn {margin:0 auto; border-spacing: 0px; border-bottom:var(--border_2)}
table.tbl_adn tr > * { padding:10px; border-top:var(--border_main); border-left:var(--border_main); text-align:center; min-width:150px;}
table.tbl_adn tr:first-child > * {border-top:var(--border_2);}
table.tbl_adn tr > *:first-child { border-left:none;}
table.tbl_adn th {background-color:#fafafa;}

#admin table.tbl_adn tr:nth-child(2) > * {font-size:1.4em}

#admin .visitor { font-size:20px; padding:20px; text-align:center;}
#admin .visitor em { font-weight:700}
#admin .month { padding:20px; text-align:center; display:flex; justify-content: center; align-items: center;}
#admin .month a { font-size:20px; padding:0 5px;}
#admin .month span { font-size:26px; font-weight:700}
#admin .month * + * {margin-left:30px;}

/* 팝업 */
.popup { position:fixed; top:0; left:0; width:100%; height:100vh; padding:20px 0; display:flex;justify-content: center; align-items: center; flex-direction: column; background-color:rgba(0,0,0,.5); z-index:999; backdrop-filter: blur(5px); }
.popup li { width:520px; overflow:hidden; overflow-y:auto }
.popup img { width:100%; }
.popup .btnbox { height:50px; font-family:"NSN"; padding:0 20px; background-color:#000; color:#fff; line-height: 1; display:flex;justify-content: center; align-items: center}
.popup .btnbox label { margin:0 5px 0 5px}
.popup .btnbox a { color:#fff; font-weight:400; display:flex;justify-content: center; align-items: center; font-size:10px; border:1px solid #5c5c5c;  padding:2px 0 2px 5px; border-radius:6px; }
.popup .btnbox a i { font-size:1.8em}

/* book */
.stall { display:flex; margin:50px 0; border:var(--border_main); border-radius:16px; padding:30px; box-shadow:var(--boxshadow) }
.stall li:nth-child(1) { width:200px; }
.stall li:nth-child(2) { width:calc(100% - 200px); padding-left:50px; }
.stall li img { width:100%; }
.stall li h3 { color:var(--color_main)}
.stall li .ti { font-size:24px; font-weight:600; margin-top:20px;}
.stall li .info { font-size:16px; }
.stall li .info em { color:var(--color_point); font-size:}
.stall li .info span { font-weight:700}
.stall li .info span + em { margin-left:10px; }
.stall li .ti + .info { margin-top:10px;}
 
 
.tabmenu { display:flex; position:sticky; top:-1px; z-index: 2; box-shadow: 0 10px 10px 10px #fff; }
.tabmenu  li { border:1px solid #fff;  border-bottom-color:var(--color_main);border-radius:10px 10px 0 0; height:70px; display:flex; align-items: center; justify-content: center; flex-grow: 1; text-align:center; font-size:var(--font_size); background-color:#f3f3f3; cursor: pointer; color:#999}
.tabmenu  li.active {border:1px solid var(--color_main);  border-bottom-color:#fff; background-color:#fff; font-weight:700; color:var(--color_main); opacity:1}
.tabmenu_tgt > li { display:none; padding:50px 0}
.tabmenu_tgt > li.active { display:block}

.ul_number { padding-left:30px; font-size:var(--font_size)}
.ul_number li { list-style: auto; padding:10px 5px;}
.ul_number li + li { border-top:var(--border_main)}

table.tbl { border-spacing: 0; margin:20px 0;  font-size:var(--font_size); width:100%;}
table.tbl tr th { color:var(--color_main); font-size:.85em}
table.tbl tr:first-child :where(th, td) { border-top:1px solid #333}
table.tbl tr:last-child  :where(th, td)  { border-bottom:1px solid #333}
table.tbl tr :where(th, td) { border-top:1px solid #dedede; padding:15px 10px;}



@media screen and (max-width:1024px){
	header { padding:30px;
		--gnb_size:60px;
	}
	.logo_main { padding: 15px;
		--logo_size:12px;
	}
	.logo_main li.s2 span:nth-child(1) { font-size:20px; letter-spacing:0px}
	.logo_main li.s2 span:nth-child(2) { font-size:50px; letter-spacing:-8px}
	.logo_main li.s3 { font-weight:300; font-size:8px; }
	.logo_sub { top:20px; left:20px;
		--logo_size:14px;
	}
	
	footer { padding:50px 0; margin-top:5px;}
	footer ul {flex-direction: column; text-align:center}
	footer ul li.info {padding-left:0; padding-top:10px; line-height:1.6}
	footer ul li.info span:nth-child(2) { font-size:10px;}
	footer ul li.info em {margin:0 5px 0 0}	
	footer ul li.past_issues {margin-left: unset; margin-top:30px;}
	
	.banner .box_title h2 {    font-size: 5vw;}
	#main  { padding: 0 20px; }
	#sub { padding:0 0 50px 0}
	#sub .sub_list .category { font-size:18px; }
	#sub .sub_list .category:after { left: calc(-100vw + 20px)}
	#sub .sub_list h1 { font-size:50px;}
	#sub .sub_list .title_sub {  font-size:20px; }
	#sub .sub_list .title_man {  font-size:18px;}
	.pagenavi { 
		--navi_size:50px;
	}
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 1) {
    /* iPad 공통 스타일 */
	#main .main_list li:hover { transform: translateY(0px) scale(100%) !important;  transition:.3s ease; z-index:1; }
	#main .news_list li a span:nth-child(2) { padding-left:15px; font-size:20px;}
	#sub .sub_list li { padding:0 50px }
}
@media screen and (max-width:768px){

	.btn_jin { 
	--btn_size:30px;
	}
	.btn_jin.big { 
	--btn_size:35px;
	} 	
	header { padding:10px;
		--gnb_size:40px;
	}
	.logo_main { padding: 15px;
		--logo_size:12px;
	}
	.logo_main li.s2 span:nth-child(1) { font-size:20px; letter-spacing:0px}
	.logo_main li.s2 span:nth-child(2) { font-size:40px; letter-spacing:-4px}
	.logo_main li.s3 { font-weight:300; font-size:6px; }
	.logo_sub { top:20px; left:20px;
		--logo_size:14px;
	}

	.logo_sub li.s2 { margin-left:10px;}
		
	footer ul {flex-direction: column; text-align:center}
	footer ul li.logo { order:2}
	footer ul li.info {padding-left:0; line-height:1.6; order: 2;}
	footer ul li.info span:nth-child(3) { font-size:10px;}
	footer ul li.info em {margin:0 5px 0 0}	
	footer ul li span.quicklink { justify-content: center; padding-top:20px;}
	footer ul li.past_issues {margin-left: unset; margin-bottom:30px; margin-top:0;  order: 1;}
	
	nav { width:100%; justify-content:unset;min-height: -webkit-fill-available;
	--logo_nav_size:18px;
	--gnb_gab:30px;
	}
	nav > ul { flex-direction: column; width:100%; max-width: 100%; transform: translateX(10px); height: -webkit-fill-available;}
	nav > ul > li:nth-child(1) { padding:0 30px; background-image: none !important; background-color: var(--color_main);}
	nav .logo_nav {display:flex; align-items: center; height:60px; }
	nav .logo_nav li.s2 { margin-left:10px;}
	nav .logo_nav li.s2 span:nth-child(1) ,
	nav .logo_nav li.s2 span:nth-child(2) { font-size:var(--logo_nav_size);  letter-spacing:0; }
	nav > ul > li:nth-child(2) { padding:0; width:100%; overflow: scroll;padding: 0px 10px 50px 10px;  }
	nav ul.gnb { /*height:calc(100vh - (var(--gnb_gab) * 2) - 60px);*/ width:100%; overflow: unset; padding-bottom:50px; height:unset  }
	
	.gnb_home { font-size:calc(var(--gnb_size) * .4); width:calc(var(--gnb_size) * .9); height:calc(var(--gnb_size) * .9);}
	nav .gnb_close { color:#fff; height:60px; width:60px; }
	
	nav .login { padding:20px;  align-items: flex-start;  flex-direction: row;     justify-content: space-between; text-align:left; border-top:1px solid rgba(255,255,255,.2); background-color: var(--color_main); color:#fff;}
	nav .login h2 { font-size: 11px; margin:0 }
	nav .login h2 span { font-size: 9px; padding:0 }
	
	.banner { padding-bottom:10px;}
	.banner li {  background-size: auto 105% }
	.banner .owl-item.active li { background-size:auto 100% ; }
	.banner .box_con img { width:100%; }
	.banner .box_title { position:relative; bottom: 20px;  right:20px; }
	.banner .box_title  h3 { font-size:15px;}
	.banner .box_title  h2 { font-size:25px;}
	.banner .box_title .btn_jin { margin-top:10px;}
	
	#main  { padding: 0 5px; }
	#main .main_list li {width:calc(50% - 2px);  margin:0 1px}
	#main .main_list li:hover { transform: translateY(0px) scale(100%) !important;  transition:.3s ease; z-index:1; }
	#main .main_list li a {border-radius:10px; margin-bottom:5px; padding-bottom:10px; border:var(--border_main); }
	#main .main_list li h3,
	#main .main_list li h2,
	#main .main_list li .hash { padding:0 10px; }
	#main .main_list li h3 { font-size:10px; margin-top:5px;}
	#main .main_list li h2 { font-size:14px; margin-top:5px; min-height: 70px;}
	#main .main_list li .hash {margin-top:10px;}
	#main .main_list li .hash span { height: 20px;  font-size: 8px; }
	
	#main .news_list {
	--icon_size : 60px;
	}
	#main .news_list li {width:calc((100% / 3) - 2px); transition:.3s ease }
	#main .news_list li a { border-radius:10px; padding:15px 0 10px 0; margin-bottom:5px; border:var(--border_main); flex-direction: column; text-align:center}
	#main .news_list li a span:nth-child(2) { padding-left:0px; font-size:14px; padding:10px 0; line-height:1.2; display:flex; align-items: center; flex-direction: column; justify-content: center; }
	#main .news_list li a span:nth-child(3) { font-size:20px; color:var(--color_point); margin-left:unset;}
/*	
	가로형
	#main .news_list {
	--icon_size : 40px;
	}
	#main .news_list li {width:100%; }
	#main .news_list li a { border-radius:15px; padding:15px 20px; margin-bottom:5px; border:var(--border_main)}
	#main .news_list li a span:nth-child(2) { padding-left:20px; font-size:18px;}
	#main .news_list li a span:nth-child(3) { font-size:30px; color:var(--color_point); }
*/	

	#sub .title_box .title {order:2}
	#sub .title_box .mvisu {order:1}
	#sub .title_box {flex-direction: column; max-height:unset; border-bottom:1px solid var(--color_point5)}
	#sub .title_box li { width:100%; max-width:100%; height:100vw }
	#sub .title_box li.title {padding-left:10vw;}
	#sub .title_box .category { font-size:4vw; }
	#sub .title_box h1 { font-size:10vw; margin-top:7vw;}
		#sub .title_box h1.gap-minuse {
		text-indent: -3vw;
	}
	#sub .title_box .title_sub {  font-size:5vw; margin-top:6vw;}
	#sub .title_box .title_sub.big {  font-size:8vw; margin-top:6vw;}
	#sub .title_box .title_man {  font-size:4.5vw; margin-top:6vw;}
	
	
	#sub .sub_list .category { font-size:16px; text-align:center; margin-top: 50px;}
	#sub .sub_list h1 { font-size:40px; margin-top: 50px !important;  letter-spacing:-2px; word-spacing:4px; text-align:center}
	#sub .sub_list h1.gap-minuse {
		text-indent: 0;
	}
	#sub .sub_list .dec {  font-size:20px; }
	#sub .sub_list .title_sub {text-align:center; font-size:22px;     margin-top: 30px;}
	#sub .sub_list .title_man {  text-align:center; font-size:14px;     margin-top: 30px;}
	#sub .sub_list .contents { margin-top:50px;}
	#sub .sub_list .contents h2 { font-size:20px;  letter-spacing:-1px; word-spacing:2px;}
	#sub .sub_list .contents p {}
	#sub .sub_list .contents * + h2 { margin-top:50px;}
	#sub .sub_list .img { margin-top:50px;}
	#sub .sub_list .full {margin-top: 50px; height:50vh}
	#sub .sub_list .img.left,
	#sub .sub_list .img.right {width:100%; float:unset; margin:50px 0; padding-left:0; padding-right:0; }
	#sub .sub_list .img.wi70 img,
	#sub .sub_list .img.wi50 img { width:100%; }
	
	
	#sub .sub_list .nimg.left,
	#sub .sub_list .nimg.right {width:100%; float:unset; padding-left:0; padding-right:0; }
	#sub .sub_list .split {   flex-wrap: wrap; }
	#sub .sub_list .split li { width:100%; }
	#sub .sub_list .split li + li { margin-left:0; padding-top:30px;}
	
	.pagenavi { margin-left: calc(100vw - 45px); 
		--navi_size:40px;
		position: fixed;
	}
	
	.logo_main.etc { padding:50px 0 0 0;
		--logo_size: 20px;
	}
	.logo_main.etc li.s3 { font-size:12px}
	#main.book .main_list li {width:calc((100% / 2) - 10px); }
	#main.book .main_list li h2 { font-size:30px}
	#main .main_list li a > span {padding:0 10px; font-size:12px}
	.share_sns { margin-top:-50px; padding: 100px 0 50px 0; }
	.share_sns a { font-size:1.2em; }
	
	.pagemove { padding:30px 0 0 0}
	.pagemove li > i { font-size: 20px; padding: 0 10px;}
	.pagemove a { font-size:1.1em;}
	.pagemove li div span { font-size:.8em}

	/* 팝업 */
	.popup {  }
	.popup li { width:95%; margin:0 10px;}
	
	.tabmenu  li { border-radius:0; height: 50px; font-size:12px}
}

@media screen and (max-width:345px){
	#main .main_list li h2 { font-size:12px; margin-top:5px; min-height: 60px;}

}
