@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;200;300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Blinker:wght@100;200;300;400;600;700;800;900&display=swap');

/****************************************
  ROOT
****************************************/
:root {
  
  /* section */
  --section-padding: 100px;
  --section-heading-margin-bottom: 60px;
  --section-heading-text-transform: uppercase;
  
  
  /* content */
  --content-title-margin-bottom: 30px;
  --content-title-text-transform: uppercase;
  
  
  /* btn */
  --btn-normal-margin-top: 30px; 
  
  
}


@media all and (max-width:991px) {
  :root {
  
    /* section */
    --section-padding: 80px;
    --section-heading-margin-bottom: 50px;
    --section-heading-text-transform: uppercase;
    
    
    /* content */
    --content-title-margin-bottom: 25px;
    --content-title-text-transform: uppercase;
    
    
    /* btn */
    --btn-normal-margin-top: 25px; 
  }
  
  
}


@media all and (max-width:767px) {
  :root {
  
    /* section */
    --section-padding: 60px;
    --section-heading-margin-bottom: 30px;
    --section-heading-text-transform: uppercase;
    
    
    /* content */
    --content-title-margin-bottom: 15px;
    --content-title-text-transform: uppercase;
    
    /* btn */
    --btn-normal-margin-top: 18px; 
    
  }
  
}




