

body {
    min-width:200px;
    width:100%;
    font-family:'Noto Sans KR';
    font-size:18px;
    line-height:1;
    color:#222;
    -webkit-text-size-adjust:none;
    -webkit-overflow-scrolling:touch;
    webkit-transition:none;
    font-weight:400;
    word-break:break-all;
    -ms-word-break:break-all
}

table img {
    vertical-align:top
}

input:focus,input:hover,select:focus {
    border-color:#fff;
    outline:none
}

input:focus::placeholder,textarea:focus::placeholder {
    color:transparent!important
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main {
    display:block
}
.visually-hidden-focusable:not(:focus):not(:focus-within) {
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important
}

.row {
    --bs-gutter-x:1.5rem;
    --bs-gutter-y:0;
    display:flex;
    flex-wrap:wrap;
    margin-top:calc(-1 * var(--bs-gutter-y));
    margin-right:calc(-0.5 * var(--bs-gutter-x));
    margin-left:calc(-0.5 * var(--bs-gutter-x))
}
.row>* {
    box-sizing:border-box;
    flex-shrink:0;
    width:100%;
    max-width:100%;
    padding-right:calc(var(--bs-gutter-x) * 0.5);
    padding-left:calc(var(--bs-gutter-x) * 0.5);
    margin-top:var(--bs-gutter-y)
}
.col {
    flex:1 0 0%
}
.col-auto {
    flex:0 0 auto;
    width:auto
}
.col-1 {
    flex:0 0 auto;
    width:8.33333333%
}
.col-2 {
    flex:0 0 auto;
    width:16.66666667%
}
.col-3 {
    flex:0 0 auto;
    width:25%
}
.col-4 {
    flex:0 0 auto;
    width:33.33333333%
}
.col-5 {
    flex:0 0 auto;
    width:41.66666667%
}
.col-6 {
    flex:0 0 auto;
    width:50%
}
.col-7 {
    flex:0 0 auto;
    width:58.33333333%
}
.col-8 {
    flex:0 0 auto;
    width:66.66666667%
}
.col-9 {
    flex:0 0 auto;
    width:75%
}
.col-10 {
    flex:0 0 auto;
    width:83.33333333%
}
.col-11 {
    flex:0 0 auto;
    width:91.66666667%
}
.col-12 {
    flex:0 0 auto;
    width:100%
}
.offset-1 {
    margin-left:8.33333333%
}
.offset-2 {
    margin-left:16.66666667%
}
.offset-3 {
    margin-left:25%
}
.offset-4 {
    margin-left:33.33333333%
}
.offset-5 {
    margin-left:41.66666667%
}
.offset-6 {
    margin-left:50%
}
.offset-7 {
    margin-left:58.33333333%
}
.offset-8 {
    margin-left:66.66666667%
}
.offset-9 {
    margin-left:75%
}
.offset-10 {
    margin-left:83.33333333%
}
.offset-11 {
    margin-left:91.66666667%
}
.clearfix::after {
    content:'';
    display:block;
    clear:both
}
.br_m {
    display:none
}
.br_p {
    display:block
}
.show_m {
    display:none
}
.show_p {
    display:block
}
.sr-only {
    position:absolute;
    overflow:hidden;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    border:0;
    clip:rect(0,0,0,0)
}
.scroll-lock {
    overflow-y:hidden
}
.accesibility {
    position:fixed;
    z-index:-1;
    left:0;
    top:-1000px;
    display:block;
    width:100%;
    line-height:45px;
    text-align:center;
    font-weight:700;
    font-size:20px;
    color:#fff;
    background-color:#112e56;
    z-index:99999
}
.accesibility:focus {
    top:0
}
.row {
    display:flex
}
.text-center {
    text-align:center
}
.truncate-1 {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
}
.truncate-2 {
    display:block;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    text-overflow:ellipsis
}
.truncate-3 {
    display:block;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    text-overflow:ellipsis
}

.icon-lg {
    width:28px;
    height:28px
}
.icon-md {
    width:24px;
    height:24px
}
.icon-max-100 {
    max-width:100px;
    max-height:100px
}
.mt-0 {
    margin-top:0!important
}
.mt-5 {
    margin-top:5px!important
}
.mt-10 {
    margin-top:10px!important
}
.mt-20 {
    margin-top:20px!important
}
.mt-30 {
    margin-top:30px!important
}
.mt-40 {
    margin-top:40px!important
}
.mt-50 {
    margin-top:50px!important
}
.mb-5 {
    margin-bottom:5px!important
}
.mb-10 {
    margin-bottom:10px!important
}
.mb-20 {
    margin-bottom:20px!important
}
.mb-30 {
    margin-bottom:30px!important
}
.mb-40 {
    margin-bottom:40px!important
}
.mb-50 {
    margin-bottom:50px!important
}
.pt-5 {
    padding-top:5px!important
}
.pt-10 {
    padding-top:10px!important
}
.pt-20 {
    padding-top:20px!important
}
.pt-30 {
    padding-top:30px!important
}
.pt-40 {
    padding-top:40px!important
}
.pt-50 {
    padding-top:50px!important
}
.pb-5 {
    padding-bottom:5px!important
}
.pb-10 {
    padding-bottom:10px!important
}
.pb-20 {
    padding-bottom:20px!important
}
.pb-30 {
    padding-bottom:30px!important
}
.pb-40 {
    padding-bottom:40px!important
}
.pb-50 {
    padding-bottom:50px!important
}
.w100p {
    width:100%!important
}
.w50p {
    width:50%!important
}
.co-white {
    color:#fff!important
}
.co-black {
    color:#000!important
}
.co-point1 {
    color:#053677!important
}
.co-point2 {
    color:#042D65!important
}
.co-default1 {
    color:#222!important
}
.co-default2 {
    color:#fff!important
}
.co-sub1 {
    color:#666!important
}
.co-sub2 {
    color:#999!important
}
.co-line {
    color:#DDDDDD!important
}
.co-back {
    color:#F8F9FB!important
}
.co-warning {
    color:#F54040!important
}
.bg-white {
    background-color:#fff!important
}
.bg-black {
    background-color:#000!important
}
.bg-point1 {
    background-color:#053677!important
}
.bg-point2 {
    background-color:#042D65!important
}
.bg-default1 {
    background-color:#222!important
}
.bg-default2 {
    background-color:#fff!important
}
.bg-sub1 {
    background-color:#666!important
}
.bg-sub2 {
    background-color:#999!important
}
.bg-line {
    background-color:#DDDDDD!important
}
.bg-back {
    background-color:#F8F9FB!important
}
.bg-primary {
    background-color:#F54040!important
}
.tit-vis {
    font-size:48px;
    font-weight:500
}
.tit1 {
    font-size:3rem;
    font-weight:700!important
}
.tit2 {
    font-size:22px!important;
    font-weight:700!important
}
.txt1 {
    font-size:18px!important
}
.txt2 {
    font-size:1.6rem!important;
    font-weight:400
}
.lh-txt1 {
    line-height:24px!important
}
.lh-txt2 {
    line-height:22px!important
}
.btn {
    display:inline-block;
    padding:0 50px;
    height:60px;
    line-height:58px;
    font-size:18px;
    font-weight:500;
    color:#fff;
    text-align:center
}
.btn+.btn {
    margin-left:20px
}
.btn-sm {
    padding:0;
    width:140px;
    height:50px;
    line-height:48px;
    font-size:16px
}
.btn-down {
    display:flex;
    justify-content:center;
    align-items:center;
    padding:0 20px;
    line-height:1
}
.btn-down::after {
    content:'';
    display:inline-block;
    width:14px;
    height:16px;
    margin-left:10px;
    background:url(../icon/ico_download_white.png) no-repeat center / cover
}
.btn-print {
    display:flex;
    justify-content:center;
    align-items:center;
    padding:0 20px;
    height:50px;
    line-height:1;
    font-size:16px
}
.btn-print::after {
    content:'';
    display:inline-block;
    width:18px;
    height:19px;
    margin-left:10px;
    background:url(../icon/ico_print.png) no-repeat center / cover
}

.table {
    table-layout:fixed;
    border-top:2px solid #222
}
.table tr {
    border-bottom:1px solid #ddd;
    font-size:16px;
    line-height:1.3
}
.table thead.thead-gray {
    background-color:#f8f9fb
}
.table thead th {
    font-weight:500;
    color:#222;
    padding : 1rem 0;
}
.table tbody th {
    font-weight:400;
    color:#222;
    
}
.table tbody td {
    color:#666;
    padding : 1rem 0;
}
.table tbody td a {
    text-align:left;
    color:#666
}
.table-sm {
    border:1px solid #ddd
}
.table-border thead th,.table-border tbody td {
    border-left:1px solid #ddd
}
.table-border thead th:first-child,.table-border tbody td:first-child {
    border-left:none
}
.table-border .border-left {
    border-left:1px solid #ddd!important
}
.table-wrap {
    overflow-x:auto;
    -webkit-overflow-scrolling:touch
}
.table-wrap .table {
    min-width:1280px
}
.board-table {
    position:relative
}
.board-card {
    position:relative;
    width:1400px;
    box-sizing:border-box;
    margin:0 auto
}
.board-card+.paginate {
    margin-top:0
}
.pagiset {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center
}

.pagiset .pagiset-ctrl .pagiset-first::after {
    content: '<<';
    display: flex;
    align-items: center;
    font-family: var(--ff-ico);
    font-size: var(--fs-h6);
    color: #000
}

.pagiset .pagiset-ctrl .pagiset-prev::after {
    content: '<';
    display: flex;
    align-items: center;
    font-family: var(--ff-ico);
    font-size: var(--fs-h6);
    color: #000
}

.pagiset .pagiset-ctrl .pagiset-next::after {
    content: '>';
    display: flex;
    align-items: center;
    font-family: var(--ff-ico);
    font-size: var(--fs-h6);
    color: #000
}

.pagiset .pagiset-ctrl .pagiset-last::after {
    content: '>>';
    display: flex;
    align-items: center;
    font-family: var(--ff-ico);
    font-size: var(--fs-h6);
    color: #000
}

.pagiset .pagiset-ctrl+.pagiset-ctrl,.pagiset .pagiset-ctrl+.pagiset-list,.pagiset .pagiset-list+.pagiset-ctrl {
    margin-left: 1.2rem
}

.pagiset .pagiset-list {
    display: flex;
    align-items: center
}

.pagiset .pagiset-link {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 4rem;
    height: 4rem;
    font-size: var(--fs-p2);
    font-weight: 500
}

.pagiset .pagiset-link.active-fill {
    background-color: #c4eef5;
    color: var(--white)
}

.pagiset .pagiset-link.active-line {
    border: 1px solid var(--line-color4);
    color: var(--line-color4)
}

.pagiset.pagiset-circ .pagiset-link {
    border-radius: 50%
}

.pagiset.pagiset-line .pagiset-ctrl .pagiset-link {
    border: 1px solid var(--line-color2);
    background-color: var(--white)
}

.pagiset.pagiset-fract .pagiset-ctrl+.pagiset-ctrl {
    margin-left: .8rem
}

.pagiset.pagiset-fract .pagiset-ctrl+.pagiset-text,.pagiset.pagiset-fract .pagiset-text+.pagiset-ctrl {
    margin-left: 1.6rem
}

.pagiset.pagiset-fract .pagiset-text strong {
    display: inline-block;
    margin: 0 .4rem;
    font-weight: 700
}

.pagiset.pagiset-fract .pagiset-text span {
    display: inline-block;
    margin: 0 .4rem
}

.pagiset.pagiset-assem .pagiset-list {
    background-color: var(--white);
    border: 1px solid var(--line-color2)
}

.pagiset.pagiset-assem .pagiset-ctrl {
    margin: 0
}

.pagiset.pagiset-assem .pagiset-ctrl,.pagiset.pagiset-assem .pagiset-item {
    border-left: 1px solid var(--line-color2)
}

.pagiset.pagiset-assem .pagiset-ctrl:first-child {
    border-left: none
}

.pagiset.pagiset-assem .pagiset-link {
    position: relative
}

.pagiset.pagiset-assem .pagiset-link.active-line {
    border: none
}

.pagiset.pagiset-assem .pagiset-link.active-line::after,.pagiset.pagiset-assem .pagiset-link.active-fill::after {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    border: 1px solid var(--primary)
}

.pagiset.pagiset-assem.assem-round .pagiset-list {
    border-radius: .4rem
}

.pagiset.pagiset-assem.assem-circ .pagiset-list {
    border-radius: 4rem
}

.pagiset .pagiset-more {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 5.6rem;
    padding: 0;
    font-size: var(--fs-p1);
    font-weight: 500;
    background-color: var(--body-bg)
}

.pagiset .pagiset-more span {
    display: inline-block;
    line-height: 1;
    margin-right: .4rem
}

.pagiset .pagiset-more::after {
    content: '';
    display: inline-block;
    font-size: var(--fs-h5)
}

.pagiset .pagiset-more.icon-plus::after {
    content: '\e913';
    font-family: var(--ff-ico)
}

.pagiset .pagiset-more.icon-arrow::after {
    content: '\e900';
    font-family: var(--ff-ico)
}


@media (max-width: 992px) {
    .pagiset .pagiset-link {
        width:3.2rem;
        height: 3.2rem
    }

    .pagiset .pagiset-ctrl+.pagiset-ctrl,.pagiset .pagiset-ctrl+.pagiset-list,.pagiset .pagiset-list+.pagiset-ctrl {
        margin-left: .8rem
    }

    .pagiset.pagiset-fract .pagiset-ctrl+.pagiset-ctrl {
        margin-left: .4rem
    }

    .pagiset.pagiset-assem .pagiset-ctrl {
        margin: 0
    }
}

.board-view {
    position:relative
}
.board-view+.board-view {
    margin-top:50px
}
.board-write {
    position:relative
}
.board-blog {
    position:relative
}
.board-gallery {
    position:relative
}
.card-list {
    position:relative;
    display:flex;
    flex-direction:row;
    flex-wrap:wrap
}
.card-list::after {
    content:'';
    display:table;
    clear:both
}
.card-item {
    float:left;
    width:24.5%;
    margin:0 5px 5px 0
}
.card-link {
    transition:.3s;
    border-bottom-left-radius:20px;
    border-bottom-right-radius:20px
}
.card-link:hover {
    box-sizing:border-box;
    box-shadow:10px 5px 5px rgba(0,0,0,.1);
    border-radius:20px
}
.card-link:hover .card-tit {
    color:#0793aa;
    transition:all 1s ease
}
.card-link img {
    box-sizing:border-box;
    overflow:hidden
}
.card-link:hover img {
    transform:scale(1.1);
    transition:all .5s ease;
    box-sizing:border-box;
    overflow:hidden;
    box-sizing:border-box;
    overflow:hidden
}
.card-figure {
    position:relative;
    height:300px;
    overflow:hidden;
    box-sizing:border-box;
    border-top-left-radius:20px;
    border-top-right-radius:20px
}
.card-figure img {
    width:100%;
    height:100%;
    object-fit:cover
}
.card-text {
    padding:20px;
    border-bottom-left-radius:20px;
    border-bottom-right-radius:20px
}
.card-tit {
    line-height:28px;
    font-size:18px;
    font-weight:500;
    color:#222;
    display:block;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    text-overflow:ellipsis
}
.card-foot {
    margin-top:8px;
    display:block;
    font-size:16px;
    color:#666;
    line-height:1.5
}
.card-foot span {
    position:relative;
    display:inline-block;
    margin-right:12px;
    padding-right:12px
}
.card-foot span::before {
    content:'';
    position:absolute;
    top:50%;
    right:0;
    transform:translateY(-50%);
    width:1px;
    height:12px;
    background-color:#ddd
}
.card-foot span:last-child {
    margin-right:0;
    padding-right:0
}
.card-foot span:last-child::before {
    content:none
}
.card-item.end .card-link {
    pointer-events:none
}
.card-item.end .card-figure::before {
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,.5);
    z-index:1
}
.card-item.end .card-figure::after {
    content:'마감되었습니다.';
    display:inline-block;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    z-index:1;
    padding:10px 16px;
    border:1px solid #fff;
    font-size:18px;
    color:#fff;
    border-radius:20px;
    word-break:keep-all;
    text-align:center
}
.card-secret {
    position:relative;
    padding:30px 30px 0
}
.card-secret::after {
    content:'';
    position:absolute;
    top:30px;
    right:30px;
    width:22px;
    height:25px;
    background:url(../icon/ico_lock.png) no-repeat center / cover
}
.card-secret+.card-text {
    padding:20px 30px 35px
}
.card-secret+.card-text .card-tit {
    word-break:keep-all
}
.card-secret+.card-text .card-foot {
    margin-top:15px
}
.blog-list {
    position:relative
}
.blog-item {
    border:1px solid #ddd;
    transition:.3s
}
.blog-item+.blog-item {
    margin-top:30px
}
.blog-item:hover {
    border-color:#222
}
.paginate {
    margin-top:30px
}
.paginate-list {
    display:flex;
    justify-content:center
}
.paginate-item {
    display:flex;
    justify-content:center;
    align-items:center;
    width:40px;
    height:40px;
    font-size:16px;
    color:#999
}
.paginate-item.side {
    background-repeat:no-repeat;
    background-position:center;
    background-size:cover
}
.paginate-item.first {
    margin-right:10px;
    background-image:url(../icon/ico_paginate_first.png);
    background-size:18px;
    border:1px solid #ddd
}
.paginate-item.last {
    margin-left:10px;
    background-image:url(../icon/ico_paginate_last.png);
    background-size:18px;
    border:1px solid #ddd
}
.paginate-item.prev {
    margin-right:12px;
    background-image:url(../icon/ico_paginate_prev.png);
    background-size:18px;
    border:1px solid #ddd
}
.paginate-item.next {
    margin-left:12px;
    background-image:url(../icon/ico_paginate_next.png);
    background-size:18px;
    border:1px solid #ddd
}
.paginate-item.on {
    background-color:#363636;
    color:#fff;
    font-weight:500
}
.tabs {
    display:flex;
    justify-content:center
}
.tabs-item {
    position:relative;
    width:20%;
    height:60px
}
.tabs-item+.tabs-item::before {
    content:'';
    position:absolute;
    top:50%;
    left:0;
    z-index:1;
    transform:translateY(-50%);
    width:1px;
    height:25px;
    background-color:#ddd
}
.tabs-item:nth-last-child(1)+.tabs-item:nth-last-child(1):before {
    content:'';
    position:absolute;
    top:50%;
    left:0;
    z-index:1;
    transform:translateY(-50%);
    width:1px;
    height:25px;
    background-color:#ddd
} 
.tabs-link {
    font-weight:600;
    margin:0 auto;
    display:flex;
    justify-content:center;
    align-items:center;
    width:80%;
    height:100%;
    font-size:18px;
    color:#999;
    text-align:center;
    line-height:1.3
}
.tabs-item.on .tabs-link {
    font-weight:600;
    border-radius:10px;
    color:#0793aa;
    background-color:#f1fdff
}

