@charset "utf-8";

@import url('/core/css/bootstrap.min.css');
@import url('/core/css/bootstrap-table.min.css');

/* FONT */
@import url('/core/fonts/bootstrap-icons/bootstrap-icons.css');
@import url('/core/fonts/notosans/notosans.css');
@import url('/core/fonts/GmarketSans/GmarketSans.css');

:root {
    /* font */
    --font-type01: 'GmarketSans';
    --font-type02: 'NotoSansKR';
    --font-icon: 'bootstrap-icons';

    /* main */
    --main-color01: #0E214C;
    --main-color01-hover: #204db6;
    --main-color02: #3A2A81;
    --main-color02-hover: #7229E7;

    /* point */
    --point-color01: #7229E7;
    --point-color01-hover: #3A2A81;
    --point-color02: #00817F;
    --point-color02-hover: #0c7e7c;
    --point-color03: #D63D8A;
    --point-color03-hover: #d63d54;
    --point-color04: #FABA38;
    --point-color04-hover: #fa6f38;
}

/*****************************************************
	Common
*****************************************************/
html{
    width: 100%;
    overflow-x: hidden;
    letter-spacing: -0.3px;
}
html, body {
    position: relative;
    font-family: 'NotoSansKR', sans-serif;
    min-width: 360px;
    min-width: 320px;
    font-size: 15px;
    color: #222;}
a, .btn {transition: 0.3s;}
a {color:inherit;}
a:hover, a:focus{color: var(--point-color01);}
ul, ol, li, dl {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
p{
    margin-bottom: 5px;
}
img{
    max-width: 100%;
}
button{
    cursor: pointer;
    background-color: transparent;
}
::selection{
    background: var(--main-color01);
    color: #fff;
}
.line-gap{
    width: 100%;
    margin: 35px 0;
    border-top: 1px dashed #ddd;
}
.line-gap{
    width: 100%;
    margin: 35px 0;
    border-top: 1px dashed #ddd;
}
.gap {
    height: 50px;
}
.small-gap {
    height: 15px;
}
@media(min-width: 992px) {
    html, body {
        font-size: 16px;
    }
}
@media(min-width: 1200px) {
    .container {
        padding-inline: 0;
    }
}
@media(min-width: 1400px) {
    .container {
        max-width: 1300px;
    }
}


/* layout */
#content {min-height: 500px;}

/* accessibility */
#accessibility {position: fixed;top: 0;left: 0;width: 100%;z-index: 99999}
#accessibility ul {margin: 0;padding: 0;list-style-type: none;}
#accessibility li {margin: 0;padding: 0;list-style-type: none}
#accessibility a {display: block;position: absolute;top: -9999px;left: 0;width: 100%;height: 26px;line-height: 18px;text-align: center;background: #333;color: #fff;text-decoration: none;font-size: 12px}
#accessibility a:focus, #accessibility a:active {top: 0;padding: 4px 0;font-weight: 600; }
#accessibility a:focus:after, #accessibility a:focus-within:after, #accessibility a:focus-visible:after{
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    border: 2px dashed #ff6d6d;
    position: absolute;
    left: 0;
    top: 0;
}
/*********************** Footer ***********************/
#footer .f-utill{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 7px 0;
    margin-bottom: 30px;
    color: #fff;
}
#footer .f-utill > li:first-child{
    color: #94B0FE;
}
#footer .f-utill > li:not(:first-child)::before{
    display: inline-block;
    content: '';
    width: 1px;
    height: 11px;
    background-color: #5A5D63;
    vertical-align: middle;
    margin: 0 15px;
}
#footer .f-utill > li > a:hover, 
#footer .f-utill > li > a:focus{
    color: #fff;
    text-decoration: underline;
}

#footer .f-info{
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #9FA2A7;
    gap: 20px 40px;
    text-align: center;
}
#footer .f-info .f-txt li:not(:first-child)::before{
    display: inline-block;
    content: '';
    width: 6px;
    height: 6px;
    background-color: #9FA2A7;
    border-radius: 1px;
    vertical-align: middle;
    margin: 0 15px;
}
#footer .f-info .f-txt .copyright{
    font-size: 15px;
    font-weight: 300;
}

#footer .f-info .f-txt ul{
    display: flex;
flex-wrap: wrap;
justify-content: center;
margin-bottom: 15px;
}
@media(min-width: 1200px) {
    #footer {
        padding: 100px 0 75px;
    }
    #footer .f-utill {
        justify-content: flex-start;
    }
    #footer .f-info{
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        text-align: left;
    }

}
/*****************************************************
	Style
*****************************************************/

/* Color */
.text-primary {color: var(--primary) !important;}
.text-secondary {color: var(--secondary) !important;}
.text-danger {color: var(--danger) !important;}

/* Font */
.font-size15 {font-size: 15px !important;}
.font-size17 {font-size: 17px !important;}
.font-size18 {font-size: 18px !important;}
.font-size20 {font-size: 20px !important;}
.font-size22 {font-size: 22px !important;}
.font-size25 {font-size: 25px !important;}
.font-size30 {font-size: 30px !important;}

/* title */
.tit-h3 {
    position: relative;
    font-weight: bold;
    font-size: 24px;
    margin-top:35px;
    margin-bottom: 10px;
    padding: 5px 0 0 20px;
    font-family: var(--font-type01);
}
.tit-h3::before{
    display: block;
    content: '';
    width: 8px;
    height: 25px;
    background-color: var(--point-color01);
    border-radius: 10px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.box-info + .tit-h3 {
    margin-top: 40px;
}
.tit-h3 + .tit-h4, .tit-h4 + .tit-h4 {
    margin-top: 15px;
}
.box-info + .tit-h4 {
    margin-top: 20px;
}
.tit-h4 {
    font-size: 22px;
    margin: 35px 0 10px;
    padding: 5px 0 0 20px;
    font-family: var(--font-type01);
    background:no-repeat url('/core/images/bullet02.png') left top 6px;
    font-weight: bold;
    position: relative;
}
.tit-h5 {
    font-weight: bold;
    font-size: 20px;
    margin: 15px 0 5px;
    padding: 5px 0 0 20px;
    font-family: var(--font-type01);
    position: relative;
}
.tit-h5::before{
    display: block;
    content: '';
    width: 13px;
    height: 13px;
    background-color: var(--point-color01);
    border-radius: 3px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
}
.tit-h6 {
    font-size: 16px;
    margin: 15px 0 5px 0;
    font-family: var(--font-type01);
    font-weight: bold;
}
@media(min-width: 992px) {
    .tit-h3 {
        font-size: 30px;
        margin-top:40px;
        padding: 5px 0 0 25px;
    }
    .tit-h3::before{
        width: 10px;
        height: 30px;
    }
    .tit-h4 {
        font-size: 26px;
        background-position: left top 8px;
        padding: 5px 0 0 25px;
    }
    .tit-h5{
        padding: 5px 0 0 25px;
        font-size: 24px;
    }
    .tit-h6 {
        font-size: 21px;
    }
}

/* button */
.btn-primary {
	color: #fff;
	background-color: var(--main-color01);
	border-color: var(--main-color01);
}
.btn-primary:hover,
.btn-primary:focus {
	color: #fff;
	background-color:var(--main-color01-hover);
    border-color: var(--main-color01-hover);
}
.btn-info {
	color: #fff;
	background-color: var(--point-color01);
	border-color: var(--point-color01);
}
.btn-info:hover,
.btn-info:focus {
	color: #fff;
	background-color: var(--point-color01-hover);
	border-color: var(--point-color01-hover);
}
.btn-danger {
	color: #fff;
	background-color: var(--danger);
	border-color: var(--danger);
}
.btn-danger:hover,
.btn-danger:focus {
	color: #fff;
	background-color: var(--danger-hover);
	border-color: var(--danger-hover);
}
.btn-secondary:hover,
.btn-secondary:focus {
    color: #fff;
    background-color: #5a6268;
    border-color: #545b62;
}
.btn-dark:hover,
.btn-dark:focus {
    color: #fff;
}
.btn-white {
    background-color: #fff;
    color: #333;
}
.btn-white:hover,
.btn-white:focus {
    background-color: #fff;
    color: var(--main-color01);
}
.btn-outline-primary {
	color: var(--main-color01);
	background-color: #fff;
	background-image: none;
	border-color: var(--main-color01);
}
.btn-outline-primary:hover,
.btn-outline-primary:focus {
	color: #fff;
	background-color: var(--main-color01);
	border-color: var(--main-color01);
}
.btn-outline-danger {
	color: var(--danger);
	background-color: #fff;
	background-image: none;
	border-color: var(--danger);
}
.btn-outline-danger:hover,
.btn-outline-danger:focus {
	color: #fff;
	background-color: var(--danger);
	border-color: var(--danger);
}
.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
	color: #fff;
	background-color: #6c757d;
	border-color: #6c757d;
}
.btn-outline-info {
    color: var(--point-color01);
    background-color: #fff;
    background-image: none;
    border-color: var(--point-color01);
}
.btn-outline-info:hover,
.btn-outline-info:focus {
    color: #fff;
	background-color: var(--point-color01);
	border-color: var(--point-color01);
}
.btn-outline-dark:hover,
.btn-outline-dark:focus {
    color: #fff;
    background-color: #343a40;
    border-color: #343a40;
}
.btn-outline-white {
    color: #fff;
    border-color: #fff;
}
.btn-outline-white:hover,
.btn-outline-white:focus {
    color: var(--main-color02);
    background-color: #fff;
    border-color: #fff;
}
.btn.btn-sm {
    padding: 5px 7px;
}
.btn-sm .material-icons {
    font-size: 15px;
}
.btn-lg, .btn-group-lg > .btn {
    font-size: 18px;
}

.btn-link, .btn-down, .btn-mail {position: relative;padding: 0 22px 0 0;background-color: transparent;color: var(--primary);border-radius: 0;border: none;display: -webkit-inline-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;overflow: hidden;text-align: left;}
.btn-link:hover, .btn-link:focus, .btn-down:hover, .btn-down:focus, .btn-mail:hover, .btn-mail:focus {text-decoration: none;color: var(--primary-hover);border-color: var(--primary-hover);}
.btn-link:before, .btn-down:before, .btn-mail:before {content:'';position: absolute;left: 0;bottom: 0;display: block;width:100%;/*border-bottom: 1px dashed var(--primary); dukim 주석 */}
.btn-link:after, .btn-down:after, .btn-mail:after {position: absolute;right: 2px;bottom: 1px;font-family: var(--font-icon);font-size: 13px;}
.btn-down:after, .btn-mail:after {font-size: 14px;}
p > .btn-link, ul > li > .btn-link, .b-table-box .btn-link, p > .btn-down, ul > li > .btn-down, .b-table-box .btn-down, p > .btn-mail, ul > li > .btn-mail, .b-table-box .btn-mail {margin-top:  -5px !important;}
.btn-link:after {content: '\F1C5';}
.btn-down:after {content: '\F30A';}
.btn-mail:after {content: '\F32F';}
.btn-link[type=button]::after, .btn-link[data-toggle=collapse]::after{display:none;}

/* badge */
.badge.small {
    font-size: 80%;
}
.badge {
    font-weight: 400;
    border-radius: 50px;
    padding:4px 10px;
    vertical-align: text-bottom;
    background-color: transparent;
    border: 1px solid var(--main-color01);
    color: var(--main-color01);
}
.badge.inverse {
    background-color: var(--main-color02);
    color: #fff;
}
.badge-primary {
    border-color: var(--main-color01);
    color: var(--main-color01);
}
.badge-primary.inverse {
    background-color: var(--main-color01);
    color: #fff;
}
.badge-danger {
    border-color: var(--danger);
    color: var(--danger);
}
.badge-danger.inverse {
    background-color: var(--danger);
    color: #fff;
}
.badge-secondary {
    border-color: #6c757d;
    color: #6c757d;
}
.badge-secondary.inverse {
    background-color: #6c757d;
    color: #fff;
}
.badge-dark {
    border-color: #343a40;
    color: #343a40;
}
.badge-dark.inverse {
    background-color: #343a40;
    color: #fff;
}
.badge-white {
    border-color: #fff;
    color: #fff;
}
.badge-white.inverse {
    background-color: #fff;
    color: #333;
}
.badge-light {
    border-color: #eee;
    color: #666;
}
.badge-light.inverse {
    background-color: #eee;
    color: #666;
}
.badge-type02 {
    font-size: 16px;
    font-weight: 500;
    border-radius: 50px;
    padding: 6px 12px;
    margin-right: 8px;
    vertical-align: text-bottom;
    color: #fff;
    background-color: var(--main-color01);
}

/*****************************************************
	layout
*****************************************************/
/* list-style */
.list-style00, .list-style01, .list-style02 {
    margin: 0 0 1.5rem;
    text-align: left;
}
.list-style00 li, .list-style01 li, .list-style02 li {
    position:relative;
}
ul li .bltitle, ul li .title {
    font-weight:600
}

.list-style00 li {
    padding-left:35px;
}
.list-style00 li .num {
    position:absolute;
    top: 0;
    left:0;
    display: inline-block;
    width: 25px;
    height: 25px;
    color: #fff;
    font-size: 14px;
    font-family: var(--font-type01);
    background: #737373;
    border-radius: 50px;
    text-align: center;
    line-height: 28px;
}

.list-style01>li {
    position: relative;
    padding-left: 20px;
    margin: 5px 0;
    color: #555;
}
.list-style01>li::before {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #999;
    top: 10px;
    left: 0;
}
.list-style01>li .list-style02 {
    margin: .3rem 0 .7rem
}

.list-style02 > li {
    margin: 2px 0;
    padding-left: 17px;
    color: #666;
    position: relative;
}
.list-style02 > li::before{
    display: block;
    content: '';
    background-color: #666;
    width: 6px;
    height: 1px;
    position: absolute;
    left: 0;
    top: 12px;
}

.list-style03 > li {
    position:relative;padding: 3px 0 3px 26px;
}
.list-style03 > li .bl {
    color: var(--point-color-01);
    position:absolute;
    top:3px;
    left:0;
    font-weight:500;
    width: 26px;
    text-align:center;
}
.list-style03 > li .bl:after {
    display:inline-block;
    content:"."
}
.list-style03 > li .title {
    display:block;
    font-weight:500;
}
.list-style03 > li .title-inline {
    display:inline-block;
    font-weight:500;
    vertical-align:top
}
.list-style03 > li .txt {
    display:inline-block;
    vertical-align:top;
    width:85%
}
.table .list-style00, .table .list-style01, .table .list-style02,
.box-info .list-style00, .box-info .list-style01, .box-info .list-style02{
    margin-bottom: 0;
}

