@charset "utf-8";
@import url("./font-awesome/css/font-awesome.min.css");
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard-dynamic-subset.css');/* regular-400, medium-500, semibold-600, bold-700 */ 
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/* ========================== 초기화 [s] */
:root{--main-size:1440px;--primary:#005fff;--secondary:#1d2945;--k-font:'pretendard';--e-font:"Poppins", sans-serif}
*{-webkit-text-size-adjust:none}
*, :after, :before{box-sizing:border-box}
body{background:#fff;font-size:0.81em;font-family:var(--k-font)}
html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,time, mark, audio, video{margin:0;padding:0;border:0;vertical-align:baseline}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{display:block}
ol, ul, dl, dt, dd{list-style:none}
blockquote, q{quotes:none}
blockquote:before, blockquote:after,q:before, q:after{content:'';content:none}
table{border-collapse:collapse;border-spacing:0}
input, button{margin:0;padding:0;font-family:var(--k-font)}
input[type="submit"]{cursor:pointer}
button{cursor:pointer}
textarea, select{font-family:var(--k-font)}
select{margin:0}
a{color:#222;text-decoration:none}
label, input, button, select, img{vertical-align:middle}
.sr_only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0}

#sh_wrapper, #sh_wrapper , #sh_wrapper :before, #sh_wrapper *:after{box-sizing:border-box}
#sh_wrapper{position:relative;width:100%}
/* ========================== 초기화 [e] */

/* ========================== HEADER */
#sh_hd{--hd-height:100px;z-index:10;position:fixed;top:0;left:0;width:100%;font-family:var(--k-font)}
#sh_hd.sub{position:relative}

/* main header */
#topNavWrap{display:flex;align-items:center;justify-content:center;width:100%;height:var(--hd-height);transition:background-color 0.3s}
#topNavWrap .inner{position:relative;display:flex;justify-content:center;align-items:center;max-width:1763px;width:100%}

/* 로고 */
#top_logo{position:absolute;top:50%;left:0;transform:translateY(-50%)}
#top_logo img{width:114px}

/* 대분류  */
#topNav{position:relative;display:flex;justify-content:center}
#topNav > li{position:relative;transition:all 0.4s}
#topNav > li > a{position:relative;display:block;padding:0 35px;line-height:var(--hd-height);font-size:17px;font-weight:600;color:#1d2945;transition:all .4s}
#topNav > li > a::before{position:absolute;content:'';bottom:0;left:0;width:100%;height:2px;background-color:#000;transform:scaleX(0);transform-origin:center center;transition:transform 0.4s ease}
#topNav > li > a:hover::before{transform:scaleX(1)}
#topNavWrap.on #topNav > li > a{padding:0 55px}

/* 소분류 */
.top_nav_s{display:none;position:absolute;width:100%;min-height:165px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);padding-top:15px}
.top_nav_s li a{display:block;margin:0px;font-size:16px;font-weight:400;line-height:1.8;text-align:center;color:#777;transition:color .2s}
.top_nav_s li a:hover{color:#222}
.top_nav_bg{position:absolute;width:100%;display:none;top:var(--hd-height);left:0;height:180px;border-top:1px solid #e1e1e1;background:#fff;-webkit-box-shadow:0px 12px 12px -17px rgba(0,0,0,0.25);box-shadow:0px 12px 12px -17px rgba(0,0,0,0.25)}

/* 무료 시작 */
#topNavWrap .btn--primary{position:absolute;right:0;top:50%;transform:translateY(-50%);max-width:170px}

/* active */
#topNavWrap.active{background-color:#fff;box-shadow:1px 0 18px rgba(0,0,0,0.05)}
#topNavWrap.active.on{box-shadow:none}

/* 상단 버튼 및 오픈메뉴 */
#sh_hd.sub #topmenuM{box-shadow:none}
#topmenuM{position:relative;display:none;width:100%;line-height:1.8;padding:15px;background:#fff;box-shadow:1px 0 18px rgba(0,0,0,0.05)}
#topmenuM #m_logo img{width:108px}
#m_navBtn{position:absolute;top:48%;right:15px;z-index:30;width:30px;height:30px;transform:translateY(-50%);cursor:pointer}
#m_navBtn span{display:block;position:relative;top:50%;width:100%;height:2px;transform:translateY(-50%)}
#m_navBtn span::before{display:block;position:absolute;top:-6px;width:100%;height:100%;background-color:var(--primary);content:"";transform:translateZ(0);will-change:transform}
#m_navBtn span::after{display:block;position:absolute;top:6px;right:0%;width:40%;height:100%;background-color:var(--primary);content:"";transform:translateZ(0);will-change:transform}
#m_navBtn.on{position:fixed;top:27px}
#m_navBtn.on span:before{top:0;right:-4px;transform:rotate(45deg);background-color:#000}
#m_navBtn.on span:after{top:0;right:-4px;width:100%;transform:rotate(-45deg);background-color:#222}
#navWrap{position:fixed;left:0;top:0;z-index:15;width:100%;height:100%;background-color:rgba(0,0,0,.7)}
#navWrap .inner{overflow-y:scroll;opacity:0;position:fixed;right:-40px;top:0;z-index:999;min-width:300px;width:75%;height:100%;padding:60px 0;background-color:#fff;-webkit-transition:all .1s;transition:all .1s}
#navWrap.on .inner{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#navWrap .inner:before, #navWrap .inner:after{opacity:0;display:block;position:fixed;top:0;right:-40px;z-index:1;content:"";min-width:300px;width:70%;height:60px;background-color:#fff;-webkit-transition:all .1s;transition:all .1s}
#navWrap .inner:after{top:auto;bottom:0}
#navWrap.on .inner:before, #navWrap.on .inner:after{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#navWrap .inner .mo_hd_copy{position:fixed;right:0;bottom:15px;z-index:2;min-width:300px;width:70%;font-size:12px;text-align:center;color:#888}
#navWrap .user_tip{padding:10px 20px;background-color:#f5f5f5}
#navWrap .user_tip li{display:inline-block}
#navWrap .user_tip li+li{margin-left:10px}
/* 대분류 */
#topmenuM .m_lnb .m_bmenu{display:block;position:relative;width:100%;height:52px;padding:0 20px;border:none;border-bottom:1px solid #ddd;background:none;font-size:16px;line-height:52px;color:#222;text-align:left}
#topmenuM .m_lnb .m_bmenu:after{float:right;content:"\f107";font-family:'fontawesome'}
#topmenuM .m_lnb .m_bmenu.on:after{content:"\f106"}
/* 소분류 */
#topmenuM .m_smenu{display:none;padding:15px 20px;border-bottom:1px solid #ddd;background-color:#f2f3f5}
#topmenuM .m_smenu li a{font-size:14px;color:#777}

/* 반응형 [s] */
@media (max-width:1900px){
#topNavWrap .inner{max-width:none;padding:0 65px}
#top_logo{left:65px}
#topNavWrap .btn--primary{right:65px}
}
@media (max-width:1600px){
#topNavWrap .inner{padding:0 20px}
#top_logo{left:40px}
#topNavWrap .btn--primary{right:40px;max-width:140px;height:45px !important;font-size:15px !important}
.top_nav_bg{height:145px}
.top_nav_s li a{font-size:15px}
#topNavWrap.on #topNav > li > a{padding:0 50px}
}
@media (max-width:1400px){
#topNav > li > a{padding:0 30px;font-size:16px}
#topNavWrap.on #topNav > li > a{padding:0 45px}
#topNavWrap .btn--primary{max-width:130px;height:40px !important;font-size:14px !important;border-radius:5px !important}
}
@media (max-width:1200px){
#topNav > li > a{padding:0 25px;font-size:15px}
#topNavWrap.on #topNav > li > a{padding:0 35px}
.top_nav_s li a{font-size:14px}
.top_nav_bg{height:135px}
#topNavWrap .btn--primary{max-width:120px;height:36px !important;font-size:13px !important}
#top_logo img{width:108px}
}
@media (max-width:1024px){
#topNavWrap{display:none}
#topmenuM{display:block}
#navWrap{display:none}
}
/* 반응형 [e] */

/* ========================== MAIN */
#sh_wrapper .btn--primary{display:flex;align-items:center;justify-content:center;width:100%;height:55px;border-radius:10px;background-color:var(--primary);font-size:16px;font-weight:500;color:#fff;box-shadow:0 8px 21px rgba(0, 95, 255, 0.4);transition:background-color 0.3s, color 0.3s, border-color 0.3s}
#sh_wrapper .btn--primary.line{background-color:transparent;border:2px solid #bdc3d7;box-shadow:none}
#sh_wrapper .btn--primary:hover{background-color:#004ccd}
#sh_wrapper .btn--primary.line:hover{background-color:#fff;border-color:#fff;color:var(--secondary)}
#sh_container .inner{max-width:1440px;width:100%;margin:0 auto}
#sh_container .group-title .tit--en{padding-bottom:30px;font-family:var(--e-font);font-size:16px;font-weight:700;color:var(--primary)}
#sh_container .group-title .tit--ko{font-size:54px;line-height:1.3;color:var(--secondary);font-weight:600;white-space:pre-line;word-break:keep-all}
#sh_container .group-title p.desc{font-size:18px;color:#8c919f;font-weight:500;line-height:1.6;white-space:pre-line;word-break:keep-all}

/* ========================== INDEX */
#sh_section{position:relative;line-height:1.5;font-family:var(--k-font)}
#sh_section .inner{max-width:var(--main-size);width:100%;margin:0 auto}
#main_banner{padding:30px 40px 0;background-color:#fff}

/* ========================== CONTENT */
#sh_content{position:relative;z-index:4;max-width:1070px;width:100%;min-height:580px;padding:0;margin:70px auto 40px;font-size:14px;color:#888;zoom:1}
#sh_content:after{display:block;visibility:hidden;clear:both;content:""}

/* ========================== FOOTER */
#sh_ft{overflow:hidden;color:#fff;background-color:#080b14}
#sh_ft .inner{max-width:var(--main-size);width:100%;margin:0 auto} 
#sh_ft .start-banner{position:relative;z-index:0;padding-top:180px;padding-bottom:140px;text-align:center}
#sh_ft .start-banner::before{position:absolute;z-index:-1;content:'';top:-92%;left:50%;transform:translateX(-50%);width:860px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at center, rgba(59, 130, 246, 0.6) 0%, rgb(0 97 255) 5%, rgba(59, 130, 246, 0.01) 60%, rgba(255, 255, 255, 0) 100%);animation:start-banner-glow-float 6.5s ease-in-out infinite;will-change:transform}
#sh_ft .start-banner h2{padding-bottom:25px;font-size:48px;font-weight:600;line-height:1.3;white-space:pre-line;word-break:keep-all}
#sh_ft .start-banner p{padding-bottom:50px;font-size:20px;font-weight:500;color:rgba(255,255,255,0.4);word-break:keep-all}
#sh_ft .start-banner .btn-wrap{display:flex;justify-content:center;gap:10px}
#sh_ft .start-banner .btn-wrap .btn--primary{max-width:210px}
#sh_ft .start-banner .btn-wrap .btn--primary:not(.line){box-shadow:8px 0 21px rgba(0, 95, 255, 0.4)}
#sh_ft .start-banner .btn-wrap .btn--primary.line{max-width:150px}
@keyframes start-banner-glow-float{0%,100%{transform:translate(-50%,0) rotate(0deg)} 25%{transform:translate(calc(-50% - 95px),-30px) rotate(-0.5deg)} 50%{transform:translate(-50%,-68px) rotate(0deg)} 75%{transform:translate(calc(-50% + 95px),-14px) rotate(0.5deg)}}

#sh_ft .ft__menu{display:flex;align-items:center;justify-content:space-between;padding-bottom:60px} 
#sh_ft .ft__menu .logo{width:114px} 
#sh_ft .ft__menu ul{display:flex;gap:25px}
#sh_ft .ft__menu a{font-size:15px;font-weight:500;color:#fff;cursor:pointer} 
#sh_ft address{padding-bottom:110px;font-size:14px;line-height:1.8;font-style:normal;color:rgba(255,255,255,0.2);word-break:keep-all}
#sh_ft .ft__admin{display:flex;align-items:center;justify-content:space-between;padding:20px 0;border-top:1px solid rgba(255,255,255,0.1)}
#sh_ft .ft__admin small{font-size:14px;color:rgba(255,255,255,0.2)}
#sh_ft .ft__admin .admin{display:flex;gap:25px}
#sh_ft .ft__admin .admin a{font-size:14px;color:rgba(255,255,255,0.2);cursor:pointer;transition:color 0.3s}
#sh_ft .ft__admin .admin a:hover{color:#fff}

/* 탑버튼 */
#toTop{all:unset;position:fixed;bottom:60px;right:55px;display:flex;align-items:center;justify-content:center;width:64px;aspect-ratio:1;border-radius:100px;background-color:#fff;box-shadow:0px 6px 16px rgba(0,95,255,0.2);color:var(--secondary);cursor:pointer;transition:background-color 0.3s, color 0.3s}
#toTop:hover{background-color:var(--secondary);color:#fff}

/* 반응형 하단 버튼 공통 */
#fix_tel{opacity:0;display:none;position:fixed;right:20px;bottom:78px;z-index:101;align-items:center;justify-content:center;width:48px;height:48px;margin-right:-10px;border-radius:50%;font-size:22px;text-align:center;color:#fff;background:var(--primary);box-shadow:0px 6px 16px rgba(0,95,255,0.2);-webkit-transition:all .2s;transition:all .2s}
#fix_tel.active{opacity:1;margin-right:0}
#sh_ft_btns{display:none;padding:15px}
#sh_ft_btns .btns{overflow:hidden}
#sh_ft_btns .row2 a{width:50%}
#sh_ft_btns a{float:left;display:block;width:100%;height:55px;font-size:16px;line-height:55px;color:#fff;text-align:center;background:var(--primary);font-weight:700}
#sh_ft_btns a.tel{font-size:18px;font-weight:700;letter-spacing:0}
#sh_ft_btns a i{padding-right:5px;font-size:18px}
#sh_ft_btns a.kakao{font-weight:normal;color:#402325;background-color:#ffe500}

/* 반응형 [s] */
@media (max-width:1600px){
#sh_hd{--hd-height:90px}
#main_banner{padding:20px 20px 0}
#sh_container .group-title .tit--ko{font-size:48px}
#sh_ft{padding:0 20px}
#sh_ft .start-banner{padding:110px 0 100px}
#sh_ft .start-banner h2{font-size:44px}
#sh_ft .start-banner p{padding-bottom:42px;font-size:18px}
#sh_ft .start-banner::before{width:750px}
#toTop{bottom:40px;right:20px}
}
@media (max-width:1400px){
#sh_hd{--hd-height:80px}
#sh_wrapper .btn--primary{border-radius:5px}
#sh_container .group-title .tit--en{padding-bottom:24px}
#sh_container .group-title .tit--ko{font-size:44px}
#sh_ft .start-banner h2{font-size:40px}
#sh_ft .start-banner p{padding-bottom:38px}
#sh_ft .start-banner::before{width:700px}
}
@media (max-width:1200px){
#sh_wrapper .btn--primary{height:50px;font-size:15px}
#sh_container .group-title .tit--ko{font-size:40px}
#sh_container .group-title .tit--en{padding-bottom:18px;font-size:15px}
#sh_container .group-title p.desc{font-size:17px}
#sh_ft .start-banner{padding:90px 0}
#sh_ft .start-banner::before{width:610px}
#sh_ft .start-banner h2{padding-bottom:20px;font-size:34px}
#sh_ft .start-banner p{padding-bottom:32px;font-size:17px}
#sh_ft .start-banner .btn-wrap .btn--primary{max-width:182px}
#sh_ft .start-banner .btn-wrap .btn--primary.line{max-width:140px}
#toTop{width:55px}
}
@media (max-width:1024px){
#sh_content{margin:50px auto 40px}
#main_banner{margin-top:52px}
#sh_container .group-title .tit--en{padding-bottom:12px;font-size:14px}
#sh_container .group-title .tit--ko{font-size:34px}
#sh_container .group-title p.desc{font-size:16px}
#sh_ft .start-banner{padding:80px 0 65px}
#sh_ft .start-banner::before{top:-100%;width:555px}
#sh_ft .start-banner h2{padding-bottom:15px;font-size:30px}
#sh_ft .start-banner p{padding-bottom:30px;font-size:16px}
#sh_ft .ft__menu{flex-direction:column;gap:20px;padding-bottom:20px}
#sh_ft .ft__menu a{font-size:14px}
#sh_ft address{padding-bottom:20px;text-align:center;font-size:13px;line-height:1.6}
#sh_ft .ft__admin{flex-direction:column-reverse;gap:12px}
}
@media (max-width:768px){
/* 반응형 스타일 필수 [s] */
#sh_login, #sh_agree, #sh_register,#sh_mb_confirm, #sh_result{padding:15px;margin:15px auto;border:none}
#sh_login input[type=submit], #sh_agree .btn_wrap input[type=submit], #sh_register .btn_wrap input[type=submit],#sh_find_info input[type=submit], #sh_mb_confirm input[type=submit]{-webkit-appearance:none;appearance:none}
#sh_login .bnr .txt p a{color:#0054a6}
#sh_pw_confirm{width:100%;padding:30px 20px;border:none}
#sh_agree .inner{padding:15px}
#sh_agree .cont{padding:10px}
#sh_site_map{padding:30px 20px}
#sh_site_map > div{width:100%;margin:0}
#sh_site_map .sh_site_map_box{min-height:auto}
/* 반응형 스타일 필수 [e] */
#sh_content{margin:0}
#sh_wrapper .btn--primary{height:48px}
#sh_container .group-title .tit--en{padding-bottom:10px;font-size:13px}
#sh_container .group-title .tit--ko{font-size:28px}
#sh_container .group-title p.desc{font-size:15px}
#sh_ft .start-banner{padding:60px 0}
#sh_ft .start-banner h2{font-size:25px}
#sh_ft .start-banner p{padding-bottom:25px;font-size:15px}
#sh_ft .start-banner::before{width:480px}
#sh_ft .ft__menu .logo{width:108px}
#sh_ft .ft__menu ul{flex-wrap:wrap;gap:12px 25px;justify-content:center}
#sh_ft .ft__admin .admin{justify-content:center}
#toTop{width:48px;bottom:20px}
#toTop .material-symbols-outlined{font-size:22px}
}
@media (max-width:480px){
#fix_tel{display:flex}
#sh_ft_btns{display:block;background-color:#eef2fa}
#sh_wrapper .btn--primary{font-size:14px;height:42px}
#sh_container .group-title .tit--ko{font-size:24px}
#sh_container .group-title p.desc{font-size:14px;white-space:normal}
#sh_ft .start-banner h2{font-size:20px}
#sh_ft .start-banner p{padding-bottom:20px;font-size:14px}
#sh_ft .start-banner::before{top:-90%;width:400px}
#sh_ft .ft__admin .admin{flex-wrap:wrap;gap:12px 25px}
}
@media (max-width:390px){
#sh_ft .start-banner .btn-wrap{flex-direction:column;align-items:center}
#sh_ft .start-banner .btn-wrap .btn--primary.line{max-width:182px}
}
/* 반응형 [e] */