@charset "utf-8";
/* fonts: https + 중복 제거(한 줄 통합) */
@import url('https://fonts.googleapis.com/css2?family=Nanum+Gothic:wght@400;700;800&family=Noto+Sans+KR:wght@300;400;500;700;900&family=Roboto:wght@300;400;500;700&display=swap');

/* === 디자인 토큰(색/치수) === */
:root{
  --brand:#9e1a20;
  --brand-dark:#841e1f;
  --brand-border:#86161b;
  --gray-100:#f8f8f8;
  --gray-150:#f5f5f5;
  --gray-200:#f4f4f4;
  --gray-300:#f3f3f3;
  --gray-400:#ededed;
  --gray-500:#ddd;
  --gray-600:#ccc;
  --gray-700:#bbb;
  --text:#2c2c2c;
}

* { word-break: keep-all;
    font-family: "Nanum Gothic", 'notokr', 'Malgun Gothic', sans-serif;}
/*== font-family: 'Noto Sans KR',"Nanum Gothic",'Malgun Gothic',sans-serif; ==*/

/*=================================== reset =================================== */

img {
    flex-shrink: 0;
}

.img-box {
    position: relative;
}

.img-box.bordered {
    border: 1px solid var(--gray-600);
    padding: 10px;
}

ol,
ul,
li,
dl {
    margin: 0;
    padding: 0;
    list-style: none;
    list-style-position: inside;
}

p, h1, h2, h3, h4, h5, h6, dt, dd, th, td, li {
    letter-spacing: -0.034em;
    margin: 0;
}

a, a:hover { text-decoration:none; }

button {
    border-radius: 0;
    background: transparent;
    border: 1px solid #444;
}

.navbar .caret,
.navbar .divider-vertical,
.navbar~br,
.footer-social-layout,
.footer_copy .text-center>br {
    display: none !important;
}

/* 초기 설정 끝 */
/*=================================== common =================================== */
[class$="-dash"]>*:not(dt){position:relative;padding-left:10px}
[class$="-dash"]>*:not(dt)::before{content:'-';position:absolute;left:0}

.li-dash li+li {
    margin-top: 5px;
}

.li-box {
    padding: 25px;
    background: var(--gray-200);
}

/* -------로고부분 설정 시작------- */
.main_logo {
    width: 100%;
    padding: 20px 0 20px;
    background: #fff;
}

.main_logo h1 {
    margin: 0 auto;
    width: 190px;
}

.main_logo h1 a {
    display: block;
    position: relative;
}

.main_logo h1 span {
    position: absolute;
    font-size: 10px;
    letter-spacing: 4px;
    color: #888;
    left: 52px;
    bottom: -5px;
}

.main_logo h1 a:after {
    content: ".";
    visibility: hidden;
    font-size: 1px;
    display: block;
    clear: both;
    line-height: 0;
}

/* -------로고부분 설정 끝------- */

/* -------메뉴 설정 시작------- */
.navbar-inverse .navbar-collapse>ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.navbar-inverse .navbar-collapse>ul::before,
.navbar-inverse .navbar-collapse>ul::after {
    display: none;
}

.navbar-inverse {
    width: 100%;
    background: var(--brand);
    position: absolute;
    left: 0;
    top: 0;
    padding: 0px 0px;
    margin-bottom: 0;
    border: 0
}

.navbar-right {
    float: inherit !important;
    margin-right: 0 !important;
}

.navbar-brand {
    display: none;
    padding: 0;
}
.navbar-brand img {
    margin: 0;
}

.topmarginLay_a {
    height: 150px !important;
}

.navbar-inverse .navbar-collapse {
    text-align: center;
    padding: 0;
    /* background-color: #FFF; */
    line-height: 0;
}

@media screen and (min-width:768px) {
    .navbar-inverse .navbar-collapse>ul li {
        flex: 1;
    }

    /* pc nav 메뉴 */
    .navbar-inverse .navbar-nav>li>a {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 50px;
        padding: 0px 15px;
    }
}

.navbar-inverse .navbar-nav>li>a {
    text-shadow: none;
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    border-right: 1px solid var(--brand-border);
    background: var(--brand);
}

.navbar-inverse .navbar-nav>li:hover>a,
.navbar-inverse .navbar-nav>li:focus>a,
.navbar-inverse .navbar-nav>li>a:focus,
.navbar-inverse .navbar-nav>li>a:hover,
.navbar-inverse .navbar-nav>.open>a,
.navbar-inverse .navbar-nav>.open>a:focus,
.navbar-inverse .navbar-nav>.open>a:hover {
    color: #ffffff;
    background-color: var(--brand-dark);
    box-shadow: none;
    border-color: var(--brand-border);
}

/* ----- 하단 서브 메뉴 설정 시작 ----- */
.navbar-inverse .dropdown-menu {
    width: 100%;
    left: auto;
    right: auto;
    padding: 20px 0 16px;
    border-radius: 0;
    box-shadow: none;
    border: 1px solid var(--gray-500);
    background: var(--gray-300);
}

.navbar-inverse .dropdown-menu>li>a {
    background: rgba(0, 0, 0, 0);
    color: #555555;
    font-size: 14px;
    padding: 0 10px 10px;
    text-align: center;
    white-space: normal;
}

.navbar-inverse .dropdown-menu>li>a:hover,
.navbar-inverse .dropdown-menu>li>a:focus {
    background: rgba(0, 0, 0, 0);
    color: #bf2021;
    text-decoration: underline !important;
    font-weight: 600;
}

/* ----- 상단 메뉴 모바일 설정 시작 ----- */
@media screen and (max-width: 767px) {
    .navbar-nav {
        margin: 0;
    }

    .navbar-inverse {
        background: #fff;
        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
    }

    .navbar-inverse .container {
        padding: 0;
    }

    .main_logo {
        display: none;
    }

    .navbar-brand {
        display: block;
        padding: 13px;
    }

    .navbar-brand img {
        max-width: 150px;
        float: left;
        margin-right: 6px;
    }

    .topmarginLay_a {
        height: 74px !important;
    }

    .navbar_top_wrap .navbar_top_logo {
        display: none;
    }

    .navbar_top_wrap .navbar_top_contact {
        position: fixed;
        padding: 6px 0;
        right: 90px;
        text-align: right;
        left: auto;
    }

    .navbar-inverse .navbar-header {
        display: inherit;
        border-bottom: 1px solid var(--gray-400);
        margin: 0;
    }

    .navbar-inverse .navbar-collapse {
        margin: 0;
    }

    .navbar-inverse .navbar-collapse>ul,
    .navbar-inverse .navbar-collapse>ul>li {
        width: 100%;
        border: none;
    }

    .navbar-inverse .navbar-toggle {
        margin: 20px 12px;
        border: none;
    }

    .navbar-inverse .navbar-toggle .icon-bar {
        background-color: #444;
    }

    .navbar-inverse .navbar-toggle:focus,
    .navbar-inverse .navbar-toggle:hover {
        background-color: #fff;
    }

    .navbar-inverse .navbar-toggle:hover .icon-bar {
        background-color: #ac2f30;
    }

    .navbar-inverse .navbar-nav>li>a {
        text-align: left;
        border: none;
    }

    .navbar-inverse .navbar-collapse>ul>li {
        border-bottom: 1px solid var(--brand-border);
    }

    .navbar-inverse .navbar-nav>li:hover>a,
    .navbar-inverse .navbar-nav>li:focus>a,
    .navbar-inverse .navbar-nav>li>a:focus,
    .navbar-inverse .navbar-nav>li>a:hover,
    .navbar-inverse .navbar-nav>.open>a,
    .navbar-inverse .navbar-nav>.open>a:focus,
    .navbar-inverse .navbar-nav>.open>a:hover {
        background-color: #383838;
    }

    .navbar-inverse .navbar-nav>li>a,
    .navbar-inverse .navbar-nav>.open>a,
    .navbar-inverse .navbar-nav>.open>a:focus,
    .navbar-inverse .navbar-nav>.open>a:hover {
        padding: 15px 15px;
        text-align: left;
    }

    .navbar-nav .open .dropdown-menu {
        padding: 10px 0;
        background: var(--gray-300);
    }

    .navbar-inverse .navbar-nav .open .dropdown-menu>li>a {
        padding: 5px 15px;
        text-align: left;
        color: #616161;
    }

    .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover {
        color: #9e1a20;
    }
}

