/* topbar */
.topbar { height: 51px; }
.topbar .container { max-width: 1680px; }

/* gnb */
#gnb { display: flex; flex-direction: column; /*visibility: hidden;*/ position: fixed; z-index: 21; top: 0; width: 100%; min-width: 320px; height: auto; background: rgb(255 255 255 / 20%); backdrop-filter: blur(10px); transition: all 0.5s ease-in-out; }
#gnb.none { animation: fadeInDown .5s; position: absolute; transition: all 0.5s; top: 0px; }
#gnb .container { max-width: 1680px; }
#gnb .gnb-wrap { display: flex; flex-direction: row; justify-content: space-between; align-items: center; height: 80px; }

.gnb-cate { display: none; }
.gnb-right { display: none; }
.gnb-m { display: flex; flex-wrap: nowrap; align-items: center; }
.gnb-m button.navbar-toggler { display: flex; justify-content: center; align-items: center; width: 40px; height: 40px; border: none !important; border-radius: 50%;  }
.gnb-m button.navbar-toggler:nth-child(1) { background-color: #DDD; }
/*.gnb-m button.navbar-toggler:nth-child(2) { background-color: #2b4d8a; }*/
.gnb-m button.navbar-toggler:focus,
.gnb-m button.navbar-toggler:hover { border: none !important; }
.gnb-m button.navbar-toggler a,
.gnb-m button.navbar-toggler span { display: flex; flex-direction: column; align-items: center; }
.gnb-m button.navbar-toggler a i { font-size: 1.25rem; }
.gnb-m button.navbar-toggler span i { font-size: 1.5rem; color: #fff; }

/* gnb-mobile */
#TopNavbar { position: fixed; z-index: 16; opacity: 0; left: unset; margin-top: 80px; top: 0; right: 0; bottom: 0; width: 0; max-width: 600px; background: #fff; transition: all 0.3s; }
#TopNavbar.show { opacity: 1; width: 100%; min-width: 320px; }
#TopNavbar .navbar-nav { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; align-content: space-around; position: unset; overflow-y: auto; width: 40%; height: 100vh; background: #ebedf0; }
#TopNavbar .navbar-nav .nav-item { position: unset; width: 100%; border-top: none; }
#TopNavbar .navbar-nav .nav-item .nav-link { color: #fff !important; }
#TopNavbar .navbar-nav .nav-item.show .nav-link {}
#TopNavbar .navbar-nav .nav-item .dropdown-menu { /* border-top: 1px solid #3a5dc7; */ width: 100%; display: none; position: absolute; top: 0; right: 0 !important; left: auto !important; z-index: 11; transform: translate3d(0px, 0px, 0px) !important; }
#TopNavbar .navbar-nav .nav-item .dropdown-menu:before { display: none; }
#TopNavbar .navbar-nav .nav-item .dropdown-menu.show { display: block; right: 0; margin-top: 0; padding: 0; width: 60%; background: #fff; }
#TopNavbar .navbar-nav .nav-item .dropdown-menu .dropdown-item { padding: 1rem; border-bottom: 1px solid #ebedf0; }
#TopNavbar .navbar-nav .nav-item .dropdown-menu .dropdown-item.active {}
#TopNavbar .navbar-nav .nav-item .dropdown-menu .dropdown-item.active:after { display: none; }
#TopNavbar .navbar-nav .nav-item .dropdown-menu .dropdown-item.active span {}

#navbar-bg { z-index: 15; top: 80px; }


/* Main */
main { padding-top: 80px; background: #f9f9f9; }


/* Main - main-slider */
#main-slider { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 3rem 0; position: relative; margin: auto; padding: 0 0 5rem; width: 100%; height: 100%; border-bottom: 0px solid #222222; }
#main-slider .carousel { position: relative; /*overflow: hidden;*/ width: 100%; max-width: 1110px; }
#main-slider .carousel .carousel-item { position: relative; overflow: hidden; width: 100%; /*height: 100%;*/ height: 400px; background-position: 50% 50%; background-repeat: no-repeat; background-size: cover; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
#main-slider .carousel .carousel-item .container { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; }

#main-slider .carousel .carousel-item img.main-vis-img { margin: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
#main-slider .carousel .carousel-item:nth-child(1) img.main-vis-img { object-position: 80%; }

#main-slider .carousel-indicators li { width: 10px; height: 10px; border: 1px solid #FFF !important; border-radius: 50%; background: #FFF; opacity: 1 !important; }
#main-slider .carousel-indicators li.active { position: relative; }
#main-slider .carousel-indicators li.active:after { position: absolute; display: block; content: ""; top: -1px; left: -1px; bottom: -1px; right: -1px; border: 3px solid #FFF !important; border-radius: 50%; background: #343a40 !important; }

#main-slider .carousel .carousel-item .carousel-caption {}
#main-slider .carousel .carousel-item .carousel-caption .main-vis-tit { word-break: normal; }
#main-slider .carousel .carousel-item .carousel-caption .main-vis-tit img { height: 85%; }
#main-slider .carousel .carousel-item .carousel-caption .main-vis-tit p.font-01 { display: none; }
#main-slider .carousel .carousel-item .carousel-caption .main-vis-tit p.font-02 { padding: 0; font-family: 'Noto Sans KR'; font-style: normal; }
#main-slider .carousel .carousel-item .carousel-caption .main-vis-tit p.font-03 { padding: 0; font-style: normal; }

#main-slider .carousel .carousel-control-prev,
#main-slider .carousel .carousel-control-next { z-index: 1; top: 50%; bottom: 5%; padding: 1rem; width: 4rem; height: 4rem; border-radius: 50%; background: transparent; color: #666; opacity: 1; cursor: pointer; transform: translateY(-50%); transition: all .4s; }
#main-slider .carousel .carousel-control-prev { left: -1.5rem; }
#main-slider .carousel .carousel-control-next { right: -1.5rem; }
#main-slider .carousel .carousel-control-prev-icon,
#main-slider .carousel .carousel-control-next-icon { box-shadow: 0 0 10px #00000010; opacity: 0.5; }

#main-slider .carousel-indicators { bottom: -2rem; }
#main-slider .carousel-indicators li { margin: 0 3px; width: 30px; height: 5px; border: 1px solid #fff !important; border-radius: 0.5rem !important; background: #999; }
#main-slider .carousel-indicators li.active { border: 1px solid #fff !important; background: #ffcc00 !important; }
#main-slider .carousel-indicators li.active:after { display: none !important; }


/* Main - main-section-1 */
#main-section-1 { background: url('../img/main/main-section-1-bg.png') repeat-y; background-color: #f9f9f9; background-size: 100% auto; background-position: 50% 50%; }
.latest-box { display: flex; justify-content: center; flex-wrap: wrap; }
.latest-box .latest-tabs { width: 100%; max-width: 600px; }
.latest-box .latest-tabs .tab-btn { position: relative; padding: 0; border: 1px solid #ebedf0; border-right: none; background: #fff; font-weight: 500; cursor: pointer; }
.latest-box .latest-tabs .tab-btn:hover,
.latest-box .latest-tabs .tab-btn:focus { font-weight: 500; color: #33373c; }
.latest-box .latest-tabs .tab-btn:nth-child(1) { border-radius: 1.5rem 0 0 0; }
.latest-box .latest-tabs .tab-btn:last-child { border-right: 1px solid #ebedf0; border-radius: 0 1.5rem 0 0; }
.latest-box .latest-tabs .tab-btn.tab-on { border: 1px solid #ffc85f; }
.latest-box .latest-tabs .tab-btn.tab-on:after { display: block; margin: 0 auto -6px; width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 6px solid #ffc85f; content: ""; }
.latest-box .latest-tabs .tab-btn.tab-only { border-radius: 1.5rem 1.5rem 0 0; }

.latest-box .latest-tabs .tab-btn .tab-tit { display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; padding: 1rem 0; color: #222222; line-height: 3rem; text-align: center; }
.latest-box .latest-tabs .tab-btn .tab-tit img { display: block; height: 30px; }
.latest-box .latest-tabs .tab-btn .tab-tit span { padding-left: 5px; word-break: keep-all; white-space: nowrap; }

.latest-box .latest-body { margin-top: -2.5rem; padding: 3.5rem 0 1rem; width: 100%; border: 1px solid #ebedf0; border-radius: 2rem; background: #fff; }
.latest-box .latest-body .tab-cnt { display: none; flex-direction: column; align-items: center; width: 100%; }
.latest-box .latest-body .tab-cnt.tab-cnt-on { display: flex; }
.latest-box .latest-body .tab-cnt .cnt-box { width: 100%; }

.latest-box.latest-2 .latest-tabs { max-height: 72px; }
.latest-box.latest-2 .latest-tabs .tab-btn { border-radius: 1.5rem 1.5rem 0 0 !important; }
.latest-box.latest-2 .latest-body { overflow: hidden; margin-top: -72px; padding-top: 72px !important; padding-bottom: 0 !important; padding-right: 0 !important; padding-left: 0 !important; height: 100%; border-radius: 2rem; }
.latest-box.latest-2 .latest-body .tab-cnt { display: flex !important; padding-right: 0 !important; padding-left: 0 !important; }
.latest-box.latest-2 .latest-body .tab-cnt .cnt-box { height: 100%; }
.sns-box { max-width: 612px; }
.sns-box .sns-cnt { overflow: hidden; display: flex; align-items: center; justify-content: flex-end; width: 100%; height: 100%; border: 1px solid #ebedf0; border-radius: 2rem; background: url('/theme/basic/img/main/main-latest-sns-bg.png') no-repeat; background-color: #FFF; background-size: auto 100%; background-position: 30% bottom; }
.sns-box .sns-cnt .btn-box { display: flex; flex-direction: row; flex-wrap: wrap; margin-left: -5%; }
.sns-box .sns-cnt .btn-box a { display: flex; flex-direction: column; margin-top: 5%; margin-left: 5%; max-width: 45%; }
.calendar-box { max-width: 100%; }


/* Main - main-section-2 */
#main-section-2 { background-color: #fff8da; }
#main-section-2 .latest-box.gallery { margin: 0 auto; max-width: 1110px; }
#main-section-2 .latest-box.gallery .latest-tit { margin-bottom: 3rem; width: 100%; font-weight: 500; }
#main-section-2 .latest-box.gallery .latest-tit .tit-box { display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; padding: 1rem 0; border-radius: 5rem; background: url('../img/main/main-latest-gallery-tit-bg.png') no-repeat; background-color: #ffc85f; background-size: 100% auto; background-position: 50% 50%; cursor: pointer; font-size: 1.5rem; color: #FFF; line-height: 3rem; text-align: center; }
#main-section-2 .latest-box.gallery .latest-tit .tit-box span { padding-left: 5px; word-break: keep-all; white-space: nowrap; }
#main-section-2 .latest-box.gallery .latest-body { padding: 0; border: none; background: transparent; }
#main-section-2 .latest-box.gallery .latest-body .swiper-slide { overflow: hidden; border-radius: 1.5rem; background: transparent; }
/*#main-section-2 .latest-box.gallery .latest-body .swiper-slide .swiper-pagination-bullet-active { background: #ffc85f !important; }*/


/* sub-vis */
#sub-vis { margin-top: -80px; padding-top: 80px; }

/* sub-menu */
#sub-menu .container { width: 100%; max-width: 1520px; margin: 0 auto; padding: 0 3%; }
#sub-menu .container .row .col .sub-menu-home { background: transparent; }
#sub-menu .container .row .col .sub-menu-home a { overflow: hidden; padding-left: 1.25rem !important; border-radius: 2rem 0 0 2rem; background: #FFF; }
#sub-menu .container .row .col .sub-menu-on,
#sub-menu .container .row .col .sub-menu-off { background: transparent; }
#sub-menu .container .row .col .sub-menu-on a,
#sub-menu .container .row .col .sub-menu-off a { overflow: hidden; padding-right: 1.25rem !important; border-radius: 0 2rem 2rem 0; background: #FFF; }


/* sub-cnt */
#sub-cnt {}
#sub-cnt .container { width: 100%; max-width: 1520px; margin: 0 auto; padding: 0 3%; }


/* sub-board */
#sub-board {}
#sub-board .container { width: 100%; max-width: 1520px; margin: 0 auto; padding: 0 3%; }
#board-list #fboardlist, #board-view, #board-write { padding: 1rem; border-radius: 2rem; background: #fff; }

#board-list .table thead { position: relative }
#board-list .table thead:before { content: ''; display: block; position: absolute; z-index: 1; top: 0; left: 0; right: 0; bottom: 0; border-radius: .5rem; background-color: #f8f9fa; }
#board-list .table thead th { /*border-top: 2px solid #333; border-bottom: 1px solid #dee2e6;*/ position: relative; z-index: 2; background: transparent; }
#board-list .table thead th,
#board-list .table tbody td { padding: 1.25rem 1rem; border: none; font-weight: 400; text-align: center; }
#board-list .table tbody td { border-bottom: 1px solid #dee2e6; }

/* quick-scroll */
#quick-scroll { width: 100%; top: auto; bottom: 18rem; }
#quick-scroll .container { width: 100%; max-width: 100%; margin: 0 auto; }
#quick-scroll .qs-right { margin-left: 100%; left: auto; right: 1rem; bottom: auto; }
#quick-scroll .qs-cnt.qs-common { width: auto; }
#quick-scroll .qs-cnt.qs-page-img { display: none; }
#quick-scroll .qs-cnt-samll.qs-page-img { opacity: 1; display: block; padding: 0; width: auto; height: auto; background: transparent; box-shadow: none; }
#quick-scroll .qs-cnt-samll.qs-page-img p { opacity: 0.85; padding: 0.5rem; width: 3rem; height: 3rem; border-radius: 50%; background: #FFF; box-shadow: 1px 1px 5px #00000020; }
#quick-scroll .qs-cnt-samll.qs-page-img p img { width: auto; height: 100%; }
#quick-scroll .qs-cnt-samll.qs-page-img p span { display: none; }





/* Responsive - Min */
@media (min-width: 320px) {
}

@media (min-width: 360px) {
}

@media (min-width: 576px) {
	.main-link-cnt { padding: 1rem 3rem; }
	.main-link-sns {  }
	#board-list #fboardlist, #board-view, #board-write { padding: 2rem; }
}

@media (min-width: 768px) {
	.gnb-cate ul.navbar-nav li.nav-item .dropdown-menu { display: none; }

	.latest-box .latest-tabs .tab-btn:nth-child(1) { border-radius: 1.5rem 0 0 1.5rem; }
	.latest-box .latest-tabs .tab-btn:last-child { border-radius: 0 1.5rem 1.5rem 0; }
	.latest-box .latest-tabs .tab-btn.tab-only { border-radius: 1.5rem; }
	.latest-box .latest-tabs .tab-btn .tab-tit img { height: auto; }
	.latest-box .latest-body { padding: 3.5rem 2rem 1rem; max-width: 992px; }
	
	.calendar-box { max-width: 410px; }

	#main-section-2 .latest-box.gallery .latest-body { padding: 0; max-width: 1110px; }

	#sub-menu .container .row .col .sub-menu-home a { padding-left: 1.5rem !important; }
	#sub-menu .container .row .col .sub-menu-wrap ul li { background: transparent; }
	#sub-menu .container .row .col .sub-menu-wrap ul li a { background: #FFF; }
	#sub-menu .container .row .col .sub-menu-wrap ul li:last-child a { overflow: hidden; border-radius: 0 2rem 2rem 0; background: #FFF; }

	#board-list .table thead th,
	#board-list .table tbody td { padding: 1.25rem 0rem; }
}

@media (min-width: 992px) {
	main { padding-top: 131px; }
	#gnb { top: 51px; }
	.gnb-m { display: none; }

	.gnb-cate { display: flex; width: auto; justify-content: center; align-items: center; }
	.gnb-cate ul.navbar-nav { display: flex; flex-direction: row; justify-content: space-between; align-items: center; padding: 0 .75rem; width: 100%; height: 60px; border-radius: 120px; background-color: #fff; gap: 0 0.5rem; font-family: var(--font-point); box-shadow: var(--boxshadow); }
	.gnb-cate ul.navbar-nav li { display: flex; flex-direction: column; justify-content: center; align-items: center; position: relative; padding: 0 !important; width: auto; /*min-width: 130px;*/ height: 100%; border: none; /*box-shadow: 3px 3px 3px #ddd;*/ transition: all 0.5s; }
	.gnb-cate ul.navbar-nav li.nav-item a.nav-link { padding: 0.5rem 0.75rem; width: 100%; border-radius: 2rem; font-size: 0.825rem; text-align: center; }
	.gnb-cate ul.navbar-nav li.nav-item a.nav-link:hover {}
	.gnb-cate ul.navbar-nav li.nav-item .dropdown-menu { opacity: 0; top: 80px !important; left: 50% !important; margin-left: -90px !important; padding: 0; width: auto; min-width: 180px; border: 0px solid #2b4d8a; box-shadow: 0 0 15px rgba(0,0,0,.1); transition: all .35s ease-in-out; /*transform: translate3d(-15px, 50px, 0px) !important;*/transform: translate3d(0px, 0px, 0px) !important; }
	.gnb-cate ul.navbar-nav li.nav-item .dropdown-menu.show { display: block; margin-top: 0; padding: .5rem 0; opacity: 1; height: auto; background: #fff; }
	.gnb-cate ul.navbar-nav li.nav-item .dropdown-menu.show:before { content: ""; position: absolute; display: block; top: -7px; left: 50%; margin-left: -7px; width: 0; height: 0; border-right: 7px solid transparent; border-left: 7px solid transparent; border-bottom: 7px solid #FFF;}
	.gnb-cate ul.navbar-nav li.nav-item .dropdown-menu:before { display: none; }
	.gnb-cate ul.navbar-nav li.nav-item .dropdown-item { padding: 0.5rem; text-align: center; }
	.gnb-cate ul.navbar-nav li.nav-item .dropdown-item:hover {  }

	.gnb-right { display: flex; justify-content: center; align-items: center; }
	.gnb-right ul.navbar-nav { display: flex; flex-direction: row; justify-content: space-between; align-items: center; margin: 0 !important; width: 150px; }
	.gnb-right ul.navbar-nav li.nav-item { display: flex; flex-direction: column; justify-content: center; align-items: center; border: none; }
	.gnb-right ul.navbar-nav li.nav-item a.nav-link { padding: 0; font-size: 0.825rem; color: #606060 !important; white-space: nowrap; }
	.gnb-right .btn-wrap { width: auto; height: auto; position: relative; }
	.gnb-right .btn-wrap button { width: 50px; height: 50px; border: none !important; border-radius: 50%; background-color: #2b4d8a; }
	.gnb-right .btn-wrap button:focus,
	.gnb-right .btn-wrap button:hover { border: none !important; }
	.gnb-right .btn-wrap button i { display: flex; justify-content: center; align-items: center; font-size: 1.25rem; color: #fff; }

	#TopNavbar { display: none; }
	#navbar-bg { display: none !important; }
		
	#main-slider { /*gap: 0 2%; max-width: 1920px;*/ padding: 1rem 0 3rem; }
	#main-slider .carousel {}
	#main-slider .carousel .carousel-inner { border-radius: 2rem; }
	#main-slider .carousel .carousel-item { display: flex; justify-content: center; align-items: center; width: 100%; height: auto; max-height: 433px; background-position: 50% 50%; }
	#main-slider .carousel .carousel-item img.main-vis-img {}
	#main-slider .carousel .carousel-item:nth-child(1) img.main-vis-img { object-position: cetner; }
		
	.main-link { align-content: stretch; gap: 1.5rem 0; padding: 0; width: 35%; max-width: 500px; height: 460px; }
	.main-link-cnt { display: flex; flex-direction: column; justify-content: center; width: 100%; }
	.main-link-cnt ul {	padding: 0; }
	.main-link-sns { display: flex; flex-direction: row; align-items: center; gap: 0 1rem; padding: 1rem; width: 100%; height: auto; }
	.main-link-sns h2 { margin-bottom: 0; font-weight: 600; }
	.main-link-sns ul {	flex-direction: row; justify-content: center; gap: 0 0.5rem; padding: 0; }
	.main-link-sns ul li { width: 25%; text-align: center; }

	.latest-box.latest-2 .latest-tabs { max-height: 82px; }
	.latest-box.latest-2 .latest-body { margin-top: -82px; padding-top: 82px !important; }
}

@media (min-width: 1140px) {
	.gnb-cate ul.navbar-nav { padding: 0 1rem; }
	/*.gnb-cate ul.navbar-nav li { padding: 0 0.5rem !important; }*/
	.gnb-cate ul.navbar-nav li.nav-item a.nav-link { padding: 0.5rem 1rem; font-size: 1rem; }
}

@media (min-width: 1200px) {
	main .container,
	#sub-menu .container,
	#sub-cnt .container,
	#sub-board .container { max-width: 1520px; padding: 0 40px; }
	#board-list #fboardlist, #board-view, #board-write { padding: 3rem; }

	#quick-scroll { top: 10rem; bottom: auto; }
	#quick-scroll .qs-right { right: 2rem; }
	#quick-scroll .qs-cnt.qs-page-img { display: block; border: 2px solid #ffdb6c !important; border-radius: 1.5rem; }
	#quick-scroll .qs-cnt-samll.qs-page-img { display: none; }
}

@media (min-width: 1440px) {
	/*.gnb-cate ul.navbar-nav li { padding: 0 1rem !important; }*/
	.gnb-cate ul.navbar-nav li.nav-item a.nav-link { padding: 0.5rem 2rem; }
	#main-slider .carousel .carousel-item { height: 500px; }
	.main-link { height: 620px; }
}


/* Responsive - Max */
@media (max-width: 319.999999px) {
}