
:root {
    --color-main: #15346d;
    --color-secondary: #bb1a30;
    --font-size-14: 14px;
    --font-size-15: 15px;
    --font-size-16: 16px;
    --font-size-17: 17px;
    --font-size-18: 18px;
    --font-size-20: 20px;
    --font-size-24: 24px;
    --font-size-26: 26px;
    --font-size-28: 28px;
    --font-size-30: 30px;
    --font-size-32: 32px;
    --font-size-36: 36px;
    --font-size-38: 38px;
    --font-size-42: 42px;
	--font-size-46: 46px;
    --font-size-48: 48px;
    --font-size-54: 54px;
	--font-size-60: 60px;
    --font-size-72: 70px;
    --font-size-80: 80px;
    --font-size-120: 120px;

}

/* scrollbar */
::-webkit-scrollbar { width: 5px; } /* 스크롤바 전체 영역 */
::-webkit-scrollbar-track { background-color: #f3f3f3; border-radius:8px;border:1px solid #ededed;} /* 스크롤 배경  */
::-webkit-scrollbar-thumb { background-color: #666;border-radius:8px; } /*  스크롤이 움직이는 영역  */
::-webkit-scrollbar-button:start:decrement, /*  스크롤의 화살표가 포함된 영역   */
::-webkit-scrollbar-button:end:increment,/*  스크롤의 화살표가 포함된 영역   */
::-webkit-scrollbar-corner,/*  상하+좌우 스크롤이 만나는 공간   */
::-webkit-scrollbar-button:vertical:incremen,/* 스크롤 상하방향 */
::-webkit-scrollbar-button:vertical:decrement,/* 스크롤 상하방향 */
::-webkit-scrollbar-button:horizontal:increment,/* 스크롤 좌우방향 */
::-webkit-scrollbar-button:horizontal:decrement/* 스크롤 좌우방향 */{ display:none; }
/* IE 스크롤 바 */
html{
	scrollbar-3dLight-Color: #f3f3f3; /* 스크롤 밖 테두리 컬러 */
	scrollbar-arrow-color: #f3f3f3; /* 스크롤 상하 버튼 컬러 */
	scrollbar-Face-Color: #666; /* 스크롤 바 컬러 */
	scrollbar-Track-Color: #f3f3f3; /* 스크롤 배경 컬러 */
	scrollbar-DarkShadow-Color: #666; /* 스크롤 arrow와 스크롤 바 의 어두운그림자 컬러 */
	scrollbar-Highlight-Color: #666; /* 스크롤 arrow와 스크롤 바 의 하이라이트 컬러 */
	scrollbar-Shadow-Color: #666; /* 스크롤 arrow와 스크롤 바 의 그림자 컬러 */

	/*firefox*/
	scrollbar-face-color:#666;/* 스크롤 바 컬러 */
	scrollbar-track-color: #f3f3f3;/* 스크롤 배경 컬러 */
	scrollbar-color:#666 #f3f3f3; /* 2가지 통합 순서 : 스크롤 바 스크롤 배경 scrollbar-face-color scrollbar-track-color; */
	scrollbar-width: thin; /* 스크롤 바 넓이 값 옵션 : auto / thin / none */
}

@import url('https://fonts.googleapis.com/css2?family=Nanum+Myeongjo:wght@400;700;800&family=Noto+Sans+KR:wght@300;400;500;600;700;800&display=swap');
@font-face {
    font-family: 'Chosunilbo_myungjo';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_one@1.0/Chosunilbo_myungjo.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

body{ font-family: "Chosunilbo_myungjo", "Nanum Myeongjo", serif; word-break: keep-all; font-size: var(--font-size-18);}
h1, h2,h3,h4,h5,h6,p,li,input,textarea,select,ol,ul,label,a{font-family: "Chosunilbo_myungjo", "Nanum Myeongjo", serif; line-height: 1.2; font-weight: 400; word-break: keep-all;}
p{ line-height:1.5;}
dt,dd, p{ font-family: "Noto Sans KR", sans-serif; letter-spacing:-0.5px; }
img { border: 0; max-width: 100%; vertical-align: middle;}
strong, b, cite { font-weight: bold;}


/*공통*/
h2{}
h3{font-size: var(--font-size-46); line-height: 1.2; margin: 2.0rem 0rem; color: rgba(25, 41, 41, 0.96); letter-spacing: 0;}
h4{font-size: var(--font-size-36); font-weight:500; color:#000;}
h5{font-size: var(--font-size-26);}

.breadcrumb-section__page li a:hover { color: #fff; text-decoration: underline !important; text-underline-offset: 5px;}

.section-padding{ padding: 120px 0;}

.bg-gray { background-color: #f7f7f7;}
.bold { font-weight: 700;}
.mgb-20 { margin-bottom: 20px;}
a:hover {color: var(--color-main);}


/*버튼*/
.common-btn { background-color: var(--color-main); z-index: 1; gap: 10px; font-weight: 400; font-size: 18px; line-height: 1.2; overflow: hidden; position: relative;  padding: 16px 28px; display: inline-flex; align-items: center; transition: all 0.3s ease-in-out; 
color: #fff; border-radius: 30px;}
.common-btn:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(0, 0, 0, 0.15);}

/*헤더*/
.header-fix { top: 0; left: 0; width: 100%; z-index: 2; background-color: #FFF; transition: all 0.3s ease; position: fixed;}
.heading-bg { background-color: #fff;}
.rr-header__logo .logo img { max-width: 300px;}

.rr-header-5 .rr-header__main { margin-top: 0; height: 100px;}
.rr-header-3 .rr-header__menu__wrapper .main-menu ul li a,
.rr-header-3 .rr-header__menu__wrapper .main-menu ul li.active a { color: #272727; font-weight: 700;}

.rr-header-3 .rr-header__menu__wrapper .main-menu ul li.has-dropdown::after{ color: #272727;}
.rr-header-2 .rr-header__menu__wrapper .main-menu ul li .sub-menu {background: #fff;}
.rr-header-5__right .rr-header__menu__wrapper .main-menu ul li::before { background-color: #272727;}

.rr-header-2 .rr-header__menu__wrapper .main-menu ul li .sub-menu li a { color: #272727; font-size: var(--font-size-16); font-weight: 700;}
.rr-header-2 .rr-header__menu__wrapper .main-menu ul li .sub-menu li:hover a { color:#272727; font-weight: 700;}
.rr-header-3 .rr-header__menu__wrapper .main-menu ul li:hover a { color: #272727; font-weight: 700;}
.rr-header-3 .rr-header__menu__wrapper .main-menu ul li.active a { color: #ddd;}



.rr-header-3 .rr-header__menu__wrapper .main-menu ul li:hover.has-dropdown::after, 
.rr-header-3 .rr-header__menu__wrapper .main-menu ul li.active.has-dropdown::after {color: var(--color-main);}

.rr-header-2 .rr-header__menu__wrapper .main-menu ul li > a { font-size: 18px; font-weight: 700;}

.rr-header-5__right .rr-header__menu__wrapper .main-menu ul li > a { padding: 36px 0;}
.rr-header-3 .rr-header__menu-toggle .header__hamburger span {background-color: #272727;}


.rr-header__menu-toggle {display: none;;}


/*home*/
#main-visual strong{ }
#main-visual .icon-svg {filter: invert(1);}
#main-visual h3 { font-weight: 400; font-size: var(--font-size-72); line-height: 1.2; margin: 2.0rem 0rem; letter-spacing: -0.01em; color: var(--rr-common-white);}
#main-visual h4 { gap: 8px; display: flex; line-height: 1.2; font-size: var(--font-size-18); font-weight: 400; align-items: center; letter-spacing: 0.3em; color: var(--rr-common-white); }
#main-visual p { font-size: var(--font-size-18); margin: 35px 0 62px 0; font-weight: 400; line-height: 1.2; max-width: 540px; color: rgba(255, 255, 255, 0.7);}


#main-research h3 a { font-weight: 600;}
#main-research .service-section-4__item:hover { border-color: #272727; background-color: #272727;}
#main-research .service-section-4__icon img:hover { filter: invert(1);}
#main-research .service-section-4__item:hover .service-section-4__icon img { filter: invert(1);}
#main-research .service-section-4__more a {color: #fff;}



/*history*/
/*연혁*/
.history-timeline { position: relative; list-style: none; margin: 0; padding: 0; }
.history-timeline::before { position: absolute; content: ""; left: 188px; top: 0; width: 2px; height: 100%; background: #ddd;}

.history-box { margin-top: 50px; max-height: 600px; overflow-y: auto; padding-right: 10px; scrollbar-width: thin; scrollbar-color: #ccc transparent;}

/* Chrome, Edge, Safari */
.history-box::-webkit-scrollbar { width: 4px;}
.history-box::-webkit-scrollbar-track { background: transparent;}
.history-box::-webkit-scrollbar-thumb { background-color: rgba(0,0,0,0.2); border-radius: 10px;}
.history-box::-webkit-scrollbar-thumb:hover { background-color: rgba(0,0,0,0.35);}

.year-group { display: flex; margin-bottom: 90px;}
.left-year { font-size: var(--font-size-60); font-weight: 700; margin-right: 30px; color: #c1c1c1;}
.left-year.active { color: #15346d; }

.events { position: relative; list-style: none; margin: 0; padding: 0; width: 100%; }
.event { position: relative; padding-left: 80px; margin-bottom: 25px;}
.event .dot { width: 12px; height: 12px; border: 2px solid #15346d; background: #fff; border-radius: 50%; position: absolute; left: 33px; top: 5px; z-index: 2;}
.event.active .dot { background: #15346d;}

.event h4 { font-size: var(--font-size-20); font-weight: 600; margin: 0 0 3px;}
.event p { margin: 0; opacity: 0.75; font-size: var(--font-size-18);}


/*조직도*/

#history-organization .history-section-4__info { border: 1.5px solid rgba(25, 41, 41, 18%); margin-bottom: 40px; padding: 40px;} 
#history-organization .info-list  { position: relative; margin: 0; padding: 0;}
#history-organization .info-list dt { width: 35%; font-weight: 600; margin: 0; font-family: 'Chosunilbo_myungjo';}
#history-organization .info-list dd { width: 65%; margin: 0; flex: 1; font-size: var(--font-size-18);}

#history-organization .info-list .info-item { display: flex; align-items: flex-start; margin-bottom: 20px;}
#history-organization .info-list .info-item h5 { font-weight: 600; margin-bottom: 20px; text-align: left;}
#history-organization .info-list .info-item:last-child { margin-bottom:0;}
#history-organization .info-list .info-item:before { position: absolute; content: ""; left: 0; top: 50px; width: 100%; height: 1px; background: #dfdfdf;}
#history-organization .info-list .info-item:after { position: absolute; content: ""; left: 0; top: 49px; width: 60%; height: 3px; background: var(--color-main);}

/*임원*/
#history-member .service-section-4__title { position: relative; margin-bottom: 30px; font-size: var(--font-size-26); font-weight: 700; line-height: 1.2; margin-top: 0;}
#history-member .service-section-4__title:before { position: absolute; content: ""; left: 0; top: 54px; width: 100%; height: 1px; background: #dfdfdf;}
#history-member .service-section-4__title:after { position: absolute; content: ""; left: 0; top: 53px; width: 22%; height: 3px; background: var(--color-main);}
#history-member .row.card-box>* { margin-top: 30px;}

#history-member .badge-box { margin-top: 0;}
#history-member .badge-box .section-title { display: flex; align-items: center;}
#history-member .badge-box .title-badge { background-color: var(--color-main); color: #fff; padding: 5px 20px; font-weight: 600;}

#history-member .card-box { margin-bottom: 50px;}
#history-member .card-box:last-child { margin-bottom: 0;}
#history-member .executive-group .executive-title { font-size: var(--font-size-18); font-weight: 600; margin-bottom: .25rem;}
#history-member .executive-group .executive-sub { font-size: var(--font-size-16); font-weight: 400; position: relative; padding-left: 20px;}

#history-member .executive-sub::before { content: "\F2EA"; font-family: "bootstrap-icons"; font-size: 14px; position: absolute; left: 0; top: 3px;}

#history-member .lab-executive-card { padding: 30px; background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important; --bs-bg-opacity: 1; border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;  transition: 0.25s ease; box-shadow: 0 2px 8px rgba(0,0,0,0.05);}
#history-member .lab-executive-card .executive-group { margin-bottom: 12px; padding-bottom: 12px; border-bottom: 1px solid #dfdfdf;}
#history-member .lab-executive-card .executive-group:first-of-type { padding-top: 12px;}
#history-member .lab-executive-card .executive-group:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none;}

#history-member .lab-executive-card:hover { box-shadow: 0 6px 20px rgba(0,0,0,0.12);}
.lab-executive-card { height: 100%;}








.intro-box{}




/*lab-intro*/
#history-member .service-section-4__title.message:before { top:75px;}
#history-member .service-section-4__title.message:after { top:74px;}
/*#history-member .intro-box .service-section-4__title:before{top:90px;}
#history-member .intro-box .service-section-4__title:after{top:89px;}*/

/*오시는길*/
.root_daum_roughmap .cont { display: none;}
.contact-page__address-icon span:hover svg {filter: invert(1);}

.text-right{text-align:right;}
.name_text{font-size:2.45rem;}
.name_text1{font-size:1.95rem;}
.rr-btn{background:#666;}
.rr-btn:hover{background:#111;}
.blog-section-2__date span:first-of-type{border:none;    border-radius:none;padding:0px;}
.blog-section-2__date span:last-of-type{margin-left:0px;}

.blog-details__wrapper{border-top:2px solid #444;margin-top:30px;}
.blog-details__wrapper h3{border-bottom:1px solid #ededed;padding-bottom:15px;}
.blog-details__dec { font-family: "Noto Sans KR", sans-serif;}

.blog-details_list li {font-weight:500; text-overflow: ellipsis; display: -webkit-box;  -webkit-box-orient: vertical;  -webkit-line-clamp: 2;  overflow: hidden;}
.blog-details_list span.prev { white-space: nowrap; flex: 0 0 auto;}
.blog-details_list span a {font-weight:500; text-overflow: ellipsis; display: -webkit-box;  -webkit-box-orient: vertical;  -webkit-line-clamp: 2;  overflow: hidden;}

.blog-details_list li a:hover {color: var(--color-main);}
/*.blog-details_list li span{ text-overflow: ellipsis; display: -webkit-box;  -webkit-box-orient: vertical;  -webkit-line-clamp: 2;  overflow: hidden;}*/
.btn_wrap_list{border-top:2px solid #333;/*margin-top:15px;*/padding-top:15px;text-align:right;}
.btn_wrap_list a {background:var(--color-main);color:#fff;border-radius:30px;display:inline-block;
font-size:1.75rem;padding:10px 35px 10px 35px;}

/*리스트*/
.fund_list{border-bottom:2px solid #111;}
.fund_top_list li{text-align:center;padding-bottom:15px;}
.fund_list li{border-top:1px solid #ededed;padding:15px 5px;}
.fun_number{width:90px;text-align:center;font-size:2.15rem;}
.fun_title{width:100%;  font-size: var(--font-size-20); cursor: pointer; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;}
.blog-section-2__title{margin-bottom:5px;}
.blog-section-2__title a{font-size:2.15rem; text-overflow: ellipsis; display: -webkit-box;  -webkit-box-orient: vertical;  -webkit-line-clamp: 2;  overflow: hidden;}
.fun_data{font-size:var(--font-size-20);}
.blog-details_list ul { border-top: 1px solid #ddd;}
.blog-details_list ul li { padding: 20px 0; display: flex; gap: 10px;}
.blog-details_list ul li:first-child { border-bottom: 1px solid #ddd;}

/*게시판*/
.blog-details__main-thumb.fix.blog-details__dec p{ font-size: 16px;}
.blog-section-2__thumb img { aspect-ratio: 670 / 400;}
/*문의*/
.contact-page__form{margin-left:0px;}
/* --------------- 개인정보 동의 영역 --------------- */
.privacy-wrap{
  margin-top:18px;
  border-top:1px solid #eee;
  padding-top:16px;
}

/* 스크롤 박스 */
.privacy-box{
  border:1px solid #ddd;
  border-radius:8px;
  padding:14px 16px;
  background:#fafafa;
  max-height:160px;       /* 여기서 높이 조절 */
  overflow-y:auto;        /* 내용 많으면 스크롤 */

  line-height:1.6;
  margin-bottom:15px;
}
.privacy-box h3{
margin:0px;
  font-size:1.8rem;
  margin-bottom:6px;
}
.privacy-box dl{
  margin-bottom:8px;
}
.privacy-box dt{
  font-weight:600;
  margin-bottom:2px;
}
.privacy-box dd{
  margin-left:0;
  margin-bottom:4px;
}

/* 동의 체크박스 라인 */
.privacy-check{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:1.65rem;
}
.privacy-check input[type="checkbox"]{
  width:16px;
  height:16px;
}
.privacy-check span.label-text b{
  font-weight:700;
}

.inquiry h5{ margin-bottom: 15px;}

/*개인정보처리방침*/
#privacy-info dl{ margin-bottom: 4rem;}
#privacy-info .privacy-wrap { border-top: none;}

/*푸터*/
footer { padding: 40px 0; background: #272727; font-size: var(--font-size-15); font-weight: 300;}
footer .row.g-5 { display: flex; align-items: center; /*margin: 0 80px;*/ margin: 0;}
footer ul { padding: 0; list-style: none; margin: 0;}
footer ul li { margin-bottom: 2px;}

.footer-box { margin-top: 0; padding-left: 0;}
.footer-entire { list-style: none; display: flex; flex-wrap: wrap;}
.footer-info { margin-bottom: 0;}
.footer-info span { margin-right: 10px; margin-left: 10px; color: #fff;}
footer span { font-size: var(--font-size-18);}

.footer-info:after { content: ""; height: 15px; border-color: #FFFFFF30; position: absolute; border-style: solid; border-width: thin; margin-top: 4px;}
.footer-copy-right { padding: 16px 0; background: #272727; border-top: 1px solid #333;}
.footer-copy-right p, 
.footer-copy-right a { color: #fff; font-size: var(--font-size-16);}

.footer-copy-right a:hover, .footer-copy-right a { text-decoration: underline;}
#copyright .con-center { display: flex; justify-content: space-between; align-items: center;}


@media (max-width: 1600px) {
	:root {
	/* font */
	--font-size-14: 13px;
	--font-size-15: 14px;
	--font-size-16: 15px;
	--font-size-17: 15px;
	--font-size-18: 16px;
	--font-size-20: 17px;
	--font-size-24: 18px;
	--font-size-26: 19px;
	--font-size-28: 20px;
	--font-size-30: 21px;
	--font-size-32: 22px;
	--font-size-36: 26px;
	--font-size-38: 29px;
	--font-size-42: 38px;
	--font-size-48: 40px;
	--font-size-54: 44px;
	--font-size-72: 55px;
	--font-size-80: 60px;
	--font-size-120: 80px;


}

}

@media (max-width: 1024px) {
	:root {
		/* font */
		--font-size-14: 12px;
		--font-size-15: 13px;
		--font-size-17: 14px;
		--font-size-18: 15px;
		--font-size-20: 16px;
		--font-size-24: 20px;
		--font-size-26: 20px;
		--font-size-28: 21px;
		--font-size-30: 22px;
		--font-size-32: 24px;
		--font-size-36: 25px;
		--font-size-38: 26px;
		--font-size-42: 34px;
		--font-size-46: 35px;
		--font-size-48: 35px;
		--font-size-54: 40px;
		--font-size-60: 42px;
		--font-size-72: 45px;
		--font-size-80: 50px;
		--font-size-120: 56px;
	}
	

}
@media (max-width: 640px) {
	:root {
		/* font */
		--font-size-14: 12px;
		--font-size-15: 13px;
		--font-size-16: 14px;
		--font-size-17: 14px;
		--font-size-18: 15px;
		--font-size-20: 15px;
		--font-size-24: 18px;
		--font-size-26: 18px;
		--font-size-28: 19px;
		--font-size-30: 19px;
		--font-size-32: 19px;
		--font-size-36: 20px;
		--font-size-38: 21px;
		--font-size-42: 21px;
		--font-size-46: 23px;
		--font-size-48: 24px;
		--font-size-54: 27px;
		--font-size-60: 33px;
		--font-size-72: 36px;
		--font-size-80: 40px;
		--font-size-120: 45px;
}

}

@media (max-width: 1600px) {



}

@media (max-width: 1024px) {
.rr-header__menu-toggle { display: none;}


}

@media (min-width: 991px) {

.fund_top_list{border-top:2px solid #111;padding-top:15px;}
.d_flexbw{display: flex;align-items: center;justify-content: space-between;}
.fun_data{width:150px;text-align:center;}
}



@media (max-width: 991px) {
.fun_data{position:relative; margin-top: 10px;}
.fun_data:before {
    content: "";
    width: 40px;
    height: 1px;
    margin-right: 17px;
    display: inline-block;
    transform: translateY(-5px);
    background-color: var(--rr-heading-primary);
}
.fund_list{border-top:2px solid #111;}
.fund_top_list{display:none;}
.rr-header__menu-toggle { display: block;}
.mb-minus-60 {
    margin-bottom: -10px;
}

}

@media all and (min-width:1200px) and (max-width:1439px) {}

@media (max-width: 1199px) {
.history-timeline::before { left: 152px;}



}

@media all and (min-width:992px) and (max-width:1199px) {


}

@media (max-width: 991px) {



}

@media (max-width: 767px) {}

@media (max-width: 575px) {

.rr-header-5 .rr-header__main { margin: 0;}
.mobile-logo { width: 80%;}
.breadcrumb-section__wrapper { background-position: center;}

.history-timeline::before { left: 134px;}
#history-organization .info-list .info-item:before { top: 40px;}
#history-organization .info-list .info-item:after { top: 39px;}

/*lab-intro*/
#history-member .service-section-4__title.message{ margin-bottom: 10px;}
#history-member .service-section-4__title.message:before { top: 53px;}
#history-member .service-section-4__title.message:after { top: 52px;}

.blog-details__wrapper{ margin-top:10px;}
.mt-40 { margin-top: 20px;}

/*게시판*/
.fun_data:before { width: 0; margin-right: 0;}

.footer-entire { margin-top:20px;}
.footer-info { margin-bottom:10px;}
.footer-info:after { margin: 1px 10px 0px 10px;}


}

@media (max-width: 480px ) {



.service-section-4__item { max-width: 380px;}

br.mo { display: none;}

footer { padding: 30px 0;}
footer span { font-size: var(--font-size-17);}
.footer-info span { margin: 0;}
#copyright .con-center { flex-direction: column; align-items: flex-start;}
#copyright .con-center a {margin-top: 7px;}

}