/********************************************************
■ Common
********************************************************/
body {word-break: keep-all;}
a:hover {color: #666;}
img {max-width: 100%;}
figure {margin-bottom: 0;}



.gap-5 {gap: 5px;}
.gap-10 {gap: 10px;}
.gap-15 {gap: 15px;}
.gap-20 {gap: 20px;}
.gap-25 {gap: 25px;}
.gap-30 {gap: 30px;}
.gap-35 {gap: 35px;}
.gap-40 {gap: 40px;}

.gap-y-5 {gap: 5px 0;}
.gap-y-10 {gap: 10px 0;}
.gap-y-15 {gap: 15px 0;}
.gap-y-20 {gap: 20px 0;}
.gap-y-25 {gap: 25px 0;}
.gap-y-30 {gap: 30px 0;}
.gap-y-35 {gap: 35px 0;}
.gap-y-40 {gap: 40px 0;}

.gap-x-5 {gap: 0 5px;}
.gap-x-10 {gap: 0 10px;}
.gap-x-15 {gap: 0 15px;}
.gap-x-20 {gap: 0 20px;}
.gap-x-25 {gap: 0 25px;}
.gap-x-30 {gap: 0 30px;}
.gap-x-35 {gap: 0 35px;}
.gap-x-40 {gap: 0 40px;}

.wrapper { background: #e8e6df;}
.masonry-section .masonry-filter>li>a {
	display: block;
	padding: 10px 0;
	cursor: pointer;
}

.masonry-section .masonry-grid {overflow-x: hidden; width: 100%;}
.masonry-section .masonry-grid > ul {
	overflow: hidden;
}
.masonry-section .grid-item {}
.masonry-section .masonry-grid .masonry-img img {width: 100%;}
.masonry-section .visible_item {display: none;}

/********************************************************
■ PC 폰트
********************************************************/

/* 기준 폰트 */
html {font-size: 14px;}
.form-control::placeholder {color: #d7d7d7;}

/* 제목, 내용 등 기본 폰트 */
body {
	font-size: 20px;
	font-family: 'Noto Sans KR', sans-serif !important;
	font-weight: 400;
	line-height: 1.5;
	color: #7d7c77;
}
.eng-font {font-family: 'Blinker', sans-serif !important;}
p.eng-font {font-weight: 300;}

/* 각종 타이틀 */
/* TEXT */
h1, h2, h3, h4, h5, h6 { 
	font-family: 'Noto Sans KR', sans-serif !important;
	font-weight: 600 !important;
	line-height: 1.3;
}

.h1, .h2, .h3, .h4, .h5, .h6 {color: #061416;}

h1, .h1 {}

h2, .h2 {font-size: 50px;}
h3, .h3 {font-size: 45px;}
h4, .h4 {font-size: 30px;}
h5, .h5 {font-size: 25px;}
h6, .h6 {font-size: 20px;}
.normal-font {font-size: 20px;}

.main-text {}
.text-white {color: #FFF}
.text-black {color: #000}
.text-extra-dark-gray {color: #061416}
.text-dark-gray {color: #666561}
.text-extra-medium-gray {color: #7d7c77}
.text-medium-gray {color: #939393}
.text-extra-light-gray {color: #8d8c86}
.text-light-gray {color: #e8e6df}
.text-very-light-gray {color: #ededed}
.main-color {color: #0e3237;}

.emphasis-text {
  line-height: 40px;
  font-weight: 500;
}

/* BACKGROUND */
.mian-GreenBg {background-color: #0f3036;}
.base-ColorBg {background-color: #c6cfc7;}



@media all and (min-width:992px) {
  
  
}

@media all and (max-width:1199px) {
	
	
}


@media all and (max-width:991px) {
	body {font-size: 17px;}
	h2, .h2 {font-size: 40px;}
	h3, .h3 {font-size: 35px;}
	h4, .h4 {font-size: 28px;}
	h5, .h5 {font-size: 23px;}
	h6, .h6 {font-size: 18px;}
	.emphasis-text {line-height: 35px;}
	.normal-font {font-size: 17px;}
}

@media all and (max-width:767px) {
	body {font-size: 15px;}
	h2, .h2 {font-size: 35px;}
	h3, .h3 {font-size: 30px;}
	h4, .h4 {font-size: 23px;}
	h5, .h5 {font-size: 20px;}
	h6, .h6 {font-size: 16px;}
	
	.emphasis-text {line-height: 30px;}
	.normal-font {font-size: 15px;}
}



/* 일반 기본 폰트 */
.f-de {
	font-size:14px !important;
}

/* 게시판 글제목 */
#bo_v_title {
    font-size: 24px !important;
}

/* 게시판 글내용 */
#bo_v_con {
	font-size:18px !important;
	font-weight:normal;
	line-height:1.7;
}

/* 주석 등 */
.f-xs {
	font-size:12px !important;
}

/* 정보(조회, 날짜) 등 */
.f-sm {
	font-size:14px !important;
}

/* 입력폼 */
.input-group-text {
	font-size:14px !important;
}

/* 주메뉴, 텍스트 로고 등 */
.f-md {
	font-size:18px !important;
	line-height:1.5 !important;
	font-family: 'Noto Sans KR', sans-serif !important;
	font-weight: 400 !important;
	padding-top:0.75rem;
	padding-bottom:0.75rem;
}

/* 모바일 헤더(텍스트 로고) 등 */
.f-mo {
	font-size:18px !important;
	line-height:1.5 !important;
	font-family: 'Noto Sans KR', sans-serif !important;
	font-weight: 400 !important;
	padding-top:0.75rem;
	padding-bottom:0.75rem;
}

/* 일반 위젯 타이틀 등 */
.f-lg {
	font-size:17px !important;
	line-height:1.7 !important;
	font-family: 'Noto Sans KR', sans-serif !important;
	margin-bottom:0.25rem !important;
}

/* 특수 위젯 타이틀 등 */
.f-xl {
	font-size:20px !important;
	line-height:1.5 !important;
	font-family: 'Noto Sans KR', sans-serif !important;
	margin-bottom:0.25rem !important;
}

/* 분류탭 */
.sly-tab {
	font-size:13px !important;
}

/* 목록 헤드 */
.list-head,
.na-table-head > div {
	font-size: 13px !important;
}

/* 위젯 목록 라인 */
.na-list li {
	line-height:1.9;
}

/* 위젯 목록 랭크 아이콘 */
.na-list li .rank-icon {
	position:relative;
	top:0;
}

.is-line .na-list li {
	line-height:1.9;
	padding-bottom:0.25rem;
	margin-bottom:0.25rem;
	border-bottom:1px solid #efefef;
}

/* 리스트형 스킨 목록 간격 */
.na-flex .py-2 {
	padding-top:0.60rem !important;
	padding-bottom:0.60rem !important;
}

@media all and (min-width:768px) {
	.na-table .py-md-2 {
		padding-top:0.60rem !important;
		padding-bottom:0.60rem !important;
	}
}

@media all and (max-width:767px) {
	.na-table .py-2 {
		padding-top:0.60rem !important;
		padding-bottom:0.60rem !important;
	}
}

/* 체크박스, 라디오버튼 재지정 */
.custom-checkbox .custom-control-label::before,
.custom-checkbox .custom-control-label::after,
.custom-radio .custom-control-label::before,
.custom-radio .custom-control-label::after {
	top:5px !important;
}

/* 스위치 버튼 재지정 */
.custom-switch .custom-control-label::before,
.custom-switch .custom-control-label::after {
	margin-top:2px;
}

/* 그리드 간격 */
.na-row {
	margin-left:-13px !important;
	margin-right:-13px !important;
}

.na-col {
	padding-left:13px !important;
	padding-right:13px !important;
}

@media all and (min-width:768px) {
	#nt_body .nt-container.pt-sm-4,
	#nt_body .nt-container.py-sm-4 {
		padding-top:26px !important;
	}
}



/* @media all and (max-width:767px) {
	body {font-size: 14px;}
} */

/* SECTION */
section {position: relative;}




/* BACKGROUND */
.cover-background {
	overflow: hidden !important;
	position: relative !important;
	background-size: cover !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
}

.fix-background {
  overflow: hidden;
  position: relative;
  background-size: cover;
  animation-duration: 0s;
  animation-fill-mode: none;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  -webkit-animation-duration: 0s;
  -webkit-animation-fill-mode: none;
  -moz-animation-duration: 0s;
  -moz-animation-fill-mode: none;
  -ms-animation-duration: 0s;
  -ms-animation-fill-mode: none;
  -o-animation-fill-mode: none;
}

/* BUTTON */
.general-btn {
  position: relative;
  display: inline-block;
  padding: 10px 25px;
  border: 2px solid transparent;
  letter-spacing: .5px;
  line-height: inherit;
  border-radius: 0;
  text-transform: uppercase;
  font-weight: 600;
  transition-duration: 0.3s;
  z-index: 1;
  text-align: center;
}

.general-btn::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  transition: all 0.3s ease;
}

.general-btn.btn-black {background: #000; border-color: #000; color: #fff;}
.general-btn.btn-black::after {background: #fff;}
.general-btn.btn-black:hover {color: #000;}
.general-btn.btn-black:hover:after {top: 0; height: 100%;}

.general-btn.btn-white {border-color: #fff; color: #000;}
.general-btn.btn-white::after {
  bottom: initial;
  top: 0;
  height: 100%;
  background: #fff;
}
.general-btn.btn-white:hover {color: #fff;}
.general-btn.btn-white:hover:after {
  top: initial;
  bottom: 0;
  height: 0;
}

.general-btn.btn-dark-gray {
  background: #2D2D2D; border-color: #2D2D2D; color: #fff;
}

.general-btn.btn-dark-gray::after {background: #fff;}
.general-btn.btn-dark-gray:hover {color: #2d2d2d;}
.general-btn.btn-dark-gray:hover:after {top: 0; height: 100%;}



.general-btn.btn-transparent-black {background-color: transparent; border-color: #000; color: #000;}
.general-btn.btn-transparent-black::after {background-color: #000;}
.general-btn.btn-transparent-black:hover {color: #fff;}
.general-btn.btn-transparent-black:hover::after {top: 0; height: 100%;}

@media all and (max-width:991px) {
  .general-btn {
    padding: 8px 18px;
    border-width: 1px;
  }
}

@media all and (max-width:991px) {
  .general-btn {
    padding: 8px 12px;
    font-size: 13px;
  }
}



/*  */
#bo_list {
  margin-bottom: 50px;
}

.page-link {
  margin: 0 2px;
  background-color: #F2F2F2;
  border: 0;
  border-radius: 5px;
}
.page-item.active .page-link {
  background-color: #353432 !important;
  border-color: #353432 !important;
}

.page-item.disabled .page-link {
  background-color: #F2F2F2;
  border: 0;
}

.swiper-slider {
  overflow: hidden;
}


/********************************************************
■ PC 헤더(Header)
********************************************************/
#header_pc {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  background-color: #e8e6df;
  z-index: 109;
  transition: all 0.3s ease-in-out;
}

#header_pc .nt-container {}

#header_pc .header-logo > a {display: block;}
#header_pc .header-logo > a > img {max-width: 100%; max-height: 50px;}

#header_pc .main-menu > ul > li {
  position: relative;
}
#header_pc .main-menu > ul > li > a {
  padding: 30px;
}

#header_pc .main-menu a {
  display: block;
  text-transform: capitalize;
}

/*  */


#header_pc .main-menu .sub-1dul {
  visibility: hidden;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
	padding: 5px 0;
  min-width: 160px;
  background-color: #0F3036;
  transition: all 0.2s cubic-bezier(0.4, 0, 1, 1);
  opacity: 0;
}

#header_pc .main-menu > ul > li.on .sub-1dul {
  visibility: visible;
  opacity: 1.0;
}

#header_pc .main-menu .sub-1dul > li > a {
  /* display: block;
  padding: 5px 10px;
  color: #e8e6df;
  transition: all .2s;
	text-align: center; */
	padding: 5px 0;
}

#header_pc .main-menu .sub-1dul > li > a:hover {
  color: #fff;
}

#header_pc .main-menu .sub-1dul > li > a img {
	max-height: 13px;
	margin: 0 auto;
	display: table;
}

/*  */
#header_pc.active {
  visibility: visible;
  opacity: 1;
  box-shadow: 0px 0px 10px rgba(0,0,0,.05);
}


@media (max-width:991px) { 
  #header_pc .header-logo > a > img {
    max-height: 45px;
  }
  
  #header_pc .row {
    height: 80px;
  }
}


@media (max-width:767px) { 
  #header_pc .header-logo > a {display: inline-block;}
  #header_pc .header-logo > a > img {max-height: 30px;}
  
}



/* side-menu */
.side-menu {
  margin-top: 20px;
}

.side-menu > ul > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
  font-size: 20px;
  color: #e8e6df;
  text-transform: capitalize;
}

.side-menu > ul > li > a > i {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 99;
  padding: 10px;
}

.side-menu .sub-1dul {
  display: none;
  padding: 10px 15px;
  background-color: rgba(255,255,255,.03);
}

.side-menu .sub-1dul > li >a {
  display: block;
  padding: 8px 0;
  font-size: 18px;
  text-transform: capitalize;
  color: #e8e6df;
}

.side-menu .sub-1dul > li >a img {
	max-height: 14px;
}


/********************************************************
■ nt_body
********************************************************/

@media (min-width:992px) { 
  #nt_body {
    min-height: calc(100vh - 446px);
  }
}

@media (max-width:992px) { 
  #nt_body {
    min-height: calc(100vh - 340px);
  }
}

@media (max-width:767px) { 
  #nt_body {
    min-height: calc(100vh - 400px)
  }
}


/********************************************************
■ Footer
********************************************************/
#nt_footer {
  margin-top: var(--section-padding);
  padding: 80px 0;
  border-top: 2px solid #7d7c77;
}

#nt_footer p {
  font-size: 15px;
  color: #061416;
  line-height: 1.95;
}

#nt_footer .footer-logo > img {
  max-width: 100%;
  max-height: 50px;
}
#nt_footer #family-site-button {
  position: absolute;
  right: 0;
  bottom: 0;
}

#nt_footer #family-site-button > button {
  position: relative;
  display: block;
  width: 100%;
  min-width: 250px;
  padding: 10px 40px;
  background-color: #DDDBD2;
  border: 0;
  border-radius: 30px;
  text-align: left;
  font-size: 20px;
  transition: all .3s;
  color: #061416;
}

