@charset "utf-8";

.header {position: fixed; top: 0; left: 0; width: 100%; z-index: 9999; background-color: rgba(27, 68, 131, 0.8); transition: background 0.3s; min-width: 320px;}
.header__container {height: 120px; display: flex; align-items: center; width: 1640px; max-width: calc(100% - 40px); margin: 0 auto; position: relative; transition: height 0.3s;}
.header__logo a {display: block; color: transparent!important; font-size: 0!important; text-indent: -100vw!important; width: 103px; height: 45px; background: url(../images/common/header_logo_white.png) no-repeat left; margin-right: 105px;}
.gnb {display: flex; height: 100%; margin-right: auto; position: relative;}
.gnb_menu > a {display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; height: 100%; padding: 10px 40px; color: #fff; font-size: 23px; position: relative;}

.gnb__sub {display: none; flex-wrap: nowrap; width: 100%; padding: 0 100vw; position: absolute; top: 100%; left: -100vw; background-color: rgba(255,255,255,0.97); box-sizing: content-box; box-shadow: inset 0 10px 20px rgba(0,0,0,0.1); border-bottom: 1px solid #c2c2c2;}
.gnb__sub ul {display: flex; width: 100%; padding: 40px 0; min-height: 0;}
.gnb__sub.justify_center ul {justify-content: center;}
.gnb__sub.justify_end ul {justify-content: flex-end;}
.gnb__sub ul li {flex-shrink: 0;}
.gnb__sub ul li > a {display: block; padding: 10px 30px; font-size: 18px; font-weight: 500;}
.gnb__sub ul li > a:hover {color: #009fe3;}

.gnb__sub.type__thumb .gnb__submenu {width: calc(100% / 6);}
.gnb__sub.type__thumb .gnb__submenu > a {display: flex; flex-direction: column; align-items: flex-start; padding: 10px 20px;}
.gnb__sub.type__thumb .gnb__submenu > a .thumb {border: 1px solid #d7d7d7; margin-bottom: 17px;}

.gnb__sub.type__category {}
.gnb__sub.type__category .catebox {width: 50%; display: flex; padding: 40px 0;}
.gnb__sub.type__category .catebox .label {width: 175px; flex-shrink: 0; text-align: center; color: #283891; font-weight: 700; font-size: 18px;}
.gnb__sub.type__category .catebox ul {flex-direction: column; padding: 0;}
.gnb__sub.type__category .catebox ul .gnb__submenu > a {padding-top: 0; padding-bottom: 20px;}

.gnb_menu:hover > a::after {display: block; content: ""; width: 100%; height: 7px; background-color: #009fe3; position: absolute; bottom: 0; left: 0;}
.gnb_menu:hover .gnb__sub {display: flex;}

.header .total_search {display: flex;}
.header .total_search form {display: flex; align-items: center;}
.header .total_search form .total_search__searchbar,
.header .total_search form .total_search__submit {display: block; height: 40px; border: none; border-radius: 0; margin: 0;}
.header .total_search form .total_search__submit {font-size: 0; color: transparent; width: 42px; background: no-repeat center; background-color: #3478c1; background-image: url(../images/common/ico/search.png); cursor: pointer;}
.header .total_search__toggle {display: flex; align-items: center; justify-content: center; width: 100px; border: 1px solid #3478c1; color: #fff; font-size: 12px; text-align: center; font-weight: 700; margin-left: 12px;}

.nav_lang {display: flex; width: 100px; height: 26px; border: 1px solid #3478c1; border-top: none;}
.nav_lang a {display: flex; align-items: center; justify-content: center; width: 50%; height: 100%; color: #fff; font-size: 12px; font-weight: 700; text-align: center;background-color: transparent;}
.nav_lang a.active {background-color: #3478c1;}
.header__lang {position: absolute; top: 0; right: 0;}
.nav_lang a.full {width: 100%;}

#sitemap, .header__sitemap_toggle {display: none;}

.header.sub_header,
.header.scrolled {background-color: rgba(27, 68, 131, 1);}
.header.scrolled .header__container {height: 90px;}




/* == Detail search == */
.detail_search {position: fixed; z-index: 99999; top: 0; left: 0; width: 100%; height: 100%; display: none;}
.detail_search.active {display: block;}
.detail_search input, .detail_search select {border-radius: 5px; border-color: #d7d7d7;}
.detail_search__dim {position: absolute; z-index: 0; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.7);}
.detail_search__inner {pointer-events: none; position: relative; z-index: 10; display: flex; flex-direction: column; transform: translateY(-100%); transition: transform 0.5s; transition-delay: 0.3s;}
.detail_search__inner > div {pointer-events: initial;}
.detail_search__head {position: relative; z-index: 20; background-color: #1b4483; color: #fff;}
.detail_search__head .container {display: flex; align-items: center; padding: 40px 0;}
.detail_search__head h2 {font-size: 25px; font-weight: 500; margin-right: auto;}
.detail_search .detail_search__close {display: flex; align-items: center; justify-content: center; font-size: 0!important; color: transparent!important;}
.detail_search .detail_search__close .plus {width: 26px; height: 26px; transform: rotate(45deg);}
.detail_search .detail_search__close .plus::after,
.detail_search .detail_search__close .plus::before {background-color: #fff;}
.detail_search__body {position: relative; z-index: 0; width: 1340px; max-width: 100%; margin: 0 auto; box-shadow: 0 0 20px rgba(0,0,0,0.4);}
.detail_search form {background-color: #fff;}
.detail_search form > div {padding: 40px 0;}
.detail_search .detail_searchbar_wrap {display: flex; width: 100%; max-width: 760px; margin: 0 auto;}
.detail_search .detail_search__searchbar {width: 100%; height: 40px; font-size: 16px; padding: 5px 10px; border-radius: 0!important; border-right: none;}
.detail_search .searchbar_submit {width: 65px; height: 40px; flex-shrink: 0; border: none; border-radius: 0; background: url(../images/common/ico/search02.png) no-repeat center / 27px; background-color: #3478c1; color: transparent; font-size: 0; cursor: pointer;}
.detail_search .detail_searchbar_wrap .detail_search__close {display: none;}
.detail_search .top {border-bottom: 1px solid #d7d7d7;}
.detail_search .mid {padding-bottom: 0;}
.detail_search .bot {padding-top: 0; padding-bottom: 80px; display: flex; align-items: center; justify-content: center;}
.detail_search .detail_search_button {width: 155px; height: 40px; color: #333!important; background-color: #fff; font-size: 18px!important; font-weight: 700!important; text-align: center; display: flex; align-items: center; justify-content: center; border: 1px solid #898989!important; border-radius: 0!important; margin: 0 5px; line-height: 1; padding: 0 20px;}
.detail_search .detail_search_button.submit {cursor: pointer;}
.detail_search .detail_search_button.blue {border-color: #3478c1!important; background-color: #3478c1; color: #fff!important;}
.detail_search .detail_search_button.white {}

.detail_search .row {display: flex; flex-direction: row!important;}
.detail_search .row > .column {display: flex; flex-direction: column; width: 48%; margin-right: 4%;}
.detail_search .row > .column:nth-child(2n) {margin-right: 0;}

.detail_search .input_container {display: flex; flex-direction: column; height: 100%; margin-bottom: 65px;}
.detail_search .input_container .tit {display: block; position: relative; font-size: 16px; padding-left: 25px; margin-bottom: 10px;}
.detail_search .input_container .tit::before {position: absolute; content: ""; display: block; width: 12px; height: 12px; background-color: #b7b7b7; border-radius: 50%; top: 0.75em; left: 0; transform: translateY(-50%);}
.detail_search .input_wrapper {display: flex; align-items: center; padding-left: 25px; font-size: 16px; flex-wrap: wrap;}
.detail_search .input_wrapper .chck_wrap {display: flex; align-items: center; margin-right: 40px;}
.detail_search .input_wrapper .search__checkbox{flex-shrink: 0; width: 16px; height: 16px; margin: 0 10px 0 0!important;}
.detail_search .input_container .input_wrapper.no_indent,
.detail_search .input_container.has_selectbox .input_wrapper {padding-left: 0;}
.detail_search .input_container.has_selectbox .input_wrapper select {width: 100%; height: 40px; padding: 5px 10px;}
.detail_search ul.input_wrapper {display: flex; flex-direction: column; height: 100%; justify-content: space-between;}
.detail_search ul.input_wrapper > li {width: 100%; height: 40px; display: flex; align-items: center; justify-content: flex-start;}
.detail_search ul.input_wrapper > li span,
.detail_search ul.input_wrapper > li input {margin-right: 10px;}
.detail_search .linked_width_radio {width: 180px;}

#ui-datepicker-div { z-index: 999999!important; font-family: "Noto Sans KR";}
.ui-datepicker .ui-datepicker-header,
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {background: #f1f1f1;}
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {background: #3478c1; color: #fff; border: none;}
.ui-datepicker .ui-datepicker-buttonpane button {font-size: 14px;}

/* 푸쉬배너 */
.push_banner {background: #3478c1;}
.push_banner__container {height: auto!important; position: relative;}
.push_banner__link {display: flex; align-items: center; width: 100%; padding: 15px 0; font-size: 20px; color: #fff;}
.push_banner__link i.fas {display: block; font-size: 32px; flex-shrink: 0; margin-right: 10px; animation-name: pushBanner_icon; animation-iteration-count: infinite; animation-duration: 20s; animation-fill-mode: forwards; animation-delay: 0.2s; animation-timing-function: cubic-bezier(.87,0.01,.64,1.83); transform: scale(0);}
.push_banner__link i.far {display: block; font-size: 24px; flex-shrink: 0; margin-left: 10px; animation-name: pushBanner_icon; animation-iteration-count: infinite; animation-duration: 20s; animation-fill-mode: forwards; animation-timing-function: cubic-bezier(.87,0.01,.64,1.83); transform: scale(0);}
.push_banner__link .text {transform: translateY(-1px);}
.push_banner__link .text span {display: inline-block; opacity: 0; animation-name: pushBanner_text; animation-duration: 20s; animation-iteration-count: infinite; animation-fill-mode: forwards; transform: translateX(10px);}
.push_banner__close_btn {display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; color: #fff; font-size: 24px; margin-left: auto; position: absolute; top: 50%; right: 0; transform: translateY(-50%);}

@keyframes pushBanner_icon {
    0% {transform: scale(0);}
    2.5% {transform: scale(1);}
    91.5% {transform: scale(1);}
    93% {transform: scale(0);}
    100% {transform: scale(0);}
}
@keyframes pushBanner_text {
    0% {opacity: 0; transform: translateX(10px);}
    1.5% {opacity: 1; transform: translateX(0px);}
    91.5% {opacity: 1; transform: translateX(0px);}
    93% {opacity: 0; transform: translateX(0px);}
    100% {opacity: 0; transform: translateX(0px);}
}

@media screen and (max-width: 1680px) {
    .header__logo a {margin-right: 50px;}
    .gnb_menu > a {padding: 10px 35px; font-size: 18px;}
    .gnb__sub {}
    .gnb__sub ul {align-items: flex-start; padding: 30px 0;}
    .gnb__sub ul li > a {font-size: 16px; padding: 10px 60px 10px 0;}
    .gnb__sub ul li:last-child > a {padding-right: 0;}
    .gnb__sub.type__thumb .gnb__submenu {width: auto; flex-shrink: 0;}
    .gnb__sub.type__thumb .gnb__submenu > a {padding-left: 0;}
    .gnb__sub.type__category .catebox {padding: 30px 0;}
    .gnb__sub.type__category .catebox .label {width: 80px; text-align: left; font-size: 16px;}
    .gnb__sub.type__category .catebox ul .gnb__submenu > a {padding-bottom: 10px;}
}

@media screen and (max-width: 1400px) {
    .header__logo a {background-size: cover; width: 84px; height: 36px;}
    .header .total_search form {display: none;}
    .header .total_search__toggle {height: 40px;}
}
@media screen and (max-width: 1199px) {
    .header__gnb,
    .header__lang {display: none;}
    .header__sitemap_toggle {display: flex; margin-right: 25px; width: 20px; height: 16px;}
    .header .total_search {margin-left: auto;}
    .header__container {height: 55px!important;}
    .header__logo a {width: 70px; height: 18px; background-image: url(../images/common/logo_ricon_white.png); background-size: 100%;}
    .header .total_search__toggle {width: 40px; height: 40px; color: transparent; font-size: 0; overflow: hidden; text-indent: -100vw; background: url(../images/common/ico/search.png) no-repeat center; border: none;}

    #sitemap {position: fixed; top: 0; left: -100%; z-index: 10000; display: block; width: 100%; height: 100%; transition: left 0.3s;}
    #sitemap.active {left: 0;}
    .sitemap__dim {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; background-color: rgba(0,0,0,0.7);}
    .sitemap__contents {position: relative; z-index: 10; background-color: #fff; display: flex; flex-direction: column; width: 100%; max-width: 700px; height: 100%;}
    .sitemap__contents .inner {padding: 20px; border-bottom: 1px solid #c2c2c2;}
    .sitemap__head {position: relative; display: flex; align-items: center; justify-content: center;}
    .sitemap__logo {color: transparent; font-size: 0; overflow: hidden; text-indent: -100vw; width: 95px; height: 25px; background: url(../images/common/logo_ricon_sitemap.png) no-repeat center / cover; margin: 20px 0;}
    .sitemap__close {position: absolute; top: 20px; left: 20px; width: 30px; height: 30px; font-size: 0; color: transparent; display: block;}
    .sitemap__close .plus {width: 100%; height: 100%; transform: rotate(45deg);}
    .sitemap__close .plus::before,
    .sitemap__close .plus::after {background-color: #555;}
    .sitemap__lang {width: 100%; height: auto; border: none; border-bottom: 1px solid #c2c2c2;}
    .sitemap__lang a {height: 40px; background-color: #fff; color: #898989; margin: 0 5px; border: 1px solid #898989;}
    .sitemap__lang a.active {border: 1px solid #3478c1; background-color: #3478c1; color: #fff;}

    .sitemap__menu_wrapper {overflow-y: scroll; height: 100%;}
    .sitemap__menubox {display: flex; align-items: stretch; min-height: 100%;}
    .sitemap__gnb {width: 50%; border-right: 1px solid #c2c2c2; background-color: #efefef;}
    .sitemap__gnb > li {border-bottom: 1px solid #c2c2c2;}
    .sitemap__gnb > li > a {display: flex; justify-content: space-between; align-items: center; min-height: 56px; padding: 5px 20px; color: rgba(0,0,0,0.5); font-size: 16px; font-weight: 500; overflow: hidden;}
    .sitemap__gnb > li > a .arrow {border-color: #7d7d7d; margin-left: 20px;}
    .sitemap__gnb > li.active > a {background-color: #283891; color: #fff;}
    .sitemap__gnb > li.active > a .arrow {border-color: #fff;}

    .sitemap__submenu_wrap {width: 50%;}
    .sitemap__submenu {display: none;}
    .sitemap__submenu.selected {display: block;}
    .sitemap__submenu li {border-bottom: 1px solid #c2c2c2;}
    .sitemap__submenu li a {display: flex; align-items: center; min-height: 56px; overflow: hidden; padding: 5px 20px; font-size: 14px; font-weight: 500;}
    .sitemap__submenu li.active a {color: #009fe3;}

    .detail_search__dim,
    .detail_search__head,
    .detail_search .mid,
    .detail_search .bot {display: none;}
    .detail_search {height: auto;}
    .detail_search form {border-bottom: 1px solid #d7d7d7;}
    .detail_search .detail_searchbar_wrap {max-width: none; align-items: center;}
    .detail_search .searchbar_submit,
    .detail_search .detail_search__searchbar {height: 40px;}
    .detail_search .detail_searchbar_wrap .detail_search__close {display: block;}
    .detail_search .detail_search__searchbar {padding: 0 20px; font-size: 15px;}
    .detail_search .searchbar_submit {width: 40px; background-size: 50%;}
    .detail_search .detail_search__close .plus {width: 30px; height: 30px; margin-left: 40px;}
    .detail_search .detail_search__close .plus::before, 
    .detail_search .detail_search__close .plus::after {background-color: #c2c2c2;} 
    .detail_search .top {display: flex; align-items: center; padding: 0; height: 55px; border-bottom: none;}

    .push_banner__link {font-size: 16px;}
    .push_banner__link i.fas {font-size: 24px;}
    .push_banner__link i.far {font-size: 20px;}
    .push_banner__close_btn {width: auto;}
}

@media screen and (max-width: 400px) {
    .push_banner__link i.far {display: none;}
}