/* -------메뉴 설정 끝------- */
.footer_copy .link-box{
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: fixed;
    right: 40px;
    bottom: 40px;
    z-index: 100;
}

#ntis:focus,
#ebook:focus{
    text-decoration: none;
}

#ntis .inner,
#ebook .inner {
    display: flex;
    overflow: hidden;
    align-items: center;
    justify-content: space-around;
    border-radius: 5px;
    padding: 5px 20px 5px 7px;
    background: #f27221;
}

#ntis .inner p,
#ebook .inner p {
    margin-left: 5px;
    font-size: 14px;
    font-weight: 900;
    color: #fff;
}

#ntis .inner i, 
#ebook .inner i{
    position: relative;
    transform: translateY(1px);
    margin-left: 10px;
    font-size: 18px;
}

#ntis img {
    width: 60px;
}
#ebook img {
    width: 60px;
    filter: brightness(1) invert(0);
}

#scrolltop {
    position: relative;
    float: right;
    z-index: 1000;
    /* right: 50px; */
    /* bottom: 130px; */
    display: block;
    font-size: 16px;
    text-align: center;
    width: 45px;
    height: 45px;
    color: #888;
    border: 1px solid #888;
    border-radius: 5px;
    margin-top: 65px;
}

#scrolltop:hover {
    background: #666;
    color: #fff;
}

#scrolltop .inner {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    line-height: 1;
}

#scrolltop .inner i {
    font-size: 22px;
}

/* ---------- footer 설정 시작 ---------- */
.li-scroll {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    position: relative;
    margin-top: 40px;
    margin-bottom: 60px;
}

.li-scroll .clearfix {
    width: 100%;
}

.li-scroll li {
    margin-bottom: 7px;
}

.li-scroll li+li {
    margin-left: 7px;
}

.li-scroll li button {
    transition: .25s;
    background: #fff;
    border-radius: 40px;
    border: 1px solid #36a2bb;
    font-weight: 500;
    padding: 15px 25px;
    font-size: 16px;
    text-align: center;
    letter-spacing: -0.034em;
    line-height: 1;
    color: #278aa0;
}

.li-scroll li button:hover {
    background: #278aa0;
    border-color: #278aa0;
    color: #fff;
}

.footer_copy {
    padding: 30px 0 40px;
    overflow: hidden;
    font-size: 13px;
    border-top: 1px solid var(--gray-500);
    background: var(--gray-300);
}

.footer-wrap {
    max-width: 1140px;
    margin: 0 auto;
    text-align: left;
    overflow: hidden;
}

.footer-wrap+br {
    display: none;
}

.footer-logo, .footer-list {
    float: left;
    font-size: 13px;
}
.footer-sns {
    float: right;
}

.footer-logo {
    margin-right: 50px;
    margin-bottom: 20px;
}

.footer-list ul {
    overflow: hidden;
    padding: 0;
}

.footer-list ul li {
    float: left;
    list-style: none;
}

.footer-list .link {
    overflow: hidden;
    margin: 10px 0 20px;
}

.footer-list .link li {
    color: #777;
    margin-right: 30px;
}

.footer-list .link li a {
    color: inherit;
}

.footer-list .link li a:hover,
.footer-list .link li a:focus {
    text-decoration: underline !important;
}

.footer-list .info {
    max-width: 800px;
    color: #777;
    margin-bottom: 0;
}

.footer-list .info li span {
    font-weight: 500;
}

.footer-list .info li {
    margin-right: 20px;
    line-height: 1.7;
}

.footer-list .copyright {
    font-size: inherit;
    color: #777;
}

@media screen and (max-width:767px) {
    #ntis,
    #ebook {
        right: 15px;
        bottom: 30px;
    }

    #ntis .inner,
    #ebook .inner{
        padding: 5px;
    }

    #ntis img,
    #ebook img {
        width: 45px;
    }

    #ntis .inner p,
    #ebook .inner p {
        display: none;
    }

    #scrolltop {
        display: none;
        float: left;
        width: 55px;
        height: 55px;
        margin-top: 25px;
    }

    .footer_copy {
        padding: 30px 0 80px;
    }

    .footer-logo {
        display: none;
    }

    .footer-list {
        font-size: 12px;
    }

    .footer-list .link {
        margin: 0 0 10px;
    }

    .footer-list .link li {
        margin-right: 15px;
    }
}

/* footer 설정 끝*/

/* 메인 슬라이드 설정*/
.carousel-inner .item {
    background: url('/skin/img/slide/slide02.jpg');
    background-repeat: no-repeat;
    background-position: left center;
    height: 550px;
}

.carousel-caption {
    width: 1170px;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
    padding: 75px 15px 0;
}

.carousel-caption h1 {
    font-size: 48px;
}

.carousel-caption .text_area {
    text-align: left;
    margin-top: 70px;
    letter-spacing: -0.6px;
    padding-right: 60px;
}

.carousel-caption .text_area span {
    text-align: left;
    text-shadow: none;
    display: block;
    font-family: 'Noto Sans KR', 'Nanum Gothic', sans-serif !important;
}

.carousel-caption .text_area .topText {
    font-size: 22px;
    color: #c6a160;
    margin-bottom: 15px;
}

.carousel-caption .text_area .middleText {
    font-weight: 500;
    color: #ffffff;
    line-height: 50px;
    letter-spacing: -1.5px;
}

.carousel-caption .text_area .bottomText {
    color: #ffffff;
    line-height: 1.3;
    font-weight: 300;
}

.carousel-caption .text_area .bottomText em {
    color: #fff;
    opacity: 0.7;
}

.carousel-caption .borderText {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    font-weight: 400;
    font-size: 24px;
    padding-top: 30px;
    margin-top: 30px;
}