.tabs-link:hover {
    color:#0793aa;
    background-color:#f1fdff;
    transition:all 1s ease
}
.form-ctrl {
    height:50px;
    padding:0 20px;
    border:1px solid #ddd;
    background-color:#f8f9fb;
    font-size:16px;
    color:#222
}
.form-ctrl:hover {
    border-color:#ddd
}
.form-ctrl:focus {
    border-color:#053677;
    background-color:#fff
}
.form-select {
    position:relative
}
.form-select::after {
    content:'';
    position:absolute;
    top:50%;
    right:20px;
    transform:translateY(-50%) rotate(180deg);
    width:24px;
    height:24px;
    background:url(../icon/ico_history_arrow.png) no-repeat center / contain
}
.form-select .form-ctrl {
    background-color:#fff
}
.form-select .form-ctrl:focus {
    border:1px solid #053677
}
.form-radio {
    display:inline-block
}
.form-radio+.form-radio {
    margin-left:30px
}
.form-textarea {
    height:280px;
    padding:20px;
    border:1px solid #ddd;
    background-color:#f8f9fb;
    font-size:16px;
    color:#222
}
.form-textarea:focus {
    border-color:#053677;
    background-color:#fff;
    outline:none
}
.infobox {
    display:flex;
    align-items:center;
    position:relative;
    padding:30px 40px;
    background-color:#f8f9fb
}
.infobox::after {
    content:'';
    display:table;
    clear:both
}
.infobox-icon {
    position:relative;
    width:100px;
    height:100px;
    background-color:#fff;
    border-radius:50%
}
.infobox-icon::after {
    content:'';
    display:inline-block;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:48px;
    height:48px;
    background-repeat:no-repeat;
    background-position:center;
    background-size:cover
}
.infobox-icon.icon-clock::after {
    background-image:url(../icon/ico_infobox_clock.png)
}
.infobox-icon.icon-center::after {
    background-image:url(../icon/ico_infobox_center.png)
}
.infobox-cont {
    width:calc(100% - 130px);
    margin-left:30px
}
.infobox-tit {
    margin-bottom:20px
}
.textbox {
    padding:40px 50px;
    background-color:#f8f9fb
}
.textbox-item {
    padding-left:10px;
    font-size:18px;
    line-height:1.3;
    color:#666;
    text-indent:-10px;
    word-break:keep-all
}
.textbox-item+.textbox-item {
    margin-top:15px
}
.textbox-item::before {
    content:'-';
    margin-right:5px
}
.guidetable {
    border-top:2px solid #222
}
.guidetable-row {
    display:flex;
    align-items:center;
    border-bottom:1px solid #ddd;
    padding:20px 30px
}
.guidetable-th {
    width:210px;
    font-size:18px;
    font-weight:500;
    line-height:1.5;
    word-break:keep-all
}
.guidetable-td {
    width:calc(100% - 210px)
}
.guidetable-td p {
    font-size:18px;
    color:#666;
    line-height:1.5
}
.guidetable-td p.notice {
    margin-top:5px;
    padding-left:24px;
    text-indent:-24px;
    font-size:14px;
    color:#f54040;
    line-height:18px;
    word-break:keep-all
}
.guidetable-td p.notice::before {
    content:'';
    display:inline-block;
    width:18px;
    height:18px;
    line-height:18px;
    margin-right:6px;
    text-align:center;
    border-radius:50%;
    background:#f54040 url(../icon/ico_notice.png) no-repeat center / 2px 8px;
    color:#fff;
    font-size:12px;
    font-weight:700;
    vertical-align:top
}
.guidebox-tit {
    font-size:22px;
    font-weight:700
}
.guidebox-cont {
    padding:40px 0;
    margin-top:20px;
    border-top:2px solid #222;
    border-bottom:1px solid #ddd
}
.guidebox-progress {
    justify-content:center;
    align-items:flex-start
}
.guidebox-progress li {
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center
}
.guidebox-progress li+li::before {
    content:'';
    display:inline-block;
    position:absolute;
    top:50px;
    left:-50%;
    width:100%;
    height:2px;
    background-image:url(../icon/ico_guidebox_progress_hor.png);
    background-repeat:repeat;
    background-position:center;
    z-index:1
}
.guidebox-progress li+li::after {
    content:'';
    display:inline-block;
    position:absolute;
    top:50px;
    left:-21px;
    transform:translateY(-50%);
    width:32px;
    height:32px;
    background:url(../icon/ico_guidebox_arrow.png) no-repeat center / cover;
    z-index:2
}
.guidebox-text {
    margin-top:20px;
    font-size:18px;
    text-align:center
}
.guidebox-text strong {
    display:block;
    font-weight:500
}
.guidebox-text span {
    display:block;
    margin-top:10px;
    color:#666;
    line-height:1.5
}
.guidebox-icon {
    position:relative;
    width:100px;
    height:100px;
    background-color:#f8f9fb;
    border-radius:50%;
    z-index:2
}
.guidebox-icon::after {
    content:'';
    display:inline-block;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:48px;
    height:48px;
    background-repeat:no-repeat;
    background-position:center;
    background-size:cover
}
.guidebox-icon.icon-certi1::after {
    background-image:url(../icon/ico_guidebox_certi1.png)
}
.guidebox-icon.icon-certi2::after {
    background-image:url(../icon/ico_guidebox_certi2.png)
}
.guidebox-icon.icon-certi3::after {
    background-image:url(../icon/ico_guidebox_certi3.png)
}
.guidebox-icon.icon-hospital::after {
    background-image:url(../icon/ico_guidebox_hospital.png)
}
.subsec {
    position:relative;
    padding:3rem 0;
    margin : 0 auto;
}
.subsec__tit {
    text-align:center;
    word-break:keep-all;
    line-height:1.3
}
.subsec__desc {
    margin-top:20px;
    color:#666;
    text-align:center;
    line-height:1.3;
    word-break:keep-all;
    font-size:2.5rem
}
.subsec__cont {
    margin-top:50px
}
.portcard-N13{
    margin : 0 auto;
}
.com_pho .card-item{
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.com_pho .card-item.visible {
    opacity: 1;
    transform: translateY(0);
  } 
.portcard-N5{
    margin : 0 auto;
    overflow: hidden;
}
.portcard-N5 .container{
    width : 1400px;
    margin : 0 auto;
}
[class^='swiper-button'] {
    width:80px;
    height:80px;
    margin-top:0;
    transform:translateY(-50%);
    top:calc(50% - 34px);
    background-color:#fff;
    box-shadow:0 0 20px 0 rgba(0,0,0,.1);
    transition:.3s;
    border-radius:50%
}

@media all and (max-width:1280px) {
    .portcard-N13 {
        width:100%;
        box-sizing:border-box
    }
    .subsec {
        width:100%;
        margin:0 auto;
        padding : 2rem 0;
    }
    .board-card {
        width:100%;
        box-sizing:border-box
    }
    .card-list{
        justify-content: center;
        padding : 1rem 0;
    }
    .card-item {
        width:48%
    }
    .searchbar {
        display:block
    }
    .searchbar-form {
        margin-top:20px
    }
    .write-item.col {
        width:100%
    }
    .butti-N38 .contents-inner {
        width:100%!important;
        padding:0 3%
    }
}
@media all and (max-width:1280px) {
    .gallery-item {
        width:50%
    }
    .portcard-N5 .container{
        width : 100%;
    }
    .tabs {
        display:flex;
        flex-direction:row;
        justify-content:center
    }
 
    .tabs-item {
        max-width:24%
    }
    .tabs-item.item03 {
        max-width:33.33%
    }
    .tabs-item:nth-child(7)::before,.tabs-item:nth-child(10)::before {
        content:none
    }
    .tabs.tabs-half .tabs-item {
        max-width:50%
    }
}
@media all and (max-width:1024px) {
    .card-item {
        width:50%
    }
    .table th,.table td {
        font-size:15px
    }
    .view-detail span+span {
        margin-left:10px;
        padding-left:10px
    }
    .badge {
        padding:8px 14px
    }
}
@media all and (max-width:768px) {
    html {
        font-size:1.3333vw
    }
    .br_m {
        display:block
    }
    .br_p {
        display:none
    }
    .show_m {
        display:block
    }
    .show_p {
        display:none
    }
    .tit1 {
        font-size:2.8rem
    }
    .tit2 {
        font-size:3.2rem!important
    }
    .txt1 {
        font-size:2.8rem!important
    }
    .txt2 {
        font-size:1.3rem!important
    }
    .lh-txt1 {
        line-height:3.4rem!important
    }
    .lh-txt2 {
        line-height:3.2rem!important
    }

.butti-N38 .table .thead-border-top th.tit{
    padding-left : 0;
}
    .table-wrap .table {
        min-width:200rem
    }
    .board-view+.board-view {
        margin-top:5rem
    }
    .card-list {
        margin:0 auto
    }
    .card-item {
        width:95%;
        margin:10px auto 30px;
        box-sizing:border-box;
        float:none
    }
    .card-figure {
        height:22.3rem;
    }
    .card-text {
        padding:1.5rem
    }
    .card-tit {
        min-height:1rem;
        line-height:2.2rem;
        font-size:1.2rem;
    }
    .card-foot span:last-child {
        font-size:1.2rem
    }
    .card-foot {
        margin-top:1.5rem;
        font-size:2.6rem
    }
    .card-foot span {
        margin-right:2rem;
        padding-right:2rem
    }
    .card-foot span::before {
        height:2rem
    }
    .card-item.end .card-figure::after {
        padding:1.5rem 2.8rem;
        font-size:2.8rem;
        border-radius:3rem
    }
    .card-secret {
        padding:4rem 4rem 0
    }
    .card-secret::after {
        top:4rem;
        right:4rem;
        width:3.4rem;
        height:3.8rem
    }
    .card-secret+.card-text {
        padding:3rem 4rem 3.5rem
    }
    .card-secret+.card-text .card-foot {
        margin-top:2.5rem
    }
    .blog-item+.blog-item {
        margin-top:3rem
    }
    .gallery-list {
        margin:0 -4rem
    }
    .gallery-item {
        width:100%;
        padding:0 4rem;
        margin-bottom:3rem
    }
    .gallery-figure {
        height:43.6rem
    }
    .gallery-text {
        padding:0 4rem 4rem
    }
    .gallery-tit {
        font-size:4.2rem
    }
    .gallery-desc {
        font-size:3.2rem
    }
    .view-tit {
        padding:3rem;
        font-size:3.2rem
    }
    .view-tit.view-secret {
        padding:3rem
    }
    .view-tit.view-secret::after {
        margin-left:.6rem;
        width:3.4rem;
        height:3.8rem
    }
    .view-tit.view-secret .badge {
        margin-right:0;
        margin-bottom:3rem
    }
    .view-detail {
        display:block;
        padding:3rem
    }
    .view-detail span {
        font-size:2.6rem
    }
    .view-detail span+span {
        margin-left:2rem;
        padding-left:2rem
    }
    .sebsc_box{
        margin-bottom: 1.3rem;
    }
    .view-detail span+span::before {
        height:2rem
    }
    .view-detail span strong {
        margin-right:1.2rem
    }
    .view-info+.view-info {
        margin-top:2rem
    }
    .view-body {
        padding:3.8rem 3rem;
        font-size:2.6rem
    }
    .view-way {
        padding:2.6rem 3rem
    }
    .view-way strong {
        width:11rem;
        font-size:2.6rem;
        margin-right:3rem;
        padding-left:3.4rem
    }
    .view-way span {
        width:calc(100% - 14rem);
        font-size:2.6rem
    }
    .view-way strong::before {
        width:18px;
        height:18px
    }
    .view-attach {
        padding:2rem 3rem
    }
    .view-attach strong,.view-attach a {
        font-size:2.6rem
    }
    .view-attach strong {
        margin-right:2.8rem
    }
    .view-attach a {
        padding:1.5rem 2.8rem
    }
    .view-attach a span {
        max-width:20rem;
        margin-left:1rem;
        margin-right:3rem
    }
    .view-attach a::before {
        width:3.3rem;
        height:3.6rem
    }
    .view-attach a::after {
        width:3.7rem;
        height:2.8rem
    }
    .write-item {
        display:block;
        padding:3rem 2rem
    }
    .write-label {
        width:100%;
        font-size:2.8rem;
        padding-top:0
    }
    .write-group {
        width:100%;
        margin-top:2rem
    }
    .badge {
        padding:1.4rem 2.4rem;
        font-size:2.4rem
    }
    .badge.badge-lg {
        padding:1.6rem 2.6rem;
        font-size:2.6rem
    }
    .paginate {
        margin-top:4rem
    }
    .butti-N38 .contents-inner{
        padding : 3rem 2rem 0 ;
    }
    .butti-N38 .tableset-inner{
        overflow: hidden;
    }
    .butti-N38 .tableset .tableset-table{
        overflow: hidden;
        box-sizing: border-box !important;
        width : 100% !important;
    }
        .butti-N38 .table tr,
           .butti-N38 .table td {
            display: flex;
            flex-direction: row;
            width : 100%;
            box-sizing: border-box;
            justify-content: space-between;
        }
   .butti-N38 .table tr .tit{
    width : 60% !important;
    overflow: hidden;
    box-sizing: border-box;
                }
        .butti-N38 .table tr, .butti-N38 .table td{
            width : 100%;
            overflow: hidden;
        }
                
.butti-N38 .table tr .last-child{
    width : 50% !important;
    text-align: center !important;
    display: inline;
    min-width: 0 !important;
}
    .paginate-item {
        width:2rem;
        height:2rem;
        font-size:1rem;
    }
    .paginate-item.first {
        margin-right:1rem
    }
    .paginate-item.last {
        margin-left:1rem
    }
    .paginate-item.prev {
        margin-right:2rem
    }
    .paginate-item.next {
        margin-left:2rem
    }
    .th-layout-main {
        margin:100px auto 80px
    }
    .tabs-item+.tabs-item::before {
        height:3rem;
    }
    .tabs-link {
        font-size:1rem;
    }
    .tabs+.searchbar {
        margin-top:6rem
    }

    .infobox {
        padding:4rem
    }
    .infobox-icon {
        width:14rem;
        height:14rem
    }
    .infobox-icon::after {
        width:6.4rem;
        height:6.4rem
    }
    .infobox-cont {
        width:calc(100% - 18rem);
        margin-left:4rem
    }
    .infobox-tit {
        margin-bottom:2rem
    }
    .textbox {
        padding:5rem 3rem
    }
    .textbox-item {
        padding-left:2rem;
        font-size:2.8rem;
        text-indent:-2rem
    }
    .textbox-item+.textbox-item {
        margin-top:2.5rem
    }
    .textbox-item::before {
        margin-right:1rem
    }
    .guidetable-row {
        padding:3rem 0
    }
    .guidetable-th {
        width:20rem;
        font-size:2.8rem
    }
    .guidetable-td {
        width:calc(100% - 20rem)
    }
    .guidetable-td p {
        font-size:2.8rem
    }
    .guidetable-td p.notice {
        margin-top:1rem;
        padding-left:4rem;
        text-indent:-4rem;
        font-size:2.4rem;
        line-height:3rem
    }
    .guidetable-td p.notice::before {
        width:3rem;
        height:3rem;
        line-height:3rem;
        margin-right:1rem;
        background-size:.4rem 1.4rem
    }
    .guidebox-tit {
        font-size:3.2rem
    }
    .guidebox-cont {
        padding:4rem 0;
        margin-top:3rem
    }
    .guidebox-progress {
        display:block
    }
    .guidebox-progress li {
        width:100%;
        ;
        flex-direction:row
    }
    .guidebox-progress li+li {
        margin-top:8rem;
        margin-left:0!important
    }
    .guidebox-progress li+li::before {
        top:-100%;
        left:7rem;
        width:2px;
        height:100%;
        background-image:url(../icon/ico_guidebox_progress_ver.png)
    }
    .guidebox-progress li+li::after {
        top:-6rem;
        left:5rem;
        width:4rem;
        height:4rem;
        transform:translateY(0) rotate(90deg)
    }
    .guidebox-text {
        margin-top:0;
        margin-left:4rem;
        font-size:2.8rem;
        text-align:left
    }
    .guidebox-text span {
        margin-top:1rem
    }
    .guidebox-icon {
        width:14rem;
        height:14rem
    }
    .guidebox-icon::after {
        width:6.4rem;
        height:6.4rem
    }
    .subsec {
        padding:0
    }
    .subsec__desc {
        margin-top:3rem
    }
    .subsec__cont {
        margin-top:6rem
    }
   
    .tabs-item {
        width:30%
    }
    .butti-N38 .contents-inner{
        width : 100% !important;
        box-sizing: border-box;
        overflow: hidden;
    }
    .butti-N38 .contents-result {
        font-size:1.3rem!important
    }
    .thead-border-top .col {
        text-align:left;
        padding:0 30px
    }
    .butti-N38 .table tbody td.tit {
        margin-left : 0.5rem;
        width : 60% !important;
    }
        .butti-N38 .tableset .tableset-table tbody td{
        padding : 1rem 0;
        
        overflow: hidden;
    }
    .butti-N38 .tableset .tableset-table tbody td.date {
        width:auto;
        min-width:auto;

    }
}
.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within) {
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important
}

