/* 퍼블리셔 */
:root {
	--main-color: #0054cc;
	--area-width: 1720px;
}
* {
    margin: 0;
    padding: 0;
    border: 0;
}


html {
  scroll-behavior: smooth;
}

body, html, div {
    font-family: "Pretendard Variable", Pretendard, "나눔 고딕", "Nanum Gothic", Verdana, Arial, sans-serif;
    font-size: 16px;
    color: #222222;
    letter-spacing: -0.8px;
	word-break: keep-all;
}
img {
    vertical-align: top;
}
ul,ol,dl {
    list-style: none;
    margin: 0;
    padding: 0;
}
a {
    text-decoration:none;
}


#wrap {
    width: 100%;
    position: relative;
}

.inner {
    width: 1280px;
    margin: auto;
}
.inner_wide {
    width: 1720px;
}

.tit_deco {
    font-family: 'TheJamsil';
    font-size: 24px;
    margin-bottom: 20px;
    text-align: center;
    color: #0054CC;
}
.inner h2 {
    font-family: 'TheJamsil';
    font-size: 58px;
    font-weight: 400;
    margin-bottom: 60px;
    text-align: center;
}

.txt_wh {
    color: #fff;
}

.desc {
    font-size: 24px;
    line-height: 1.5;
}



.ptb {
    padding-top: 200px;
    padding-bottom: 200px;
}

.pt {
    padding-top: 200px;
}

.pb {
    padding-bottom: 200px;
}


.br_m {
    display: none;
}


/* ################# header  ################# */

#hd {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    transition: all 0.3s;
    background-image: linear-gradient(to bottom, rgba(0,0,0,.2), transparent);
}

#hd .hd_wr {
    width: calc(100% - 50px);
    height: 100px;
    margin: auto;
    display: flex;
    align-items: center;
    column-gap: 40px;
}

#hd .logo {
    width: 142px;
    height: 44px;
    margin-right: auto;
    flex: 0 0 auto;
}

#hd .logo a {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 0;
    background: url('/img/common/logo_wh.png') no-repeat center / contain;
}

#gnb {
    width: 100%;
    max-width: 980px;
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
}

#gnb>ul {
    min-width: 820px;
    display: flex;
    justify-content: space-between;
}

#gnb>ul>li {
    width: calc(100% / 6);
    transition: all 0.22s linear;
    position: relative;
}

#gnb>ul>li>a {
    display: block;
    width: 100%;
    padding: 40px 0;
    font-size: 18px;
    color: #fff;
    font-weight: 500;
    text-align: center;
}

#gnb .member ul {
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    gap: 10px;
}

#gnb .member a {
    display: block;
    color: #fff;
    background-color: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 100px;
    padding: 10px;
    transition: all 0.22s linear;
}

#gnb .member a:hover {
    font-weight: 600;
}

#gnb .member>div span {
    vertical-align: middle;
}

#gnb .depth02 {
    width: 100%;
    height: 0;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    padding: 1rem 0;
    opacity: 0;
    pointer-events: none;
    transition: all 0.2s 0.2s linear;
}

#gnb .depth02::before {
    content: '';
    width: 0%;
    height: 5px;
    background-color: #0054CC;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    transition: all 0.3s;
}

#gnb .depth02 a {
    color: #222;
    transition: all 0.3s;
}




#hd.open #gnb {
    overflow: visible;
}

#hd.open #gnb::after {
    content: '';
    width: 1000%;
    height: 1px;
    background: #ddd;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
}

#hd.open #gnb .depth02 {
    height: 100%;
    opacity: 1;
    pointer-events: auto;
}

#gnb .depth02 a {
    display: block;
    width: 100%;
    font-size: 16px;
    text-align: center;
    padding: 10px 0;
}

#hd .sitemap {
    margin-left: auto;
}

#hd .hd_bg {
    width: 100%;
    height: 0;
    background: #fff;
    position: absolute;
    top: 0%;
    left: 0;
    content: '';
    z-index: -1;
    transition: all 0.2s linear;
    box-shadow: 0 5px 10px rgba(0, 0, 0, .05);
}

#hd.open .hd_bg {
    height: 290px;
    overflow: hidden;
}

#hd.open #gnb>ul>li>a {
    color: #222;
}

#hd.open #gnb .member a {
    color: #222;
    background-color: rgba(0,0,0,.05);
    border-color: rgba(0,0,0,.1);
}

#hd.open .logo a {
    transition: all 0.8s ease-in-out;
    background-image: url('/img/common/logo.png');
}

#hd.open .hamBtn .line {
    background-color: #222;
}



/* hover event */
#gnb>ul>li:hover .depth02::before {
    width: 100%;
}

#hd #gnb .depth02 a:hover {
    color: #000;
    font-weight: 700;
}



/* 햄버거 버튼 */
.hamBtn {
    width: 2rem;
    height: 3rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0.7rem 0;
    background: transparent;
    cursor: pointer;
}

.hamBtn .line {
    display: block;
    width: 100%;
    height: 2px;
    border-radius: 0.2rem;
    background-color: #fff;
    transition: all 0.5s ease-in-out;
}

.hamBtn .line+.line {
    margin-top: 9px;
}

/* active */
.hamBtn.act {
    position: relative;
    z-index: 100000;
}

