/********************************************************
■ 사이트 초기 설정
********************************************************/

/* 기반 색상 (Base Color) 정의 */
.bc1-txt, i.bc1-txt, a.bc1-txt, a.bc1-txt:link, a.bc1-txt:visited, a.bc1-hover-txt:hover { color:#00a0a0; }		/* 베이스 색상 */
.bc1-bg, a.bc1-bg, a.bc1-hover-bg:hover { background-color:#00a0a0; color:white; }
.bc1-bd, a.bc1-bd, a.bc1-hover-bd:hover { border-color:#00a0a0; }

.bc2-txt, i.bc2-txt, a.bc2-txt, a.bc2-txt:link, a.bc2-txt:visited, a.bc2-hover-txt:hover { color:#00c8c8; }		/* 밝은 색상 */
.bc2-bg, a.bc2-bg, a.bc2-hover-bg:hover { background-color:#00c8c8; color:white; }
.bc2-bd, a.bc2-bd, a.bc2-hover-bd:hover { border-color:#00c8c8; }

.bc3-txt, i.bc3-txt, a.bc3-txt, a.bc3-txt:link, a.bc3-txt:visited, a.bc3-hover-txt:hover { color:#077; }		/* 어두운 색상 */
.bc3-bg, a.bc3-bg, a.bc3-hover-bg:hover { background-color:#077; color:white; }
.bc3-bd, a.bc3-bd, a.bc3-hover-bd:hover { border-color:#077; }

.bt.bt-lrline.bt-white a { border-color:white; color:white; }
.bt.bt-lrline.bt-white a::before, .bt.bt-lrline.bt-white a::after { background:white; }
.bt.bt-lrline a { border-color:#b48b68; color:#b48b68; }
.bt.bt-lrline a::before, .bt.bt-lrline a::after { background:#b48b68; }

/* 내용 드래그했을때 선택 블록 */
::selection { color:white; background:#00a0a0 !important; }
::-moz-selection { color:white; background:#00a0a0 !important; }

/********************************************************
■ HTML 요소 초기화
********************************************************/

html, body {
	font-size: 15px; 		/*  기반 글자크기 재정의 -- 상대단위(rem) 사용에 중요함.  */
	font-family: "Open Sans", "나눔바른고딕", "NBG", sans-serif;
}
body { line-height:normal; color:#333; position:relative; left:0; overflow-x:hidden; background-color:white; background-repeat: no-repeat; background-attachment:fixed; background-size:cover; transition: all .2s ease; }

a, a:link, a:visited { color:#333; text-decoration:none; transition:all .3s ease; }
a:hover, a:focus, a:active { color:#00a0a0; text-decoration:none; }
fieldset legend { display:none; }
label { font-weight:normal; }
label.checkbox, label.radio { line-height:12px; font-size:12px; font-weight:normal; cursor:pointer; }
hr { margin-top: 20px; margin-bottom:20px; border:0; border-top:1px solid #eee; display:block; }
blockquote { font-size: 12px; margin:0 0 20px; }
.en, h1, h2, h3, h4, h5, h1 a, h2 a, h3 a, h4 a, h5 a { }
.sns-share-icon img { width:20%; max-width:34px; border-radius:50%; }

.b { font-weight:bold; }

h1, h2, h3, h4, h5, h6, .h0, .h1, .h2, .h3, .h4, .h5, .h6 { font-weight:bold; line-height:1.5; }
.h0, h1, h2, h3 { margin-top:10px; margin-bottom:10px; }
h4, h5, h6 { margin:0; }
.h0 { font-weight:bold; font-size:50px; }
h1, .h1 { font-size: 50px; }
h2, .h2 { font-size: 34px; }
h3, .h3 { font-size: 25px; }
h4, .h4 { font-size: 22px; }
h5, .h5 { font-size: 17px; }
h6, .h6 { font-size: 12px; }

p,
ol li { margin:0 0 10px; word-break:keep-all; line-height:1.5; }

p.desc { margin-bottom:0; }


/********************************************************
■ Layout : 레이아웃
********************************************************/

.at-row { margin-left:-15px; margin-right:-15px; }
.at-col { position:relative; padding:20px 15px; }

.at-body { margin-top:150px; }
.at-main { margin-top:20px; }

@media (max-width:991px) {
	.at-body .at-row { margin-left:0; margin-right:0; }
	.at-body .at-col { padding-left:0; padding-right:0; }
	.pull-right.at-main,
	.pull-left.at-side { float:none !important; }

	.at-body { margin-top:90px; }
}

/********************************************************
■ Header : 헤더
********************************************************/
#top { position:absolute; /*position:fixed;*/ left:0; right:0; top:0; background:white; z-index:10; border-top:4px solid #666; }
#top .c { padding:0 10px; }

#top .logo-wrapper { position:relative; margin:20px auto; }

#top .header-logo-left { position:absolute; left:15px; top:0; background:url(../../assets/img/header-logo-left.png) no-repeat; height:46px; padding-left:72px; padding-top:10px; line-height:110%; font-size:12px; color:#888; }

#top .header-logo { text-align:center; }
#top .header-logo a { display:inline-block; background:url(../../assets/img/header-logo.png) no-repeat center; background-size:contain; width:183px; height:36px; }
#top .header-desc { font-size:11px; line-height:11px; color:#888; }

#top .header-logo-right { position:absolute; right:15px; top:0; text-align:right; }
#top .header-logo-right .tel { line-height:1; }
#top .header-logo-right .tel2 { margin-left:3px; }

/* 모바일 메뉴 버튼 */
#m-menu-btn { position:absolute; right:5px; top:2px; border-radius:5px; }
#m-menu-btn .bar { width:25px; height:4px; border-radius:2px; border:0; margin:4px 0; background-color:#333; transition: all .5s ease; }
body.m-menu-on #m-menu-btn .bar:nth-child(1) { transform:translateY(8px) rotate(45deg) scaleX(1.3); }
body.m-menu-on #m-menu-btn .bar:nth-child(2) { opacity:0; }
body.m-menu-on #m-menu-btn .bar:nth-child(3) { transform:translateY(-8px) rotate(-45deg) scaleX(1.3); }

@media (min-width:992px) {
	body.scrolled #top .logo-wrapper { margin:0 auto; height:0; }
}
@media (max-width:991px) {
	#top { border-top-width:0; position:fixed; }
	#top .logo-wrapper { margin:2px auto; padding-top:5px; }
	/*#top .logo-div { float:left; padding-left:5px; width:10%; }*/
}

/********************************************************
■ Menu : 데스크톱 메뉴
********************************************************/
#menu { position:relative; border-top:1px solid; border-bottom:1px solid; border-color:#ccc; }
#menu nav { float:right; width:100%; }
body.scrolled #menu nav { width:75%; }

#menu nav .menu-a { display:block; text-align:center; font-size:16px; color:#333; }
#menu nav .menu-li:hover .menu-a,
#menu nav .menu-li.on .menu-a { color:#00a0a0; }
#menu nav .sub-wrap { position:absolute; left:0; width:100%; z-index:1; background:rgba(100,100,100, 0.2); display:none; }
#menu nav .menu-li:nth-child(1) .sub-1div { transform:translateX(-210px); }		/* 서브메뉴의 X축 위치를 지정합니다. 화면 가운데 기준으로 상대이동합니다. */
#menu nav .menu-li:nth-child(2) .sub-1div { transform:translateX(-170px); }
#menu nav .menu-li:nth-child(3) .sub-1div { transform:translateX(-230px); }
#menu nav .menu-li:nth-child(4) .sub-1div {  transform:translateX(-100px);  }
#menu nav .menu-li:nth-child(5) .sub-1div { transform:translateX(50px); }
#menu nav .menu-li:nth-child(6) .sub-1div { transform:translateX(200px); }
#menu nav .menu-li:nth-child(7) .sub-1div { transform:translateX(350px); }
#menu nav .menu-li:nth-child(8) .sub-1div { transform:translateX(450px); }
#menu nav .menu-li:nth-child(9) .sub-1div { transform:translateX(450px); }
#menu nav .sub-1da { display:inline-block; font-size:15px; color:#333; padding:0 30px; }
#menu nav .sub-1da.on,
#menu nav .sub-1da:hover { color:#077; font-size:15px; }

#menu nav, #menu .menu-a { height:55px; line-height:55px; }		/* 주 메뉴 높이 */
#menu .sub-wrap { height:55px; line-height:55px; }				/* 서브 메뉴 높이 */

/* 중앙 일정간격 스타일 */
#menu .nav-01 { text-align:center; }
#menu .nav-01 .menu-ul { display:inline-block; }
#menu .nav-01 .menu-li { float:left; padding:0; }
#menu .nav-01 .menu-li:last-child:after { content:""; clear:both; }
#menu .nav-01 .menu-a { padding:0 30px; }						/* 스크롤전 메뉴간격은 padding 값으로 조절 */
body.scrolled #menu .nav-01 .menu-a { padding:0 50px; }			/* 스크롤후  */
@media (max-width:1199px) {
	#menu .nav-01 .menu-a { padding:0 40px !important; }		/* 화면크기에 따른 반응형 처리를 위해 이부분도 적절히 작업해야함 */
}

/* 중앙 배분 스타일 */
#menu .nav-02 .menu-ul { display:table; table-layout:fixed; width:100%; }
#menu .nav-02 .menu-li { display:table-cell; }
#menu .nav-02 .menu-a { padding:0; }

/********************************************************
■ Mobile Menu : 모바일 메뉴
********************************************************/

#m-menu-bar-container { margin-top:0; background-color:white; border:1px solid #ccc; transition: all .3s ease; }
#m-menu-bar {  }
#m-menu-bar a { display:block; height:40px; line-height:40px; text-align:center; }
#m-menu-bar a.on { font-weight:700; color:#00a0a0; }

#m-menu { position:fixed; left:100%; width:80%; opacity:0.7; top:0; bottom:0; z-index:1100; height:100%; background-color:#333; transition: all .2s ease; }
#m-menu-overlay { position:fixed; left:0; top:0; z-index:1050; width:100%; height:100%; opacity:0; display:none; }
body.m-menu-on,
body.m-menu-on #top { left:-80%; right:80%; }

body.m-menu-on #m-menu { left:20%; opacity:1; }
body.m-menu-on #m-menu-overlay { display:block; }
#m-menu .item { overflow:hidden; }
#m-menu .item > a { display:block; position:relative; font-weight:bold; width:100%; padding:12px 15px; color:white; font-size:16px; }
#m-menu .item > a:hover { color:#00a0a0; }
#m-menu .item.on > a { color:#00a0a0; }
#m-menu .item > a .fa { position:absolute; top:12px; right:20px; color:white; transition: all .3s ease; }

#m-menu .item.selected > a .fa,
#m-menu .item.on > a .fa { transform:rotate(90deg); }

#m-menu .sub { max-height:0; height:100%; opacity:0; transition: all .3s ease;  }
#m-menu .item.selected .sub { max-height:1000px; opacity:1; }

#m-menu .item.on .sub { opacity:1; max-height:1000px; }

#m-menu .sub a { display:block; height:0; font-weight:600; padding:0 30px; color:white; font-size:15px; line-height:0; transition:all .3s ease; }
#m-menu .item.selected .sub a,
#m-menu .item.on .sub a { height:auto; background-color:#444; padding:8px 30px; font-size:15px; line-height:125%; }
#m-menu .item.on .sub a:hover { color:#00a0a0; }
#m-menu .item.on .sub a.on { color:#00a0a0; }
#m-menu .sub a span { color:#eee; }


/********************************************************
■ PC All Menu : 전체 메뉴
********************************************************/
.pc-menu-all { position:relative; background:#fafafa; z-index:2; -webkit-box-shadow: inset 0px -10px 10px -10px rgba(0,0,0,0.2); -moz-box-shadow: inset 0px -10px 10px -10px rgba(0,0,0,0.2); box-shadow: inset 0px -10px 10px -10px rgba(0,0,0,0.2); }
.pc-menu-all .at-container { padding:20px 15px 0px; }
.pc-menu-all .table { margin-bottom:20px !important;}
.pc-menu-all .table td { width:1%; background:#fff; border:1px solid #ddd; padding:0px; line-height:20px; }
.pc-menu-all .menu-a { display:block; color:#000; padding:6px 12px; background:#f5f5f5; border-bottom:1px solid #ddd; font-weight:bold; text-align:center; }
.pc-menu-all .table td.on .menu-a { color:crimson; }
.pc-menu-all .sub-1div { padding:8px 0px; }
.pc-menu-all .sub-1dul { list-style:none; padding:0px; margin:0px; }
.pc-menu-all .sub-1dli .sub-1da { display:block; padding:2px 12px; color:#333; }
.pc-menu-all .sub-1dli.on .sub-1da,
.pc-menu-all .sub-1dli:hover .sub-1da { color:crimson; }
.pc-menu-all .new { color: rgb(140, 195, 70);}
.pc-menu-all .new-sub1 { color: rgb(140, 195, 70);}
.pc-menu-all .sub-1line { display:block; color:#000; padding:5px 12px; margin:4px 0px; font-weight:bold; background:#fafafa; }
.pc-menu-all .menu-all-btn { text-align:center; }

/********************************************************
■ 서브비쥬얼
********************************************************/

#sub-visual { height:250px; background-color:#888; background-position:center; background-repeat:no-repeat; background-size:cover; overflow:hidden; }
#sub-visual .c { position:relative; height:100%; }
#sub-visual .content { position:absolute; left:70px; top:50%; transform:translateY(-50%); color:#333; /*text-shadow:2px 2px 2px #222;*/ }
#sub-visual .title { font-size:40px; line-height:125%; }
#sub-visual .desc { margin-top:30px; line-height:150%; animation-delay:0.5s; }

/********************************************************
■ Page Title : 페이지 타이틀 및 설명글
********************************************************/
#page-title { position:relative; padding-bottom:15px; margin-bottom:40px; border-bottom:1px solid #ddd; }
#page-title .title { font-size:25px; }
#page-title .desc { color:#888; position:absolute; right:0; top:10px; }
@media (max-width:767px) {
	#page-title .title { font-size:20px; left:15px; bottom:10px; }
}

/********************************************************
■ Page Content : 서브페이지 본문
********************************************************/

.page-content { font-size:1.2rem; }
.page-content .h0, .page-content h1, .page-content h2, .page-content h3 { margin-top:0; line-height:125%; }
.page-content p { margin:0 0 15px; padding:0; line-height:160%; }
.page-content .head { margin-bottom:10px; }
.page-content .desc { line-height:150%; }

@media (max-width: 767px) {
	.page-content .pull-left,
	.page-content .pull-right { width:100% !important; }
}

/********************************************************
■ Footer : 하단 푸터
********************************************************/
#footer { margin-top:20px; border-top:1px solid #ccc; }
.page-index #footer { margin-top:0; border-top:0; }			/* index 페이지에서는 다르게 표현 */

.at-footer .at-links { padding:15px 0; border:1px solid #ddd; border-left:0; border-right:0; }
.at-footer .at-links .menu { text-align:center; }
.at-footer .at-links .menu a { display:inline-block; padding:0 20px 0 15px; border-right:1px solid #aaa; }
.at-footer .at-links .menu a:last-child { border-right:0; }

.at-footer .at-infos { padding:35px 0 50px; text-align:center; }
.at-footer .at-infos .footer-logo { display:inline-block; background:url(../../assets/img/footer-logo.png) no-repeat; width:171px; height:36px; }
.at-footer .at-infos .desc { margin-top:20px; line-height:140%; }
.at-footer .at-infos .copyright { margin-top:10px; }

.m-bottom { background-color:#333; color:white; text-align:center; padding:6px 0; }
.m-bottom > a { display:inline-block; padding:12px; color:white; border:0 solid #eee; }
.m-bottom > a > div { margin-top:6px; }


/********************************************************
■ Go Top & Bottom : 상단/하단 이동버튼
********************************************************/
.at-go .go-btn { display:none; position: fixed; width:40px; bottom: 20px; right: 25px; z-index: 2; }
.at-go .go-btn span { display: block; color:#fff; background: rgba(0,0,0,0.5); margin:5px 0px; text-align: center; border-radius: 50%; width: 42px; height: 42px; line-height: 42px !important; font-size: 19px; }
.at-go .go-btn .go-bottom { display:none; }
@media (max-width: 768px) {
	.at-go .go-btn { bottom:0px; right:5px; }
}

/********************************************************
■ Bootstrap3 : 부트스트랩 기본속성
********************************************************/
/* Button */
.btn { font-family: "Open Sans", "나눔바른고딕", "NBG", sans-serif; }
.btn-lg { padding: 10px 16px; border-radius: 3px; line-height: 1.33; font-size: 18px; }
.btn-lg i {	top: 3px; font-size: 24px; position: relative; }
.btn-xs { padding: 4px 10px; }
.btn-sm { font-size:14px; line-height:16px; }
.is-pc .ko .btn-xs,
.is-pc .ko .btn-sm { font-family: "Open Sans", "나눔바른고딕", "NBG", sans-serif; }

/* Panel : Accordions */
.panel { box-shadow: none; -webkit-box-shadow: none; border-radius: 0px; }
.panel-group .panel { border-radius: 0px; }
.panel .panel-heading { border-radius: 0px; }
.is-pc .ko .panel .panel-body { font-size:12px; }

/* List Group */
.list-group-item { word-break:break-all; border-radius:0 !important; }

/* Pagination */
.pagination { font-family: "Open Sans", "나눔바른고딕", "NBG", sans-serif; }
.pagination li a { border-radius:0 !important; color:#333 !important; }
.pagination li.active a { color:#fff !important; background:#444 !important; border-color:#444 !important; }

/* Progress */
.progress { position:relative; border-radius: 0px; height: 28px; overflow: hidden; margin-bottom: 15px; box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1); background-color: rgb(245, 245, 245); -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }
.progress .sr-only { font-family: "Open Sans", sans-serif; margin: 0px 15px; left: 0px; width: auto; height: 28px; line-height: 28px; font-size: 12px; clip: auto; }
.sr-score { font-family: "Open Sans", sans-serif; height: 28px; line-height: 28px; font-size: 12px; padding-right:8px; }

/* Misc */
.form-control, .well, .btn, .alert, .input-group-addon, .label { border-radius:0 !important; }


/********************************************************
■ 그누보드 기타
********************************************************/

.content_move { margin-top:30px; font-size:0.8em; text-align:right; color:#aaa; }

#captcha #captcha_key { width:100px; }