/* acc-style01 */
.acc-style01 {
    word-break: keep-all;
}
.acc-style01 .card {
    border: 0;
    border-radius: 0;
}
.acc-style01 .card .card-header {
    background-color: #fff;
    padding: 0;
    border: 1px solid #ddd;
    border-radius: 0;
}
.acc-style01 .card:not(:first-child) .card-header {
    border-top: 0;
}
.acc-style01 .card .card-header > .btn {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 22px 20px;
    border-radius: 0;
    font-size: 17px;
    font-weight: 500;
    text-align: left;
    color: #333;
    white-space: wrap;
    text-decoration: none;
}
.acc-style01 .card .card-header > .btn::before {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: 2px;
    background-color: var(--main-color01);
    transition: all 0.3s ease-out;
    z-index: 10;
}
.acc-style01 .card .card-header > .btn .question {
    position: relative;
    padding: 0 10px 0 40px;
}
.acc-style01 .card .card-header > .btn .question::before {
    content: 'Q';
    position: absolute;
    width: 28px;
    height: 28px;
    padding-top: 3px;
    font-family: var(--font-type01);
    font-size: 16px;
    color: #fff;
    text-align: center;
    background-color: var(--main-color01);
    border-radius: 50%;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    transition: all 0.3s ease-out;
}
.acc-style01 .card .card-header > .btn .bi {
    margin-top: 5px;
    transform: rotate(180deg);
    transition: all 0.3s ease-out;
    color: var(--main-color01);
}
.acc-style01 .card .card-header > .btn.collapsed .bi {
    transform: rotate(0);
    color: #333;
}
.acc-style01 .card .card-header > .btn.collapsed:hover
.bi, .acc-style01 .card .card-header > .btn.collapsed:focus .bi {
    color: var(--main-color01);
}
.acc-style01 .card .card-header > .btn.collapsed {
    font-weight: 400;
    color: #767676;
}
.acc-style01 .card .card-header > .btn.collapsed:hover,
.acc-style01 .card .card-header > .btn.collapsed:focus {
    font-weight: 500;
    color: #333;
}
.acc-style01 .card .card-header > .btn.collapsed::before {
    width: 0;
}
.acc-style01 .card .card-header > .btn.collapsed .question::before {
    background-color: #949494;
}
.acc-style01 .card .card-header > .btn.collapsed:hover
.question::before, .acc-style01 .card .card-header > .btn.collapsed:focus .question::before  {
    background-color: var(--main-color01);
}
.acc-style01 .card .card-body {
    border: 1px solid #ddd;
    border-top: 0;
    background-color: #f8f8fb;
    padding: 30px 20px;
}
.acc-style01 .card .card-body .answer {
    position: relative;
    padding: 0 18px 0 42px;
    margin: 0;
}
.acc-style01 .card .card-body .answer::before {
    content: 'A';
    position: absolute;
    width: 28px;
    height: 28px;
    padding-top: 3px;
    font-family: var(--font-type01);
    font-size: 16px;
    color: #fff;
    text-align: center;
    background-color: var(--point-color01);
    border-radius: 50%;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    transition: all 0.3s ease-out;
}

/* acc-style02 */
.acc-style02 {
    word-break: keep-all;
}
.acc-style02 .card {
    border: 0;
    border-radius: 0;
}
.acc-style02 .card .card-header {
    margin-top: 10px;
    padding: 0;
    border:none;
    background-color: #fff;
}
.acc-style02 .card:not(:first-child) .card-header {
    border-top: 0;
}
.acc-style02 .card .card-header > .btn {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 15px;
    border:1px solid var(--main-color01);
	border-radius: 7px;
	box-shadow:0 0 10px rgba(0,0,0,0.1);
	color: var(--main-color01);
    text-align: left;
    white-space: wrap;
    text-decoration: none;
}
.acc-style02 .card .card-header > .btn::before {
	display:none;
}
.acc-style02 .card .card-header > .btn .tit {
    position: relative;
    margin:0;
    padding: 0;
    font-size: 17px;
    font-weight: 500;
}

.acc-style02 .card .card-header > .btn .bi {  
    margin: 0;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50px;
	background:var(--point-color01);
    transform: rotate(180deg);
    transition: all 0.3s ease-out;
	color: #fff;
}
.acc-style02 .card .card-header > .btn.collapsed .bi {
    transform: rotate(0);
    color: #333;
    background: #eaf5ff;
}
.acc-style02 .card .card-header > .btn.collapsed:hover
.bi, .acc-style01 .card .card-header > .btn.collapsed:focus .bi {
    color: var(--main-color01);
}
.acc-style02 .card .card-header > .btn.collapsed {
    font-weight: 400;
    color: #767676;
}
.acc-style02 .card .card-header > .btn.collapsed:hover,
.acc-style02 .card .card-header > .btn.collapsed:focus {
    font-weight: 500;
    color: #333;
}
.acc-style02 .card .card-header > .btn.collapsed::before {
    width: 0;
}

.acc-style02 .card .card-body {
    padding: 15px;
	border-radius: 7px;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
	background: #f8f8fb;
    
}

@media(min-width: 992px){
    .acc-style02 .card .card-header > .btn {
        padding:15px 20px
    }
    .acc-style02 .card .card-body {
        padding: 20px;
    }
}

/* Non Page */
.non-page{
	text-align: center;
	padding-top: 13rem;
	margin-top: 1.5rem;
	margin-bottom: 2.7rem;
	background: url('/core/images/non-page.png') no-repeat top center;
    background-size: 170px;
}
.non-page h3, h3.non-page-txt {
    background: none !important;
    padding: 0;
    margin: 0;
    color: #555;
    font-size: 1.4rem;
}
.non-page h3 > strong, h3.non-page-txt > strong {
    color: #0e55c1;
}
.non-page p {
    color: #777;
    margin: 0.8rem 0 2rem;
}
.non-page .btn {
    padding-left: 1.3rem;
    padding-right: 1.3rem;
}
.non-page.board {
    background-image: url('/core/images/non-board.png');
}
.non-info{
    text-align: center;
	padding-top: 13rem;
	margin-top: 1.5rem;
	margin-bottom: 2.7rem;
	background: url('/core/images/non-board.png') no-repeat top center;
    background-size: 170px;
    font-size: 24px;
    color: #555;
}
@media(min-width: 992px){
    .non-page, .non-info{
        padding-top: 18rem;
        background-size: auto;
    }
}