.carousel-caption .box {
    display: block;
    width: 100%;
    height: 200px;
    background-color: #fff;
    text-align: left;
    box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.5);
    position: relative;   /* ::before 위치 기준 */
    overflow: hidden;     /* 그라디언트 삐져나옴 방지 */
}

.carousel-caption .box::before{
  content: '';                 /* ← 가상요소 생성 */
  position: absolute;
  inset: 0;                    /* top/right/bottom/left: 0 */
  display: block;
  pointer-events: none;        /* 클릭 방해 X */
  z-index: 0;                  /* 텍스트/호버 박스보다 뒤 */
  /* 그라디언트는 기존과 동일하게 유지 */
  background: linear-gradient(to bottom, rgba(255,255,255,1) 15%, rgba(255,255,255,0.01) 70%, rgba(255,255,255,0) 100%);
}

.carousel-caption .box_area .row {
    margin: 0 -5px 0 -4px;
}

.carousel-caption .box_area .row [class^='col-']:nth-child(1) .box {
    background: #fff url('/skin/img/main/main-ico1.jpg') left top / cover no-repeat;
}

.carousel-caption .box_area .row [class^='col-']:nth-child(2) .box {
    background: #fff url('/skin/img/main/main-ico2.jpg') left top / cover no-repeat;
}

.carousel-caption .box_area .row [class^='col-']:nth-child(4) .box {
    background: #fff url('/skin/img/main/main-ico3.jpg') left top / cover no-repeat;
}

.carousel-caption .box_area .row [class^='col-']:nth-child(3) .box {
    background: #fff url('/skin/img/main/main-ico4.jpg') left top / cover no-repeat;
}
.carousel-caption .box_area .row [class^='col-']:nth-child(5) .box {
    background: #fff url('/skin/img/main/main-ico5.jpg') left top / cover no-repeat;
}

.carousel-caption .box_area .row [class^='col-'] {
    margin-bottom: 10px;
    padding: 0 5px;
}

.carousel-caption .box_area .row .col-md-6 .inner {
    display: block;
    position: relative;
}

.carousel-caption .box span {
    position: absolute;
    z-index: 1;         /* 텍스트가 그라디언트 위로 */
    top: 15px;
    left: 20px;
    text-align: left;
    font-size: 22px;
    letter-spacing: -1px;
    font-weight: 600;
    color: var(--text);
    text-shadow: none;
}

.carousel-caption .box:hover+.hoverBox,
.carousel-caption .hoverBox:hover,
.carousel-caption .hoverBox:focus {
    display: block;
}

.carousel-caption .hoverBox {
    display: none;
    position: absolute; inset: 0;
    z-index: 2;         /* 호버 레이어 최상단 */
    padding-top: 60px;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    color: #fff;
    letter-spacing: -0.5px;
    background: rgba(158, 26, 32, 0.9);
}

.carousel-caption .hoverBox span {
    text-shadow: none;
}

.carousel-caption .hoverBox .title {
    display: block;
    margin-bottom: 10px;
    font-size: 22px;
    font-weight: 600;
    color: #fff;
}

.carousel-caption .hoverBox .title:after {
    content: "";
    width: 15px;
    height: 1px;
    background: #fff;
    display: block;
    margin: 12px auto;
}

.carousel-caption .hoverBox .text {
    display: block;
    margin-bottom: 5px;
    font-size: 14px;
    color: #fff;
}

.carousel-caption .hoverBox .plusBox {
    position: absolute;
    top: 0;
    right: 0;
    border: 35px solid #7a6d5d;
    border-color: #7a6d5d #7a6d5d transparent transparent;
    display: none
}

.carousel-caption .hoverBox .plusBox img {
    position: absolute;
    top: -22px;
    right: -22px;
}

.carousel .controlBtn {
    position: relative;
    width: 1000px;
    margin: 0 auto;
}

.carousel .controlBtn .controlBtn_inner {
    position: absolute;
    top: -85px;
}

.carousel .controlBtn .carousel-control {
    display: block;
    position: relative;
    width: 19px;
    height: 19px;
    opacity: 1;
    line-height: 0;
}

.carousel .controlBtn .left.carousel-control {
    float: left;
    margin-right: 1px
}

.carousel .controlBtn .right.carousel-control {
    float: left;
    margin-right: 15px;
}

.carousel .controlBtn .pageNation {
    color: #FFF;
    text-shadow: none;
    font-size: 12px;
    vertical-align: 2px;
}

.carousel .controlBtn .pageNation .nowPage {
    font-weight: 600;
}


@media screen and (max-width:767px) {
    .carousel-inner .item {
        height: 345px;
    }

    .carousel-caption .text_area {
        display: none;
    }

    .carousel-caption .box_area {
        margin-top: 38px;
    }

    .carousel-caption .box {
        height: 130px
    }

    .carousel-caption .box span {
        left: 15px;
        top: 15px;
        font-size: 15px;
    }

    .carousel-caption .hoverBox .plusBox {
        display: none;
    }

    .carousel-caption .hoverBox {
        padding-top: 38px;
        display: block;
        background: rgba(158, 26, 32, 0.85);
    }

    .carousel-caption .hoverBox .title:after {
        display: none;
    }

    .carousel-caption .hoverBox .title {
        margin-bottom: 2px;
    }

    .carousel-caption .hoverBox .text {
        opacity: 0.6;
        font-size: 12px;
    }
}

@media screen and (max-width:991px) {
    .carousel-caption_inner {
        padding: 0 25px;
    }

    .carousel-caption {
        width: auto !important;
        padding: 0 15px;
    }

    .carousel-caption .text_area {
        margin-bottom: 40px;
        margin-top: 60px;
    }

    .carousel-caption .text_area span {
        text-align: center;
    }

    .carousel-caption .text_area .middleText {
        font-size: 40px;
        line-height: 42px;
    }

    .carousel-caption .text_area .bottomText {
        font-size: 40px;
    }

    .carousel-caption .text_area .topText {
        font-size: 18px;
        margin-bottom: 8px;
    }

    .carousel-caption .borderText {
        font-size: 18px;
        margin-top: 15px;
        padding-top: 15px;
    }

    .carousel-caption .controlBtn {
        display: none;
    }
}

/* ------- 메인 컨텐츠 -------*/
.container_contents {
    width: 100%;
}

.intro-html-layout>.col-sm-12:first-child {
    padding: 0;
}

.main-in {
    overflow: hidden;
    max-width: 1030px;
    padding: 0 15px;
    margin: 0 auto;
}

@media screen and (min-width: 992px) and (max-width: 1200px) {
    .main-in {
        width: auto;
    }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .main-in {
        width: 750px;
    }
}