.hamBtn.act .line:nth-child(2),
.hamBtn.act .line:nth-child(4) {
    opacity: 0;
}

.hamBtn.act .line:nth-child(1) {
    transform: translateY(0.4rem) rotate(45deg);
}

.hamBtn.act .line:nth-child(3) {
    width: 100%;
    transform: translateY(-1rem) rotate(-45deg);
}



.site_menu {
    width: 100%;
    height: 100vh;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10001;
    overflow: hidden;
    display: none;
}

.site_menu.open {
    display: flex;
}

.site_menu .btn_wr {
    width: 100px;
}

.site_menu .site_list {
    width: calc(100% - 100px);
    display: flex;
}

.site_menu .site_categ {
    width: calc(100%/6);
    border-right: solid 1px #ddd;
    position: relative;
}

.site_menu .site_categ .sc_bg {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    background: #191919;
    transition: all 0.1s 0s;
}

.site_menu .site_categ .categ_wr {
    width: 100%;
    min-height: 500px;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
}

.site_menu .categ_wr h2 {
    color: #191919;
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -1.0px;
    padding: 0 15%;
    margin-bottom: 40px;
}

.site_menu .categ_wr ul li a {
    display: block;
    position: relative;
    color: #777;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.2;
    padding: 20px 15%;
    z-index: 1;
    transition: all 0.5s;
}



/* sitemenu hover event  */
.site_menu .categ_wr ul li a::after {
    content: '';
    width: 0;
    height: 100%;
    background: #0054CC;
    position: absolute;
    top: 0%;
    left: 0;
    z-index: -1;
    transition: all 0.5s;
}

.site_menu .categ_wr ul li a:hover {
    color: #fff;
}

.site_menu .categ_wr ul li a:hover::after {
    width: 100%;
}




.goTop {
    width: 80px;
    height: 80px;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    box-shadow: 10px 10px 25px rgba(0,0,0,.25);
    position: fixed;
    right: 30px;
    bottom: 70px;
    z-index: 10000;
}






.footer {
    border-top: 5px solid transparent;
    border-image: linear-gradient(to right, #0054CC, #08CDD5) 1;
    padding: 70px 0;
    box-sizing: border-box;
}
.footer .inner:first-child {
    display: flex;
    justify-content: space-between;
    padding-bottom: 40px;
    border-bottom: 1px solid #DDE0E5;
    margin-bottom: 40px;
}
.ft_left .ft_logo {
    width: 161px;
    height: 50px;
    margin-bottom: 20px;
}
.ft_left .ft_logo img {
    width: 100%;
}
.ft_left .slogan {
    font-family: 'TheJamsil';
    font-size: 24px;
    font-weight:400;
    color: #222;
}

.ft_right ul {
    display: flex;
    gap: 15px;
}
.ft_right ul li a {
    width: 144px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #0054CC;
    background: #EBF3FF;
    border-radius: 40px;
    font-family: 'TheJamsil';
    font-weight: 300;
    font-size: 18px;
}

.fnb ul {
    display: flex;
    gap: 22px;
}
.fnb ul li a {
    font-family: 'TheJamsil';
    color: #5F6063;
    font-weight: 400;
}

.info {
    margin: 20px 0;
}
.info ul {
    display: flex;
    flex-wrap: wrap;
    width: 960px;
    gap: 8px 30px;
    color: #ACB2BC;
}
.info ul li span {
    color: #878D96;
    margin-left: 15px;
}
.info ul li span a {
	color: #878D96;
}

.copyright {
    font-size: 14px;
    color: #ACB2BC;
    text-transform: uppercase;
}



@media screen and (max-width:1720px) {

    .tit_deco {
        font-size: 3vw;
        margin-bottom: 2vw;
    }
    .inner h2 {
        font-size: clamp(30px, 6vw, 58px);
        margin-bottom: clamp(20px, 7vw, 50px);
    }


    .inner,
    .inner_wide {
        width: calc(100% - 10vw);
        margin: auto;
    }


    .desc {
        font-size: clamp(18px, 3.5vw, 26px);
		line-height: 1.6;
    }

    
    .ptb {
        padding-top: 14vw;
        padding-bottom: 14vw;
    }

    .pt {
        padding-top: 14vw;
    }

    .pb {
        padding-bottom: 14vw;
    }

	.pb24 {
		padding-bottom: 24vw;
	}

    #hd .hd_wr {
        width: calc(100% - 10vw);
        height: clamp(80px, 12vw, 100px);
    }


    #hd .logo {
        width: clamp(148px, 22vw, 200px);
        height: clamp(47px, 7vw, 50px);
    }

    #gnb>ul {
        display: none;
    }
    #gnb .member {
        margin-left: auto;
    }

    #hd .hd_bg {
        display: none;
    }
    
    #hd.open #gnb::after {
        display: none;
    }

    .br_pc {
        display: none;
    }



            

    .site_menu .btn_wr {
        width: 100px;
    }

    .site_menu .site_list {
        width: calc(100% - 100px);
    }


    .site_menu .site_categ .categ_wr {
        width: 100%;
        min-height: 500px;
    }

    .site_menu .categ_wr h2 {
        font-size: 24px;
        padding: 0 15%;
        margin-bottom: 40px;
    }

    .site_menu .categ_wr ul li a {
        font-size: 20px;
        font-weight: 400;
        line-height: 1.2;
        padding: 20px 15%;
    }

    .hamBtn.act .line {
        background: #222;
    }



    /* sitemenu hover event  */
    .site_menu .categ_wr ul li a::after {
        height: 100%;
    }


        

    .goTop {
        width: clamp(30px, 10vw, 80px);
        height: clamp(30px, 10vw, 80px);
        box-shadow: 10px 10px 25px rgba(0,0,0,.25);
        right: 30px;
        bottom: 70px;
    }









    .footer {
        padding: 8vw 0;
    }
    .footer .inner:first-child {
        padding-bottom: 4vw;
        margin-bottom: 4vw;
        flex-direction: column;
        gap: 3vw;
    }
    .ft_left .ft_logo {
        width: 161px;
        height: 50px;
        margin-bottom: 20px;
    }
    .ft_left .slogan {
        font-size: 3vw;
    }

    .ft_right ul {
        gap: 2vw;
    }
    .ft_right ul li a {
        width: clamp(120px, 20vw, 200px);
        height: clamp(40px, 8vw, 80px);
        font-size: clamp(16px, 2.5vw, 30px);
    }

    .fnb ul {
        gap: 22px;
        font-size: 2vw;
    }

    .info {
        margin: 20px 0;
        font-size: 2vw;
    }
    .info ul {
        width: 100%;
        gap: 8px 30px;
    }
    .info ul li span {
        margin-left: 15px;
    }

    .copyright {
        font-size: 1.7vw;
    }

        
}


