/* 내장 폰트 */
@font-face {
    font-family: 'OpenSans';   font-style: normal;   font-weight: 700;
    src: url("./fonts/OpenSans-Bold.woff") format('woff');
}
@font-face {
	font-family: 'OpenSans';    font-style: normal;    font-weight: 400;
    src: url("./fonts/OpenSans-Regular.woff") format('woff');
}

body {
    font-family: 'OpenSans' , sans-serif;
    overflow: hidden;
	font-weight: 400; 
    margin: 0;
    width: 100%;
    height: 100%;
}

/* 탭 포커싱 테두리 */
li:focus,
select:focus,
span:focus {
    border: 1px solid rgba(128, 255, 255, 0.5) !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    /* inner border style */
    outline: none;
    /* hide default focus frame */
}

.slideframe .page {
    background-color: #ffffff;
    box-shadow: 5px 5px 7px rgb(0 0 0 / 30%);
}

/*--------------------------------------------------------------------------------------------------
		Components By Class
*/

/* 로고 이미지 */
.logo {
    cursor: pointer;
}
/* 홈 버튼 */
.home {
    cursor: pointer;
}

/* 섬네일 항목 */
.thumblist ul {
    margin: 0;
    padding: 0;
}
/* 섬네일 항목 */
.thumblist li {
    display: inline;
    margin: 0 2px;
}
.thumblist li div {
    display: inline-block;
    width: 10%;
    min-width: 70px;
}
/* 섬네일 선택 표시 */
.thumblist .on {
    border: 4px solid rgb(255, 128, 0);
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    /* inner border style */
}
/* 섬네일 번호 칸 */
.thumblist span {
    position: absolute;
    padding: 0.2em 0.4em;
    margin: 2px 0 0 2px;
    border: 1px solid rgb(128, 128, 128);
    border-radius: 1em;
    background-color: rgb(255,255,255);
    color: rgb(64,64,64);
    text-align: center;
    text-shadow: 1px 1px rgb(192,192,192);
    font-weight: bold;
    font-size: 10px;
    font-family: Helvetica, Arial, sans-serif;
}
.thumblist img {
    cursor: pointer;
    width: 100%;
    height: auto;
}

/* 책갈피 이미지 */
.pageview img.bookmark {
    position: absolute;
    width: 5%;
    height: auto;
    cursor: pointer;
    top: -5px;
    left: 0;
    right: 0;
    margin: auto;
    opacity: 0.25;
    filter:alpha(opacity=25);
}
.pageview img.bookmark:hover {
    opacity: 0.5;
    filter:alpha(opacity=50);
    border: 3px dotted #DDDDDD;
}
.pageview img.bookmark.activate {
    opacity: 0.5 !important;
    filter:alpha(opacity=50) !important;
}

/* 창 끌기바(공통속성) */
.draggable {
    width: 100%;
    margin: 0;
    font-weight: bold;
    color: #333333;
    z-index: 10;
    background: #ffffff;
    border: 0px solid #E3E3E3;
}
.draggable p {
    padding: 1.1em;
    font-size: 0.9em;
    margin: 0;
}
div span.close {
    position: absolute;
    right: 10px; 
    top: 5px;
    font-size: 30px;
    cursor: pointer;
    color: #808286;
    z-index: 10;
}

/* 암호입력박스 */
#pwdBox {    background: #ffffff;	padding: 20px;	text-align: center; }
#pwdText { width:200px;height:30px; background: #eaeaea; border: 1px solid #dddddd; border-radius: 4px; margin: 20px 0;}
#pwdBox .btn_pwd {background-color: #4a4a4a; color: #ffffff; padding: 6px 20px; border-radius: 20px;border: 0;    display: block;    margin: auto;    cursor: pointer; }

.next-button, .previous-button {max-width: 60px !important; }

#search_window_box {display:none;position: absolute; right: 10px; top: 50%; z-index: 7; width: 30%; max-width: 450px; transform: translateY(-50%);}

