@charset "UTF-8";

body {overflow-x: hidden;}
body.on {overflow: hidden;}

/*** header s ***/
.header {position: fixed; z-index: 21; width: 100%; transition: .4s;}
.pc-top-menu-wrap {display: none;}
.inner-header {display: flex; position: relative; z-index: 40; align-items: center; justify-content: space-between; padding: 18px 20px; box-sizing: border-box; height: 75px;}
.inner-header .logo a {display: block; width: 215px;}
.inner-header .logo a.pc {display: none;}
.inner-header .logo a img {max-width: 100%; position: relative; z-index: 25;}
.inner-header .util {display: flex; justify-content: space-between; align-items: center; position: relative; z-index: 20;}
.inner-header .util.col3 {min-width: 70px;}
.inner-header .util > button, .inner-header .util > a {width: 25px; height: 23px; overflow: hidden; text-indent: -9999px; transition: background-color 0.3s;}
.inner-header .popup-btn {background: url('/_user/img/layout/icon-bell-w.svg')0 0/contain no-repeat;}
.inner-header .account-btn {display: none; background-size: 20px 20px;}
.inner-header .site-btn {display: none;}
.inner-header .gnb-btn, .inner-header .site-btn {position: relative; z-index: 20;}
.gnb-btn > span, .site-btn > span {display: inline-block; position: absolute; width: 100%; height: 3px; right: 0; top: 50%; transform: translateY(-50%); background: #fff;}
.gnb-btn > span::before, .site-btn > span::before {position: absolute; content: ''; display: block; width: 100%; height: 3px; top: -7px; left: 0; transition: all 0.3s; background: #fff;}
.gnb-btn > span::after, .site-btn > span::after {position: absolute; content: ''; display: block; width: 100%; height: 3px;  bottom: -7px; right: 0; transition: all 0.3s; background: #fff;}
.gnb-wrap {position: fixed; overflow: hidden; left: 100%; top: 0; bottom: 0; height: 100vh; width: 100%; background: #fff; padding-top: 75px; display: flex; z-index: 20; box-sizing: border-box; transition: left 0.3s; background: #fff url("/_user/img/layout/bg-header-m.png") no-repeat bottom / cover;}
.gnb-wrap.open {left: 0;}
.gnb-wrap.open .gnb-top {display: none;}
.gnb-wrap.open + .util > .account-btn {display: block;}
.gnb-wrap.open + .util.col3 {min-width: 110px;}
.gnb-wrap .gnb > li > a {font-size: 30px; padding: 15px 0; display: inline-block; font-family: GANGWONSTATE;}
.gnb-wrap .gnb > li > a:hover {-webkit-text-fill-color: var(--point-color); -webkit-text-stroke-width: 0;}
.gnb-wrap .gnb .dep2 {display: none; text-align: center;}
.gnb-wrap .gnb .dep2 > li > a {padding: 10px 0; display: inline-block; font-size: 20px;}
.gnb-wrap .gnb .dep2 > li > a.on {color: #fff;}
.gnb-wrap .gnb .dep2 > li > a .out-link {display: inline-block; width: 15px; height: 12px; margin-top: 5px; margin-left: 5px; margin-bottom: 3px; background: url("/_user/img/sub/ico-out-link-w.svg") no-repeat center / contain; background-size: 100%;}

.gnb-wrap .gnb .dep2 > li > a:hover .out-link {background-image: url("/_user/img/sub/ico-out-link-w.svg")}
.gnb-wrap .gnb-inner {width: 100%; height: 100%; overflow-y: auto; padding: 30px 0 0; text-align: center; border-top: 1px solid rgba(0, 0, 0, 0.20);}
.family-site {display: flex; justify-content: center; width: 100%; margin-top: auto; padding: 30px 0; background: #fff; box-sizing: border-box;}
.family-site li:first-child {padding-right: 50px;}
.family-site li a {font-size: 16px; color: #404040; display: block;}
.family-site li a:before {content: ''; position: relative; top: -2px; display: inline-block; width: 4px; height: 4px; background: #404040; border-radius: 50%; margin-right: 4px;}

.header.active {position: fixed; background: #1C2A55;}
.header.active  .inner-header-line {border-bottom: 1px solid rgba(51, 69, 161, 0.2);}
.header.active .inner-header {opacity: 1;}
.header.active .inner-header .popup-btn {background: url('/_user/img/layout/icon-bell.svg') no-repeat center/contain; transition: .3s;}
.header .inner-header .popup-btn:hover {background: url('/_user/img/layout/icon-bell-on.svg') no-repeat center/contain;}
.gnb-btn.active>span {transform: rotate(-45deg);}
.gnb-btn.active>span:before {top: 0; transition: top 75ms ease,opacity 75ms ease .12s; opacity: 0;}
.gnb-btn.active>span:after {bottom: 0; transform: rotate(90deg);}
.gnb-wrap.open {overflow: visible; display: flex; flex-direction: column; align-items: center;}
.gnb-btn.on>span {transform: rotate(-45deg);}
.gnb-btn.on>span:before {top: 0; transition: top 75ms ease,opacity 75ms ease .12s;}
.gnb-btn.on>span:after {bottom: 0; transform: rotate(90deg);}
.gnb-wrap .gnb > li.active {padding-bottom: 20px;}
.gnb-wrap .gnb > li.active > a {font-weight: bold;}
.pc-gnb-wrap {display: none;}

@media screen and (min-width: 768px){
    .inner-header .logo a {width: 250px;}
    .inner-header .logo a.pc {display: block;}
    .inner-header .logo a.mobile {display: none;}
}
@media screen and (min-width: 1200px){
    .pc-top-menu-wrap {display: block; border-bottom: 1px solid rgba(51, 69, 161, 0.2); }
    .pc-top-menu {height: 50px; max-width: 1580px; padding: 0 40px; display: flex; justify-content: flex-end; align-items: center; box-sizing: border-box; margin: 0 auto;}
    .pc-top-menu > li {display: flex; align-items: center;}
    .pc-top-menu > li > a {font-size: 17px;}
    .pc-top-menu > li + li::before {content: ''; display: inline-block; margin: 0 20px; width: 1px; height: 15px; background: #696969;}
    .inner-header-wrap {position: relative; height: 90px; transition: .4s; overflow: hidden;}
    .header.active .inner-header-wrap::before {content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 100%; background: url("/_user/img/layout/bg-header.png") no-repeat center right / cover; opacity: 0;}
    .header.active .inner-header-wrap::before {opacity: 1;}
    .inner-header .logo a {width: auto;}
    .header.active {background: #fff;}
    .inner-header {position: relative; height: 90px; margin: 0 auto; padding: 35px 50px; max-width: 1600px;}
    .inner-header .logo a img {transform: scale(1); top: -1px;}
    .gnb-wrap {padding-top: 0; align-items: center;}
    .gnb-wrap.open {flex-direction: row; z-index: 20;}
    .gnb-wrap.open .gnb-top {display: block; width: 100%;}
    .gnb-wrap.open .gnb-inner {border: none; flex-direction: column;}
    .gnb-wrap .gnb-inner {display: flex; align-items: center; justify-content: flex-start; text-align: left; padding-left: 60px; box-sizing: border-box;}
    .gnb-wrap .gnb {height: 100%; width: 100%; padding-top: 35px;}
    .gnb-link {width: 30%; height: 100%; padding: 0 0 0 4.2vw; justify-content: center; flex-direction: column;}
    .gnb-btn.on>span:before {background: #111;}
    .gnb-btn.on>span:after {background: #111;}
    .gnb-wrap .gnb li {padding-bottom: 10px;}
    .gnb-wrap .gnb > li > a {font-size: 55px; padding: 20px 0;}
    .gnb-wrap .gnb > li > a.hover {-webkit-text-fill-color: #fff; -webkit-text-stroke-width: 0;}
    .gnb-wrap .gnb .dep2 {display: flex; transition: .4s;}
    .gnb-wrap .gnb .dep2 > li > a {font-size: 20px; padding: 0 25px 0 0; transition: all 0.3s;}
    .gnb-wrap .gnb .dep2 > li > a:hover {color: #fff;}
    .gnb-wrap .gnb .dep2 > li:last-child a {padding: 0;}
    .inner-header .util {min-width: 80px; order: 3; gap: 30px;}
    .inner-header .util.col3 {min-width: 115px;}
    .inner-header .util > button, .inner-header .util > a {width: 28px; height: 28px; transition: .3s;}

    .gnb-wrap .gnb > li.active {padding-bottom: 7px;}
    .family-site li a {font-size: 20px; transition: all 0.3s;}
    .family-site li a:hover {color: #FF7A00;}
    .family-site li:first-child a {padding-bottom: 20px;}
    .inner-header .site-btn {display: block;}
    .inner-header .gnb-btn {display: none;}
    .gnb-btn > span, .site-btn > span {height: 4px;}
    .gnb-btn > span::before, .site-btn > span::before {height: 4px;}
    .gnb-btn > span::after, .site-btn > span::after {height: 4px;}
    .inner-header .util > button.gnb-btn:hover > span {background: #FF7A00;}
    .inner-header .util > button.gnb-btn:hover > span::before, .inner-header .util > button.gnb-btn:hover > span::after {width: 50%; background: #05B4B3;}
    .inner-header .util > button.gnb-btn.on > span::after, .inner-header .util > button.gnb-btn.on > span::before {width: 100%; background: #111;}
    .inner-header .util > a.site-btn:hover > span {background: var(--point-color);}
    .inner-header .util > a.site-btn:hover > span::before, .inner-header .util > a.site-btn:hover > span::after {width: 50%;background: var(--point-color);}
    .inner-header .util > a.site-btn.on > span::after, .inner-header .util > a.site-btn.on > span::before {width: 100%; background: #111;}
    .inner-header .account-btn {display: block; background: url('/_user/img/layout/icon-login.svg')0 0/contain no-repeat;}
    .inner-header .account-btn:hover {background: url('/_user/img/layout/icon-login-on.svg')0 0/contain no-repeat;}
    /*.inner-header .popup-btn:hover {background: url('/_user/img/layout/icon-bell-.svg')0 0/contain no-repeat;}*/
    .inner-header .account-btn.logout {background: url('/_user/img/layout/icon-logout.svg')0 0/contain no-repeat;}
    .inner-header .account-btn.logout:hover {background: url('/_user/img/layout/icon-logout-on.svg')0 0/contain no-repeat;}
}

@media all and (min-width:1200px) {
    .pc-gnb-wrap {position: relative; display: flex; justify-content: space-between; opacity: 1; margin-left: auto; padding-right: 50px;}
    .pc-gnb-wrap .gnb {display: flex; gap: 20px; padding: 0; background: none;}
    .pc-gnb-wrap .gnb > li {position: relative; width: 11vw; max-width: 140px; text-align: center;}
    .pc-gnb-wrap .gnb > li:last-child {padding: 0;}
    .pc-gnb-wrap .gnb > li > a {font-size: 22px; font-family: GANGWONSTATE; position: relative;}
    .pc-gnb-wrap .gnb > li > a {height: 90px; display: flex; flex-direction: column; justify-content: center; font-weight: 800;}
    .pc-gnb-wrap .gnb > li > a:after {content: ''; display: inline-block; width: 100%;}
    .pc-gnb-wrap .gnb .dep2 {display: none; position: absolute; left: 0; top: 90px; width: 100%; height: 350px; padding: 25px 0; box-sizing: border-box;}
    .pc-gnb-wrap .gnb .dep2 > li {padding-bottom: 40px;}
    .pc-gnb-wrap .gnb .dep2 > li:last-child {padding-bottom: 0;}
    .pc-gnb-wrap .gnb .dep2 > li > a {display: flex; justify-content: center; align-items: baseline; color: #1E2C8D; position: relative; font-size: 20px; transition: all 0.3s;}
    .pc-gnb-wrap .gnb .dep2 > li > a .out-link {margin-left: 4px; background: url("/_user/img/main/ico-link.svg") no-repeat center / contain; transition: 0.3s;}
    /*.pc-gnb-wrap .gnb .dep2 > li > a:hover .out-link {background-image: var(--svg); --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg id='MDI_dock-window' data-name='MDI / dock-window' transform='translate(-0.442 0.005)'%3E%3Crect id='Boundary' width='20' height='20' transform='translate(0.442 -0.005)' fill='%23fff' opacity='0'/%3E%3Cpath id='Path_dock-window' data-name='Path / dock-window' d='M13.333,11.667v1.667H1.667A1.667,1.667,0,0,1,0,11.667V3.333H1.667v8.333m15-10V8.333A1.667,1.667,0,0,1,15,10H5A1.667,1.667,0,0,1,3.333,8.333V1.667A1.667,1.667,0,0,1,5,0H15a1.667,1.667,0,0,1,1.667,1.667M15,1.667H5V8.333H15Z' transform='translate(18.775 16.661) rotate(180)' fill='%23A90081'/%3E%3C/g%3E%3C/svg%3E");}*/
    .family-site {width: 40%; height: 100%; padding-left: 4vw; flex-direction: column; align-items: flex-start;}
    .family-site li:first-child a {padding: 0 0 20px 0;}

    .pc-gnb-wrap .gnb li a.active {color: var(--point-color) !important;}
    .pc-gnb-wrap .gnb li a::before {content: ''; width: 0; height: 4px; position: absolute; left: 50%; bottom: 0; background: var(--point-color); transform: translateX(-50%); transition: width .3s;}
    .pc-gnb-wrap .gnb li a.active::before {width: 80%}
    .header .gnb .dep2.on > li > a:hover {color: var(--point-color);}
}

/* header sticky s */
.header {background: #fff; transition: .3s; top: 0; }
.header.sticky {box-shadow: 0 0 26px 0 rgba(99, 99, 99, 0.10)}
.header.sticky .gnb li a, .header.active .gnb li a {color: #111;}
.header .gnb-btn > span::before, .header .site-btn > span::before {background: #111;}
.header .gnb-btn > span::after, .header .site-btn > span::after {background: #111;}
.header .gnb-btn > span, .header .site-btn > span {background: #111;}
.header .inner-header .popup-btn {width: 22px; height: 28px; background: url("/_user/img/layout/icon-bell.svg") no-repeat center / contain; transition: .3s;}
.header .inner-header .account-btn {width: 23px; height: 22px; background: url("/_user/img/layout/icon-login.svg") no-repeat center / contain; transition: .3s;}
.header .inner-header .account-btn.logout {background: url("/_user/img/layout/icon-logout.svg") no-repeat center / contain; transition: .3s;}
/* header sticky e */
/* header active s */
.header.active .gnb li a {color: #111;}
@media all and (min-width:1200px) {
    .header.sticky {top: -50px;}
    .header.active .gnb-btn > span::before, .header.active .gnb-btn > span, .header.active .site-btn > span , .header.active .site-btn > span::before, .header.active .site-btn > span::after {background: #111;}
}
/* header active e */
/*** header e ***/

/* footer s */
.footer {flex-shrink: 0; margin-top: auto; background: #242B45;}
.footer-top {background: #242B45; color: #fff; max-width: 1580px; box-sizing: border-box;}
.footer-top .link-list {display: flex; justify-content: center; gap: 14px; padding: 15px; word-break: keep-all;}
.footer-top .link-list > li > a {color: #fff; font-size: 11px;}
.sns-list {display: flex; align-items: center; justify-content: center; gap: 20px; padding: 20px 0; border-top: 1px solid rgba(255, 255, 255, 0.10)}
.sns-list a {display: flex; align-items: center; justify-content: center; width: 30px; height: 30px;}
.footer-bottom {padding: 50px 20px 25px; box-sizing: border-box; background: #F7F8FB;}
.footer-inner {display: flex; flex-direction: column; max-width: 1500px; margin: 0 auto;}
.footer-bottom .footer-logo img {max-width: 100%;}
.footer-bottom .footer-text {padding-top: 27px; word-break: keep-all; font-size: 14px; color: #4B4B4B;line-height: 1.7;}
.phone em {padding-right: 10px; font-weight: 700;}
.address {padding-top: 20px;}
.address em {padding-right: 10px; font-weight: 700;}
.copyright {font-size: 13px; text-align: center; color: #979797;}

@media screen and (min-width: 500px){
    .footer-top .link-list > li > a {font-size: 13px;}
}

@media screen and (min-width: 768px){
    .footer-top .link-list {gap: 20px;}
}
@media screen and (min-width: 1024px){

    .footer .inner-footer {height: 170px; padding: 40px 60px; display: flex; align-items: center; justify-content: space-between;}
    .footer-top {display: flex; justify-content: space-between; align-items: center; margin: 0 auto;}
    .footer-bottom {padding: 50px 40px 60px; flex-direction: row;}
    .footer-bottom .footer-logo img {max-width: unset;}
    .footer-inner {flex-direction: row; gap: 50px; align-items: flex-start; justify-content: space-between;}
    .footer-bottom .footer-text {display: flex; justify-content: space-between; align-items: center; width: 87%; padding:0; font-size: 14px; text-align: left;}
    .footer-bottom .copyright {font-size: 17px;}
    .copyright span:nth-of-type(1) {padding: 0;}
    .footer-top {padding: 0 40px;}
    .footer-top .link-list {padding: 0; gap: 40px;}
    .footer-top .link-list > li > a {font-size: 16px;}
    .footer-bottom .footer-logo img {transform: scale(1);}
    .footer-bottom .phone {display: flex; gap: 30px;}
    .pc-left {font-size: 17px;}
}
@media screen and (min-width: 1200px){
    .footer .out-footer {height: 130px}
    .out-footer .swiper-container {max-width: 1600px;}
}
/* footer e */

/* popup s */
.popup-wrap {position: fixed; left: 0; top: 0; right: 0; bottom: 0; z-index: 9999; background: rgba(0,0,0,0.7);}
.popup-inner {position: fixed; overflow: hidden; z-index: 20; left: 50%; top: 50%; transform: translate(-50%,-50%); background: #fff; max-width: 300px; width: 90%;}
.popup-slide {height: 350px;}
.popup-slide .popup-slider {width: 100%;height: 100%;box-sizing: border-box;position: relative;left: 0;}
.popup-slide .popup-slider a {display: flex; align-items: center; justify-content: center; width: 100%; height: 100%;}
.popup-slide .popup-slider a img {width: 100%; height: 100%; object-fit: cover;}
.popup-bottom {padding: 10px; display: flex; justify-content: space-between; align-items: center; box-sizing: border-box;}
.popup-bottom > button {font-size: 14px; color: #303030;}
.popup-slide .slide-control div {position: absolute; width: 35px; height: 55px; border: none; text-indent: -9999px; top: 50%; transform: translateY(-50%); overflow: hidden;}
.popup-wrap .swiper-button-prev {left: 0; background: rgba(217,217,217,.65) url("/_user/img/layout/icon-prev-btn.png"); background-position: 50%; background-repeat: no-repeat;}
.popup-wrap .swiper-button-next {right: 0; background: rgba(217,217,217,.65) url("/_user/img/layout/icon-next-btn.png"); background-position: 50%; background-repeat: no-repeat;}
.popup-wrap .swiper-pagination-fraction {position: static; width: auto; padding-left: 50px; color: #303030; font-weight: 700; font-size: 15px;}
.popup-bottom .today-no {cursor: pointer; font-size: 14px; color: #303030;}
.popup-bottom .today-no:before {content: ''; position: relative; top: 2px; display: inline-block; width: 12px; height: 12px; box-sizing: border-box; border: 1px solid #111; margin-right: 5px; border-radius: 3px;}
.popup-bottom input:focus + label {outline: 1px solid #111;}
.popup-bottom input:checked + .today-no:before {border-color: #2483C7; background: url("/_user/img/layout/icon-popchk.svg")center/contain no-repeat;}
.popup-bottom input:checked + label {color: #2483C7}
.popup-wrap .swiper-button-disabled {pointer-events: auto;}
@media screen and (min-width: 1024px){
    .popup-inner {max-width: 495px; left: auto; right: 50px; transform: translate(0, -50%);}
    .popup-slide {height: 600px;}
    .popup-wrap .slide-control div {width: 47px; height: 70px;}
    .popup-bottom > button {font-size: 15px;}
    .popup-bottom .today-no {font-size: 15px;}
    .popup-bottom .today-no:before {width: 15px; height: 15px; top: 3px;}
    .popup-wrap .swiper-pagination-fraction {font-size: 16px; padding-left: 225px;}
    .popup-bottom input:checked + .today-no:before {background: url("/_user/img/layout/icon-popchk.svg")center/contain no-repeat;}
}
@media screen and (min-width: 1400px){
    .popup-inner {right: 140px;}
}
/* popup e */

/* 탑버튼 s */
.top-btn {display: none; cursor: pointer; position: fixed; right: 20px; bottom: 50px; z-index: 15;}
.sub-wrap .top-btn {right: 25px;}
.top-btn > button {position: relative; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; overflow: hidden;  background: #242B45; border: none; padding: 0; text-indent: -9999px;}
.top-btn > button::after {content: 'top'; position: absolute; left: -9999px;}
.top-btn .arrow {position: absolute; display: block; transition: all 0.3s ease; width: 40px; height: 40px; background-repeat: no-repeat; background-position: center; background-size: 20px;}
.top-btn .arrow-a {top: 0; opacity: 1; background:url(/_user/img/layout/ico-top-arrow.svg) no-repeat center, linear-gradient(to bottom, #242B45 0%, #242B45 50%, var(--point-color) 100%) ;}
.top-btn .arrow-b {top: 20px; opacity: 0; background-color: var(--point-color); background-image: url("/_user/img/layout/ico-top-arrow.svg");}
.top-btn button:hover {background: var(--point-color);}
.top-btn button:hover .arrow-a {transform: translateY(-20px); opacity: 0;}
.top-btn button:hover .arrow-b {transform: translateY(-20px); opacity: 1;}
@media screen and (min-width: 768px) {
    .top-btn {right: 52px; bottom: 55px;}
}
@media screen and (min-width: 1024px) {
    .top-btn > button {width: 60px; height: 60px; border-radius: 50%;}
    .top-btn .arrow {width: 80px; height: 80px; background-size: 24px;}
    .top-btn .arrow-a {top: -10px;} .top-btn .arrow-b {top: 40px;}
    .top-btn button:hover .arrow-a {transform: translateY(-50px); opacity: 0;}
    .top-btn button:hover .arrow-b {transform: translateY(-50px); opacity: 1;}
}


/* 탑버튼 e */
.scrollLock { overflow: hidden; }