@media screen and (max-width:768px) {

    body, html, div {
        letter-spacing: -0.2px;
    }

    .tit_deco {
        font-size: 3.5vw;
    }

    .br_m {
        display: block;
    }



    #hd .hd_wr {
        column-gap: 4vw;
    }

    #hd .logo {
        width: 100px;
        height: 36px;
    }

    #gnb .member ul {
        font-size: 2.8vw;
        gap: 2vw;
    }

    .hamBtn {
        width: 7vw;
        height: 8vw;
        padding: 1vw 0;
    }
    .hamBtn .line+.line {
        margin-top: 2vw;
    }

    .hamBtn.act .line:nth-child(1) {
        transform: translateY(0.5vw) rotate(45deg);
    }
    .hamBtn.act .line:nth-child(3) {
        width: 100%;
        transform: translateY(-4.5vw) rotate(-45deg);
    }



    .site_menu.open {
        padding: 20vw;
    }
    .site_menu .site_list {
        flex-direction: column;
        width: 100%;
    }
    .site_menu .site_categ {
        width: 100%;
		border: 0;
    }
    .site_menu .site_categ .categ_wr {
        min-height: auto;
		display: flex;
		column-gap: 5vw;
    }
	.site_menu .site_categ:not(:last-child) {
		padding-bottom: 4vw;
		border-bottom: 1px solid #ddd;
		margin-bottom: 4vw;
	}
   
    .site_menu .categ_wr h2 {
        font-size: clamp(16px,5vw,24px);
        padding: 0;
        margin-bottom: 0;
    }
	.site_menu .categ_wr ul {
		width: 100%;
	}
	.site_menu .categ_wr ul li:not(:last-child) {
		margin-bottom: 3vw;
	}
    .site_menu .categ_wr ul li a {
        font-size: clamp(16px,5vw,24px);
        padding: 0;
    }
    .sc_bg {
        display: none;
    }


	/* sitemenu hover event  */
	.site_menu .categ_wr ul li a::after {
		display: none;
	}

	.site_menu .categ_wr ul li a:hover {
		color: #777;
	}



    

    .goTop {
        right: 5vw;
        bottom: 7vw;
    }
    .goTop a {
        width: 3vw;
    }
    .goTop a img {
        width: 100%;
        vertical-align: initial;
    }




    
    .footer .inner:first-child {
        padding-bottom: 6vw;
        margin-bottom: 6vw;
        gap: 5vw;
    }
    .ft_left .ft_logo {
        width: 25vw;
        height: 8vw;
        margin-bottom: 3vw;
    }
    .ft_left .slogan {
        font-size: 4vw;
    }

    .ft_right ul {
        gap: 2vw;
    }
    .ft_right ul li a {
        width: 20vw;
        height: 8vw;
        font-size: 3vw;
    }

    .fnb ul {
        gap: 5vw;
        font-size: 3vw;
    }

    .info {
        margin: 20px 0;
        font-size: 3vw;
    }
    .info ul {
        gap: 2vw 5vw;
    }
    .info ul li span {
        margin-left: 2vw;
    }

    .copyright {
        font-size: 2.7vw;
    }
   
}


/* 그누보드 reset */
ul,
dl,
dt,
dd {
	margin: 0;
	padding: 0;
	list-style: none
}

legend {
	position: absolute;
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 0;
	text-indent: -9999em;
	overflow: hidden
}

label,
input,
button,
select,
img {
	vertical-align: middle;
	font-size: 1em
}

input,
button {
	margin: 0;
	padding: 0;
	font-size: 1rem;
}

input[type="submit"] {
	cursor: pointer
}

button {
	cursor: pointer
}

textarea,
select {
	font-size: 1em;
}

select {
	margin: 0
}

p {
	margin: 0;
	padding: 0;
	/* word-break: break-all */
}