/* ------- 메인 게시판 -------*/
/*.intro-widget-layout {display: none;}*/
.intro-board-layout {
    width: 100%;
}
/* 섹션 리셋 먼저 */
.intro-boardbox,
.intro-boardbox * ,
.intro-boardbox *::before,
.intro-boardbox *::after{
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.intro-boardbox .page-header {
    padding-bottom: 20px;
    border-bottom: 2px solid #bf2021;
}

.intro-boardbox .page-header h4 {
    font-size: 24px;
    font-weight: 600;
    color: var(--text);
}

.intro-boardbox .page-header h4 a {
    color: var(--text);
}

.intro-boardbox .front-panel .panel {
    border: none;
    margin: 0;
}

.intro-boardbox .dh-front-list2 h6 {
    position: relative;
    padding: 0;
    border-bottom: 1px solid #e3e3e3;
}

.intro-boardbox .dh-front-list2 h6 a {
    padding-left: 5px;
}

.intro-boardbox .dh-front-list2 h6 a span {
    color: #666666;
    font-size: 14px;
    letter-spacing: -0.5px;
    font-weight: 400;
}

.intro-boardbox .dh-front-list2 h6 a span.list-row-subject {
    font-weight: 600;
    color: var(--text);
    display: inline-block;
    width: 81%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 20px;
}

.intro-boardbox-5 .list-row-subject:before,
.intro-boardbox-14 .list-row-subject:before {
    content: "NOTICE";
    background: #c6a160;
    color: #fff;
    padding: 5px 8px;
    font-size: 11px;
    display: inline-block;
    margin-right: 10px;
}

.intro-boardbox .list-row-contents {
    display: none;
}

.intro-boardbox .dh-front-list2-words {
    margin-top: 0;
}

.intro-boardbox .dh-front-blog,
.intro-boardbox .front-panel .panel-body>.dh-front-list2-words:last-child h6 {
    border-bottom: 2px solid var(--gray-600);
}

.intro-boardbox .dh-front-list2 h6 .label-danger {
    background: #fff;
    color: #bf2021 !important;
    font-weight: 800;
    padding: 0 3px;
}

.intro-boardbox .dh-front-blog {
    padding: 18px 0;
    margin: 0 -5px;
}

.dh-front-blog>.col-md-4>.thumbnail {
    min-height: 140px;
}

.dh-front-blog>.col-md-4>.thumbnail>a.blogthumb {
    height: 140px;
    border: none;
    background-size: contain;
}
.dh-front-blog>.col-md-4>.thumbnail>a.caption{
    display : none;
    padding : 0;
}
.dh-front-blog .blog-row-subject,
.dh-front-blog .blog-row-contents,
.dh-front-blog .thumbnail .caption {
    display: none
}

.intro-boardbox>.page-header>h4>.btn i::before {
    content: "\f067";
    font-weight: 900;
    font-size: 28px;
    font-family: 'Line Awesome Free';
}

.dh-front-list2 h6 a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 52px;
}

.dh-front-list2 .row-separator {
    display: none;
}

.intro-boardbox .dh-front-blog .col-md-4 {
    padding: 0 5px;
}

@media screen and (max-width: 991px) {
    .carousel-inner .item{
        height: 750px;
        background-size: cover;
    }
    .carousel-caption .box{
    }
}

@media (max-width: 767px) {
    .carousel-inner .item{
        height: 550px;
        background-size: cover;
    }

    .intro-boardbox .page-header {
        padding-bottom: 10px;
    }

    .intro-boardbox .page-header h4 {
        font-size: 18px;
    }

    .intro-boardbox .page-header>h4>.btn {
        padding: 0px 0;
    }

    .intro-boardbox {
        width: 100%;
        margin: 0 0 20px;
        padding: 0;
    }

    .intro-boardbox .dh-front-list2 h6 a span {
        font-size: 13px;
    }

    .intro-boardbox .dh-front-blog {
        padding: 15px 0;
    }

    .intro-boardbox .dh-front-blog>.col-sm-6 {
        padding: 0;
    }
}

/* ---------- 서브페이지 설정 시작 ---------- */

.sub-layout {
    padding: 60px 15px 100px;
}

.sub-top {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    margin: 0 0 60px;
    padding-bottom: 25px;
    border-bottom: 1px solid var(--gray-600);
}

.sub-top h2 {
    margin: 0 0;
    font-size: 32px;
    font-weight: 700;
    color: var(--text);
    letter-spacing: -0.6px;
}

.sub-top h2 .small-cap {
    color: #888;
    font-size: 18px;
    font-weight: 400;
    padding-left: 10px;
}

.sub-top .breadcrumb {
    padding: 0;
    margin: 0;
    background: transparent;
}

.sub-top .breadcrumb li {
    float: left;
    list-style: none;
    color: #777;
    font-size: 12px;
}

.breadcrumb>li+li:before {
    display: none;
}

.sub-top .breadcrumb li:after {
    font-family: "FontAwesome";
    content: "\f105";
    padding: 0 6px;
}

.sub-top .breadcrumb li:first-child {
    font-family: "FontAwesome";
    content: "\f105";
    padding-left: 19px;
}

.sub-top .breadcrumb li:last-child:after {
    content: none;
}

.subpage-content section+section {
    margin-top: 70px;
    padding-top: 70px;
    border-top: 1px solid var(--gray-600);
}

.subpage-content .row+.row {
    margin-top: 95px;
}

.subpage-content h3 {
    margin-bottom: 5px;
    font-size: 28px;
    line-height: 1.2;
    color: var(--brand);
    font-weight: 700;
}


.subpage-content h3 span {
    font-weight: 600;
}

.subpage-content p {

    line-height: 1.8;
    margin-bottom: 20px;
    font-size: 14px;
}

.subpage-content .wrap-title h4 {
    margin-top: 0px;
    margin-bottom: 20px;
    padding-right: 30px;
    font-size: 24px;
    padding-left: 28px;
    position: relative;
    line-height: 1.35;
    font-weight: 600;
}

.subpage-content .wrap-title h4 small {
    font-size: 20px;
}

.subpage-content .wrap-title h4::before {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    border-radius: 1px;
    border: 4px solid var(--brand);
    position: absolute;
    top: 7px;
    left: 4px;
    transform: rotate(45deg);
}

.subpage-content h5 {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    padding-left: 10px;
    position: relative;

}

.subpage-content h5:before {
    content: '';
    display: block;
    width: 3px;
    height: 16px;
    background: var(--brand);
    position: absolute;
    top: 1px;
    left: 0;
}

.subpage-content h5+* {
    margin-top: 10px;
}

.subpage-content *+h5 {
    margin-top: 40px;
}

.subpage-content p+ul {
    margin-top: 10px;
}

.tab-menu {
    display: flex;
    border: 0;
    margin-top: 55px;
    margin-bottom: 46px;
}

.tab-menu:after {
    content: '';
    display: block;
    clear: both;
}

.tab-menu>li {
    width: calc(100% / 6);
    margin: 0;
    text-align: center;
}

.tab-menu>li>a {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    height: 45px;
    background: #868686;
    font-size: 15px;
    border: none;
    margin-right: 3px;
}

.tab-menu>li>a:hover,
.tab-menu>li>a:focus {
    background: #5f5f5f;
}

.tab-menu>li.active>a,
.tab-menu>li.active>a:hover,
.tab-menu>li.active>a:focus {
    background: var(--brand);
    color: #fff;
    font-weight: 600;
    border: none;
}

.subpage-content table {
    border-top: 2px solid var(--brand);
    border-bottom: 2px solid var(--gray-600) !important;
    margin-bottom: 0;
}

.subpage-content table a {
    color: #bf2021;
}