/* box-info */
.box-info {
    background: linear-gradient(to right, #FCFBFF, #F3F7FF);
    padding: 70px 25px 20px;
    border-radius: 15px;
    position: relative;
    margin: 30px 0;
}
.box-info::after {
    display: block;
    content: '';
    position: absolute;
    width: 65px;
    height: 65px;
    border-radius: 10px;
    background: no-repeat #fff url('/core/images/info-icon.png') center;
    background-size: 50%;
    box-shadow: 0 -10px 20px rgba(114,41,231,0.1);
    left: 30px;
    top: -15px;
}
.box-info.num01::after {
    background-image: url('/core/images/info-icon01.png');
}
.box-info.num02::after {
    background-image: url('/core/images/info-icon02.png');
}
.box-info.num03::after {
    background-image: url('/core/images/info-icon03.png');
}

.box-info .tit {
    margin-bottom: 7px;
    font-weight:bold;
    font-family: var(--font-type01);
    color: var(--main-color01);
}
.box-info .tit .text-point{
    color: var(--point-color01);
}
.box-info .txt{
    color: #5E5E5E;
}
.box-info .txt:last-child {
    margin: 0;
}
.box-info li {
    background-position: 5px 11px
}
@media(min-width: 992px) {
    .box-info {
        padding: 30px 30px 30px 175px;
        border-radius: 20px;
    }
    .box-info::after {
        width: 100px;
        height: 100px;
        left: 40px;
        top: -20px;
        border-radius: 15px;
    }
    .box-info .tit {
        margin-bottom: 15px;
        font-size: 24px;
    }
    .box-info .txt{
        font-size: 18px;
    }
}
@media(min-width: 1200px){
    .box-info{
        margin: 40px 0;
       padding: 35px 35px 35px 230px;
    }
    .box-info::after {
        width: 130px;
        height: 130px;
        left: 60px;
        top: -25px;
        background-size: auto;
    }
}

/* step-list */
/* basic */
.step-con .step-item {
    word-break: keep-all;
    margin: 15px 0;
    border-top: 2px solid var(--main-color01);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    padding: 20px 25px;
    gap: 10px 5%;
  }
  .step-con .step-item .step-tit {
    font-family: var(--font-type01);
    font-weight: bold;
    flex: 0 1 100%;
    display: flex;
    align-items: center;
    gap: 5px;
  }
  .step-con .step-item .step-tit p {
    font-size: 20px;
    margin-bottom: 0;
  }
  .step-con .step-item .step-info {
    flex: 0 1 100%;
  }
  .step-con .step-item .step-info ul {
    margin-bottom: 0;
  }
  .step-con .step-item .step-info ul li:last-child {
    margin-bottom: 0;
  }
  .step-con .step-arrow img {
    max-width: 50%;
  }
  /* list-row */
  .step-con.row .step-item .step-tit {
    flex-direction: column;
    flex: 0 0 100%;
    line-height: 1.2;
  }
  .step-con.row .step-item .step-tit > p {
    margin: 10px 0;
    text-align: center;
  }
  .step-con.row .step-item .step-info {
    flex: 0 0 100%;
    height: 100%;
  }
  .step-con.row .step-item {
    position: relative;
    margin: 0;
    gap: 0;
    height: 100%;
  }
  .step-con.row > [class*="col-"] {
    margin-bottom: 30px;
  }
  .step-con.row .step-item:after {
    content: '\F27E';
    display: inline-block;
    width: 30px;
    height: 30px;
    position: absolute;
    top: -45px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    color: #fff;
    font-family: var(--font-icon);
    text-align: center;
    border-radius: 50%;
    background-color: #c5c5c5;
    line-height: 35px;
  }
  .step-con.row > [class*="col-"]:first-child .step-item:after {
    display: none;
  }
  @media(min-width: 992px) {
    .step-con .step-item {
      padding: 25px 30px;
      margin: 25px 0;
    }
    .step-con .step-item .step-tit {
      flex: 0 1 20%;
      flex-direction: column;
      align-items: flex-start;
    }
    .step-con .step-item .step-tit p {
      font-size: 24px;
    }
    .step-con .step-item .step-info {
      flex: 0 1 70%;
    }
    .step-con .step-arrow img {
      max-width: 100%;
    }
    .step-con.row .step-item:after {
      top: 50%;
      left: auto;
      right: -30px;
      transform: translateY(-50%) rotate(-90deg);
    }
    .step-con.row > [class*="col-"]:first-child .step-item:after {
      display: block;
    }
    .step-con.row > [class*="col-"]:last-child .step-item:after {
      display: none;
    }
    .step-con.row .step-item .step-tit {
      align-items: center
    }
  }
  @media(min-width: 1200px) {
    .step-con .step-item {
      padding: 30px 40px;
    }
    .step-con .step-item .step-tit {
      flex: 0 1 20%;
    }
    .step-con .step-item .step-tit.no-info {
      flex: 0 1 50%
    }
    .step-con .step-item .step-info {
      flex: 0 1 70%;
    }
    .step-con.row .step-item {
      padding: 30px 25px;
    }
  }

/* table */
table {
	border-collapse: collapse;
}
caption {
	font-size: 0;
	width: 0;
	height: 0;
	line-height: 0;
	margin: 0;
	padding: 0;
	background: none;
	overflow: hidden;
}
th {
	text-align: inherit;
}
.table {
	width: 100%;
	margin-bottom: 1rem;
	background-color: transparent;
}
.table th, .table td {
	/*
	padding: 0.75rem;
	*/
	vertical-align: middle;
	border-bottom: 1px solid #dee2e6;
	border-left: 1px solid #dee2e6;
}
.table thead th {
	vertical-align: middle;
	background-color: #f2f4f6;
	text-align: center;
}
.table tbody + tbody {
	border-top: 2px solid #dee2e6;
}
.table tbody th {
	background-color: #f2f4f6;
	border-top: 1px solid var(--main-color01);
}
.table tbody td {
	border-top: 1px solid var(--main-color01);
}

.table thead + tbody th, .table thead + tbody td {
	/* background-color:#f9f9f9; */
	text-align:center;
	border-top:1px solid #dee2e6;
}
.table .table {
	background-color: #fff;
}
.table tfoot tr th {
    background-color: #e9ebee;
}
.table tfoot tr td {
    background-color: #f2f4f6;
}
.table-sm th, .table-sm td {
	padding: 0.3rem;
}
[class*='table-responsive'] th, [class*='table-responsive'] td {
    word-break: keep-all;
}
.table:not(.table-board) {
	/*
    border-top: 0;
    */
    text-align: center;
    word-break: keep-all;
    border-top: 1px solid var(--main-color01);
}
.table:not(.table-board) th, .table:not(.table-board) td {
    padding: 16px;
}
.table:not(.table-board) thead th {
    font-family: var(--font-type01);
    padding-top: 20px;
    border-top: 0;
    border-bottom:1px solid #ccc    
}

/* table-line */
.table-line > thead > tr > th {
	border-left: 1px solid #ccc;
}
.table-line tr td {
	border-left: 1px solid #dee2e6;
}
.table-line>thead>tr>th:first-child,
.table-line>tbody>tr>th:first-child,
.table-line>tbody>tr>td:first-child {
	border-left: none;
	/* dukim 주석
	border-left: 1px solid #dee2e6;
	*/
}

/* table-bordered */
.table-bordered {
	border: 1px solid #dee2e6;
}
.table-bordered th, .table-bordered td {
	border: 1px solid #dee2e6;
}
.table-borderless th, .table-borderless td, .table-borderless thead th, .table-borderless tbody + tbody {
	border: 0;
}

/* table-etc */
.table-striped tbody tr:nth-of-type(odd) {
	background-color: rgba(0, 0, 0, 0.05);
}
.table-hover tbody tr:hover, .table-hover tbody tr:focus {
	background-color: rgba(0, 0, 0, 0.03);
}
.table-hover tbody tr:hover th, .table-hover tbody tr:focus th {
	background-color:transparent;
}
.table-primary, .table-primary > th, .table-primary > td {
	background-color: #eaf4ff;
}
.table-hover .table-primary:hover, .table-hover .table-primary:focus {
	background-color: #9fcdff;
}
.table-hover .table-primary:hover > td, .table-hover .table-primary:hover > th, .table-hover .table-primary:focus > td, .table-hover .table-primary:focus > th {
	background-color: #9fcdff;
}
.table-secondary, .table-secondary > th, .table-secondary > td {
	background-color: #e7e7e7;
}
.table-hover .table-secondary:hover, .table-hover .table-secondary:focus {
	background-color: #c8cbcf;
}
.table-hover .table-secondary:hover > td, .table-hover .table-secondary:hover > th, .table-hover .table-secondary:focus > td, .table-hover .table-secondary:focus > th {
	background-color: #c8cbcf;
}
.table-success, .table-success > th, .table-success > td {
	background-color: #e2f6e6;
}
.table-hover .table-success:hover, .table-hover .table-success:focus {
	background-color: #b1dfbb;
}
.table-hover .table-success:hover > td, .table-hover .table-success:hover > th, .table-hover .table-success:focus > td, .table-hover .table-success:focus > th {
	background-color: #b1dfbb;
}
.table-info, .table-info > th, .table-info > td {
	background-color: #bee5eb;
}
.table-hover .table-info:hover, .table-hover .table-info:focus {
	background-color: #abdde5;
}
.table-hover .table-info:hover > td, .table-hover .table-info:hover > th, .table-hover .table-info:focus > td, .table-hover .table-info:focus > th {
	background-color: #abdde5;
}
.table-warning, .table-warning > th, .table-warning > td {
	background-color: #fff6dc;
}
.table-hover .table-warning:hover, .table-hover .table-warning:focus {
	background-color: #ffe8a1;
}
.table-hover .table-warning:hover > td, .table-hover .table-warning:hover > th, .table-hover .table-warning:focus > td, .table-hover .table-warning:focus > th {
	background-color: #ffe8a1;
}
.table-danger, .table-danger > th, .table-danger > td {
	background-color: #ffe0e4;
}
.table-hover .table-danger:hover, .table-hover .table-danger:focus {
	background-color: #f1b0b7;
}
.table-hover .table-danger:hover > td, .table-hover .table-danger:hover > th, .table-hover .table-danger:focus > td, .table-hover .table-danger:focus > th {
	background-color: #f1b0b7;
}
.table-light, .table-light > th, .table-light > td {
	background-color: #fdfdfe;
}
.table-hover .table-light:hover, .table-hover .table-light:focus {
	background-color: #ececf6;
}
.table-hover .table-light:hover > td, .table-hover .table-light:hover > th, .table-hover .table-light:focus > td, .table-hover .table-light:focus > th {
	background-color: #ececf6;
}
.table-dark, .table-dark > th, .table-dark > td {
	background-color: #949494;
}
.table-dark > th{
    color: #222;
}
.table-hover .table-dark:hover, .table-hover .table-dark:focus {
	background-color: #b9bbbe;
}
.table-hover .table-dark:hover > td, .table-hover .table-dark:hover > th, .table-hover .table-dark:focus > td, .table-hover .table-dark:focus > th {
	background-color: #b9bbbe;
}
.table-active, .table-active > th, .table-active > td {
	background-color: rgba(0, 0, 0, 0.075);
}
.table-hover .table-active:hover, .table-hover .table-active:focus {
	background-color: rgba(0, 0, 0, 0.075);
}
.table-hover .table-active:hover > td, .table-hover .table-active:hover > th, .table-hover .table-active:focus > td, .table-hover .table-active:focus > th {
	background-color: rgba(0, 0, 0, 0.075);
}
.table .thead-dark th {
	color: #fff;
	background-color: #212529;
	border-color: #32383e;
}
.table .thead-light th {
	color: #495057;
	background-color: #e9ecef;
	border-color: #dee2e6;
}
.table-dark {
	color: #fff;
	background-color: #212529;
}
.table-dark th, .table-dark td, .table-dark thead th {
	border-color: #32383e;
}
.table-dark.table-bordered {
	border: 0;
}
.table-dark.table-striped tbody tr:nth-of-type(odd) {
	background-color: rgba(255, 255, 255, 0.05);
}
.table-dark.table-hover tbody tr:hover, .table-dark.table-hover tbody tr:focus {
	background-color: rgba(255, 255, 255, 0.075);
}
.table-board tbody tr:has(div.non-page){
    padding:0;
}
.table-board tbody td:has(>div.non-page){
    width: 100%;
    margin: 0;
    padding: 0;
}
.table-type01>thead>tr>th:first-child,
.table-type01>tbody>tr>th:first-child,
.table-type01>tbody>tr>td:first-child {
	border-left: none;
}

/* table-responsive */
.table-responsive {
	-ms-overflow-style: -ms-autohiding-scrollbar;
}
.table-mw-1000 .table {min-width: 1000px;}
.table-mw-1100 .table {min-width: 1100px;}
.table-mw-1200 .table {min-width: 1200px;}
.table-mw-1300 .table {min-width: 1300px;}
.table-mw-1400 .table {min-width: 1400px;}

th[rowspan],
th[colspan],
td[rowspan],
td[colspan] {
	border-right: 1px solid #dee2e6;
}
 
    th[rowspan]:last-child,
	th[colspan]:last-child,
	td[rowspan]:last-child,
	td[colspan]:last-child {
		border-right: 0;
	}
.table-bordered th[rowspan],
.table-bordered th[colspan],
.table-bordered td[rowspan],
.table-bordered td[colspan] {
	border-right: 1px solid #dee2e6;
}

@media (max-width: 575px) {
    .table-responsive-sm {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
    .table-responsive-sm > .table-bordered {
        border: 0;
    }
}
@media (max-width: 767px) {
    .table-responsive-md {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
    .table-responsive-md > .table-bordered {
        border: 0;
    }
	/* flip-scroll */
	#flip-scroll {
		position: relative
	}
    #flip-scroll .flip-guide {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 260px;
        margin-left: -130px;
        margin-top: -20px;
        padding: 10px;
        border-radius: 3px;
        background: rgb(14, 84, 193, 0.8);
        color: #fff;
        line-height: 1.3;
        text-align: center;
        z-index: 10;
    }
    #flip-scroll:hover .flip-guide, #flip-scroll:focus .flip-guide {
        display: none
    }
    #flip-scroll .flip-guide > p {
        margin-bottom: 0
    }
    #flip-scroll .flip-guide > p > img {
        padding: 0 10px;
    }
    #flip-scroll td .badge-light {
        background: #ddd
    }
    #flip-scroll .cf:after {
        visibility: hidden;
        display: block;
        font-size: 0;
        content: " ";
        clear: both;
        height: 0;
    }
    #flip-scroll * html .cf {
        zoom: 1;
    }
    #flip-scroll *:first-child + html .cf {
        zoom: 1;
    }
    #flip-scroll table {
        width: 100%;
        border-collapse: collapse;
        border-spacing: 0;
    }
    #flip-scroll th,
    #flip-scroll td {
        margin: 0;
        padding: 0.5rem;
        vertical-align: top;
        border-top: none;
    }
    #flip-scroll th {
        text-align: left;
    }
    #flip-scroll table {
        display: block;
        position: relative;
        width: 100%;
    }
    #flip-scroll thead {
        display: block;
        float: left;
    }
    #flip-scroll tbody {
        display: block;
        width: auto;
        position: relative;
        overflow-x: auto;
        white-space: nowrap;
    }
    #flip-scroll thead tr {
        display: block;
    }
    #flip-scroll th {
        display: block;
        text-align: right;
    }
    #flip-scroll tbody tr {
        display: inline-block;
        vertical-align: top;
        min-width: 33.3%;
    }
    #flip-scroll td {
        display: block;
        min-height: 1.25rem;
        text-align: left;
    }
    #flip-scroll td .btn {
        margin: 0;
        padding: 0;
        border: none;
        font-size: 15px;
        line-height: 1;
    }

    /* sort out borders */
    #flip-scroll th {
        border-bottom: 0;
        border-left: 0;
    }
    #flip-scroll td {
        border-left: 0;
        border-right: 0;
        border-bottom: 0;
    }
    #flip-scroll tbody tr {
        border-left: 1px solid #babcbf;
    }
    #flip-scroll th:last-child,
    #flip-scroll td:last-child {
        border-bottom: 1px solid #babcbf;
    }

}
@media (max-width: 991px) {
    .table-responsive-lg {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
    .table-responsive-lg > .table-bordered {
        border: 0;
    }
}
@media (max-width: 1199px) {
    .table-responsive-xl {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
    .table-responsive-xl > .table-bordered {
        border: 0;
    }
}

/* board searh box */
.board-search{
    background-color: #f9f9f9;
    padding: 15px 20px;
    border-radius: 5px;
}
.board-search > .row{
    width: 100%;
    margin: 0 auto;
}
.board-search .board-search-con{
    padding:0;
    gap: 7px 0;
}
.board-search .form-text{
    font-family: var(--font-type01);
    text-align: center;
}
.board-search .form-text::before{
    display: inline-block;
    content: '\F3D7';
    font-family: var(--font-icon);
    margin-right: 7px;
    vertical-align: middle;
}

.board-search .board-watch{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0;
    background-color: #fff;
    margin-bottom: 7px;
}
.board-search .board-watch select{
    border: 0;
    background-color: transparent;
}
.board-search .board-watch select::after{
    display: inline-block;
    content: '';
    width: 1px;
    height: 10px;
    background-color: #ccc;
    margin-right: 0 10px;
    vertical-align: middle;
}
.board-search .board-watch button{
    width: 140px;
    background-color: transparent;
    height: 36px;
}
.board-search .board-watch button:hover,
.board-search .board-watch button:focus{
    background-color: var(--main-color01);
}

.board-search .board-search-box{
    border-radius: 5px;
    justify-content: center;
    padding:0;
    gap: 7px;
}
.board-search .board-search-box li{
    padding:0;
    position: relative;
}

.board-search .board-search-box select{
    border: 0;
}
.board-search .board-search-box input{
    border: 0;
}
.board-search .board-search-box input::placeholder{
    color: #949494;
}
.board-search .board-search-box .btn-search{
    border: 0;
    width: 100%;
    background-color: var(--main-color01);
    transition: .3s;
    text-align: center;
}
.board-search .board-search-box .btn-search::after{
    display: inline-block;
    content: '\F52A';
    font-family: var(--font-icon);
    color: #fff;
    font-weight: bold;
    transition: .3s;
    vertical-align: middle;
}
.board-search .board-search-box .btn-search:hover,
.board-search .board-search-box .btn-search:focus{
    background-color: var(--main-color01-hover);
}

@media (min-width: 768px){
    .board-search{
        padding:20px 25px;
    }
    .board-search .form-text{
        margin-bottom: 0;
    }
    .board-search .board-watch{
        background-color: transparent;
    }
    .board-search .board-watch::before{
        display: inline-block;
        content: '';
        width: 1px;
        height: 15px;
        background-color: #c7c7c7;
        vertical-align: middle;
        margin: 0 5px;
    }
    .board-search .board-search-box{
        background-color: #fff;
        gap: 0;
    }
    .board-search .board-search-box li:first-child{
        padding-right: 20px;
    }
    .board-search .board-search-box li:first-child:after{
        display: inline-block;
        content: '';
        width: 1px;
        height: 15px;
        background-color: #ccc;
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
    }
    .board-search .board-search-box .btn-search{
        background-color: transparent;
    }
    .board-search .board-search-box .btn-search:hover,
    .board-search .board-search-box .btn-search:focus{
        background-color: var(--main-color01);
    }
    .board-search .board-search-box .btn-search::after{
        color: var(--main-color01);
    }
    .board-search .board-search-box .btn-search:hover::after,
    .board-search .board-search-box .btn-search:focus::after{
        color: #fff;
    }
}
@media (min-width: 1200px){
    .board-search > .row{
        margin: 0 -15px;
    }
    .board-search .board-search-con{
        padding:0 15px
    }
    .board-search .board-watch{
        width: 180px;
        margin-bottom: 0;
    }
}

/* board list */
.table-board {
    text-align: left;
    border-top: 1px solid var(--main-color01);
}
.table-board colgroup{
    display: none;
}
.table-board thead{
    display: none;
}
.table-board thead th {
    background-color: transparent;
    border-bottom: 1px solid var(--main-color01);
	border-top: 1px solid var(--main-color01);
	color: var(--main-color01);
    position: relative;
    border-left: none;
}
.table-board thead th:not(:first-child)::before{
    display: block;
    content: '';
    width: 1px;
    height: 15px;
    background-color: #ccc;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.table-board tbody th, .table-board tbody td{
    display: inline-block;
    border: 0;
    padding:0;
    position: relative;
}
.table-board tr{
    display: block;
    padding:10px 0 10px 50px;
    position: relative;
    border-bottom: 1px dotted #dfdfdf;
}
.table-board tbody th {
	background-color:transparent;
    font-weight: 300;
	color: #949494;
    position: absolute;
    left: 0;
    top: 10px;
    width: 50px;
    text-align: center;
}
.table-board tbody .notice{
    margin-top: 0;
    background-color: #f9f9f9;
}
.table-board tbody .notice .notice-icon{
    font-size: 0;
    color: transparent;
}
.notice .notice-icon::after{
    display: inline-block;
    content: '\F189';
    font-family: var(--font-icon);
    color: var(--main-color02);
    font-size: 18px;
}
.table-board tbody td{
    padding-right: 10px;
    margin-right: 10px;
}
.table-board tbody td:after{
    display: inline-block;
    content: '';
    width: 1px;
    height: 15px;
    background-color: #c1c1c1;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.table-board tbody .subject::after, .table-board tbody td:last-of-type::after{
    display: none;
}
.table-board .subject{
    text-align: left;
    width: auto;
    display: block;
}
@media(min-width: 768px){
    .table-board {
        text-align: center;
    }
    .table-board colgroup{
        display: table-column-group;
    }
    .table-board thead{
        display: table-header-group;
    }
    .table-board tr{
        padding: 0;
        display: table-row;
    }
    .table-board tbody th{
        position: static;
    }
    .table-board tbody th, .table-board tbody td, .table-board tbody td.subject{
        display: table-cell;
        padding: 0.95rem 0.75rem;
    }
    .table-board tbody td:after{
        display:none;
    }
}

/* Gallery */
.board-gallery > div {
	position: relative;
}
.board-gallery > div .checkbox {
    text-align: right;
    width: 100%;
}
.board-gallery a {
	display: block;
}
.board-gallery a .thum {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 60%;
	overflow: hidden;
	background: #d5d7dc url('/core/images/thumb-non.jpg') no-repeat center;
	background-size: 100%;
	transition: all 0.5s;
}
.board-gallery a .thum > img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: all .4s ease-in-out;
	object-fit: cover;
}
.board-gallery a:hover .thum, .board-gallery a:focus .thum{
	background-size: 110%;
}
.board-gallery a:hover .thum > img, .board-gallery a:focus .thum > img {
	transform: scale(1.1);
}
.board-gallery a .txt-box {
	position: relative;
	padding: 1.4rem 0 0;
	background-color: #fff;
    display: flex;
    flex-direction: column;
    gap: 1rem 0;
}
.board-gallery a .txt-box ul{
    font-size: 0.9rem;
}
.board-gallery a .txt-box .category{
    color: var(--main-color02);
}
.board-gallery a .txt-box .tit {
	font-size: 1.2rem;
	color: #333;
	display: block;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	text-overflow: ellipsis;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
    line-height: 1.2;
	transition: 0.5s;
    font-family: var(--font-type01);
    font-weight: normal;
}
.board-gallery a:hover, .board-gallery a:focus{
    text-decoration: none;
}
.board-gallery a:hover .txt-box .tit, .board-gallery a:focus .txt-box .tit {
    text-decoration: underline;
    color: var(--point-color01);
}
.board-gallery a .txt-box .date {
	font-size: 0.95rem;
	color: #888;
}
/* 분류+제목만 표시(날짜제거) 적용 스타일 */
.board-gallery.type01 a .txt-box.txt-box-sm {
	height: 120px;
	min-height: auto;
}
.board-gallery.type01 a .txt-box .tit {
	margin: 0;
	height: 2.8em;
}
.board-gallery.type01 a .txt-box .date {
	display: none;
}
.board-gallery.type01 a .txt-box .category {
	padding-right: 1rem;
}
.board-gallery.type01 > div .checkbox {
	top: 1.2rem;
	right: 1.3rem;
	height: 1rem;
}

/* Webzine */
.board-webzine {
    margin-bottom: 3rem;
}
.board-webzine .webzine-item {
    position: relative;
    margin-bottom: 2rem;
}
.board-webzine .webzine-item .checkbox {
    position: absolute;
    right: 0.8rem;
    bottom: 0;
}
.board-webzine .webzine-item a {
    display: block;
}
.board-webzine .webzine-item a:hover,
.board-webzine .webzine-item a:focus{
    text-decoration: none;
    color: inherit;
}
.board-webzine .webzine-item a .thum {
    position: relative;
    display: inline-block;
    overflow: hidden;
    background: #EAEAEA url('/core/images/thumb-non.jpg') no-repeat 50% 50%;
    background-size: 100%;
    transition: all 0.5s;
    width: 100%;
    height: 210px;
}
.board-webzine .webzine-item a:hover .thum,
.board-webzine .webzine-item a:focus .thum{
    background-size: 110%;
}
.board-webzine .webzine-item a .thum > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all .4s ease-in-out;
    object-fit: cover;
}
.board-webzine .webzine-item a:hover .thum > img,
.board-webzine .webzine-item a:focus .thum > img {
    transform: scale(1.1);
}
.board-webzine .webzine-item a .txt-con{
    margin-top: 5px;
}
.board-webzine .webzine-item a .txt-con .category{
    transition: 0.3s;
}
.board-webzine .webzine-item a:hover .txt-con .category,
.board-webzine .webzine-item a:focus .txt-con .category{
    background-color: var(--secondary);
    color: #fff;
}
.board-webzine .webzine-item a .txt-con .tit{
    font-family: var(--font-type01);
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.2;
    margin-top: 1rem;
    width: 100%;
    display: -webkit-box;
    word-wrap: break-word;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    overflow: hidden;
    transition: .3s;
}
.board-webzine .webzine-item a:hover .txt-con .tit,
.board-webzine .webzine-item a:focus .txt-con .tit{
    color: var(--point-color01);
}
.board-webzine .webzine-item a .txt-con .txt{
    width: 100%;
    display: -webkit-box;
    word-wrap: break-word;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    overflow: hidden;
}

