@charset "UTF-8";

/*-------------------------------------------------
title       : 프로그램
Author      : 플랜아이 광주
Create date : 2020-03-02
-------------------------------------------------*/

.blank {
    padding: 2.25rem 0;
    text-align: center;
}

.txt_center {
    text-align: center;
}

.overflow_1 a {
    width: calc(100% - 4rem);
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
.tstyle_list .ri-lock-line {
    color: #aaa;
    line-height: 2.2rem;
    vertical-align: middle;
    font-size: 1.6rem;
}

.form_textbox {
    width: 100%;
    height: 4rem;
    max-height: 100%;
    padding: 0 1rem;
    border: 1px solid #ddd;
    text-align: left;
    vertical-align: top;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.form_textbox:focus,
.form_textbox:active {
    border-color: #222 !important;
    background-color: #fff !important;
}
.form_textbox.hasDatepicker {
    width: 20rem;
    padding-right: 5rem;
}
.form_textbox.hasDatepicker + .ui-datepicker-trigger {
    position: absolute;
    left: auto;
    top: auto;
    width: 2rem;
    margin: 1.1rem 0 0 -3rem;
}
.form_textbox.number {
    width: 15rem;
}
.form_textbox.long {
    width: 100%;
    max-width: 100% !important;
}

.form_mail {
    line-height: 4rem;
}
.form_mail .form_textbox {
    width: 20rem;
}

.form_select {
    display: inline-block;
    position: relative;
    height: 4rem;
    color: #333;
}
.form_select::after {
    position: absolute;
    top: auto;
    left: auto;
    right: auto;
    font-family: "xeicon";
    position: absolute;
    top: 50%;
    left: auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 1rem;
    transform: translateY(-50%);
    content: "";
}
.form_select select {
    width: 100%;
    height: 4rem;
    padding: 0 3rem 0 1rem;
    border: 1px solid #ddd;
    vertical-align: top;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.form_select select:focus {
    border: 1px solid #222 !important;
    background-color: #fff !important;
    color: #222;
}

.form_check {
    display: inline-block;
    white-space: normal;
    position: relative;
    z-index: 0;
    margin-right: 2rem;
    padding-left: 2.5rem;
    line-height: 4.3rem;
    vertical-align: top;
}
.form_check label {
    cursor: pointer;
    color: #222;
}
.form_check label::before {
    position: absolute;
    left: 0;
    top: 0.7rem;
    z-index: -2;
    width: 1.8rem;
    height: 1.8rem;
    border: 2px solid #000;
    background-color: #fff;
    content: "";
}
.form_check label::after {
    position: absolute;
    top: auto;
    left: auto;
    right: auto;
    font-family: "xeicon";
    left: 0;
    top: 0.7rem;
    z-index: -1;
    width: 1.8rem;
    height: 1.8em;
    color: #000;
    content: "";
    text-align: center;
    line-height: 1.8rem;
    font-weight: 600;
    opacity: 0;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.form_check input {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
}
.form_check input:focus + label::before {
    outline: 1px dotted #000;
}
.form_check input:checked + label::after {
    opacity: 1;
}
.form_check:last-child {
    margin-right: 0;
}
.form_check input[type="text"] {
    position: static;
    opacity: 1;
}

.form_radio {
    display: inline-block;
    position: relative;
    z-index: 0;
    margin-right: 2rem;
    padding-left: 2.3rem;
    vertical-align: top;
}
.form_radio label {
    cursor: pointer;
}
.form_radio label::before {
    position: absolute;
    left: 0;
    top: 0.3rem;
    z-index: -2;
    width: 1.8rem;
    height: 1.8rem;
    border-radius: 100%;
    border: 1px solid #ddd;
    background-color: #fff;
    content: "";
}
.form_radio label::after {
    position: absolute;
    left: 0.6rem;
    top: 0.9rem;
    z-index: -1;
    width: 0.6rem;
    height: 0.6rem;
    border-radius: 100%;
    content: "";
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.form_radio input {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
}
.form_radio input:focus + label::before {
    outline: 1px dotted #000;
    border-color: #222;
}
.form_radio input:checked + label::before {
    border: 1px solid #222;
}
.form_radio input:checked + label::after {
    background-color: #222;
}
.form_radio:last-child {
    margin-right: 0;
}

.form_file {
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 0;
    width: 100%;
    height: 3.5rem;
    max-height: 100%;
    text-align: left;
    line-height: 3.5rem;
}
.form_file input {
    width: 8rem;
    height: 7rem;
    margin-top: -3.5rem;
    border: 0 none;
    opacity: 0;
    cursor: pointer;
}
.form_file input:hover + .txt::before,
.form_file input:focus + .txt::before {
    background-color: #fff;
    color: #1e4567;
}
.form_file .txt::before {
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    width: 8rem;
    height: 100%;
    border: 1px solid #1e4567;
    background-color: #1e4567;
    font-size: 1.6rem;
    color: #fff;
    content: "첨부파일";
    text-align: center;
    cursor: pointer;
    transition: all 0.2s;
}
.form_file .txt {
    overflow: hidden;
    float: right;
    width: calc(100% - 9rem);
    text-overflow: ellipsis;
}

.bul > li {
    position: relative;
    padding-left: 1rem;
    text-align: left;
}
.bul > li::before {
    position: absolute;
    left: 0;
    top: auto;
    content: "";
}

.bul.depth1 > li::before {
    content: "-";
}
.bul.depth1 > li + li {
    margin-top: 1rem;
}

.bul.depth2 > li::before {
    content: "·";
}

.bul strong {
    font-weight: 500;
    color: #000;
}

.btn_line {
    height: 2.8rem;
    border: 1px solid #999;
    line-height: 2.6rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.4rem;
    display: inline-block;
    min-width: 8.5rem;
    padding: 0 1rem;
    background-color: #fff;
    color: #333;
    text-align: center;
    vertical-align: middle;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    transition: all 0.2s;
}
.btn_line:hover,
.btn_line:focus {
    border-color: #333;
    background-color: #333;
    color: #fff;
}
.btn_line i {
    font-size: 1.6rem;
    margin-left: 0.5rem;
    vertical-align: middle;
}

.agree {
    margin-bottom: 6rem;
}
.agree .title {
    margin-top: 2rem;
    font-size: 2.5rem;
    font-weight: 500;
    color: #333;
}
.agree .form {
    text-align: left;
}
.agree .item {
    overflow: hidden;
    overflow-y: auto;
    max-height: 31.5rem;
    margin: 1rem 0;
    padding: 3rem 3rem 0;
    background-color: #f8f8fa;
    border-radius: 6px;
    border: 1px solid #ddd;
    color: #767676;
}
.agree .item::after {
    display: block;
    width: 100%;
    height: 3rem;
    content: "";
}
.agree .item p strong {
    display: block;
    margin: 3rem 0 2rem;
    font-size: 1.8rem;
    font-weight: 500;
    color: #000;
}
.agree:first-child .title {
    margin-top: 0;
}

.board_box.type1 {
    padding: 5rem;
    border: 1px solid #ddd;
    border-top-color: #555;
    background-color: #f8f8f8;
    text-align: center;
}
.board_box.type1 .title {
    font-size: 3rem;
    margin-bottom: 2rem;
    font-weight: 600;
    color: #000;
}
.board_box.type1 .title i {
    font-size: 5rem;
    display: block;
    margin: 0 auto 0.5rem;
    font-family: "xeicon";
    font-weight: 400;
    color: #162943;
}
.board_box.type1 .form {
    width: 40rem;
    max-width: 100%;
    margin: 1rem auto 0;
}
.board_box.type1 .txt {
    display: block;
    margin-top: 0.5rem;
    color: #c00;
}
.board_box.type1.table {
    display: table;
    width: 100%;
    padding: 0;
    table-layout: fixed;
}
.board_box.type1.table .group {
    display: table-cell;
    padding: 4rem;
    vertical-align: top;
}
.board_box.type1.table .group2 {
    border-left: 1px solid #ddd;
}
.board_box.type1.table a.group:hover .title,
.board_box.type1.table a.group:focus .title {
    text-decoration: underline;
}

.board_box.type2 {
    position: relative;
    margin: 4rem 0 2rem;
    padding: 3rem;
    padding-left: 28rem;
    border: 1px solid #ddd;
    border-top-color: #555;
    background-color: #fcfcfc;
}
.board_box.type2:first-child {
    margin-top: 0;
}
.board_box.type2 .img {
    position: absolute;
    left: 0;
    top: 0;
    width: 24.6rem;
    height: 100%;
    padding: 3rem;
    border-right: 1px solid #ddd;
    background-color: #fff;
}
.board_box.type2 .img i {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-size: 5rem;
    font-family: "xeicon";
    font-weight: 400;
    color: #162943;
}
.board_box.type2 .title {
    font-size: 2rem;
    margin-bottom: 1rem;
    font-weight: 600;
    color: #000;
}
.board_box.type2 .btn_line {
    margin-top: 2rem;
    border-color: #333;
    background-color: #333;
    color: #fff;
}
.board_box.type2 .btn_line:hover,
.board_box.type2 .btn_line:focus {
    background-color: #fff;
    color: #333;
}

.board_btns {
    margin-top: 3rem;
    text-align: center;
}
.board_btns .txt {
    margin: -2rem 0 1rem;
    font-size: 1.5rem;
    color: #999;
    text-align: left;
}
.board_btns .btn {
    height: 4.3rem;
    border: 2px solid #333;
    line-height: 3.9rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.6rem;
    display: inline-block;
    min-width: 12rem;
    padding: 0 2rem;
    border-radius: 6px;
    background-color: #333;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    font-weight: 500;
    margin: 0 0.25rem;
}
.board_btns .btn:hover,
.board_btns .btn:focus {
    background-color: transparent;
    color: #333;
}

.board_btns .btn.type1 {
    border: 2px solid #ddd;
    background-color: #fff;
    color: #333;
}
.board_btns .btn.type1:hover,
.board_btns .btn.type1:focus {
    border-color: #333;
}

.board_btns .btn.type2 {
    border: 2px solid #222;
    background-color: #222;
    color: #fff;
}
.board_btns .btn.type2:hover,
.board_btns .btn.type2:focus {
    background-color: #0373a5;
    border-color: #0373a5;
    background-color: #0373a5;
}

.board_btns .btn.type3 {
    border: 2px solid #222;
    background-color: #fff;
    color: #333;
}
.board_btns .btn.type3:hover,
.board_btns .btn.type3:focus {
    background-color: #0373a5;
    border-color: #0373a5;
    color: #fff;
}

.board_list {
    overflow: hidden;
    border-top: 2px solid #555;
    border-bottom: 1px solid #aaa;
}
.board_list table {
    width: 100%;
    margin-bottom: -1px;
    table-layout: fixed;
}
.board_list .comment {
    font-size: 1.2rem;
    font-weight: 300;
    color: red;
}

.board_list.write {
    border-top: 0 none;
}
.board_list .tstyle_write {
    position: relative;
    border-top: 0 none;
    padding-top: 8px;
}
.board_list .tstyle_write::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 8px;
    background: transparent
        linear-gradient(90deg, #0373a5 0%, #0373a5 48%, #538e1b 100%) 0% 0%
        no-repeat padding-box;
}
.board_list .tstyle_write th {
    font-size: 1.6rem;
    padding: 1rem;
    border-bottom: 1px solid #ddd;
    font-weight: 600;
    color: #333;
    text-align: left;
    line-height: 4rem;
}
.board_list .tstyle_write td {
    text-align: left;
}
.board_list .tstyle_write .point1 {
    color: #c00;
}
.board_list .tstyle_write .contents {
    padding-bottom: 0;
}
.board_list .tstyle_write input[readonly],
.board_list .tstyle_write input[disabled] {
    background-color: #eee;
    opacity: 1;
}
.board_list .tstyle_write .form_radio label::before,
.board_list .tstyle_write .form_radio label::after,
.board_list .tstyle_write .form_check label::before,
.board_list .tstyle_write .form_check label::after {
    margin-top: 0.5rem;
}
.board_list .tstyle_write .form_textbox#m_id {
    width: calc(100% - 11rem);
}

.board_list .tstyle_write .file th,
.board_list .tstyle_write .file td {
    padding-bottom: 0.5rem;
}
.board_list .tstyle_write .file img {
    width: 2.5rem;
    margin-right: 0.5rem;
}
.board_list .tstyle_write .file.active th,
.board_list .tstyle_write .file.active td {
    padding-top: 1rem;
    line-height: 3.5rem;
}
.board_list .tstyle_write .file + .file th,
.board_list .tstyle_write .file + .file td {
    padding-top: 0;
}
.board_list .tstyle_write .file + .file label {
    opacity: 0;
}
.board_list .tstyle_write .file:last-child th,
.board_list .tstyle_write .file:last-child td {
    padding-bottom: 1rem;
}
.board_list .tstyle_write .file .btn_del,
.board_list .tstyle_write .file_img .btn_del {
    font-size: 2rem;
    display: inline-block;
    overflow: hidden;
    width: 2rem;
    height: 2rem;
    color: #888;
    text-align: center;
    line-height: 2rem;
    vertical-align: middle;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.board_list .tstyle_write .file .btn_del::before,
.board_list .tstyle_write .file_img .btn_del::before {
    display: block;
    width: 100%;
    height: 100%;
    font-family: "xeicon";
    text-align: center;
    line-height: inherit;
    content: "";
}
.board_list .tstyle_write .file .btn_del:hover,
.board_list .tstyle_write .file .btn_del:focus,
.board_list .tstyle_write .file_img .btn_del:hover,
.board_list .tstyle_write .file_img .btn_del:focus {
    color: #116eb4;
}

.board_list + .kogl_open {
    margin-top: 4rem;
}

.board_list ._blank {
    padding: 3rem 2rem;
    text-align: center;
}

/* 220418 이지현 추가*/
.board_list .tstyle_write .form_textbox,
.board_list .tstyle_write .form_select select {
    background-color: #f3f3f3;
    height: 4.3rem;
    line-height: 4.1rem;
    border-radius: 6px;
    border: 1px solid #f3f3f3;
}
.board_list .tstyle_write .form_textbox {
    max-width: 20rem;
}
.board_list .tstyle_write .phone .form_select,
.board_list .tstyle_write .phone .form_textbox {
    width: 30%;
    max-width: 14rem;
}
.board_list .tstyle_write .address .form_textbox {
    margin-bottom: 0.6rem;
    max-width: 100%;
}
.board_list .tstyle_write .address .form_textbox:first-of-type {
    width: 50%;
}
.board_list .tstyle_write .address .form_textbox:last-of-type {
    margin-bottom: 0;
}
.board_list .tstyle_write .addr_btn {
    width: 12rem;
    background-color: #1e4567;
    color: #fff;
    border-radius: 6px;
    border: 2px solid #1e4567;
    text-align: center;
    line-height: 3.9rem;
    padding-left: 1.75rem;
    background-image: url("../img/sub/search_icon_on.png");
    background-repeat: no-repeat;
    background-position: left 9px center;
}
.board_list .tstyle_write .addr_btn:hover,
.board_list .tstyle_write .addr_btn:focus {
    background-color: #fff;
    color: #0373a5;
    border-color: #0373a5;
    background-image: url("../img/sub/search_icon_on02.png");
    transition: all 0.2s;
}

/* 사이트맵 */
.sitemap {
    margin-top: -4rem;
}
.sitemap .group {
    overflow: hidden;
    padding: 4rem 0;
    border-bottom: 1px solid #ddd;
}
.sitemap dt {
    float: left;
    width: 20%;
    font-size: 2.6rem;
    font-weight: 600;
    color: #2d6dbb;
    word-break: keep-all;
}
.sitemap dd {
    float: right;
    width: 80%;
}
.sitemap .depth2 {
    width: calc(100% + 2rem);
    margin-bottom: -2rem;
}
.sitemap .depth2 > li {
    float: left;
    width: 25%;
    margin-bottom: 2rem;
    padding-right: 2rem;
}
.sitemap .depth2 > li > a {
    overflow: hidden;
    height: 4.5rem;
    padding: 0 2rem;
    border: 1px solid #ddd;
    background-color: #f6f6f8;
    font-size: 1.8rem;
    font-weight: 500;
    color: #242427;
    text-overflow: ellipsis;
    line-height: 4.5rem;
    white-space: nowrap;
    transition: all 0.2s;
}
.sitemap .depth2 > li > a:hover,
.sitemap .depth2 > li > a:focus {
    border-color: #2d6dbb;
    background-color: #2d6dbb;
    color: #fff;
}
.sitemap .depth2 a {
    display: block;
}
.sitemap .depth3 {
    padding: 1.5rem 2rem;
    font-weight: 400;
    color: 46464a;
}
.sitemap .depth3 li + li {
    margin-top: 0.5rem;
}

/* 게시판 상단 */
.board_info {
    overflow: hidden;
    line-height: 4rem;
}
.board_info + * {
    margin-top: 2rem;
}

.board_info .search_wrapper {
    float: right;
}

/* 게시판 목록 페이지 수 */
.board_info .page {
    float: left;
}
.board_info .page span {
    display: inline-block;
    vertical-align: top;
}
.board_info .page span + span::before {
    display: inline-block;
    width: 1px;
    height: 1.5rem;
    margin: 0 1rem 0 0.5rem;
    background-color: #ddd;
    content: "";
    vertical-align: middle;
}
.board_info .page strong,
.board_info .page b {
    font-weight: 500;
    color: #000;
}

/* 게시판 목록 검색 */
/* .board_info form { float: right; } */
.board_info .form {
    display: table;
    width: calc(100% + 0.5rem);
    table-layout: fixed;
    font-size: 1.5rem;
    width: auto;
}
.board_info .form > * {
    display: table-cell;
    padding-right: 0.5rem;
    vertical-align: top;
}
.board_info .form .item.type1 {
    padding-right: 0;
}
.board_info .form .btn {
    width: 7.8rem !important;
}
.board_info .form .btn button {
    width: 100%;
    height: 4rem;
    border: 1px solid #000;
    background-color: #000;
    color: #fff;
    text-align: center;
    transition: all 0.2s;
}
.board_info .form .btn button:hover,
.board_info .form .btn button:focus {
    background-color: #fff;
    color: #000;
}
.board_info .form .form_select {
    width: 100%;
}

/* 게시판 목록 RSS */
.board_info .icon_rss {
    display: inline-block;
    width: 2.5rem;
    height: 2.5rem;
    margin-left: 0.5rem;
    font-size: 2rem;
    text-align: center;
    line-height: 2.5rem;
    vertical-align: middle;
}
.board_info .icon_rss::before {
    display: block;
    width: 100%;
    height: 100%;
    font-family: "xeicon";
    color: #ee802f;
    content: "";
}

/* 게시판 페이징 */
* + .board_pager {
    margin-top: 4rem;
}
.board_pager {
    font-size: 1.5rem;
    text-align: center;
}
.board_pager a {
    display: inline-block;
    overflow: hidden;
    width: 4rem;
    height: 4rem;
    border-radius: 100%;
    text-align: center;
    line-height: 4rem;
    vertical-align: top;
    transition: all 0.3s;
}
.board_pager a.arr {
    border: 1px solid #ddd;
}
.board_pager a.arr::before {
    display: block;
    width: 100%;
    height: 100%;
    font-family: "xeicon";
    text-align: center;
    line-height: inherit;
}
.board_pager a.arr.first::before {
    content: "";
}
.board_pager a.arr.prev::before {
    content: "";
}
.board_pager a.arr.next::before {
    content: "";
}
.board_pager a.arr.last::before {
    content: "";
}
.board_pager a.arr.first,
.board_pager a.arr.last {
    text-indent: -1.2rem;
    letter-spacing: -1.2rem;
}
.board_pager a.active {
    background-color: #333;
    color: #fff;
}
.board_pager a:hover,
.board_pager a:focus {
    background-color: #f5f5f5;
}
.board_pager .group {
    margin: 0 0.5rem;
}

/* 게시판 목록 */
.board_list thead th {
    font-size: 1.6rem;
    padding: 1.25rem;
    border-bottom: 1px solid #aaa;
    font-weight: 500;
    color: #222;
    text-align: center;
}
.board_list td {
    font-size: 1.6rem;
    padding: 2rem 0;
    border-bottom: 1px solid #ddd;
    color: #666;
    text-align: center;
    line-height: 2.2rem;
}
.board_list td a {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
    position: relative;
    max-width: 100%;
    vertical-align: middle;
}
/* .board_list .tstyle_list td.txt_left a::after{position: absolute; left: 0; bottom: 0.5rem; width: 0; height: 1px;background-color: #000; content: ''; -webkit-transition: all 0.2s; transition: all 0.2s;}
.board_list .tstyle_list td.txt_left a:hover::after{width: 100%;}
.board_list .tstyle_list td.txt_left a:focus::after{width: 100%;} */
/*.board_list td[aria-label="첨부파일"] img { width: 2.5rem; }*/
.board_list td.txt_left a {
    font-size: 1.6rem;
    display: inline-block;
    max-width: 100%;
    overflow: visible;
    white-space: normal;
    text-overflow: initial;
    line-height: 2.2rem;
    color: #333;
    vertical-align: middle;
}

/* 게시판 목록 아이콘 */
.board_list .xi-new {
    font-size: 2.2rem;
    float: right;
    margin: 0 0 0 0.5rem;
    color: #116eb4;
}
.board_list .xi-lock {
    display: inline-block;
    position: relative;
    top: -0.1rem;
    font-size: 2rem;
    color: #222;
    vertical-align: middle;
}

/* 게시판 목록 상태 아이콘 */
.board_list .icon {
    display: inline-block;
    width: 6.3rem;
    min-width: 6.3rem;
    height: 2.75rem;
    border-radius: 0.5rem;
    border-radius: 16px;
    background-color: #eee;
    font-size: 1.5rem;
    color: #333;
    text-align: center;
    line-height: 2.75rem;
}
.board_list .icon[data-label="처리완료"] {
    background-color: #000;
    color: #fff;
}
.board_list .icon[data-label="답변완료"] {
    background-color: #777;
    color: #fff;
}
.board_list .icon[data-label="진행중"] {
    background-color: #116eb4;
    color: #fff;
}
.board_list .icon_notice {
    display: inline-block;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 100%;
    background-color: #333;
    font-size: 1.3rem;
    color: #fff;
    vertical-align: middle;
}

.board_list .new {
    display: inline-block;
    width: 3.5rem;
    height: 3.6rem;
    border-radius: 100%;
    background-color: #333;
    color: #fff;
    line-height: 3.6rem;
}
.board_list .new::before {
    display: block;
}

.board_list .icon2 {
    display: inline-block;
    width: 7.2rem;
    min-width: 7.2rem;
    height: 2.75rem;
    background-color: #eee;
    font-size: 1.5rem;
    color: #333;
    text-align: center;
    line-height: 2.75rem;
}
.board_list .icon3 {
    display: inline-block;
    width: 7.2rem;
    min-width: 7.2rem;
    height: 2.75rem;
    background-color: #fff;
    font-size: 1.5rem;
    color: #333;
    text-align: center;
    line-height: 2.75rem;
    border: 1px solid #ddd;
}
.board_list .icon3.state01 {
    border-color: #20af63;
}
.board_list .icon3.state02 {
    border-color: #ff6600;
}
.board_list .icon3.state03 {
    background-color: #f3f3f3;
}

/* 22.04 이지현 추가 - s*/

.blog_view > .list {
    padding-top: 4rem;
    border-top: 1px solid #777;
}
.blog_view .icon {
    display: block;
    width: 6.3rem;
    min-width: 6.3rem;
    height: 2.75rem;
    border-radius: 0.5rem;
    border-radius: 16px;
    margin-bottom: 1rem;
    background-color: #eee;
    font-size: 1.5rem;
    color: #333;
    text-align: center;
    line-height: 2.75rem;
}
.board_view .label01,
.blog_view .label01,
.board_list .label01 {
    background-color: #0373a5;
    color: #fff;
}
.board_view .label02,
.blog_view .label02,
.board_list .label02 {
    background-color: #074780;
    color: #fff;
}
.board_view .label03,
.blog_view .label03,
.board_list .label03 {
    background-color: #058a73;
    color: #fff;
}
.board_view .label04,
.blog_view .label04,
.board_list .label04 {
    background-color: #303dae;
    color: #fff;
}
.board_view .label05,
.blog_view .label05,
.board_list .label05 {
    background-color: #1e2e61;
    color: #fff;
}
.board_view .label06,
.blog_view .label06,
.board_list .label06 {
    background-color: #3a3a3a;
    color: #fff;
}
.board_view .label07,
.blog_view .label07,
.board_list .label07 {
    background-color: #006352;
    color: #fff;
}
.board_view .label08,
.blog_view .label08,
.board_list .label08 {
    background-color: #007d74;
    color: #fff;
}

.board_list.type1 .btn_line.view {
    width: 3.5rem;
    min-width: 0;
    height: 3.5rem;
    overflow: hidden;
    padding: 0;
}
.board_list.type1 .btn_line.view i {
    display: block;
    width: 3.3rem;
    line-height: 3.3rem;
    text-align: center;
    margin-left: 0;
}
.board_list.type1 td {
    color: #222;
}
.board_list.type1 td.txt_left strong {
    font-weight: 400;
}
.board_list.type1 td.txt_left a,
.board_list.type1 td.author {
    overflow: visible;
    white-space: normal;
    text-overflow: initial;
    line-height: 2.2rem;
}
.board_list.type1 tbody tr:hover {
    background-color: #f2f6f9;
    transition: background-color 0.2s;
}

/* 게시판 내용 */
.board_view {
    border-top: 2px solid #555;
}
.board_view > .title {
    font-size: 1.8rem;
    padding: 2rem 0;
    border-bottom: 1px solid #ddd;
    font-weight: 700;
    color: #333;
    text-align: center;
    word-break: keep-all;
}
.board_view > .title .category {
    display: block;
    font-size: 1.6rem;
    color: #999;
}
.board_view > .title .category::before {
    display: inline-block;
    position: relative;
    top: -0.2rem;
    width: 1rem;
    height: 1rem;
    margin-right: 0.75rem;
    border-radius: 100%;
    content: "";
    vertical-align: middle;
}
.board_view > .title .cateC01::before {
    background: #f6c375;
}
.board_view > .title .cateC02::before {
    background: #df7373;
}
.board_view > .title .icon2 {
    display: inline-block;
    margin-right: 1rem;
    padding: 0 1rem;
    line-height: 3rem;
    font-size: 1.6rem;
    font-weight: 100;
    color: #fff;
    background-color: #0373a5;
}

.board_view .info {
    padding: 1.8rem 0;
    border-bottom: 1px solid #dddd;
    color: #666;
    text-align: center;
}
.board_view .info li {
    display: inline-block;
    vertical-align: top;
}
.board_view .info li + li::before {
    display: inline-block;
    position: relative;
    top: -1px;
    width: 1px;
    height: 1.4rem;
    margin: 0 1.5rem 0 1rem;
    background-color: #ddd;
    content: "";
    vertical-align: middle;
}
.board_view .info strong {
    margin-right: 0.75rem;
    font-weight: 400;
    color: #000;
}
.board_view .contents {
    padding: 4rem;
    border-bottom: 1px solid #ddd;
}
.board_view .contents .cont_bg {
    margin: 0 -4rem;
    padding: 4.6rem 4rem;
    background-color: #f7f7f7;
}
.board_view .contents .cont_line {
    margin: 0 -4rem;
    padding: 4.6rem 4rem;
    border: 6px solid #f2f6f9;
    border-radius: 6px;
    margin-bottom: 3rem;
}
.board_view .contents .img {
    margin-top: 2rem;
}
.board_view .contents .img + .img {
    margin-top: 1rem;
}
.board_view .txt_center {
    margin-bottom: 2rem;
}

/* 게시판 내용 파일 */
.board_view .file {
    position: relative;
    padding: 2rem 0 2rem 14.5rem;
    border-bottom: 1px solid #ddd;
}
.board_view .file .title {
    position: absolute;
    top: 50%;
    left: auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    width: 14.5rem;
    font-weight: 500;
    color: #333;
    text-align: center;
}
.board_view .file .list img {
    width: 2.5rem;
    margin-right: 0.5rem;
}
.board_view .file .list li {
    overflow: hidden;
    position: relative;
    min-height: 3.5rem;
    padding-right: 21rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 3rem;
}
.board_view .file .list li + li {
    margin-top: 0.5rem;
}
.board_view .file .list li > a {
    color: #444;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.board_view .file .list li > a:hover,
.board_view .file .list li > a:focus {
    color: #116eb4;
}
.board_view .file .list .link {
    position: absolute;
    right: 0;
    top: 0;
}
.board_view .file .list .link a {
    font-size: 1.4rem;
    width: auto;
    line-height: 3.3rem;
    height: 3.5rem;
    min-width: 5rem;
    padding: 0.2rem 0.8rem;
    border: 1px solid #999;
    transition: all 0.2s;
}
.board_view .file .list .link a:hover,
.board_view .file .list .link a:focus {
    background-color: #333;
    color: #fff;
    border: 1px solid #333;
}
.board_view .file .list .link i {
    line-height: 2.8rem;
}
.board_view .file .list .txt {
    font-size: 1.2rem;
    color: #777;
}

/* 게시판 이전글 다음글 */
.prevnext {
    margin-top: 4rem;
    border-bottom: 1px solid #aaa;
}
.prevnext li {
    overflow: hidden;
    padding: 2rem 0;
    border-top: 1px solid #ddd;
    color: #333;
}
.prevnext li.next span::before {
    content: "";
}
.prevnext span {
    float: left;
    width: 15rem;
    color: #666;
}
.prevnext span::before {
    display: inline-block;
    position: relative;
    top: 1px;
    font-family: "xeicon";
    vertical-align: top;
    font-size: 1.5rem;
    float: left;
    width: 5rem;
    content: "";
    text-align: center;
}
.prevnext a {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    float: right;
    width: calc(100% - 15rem);
}

/* 게시판 답변 */
.board_btns + .board_reply {
    margin-top: 2rem;
    border-top: 1px solid #aaa;
}
.board_reply {
    padding: 4rem 4rem 4rem 10.6rem;
    border-bottom: 1px solid #777;
    background: url("/main/img/board/reply.png") no-repeat top 40px left 40px;
}
.board_reply .title {
    font-size: 1.8rem;
    font-weight: 600;
    color: #333;
}

.board_reply .info {
    color: #666;
    margin-top: 4rem;
}
.board_reply .info li {
    display: inline-block;
    vertical-align: top;
}
.board_reply .info li + li::before {
    display: inline-block;
    position: relative;
    top: -1px;
    width: 1px;
    height: 1.4rem;
    margin: 0 1.5rem 0 1rem;
    background-color: #ddd;
    content: "";
    vertical-align: middle;
}
.board_reply .info strong {
    margin-right: 0.75rem;
    font-weight: 400;
    color: #000;
}

.board_reply .contents {
    line-height: 2.4rem;
    color: #333;
}

.board_reply .file {
    position: relative;
    margin: 2rem -2rem -2rem;
    padding: 1rem 2rem;
    border-top: 1px solid #f8f8f8;
}
.board_reply .file .label {
    display: block;
    margin: 0.5rem 0;
    font-weight: 500;
    color: #333;
}
.board_reply .file .list img {
    width: 2.5rem;
    margin-right: 0.5rem;
}
.board_reply .file .list li {
    overflow: hidden;
    position: relative;
    min-height: 3rem;
    padding: 0 21rem 0 1.5rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 3rem;
}
.board_reply .file .list li::before {
    position: absolute;
    left: 0;
    top: auto;
    content: "-";
}
.board_reply .file .list li > a {
    color: #444;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.board_reply .file .list li > a:hover,
.board_view .file .list li > a:focus {
    color: #116eb4;
}
.board_reply .file .list .link {
    position: absolute;
    right: 0;
    top: 0;
}
.board_reply .file .list .txt {
    font-size: 1.2rem;
    color: #999;
}
.board_reply + .board_btns {
    margin-top: 1rem;
}

/* 게시판 답변 상황 */
.board_state {
    position: relative;
    margin-top: 4rem;
    padding: 1.5rem 1.5rem 1.5rem 7rem;
    border: 1px solid #ddd;
    background-color: #f6f7f9;
}
.board_state::before {
    position: absolute;
    top: auto;
    left: auto;
    right: auto;
    font-family: "xeicon";
    overflow: hidden;
    position: absolute;
    left: 2rem;
    top: auto;
    width: 3rem;
    height: 3rem;
    border-radius: 100%;
    background-color: #3c4165;
    font-size: 1.8rem;
    font-weight: 400;
    color: #fff;
    content: "";
    text-align: center;
}
.board_state li {
    display: inline;
}
.board_state li + li::before {
    display: inline-block;
    position: relative;
    top: -1px;
    width: 1px;
    height: 1.4rem;
    margin: 0 0.75rem 0 1rem;
    background-color: #ddd;
    content: "";
    vertical-align: middle;
}
.board_state label {
    margin-right: 0.5rem;
    font-weight: 500;
    color: #000;
}
.board_state button {
    font-size: 1.4rem;
    color: #116eb4;
}
.board_state .title {
    display: block;
    margin-bottom: 0.5rem;
    color: #333;
    line-height: 3rem;
}
.board_state .form {
    line-height: 4rem;
}
.board_state .form ul {
    display: inline-block;
    margin-right: 1rem;
    vertical-align: top;
}
.board_state .form_textbox,
.board_state .form_select select {
    width: 15rem;
}
.board_state .btn {
    height: 4rem;
    padding: 0 1.5rem;
    border: 0 none;
    background-color: #484c58;
    color: #fff;
    text-align: center;
    vertical-align: top;
}

/* 게시판 답변상황 아이콘 */
.board_state .icon {
    display: inline-block;
    position: relative;
    top: -1px;
    min-width: 8rem;
    height: 2.75rem;
    padding: 0 1rem;
    border-radius: 0.5rem;
    background-color: #eee;
    font-size: 1.5rem;
    color: #333;
    text-align: center;
    line-height: 2.75rem;
}
.board_state .icon[data-label="처리완료"],
.board_state .icon[data-label="답변완료"] {
    background-color: #555;
    color: #fff;
}
.board_state .icon[data-label="진행중"] {
    background-color: #116eb4;
    color: #fff;
}

/* 코멘트 */
* + .comment {
    margin-top: 5rem;
}
.comment .form {
    position: relative;
    margin: 0 0 5rem;
    padding-bottom: 4.9rem;
    border: 1px solid #ddd;
    background-color: #f8f9fa;
    color: #999;
}
.comment .form textarea {
    font-size: 1.5rem;
    width: 100% !important;
    max-width: 100%;
    min-height: 8.5rem;
    padding: 1.5rem;
    border: 0 none !important;
    vertical-align: top;
}
.comment .form .length {
    font-size: 1.3rem;
    position: absolute;
    left: 0;
    bottom: 0;
    padding-left: 2rem;
    line-height: 5rem;
}
.comment .form button {
    height: 5rem;
    border: 1px solid #555;
    line-height: 4.8rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.5rem;
    display: inline-block;
    min-width: 8.8rem;
    padding: 0 1rem;
    background-color: #555;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    position: absolute;
    right: -1px;
    bottom: -1px;
}
.comment .form button:hover,
.comment .form button:focus {
    background-color: transparent;
    color: #555;
}
.comment > .title {
    font-size: 1.6rem !important;
    font-weight: 300;
    color: #666;
}
.comment > .title span {
    font-weight: 500;
    color: #116eb4;
}

/* 코멘트 목록 */
.comment .list {
    margin-top: 1.5rem;
    border-top: 1px solid #aaa;
}
.comment .list li {
    position: relative;
    padding: 2rem;
    border-bottom: 1px solid #ddd;
    color: #767676;
}
.comment .list .name {
    font-weight: 500;
}
.comment .list .txt {
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin-bottom: 0.5rem;
    opacity: 1 !important;
}
.comment .list .date {
    font-size: 1.4rem;
    color: #999;
}
.comment .list .form {
    width: 100% !important;
    margin: 1rem 0 0;
}
.comment .list .re {
    padding-left: 4rem;
}
.comment .list .re::before {
    position: absolute;
    top: 2.5rem;
    left: auto;
    width: 1rem;
    height: 1rem;
    margin-left: -2rem;
    border-left: 1px solid #aaa;
    border-bottom: 1px solid #aaa;
    content: "";
}

/* 코멘트 버튼 */
.comment .list .btn {
    position: absolute;
    right: 2rem;
    top: 2rem;
    font-size: 1.4rem;
    color: #333;
}
.comment .list .btn a + a::before {
    display: inline-block;
    position: relative;
    top: -1px;
    width: 1px;
    height: 1.3rem;
    margin: 0 1rem 0 0.75rem;
    background-color: #ddd;
    content: "";
    vertical-align: middle;
}
.comment .list .btn_reply {
    height: 3rem;
    border: 1px solid #ddd;
    line-height: 2.8rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.4rem;
    display: inline-block;
    min-width: 7rem;
    margin-top: 1rem;
    padding: 0 1rem;
    background-color: #fff;
    color: #666;
    text-align: center;
    vertical-align: middle;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.comment .list .btn_reply:hover,
.comment .btn_reply:focus {
    border-color: #333;
    background-color: #333;
    color: #fff;
}

/* 공공누리 디자인 추가 */
.kogl_open .label {
    display: block;
    width: 17.1rem;
    height: 3.5rem;
    background-color: #999;
    font-size: 400;
    text-align: center;
    color: #fff;
    line-height: 3.5rem;
}
.kogl_open .kogl {
    margin-bottom: 2rem;
}
.kogl_open .form_radio {
    display: block;
    margin-top: 1rem;
}
.kogl_open .form_radio .img {
    float: left;
    width: 13rem;
    padding-right: 1rem;
}
.kogl_open .txt_right {
    margin: 1rem 0;
}

/* 글 등록시 등록중입니다 이미지레이어 */
.mw {
    position: fixed;
    _position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10000;
}
.mw .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000 url("../ecms_resource/img/bg.png") repeat;
    opacity: 0.5;
    filter: alpha(opacity=50);
    z-index: 10000;
}
.mw .fg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 360px;
    height: 80px;
    padding: 15px;
    z-index: 11000;
}
.mw .fg .loading {
    display: block;
    text-align: center;
    padding: 10px;
}

/* FAQ */
.faq_tit {
    display: block;
    padding: 2rem 0;
    text-align: center;
    color: #222;
    line-height: 2.4rem;
    border-top: 2px solid #555;
    font-size: 2rem;
    font-weight: 600;
    text-align: center;
}
.faq_tit + .faq {
    border-top: 1px solid #555;
}
.faq + .faq_tit {
    margin-top: 2rem;
}
.faq {
    border-top: 2px solid #555;
    border-bottom: 1px solid #aaa;
}
.faq li:last-child {
    border-bottom: 0 none;
}
.faq .group {
    border-bottom: 1px solid #ddd;
}
.faq .group.active .label::before {
    background-color: #116eb4;
}
.faq .group.active .label::after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    font-weight: 600;
    color: #000000;
}
.faq .group.active .item {
    visibility: visible;
    overflow: visible;
    width: auto;
    height: auto;
    opacity: 1;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.faq .item {
    visibility: hidden;
    overflow: hidden;
    width: 0;
    height: 0;
    opacity: 0;
    position: relative;
    padding: 0 9rem 0 12rem;
    border-top: 1px solid #ddd;
    background-color: #f4f5f6;
}
.faq .item::before {
    font-size: 2rem;
    position: absolute;
    left: 3.5rem;
    top: 1.5rem;
    font-family: "xeicon";
    color: #999;
    content: "";
}
.faq .item::after {
    position: absolute;
    left: 6.5rem;
    top: 1.5rem;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 100%;
    background-color: #fff;
    font-weight: 600;
    color: #333;
    content: "A";
    text-align: center;
    line-height: 3.5rem;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.faq .label {
    display: block;
    width: 100%;
    text-align: left;
    position: relative;
    padding: 2rem 6.5rem;
    font-weight: 600;
    color: #333;
}
.faq .label::before {
    position: absolute;
    left: 1.5rem;
    top: 1.5rem;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 100%;
    background-color: #333;
    color: #fff;
    content: "Q";
    text-align: center;
    line-height: 3.5rem;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.faq .label::after {
    font-size: 2.2rem;
    position: absolute;
    right: 3rem;
    top: 2rem;
    font-family: "xeicon";
    font-weight: 400;
    color: #999;
    content: "";
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    width: 2rem;
    height: 2rem;
    line-height: 2rem;
}

/* 이북형 */
.board_ebook {
    display: inline-block;
    width: calc(100% + 0px);
    width: calc(100% + 6rem);
    margin: 0 -3rem;
}
.board_ebook > * {
    clear: none;
    float: left;
    width: calc(50% - 0px);
    margin-right: 0px;
}
.board_ebook > *:nth-child(n + 3) {
    margin-top: 0px;
}
.board_ebook > *:nth-child(2n + 1) {
    clear: both;
}
.board_ebook li {
    position: relative;
    padding: 4rem 3rem;
}
.board_ebook li:nth-child(n + 3) {
    border-top: 1px solid #ddd;
}
.board_ebook .thumb {
    overflow: hidden;
    float: left;
    width: 19rem;
    height: 28rem;
    border: 1px solid #ddd;
    border-radius: 6px;
}
.board_ebook .thumb img {
    min-height: 100%;
}
.board_ebook .group {
    float: left;
    width: calc(100% - 20rem);
    padding-left: 5rem;
    padding-bottom: 6rem;
}
.board_ebook .title {
    font-size: 2rem;
    display: block;
    margin-bottom: 2.5rem;
    line-height: 2.4rem;
    font-weight: 600;
    color: #222;
}
.board_ebook .desc {
    overflow: hidden;
    max-height: 7.5rem;
    color: #666;
    line-height: 2.5rem;
}
.board_ebook .btn {
    position: absolute;
    left: 27rem;
    bottom: 4rem;
    width: 100%;
}
.board_ebook .btn a {
    font-size: 1.5rem;
    position: relative;
    width: 10.4rem;
    min-width: auto;
    max-width: 48%;
    height: 3.5rem;
    padding: 0 1.5rem;
    text-align: left;
    line-height: 3.5rem;
}
.board_ebook .btn a i {
    position: absolute;
    top: 50%;
    left: auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 1.5rem;
}

.board_ebook .thumb {
    position: relative;
}
.board_ebook .thumb img {
    transform: scale(1);
    transition: all 0.2s;
}
.board_ebook .thumb::before {
    content: "";
    position: absolute;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    border-radius: 6px;
    left: -1px;
    top: -1px;
    border: 0px solid #abbf01;
    z-index: 1;
    transition: all 0.1s;
}
.board_ebook .thumb:hover::before,
.board_ebook .thumb:focus::before {
    border-width: 4px;
    transition: all 0.1s;
}
.board_ebook .thumb:hover,
.board_ebook .thumb:focus {
    border-color: #abbf01;
}
.board_ebook .thumb:hover img,
.board_ebook .thumb:focus img {
    transform: scale(1.1);
    transition: all 0.2s;
}

/* PDF형 */
.board_pdf {
    display: inline-block;
    width: calc(100% + 0px);
    width: calc(100% + 5.5rem);
    margin: 0 -2.75rem;
}
.board_pdf > * {
    clear: none;
    float: left;
    width: calc(25% - 0px);
    margin-right: 0px;
}
.board_pdf > *:nth-child(n + 5) {
    margin-top: 0px;
}
.board_pdf > *:nth-child(2n + 1) {
    clear: none;
}
.board_pdf > *:nth-child(3n + 1) {
    clear: none;
}
.board_pdf > *:nth-child(4n + 1) {
    clear: both;
}
.board_pdf li {
    padding: 2rem 2.75rem;
}
.board_pdf .thumb {
    display: block;
    overflow: hidden;
    position: relative;
    height: 0;
    margin-bottom: 2rem;
    padding-top: 140%;
}
.board_pdf .thumb img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    min-height: 100%;
}
.board_pdf .title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.8rem;
    display: block;
    margin-bottom: 0.5rem;
    color: #222;
}
.board_pdf .label {
    font-weight: 400;
    color: #000;
}
.board_pdf .name {
    display: none;
}
.board_pdf .btn {
    display: block;
    overflow: hidden;
    margin-top: 2rem;
}
.board_pdf .btn a {
    font-size: 1.5rem;
    position: relative;
    float: left;
    width: calc(50% - 0.5rem);
    min-width: auto;
    height: 4.2rem;
    padding: 0 1.5rem;
    text-align: left;
    line-height: 4rem;
}
.board_pdf .btn a i {
    position: absolute;
    top: 50%;
    left: auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 1.5rem;
}
.board_pdf .btn a + a {
    float: right;
}

/* 달력형 */
#calendar {
    position: relative;
    z-index: 0;
}
#calendar .fc-header-toolbar .fc-center {
    position: relative;
    width: 26rem;
    text-align: center;
}
#calendar .fc-header-toolbar .fc-center h2 {
    font-size: 3rem;
    margin: 0;
    padding: 0;
    font-weight: 500;
    color: #333;
}
#calendar .fc-header-toolbar .fc-center button {
    position: absolute;
    top: 50%;
    left: auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    margin: 0;
    padding: 0;
    border: 0 none;
    background-color: #fff;
    font-weight: 400;
    color: #999;
}
#calendar .fc-header-toolbar .fc-center button.fc-next-button {
    left: auto;
    right: 0;
}
#calendar .fc-scroller {
    height: auto !important;
}
#calendar .fc-view-container {
    overflow: hidden;
    margin-top: 4.5rem;
    border-top: 2px solid #555;
    border-bottom: 1px solid #aaa;
}
#calendar .fc-view-container .fc-view {
    width: calc(100% + 2px);
    margin: -1px;
}
#calendar .fc-view-container td {
    font-size: 1.4rem;
    border-color: #ddd;
    background: none;
    color: #333;
}
#calendar .fc-view-container .fc-day-header {
    font-size: 1.6rem;
    padding: 1.5rem;
    border-color: #ddd;
    border-bottom-color: #aaa;
    font-weight: 500;
    color: #333;
    text-transform: uppercase;
}
#calendar .fc-view-container .fc-day-number {
    display: inline-block;
    padding: 1.5rem 0 0 1.5rem;
    color: inherit;
}
#calendar .fc-view-container .fc-sat {
    color: #116eb4;
}
#calendar .fc-view-container .fc-sun {
    color: #cb152b;
}
#calendar .fc-view-container .fc-day-grid-event {
    font-size: 1.5rem;
    height: 2.5rem;
    margin: 0;
    padding: 0 0.5rem;
    border-radius: 0;
    border: 0 none;
    line-height: 2.5rem;
}
#calendar .fc-view-container .fc-day-grid-event .fc-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
}
#calendar .fc-view-container .fc-today {
    position: relative;
    z-index: 1;
    border-color: #555;
}
#calendar .fc-view-container .fc-today.fc-widget-content td {
    border: 0 none;
}
#calendar .fc-view-container .fc-today.fc-widget-content::before {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: #555;
    content: "";
}
#calendar .fc-view-container .fc-bgevent-skeleton td {
    border: 0 none;
}
#calendar .fc-view-container .fc-other-month {
    background-color: #f6f7fa;
    color: #aaa;
}
#calendar .fc-view-container .fc-row .fc-content-skeleton {
    padding-bottom: 1.5rem;
}
#calendar .fc-view-container .fc-row .fc-content-skeleton td {
    border-color: transparent;
}
#calendar .fc-view-container .fc-row .fc-content-skeleton td.fc-other-month {
    border-color: #ddd;
}
#calendar .fc-view-container .fc-row .fc-content-skeleton .fc-event-container {
    padding: 0.25rem 0;
    border: 0 none !important;
}