hr {
	display: none
}

pre {
	overflow-x: scroll;
	font-size: 1.1em
}

a {
	color: #000;
	text-decoration: none
}

*,
:after,
:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

input[type=text],
input[type=password],
textarea {
	-webkit-transition: all 0.30s ease-in-out;
	-moz-transition: all 0.30s ease-in-out;
	-ms-transition: all 0.30s ease-in-out;
	-o-transition: all 0.30s ease-in-out;
	outline: none;
}

input[type=text]:focus,
input[type=tel]:focus,
input[type=password]:focus,
textarea:focus,
select:focus {
	-webkit-box-shadow: 0 0 5px #9ed4ff;
	-moz-box-shadow: 0 0 5px #9ed4ff;
	box-shadow: 0 0 5px #9ed4ff;
	border: 1px solid #558ab7 !important;
}

.placeholdersjs {
	color: #aaa !important
}

#bo_v_title .bo_v_tit {
	font-size: 2.2rem;
    font-weight: 600;
	letter-spacing: -1px;
}


/* === 그누보드 CSS ===*/

/* 팝업레이어 */
#hd_pop {
	z-index: 2000;
	position: relative;
	margin: 0 auto;
	height: 0
}

#hd_pop h2 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden
}

.hd_pops {
	position: absolute;
	border: 1px solid #e9e9e9;
	background: #fff
}

.hd_pops {
	
}

.hd_pops img {
	max-width: 100%
}

.hd_pops_con {
	
}

.hd_pops_footer {
	padding: 0;
	background: #000;
	color: #fff;
	text-align: left;
	position: relative
}

.hd_pops_footer:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

.hd_pops_footer button {
	padding: 10px;
	border: 0;
	color: #fff
}

.hd_pops_footer .hd_pops_reject {
	background: #000;
	text-align: left
}

.hd_pops_footer .hd_pops_close {
	background: #393939;
	position: absolute;
	top: 0;
	right: 0
}

/* 게시물 선택복사 선택이동 */
#copymove {}

#copymove .win_desc {
	text-align: center;
	display: block
}

#copymove .tbl_wrap {
	margin: 20px
}

#copymove .win_btn {
	padding: 0 20px 20px
}

.copymove_current {
	float: right;
	background: #ff3061;
	padding: 5px;
	color: #fff;
	border-radius: 3px
}

.copymove_currentbg {
	background: #f4f4f4
}

/* 화면낭독기 사용자용 */
#hd_login_msg {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 0;
	line-height: 0;
	overflow: hidden
}

.msg_sound_only,
.sound_only {
	display: inline-block !important;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 0;
	line-height: 0;
	border: 0 !important;
	overflow: hidden !important
}

/* 본문 바로가기 */
#skip_to_container a {
	z-index: 100000;
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 1px;
	font-size: 0;
	line-height: 0;
	overflow: hidden
}

#skip_to_container a:focus,
#skip_to_container a:active {
	width: 100%;
	height: 75px;
	background: #21272e;
	color: #fff;
	font-size: 2em;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	line-height: 3.3em
}

/* ie6 이미지 너비 지정 */
.img_fix {
	width: 100%;
	height: auto
}

/* 캡챠 자동등록(입력)방지 기본 -pc */
#captcha {
	display: inline-block;
	position: relative;
	margin-top: 20px;
}

#captcha legend {
	position: absolute;
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 0;
	text-indent: -9999em;
	overflow: hidden
}

#captcha #captcha_img {
	height: 40px;
	border: 1px solid #898989;
	vertical-align: top;
	padding: 0;
	margin: 0
}

#captcha #captcha_mp3 {
	margin: 0;
	padding: 0;
	width: 40px;
	height: 40px;
	border: 0;
	background: transparent;
	vertical-align: middle;
	overflow: hidden;
	cursor: pointer;
	background: url('/img/captcha2.png') no-repeat;
	text-indent: -999px;
	border-radius: 3px
}

#captcha #captcha_reload {
	margin: 0;
	padding: 0;
	width: 40px;
	height: 40px;
	border: 0;
	background: transparent;
	vertical-align: middle;
	overflow: hidden;
	cursor: pointer;
	background: url('/img/captcha2.png') no-repeat 0 -40px;
	text-indent: -999px;
	border-radius: 3px
}

#captcha #captcha_key {
	margin: 0 0 0 3px;
	padding: 0 5px;
	width: 90px;
	height: 40px;
	border: 1px solid #ccc;
	background: #fff;
	font-size: 1.333em;
	font-weight: bold;
	text-align: center;
	border-radius: 3px;
	vertical-align: top
}

#captcha #captcha_info {
	display: block;
	margin: 5px 0 0;
	font-size: 0.95em;
	letter-spacing: -0.1em
}

/* 캡챠 자동등록(입력)방지 기본 - mobile */
#captcha.m_captcha audio {
	display: block;
	margin: 0 0 5px;
	width: 187px
}

#captcha.m_captcha #captcha_img {
	width: 160px;
	height: 60px;
	border: 1px solid #e9e9e9;
	margin-bottom: 3px;
	margin-top: 5px;
	display: block
}