@media(min-width: 992px){
    .board-webzine .webzine-item{
        margin-bottom:3rem;
    }
    .board-webzine .webzine-item a{
        display: flex;
        justify-content: space-between;
        height: 250px;
    }
    .board-webzine .webzine-item a .thum{
        width: 30%;
        height: 100%;
    }
    .board-webzine .webzine-item a .txt-con{
        margin-top: 0;
        width: 67%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }
    .board-webzine .webzine-item a .txt-con .tit{
        font-size: 1.625rem;
        -webkit-line-clamp: 2;
    }
    .board-webzine .webzine-item a .txt-con .txt{
        -webkit-line-clamp: 3;
    }
}

/* pagination */
.pagination {
    flex-wrap: wrap;
	justify-content: center;
    align-items: center;
}
.pagination .page-item {
	display: none;
}
.pagination .page-item.first, .pagination .page-item.last, .pagination .page-item.prev, .pagination .page-item.next {
	display: block;
}
.pagination .page-item.first .page-link::after,
.pagination .page-item.last .page-link::after,
.pagination .page-item.prev .page-link::after,
.pagination .page-item.next .page-link::after{
    display: inline-block;
    content: '';
    font-family: var(--font-icon);
    font-size: 20px;
    color: #949494;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border: 1px solid #ccc;
    border-radius: 5px;
    text-align: center;
    margin: 0 3px;
}
.pagination .page-item.first .page-link::after{
    content: '\F27F';
}
.pagination .page-item.last .page-link::after{
    content: '\F280';
}
.pagination .page-item.prev .page-link::after{
    content: '\F284';
}
.pagination .page-item.next .page-link::after{
    content: '\F285';
}
.pagination .page-item .page-link {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    border: 0;
    line-height: inherit;
    padding: 0;
    color: #767676;
    transition: all 0.3s ease-out;
    font-weight: 500;
}
.pagination .page-item .page-link:hover,
.pagination .page-item .page-link:focus {
    background-color: #f0f0f0;
    color: var(--main-color01);
    border-radius: 50%;
}
.pagination .page-item.active .page-link {
    background-color: var(--main-color01);
    border-color: var(--main-color01);
    color: #fff;
    border-radius: 50%;
}
.pagination-sm .page-item.prev .page-link, .pagination-sm .page-item.next .page-link,
.pagination-sm .page-item.first .page-link, .pagination-sm .page-item.last .page-link {
    padding: 0;
}
@media(min-width: 576px) {
    .pagination {
        gap: 4px;
    }
	.pagination .page-item.page-info {
		display: none !important;
	}
}
@media(min-width: 768px) {
    .pagination {
        gap: 5px;
    }
    .pagination .page-item .page-link {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }
    .pagination .page-item.first .page-link::after,
    .pagination .page-item.last .page-link::after,
    .pagination .page-item.prev .page-link::after,
    .pagination .page-item.next .page-link::after{
        border:0;
    }
	.pagination .page-item.first, .pagination .page-item.last {
		display: none;
	}
	.pagination .page-item.prev .page-link, .pagination .page-item.next .page-link{
		border: 0;
	}
	.pagination .page-item {
		display: flex;
		align-items: center;
	}
}

/* board - view */
.board-view {
    border-bottom: 1px solid var(--main-color01);
}
.board-view .board-view-title {
	word-break: break-all;
    border-top: 2px solid var(--main-color01);
    border-bottom: 1px dotted #ccc;
}
.board-view .board-view-title h4 {
    color: var(--main-color01);
	font-size: 1.6rem;
	line-height: 1.3;
    font-family: var(--font-type01);
    font-weight: bold;
    text-align: center;
    padding: 1.5rem;
    margin-bottom: 0;
}
.board-view .board-info {
	margin-bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem 0;
    gap: 0 1.8rem;
    font-size: 0.9rem;
    border-top: 1px dotted #ccc;
}
.board-view .board-info li {
	position: relative;
	color: #767676;
    padding-left: 20px;
}
.board-view .board-info li::before{
    display: inline-block;
    content: '';
    font-family: var(--font-icon);
    font-size: inherit;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.board-view .board-info li.board-writer::before{
    content: '\F4CB';
}
.board-view .board-info li.board-date::before{
    content: '\F1E2';
}
.board-view .board-info li.board-watch::before{
    content: '\F341';
}
.board-view .board-info li:after {
    content: '';
    display: inline-block;
    position: absolute;
    left: -0.9rem;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 15px;
    background-color: #d2d3d6;
}
.board-view .board-info li:first-child:after {
    display: none;
}
.board-view .board-view-files {
	position: relative;
	padding: 1rem 1.2rem;
    background-color: #f7f7f7;
}
.board-view .board-view-files h5 {
	color: #666;
	font-size: 1rem;
	margin-top: 0;
}
.board-view .board-view-files {
	margin-bottom: 0;
}
.board-view .board-view-files li {
	position: relative;
	padding-left: 2.3rem;
    margin-bottom: 3px;
}
.board-view .board-view-files li:last-child{
    margin-bottom: 0;
}
.board-view .board-view-files li a:after {
	position: absolute;
	top: 0;
	left: 0.5rem;
	content: '\F29B';
	font-family: 'bootstrap-icons';
	display: inline-block;
	vertical-align: middle;
	font-size: 1.1rem;
	color: #999;
    transition: .3s;
}
.board-view .board-view-files li a:hover,
.board-view .board-view-files li a:focus {
	text-decoration: none;
}
.board-view .board-view-files li a:hover:after,
.board-view .board-view-files li a:focus:after{
    animation: popAni .5s linear;
    color: var(--point-color01);
}
.board-view .board-view-cont {
	padding: 2.5rem 0.5rem;
}
.board-view .board-view-cont img {
	max-width: 100%;
}
.board-view-file-list {
    position: relative;
    padding: 1rem 1.2rem;
    background-color: #f7f7f7;
}

.board-view-file-list li {
    margin-bottom: 5px;
}

.board-view-file-list li:last-child {
    margin-bottom: 0;
}
.board-view .video-wrapper {
	width: 100%;
	text-align: center;
	background-color: #000;
}
.board-view .video-wrapper iframe {
	width: 345px;
	height: 194px;
	max-width: 100%;
}
#accordion .btn-link:not(.collapsed) .bi.bi-caret-down-fill::before {
	transform:rotate(180deg)
}
#accordion .btn-link:before, #accordion .btn-down:before, #accordion .btn-mail:before {display: none;}

.pager {
	margin-bottom: 2rem;
	border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.pager li:not(:last-child){
    border-bottom: 1px dotted #ccc;
}
.pager a{
    padding: 0.9rem 0;
    display: flex;
}
.pager .pager-navi {
	font-weight: 600;
	color: var(--main-color01);
    padding-left: 25px;
    position: relative;
}
.pager .pager-navi::before{
    display: inline-block;
    content: '\F235';
    font-family: var(--font-icon);
    position: absolute;
    left: 0;
    top: 0;
}
.pager .next .pager-navi::before{
    content: '\F229';
}
.pager .pager-title {
	display: inline-block;
	padding: 0 1rem;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 50%;
}
.card .btn-link{
	color: var(--main-color01);
}

.board-comment {
	margin-bottom: 1.5rem;
}
.board-comment h3 {
	background: none;
	padding: 0 0 0.6rem 0;
	font-size: 1.5rem;
	color: #555;
	margin-bottom: 0;
	border-bottom: 1px solid #777;
}
.board-comment h3 .badge {
	font-size: 0.8rem;
}
.board-comment .messages {
	border-top: 1px dotted #bfbfbf;
	padding-top: 1.5rem;
}
.board-comment .messages:first-child {
	border-top: none;
	padding-top: 0;
}
.board-comment .messages > .messages {
	position: relative;
	border-top: 1px dotted #bfbfbf;
	border-bottom: none;
	padding-left: 2.7rem;
}
.board-comment .messages > .messages:after {
	content: '';
	position: absolute;
	left: 1.3rem;
	top: 1.5rem;
	width: 0.65rem;
	height: 0.7rem;
	border-left: 1px solid #b1b1b1;
	border-bottom: 1px solid #b1b1b1;
}
.board-comment .messages .heading {
	font-weight: 600;
	margin-bottom: 0.6rem;
}
.board-comment .messages .heading .date {
	font-weight: 100;
	color: #888;
	margin-left: 0.2rem;
	font-size: 0.8rem;
}
.board-comment .messages .heading .comment-btn {
	float: right;
}
.board-comment .messages .heading .comment-btn .btn {
	padding: 0 0.1rem;
	background-color: transparent;
	color: #888;
	font-size: 1.1rem;
	transition: .3s;
}
.board-comment .messages .heading .comment-btn .btn:hover, .board-comment .messages .heading .comment-btn .btn:focus{
	color: var(--danger);
}
.board-comment .messages .comment {
	margin-bottom: 1.5rem;
}
.board-bottom {
	padding: 2.5rem 0;
}

@media (min-width: 768px) {
    .board-gallery a .txt-box .tit{
        height: 2.5rem;
    }
    .board-view .board-info{
        gap: 0 2.6rem;
        font-size: 1rem;
    }
    .board-view .board-info li{
        padding-left: 25px;
    }
    .board-view .board-info li:after{
        left: -1.3rem;
    }
	.board-view .video-wrapper iframe {
		width: 100%;
		height: 287px;
		max-height: none;
	}
}

/* board write */
input[type='file'] {
	padding: 0.175rem 0.25rem;
}
pre {
	display: block;
	font-size: 87.5%;
	color: #212529;
	background-color: #fff;
	border: 1px solid #ced4da;
	border-radius: 0.25rem;
}
.pre {
	display: block;
	color: #212529;
	background-color: #fff;
	border: 1px solid #ced4da;
	border-radius: 0.25rem;
	max-height: 200px;
  overflow: hidden;
  overflow-y: scroll;
  padding: 1rem;
}
pre code {
	font-size: inherit;
	color: inherit;
	word-break: normal;
}
.pre-scrollable {
	max-height: 200px;
	overflow: hidden;
	overflow-y: scroll;
	padding: 1rem;
	white-space: pre-line;
}
.form-inline .input-group{
	width: auto;
}
.form-inline .form-check {
	width: 100%;
}
.input-group-btn button:first-of-type{
	border-radius: 0 .25rem .25rem 0;
}
@media (min-width: 576px){
	.form-inline .form-control{
		width: 45%;
	}
}

@media (min-width: 998px){
	.form-inline label {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-align: center;
		align-items: center;
		-ms-flex-pack: center;
		justify-content: center;
		margin-bottom: 0;
	}
	.form-inline .form-group {
		display: -ms-flexbox;
		display: flex;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		-ms-flex-flow: row wrap;
		flex-flow: row wrap;
		-ms-flex-align: center;
		align-items: center;
		margin-bottom: 0;
	}
	.form-inline .form-control {
		width: 45%;
	}
	.form-inline .form-control-plaintext {
		display: inline-block;
	}
	.form-inline .input-group,  .form-inline .custom-select {
		width: auto;
	}
	.form-inline .form-check {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-align: center;
		align-items: center;
		-ms-flex-pack: center;
		justify-content: center;
		width: auto;
		padding-left: 0;
	}
	.form-inline .form-check-input {
		position: relative;
		margin-top: 0;
		margin-right: 0.25rem;
		margin-left: 0;
	}
	.form-inline .custom-control {
		-ms-flex-align: center;
		align-items: center;

		-ms-flex-pack: center;
		justify-content: center;
	}
	.form-inline .custom-control-label {
		margin-bottom: 0;
	}
}

/* calendar */
.calendar-con .calendar-list{
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 5px 20px;
}
.calendar-con .calendar-list span{
    padding-left: 13px;
    position: relative;
    display: inline-block;
    line-height: 1.4;
    font-size: 14px;
}
.calendar-con .calendar-list a:hover span,
.calendar-con .calendar-list a:focus span{
    text-decoration: underline;
}
.calendar-con .calendar-list span::before{
    display: block;
    content: '';
    width: 7px;
    height: 7px;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 6px;
    background-color: var(--main-color01);
}
.calendar-con .calendar-list .blue span::before{
    background-color: #5e6cdf;
}
.calendar-con .calendar-list .green span::before{
    background-color: #2695a1;
}
.calendar-con .calendar-list .red span::before{
    background-color: #f3627c;
}
.calendar-con .calendar-list .purple span::before{
    background-color: #9e55eb;
}

.calendar-head{
    display: block;
    background-color: #f9f9f9;
}
.calendar-head .calendar-years{
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--main-color01);
    padding: 5px 20px;
    width: 100%;
}
.calendar-head .calendar-year{
    font-size: 18px;
    font-family: var(--font-type01);
    font-weight: bold;
    margin-bottom: 0;
    margin-right: 10px;
    color: #fff;
}
.calendar-head .calendar-pager button{
    border: 0;
    background-color: transparent;
    color: #fff;
}
.calendar-head .calendar-month{
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    padding: 7px 15px;
}
.calendar-head .calendar-month button{
    border: 0;
    background-color: transparent;
    border-radius: 50px;
    padding: 0 7px;
    border: 2px solid transparent;
    transition: .3s;
}
.calendar-head .calendar-month .active button{
    font-weight: bold;
    background-color: var(--main-color02);
    color: #fff;
}
.calendar-head .calendar-month button:hover,
.calendar-head .calendar-month button:focus{
    background-color: transparent;
    border-color: var(--main-color02);
    color: var(--main-color02);
}