/* 다른 달력형 */
div.CalendarList div.Bhead > ul {
    border-top: 2px solid #555 !important;
    border-bottom: 1px solid #aaa !important;
    background: none !important;
}
div.CalendarList div.Bhead > ul > li + li {
    border-left: 1px solid #ddd;
}
div.CalendarList div.Bhead > ul > li {
    font-size: 1.8rem !important;
    font-weight: 500;
    color: #000 !important;
    text-transform: uppercase;
}
div.CalendarList div.Bbody > ul > li {
    border-bottom: 1px solid #ddd !important;
}
div.CalendarList div.Bbody > ul > li > span + span {
    border-left: 1px solid #ddd;
}
div.CalendarList div.Bbody > ul > li:last-child {
    border-bottom-color: #aaa !important;
}
div.CalendarList div.Bbody > ul > li > span {
    height: 12rem !important;
}
div.CalendarList div.Bbody > ul > li > span > a {
    padding: 1rem;
    text-align: left;
    line-height: inherit !important;
}
div.CalendarList div.Bbody > ul > li > span > a:hover,
div.CalendarList div.Bbody > ul > li > span > a:focus {
    background-color: #f8f8f8;
}
div.CalendarList div.Bbody > ul > li > span > a::before {
    display: none !important;
}
div.CalendarList div.Bbody > ul > li > span > a.current::after {
    position: absolute;
    left: 0;
    top: 0;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
    border: 1px solid #000;
    background: none !important;
}
div.CalendarList div.Bbody > ul > li > span:first-child a,
div.CalendarList div > ul > li.sun {
    color: #cb152b !important;
}
div.CalendarList div > ul > li.sat,
div.CalendarList div.Bbody > ul > li > span:last-child a {
    color: #116eb4 !important;
}
div.CalendarList div.Bbody > ul > li > span > span.schedule {
    z-index: 1;
}
div.ScheduleList#listView {
    margin-top: -1px;
    border-bottom: 1px solid #999;
    background-color: #fff;
}
div.ScheduleList#listView > div {
    margin-top: 0;
    border: 0 none;
    border-top: 1px solid #ddd;
}
div.ScheduleList#listView > div:last-child {
    border-bottom: 0 none;
}
div.ScheduleList#listView > div > a {
    min-height: 0;
}
div.ScheduleList#listView > div > a span.day {
    width: 10rem;
    border: 0 none;
    line-height: 30px;
}
div.ScheduleList#listView > div > a span.day > span {
    width: calc(100% - 1rem);
    padding: 0;
    font-size: 1.4rem !important;
    font-weight: 400;
    color: #fff !important;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
}
div.ScheduleList#listView > div > a span.group {
    width: calc(100% - 10rem - 15px);
    padding-top: 0;
}
div.ScheduleList#listView > div > a span.group::after {
    display: none;
}
div.ScheduleList#listView > div > a span.title {
    padding-top: 0;
}
div.ScheduleList#listView > div > a:hover span.title,
div.ScheduleList#listView > div > a:focus span.title {
    color: inherit;
    text-decoration: underline;
}
div.ScheduleList#listView > span.nodata {
    margin-top: -1px;
    border: 0 none;
    border-top: 1px solid #ddd;
}
#srhForm + div.DateArea div.btn-area a {
    text-align: center;
    text-indent: 0.5rem;
    line-height: 35px;
}
#srhForm + div.DateArea div.btn-area a::before {
    display: inline-block;
    position: static;
    border-color: #ccc;
    vertical-align: middle;
    transition: all 0.2s;
}
#srhForm + div.DateArea div.btn-area a.next_month {
    text-indent: -0.5rem;
}
#srhForm + div.DateArea div.btn-area a:hover,
#srhForm + div.DateArea div.btn-area a:focus {
    background: none;
    border-color: #000;
}
#srhForm + div.DateArea div.btn-area a:hover::before,
#srhForm + div.DateArea div.btn-area a:focus::before {
    border-color: #000;
}
#srhForm + div.DateArea div.btn-area a.All-schedule {
    line-height: 38px;
}
#srhForm + div.DateArea div.btn-area a.All-schedule:hover,
#srhForm + div.DateArea div.btn-area a.All-schedule:focus {
    border-color: #e36f51;
    background-color: #e36f51;
}