/*-------------------------------------------------------------------------------------------------- 목차 창 */
div.tablelist {
    position: absolute;
    left: 0%;
    top: 0%;
    min-width: 200px;
    max-width: 350px;
    width: 30%;
    height: 100%;
	z-index: 10;
	display: none;
    background-color: #ffffff;
    box-shadow: 0 1px 6px 0 rgba(32,33,36,.2);
}
.tablelist ul {
    width: 100%;
    height: 100%;
    overflow-y: auto;
    padding: 0;
    margin: 0;
    list-style-type: none;
    border: 1px solid #E6E6E6;
    
}
.tablelist li.contents {
    cursor: pointer;
    border-top: 1px solid #F0F0F0;
    border-bottom: 1px solid #E2E2E2;
}
.tablelist li.contents:hover {
    border-top: 1px solid #F0F0F0;
    border-bottom: 1px solid #E2E2E2;
}
.tablelist li p {
    margin: 0.5em auto;
    padding-left: 1em;
    padding-right: 1em;
    font-size: 0.9em;
    color: #7C8187;
}
.tablelist li span {
    float: right;
    color: #39C;
    display: none;
}
/*-------------------------------------------------------------------------------------------------- 책갈피 창 */
div.bookmarklist {
    position: absolute;
    left: 0%;
    top: 0%;
    min-width: 200px;
    max-width: 350px;
    width: 30%;
    height: 100%;
    z-index: 10;
    display: none;
    border-right-style: solid;
    border-right-width: 2px;
    border-right-color: #EBEBEB;
    background: #ffffff;
	box-shadow: 0 1px 6px 0 rgba(32,33,36,.2);
}
/* 책갈피 목록 */
.bookmarklist ul {
    width: 95%;
    height: 95%;
    margin: auto;
    padding: 0;
    list-style-type: none;
    overflow: auto;
}
.bookmarklist li.contents {
    cursor: pointer;
    height: 100px;
    border-top: 1px solid #F0F0F0;
    border-bottom: 1px solid #E2E2E2;
    margin-top: -1px;
    position: relative;
}
.bookmarklist li.contents:first-child {
    margin-top: 0px;
}

.bookmarklist li.contents:hover {
    border-top: 1px solid #F0F0F0;
    border-bottom: 1px solid #E2E2E2;
}
.bookmarklist li.contents img {
    display: inline-block;
    float: left;
    width: auto;
    height: 100%;
    border: 1px solid gray;
    margin-right: 10px;
}
.bookmarklist li.contents span.page {
    position: absolute;
    left: 5px;
    background-color: white;
    border: 1px solid gray;
    border-radius: 1em;
    font-size: 0.75em;
    padding: 0.2em 0.5em;
    margin-top: 0.5em;
}
.bookmarklist li.contents p.text {
    font-size: 13px;
    color: #333333;
}
/*-------------------------------------------------------------------------------------------------- 검색 창 */
div.searchlist {
    position: absolute;
    left: 0%;
    top: 0%;
    min-width: 250px;
    max-width: 350px;
    width: 30%;
    min-height: 100px;
    height: 100%;
    z-index: 10;
    display: none;
    border-right-style: solid;
    border-right-width: 2px;
    background: #ffffff;
    box-shadow: 0 1px 6px 0 rgba(32,33,36,.2);
}
.searchlist ul {
    width: 100%;
    height: 90%; 
    margin: auto;
    padding: 0 7px;
    list-style-type: none;
    overflow-y: auto;
}
.searchlist li.header {
    text-align: left;
    border-top: 1px solid #f5f5f5;
    padding: 5px 0;
    
}
.searchlist li.header input.search_text {
    position: relative;
    width: 66%;
    text-align: left;
    height: 30px;
    display: inline-block;
    background-color: #f5f5f5; 
    padding: 3px; 
    border-radius: 5px;
    border: 0; 
    vertical-align: top;
    margin-right: 5px;
    margin-left: 5px;
    
}
.searchlist li.header p {
    display: inline-block;
    font-size: 12px; 
    color: #444444;
    padding: 0; 
    margin: 0;
    width: 25%;
    font-weight: bold;
    text-align: center;
}
/* 검색 목록 */
.searchlist li.contents {
    cursor: pointer;
    height: 100px;
    border-top: 1px solid #F0F0F0;
    border-bottom: 1px solid #E2E2E2;
    margin-top: -1px;
    position: relative;
    padding: 2px;
}
.searchlist li.contents:first-child {
    margin-top: 0px;
}

