@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.8/dist/web/variable/pretendardvariable-dynamic-subset.css");

@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
@import url("https://cdn.jsdelivr.net/gh/sun-typeface/SUIT@2/fonts/static/woff2/SUIT.css");
:root {
    --container-padding: 40px;
    --hd: 90px;
    --section-space: 200px;
    --gap: 4px;
    --basic: #333;
    --primary: #0066B3;
    --gray: #EFEFEF;
    --secondary: #f1f7ff;
    --gutters-margin: -12px
}

@media(max-width: 1199.98px) {
    :root {--section-space: 80px}
}

@media(max-width: 991.98px) {
    :root {
        --container-padding: 24px;
        --gutters-margin: -6px
    }
}

@media(max-width: 767.98px) {
    :root {
        --container-padding: 16px;
        --hd: 60px;
        --section-space: 50px;
        --gap: 2px;
        --gutters-margin: -4px
    }
}

html {font-size: 18px}

@media (max-width: 1439.98px) {
  html {font-size:16px}
}

body,p,span,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,table,th,td,form,fieldset,legend,input,textarea,button,select,label {margin: 0; padding: 0; font-family: "Pretendard",-apple-system,sans-serif; color: inherit; outline: 0}

body {color: var(--basic); letter-spacing: -0.04em}
body * {-webkit-box-sizing: border-box; box-sizing: border-box;}