/* 동영상 게시판 */
.gallery_list {
    overflow: hidden;
    width: calc(100% + 2.8rem);
    margin-bottom: -1px;
}
.gallery_list li {
    float: left;
    width: 33.333%;
    padding: 3rem 2.8rem 3rem 0;
    border-bottom: 1px solid #ddd;
}
.gallery_list li:nth-child(3n + 1) {
    clear: both;
}

.gallery_list.type1 li {
    width: 25%;
}
.gallery_list.type1 li:nth-child(3n + 1) {
    clear: none;
}
.gallery_list.type1 li:nth-child(4n + 1) {
    clear: both;
}

.gallery_list a {
    display: block;
}
.gallery_list a:hover .thumb::before,
.gallery_list a:hover .thumb::after,
.gallery_list a:focus .thumb::before,
.gallery_list a:focus .thumb::after {
    opacity: 1;
    transform: rotate(0);
    transition: all 0.4s 0.1s;
}
.gallery_list a:hover .thumb img,
.gallery_list a:focus .thumb img {
    opacity: 0.6;
}

.gallery_list .thumb {
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 0;
    height: 0;
    margin-bottom: 2rem;
    padding-top: 62%;
    background-color: #000;
    color: #fff;
}
.gallery_list .thumb img {
    position: absolute;
    left: 0;
    top: 50%;
    z-index: -1;
    width: 100%;
    min-height: 100%;
    transform: translateY(-50%);
    transition: all 0.2s;
}
.gallery_list .thumb::before {
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    margin-top: -1rem;
    font-family: "xeicon";
    font-size: 3.2rem;
    content: "";
    text-align: center;
    line-height: 0;
    opacity: 0;
    transform: rotate(180deg);
    transition: all 0.2s;
}
.gallery_list .thumb::after {
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    margin-top: 1rem;
    font-weight: 600;
    content: "자세히 보기";
    text-align: center;
    opacity: 0;
    transition: all 0.2s;
}