.calendar-body {
    margin-top: 10px;
}
.calendar-body .calendar{
    width: 100%;
    table-layout: fixed;
    margin-top: 5px;
}
.calendar-body .calendar thead{
    border-top: 2px solid var(--main-color01);
    border-bottom: 1px solid var(--main-color01);
}
.calendar-body .calendar thead th{
    padding: 5px 0;
    text-align: center;
    font-weight: normal;
}
.calendar-body .calendar thead .sun{
    color: #ff5555
}
.calendar-body .calendar thead .sat{
    color:#136CE5
}
.calendar-body .calendar td{
    padding: 7px 0;
    border-bottom: 1px solid #ccc;
    vertical-align: top;
}
.calendar-body .calendar .calendar-box{
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.calendar-body .calendar .day{
    position: relative;
    /*
    text-align: center;
    */
    color: #888;
    font-family: var(--font-type01);
    display: inline-block;
    margin-bottom: 7px;
    text-align: center;
}
.calendar-body .calendar-box:has(.calendar-list) .day{
    color: inherit;
}
.calendar-body .calendar .calendar-list{
    display: none;
}
.calendar-body .calendar td:has(.calendar-list) .day::after{
    position: absolute;
    display: block;
    content: '';
    width: 5px;
    height: 5px;
    background-color: var(--main-color01);
    border-radius: 50%;
    left: 50%;
    bottom: -7px;
    transform: translateX(-50%);
}
.calendar-body .calendar td.today .day{
    color: var(--main-color01);
}
.calendar-body .calendar .sun .day{
    color: #ff5555
}
.calendar-body .calendar .sun.today .day{
    border-bottom-color: #ff5555
}
.calendar-body .calendar .sat .day{
    color: #136CE5
}
.calendar-body .calendar .sat.today .day{
    border-bottom-color: #136CE5;
}

.calendar-foot{
    display: none;
    margin-top: 15px;
    background-color: #f9f9f9;
    padding: 15px 25px;
}
.calendar-foot:has(.calendar-info){
    display: block;
}
.calendar-foot .calendar-info:not(:last-child){
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px dotted #aaa;
}
.calendar-foot .calendar-foot-tit{
    font-family: var(--font-type01);
    font-size: 20px;
    margin-bottom: 5px;
}

@media (min-width: 992px){
    .calendar-con .calendar-list span{
        font-size: inherit;
        padding-left: 17px;
    }
    .calendar-con .calendar-list span::before{
        top: 7px;
        width: 9px;
        height: 9px;
    }
    .calendar-head{
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 0 1%;
    }
    .calendar-head .calendar-years{
        width: auto;
    }
    .calendar-head .calendar-year{
        font-size: 24px;
    }
    .calendar-head .calendar-month{
        padding: 0;
    }
    .calendar-head .calendar-month button{
        padding: 0 10px;
    }
    .calendar-head .calendar-month .active button::before{
        display: inline-block;
        content: '\F269';
        font-family: var(--font-icon);
        vertical-align: middle;
        margin-right: 5px;
        font-weight: normal;
    }
    .calendar-body {
        margin-top: 40px;
    }
    .calendar-body .calendar{
        margin-top: 10px;
    }
    .calendar-body .calendar thead th{
        text-align: left;
    }
    .calendar-body .calendar td{
        padding: 10px 20px 10px 0;
    }
    .calendar-body .calendar .calendar-box{
        display: block;
        height: auto;
        min-height: 80px;
    }
    .calendar-body .calendar .day{
        text-align: left;
        font-size: 20px;
    }
    .calendar-body .calendar td.today .day{
        border-bottom: 2px solid var(--main-color01);
    }
    .calendar-body .calendar td:has(.calendar-list) .day::after{
        display: none;
    }
    .calendar-body .calendar .calendar-list{
        display: flex;
    }
    .calendar-foot:has(.calendar-info){
        display: none;
    }
}

@media (min-width: 1200px){
    .calendar-head .calendar-years{
        padding: 5px 20px;
    }
    .calendar-head .calendar-year{
        font-size: 32px;
    }
    .calendar-head .calendar-month button{
        padding: 0 15px;
        font-size: 18px;
    }
    .calendar-body .calendar td{
        padding: 10px 15px 20px 0;
    }
    .calendar-body .calendar .calendar-box{
        min-height: 100px;
    }
    .calendar-body .calendar .day{
        font-size: 24px;
    }
}

/* pdf */
.pdf-con{
    display: flex;
    flex-direction: column-reverse;
    gap: 15px 1%;
}
.pdf-con .pdf-view{
    width: 100%;
    height: 80vh;
}
.pdf-con .pdf-view .embed-responsive{
    height: 100%;
}

.pdf-con .pdf-info{
    width: 100%;
}
.pdf-con .pdf-info .pdf-button{
    display: flex;
    flex-wrap: wrap;
    gap: 5px 1%;
}
.pdf-con .pdf-info .pdf-button button{
    flex: 0 1 49.5%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1%;
    background-color: var(--main-color02);
    border:1px solid var(--main-color02);
    border-radius: 7px;
    color: #fff;
    transition: .3s;
    padding: 5px 15px;
    text-align: left;
    font-size: 14px;
    word-break: keep-all;
}
.pdf-con .pdf-info .pdf-button button:hover,
.pdf-con .pdf-info .pdf-button button:focus{
    border-color: var(--main-color02-hover);
    background-color: var(--main-color02-hover);
}
.pdf-con .pdf-info .pdf-button button.pdf-index{
    flex: 0 1 100%;
    background-color: #fff;
    color: var(--main-color02);
}
.pdf-con .pdf-info .pdf-button button i{
    transition: .3s;
}
.pdf-con .pdf-info .pdf-button button.pdf-index.collapsed i{
    transform: rotate(180deg);
}
.pdf-con .pdf-info .pdf-button button.pdf-index:hover,
.pdf-con .pdf-info .pdf-button button.pdf-index:focus{
    background-color: var(--main-color02-hover);
    color: #fff;
}

.pdf-con .pdf-info .pdf-list{
    border-radius: 10px;
    border: 1px solid #c9c9c9;
    border-top: 0;
    overflow: hidden;
    padding:5px 0;
}
.pdf-con .pdf-info .pdf-list .pdf-item{
    padding: 0 15px;
}
.pdf-con .pdf-info .pdf-list .pdf-item a{
    display: block;
    position: relative;
    font-size: 14px;
    border-bottom: 1px dotted #ccc;
    color: #767676;
    padding:5px 0;
    line-height: 1.4;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.pdf-con .pdf-info .pdf-list .pdf-item:last-child a{
    border-bottom: 0;
}
.pdf-con .pdf-info .pdf-list .pdf-item.active a{
    color: var(--main-color02);
    font-weight: bold;
}
.pdf-con .pdf-info .pdf-list .pdf-item.active a::before{
    display: inline-block;
    content: '\F195';
    font-family: var(--font-icon);
    font-weight: normal;
    margin-right: 3px;
    vertical-align: middle;
}

@media (min-width: 768px){
    .pdf-con{
        flex-direction: row;
        justify-content: space-between;
    }
    .pdf-con .pdf-view{
        width: 67%;
        height: 95vh;
    }
    .pdf-con .pdf-info{
        width: 30%;
    }
    .pdf-con .pdf-info .pdf-button button{
        flex: 0 1 100%;
    }
    .pdf-con .pdf-info .pdf-list .pdf-item{
        padding: 0 20px;
    }
    .pdf-con .pdf-info .pdf-list .pdf-item a{
        padding: 10px 0;
    }
}
@media (min-width: 1200px){
    .pdf-con .pdf-view{
        width: 72%;
    }
    .pdf-con .pdf-info{
        width: 25%;
    }
    .pdf-con .pdf-info .pdf-button button{
        padding: 10px 20px;
        border-radius: 10px;
    }
    .pdf-con .pdf-info .pdf-list .pdf-item a{
        font-size: inherit;
        text-overflow: unset;
        white-space: wrap;
        font-size: 15px;
    }
    .pdf-con .pdf-info .pdf-list .pdf-item.active a::before{
        vertical-align: text-bottom;
        margin-right: 5px;
    }
}

/* checkbox & radio */
.checkbox, .radio {
	display: inline-block;
}

.checkbox input[type="checkbox"], .radio input[type="radio"] {
	margin-right: 0.3125rem;
}

.checkbox label, .radio label {
	margin-right: 0.75rem;
	margin-bottom: 0;
}

/* img-zoom  */
.img-zoom, .img-lg-zoom, .img-xl-zoom {position: relative;text-align: center;border: 1px solid #eaeaea;padding: 20px;}
.img-zoom img, .img-lg-zoom img, .img-xl-zoom img {max-width: 100%;margin: 0 auto;}
.img-zoom > .btn, .img-lg-zoom > .btn, .img-xl-zoom > .btn {position: absolute;top:16px;right: 16px;width: 36px;height: 36px;background: #333 url('/core/images/core/zoom-icon.png') no-repeat center center;}
.img-zoom > .btn:hover, .img-zoom > .btn:focus, .img-lg-zoom > .btn:hover, .img-lg-zoom > .btn:focus, .img-xl-zoom > .btn:hover, .img-xl-zoom > .btn:focus {background-color:  var(--main-color02);}
@media(min-width: 992px) {
    .img-lg-zoom {padding: 0;border: none;}
    .img-lg-zoom > .btn {display: none;}
}
@media(min-width: 1200px) {
    .img-xl-zoom {padding: 0;border: none;}
    .img-xl-zoom > .btn {display: none;}
}

/* form */
select.form-control{
    -webkit-appearance:none;
    -moz-appearance:none;
    -o-appearance: none;
    appearance:none;
    background: #fff no-repeat url('/core/images/select-arrow.png') right .5rem center;
    padding: .375rem 1.5rem .375rem .75rem;
}
.form-control {
    height: 36px;
    border-color: #ddd;
    line-height: 23px;
}
.form-control::placeholder {
    color: #888;
    opacity: 1;
}
.form-control:-ms-input-placeholder {
    color: #888;
}
.form-control::-ms-input-placeholder {
    color: #888;
}
.form-check-inline .form-check-input {
    margin-top: 1.5px;
}
label {
    font-weight: 500;
    color: #222;
}
input[type="checkbox"] + label, input[type="radio"] + label {
    font-weight: normal;
}
.custom-control{
    padding-left: 1.75rem;
}
.custom-control-input{
    width: 1.25rem;
    height: 1.25rem;
    z-index: 1;
}
.custom-control-label::before{
    width: 1.25rem;
    height: 1.25rem;
    left: -1.75rem;
    top: .2rem;
}
.custom-control-label::after{
    width: 1.25rem;
    height: 1.25rem;
    border-radius: .25rem;
    left: -1.75rem;
    top: .2rem;
}
.custom-control-input:checked ~ .custom-control-label::after {
    background-color: var(--main-color01);
}
.custom-radio .custom-control-input:checked ~ .custom-control-label::after{
    border-radius: 50%;
}

/********** 검색 영역 **********/
.search-box {
    margin-bottom: 25px;
    padding: 20px 20px 0;
    border: 2px solid #f3f3f3;
    background-color: #fafafa;
    border-radius: 10px;
}
.search-box .form-group {
    margin-bottom: 0;
}
.search-box .form-group:last-child {margin-right: 0;}
.search-box .form-group label {
    padding-left: 15px;
    margin-right: 15px;
    margin-bottom: 5px;
    color: #000;
    font-size: 17px;
}
.search-box .form-group label:after {
    content: '';
    position: absolute;
    top: 10px;
    left: 0;
    display: block;
    width: 7px;
    height: 7px;
    border-radius: 2px;
    background-color: var(--main-color01);
}
.search-box .line-gap{
    margin: 0.9rem 0;
}
.search-box .form-row .col, .search-box .form-row [class*=col-]{
    padding-right: 0;
}
.search-box .s-row-item {display: flex;flex-wrap: wrap;flex-direction: column;color: #666;margin-bottom: 10px;}
.search-box .s-row-item.flex-col-1 {flex: 0 0 100%;}
.search-box .flex-col-1 .s-row-item {flex: 0 0 100%}
.search-box .s-row-item .s-title-box label {
    color:#000;
    font-weight: 500;
    margin-bottom: 0;
}
.search-box .s-row-item .s-title-box label::before{
    display: inline-block;
    content: '\F285';
    font-family: var(--font-icon);
    margin-right: 5px;
    font-size: 0.7rem;
    color: #999;
}
.search-box .form-search-btn{
    text-align: center;
    padding: 1rem 1rem 1.5rem;
}
.search-box .form-search-btn .btn{
    padding: 10px 20px 10px;
}

@media (min-width: 576px) {
    .search-box .form-group {margin-right: 40px;}
}
@media (max-width: 767px) {
    .search-box .form-inline {display: block;}
    .search-box .form-group label {display: block;}
    .search-box .form-group > .btn {width:100%;}
}
@media (min-width: 768px) {
    .search-box {padding: 30px 45px 0;}
}
@media (min-width: 992px) {
	.search-box .s-row-box {display: flex;flex-wrap: wrap;justify-content: flex-start;align-items: flex-start; gap: 0 35px;}
	.search-box .s-row-item {flex: 0 0 calc(50% - 20px);flex-direction: row;}
	.search-box .s-row-item .s-title-box {flex: 0 0 120px;max-width:120px;padding-top: 5px;}
	.search-box .s-row-item .s-con-box {width:calc(100% - 120px);}
	.search-box .s-row-item .s-con-box .form-group {margin-bottom:0;}
	.search-box .s-row-item .s-con-box .form-check {padding-top:5px;}
}
@media (min-width: 1200px) {
    .search-box .s-row-item {flex: 0 0 calc(33% - 20px);}
    .search-box .s-row-item.flex-col-2 {flex: 0 0 calc(50% - 20px);}
}

/********** 반응형 테이블 **********/
.b-table-box {
    margin-bottom: 1.25rem;
    border-top: 1px solid #E1E2EA;
}
.b-table-box .b-row-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.b-table-box .b-row-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    min-height: 36px;
    border-bottom: 1px solid #E1E2EA;
}
.b-table-box .b-title-box {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100px;
    flex: 0 0 100px;
    max-width: 100px;
    padding: 6px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #FAFAFA;
    color: #000;
    font-weight: 500;
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
/* dukim 추가 */
.b-table-box .b-title-box-long {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 200px;
    flex: 0 0 200px;
    max-width: 200px;
    padding: 6px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #FAFAFA;
    color: #000;
    font-weight: 500;
    text-align: left;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: left;
}
/* dukim 추가 */
.b-table-box .b-title-box-long-center {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 200px;
    flex: 0 0 200px;
    max-width: 200px;
    padding: 6px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #FAFAFA;
    color: #000;
    font-weight: 500;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    text-align:center;
    justify-content:center;
}
.b-table-box .b-title-box-aigInfo {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 300px;
    flex: 0 0 300px;
    max-width: 300px;
    padding: 12px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-left: 1px solid #E1E2EA;
    border-right: 1px solid #E1E2EA;
    background: #FAFAFA;
    color: #000;
    font-weight: 500;
    text-align: left;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.b-table-box .b-title-box label {
    margin-bottom: 0;
    line-height: 1.4;
}
.b-table-box .b-title-box label.req::before, label.req::before, th.req nobr::before {
    content: "*";
    display: inline-block;
    width: 10px;
    margin-right: 2px;
    font-weight: 700;
    font-size: 14px;
    color: var(--danger) !important;
}
/* dukim 추가 */
.b-table-box .b-title-box-long label.req::before, label.req::before, th.req nobr::before {
    content: "*";
    display: inline-block;
    width: 10px;
    margin-right: 2px;
    font-weight: 700;
    font-size: 14px;
    color: var(--danger) !important;
}
/* dukim 추가 */
.b-table-box .b-title-box-long-center label.req::before, label.req::before, th.req nobr::before {
    content: "*";
    display: inline-block;
    width: 10px;
    margin-right: 2px;
    font-weight: 700;
    font-size: 14px;
    color: var(--danger) !important;
}
.b-table-box .b-con-box {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding: 7px 10px;
    font-size: 16px;
}
.b-table-box .b-con-box.text-left {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}
.b-table-box .b-con-box.text-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.b-table-box .b-con-box.text-right {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.b-table-box .form-group {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-right: 0;
}
.b-table-box .form-group:last-child {
    margin-bottom: 0;
}
.b-table-box .form-group-inline {
    margin-right: 5px;
    width: auto;
}
.b-table-box .form-control, .b-table-box .w2inputCalendar_div, .b-table-box .w2spinner, .b-table-box .btn {
    margin-top: 3px;
    margin-bottom: 3px;
}
.b-table-box .form-w-auto, .b-table-box .form-w-xs, .b-table-box .form-w-sm, .b-table-box .form-w-md, .b-table-box .form-w-lg, .b-table-box .form-w-xl {
    width: 100%
}
.b-table-box .b-con-box .form-row {
    width: 100%;
}
.b-table-box .b-con-box .row {
    margin-right: -2px;
    margin-left: -2px;
}
.b-table-box .b-con-box .row [class^="col-"] {
    padding-right: 2px;
    padding-left: 2px;
}
@media (min-width: 768px) {
    .b-table-box .b-title-box{
        -ms-flex: 0 0 120px;
        flex: 0 0 120px;
        max-width: 120px;
    }
	/* dukim 추가 */
    .b-table-box .b-title-box-long{
        -ms-flex: 0 0 200px;
        flex: 0 0 200px;
        max-width: 200px;
    }
	/* dukim 추가 */
    .b-table-box .b-title-box-long-center{
        -ms-flex: 0 0 200px;
        flex: 0 0 200px;
        max-width: 200px;
    }
    .b-table-box .form-group {
            margin-right: 5px;
    }
    .b-table-box .b-row-item {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 50%;
            flex: 0 0 50%;
            max-width: 50%;
    }
    /* 1단 테이블 */
    .flex-col-1 .b-row-item {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
            flex: 0 0 100%;
            max-width: 100%;
    }
    /* 2단 테이블 */
    .b-table-box .b-row-item.merge-2, .flex-col-2 .b-row-item.merge-2 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
            flex: 0 0 100%;
            max-width: 100%;
    }
    /* 3단 테이블 */
    .flex-col-3 .b-row-item:last-child, .flex-col-3 .b-row-item.merge-2, .flex-col-3 .b-row-item.merge-prev {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
            flex: 0 0 100%;
            max-width: 100%;
    }
    /* 4단 테이블 */
    .flex-col-4 .b-row-item.merge-2, .flex-col-4 .b-row-item.merge-3, .flex-col-4 .b-row-item.merge-4, .flex-col-4 .b-row-item.merge-prev, .flex-col-4 .b-row-item.merge-next, .flex-col-4 .b-row-item.merge-3 + .b-row-item {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
            flex: 0 0 100%;
            max-width: 100%;
    }
    /* 5단 테이블 */
    .flex-col-5 .b-row-item:last-child, .flex-col-5 .b-row-item.merge-prev, .flex-col-5 .b-row-item.merge-next:nth-child(4), .flex-col-5 .b-row-item.merge-3, .flex-col-5 .b-row-item.merge-3 + .merge-next, .flex-col-5 .b-row-item.merge-4 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
            flex: 0 0 100%;
            max-width: 100%;
    }
    .flex-col-5 .b-row-item.merge-prev:nth-child(2), .flex-col-5 .b-row-item.merge-next, .flex-col-5 .b-row-item.merge-next + .b-row-item, .flex-col-5 .b-row-item.merge-3 + .b-row-item + .b-row-item {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 50%;
            flex: 0 0 50%;
            max-width: 50%;
    }
    .b-table-box .form-w-auto {
            width: auto
    }
    .b-table-box .form-w-xs {
            width: 30px;
    }
    .b-table-box .form-w-sm {
            width: 60px;
    }
    .b-table-box .form-w-md {
            width: 90px;
    }
    .b-table-box .form-w-lg {
            width: 110px;
    }
    .b-table-box .form-w-xl {
            width: 140px;
    }
}
@media (min-width: 1400px) {
    .b-table-box .b-row-item {
            min-height: 44px;
    }
    .b-table-box.small .b-title-box {
            padding: 0.25rem 8px 0.25rem 0.25rem;
    }
    .b-table-box.small .b-con-box {
            padding: 0.25rem;
    }
    /* 3단 테이블 */
    .flex-col-3 .b-row-item, .flex-col-3 .b-row-item:last-child, .flex-col-3 .b-row-item.merge-prev {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 33.333333%;
            flex: 0 0 33.333333%;
            max-width: 33.333333%;
    }
    .flex-col-3 .b-row-item.merge-2 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 66.666666%;
            flex: 0 0 66.666666%;
            max-width: 66.666666%
    }
    .flex-col-3 .b-row-item.merge-3 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
            flex: 0 0 100%;
            max-width: 100%
    }
}
@media (min-width: 1600px) {
    /* 4단 테이블 */
    .flex-col-4 .b-row-item, .flex-col-4 .b-row-item.merge-prev, .flex-col-4 .b-row-item.merge-next, .flex-col-4 .b-row-item.merge-3 + .b-row-item {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 25%;
            flex: 0 0 25%;
            max-width: 25%;
    }
    .flex-col-4 .b-row-item.merge-2 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 50%;
            flex: 0 0 50%;
            max-width: 50%;
    }
    .flex-col-4 .b-row-item.merge-3 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 75%;
            flex: 0 0 75%;
            max-width: 75%;
    }
    /* 5단 테이블 */
    .flex-col-5 .b-row-item, .flex-col-5 .b-row-item.merge-prev.merge-3-prev {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }
    .flex-col-5 .b-row-item:last-child {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .flex-col-5 .b-row-item.merge-2, .flex-col-5 .b-row-item.merge-prev, .flex-col-5 .b-row-item.merge-next:nth-child(4) {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
    .flex-col-5 .b-row-item.merge-2:last-child, .flex-col-5 .b-row-item.merge-3 + .b-row-item + .b-row-item, .flex-col-5 .b-row-item.merge-3:last-child, .flex-col-5 .b-row-item.merge-4-prev {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
            flex: 0 0 100%;
            max-width: 100%;
    }
    .flex-col-5 .b-row-item.merge-prev:nth-child(2), .flex-col-5 .b-row-item.merge-3 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 75%;
            flex: 0 0 75%;
            max-width: 75%;
    }
}
@media (min-width: 1800px) {
    /* 5단 테이블 */
    .flex-col-5 .b-row-item, .flex-col-5 .b-row-item:last-child, .flex-col-5 .b-row-item.merge-prev, .flex-col-5 .b-row-item.merge-next, .flex-col-5 .b-row-item.merge-next + .b-row-item, .flex-col-5 .b-row-item.merge-prev:nth-child(2), .flex-col-5 .b-row-item.merge-next:nth-child(4), .flex-col-5 .b-row-item.merge-3 + .b-row-item + .b-row-item, .flex-col-5 .b-row-item.merge-3 + .merge-next, .flex-col-5 .b-row-item.merge-prev.merge-3-prev {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 20%;
            flex: 0 0 20%;
            max-width: 20%;
    }
    .flex-col-5 .b-row-item.merge-2, .flex-col-5 .b-row-item.merge-2:last-child {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 40%;
            flex: 0 0 40%;
            max-width: 40%;
    }
    .flex-col-5 .b-row-item.merge-3, .flex-col-5 .b-row-item.merge-3:last-child {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 60%;
            flex: 0 0 60%;
            max-width: 60%;
    }
    .flex-col-5 .b-row-item.merge-4 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 80%;
            flex: 0 0 80%;
            max-width: 80%;
    }
    .flex-col-5 .b-row-item.merge-5 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
            flex: 0 0 100%;
            max-width: 100%;
    }
}