#nt_footer #family-site-button > button:hover {
  background-color: #dad7c7;
}

#nt_footer #family-site-button > button > i {
  position: absolute;
  right: 26px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 25px;
}

#nt_footer #family-site-list {
  position: absolute;
  width: 100%;

  left: 0;
  bottom: calc(100% + 8px);
  background-color: #dddbd2;
  border-radius: 30px;
  font-size: 15px;
}

#nt_footer #family-site-list li > a {
  display: block;
  padding: 5px 40px;
  color: #8d8c86;
}

#nt_footer #family-site-list li > a > i {
  transform: rotate(45deg);
  font-size: 14px;
}

@media (max-width:1199px) { 
  #nt_footer #family-site-button > button {
    min-width: 200px;
    font-size: 18px;
  }
  
}

@media (max-width:991px) { 
  #nt_footer {
    padding: 40px 0;
  }
  
  #nt_footer .footer-logo > img {
    max-height: 45px;
  }
  
  #nt_footer #family-site-button {
    right: 0;
    bottom: 100%;
  }
  
  #nt_footer #family-site-button > button {
    min-width: 200px;
    padding: 10px 25px;
    font-size: 15px;
  }
  
}


@media (max-width:767px) { 
  #nt_footer .footer-logo > img {max-height: 30px;}
  #nt_footer #family-site-button {
    position: relative;
    right: initial;
    bottom: initial;
    display: inline-block;
    margin-bottom: 20px;
  }
  
  #nt_footer #family-site-button > button {
    min-width: 200px;
    padding: 10px 25px;
    font-size: 15px;
  }
  
  #nt_footer #family-site-list li > a {
    padding: 10px 25px;
  }
  
  
  #nt_footer #family-site-button > button > i {
    font-size: 18px;
  }
}