.gallery_list .title {
    display: inline-block;
    overflow: hidden;
    max-width: 100%;
    font-size: 1.8rem;
    color: #222;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.gallery_list .title .xi-new {
    margin-top: 0.3rem;
}
.gallery_list .label {
    font-weight: 400;
    color: #000;
}

.gallery_list .desc {
    /* white-space: nowrap; */
    white-space: normal;
}
.gallery_list .desc > span + span::before {
    display: inline-block;
    position: relative;
    top: -1px;
    width: 1px;
    height: 1.4rem;
    margin: 0 1rem 0 0.75rem;
    background-color: #ddd;
    content: "";
    vertical-align: middle;
}
.gallery_list .desc > span {
    display: inline-block;
    vertical-align: middle;
}
.gallery_list .desc .name {
    display: none;
}
.gallery_list .desc .name + span::before {
    display: none;
}

/* 갤러리 내용 */
.gallery_view {
    margin-bottom: 2rem;
    text-align: center;
}
.gallery_view .list {
    margin-top: 1rem;
    text-align: center;
}
.gallery_view .list img {
    display: inline-block;
    max-width: 100%;
    min-height: 100%;
}
.gallery_view .thumb {
    position: relative;
    padding: 0 5rem 0 6rem;
    display: inline-block;
    margin: 0 auto;
}
.gallery_view .thumb li {
    padding-right: 1rem;
}
.gallery_view .thumb li a {
    display: block;
    overflow: hidden;
    position: relative;
    height: 8rem;
    border: 2px solid #fff;
    background-color: #000;
    transition: all 0.2s;
}
.gallery_view .thumb li a img {
    opacity: 0.7;
    transition: all 0.2s;
}
.gallery_view .thumb .active a {
    border-color: #555;
}
.gallery_view .thumb .active a img {
    opacity: 1;
}
.gallery_view .thumb img {
    transition: all 0.2s;
}
.gallery_view .thumb .bx-wrapper .bx-controls-direction a {
    left: -5rem;
}
.gallery_view .thumb .bx-wrapper .bx-controls-direction a.bx-next {
    left: auto;
    right: -5rem;
}
.gallery_view .thumb .bx-wrapper .bx-controls-direction a {
    position: absolute;
    top: 50%;
    left: auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    overflow: hidden;
    left: 0;
    width: 3rem;
    height: 3rem;
    border-radius: 100%;
    background-color: #222;
    color: #fff;
    text-align: center;
    line-height: 3rem;
}