.searchlist li.contents img {
    display: inline-block;
    float: left;
    width: auto;
    height: 100%;
    border: 1px solid gray;
    margin-right: 10px;
}
.searchlist li.contents span.page {
    position: absolute;
    left: 5px;
    background-color: white;
    border: 1px solid gray;
    border-radius: 1em;
    font-size: 0.75em;
    padding: 0.2em 0.5em;
    margin-top: 0.5em;
}
.searchlist li.contents span.text {
    color: #333333;
    font-size: 13px;
}
.searchlist li.contents span.highlight {
    color: #fd2828;
    background-color: #e5e5e5;
    font-weight: bold;
    font-size: 13px;
}
.searchlist li.more {
    color: #444444;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
    background: #f2f2f2;
}
.searchlist li.more:hover {}
/*-------------------------------------------------------------------------------------------------- Objects By ID */
/* 배경 영역 */
#background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    border: 0;
    background: #ffffff;
    background-repeat: repeat;
}
/* 페이지 표시 영역 */
#pageview {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 60px;
    max-width: 2400px;
    width: 100%;
    height: 90%;
    min-height: 50px;
    z-index: 2;
    border: 0;
    background: rgba(0,0,0,0);
    overflow: hidden;
}
#pageview_m {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 50px;
    max-width: 2400px;
    width: 95%;
    height: 90%;
    min-height: 50px;
    z-index: 2;
    border: 0;
    background: rgba(0,0,0,0);
    overflow: hidden;
}
#pagenation { 
    position: absolute;
    bottom: 0px;
    width: 80%;
	left: 50%; 
	max-width: 500px;
	transform: translateX(-50%); 

    padding: 0px;
    text-align: center;
    font-size: 14px; 
}
#pagenation img {
    vertical-align: middle;
    max-width: 30px;
    padding: 7px; 
    border: 1px solid #dddddd;
    border-radius: 5px;
    margin: 2px;
	background-color: #ffffff;

}

#pagenation img:hover {box-shadow: 0 1px 6px 0 rgba(32,33,36,.28);}
#pagenation span {
    padding: 3px;
}


#menu_top { display: inline-block;  margin-left: 10px;	}

#search_window {
	background: #dddddd;
	opacity: 0.5;
	border-radius: 5px;
	color: #000000;
	display: inline-block;
	max-width: 180px;
}
#search_window:after {
	clear:both; content:""
}
#search_text_btn {
	max-width: 30px;
}
#search_text {
	width: 80%; 
	border: 0; 
	font-size: 14px; 
	height: 36px;
	padding-left: 4px;
	background-color: transparent;	
}

/* 이전호 목록 */
#booklist {
    width: 100%;
	height: 36px;
	padding: 3px;
	-webkit-appearance: none;
	-moz-appearance: none;
	
	background: #dddddd url(images/bg_select.svg) calc(100% - 10px) 10px  no-repeat;
	background-size: 20px;
	opacity: 0.5;
	border: 0; 
	border-radius: 5px;
	font-size: 14px; 
	color: #000000; 
	min-width: 180px;
}
#booklist::-ms-expand { display: none; }

/*-------------------------------------------------------------------------------------------------- 도구 메뉴 */
/* 상단 창 */
#top_window {
    position: relative;
    display: block;
    z-index: 8;
    width: 100%;
    height: 70px;
    text-align: center;
}
#top_center {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
	height: 100%;
	padding: 0 1%;
	text-align: right; 
}
/* 로고 이미지 */
#top_logo {
    position: absolute;
    left: 20%;
    top: 0;
    bottom: 0;
    margin: auto;
    width: auto;
    height: 35px;
	z-index: 10;
}



/* 메뉴 창 */
#menu_window {
    position: absolute;
	left: 0;
    right: 0;
    top: 0px;
    width: 100%;
    height: 70px;
    z-index: 6;
}



#btn_close {
	position: absolute;
	right: 5%; 

}
#menu_contents {
	padding: 14px 20px;
    padding-right:20%;
	text-align: right; 
    background-color: #ffffff;									 /* ======================   테마 색상 값 */
    box-shadow: 0 1px 6px 0 rgba(32,33,36,.2);
}

#menu_contents .menuitem {	width: 36px; height: 36px; display: inline-block;  margin: 0 8px; opacity: 0.7; }
#menu_contents .menuitem:hover {opacity:1;}
#menu_contents  .menutx {
	padding-left: 15px;
	vertical-align: text-top;
}