.subpage-content table a:hover {
    /* color:var(--brand-border); */
    text-decoration: underline;
}

.subpage-content table th {
    border-bottom: 1px solid #aaa !important;
    background: var(--gray-300);
}

.subpage-content table th,
.subpage-content table td {
    padding: 9px 10px !important;
    vertical-align: middle !important;
    border-bottom: 1px solid var(--gray-500) !important;
    font-size: 14px;
    line-height: 1.6 !important;
}

.subpage-content .table-num tbody>tr {
    counter-increment: tableNum;
}

.subpage-content .table-num tbody>tr>td span.num:before {
    content: counter(tableNum) '';
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 25px;
    height: 25px;
    border-radius: 5px;
    background: #eee;
    font-weight: 700;
    background: #606060;
    margin-right: 10px;
    font-size: 14px;
    color: #fff;
}

.table-num thead th {
    text-align: center;
}

.table-num tbody tr:first-child>td:first-child {
    text-align: center;
    font-size: 18px;
    color: #333;
    font-weight: 600;
    padding: 20px !important;
}

.table-num tbody+tbody {
    border-top: 2px solid var(--gray-700);
}

.subpage-content table a::after {
    font-weight: 900;
    font-family: 'Line Awesome Free';
}

@media (min-width:767px) {

    .archive-wrap .wrap-title,
    .research-wrap .wrap-title,
    .title-wrap .wrap-title {
        width: 28%;
    }

    .archive-wrap .wrap-content,
    .research-wrap .wrap-content,
    .title-wrap .wrap-content {
        width: 72%;
        padding-top: 2px;
    }
}

.li-down {
    /* display: flex; */
    /* flex-wrap: wrap; */
    /* margin: 0 -3px; */
}

.li-down>li {
    margin-bottom: 5px;
}

.li-down a {
    display: flex;
    height: 48px;
    padding: 0 10px 0 15px;
    justify-content: space-between;
    align-items: center;
    border: 1px solid #d5d5d5;
    font-size: 14px;
    color: #333;
    background: #fff;
    letter-spacing: -0.04em;
}

.li-down a::after {
    content: "\f019";
    font-weight: 900;
    font-family: 'Line Awesome Free';
    display: flex;
    justify-content: center;
    align-items: center;
    width: 28px;
    height: 28px;
    font-size: 20px;
}

#about05 .li-down a::after {
    content: "\f002";
}

#about06 .wrap-content img {
    margin-top: 20px;
}

.li-down a:hover {
    color: var(--brand);
    font-weight: 700;
    border-color: var(--brand);
}

.li-down a:hover::after {
    background: var(--brand);
    color: #fff;
}

/* =================================== about =================================== */
.title-wrap h3 {
    display: inline-block;
    padding-top: 12px;
    border-top: 2px solid var(--brand);
    line-height: 1;
    font-size: 26px;
}

.title-wrap p {
    font-size: 18px;
    color: #222;
    font-weight: 400;
    line-height: 1.8;
    margin: 0;
    padding-right: 50px;
}

.title-wrap .wrap-content>*+* {
    margin-top: 15px;
}

.title-wrap ol {
    background: var(--gray-200);
    padding: 15px;
}

.title-wrap li {
    font-size: 15px;
}

.title-wrap li+li {
    margin-top: 5px;
}

.greet-wrap {
    padding-top: 20px;
}

.greet-wrap .text {
    padding-left: 50px;
}

.greet-wrap .top {
    margin: 0 0 30px;
    font-size: 26px;
    font-weight: 300;
    color: var(--brand);
    line-height: 1.5;
}

.greet-wrap .name {
    margin-top: 40px;
    text-align: right;
    font-size: 26px;
}

.greet-wrap .name b {
    letter-spacing: .35em;
}

.greet-wrap .name small {
    font-size: 16px;
    margin-right: 15px;
    font-weight: 600;
}

.history-wrap {
    margin: 0;
}

.history-wrap>div {
    padding: 0;
}

@media (min-width : 768px) {
    .history-wrap .wrap-title {
        width: 25%;
    }

    .history-wrap .wrap-content {
        width: 75%;
    }
}

.history-wrap .item {
    position: relative;
    padding-left: 170px;
}

.history-wrap .item+.item {
    border-top: 1px solid #e6e6e6;
    padding-top: 30px;
    margin-top: 30px;
}

.history-wrap .item:first-child h5 {
    top: 2px;
}

.history-wrap .item+.item h5 {
    top: 22px;
}

.history-wrap .item h5 {
    position: absolute;
    top: 0;
    left: 0;
}

.history-wrap .item .li-year {
    margin-top: 0;
}

.li-year li {
    position: relative;
    padding-left: 70px;
    font-size: 14px;

    color: #555;
}

.li-year li strong {
    position: absolute;
    left: 0;
    top: 0px;
    margin-right: 35px;
    font-weight: 700;
    color: #333;
}

.li-year li+li {
    margin-top: 8px;
}

.li-process {
    display: flex;
    flex-direction: column;
    margin-bottom: 30px;
}

.li-process strong {
    color: var(--brand);
    font-size: 15px;
}

.li-process li {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 15px 0;
    border-radius: 10px;
    border: 1px solid var(--gray-600);
    background: var(--gray-100);
}

.li-process li+li {
    margin-top: 25px;
}

.li-process li+li::before {
    content: "\f107";
    font-weight: 900;
    font-size: 16px;
    font-family: 'Line Awesome Free';
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
}

.li-step {
    display: flex;
    justify-content: start;
    align-items: center;
}

.li-step li {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50px;
    border-radius: 10px;
    border: 1px solid var(--gray-600);
    background: var(--gray-100);
    font-weight: 700;
}

.li-step li+li {
    margin-left: 25px;
}

.li-step li:last-child {
    background: var(--brand);
    border-color: var(--brand);
    color: #fff;
}

.li-step li+li::before {
    content: "\f105";
    font-weight: 900;
    font-size: 16px;
    font-family: 'Line Awesome Free';
    position: absolute;
    left: -22px;
    top: 50%;
    transform: translateY(-50%);
    color: #111;
}

.map-wrap h5 {
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 0;
    color: #222;
    line-height: 1;
    padding-top: 5px;
    padding-left: 0;
    letter-spacing: -0.04em;
}

.map-wrap h5::before {
    content: none;
}

.map-wrap .info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 35px;
}

.map-wrap .map {
    margin: 0 -10px;
}

.map-wrap .map .top {
    margin-bottom: 20px;
}

.map-wrap .map iframe {
    height: 380px;
}

.map-wrap .map>div {
    padding: 0 10px;
}

.map-wrap .info ul {
    display: flex;
    margin: 0;
}

.map-wrap .info li {
    font-size: 17px;
    color: #333;
}

.map-wrap .info li strong {
    color: #fff;
    margin-right: 3px;
    background: #333;
    padding: 4px 12px 4px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0;
    border-radius: 20px;
}

.map-wrap .info li+li {
    margin-left: 20px;
}


.research-wrap img {


    border: 1px solid var(--gray-600);
    margin: 0 auto;
}