/* SECTION */
.section-py {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}

.section-pt {
  padding-top: var(--section-padding);
}


.section-heading {
  margin-bottom: var(--section-heading-margin-bottom);
  text-align: center;
}

.section-heading.border-bottom {
  padding-bottom: 30px;
  border-color: #4f4f4f !important;
}

/* .section-heading h2 {
  margin-bottom: 35px;
  font-size: 55px;
  font-weight: 600;
} */

.sub-page-top {
  position: relative;
  margin-bottom: var(--section-heading-margin-bottom);
}

.sub-page-top .row {
  height: 700px;
}


.sub-page-top .row h1 {
  font-size: 150px;
  color: #e8e6df;
}




@media (max-width:991px) { 
  .sub-page-top .row {height: 500px;}
  .sub-page-top .row h1 {font-size: 100px;}
	.sub-page-top .row h1 > img {
		display: table;
		margin: 0 auto;
		max-width: 80%;
	}
	
}

@media (max-width:767px) { 
  .sub-page-top .row {height: 100vw;}
  .sub-page-top .row h1 {font-size: 60px;}
	.sub-page-top .row h1 > img {
		max-width: 70%;
	}
}



/********************************************************
■ MAIN
********************************************************/

/* #main-about */
#main-about .section-heading h2 {
  margin-bottom: var(--section-heading-margin-bottom);
}