/********** 첨부파일 **********/
.attach {
    display: flex;
    justify-content: space-between;
}
.attach .drop-zone {
    flex: 0 0 calc(100% - 135px);
    height: 120px;
background-color: #fff;
border: 1px solid #ddd;
    text-align: center;
    overflow-y: auto;
}
.attach .drop-zone .non-info {
    background: url('/core/images/drag.png') no-repeat center top;
    padding-top: 3.5rem;
    margin-bottom: 0;
    color: #666;
    font-size: 14px;
}
.attach.attached .drop-zone .non-info {
    display: none;
}
.attach .attach-btn {
    width: 120px;
}
.attach .attach-btn button {
    width: 100%;
    height: 100%;
    background-image: url('/core/images/upload.png');
    background-repeat: no-repeat;
    background-position: center 31px;
    font-size: 15px;
    padding: 35px 0 0;
}
.attach.attached .drop-zone .attach-list {
    padding: 7px 15px 15px;
    margin: 0;
}
.attach.attached .drop-zone .attach-list > li {
    position: relative;
    padding: 5px 30px 5px 17px;
    border-top: 1px dashed #dcdcdc;
    text-align: left;
}
.attach.attached .drop-zone .attach-list > li:hover, .attach.attached .drop-zone .attach-list > li:focus {
    background: #e8e9eb;
}
.attach.attached .drop-zone .attach-list > li:first-child {
    border: none;
}
.attach.attached .drop-zone .attach-list > li a {
    display: inline-block;
    font-size: 14px;
    color: #333;
}
.attach.attached .drop-zone .attach-list > li a:after {
    content: '\F4B3';
    position: absolute;
    top: 8px;
    left: 0;
    font-family: var(--font-icon);
    display: inline-block;
    width: 15px;
    height: 20px;
    font-size: 16px;
    color: #999;
}
.attach.attached .drop-zone .attach-list > li a:hover .attach-name, .attach.attached .drop-zone .attach-list > li a:focus .attach-name {
    color: #222;
}
.attach.attached .drop-zone .attach-list > li a .attach-size {
    color: #666;
    margin-left: 0.4rem;
}
.attach.attached .drop-zone .attach-list > li button {
    position: absolute;
    top: 4px;
    right: 0;
    padding: 0;
    font-size: 24px;
    color: #aaa;
    line-height: 1;
    border: none;
}
.attach.attached .drop-zone .attach-list > li button:hover, .attach.attached .drop-zone .attach-list > li button:focus {
    color: #555;
}