#captcha.m_captcha #captcha_reload {
	position: static;
	margin: 0;
	padding: 0;
	width: 40px;
	height: 40px;
	border: 0;
	background: transparent;
	vertical-align: middle;
	overflow: hidden;
	cursor: pointer;
	background: url('/img/captcha2.png') no-repeat 0 -40px;
	text-indent: -999px
}

#captcha.m_captcha #captcha_reload span {
	display: none
}

#captcha.m_captcha #captcha_key {
	margin: 0;
	padding: 0 5px;
	width: 115px;
	height: 29px;
	border: 1px solid #b8c9c2;
	background: #f7f7f7;
	font-size: 1.333em;
	font-weight: bold;
	text-align: center;
	line-height: 29px;
	margin-left: 3px
}

#captcha.m_captcha #captcha_info {
	display: block;
	margin: 5px 0 0;
	font-size: 0.95em;
	letter-spacing: -0.1em
}

#captcha.m_captcha #captcha_mp3 {
	width: 31px;
	height: 31px;
	background: url('/img/captcha2.png') no-repeat 0 0;
	vertical-align: top;
	overflow: hidden;
	cursor: pointer;
	text-indent: -9999px;
	border: none
}

/* ckeditor 단축키 */
.cke_sc {
	margin: 0 0 5px;
	text-align: right
}

.btn_cke_sc {
	display: inline-block;
	padding: 0 10px;
	height: 23px;
	border: 1px solid #ccc;
	background: #fafafa;
	color: #000;
	text-decoration: none;
	line-height: 1.9em;
	vertical-align: middle;
	cursor: pointer
}

.cke_sc_def {
	margin: 0 0 5px;
	padding: 10px;
	border: 1px solid #ccc;
	background: #f7f7f7;
	text-align: center
}

.cke_sc_def dl {
	margin: 0 0 5px;
	text-align: left;
	zoom: 1
}

.cke_sc_def dl:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

.cke_sc_def dt,
.cke_sc_def dd {
	float: left;
	margin: 0;
	padding: 5px 0;
	border-bottom: 1px solid #e9e9e9
}

.cke_sc_def dt {
	width: 20%;
	font-weight: bold
}

.cke_sc_def dd {
	width: 30%
}

/* ckeditor 태그 기본값 */
#bo_v_con ul {
	display: block;
	list-style-type: disc;
	margin-top: 1em;
	margin-bottom: 1em;
	margin-left: 0;
	margin-right: 0;
	padding-left: 40px
}

#bo_v_con ol {
	display: block;
	list-style-type: decimal;
	margin-top: 1em;
	margin-bottom: 1em;
	margin-left: 0;
	margin-right: 0;
	padding-left: 40px
}

#bo_v_con li {
	display: list-item
}

/* 버튼 */
a.btn,
.btn {
	line-height: 35px;
	height: 35px;
	padding: 0 10px;
	text-align: center;
	font-weight: bold;
	border: 0;
	font-size: 1.4em;
	-webkit-transition: background-color 0.3s ease-out;
	-moz-transition: background-color 0.3s ease-out;
	-o-transition: background-color 0.3s ease-out;
	transition: background-color 0.3s ease-out
}

a.btn01 {
	display: inline-block;
	padding: 7px;
	border: 1px solid #ccc;
	background: #fafafa;
	color: #000;
	text-decoration: none;
	vertical-align: middle
}

a.btn01:focus,
a.btn01:hover {
	text-decoration: none
}

button.btn01 {
	display: inline-block;
	margin: 0;
	padding: 7px;
	border: 1px solid #ccc;
	background: #fafafa;
	color: #000;
	text-decoration: none
}

a.btn02 {
	display: inline-block;
	padding: 7px;
	border: 1px solid #3b3c3f;
	background: #4b545e;
	color: #fff;
	text-decoration: none;
	vertical-align: middle
}

a.btn02:focus,
.btn02:hover {
	text-decoration: none
}

button.btn02 {
	display: inline-block;
	margin: 0;
	padding: 7px;
	border: 1px solid #3b3c3f;
	background: #4b545e;
	color: #fff;
	text-decoration: none
}

.btn_confirm {
	text-align: right
}

/* 서식단계 진행 */

.btn_submit {
	border: 0;
	background: #3a8afd;
	color: #fff;
	cursor: pointer;
	border-radius: 3px
}

.btn_submit:hover {
	background: #2375eb
}

.btn_close {
	border: 1px solid #dcdcdc;
	cursor: pointer;
	border-radius: 3px;
	background: #fff
}

a.btn_close {
	text-align: center;
	line-height: 50px
}

a.btn_cancel {
	display: inline-block;
	background: #969696;
	color: #fff;
	text-decoration: none;
	vertical-align: middle
}

button.btn_cancel {
	display: inline-block;
	background: #969696;
	color: #fff;
	text-decoration: none;
	vertical-align: middle
}

.btn_cancel:hover {
	background: #aaa
}

a.btn_frmline,
button.btn_frmline {
	display: inline-block;
	width: 128px;
	padding: 0 5px;
	height: 40px;
	border: 0;
	background: #434a54;
	border-radius: 3px;
	color: #fff;
	text-decoration: none;
	vertical-align: top
}

/* 우편번호검색버튼 등 */
a.btn_frmline {}

button.btn_frmline {
	font-size: 1em
}

