
/* root */
:root {
	--height-top:55px;
	--height-topmenu:135px;
	
	--comp-topmenu:calc(var(--height-top) + var(--height-topmenu));
	
}

/* common */
body {letter-spacing: -0.025em;}
body:not(.main) {padding-top:var(--comp-topmenu);}
.inner {width: 1600px; margin: 0 auto;}
img {max-width: 100%;}
.-hide {display:none !important;}
.-hidden {visibility: hidden !important;}


@media only screen and (max-width:1600px) {
    .inner {width: 100%; padding: 0 30px; box-sizing: border-box;}
}
@media only screen and (max-width:768px) {
    .inner {padding: 0 15px;}
}

/* top button */
a#top_btn {display: none; position: fixed; right: 50px; bottom: 40px; width: 56px; z-index: 999; text-align: center;}
a#top_btn img {width: 100%; height:100%;}
a#top_btn span {font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; line-height: 60px; color: #d2d2d2; letter-spacing: -0.025em;}

@media only screen and (max-width:768px) {
	a#top_btn{right: 20px; bottom: 20px; width:40px;}
	a#top_btn span {font-size: 14px; line-height: 35px;}
}

/* header */
header {position: fixed; top: 0; left: 0; width: 100%; background-color: #fff; box-shadow: 0 0 20px rgba(0,0,0,.1); border-bottom: 1px solid #bbc7d3; transition: background .15s; z-index: 999;}
/* body.scrolling #header {position: fixed; top: 0; left: 0; width: 100%; background-color: #fff; box-shadow: 0 0 20px rgba(0,0,0,.1); border-bottom: 1px solid #bbc7d3; transition: background .15s; z-index: 999;} */
header > .top {background: linear-gradient(to right, #45bcb9, #356fc3);}
header > .top .inner {display: flex; align-items: center; justify-content: space-between; height: 55px;}
header .top .inner > div {display: flex;align-items: center;justify-content: flex-end;width: 100%;}
header .top .inner > div.link-wrap {display:none;}
header > .top a {display: inline-block; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #fff;}
header > .top a:not(:first-child) {margin-left: 12px; padding-left: 12px; border-left: 1px solid #fff;}
header > .top .bookmark {padding-left: 27px; background: url('../../../../images/egovframework/com/front/icon_bookmark.png') no-repeat center left;}
header > .top .member-info {display: inline-block; padding-left: 22px; background: url('../../../../images/egovframework/com/front/icon_member.png') no-repeat center left; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #fff;}
header > .top .member-wrap.mobile-type {display: none;}

@media only screen and (max-width:768px) {
    header > .top .inner {height: 45px;}
	/* header > .top .inner > .member-wrap {display: none;} */
    header > .top a {font-size: 12px;}
    header > .top .member-wrap.pc-type {display: none;}
    header > .top .member-wrap.mobile-type {display: inline-flex; align-items: center;}
    header > .top .member-wrap.mobile-type img {width: 12px; height: 12px;}
    header > .top .member-info {padding-left: 20px; background-size: auto 100%; font-size: 12px;}
    header > .top .bookmark {padding-left: 15px;}
    
    header > .top a:not(:first-child) {margin-left: 10px; padding-left: 10px;}
    header > .top .link-wrap a {display: none; margin: 0; padding: 0; border-left: 0;}
    header > .top .link-wrap a.btn-alarm {display: inline-block;}
}
@media only screen and (max-width:480px) {
    /* header > .top .inner {flex-direction: column-reverse; align-items: flex-start; flex-wrap: wrap; height: auto; gap: 10px; padding: 10px 15px;} */
    header > .top .bookmark {padding-left: 20px;}
}

header .top .btn-alarm {position: relative;}
header .top .btn-alarm img {vertical-align: middle;}
header .top .btn-alarm.on:after {content: ''; display: inline-block; position: absolute; top: -1px; right: -7px; width: 4px; height: 4px; border-radius: 100%; background: #fc5e05;}
.alarm-popup {display: none; position: absolute; top: 74px; left: 140px; width: 400px; border: 1px solid #ddd; border-radius: 7px; background: #fff; font-family: 'NanumSquare'; z-index: 20;}

.alarmWrap {display:none;position:absolute;top:54px;width:400px;max-height:640px;border: 1px solid #ddd; border-radius: 7px; background: #fff;z-index:1;}
.alarmWrap:before {content: ''; display: inline-block; position: absolute; top: -13px; left:50%;transform:translateX(-50%); width: 0; height: 0; border-style: solid;  border-width: 0px 10.5px 15px 10.5px; border-color: transparent transparent #fff transparent; border-radius: 5px; z-index: 30;;}
.alarmWrap:after {content: ''; display: inline-block; position: absolute; top: -15px; left: 50%;transform:translateX(-50%); width: 0; height: 0; border-style: solid;  border-width: 0px 11px 16px 11px; border-color: transparent transparent #ddd transparent; border-radius: 5px; z-index: 10;}
.alarmWrap iframe form {margin: 0 !important;}
.alarm-popup.-iframe {display:block;position: relative; top: 0; left: 0; width: 100%; border: 0; border-radius: 0; background: none; font-family: 'NanumSquare'; z-index: 1;}
.alarm-popup.-iframe:before {content: ''; display: none;}
.alarm-popup.-iframe:after {content: ''; display: none;}

.alarm-popup.-iframe .delete-alarm {padding: 0;margin: 0;border: 0;background: none;cursor:pointer;}
.alarm-popup.-iframe .alarm p {margin:0;}
.alarm-popup.-iframe .alarm-wrap .tit {margin:0 0 18px;}
.alarm-popup.-iframe .alarm-paging > a {color: inherit; text-decoration: none;}

.alarm-popup:before {content: ''; display: inline-block; position: absolute; top: -13px; left: 50%;transform:translate(-50%,0); width: 0; height: 0; border-style: solid;  border-width: 0px 10.5px 15px 10.5px; border-color: transparent transparent #fff transparent; border-radius: 5px; z-index: 30;;}
.alarm-popup:after {content: ''; display: inline-block; position: absolute; top: -15px; left: 50%;transform:translate(-50%,0); width: 0; height: 0; border-style: solid;  border-width: 0px 11px 16px 11px; border-color: transparent transparent #ddd transparent; border-radius: 5px; z-index: 10;}
.alarm-popup > .title {display: flex; align-items: center; justify-content: center; height: 57px; border-bottom: 1px solid #ddd;font-weight: 700; font-size: 18px; color: #222; letter-spacing: -0.05em; box-sizing: border-box;}
.alarm-wrap {overflow-y: auto; max-height: 582px; padding: 20px; background: #f7f7f7; box-sizing: border-box;}
.alarm-wrap .alarm-inner:not(:first-child) {margin-top: 28px;}
.alarm-wrap .tit {margin-bottom: 18px; font-weight: 700; font-size: 16px; color: #222; letter-spacing: -0.05em;}
.alarm-popup .alarm-inner .alarm {display: block; position: relative; margin: 0; padding: 16px 20px 20px; border: 1px solid #ddd; border-radius: 10px; background: #fff; font-size: 14px; color: #666; line-height: 30px; letter-spacing: -0.05em; box-sizing: border-box;}
.alarm-popup .alarm-inner .alarm + .alarm {margin-top: 10px;}
.alarm-popup .alarm-inner .alarm.visited > * {opacity: .6;}
.alarm-popup .alarm-inner .alarm > .top > * {vertical-align: middle;}
.alarm-popup .alarm-inner .alarm > .top img {height: 18px;}
.alarm-popup .alarm-inner .alarm > .top span {display: inline-block; position: relative; margin: 2px 0 0 23px;}
.alarm-popup .alarm-inner .alarm > .top span:before {content: ''; display: inline-block; position: absolute; top: 50%; left: -13px; transform: translateY(-50%); width: 3px; height: 3px; border-radius: 100%; background: #ddd;}
/* .alarm-popup .alarm-inner .alarm > .text {display: -webkit-box; word-wrap: break-word; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-overflow: ellipsis; overflow: hidden; line-height: 20px;} */
.alarm-popup .alarm-inner .alarm > .text {line-height: 20px;word-wrap: break-word;}
.alarm-popup .delete-alarm {position: absolute; top: 15px; right: 15px;}
.alarm-popup .alarm-paging {margin-top: 25px; text-align: center;}
.alarm-popup .alarm-paging > a {display: inline-block; font-size: 16px; color: #999;}
.alarm-popup .alarm-paging > a.on {font-weight: bold; color: #222;}
.alarm-popup .alarm-paging > a + a {margin-left: 25px; padding: 0; border: none;}
.alarm-popup .alarm-paging img {}

@media only screen and (max-width:768px) {
    header .top .btn-alarm img {height: 15px;}
    .alarm-popup {top: 65px; width: 50%;}
    /* .alarm-popup:before {right: 110px;}
    .alarm-popup:after {right: 110px;} */
    .alarm-popup > .title {height: 40px; font-size: 14px;}
    .alarm-wrap {max-height: 282px; padding: 15px;}
    .alarm-wrap .tit {margin-bottom: 15px; font-size: 14px;}
    .alarm-popup .alarm-inner .alarm {padding: 15px; font-size: 12px; line-height: 16px;}
    .alarm-popup .alarm-inner .alarm > .top span {margin: 0 0 0 15px; font-size: 10px;}
    .alarm-popup .alarm-inner .alarm > .top span:before {left: 11px;}
    .alarm-popup .alarm-inner .alarm > .text {margin-top: 10px;}
    
    .alarmWrap {width: 85vw;}
    .alarmWrap:before {display: none;}
    .alarmWrap:after {display: none;}
}

.header-wrap {background: #fff;}
.header-wrap .inner{display: flex; align-items: center; height: 135px;}
.header-wrap .header__menu-list {display: inline-flex; align-items: center; margin-left: 95px;}
.header-wrap .header__menu-list > li {position: relative;}
.header-wrap .header__menu-list > li:not(:first-child) {margin-left: 50px;}
.header-wrap .header__menu-list > li:not(:first-child):before {content: ''; display: inline-block; position: absolute; top: 48%; left: -28px; transform: translateY(-50%); width: 9px; height: 8px; background: url('../../../../images/egovframework/com/front/icon_header_menu.png') no-repeat center;}
.header-wrap .header__menu-list > li > a {font-family: 'NanumSquare'; font-weight: 700; font-size: 20px; color: #222;}
.header-wrap .header__menu-list > li > span {font-family: 'NanumSquare'; font-weight: 700; font-size: 20px; color: #222;}
.header-wrap .header__menu-list > li > ul {display: none; position: absolute; top: 40px; left: 50%; transform: translateX(-50%); width: 140px; border: 1px solid #ddd; border-radius: 7px; background: #fff;}
.header-wrap .header__menu-list > li > ul > li {}
.header-wrap .header__menu-list > li > ul > li > a {display: block; padding: 23px 0; font-weight: 500; font-size: 18px; color: #666; text-align: center;}
.header-wrap .header__menu-list > li > ul > li > a:hover {color: #306bcb;}
.header-wrap .header__menu-list > li > ul > li:not(:first-child) > a {border-top: 1px solid #ddd;}
.header-wrap .hunet {display: inline-flex; position: relative; align-items: center; width: 161px; height: 36px; margin-left: 64px; border-radius: 30px; background: linear-gradient(to right, #45bcb9, #356fc3); font-family: 'NanumSquare'; font-weight: 400; font-size: 14px; color: #fff; letter-spacing: -0.05em; box-shadow: 2px 0px 10px 9px rgba(54, 111, 204, 0.1);}
.header-wrap .hunet:after {content: ''; display: inline-block; position: absolute; top: 12px; right: 8px; width: 7px; height: 11px; background: url('../../../../images/egovframework/com/front/icon_next_7.png') no-repeat;}
.header-wrap .hunet span {display: inline-block; position: relative; padding-left: 35px; line-height: 23px;}
.header-wrap .hunet span:before {content: ''; display: inline-block; position: absolute; top: 50%; left: 4px; transform: translateY(-50%); width: 29px; height: 29px; background: url('../../../../images/egovframework/com/front/icon_hunet.png') no-repeat center;}
.header-wrap .total__menu-open {display: inline-block; margin-left: auto; padding-right: 38px; background: url('../../../../images/egovframework/com/front/icon_total_menu.png') no-repeat center right; font-family: 'NanumSquare'; font-weight: 700; font-size: 18px; color: #306bcb;}

@media only screen and (max-width:1600px) {
    .header-wrap .logo img {max-width: 200px;}
    .header-wrap .hunet {margin-left: auto;}
    .header-wrap .total__menu-open {width: 22px; height: 16px; padding: 0; font-size: 0;}
}
@media only screen and (max-width:1500px) {
    .header-wrap .header__menu-list {margin-left: 70px;}
    .header-wrap .header__menu-list > li:not(:first-child) {margin-left: 30px;}
    .header-wrap .header__menu-list > li:not(:first-child):before {left: -18px;}
    .header-wrap .header__menu-list > li > a {font-size: 18px;}
    .header-wrap .header__menu-list > li > span {font-size: 18px;}
    .header-wrap .header__menu-list > li > ul > li > a {padding: 15px 0; font-size: 16px;}
    .header-wrap .total__menu-open {margin-left: 30px;}
}
@media only screen and (max-width:1300px) {
    .header-wrap .header__menu-list {margin-left: 30px;}
    .header-wrap .header__menu-list > li:not(:first-child) {margin-left: 20px;}
    .header-wrap .header__menu-list > li:not(:first-child):before {left: -14px;}
    .header-wrap .header__menu-list > li > a {font-size: 16px;}
    .header-wrap .header__menu-list > li > span {font-size: 16px;}
    .header-wrap .hunet {width: 150px; margin-left: auto;}
    .header-wrap .hunet span {font-size: 12px;}
}
@media only screen and (max-width:1200px) {
    
}
@media only screen and (max-width:1150px) {
    .header-wrap .inner {justify-content: space-between; height: 75px;}
    .header-wrap .header__menu-list {display: none;}
    .header-wrap .hunet {display: none;}
}

.total__menu-wrap {display: none; position: absolute; top: 0; left: 0; width: 100vw; height: 100vh; background: #fff; z-index: 999999;}
.total__menu-wrap > div {position: relative; width: 1600px; margin: 0 auto;}
.total__menu-wrap .top {padding: 70px 0; text-align: center;}
.total__menu-wrap .top.mo-type {display: none;}
.total__menu-wrap .total__menu-close {position: absolute; top: 70px; right: 0;}
.total__menu-wrap .bottom {overflow-y: auto; height: calc(100vh - 175px);}
.total__menu-wrap .total__menu-inner {display: flex; flex-wrap: wrap; gap: 60px 142px; max-height: calc(100vh - 230px);}
.total__menu {width: calc( (100% - 60px) / 4 ); max-width: 288px;}
.total__menu > .title {padding: 30px 20px; border-bottom: 2px solid #ddd; font-family: 'NanumSquare'; font-weight: 700; font-size: 28px; color: #222;}
.total__menu:hover > .title {border-bottom-color:#306bcb; color: #306bcb;}
.total__menu-list {margin-top: 40px; padding: 0 20px;}
.total__menu-list > li {position: relative; padding-left: 17px; font-family: 'NanumSquare'; font-size: 20px; color: #666;}
.total__menu-list > li:before {content: ''; display: inline-block; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 5px; height: 5px; border-radius: 100%; background: #666;}
.total__menu-list > li:hover {color: #306bcb;}
.total__menu-list > li:hover:before {background: #306bcb;}
.total__menu-list > li + li {margin-top: 30px;}
.total__menu-list > li > ul {display: none;}
.total__menu-wrap .total__menu-close.mo {display: none;}

@media only screen and (max-width:1600px) {
    .total__menu-wrap > div {width: 100%; padding: 0 30px; box-sizing: border-box;}
    .total__menu-wrap .top {padding: 70px 30px;}
    .total__menu-wrap .total__menu-close {right: 30px;}
    .total__menu-wrap .total__menu-inner {gap: 60px;}
    .total__menu {width: calc( (100% - 180px) / 4 ); max-width: 100%;}
}
@media only screen and (max-width:1150px) {
    .total__menu-wrap {left: auto; right: -100%; width: 80vw;}
    .total__menu-bg {content: ''; display: inline-block; position: absolute; top: 0; left: 0; width: 100vw; height: 100vh; background:rgba(0, 0, 0, .7);}
    /* .total__menu-wrap .top.pc-type {display: none;} */
    .total__menu-wrap .top {display: block; padding: 30px 20px; border-bottom: 1px solid #d1d1d1; text-align: left;}
    .total__menu-wrap .top ul {margin-top: 30px; font-size: 0;}
    .total__menu-wrap .top ul li {display: inline-block; position: relative;}
    .total__menu-wrap .top ul li:not(:first-child) {margin-left: 15px; padding-left: 15px; border-left: 1px solid #d1d1d1;}
    .total__menu-wrap .top ul a {display: inline-block; padding-left: 27px; font-size: 16px; color: #666;}
    .total__menu-wrap .top .login {background: url('../../../../images/egovframework/com/front/mo_login.png') no-repeat center left; background-size: auto 100%;}
    .total__menu-wrap .top .join {background: url('../../../../images/egovframework/com/front/mo_join.png') no-repeat center left; background-size: auto 100%;}
    .total__menu-wrap .top .sitemap {background: url('../../../../images/egovframework/com/front/mo_sitemap.png') no-repeat center left; background-size: auto 100%;}
    .total__menu-wrap .bottom {padding: 0; height: calc(100vh - 145px); background: #f7f7f7;}
    .total__menu-wrap .total__menu-inner {display: block; position: relative; max-height: 100%;}
    .total__menu {display: flex; align-items: flex-start; width: 100%; height: 90px;}
    .total__menu > .title {display: inline-flex; align-items: center; width: 30%; height: 100%; padding: 0 25px; border-color: #ddd; font-size: 22px; box-sizing: border-box;}
    .total__menu:hover > .title {border-bottom-color: #ddd; color: inherit; cursor: pointer;}
    .total__menu.active > .title {position: relative; background: #fff;}
    .total__menu.active > .title:after {content: ''; display: inline-block; position: absolute; top: 0; right: -1px; width: 1px; height: 100%; background: #fff; z-index: 1;}

    .total__menu-list {display: none; position: absolute; top: 0; right: 0; width: 70%; height: 100vh; margin-top: 0; padding: 30px; border-left: 1px solid #ddd; background: #fff; box-sizing: border-box;}
    .total__menu-list > li {padding-left: 13px; font-size: 16px;}
    .total__menu-list > li:before {top: 7px; transform: translateY(0); height: 1px; border-radius: 0;}
    .total__menu-list > li.haschild > a {display: block; position: relative; padding-right: 13px;}
    .total__menu-list > li.haschild > a:after {content: ''; display: inline-block; position: absolute; top: 1px; right: 0; width: 5px; height: 11px; background: url('../../../../images/egovframework/com/front/haschild.png') no-repeat center; background-size: 100%;}
    .total__menu-list > li.haschild > a.on {color: #306bcb;}
    .total__menu-list li > ul > li > a.on {color: #306bcb;}
    .total__menu-list > li + li {margin-top: 25px;}
    .total__menu-list li > ul > li {color: #888;}
    .total__menu-list li > ul > li {margin-top: 10px;}
    .total__menu-list li > ul > li:first-child {margin-top: 20px;}

    .total__menu-wrap .total__menu-close.mo {display: inline-block;}
    .total__menu-wrap .total__menu-close {position: absolute; top: 30px; right: auto; left: -50px;}
    .total__menu-title {width: 60%}

    .total__menu-wrap .total__menu-close.pc {display: none;}
    .total__menu-wrap .total__menu-close.mo {display: inline-block;}
}
@media only screen and (max-width:768px) {
    .total__menu > .title {font-size: 18px;}
}
@media only screen and (max-width:480px) {
    .total__menu-wrap {width: 90vw;}
    .total__menu-wrap .top.mo-type {padding: 25px 15px;}
    .total__menu > .title {width: 40%; padding: 0 15px;}
    .total__menu-list {width: 60%; padding: 25px 15px;}
    .total__menu-wrap .total__menu-close {left: -30px; width: 20px;}
}

body #header .header-wrap .inner .logo {display:block;}
body #header .header-wrap .inner .logo_white {display:none;}

body.main:not(.scrolling) #header { background-color: transparent;box-shadow: none;border-bottom: 1px solid rgba(255, 255, 255, .1)}
body.main:not(.scrolling) #header .top { background: none;}
body.main:not(.scrolling) #header .header-wrap { background: none;}
body.main:not(.scrolling) #header .header-wrap .inner .logo {display:none;}
body.main:not(.scrolling) #header .header-wrap .inner .logo_white {display:block;}
body.main:not(.scrolling) #header .header-wrap .header__menu-list > li > a {color:#fff;}
body.main:not(.scrolling) #header .header-wrap .header__menu-list > li > span {color:#fff;}
body.main:not(.scrolling) #header .header-wrap .header__menu-list li:not(:first-child):before {background:url('../../../../images/egovframework/com/front/icon_header_menu_wht.png') no-repeat center}

.header__menu-list > li.with-submenu > .menu-link {
    cursor: pointer;
    display: block;
    padding: 10px 0;
}

.header__menu-list > li.with-submenu > .submenu {
    display: none;
    position: absolute;
    top: 100%;
    background: #fff;
    list-style: none;
    padding: 10px 0;
    margin: 0;
    min-width: 180px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    z-index: 100;
}

.header__menu-list > li.with-submenu:hover > .submenu {
    display: block;
}

.header__menu-list > li.with-submenu:hover > .submenu :before{
    display: none !important;
    content: none !important;
}
.submenu li {
    padding: 0 15px !important;
    margin: 0 !important;
}

.submenu a {
    display: block;
    color: #333;
    text-decoration: none;
}


/* 함께하는 기관 */
.family__slide-wrap {padding: 60px 0; border-top: 1px solid #f4f4f4;}
.family__slide-wrap .inner {display: flex; align-items: center;}
.family__slide-wrap .title {font-family: 'NanumSquare'; font-weight: 700; font-size: 24px; color: #222;}
.family__slide-inner {overflow: hidden; display: inline-flex; align-items: center; width: calc(100% - 390px); margin-left: 100px;}
.family__slide-util {display: flex; align-items: center; margin-left: 45px;}
.family__slide-util a {display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 28px;}
.family__slide-util .family__slide-next {border-left: 1px solid #dfdfdf;}
.family__slide-inner .swiper-wrapper {align-items: center;}
.family__slide-inner a {display: inline-block; /*width: 100%; height: 100%;*/ text-align: center;}
.family__slide-inner img {text-align: center; vertical-align: middle;object-fit:contain;/*aspect-ratio: 135 / 47;*/}

.swiper-slide {width:auto;}

@media only screen and (max-width:1150px) {
    .family__slide-wrap {padding: 30px 0;}
    .family__slide-wrap .inner {flex-wrap: wrap; justify-content: space-between;}
    .family__slide-inner {width: 100%; margin: 20px 0 0;}
}
@media only screen and (max-width:768px) {
    .family__slide-wrap .title {font-size: 18px;}
    .family__slide-util a {width: 40px; height: 18px;}
    .family__slide-util a img {height: 12px;}
}

/* footer */
footer {font-size: 0;}
footer .top {background: #262626;}
footer .top .inner {display: flex; align-items: center; justify-content: space-between; height: 72px;}
footer .link-wrap.mobile-type {display: none;}
footer .link-wrap a {font-size: 16px; color: #d2d2d2; letter-spacing: -0.05em;}
footer .link-wrap a:not(:first-child) {margin-left: 65px;}
footer .family-wrap a {display: inline-flex; position: relative; align-items: center; width: 250px; height: 72px; padding: 0 40px; background: #151515; font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #d2d2d2; box-sizing: border-box;}
footer .family-wrap a:after {content: ''; display: inline-block; position: absolute; top: 50%; right: 40px; transform: translateY(-50%); width: 15px; height: 15px; background: url('../../../../images/egovframework/com/front/icon_footer_plus.png') no-repeat center;}
footer .family-wrap a:not(:first-child) {border-left: 1px solid #626262;}
footer .bottom {padding: 35px 0 40px;}
footer .bottom p {font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #666; line-height: 26px;}
footer .bottom p b {font-weight: 700;}
footer .bottom .copyright {margin-top: 20px; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #999;}

@media only screen and (max-width:1150px) {
    footer .top .inner {height: 52px;}
    footer .family-wrap {width: 100%;}
    footer .family-wrap a {width: 50%; height: 52px; font-size: 16px;}
    
    footer .top .link-wrap {display: none;}
    footer .link-wrap.mobile-type {display: block; margin-bottom: 15px;}
    footer .link-wrap a {font-weight: 700; color: #666;}
    footer .link-wrap a:not(:first-child) {margin-left: 25px;}
    footer .bottom p {font-size: 14px;}
    footer .bottom .copyright {font-size: 12px;}
}
@media only screen and (max-width:768px) {
    footer .bottom {padding: 30px 0;}
}
@media only screen and (max-width:480px) {
    footer .top .inner {height: 40px;}
    footer .family-wrap a {height: 40px; padding: 0 20px; font-size: 14px;}
    footer .family-wrap a:after {right: 20px; width: 10px;  height: 10px;}
}

/* btn */
.btn-wrap {position: relative; margin-top: 30px;}
.btn-wrap.right {text-align: right;}
.btn-wrap.center {text-align: center;}
.btn-wrap.center.bottom {text-align: center; margin-bottom: 50px}
.btn {display: inline-flex; align-items: center; justify-content: center; width: 140px; height: 60px; border-radius: 5px; background: #fff; font-family: 'SUIT'; font-weight: 600; font-size: 20px; letter-spacing: -0.05em; box-sizing: border-box; vertical-align: middle;}
.btn.big {width: 176px; height: 52px;}
.btn.absolute_left {position: absolute; top: 0; left: 0;}
.btn.absolute_right {position: absolute; top: 0; right: 0;}
.btn.type1 {border: 1px solid #35b7b3; color: #35b7b3;}
.btn.type2 {border: 1px solid #35b7b3; background: #35b7b3; color: #fff;}
.btn.type3 {border: 1px solid #222; color: #222;}
.btn.type4 {border: 1px solid #999; color: #999;}
.btn.type5 {border: 1px solid #555; color: #555; font-size:18px; font-weight:500;}
.btn.type6 {height: 40px;border: 1px solid #35b7b3; background: #35b7b3; color: #fff;}
.btn + .btn {margin-left: 10px;}
.btn-list {background: #222; color: #fff;}
.btn_login {display: inline-flex; align-items: center; justify-content: center; width: 100%; height: 70px; background: linear-gradient(-25deg, #3570c3, #35b7b3); font-weight: bold; font-size: 22px; color: #fff; box-sizing: border-box;}
.btn_address {display: inline-flex; align-items: center; justify-content: center; width: 149px; height: 52px; border: 1px solid #bebebe; background: #fff; border-radius: 5px; font-size: 16px; color: #666; letter-spacing: -0.05em; box-sizing: border-box;}
.btn_write {display: inline-flex; align-items: center; justify-content: center; width: 198px; height: 60px; border-radius: 5px; background: #30b3af; font-weight: 700; font-size: 20px; color: #fff; letter-spacing: -0.025em;}
.btn_write span {display: inline-block; padding-left: 30px; background: url('../../../../images/egovframework/com/front/sub/icon_btn_write_w.png') no-repeat center left;}
.btn_upload {width: 109px; height: 52px; background: #666; font-size: 14px; color: #fff; cursor: pointer;}
.btn_upload span {display: inline-block; padding-left: 26px; background: url('../../../../images/egovframework/com/front/sub/icon_btn_upload.png') no-repeat center left;}
.btn-map {display: inline-flex; align-items: center; justify-content: center; width: 329px; height: 60px; margin-top: 28px; border: 1px solid #e1e1e1; background: url('../../../../images/egovframework/com/front/sub/btn_map.png') no-repeat center right 28px; font-family: 'NanumSquare'; font-weight: 700; font-size: 20px; color: #666; box-sizing: border-box;}
.btn-print {display: inline-flex; align-items: center; justify-content: center; width: 164px;}
.btn-print span {display: inline-block; padding-left: 30px; background: url('../../../../images/egovframework/com/front/sub/btn_print.png') no-repeat center left;}
.btn.type5:hover {background-color: #eaeaea;}
.btn_file{display: inline-flex; align-items: center; justify-content: center; width: 95px; height: 35px; border: 1px solid #bebebe; background: #fff; border-radius: 5px; font-size: 16px; color: #666; letter-spacing: -0.05em; box-sizing: border-box; margin-top: 5px;}
 
@media only screen and (max-width:768px) { 
    .btn {width: 100%; height: 40px; font-size: 16px;}
    .btn + .btn {margin: 10px 0 0;}

    .btn.absolute_left {position: static;}

    .btn_login {height: 50px;}
    .btn_upload {width: 110px; font-size: 14px;}
    .btn-map {width: 100%; height: 40px; font-size: 16px;}
    .btn_address {height: 40px;}
}
@media only screen and (max-width:480px) {
    .btn_login {font-size: 18px;}
}

/* input */
textarea,
input[type="text"],
input[type="password"] {width: 100%; height: 52px; padding: 0 20px; border: 1px solid #bebebe; border-radius: 5px; background: #fff; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #222; box-sizing: border-box;}
input[readonly] {background-color: #f5f5f5 !important; outline:0; cursor: default;}
textarea {width: 100% !important; padding: 20px;}
textarea::placeholder,
input[type="text"]::placeholder,
input[type="password"]::placeholder {font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #666;}
select {width: 100%; height: 52px; padding: 0 30px 0 20px; border: 1px solid #bebebe; border-radius: 5px; background: #fff url('../../../../images/egovframework/com/front/icon_select.png') no-repeat center right 20px; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #666; box-sizing: border-box;}
.input_info {margin-top: 12px; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #666; line-height: 20px; letter-spacing: -0.05em;}

@media only screen and (max-width:768px) { 
    textarea,
    input[type="text"],
    input[type="password"] {height: 40px; font-size: 14px;}
    textarea::placeholder,
    input[type="text"]::placeholder,
    input[type="password"]::placeholder {font-szie: 14px;}
    select {height: 40px; font-size: 14px;}
}

.checkbox-wrap {position: relative; margin-top: 30px; text-align: left; font-size: 0;}
.checkbox-wrap label > input {position: absolute; top: -6px; left: -3px; width: 26px; height: 26px; appearance: none;}
.checkbox-wrap label > span {display: inline-block; position: relative; padding-left: 39px; font-size: 18px; color: #666;}
.checkbox-wrap label > span:before {content: ''; display: inline-block; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 26px; height: 26px; border: 1px solid #cecece; border-radius: 4px; background: #fff;}
.checkbox-wrap label > input:checked + span:before {border: none; background: #35b7b3 url('../../../../images/egovframework/com/sub/checked.png') no-repeat center;}

@media only screen and (max-width:768px) { 
    .checkbox-wrap {margin-top: 15px;}
    .checkbox-wrap label > input {width: 16px; height: 16px;}
    .checkbox-wrap label > input:checked + span:before {background-size: 12px;}
    .checkbox-wrap label > span {padding-left: 29px; font-size: 16px;}
    .checkbox-wrap label > span:before {width: 16px; height: 16px;}
}

.radio-wrap {font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #222; letter-spacing: -0.05em;}
.radio-wrap + .radio-wrap {margin-left: 25px;}
.radio-wrap input[type="radio"] {position: relative; width: 26px; height: 26px; margin: 0; border: 1px solid #dbdbdb; border-radius: 100%; vertical-align: middle; appearance: none;}
.radio-wrap input[type="radio"]:before {content: ''; display: inline-block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 11px; height: 11px; border-radius: 100%; background: #dbdbdb;}
.radio-wrap input[type="radio"]:checked {border: 1px solid #35b7b3;}
.radio-wrap input[type="radio"]:checked:before {background: #35b7b3;}
.radio-wrap input[type="radio"]:focus-visible {outline: max(2px, 0.1em) dotted #000; outline-offset: max(2px, 0.1em); }
.radio-wrap span {display: inline-block; margin-left: 10px; vertical-align: middle;}
.radio-wrap input[type="radio"]:hover + span {cursor: pointer;}

@media only screen and (max-width:768px) { 
    .radio-wrap {margin-top: 15px; font-size: 16px;}
    .radio-wrap input[type="radio"] {width: 16px; height: 16px;}
    .radio-wrap input[type="radio"]:before {width: 7px; height: 7px;}
    .radio-wrap span {margin-left: 4px;}
}

.researchInfoRadio {display:flex;justify-content:flex-start;gap:20px;}
.researchDetail {display: flex;gap: 20px;}
.researchDetail input,
.researchDetail button {margin-top:10px;}
.researchDetail + .researchText {padding:10px 0; font-size:16px; overflow-x: auto;}

.research__file__wrap {width: 100%; position: relative;}
.research__file__wrap ul {display: flex; flex-wrap: nowrap; padding: 0; margin: 2px; list-style: none; width: max-content;}

.research__file {display: flex; align-items: center; margin-right: 20px;}
.research__file {display: block; font-family: 'SUIT'; font-weight: 500; font-size: 18px; color: #666; line-height: 22px; text-decoration: underline;}
.research__file a:hover {
    color: blue;
    cursor: pointer;
}
.plan_new_table th label,
.plan_new_table th span {
    display: inline-block;
    width: 95%;
    white-space: nowrap;
}

.plan_edit_table th label,
.plan_edit_table th span {
    display: inline-block;
    width: 95%;
    white-space: nowrap;
    font-size: 1rem;
}

.file-wrap {font-size: 0;}
.file-wrap input[type="file"] {position: absolute; width: 0; height: 0; padding: 0; overflow: hidden; border: 0;}
.file-wrap .upload-name {display: inline-block; width: 360px; height: 52px; margin-right: 10px; padding: 12px 20px; border: 1px solid #bebebe; border-radius: 5px; font-size: 16px; color: #999; letter-spacing: -0.05em; box-sizing: border-box; vertical-align: middle;}
.files-info {display: inline-block; margin-left: 20px; font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #666; letter-spacing: -0.05em; vertical-align: middle;}

@media only screen and (max-width:768px) { 
    .file-wrap .upload-name {width: calc(100% - 120px); height: 40px; font-size: 14px;}
    .files-info {margin: 10px 0 0; font-size: 12px;}
}

/* 리스트 검색 공통 */
.list__search-wrap {display: flex; align-items: flex-end; justify-content: flex-end;}
.list__search-wrap > p {margin-right: auto; font-family: 'NanumSquare'; font-weight: 400; font-size: 24px; color: #666; letter-spacing: -0.05em;}
.list__search-wrap > p > b {font-weight: 700; color: #35b7b3;}
.list__search-wrap > p.search-text {font-size: 16px; line-height: 24px;}
.list__search-wrap > p.search-text > b {color: #fc5e05;}
.list__search-wrap > div + div {margin-left: 10px;}
.search-select select {width: 200px; height: 52px; padding: 0 24px; border: 1px solid #dfdfdf; border-radius: 30px; background: url('../../../../images/egovframework/com/front/icon_select.png') no-repeat center right 24px; font-family: 'SUIT'; font-weight: 600; font-size: 18px; color: #999; letter-spacing: -0.05em; box-sizing: border-box;}
.search-input {display: inline-flex; align-items: center; width: 348px; height: 52px; padding: 0 24px; border: 1px solid #dfdfdf; border-radius: 30px; box-sizing: border-box;}
.search-input input[type="text"] {width: calc(100% - 19px); height: auto; padding: 0; border: none; border-radius: 0; background: none; font-family: 'SUIT'; font-weight: 600; font-size: 18px; color: #999; letter-spacing: -0.05em;}
.search-input button {display: inline-flex; align-items: center;}
.search-date {}
.search-date > span {display: inline-block; margin: 0 10px;}
.search-date input[type="date"] {position: relative; width: 200px; height: 52px; padding: 0 24px; border: 1px solid #dfdfdf; border-radius: 30px; background: url('../../../../images/egovframework/com/front/sub/icon_date.png') no-repeat center right 24px; font-family: 'SUIT'; font-weight: 600; font-size: 18px; color: #999; letter-spacing: -0.05em; box-sizing: border-box;}
.search-date input[type="date"]::-webkit-calendar-picker-indicator,
.search-date input[type="date"]::-webkit-inner-spin-button {
    position: absolute; top: 50%; right: 24px; transform: translateY(-50%); width: 20px; height: 19px; background: transparent; color: transparent; cursor: pointer;
}

@media only screen and (max-width:1150px) {
    .list__search-wrap.type2 {flex-direction: column !important;}
    .list__search-wrap.type2 > p.search-text {width: 100%; margin: 0 0 15px;}
}
@media only screen and (max-width:768px) {
    .list__search-wrap {flex-direction: column;}
    .list__search-wrap > p {order: 1; margin-top: 25px; font-size: 16px;}
    .list__search-wrap.type2 > p {order: 0;}
    .list__search-wrap > div + div {margin: 10px 0 0;}
    .search-select {width: 100%;}
    .search-select select {width: 100%; height: 40px;}
    .search-input {width: 100%; height: 40px;}
    .search-input input[type="text"] {font-size: 16px;}
    .search-date {width: 100%;}
    .search-date input[type="date"] {width: calc( (100% - 37px) / 2 ); height: 40px; font-size: 16px;}
}
@media only screen and (max-width:480px) {
    .search-date {text-align: center;}
    .search-date input[type="date"] {width: 100%;}
}

/* 게시판 리스트 */
.table-scroll {overflow-x: auto;}
.board-wrap {width: 100%; margin-top: 20px; border-top: 1px solid #222;}
.board-wrap thead tr {background: #f9f9f9;}
.board-wrap tr {border-bottom: 1px solid #dfdfdf;  overflow-wrap: break-word; white-space: normal;}
.board-wrap th {padding: 25px 0; font-family: 'NanumSquare'; font-weight: 700; font-size: 18px; line-height: 22px; color: #222; letter-spacing: -0.05em;}
.board-wrap td {padding: 25px 0; font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; line-height: 22px; color: #222; text-align: center; letter-spacing: -0.05em; vertical-align: middle;}
.board-wrap td.notice {color: #306bcb;}
.board-wrap td.title {padding: 25px 15px; text-align: left;}
.board-wrap td.title span {display: inline-block; overflow: hidden; max-width: 100%; text-overflow: ellipsis; white-space: nowrap; box-sizing: border-box;}
.board-wrap .secret td.title span {padding-left: 27px; background: url('../../../../images/egovframework/com/front/icon_secret.png') no-repeat center left;}
.board-wrap .new td.title span {max-width: calc(100% - 23px);}
.board-wrap .icon_new {vertical-align: bottom;}
.board-wrap td.study_state {font-weight: 700; color: #fc5e05;}
.board-wrap td.study_state.success {color: #306bcb;}

.board-wrap2 {width: 100%; margin-top: 20px; border-top: 1px solid #222;}
.board-wrap2 thead tr {background: #f9f9f9;}
.board-wrap2 tr {border-bottom: 1px solid #dfdfdf;}
.board-wrap2 th {padding: 25px 0; font-family: 'NanumSquare'; font-weight: 700; font-size: 18px; line-height: 22px; color: #222; letter-spacing: -0.05em;}
.board-wrap2 td {padding: 8px 0; font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; line-height: 22px; color: #222; text-align: center; letter-spacing: -0.05em; vertical-align: middle;}
.board-wrap2 td.notice {color: #306bcb;}
.board-wrap2 td.title {padding: 25px 15px; text-align: left;}
.board-wrap2 td.title span {display: inline-block; overflow: hidden; max-width: 100%; text-overflow: ellipsis; white-space: nowrap; box-sizing: border-box;}
.board-wrap2 .secret td.title span {padding-left: 27px; background: url('../../../../images/egovframework/com/front/icon_secret.png') no-repeat center left;}
.board-wrap2 .new td.title span {max-width: calc(100% - 23px);}
.board-wrap2 .icon_new {vertical-align: bottom;}
.board-wrap2 td.study_state {font-weight: 700; color: #fc5e05;}
.board-wrap2 td.study_state.success {color: #306bcb;}

.study__img-wrap {display: flex; align-items: center; justify-content: center; gap: 5px;}
.cancel_link {color: #999; text-decoration: underline;}
.progras-wrap {display: flex; align-items: center;}
.progras-wrap .progress {position: relative; width: calc(100% - 50px); height: 4px; border-radius: 0; background-color: #e1e1e1; box-shadow: none;}
.progras-wrap .progress-bar {background-color: #30b3af; height: 100%;}
.progras-wrap .progress-stripes {position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: repeating-linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 15%, white 15%, white 21%);}
.progras-wrap > span {display: inline-block; margin-left: 15px;}

.study__list-wrap .board-wrap td {padding: 25px 10px;}

@media only screen and (max-width:1150px) {
    .board-wrap th {padding: 20px;}
    .study__list-wrap .board-wrap td {padding: 20px 10px;}
}
@media only screen and (max-width:1024px) {
    
}
@media only screen and (max-width:768px) {
    .board-wrap {margin-top: 10px;}
    .board-wrap th {padding: 20px 0; font-size: 16px; line-height: 20px;}
    .board-wrap td {font-size: 16px; line-height: 20px;}
    .board-wrap td.title {padding: 20px 5px;}
}

/* 빈이미지 */
.emptyWrap {position:relative;}
.emptyWrap > p.text {position: absolute;top: 50%;transform: translate(0, -50%);left: 25px;z-index: 2;color: #fff;font-size: 20px;border: 1px solid rgba(255, 255, 255, .4);width: calc(100% - 50px);padding: 10px;box-sizing: border-box;line-height: 31px;}
.emptyWrap.-edu > p.text {top: 84px;height: 84px;transform: none;}
.emptyWrap.-offEdu > p.text {margin-top:0;font-size:40px;line-height: 48px;}
.emptyWrap.-detail {width:100%;height:100%;}
.emptyWrap.-detail > p.text {margin-top:0;font-size:40px;line-height: 48px;}
.emptyWrap.-detail >img {position: absolute;top: 0;left: 0;transform: none;width: 100%;height: 100%;object-fit: cover;}
.emptyWrap img {width:100%;}



/* 영상 레이어팝업으로 제작 */
.movieDom {width: 1200px;position: fixed;top: 30px;left: 53px;z-index: 1001;box-shadow:6px 6px 10px rgba(0,0,0,.3);}
.movieDom .study__popup-wrap {}
.movieDom .study__popup-wrap .content {position:relative;width:100%;height:0;padding-top:56.25%;}
.movieDom .study__popup-wrap .content video {position:absolute;width:100%;height:100%;top:0;left:0;}

/* 게시판 뷰 */
/* .board__view-wrap {margin-top: 20px;} */
.view__info-wrap > .title {font-family: 'SUIT'; font-weight: 600; font-size: 36px; color: #222; line-height: 46px;}
.view__info {display: flex; align-items: center; margin-top: 45px; padding-bottom: 25px; border-bottom: 1px solid #222;}
.view__info span {display: inline-block; font-family: 'SUIT'; font-weight: 600; font-size: 18px; color: #222;}
.view__info .tit {position: relative; margin-right: 19px; padding-right: 19px; color: #666;}
.view__info .tit:not(:first-child) {margin-left: 27px;}
.view__info .tit:after {content: ''; display: inline-block; position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 1px; height: 12px; background: #9d9d9d;}
.view__info .tit.like {padding-left: 30px; background: url('../../../../images/egovframework/com/front/icon_like.png') no-repeat left center;}
.view__info .tit.like.on {padding-left: 30px; background: url('../../../../images/egovframework/com/front/icon_like_on.png') no-repeat left center; background-size: 19px;}
.view__info .tit.like.on + span {color: #ff2563;}
.add__file-wrap {display: flex; border-bottom: 1px solid #cecece;}
.add__file-wrap.type2 {border-top: 1px solid #cecece;}
.add__file-wrap > div {padding: 30px; box-sizing: border-box;}
.add__file-wrap .title {display: flex; align-items: center; justify-content: center; width: 195px; background: #f9f9f9;}
.add__file-wrap .title span {display: inline-block; position: relative; padding-left: 60px; font-family: 'NanumSquare'; font-weight: 700; font-size: 18px; line-height: 22px; color: #222;}
.add__file-wrap .title span:before {content: ''; display: inline-block; position: absolute; top: -15px; left: 0; width: 52px; height: 51px; background: url('../../../../images/egovframework/com/front/icon_add_file_tit.png') no-repeat center;}
.add__file-wrap .add__file {display: flex; flex-direction: column; justify-content: center; width: calc(100% - 195px);}
.add__file-wrap .add__file a {display: block; font-family: 'SUIT'; font-weight: 500; font-size: 18px; color: #666; line-height: 22px; text-decoration: underline;}
.add__file-wrap .add__file a:not(:first-child) {margin-top: 10px;}
.board__view-wrap .view__content {padding: 45px 0 80px; font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #222; line-height: 28px;}
.notice__view-wrap .board__view-wrap .view__content{padding-bottom: 140px;}

.qna__comment-wrap {margin-top: 80px;}
.qna__comment-wrap .list__search-wrap > p {font-weight: 700;;}
.qna__comment {position: relative; margin-top: 10px; padding: 25px 30px 25px 0; border-top: 1px solid #222;}
.qna__comment.depth2 {margin-top: 0; padding: 30px 30px 25px 60px; border-top-color: #cecece; border-bottom: 1px solid #cecece; background: #f9f9f9 url('../../../../images/egovframework/com/front/sub/qna_comment.png') no-repeat top 22px left 20px;}
.qna__comment > p {font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #222; line-height: 22px; letter-spacing: -0.025em;}
.qna__comment > .title {margin-bottom: 25px;}
.qna__comment > .title > strong {display: inline-block; margin-right: 10px; font-weight: 700;}
.qna__comment.retouch {margin-top: 20px; border-top: none;}
.qna__comment.retouch textarea {height: 162px;}
.comment-util {position: absolute; top: 25px; right: 30px;}
.comment-util > a {display: inline-block; font-family: 'NanumSquare'; font-weight: bold; font-size: 18px; color: #222;}
.comment-util > a.other {color: #999;}
.comment-util > a:not(:first-child) {position: relative; margin-left: 60px;}
.comment-util > a:not(:first-child):before {content: ''; display: inline-block; position: absolute; top: 50%; left: -30px; transform: translateY(-50%); width: 1px; height: 12px; background: #9d9d9d;}

.qna__comment-form {display: flex; justify-content: center; gap: 10px; margin-top: 20px; padding-top: 10px; border-top: 1px solid #222;}
.qna__comment-form input[type="text"] {height: 60px;}
.qna__comment-form textarea{height: 65px;resize: none; overflow-y: auto;}
.qna__comment-form button{display: inline-flex; align-items: center; justify-content: center; width: 140px; height: 65px; border-radius: 5px; font-family: 'SUIT'; font-weight: 600; font-size: 20px; letter-spacing: -0.05em; box-sizing: border-box;border: 1px solid #35b7b3; background: #35b7b3; color: #fff;}
.commentCn{word-wrap: break-word;white-space: pre-wrap;overflow-wrap: break-word;max-width: 100%;}

.board__view-wrap .view__content b {font-weight: 800;}
.board__navi-wrap {margin-top: 160px; border-top: 1px solid #222;}
.notice__view-wrap .board__navi-wrap {margin-top: 0;}
.board__navi-wrap div {display: flex; align-items: center; padding: 27px 20px; border-bottom: 1px solid #222;}
.board__navi-wrap .title {display: inline-block; width: 80px; font-family: 'NanumSquare'; font-weight: 800; font-size: 16px; color: #222;}
.board__navi-wrap a {overflow: hidden; display: inline-block; max-width: calc(100% - 80px); font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #222; text-overflow: ellipsis; white-space: nowrap;}

@media only screen and (max-width:1150px) {

}
@media only screen and (max-width:1024px) {
    .view__info-wrap > .title {font-size: 28px; line-height: 34px;}
    .view__info {margin-top: 30px;}
    .board__navi-wrap {margin-top: 80px;}
}
@media only screen and (max-width:768px) {
    .view__info-wrap > .title {font-size: 18px; line-height: 24px;}
    .view__info {gap: 10px 0; flex-wrap: wrap; align-items: flex-start; margin-top: 20px; padding-bottom: 15px;}
    .view__info span {font-size: 14px; width: calc(100% - 70px); box-sizing: border-box;}
    .view__info .tit {width: 50px}
    .view__info .tit:not(:first-child) {margin-left: 0;}
    .view__info .tit.like {width: 70px; padding-left: 23px;}
    .view__info .tit.like {background-size: 14px;}
    .view__info .tit.like.on {background-size: 14px;}
    .view__info .tit.like + span {width: calc(100% - 90px);}
    .board__view-wrap .view__content {padding: 25px 0 40px; font-size: 16px; line-height: 22px;}
    .add__file-wrap {flex-wrap: wrap;}
    .add__file-wrap > div {padding: 15px;}
    .add__file-wrap .title {width: 100%;}
    .add__file-wrap .title span {padding-left: 40px; font-size: 16px; line-height: 20px;}
    .add__file-wrap .title span:before {top: -7px; width: 32px; height: 31px; background-size: 100%;}
    .add__file-wrap .add__file {width: 100%;}
    .add__file-wrap .add__file a {font-size: 14px; line-height: 20px;}

    .notice__view-wrap .board__view-wrap .view__content {padding-bottom: 70px;}

    .qna__comment-wrap {margin-top: 30px;}
    .qna__comment-form input[type="text"] {height: 40px; font-size: 14px;}
    .qna__comment-form button {width: 90px; height: 40px; font-size: 14px;}
    .qna__comment {padding: 15px 20px 15px 0;}
    .qna__comment.depth2 {padding: 15px 20px 15px 50px; background-size: 22px; background-position: top 7px left 15px;}
    .qna__comment.retouch {margin-top: 15px;}
    .qna__comment.retouch textarea {height: 135px;}
    .qna__comment > p {font-size: 14px;}
    .qna__comment > .title {margin-bottom: 15px; font-size: 16px;}
    .comment-util {top: 18px; right: 20px;}
    .comment-util > a {font-size: 14px;}
    .comment-util > a:not(:first-child) {margin-left: 20px;}
    .comment-util > a:not(:first-child):before {left: -12px; height: 7px;}

    .board__navi-wrap {margin-top: 50px;}
    .board__navi-wrap div {padding: 17px 15px;}
}
@media only screen and (max-width:480px) {
    .comment-util {position: static; margin-top: 15px; text-align: right;}

}

/* 갤러리형 게시판 리스트 */
.gallery-wrap {display: flex; flex-wrap: wrap; gap: 80px 15px; margin-top: 30px;}
.gallery-wrap .gallery {display: inline-block; width: calc( (100% - 45px) / 4 )}
.gallery-wrap .img-wrap {position: relative; overflow: hidden; aspect-ratio: 1 / 1; border: 1px solid #e1e1e1; border-radius: 10px; box-sizing: border-box;}
.gallery-wrap .img-wrap img {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; aspect-ratio: 386 / 258;}
.gallery-wrap .state {display: inline-block; margin-top: 20px; padding: 15px 19px; border-radius: 10px; background: #306bcb; font-family: 'NanumSquare'; font-weight: 700; font-size: 16px; color: #fff; letter-spacing: -0.01em;}
.gallery-wrap .gallery > .title {display: -webkit-box; word-wrap: break-word; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-overflow: ellipsis; overflow: hidden; margin: 15px 0 25px; font-family: 'NanumSquare'; font-weight: 700; font-size: 24px; color: #222; line-height: 32px; letter-spacing: -0.05em;}
.gallery-wrap.normal .gallery > .title {margin-bottom: 10px;}
.gallery-wrap .gallery > .info {font-family: 'NanumSquare'; font-weight: 700; font-size: 16px; color: #666; line-height: 22px; letter-spacing: -0.025em;}
.gallery-wrap .gallery > .info + .info {margin-top: 10px;}
.gallery-wrap .gallery > .info > span:first-child {display: inline-block;}
.gallery-wrap .gallery > .info > span:last-child:not(:first-child) {display: inline-block; position: relative; margin-left: 17px; padding-left: 34px;}
.gallery-wrap .gallery > .info > span:last-child:not(:first-child):before {content: ''; display: inline-block; position: absolute; top: 4px; left: 0; width: 1px; height: 14px; background: #e1e1e1;}
.gallery-wrap .gallery > .info > span.view {padding-left: 26px; background: url('../../../../images/egovframework/com/front/sub/icon_view.png') no-repeat top 4px left;}
.gallery-wrap .gallery > .info > span.like {padding-left: 36px; background: url('../../../../images/egovframework/com/front/sub/icon_like.png') no-repeat top 4px left 16px;}
.gallery-wrap .gallery > .info > span.comment {padding-left: 31px; background: url('../../../../images/egovframework/com/front/sub/icon_comments.png') no-repeat top 4px left 16px;}

@media only screen and (max-width:1310px) {
    .gallery-wrap .gallery > .info + .info {margin: 0;}
    .gallery-wrap .gallery > .info > span:last-child:not(:first-child) {display: block; margin-left: 0; padding: 0;}
    .gallery-wrap .gallery > .info > span:last-child:not(:first-child):before {display: none;}
    .gallery-wrap .gallery > .info > span.like {padding-left: 27px !important; background-position: top 4px left 3px;}
    .gallery-wrap .gallery > .info > span.comment {padding-left: 27px !important; background-position: top 4px left 3px;}
}
@media only screen and (max-width:1150px) {
    .gallery-wrap {gap: 40px 15px;}
    .gallery-wrap .img-wrap {width: 100%;}
}
@media only screen and (max-width:1024px) {
    .gallery-wrap .state {padding: 10px 15px;}
    .gallery-wrap .gallery > .title {margin: 15px 0; font-size: 20px; line-height: 26px;}
}
@media only screen and (max-width:768px) {
    .gallery-wrap {margin-top: 15px;}
    .gallery-wrap .gallery {width: calc( (100% - 15px) / 2 );}
    .gallery-wrap .state {font-size: 13px;}
    .gallery-wrap .gallery > .title {font-size: 18px; line-height: 22px;}
    .gallery-wrap .gallery > .info {font-size: 14px; line-height: 18px;}
}
@media only screen and (max-width:480px) {
    .gallery-wrap .gallery {width: 100%;}
}

/* 갤러리형 게시판 뷰 */
.gallery__view-wrap {border-top: 1px solid #222;}
.gallery__view-wrap .info-wrap {display: flex; gap: 30px; padding: 30px 20px; border-bottom: 1px solid #e1e1e1;}
.gallery__view-wrap .img-wrap {position: relative; overflow: hidden; width: 385px; height: 385px; border: 1px solid #e1e1e1; border-radius: 10px; box-sizing: border-box;}
.gallery__view-wrap .img-wrap img {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.gallery__view-wrap .info-inner {position: relative; width: calc(100% - 415px);}
.gallery__view-wrap .info-inner > .title {display: flex; align-items: flex-start; margin-top: 10px; font-family: 'NanumSquare'; font-weight: 700; font-size: 36px; line-height: 42px; color: #222; letter-spacing: -0.05em;}
.gallery__view-wrap .info-inner > .title > .state {display: inline-block; margin-right: 20px; padding: 15px 19px; border-radius: 10px; background: #306bcb; font-family: 'NanumSquare'; font-weight: 700; font-size: 16px; line-height: 17px; color: #fff; letter-spacing: -0.01em; vertical-align:  middle;}
.gallery__view-wrap .info-list {margin-top: 35px;}
.gallery__view-wrap .info-list li {display: flex; font-family: 'NanumSquare'; font-size: 18px; color: #222; line-height: 22px; letter-spacing: -0.025em;}
.gallery__view-wrap .info-list li:not(:first-child) {margin-top: 15px;}
.gallery__view-wrap .info-list li > .tit {width: 115px; font-weight: 700;}
.gallery__view-wrap .info-list li > .txt {width: calc(100% - 115px); font-weight: 400;}
.gallery__view-wrap .info-inner .btn_write {position: absolute; right: 0; bottom: 0;}
.gallery__view-wrap .view-wrap {margin-top: 80px;}
.gallery__view-wrap .view__title-wrap {display: flex; border-top: 1px solid #e1e1e1; border-right: 1px solid #e1e1e1;}
.gallery__view-wrap .view__title-wrap a {position: relative; width: 50%; padding: 28px; border-left: 1px solid #e1e1e1; font-family: 'NanumSquare'; font-weight: 700; font-size: 16px; color: #666; letter-spacing: -0.1em; text-align: center; box-sizing: border-box;}
.gallery__view-wrap .view__title-wrap a.active {background: #f9f9f9; color: #222;}
.gallery__view-wrap .view__title-wrap a.active:after {content: ''; display: inline-block; position: absolute; bottom: -1px; left: 0; width: 100%; height: 1px; background: #f9f9f9;}
.tab_conts .tab_panel {display:none;}
.tab_conts .tab_panel.active {display:block;}
.gallery__view-wrap .view-inner {padding: 78px; border: 1px solid #e1e1e1; background: #f9f9f9; font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #222; letter-spacing: -0.025em;}
.gallery__view-wrap .view-inner > .title {font-weight: 800; font-size: 24px; color: #222;}
.gallery__view-wrap .view-inner > .sub_title {margin-top: 25px; font-weight: 700; color: #306bcb;;}
.gallery__view-wrap .view-inner > .bullet-list {margin-top: 10px;}
.gallery__view-wrap .view-inner > .bullet-list li {line-height: 36px;}
.gallery__view-wrap .view-inner img {width: 100%; height: auto;}

@media only screen and (max-width:1150px) {
    .gallery__view-wrap .info-wrap {flex-direction: column;}
    .gallery__view-wrap .img-wrap {margin: 0 auto;}
    .gallery__view-wrap .info-inner {width: 100%;}
}
@media only screen and (max-width:1024px) {
    .gallery__view-wrap .info-inner > .title {font-size: 26px; line-height: 32px;}
    .gallery__view-wrap .info-inner > .title > .state {padding: 10px 15px;}
    .gallery__view-wrap .info-list li > .tit {width: 110px;}
    .gallery__view-wrap .btn_write {width: 100%; height: 45px; font-size: 18px;}
    .gallery__view-wrap .view__title-wrap a {padding: 20px;}
    .gallery__view-wrap .view-inner {padding: 45px;}
    .gallery__view-wrap .view-wrap {margin-top: 50px;}
}
@media only screen and (max-width:768px) {
    .gallery__view-wrap .info-wrap {padding: 15px 10px;}
    .gallery__view-wrap .img-wrap {width: 100%; height: auto; aspect-ratio: 1 / 1;}
    .gallery__view-wrap .info-inner > .title {flex-direction: column; font-size: 22px; line-height: 26px;}
    .gallery__view-wrap .info-inner > .title > .state {margin: 0 0 15px; font-size: 13px;}
    .gallery__view-wrap .info-list li {font-size: 16px; line-height: 20px;}
    .gallery__view-wrap .info-list li > .tit {width: 80px;}
    .gallery__view-wrap .info-list li > .txt {width: calc(100% - 80px);}
    .gallery__view-wrap .view-wrap {margin-top: 25px;}
    .gallery__view-wrap .view__title-wrap a {padding: 15px; font-size: 16px;}
    .gallery__view-wrap .view-inner {padding: 25px; font-size: 16px;}
    .gallery__view-wrap .view-inner > .title {font-size: 22px;}
    .gallery__view-wrap .view-inner > .sub_title {margin-top: 15px;}
    .gallery__view-wrap .view-inner > .bullet-list li {line-height: 26px;}
}

/* paging */
.paging-wrap {margin-top: 50px; text-align: center; font-size: 0;}
.paging-wrap > li {display: inline-block;}
.paging-wrap > li > a {display: inline-flex; align-items: center; justify-content: center; width: 45px; height: 45px; font-family: 'SUIT'; font-weight: 500; font-size: 16px; color: #666; letter-spacing: -0.05em;}
.paging-wrap > li > a.on, .paging-wrap > li > a:not(.btn-paging):hover {background: #222; font-family: 'NanumSquare'; font-weight: 700; color: #fff;}
.paging-wrap > li > a.btn-paging {border: 1px solid #dedede; box-sizing: border-box;}
.paging-wrap > li > a.prev {margin-left: 5px; margin-right: 15px;}
.paging-wrap > li > a.next {margin-left: 15px; margin-right: 5px;}

/* 공통 */
.vat{vertical-align: top;}
.vat-t{vertical-align: text-top;}
.vam{vertical-align: middle;}
.dis-i-flex{display: inline-flex;}
.dis-flex{display: flex;}
.dis-flex-center{display: flex; justify-content: center; align-items: center;}
.dis-none{display: none;}
.dis-block{display: block;}
.input-small{width: 135px !important;}
.input-short{width: 30% !important;}
.input-half{width: 50% !important;}
.input-middle{width: 60% !important;}
.input-long{width: 90% !important;}
.min-w60{min-width: 60% !important;}
.w500{width: 500px;}
.tal{text-align: left !important;}
.tac{text-align: center !important;}
.tar{text-align: right !important;}
.wP100{width: 100% !important;}
.t_strong{font-weight:bold;}
.relative {position:relative;}
.dashboard-list-checkbox{
    padding: 0 !important;
}
.dashboard-list-checkbox>input{
    width: 1.1rem;
    height: 1.1rem;
}
/* quiz */
.quiz-wrap {max-width: 1225px; width: 100%; margin: 0 auto;}

.quiz__table-wrap {display:none;position: relative; font-family: 'SUIT'; font-weight: 700; font-size: 28px; color: #222;height:310px;overflow-y:auto;}
.quiz__table-wrap._on {display:block;}
.quiz__table-wrap.-preview {height:450px;}
.quiz__table-wrap.-nopage {height:auto;}
.quiz__table-wrap.correct:before {content: ''; display: inline-block; position: absolute; top: -50px; left: -40px; width: 207px; height: 179px; background: url('../../../../images/egovframework/com/front/quiz_o.png') no-repeat center;}
.quiz__table-wrap.error:before {content: ''; display: inline-block; position: absolute; top: -40px; left: -30px; width: 175px; height: 151px; background: url('../../../../images/egovframework/com/front/quiz_x.png') no-repeat center;}
.quiz__table-wrap + .quiz__table-wrap {}
.quiz__table-wrap table {width: 100%; border-top: 1px solid #222;}
.quiz__table-wrap tr {border-bottom: 1px solid #ddd;}
.quiz__table-wrap th {padding: 21px 18px; background: #f4f4f4; vertical-align: top;}
.quiz__table-wrap tr.title th {vertical-align: middle;}
.quiz__table-wrap th b {font-size: 16px; color: #ff7b2a;}
.quiz__table-wrap td {padding: 40px 30px; background: #fff; box-sizing: border-box;}
/*.quiz__table-wrap td .scroll-wrap {overflow-y: auto; max-height: 284px;}*/
.quiz__table-wrap .img-wrap {margin-top: 30px;}
.quiz__table-wrap img {max-width: 100%;} 
.quiz__table-wrap .checkbox-wrap {margin-top: 0;display:flex;align-items:center;height:40px;justify-content:space-between;}
.quiz__table-wrap .checkbox-wrap + .checkbox-wrap {margin-top: 25px;}
.quiz__table-wrap .checkbox-wrap label > span {font-size: 26px; color: #222;}
.quiz__table-wrap .radio__list li + li {margin: 33px 0 0;}
.quiz__table-wrap .radio-wrap span {font-weight: 700; font-size: 26px; color: #222;}
.quiz__table-wrap textarea,
.quiz__table-wrap input[type="text"],
.quiz__table-wrap input[type="password"] {
    font-family: 'SUIT';
    font-weight: 700;
    font-size: 26px;
    color: #222;
}

.quiz__table-wrap input[type="text"].toggleInpText {display:none;width:65%;}
.quiz__table-wrap input[type="text"].toggleInpText._on {display:block;}
.quiz__table-wrap textarea::placeholder,
.quiz__table-wrap input[type="text"]::placeholder,
.quiz__table-wrap input[type="password"]::placeholder {
    font-family: 'SUIT';
    font-weight: 700;
    font-size: 26px;
    color: #999;
}

.quiz__table-wrap.result-type {}
.quiz__table-wrap.result-type th {}
.quiz__table-wrap.result-type td {padding: 30px 30px; font-weight: 500; line-height: 50px; text-align: center; vertical-align: middle;}

.quiz-util {display: flex; align-items: center;flex-wrap:wrap; justify-content: center; width: 100%; margin-top: 60px;}
.quiz-util .navi-wrap {display: flex; align-items: center; justify-content: center; width: calc(100% - 140px); box-sizing: border-box;}
.quiz-util .navi-wrap a {}
.quiz-util .navi-wrap p {margin: 0 30px; font-family: 'SUIT'; font-weight: 900; font-size: 26px; color: #000; line-height: 26px;}
.quiz-util .navi-wrap strong {color: #30b3af;}
.quiz-util .navi-wrap span {display: inline-block; position: relative; margin-left: 42px;}
.quiz-util .navi-wrap span:before {content: '/'; position: absolute; top: 50%; left: -25px; transform: translateY(-50%); font-weight: 500; font-size: 30px; color: #ddd;}
.btn-quiz {display: inline-flex; align-items: center; justify-content: center; width: 140px; height: 60px; border-radius: 5px; background: #35b7b3; font-family: 'NanumSquare'; font-weight: 700; font-size: 20px; color: #fff; letter-spacing: -0.05em;}

@media only screen and (max-width:768px) {
    .quiz__table-wrap .checkbox-wrap label > span {font-size: 18px;}
    .quiz__table-wrap .radio__list li + li {margin-top: 15px;}
    .quiz__table-wrap .checkbox-wrap + .checkbox-wrap {margin-top: 15px;}
    .quiz__table-wrap .radio-wrap span {font-size: 18px;}
    .quiz__table-wrap textarea,
    .quiz__table-wrap input[type="text"],
    .quiz__table-wrap input[type="password"] {font-size: 18px;}
    .quiz__table-wrap textarea::placeholder,
    .quiz__table-wrap input[type="text"]::placeholder,
    .quiz__table-wrap input[type="password"]::placeholder {font-size: 18px;}
    .quiz__table-wrap textarea {height: 150px !important;}

    .quiz-util {display: block; margin-top: 20px;}
    .quiz-util .navi-wrap {width: 100%; padding-left: 0; text-align: center;}
    .quiz-util .navi-wrap p {margin: 0 15px; font-size: 22px;}
    .quiz-util .navi-wrap span {margin-left: 22px;}
    .quiz-util .navi-wrap span:before {left: -14px; font-size: 20px;}
    .btn-quiz {width: 100%; height: 40px; margin-top: 20px; font-size: 18px;}
}

.editor div{height:400px;}
.brdInsertBtn{float:right; margin-top:10px;}

/* root */
:root {
	--height-top:55px;
	--height-topmenu:135px;
	
	--comp-topmenu:calc(var(--height-top) + var(--height-topmenu));
	
}

/* common */
body {letter-spacing: -0.025em;}
.inner {max-width: 1600px; margin: 0 auto;}
img {max-width: 100%;}

/* top button */
a#top_btn {display: none; position: fixed; right: 50px; bottom: 40px; width: 56px; z-index: 999; text-align: center;}
a#top_btn img {width: 100%; height:100%;}
a#top_btn span {font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; line-height: 60px; color: #d2d2d2; letter-spacing: -0.025em;}

@media only screen and (max-width:768px) {
	a#top_btn{right: 20px; bottom: 20px; width:40px;}
	a#top_btn span {font-size: 14px; line-height: 35px;}
}

/* header */
header {position: fixed; top: 0; left: 0; width: 100%; background-color: #fff; box-shadow: 0 0 20px rgba(0,0,0,.1); border-bottom: 1px solid #bbc7d3; transition: background .15s; z-index: 999;}
/* body.scrolling #header {position: fixed; top: 0; left: 0; width: 100%; background-color: #fff; box-shadow: 0 0 20px rgba(0,0,0,.1); border-bottom: 1px solid #bbc7d3; transition: background .15s; z-index: 999;} */
header .top {background: linear-gradient(to right, #45bcb9, #356fc3);}
header .top .inner {display: flex; align-items: center; justify-content: space-between; height: 55px;}
header .top .inner > div {display: flex;align-items: center;justify-content: flex-end;width: 100%;}
header .top .inner > div.link-wrap {display:none;}
header .top a {display: inline-block; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #fff;}
header .top a:not(:first-child) {margin-left: 12px; padding-left: 12px; border-left: 1px solid #fff;}
header .top .bookmark {padding-left: 27px; background: url('../../../../images/egovframework/com/front/icon_bookmark.png') no-repeat center left;}
header .top .member-info {display: inline-block; padding-left: 22px; background: url('../../../../images/egovframework/com/front/icon_member.png') no-repeat center left; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #fff;}

.header-wrap {background: #fff;}
.header-wrap .inner{display: flex; align-items: center; height: 135px;justify-content:space-between;}
.header-wrap .header__menu-list {display: inline-flex; align-items: center; margin-left: 95px;}
.header-wrap .header__menu-list li:not(:first-child) {position: relative; margin-left: 25px; padding-left: 25px;}
.header-wrap .header__menu-list li:not(:first-child):before {content: ''; display: inline-block; position: absolute; top: 48%; left: -3px; transform: translateY(-50%); width: 9px; height: 8px; background: url('../../../../images/egovframework/com/front/icon_header_menu.png') no-repeat center;}
.header-wrap .header__menu-list a {font-family: 'NanumSquare'; font-weight: 700; font-size: 20px; color: #222;}
.header-wrap .hunet {display: inline-flex; position: relative; align-items: center; width: 161px; height: 36px; margin-left: 64px; border-radius: 30px; background: linear-gradient(to right, #45bcb9, #356fc3); font-family: 'NanumSquare'; font-weight: 400; font-size: 14px; color: #fff; letter-spacing: -0.05em; box-shadow: 2px 0px 10px 9px rgba(54, 111, 204, 0.1);}
.header-wrap .hunet:after {content: ''; display: inline-block; position: absolute; top: 12px; right: 8px; width: 7px; height: 11px; background: url('../../../../images/egovframework/com/front/icon_next_7.png') no-repeat;}
.header-wrap .hunet span {display: inline-block; position: relative; padding-left: 35px; line-height: 23px;}
.header-wrap .hunet span:before {content: ''; display: inline-block; position: absolute; top: 50%; left: 4px; transform: translateY(-50%); width: 29px; height: 29px; background: url('../../../../images/egovframework/com/front/icon_hunet.png') no-repeat center;}
.header-wrap .total__menu-open {display: inline-block; margin-left: auto; padding-right: 38px; background: url('../../../../images/egovframework/com/front/icon_total_menu.png') no-repeat center right; font-family: 'NanumSquare'; font-weight: 700; font-size: 18px; color: #306bcb;}

/* 함께하는 기관 */
.family__slide-wrap {padding: 60px 0; border-top: 1px solid #f4f4f4;}
.family__slide-wrap .inner {display: flex; align-items: center;}
.family__slide-wrap .title {font-family: 'NanumSquare'; font-weight: 700; font-size: 24px; color: #222;}
.family__slide-inner {overflow: hidden; display: inline-flex; align-items: center; width: calc(100% - 390px); margin-left: 100px;}
.family__slide-util {display: flex; align-items: center; margin-left: 45px;}
.family__slide-util a {display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 28px;}
.family__slide-util .family__slide-next {border-left: 1px solid #dfdfdf;}
.family__slide-inner .swiper-wrapper {align-items: center;}
.family__slide-inner a {display: inline-block; width: 100%; height: 100%; text-align: center;}
.family__slide-inner img {text-align: center; vertical-align: middle;}

/* footer */
footer {font-size: 0;}
footer .top {background: #262626;}
footer .top .inner {display: flex; align-items: center; justify-content: space-between; height: 72px;}
footer .link-wrap a {font-size: 16px; color: #d2d2d2; letter-spacing: -0.05em;}
footer .link-wrap a:not(:first-child) {margin-left: 65px;}
footer .family-wrap a {display: inline-flex; position: relative; align-items: center; width: 250px; height: 72px; padding: 0 40px; background: #151515; font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #d2d2d2; box-sizing: border-box;}
footer .family-wrap a:after {content: ''; display: inline-block; position: absolute; top: 50%; right: 40px; transform: translateY(-50%); width: 15px; height: 15px; background: url('../../../../images/egovframework/com/front/icon_footer_plus.png') no-repeat center;}
footer .family-wrap a:not(:first-child) {border-left: 1px solid #626262;}
footer .bottom {padding: 35px 0 40px;}
footer .bottom p {font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #666; line-height: 26px;}
footer .bottom p b {font-weight: 700;}
footer .copyright {margin-top: 20px; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #999;}

/* btn */
.btn-wrap {position: relative; margin-top: 30px;}
.btn-wrap.right {text-align: right;}
.btn-wrap.center {text-align: center;}
.btn-wrap.center.insert-view-wrap {text-align: center;margin-top: 60px;}
.btn {display: inline-flex; align-items: center; justify-content: center; width: 140px; height: 60px; border-radius: 5px; font-family: 'SUIT'; font-weight: 600; font-size: 20px; letter-spacing: -0.05em; box-sizing: border-box;}
.btn.big {width: 176px; height: 52px;}
.btn.absolute_left {position: absolute; top: 0; left: 0;}
.btn.absolute_right {position: absolute; top: 0; right: 0; z-index:1}
.btn.type1 {border: 1px solid #35b7b3; color: #35b7b3;}
.btn.type2 {border: 1px solid #35b7b3; background: #35b7b3; color: #fff;}
.btn.type3 {border: 1px solid #222; color: #222;}
.btn.type4 {border: 1px solid #999; color: #999;}
.btn.type5 {border: 1px solid #35b7b3; height: 52px; background: #35b7b3; color: #fff;}
.btn + .btn {margin-left: 10px;}
.btn-list {background: #222; color: #fff;}
.btn_login {display: inline-flex; align-items: center; justify-content: center; width: 100%; height: 70px; background: linear-gradient(-25deg, #3570c3, #35b7b3); font-weight: bold; font-size: 22px; color: #fff; box-sizing: border-box;}
.btn_address {display: inline-flex; align-items: center; justify-content: center; width: 149px; height: 45px; border: 1px solid #bebebe; background: #fff; border-radius: 5px; font-size: 16px; color: #666; letter-spacing: -0.05em; box-sizing: border-box;}
.btn_write {display: inline-flex; align-items: center; justify-content: center; width: 198px; height: 60px; border-radius: 5px; background: #30b3af; font-weight: 700; font-size: 20px; color: #fff; letter-spacing: -0.025em;}
.btn_write span {display: inline-block; padding-left: 30px; background: url('../../../../images/egovframework/com/front/sub/icon_btn_write_w.png') no-repeat center left;}
.btn_upload {width: 109px; height: 52px; background: #666; font-size: 14px; color: #fff; cursor: pointer;}
.btn_upload span {display: inline-block; padding-left: 26px; background: url('../../../../images/egovframework/com/front/sub/icon_btn_upload.png') no-repeat center left;}
.btn-map {display: inline-flex; align-items: center; justify-content: center; width: 329px; height: 60px; margin-top: 28px; border: 1px solid #e1e1e1; background: url('../../../../images/egovframework/com/front/sub/btn_map.png') no-repeat center right 28px; font-family: 'NanumSquare'; font-weight: 700; font-size: 20px; color: #666; box-sizing: border-box;}
 
/* input */
textarea,
input[type="text"],
input[type="number"],
input[type="password"] {width: 100%; height: 45px; padding: 0 20px; border: 1px solid #bebebe; border-radius: 5px; background: #fff; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #222; box-sizing: border-box;}
textarea {width: 100% !important; padding: 20px;}
textarea::placeholder,
input[type="text"]::placeholder,
input[type="password"]::placeholder {font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #666;}
input[type="date"] {width: 100%; height: 52px; padding: 0 20px; border: 1px solid #bebebe; border-radius: 5px; background: #fff; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #222; box-sizing: border-box;}
input[type="datetime-local"] {width: 100%; padding: 0 20px; border: 1px solid #bebebe; border-radius: 5px; background: #fff; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #222; box-sizing: border-box;}
textarea {width: 100% !important; padding: 20px;}
input[type="date"]::placeholder {font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #666;}
input[type="text"]:disabled {background:#f5f5f5;}

.inputWrap {display:flex;gap:10px;}
.inputWrap .researchText {width:100%;}
.inputWrap select {width:fit-content;max-width: calc((50% - 96px) - 20px);} /*50% - TH넓이 - padding 넓이*/

.researchInfoRadio {display:flex;justify-content:flex-start;gap:20px;width:790px;}
.researchInfoUnder {display:flex;justify-content:flex-start;gap:20px;flex-wrap:wrap;}
.researchInfoUnder .researchDetail {width:100%;display:flex;gap:10px;}
.researchInfoUnder .researchDetail > input,
.researchInfoUnder .researchDetail > select,
.researchInfoUnder .researchDetail > button {margin-top:20px;}

select {width: 100%; height: 45px; padding: 0 20px 0 20px; border: 1px solid #bebebe; border-radius: 5px; background: #fff url('../../../../images/egovframework/com/front/icon_select.png') no-repeat center right 20px; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #666; box-sizing: border-box;}
.input_info {margin-top: 12px; font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #666; line-height: 20px; letter-spacing: -0.05em;}

.checkbox-wrap {position: relative; margin-top: 30px; text-align: left; font-size: 0;}
.checkbox-wrap label > input {position: absolute; top: -6px; left: -3px; width: 26px; height: 26px; appearance: none;}
.checkbox-wrap label > span {display: inline-block; position: relative; padding-left: 39px; font-size: 18px; color: #666;}
.checkbox-wrap label > span:before {content: ''; display: inline-block; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 26px; height: 26px; border: 1px solid #cecece; border-radius: 4px; background: #fff;}
.checkbox-wrap label > input:checked + span:before {border: none; background: #35b7b3 url('../../../../images/egovframework/com/sub/checked.png') no-repeat center;}

.checkbox-wrap.login-button-bottom-contents {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.radio-wrap {font-family: 'NanumSquare'; font-weight: 400; font-size: 1rem; color: #222; letter-spacing: -0.05em;}
.radio-wrap + .radio-wrap {margin-left: 25px;}
.radio-wrap input[type="radio"] {position: relative; width: 1.1rem; height: 1.1rem; margin: 0; border: 1px solid #dbdbdb; border-radius: 100%; vertical-align: middle; appearance: none;}
.radio-wrap input[type="radio"]:before {content: ''; display: inline-block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 0.5rem; height: 0.5rem; border-radius: 100%; background: #dbdbdb;}
.radio-wrap input[type="radio"]:checked {border: 1px solid #35b7b3;}
.radio-wrap input[type="radio"]:checked:before {background: #35b7b3;}
.radio-wrap input[type="radio"]:focus-visible {outline: max(2px, 0.1em) dotted #000; outline-offset: max(2px, 0.1em); }
.radio-wrap span {display: inline-block; margin-left: 10px; vertical-align: middle;}
.radio-wrap input[type="radio"]:hover + span {cursor: pointer;}


.radio-wrap input[type="checkbox"] {position: relative; width: 1.1rem; height: 1.1rem; margin: 0; border: 1px solid #dbdbdb; border-radius: 5px; vertical-align: middle; appearance: none;}
.radio-wrap input[type="checkbox"]:before {content: ''; display: inline-block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 0.55rem; height: 0.55rem; border-radius: 2px; background: #dbdbdb;}
.radio-wrap input[type="checkbox"]:checked {border: 1px solid #35b7b3;}
.radio-wrap input[type="checkbox"]:checked:before {background: #35b7b3;}
.radio-wrap input[type="checkbox"]:focus-visible {outline: max(2px, 0.1em) dotted #000; outline-offset: max(2px, 0.1em); }

.radio-wrap input[type="checkbox"]:hover + span {cursor: pointer;}

.file-wrap {font-size: 0;}
.file-wrap input[type="file"] {position: absolute; width: 0; height: 0; padding: 0; overflow: hidden; border: 0;}
.file-wrap .upload-name {display: inline-block; width: 360px; height: 52px; margin-right: 10px; padding: 12px 20px; border: 1px solid #bebebe; border-radius: 5px; font-size: 16px; color: #999; letter-spacing: -0.05em; box-sizing: border-box;}
.files-info {display: inline-block; margin-left: 20px; font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #666; letter-spacing: -0.05em; vertical-align: middle;}

/* 리스트 검색 공통 */
.list__search-wrap {display: flex; align-items: flex-end; justify-content: flex-end;}
.list__search-wrap > p {margin-right: auto; font-family: 'NanumSquare'; font-weight: 400; font-size: 24px; color: #666; letter-spacing: -0.05em;}
.list__search-wrap > p > b {font-weight: 700; color: #35b7b3;}
.list__search-wrap > p.search-text {font-size: 16px; line-height: 24px;}
.list__search-wrap > p.search-text > b {color: #fc5e05;}
.list__search-wrap > div + div {margin-left: 10px;}

.list__dashboard-top-wrap {display: flex; align-items: center; justify-content: space-between;}

.search-select select {width: 200px; height: 52px; padding: 0 24px; border: 1px solid #dfdfdf; border-radius: 30px; background: url('../../../../images/egovframework/com/front/icon_select.png') no-repeat center right 24px; font-family: 'SUIT'; font-weight: 600; font-size: 18px; color: #999; letter-spacing: -0.05em; box-sizing: border-box;}
.search-input {display: inline-flex; align-items: center; width: 348px; height: 52px; padding: 0 24px; border: 1px solid #dfdfdf; border-radius: 30px; box-sizing: border-box; justify-content: space-between;}
.search-input input[type="text"] {width: calc(100% - 19px); height: auto; padding: 0; border: none; border-radius: 0; background: none; font-family: 'SUIT'; font-weight: 600; font-size: 18px; color: #999; letter-spacing: -0.05em;}
.search-input button {display: inline-flex; align-items: center;}
.search-date {}
.search-date > span {display: inline-block; margin: 0 10px;}
.search-date input[type="date"] {position: relative; width: 200px; height: 52px; padding: 0 24px; border: 1px solid #dfdfdf; border-radius: 30px; background: url('../../../../images/egovframework/com/front/sub/icon_date.png') no-repeat center right 24px; font-family: 'SUIT'; font-weight: 600; font-size: 18px; color: #999; letter-spacing: -0.05em; box-sizing: border-box;}
.search-date input[type="date"]::-webkit-calendar-picker-indicator,
.search-date input[type="date"]::-webkit-inner-spin-button {
    position: absolute; top: 50%; right: 24px; transform: translateY(-50%); width: 20px; height: 19px; background: transparent; color: transparent; cursor: pointer;
}

/* 게시판 리스트 */
.board-wrap {width: 100%; margin-top: 20px; border-top: 1px solid #222;}
.board-wrap thead tr {background: #f9f9f9;}
.board-wrap tr {border-bottom: 1px solid #dfdfdf;}
.board-wrap th {padding: 25px 0; font-family: 'NanumSquare'; font-weight: 700; font-size: 1rem; line-height: 22px; color: #222; letter-spacing: -0.05em;}
.board-wrap td {padding: 25px 0; font-family: 'NanumSquare'; font-weight: 400; font-size: 1rem; line-height: 22px; color: #222; text-align: center; letter-spacing: -0.05em; vertical-align: middle;}
.board-wrap td.notice {color: #306bcb;}
.board-wrap td.title {padding: 25px 15px; text-align: left;}
.board-wrap td.title span {display: inline-block; overflow: hidden; max-width: 100%; text-overflow: ellipsis; white-space: nowrap; box-sizing: border-box;}
.board-wrap .secret td.title span {padding-left: 27px; background: url('../../../../images/egovframework/com/front/icon_secret.png') no-repeat center left;}
.board-wrap .new td.title span {max-width: calc(100% - 23px);}
.board-wrap .icon_new {vertical-align: bottom;}
.board-wrap td.study_state {font-weight: 700; color: #fc5e05;}
.board-wrap td.study_state.success {color: #306bcb;}

.study__img-wrap {display: flex; align-items: center; justify-content: center; gap: 5px;}
.cancel_link {color: #999; text-decoration: underline;}
.progras-wrap {display: flex; align-items: center;}
.progras-wrap .progress {position: relative; width: calc(100% - 50px); height: 4px; border-radius: 0; background-color: #e1e1e1; box-shadow: none;}
.progras-wrap .progress-bar {background-color: #30b3af; height: 100%;}
.progras-wrap .progress-stripes {position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: repeating-linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 15%, white 15%, white 21%);}
.progras-wrap > span {display: inline-block; margin-left: 15px;}

.study__list-wrap .board-wrap td {padding: 25px 10px;}


.team-manage-btn-td {
    padding: 0;
}

.team-manage-btn, .team-manage-btn{
    height: 100%;
    font-size: 1rem;
    padding: 0.5rem;
}

/* 모달 스타일 */
.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 9999;
}

.modal-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 8px;
    width: 90%;
    max-width: 900px;
    max-height: 80vh;
    overflow-y: auto;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.modal-header {
    padding: 20px;
    border-bottom: 1px solid #eee;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal-header h3 {
    margin: 0;
    font-size: 2.2rem;
    font-weight: 400;
}

.modal-close-btn {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1.8rem;
    color: #999;
}

.modal-close-btn:hover {
    color: #333;
}

.modal-body {
    padding: 20px;
}

.modal-footer {
    padding: 20px;
    border-top: 1px solid #eee;
    text-align: right;
}

.modal-body .btn {
    font-size: 1rem;
    padding: 8px 16px;
    width: 60%;
    height: 100%;
}

.modal-footer .btn {
    font-size: 1rem;
    padding: 8px 16px;
    width: 20%;
    height: 100%;
}

.status-approved {
    color: #28a745;
    font-weight: bold;
}

.status-pending {
    color: #ffc107;
    font-weight: bold;
}


/* 게시판 뷰 */
.board__view-wrap {margin-top: 20px;}
.view__info-wrap > .title {font-family: 'SUIT'; font-weight: 600; font-size: 36px; color: #222; line-height: 46px;}
.view__info {display: flex; align-items: center; margin-top: 45px; padding-bottom: 25px; border-bottom: 1px solid #222;}
.view__info span {display: inline-block; font-family: 'SUIT'; font-weight: 600; font-size: 18px; color: #222;}
.view__info .tit {position: relative; margin-right: 19px; padding-right: 19px; color: #666;}
.view__info .tit:not(:first-child) {margin-left: 27px;}
.view__info .tit:after {content: ''; display: inline-block; position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 1px; height: 12px; background: #9d9d9d;}
.view__info .tit.like {padding-left: 30px; background: url('../../../../images/egovframework/com/front/icon_like.png') no-repeat left center;}
.view__info .tit.like.on {padding-left: 30px; background: url('../../../../images/egovframework/com/front/icon_like_on.png') no-repeat left center;}
.view__info .tit.like.on + span {color: #ff2563;}
.add__file-wrap {display: flex; border-bottom: 1px solid #cecece;}
.add__file-wrap.type2 {border-top: 1px solid #cecece;}
.add__file-wrap > div {padding: 30px; box-sizing: border-box;}
.add__file-wrap .title {display: flex; align-items: center; justify-content: center; width: 195px; background: #f9f9f9;}
.add__file-wrap .title span {display: inline-block; position: relative; padding-left: 60px; font-family: 'NanumSquare'; font-weight: 700; font-size: 18px; line-height: 22px; color: #222;}
.add__file-wrap .title span:before {content: ''; display: inline-block; position: absolute; top: -15px; left: 0; width: 52px; height: 51px; background: url('../../../../images/egovframework/com/front/icon_add_file_tit.png') no-repeat center;}
.add__file-wrap .add__file {display: flex; flex-direction: column; justify-content: center; width: calc(100% - 195px);}
.add__file-wrap .add__file a {display: block; font-family: 'SUIT'; font-weight: 500; font-size: 18px; color: #666; line-height: 22px; text-decoration: underline;}

.add__file-wrap .add__file a:not(:first-child) {margin-top: 10px;}
.board__view-wrap .view__content {padding: 45px 0 80px; font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #222; line-height: 28px;}
.notice__view-wrap .board__view-wrap .view__content{padding-bottom: 140px;}

.qna__comment-wrap {margin-top: 80px;}
.qna__comment-wrap .list__search-wrap > p {font-weight: 700;;}
.qna__comment {position: relative; margin-top: 10px; padding: 25px 30px 25px 0; border-top: 1px solid #222;}
.qna__comment.depth2 {margin-top: 0; padding: 30px 30px 25px 60px; border-top-color: #cecece; border-bottom: 1px solid #cecece; background: #f9f9f9 url('../../../../images/egovframework/com/front/sub/qna_comment.png') no-repeat top 22px left 20px;}
.qna__comment > p {font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #222; line-height: 22px; letter-spacing: -0.025em;}
.qna__comment > .title {margin-bottom: 25px;}
.qna__comment > .title > strong {display: inline-block; margin-right: 10px; font-weight: 700;}
.qna__comment.retouch {margin-top: 20px; border-top: none;}
.qna__comment.retouch textarea {height: 162px;}
.comment-util {position: absolute; top: 25px; right: 30px;}
.comment-util > a {display: inline-block; font-family: 'NanumSquare'; font-weight: bold; font-size: 18px; color: #222;}
.comment-util > a.other {color: #999;}
.comment-util > a:not(:first-child) {position: relative; margin-left: 60px;}
.comment-util > a:not(:first-child):before {content: ''; display: inline-block; position: absolute; top: 50%; left: -30px; transform: translateY(-50%); width: 1px; height: 12px; background: #9d9d9d;}

.qna__comment-form {display: flex; justify-content: center; gap: 10px; margin-top: 20px; padding-top: 10px; border-top: 1px solid #222;}
.qna__comment-form input[type="text"] {height: 60px;}
.qna__comment-form textarea{height: 65px;resize: none; overflow-y: auto;}
.qna__comment-form button{display: inline-flex; align-items: center; justify-content: center; width: 140px; height: 65px; border-radius: 5px; font-family: 'SUIT'; font-weight: 600; font-size: 20px; letter-spacing: -0.05em; box-sizing: border-box;border: 1px solid #35b7b3; background: #35b7b3; color: #fff;}
.commentCn{word-wrap: break-word;white-space: pre-wrap;overflow-wrap: break-word;max-width: 100%;}

.board__view-wrap .view__content b {font-weight: 800;}
.board__navi-wrap {margin-top: 160px; border-top: 1px solid #222;}
.notice__view-wrap .board__navi-wrap {margin-top: 0;}
.board__navi-wrap div {display: flex; align-items: center; padding: 27px 20px; border-bottom: 1px solid #222;}
.board__navi-wrap .title {display: inline-block; width: 80px; font-family: 'NanumSquare'; font-weight: 800; font-size: 16px; color: #222;}
.board__navi-wrap a {overflow: hidden; display: inline-block; max-width: calc(100% - 80px); font-family: 'NanumSquare'; font-weight: 400; font-size: 16px; color: #222; text-overflow: ellipsis; white-space: nowrap;}

/* 갤러리형 게시판 리스트 */
.gallery-wrap {display: flex; flex-wrap: wrap; gap: 80px 15px; margin-top: 30px;}
.gallery-wrap .gallery {display: inline-block; width: calc( (100% - 45px) / 4 )}
.gallery-wrap .img-wrap {position: relative; overflow: hidden; height: 385px; border: 1px solid #e1e1e1; border-radius: 10px; box-sizing: border-box;}
.gallery-wrap .img-wrap img {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.gallery-wrap .state {display: inline-block; margin-top: 20px; padding: 15px 19px; border-radius: 10px; background: #306bcb; font-family: 'NanumSquare'; font-weight: 700; font-size: 16px; color: #fff; letter-spacing: -0.01em;}
.gallery-wrap .gallery > .title {display: -webkit-box; word-wrap: break-word; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-overflow: ellipsis; overflow: hidden; margin: 15px 0 25px; font-family: 'NanumSquare'; font-weight: 700; font-size: 24px; color: #222; line-height: 32px; letter-spacing: -0.05em;}
.gallery-wrap.normal .gallery > .title {margin-bottom: 10px;}
.gallery-wrap .gallery > .info {font-family: 'NanumSquare'; font-weight: 700; font-size: 16px; color: #666; line-height: 22px; letter-spacing: -0.025em;}
.gallery-wrap .gallery > .info + .info {margin-top: 10px;}
.gallery-wrap .gallery > .info > span:first-child {display: inline-block;}
.gallery-wrap .gallery > .info > span:last-child:not(:first-child) {display: inline-block; position: relative; margin-left: 17px; padding-left: 17px;}
.gallery-wrap .gallery > .info > span:last-child:not(:first-child):before {content: ''; display: inline-block; position: absolute; top: 4px; left: 0; width: 1px; height: 14px; background: #e1e1e1;}
.gallery-wrap .gallery > .info > span.view {padding-left: 26px; background: url('../../../../images/egovframework/com/front/sub/icon_view.png') no-repeat top 4px left;}
.gallery-wrap .gallery > .info > span.like {padding-left: 36px; background: url('../../../../images/egovframework/com/front/sub/icon_like.png') no-repeat top 4px left 16px;}
.gallery-wrap .gallery > .info > span.comment {padding-left: 31px; background: url('../../../../images/egovframework/com/front/sub/icon_comments.png') no-repeat top 4px left 16px;}

/* 갤러리형 게시판 뷰 */
.gallery__view-wrap {margin-top: 50px; border-top: 1px solid #222;}
.gallery__view-wrap .info-wrap {display: flex; gap: 30px; padding: 30px 20px; border-bottom: 1px solid #e1e1e1;}
.gallery__view-wrap .img-wrap {position: relative; overflow: hidden; width: 385px; height: 385px; border: 1px solid #e1e1e1; border-radius: 10px; box-sizing: border-box;}
.gallery__view-wrap .img-wrap img {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.gallery__view-wrap .info-inner {position: relative; width: calc(100% - 415px);}
.gallery__view-wrap .info-inner > .title {margin-top: 10px; font-family: 'NanumSquare'; font-weight: 700; font-size: 36px; line-height: 32px; color: #222; letter-spacing: -0.05em;}
.gallery__view-wrap .info-inner > .title > .state {display: inline-block; margin-right: 20px; padding: 15px 19px; border-radius: 10px; background: #306bcb; font-family: 'NanumSquare'; font-weight: 700; font-size: 16px; line-height: 17px; color: #fff; letter-spacing: -0.01em; vertical-align:  middle;}
.gallery__view-wrap .info-list {margin-top: 35px;}
.gallery__view-wrap .info-list li {display: flex; font-family: 'NanumSquare'; font-size: 18px; color: #222; line-height: 22px; letter-spacing: -0.025em;}
.gallery__view-wrap .info-list li:not(:first-child) {margin-top: 15px;}
.gallery__view-wrap .info-list li > .tit {width: 115px; font-weight: 700;}
.gallery__view-wrap .info-list li > .txt {width: calc(100% - 115px); font-weight: 400;}
.gallery__view-wrap .info-inner .btn_write {position: absolute; right: 0; bottom: 0;}
.gallery__view-wrap .view-wrap {margin-top: 80px;}
.gallery__view-wrap .view__title-wrap {display: flex; border-top: 1px solid #e1e1e1; border-right: 1px solid #e1e1e1;}
.gallery__view-wrap .view__title-wrap a {position: relative; width: 50%; padding: 28px; border-left: 1px solid #e1e1e1; font-family: 'NanumSquare'; font-weight: 700; font-size: 16px; color: #666; letter-spacing: -0.1em; text-align: center; box-sizing: border-box;}
.gallery__view-wrap .view__title-wrap a.active {background: #f9f9f9; color: #222;}
.gallery__view-wrap .view__title-wrap a.active:after {content: ''; display: inline-block; position: absolute; bottom: -1px; left: 0; width: 100%; height: 1px; background: #f9f9f9;}
.tab_conts .tab_panel {display:none;}
.tab_conts .tab_panel.active {display:block;}
.gallery__view-wrap .view-inner {padding: 78px; border: 1px solid #e1e1e1; background: #f9f9f9; font-family: 'NanumSquare'; font-weight: 400; font-size: 18px; color: #222; letter-spacing: -0.025em;}
.gallery__view-wrap .view-inner > .title {font-weight: 800; font-size: 24px; color: #222;}
.gallery__view-wrap .view-inner > .sub_title {margin-top: 25px; font-weight: 700; color: #306bcb;;}
.gallery__view-wrap .view-inner > .bullet-list {margin-top: 10px;}
.gallery__view-wrap .view-inner > .bullet-list li {line-height: 36px;}
.gallery__view-wrap .view-inner img {width: 100%; height: auto;}

.-mt0 {margin-top:0 !important;}
.-mt3 {margin-top:3px !important;}
.-mt8 {margin-top:8px !important;}
.-mt10 {margin-top:10px !important;}
.-mt12 {margin-top:12px !important;}
.-mt20 {margin-top:20px !important;}
.-mt30 {margin-top:30px !important;}
.-mt70 {margin-top:70px !important;}

.-mb10 {margin-bottom:10px !important;}
.-mb12 {margin-bottom:12px !important;}
.-mb15 {margin-bottom:15px !important;}
.-mb20 {margin-bottom:20px !important;}
.-mb70 {margin-bottom:70px !important;}

.-ml5 {margin-left:5px !important;}
.-ml10 {margin-left:10px !important;}
.-ml20 {margin-left:20px !important;}
.-ml25 {margin-left:25px !important;}
.-ml27 {margin-left:27px !important;}
.-ml35 {margin-left:35px !important;}
.-ml40 {margin-left:40px !important;}
.-ml45 {margin-left:45px !important;}
.-ml155 {margin-left:155px !important;}
.-ml413 {margin-left:413px !important;}


.-ml1em {margin-left:1em !important;}

.-mr20 {margin-right:20px !important;}
.-mr40 {margin-right:40px !important;}
.-mr160 {margin-right:160px !important;}
.-mr320 {margin-right:320px !important;}
.-mr480 {margin-right:480px !important;}
.-mr640 {margin-right:640px !important;}

.-pt0 {padding-top:0 !important;}
.-pb70 {padding-bottom:70px !important;}
.-pdx20{padding:0 20px !important;}

.br5 {border-radius: 5px !important;}
.bd-tb { border-top: 3px solid #000 !important; border-bottom: 3px solid #000 !important;}

.w50 {width:50px !important;}
.w60 {width:60px !important;}
.w70 {width:70px !important;}
.w80 {width:80px !important;}
.w90 {width:90px !important;}
.w100 {width:100px !important;}
.w110 {width:110px !important;}
.w200 {width:200px !important;}
.w300 {width:300px !important;}
.w400 {width:400px !important;}
.w25p {width:25% !important;}
.w30p {width:30% !important;}
.w45p {width:45% !important;}
.w48p {width:48% !important;}
.w50p {width:50% !important;}
.w63p {width:63% !important;}
.w70p {width:70% !important;}
.w73p {width:73% !important;}
.w74p {width:74% !important;}
.w80p {width:80% !important;}
.w82p {width:82% !important;}
.w90p {width:90% !important;}
.w100p {width:100% !important;}
.maxw360 {max-width:360px !important;}
.minw96 {min-width:96px !important;}
.h40 {height:40px !important;}
.h44 {height:44px !important;}
.h50 {height:50px !important;}
.h65 {height:65px !important;}

.r152 {right:152px !important;}

.lh28 {line-height: 2.8 !important;}
.vert-al-base{vertical-align: baseline !important;}

.bt0 {border-top: 0 !important;}
.br0 {border-right: 0 !important;}

.ft13 {font-size:13px !important;}
.ft14 {font-size:14px !important;}

.cursor {cursor: pointer !important; font-size: 1rem;}
.bg-fff {background: #fff !important;}
input[readonly].bg-fff {
    background-color: #fff !important;
}

/* paging */
.paging-wrap {margin-top: 30px; text-align: center; font-size: 0;} /* mt 50 -> 30 변경 */
.paging-wrap > li {display: inline-block;}
.paging-wrap > li > a {display: inline-flex; align-items: center; justify-content: center; width: 45px; height: 45px; font-family: 'SUIT'; font-weight: 500; font-size: 16px; color: #666; letter-spacing: -0.05em;}
.paging-wrap > li > a.on, .paging-wrap > li > a:not(.btn-paging):hover {background: #222; font-family: 'NanumSquare'; font-weight: 700; color: #fff;}
.paging-wrap > li > a.btn-paging {border: 1px solid #dedede; box-sizing: border-box;}
.paging-wrap > li > a.prev {margin-left: 5px; margin-right: 15px;}
.paging-wrap > li > a.next {margin-left: 15px; margin-right: 5px;}

/*.cost-detail td:first-of-type { border-left: 0 !important; }*/
.content__table-wrap table.-researchInsertTb td:first-of-type { border-left: 0 !important; }

#budgetTable tbody tr:hover:not(:has(.th-direct-bg, .th-top-bg)) {
    filter: brightness(96%);
}

#budgetTable tbody tr:focus-within:not(:has(.th-direct-bg, .th-top-bg)) {
    filter: brightness(93%) saturate(150%) sepia(80%) hue-rotate(332deg);
}
#budgetTable tbody td:focus,
#budgetTable tbody th:focus {
    outline: none;
}

.budget-table th,
.budget-table td {
    border:1px solid #dbdbdb !important;
}

.budget-table td.br0,
.budget-table th.br0 {
    border-right: 0 !important;
}

.budget-table.modal {
    font-size: 14px !important;
}

.budget-table.modal td{
    text-align: center;
}

.clickable-td {
    cursor:pointer;
}

.clickable-td:hover {
    background: #f0f0f0;
}

.content__table-wrap table.type1.budget-summary-table .clickable-td:hover {
    filter: brightness(0.9) blur(0.1px) !important
}

.clickable-td-span span {position:relative;cursor:pointer;padding:4px 15px;display: inline-block;word-break: break-word;}
.clickable-td-span span:hover {
    background: #f0f0f0;
}
.clickable-td-span span:before {
	content: '';
    background: transparent;
    position: absolute;
    top:0;
    left: 0;
    height: 0px;
    width: 0px;
    border-top: 7px solid #005bac;
    border-bottom: 0 solid transparent;
    border-left: 0 solid transparent;
    border-right: 7px solid transparent;
    
}
.clickable-td-span span:after {
	content:'';
	position:absolute;
	bottom:0;
	left:50%;
	width:0;
	transition:all .2s;
	height:1px;
	background:#005bac;
}
.clickable-td-span span:hover:after {
	width:100%;
	left:0;
}

.clickable-tr {
    cursor: pointer;
}

.clickable-tr:hover {
    background: #f0f0f0;
}

.clickable-tr td:nth-child(3) span {
    position: relative;
    display: inline-block;
    word-break: break-word;
    padding: 4px 15px;
}



.user-editable-cell {
    /* 20250213 이전의 사용자가 입력할 수 있는 컬럼 class - 컬럼 변경에 따라 임시주석처리
        font-weight:550;
        color:blue;
    */
}

.ftBold {
    font-weight:550;
}

.ftRed{color: red !important; font-weight: bold !important;}
.absolute{position: absolute}

.periodText {
    min-width: 4.1rem !important;
    color: #0000ff;
    font-size: 0.85em;
    margin-left: 0.5em;
    font-weight: bolder;
}

input#searchDateTime::-webkit-calendar-picker-indicator {
    width: 25px;
    height: 25px;
}

span.new-post {
    font-size: smaller;
    color: #d17878;
}

#year-filter-area {
    width: 90%;
}

#year-filter-area .dropdown-container {
    position: relative;
    display: inline-block;
    width: 100%;
}

#year-filter-area .dropdown-toggle {
    /* 기존 select 스타일과 통일 */
    width: 100%;
    height: 40px;
    padding: 0 18px;
    border: 1px solid #dfdfdf;
    border-radius: 30px; /* 둥근 모서리 */
    background: url('/images/egovframework/com/front/icon_select.png') no-repeat center right 24px; /* 화살표 아이콘 */

    /* 폰트 및 정렬 */
    font-family: 'SUIT', sans-serif;
    font-weight: 600;
    font-size: 1rem;
    color: #999;
    text-align: left;

    /* 내부 요소 정렬 */
    display: flex;
    align-items: center;
    justify-content: space-between;

    cursor: pointer;
    box-sizing: border-box;
}

#year-filter-area .dropdown-toggle.active {
    color: #333; /* 선택된 항목이 있을 때 진한 색으로 */
}

#year-filter-area .dropdown-menu {
    display: none;
    position: absolute;
    width: 100%; /* 버튼과 너비를 맞춤 */
    max-height: 250px; /* 최대 높이 지정 */
    margin-top: 5px; /* 버튼과의 간격 */

    background-color: #ffffff;
    border: 1px solid #dfdfdf;
    border-radius: 10px; /* 살짝 둥글게 */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);

    overflow-y: auto; /* 내용 많으면 스크롤 */
    z-index: 1000;
}

#year-filter-area .dropdown-menu .dropdown-item {
    display: block;
    padding: 12px 20px;
    font-family: 'SUIT', sans-serif;
    font-size: 16px;
    color: #555;
    cursor: pointer;
    transition: background-color 0.2s;
    white-space: nowrap;
}

#year-filter-area .dropdown-menu .dropdown-item:hover {
    background-color: #f5f5f5;
}

#year-filter-area .dropdown-menu input[type="checkbox"] {
    margin-right: 10px;
    vertical-align: middle;
}