/* info-text */
.gray-box {
    border-radius: 15px;
    background-color: rgba(0, 0, 0, 0.02);
    border: 1px solid rgba(0, 0, 0, 0.125);
}
.gray-box.type01 {
    padding: 30px 40px;
    background-color: #f8f8fb;
    border: 0;
    border-radius: 15px;
}
.info-txt {
    position: relative;
    padding-left: 1.6rem;
    color: #555;
}
.info-txt:before{
    content:"";
    display:block;
    position:absolute;
    left:0;
    top:0;
    width:100%;
}
.info-txt:before {
    height:2px;
    background:#e6ecff;
    z-index:1
}
.info-txt, .info-txt.type02, .info-txt.type03 {
    display:block;
    position:relative;
    line-height:1.4;
    padding:4px 0 5px 30px;
    margin:5px 10px 0 0;
    font-size: 0.938rem;
}
.info-txt:before, .info-txt.type02:before, .info-txt.type03:before {
   content:"!";
   display:block;
   position:absolute;left:0;top:5px;
   width:20px;height:20px;
   border-radius:50%;
   text-align: center;
   font-size: 15px;
   font-weight: 600;
   color:#fff;
   line-height: 20px;
   font-family: "Montserrat";
}
.info-txt:before {background:#e6ecff;color:#222}
.info-txt.type02:before {background: var(--main-color01);}
.info-txt.type03:before {background: var(--danger);}
.info-txt.small {padding: 2px 0 5px 22px;}
.info-txt.small:before {width: 17px;height: 17px;font-size:13px;top: 6px;line-height: 17px;}
.info-list {position:relative;padding:3px 0 0 30px}
.info-list:before,
.info-list:after {content:"";display:block;position:absolute;box-sizing:border-box}
.info-list:before {content:"!";display:block;position:absolute;left:0;top:5px;width:22px;height:22px;border-radius:50%;text-align: center;font-size: 14px;font-weight: bold;color:#222;line-height: 22px;font-family: "proxima-nova", sans-serif;background:#fff;border:1px solid #ccc}
.info-list ul li {position:relative;padding:0 0 0 19px;margin:0 0 2px;font-size:0.938rem;line-height: 1.4;}
.info-list ul li:last-child {margin:0}
.info-list ul li:before {content:"";display:block;position:absolute;width:7px;height:3px;top:12px;left:0;background:#b9c0ce}
.info-list.num1:before {border-color:#e6ecff;background:#e6ecff}
.info-list.num2:before {border-color:var(--main-color01);background:var(--main-color01);color:#fff}
.info-list.num3:before {border-color: var(--main-color02);background: var(--main-color02);color:#fff}
.info-list.num4:before {width: 20px;height: 20px;border-color: var(--danger);background: var(--danger);color:#fff;line-height: 16px;}
.info-list.num4 li {color: #555;}
.info-list.num4 li:before {top: 9px;}
.info-box {position: relative;box-sizing: border-box;padding: 0.8rem 1rem;margin-bottom: 1.5rem;border-top: 4px solid #05367b;border-bottom: 4px solid #e6ecff;font-size: 0.938rem;min-height: 60px;}
.info-box:after {content:"";position:absolute;display:block;background:#159cb6;top:-4px;left:0;width:4px;height:54px;z-index:-1}
.info-box > .tit-h3:last-child, .info-box > .tit-h4:last-child {margin: 0 0 0;}
.info-box ul,
.info-box p {margin-bottom:0;line-height:1.4;}
.info-box.py-3 {padding: 0.3rem 1rem !important;}
@media (min-width: 768px) {
   .info-box {padding: 1.125rem;}
   .info-box .tit-h4 {margin-top: 0;}
   .info-box.py-3 {padding: 1rem 1.5rem!important;}
}
@media (min-width: 992px) {
   .info-box {font-size: 1.063rem;}
   .info-box[class*="type"] {min-height: 140px;padding-left:11.5rem;background-position: 2rem 1rem;background-repeat: no-repeat;}
   .info-txt,
   .info-txt.type02,
   .info-txt.type03 {padding: 3px 0 5px 30px;font-size: 1rem;}
   .info-txt.small {padding: 2px 0 5px 22px;}
   .info-list {position:relative;padding:3px 0 0 40px}
   .info-list:before {width:24px;height:24px;line-height: 22px;}
   .info-list ul li {font-size:1rem;}
   table .info-txt,
   table .info-txt.type02,
   table .info-txt.type03,
   table .info-list ul li {font-size:0.938rem;}
}
/*****************************************************
	join / login
*****************************************************/
/* join01 */
.join-step {margin-bottom: 30px;}
.join-step .step-box {display: flex;flex-wrap: wrap;margin: auto;justify-content: center;}
.join-step .step-box .step {position: relative;display: flex;align-items: center;justify-content: center;width: 100%;border-radius: 100px;background: linear-gradient(to right, #FCFBFF, #F3F7FF);margin: 0 0 30px;padding: 10px 0;}
.join-step .step-box .step.on {background: var(--main-color02);}
.join-step .step-box .step:last-of-type::before {display: none;}
.join-step .step-box .step:before {content: '';position: absolute;width: 14px;height: 14px;bottom: -18px;right: 50%;border-top: 3px solid #ddd;border-right: 3px solid #ddd;transform: rotate(135deg);}
.join-step .step-box .step .ico-sec {display: inline-flex;align-items: center;}
.join-step .step-box .step .ico {position: relative;display: inline-flex;align-items: center;justify-content: center;width: 40px;height: 40px;border-radius: 50%;background: #fff;}
.join-step .step-box .step .ico:before {font-family: var(--font-icon);font-size: 18px;color: var(--main-color02);}
.join-step .step-box .step .ico01:before {content: '\F4D4';}
.join-step .step-box .step .ico02:before {content: '\F269';}
.join-step .step-box .step .ico03:before {content: '\F604';}
.join-step .step-box .step .ico04:before {content: '\F4D5';}
.join-step .step-box .step .txt-sec {margin: 0 0 0 12px;}
.join-step .step-box .step .num {display: block;font-size: 13px;color: var(--point-color01);}
.join-step .step-box .step .tit {display: block;font-size: 16px;font-weight: 700;}
.join-step .step-box .step.on .num, .join-step .step-box .step.on .tit {color: #fff;}
.joinyn-box .gray-box {padding: 25px 20px;}
.joinyn {margin: 0 auto;}
.joinyn .line-gap {margin: 12px 0 15px;}
.j-row-item {display: flex;flex-wrap: wrap;color: #666;margin-bottom: 15px;}
.j-row-item .j-title-box {flex: 0 0 100%;max-width: 100%;}
.j-row-item .j-con-box {width: 100%;}
.j-row-item .j-title-box label::before {display: inline-block;content: '\F285';font-family: var(--font-icon);margin-right: 5px;font-size: 0.7rem;color: #999;}
.agree-box .gray-box {height: 220px;}
.agree-box .gray-box.type01 {padding: 20px 15px;}
.agree-box .gray-box .agree-txt {width: 100%;height: 100%;overflow-x: hidden;overflow-y: auto;padding: 0 5px;}
.agree-box .chk-wrap {text-align: right;}
.agree-box.agree-all {background: #f8f8fb;border-radius: 15px;border: 0;margin-top: 30px;padding: 20px 15px;}
.agree-box.agree-all .chk-wrap {text-align: center;}
.req {text-indent: -9999px;display: inline-block;width: 11px; background: url(/core/images/ico-req.png) no-repeat right 4px; padding-left: 0;}
.joinform {margin: 0 auto;}
.joinform .line-gap {margin: 12px 0 15px;}
.j-row-box table {width: 100%;}
.j-row-box table tr {width: 100%;border-bottom: 1px solid #ddd;}
.j-row-box table th, .j-row-box table td {display: block;width: 100%;padding: 12px 0 10px;box-sizing: border-box;}
.j-row-box table th {padding: 12px 0 0px;}
.j-row-box table th label {position: relative;margin-bottom: 0;}
.j-row-box table th label:before {display: inline-block;content: '\F285';font-family: var(--font-icon);margin-right: 5px;font-size: 0.7rem;color: #999;}
.success-wrap {position: relative;padding: 30px;text-align: center;border: 7px solid #f0f0f0;border-radius: 15px;margin-bottom: 40px;}
.join-success {text-align: center;padding-top: 13rem;background: url(/core/images/join-success.png) no-repeat top center;background-size: 170px;}
.join-success h3, h3.join-success-txt {background: none !important;padding: 0;margin: 0;color: #555;font-size: 1.4rem;}
.join-success h3 > strong, h3.join-success-txt > strong {color: #0e55c1;}
.join-success p {color: #777;margin: 0.8rem 0 2rem;}
.join-success .btn {padding-left: 1.3rem;padding-right: 1.3rem;}
@media (min-width: 768px) {
    .join-step .step-box {margin: 0 -20px;}
    .join-step .step-box .step {justify-content: flex-start;width: calc(50% - 40px);padding: 10px 0px 10px 12px;margin: 8px 20px;}
    .join-step .step-box .step::before {width: 16px;height: 16px;top: calc(50% - 10px);right: -24px;transform: rotate(45deg);}
    .join-step .step-box .step .ico {width: 60px;height: 60px;}
    .join-step .step-box .step .ico:before {font-size: 28px;}
    .join-step .step-box .step .txt-sec {margin: -4px 0 0 15px;}
    .joinyn-box .gray-box {padding: 35px 40px;}
}
@media (min-width: 992px) {
    .join-step {margin-bottom: 50px;}
    .join-step .step-box {margin: 0 -20px;}
    .join-step .step-box .step {width: calc(25% - 40px);padding: 10px 0px 10px 12px;margin: 0 20px;}
    .join-step .step-box .step:before {width: 18px;height: 18px;right: -25px;}
    .join-step .step-box .step .ico {width: 60px;height: 60px;}
    .join-step .step-box .step .ico:before {font-size: 24px;}
    .join-step .step-box .step .txt-sec {margin: -4px 0 0 15px;}
    .joinyn {max-width: 60%;}
    .joinyn .line-gap {margin: 20px 0 25px;}
    .j-row-item .j-title-box {flex: 0 0 180px;max-width: 180px;padding: 5px;}
    .j-row-item .j-con-box {width: calc(100% - 180px);}
    .agree-box .gray-box {height: 300px;}
    .agree-box .gray-box.type01 {padding: 30px 40px;}
    .agree-box.agree-all {padding: 30px 40px;}
    .joinform .line-gap {margin: 20px 0 25px;}
    .j-row-box table tr {border-color: transparent;}
    .j-row-box table th, .j-row-box table td {display: table-cell;vertical-align: text-bottom;padding: 15px 0;}
    .j-row-box table th {width: 30%;}
    .j-row-box table td {width: 70%;}
    .success-warp {padding: 40px;margin-bottom: 50px;}
    .join-success{padding-top: 18rem;background-size: auto;}
}
@media (min-width: 1200px) {
    .join-step {margin-bottom: 70px;}
    .join-step .step-box {margin: 0 -28px;}
    .join-step .step-box .step {width: calc(25% - 56px);padding: 20px 0px 20px 22px;margin: 0 28px;}
    .join-step .step-box .step:before {right: -35px;}
    .join-step .step-box .step .ico {width: 74px;height: 74px;}
    .join-step .step-box .step .ico:before {font-size: 28px;}
    .join-step .step-box .step .txt-sec {margin: -4px 0 0 25px;}
    .join-step .step-box .step .num {font-size: 15px;}
    .join-step .step-box .step .tit {font-size: 22px;margin-top: 1px;}
    .joinyn-box .gray-box {padding: 50px 0;}
    .joinyn {max-width: 40%;}
    .joinyn .line-gap {margin: 25px 0 30px;}
    .joinform {max-width: 80%;}
    .joinform .line-gap {margin: 25px 0 30px;}
}
/* find-idpw */
.find-idpw .s-title-box {
    margin-bottom: 8px;
}
.find-idpw .s-row-item {
    margin-bottom: 18px;
}
@media (min-width: 768px) {
    .find-idpw .col-md-6 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
}
@media (min-width: 992px) {
    .find-idpw .col-md-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .find-idpw .search-box  {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        min-height: 340px;
        padding: 25px 30px 10px;
    }
    .find-idpw .s-title-box {
        margin-bottom: 0px;
    }
    .find-idpw .s-row-item {
        margin-bottom: 10px;
    }
    .find-idpw .s-row-item .s-title-box {
        flex: 0 0 180px;
        max-width: 180px;
    }
    .find-idpw .s-row-item .s-con-box {
        width: calc(100% - 180px);
    }
}
@media (min-width: 1200px) {
    .find-idpw .search-box {
        min-height: 360px;
        padding: 40px 60px 10px;
    }
}
/* login */
.login-container {
    background: #F8FAFF url('/core/images/login-bg.png') no-repeat center/cover;
    padding: 40px 25px;
    border-radius: 10px;
}
.login-container .login-img{
    background: #F8FAFF url('/core/images/login-bg.png') no-repeat center/cover;
    border-radius:20px;
    height: 100%;
}
.login-container .login-img img {
    display: none;
    max-width: 100%;
}
.login-container .login-box h3 {
    text-align: center;
    margin-bottom: 1.5rem;
    font-family: var(--font-type01);
    font-weight: bold;
    color: var(--main-color01);
}
.login-container .login-box .form-control{
    padding-left: 55px;
    background: no-repeat left 20px center;
    background-color: #fff;
}
.login-container .login-box .form-control.login-id{
    background-image: url('/core/images/login-icon01.png');
}
.login-container .login-box .form-control.login-pw{
    background-image: url('/core/images/login-icon02.png');
}
.login-container .login-box .form-control,
.login-container .login-box .login-btn {
    height: 50px;
}
.login-container .login-box .login-item {
    position: relative;
}
.login-container .login-box .login-btn {
    width: 100%;
}
@media (min-width: 992px) {
    .login-container {
        padding: 90px 50px;
        background: none;
    }
    .login-container .login-img{
        padding:50px 20px;
    }
    .login-container .login-img img {display: block;margin: 0 auto;}
    .login-container .login-box {max-width: 80%; margin: 0 auto;}
}
@media (min-width: 1200px){
    .login-container .login-box h3{
        font-size: 2.5rem;
    }
    .login-container .login-box .login-item::after{
        display: block;
        content: 'PUSAN NATIOAL UNIVERSITY';
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        font-weight: 900;
        opacity: .05;
        font-size: 2.25rem;
        bottom: -2.25rem;
        white-space: nowrap;
    }
}

/* search-page */
.search-page .search-area {
    text-align: center;
    border-radius: 10px;
    background: linear-gradient(to right, var(--main-color01), var(--main-color02));
}
.search-page .search-area .inner {
    padding: 1.5rem 1rem;
    display: flex;
    justify-content: center;
}
.search-page .search-area .inner > div{
    background-color: #fff;
    border-radius: 50px;
    overflow: hidden;
    padding: 5px;
    box-shadow: 0 0 20px rgba(0,0,0,0.1);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.search-page .search-area label {
    display: none;
}
.search-page .search-area input {
    padding: 5px 10px;
    width: 70%;
    max-width: 320px;
    border: 0;
}
.search-page .search-area button {
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    background-color: var(--point-color01);
    padding: 0;
    color: #fff;
    font-weight: bold;
}
.search-page .search-area button:hover,
.search-page .search-area button:focus {
    background-color: var(--main-color02);
}
.search-page .nav-tabs{
    justify-content: center;
}
.search-page .tab-type01 .nav-tabs .nav-link{
    padding:8px 30px;
}

.search-page .search-result {
    font-size: 22px;
    color: #666;
    word-break: keep-all;
    font-family: var(--font-type01);
}
.search-page h3{
    font-family: var(--font-type01);
    font-weight: bold;
    padding-left: 25px;
    position: relative;
    margin-bottom: 0;
    font-size: 21px;
    color: var(--main-color01);
}
.search-page h3::before{
    display: inline-block;
    content: '\F3D8';
    font-family: var(--font-icon);
    position: absolute;
    left: 0;
    top: -3px;
}
.search-page .mark, .search-page mark{
    background-color: #daeaff;
}
.search-page .search-item .nav {
    display: block;
    height: auto;
    min-height: auto;
    margin: 0;
}
.search-page .search-item .nav > span {
    position: relative;
    font-size: 0.9rem;
    color: #888;
    padding: 0 0.6rem;
}
.search-page .search-item .nav > span:first-child {
    padding-left: 1.2rem;
}
.search-page .search-item .nav > span:after {
    content: '\F285';
    font-family: var(--font-icon);
    position: absolute;
    left: -0.4rem;
    top: 0.09rem;
}
.search-page .search-item .nav > span:first-child:after {
    content: '\F478';
    left: 0;
}
.search-page .search-item a {
    display: block;
}
.search-page .search-item h4 {
    font-size: 1.25rem;
    color: #333;
    margin: 0.35rem 0 0.5rem;
    transition: 0.4s;
}
.search-page .search-item h4 a:hover,
.search-page .search-area .search-item h4 a:focus {
    text-decoration: underline;
}
.search-page .search-item p {
    display: block;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    overflow: hidden;
    margin-bottom: 2rem;
    height: 2.8rem;
    min-height: 2.8rem;
    color: #767676;
}
.search-page .search-item:hover p,
.search-page .search-area .search-item:focus p {
    color: #000;
}
@media (min-width: 1200px){
    .search-page .search-area .inner {
        padding: 2.5rem 2rem;
    }
    .search-page .search-area .inner > div{
        padding: 5px 10px;
    }
    .search-page .search-area input{
        width: 600px;
        max-width: 100%;
        padding: 10px;
    }
    .search-page .search-area button{
        width: 45px;
        height: 45px;
    }
    .search-page .search-result{
        font-size: 30px;
    }
    .search-page h3{
        padding-left: 37px;
        font-size: 26px;
    }
}
/* site-map */
.site-map h3 {
    font-size: 20px;
    padding-left: 30px;
    font-family: var(--font-type01);
    font-weight: bold;
    background: no-repeat url('/core/images/sitemap-icon.png') left top 3px;
    color: var(--main-color01);
}
.site-map .site-map-list{
    background-color: #f7f7f7;
    border-radius: 10px;
    padding: 15px 25px;
}
.site-map .site-map-list>li>ul {
    background: #fff;
    margin-top: 8px;
    margin-left: -20px;
    padding: 8px 8px 8px 20px;
    border-radius: 0 0 8px 8px;
    border-top: 1px solid #eee;
}
.site-map .site-map-list>li>ul>li {
    font-size: 15px;
}
@media (min-width: 1200px) {
    .site-map h3 {font-size: 24px;}
}

/* divPageInfo */
#divPageInfo {
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.responsibility {
	background-color: #f8f8fb;
	border: 0;
    border-radius: 10px;
	padding: .5rem 1.2rem .8rem  1.5rem;
}

.responsibility ul {
    margin: 0 !important;
}

.responsibility ul > li {
    display: inline-flex;
    position: relative;
    margin-right: 3rem !important;
}

.responsibility ul > li > strong {
    margin-right: 1rem;
    font-weight: 600;
    color: var(--main-color01);
}
.responsibility ul > li:before {
    content: '';
    font-size: 17px;
    font-family: var(--font-icon);
    color: var(--main-color01);
    margin-right: 10px;
}
.responsibility ul > li.mng:before {
    content: '\F2ED';
}
.responsibility ul > li.tel:before {
    content: '\F5B4';
    font-size: 16px;
}
.responsibility ul > li.mod:before {
    content: '\F4CA';
}
#divPageInfo .responsibility {
	margin: 0 auto;
	min-height: 60px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.responsibility ul {
    align-self: center;
}
.responsibility ul > li {
	padding-top: 0.4rem;
}
@media (min-width: 768px) {
	#divPageInfo .responsibility {
		margin: 0 auto;
	}
}
@media (min-width: 992px) {
    
    .responsibility {
        padding: .4rem 1.2rem .4rem  1.5rem;
    }
    .responsibility ul {
        display: flex;
    }
    .responsibility ul > li {
        padding-top: 0;
        margin-right: 2rem !important;
    }
}
@media (min-width: 1200px) {
    #divPageInfo {
        margin-top: 2.5rem;
        margin-bottom: 2.5rem;
    }
    
    #divPageInfo .responsibility {
        min-height: 70px;
    }
    .responsibility {
        padding: .5rem 1.2rem .5rem  2rem;
    }
}
/* header */
.utill{
	border-bottom: 1px solid #ddd;
}
.utill > div{
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 35px;
}
.utill ul{
    display: flex;
    gap: 5px 10px;
}
.utill ul li{
    color: #686868;
    font-size: 15px;
}
.utill ul li:not(:first-child)::before{
    display: inline-block;
    content: '';
    width: 1px;
    height: 11px;
    background-color: #c4c4c4;
    vertical-align: middle;
    margin-right: 10px;
}
.utill ul li a:hover,
.utill ul li a:focus{
    text-decoration: underline;
}
.utill ul li .popup-num{
    display: inline-block;
    width: 22px;
    height: 22px;
    background: var(--main-color01);
    color: #fff;
    border-radius: 50%;
    font-size: 12px;
    line-height: 22px;
    text-align: center;
}

/* popup */
#popup-wrap {
    position: relative;
    width: 100%;
    height: 100%
}
#popup-wrap.LayerPopup {
	z-index: 9999;
	position: absolute;
	overflow:	hidden;
	width: auto;
	height: auto;
	box-shadow: 10px 10px 10px 0px rgb(0 0 0 / 10%);
	-webkit-box-shadow: 10px 10px 10px 0px rgb(0 0 0 / 10%);
}
#popup-wrap .pop-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 70px;
    background: var(--main-color01);
    z-index: 1000
}
#popup-wrap .pop-head .ptit {
    font-size: 20px;
    color: #fff;
    padding: 20px 0 20px 20px;
    font-weight: 500
}
#popup-wrap .btn-close {
    border: 0;
    cursor: pointer;
    width: 70px;
    height: 70px;
    text-indent: -9999px;
    display: block;
    background: url('/core/images/close-white.png') no-repeat center;
    z-index: 1200
}
#popup-wrap .pop-cont {
    position: relative;
    padding: 20px;
    display: block;
    background: #fff;
}
/* 팝업 컨텐츠 */
.doc-view {
    padding-bottom: 50px;
    width: 100%
}
.doc-cont {
    padding: 0
}
.doc-cont .txt {
    font-size: 1em;
    color: #555;
    letter-spacing: -.025em;
    line-height: 1.5
}
.doc-cont .tabs ul[role="tablist"] > li a {
    font-size: 15px;
    letter-spacing: -.075em
}
@media all and (max-width: 768px) {
    .doc-cont .txt {
        font-size:0.938em
    }
}
@media all and (max-width: 599px) {
    .doc-cont .txt {
        font-size:0.875em
    }
}

/* popup modal */
.popmodal{
    position: fixed;
    width: 100%;
    height: 100vh;
    background: rgba(0,0,0,0.8) url('/core/images/popmodal-bg.png') no-repeat right bottom;
    top: 0;
    left: 0;
    z-index: 9999;
    color: #fff;
    background-size: 50%;
}
.popmodal .popmodal-con{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding:20px 25px;
}
.popmodal .popmodal-con h3{
    font-family: var(--font-type01);
    text-align: center;
    word-break: keep-all;
    font-size: 20px;
}
.popmodal .popmodal-con h3 span{
    font-weight: bold;
    font-size: 24px;
}

.popmodal .popmodal-swiper {
    width: 100%;
    max-height: 372px;
}
.popmodal .popmodal-swiper .layer-swiper{
    border-radius: 15px;
    overflow: hidden;
    background: url('/core/images/thumb-non.jpg') no-repeat center/cover;
}
.popmodal .popmodal-swiper .layer-swiper img{
    border-radius: 15px;
}

.popmodal .popmodal-foot{
    margin-top: 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    gap: 2%;
}
.popmodal .popmodal-pager{
    display: flex;
    align-items: center;
    background-color: rgba(0,0,0,0.3);
    border-radius: 50px;
    padding: 0 15px;
}
.popmodal .swiper-button-next, .popmodal .swiper-button-prev{
    position: static;
}
.popmodal .popmodal-pager li{
    position: static;
    line-height: 40px;
    font-size: 32px;
    text-align: center;
    margin-top: 0;
    cursor: pointer;
    transition: .3s;
}
.popmodal .popmodal-pager li:hover,
.popmodal .popmodal-pager li:focus{
    transform: rotate(-35deg);
}
.popmodal .popmodal-pager li::before,
.popmodal .popmodal-pager li::after{
    display: none;
}
.popmodal .swiper-button-next, .popmodal .swiper-button-prev{
    color: #fff;
}
.popmodal .popmodal-pager .swiper-button-pause.on .bi-play-fill{
    display: block;
}
.popmodal .popmodal-pager .swiper-button-pause .bi-play-fill{
    display: none;
}

.popmodal .popmodal-foot .line{
    display: none;
}
.popmodal .popmodal-close label{
    color: #fff;
    margin: 0 15px 0 5px;
}
.popmodal .popmodal-close .close-btn{
    background-color: var(--danger);
    border: 5px solid rgba(255,255,255,0.3);
    width: 50px;
    height: 50px;
    color: #fff;
    border-radius: 50%;
    transition: .3s;
    font-weight: bold;
}
.popmodal .popmodal-close .close-btn:hover,
.popmodal .popmodal-close .close-btn:focus{
    transform: rotate(90deg);
}
@media all and (min-width: 768px){
    .popmodal{
        background-size: 30%;
    }
    .popmodal .popmodal-con{
        padding:20px 0;
    }
    .popmodal .popmodal-con h3{
        margin-bottom: 30px;
        font-size: 1.75rem;
    }
    .popmodal .popmodal-con h3 span{
        font-size: 28px;
    }
    .popmodal .popmodal-foot{
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        gap: 2%;
    }
    .popmodal .popmodal-foot .line{
        display: block;
        flex: 1 1 10%;
        border: 1px dashed #ccc;
        opacity: 0.3;
    }
}
@media all and (min-width: 1200px) {
    .popmodal{
        background-size: auto;
    }
    .popmodal .popmodal-con h3{
        margin-bottom: 40px;
    }
    .popmodal .popmodal-con h3 span{
        font-size: 36px;
    }
    .popmodal .popmodal-foot{
        margin-top: 20px;
    }
}

/* layer popup */
.layer-popup {
	position: fixed;
    width: 500px;
    max-width: calc(100% - 30px);
    bottom: 10px;
    right: 15px;
    z-index: 9999;
    text-align: center;
    box-shadow: 0 0 20px rgba(0,0,0,0.3);
    border-radius: 15px;
}
.layer-popup .layer-header {
    position: relative;
    padding:10px 15px;
    color: #fff;
    background: var(--main-color01);
    font-family: var(--font-type01);
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}
.layer-popup .layer-header h4{
    margin-bottom: 0;
    font-size: 20px;
}
.layer-popup .layer-header .layer-control{
    display: flex;
    gap: 5px;
}
.layer-popup .layer-header a {
    display: inline-block;
	color: #fff;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    line-height: 30px;
}
.layer-popup .layer-header .layer-control i::before{
    vertical-align: middle;
}
.layer-popup .layer-header a:hover,
.layer-popup .layer-header a:focus{
    transform: rotate(180deg);
}
.layer-popup .layer-header .layer-close{
    font-size: 24px;
    background-color: var(--danger);
}

.layer-popup .go-top{
    position: absolute;
    bottom: 0;
    right: -65px;
    display: none;
    background-color: var(--main-color02);
    border: 2px solid transparent;
    border-radius: 15px;
    width: 60px;
    height: 60px;
    line-height: 60px;
    color: #fff;
    box-shadow: 0 0 15px rgba(0,0,0,0.3);
    font-family: var(--font-type01);
    font-size: 14px;
}
.layer-popup .go-top:hover,
.layer-popup .go-top:focus{
    transform: translateY(-5px);
    text-decoration: none;
    border-color: var(--main-color02);
    background-color: #fff;
    color: var(--main-color02);
}

.layer-popup .layer-body{
    max-height:70vh;
    overflow-y:auto;
}
.layer-popup .layer-body .layer-swiper {
    background:#fff;
}

.layer-popup .layer-foot{
    padding:10px;
    background-color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
}
.layer-popup .layer-pager{
    display: flex;
    align-items: center;
}
.layer-popup .layer-pager li{
    position: static;
    line-height: 25px;
    height: 25px;
    font-size: 27px;
    text-align: center;
    margin-top: 0;
    cursor: pointer;
    transition: .3s;
}
.layer-popup .swiper-button-next, .layer-popup .swiper-button-prev{
    position: static;
}
.layer-popup .layer-pager li::before,
.layer-popup .layer-pager li::after{
    display: none;
}
.layer-popup .swiper-button-next, .layer-popup .swiper-button-prev{
    color: #000;
}
.layer-popup .layer-pager .swiper-button-pause.on .bi-pause-circle{
    display: block;
}
.layer-popup .layer-pager .swiper-button-pause .bi-play-circle{
    display: none;
}
.layer-popup .layer-pager li:hover,
.layer-popup .layer-pager li:focus{
    transform: rotate(-45deg);
}

.layer-popup .layer-foot .layer-today{
    background-color: var(--main-color01);
    color: #fff;
    border-radius: 50px;
    border: 2px solid transparent;
    padding: 3px 10px;
    font-size: 14px;
    transition: .3s;
}
.layer-popup .layer-foot .layer-today:hover,
.layer-popup .layer-foot .layer-today:focus{
    border-color: var(--main-color01);
    color: var(--main-color01);
    background-color: #fff;
}

.layer-popup.closed {
	width:190px;
	opacity:0.9;
	border:1px solid #253386;
    box-shadow: 0 0 15px rgba(0,0,0,0.3);
}
.layer-popup.closed .layer-header{
    border-radius: 15px;
    height: 45px;
}
.layer-popup.closed .layer-header h4 {
    font-size: 16px;
}
.layer-popup.closed .layer-header .layer-down {
	transform:rotate(180deg);
}
.layer-popup.closed .layer-header .layer-down:hover,
.layer-popup.closed .layer-header .layer-down:focus{
    transform: rotate(0deg);
}
.layer-popup.closed .layer-body{
    display: none;
}
.layer-popup.closed .layer-foot{
    display: none;
}

@media screen and (min-width:992px) {
    .layer-popup.closed {
        width:240px;
        right: 75px;
    }
    .layer-popup .layer-header{
        padding: 15px 20px;
    }
    .layer-popup.closed .layer-header{
        height: 60px;
    }
    .layer-popup .layer-header h4{
        font-size: 25px;
    }
    .layer-popup.closed .layer-header h4 {
        font-size: 18px;
    }
    .layer-popup .layer-header .layer-close{
        font-size: 30px;
    }
    .layer-popup.closed .go-top{
        display: block;
    }
	.layer-popup .layer-body{
		max-height:80vh;
	}
    .layer-popup .layer-foot{
        padding: 10px 15px;
    }
}

/********** 헤더 - 즐겨찾기_dukim 추가 **********/
#bookmark-modal .modal-body {
	padding: 0;
	max-height: 300px;
	overflow: hidden;
	overflow-y: auto;
}
#bookmark-modal .modal-body .bookmark-list {
    margin: 0;
    padding: 0;
}
#bookmark-modal .modal-body .bookmark-list > li {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    border-bottom: 1px solid #ededed;
    padding: 20px;
}
#bookmark-modal .modal-body .bookmark-list > li .bookmark-menu {
    flex: 0 0 calc(100% - 150px);
}
#bookmark-modal .modal-body .bookmark-list > li .bookmark-menu a {}
#bookmark-modal .modal-body .bookmark-list > li .bookmark-menu h6 {
    margin-bottom: 0.2rem;
    color: #333;
}
#bookmark-modal .modal-body .bookmark-list > li .bookmark-menu a:hover h6, #bookmark-modal .modal-body .bookmark-list > li .bookmark-menu a:focus h6 {
    color: #033975;
}
#bookmark-modal .modal-body .bookmark-list > li .bookmark-menu p {
    font-size: 14px;
    color: #666;
    margin: 0;
}
#bookmark-modal .modal-body .bookmark-list > li .bookmark-menu a:hover p, #bookmark-modal .modal-body .bookmark-list > li .bookmark-menu a:focus p {
    color: #333;
}
#bookmark-modal .modal-body .bookmark-list > li .btn-group button.btn-outline-primary .bi:before {
	font-weight: 600 !important;
}

/********** dukim 추가 **********/
.nav-pills {
	margin-bottom:1rem;
}
.nav-pills .nav-item {
	margin-right:0.5rem;
	margin-bottom: 5px;
}
.nav-pills .nav-link {
	background-color: #ddd;
	color:#555;
}
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    background-color: #033975;
}

/********** dukim 추가 **********/
.message-box {
	padding: 10px;
	margin-bottom: 30px;
	background: linear-gradient(-45deg, white 25%, #DBDCDC 0, #DBDCDC 50%, white 0, white 75%, #DBDCDC 0);
  	-webkit-background-size: 5px 5px;
  	background-size: 5px 5px;
	font-size: 16px;
}

.message-box .message-box-inner {
	padding: 16px;
	background-color: white;	
}
.message-box b {
	font-weight: 500;
}

.message-box .text-box {
	margin-bottom: 30px;
	letter-spacing: -0.05rem;
}
.message-box .text-title {
	margin-bottom: 5px;
	color: #023975;
	font-size: 17px;
	font-weight: 500;
}

@media (min-width: 768px) {	
	.message-box .text-title {		
		font-size: 18px;		
	}
}

.message-box.message-box-style-1 {
	padding: 0;
	border-top: 2px solid #555;
	border-bottom: 1px solid #DDD;
}
.message-box.message-box-style-1 .message-box-inner {
	display: flex;	
	padding: 20px 10px;
}
.message-box.message-box-style-1 .message-header {		
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin-right: 40px;
	font-size: 18px;
	font-weight: bold;
}
.message-box.message-box-style-1 .message-header .deco-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;	
	margin-bottom: 10px;
	border-radius: 50%;
	background-color: #EFEFEF;
	color: #023975;
}
.message-box.message-box-style-1 .message-body {
	flex: 1;
	padding: 0;
}

@media (min-width: 576px) {
	.message-box.message-box-style-1 .message-header {
		font-size: 19px;
	}
}
@media (min-width: 768px) {
	.message-box.message-box-style-1 .message-header {
		font-size: 20px;
	}
}
@media (min-width: 992px) {
	.message-box.message-box-style-1 .message-box-inner {
		padding: 25px 20px;
	}
}

.message-box.message-box-style-2 {
	padding: 5px 0 5px 0;
}
.message-box.message-box-style-2 .message-box-inner {
	display: flex;	
	padding: 10px;
}

.message-box.message-box-style-2 .message-header {
	display: none;
}
.message-box.message-box-style-2 .message-body {
	flex: 1;
	padding: 10px;
}

@media (min-width: 576px) {
	.message-box.message-box-style-2 .message-box-inner {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.message-box.message-box-style-2 .message-header {
		display: block;
		margin-right: 20px;
	}
	.message-box.message-box-style-2 .message-body {
		padding: 10px;
	}
}

/* Message Box - style 2 (sec-1 바로 아래에서 사용될 경우) */

.sec-1 > .sec-body > .message-box.message-box-style-2 {
	padding-top: 0;
}
.sec-1 > .sec-body > .message-box.message-box-style-2 .message-box-inner {
	padding-top: 2px;
}
.sec-1 > .sec-body > .message-box.message-box-style-2 .message-body {
	padding-top: 0;
}
@media (min-width: 576px) {
	.sec-1 > .sec-body > .message-box.message-box-style-2 .message-box-inner {
		padding-top: 0;
		padding-bottom: 20px;
	}
}
@media (min-width: 768px) {
	.sec-1 > .sec-body > .message-box.message-box-style-2 .message-box-inner {
		padding-bottom: 22px;
	}
}
@media (min-width: 992px) {
	.sec-1 > .sec-body > .message-box.message-box-style-2 .message-box-inner {
		padding-bottom: 23px;
	}
}

@media (min-width: 1200px) {

	/* Message Box - style 1 - PC */

	.message-box.message-box-style-1 .message-box-inner {
		padding: 25px 40px;
	}

	/* Message Box - style 2 - PC */

	.message-box.message-box-style-2 .message-box-inner {
		padding: 24px 25px 24px;
	}
	.message-box.message-box-style-2 .message-body {
		padding: 5px 0 0;
	}

	/* Message Box - style 2 - PC (sec-1 바로 아래에서 사용될 경우) */

	.sec-1 > .sec-body > .message-box.message-box-style-2 .message-box-inner {
		padding-bottom: 24px;
	}
	.sec-1 > .sec-body > .message-box.message-box-style-2 .message-body {
		padding: 15px 0 0;
	}
}