.research-wrap .img-wrap img {
    padding: 6px;
    border: 1px solid #d5d5d5;
}

.research-wrap .img-wrap p {
    font-weight: 600;
}

.research-wrap .text>ul.li-dash {
    padding: 15px;
    background: var(--gray-300);
}

.research-wrap b {
    margin-right: 5px;
    font-weight: 900;
}

.research-wrap .text>p {
    position: relative;
    margin-bottom: 0;
    padding-left: 12px;
    line-height: 1.7;

}

.research-wrap .text>p::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #333;
}

.research-wrap p.p-lg::before {
    content: none;
}

.research-wrap .text>span {
    display: block;
    font-size: 14px;
    color: var(--brand);
    font-weight: 600;
}

.research-wrap .text>span a {
    text-decoration: underline;
    padding: 0 1px;
    color: inherit;
}

.research-wrap .text h5+* {
    margin-top: 18px;
}

.research-wrap *+img,
.research-wrap *+span,
.research-wrap *+p,
.research-wrap p+ul,
.research-wrap p+div {
    margin-top: 5px;
}

.research-wrap ul+p,
.research-wrap .table-responsive+p {
    margin-top: 12px;
}

*+.img-wrap,
*+.card-wrap {
    margin-top: 30px;
}

.img-wrap p {
    text-align: center;
}

.card-wrap p {

    font-size: 13px;
    line-height: 1.7;
    font-weight: 600;
    margin-top: 10px;
}

.card-wrap img {
    padding: 5px;
    border-color: #d5d5d5;
    width: 100%;
}

.card-wrap .clearfix {
    margin-bottom: 10px;
}

.dl-call {
    margin-top: 80px;
    height: 45px;
    display: flex;
    background: #eee;
}

.dl-call>* {
    display: flex;
    justify-content: center;
    align-items: center;
}

.dl-call *+dd {
    margin-left: 20px;
    color: #222;
}

.dl-call dt {
    padding: 0 25px;
    background: var(--brand);
    color: #fff;
    font-size: 16px;
    margin-right: 5px;
}

.dl-call b {
    margin-right: 7px;
}

.dl-call a {
    color: #bf2021;
}

.dl-call a:hover {
    text-decoration: underline;
}

/* ----------- 일반 페이지 모바일 ---------- */
@media (max-width:767px) {
    .intro-boardbox>.page-header>h4>.btn i::before {
        display: block;
        position: relative;
        transform: translateY(-2px);
        font-size: 24px;
    }

    .intro-boardbox .dh-front-blog>.col-sm-6+div {
        margin-top: 5px;
    }

    .carousel-caption .hoverBox .title {
        font-size: 20px;
    }

    .carousel-caption .box span {
        display: none;
    }

    .intro-boardbox .dh-front-blog {
        margin: 0;
    }

    .intro-boardbox .dh-front-blog>div {
        padding: 0;
    }

    .sub-layout {
        padding: 30px 15px 50px;
    }

    .sub-top {
        position: relative;
        padding-bottom: 20px;
        margin-bottom: 30px;
        flex-direction: column-reverse;
        justify-content: flex-start;
        align-items: flex-start;
    }

    .sub-top .title {
        font-size: 24px;
        padding-top: 23px;
    }

    .sub-top .title .small-cap {
        font-size: 13px;
        padding-left: 8px;
    }

    .sub-top .breadcrumb li:first-child {
        padding-left: 0;
        margin-bottom: 10px;
    }

    .sub-top h2 {
        font-size: 24px;
    }

    .sub-top h2 .small-cap {
        font-size: 13px;
    }

    .subpage-content p {
        font-size: 13px;
    }

    .subpage-content table {
        font-size: 12px;
        word-break: break-word;
    }

    .subpage-content table th,
    .subpage-content table td {
        padding: 10px !important;
    }

    .subpage-content .row+.row {
        margin-top: 40px;
    }

    .subpage-content .wrap-title h4 {
        font-size: 20px;
    }

    .subpage-content *+h5 {
        margin-top: 25px;
    }

    .subpage-content h5 {
        font-size: 17px;
        margin-bottom: 10px;
    }

    .greet-wrap {
        display: flex;
        flex-direction: column-reverse;
    }

    .greet-wrap p {
        text-align: center;

    }

    .greet-wrap .top {
        font-size: 18px;
    }

    .greet-wrap .text {
        padding-left: 0;
        margin-bottom: 40px;
    }

    .greet-wrap .name {
        text-align: center;
        font-size: 18px;
        margin-top: 25px;
    }

    .greet-wrap .name small {
        font-size: 14px;
    }

    .history-wrap .item {
        padding-left: 0;
    }

    .history-wrap .item h5 {
        position: relative !important;
        top: inherit !important;
        bottom: inherit !important;
        margin-bottom: 17px;
    }

    .map-wrap .info ul {
        display: block;
    }

    .li-year li {
        margin-left: 0px;
    }

    .map-wrap .info li+li {
        margin-left: 0;
        margin-top: 15px;
    }

    .map-wrap .info {
        flex-direction: column;
        align-items: flex-start;
    }

    .map-wrap h5 {
        text-align: left;
        line-height: 1.5;
        font-size: 16px;
    }

    .map-wrap .info li {
        font-size: 15px;
    }

    .map-wrap .map>div {
        margin-bottom: 0 !important;
    }

    .map-wrap .map>div+div {
        margin-top: 15px;
    }

    .dl-call {
        position: relative;
        display: block;
        margin-top: 50px;
        height: auto;
        padding: 10px 10px 10px 75px;
        font-size: 13px;
    }

    .dl-call dt {
        width: 60px;
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        font-size: 15px;
    }

    .dl-call dd {
        margin-left: 0;
        justify-content: flex-start;
    }

    .dl-call dd+dd {
        margin-top: 5px;
    }

    .li-down a {
        height: auto;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .subpage-content table th,
    .subpage-content table td {
        font-size: 13px;
    }

    .research-wrap .text>span {
        font-size: 12px;
    }

    #cert04 .title-wrap .wrap-title {
        margin-bottom: 20px;
    }

    #cert04 .title-wrap p {
        padding: 0;
    }

    #cert04 .title-wrap .wrap-title h3 {
        font-size: 22px;
    }
    .li-step{
        display: block;
    }
    .li-step li+li{
        margin-left: 0;
        margin-top: 20px;
    }
    .li-step li+li::before{
        content: "\f107";
        left: 50%;
        top: -22px;
        transform: translateX(-50%);
    }
    .table-num tbody tr:first-child>td:first-child{
        font-size: 14px;
    }
    .li-process li{
        text-align: center;
        padding: 20px;
    }
}

.filter-items {
    display: flex;
    margin: 0;
    padding: 0;
}

.filter-items a {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    margin: 0;
    padding: 0 30px;
    background: #868686;
}

.filter-items a.on {
    background: var(--brand);
}

.filter-items .filter-label {
    color: #fff;
    font-size: 14px;
}

.filter-items .filter-label:hover {
    background: transparent;
}

.filter-items a+a {
    margin-left: 5px;
}

.filter-items a>div {
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    background: transparent;
    color: inherit;
}