/* 게시판용 버튼 */
a.btn_b01,
.btn_b01 {
	display: inline-block;
	color: #bababa;
	text-decoration: none;
	vertical-align: middle;
	border: 0;
	background: transparent
}

.btn_b01:hover,
.btn_b01:hover {
	color: #000
}

a.btn_b02,
.btn_b02 {
	display: inline-block;
	background: #253dbe;
	padding: 0 10px;
	color: #fff;
	text-decoration: none;
	border: 0;
	vertical-align: middle
}

a.btn_b02:hover,
.btn_b02:hover {
	background: #0025eb
}

a.btn_b03,
.btn_b03 {
	display: inline-block;
	background: #fff;
	border: 1px solid #b9bdd3;
	color: #646982;
	text-decoration: none;
	vertical-align: middle
}

a.btn_b03:hover,
.btn_b03:hover {
	background: #ebedf6
}

a.btn_b04,
.btn_b04 {
	display: inline-block;
	background: #fff;
	border: 1px solid #ccc;
	color: #707070;
	text-decoration: none;
	vertical-align: middle
}

a.btn_b04:hover,
.btn_b04:hover {
	color: #333;
	background: #f9f9f9
}

a.btn_admin,
.btn_admin {
	display: inline-block;
	color: #d13f4a;
	text-decoration: none;
	vertical-align: middle
}

/* 관리자 전용 버튼 */
.btn_admin:hover,
a.btn_admin:hover {
	color: #ff3746
}


/* 기본테이블 */
.tbl_wrap table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0 5px;
	background: #fff;
	border-top: 1px solid #ececec;
	border-bottom: 1px solid #ececec
}

.tbl_wrap caption {
	padding: 10px 0;
	font-weight: bold;
	text-align: left
}

/* 게시판 글쓴, 조회수, 날짜 제외 코드 */
.tbl_head01 thead tr th:nth-of-type(3),
.tbl_head01 thead tr th:nth-of-type(4),
.tbl_head01 thead tr th:nth-of-type(5){ 
	display: none !important;
} /* 상단 검은 바 */
.td_name { display: none !important; }         /* 글쓴이 칸 */
.td_num { display: none !important; }          /* 조회수, 번호 칸 */
.td_datetime { display: none !important; }     /* 날짜 칸 */
.all_chk { display: none !important; }         /* 전체선택 체크박스 */

/* 모바일 리스트형일 경우 */
.bo_date, .writer, .fa-clock-o, .fa-calendar { display: none !important; }
/* 게시판 글쓴, 조회수, 날짜 제외 코드 */

.tbl_head01 {
	margin: 0 0 10px
}

.tbl_head01 caption {
	padding: 0;
	font-size: 0;
	line-height: 0;
	overflow: hidden
}

.tbl_head01 thead th {
	padding: 20px 0;
	font-weight: normal;
	text-align: center;
	border-bottom: 1px solid #ececec;
	height: 40px;
	font-size: 15px;
}

.tbl_head01 thead th input {
	vertical-align: top
}

/* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head01 tfoot th,
.tbl_head01 tfoot td {
	padding: 10px 0;
	border-top: 1px solid #c1d1d5;
	border-bottom: 1px solid #c1d1d5;
	background: #d7e0e2;
	text-align: center
}

.tbl_head01 tbody th {
	padding: 8px 0;
	border-bottom: 1px solid #e8e8e8
}

.tbl_head01 td {
	color: #666;
	padding: 10px 5px;
	border-top: 1px solid #ecf0f1;
	border-bottom: 1px solid #ecf0f1;
	line-height: 1.4em;
	height: 60px;
	word-break: break-all;
	font-size: 15px;
}

.tbl_head01 tbody tr:hover td {
	background: #fafafa
}

.tbl_head01 a:hover {
	/* text-decoration: underline */
}

.tbl_head02 {
	margin: 0 0 10px
}

.tbl_head02 caption {
	padding: 0;
	font-size: 0;
	line-height: 0;
	overflow: hidden
}

.tbl_head02 thead th {
	padding: 5px 0;
	border-top: 1px solid #d1dee2;
	border-bottom: 1px solid #d1dee2;
	background: #e5ecef;
	color: #383838;
	font-size: 0.95em;
	text-align: center;
	letter-spacing: -0.1em
}

.tbl_head02 thead a {
	color: #383838
}

.tbl_head02 thead th input {
	vertical-align: top
}

/* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head02 tfoot th,
.tbl_head02 tfoot td {
	padding: 10px 0;
	border-top: 1px solid #c1d1d5;
	border-bottom: 1px solid #c1d1d5;
	background: #d7e0e2;
	text-align: center
}

.tbl_head02 tbody th {
	padding: 5px 0;
	border-top: 1px solid #e9e9e9;
	border-bottom: 1px solid #e9e9e9;
	background: #fff
}

.tbl_head02 td {
	padding: 5px 3px;
	border-top: 1px solid #e9e9e9;
	border-bottom: 1px solid #e9e9e9;
	background: #fff;
	line-height: 1.4em;
	word-break: break-all
}

.tbl_head02 a {}

/* 폼 테이블 */
.tbl_frm01 {
	margin: 0 0 20px
}

.tbl_frm01 table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0
}

.tbl_frm01 th {
	width: 70px;
	padding: 7px 13px;
	border: 1px solid #e9e9e9;
	border-left: 0;
	background: #f5f8f9;
	text-align: left
}

