@charset "utf-8";

/* Reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,form,fieldset,p,button{margin:0;padding:0}
body,h1,h2,h3,h4,input,button,textarea,pre,select{font-family:'Noto Sans KR','Inter','나눔고딕',NanumGothic,'맑은 고딕',Malgun Gothic,'돋움',Dotum,'굴림',Gulim,HelveticaNeue-Light,AppleSDGothicNeo-Light,sans-serif; font-size:16px;color:#0e0e0e; letter-spacing:-0.5px; }
body{text-align:left; word-break:break-word; overflow-x:hidden;}
img,fieldset,iframe{border:0 none}
img {max-width:100%;}
li{list-style:none}
input,select,button{vertical-align:middle}
img{vertical-align:top}
i,em,address{font-style:normal}
label,button{cursor:pointer}
a{color:#000;text-decoration:none; }
hr{display:none}
table{border-collapse:collapse;border-spacing:0}
caption{font-size:0; line-height:0; height:0}

/* Mobile Form Default */
input[type='text'],input[type='password'],input[type='image'],input[type='search']{-webkit-appearance:none;-webkit-border-radius:0}

* {box-sizing:border-box; -webkit-tap-highlight-color: rgba(0,0,0,0);}
body {overflow-x:hidden; word-break: keep-all; overflow-wrap:anywhere;}

select{ -webkit-appearance: none; -moz-appearance: none; appearance: none; -webkit-appearance:none;-webkit-border-radius:0 }
select::-ms-expand {display: none;}