.q_number i {
    display: none;
}

.q_number>div h3 {
    margin-bottom: 10px !important;
}

#mod_type_formForm {
    max-width: 800px;
    margin: 0 auto;
}

#notice06 .bbs-area {
    background: var(--gray-150);
    padding-top: 50px;
    padding-bottom: 10px;
}

#mod_type_formForm .q_number {
    margin-top: 15px;
}

#mod_type_formForm .q_number input {
    margin-bottom: 0;
}

#mod_type_formForm .q_number div h3 {
    font-size: 16px;
}

.form-control:focus {
    box-shadow: none;
    border-color: #666;
}

#mod_type_formForm .btn-wrap {
    float: none;
    padding: 0;
}

#mod_type_formForm .btn-primary {
    background: #333;
    border-color: #333;
    border-radius: 3px;
    float: none !important;
    width: 180px;
}

#mod_type_formForm .btn-primary:hover {
    background: var(--brand);
    border-color: var(--brand);
}

/* 포토갤러리 */
.bbs-blog2-index-layout .dhb-txt-box-type-b {
    background-color: #fff;
    border: 1px solid var(--gray-500);
    padding: 0 10px;
    width: calc(25% - 10px);
    margin: 0 4px 8px;
}

.dhb-txt-box-type-b-img-layout {
    padding: 0;
}

.dhb-txt-box-type-b-text-layout {
    text-align: center;
}

.dhb-txt-box-type-b-text-layout h4 {
    font-size: 16px;
    padding-top: 10px;
    padding-bottom: 18px;
    margin: 0;
}

.dhb-txt-box-type-b-img-layout .thumb-hidden {
    height: 180px;
    box-shadow: none;
}

.dhb-txt-box-type-b-text-layout .txt-box-footer {
    display: none;
}

/* list 게시판 */
.dh-board>.table-hover {
    border-top: 2px solid var(--brand);
    border-bottom: 1px solid var(--gray-600);
    margin: 0px;
}

.dh-board>.table-hover td,
.dh-board>.table-hover th {
    padding: 12px !important;
    font-size: 14px;
    font-weight: 400;
}

.dh-board>.table-hover th {
    background: var(--gray-300);
    border-bottom: 1px solid var(--gray-600);
}

.dh-board>.table-hover td {
    border-bottom: 1px solid var(--gray-500);
}

.dh-board>.table-hover>tbody>tr:hover td {
    background-color: #ffffff;
}

.table-hover th,
.table-hover td {
    padding: 10px !important;
    border-right: none;
}

.dh-board>.table-hover td.subject a {
    color: #4a4a4a;
    font-weight: 400;
}

.dh-board>.table-hover td.subject a:hover {
    color: var(--brand);
    text-decoration: underline !important;
    font-weight: 600;
}

.dh-margin-top {
    display: inline-block;
    margin-top: 30px;
}

.label {
    background: transparent;
    padding: 0px 5px 0px;
    font-size: 90%;
}

.label-danger {
    color: #e01717;
    border-radius: 100%;
    display: inline-block;
    font-weight: 600;
}

.label-primary {
    color: #2b5cb7;
}

.pagination>.active>a,
.pagination>.active>a:focus,
.pagination>.active>a:hover,
.pagination>.active>span,
.pagination>.active>span:focus,
.pagination>.active>span:hover {
    background-color: var(--gray-300);
    border: 1px solid var(--gray-500);
    color: #4a4a4a;
}

.pagination>li>a,
.pagination>li>span {
    color: #9D8478;
}

.pagination>li>a:focus,
.pagination>li>a:hover,
.pagination>li>span:focus,
.pagination>li>span:hover {
    color: #9D8478;
}

.dh-margin-top form#insertForm {
    width: 100%;
    max-width: 100%;
    display: block;
    margin: 0 0 0;
}

.btnRead {
    font-weight: 500;
}

.btn-default,
.btn-primary,
.btn-danger {
    background-image: none;
}

.btn-group,
.btn-group-vertical {
    margin: 10px 0 30px;
}

#btnNew {
    background: #4a4a4a;
    border: 1px solid #4a4a4a;
}

.dh-view-box {
    margin-top: 0px;
}

.sns-box {
    display: none;
}

.dh-view-box>.row>.page-header h4 {
    padding: 15px;
    font-size: 15px;
    font-weight: 600;
    color: #4a4a4a;
    margin: 0;
}

.dh-view-box>.row>.page-header {
    border-top: 2px solid #4a4a4a;
    border-bottom: 1px solid var(--gray-500);
    padding: 0;
    margin: 0;
    background: var(--gray-300);
}

.content_wrap .page-header h4:before {
    content: none;
}

.dh-view-box>.row>.dh-view-info {
    border-bottom: 1px solid var(--gray-500);
    background: transparent;
    padding: 8px 10px 8px;
    margin: 0 0 10px;
    display: none;
}

.dh-view-box>.row>.dh-view-info>span {
    padding: 0 15px 0 0;
}

.dh-view-box>.row>.dh-view-info>span>strong {
    color: #555;
    padding: 0 5px 0 0;
}

.dh-view-box .dh-attach {
    padding: 0 40px 0;
}

.dh-view-box .dh-attach h6 {
    margin: 0;
    padding: 0;
}

/* ----------- 회원가입 ---------- */
.join-layout .jumbotron {
    background: rgba(0, 0, 0, 0);
    border-radius: 0;
    padding: 0 0 20px;
    margin-bottom: 30px;
    border-bottom: 1px solid #e3e3e3;
}

.join-layout .jumbotron h1 {
    font-size: 34px;
    font-weight: 700;
    color: var(--text);
    margin: 0;
    display: inline-block;
}

.join-layout .jumbotron p {
    display: none;
}

.join-agree-area .panel {
    border: none;
    box-shadow: none;
    border-radius: 0;
    margin: 0;
}

.join-agree-area .panel .row {
    padding: 0 !important;
}

.join-agree-area .form-control {
    border-radius: 0;
    box-shadow: none;
    border: 1px solid var(--gray-500);
    background: var(--gray-300);
    padding: 10px 15px;
    font-size: 13px;
}

.join-agree-area .panel-footer {
    background: rgba(0, 0, 0, 0);
    border: none;
    padding: 20px 0 0;
}

.join-agree-area .panel-footer .btn-default {
    background: #ffffff;
    border: 1px solid var(--gray-500);
    border-radius: 0;
    font-size: 16px;
    padding: 15px;
}

.join-agree-area .panel-footer .btn-default:hover {
    border-color: var(--gray-700);
}

.join-layout .form-horizontal .panel {
    border: none;
    border-radius: 0;
    box-shadow: none;
}

.join-layout .form-horizontal .panel-heading {
    padding: 0;
    font-weight: 600;
    font-size: 20px;
    margin: 0 0 15px;
    background: url(/skin/img/sub/sub_bulit.png) no-repeat left 1px;
    padding-left: 24px;
    border-bottom: none;
    line-height: 1;
}

.join-layout .form-horizontal .panel-body {
    padding: 0;
    border-top: 1px solid var(--gray-500);
}