#menu_twitter img, #menu_facebook img, #menu_kakaotalk img{ 	max-width: 23px; }


#arrow_up {
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid #ffffff;
    float: right;
    margin-right: 20%;
    margin-top: -12px;
}



/* 도구 항목 */
.topobjects {
    width: 40px;
    height: auto;
    top: 0;
	bottom: 0;
	margin: 5px 3px 0;
	padding: 4px;

}
.menuobjects {
	width: 100%;
	max-width: 36px;
    height: auto;
	margin: 0;
	padding: 2px;
    vertical-align: middle;
}

#top_search_btn {
    right: 60px;
}
#home_btn {
    right: 80px;
    border-radius: 5px;
}
#top_menu_btn {
    right: 40px;
    background-color: #ffffff;							/* ========================  테마 색상값 */
    padding: 4px;
    border-radius: 5px;
}
#fullscreen_btn {
    right: 0;
    background-color: #ffffff;				        	/* ========================  테마 색상값 */	
    border-radius: 5px;
}
#page_prev_btn {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 5%;
    width: 30px;
    height: auto;
    z-index: 7;
	opacity: 0.4;
}
#page_next_btn {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 5%;
    width: 30px;
    height: auto;
    z-index: 7;
		opacity: 0.4;
}
#page_prev_btn:hover {opacity: 1;}
#page_next_btn:hover {opacity: 1;}

@media (max-width: 1280px) {
    #top_logo {height: 30px;left:10%}
    #menu_contents {padding-right:10%}
}
@media (max-width: 768px) { 
    #top_logo {height: 30px;left:2%}
    #menu_contents {padding-right:2%}
	#menu_top { display: inline-block;  width: 80%; margin-left: 0px;	 margin-bottom: 10px;}
}



/*-------------------------------------------------------------------------------------------------- 퀵 메뉴 */
#bottom_window {
    position: absolute;
    z-index: 4;
    height: 30px;
    left: 0;
    right: 0;
    bottom: 10px;
    margin: auto;
    text-align: center;
}
#bottom_sns {position: absolute; right: 10px; bottom: 0px; }
#bottom_sns .menuitem{ 
	 display: inline-block; width: 25px;  margin: 0 10px;
}



#quick_prev_btn {
    margin-right: 3%;
}
#quick_next_btn {
    margin-left: 3%;
}
#page_num {display: inline-block; width: 80px; padding: 5px; text-align: center; margin: 2px 5px; border-radius: 30px; height: 30px;
    background-color: #ffffff;    border: 2px solid #dddddd;   vertical-align: middle; cursor: pointer;  color: #666666 !important; font-weight: 700;}
#quick_page {display: inline-block; width: 80px; padding: 5px; text-align: center; margin: 2px 5px; border-radius: 30px; height: 30px;
    background-color: #ffffff;    border: 2px solid #dddddd;  display :none;   vertical-align: middle; color: #666666 !important; font-weight: 700;}



/*-------------------------------------------------------------------------------------------------- 섬네일 */
div.thumblist {
    position: absolute;
    z-index: 20;
    display: none;
}
div.thumblist .bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
}
div.thumblist .contents {
    position: fixed;
    left: 5%;
    top: 5%;
    min-width: 100px;
    width: 90%;
    min-height: 100px;
    height: 90%;
    overflow-x: hidden;
    overflow-y: auto;
}
/* ------------------------------------------------------------------ 인덱스탭 */
#bookclip {
/*    padding-top: 30px; */
    max-width: 150px;
	margin-top: 40px;
}
#bookclip div {
    display: block;
    padding: 10px;
    text-decoration: none;
    cursor: pointer;
    margin-bottom: 6px;
}
#bookclip .shadow {
    box-shadow: 2px 1px 3px #bbb;
}


/*  sns 레이어 */
#menu_sns {display: inline-block; position: relative; }
#snswrap {position: absolute; width: 160px; height: 90px; left: 50%; top: 50px;     transform: translateX(-50%); 
		border-radius: 8px; background-color: #ffffff;  padding: 10px 10px; display: none; box-shadow: 1px 2px 3px 1px rgb(0 0 0 / 13%); }