.gallery_view .thumb .bx-wrapper .bx-controls-direction a::before {
    display: block;
    width: 100%;
    height: 100%;
    font-family: "xeicon";
    text-align: center;
    line-height: inherit;
    content: "";
}

.gallery_view .thumb .bx-wrapper .bx-controls-direction a.bx-next {
    left: auto;
    right: 0;
}

.gallery_view .thumb .bx-wrapper .bx-controls-direction a.bx-next::before {
    content: "";
}

/* 동영상 내용 */
.video .desc {
    overflow: hidden;
    overflow-y: auto;
    max-height: 30rem;
    margin-top: 2rem;
    padding: 2rem 2.5rem 0;
    border: 1px solid #ddd;
    background-color: #f8f9fa;
}
.video .desc::after {
    display: block;
    height: 2rem;
    content: "";
}
.video .youtube {
    position: relative;
    height: 0;
    padding-top: 55%;
}
.video .youtube iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.video .txt_center {
    margin-top: 2rem;
}

/* 웹진형 게시판 - 이지현 수정 */
.blog_list {
    margin-bottom: -1px;
}
.blog_list + .board_pager {
    margin-top: 4rem;
}
.blog_list > li {
    position: relative;
    display: block;
    overflow: hidden;
    padding: 3rem 0;
    border-bottom: 1px solid #ddd;
}

.blog_list .thumb {
    overflow: hidden;
    float: left;
    position: relative;
    z-index: 0;
    width: 19rem;
    height: 28rem;
    color: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
    transition: all 0.1s;
}
.blog_list .thumb img {
    min-width: 100%;
    min-height: 100%;
}
.blog_list a .thumb img {
    transform: scale(1);
    transition: all 0.2s;
}
.blog_list a .thumb {
    position: relative;
}
.blog_list a .thumb::before {
    content: "";
    position: absolute;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    border-radius: 6px;
    left: -1px;
    top: -1px;
    border: 0px solid #abbf01;
    z-index: 1;
    transition: all 0.1s;
}
.blog_list a:hover .thumb::before,
.blog_list a:focus .thumb::before {
    border-width: 4px;
    transition: all 0.1s;
}
.blog_list a:hover .thumb,
.blog_list a:focus .thumb {
    border-color: #abbf01;
}
.blog_list a:hover .thumb img,
.blog_list a:focus .thumb img {
    transform: scale(1.1);
    transition: all 0.2s;
}

.blog_list .title {
    display: block;
    margin-top: 1rem;
    margin-bottom: 3rem;
    font-size: 2rem;
    line-height: 2.4rem;
    font-weight: 600;
    color: #222;
    letter-spacing: 0;
}
.blog_list .title .icon {
    display: block;
    width: 6.3rem;
    margin-bottom: 1rem;
}
.blog_list .label {
    font-weight: 400;
    color: #000;
}
.blog_list .txt {
    display: block;
    overflow: hidden;
    font-size: 1.6rem;
    line-height: 2.4rem;
    height: 4.8rem;
    margin-bottom: 3rem;
    color: #666;
}
.blog_list .date b,
.blog_list .hit b {
    font-weight: 300;
    color: #000;
}