.join-layout .form-horizontal .panel-body .form-group {
    margin: 0;
    border-bottom: 1px solid var(--gray-500);
    padding: 0;
}

.join-layout .form-horizontal .form-group .control-label {
    text-align: left;
    width: 200px;
    padding: 20px 15px;
    font-size: 14px;
    background: var(--gray-300);
}

.join-layout .form-horizontal .form-group .control-label br {
    display: none;
}

.join-layout .form-horizontal .panel-body .form-group .col-sm-6 {
    padding: 13px 15px 0;
}

.join-layout .form-horizontal .panel-body .joinForm-zipcode .col-sm-3 {
    padding: 13px 15px 0;
}

.join-layout .form-horizontal .form-group .form-control {
    box-shadow: none;
    border-radius: 0;
    border: 1px solid var(--gray-500);
}

.join-layout .form-horizontal .joinForm-addr .control-label {
    padding: 40px 15px;
}

.join-layout .form-horizontal .form-group label.error {
    font-size: 10px;
    margin: 0;
}

.join-layout .form-horizontal .panel-footer {
    border: none;
    padding: 0;
    background: rgba(0, 0, 0, 0);
    border-radius: 0;
}

.join-layout .form-horizontal .panel-footer .form-group {
    padding: 20px 0 0 !important;
    margin-bottom: 0;
}

.join-layout .form-horizontal .panel-footer .btn {
    border: 1px solid var(--gray-500);
    border-radius: 0;
    font-size: 16px;
    padding: 15px;
}

.join-layout .form-horizontal .panel-footer .btn-default:hover {
    border-color: var(--gray-700);
    background: #fff;
}

.join-layout .form-horizontal .panel-footer .btn-success {
    border: 1px solid #4e4f52;
    background: #4e4f52;
}

.join-layout .form-horizontal .panel-footer .btn-success:hover {
    background: #3d3e40;
}


/* ----------- 모듈 페이지 모바일 ---------- */
@media (max-width:767px) {
    #notice06 .bbs-area{
        padding-top: 5px;
        padding-bottom: 10px;
    }
    #mod_type_formForm{
        margin-bottom: 10px !important;
    }
    .bbs-blog2-index-layout > p,
    .bbs-list-index-layout > p,
    .mod-custom-form-add > p{
        display: none;
    }
    .bbs-blog2-index-layout .dhb-txt-box-type-b {
        width: 100%;
    }
    #mod_type_formForm .q_number div h3{
        width: 100%;
    }

    .dh-board>.table-hover td,
    .dh-board>.table-hover th {
        padding: 10px !important;
        font-size: 12px;
        font-weight: 400;
    }
    .dh-board .regdate,
    .dh-board .hits,
    .dh-board .writer{
        display: none;
    }
    .dh-board .pagination{
        display: flex;
        justify-content: center;
        margin-top: 10px;
        margin-bottom: 20px;
    }

    .dh-margin-top {
        margin-top: 10px;
    }

    .join-layout .jumbotron {
        font-size: 24px;
        padding-top: 23px;
    }

    .join-layout .form-horizontal .panel-body .form-group {
        padding: 15px 0;
    }

    .join-layout .form-horizontal .panel-body .joinForm-zipcode .col-sm-3 {
        padding: 0;
    }

    .join-layout .form-horizontal .form-group .control-label {
        width: auto;
        background: rgba(0, 0, 0, 0);
        padding: 0;
    }

    .join-layout .form-horizontal .panel-body .form-group .col-sm-6 {
        padding: 0;
    }
    .left_menu_wrap {
    background: var(--gray-200); /* 밝은 회색 배경 */
    border: 1px solid var(--gray-600);
    padding: 20px 15px;
    margin-bottom: 30px;
}

.left_menu_wrap h4 {
    font-size: 18px;
    font-weight: 600;
    color: var(--brand);
    margin-bottom: 15px;
    border-bottom: 1px solid var(--brand);
    padding-bottom: 8px;
}

.left_menu_wrap ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.left_menu_wrap ul li {
    margin-bottom: 12px;
}

.left_menu_wrap ul li a {
    color: #333;
    font-size: 14px;
    text-decoration: none;
    transition: color 0.2s ease;
}

.left_menu_wrap ul li a:hover {
    color: var(--brand);
    text-decoration: underline;
}

}














/* === 메인 게시판 3블록: 50% : 50% 기본 === */
.intro-board-widget-layout {
  display: grid;
  grid-template-columns: 50% 50%;  /* 좌/우 동일 비율 */
  grid-auto-rows: auto;
  column-gap: 24px;
  row-gap: 50px;
  max-width: 1170px;
  margin: 0 auto;
  padding: 60px 0 80px;
  box-sizing: border-box;
}

/* 내부 박스 기본값: 이전 float/width 강제값 무력화 */
.intro-board-widget-layout .intro-boardbox{
  width: auto !important;
  float: none !important;
  min-width: 0;
  box-sizing: border-box;
}

/* 배치: 좌측=1번(사업), 우측상단=2번(공지), 우측하단=3번(갤러리) */
.intro-board-widget-layout .intro-boardbox:nth-child(1){ grid-column:1 / 2; grid-row:1 / 3; }
.intro-board-widget-layout .intro-boardbox:nth-child(2){ grid-column:2 / 3; grid-row:1 / 2; }
.intro-board-widget-layout .intro-boardbox:nth-child(3){ grid-column:2 / 3; grid-row:2 / 3; }

/* 태블릿 이하: 1열 스택 */
@media (max-width: 991px){
  .intro-board-widget-layout{
    grid-template-columns: 100%;
    padding: 30px 0;
  }
  /* ★ PC용 그리드 배치 초기화 */
  .intro-board-widget-layout .intro-boardbox{
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    margin: 0 0 20px;
  }
}

/* 갤러리 내부 여백 다이어트 */
.intro-boardbox .dh-front-blog{
  padding-top: 12px;      /* 35px → 12px */
  padding-bottom: 10px;   /* 35px → 10px */
  /* 필요 없으면 아래 줄로 바닥선도 제거 가능 */
  /* border-bottom: 0; */
}

/* 갤러리 썸네일 카드 아래 여백 제거(부트스트랩 기본 margin-bottom 보정) */
.intro-boardbox .dh-front-blog > .col-md-4 > .thumbnail{
  margin-bottom: 0;
}

/* === 드롭다운(데스크톱) – 살짝 투명 + 가벼운 글래스 느낌 === */
.navbar-inverse .dropdown-menu{
  background: rgba(243,243,243,.50);          /* #f3f3f3 ≒ var(--gray-300) */
  border-color: rgba(0,0,0,.08);
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
  -webkit-backdrop-filter: saturate(120%) blur(6px);
  backdrop-filter: saturate(120%) blur(6px);
}

/* === 드롭다운(모바일) – 동일하게 반투명 적용 === */
@media (max-width: 767px){
  .navbar-nav .open .dropdown-menu{
    background: rgba(243,243,243,.50);
    border-color: rgba(0,0,0,.08);
    -webkit-backdrop-filter: saturate(120%) blur(6px);
    backdrop-filter: saturate(120%) blur(6px);
  }
}