.tbl_frm01 td {
	padding: 7px 10px;
	border-top: 1px solid #e9e9e9;
	border-bottom: 1px solid #e9e9e9;
	background: transparent
}

.wr_content textarea,
.tbl_frm01 textarea,
.form_01 textarea,
.frm_input {
	border: 1px solid #d0d3db;
	background: #fff;
	color: #000;
	vertical-align: middle;
	border-radius: 3px;
	padding: 5px;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
	-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}

.tbl_frm01 textarea {
	padding: 2px 2px 3px
}

.frm_input {
	height: 40px
}

.full_input {
	width: 100%
}

.half_input {
	width: 49.5%
}

.twopart_input {
	width: 385px;
	margin-right: 10px
}

.tbl_frm01 textarea,
.write_div textarea {
	width: 100%;
	height: 100px
}

.tbl_frm01 a {
	text-decoration: none
}

.tbl_frm01 .frm_file {
	display: block;
	margin-bottom: 5px
}

.tbl_frm01 .frm_info {
	display: block;
	padding: 0 0 5px;
	line-height: 1.4em
}

/*기본 리스트*/
.list_01 ul {
	border-top: 1px solid #ececec
}

.list_01 li {
	border-bottom: 1px solid #ececec;
	background: #fff;
	padding: 10px 15px;
	list-style: none;
	position: relative
}

.list_01 li:nth-child(odd) {
	background: #f6f6f6
}

.list_01 li:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

.list_01 li:hover {
	background: #f9f9f9
}

.list_01 li.empty_li {
	text-align: center;
	padding: 20px 0;
	color: #666
}

/*폼 리스트*/
.form_01 h2 {
	font-size: 1.167em
}

.form_01 li {
	margin-bottom: 10px
}

.form_01 ul:after,
.form_01 li:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

.form_01 .left_input {
	float: left
}

.form_01 .margin_input {
	margin-right: 1%
}

.form_01 textarea {
	height: 100px;
	width: 100%
}

.form_01 .frm_label {
	display: inline-block;
	width: 130px
}

/* 자료 없는 목록 */
.empty_table {
	padding: 50px 0 !important;
	text-align: center
}

.empty_list {
	padding: 20px 0 !important;
	color: #666;
	text-align: center
}

/* 필수입력 */
.required,
textarea.required {
	background-image: url('/img/require.png') !important;
	background-repeat: no-repeat !important;
	background-position: right top !important
}

/* 테이블 항목별 정의 */
.td_board {
	width: 80px;
	text-align: center
}

.td_category {
	width: 80px;
	text-align: center
}

.td_chk {
	width: 30px;
	text-align: center
}

.td_date {
	width: 60px;
	text-align: center
}

.td_datetime {
	width: 110px;
	text-align: center
}

.td_group {
	width: 80px;
	text-align: center
}

.td_mb_id {
	width: 100px;
	text-align: center
}

.td_mng {
	width: 80px;
	text-align: center
}

.td_name {
	width: 100px;
	text-align: left
}

.td_nick {
	width: 100px;
	text-align: center
}

.td_num {
	width: 50px;
	text-align: center
}

.td_numbig {
	width: 80px;
	text-align: center
}

.td_stat {
	width: 60px;
	text-align: center
}

.txt_active {
	color: #5d910b
}

.txt_done {
	color: #e8180c
}

.txt_expired {
	color: #ccc
}

.txt_rdy {
	color: #8abc2a
}

/* 새창 기본 스타일 */
.new_win {
	width: 770px;
	position: relative;
	margin: 200px auto;
}

.new_win .tbl_wrap {
	margin: 0 20px
}

.new_win #win_title {
	font-size: 1.3em;
	height: 50px;
	line-height: 30px;
	padding: 10px 20px;
	background: #fff;
	color: #000;
	-webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, .1);
	-moz-box-shadow: 0 1px 10px rgba(0, 0, 0, .1);
	box-shadow: 0 1px 10px rgba(0, 0, 0, .1)
}

.new_win #win_title .sv {
	font-size: 0.75em;
	line-height: 1.2em
}

.new_win .win_ul {
	margin-bottom: 15px;
	padding: 0 20px
}

.new_win .win_ul:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

.new_win .win_ul li {
	float: left;
	background: #fff;
	text-align: center;
	padding: 0 10px;
	border: 1px solid #d6e9ff;
	border-radius: 30px;
	margin-left: 5px
}

.new_win .win_ul li:first-child {
	margin-left: 0
}

.new_win .win_ul li a {
	display: block;
	padding: 8px 0;
	color: #6794d3
}

.new_win .win_ul .selected {
	background: #3a8afd;
	border-color: #3a8afd;
	position: relative;
	z-index: 5
}

.new_win .win_ul .selected a {
	color: #fff;
	font-weight: bold
}

.new_win .win_desc {
	position: relative;
	margin: 10px;
	border-radius: 5px;
	font-size: 1em;
	background: #f2838f;
	color: #fff;
	line-height: 50px;
	text-align: left;
	padding: 0 20px
}

.new_win .win_desc i {
	font-size: 1.2em;
	vertical-align: baseline
}

.new_win .win_desc:after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 4px;
	height: 50px;
	background: #da4453;
	border-radius: 3px 0 0 3px
}