caption, legend {overflow: hidden; position: relative; width: 0; height: 0; margin: 0; padding: 0; line-height: 0;}
h1,h2,h3,h4,.fs-1,.fs-2,.fs-3,.fs-4,.fs-5,.fs-6,.fs-7 {font-weight: 700; line-height: 1.5; color: #000; word-break: keep-all;}
li {list-style: none; }
u {text-decoration-thickness: 1px; text-underline-position: under}
b,strong {font-weight: 700}

table {border-spacing: 0; border-collapse: collapse; width:100%;}
th, label {font-weight: normal; }
address, em {font-style: normal}

figure {margin:0; padding:0;}
figure img {width:100%}
img {vertical-align: top; max-width: 100%; -webkit-user-drag: none; -khtml-user-drag: none; -moz-user-drag: none; -o-user-drag: none; user-drag: none; user-select: none;}

a {color: inherit; -webkit-transition: all .4s; transition: all .4s; text-decoration: none;}
a:hover,a:focus,a:active {color: inherit; text-decoration: none}
button {user-select: none; user-drag: none; cursor: pointer; border: 0; -webkit-transition: all .4s; transition: all .4s; background: none}
button:focus, input:focus {outline: none;}

input {border: none; background: none; }
input, label {cursor: pointer; }
input[type='checkbox'],
input[type='radio'] {-webkit-appearance: none; -moz-appearance: none; appearance: none; }
input[type='checkbox']:disabled,
input[type='radio']:disabled,
button:disabled {cursor: no-drop; }
input[type='checkbox']:disabled + label,
input[type='radio']:disabled + label {cursor: no-drop; }
input::-ms-clear {display: none;}
input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button {-webkit-appearance: none; -moz-appearance: none; appearance: none; }
textarea {resize: none; font-size: 1rem; outline: 0}
textarea:placeholder {color: #6b6b6b; }
textarea:focus {outline: none; }

.btn {padding:15px 50px; font-size:16px; font-weight:600; text-align:center; display:inline-block;}
.btn-normal {color: #ffffff; background-color: #333;}
.btn-primary {color: #fff; background-color: #0066B3;}


input[type='text'], input[type='password'] {padding-left: 20px;
	font-size: 16px;
	border: 1px solid #d5d5d5;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

input[type='number'] {
	padding-left: 20px;
	font-size: 16px;
	border: 1px solid #d5d5d5;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

input[type='text']:placeholder, input[type='password']:placeholder {color: #999;}
input[type='text']:focus, input[type='password']:focus {border-color:inherit; box-shadow: none;}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {box-shadow: none; background:none; transition: background-color 5000s ease-in-out 0s;}

.a11y { position: absolute !important; overflow: hidden;  height: 1px; width: 1px; clip: rect(1px, 1px, 1px, 1px);}
.hide, .sr-only, .skip, .blind {position: absolute;  width: 1px;  height: 1px;  padding: 0;  margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0);  clip-path: polygon(0 0, 0 0, 0 0);   border: 0;}
.notxt {font-size:0;}

@media only screen and (max-width: 900px) {	
	.btn {font-size:13px}	
	.only-title {padding-bottom: 41px;line-height: 32px;font-size: 24px;}
	input[type='text'], input[type='password'] {font-size: 14px;}
	.only-title::before {width: 40px; height: 40px; margin-right: 9px;}
}

.main-title-1 {
    font-size: max(2.1rem,1.6667vw);
    font-weight: 500;
    line-height: 1.3
}

.main-title-2 {
    font-size: max(1.6rem,1.25vw);
    font-weight: 500;
    line-height: 1.45
}

.main-title-3 {
    font-size: max(1.6rem,1.1979vw);
    font-weight: 500;
    line-height: 1.3
}

.main-title-4 {
    font-size: max(1.5rem,1.1979vw);
    letter-spacing: -0.01em;
    line-height: 1.3
}

.main-title-5 {
    font-size: max(1.5rem,1.1458vw);
    letter-spacing: -0.01em;
    font-weight: 500;
    line-height: 1.3
}
.main-date-1 {
    font-size: max(1.1rem,.7292vw);
    font-weight: 500
}

.mt-30 {margin-top: 1.6667rem !important}
.mt-36 {margin-top: 2rem !important}
.mt-48 {margin-top: 2.66667rem !important}
.mt-72 {margin-top: 4rem !important}
.mt-90 {margin-top: 5rem !important}
.mt-108 {margin-top: 6rem !important}

.text-base {font-size: 1rem !important}
.text-body {color: #333 !important}
.text-primary,a.text-primary:focus,a.text-primary:hover {color: var(--primary) !important}
.text-secondary {color: #12195a !important}
.text-gray {color: #666 !important}
.text-light {color: #999 !important}
.text-light2 {color: #888 !important}
.text-dark {color: #000 !important}
.bg-light {background-color: #f6f6f6 !important}
.bg-primary {background-color: var(--primary) !important}
.bg-white {background-color: #fff !important}
.bg-ylw {background-color: var(--secondary) !important}
.bg-dark {background-color: #000 !important}
.bg-gray {background-color: #666 !important}
.bg-beige {background-color: #eee5df !important}
.bg-efefef {background-color: #efefef !important}
.bg-lgray {background-color:#F1F3F8 !important}

.text-clamp {display: -webkit-box !important; overflow: hidden; max-height: 3em; line-height: 1.5em !important; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; word-wrap: break-word; word-break: break-all !important;  white-space: normal !important;   height: auto}

.overflow-visible {overflow: visible !important}
.gap-0 {gap: 0 !important}

details {position: relative}
summary:focus {outline: none}
caption {font: 0/0 a; color: rgba(0,0,0,0); text-shadow: none; background-color: rgba(0,0,0,0); border: 0}

.icon {display: inline-block; background-size: contain; background-position: center center;background-repeat: no-repeat; text-indent: -9999px; vertical-align: middle; width: 1.3333333333rem; height: 1.3333333333rem; overflow: hidden
}

.icon-srch {background-image: url(../img/srch.svg)}
.icon-link {width: 1.1111111111rem; height: 1.1111111111rem; background-image: url(../img/link.svg)}

.btn .icon {width: 16px; height: 16px}
.btn-sm { padding: .5em 1.33334rem; font-size: .8889rem; min-width: 7.2222222222rem; border-radius: 2em; min-height: 1rem; border:1px solid #e9e9e9}
.btn-lg {padding: 1rem 2.2222222222rem; font-size: 1.1111111111rem; line-height: 1.6; min-width: 13.33333333333rem; border-radius: 2em; gap: .8888888889rem}

@media(max-width: 767.98px) {
    .btn-sm {font-size:14px}
    .btn-lg {padding:.8888888889rem 2.2222222222rem}
}

.btn-lg .icon {width: 1em; height: 1em}
.btn:hover,.btn:focus {
    background: var(--primary) !important;
    color: #fff !important
}

.btn:active {
    background: var(--primary) !important;
    color: #fff !important
}
/*
.btn-outline {
    background: none;
    border-color: #000;
    color: #000 !important;
    background: #fff
}

.btn-outline .icon {
    -webkit-filter: brightness(0) contrast(100);
    filter: brightness(0) contrast(100)
}

.btn-outline:hover .icon,.btn-outline:active .icon {
    -webkit-filter: none;
    filter: none
}

.btn-wh {
    background: #fff;
    border-color: #fff;
    color: #000 !important
}

.btn-wh .icon {
    -webkit-filter: brightness(0) contrast(100);
    filter: brightness(0) contrast(100)
}


@media(max-width: 991.98px) {
    .btn {min-width:0 !important}
}

.bt-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: .4444444444rem .8888888889rem
}

.bt-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 56px;
    gap: 1.3333333333rem
}

.bt-wrap.row {
    gap: 0;
    row-gap: calc(var(--gutters-margin)*-2)
}

.bt-wrap.row .btn-lg {
    min-width: 0 !important;
    width: 100%;
    white-space: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media(min-width: 992px) {
    .bt-wrap.wide .btn-lg,.bt-wrap.row .btn-lg {
        padding-top:1.3333333333rem;
        padding-bottom: 1.3333333333rem
    }

    .bt-wrap.wide:has(.btn-lg:nth-child(2):last-child) .btn-lg {
        min-width: 20rem
    }
}

@media(max-width: 767.98px) {
    .bt-wrap {
        margin-top:32px;
        gap: 10px
    }
}

@media(max-width: 575.98px) {
    .bt-wrap .btn:first-child:last-child {
        width:100%
    }
}

.btn-circle {
    --size: 60px;
    width: var(--size);
    height: var(--size);
    border-radius: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: #000;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

@media(max-width: 991.98px) {
    .btn-circle {
        --size: 32px
    }
}

.badge {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    vertical-align: top;
    background: #fff;
    border-radius: 8px;
    padding: 7px 16px;
    font-size: 16px;
    font-weight: 400;
    gap: 8px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: 1px solid rgba(0,0,0,0)
}

.badge.gray {
    background: #f1f1f1;
    border-radius: 2rem
}

.badge.gray img {
    height: 1rem
}

.badge.primary {
    background: var(--primary);
    color: #fff
}

.badge.primary-outline {
    border-color: var(--primary);
    color: var(--primary);
    background: #fff
}

.badge.dark {
    background: #333;
    color: #fff
}

@media(max-width: 767.98px) {
    .badge {
        font-size:12px;
        gap: 4px
    }
}
*/

.form-control {font-size: 1rem; border-color: #ddd; color: #666; padding: 1.1rem 4.5rem 1.2rem 1.8rem}

.form-control[readonly] {background: #f6f6f6}
.form-control::-webkit-input-placeholder {color: #ccc}
.form-control::-moz-placeholder {color: #ccc}
.form-control:-ms-input-placeholder {color: #ccc}
.form-control::-ms-input-placeholder {color: #ccc}
.form-control::placeholder,.form-control.placeholder {color: #ccc}
.login .form-control {height: 3.5555555556rem;}

@media(max-width: 767.98px) {
    .form-control {font-size:16px}
}

.form-select {
    height: 2.8888888889rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url(../img/select.svg) no-repeat center right 1rem/0.8888888889rem auto;
    padding-right: 2.2222222222rem
}

.form-custom {
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.1111111111rem;
    color: #666;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: .8888888889rem
}

.form-custom:has([type=checkbox]) {
    gap: .4444444444rem;
    color: #000
}

@media(max-width: 575.98px) {
    .form-custom {
        gap:.4444444444rem
    }
}

.form-custom input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 16px;
    height: 16px;
    border-radius: 100%;
    border: 1px solid #ccc;
    -ms-flex-item-align: center;
    align-self: center
}

.form-custom input:checked {
    border: 0;
    background: url(../img/radio.svg) no-repeat
}

.form-custom input[type=checkbox] {
    border-radius: 0
}

.form-custom input[type=checkbox]:checked {
    background: var(--primary) url(../img/chk.svg) no-repeat center/100% auto
}

.form-inline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5555555556rem 2.2222222222rem
}

@media(max-width: 767.98px) {
    .form-inline {
        gap:.5555555556rem 1.3333333333rem
    }
}

.form-group {
    margin-bottom: 24px
}

.form-group:last-child {
    margin-bottom: 0
}

.form-group.row {
    --gutters-margin: -5px;
    row-gap: calc(var(--gutters-margin)*-2)
}

.form-btm {
    margin: 1.6666666667rem 0 5.5555555556rem;
    line-height: 1.6
}

.form-btm label {
    margin-bottom: .8333333333rem
}

textarea.form-control {
    height: 80vw;
    max-height: 640px;
    border-radius: 1.3333333333rem;
    padding: 1.3333333333rem
}

sup.text-primary {
    font-weight: 700;
    font-size: .8888888889rem;
    top: 0
}

.fieldset .fs-4 {
    padding-bottom: .8888888889rem;
    border-bottom: 2px solid #000;
    margin-bottom: 2.2222222222rem
}

.fieldset .tb {
    border-top: 0
}

.fieldset .col-sm-auto {
    min-width: 15.1666666667rem
}

@media(max-width: 1199.98px) {
    .fieldset .col-sm-auto {
        min-width:11.1111111111rem
    }
}

.fieldset .col-sm-auto sup {
    top: -0.4em
}

.fieldset+.fieldset {
    margin-top: calc(var(--gap)*25)
}

@media(min-width: 992px) {
    .fieldset~.bt-wrap {
        margin-top:4.4444444444rem
    }
}

.fieldset .input-group {
    gap: 8px
}

.fieldset .btn-circle {
    --size: 3.5555555556rem
}

.input-group {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px
}

.input-group input[type=text] {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
}

@media(max-width: 575.98px) {
    .input-group {gap:8px}
}

.srch-group {position:relative; max-width: 300px; margin: 0 auto}
.srch-group input[type=text] {background: #fff; color: #000; padding:.555rem 2.7777rem .555rem 1rem; height:auto;}
.srch-group .btn-circle {--size: 64px}
.srch-group .srch-btn {position: absolute; top: 50%; right: 1.111111rem; width: 1.333rem; height: 1.333rem; background: url(../img/search.svg) no-repeat left center / 100%; cursor: pointer; transform: translateY(-.6666rem);}

.year-group {position:relative; min-width: 130px; background: #fff; border: 1px solid #d5d5d5;  border-radius: 10px; padding: .299rem .7rem;}
.year-group select {font-size: 16px; border: none; color: #555; width: 100px;  line-height: 2; height: 2.07rem;}

@media(max-width: 991.98px) {
    .srch-group .btn-circle { --size: 40px; }
}
@media(max-width: 767.98px) {
    .year-group select {font-size: 14px; height:1.83rem;}
}
@media(max-width: 575.98px) {
    .srch-group {max-width: 210px;}   
}

.modal-dialog {
    max-width: 1080px
}

.modal-dialog.modal-sm {
    max-width: 450px
}

.modal-dialog.modal-md {
    max-width: 750px
}

.modal-content {
    padding: 1.7777777778rem;
    border: 0;
    border-radius: 1.3333333333rem;
    position: relative
}

@media(max-width: 575.98px) {
    .modal-content {
        padding:16px
    }
}

.modal-content .icon-modal-close {
    position: absolute;
    top: .8888888889rem;
    right: .8888888889rem;
    background-image: url(../img/icon-close-gray.svg);
    z-index: 10
}

.modal-header {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 0 1.3333333333rem;
    margin-bottom: 1.7777777778rem
}

@media(max-width: 575.98px) {
    .modal-header {
        padding-bottom:16px;
        margin-bottom: 16px
    }
}

.modal-body {
    padding: 0
}

.tb {
    border-top: 2px solid #111;
    border-bottom: 1px solid #111
}

.tb tr>* {
    padding: .8888888889rem;
    border-top: 1px solid #e5e5e5;
    border-right: 1px solid #e5e5e5
}

.tb tr>*:last-child {
    border-right: 0
}

.tb tr>*[rowspan]:not(:first-child) {
    border-left: 1px solid #e5e5e5
}

@media(max-width: 575.98px) {
    .tb tr>* {
        padding:8px;
        font-size: 14px
    }
}

.tb thead th {
    font-weight: 500;
    border-bottom: 1px solid #000;
    color: #111;
    line-height: 1.2
}

.tb .bg-ylw {
    font-weight: 700;
    color: #111
}

.table-responsive {
    overflow-x: auto
}

@media(max-width: 767.98px) {
    .table-responsive .tb {
        white-space:nowrap
    }
}

.dropdown-menu {
    background: #fff;
    border: 0;
    border-radius: 1.3333333333rem;
    -webkit-box-shadow: 0px 0px 16px 0px rgba(0,0,0,.1);
    box-shadow: 0px 0px 16px 0px rgba(0,0,0,.1);
    padding: 20px;
    max-width: 12.4444444444rem;
    max-height: 30vh;
    overflow-y: auto;
    color: #333
}

.dropdown-menu li+li {
    margin-top: .4444444444rem
}

.dropdown-menu .active {
    font-weight: 700;
    color: #000
}

.accordion-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 1.7777777778rem 0;
    border-bottom: 1px solid #e5e5e5
}

.accordion-title::after {
    content: "";
    width: 1.7777777778rem;
    height: 1.7777777778rem;
    background: url(../img/toggle.svg) no-repeat center/contain;
    margin-left: auto;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

@media(max-width: 767.98px) {
    .accordion-title::after {width:20px; width: 20px}
}

details[open] .accordion-title::after {
    -webkit-transform: scaleY(-1);
    transform: scaleY(-1)
}

@media(max-width: 767.98px) {
    .accordion-title {padding:16px 0}
}

.accordion-content {padding: 2.2222222222rem 0 .8888888889rem; line-height: 1.6}



#wrap {overflow-x: clip}

.container-min {
    max-width: calc(1200px + var(--container-padding)*2);
    padding-left: var(--container-padding);
    padding-right: var(--container-padding);
}

.container {
    max-width: calc(1440px + var(--container-padding)*2);
    padding-left: var(--container-padding);
    padding-right: var(--container-padding);
}

.container-fluid {
    max-width: calc(1620px + var(--container-padding)*2);
    padding-left: var(--container-padding);
    padding-right: var(--container-padding);
}

.container-full {
    max-width: calc(2560px + var(--container-padding)*2);
    padding-left: var(--container-padding);
    padding-right: var(--container-padding);
	width: 100%;
    margin-right: auto;
    margin-left: auto;
}

body[data-scroll-dir=down] .hd {transform: translate3d(0, -90px, 0);}
body[data-scroll-dir=up] .hd, body[data-scroll-dir=down] .hd {height: 90px}

.hd {position: sticky; top: 0; width: 100%; z-index: 5001;  transition: .4s transform, .1s height, .4s padding-bottom, .2s background-color .5s, .3s opacity, top .6s;}
.hd .hd_wrap {z-index:302; position:relative; background:#fff;}
.hd > .container {display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; justify-content: space-between; height: var(--hd)}
.hd .logo {line-height: 0; -ms-flex-negative: 0; flex-shrink: 0}
.hd .logo img {height:60px}
.hd .logo .mo {display: none}

@media(max-width: 1199.98px) {
    .hd .logo {margin-right:auto}
}

@media(max-width: 767.98px) {
    body[data-scroll-dir=down] .hd {transform: translate3d(0, -60px, 0);}
    body[data-scroll-dir=up] .hd, body[data-scroll-dir=down] .hd {height: 60px}
    .hd .logo img {height:40px}
}

.hd a:hover,.hd a:focus {color: var(--primary)}
.hd-side {display: -webkit-box; display: -ms-flexbox; display: flex; gap: 12px; -ms-flex-negative: 0;
flex-shrink: 0; margin-left: 16px;align-items: center;}

@media(max-width: 1399.98px) {
    .hd-side {gap:8px}
}

@media(max-width: 767.98px) {
    .hd-side {margin-left:auto}
}

.hd-side .bt {width: 40px; height: 60px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}
.hd-side .bt-sitemap {background: url(../img/sitemap.svg) no-repeat center;}
.hd-side .bt-search {background: url(../img/search.svg) no-repeat center;}

@media(max-width: 767.98px) {
    .hd-side .bt {width:32px; height: 32px}
}


body.sitemap-open {overflow: hidden}
body.sitemap-open .bt-sitemap {background-image: url(../img/sitemap_on.svg)}
body.search-open .bt-search {background-image: url(../img/search_on.svg)}
body.sitemap-open .bt-logout, body.sitemap-open .bt-login {display: none}	
body.sitemap-open .gnb {display: none}

.gnb {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: max(1.05rem, 1.0417vw); gap: 40px; display: flex}
.gnb a:not(.depth-banner) {font-family: "SUIT","Pretendard",sans-serif}

.gnb>li>a {display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center;  font-weight: 700}
.gnb>li>a.on {color: var(--primary);}
.gnb:not(:hover) .active>a {color: var(--primary); border-color: var(--primary)}

@media(min-width: 1700px) {
    .gnb {gap:90px}
}

@media(min-width: 1520px) {
	.gnb {gap:80px}
}

@media(max-width: 1199.98px) {
    .gnb {display:none}
}


.gnb .d1-item {position: relative}
.gnb .d1-link {display: block; cursor: pointer; padding: calc(14 / 16 * 1em) calc(20 / 16 * 1em); font-weight: 600; font-size:1.1rem;}
.gnb .d2-wrap {position: absolute; bottom: 5%; left: 50%; transform: translate3d(-50%, calc(100% + (max(1rem, 0.8334vw) * (5 / 16))), 0); padding: calc(max(1rem, 0.8334vw) * (10 / 15)); background-color: #fff; box-shadow: 0px 2px 4px rgba(0,0,0,.1); border-radius: calc(max(1rem, 0.8334vw) * (16 / 16)); font-size:1.1rem; transition: all .3s;}
.gnb .d2-wrap:not(.active) {display:none;}
.gnb .d2-item+.d2-item {margin-top: calc(max(1rem, 0.8334vw) * (2 / 16))}
.gnb .d2-link {width: 100%; padding: calc(8 / 16 * 1em) calc(16 / 16 * 1em) calc(8 / 16 * 1em) calc(12 / 16 * 1em); line-height: 1.5; font-size: 80%; font-weight: 600; white-space: nowrap; transition: all .3s; border-radius: calc(max(1rem, 0.8334vw) * (8 / 16)); letter-spacing: -0.02em}
.gnb .d1-item.focus .d2-wrap {visibility: visible; opacity: 1}
.gnb .d1-item.active>.d1-link, .gnb .d2-item.active>.d2-link {color: #1454ff}

#sitemap {position: fixed; top: var(--hd); border-top: 1px solid #e5e5e5; bottom: 0; left: 0; right: 0; overflow-y: auto; background: #fff; z-index: 500; display: none;}
#sitemap .sitemap-bg {width: 300px; background:url(../img/sitemap_bg.jpg) no-repeat; background-size:cover; border-radius:30px;}
#sitemap .container {padding: 4rem; display:flex; gap:50px;}
body:has(.topbanner.visible):not(.is-scroll) #sitemap {top: calc(var(--hd) + 100px - var(--hd-offset))}

.sitemap-depth {display:flex; flex-direction: column; gap:0; flex:1 auto; gap:10px;}
.sitemap-depth > li {font-size:1.1rem; padding: 2rem 0; border-bottom: 1px solid #eee; color: #888;}
.sitemap-depth > li > a {display:block; font-size: 1.8rem; color: #000; font-weight:600; margin-bottom:.5rem;}
.sitemap-depth .depth3 {display:flex;}
.sitemap-depth .depth3 li {width:25%; padding:2px 0; position:relative; overflow:hidden;}
.sitemap-depth .depth3 li:before {content: "-"; display:inline-block; color:#838383; padding-right: 8px;}

@media(max-width: 767.98px) {
    body:has(.topbanner.visible):not(.is-scroll) #sitemap {top:calc(var(--hd) + 50px - var(--hd-offset))}
    #sitemap .container {padding:0 1rem; display:block; gap:0;}
    #sitemap .sitemap-bg {display:none;}

    .sitemap-depth > li {padding:1.2rem; border-bottom:1px solid #eee; padding:1rem 1.2rem;}
    .sitemap-depth > li > a {font-size:1.2rem; margin-bottom:0;position:relative;transition: transform .7s ease;}
    .sitemap-depth > li > a.on {margin-bottom:.5rem}
    .sitemap-depth > li > a:after {content: ""; position: absolute;   width: 20px; height: 20px; background: url(../img/slide-next.svg) no-repeat; right: 0; top: 3px; background-size: contain;}
    .sitemap-depth > li > a.on:after {transform: rotate(90deg);}
    .sitemap-depth .depth3 {display: none;}
    .sitemap-depth .depth3.active {display:block;}
    .sitemap-depth .depth3 li {width:100%; font-size: 1rem;}
}

@media(max-width: 991.98px) {
    #sitemap {padding:16px 0}
}


/*  상단검색  */
.hd_search {position: fixed; top: var(--hd); left: 0; width: 100%; padding: calc(max(1rem, 0.8334vw) * (20 / 16)) 0 calc(max(1rem, 0.8334vw) * (50 / 16)); background-color: #fff; transform: translateY(-100%); transition: transform .7s ease; z-index: -1; opacity: 0;}
.hd_search .search-wrap {width: 90%; margin: 0 auto;}
.hd_search.show {transform: translateY(0); z-index: 301; opacity: 1;}
.hd_search .input-group {border-bottom: 2px solid #000;  }
.hd_search input {border: none; border-radius: 0;outline:none;}
.hd_search input:focus {outline:none;}
.hd_back {visibility: hidden; position: fixed; top: 0; left: 0; width: 100%; height: 120vh; background-color: rgba(0, 0, 0, .5); opacity: 0; transition: all .3s ease; z-index: 299;}
.hd_back.show {visibility: visible; opacity: 1; transition: all .3s ease;}

/* footer */
#footer {background:#303030; padding:0 0 40px; position:relative;}
#footer .ft_top {display:flex;align-items: center; justify-content: space-between; border-bottom: 1px solid #494949; margin-bottom: 20px;}
#footer .ft_top a {display:block;}
#footer .ft_top a img {vertical-align: middle;}
#footer .ft_top > section {display:flex; gap:10px;}
#footer .ft_top .dropup {position:relative; width:200px;}
#footer .ft_top .dropup .dropdown-toggle {display: flex; align-items: center; border-left: 1px solid #494949; border-right: 1px solid #494949; height: 70px; padding: 0 16px; font-size: 15px; font-weight:500; color: #aaa; width: 100%;justify-content: center;}
#footer .ft_top .dropup .dropdown-toggle::after{font-size: 20px;
    transform: scaleX(0.8);}
#footer .ft_top .dropup .dropdown-menu {min-width: 100%;border-radius: 20px;border: 1px solid #eee;box-shadow: none;background: #fff;padding: 14px;font-size: .85em;max-height: 30vh;overflow-y: auto;}
#footer .ft_top .dropup .dropdown-menu > li > a {padding: 5px;color: #555; border-radius: 20px;display: block; white-space: nowrap; line-height: 1.42857143; font-weight: 400;}


#footer .ft_link {display: flex; gap:4px 20px; flex-wrap: wrap;}
#footer .ft_link li a {display:block; color: #FFF; font-size:14px; font-weight: 100; letter-spacing: 0;}
#footer .ft_link li a:hover {font-weight:500}
#footer .ft_link li:first-child a {padding-left:0;}

#footer .ft_add p {font-size:0.85rem; color: #aaa; margin:20px 0 0; line-height:1.8; letter-spacing:0;}
#footer .ft_add p span {display:block; margin-right:20px; font-weight:300;}
#footer .ft_add p span b {font-weight:600;}
#footer .ft_add address {margin: 15px 0 5px; font-size:13px; color: #9c9c9c; letter-spacing: 0;}
  
@media (max-width: 767.98px) {
	#footer {height:auto;}
	#footer .ft_top {gap:20px; flex-direction:column-reverse;}
	#footer .area img {width:160px;}
    #footer .ft_top > section {width:100%;}
    #footer .ft_top .dropup {width: 100%; margin-top:12px;}
    #footer .ft_top .dropup .dropdown-toggle {border:1px solid #494949; height:40px;}
    #footer .ft_link {margin-bottom:20px;}
	#footer .area .cnt p {margin:20px 0 10px;}
	#footer .area .cnt p span {font-size: 13px;}
	#footer .area .cnt address {font-size: 12px;}
}
  
/* Top - 따라다니는 메뉴 */
.follow-menu {
	position: fixed;
	bottom: 36px;
	right: 36px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	-webkit-box-shadow: 0px 3px 50px 7px rgba(0, 40, 114, 0.1);
	-moz-box-shadow: 0px 3px 50px 7px rgba(0, 40, 114, 0.1);
	box-shadow: 0px 3px 50px 7px rgba(0, 40, 114, 0.1);
    z-index:99999999;
}

.follow-menu li button {width: 65px; font-weight: 600; font-size:17px; border-radius:10px;}
.follow-menu li button.quick-ask-btn {
	height: 94px;
	padding-top: 55px;
	color: #fff;
	background-color: var(--primary);
	background-image: url("../images/icon/quick-advice-ico.svg");
	background-position: 50% 23px;
}

.follow-menu li button.go-top-btn {
	height: 40px;
	padding-top: 15px;
    color: var(--primary);
    background-color:#fff;
    background-image: url("../img/top.svg");
	background-position: 50% 10px;
	background-repeat:no-repeat;
    text-indent : -99999999px;
}
@media (max-width: 767.98px) {
	.follow-menu {display:none;}
}


@media print {
	.noprint {display: none;}
}



.btn-im {display:inline-block; background:#0066B3; color:#fff; font-size:18px; font-weight:400; padding:12px 20px 12px 30px; border-radius:30px; line-height:1.2}
.btn-im:hover, .btn-im:active {background:#004A80; color:#fff; font-weight:600;}
.btn-line {display:inline-block; background:transparent; border:1px solid #fff; color:#fff; font-size:18px; font-weight:400; padding:10px 20px 10px 30px; border-radius:30px; line-height:1.2}
.btn-line:hover, .btn-line:active {background:#fff; color:#004A80; font-weight:600;}
.btn-im i, .btn-line i {width:26px; height:26px; background:url(./../img/arrow-mid.svg) no-repeat center/contain; margin-left:10px; display:inline-block; vertical-align:middle; margin-top: -3px;}
.btn-line:hover i, .btn-line:active i {background-image: url(./../img/arrow-mid-hit.svg);}