.th-layout-main {
    margin:160px auto 80px
}
.th-layout-inner {
    margin:0 auto;
    box-sizing:border-box
}
.sebsc_box {
    text-align:center;
    margin-bottom:105px
}
.sebsec_txt3 {
    font-weight:500;
    margin-bottom:50px;
    font-size:1.5rem;
    color:#5a5656
}
.butti-N38 {
    overflow:hidden;
    margin-top:65px
}
.butti-N38 .contents-inner {
    width:1400px;
    box-sizing:border-box;
    margin:0 auto
}
thead.thead-border-top {
    background-color:#f1fdff;
    border-bottom : 1px solid #ddd;
}
.thead-border-top tr{
    border-bottom: none;
}
.butti-N38 .contents-search {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    margin-bottom:2rem
}
.butti-N38 .contents-result {
    font-size:var(--fs-p2);
    font-weight:400;
    color:var(--text-color4)
}
.butti-N38 .contents-result span {
    font-weight:600;
    color:var(--text-color1)
}
.butti-N38 .contents-search .inputset {
    width:100%;
    max-width:40rem
}
.butti-N38 table {
    table-layout:fixed
}
.butti-N38 .tableset .tableset-table {
    width:100%
}
.butti-N38 .table tr .tit{
    padding-left : 5rem;
}
.butti-N38 .table tr .number {
    min-width:10rem;
    width:10rem;
    text-align: center;
}
.butti-N38 .table tr .last-child {
    min-width:12rem;
    width:12rem
}
.butti-N38 .table tbody tr {
    transition:0.3s;
    background-color:transparent;
    cursor:pointer
}
.butti-N38 .tableset .tableset-table>tbody>*>* {
    font-weight:500;
    color:var(--text-color1)
}
.butti-N38 .table tbody tr:hover {
    background-color:var(--highlight-bg2)
}
.butti-N38 .table .thead-border-top th.tit {
    text-align:center;
    color:var(--text-color1)
}
.butti-N38 .table tbody td.tit a {
    overflow:hidden;
    display:block;
    text-align:left;
    white-space:nowrap;
    text-overflow:ellipsis;
    color:var(--text-color1);
    cursor:pointer;
    font-weight: 400;
}
.butti-N38 .table tbody tr:hover {
    background-color:#eee;
    transition:all 0.5s ease
}
.butti-N38 .tableset .tableset-table tbody td.date {
    color:var(--text-color3);
    font-weight:400;
    text-align: center;
}
.butti-N38 .pagiset {
    margin-top:8rem
}
@media (max-width:992px) {
    .tabs{

    }
    .butti-N38 .contents-search {
        flex-direction:column-reverse;
        align-items:flex-start;
        width:100%
    }
    .butti-N38 .contents-search .inputset {
        max-width:100%;
        margin-bottom:2rem
    }
    .butti-N38 .contents-search .inputset .inputset-icon.icon-right {
        right:0
    }
    .butti-N38 table {
        table-layout:auto
    }
    .butti-N38 .table tr .number {
        display:none
    }

    .butti-N38 .table tbody td.tit {
        width:100%
    }
    .butti-N38 .pagiset {
        margin-top:4rem
    }
}
.tableset-inner a {
    cursor:pointer
}
.tableset-table .impo {
    color:#f54040!important
}