.new_win .frm_info {
	font-size: 0.92em;
	color: #919191
}

.new_win .win_total {
	float: right;
	display: inline-block;
	line-height: 30px;
	font-weight: normal;
	font-size: 0.75em;
	color: #3a8afd;
	background: #f6f6f6;
	padding: 0 10px;
	border-radius: 5px
}

.new_win .new_win_con {
	margin: 20px 0;
	padding: 20px
}

.new_win .new_win_con:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

.new_win .new_win_con2 {
	margin: 20px 0
}

.new_win .btn_confirm:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

.new_win .win_btn {
	text-align: center;
	margin-top: 40px;
}

.new_win .btn_close {
	width: 72px;
	height: 45px;
	overflow: hidden;
	cursor: pointer
}

.new_win .btn_submit {
	padding: 0 20px;
	height: 45px;
	font-weight: bold;
	font-size: 1.083em
}

/* 검색결과 색상 */
.sch_word {
	color: #fff;
	background: #ff005a;
	padding: 2px 5px 3px;
	line-height: 18px;
	margin: 0 2px
}

/* 자바스크립트 alert 대안 */
#validation_check {
	margin: 100px auto;
	width: 500px
}

#validation_check h1 {
	margin-bottom: 20px;
	font-size: 1.3em
}

#validation_check p {
	margin-bottom: 20px;
	padding: 30px 20px;
	border: 1px solid #e9e9e9;
	background: #fff
}

/* 사이드뷰 */
.sv_wrap {
	position: relative;
	font-weight: normal
}

.sv_wrap .sv {
	z-index: 1000;
	display: none;
	margin: 5px 0 0;
	font-size: 0.92em;
	background: #333;
	-webkit-box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2)
}

.sv_wrap .sv:before {
	content: "";
	position: absolute;
	top: -6px;
	left: 15px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 6px 6px;
	border-color: transparent transparent #333 transparent
}

.sv_wrap .sv a {
	display: inline-block;
	margin: 0;
	padding: 0 10px;
	line-height: 30px;
	width: 100px;
	font-weight: normal;
	color: #bbb
}

.sv_wrap .sv a:hover {
	background: #000;
	color: #fff
}

.sv_member {
	color: #333
}

.sv_on {
	display: block !important;
	position: absolute;
	top: 23px;
	left: 0px;
	width: auto;
	height: auto
}

.sv_nojs .sv {
	display: block
}

/* 페이징 */
.pg_box {
	text-align: center;
}

.pg_wrap {
	display: inline-block
}

.pg_wrap:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

.pg {
	text-align: center
}

.pg_page,
.pg_current {
	display: inline-block;
	vertical-align: middle;
	background: #fff;
	border: 1px solid #6d4099;
	margin: 0 2.5px;
}

.pg a:focus,
.pg a:hover {
	text-decoration: none
}

.pg_page {
	color: #ddd;
	font-size: 1.083em;
	height: 30px;
	line-height: 30px;
	padding: 0 5px;
	min-width: 30px;
	text-decoration: none;
	border: 1px solid #ddd;
}

.pg_page:hover {
	background-color: #fafafa
}

.pg_start {
	text-indent: -999px;
	overflow: hidden;
	background: url('/img/btn_first.gif') no-repeat 50% 50% #fff;
	padding: 0;
	border: 1px solid #ddd
}

.pg_prev {
	text-indent: -999px;
	overflow: hidden;
	background: url('/img/btn_prev.gif') no-repeat 50% 50% #fff;
	padding: 0;
	border: 1px solid #ddd
}

.pg_end {
	text-indent: -999px;
	overflow: hidden;
	background: url('/img/btn_end.gif') no-repeat 50% 50% #fff;
	padding: 0;
	border: 1px solid #ddd
}

.pg_next {
	text-indent: -999px;
	overflow: hidden;
	background: url('/img/btn_next.gif') no-repeat 50% 50% #fff;
	padding: 0;
	border: 1px solid #ddd
}

.pg_start:hover,
.pg_prev:hover,
.pg_end:hover,
.pg_next:hover {
	background-color: #fafafa
}

.pg_current {
	display: inline-block;
	background: #fff;
	border: 1px solid #6d4099;
	color: #6d4099;
	font-weight: bold;
	height: 30px;
	line-height: 30px;
	padding: 0 10px;
	min-width: 30px;
	margin: 0 2.5px;
}

/* cheditor 이슈 */
.cheditor-popup-window *,
.cheditor-popup-window :after,
.cheditor-popup-window :before {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

/* Mobile화면으로 */
#device_change {
	display: block;
	margin: 0.3em;
	padding: 0.5em 0;
	border: 1px solid #eee;
	border-radius: 2em;
	background: #fff;
	color: #000;
	font-size: 2em;
	text-decoration: none;
	text-align: center
}


#bo_v_share .btn {
	font-size: 0.9em;
}

.bd_container, .bd_container2{
    width: calc(100% - 4rem);
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 0 14rem 0;
}

@media screen and (max-width: 768px) {
	.bd_container, .bd_container2{
		padding: 20vw 0;
	}	

	.hd_pops{
		width: 100% !important;
		top: 100px !important;
		left: 0px !important;
	}

	.hd_pop_con{
		width: 100% !important;
	}
	
}