.blog_list .desc {
    float: right;
    width: calc(100% - 24rem);
    padding-bottom: 6rem;
}
.blog_list .desc .author {
    display: block;
    margin-bottom: 0.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.blog_list .desc a > span + span::before {
    display: inline-block;
    position: relative;
    top: -1px;
    width: 1px;
    height: 1rem;
    margin: 0 1.5rem 0 1.25rem;
    background-color: #ddd;
    content: "";
    vertical-align: middle;
}
.blog_list .desc a > span {
    display: inline-block;
    vertical-align: middle;
    color: #555;
}
.blog_list .desc a > span strong,
.blog_list .desc a > p strong,
.blog_list .desc .author strong {
    margin-right: 0.6rem;
    color: #222;
}
.blog_list .btn {
    position: absolute;
    bottom: 4rem;
    left: 24rem;
}
.blog_view .btn a,
.blog_list .btn a {
    display: inline-block;
    height: 3.5rem;
    padding: 0 1.4rem;
    line-height: 3.5rem;
    border: 1px solid #ccc;
    color: #222;
    transition: all 0.2s;
}
.blog_view .btn a:hover,
.blog_list .btn a:hover,
.blog_view .btn a:focus,
.blog_list .btn a:focus {
    color: #fff;
    border-color: #222;
    background-color: #222;
    transition: all 0.2s;
}
.blog_view .btn a i,
.blog_list .btn a i {
    margin-left: 0.5rem;
}

.blog_list.type3 .thumb {
    width: 28rem;
    height: 17rem;
}
.blog_list.type3 .desc {
    width: calc(100% - 32rem);
    padding-bottom: 0;
}
.blog_list.type3 .title .icon {
    min-width: 6.3rem;
    padding: 0 1rem;
    width: auto;
    display: inline-block;
}

.blog_list.type4 .title {
    margin-bottom: 1rem;
    margin-top: 2.5rem;
}
.blog_list.type4 .cont {
    font-weight: 300;
    font-size: 1.5rem;
    margin-bottom: 2.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    max-height: 6.75rem;
}

/* 공모전 */
.blog_list.type2 .thumb {
    border: 0 none;
}
.blog_list.type2 .title {
    font-size: 2.4rem;
    font-weight: 900;
    color: #222;
    margin: 1rem 0 0.8rem;
}
.blog_list.type2 .s_tit {
    color: #999;
    font-size: 1.7rem;
    margin-bottom: 2.5rem;
}
.blog_list.type2 .bul6 li + li {
    margin-top: 0.3rem;
}

/* 연구보고서 view - 이지현 추가 */
.blog_view .info_box {
    margin-bottom: 5rem;
    padding-bottom: 5rem;
    border-bottom: 1px solid #ddd;
}
.blog_view .info_box::after {
    content: "";
    display: block;
    clear: both;
}
.blog_view .info_box > * {
    float: left;
}
.blog_view .info_box .img {
    position: relative;
    width: 30rem;
    height: 44.2rem;
    overflow: hidden;
    border: 1px solid #ddd;
    border-radius: 6px;
}
.blog_view .info_box .img img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    min-height: 100%;
}
.blog_view .info_box .desc {
    width: calc(100% - 30rem);
    padding-bottom: 5rem;
    padding-left: 5rem;
}
.blog_view .info_box .desc .tit {
    line-height: 2.4rem;
    color: #222;
    font-size: 2rem;
    padding-top: 1rem;
    margin-bottom: 3rem;
}
.blog_view .info_box .desc li {
    position: relative;
    padding-left: 1.1rem;
    font-size: 0;
}
.blog_view .info_box .desc li::before {
    content: "";
    position: absolute;
    top: 1rem;
    left: 0;
    width: 0.3rem;
    height: 0.3rem;
    background-color: #7b7b7b;
    border-radius: 100%;
}
.blog_view .info_box .desc li + li {
    margin-top: 1rem;
}
.blog_view .info_box .desc li strong {
    position: relative;
    display: inline-block;
    width: 11.5rem;
    font-size: 1.6rem;
    font-weight: 400;
    color: #222;
}
.blog_view .info_box .desc li strong::after {
    content: "";
    position: absolute;
    top: 6px;
    right: 1.5rem;
    width: 1px;
    height: 10px;
    background-color: #ddd;
}
.blog_view .info_box .desc li span {
    display: inline-block;
    width: calc(100% - 12rem);
    color: #555;
    font-size: 1.6rem;
}
.blog_view .info_box .desc .btn {
    margin-top: 6rem;
}
.blog_view h3 {
    margin-bottom: 1rem;
    font-size: 2rem;
    color: #222;
    font-weight: 600;
}
.blog_view .cont_box {
    margin-bottom: 3rem;
}
.blog_view .cont_box .txt {
    padding: 4rem 3rem;
    background-color: #f7f7f7;
    line-height: 3rem;
}
.blog_view .cont_box .txt + h3 {
    margin-top: 5rem;
}
.blog_view .board_btns {
    margin: 5rem 0;
}

.view_list {
    margin-top: 4rem;
    padding: 5rem 0 0 0;
    border-top: 1px solid #777;
    border-bottom: 1px solid #777;
}
.view_list h3 {
    font-weight: 600;
    margin-bottom: 2rem;
}
.view_list .blog_list {
    width: calc(100% + 6rem);
    padding-bottom: 4rem;
    margin-left: -3rem;
}
.view_list .blog_list::after {
    content: "";
    display: block;
    clear: both;
}
.view_list .blog_list li {
    width: 50%;
    float: left;
    padding: 0 3rem;
    border-bottom: 0 none;
}
.view_list .blog_list + h3 {
    padding-top: 4rem;
    border-top: 1px solid #ddd;
}
.view_list .blog_list .desc .title {
    font-size: 1.7rem;
}
.view_list .blog_list .desc .title .icon {
    font-weight: 100;
}
.view_list .blog_list .desc .title p {
    max-height: 9.6rem;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
}
.view_list .blog_list .desc .author {
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all;
    white-space: nowrap;
}
.view_list .blog_list .desc .author strong {
    margin-right: 0;
}
.view_list .blog_list .desc .label {
    position: relative;
    display: inline-block;
    width: 11.5rem;
    font-weight: 400;
    color: #222;
}
.view_list .blog_list .desc .label::after {
    content: "";
    position: absolute;
    top: 5px;
    right: 1.5rem;
    width: 1px;
    height: 10px;
    background-color: #ddd;
}

/* 게시판 내용 파일 */
.blog_view .file {
    position: relative;
    padding: 2rem 0 2rem 14.5rem;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}