::-webkit-input-placeholder { color:#8F8F8F;  font-weight: normal; font-size: 18px;  font-weight: 400; opacity:1; }

.mob {display: none;}

/* 공용 래퍼 */
.inner {width:100%; max-width:1320px; margin:0 auto; padding:0 20px; position:relative;}


/* 모바일 */
@media all and (max-width:1280px) {
	.mob {display:block;}
	.pc {display:none;}
}


/* ========================================
   .head : 고정 헤더 + GNB
======================================== */
.head {position:fixed; top:0; left:0; width:100%; height:90px; z-index:1000; background:#fff; border-bottom:1px solid #eee; transition:background 0.3s, border-color 0.3s;}
.head .headCont {position:relative; display:flex; align-items:center; justify-content:center; height:90px; padding:0 40px; max-width:1920px; margin:0 auto;}
.head .h1Logo {position:absolute; left:40px; top:50%; transform:translateY(-50%); width:107px; height:38px;}
.head .h1Logo a {display:block; width:100%; height:100%; text-indent:-999em; overflow:hidden; background:url('../images/h1_logo.svg') left center no-repeat; background-size:contain;}
.head .gnbWrap .in > ul {display:flex;}
.head .gnbWrap .in > ul > li {position:relative;}
.head .gnbWrap .in > ul > li > a {display:block; width:213px; text-align:center; height:90px; line-height:90px; font-size:20px; font-weight:500; color:#000; white-space:nowrap; transition:color 0.2s;}
.head .gnbWrap .in > ul > li > a:hover {color:#14508f;}
.head .gnbWrap .subMenu {display:none; position:absolute; top:90px; left:0; width:100%; height: 349px; padding:24px 0; border-left:1px solid #eee;}
.head .gnbWrap .in > ul > li:last-child .subMenu {border-right:1px solid #eee;}
.head .gnbWrap .subMenu li a {display:block; padding:10px 0; font-size:16px; color:#232d3b; line-height:1.5; text-align:center; transition:color 0.2s;}
.head .gnbWrap .subMenu li a:hover {color:#14508f;}
.head .bgGnb {display:none; position:absolute; left:0; top:90px; width:100%; height:349px; background:#fff; border-top:1px solid #eee; box-shadow:0 8px 20px rgba(0,0,0,0.08); z-index:-1;}
.head .btnMemu {display:none;}
.head .btnMemu button {width:24px; height:24px; border:none; padding:0; background:url('../images/ico_menu.svg') center no-repeat; background-size:contain; text-indent:-999em; overflow:hidden;}

/* head 호버 상태 (.white) - PC 메가메뉴 펼침 */
.head.white .bgGnb {display:block;}
.head.white .gnbWrap .subMenu {display:block;}
.head.white .gnbWrap .in > ul > li > a {color:#14508f;}

/* hero 섹션 위에 떠있을 때 */
.head.active {background:transparent; border-bottom-color:transparent;}
.head.active .h1Logo a {background-image:url('../images/h1_logo_white.svg');}
.head.active .gnbWrap .in > ul > li > a {color:#fff;}
.head.active.white {background:#fff; border-bottom-color:#eee;}
.head.active.white .h1Logo a {background-image:url('../images/h1_logo.svg');}
.head.active.white .gnbWrap .in > ul > li > a {color:#000;}


/* ========================================
   .container > .mainSec : 메인 페이지
======================================== */
.container {width:100%;}
.mainSec {position:relative;}
.mainSec .section {position:relative;}

.mainVisual  {height: 100%; position: relative; z-index: 1;margin:0 auto;}
.mainVisual .swiper-slide {height: 100vh;}
.mainVisual .swiper-slide:after {content:''; position:absolute; inset:0; background:rgba(0,0,0,0.25);}
.mainVisual .swiper-slide img {object-fit: cover; height: 100%; width: 100%;}


/* 우측 고정 네비게이션 */
.mainRightNav {position:fixed; right:0; top:0; height: 100%; width:175px; z-index:200; display: flex; align-items: center; pointer-events: none;;}
.mainRightNav .navInner {position:relative; display:flex; height: 100%; justify-content:center; flex-direction:column; align-items:flex-start;}
.mainRightNav .navLine {position:absolute; left:30px; top:0; bottom:0; width:1px; background:rgba(255,255,255,0.35);}
.mainRightNav .navItem {display:flex; align-items:center; gap:12px; padding:18px 0; cursor:pointer; position:relative; z-index:1; pointer-events: auto;}
.mainRightNav .navItem .dot {width:12px; height:12px; min-width:12px; border-radius:50%; background:#fff; margin-left:25px; transition:background 0.3s;}
.mainRightNav .navItem .navIcon {display:none; width:62px; height:62px; min-width:62px; align-items:center; justify-content:center;}
.mainRightNav .navItem .navIcon img {width:100%; height:100%; object-fit:contain;}
.mainRightNav .navItem.active .dot {display:none;}
.mainRightNav .navItem.active .navIcon {display:flex;}
.mainRightNav .navItem span {font-size:16px; font-weight:500; color:#fff; white-space:nowrap;}
.mainRightNav .navItem.active span {font-size:19px; color:#fff; opacity:1;}
.mainRightNav.darkNav .navItem .dot {background:rgba(108,123,145,0.5);}
.mainRightNav.darkNav .navItem span {color:#6c7b91;}
.mainRightNav.darkNav .navItem.active span {color:#6c7b91; opacity:1;}
.mainRightNav.hidden {display: none;}


/* Section 1 - 메인 Hero */
.mainSec .secHero {overflow:hidden;}
.mainSec .secHero .heroContent { z-index: 10;position:absolute; top:50%; left:50%; transform:translate(-50%, calc(-50% - 30px)); text-align:center; color:#fff; width:100%;}
.mainSec .secHero .heroTit01 {font-size:46px; font-weight:500; line-height:1.3; margin-bottom:16px; white-space:nowrap;}
.mainSec .secHero .heroTit02 {font-size:24px; margin-bottom:50px; opacity:0.9;}
.mainSec .secHero .heroBtns {display:flex; justify-content:center; gap:20px;}
.mainSec .secHero .heroBtns a {display:flex; align-items:center; justify-content:center; width:208px; height:64px; border-radius:100px; font-size:24px; font-weight:500; background:rgba(0,0,0,0.2); color:#fff; backdrop-filter:blur(7px); border:1px solid rgba(255,255,255,0.3); transition:background 0.25s, color 0.25s, border-color 0.25s;}
.mainSec .secHero .heroBtns a:hover {background:#fff; color:#000; border-color:#fff; backdrop-filter:none;}

/* 페이지 카운터 */
.mainSec .heroPageNum {position:absolute; bottom:150px; left:200px; color:#fff; display:flex; align-items:baseline; gap:10px; z-index: 10;}
.mainSec .heroPageNum .cur {font-size:20px; font-weight:700;}
.mainSec .heroPageNum .tot {font-size:16px; font-weight:500; opacity:0.4;}

/* 스크롤 인디케이터 */
.mainSec .scrollIco {position:absolute; bottom:50px; left:50%; transform:translateX(-50%); text-align:center; z-index:2;}
.mainSec .scrollIco img {width:30px; height:70px; display:block; margin:0 auto; animation:scrollBounce 1.8s ease-in-out infinite;}
@keyframes scrollBounce {0%,100%{transform:translateY(0);} 50%{transform:translateY(10px);}}


/* Section 2 - 주요소식 */
.mainSec .secNews {overflow:hidden;}
.mainSec .secNews .newsBg {position:absolute; inset:0; background:url('../images/bgNotice.jpg') center/cover no-repeat;}
.mainSec .secNews .newsBg::after {content:''; position:absolute; inset:0; background:rgba(255,255,255,0.7);}
.mainSec .secNews .newsInner {position:relative; z-index:1; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center;}
.mainSec .secTit01 {text-align:center; font-size:36px; font-weight:500; color:#484a4b; margin-bottom:50px;}
.mainSec .secTit01 strong {color:#14508f; font-weight:700;}
.mainSec .newsSlideWrap {width:100%; overflow:visible; padding-bottom:50px;}
.mainSec .newsSlide {width:1200px; overflow:visible !important; margin:0 auto;}
.mainSec .newsSlide .swiper-wrapper {align-items:center;}
.mainSec .newsSlide .swiper-slide {width:487px; height:556px; border-radius:12px; overflow:hidden; opacity:0.6; transform:scale(0.85) translateY(20px); transition:transform 0.4s ease, opacity 0.4s ease; box-shadow:0 35px 46px rgba(0,0,0,0.2); cursor:pointer;}
.mainSec .newsSlide .swiper-slide img {width:100%; height:100%; object-fit:cover; display:block;}
.mainSec .newsSlide .swiper-slide-active {opacity:1; transform:scale(1) translateY(0); }
.mainSec .newsSlide .swiper-pagination-bullet {background:#fff; opacity:.6; width:8px; height:8px; transition:all 0.3s;}
.mainSec .newsSlide .swiper-pagination-bullet-active {opacity:1; }
.mainSec .newsSlide .swiper-pagination {bottom:-30px;}


.newsSlide .swiper-slide {
    opacity: 0 !important;
    visibility: hidden;
}

/* 2. 가운데(active), 왼쪽(prev), 오른쪽(next) 3개만 다시 보이게 설정 */
.newsSlide .swiper-slide-active,
.newsSlide .swiper-slide-prev,
.newsSlide .swiper-slide-next {
    opacity: 1 !important;
    visibility: visible;
}

/* 3. 양 옆 슬라이드는 살짝 흐리게 해서 가운데를 강조 (선택 사항) */
.newsSlide .swiper-slide-prev,
.newsSlide .swiper-slide-next {
    opacity: 0.6 !important; /* 3개 중 양옆은 반투명하게 */
	transform:scale(.5)
}


/* Section 3 - 게시판 */
.mainSec .secBoard {overflow:hidden;}
.mainSec .secBoard .boardBg {position:absolute; inset:0; background:url('../images/bgBoard.jpg') center/cover no-repeat;}
.mainSec .secBoard .boardCont {position:relative; z-index:1; height:100%; display:flex; align-items:center; justify-content:center;}
.mainSec .boardCards {display:flex; gap:30px; width:100%; max-width:1400px; padding:0 40px;}
.mainSec .boardCard {background:#fff; border-radius:12px; flex:1; padding:30px 20px 0; height:534px; overflow:hidden;}
.mainSec .boardCard .cardHead {display:flex; align-items:center; justify-content:space-between; margin-bottom:20px;}
.mainSec .boardCard .cardTit01 {font-size:18px; font-weight:500; color:#000;}
.mainSec .boardCard .moreBtn {display:block; width:27px; height:27px; flex-shrink:0;}
.mainSec .boardCard .moreBtn img {width:100%; height:100%; display:block;}
.mainSec .boardCard .cardList {border-top:1px solid #000;}
.mainSec .boardCard .cardList li {border-bottom:1px solid #f0f0f0;}
.mainSec .boardCard .cardList li a {display:block; padding:12px 13px;}
.mainSec .boardCard .cardList .listTit {display:block; font-size:16px; color:#000; letter-spacing:-0.5px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.mainSec .boardCard .cardList .listDate {display:block; font-size:13px; color:#aeaeae; margin-top:4px; letter-spacing:-0.5px;}
.mainSec .boardCard .cardList li a:hover .listTit {color:#14508f;}


/* Section 4 - 간행물 */
.mainSec .secPub {background:#f3f3f3; overflow:hidden;}
.mainSec .secPub .pubInner {position:relative; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:40px 0;}
.mainSec .secPub .pubHeadRow {position:relative; width:1252px; margin:0 auto 10px;}
.mainSec .secPub .pubTit01 {font-size:36px; font-weight:500; color:#484a4b; text-align:center; margin-bottom: 20px;}
.mainSec .secPub .pubTit01 strong {color:#14508f; font-weight:700;}
.mainSec .secPub .pubTit02 {font-size:19px; color:#6c7b91; text-align:center; margin-bottom:30px;}
.mainSec .secPub .pubMore { display:flex; justify-content: flex-end; align-items:center; gap:6px; font-size:15px; color:#6c7b91; font-weight:500; margin-bottom: 15px;}
.mainSec .secPub .pubMore img {width:24px; height:24px;}
.mainSec .secPub .pubMore:hover {color:#14508f;}
.mainSec .pubSlideWrap {width:1250px; margin:0 auto; position:relative;}
.mainSec .pubSlide {overflow:hidden;}
.mainSec .pubSlide .swiper-slide {width:297px; height:443px; border-radius:12px; overflow:hidden; position:relative; cursor:pointer;}
.mainSec .pubSlide .swiper-slide img {width:100%; height:100%; object-fit:cover; display:block;}
.mainSec .pubSlide .pubSlideGrad {position:absolute; inset:0; background:linear-gradient(to bottom, transparent 30%, rgba(0,0,0,0.85) 100%);}
.mainSec .pubSlide .pubSlideInfo {position:absolute; bottom:20px; left:24px; right:16px; color:#fff;}
.mainSec .pubSlide .badge {color:#fff; position: absolute; left:17px; top:17px; border:1px solid #fff; border-radius:58px; padding:3px 12px; font-size:13px; margin-bottom:8px;}
.mainSec .pubSlide .pubSlideInfo .category {font-size:14px; opacity:0.85; margin-bottom:6px;}
.mainSec .pubSlide .pubSlideInfo .divLine {width:100%; height:1px; background:rgba(255,255,255,0.4); margin-bottom:8px;}
.mainSec .pubSlide .pubSlideInfo .pubSlideTit {font-size:17px; line-height:1.4;}
.mainSec .pubNav {display:flex; justify-content:center; gap:10px; margin-top:40px;}
.mainSec .pubNav button {width:52px; height:52px; border:none; background:none; cursor:pointer; padding:0; transition:opacity 0.2s;}
.mainSec .pubNav button:hover {opacity:0.7;}
.mainSec .pubNav button img {width:100%; height:100%; display:block;}


/* Section 5 - Footer (분리) */
.footer {display:flex; flex-direction:column; justify-content:center;  border-top:1px solid #CCCCCC; z-index: 201;  }
.relatedOrg {max-width:1470px; width: 100%; display:flex; align-items:center; justify-content: space-between; padding:30px 0; margin:0 auto;}
.relatedOrg .orgLabel {font-size:20px; color:#6c6c6c; white-space:nowrap; font-weight:500;}
.relatedOrg .orgLogos {display:flex; gap:19px; flex:1; max-width:1230px; justify-content: flex-end;; }
.relatedOrg .orgLogos a {display:flex; align-items:center; justify-content:center; border:1px solid #ccc; flex:1; transition:border-color 0.2s;}
.relatedOrg .orgLogos a:hover {border-color:#14508f;}
.relatedOrg .orgLogos a img {max-height:47px; object-fit:contain;}
.footerWrap {padding:40px 0; border-top:1px solid #ccc;}
.footerWrap .footInner {display:flex; gap:48px;max-width:1470px; margin:0 auto;}
.footerWrap .footLogo img {height:60px; object-fit:contain;}
.footerWrap .footInfo {flex:1;}
.footerWrap .footInfo p {font-size:14px; color:#6c6c6c; line-height:1.8;}
.footerWrap .footInfo .copyright {color:#b5b5b5; margin-top:23px;}
.footerWrap .footInfo a {color:#6c6c6c;}
.footerWrap .footActions {display:flex;  gap:40px; margin-left:auto; align-items: flex-start;}
.footerWrap .downloadBtn {display:flex; align-items:center; gap:16px; border:1px solid #ccc; border-radius:6px; padding:0 20px; height: 46px; font-size:14px; color:#6c6c6c; white-space:nowrap; transition:border-color 0.2s, color 0.2s;}
.footerWrap .downloadBtn:hover {border-color:#14508f; color:#14508f;}
.footerWrap .downloadBtn img {}
.footerWrap .topBtn {border:none;}
.footerWrap .topBtn img {}

/* ========================================
   서브페이지 상단 영역 (.subBgTop)
======================================== */
.subBgTop {position:relative; height:493px; background:center/cover no-repeat; display:flex; align-items:center; justify-content:center; margin-top: 90px; padding-top:50px; padding-bottom:61px;}
.subBgTop::before {content:''; position:absolute; inset:0; background:rgba(0,0,0,0.12); z-index:1;}
.subBgTop .subBgTitle {position:relative; z-index:2; font-size:46px; font-weight:500; color:#fff; text-align:center; line-height:1.3; margin-bottom: 100px;}
.subBgTop {background-image:url('../images/sub_bg_01.jpg');}
.subBgTop.joinInfo {background-image:url('../images/sub_bg_02.png');}
.subBgTop.eventInfo {background-image:url('../images/sub_bg_03.jpg');}
.subBgTop.journalIntro {background-image:url('../images/sub_bg_04.png');}
.subBgTop.conference {background-image:url('../images/sub_bg_05.png');}
.subBgTop.researchProject {background-image:url('../images/sub_bg_06.png');}
.subTab {position:absolute; bottom:0; left:0; width:100%; height:61px; background:rgba(0,0,0,0.12); backdrop-filter:blur(10px); z-index:2; overflow:hidden;}
.subTab ul {display:flex; justify-content:center; height:100%; max-width:1280px; margin:0 auto;}
.subTab ul li {min-width:210px; height:100%; flex-shrink:0; flex:1;}
.subTab ul li a {display:flex; align-items:center; justify-content:center; width:100%; height:100%; font-size:20px; font-weight:500; color:#fff; transition:background 0.2s;}
.subTab ul li a:hover {background:rgba(62,123,186,0.6);}
.subTab ul li.on a {background:#3e7bba;}

.subSec {padding:90px 0 135px;}

/* 본문 콘텐츠 탭 (학회소개 / 연혁 / 조직도 등) */
.contentTab {margin-bottom:60px; background:#f4f4f4;}
.contentTab ul {display:flex; justify-content:stretch; gap:0;}
.contentTab ul li {position:relative; flex:1;}
.contentTab ul li a {display:flex; align-items:center; justify-content:center; text-align: center; height:67px; padding:0 24px; font-size:20px; font-weight:500; color:#969b9c; border:1px solid transparent; border-radius:6px; transition:color 0.2s, background 0.2s, border-color 0.2s;}
.contentTab ul li a:hover {color:#3e7bba;}
.contentTab ul li.on a {background:#fff; border-color:#3e7bba; color:#3e7bba; box-shadow: 0px 4px 10px 0px rgba(62, 123, 186, 0.2);}

/* 학회소개 (about) */
.aboutCon {padding:10px 0 0;}
.aboutTop {display:flex; gap:40px; align-items:flex-start;}
.aboutTop .logoCard {flex:0 0 413px;}
.aboutTop .logoCard .logoBox {display:flex; align-items:center; justify-content:center; width:100%; height:262px; background:#fff; border:1px solid #d4d4d4; box-sizing:border-box;}
.aboutTop .logoCard .logoBox img {max-width:70%; height:auto;}
.aboutTop .logoCard .btnDown {display:inline-flex; align-items:center; justify-content:center; gap:8px; min-width:182px; height:46px; margin-top:20px; padding:0 24px; border:1px solid #ccc; border-radius:6px; background:#fff; font-size:14px; color:#6c6c6c; transition:background 0.2s, color 0.2s, border-color 0.2s;}
.aboutTop .logoCard .btnDown:hover {border-color:#3e7bba; color:#3e7bba;}
.aboutTop .logoCard .btnDown .ico {display:inline-block; width:20px; height:17px; background:url('../images/ico_download.svg') center no-repeat; background-size:20px auto;}
.aboutTop .infoBox {flex:1; min-width:0;}
.aboutTop .infoBox .infoTit {font-size:20px; font-weight:500; color:#000; line-height:1;}
.aboutTop .infoBox .infoList {margin-top:20px; padding:8px 0; border-top:2px solid #1a1a1a; border-bottom:1px solid #d4d4d4; overflow:hidden;}
.aboutTop .infoBox .infoList dt,
.aboutTop .infoBox .infoList dd {font-size:16px; line-height:36px; color:#000;}
.aboutTop .infoBox .infoList dt {float:left; clear:left; width:108px; padding-left:18px; font-weight:500; box-sizing:border-box;}
.aboutTop .infoBox .infoList dd {margin-left:108px;}
.aboutBot {margin-top:80px; padding-top:60px; border-top:1px solid #d4d4d4; display:flex; gap:40px;}
.aboutBot .aboutTit {flex:0 0 calc(33.33% - 27px); font-size:32px; font-weight:500; color:#000; line-height:1.4;}
.aboutBot .aboutList {flex:1; min-width:0;}
.aboutBot .aboutItem {margin-top:48px;}
.aboutBot .aboutItem:first-child {margin-top:0;}
.aboutBot .aboutItem .ti {position:relative; padding-left:31px; font-size:20px; font-weight:500; color:#000; line-height:1.2;}
.aboutBot .aboutItem .ti .ico {position:absolute; left:0; top:50%; transform:translateY(-50%); width:19px; height:15px; background:url('../images/ico_check.svg') center no-repeat; background-size:19px auto;}
.aboutBot .aboutItem .tt {margin-top:14px; padding-left:31px; font-size:16px; line-height:26px; letter-spacing:-0.16px; color:#000;}
.aboutBot .aboutItem ul.tt {list-style:none;}
.aboutBot .aboutItem ul.tt li {line-height:26px;}

/* 연혁 (history) - timeline */
.historyCon {padding:10px 0 40px;}
.historyTimeline {position:relative;}
.historyTimeline::before {content:''; position:absolute; left:138px; top:80px; bottom:0; width:2px; background:#3e7bba;}
.historyTimeline .hyears {position:relative;}
.historyTimeline .hyears > li {position:relative; padding:50px 0 60px; border-top:1px dashed #3E7BBA;}
.historyTimeline .hyears > li:first-child {border-top:none;}
.historyTimeline .hyears > li .year {position:absolute; left:0; top:46px; width:120px; font-size:32px; font-weight:500; color:#3e7bba; line-height:1;}
.historyTimeline .hyears > li .dot {position:absolute; left:125px; top:50px; width:28px; height:28px; background:#fff; border:8px solid #3e7bba; border-radius:50%; box-sizing:border-box; z-index:1;}
.historyTimeline .hyears > li .dot:after {content:''; border-radius:50%; position:absolute; left:-20px; top:-20px; border:12px solid #fff; width: 28px; height: 28px;}
.historyTimeline .hyears > li .hmonths {margin-left:260px;}
.historyTimeline .hyears > li .hmonths > li {display:flex; align-items:baseline; gap:32px; margin-top:36px;}
.historyTimeline .hyears > li .hmonths > li:first-child {margin-top:0;}
.historyTimeline .hyears > li .hmonths > li .date {flex:0 0 140px; font-size:20px; font-weight:500; color:#3e7bba; line-height:1.4;}
.historyTimeline .hyears > li .hmonths > li .desc {flex:1; font-size:16px; color:#000; line-height:1.6; letter-spacing:-0.16px;}

/* 조직도 (organ) */
.organChart {padding:20px 0 60px; text-align:center; border-bottom:1px solid #e6e6e6;}
.organChart img {max-width:100%; height:auto;}
.organGroup {display:flex; gap:40px; align-items:flex-start; padding:40px 0; border-bottom:1px solid #e6e6e6;}
.organGroup:last-child {border-bottom:0;}
.organGroup .organTit {flex-shrink:0; width:160px; padding-top:14px; font-size:18px; font-weight:700; color:#0e0e0e;}
.organGroup .organCont {flex:1; min-width:0;}
.organTable {width:100%; table-layout:fixed; border-collapse:collapse; border-top: 2px solid #000;}
.organTable caption {position:absolute; left:-9999em; width:0; height:0; overflow:hidden;}
.organTable tr {height:55px; }
.organTable th {padding:8px 12px; background:#3e7bba; color:#fff; font-size:18px; font-weight:600; text-align:center; vertical-align:middle; letter-spacing:-0.18px; border-bottom:1px solid #AEAEAE;}
.organTable td {padding:8px 30px;  color:#000; font-size:20px; font-weight:500; line-height:1.4; vertical-align:middle; border-bottom:1px solid #AEAEAE;}
.organTable td .org {margin-left:12px; color:#aeaeae; font-weight:500;}

/* 인사말 */
.greetingCont {display:flex; gap:88px; align-items:flex-start;}
.greetingText {flex:1; min-width:0;}
.greetTit {font-size:36px; font-weight:500; line-height:54px; margin-bottom:55px; color:#0e0e0e;}
.greetTit .point {color:#3e7bba;}
.greetBody {font-size:20px; color:#6c6c6c; line-height:32px; word-break: keep-all;}
.greetBody p {margin-bottom:32px;}
.greetBody p:last-child {margin-bottom:0;}
.greetingPhoto {width:413px; flex-shrink:0;}
.greetingPhoto .photoImg {width:413px; height:570px; overflow:hidden;}
.greetingPhoto .photoImg img {width:100%; height:100%; object-fit:cover;}
.greetingPhoto .greetSig {border-top:1px solid #232d3b; padding-top:16px; display:flex; align-items:center; justify-content:flex-end; gap:14px; margin-top:40px;}
.greetingPhoto .greetSig .pos {font-size:16px; font-weight:500; line-height:32px; color:#0e0e0e;}
.greetingPhoto .greetSig .name {font-size:52px; line-height:1; color:#0e0e0e; font-family:'THEFACESHOP_INKLIPQUID', cursive;}

/* 위원회 (committee) */
.committeeWrap {padding:0;}
.committeeGroup {display:flex; gap:60px; align-items:flex-start; padding:30px 0; }
.committeeGroup.first { border-top:2px solid #1a1a1a; border-bottom: 1px solid #CCCCCC; padding:35px pg_menu_list0;  }
.committeeGroup.side {flex-direction: column; gap:30px; }
.committeeGroup.side .committeeTit {flex:0 0 20px;}
.committeeGroup.border {border-top:2px solid #000; border-bottom:1px solid #CCCCCC; margin-top: 40px;}
.committeeGroup:first-of-type {padding-top:50px;}
.committeeGroup .committeeTit {flex:0 0 260px; font-size:32px; font-weight:500; color:#000; line-height:1.4;}
.committeeGroup .committeeCont {flex:1; min-width:0; width: 100%;}
.committeeWrap .introBox {padding:0; background:transparent; border:0;}
.committeeWrap .introBox p {font-size:16px; line-height:26px; color:#000; letter-spacing:-0.16px;}
.committeeWrap .introBox p + p {margin-top:18px;}
.committeeWrap .introBox p strong {color:#3e7bba; font-weight:500; margin-right:4px;}
.committeeWrap .introBox.boxed {padding:30px 40px; display:flex; align-items:center; justify-content:center; min-height:87px; background:#f6f6f6; border-radius:10px; text-align:center; width: 100%;}
.committeeWrap .introBox.boxed p {font-size:20px; line-height:1.4; color:#000; font-weight:400;}
.committeeWrap .introBox.boxed p + p {margin-top:0;}
.bulletList {display:flex; flex-direction:column;}
.bulletList li {position:relative; padding-left:16px; font-size:16px; line-height:26px; color:#000; letter-spacing:-0.16px;}
.bulletList li::before {content:''; position:absolute; left:0; top:11px; width:5px; height:5px; background:#3e7bba; border-radius:50%;}
.labList {display:flex; flex-direction:column; gap:40px;}
.labItem .labTit {position:relative; padding-left:18px; margin-bottom:14px; font-size:20px; font-weight:500; color:#000;}
.labItem .labTit::before {content:''; position:absolute; left:0; top:50%; transform:translateY(-50%); width:7px; height:7px; background:#3e7bba; border-radius:50%;}
.committeeWrap .emptyMsg {padding:40px 20px; text-align:center; font-size:16px; color:#888; background:#f6f7f9; border:1px solid #e6e6e6;}
.researchList {display:flex; flex-direction:column; gap:24px;}
.researchYear {border-left:3px solid #14508f; padding:4px 0 4px 20px;}
.researchYear .yearTit {font-size:22px; font-weight:700; color:#14508f; line-height:1.2; margin-bottom:12px;}
.researchYear ul {display:flex; flex-direction:column; gap:8px;}
.researchYear ul li {position:relative; padding-left:14px; font-size:16px; color:#333; line-height:1.6;}
.researchYear ul li::before {content:''; position:absolute; left:0; top:11px; width:4px; height:4px; background:#6c6c6c; border-radius:50%;}

/* 산하연구회 (researchGroup) */
.researchGroupWrap {padding:0;}
.rgCont {margin-top:0;}
.rgSection {padding:60px 0 70px; border-top:1px solid #e6e6e6;}
.rgSection:first-child {border-top:0; padding-top:30px;}
.rgSection .rgTit {font-size:32px; font-weight:500; line-height:54px; color:#000; margin:0 0 24px;}
.rgInfoBox {background:#f6f6f6; border-radius:10px; padding:42px 70px;}
.rgInfoRow {display:flex; align-items:flex-start; gap:14px;}
.rgInfoRow + .rgInfoRow {margin-top:18px;}
.rgInfoRow .label {flex:0 0 60px; font-size:20px; font-weight:700; line-height:36px; color:#000;}
.rgInfoRow .cont {flex:1; min-width:0;}
.rgInfoRow .cont p {font-size:20px; line-height:36px; color:#000; margin:0;}
.rgInfoRow .cont .num {margin-right:4px; font-size:15px;}
.organTable.rgTable th {text-align:center;}
.organTable.rgTable td {padding:14px 30px;}
.organTable.rgTable td .name {font-size:20px; font-weight:500; color:#000;}
.organTable.rgTable td .org {margin-left:12px; font-size:20px; font-weight:500; color:#aeaeae;}
.organTable.rgTable td .nameList {display:block; font-size:20px; font-weight:500; color:#000; line-height:34px;}
.rgSectionRow {display:flex; gap:60px; align-items:flex-start;}
.rgSectionRow .rgTit {flex:0 0 260px; margin:0;}
.rgSectionRow .rgRowCont {flex:1; min-width:0; padding-top:8px;}
.rgTaskHead {font-size:16px; line-height:26px; color:#000; margin:0 0 14px;}
.rgTaskNum {list-style:none; margin:0 0 26px; padding:0;}
.rgTaskNum li {font-size:16px; line-height:26px; color:#000; padding-left:14px; text-indent:-14px;}
.rgTaskList {list-style:none; margin:0; padding:0;}
.rgTaskList li {position:relative; padding-left:14px; font-size:16px; line-height:26px; color:#000; letter-spacing:-0.16px;}
.rgTaskList li::before {content:''; position:absolute; left:0; top:11px; width:5px; height:5px; background:#3e7bba; border-radius:50%;}
.rgIntroList li {font-size:20px; line-height:36px; padding-left:18px; letter-spacing:0;}
.rgIntroList li::before {top:16px; width:6px; height:6px;}
.organTable.rgTable td .org  {margin-right:12px;}

/* 학술지 소개 (journalIntro) */
.journalIntroWrap {padding:0;}
.journalIntroWrap .jiTit {font-size:32px; font-weight:500; line-height:54px; color:#000;}
.journalIntroWrap .jiIntro {display:flex; gap:60px; align-items:flex-start; padding-bottom:55px; border-bottom:1px solid #d4d4d4;}
.journalIntroWrap .jiIntro .jiTit {flex:0 0 299px; margin:0;}
.journalIntroWrap .jiIntro .jiCont {flex:1; min-width:0;}
.journalIntroWrap .jiIntro .jiLead {font-size:20px; font-weight:500; line-height:30px; color:#000; margin-bottom:24px;}
.journalIntroWrap .jiIntro .jiLead .point {color:#3e7bba;}
.journalIntroWrap .jiIntro .jiDesc {font-size:16px; line-height:26px; color:#000; letter-spacing:-0.32px; word-break:keep-all;}
.journalIntroWrap .jiBoard {margin-top:80px;}
.journalIntroWrap .jiBoard .jiTit {margin:0 0 30px;}
.organTable.jiTable th {text-align:center;}
.organTable.jiTable td {padding:8px 30px;}
.organTable.jiTable td .name {font-size:20px; font-weight:500; color:#000;}
.organTable.jiTable td .org {margin-left:12px; font-size:20px; font-weight:500; color:#aeaeae;}

/* 입회안내 (joinInfo) */
.joinInfoWrap {padding:0;}
.joinSec {padding:50px 0; border-top:2px solid #1a1a1a;}
.joinSec:last-of-type {border-bottom:1px solid #d6d6d6;}
.joinSec .joinTit {position:relative; padding:0; margin:0; font-size:20px; font-weight:500; color:#000; line-height:1.4;}
.joinSec .joinTit::before {display:none;}
.joinSec .joinTit.big {font-size:32px;}
.joinSec.joinSideSec {display:flex; gap:60px; align-items:flex-start;}
.joinSec.joinSideSec .joinTit {flex:0 0 200px;}
.joinSec.joinSideSec .joinBox {flex:1; min-width:0; padding:0; border:0; background:transparent;}
.joinSec.joinTopSec .joinBox {padding:0; border:0; background:transparent;}
.joinSubTit {margin:50px 0 24px; font-size:20px; font-weight:500; color:#000; line-height:1.4;}
.stepFlow {display:flex; align-items:center; justify-content:space-between; max-width:900px; margin:30px auto 0; padding:0;}
.stepFlow li {flex:1; display:flex; align-items:center; justify-content:center; position:relative;}
.stepFlow li + li::before {content:''; position:absolute; left:-6px; top:50%; width:12px; height:18px; background:url('../images/ico_pageArrow.svg') center/contain no-repeat; transform:translateY(-50%); opacity:0.6;}
.stepFlow .stepIcon {width:157px; height:157px; border-radius:50%; background:#f4f4f4; display:flex; align-items:center; justify-content:center;}
.stepFlow .stepIcon img {max-width:70px; max-height:70px; width:auto; height:auto;}
.stepFlow .stepTxt {display:none;}
.joinBox.numBox {padding:30px 40px; background:#f4f4f4; border-radius:10px; border:0;}
.numList {counter-reset:join-num; list-style:none; padding:0; margin:0;}
.numList li {position:relative; padding-left:34px; line-height:30px; font-size:16px; color:#000; counter-increment:join-num; letter-spacing:-0.16px;}
.numList li::before {content:counter(join-num); position:absolute; left:0; top:5px; width:20px; height:20px; background:#3e7bba; color:#fff; font-weight:700; font-size:13px; text-align:center; line-height:20px; border-radius:50%;}
.numList li a {color:#000; text-decoration:underline;}
.numList li a:hover {color:#3e7bba;}
.joinSec .joinBox .t1 {font-size:16px; font-weight:500; color:#000; line-height:26px; letter-spacing:-0.16px;}
.joinSec .joinBox .t1 + .t1 {margin-top:14px;}
.joinSec .joinBox .t1 a {color:#000; text-decoration:underline; font-weight:500;}
.joinSec .joinBox .t2 {padding-left:14px; font-size:16px; color:#000; line-height:26px; letter-spacing:-0.16px;}
.joinSec .joinBox .t1 + .t2 {margin-top:4px; margin-bottom:14px;}
.joinSec .joinBox .t3 {margin-top:14px; font-size:16px; line-height:26px; color:#aeaeae; letter-spacing:-0.16px;}
.joinSec .joinBox .t3 .ast {color:#3e7bba; margin-right:4px;}
.joinBtnWrap {margin-top:30px; text-align:center;}
.joinBtn {display:inline-flex; align-items:center; justify-content:center; gap:12px; min-width:254px; height:64px; padding:0 28px; background:#fff; color:#6c6c6c; font-size:20px; font-weight:400; border:1.4px solid #ccc; border-radius:8px; transition:border-color 0.2s, color 0.2s;}
.joinBtn:hover {border-color:#3e7bba; color:#3e7bba;}
.joinBtn img {width:20px; height:auto; filter:none;}

/* 기관회원 (institutionMember) */
.institutionMemberWrap {padding:0;}
.instMemberList {display:grid; grid-template-columns:repeat(4,1fr); gap:42px 24px; padding:0; margin:0; list-style:none;}
.instMemberList > li {display:flex; flex-direction:column;}
.instMemberList .instCard {display:flex; align-items:center; justify-content:center; height:162px; padding:20px; background:#fff; border:1px solid #ccc; border-radius:10px; overflow:hidden;}
.instMemberList .instCard img {max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain;}
.instMemberList .instName {margin-top:8px; font-size:16px; line-height:30px; color:#000; letter-spacing:-0.16px; word-break:keep-all;}

/* 행사정보 (eventInfo) */
.eventInfoWrap {padding:0;}
.eventTop {display:flex; justify-content:space-between; align-items:center; padding:0 0 24px; gap:20px;}
.eventTop .selectBox {position:relative; width:254px; height:64px;}
.eventTop .selectBox select {width:100%; height:100%; padding:0 50px 0 25px; font-size:18px; color:#6c6c6c; background:#fff; border:1.4px solid #ccc; border-radius:8px; appearance:none; -webkit-appearance:none; cursor:pointer; outline:none;}
.eventTop .selectBox::after {content:''; position:absolute; right:24px; top:50%; transform:translateY(-50%); width:14px; height:8px; background:url('../images/ico_select.svg') center/contain no-repeat; pointer-events:none;}
.eventTop .eventActions {display:flex; align-items:center; gap:30px;}
.eventTop .legendItem {display:inline-flex; align-items:center; gap:8px; font-size:18px; color:#6c6c6c;}
.eventTop .legendItem i {width:13px; height:13px; border-radius:50%; background:#3e7bba;}
.eventTop .legendItem.int i {background:#d36868;}
.btnSearch {display:inline-flex; align-items:center; justify-content:center; width:254px; height:64px; background:#fff; color:#3e7bba; font-size:18px; font-weight:500; border:1.4px solid #3e7bba; border-radius:8px; transition:background 0.2s;}
.btnSearch:hover {background:#f4f8fc;}

.eventMain {display:flex; gap:0; border-top:2px solid #1a1a1a; border-bottom:1px solid #d6d6d6;}
.eventCal {flex:1; min-width:0; padding:30px 0; position:relative;}
.eventList {flex:0 0 457px; background:#f4f4f4; padding:30px 30px; display:flex; flex-direction:column;}

.calHeader {display:flex; align-items:center; justify-content:center; gap:36px; padding:0 0 24px;}
.calHeader .calNav {width:24px; height:24px; border:0; background:transparent; cursor:pointer; padding:0; position:relative;}
.calHeader .calNav::before {content:''; position:absolute; left:50%; top:50%; width:8px; height:8px; border-top:2px solid #000; border-right:2px solid #000;}
.calHeader .calNav.prev::before {transform:translate(-30%, -50%) rotate(-135deg);}
.calHeader .calNav.next::before {transform:translate(-70%, -50%) rotate(45deg);}
.calHeader .calMonth {font-size:32px; font-weight:600; color:#000; line-height:1; min-width:48px; text-align:center;}
.calHeader .calMonth em {font-style:normal;}

.calTable {width:100%; border-collapse:collapse; table-layout:fixed;}
.calTable caption {position:absolute; left:-9999em; width:0; height:0; overflow:hidden;}
.calTable th {height:32px; font-size:14px; font-weight:500; color:#000; padding:8px 0; vertical-align:middle; text-align: center;}
.calTable th.sun {color:#d36868;}
.calTable th.sat {color:#3e7bba;}
.calTable td {position:relative; height:85px; padding:14px 12px 0; vertical-align:top; text-align: center;}
.calTable td .day {display:inline-block; font-size:14px; font-weight:500; color:#000;}
.calTable td.sun .day {color:#d36868;}
.calTable td.sat .day {color:#3e7bba;}
.calTable td.empty {background:transparent;}
.calTable td.hasEvt {cursor:pointer; transition:background 0.15s;}
.calTable td.hasEvt:hover {background:#f9f9f9;}
.calTable td .evtDot {position:absolute; left:20px; bottom:35px; width:8px; height:8px; background:#3e7bba; border-radius:50%;}
.calTable td .evtDot.int {background:#d36868;}
.calTable td .evtBar {position:absolute; left:0; right:0; bottom:20px; height:4px; background:#3e7bba;}
.calTable td .evtBar.int {background:#d36868;}
.calTable td .evtBar.start {left:8px; border-radius:2px 0 0 2px;}
.calTable td .evtBar.end {right:8px; border-radius:0 2px 2px 0;}

.eventList .evtList {flex:1;}
.eventList .evtList > li {padding:24px 0; border-bottom:1px solid #d6d6d6;}
.eventList .evtList > li:first-child {padding-top:6px;}
.eventList .evtDate {font-size:24px; font-weight:600; color:#000; line-height:1.4; margin-bottom:8px;}
.eventList .evtItem {display:block; position:relative; padding-left:16px; transition:opacity 0.2s;}
.eventList .evtItem:hover {opacity:0.7;}
.eventList .evtItem .evtTit {position:relative; font-size:16px; color:#000; line-height:30px; letter-spacing:-0.16px;}
.eventList .evtItem .evtTit .dot {position:absolute; left:-16px; top:50%; transform:translateY(-50%); width:8px; height:8px; background:#3e7bba; border-radius:50%;}
.eventList .evtItem .evtDesc {font-size:16px; color:#aeaeae; line-height:24px; letter-spacing:-0.16px; margin-top:2px;}

.evtPaging {display:flex; align-items:center; justify-content:center; gap:10px; margin-top:30px;}
.evtPaging .num, .evtPaging .dir {display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:50%; background:#fff; color:#000; font-size:12px; transition:background 0.2s, color 0.2s;}
.evtPaging .num.on {background:#3e7bba; color:#fff;}
.evtPaging .num:hover:not(.on) {color:#3e7bba;}
.evtPaging .dir {position:relative;}
.evtPaging .dir::before {content:''; position:absolute; left:50%; top:50%; width:6px; height:6px; border-top:1.5px solid #6c6c6c; border-right:1.5px solid #6c6c6c;}
.evtPaging .dir.prev::before {transform:translate(-30%, -50%) rotate(-135deg);}
.evtPaging .dir.next::before {transform:translate(-70%, -50%) rotate(45deg);}

/* 행사정보 모달 (캘린더 영역 위 오버레이) */
.modalEvent {position:absolute; left:0; right:0; top:20px; z-index:10; display:none;}
.modalEvent.show {display:block;}
.modalEvent .modalBox {width:622px; max-width:calc(100% - 40px); margin:0 auto; background:#fff; border:1px solid #ccc; border-radius:6px; overflow:hidden; box-shadow:0 8px 24px rgba(0,0,0,0.08);}
.modalEvent .modalHead {height:70px; padding:0 30px; background:#3e7bba; display:flex; align-items:center;}
.modalEvent .modalTit {font-size:20px; font-weight:500; color:#fff;}
.modalEvent .modalBody {padding:26px 24px;}
.modalEvent .evtDetailBox {padding:24px 40px; background:#f4f4f4; border-radius:10px;}
.modalEvent .evtDetailBox dl {display:grid; grid-template-columns:100px 1fr; column-gap:24px; row-gap:0;}
.modalEvent .evtDetailBox dt {font-size:16px; font-weight:500; color:#000; line-height:40px;}
.modalEvent .evtDetailBox dd {font-size:16px; color:#979797; line-height:40px; word-break:break-all;}
.modalEvent .modalBtnWrap {margin-top:24px; text-align:center;}
.modalEvent .modalClose {min-width:191px; height:48px; padding:0 28px; background:#fff; border:1.05px solid #ccc; border-radius:6px; color:#6c6c6c; font-size:15px; cursor:pointer; transition:border-color 0.2s, color 0.2s;}
.modalEvent .modalClose:hover {border-color:#3e7bba; color:#3e7bba;}

/* 행사정보 리스트 (eventInfoList) */
.eventListTop {display:flex; justify-content:flex-end; padding:0 0 24px;}
.filterBar {display:flex; flex-wrap:wrap; gap:12px; padding:0 0 24px; border-bottom:2px solid #1a1a1a; margin-bottom:30px;}
.filterBar .filterItem {position:relative; height:57px;}
.filterBar .filterItem input,
.filterBar .filterItem select {width:100%; height:100%; padding:0 40px 0 26px; font-size:18px; color:#6c6c6c; background:#fff; border:1px solid #ccc; border-radius:100px; appearance:none; -webkit-appearance:none; outline:none; cursor:pointer;}
.filterBar .filterItem input::placeholder {color:#6c6c6c;}
.filterBar .filterDate {width:193px;}
.filterBar .filterDate::after {content:''; position:absolute; right:22px; top:50%; transform:translateY(-50%); width:18px; height:18px; background:url('../images/ico_caldendar.svg') center/contain no-repeat; pointer-events:none;}
.filterBar .filterDate input[type="date"] {color:#6c6c6c;}
.filterBar .filterDate input[type="date"]::-webkit-calendar-picker-indicator {opacity:0; position:absolute; right:0; top:0; width:100%; height:100%; padding:0; margin:0; cursor:pointer;}
.filterBar .filterDate input[type="date"]::-webkit-inner-spin-button,
.filterBar .filterDate input[type="date"]::-webkit-clear-button {display:none; -webkit-appearance:none;}
.filterBar .filterSelect {width:193px;}
.filterBar .filterSelect::after {content:''; position:absolute; right:22px; top:50%; transform:translate(0, -75%) rotate(45deg); width:8px; height:8px; border-right:2px solid #6c6c6c; border-bottom:2px solid #6c6c6c; pointer-events:none;}
.filterBar .filterSearch {flex:1; min-width:260px;}
.filterBar .filterSearch input {padding:0 24px 0 60px; background:#f5f5f5; border-color:#f5f5f5; color:#7b7b7b; letter-spacing:-0.64px; font-size:16px;}
.filterBar .filterSearch input::placeholder {color:#7b7b7b;}
.filterBar .filterSearch::before {content:''; position:absolute; left:28px; top:50%; transform:translateY(-50%); width:14px; height:14px; border:2px solid #7b7b7b; border-radius:50%;}
.filterBar .filterSearch::after {content:''; position:absolute; left:42px; top:calc(50% + 6px); width:6px; height:2px; background:#7b7b7b; transform:rotate(45deg); transform-origin:left center;}
.filterBar .filterBtn {flex:0 0 auto;}
.btnSearchSubmit {display:inline-flex; align-items:center; justify-content:center; height:57px; padding:0 28px; background:#3e7bba; color:#fff; font-size:17px; font-weight:500; border:none; border-radius:100px; cursor:pointer; transition:background 0.2s;}
.btnSearchSubmit:hover {background:#2c6097;}

.eventCardList {display:grid; grid-template-columns:repeat(3, 1fr); gap:24px; list-style:none; padding:0; margin:0;}
.eventCardList > li {min-width:0;}
.eventCard {display:block; padding:30px 32px; background:#fff; border:1px solid #ccc; border-radius:10px; transition:border-color 0.2s, box-shadow 0.2s; min-height:262px; text-decoration:none; color:inherit;}
.eventCard:hover {border-color:#3e7bba; box-shadow:0 4px 16px rgba(62,123,186,0.12);}
.eventCard .cat {display:inline-block; font-size:16px; font-weight:500; color:#3e7bba; line-height:30px;}
.eventCard .cat.int {color:#d36868;}
.eventCard .tit {margin-top:20px; padding-bottom:30px; border-bottom:1px solid #e6e6e6; font-size:24px; color:#000; line-height:1.4;}
.eventCard .info {margin-top:18px; display:grid; grid-template-columns:48px 1fr;}
.eventCard .info dt {font-size:16px; color:#000; line-height:30px;}
.eventCard .info dd {font-size:16px; color:#aeaeae; line-height:30px; letter-spacing:-0.16px;}

.pagingWrap.pagingBox {gap:6px; margin-top:50px;}
.pagingWrap.pagingBox .pagingNum {display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; background:#fff; border:1px solid #dadada; color:#000; font-size:16px; transition:background 0.2s, color 0.2s, border-color 0.2s;}
.pagingWrap.pagingBox .pagingNum:hover {color:#3e7bba; border-color:#3e7bba;}
.pagingWrap.pagingBox .pagingNum.on {background:#0353a4; border-color:#0353a4; color:#fff;}
.pagingWrap.pagingBox .pagingBtn {position:relative; display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; background:#fff center no-repeat; border:1px solid #dadada; text-indent:-9999em; overflow:hidden; transition:border-color 0.2s, background-color 0.2s;}
.pagingWrap.pagingBox .pagingBtn:hover {border-color:#3e7bba;}
.pagingWrap.pagingBox .pagingBtn.prev {background-image:url('../images/ico_pageArrow.svg'); transform:scaleX(-1);}
.pagingWrap.pagingBox .pagingBtn.next {background-image:url('../images/ico_pageArrow.svg');}
.pagingWrap.pagingBox .pagingBtn.first {background-image:url('../images/ico_pageArrow2.svg'); transform:scaleX(-1);}
.pagingWrap.pagingBox .pagingBtn.last {background-image:url('../images/ico_pageArrow2.svg'); }

/* 행사정보 상세 (eventInfoView) */
.eventViewBox {border-top:2px solid #1a1a1a; border-bottom:1px solid #d6d6d6;}
.eventViewBox .viewTit {padding:18px 20px; margin:0; text-align:center; font-size:20px; font-weight:500; color:#000; line-height:1.4; border-bottom:1px solid #d6d6d6;}
.eventViewBox .organTable tr:last-child th, .eventViewBox .organTable tr:last-child td {border-bottom:0;}
.eventViewBox .fileLink {color:#3e7bba; text-decoration:underline; word-break:break-all;}
.eventViewBox .fileLink:hover {color:#2c6097;}
.btnList {display:inline-flex; align-items:center; justify-content:center; width:254px; height:64px; background:#fff; color:#aeaeae; font-size:18px; font-weight:500; border:1.4px solid #aeaeae; border-radius:8px; transition:border-color 0.2s, color 0.2s;}
.btnList:hover {border-color:#3e7bba; color:#3e7bba;}
.eventViewBox + .btnCenter {margin-top:60px;}

/* 사이버 안보연구 (cyberResearch) */
.filterBar.journalFilter {justify-content:flex-end; padding:0 0 30px; border-bottom:0; margin-bottom:0;}
.filterBar.journalFilter .filterSearch {flex:0 0 460px; min-width:0;}
.totalCount {font-size:20px; font-weight:500; color:#000; line-height:1.4; margin-bottom:14px;}
.totalCount em {color:#3e7bba; font-style:normal; margin:0 4px;}
.journalTable {width:100%; border-collapse:collapse; border-top:2px solid #1a1a1a;}
.journalTable caption {position:absolute; left:-9999em; width:0; height:0; overflow:hidden;}
.journalTable thead th {height:54px; padding:0 20px; font-size:20px; font-weight:500; color:#000; text-align:center; border-bottom:1px solid #d6d6d6; vertical-align:middle;}
.journalTable tbody td {height:70px; padding:14px 20px; font-size:18px; font-weight:500; color:#6c6c6c; vertical-align:middle; border-bottom:1px solid #d6d6d6; letter-spacing:-0.18px;}
.journalTable tbody td.year {text-align:center;}
.journalTable tbody td.issue {text-align:left;}
.issueBtn {display:inline-flex; align-items:center; justify-content:center; width:129px; height:44px; padding:0 16px; border:1px solid #3e7bba; border-radius:100px; background:#fff; color:#3e7bba; font-size:20px; font-weight:500; transition:background 0.2s, color 0.2s;}
.issueBtn + .issueBtn {margin-left:8px;}
.issueBtn.on {background:#3e7bba; color:#fff;}
.issueBtn:hover {background:#3e7bba; color:#fff;}

/* 사이버 안보연구 - 논문 목록 (cyberResearchList) */
.paperTable {width:100%; border-collapse:collapse; border-top:2px solid #1a1a1a;}
.paperTable caption {position:absolute; left:-9999em; width:0; height:0; overflow:hidden;}
.paperTable thead th {height:54px; padding:0 20px; font-size:20px; font-weight:500; color:#000; text-align:center; border-bottom:1px solid #d6d6d6; vertical-align:middle;}
.paperTable tbody tr:hover {background:#f9f9f9;}
.paperTable tbody td {height:70px; padding:14px 20px; font-size:18px; font-weight:500; color:#000; text-align:center; vertical-align:middle; border-bottom:1px solid #d6d6d6; letter-spacing:-0.18px;}
.paperTable tbody td.num, .paperTable tbody td.date {color:#6c6c6c;}
.paperTable tbody td.tit a {display:inline-block; max-width:100%; color:#000; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; transition:color 0.2s;}
.paperTable tbody td.tit a:hover {color:#3e7bba;}

/* 사이버 안보연구 - 논문 상세 (cyberResearchView) */
.organTable.paperView tr {height:52px;}
.organTable.paperView th {font-size:18px;}
.organTable.paperView td {text-align:center; font-size:18px; color:#6c6c6c; padding:8px 30px;}
.organTable.paperView .abstractRow {height:auto;}
.organTable.paperView .abstractRow td {min-height:140px; padding:24px 30px; text-align:left; line-height:26px; letter-spacing:-0.16px; vertical-align:top;}
.organTable.paperView .fileLink {color:#3e7bba; text-decoration:underline; word-break:break-all;}
.organTable.paperView .fileLink:hover {color:#1a5a99;}

.prevNext {margin-top:60px; border-top:2px solid #1a1a1a; border-bottom:1px solid #d6d6d6;}
.prevNext .pnItem {display:flex; align-items:center; height:52px; padding:0 24px; border-bottom:1px solid #d6d6d6;}
.prevNext .pnItem:last-child {border-bottom:0;}
.prevNext .pnLabel {display:inline-flex; align-items:center; gap:18px; width:160px; font-size:18px; color:#6c6c6c; letter-spacing:-0.18px;}
.prevNext .pnLabel .ico {width:0; height:0; border-left:5px solid transparent; border-right:5px solid transparent;}
.prevNext .pnLabel .ico.prev {border-bottom:7px solid #6c6c6c;}
.prevNext .pnLabel .ico.next {border-top:7px solid #6c6c6c;}
.prevNext .pnTit {flex:1; min-width:0; font-size:18px; color:#6c6c6c; letter-spacing:-0.18px; transition:color 0.2s; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.prevNext .pnTit:hover {color:#3e7bba;}
.prevNext + .btnCenter {margin-top:60px;}

/* Contact us */
.contactWrap {padding:0;}
.contactWrap .map {position:relative; width:100%; overflow:hidden; border-radius:12px; border:1px solid #e6e6e6; background:#f4f4f4;}
.contactWrap .map .root_daum_roughmap {width:100% !important; max-width:100% !important;}
.contactWrap .map .root_daum_roughmap .wrap_map {height:480px !important;}
.contactWrap .map .root_daum_roughmap .map_border {display:none;}
.contactWrap .map .root_daum_roughmap .wrap_controllers {bottom:14px;}
.contactWrap .mapInfo {display:flex; flex-wrap:wrap; align-items:center; justify-content:center; row-gap:6px; margin-top:24px; padding:24px 32px; background:#f6f6f6; border-radius:10px; font-size:16px; line-height:1.6; color:#000; letter-spacing:-0.16px; text-align:center;}
.contactWrap .mapInfo span {display:inline-flex; align-items:center;}
.contactWrap .mapInfo span + span::before {content:''; display:inline-block; width:1px; height:14px; margin:0 16px; background:#d6d6d6;}
.contactWrap .mapInfo a {color:#000;}
.contactWrap .mapInfo a:hover {color:#3e7bba; text-decoration:underline;}
.root_daum_roughmap .cont .section.lst,.wrap_controllers.hide {display: none !important}
/* ========================================
   서브 컨텐츠 공통 (게시판 / 포토 / 상세 / 규정)
======================================== */

/* 게시판 - 상단 (검색 / 총개수) */
.boardTop {display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:20px; flex-wrap:wrap;}
.boardTop .boardCount {font-size:18px; color:#0e0e0e; line-height:1.4;}
.boardTop .boardCount strong {color:#14508f; font-weight:700;}
.boardSearch {display:flex; gap:8px; align-items:center;}
.boardSearch .searchType {position:relative; flex-shrink: 0;}
.boardSearch .searchType select {height:44px; padding:0 38px 0 16px; border:1px solid #d6d6d6; background:#fff url('../images/ico_select.svg') right 14px center no-repeat; background-size:12px auto; font-size:15px; color:#0e0e0e; min-width:110px; cursor:pointer; border-radius:0;}
.boardSearch .searchType select:focus {outline:none; border-color:#14508f;}
.boardSearch .searchInput {height:44px; padding:0 16px; border:1px solid #d6d6d6; font-size:15px; color:#0e0e0e; width:280px; border-radius:0;}
.boardSearch .searchInput:focus {outline:none; border-color:#14508f;}
.boardSearch .searchBtn {height:44px;  flex-shrink: 0; padding:0 22px; border:1px solid #232d3b; background:#fff; font-size:15px; font-weight:500; color:#232d3b; cursor:pointer; transition:background 0.2s, color 0.2s; border-radius:0;}
.boardSearch .searchBtn:hover {background:#232d3b; color:#fff;}

/* 게시판 - 리스트 (.tblBoard) */
.boardList {border-top:2px solid #232d3b;}
.tblBoard {width:100%; table-layout:fixed; border-collapse:collapse;}
.tblBoard caption {position:absolute; left:-9999em; width:0; height:0; overflow:hidden;}
.tblBoard thead th {padding:18px 10px; border-bottom:1px solid #d6d6d6; font-size:15px; font-weight:500; color:#6c6c6c; text-align:center; background:#fff;}
.tblBoard tbody td {padding:18px 10px; border-bottom:1px solid #eee; font-size:15px; color:#0e0e0e; text-align:center; vertical-align:middle;}
.tblBoard tbody td.tit {text-align:left; padding-left:20px; padding-right:20px;}
.tblBoard tbody td.tit a {display:flex; align-items:center; gap:10px; color:#0e0e0e; max-width:100%; transition:color 0.2s;}
.tblBoard tbody td.tit a .ttx {overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0;}
.tblBoard tbody td.tit a:hover {color:#14508f;}
.tblBoard tbody td.tit a:hover .ttx {text-decoration:underline;}
.tblBoard tbody td.num {color:#6c6c6c;}
.tblBoard tbody td.date {color:#6c6c6c;}
.tblBoard tbody td.hit {color:#6c6c6c;}
.tblBoard tbody tr.notice td {color:#0e0e0e; font-weight:700;}
.tblBoard tbody tr.notice td.tit a {font-weight:700; color:#0e0e0e;}
.badgeNotice {display:inline-block; min-width:48px; padding:4px 10px; font-size:14px; font-weight:500; color:#232d3b; text-align:center; line-height:1.4;}
.badgeNew {display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; border-radius:50%; background:#e63946; color:#fff; font-size:12px; font-weight:700; flex-shrink:0; line-height:1;}
.icoFile {display:inline-block; width:18px; height:22px; background:url('../images/ico_file.svg') center no-repeat; background-size:contain; text-indent:-9999em; overflow:hidden; vertical-align:middle;}

/* 페이징 (.pagingWrap) */
.pagingWrap {display:flex; justify-content:center; align-items:center; gap:8px; margin-top:50px;}
.pagingWrap .pageNums {display:flex; align-items:center; gap:4px;}
.pagingWrap .pageNums .num {display:flex; align-items:center; justify-content:center; min-width:32px; height:32px; padding:0 8px; font-size:15px; color:#6c6c6c; transition:color 0.2s;}
.pagingWrap .pageNums .num:hover {color:#14508f;}
.pagingWrap .pageNums .num.on {color:#e63946; font-weight:700;}
.pagingWrap .pageNums .num + .num {position:relative; margin-left:3px;}
.pagingWrap .pageNums .num + .num::before {content:''; position:absolute; left:-8px; top:50%; transform:translateY(-50%); width:2px; height:2px; border-radius:50%; background:#d6d6d6;}
.pagingWrap .paging1 {display:inline-block; width:32px; height:32px; text-indent:-9999em; overflow:hidden; background-position:center; background-repeat:no-repeat; transition:opacity 0.2s;}
.pagingWrap .paging1:hover {opacity:0.6;}
.pagingWrap .paging1.first {background-image:url('../images/ico_pageArrow2.svg'); background-size:14px auto; transform:scaleX(-1);}
.pagingWrap .paging1.prev {background-image:url('../images/ico_pageArrow.svg'); background-size:8px auto; transform:scaleX(-1);}
.pagingWrap .paging1.next {background-image:url('../images/ico_pageArrow.svg'); background-size:8px auto;}
.pagingWrap .paging1.last {background-image:url('../images/ico_pageArrow2.svg'); background-size:14px auto;}

/* 게시판 - 상세 (.boardView / .tblView / .viewCont) */
.tblView {width:100%; table-layout:fixed; border-collapse:collapse; border-top:2px solid #232d3b; border-bottom:1px solid #d6d6d6;}
.tblView caption {position:absolute; left:-9999em; width:0; height:0; overflow:hidden;}
.tblView th, .tblView td {padding:18px 24px; border-bottom:1px solid #eee; font-size:15px; line-height:1.5; vertical-align:middle; text-align:left;}
.tblView tbody tr:last-child th, .tblView tbody tr:last-child td {border-bottom:none;}
.tblView th {background:#fafafa; font-weight:500; color:#0e0e0e;}
.tblView td {color:#0e0e0e;}
.tblView .fileLink {color:#14508f; text-decoration:underline; word-break:break-all;}
.tblView .fileLink:hover {color:#3e7bba;}
.viewCont {min-height:480px; padding:50px 24px; border-bottom:1px solid #eee;}
.viewCont .viewBody {font-size:16px; line-height:1.8; color:#0e0e0e;}
.viewCont .viewBody p {margin:0 0 16px;}
.viewCont .viewBody p:last-child {margin-bottom:0;}
.viewCont .viewBody img {max-width:100%; height:auto;}
.viewCont .imgBoxMain { display: inline-block; margin:10px; vertical-align: top; }
.viewCont .imgBox { display: inline-block; vertical-align: top;}
.viewCont .imgBox .imgItem { display: inline-block; vertical-align: middle; margin:10px;}

/* 게시판 - 포토리스트 (.photoList) */
.photoList ul {display:grid; grid-template-columns:repeat(4, 1fr); gap:30px 24px;}
.photoList li {position:relative;}
.photoList li a {display:block; color:#0e0e0e;}
.photoList .thumb {position:relative; width:100%; aspect-ratio:4/3; border:1px solid #e5e5e5; background:#fff; overflow:hidden; display:flex; align-items:center; justify-content:center;}
.photoList .thumb img {width:100%; height:100%; object-fit:cover; transition:transform 0.4s;}
.photoList .thumb .ph {font-size:14px; color:#bdbdbd;}
.photoList li a:hover .thumb img {transform:scale(1.04);}
.photoList .info {padding:14px 4px 0;}
.photoList .ptit {font-size:16px; color:#0e0e0e; line-height:1.4; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; transition:color 0.2s;}
.photoList li a:hover .ptit {color:#14508f;}
.photoList .meta {display:flex; align-items:center; justify-content:space-between; margin-top:8px;}
.photoList .meta .date {font-size:13px; color:#aeaeae;}
.photoList .meta .more {font-size:13px; color:#aeaeae; transition:color 0.2s;}
.photoList li a:hover .meta .more {color:#14508f;}

/* 게시판 - 포토 상세 (.photoView) */
.photoView .photoGroup {margin-bottom:30px;}
.photoView .photoBig {width:100%; aspect-ratio:16/9; max-height:560px; border:1px solid #e5e5e5; background:#fff; display:flex; align-items:center; justify-content:center; overflow:hidden;}
.photoView .photoBig img {width:100%; height:100%; object-fit:contain;}
.photoView .photoBig .ph {font-size:14px; color:#bdbdbd;}
.photoView .photoThumbs {display:flex; gap:10px; margin-top:14px; flex-wrap:wrap;}
.photoView .thumbItem {width:108px; aspect-ratio:4/3; border:1px solid #e5e5e5; background:#fff; display:flex; align-items:center; justify-content:center; overflow:hidden; transition:border-color 0.2s, opacity 0.2s; opacity:0.7;}
.photoView .thumbItem img {width:100%; height:100%; object-fit:cover;}
.photoView .thumbItem .ph {font-size:12px; color:#bdbdbd;}
.photoView .thumbItem:hover {opacity:1;}
.photoView .thumbItem.on {border-color:#14508f; opacity:1;}
.photoView .viewBody {margin-top:30px;}

/* 정관 및 제규정 (.box1 / .pg_menu_list / .js_goCon) */
.box1 {display:flex; flex-direction:column; gap:0;}
.pg_menu_list {display:flex; flex-wrap:wrap; background:#f6f6f6;  margin-bottom:100px; border:0; border-bottom:2px solid #3E7BBA;}
.pg_menu_list li {flex:1; min-width:0; border:1px solid #ccc; margin-right:-1px; margin-bottom: -2px;}
.pg_menu_list li a {position:relative; display:flex; align-items:center; justify-content:center; width:100%; height:67px; padding:0 10px; font-size:20px; font-weight:500; color:#aeaeae; text-align:center; transition:color 0.2s;}
.pg_menu_list li a:hover {color:#3e7bba;}
.pg_menu_list li.on > a, .pg_menu_list li > a.on {color:#3e7bba;}
.pg_menu_list li.on  {border:2px solid #3E7BBA; background:#fff; border-bottom:none; z-index: 1; position: relative;}
.js_goCon {display:flex; gap:60px; align-items:flex-start; padding:50px 0; border-top:2px solid #1a1a1a; scroll-margin-top:120px;}
.js_goCon:last-child {border-bottom:1px solid #d6d6d6;}
.js_goCon .tit {flex:0 0 160px; padding:0; border:0; background:transparent; text-align:left;}
.js_goCon .tit .tt {display:inline; font-size:32px; font-weight:500; color:#000; line-height:1.4;}
.js_goCon .con {flex:1; min-width:0; padding:0; border:0; background:transparent;}
.js_goCon .con .list1 {margin:0;}
.js_goCon .con .list1 dt {font-size:20px; font-weight:500; color:#3e7bba; line-height:1.4; margin-bottom:14px;}
.js_goCon .con .list1 dt + dd {margin-bottom:20px;}
.js_goCon .con .list1 dt ~ dt {margin-top:28px;}
.js_goCon .con .list1 dd {font-size:16px; color:#000; line-height:26px; letter-spacing:-0.16px; margin-bottom:20px;}
.js_goCon .con .list1 dd:last-child {margin-bottom:0;}
.js_goCon .con .list1 dd:empty {display:none;}
.js_goCon .con .list1 dd p {margin:0 0 10px;}
.js_goCon .con .list1 dd p:last-child {margin-bottom:0;}
.js_goCon .con .list1 dd a {color:#3e7bba; text-decoration:underline; word-break:break-all;}
.js_goCon .con .list1 dd a:hover {color:#1a5a99;}
.js_goCon .con .list1 dd strong {font-weight:600; color:#000;}
.js_goCon .con .list1 dd i {font-style:italic;}

.submissionGuideWrap .js_goCon .tit .tt {font-size: 25px;}

/* 공용 버튼 (.btnCenter / .btType1) */
.btnCenter {display:flex; justify-content:center; gap:10px; margin-top:40px;}
.btType1 {display:inline-flex; align-items:center; justify-content:center; min-width:140px; height:50px; padding:0 24px; border:1px solid #d6d6d6; background:#fff; font-size:15px; font-weight:500; color:#232d3b; cursor:pointer; transition:background 0.2s, color 0.2s, border-color 0.2s;}
.btType1:hover {background:#232d3b; border-color:#232d3b; color:#fff;}
.btType1.point {background:#14508f; border-color:#14508f; color:#fff;}
.btType1.point:hover {background:#0e3d6e; border-color:#0e3d6e;}

.emptyText {text-align: center; padding:50px 0; }

.photoList ul:has(.emptyText) {display: block !important;}

/* 개인정보처리방침 (.privacyWrap) */
.privacyWrap .inner {max-width:1240px;}
.privacyWrap .privacyHead {padding-bottom:30px; border-bottom:2px solid #1a1a1a; margin-bottom:50px;}
.privacyWrap .privacyHead h3 {font-size:28px; font-weight:500; color:#000; line-height:1.4; margin-bottom:16px; letter-spacing:-0.5px;}
.privacyWrap .privacyHead h3 .ver {display:inline-block; margin-left:10px; font-size:18px; font-weight:400; color:#6e6e6e;}
.privacyWrap .privacyHead .desc {font-size:16px; color:#0e0e0e; line-height:1.8; letter-spacing:-0.5px;}
.privacyWrap .privacyList {margin:0;}
.privacyWrap .privacyList > dt {font-size:20px; font-weight:500; color:#3e7bba; line-height:1.4; margin-bottom:18px; letter-spacing:-0.5px;}
.privacyWrap .privacyList > dt ~ dt {margin-top:40px;}
.privacyWrap .privacyList > dd {margin:0 0 40px; font-size:16px; color:#0e0e0e; line-height:1.8; letter-spacing:-0.5px;}
.privacyWrap .privacyList > dd:last-child {margin-bottom:0;}
.privacyWrap .privacyList > dd p {margin:0 0 10px;}
.privacyWrap .privacyList > dd p:last-child {margin-bottom:0;}
.privacyWrap .privacyList > dd p.subTit {margin-top:18px; margin-bottom:6px; font-weight:500; color:#1a1a1a;}
.privacyWrap .privacyList > dd p.subTit:first-child {margin-top:0;}
.privacyWrap .privacyList > dd a {color:#3e7bba; text-decoration:underline; word-break:break-all;}
.privacyWrap .privacyList > dd a:hover {color:#1a5a99;}
.privacyWrap .dotList {margin:6px 0 14px;}
.privacyWrap .dotList li {position:relative; padding-left:14px; margin-bottom:4px; line-height:1.7;}
.privacyWrap .dotList li:last-child {margin-bottom:0;}
.privacyWrap .dotList li::before {display: none;}
.privacyWrap .numList {margin:8px 0 0 4px;}
.privacyWrap .numList li {margin-bottom:2px; line-height:1.7;}
.privacyWrap .privacyContact {margin:14px 0 22px; padding:20px 24px; background:#fafafa; border:1px solid #eee;}
.privacyWrap .privacyContact .ctit {margin-bottom:10px; font-weight:500; color:#1a1a1a;}
.privacyWrap .privacyContact .infoList {display:flex; flex-wrap:wrap; gap:6px 32px;}
.privacyWrap .privacyContact .infoList li {display:flex; align-items:center; gap:8px; font-size:15px; color:#0e0e0e;}
.privacyWrap .privacyContact .infoList .lbl {min-width:36px; color:#6e6e6e;}
.privacyWrap .privacyContact .infoList .lbl::after {content:':'; margin-left:6px; color:#6e6e6e;}
.privacyWrap .privacyDate {margin-top:50px; padding-top:24px; border-top:1px solid #d6d6d6; font-size:15px; color:#6e6e6e; text-align:right;}

/* 1400 예외처리 */
@media all and (max-width:1450px) {
	.head .gnbWrap .in > ul > li > a {width: 160px;}
}

/* 모바일 */
@media all and (max-width:1280px) {
	/* 헤더 - 70px, 햄버거 좌측, 로고 가운데 */
	.head {height:70px;}
	.head .headCont {height:70px; padding:0;}
	.head .btnMemu {display:block; position:absolute; left:24px; top:50%; transform:translateY(-50%);}
	.head .h1Logo {position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); width:102px; height:48px;}
	.head .h1Logo a {background-position:center; background-size:100% auto;}

	/* 모바일 GNB - 풀스크린 슬라이드 패널 */
	.head .gnbWrap {display:none; position:fixed; top:70px; left:0; width:100%; height:calc(100vh - 70px); background:#fff; overflow-y:auto; z-index:1001;}
	.head.gnbOpen .gnbWrap {display:block;}
	.head .gnbWrap .in > ul {display:block;}
	.head .gnbWrap .in > ul > li {border-bottom:1px solid #eee;}
	.head .gnbWrap .in > ul > li > a {display:block; position:relative; width:100%; height:59px; line-height:59px; padding:0 24px; font-size:16px; font-weight:500; color:#232d3b !important; text-align:left;}
	.head .gnbWrap .in > ul > li > a::after {content:''; position:absolute; right:28px; top:50%; width:7px; height:7px; border-right:1.5px solid #232d3b; border-bottom:1.5px solid #232d3b; transform:translateY(-75%) rotate(-45deg); transition:transform 0.2s;}
	.head .gnbWrap .in > ul > li.on > a::after {transform:translateY(-25%) rotate(45deg);}
	.head .gnbWrap .subMenu {display:none; position:static; width:100%; height:auto; padding:13px 24px; background:#f4f4f4; border:none; box-shadow:none;}
	.head .gnbWrap .in > ul > li:last-child .subMenu {border:none;}
	.head .gnbWrap .subMenu li a {height:51px; line-height:51px; padding:0; font-size:16px; color:#232d3b; text-align:left;}

	/* 모바일에서 hover 상태 무효화 */
	.head .bgGnb {display:none !important;}
	.head.white .gnbWrap .subMenu {display:none;}
	.head.gnbOpen .gnbWrap .in > ul > li.on > .subMenu {display:block;}

	/* 모바일 메뉴 열린 상태에서는 흰 헤더 강제 */
	.head.gnbOpen {background:#fff; border-bottom-color:#eee;}
	.head.gnbOpen .h1Logo a {background-image:url('../images/h1_logo.svg');}
	.head .btnMemu button {background-image:url('../images/ico_menu_black.svg');}
	.head.active .btnMemu button {background-image:url('../images/ico_menu.svg');}
	.head.gnbOpen .btnMemu button {background-image:url('../images/ico_menu_black.svg');}

	/* 우측 네비 모바일 숨김 */
	.mainRightNav {display:none;}

	/* ========================================
	   섹션 내부 바텀 네비 (.mobBottomNav)
	======================================== */
	.mobBottomNav {width:100%; z-index:10; position: absolute; left:0; bottom:180px;}
	.mobBottomNav .navInner {display:flex; flex-direction:row; justify-content:space-around; align-items:flex-start; padding:10px 10px 16px;}
	.mobBottomNav .navItem {display:flex; flex-direction:column; align-items:center; gap:4px; cursor:pointer; pointer-events:auto;}
	.mobBottomNav .navItem .navIcon {width:62px; height:62px; background:rgba(255,255,255,0.25); border-radius:50%; display:flex; align-items:center; justify-content:center; padding:12px;}
	.mobBottomNav .navItem .navIcon img {width:100%; height:100%; object-fit:contain;}
	.mobBottomNav .navItem span {font-size:15px; font-weight:500; color:#fff;}
	.mobBottomNav.darkNav .navItem .navIcon {background:rgba(108,123,145,0.2);}
	.mobBottomNav.darkNav .navItem span {color:#969b9c;}

	/* ========================================
	   섹션별 모바일 대응 (fullPage 비활성 대응)
	======================================== */

	.mainSec .section {min-height:800px;}

	/* Hero 섹션 */
	.mainSec .secHero .heroContent {transform:translate(-50%, calc(-50% - 130px));}
	.mainSec .secHero .heroTit01 {font-size:28px; white-space:normal; padding:0 20px;}
	.mainSec .secHero .heroTit02 {font-size:14.4px; margin-bottom:40px;}
	.mainSec .secHero .heroBtns {flex-wrap:wrap; gap:10px; padding:0 34px;}
	.mainSec .secHero .heroBtns a {width:calc(50% - 5px); height:48.222px; font-size:18px; border-radius:78px;}
	.mainSec .heroPageNum {bottom:auto; top:450px; left:38px;}
	.mainSec .heroPageNum .cur {font-size:20px;}
	.mainSec .heroPageNum .tot {font-size:16px;}
	.mainVisual .swiper-slide {min-height:800px;}

	/* 스크롤 인디케이터 */
	.mainSec .scrollIco {bottom:80px;}
	.mainSec .scrollText {display:block; font-size:12px; font-weight:500; color:#fff; text-align:center; margin-bottom:4px; letter-spacing:0;}
	.mainSec .secNews .scrollText {color:#969b9c;}

	/* 주요소식 섹션 */
	.mainSec .secNews .newsInner {height:auto; padding-top:50px;}
	.mainSec .secNews .mobBottomNav {bottom:160px;}
	.mainSec .secTit01 {font-size:28px; margin-bottom:30px;}
	.mainSec .newsSlide {width:100%;}
	.mainSec .newsSlide .swiper-slide {width:260px; height:350px;}

	/* 게시판 섹션 */
	.mainSec .secBoard {padding-top:80px ; padding-bottom: 100px; height: auto !important;}
	.mainSec .secBoard .boardCont {height:auto; align-items:flex-start; padding:20px 0 220px;}
	.mainSec .boardCards {flex-direction:column; gap:15px; padding:0 38px;}
	.mainSec .boardCard {height:auto; padding:24px 16px 0; border-radius:8.361px;}
	.mainSec .boardCard .cardTit01 {font-size:13.378px;}
	.mainSec .boardCard .cardList .listTit {font-size:11.706px; letter-spacing:-0.47px;}
	.mainSec .boardCard .cardList .listDate {font-size:10px; letter-spacing:-0.4px;}
	.mainSec .boardCard .cardList li a {padding:10px;}

	/* 간행물 섹션 */
	.mainSec .secPub {padding-bottom: 150px; height: auto !important;}
	.mainSec .secPub .mobBottomNav {bottom:20px;}
	.mainSec .secPub .pubInner {height:auto;  justify-content:flex-start; padding:50px 0 0;}
	.mainSec .secPub .pubHeadRow {width:100%; padding:0 20px; margin-bottom:20px;}
	.mainSec .secPub .pubTit01 {font-size:28px; margin-bottom:10px; text-align:center; }
	.mainSec .secPub .pubTit02 {font-size:16px; text-align:center; margin-bottom:20px;}
	.mainSec .secPub .pubMore {margin-bottom:0; justify-content:flex-end;}
	.mainSec .pubSlideWrap {width:100%; padding:0;}
	.mainSec .pubSlide .swiper-slide {width:297px; height:443px;}
	.mainSec .pubNav {margin-top:20px;}
	.mainSec .pubNav button {width: 40px; height: 40px;}

	/* 푸터 */
	.secFooter  {min-height: unset !important;}
	.relatedOrg {flex-direction:row;  gap:10px; padding:16px 20px; width: auto;}
	.relatedOrg .orgLabel { font-size:14px;}
	.relatedOrg .orgLogos {flex-wrap:nowrap; gap:10px; max-width:100%; justify-content:flex-start; overflow-x:auto;}
	.relatedOrg .orgLogos a {max-width:100px; flex:none; padding:6px 0;}
	.relatedOrg .orgLogos a img {max-height:36px;}
	.footerWrap {padding:70px 0 20px; position: relative;}
	.footerWrap .footLogo img {height: 35px;}
	.footerWrap .footInner {flex-direction:column; align-items:flex-start; gap:20px; text-align: center; align-items: center;}
	.footerWrap .footInfo {padding-left:0; border-left:none;}
	.footerWrap .footInfo p {font-size:13px;}
	.footerWrap .footActions {margin-left:0; gap:16px;}
	.footerWrap .downloadBtn {display: none;}
	.footerWrap .topBtn img {width: 50px;}
	.footerWrap .footInfo .link {position: absolute; left:0; top:0; width: 100%; display: flex; border-bottom:1px solid #EEEEEE;;}
	.footerWrap .footInfo .link a {display: flex; flex:1; height: 40px; text-align: center; align-items: center; justify-content:center;}
	.footerWrap .footInfo .link a:first-child {border-right:1px solid #EEEEEE;;}
	.footerWrap .footInfo .link span {display: none;}
	.footerWrap .bul {display: block; text-indent:-9999em;height: 0;}

	/* ========================================
	   서브페이지 상단 영역 - 모바일
	======================================== */
	.subBgTop {height:240px; margin-top:70px; padding-top:30px; padding-bottom:51px;}
	.subBgTop .subBgTitle {font-size:28px; margin-bottom:50px;}
	.subTab {height:51px; overflow-x:auto; -webkit-overflow-scrolling:touch;}
	.subTab::-webkit-scrollbar {display:none;}
	.subTab ul {justify-content:flex-start; min-width:max-content; padding:0;}
	.subTab ul li {width:auto; min-width:90px; flex: 1 0 auto;}
	.subTab ul li a {padding:0 16px; font-size:15px; white-space:nowrap;}

	/* ========================================
	   서브 콘텐츠 공통 - 모바일
	======================================== */
	.subSec {padding:40px 0 60px;}

	/* 본문 콘텐츠 탭 - 모바일 */
	.contentTab {margin-bottom:20px;}
	.contentTab ul {justify-content:stretch;}
	.contentTab ul li {flex:1;}
	.contentTab ul li a {height:42px; padding:0; font-size:12px; }

	/* 학회소개 - 모바일 */
	.aboutCon {padding:0;}
	.aboutTop {flex-direction:column; gap:24px;}
	.aboutTop .logoCard {flex:0 0 auto; width:100%; display:flex; flex-direction:column; align-items:center;}
	.aboutTop .logoCard .logoBox {height:200px;}
	.aboutTop .logoCard .btnDown {margin-top:14px; min-width:160px; height:42px; font-size:13px;}
	.aboutTop .infoBox .infoTit {font-size:18px;}
	.aboutTop .infoBox .infoList {margin-top:14px; padding:6px 0;}
	.aboutTop .infoBox .infoList dt,
	.aboutTop .infoBox .infoList dd {font-size:14px; line-height:1.6;}
	.aboutTop .infoBox .infoList dt {float:none; width:auto; padding:8px 12px 0; font-weight:600; color:#333;}
	.aboutTop .infoBox .infoList dd {margin-left:0; padding:2px 12px 8px;}
	.aboutBot {flex-direction:column; gap:24px; margin-top:40px; padding-top:30px;}
	.aboutBot .aboutTit {flex:0 0 auto; font-size:24px;}
	.aboutBot .aboutItem {margin-top:28px;}
	.aboutBot .aboutItem .ti {font-size:17px;}
	.aboutBot .aboutItem .tt {margin-top:10px; font-size:14px; line-height:1.7;}

	/* 연혁 - 모바일 (좌측 라인) */
	.historyCon {padding:0 0 20px;}
	.historyTimeline::before {left:14px;}
	.historyTimeline .hyears > li {padding:28px 0;}
	.historyTimeline .hyears > li .year {position:relative; top:0; left:auto; width:auto; padding-left:50px; font-size:24px;}
	.historyTimeline .hyears > li .dot {left:1px; top:30px; }
	.historyTimeline .hyears > li .hmonths {margin:18px 0 0; padding-left:50px;}
	.historyTimeline .hyears > li .hmonths > li {flex-direction:column; gap:4px; margin-top:18px;}
	.historyTimeline .hyears > li .hmonths > li .date {flex:0 0 auto; font-size:16px;}
	.historyTimeline .hyears > li .hmonths > li .desc {font-size:14px;}
	.historyList .history > li .list .ti {font-size:18px;}
	.historyList .history > li .list .tt {padding-left:0; font-size:14px;}
	.historyList .history > li .list .tt .dot {left:-32px; width:24px; height:24px;}
	.historyList .history > li .list .tt .dot::before {top:8px; bottom:8px; left:8px; right:8px;}

	/* 조직도 - 모바일 */
	.organChart {padding:10px 0 30px; text-align:center;}
	.organGroup {flex-direction:column; gap:14px; padding:24px 0;}
	.organGroup .organTit {width:100%; padding-top:0; font-size:16px;}
	.organTable tr {height:auto;}
	.organTable th {padding:10px 8px; font-size:14px;}
	.organTable td {padding:10px 14px; font-size:14px;}
	.organTable td .org {margin-left:6px;}
	.organTable colgroup col:first-child {width:120px !important;}

	/* 인사말 - 모바일 */
	.greetingWrap {padding:0;}
	.greetingCont {flex-direction:column; gap:40px;}
	.greetTit {font-size:22px; line-height:1.5; margin-bottom:24px;}
	.greetTit br {display:none;}
	.greetBody {font-size:15px; line-height:26px;}
	.greetBody p {margin-bottom:24px;}
	.greetingPhoto {width:100%; max-width:413px; margin:0 auto;}
	.greetingPhoto .photoImg {width:100%; height:auto; aspect-ratio:413/570;}
	.greetingPhoto .greetSig {margin-top:24px; padding-top:14px; gap:10px;}
	.greetingPhoto .greetSig .pos {font-size:14px;}
	.greetingPhoto .greetSig .name {font-size:42px;}
	.greetingPhoto .greetSig .name img {height:42px; width:auto;}

	/* 산하연구회 - 모바일 */
	.rgSection {padding:30px 0 36px;}
	.rgSection:first-child {padding-top:20px;}
	.rgSection .rgTit {font-size:22px; line-height:1.4; margin-bottom:14px;}
	.rgInfoBox {padding:20px 18px; border-radius:8px;}
	.rgInfoRow {flex-direction:column; gap:4px;}
	.rgInfoRow + .rgInfoRow {margin-top:14px;}
	.rgInfoRow .label {flex:0 0 auto; font-size:15px; line-height:24px;}
	.rgInfoRow .cont p {font-size:14px; line-height:24px;}
	.organTable.rgTable td {padding:10px 14px;}
	.organTable.rgTable td .name,
	.organTable.rgTable td .org,
	.organTable.rgTable td .nameList {font-size:14px; line-height:22px;}
	.organTable.rgTable td .org {margin-left:8px;}
	.rgSectionRow {flex-direction:column; gap:14px;}
	.rgSectionRow .rgTit {flex:0 0 auto;}
	.rgSectionRow .rgRowCont {padding-top:0;}
	.rgTaskHead {font-size:14px; line-height:24px;}
	.rgTaskNum li,
	.rgTaskList li {font-size:14px; line-height:24px;}
	.rgTaskList li::before {top:9px;}
	.rgIntroList li {font-size:14px; line-height:24px; padding-left:14px;}
	.rgIntroList li::before {top:9px; width:5px; height:5px;}

	/* 학술지 소개 - 모바일 */
	.journalIntroWrap .jiTit {font-size:22px; line-height:1.4;}
	.journalIntroWrap .jiIntro {flex-direction:column; gap:16px; padding-bottom:30px;}
	.journalIntroWrap .jiIntro .jiTit {flex:0 0 auto;}
	.journalIntroWrap .jiIntro .jiLead {font-size:16px; line-height:1.5; margin-bottom:14px;}
	.journalIntroWrap .jiIntro .jiDesc {font-size:14px; line-height:24px; letter-spacing:-0.16px;}
	.journalIntroWrap .jiBoard {margin-top:40px;}
	.journalIntroWrap .jiBoard .jiTit {margin:0 0 16px;}
	.organTable.jiTable td {padding:10px 14px;}
	.organTable.jiTable td .name {font-size:14px;}
	.organTable.jiTable td .org {margin-left:8px; font-size:14px;}

	/* 위원회 - 모바일 */
	.committeeGroup {flex-direction:column; gap:14px; padding:28px 0;}
	.committeeGroup.first {padding: 20px 0;}
	.committeeGroup .committeeTit {width:100%; font-size:22px; flex:1;}
	.committeeWrap .introBox {padding:0;}
	.committeeWrap .introBox p {font-size:14px; line-height:1.7;}
	.labList {gap:28px;}
	.labItem .labTit {font-size:16px; margin-bottom:10px;}
	.committeeWrap .introBox.boxed {padding:20px 16px; min-height:0;}
	.committeeWrap .introBox.boxed p {font-size:16px;}
	.bulletList li {font-size:14px; line-height:24px;}
	.bulletList li::before {top:10px;}
	.researchList {gap:20px;}
	.researchYear {padding-left:14px;}
	.researchYear .yearTit {font-size:18px; margin-bottom:10px;}
	.researchYear ul li {font-size:14px; padding-left:12px;}
	.researchYear ul li::before {top:9px;}

	/* 입회안내 - 모바일 */
	.joinSec {padding:30px 0;}
	.joinSec .joinTit {font-size:18px;}
	.joinSec .joinTit.big {font-size:22px;}
	.joinSec.joinSideSec {flex-direction:column; gap:14px;}
	.joinSec.joinSideSec .joinTit {flex:0 0 auto; width:100%;}
	.joinSubTit {margin:30px 0 16px; font-size:17px;}
	.stepFlow {flex-direction:column; gap:24px; margin:24px auto 0;}
	.stepFlow li {flex:0 0 auto; width:100%;}
	.stepFlow li + li::before {left:50%; top:-18px; transform:translateX(-50%) rotate(90deg);}
	.stepFlow .stepIcon {width:110px; height:110px;}
	.stepFlow .stepIcon img {max-width:50px; max-height:50px;}
	.joinBox.numBox {padding:20px 18px;}
	.numList li {font-size:14px; line-height:26px; padding-left:30px;}
	.numList li::before {top:3px; width:18px; height:18px; font-size:12px; line-height:18px;}
	.joinSec .joinBox .t1 {font-size:14px; line-height:24px;}
	.joinSec .joinBox .t2 {font-size:14px; line-height:24px; padding-left:10px;}
	.joinSec .joinBox .t3 {font-size:14px;}
	.joinBtnWrap {margin-top:24px;}
	.joinBtn {min-width:220px; height:54px; padding:0 22px; font-size:16px; gap:10px;}
	.joinBtn img {width:18px;}

	/* 기관회원 - 모바일 */
	.instMemberList {grid-template-columns:repeat(2,1fr); gap:24px 14px;}
	.instMemberList .instCard {height:120px; padding:14px;}
	.instMemberList .instName {margin-top:6px; font-size:14px; line-height:22px;}

	/* 행사정보 - 모바일 */
	.eventTop {flex-direction:column; align-items:stretch; gap:14px; padding-bottom:18px;}
	.eventTop .selectBox {width:100%; height:50px;}
	.eventTop .selectBox select {font-size:14px; padding:0 40px 0 16px;}
	.eventTop .eventActions {justify-content:space-between; gap:14px; flex-wrap:wrap;}
	.eventTop .legendItem {font-size:14px; gap:6px;}
	.eventTop .legendItem i {width:10px; height:10px;}
	.btnSearch {width:auto; height:48px; font-size:14px; padding:0 18px;}
	.eventTop .btnSearch {flex:1 0 auto;}
	.eventMain {flex-direction:column;}
	.eventCal {padding:20px 0;}
	.eventList {flex:0 0 auto; width:100%; padding:20px;}
	.calHeader {gap:24px; padding-bottom:16px;}
	.calHeader .calMonth {font-size:24px;}
	.calTable th {height:auto; font-size:12px; padding:6px 0;}
	.calTable td {height:54px; padding:8px 6px 0;}
	.calTable td .day {font-size:12px;}
	.calTable td .evtBar {bottom:10px; height:3px;}
	.calTable td .evtDot {bottom:8px; width:6px; height:6px;}
	.eventList .evtDate {font-size:18px;}
	.eventList .evtItem .evtTit {font-size:14px; line-height:24px;}
	.eventList .evtItem .evtDesc {font-size:13px; line-height:20px;}
	.evtPaging {margin-top:20px;}

	/* 행사정보 모달 - 모바일 */
	.modalEvent .modalBox {width:calc(100% - 28px);}
	.modalEvent .modalHead {height:54px; padding:0 20px;}
	.modalEvent .modalTit {font-size:16px;}
	.modalEvent .modalBody {padding:18px 16px;}
	.modalEvent .evtDetailBox {padding:18px 20px;}
	.modalEvent .evtDetailBox dl {grid-template-columns:80px 1fr; column-gap:14px;}
	.modalEvent .evtDetailBox dt, .modalEvent .evtDetailBox dd {font-size:14px; line-height:32px;}
	.modalEvent .modalClose {min-width:140px; height:42px; font-size:14px;}

	/* 행사정보 리스트 - 모바일 */
	.eventListTop {padding-bottom:14px;}
	.filterBar {gap:8px; padding-bottom:16px; margin-bottom:18px;}
	.filterBar .filterItem {height:46px;}
	.filterBar .filterItem input,
	.filterBar .filterItem select {font-size:14px; padding:0 36px 0 18px;}
	.filterBar .filterDate {width:calc(50% - 4px);}
	.filterBar .filterSelect {width:calc(50% - 4px);}
	.filterBar .filterSearch {flex:1 1 100%; min-width:0;}
	.filterBar .filterSearch input {padding:0 18px 0 44px; font-size:14px;}
	.filterBar .filterSearch::before {left:18px; width:12px; height:12px;}
	.filterBar .filterSearch::after {left:28px; top:calc(50% + 4px);}
	.filterBar .filterBtn {flex:1 1 100%;}
	.btnSearchSubmit {width:100%; height:46px; font-size:14px; border-radius:8px;}
	.eventCardList {grid-template-columns:1fr; gap:14px;}
	.eventCard {padding:20px 22px; min-height:0;}
	.eventCard .tit {font-size:18px; padding-bottom:20px; margin-top:12px;}
	.eventCard .info {margin-top:14px;}
	.pagingWrap.pagingBox {gap:4px; margin-top:30px;}
	.pagingWrap.pagingBox .pagingNum, .pagingWrap.pagingBox .pagingBtn {width:32px; height:32px; font-size:14px;}

	/* 행사정보 상세 - 모바일 */
	.eventViewBox .viewTit {font-size:16px; padding:14px 12px;}
	.btnList {width:auto; min-width:180px; height:48px; font-size:14px; padding:0 22px;}
	.eventViewBox + .btnCenter {margin-top:30px;}

	/* 사이버 안보연구 - 모바일 */
	.filterBar.journalFilter {flex-direction:column; padding-bottom:18px;}
	.filterBar.journalFilter .filterSelect,
	.filterBar.journalFilter .filterSearch {flex:0 0 auto; width:100%;}
	.totalCount {font-size:15px; margin-bottom:10px;}
	.journalTable thead th {height:44px; font-size:14px; padding:0 10px;}
	.journalTable tbody td {height:auto; padding:14px 10px; font-size:14px;}
	.journalTable colgroup col:first-child {width:110px !important;}
	.issueBtn {width:auto; min-width:80px; height:36px; font-size:14px; padding:0 14px;}
	.issueBtn + .issueBtn {margin-left:4px;}

	/* 사이버 안보연구 - 논문 목록 - 모바일 */
	.paperTable thead th {height:44px; font-size:14px; padding:0 8px;}
	.paperTable tbody td {height:auto; padding:14px 8px; font-size:13px;}
	.paperTable colgroup col:first-child {width:48px !important;}
	.paperTable colgroup col:nth-child(3),
	.paperTable colgroup col:nth-child(4) {width:80px !important;}

	/* 사이버 안보연구 - 논문 상세 - 모바일 */
	.organTable.paperView tr {height:auto;}
	.organTable.paperView th, .organTable.paperView td {font-size:13px; padding:10px 12px; line-height:1.5;}
	.organTable.paperView .abstractRow td {min-height:90px; padding:14px 12px; line-height:22px;}
	.prevNext {margin-top:30px;}
	.prevNext .pnItem {height:auto; padding:12px 14px;}
	.prevNext .pnLabel {width:auto; gap:10px; font-size:13px; flex:0 0 80px;}
	.prevNext .pnTit {font-size:13px; margin-left:8px;}
	.prevNext + .btnCenter {margin-top:30px;}

	/* Contact us - 모바일 */
	.contactWrap .map {border-radius:8px;}
	.contactWrap .map .root_daum_roughmap .wrap_map {height:300px !important;}
	.contactWrap .mapInfo {flex-direction:column; gap:8px; padding:18px 16px; font-size:13px; line-height:1.7; margin-top:16px;}
	.contactWrap .mapInfo span {display:block; text-align:center;}
	.contactWrap .mapInfo span + span::before {display:none;}

	/* 게시판 - 상단 / 검색 - 모바일 */
	.boardTop {flex-direction:column; align-items:stretch; gap:12px; margin-bottom:14px;}
	.boardTop .boardCount {font-size:15px;}
	.boardSearch {gap:6px;}
	.boardSearch .searchType select {height:40px; min-width:90px; font-size:14px; padding:0 32px 0 12px; background-size:10px auto; background-position:right 10px center;}
	.boardSearch .searchInput {flex:1; width:100%; min-width:0; height:40px; font-size:14px; padding:0 12px;}
	.boardSearch .searchBtn {height:40px; padding:0 16px; font-size:14px; white-space:nowrap;}

	/* 게시판 - 리스트 - 모바일 */
	.tblBoard {table-layout:fixed;}
	.tblBoard colgroup col:nth-child(1) {width:60px !important;}
	.tblBoard colgroup col:nth-child(3),
	.tblBoard colgroup col:nth-child(4),
	.tblBoard colgroup col:nth-child(5) {width:0 !important;}
	.tblBoard thead th:nth-child(3),
	.tblBoard thead th:nth-child(4),
	.tblBoard thead th:nth-child(5),
	.tblBoard tbody td.file,
	.tblBoard tbody td.date,
	.tblBoard tbody td.hit {display:none;}
	.tblBoard thead th {padding:14px 6px; font-size:13px;}
	.tblBoard tbody td {padding:14px 6px; font-size:13px;}
	.tblBoard tbody td.tit {padding-left:10px; padding-right:10px;}
	.tblBoard tbody td.tit a {gap:6px;}

	.badgeNotice {min-width:36px; padding:2px 6px; font-size:12px;}
	.badgeNew {width:18px; height:18px; font-size:10px;}

	/* 페이징 - 모바일 */
	.pagingWrap {gap:4px; margin-top:30px;}
	.pagingWrap .pageNums .num {min-width:28px; height:28px; font-size:14px; padding:0 4px;}
	.pagingWrap .pageNums .num + .num {margin-left:6px;}
	.pagingWrap .pageNums .num + .num::before {left:-6px;}
	.pagingWrap .paging1 {width:28px; height:28px;}

	/* 게시판 - 상세 - 모바일 */
	.tblView th, .tblView td {padding:12px 6px; font-size:13px;}
	.tblView colgroup col:nth-child(1) {width:80px !important;}
	.tblView colgroup col:nth-child(3) {width:70px !important;}
	.tblView colgroup col:nth-child(4) {width:auto !important;}
	.viewCont {min-height:300px; padding:24px 14px;}
	.viewCont .viewBody {font-size:14px; line-height:1.7;}

	/* 포토리스트 - 모바일 */
	.photoList ul {grid-template-columns:repeat(2, 1fr); gap:18px 14px;}
	.photoList .info {padding:10px 2px 0;}
	.photoList .ptit {font-size:14px;}
	.photoList .meta {margin-top:6px;}
	.photoList .meta .date,
	.photoList .meta .more {font-size:12px;}

	/* 포토 상세 - 모바일 */
	.photoView .photoBig {aspect-ratio:4/3;}
	.photoView .photoThumbs {gap:6px; margin-top:10px;}
	.photoView .thumbItem {width:64px;}
	.photoView .viewBody {margin-top:20px;}

	/* 정관 및 제규정 - 모바일 */
	.box1 {gap:0;}
	.pg_menu_list li {flex:1 1 25%; min-width:0;}
	.pg_menu_list li a {height:48px; font-size:14px; padding:0 6px;}
	.js_goCon {flex-direction:column; gap:20px; padding:28px 0;}
	.js_goCon .tit {flex:0 0 auto;}
	.js_goCon .tit .tt {font-size:22px;}
	.js_goCon .con .list1 dt {font-size:17px; margin-bottom:12px;}
	.js_goCon .con .list1 dt ~ dt {margin-top:22px;}
	.js_goCon .con .list1 dd {font-size:14px; line-height:24px; margin-bottom:16px;}

	/* 공용 버튼 - 모바일 */
	.btnCenter {margin-top:24px;}
	.btType1 {min-width:120px; height:44px; font-size:14px;}
}



/* 기존 */


/* 관리자 로그인 */
.card.shadow { border: none !important;  border-radius: 0 !important; box-shadow: none !important; padding: 20px 20px !important;  max-width:640px; margin:100px auto; text-align: center;}
.card.shadow .card-title { font-size: 2rem; font-weight: 800; color: #333; margin-bottom: 20px !important; border-bottom: 2px solid #333 !important; padding-bottom: 30px; }
.card.shadow .form-label { font-weight: 700; color: #333; font-size: 0.95rem; margin-bottom: 10px; width: 100px; }
.card.shadow .form-control { border: 1px solid #ddd !important; border-radius: 0 !important; padding: 12px; font-size: 0.9rem; color: #333; width: 100%; }
.card.shadow .form-control::placeholder { color: #aaa; }
.card.shadow .mb-3 { border-bottom: 1px solid #eee; padding-bottom: 25px; margin-bottom: 25px !important; display: flex; align-items:center; }
.card.shadow .mb-3:last-of-type { border-bottom: none; }
.card.shadow .btn-primary { background-color: #2b468b !important; border: none !important; border-radius: 6px !important; padding: 15px !important; font-size: 1.1rem; font-weight: 600; width: 140px; margin: 0 auto; display: block;  color:#fff;}
.card.shadow .d-flex { margin-top: 30px; justify-content: center !important; gap: 15px !important; }
.card.shadow .text-decoration-none { color: #333 !important; font-size: 0.9rem; font-weight: 500; }
.card.shadow .text-muted { color: #ddd !important; font-size: 0.8rem; }
.card.shadow hr { display: none; }
.card.shadow .input-group {display: flex; gap:10px; width: 100%;}
.card.shadow .input-group button {flex:1; min-width:100px;}


#progress_loading{height:100%;left:0;position:fixed;_position:absolute;background-color:#fff;top:0;width:100%;filter:alpha(opacity = 0);-moz-opacity:.5;opacity:.5}
#loading_img{position:absolute;top:50%;left:50%;height:200px;margin-top:-75px;margin-left:-75px;z-index:999999}
#hd_pop{z-index:1000;position:relative;margin:0 auto;width:auto;height:0}
#hd_pop h2{position:absolute;font-size:0;line-height:0;overflow:hidden}
.hd_pops{position:absolute;border:1px solid #e9e9e9;background:#fff}
.hd_pops img{max-width:100%}
.hd_pops_footer{padding:0;background:#000;color:#fff;text-align:left;position:relative}
.hd_pops_footer:after{display:block;visibility:hidden;clear:both;content:""}
.hd_pops_footer button{padding:10px;border:0;color:#fff}
.hd_pops_footer .hd_pops_reject{background:#000;text-align:left}
.hd_pops_footer .hd_pops_close{background:#393939;position:absolute;top:0;right:0}
.carousel-item{transition:transform 2s ease-in-out}
.carousel-item.active.carousel-item-start{transform:translateX(-100%)}
.carousel-item.active.carousel-item-end{transform:translateX(100%)}
.carousel-item-next:not(.carousel-item-start){transform:translateX(100%)}
.carousel-item-prev:not(.carousel-item-end){transform:translateX(-100%)}
.dropdown-submenu{position:relative}
.dropdown-submenu .dropdown-menu{top:0;left:100%;margin-top:-1px;display:none}
.dropdown-submenu:hover > .dropdown-menu{display:block}
.dropdown-submenu > .dropdown-toggle:after{transform:rotate(-90deg);float:right;margin-top:8px}
.nav-link{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;border-radius:.375rem;color:#000}
.nav-arrow{transition:transform .2s ease;display:inline-block}
.nav-link[aria-expanded="true"] .nav-arrow{transform:rotate(90deg)}
.submenu{padding-left:0;margin-top:4px}
.submenu .nav-link{padding-left:2rem}
.submenu .submenu{margin-top:4px}
.submenu .submenu .nav-link{padding-left:3rem}
.nav-link.active-level-1{background-color:#0d6efd!important;color:#fff!important}
.nav-link.active-level-2{background-color:#6ea8fe!important;color:#fff!important}
.nav-link.active-level-3{background-color:#cfe2ff!important;color:#084298!important}
.app-header{height:63px;z-index:1050;margin-left:280px;transition:margin-left .3s ease-in-out;background-color:#eee}
.app-header .header-menu-width{width:280px}
#sidebar{width:280px;height:100vh;position:fixed;overflow-y:auto;background-color:#efefef;border-left:1px solid #b8b8b8;top:0;right:0;transition:transform .3s ease-in-out}
#sidebar .sidebar-header{height:43px;display:flex;align-items:center;margin:-.75rem -.75rem 0;padding:0 1rem}
#main-content{flex:1;max-width: 1200px;margin: 150px auto;}
.bg-body-tertiary{--bs-bg-opacity:1;background-color:#e0e0e0!important}
@media (max-width: 991.98px) {
.app-header{margin-left:0!important}
#sidebar{transform:translateX(100%);z-index:1040;border-left:1px solid #b8b8b8;border-right:none}
#sidebar.show-mobile{transform:translateX(0);box-shadow:-2px 0 10px #0000001a}
#main-content{margin-left:0!important}
}
@media (min-width: 992px) {
#sidebar{transform:translateX(0);right:auto;left:0;border-right:1px solid #b8b8b8;border-left:none}
}
@media (min-width: 768px) {
.nav-item.dropdown:hover > .dropdown-menu{display:block;margin-top:0}
.dropdown-submenu .dropdown-menu{display:none!important}
.dropdown-submenu:hover > .dropdown-menu{display:block!important}
}


.js_goCon {padding:0;  border:none;  border:1px solid #d6d6d6; border-radius:10px; margin-bottom: 15px; flex-direction:row;}
.js_goCon .tit {display: none; }
.js_goCon .con .list1 * {display: none;}
.js_goCon .con .list1 dt {margin:0; width: 100%;}
.js_goCon .con .list1 dt:first-child { cursor:pointer; display: block; padding:20px; position: relative;}
.js_goCon .con .list1 dt:first-child:after {content:''; position: absolute; right:20px; top:50%; transform:translateY(-50%) rotate(90deg); background:url('../images/ico_calendar_next.svg') no-repeat center/cover; width: 15px; height: 15px; }
.js_goCon.active .con .list1 dt:first-child:after { transform:translateY(-50%) rotate(270deg); }
.js_goCon.active .con .list1 * {display: block;} 
.js_goCon.active .con .list1 dd {padding:20px; border-top: 1px solid #d6d6d6;;}
.js_goCon:last-child { border:1px solid #d6d6d6; border-radius:10px;}