#main-about .section-heading img {
  max-width: 100%;
  max-height: 96px;
}

@media (max-width:991px) { 
  #main-about .section-heading img {
    max-height: 60px;
  }
}


@media (max-width:768px) { 
  #main-about .section-heading img {
    max-width: 60vw;
    max-height: initial;
  }
}

/* logo-banner */


.logo-banner .swiper-wrapper {
  transition-timing-function: linear;
}

.logo-banner .swiper-slide {
  width: auto;
}
.logo-banner .swiper-slide img {
  width: auto;
  height: 100px;
}


@media (max-width:991px) { 
  .logo-banner .swiper-slide img {
    height: 50px;
  }
}

@media (max-width:767px) { 
  .logo-banner .swiper-slide img {
    height: 30px;
  }
  
}

/* .logo-banner {
  display: flex;
  overflow: hidden;
}

.logo-banner > div {
  display: flex;
  gap: 0 150px;
  transition: transform 0.2s ease; 
}

@keyframes scrollRight {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

.logo-banner img {
  width: auto; 
  height: 100px;
}

@media (max-width:767px) { 
  .logo-banner > div {
    gap: 0 30px;
  }
  .logo-banner img {
    height: 40px;
  }
  
} */

/* main-business */
#main-business {
  
}

#main-business .container-xl {
  position: relative;
}



@media (min-width:768px) { 
  #main-business .business-main-img {
    margin-bottom: 80px;
  }
  
  #main-business .business-link {
    position: absolute;
    width: calc(100% - 30px);
    z-index: 99;
  }

}

/* people */
.open-popup {
  overflow: hidden;
  position: relative;
  display: block;
}

.people-img img {
  transition: all 0.5s;
}

.open-popup:hover .people-img img {
  transform: scale(1.1);
}

.popup-content {
  position: relative;
  margin: 0 auto;
  max-width: 900px;
  background-color: #fff;
}

.mfp-close-btn-in .popup-content .mfp-close {
  background-color: #000;
  color: #fff;
  opacity: 1;
  transition: all 0.3s ease;
}

.mfp-close-btn-in .popup-content .mfp-close:hover {
  opacity: .8;
}

.popup-content-profile {
  overflow: hidden;
  position: relative;
}

.popup-content-profile h6 {
  padding: 30px 0 20px 30px;
  font-size: 24px;
  background: #fff;
  font-weight: 600;
  color: #000;
  z-index: 9;
}

.popup-content-profile > div {
  position: absolute;
  overflow-y: auto;
  top: 90px;
  left: 30px;
  right: 0;
  bottom: 0;
  height: calc(100% - 100px);
}

.popup-content-profile ul li span {
  font-weight: 600;
  padding-right: 6px;
  color: navy;
}

@media (max-width:768px) { 
  .popup-content-img {
    overflow: hidden;
    position: relative;
    height: 55vh;
  }
  
  .popup-content-img > img {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: auto;
  }
  
  .popup-content-profile {
    height: 40vh;
  }
  
  .popup-content-profile h6 {
    padding: 20px 0 10px 20px;
    font-size: 20px;
  }
  
  .popup-content-profile > div {
    top: 60px;
    left: 20px;
    height: calc(100% - 80px);
  }
  
}





/* #main-contact */
#main-contact img {
  max-width: 60px;
}

#main-contact h6 {
  font-weight: 500;
}

#main-contact p {
  font-size: 18px;
}



/********************************************************
■ SUB
********************************************************/
.sub-contents-section h4 {
  position: relative;
  padding-left: 30px;
}

.sub-contents-section h4::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -8px;
  width: 15px;
  height: 15px;
  background-color: #8d8c86;
}

@media (max-width:768px) { 
  .sub-contents-section h4 {
    padding-left: 25px;
  }
  
  .sub-contents-section h4::before {
    top: 10px;
    margin-top: 0px;
    width: 12px;
    height: 12px;
  }
}