#snswrap .tit_sns {font-size: 14px;    color: #797878;    padding: 5px 0; width: 100%; display: block; margin: 0;     height: 24px;}
#snswrap .tit_sns .menutx {display: block; padding: 0; }

#menu_contents #menu_twitter, #menu_contents #menu_facebook, #menu_contents #menu_kakaotalk{ 
	display: inline-block; 
	border: 2px solid #eeeeee;
	border-radius: 50%;
	padding: 5px;
	margin: 3px;
	font-size: 0;
	line-height: 0;
    -webkit-transition: all 0.3s ease-in-out 0s;
    -moz-transition: all 0.3s ease-in-out 0s;
    -ms-transition: all 0.3s ease-in-out 0s;
    -o-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
}
#menu_contents #menu_twitter:hover { border-color: #1DA1F2; }
#menu_contents #menu_facebook:hover {border-color: #4867AA; }
#menu_contents #menu_kakaotalk:hover{ border-color: #FAE100; } 



/* 모달 팝업 */
#modal_wrap {position: absolute; width: 100%; height: 100%; top: 0; left: 0;  z-index: 10000;    visibility: hidden;}
#modal_wrap .bg_modal {background-color: rgba(0, 0, 0,0.85);  width: 100%; height: 100%; top: 0; left: 0; }
#modal_wrap .btn_closemodal {position: absolute; bottom: 30px; display: block; cursor: pointer;  left: 50%;  transform: translateX(-50%); background-color: #ffffff; 
	border-radius: 2px; color: #222222; font-size: 14px; padding: 10px 24px;  z-index: 100;    border: 1px solid #cccccc;}

#modal_wrap img {position: absolute; top: 50% !important; left: 50%  !important; transform: translate(-50%, -50%);  max-width: 100%; max-height: 800px;   height: auto !important;  visibility: visible  !important;  }
#modal_wrap video {position: absolute; top: 50% !important; left: 50% !important; transform: translate(-50%, -50%);  max-width: 1400px; max-height: 800px; width: 80%  !important;  height: auto !important;   }


/* 인트로 이미지 */
.intro {position:absolute; width:100%; height:100%;background: #ffffff;  z-index:10000}
.intro img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }


/* ----------------  모바일   ------------------- */

#top_window_m {
    position: relative;
    display: block;
    z-index: 6;
    width: 100%;
    height: 50px;
    text-align: center;
    background: #222222;
}

#menu_window_m {
	position: absolute;
    right: 0;
    top: 60px;
    width: 60%;
    max-width: 200px;
    height: auto;
    display: none;
    z-index: 6;
    box-shadow: 1px 4px 3px 2px rgb(0 0 0 / 14%);
}
#bottom_window_m #page_num, 
#bottom_window_m  #quick_page{height: 20px; }
#bottom_window_m  #pagenation img { width: 16px;}

#menu_contents_m {
	width: 100%; 
    max-height: 560px;
    overflow-y: auto;
	text-align: left; 
	padding: 10px;
}

#menu_contents_m #menu_twitter, 
#menu_contents_m #menu_facebook ,
#menu_contents_m #menu_kakaotalk {display: inline-block; 
	margin: 5px ;
	border: 1px solid rgba(208, 208, 208, 0.6);
	border-radius: 50%;
	padding: 3px;
}

#menu_contents_m .menutx {padding-left: 20px;}
#arrow_up_m {
	position: absolute; 
	top: -10px; 
	right: 15px;
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid #ffffff;
}
.topobjects_m {width: 30px; margin: 10px 5px;}

.quickobjects_m {
    width: auto;
    height: 80%;
    margin: 0 3%;
}
#quick_pagenum_area_m {
    color: gray;
    position: relative;
    bottom: 10px;
    font-size: 12px;
}
#quick_pagetotal_area_m {
    color: gray;
    position: relative;
    bottom: 10px;
    font-size: 12px;
}
.quicktexts_m {
    color: gray;
    position: relative;
    bottom: 10px;
    font-size: 12px;
}

#bottom_window_m {
    position: absolute;
    z-index: 4;
    width: 100%;
    max-width: 1200px;
    height: 30px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    text-align: left;
}
#quick_home_m {
    right: 5px;
    position: absolute;
}