.blog_view .file .title {
    position: absolute;
    top: 50%;
    left: auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    width: 14.5rem;
    font-weight: 500;
    color: #333;
    text-align: center;
}
.blog_view .file .list img {
    width: 2.5rem;
    margin-right: 0.5rem;
}
.blog_view .file .list li {
    overflow: hidden;
    position: relative;
    min-height: 3rem;
    padding-right: 21rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 3rem;
}
.blog_view .file .list li + li {
    margin-top: 0.5rem;
}
.blog_view .file .list li > a {
    color: #444;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.blog_view .file .list li > a:hover,
.blog_view .file .list li > a:focus {
    color: #116eb4;
}
.blog_view .file .list .link {
    position: absolute;
    right: 0;
    top: 0;
}
.blog_view .file .list .link a {
    font-size: 1.4rem;
    width: auto;
    min-width: 5rem;
    padding: 0.2rem 0.8rem;
    border: 1px solid #999;
    transition: all 0.2s;
}
.blog_view .file .list .link a:hover,
.blog_view .file .list .link a:focus {
    background-color: #333;
    color: #fff;
    border: 1px solid #333;
}
.blog_view .file .list .link i {
    line-height: 2.8rem;
}
.blog_view .file .list .txt {
    font-size: 1.2rem;
    color: #999;
}

/* 멤버십 */
.member {
    width: 87rem;
    max-width: 100%;
    margin: 0 auto;
    padding-top: 6rem;
    border: 1px solid #ddd;
}
.member .box {
    clear: both;
    padding: 1.5rem;
    background-color: #f8f8f8;
    border-top: 1px solid #ddd;
    text-align: center;
    word-break: keep-all;
}
.member_title {
    font-size: 2rem;
    margin-bottom: 2rem;
    font-weight: 400;
    color: #000;
}

/* 회원 버튼 */
.member_btn {
    height: 5.5rem;
    border: 1px solid #2d6dbb;
    line-height: 5.3rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.6rem;
    display: inline-block;
    min-width: 0;
    padding: 0 1rem;
    background-color: #2d6dbb;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    display: block;
    width: 31.5rem;
    max-width: 100%;
    margin: 3rem auto 0;
}
.member_btn:hover,
.member_btn:focus {
    background-color: transparent;
    color: #2d6dbb;
}
.member_btn.type1 {
    border-color: #6e7379;
    background-color: #6e7379;
}
.member_btn.type1:hover,
.member_btn.type1:focus {
    color: #6e7379;
}

/* 회원가입 절차 */
.member_step {
    display: table;
    width: calc(100% + 0px);
    table-layout: fixed;
    position: relative;
    z-index: 0;
}
.member_step > * {
    display: table-cell;
    padding-right: 0px;
    vertical-align: top;
}
.member_step li {
    font-size: 1.8rem;
    position: relative;
    color: #333;
    text-align: center;
}
.member_step li + li::before {
    position: absolute;
    right: 50%;
    top: 3.5rem;
    z-index: -1;
    width: 100%;
    height: 0.3rem;
    margin-top: -0.15rem;
    border-top: 0.3rem dotted #b7b7b7;
    content: "";
}
.member_step li.active small {
    background-color: #2d6dbb;
}
.member_step small {
    font-size: 1.6rem;
    display: block;
    width: 7rem;
    height: 7rem;
    margin: 0 auto;
    border-radius: 100%;
    border: 1.5rem solid #fff;
    background-color: #6e7379;
    background-color: #959fa5;
    font-weight: 400;
    color: #fff;
    line-height: 4rem;
}
.member_step strong {
    display: block;
    margin-top: -1rem;
    font-weight: 400;
}
.member_step + .login2 {
    margin-top: 3rem;
}

/* 로그인 */
/* .login1 .title { font-size: 3.5rem; float: left; width: 24.5rem; padding-left: 2rem; color: #0e1262; text-align: center; }
.login1 .form { float: right; position: relative; width: calc(100% - 32.5rem); margin: 0 8rem 4.5rem 0; padding-right: 13rem; }
.login1 .form .form_textbox { height: 4.7rem; padding-left: 2rem; }
.login1 .form .form_textbox + .form_textbox { margin-top: 1rem; }
.login1 .form .btn { font-size: 1.8rem; position: absolute; right: 0; top: 0; width: 12rem; height: 100%; border: 1px solid #2d6dbb; background-color: #2d6dbb; color: #fff; text-align: center; -webkit-transition: all 0.2s; transition: all 0.2s; }
.login1 .form .btn:hover, .login1 .form .btn:focus { background-color: #fff; color: #2d6dbb; }
.login1 .list li { position: relative; padding-left: 1.5rem; text-align: left; display: inline-block; margin-right: 4rem; vertical-align: top; }
.login1 .list li::before { position: absolute; left: 0; top: auto; content: ''; }
.login1 .list li::before { top: 1rem; width: 0.5rem; height: 0.5rem; border-radius: 100%; background-color: #0e1262; }
.login1 .list li:last-child { margin-right: 0; }
.login1 .list a { height: 3.2rem; border: 1px solid #ddd; line-height: 3rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 1.6rem; display: inline-block; min-width: 0; padding: 0 1rem; background-color: #fff; color: #767676; text-align: center; vertical-align: middle; -webkit-transition: all 0.2s; transition: all 0.2s; margin-left: 1rem; }
.login1 .list a:hover, .login1 .list a:focus { background-color: #ddd; color: #fff; }
.login1 .list a::after { display: inline-block; position: relative; top: 1px; font-family: "xeicon"; vertical-align: top; content: ''; }
 */
/* 본인확인 */
/*.login2 { overflow: hidden; word-break: keep-all; }
.login2 .group { float: left; width: calc(50% - 1rem); padding: 6rem; border: 1px solid #ddd; text-align: center; }
.login2 .group.group2 { float: right; }
.login2 i { display: block; width: 7rem; margin: 0 auto 3rem; }
.login2 span { display: block; height: 6.5rem; }
.login2 .title { text-align: center; } */

/* 아이디비번찾기 */
.find .form {
    width: 32rem;
    max-width: 100%;
    margin: 0 auto 7rem;
}
.find .form ul {
    display: inline-block;
    width: 100%;
}
.find .form li {
    float: left;
    position: relative;
    width: calc(50% - 0.5rem);
}
.find .form li input {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}
.find .form li input:checked + label {
    border-color: #333;
    color: #000;
}
.find .form li input:hover + label,
.find .form li input:focus + label {
    outline: 1px dotted #000;
}
.find .form li label {
    height: 5rem;
    border: 1px solid #e7e7e7;
    line-height: 4.8rem;
    font-size: 1.5rem;
    display: block;
    color: #777;
    text-align: center;
}
.find .form li + li {
    float: right;
}
.find .btns {
    overflow: hidden;
    margin-top: 1rem;
}
.find .txt {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e7e7e7;
}
.find .member_btn {
    float: left;
    width: calc(50% - 0.5rem);
    margin-top: 0;
}
.find .member_btn + .member_btn {
    float: right;
}

/* 검색 */
.search_form form {
    position: relative;
    width: 50rem;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 8rem;
    line-height: 4rem;
}
.search_form form label {
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 400;
}

/* 검색 버튼 */
.search_form .btn {
    position: absolute;
    right: 0;
    top: 0;
    width: 8rem;
    height: 4rem;
    border: 1px solid #000;
    background-color: #000;
    color: #fff;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.search_form .btn:hover,
.search_form .btn:focus {
    background-color: #fff;
    color: #000;
}

/* 검색 결과 */
.search_result .label {
    padding: 3rem 0;
    border-bottom: 1px solid #ddd;
    font-size: 2rem;
    color: #000;
    text-align: center;
}
.search_result .label strong {
    font-weight: 600;
    color: #484c58;
}
.search_result .depth4_tab {
    margin-top: 3rem;
}

/* 검색결과 더보기 */
.search_result .group {
    position: relative;
    margin-top: 5rem;
}
.search_result .group .more {
    display: block;
    margin-top: 1rem;
    padding: 1rem;
    border: 1px solid #ddd;
    background-color: #f8f8f8;
    text-align: center;
}
.search_result .group .more i {
    transition: all 0.2s;
}
.search_result .group .more:hover i,
.search_result .group .more:focus i {
    transform: rotate(180deg);
}

/* 검색결과 타이틀 */
.search_result .title {
    margin-bottom: 2rem;
    font-size: 2.5rem;
    font-weight: 500;
    color: #000;
}
.search_result .title .point1 {
    color: #c00;
}
.search_result .title small {
    font-size: 1.6rem;
    font-weight: 300;
    color: #555;
}

/* 검색결과 목록 */
.search_result .board_list li {
    padding: 2rem 0;
}
.search_result .board_list li + li {
    border-top: 1px solid #ddd;
}
.search_result .board_list strong {
    display: block;
    font-size: 1.8rem;
    font-weight: 400;
    color: #000;
}
.search_result .board_list .info {
    margin: 0.5rem 0 0;
    padding: 1rem 1.5rem;
    background-color: #f8f8f8;
}
.search_result .board_list .info span {
    display: inline-block;
    vertical-align: middle;
}
.search_result .board_list .info span + span::before {
    display: inline-block;
    position: relative;
    top: -0.2rem;
    width: 1px;
    height: 1.5rem;
    margin: 0 1rem 0 0.75rem;
    background-color: #ddd;
    content: "";
    vertical-align: middle;
}
.search_result .board_list .txt {
    margin-top: 1rem;
}

/* 자료회원가입 - 이지현 추가 */
.board_list .tstyle_write .email .form_select select {
    width: 14rem;
}
.board_list .tstyle_write textarea {
    width: 100%;
    height: 10rem;
    resize: none;
    padding: 1.5rem;
    border-radius: 6px;
    border: 1px solid #f3f3f3;
    background-color: #f3f3f3;
}
.board_list .tstyle_write textarea:focus,
.board_list .tstyle_write textarea:active {
    background-color: #fff;
    border-color: #222;
    transition: all 0.2s;
}
.board_list .tstyle_write .date {
    line-height: 4.3rem;
}
.board_list .tstyle_write .date .form_textbox {
    width: 100%;
    max-width: 18rem;
    background-image: url("../img/sub/cal_icon.png");
    background-repeat: no-repeat;
    background-position: right 10px center;
}
.board_list .tstyle_write .date .form_textbox:focus,
.board_list .tstyle_write .date .form_textbox:active {
    background-image: url("../img/sub/cal_icon_on.png");
}
.board_list .tstyle_write .form_radio label::before {
    top: -0.2rem;
    left: 0;
}
.board_list .tstyle_write .form_radio label::after {
    top: 0.4rem;
    left: 0.6rem;
}

@media (max-width: 1024px) {
    .sitemap dt {
        width: 25%;
    }
    .sitemap dd {
        width: 75%;
    }
    .sitemap .depth2 > li {
        width: 33.333%;
    }

    /* 동영상 게시판 */
    .gallery_list li {
        width: 33.333% !important;
    }
    .gallery_list li:nth-child(4n + 1) {
        clear: none !important;
    }
    .gallery_list li:nth-child(3n + 1) {
        clear: both !important;
    }

    /* 이북형 */
    .board_ebook {
        width: calc(100% + 4rem);
        margin: 0 -2rem;
    }
    .board_ebook li {
        padding: 3rem 2rem;
    }
    .board_ebook .btn {
        position: static;
        margin-top: 2rem;
    }
    .board_ebook .btn span {
        display: block;
    }
    .board_ebook .btn span a {
        max-width: none;
    }
    .board_ebook .btn span + span {
        margin-top: 1rem;
    }

    /* PDF형 */
    .board_pdf {
        width: calc(100% + 2rem) !important;
        margin: 0 -1rem;
    }
    .board_pdf li {
        padding: 2rem 1rem;
    }
    .board_pdf .btn a {
        padding: 0 1rem;
    }
    .board_pdf .btn a i {
        right: 1rem;
    }

    /* 연구보고서 view */
    .view_list .blog_list li {
        float: none;
        width: 100%;
    }
    .view_list .blog_list li + li {
        margin-top: 3rem;
    }
}

@media (max-width: 768px) {
    .board_box.type2 {
        padding: 2rem;
        padding-left: 22rem;
    }
    .board_box.type2 .img {
        width: 20rem;
        padding: 2rem;
    }
    .board_btns .btn {
        min-width: 0 !important;
    }

    .board_list .tstyle_write th {
        display: block;
        padding: 0 1rem !important;
        border-bottom: 0 none;
    }
    .board_list .tstyle_write td {
        padding: 0 1rem !important;
    }
    .board_list .tstyle_write .file {
        border: 0 none;
    }
    .board_list .tstyle_write .file th::after {
        display: block;
        margin-bottom: 1rem;
        font-size: 1.5rem;
        font-weight: 300;
        color: #555;
        content: "hwp,xls,doc,ppt,pdf,zip,jpg,gif,png 파일만, 5MB까지 업로드가 가능합니다.";
        line-height: 1.2;
    }
    .board_list .tstyle_write .file .form_file .txt {
        color: transparent;
    }
    .board_list .tstyle_write .file .form_file .txt.active {
        color: #555;
    }
    .board_list .tstyle_write .file + .file {
        padding-top: 0;
    }
    .board_list .tstyle_write .file + .file th {
        display: none;
    }
    .board_list .tstyle_write .file:last-child {
        padding-bottom: 1.5rem;
    }
    .board_list .tstyle_write .form_radio label::before,
    .board_list .tstyle_write .form_radio label::after,
    .board_list .tstyle_write .form_check label::before,
    .board_list .tstyle_write .form_check label::after {
        margin-top: -0.2rem;
    }

    .board_info .search_wrapper {
        float: none;
    }

    /* 게시판 페이징 */
    .board_pager .group {
        margin: 0 2rem;
    }
    .board_pager .group a {
        display: none;
    }
    .board_pager .group a:last-child,
    .board_pager .group .active {
        display: inline;
    }
    .board_pager .group .active {
        background: none;
        font-weight: 600;
        color: #333;
    }
    .board_pager .group .active::after {
        font-weight: 300;
        content: " / ";
    }

    /* 게시판 목록 정보 */
    .board_info {
        margin-bottom: 1rem;
    }
    .board_info .page_info,
    .board_info form {
        float: none;
    }
    .board_info .form {
        width: 100%;
        margin-bottom: 1rem;
        padding: 1rem;
        border: 1px solid #ddd;
        background-color: #f8f8f8;
    }
    .board_info .form .item {
        width: 12rem;
    }
    .board_info .form .item.type1 {
        width: auto;
    }

    /* 게시판 목록 기본 */
    .board_list table {
        table-layout: fixed;
    }
    .board_list tr {
        display: block;
        padding: 1rem 0;
        border-bottom: 1px solid #ddd;
    }
    .board_list colgroup,
    .board_list thead {
        display: none;
    }
    .board_list td {
        display: block;
        padding: 0;
        border: 0 none;
        text-align: left;
        line-height: 1.5;
    }

    /* 게시판 목록 */
    .board_list .tstyle_list td {
        padding: 0.4rem 0;
    }
    .board_list .tstyle_list td[aria-label]::before {
        margin-right: 2rem;
        font-weight: 400;
        color: #333;
        content: attr(aria-label);
    }
    .board_list .tstyle_list td.m_hidden,
    .board_list .tstyle_list td[aria-label="분류"]::before,
    .board_list .tstyle_list td[aria-label="첨부파일"],
    .board_list .tstyle_list td[aria-label="처리상태"]::before {
        display: none;
    }
    .board_list .tstyle_list td[aria-label="처리상태"] {
        margin-top: 0.5rem;
    }
    .board_list .tstyle_list td[aria-label="제목"] a {
        font-size: 1.8rem;
        margin-bottom: 0.5rem;
        font-weight: 500;
        color: #000;
        white-space: normal;
    }
    .board_list .tstyle_list td[aria-label="과제구분"]::before,
    .board_list .tstyle_list td[aria-label="제목"]::before,
    .board_list .tstyle_list td[aria-label="링크"]::before {
        display: none;
    }
    .board_list .tstyle_list td[aria-label="링크"] {
        margin-top: 0.5rem;
    }

    /* 게시판 목록 아이콘 */
    .board_list .xi-lock {
        top: -0.3rem;
    }
    .board_list .xi-new {
        margin-top: 0.25rem;
        float: left;
    }

    /* 게시판 내용보기 */
    .board_view .contents {
        padding: 1.5rem 0;
    }
    .board_view .contents .cont_line,
    .board_view .contents .cont_bg {
        margin-left: 0;
        margin-right: 0;
    }

    /* 게시판 내용보기 파일 */
    .blog_view .file {
        padding: 1.5rem;
    }
    .blog_view .file .title {
        display: block;
        position: static;
        width: auto;
        margin-bottom: 1rem;
        text-align: left;
        transform: translate(0, 0);
        -webkit-transform: translate(0, 0);
    }
    .blog_view .file .list .txt {
        display: none;
    }

    .blog_view .file {
        padding: 1.5rem;
    }
    .blog_view .file .title {
        display: block;
        position: static;
        width: auto;
        margin-bottom: 1rem;
        text-align: left;
        transform: translate(0, 0);
        -webkit-transform: translate(0, 0);
    }
    .blog_view .file .list .txt {
        display: none;
    }

    /* 게시판 답변 */
    .board_reply {
        background-position: top 40px left 20px;
    }
    .board_reply .file {
        margin: 1.5rem 0 -1.5rem;
        padding: 1rem 0;
    }

    /* 게시판 답변상황 */
    .board_state .form ul {
        display: block;
        margin: 0;
    }
    .board_state .form li {
        display: block;
        margin-bottom: 0.5rem;
    }
    .board_state .form li + li::before {
        display: none;
    }
    .board_state .form label {
        float: left;
        width: 7rem;
        margin: 0;
    }
    .board_state .form .btn {
        width: 15rem;
        margin: 1rem 0 0 7rem;
    }

    /* 게시판 코멘트 */
    .comment .list li {
        padding: 1.5rem 0;
    }
    .comment .list .btn {
        right: 0.5rem;
        top: 1rem;
    }
    .comment .list .re {
        padding-left: 2rem;
    }

    /* 이북형 */
    .board_ebook {
        display: block;
        width: 100%;
        margin: 0;
    }
    .board_ebook > * {
        display: block;
        clear: none;
        float: none;
        width: 100%;
        margin-right: 0;
    }
    .board_ebook > * + * {
        margin-top: 0;
    }
    .board_ebook li {
        overflow: hidden;
        padding: 1.5rem;
        overflow: visible;
    }
    .board_ebook li::after {
        content: "";
        display: block;
        clear: both;
    }
    .board_ebook li:nth-child(n + 2) {
        border-top: 1px solid #ddd;
    }
    .board_ebook .group {
        padding: 1rem 0 0 2rem;
    }

    /* PDF형 */
    .board_pdf {
        display: inline-block;
        width: calc(100% + 0px);
    }
    .board_pdf > * {
        clear: none;
        float: left;
        width: calc(33.33333% - 0px);
        margin-right: 0px;
    }
    .board_pdf > *:nth-child(n + 4) {
        margin-top: 0px;
    }
    .board_pdf > *:nth-child(2n + 1) {
        clear: none;
    }
    .board_pdf > *:nth-child(3n + 1) {
        clear: both;
    }

    /* 웹진형 게시판 */
    .blog_list.type3 .thumb {
        width: 20rem;
        height: 13rem;
    }
    .blog_list.type3 .desc {
        width: calc(100% - 23rem);
    }

    /* 멤버십 */
    .member {
        padding-top: 3rem;
    }

    /* 로그인 */
    .login1 .title {
        width: 18rem;
        padding-left: 0;
    }
    .login1 .form {
        width: calc(100% - 22rem);
        margin: 0 4rem 3rem 0;
    }
    .login1 .list li {
        display: block;
        width: 40rem;
        max-width: 100%;
        margin: 0 auto;
    }
    .login1 .list li:last-child {
        margin: 0.5rem auto 0;
    }
    .login2 .group {
        padding: 3rem;
    }
    .login2 .group span {
        height: 7.5rem;
    }

    /* 아이디비번찾기 */
    .find .form {
        margin-bottom: 3.5rem;
    }

    /* 자료회원가입 테이블 라디오 버튼 */
    .board_list .tstyle_write .form_radio label::before {
        top: 0.6rem;
        left: 0rem;
    }
    .board_list .tstyle_write .form_radio label::after {
        top: 1.2rem;
        left: 0.6rem;
    }

    /* 공모전 */
    .blog_list.type2 .info {
        position: static;
    }
}

@media (max-width: 580px) {
    .board_box.type1 {
        padding: 2rem;
    }
    .board_box.type1 .txt br {
        display: none;
    }
    .board_box.type1.table .group {
        display: block;
        padding: 2rem;
    }
    .board_box.type1.table .group2 {
        border-left: 0 none;
        border-top: 1px solid #ddd;
    }
    .board_box.type2 {
        padding: 0 1.5rem 1.5rem;
    }
    .board_box.type2 .img {
        display: block;
        position: static;
        width: calc(100% + 3rem);
        margin: 0 -1.5rem 1.5rem;
        border: 0 none;
        border-bottom: 1px solid #ddd;
        text-align: center;
    }

    .board_list .tstyle_write .form_mail .form_textbox {
        display: block;
        width: 100%;
    }
    .board_list .tstyle_write .form_mail .form_textbox + .form_textbox {
        float: right;
        width: calc(100% - 2rem);
        margin: 0.25rem 0;
    }
    .board_list .tstyle_write .form_mail .form_select {
        display: block;
        clear: both;
        width: 100%;
    }

    .board_list .tstyle_write .email .form_textbox {
        width: 46.5% !important;
        display: inline-block !important;
    }
    .board_list .tstyle_write .email .form_select select {
        width: 100%;
        max-width: 100%;
        float: none;
    }
    .board_list .tstyle_write .date .form_textbox {
        width: 46.5%;
    }

    .sitemap {
        margin-top: -2rem;
    }
    .sitemap .group {
        padding: 2rem 0;
    }
    .sitemap dt {
        float: none;
        width: 100%;
        margin-bottom: 2rem;
        text-align: center;
    }
    .sitemap dd {
        overflow: hidden;
        float: none;
        width: 100%;
    }
    .sitemap .depth2 > li {
        width: 50%;
    }

    /* 게시판 목록 정보 */
    .board_info .form {
        display: block;
    }
    .board_info .form .item {
        display: block;
        width: 100%;
        padding: 0 0 0.5rem;
    }
    .board_info .form .item.btn {
        width: 100% !important;
        padding: 0;
    }

    /* 게시판 내용 정보 */
    .board_view .info {
        padding: 1.5rem;
    }
    .board_view .info li {
        display: block;
        text-align: left;
    }
    .board_view .info li + li::before {
        display: none;
    }
    .board_view .txt_center {
        margin-bottom: 1rem;
    }

    /* 게시판 내용 파일 */
    .board_view .file .list li {
        padding-right: 10rem;
    }
    .board_view .file .list .link a[target="_blank"] {
        display: none;
    }

    .blog_view .file .list li {
        padding-right: 10rem;
    }
    .blog_view .file .list .link a[target="_blank"] {
        display: none;
    }

    /* 게시판 답변 */
    .board_reply .info li[class] {
        display: block;
    }
    .board_reply .info li + li::before {
        display: none;
    }
    .board_reply .file .list li {
        padding-right: 10rem;
    }
    .board_reply .file .list .link a[target="_blank"] {
        display: none;
    }

    /* 게시판 답변상황 */
    .board_state {
        margin-top: 2rem;
        padding: 1.5rem;
    }
    .board_state::before {
        display: block;
        position: static;
        margin-bottom: 0.5rem;
    }
    .board_state li {
        display: block;
    }
    .board_state li + li::before {
        display: none;
    }

    /* 게시판 코멘트 */
    .comment .form {
        margin: 2rem 0;
    }

    /* 공공누리 */
    .kogl_open .form_radio .img {
        display: block;
        float: none;
        width: 100%;
        padding: 0 0 0.5rem;
    }

    /* FAQ */
    .faq .label {
        padding: 1.5rem 4rem 1.5rem 6.5rem;
    }
    .faq .label::before {
        top: 1rem;
    }
    .faq .label::after {
        right: 1rem;
        top: 2rem;
    }
    .faq .item {
        padding: 0 1rem 0 6.5rem;
    }
    .faq .item::before {
        display: none;
    }
    .faq .item::after {
        left: 1.5rem;
    }

    /* PDF형 */
    .board_pdf {
        display: inline-block;
        width: calc(100% + 0px);
    }
    .board_pdf > * {
        clear: none;
        float: left;
        width: calc(50% - 0px);
        margin-right: 0px;
    }
    .board_pdf > *:nth-child(n + 3) {
        margin-top: 0px;
    }
    .board_pdf > *:nth-child(2n + 1) {
        clear: both;
    }

    /* 달력형 */
    #calendar .fc-view-container .fc-day-header {
        padding: 0.5rem 0;
    }
    #calendar .fc-view-container .fc-day-number {
        font-size: 1.2rem;
        padding: 0.5rem 0 0 0.5rem;
    }
    #calendar .fc-view-container .fc-day-grid-event .fc-title {
        font-size: 1.4rem;
    }
    #calendar .fc-view-container .fc-row .fc-content-skeleton {
        padding-bottom: 0;
    }
    #calendar
        .fc-view-container
        .fc-row
        .fc-content-skeleton
        .fc-event-container {
        padding: 0.15rem 0 0;
    }
    #calendar .fc-view-container .fc-row .fc-content-skeleton tr:last-child td {
        height: 3rem;
    }
    #calendar
        .fc-view-container
        .fc-row
        .fc-content-skeleton
        tr:last-child
        td.fc-event-container {
        height: auto;
    }

    /* 동영상 게시판 */
    .gallery_list {
        width: calc(100% + 2rem);
    }
    .gallery_list li {
        width: 50% !important;
        padding: 2rem 2rem 2rem 0;
    }
    .gallery_list li:nth-child(3n + 1) {
        clear: none !important;
    }
    .gallery_list li:nth-child(2n + 1) {
        clear: both !important;
    }

    /* 웹진형 게시판 */
    .blog_list a {
        padding: 2rem 0;
    }
    .blog_list .txt {
        margin-bottom: 2rem;
    }
    .blog_list .title {
        margin-bottom: 1.5rem;
    }
    .blog_list .desc a > span {
        display: block;
    }
    .blog_list .desc a > span + span {
        margin-top: 0.5rem;
    }
    .blog_list .desc a > span + span::before {
        display: none;
    }

    /* 멤버십 */
    .member {
        padding-top: 2rem;
    }

    /* 로그인 */
    .login1 .title {
        float: none;
        width: 100%;
        margin-bottom: 1rem;
    }
    .login1 .form {
        float: none;
        width: calc(100% - 4rem);
        margin: 0 auto 2rem;
        padding-right: 11rem;
    }
    .login1 .form .btn {
        width: 10rem;
    }
    .login1 .list li {
        padding-left: 1rem;
    }
    .login1 .list a {
        margin-left: 0.5rem;
        padding-right: 0.5rem;
    }

    /* 본인확인 */
    .login2 .group {
        float: none;
        width: 100%;
    }
    .login2 .group.group2 {
        float: none;
        margin: 1rem 0 0;
    }
    .login2 .group span {
        height: auto;
    }

    /* 연구보고서 view */
    .blog_view .info_box > * {
        float: none;
    }
    .blog_view .info_box .img {
        width: 100%;
        max-width: 30rem;
        height: auto;
        margin: 0 auto 2rem auto;
    }
    .blog_view .info_box .desc {
        width: 100%;
        padding: 0 2rem;
    }
    .view_list .blog_list li .thumb {
        width: 16rem;
        height: 24rem;
    }
    .view_list .blog_list .desc {
        width: calc(100% - 18rem);
    }
}

@media (max-width: 400px) {
    /* 이북형 */
    .board_ebook li {
        padding: 1.5rem 0;
    }
    .board_ebook .thumb {
        width: 14rem;
        height: 20rem;
    }
    .board_ebook .group {
        width: calc(100% - 16rem);
    }
    .board_ebook .desc {
        max-height: 5.1rem;
    }

    /* PDF형 */
    .board_pdf .btn a {
        display: block;
        float: none;
        width: 100%;
    }
    .board_pdf .btn a + a {
        float: none;
        margin-top: 0.5rem;
    }

    /* 동영상 게시판 */
    .gallery_list .desc span {
        display: block;
    }
    .gallery_list .desc span::before {
        display: none !important;
    }

    /* 웹진형 게시판 */
    .blog_list .thumb {
        display: block;
        float: none;
        width: 100%;
        max-width: 23rem;
        height: auto;
        min-height: 15rem;
        margin: 0 auto;
    }
    .blog_list .desc {
        float: none;
        width: 100% !important;
        padding: 1.5rem 0 0;
    }
    .blog_list .btn {
        position: static;
        margin-top: 2rem;
    }

    /* 연구보고서 view */
    .view_list .blog_list .desc {
        width: 100%;
    }
}
