@charset 'utf-8';
.body_hidden {height:100%; min-height:100%; overflow:hidden; touch-action:none;}

body {width: 100%;}
#wrap { position:relative;width: 100%; }
.inner { max-width:1350px; width:100%; margin:0 auto; }
.inner:after {content:""; display:block; visibility:hidden; clear:both; height:0; }
.inner1920 { position:relative; max-width:1920px; margin:0 auto; }
/* @media screen and (max-width:1540px){
	.inner { padding:0 150px; }
} */

@media screen and (max-width:1540px){
	.inner { padding:0 20px 40px; }
}

:root {
    --mainFont:GmarketSans;
    --subFont1:Noto Sans KR;
    --mainColor:#0569ff;
    --subColor:#000;
}

#container { transform:translateY(136px); transition:all 0.35s;width: 100%; }
#wrap.fix #container { transform:translateY(90px); }
#wrap.top-scrolled #container { transform:translateY(90px); }
@media screen and (max-width:1110px){
    #container,
    #wrap.fix #container { transform:translateY(0); padding-top:65px; }
}




/* header */
header { position:fixed; z-index:50; width:100%; background:#fff; }
header .top-box { background:#fff; padding:0 115px; max-width:1920px; margin:0 auto; max-height:46px; overflow:hidden; opacity:1; transition:max-height 0.35s ease, opacity 0.3s ease; }
header.top-hidden .top-box { max-height:0; opacity:0; }
header .top-box ul { height:46px; display:flex; align-items:center; justify-content:flex-end; padding-right:10px; }
header .top-box ul li:not(:last-child) { margin-right:12px; }
header .top-box ul li.top-logo-group-li { margin-right:20px; margin-left:auto; }
header .top-box .top-logo-group { display:flex; align-items:center; gap:12px; padding-top: 4px; }
header .top-box .top-logo-link { display:flex; align-items:center; }
header .top-box .top-logo { height:20px; width:auto; }
header .top-box .top-logo-link.kcinfra-logo { background:#ffffff;border-radius:4px; align-items:flex-end; padding-bottom:6px; }
header .top-box .top-logo-link.kcinfra-logo .top-logo { height:16px; }
header .top-box ul li a { font-weight:400; font-size:14px; color:#222; }
header .top-box ul li a.tel { position:relative; font-weight:300; padding-left:25px; display:inline-block }
header .top-box ul li a.tel:before { content:""; display:block; width:18px; height:18px; background:#c0c0c0 url(../img/common/tel_icon.png) center no-repeat; position:absolute; left:0; top:50%; transform:translateY(-50%); border-radius:18px; }
header .top-menu { position:relative; transform:translateY(-1px);width:100%; z-index:25; background:#1b1b1b; transition:all 0.3s; }
#wrap.fix header .top-menu { position:fixed; transform:translateY(-46px); }
header .top-menu:after { content:""; display:block; position:absolute; top:90px; left:0; width:100%; height:358px; background:#fff; z-index:-11; opacity:0; visibility:hidden; transition:all 0.3s; }
header.over .top-menu:after { opacity:1; z-index:1; visibility:visible; transition:all 0.5s; }
header .top-menu > div { display:flex; justify-content:space-between; padding:0 123px 0 62px; }
header .top-menu .leftMemu { display:flex; align-items:center; height:100%;  }
header h1 a { display:flex; margin-left: -62px; align-items:center; justify-content:center; width:330px; height:90px; background:var(--mainColor); }
/* header h1 a img{ position: relative;margin-left: -30px;}  */
/* 로고 애니메이션 기능 주석 처리 - globalhost 로고만 고정 표시 */
/* .logo-container img { margin-left: -26px;position: absolute;height: 75px;opacity: 0;animation-duration: 8s; animation-timing-function: ease-in-out;animation-iteration-count: infinite; } */
/* .globalhost { animation-name: fadeInOutGlobalhost; } */
/* .cloudbase { animation-name: fadeInOutCloudbase;} */

/* @keyframes fadeInOutGlobalhost {
    0% { opacity: 1; }
    25% { opacity: 1; }
    50% { opacity: 0; }
    75% { opacity: 0; }
    100% { opacity: 1; }
} */

/* @keyframes fadeInOutCloudbase {
    0% { opacity: 0; }
    25% { opacity: 0; }
    50% { opacity: 1; }
    75% { opacity: 1; }
    100% { opacity: 0; }
} */

/* globalhost 로고 고정 표시 */
.logo-container img { margin-left: -26px; position: relative; height: 75px; opacity: 1; }

@media screen and (max-width:1700px){
    header .top-box { padding:0 70px 0 6px; }
    header .top-menu > div { padding:0 80px 0 62px; }
}
@media screen and (max-width:1400px){
    header .top-box { padding:0 50px 0 6px; }
    header .top-menu > div { padding:0 60px 0 60px; }
    header .top-box .top-logo { height:16px; }
    header .top-box .top-logo.streamon-logo-img { height:20px; }
}
@media screen and (max-width:1280px){
    header .top-box { padding:0 30px 0 6px; }
    header .top-menu > div { padding:0 40px; }
    header .logo-container h1 a { width:280px;}
    header:after { height:280px; }
    header .logo-container h1 a img{ margin-left: 0px;} /*header logo*/
    header .top-menu { display: ""; }
    header .top-box .top-logo { height:14px; }
    header .top-box .top-logo.streamon-logo-img { height:20px; }
    header .top-box .top-logo-group { gap:12px; }
}
@media screen and (max-width:1110px){
    header .top-box { display:none }
    header .top-menu > div { padding:0 50px 0 0; background:var(--mainColor); }
    header .logo-container h1 a { width:165px; height:65px; margin-left: 0px;}
    header .logo-container h1 a img { height: 50px; }
    header.over:before,
    header.over:after { opacity:0; display:none }
    #wrap header .top-menu,
    #wrap.fix header .top-menu { transform:translateY(-1px); }
    header .top-menu:after { display: none; }
    header .top_icon img { display: none; }
}

header .top-menu #gnb { display:flex; align-items:center; margin-left:60px; }
header .top-menu #gnb { z-index:2; text-align:center; }
header .top-menu #gnb > ul { display:inline-block; }
header .top-menu #gnb > ul > li { display:inline-block;}
header .top-menu #gnb > ul > li:not(:last-child) { margin-right:60px; }
header .top-menu #gnb > ul > li > a { position:relative; z-index:10; font-weight:500; padding:36px 0; font-size:18px; color:#fff; transition:all 0.3s ease; display:block; text-align:center; }
header .top-menu #gnb > ul > li > a:before { content:""; display:block; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:0; height:4px; background:#fff; transition:all 0.3s ease; }
header .top-menu #gnb > ul > li.active > a:before { width:100%; }
header .top-menu #gnb > ul > li.active > a { color:#fff;}
header .top-menu #gnb > ul > li > .subDepth { opacity:0; visibility:hidden; z-index:-11; position:absolute; left:0; top:90px; width:100%; padding-left:368px; transition:all 0.3s; height:343px; }
header .top-menu #gnb > ul > li.active > .subDepth { opacity:1; visibility:visible; z-index:4; transition:all 0.5s; }
header .top-menu #gnb > ul > li > .subDepth > ul { padding:30px 20px; text-align:left; display:flex; }
header .top-menu #gnb > ul > li > .subDepth > ul > li:not(:last-child){ margin-right:88px; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > a { position:relative; font-size:18px; color:#0569fF; font-weight:700; line-height:130%; transition:all 0.2s; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > ul { padding-top:24px; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion_wrap { margin-right: 30px; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion { width: 220px; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion img { max-width: 100%; border-radius: 4px; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion .promotion_txt { margin-top: 20px; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion li { margin-top: 10px; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion li strong { margin-top: 20px; color:#000; font-weight: 700; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion li p { line-height: 20px;font-size: 14px; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion a { color: #0569fF; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > ul > .depth3_subtxt { padding-bottom: 18px; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > ul > li:not(:last-child) { margin-bottom:20px; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > ul > li a { color:#555; font-weight: bold; }
header .top-menu #gnb > ul > li > .subDepth .top_icon { text-align: center; }
header .top-menu #gnb > ul > li > .subDepth .top_icon .icon img { height:56px; margin-bottom: 18px; }
header .sub_title { font-size: 14px; font-weight: normal;margin-top: 8px; }
header .sub_title.event { color: #d00b0b;font-weight: 600; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > ul > li a:hover { color: #999; }
header .top-menu #gnb > ul > li > .subDepth > ul > li > ul > li a.imgbox { width:110px; height:70px; display:flex; align-items:center; justify-content:center; background:#f1f1f1; }
@media screen and (max-width:1700px){
    header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion { width: 190px; }
}
@media screen and (max-width:1600px){
    header .top-menu #gnb > ul > li > .subDepth > ul > li:not(:last-child){ margin-right:60px; }
    header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion { width: 170px; }
}
@media screen and (max-width:1400px){
    header .top-menu #gnb { margin-left:40px; }
    header .top-menu #gnb > ul > li:not(:last-child) { margin-right:30px; }
    header .top-menu #gnb > ul > li > .subDepth { padding-left:346px; }
    header .top-menu #gnb > ul > li > .subDepth > ul > li:not(:last-child){ margin-right:40px; }
    header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion { width: 150px; }
}
@media screen and (max-width:1280px){
    header .top-menu #gnb { margin-left:30px; }
    header .top-menu #gnb > ul > li > .subDepth { padding-left:270px; }
    header .top-menu #gnb > ul > li:not(:last-child) { margin-right:20px; }
    header .top-menu #gnb > ul > li > .subDepth > ul { padding:20px 35px; }
    header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion { width: 134px; }
    header .top-menu #gnb > ul > li > .subDepth > ul > li > .promotion img { max-width: 100%; }
}
@media screen and (max-width:1180px){
    header .top-menu #gnb > ul > li > .subDepth > ul > li:not(:last-child){ margin-right:30px; }
}
@media screen and (max-width:1100px){
    header .top-menu #gnb { display:none }
    header .top-menu #gnb > ul > li > .subDepth { display:none }
    header .top-menu #gnb > ul > li > .subDepth > ul > li > ul > li > p { display:none }

}

header .rightMemu { display:flex; align-items:center; }
header .rightMemu .info ul { display:flex; align-items:center; }
header .rightMemu .info ul li:not(:last-child) { margin-right:20px; }
header .rightMemu .info ul li a { font-size:14px; color:#fff; font-weight:400; line-height:130%; display:inline-block; }
header .rightMemu .info ul li a.login { padding-left:16px; background:url(../img/common/login_icon.png) left center no-repeat; }
header .rightMemu .info ul li a.logout { padding-left:16px; background:url(../img/common/logout_icon.png) left center no-repeat; }
header .rightMemu .info ul li a.join { padding-left:18px; background:url(../img/common/join_icon.png) left center no-repeat; }
header .rightMemu .info ul li a.mypage { width:40px; height:40px; overflow:hidden; text-indent:-9999em; border-radius:40px; background:#f1f1f1 url(../img/common/mypage_icon.png) center center no-repeat; }
header .over-info { opacity:0; visibility:hidden; z-index:-11; position:absolute; left:0; top:0; width:332px; height:358px; background:#f1f1f1 url(../img/common/depth_menu1.png) right center no-repeat; transition:all 0.5s; } /*header 내려올 때 leftMenu*/
header.over .over-info { opacity:1; visibility:visible; z-index:4 }
header .over-info .box { padding:36px 0 0 62px; }
header .over-info .box dt { font-size:30px; color:#0f0f0f; font-weight:700; line-height:130%; }
header .over-info .box dd { margin-top:13px; }
header .over-info .box dd .txt { font-size:16px; color:#484545; font-weight:400; line-height:1.6; }
header .over-info .box dd .btn { margin-top:23px;}
header .over-info .box dd .btn a { display:flex; align-items:center; justify-content:center; width:131px; height:40px; border:1px solid var(--mainColor); border-radius:60px; }
header .over-info .box dd .btn a span { display:inline-block; padding:0 18px 0 0; font-family:var(--subFont1); font-size:14px; color:var(--mainColor); background:url(../img/common/btn_arr.png) right center no-repeat; }

/* 신규상담 / 기술지원 칩 UI */
header .over-info .box dd .over-info-contact { margin-top:24px; display:flex; flex-direction:column; gap:16px; }
header .over-info .box dd .contact-chip .chip-label {
    display:inline-block; padding:4px 14px; border-radius:50px;
    background:transparent; border:1px solid var(--mainColor); color:var(--mainColor);
    font-family:var(--subFont1); font-size:12px; font-weight:500; letter-spacing:-0.02em; line-height:1.4;
}
header .over-info .box dd .contact-chip .chip-tel {
    display:block; margin-top:10px;
    font-family:var(--subFont1); font-size:14px; font-weight:500; color:#484545;
    text-decoration:none; letter-spacing:-0.02em; line-height:1.4;
    transition:color 0.2s;
}
header .over-info .box dd .contact-chip .chip-tel:hover { color:var(--mainColor); }

.round_btn { margin-top:23px;}
.round_btn2 { margin-top: 57px; }
.round_btn a { display:flex; align-items:center; justify-content:center; width:131px; height:40px; border:1px solid var(--mainColor); border-radius:60px; }
.round_btn a span { display:inline-block; padding:0 18px 0 0; font-family:var(--subFont1); font-size:14px; color:var(--mainColor); background:url(../img/common/btn_arr.png) right center no-repeat; }

@media screen and (max-width:1400px){
    header .over-info { width:330px; }
}
@media screen and (max-width:1280px){
    header .over-info { width:258px; }
}
@media screen and (max-width:1110px){
    header .rightMemu .info ul li:not(:last-child) { margin-right:15px; }
    header .rightMemu .info ul li:last-child { display:none }
}


.allBox { position:absolute; right:0; top:0; z-index:30; transition:all 0.8s; display:none }
.allBox.on { z-index:99; }
.allBox.on .allmenu { z-index:999; }
.allmenu { position:relative; }
.allmenu a { position:relative; width:60px; height:60px; display:flex; align-items:center; justify-content:center; z-index:2; }
.allmenu a span { position:relative; display:block; width:19px; height:2px; background:#fff; border-radius:5px; transition:all 0.5s ease; }
.allmenu a span:before {  content:""; display:block; width:19px; height:2px; background-color:#fff; position:absolute; right:0; top:-7px; transition:all 0.3s ease }
.allmenu a span:after { content:""; display:block; width:19px; height:2px; background-color:#fff; position:absolute; left:0; top:7px; border-radius:5px; transition:all 0.5s ease }
.allmenu .stxt { text-indent:-9999em; width:0; height:0; overflow:hidden; display:block; }
.allBox.on .allmenu a:before { width:0; left:unset; right:0; }
.allBox.on .allmenu a span,
.allBox.on .allmenu a span:before,
.allBox.on .allmenu a span:after { background-color:#fff; }
.allBox.on .allmenu a span { transform:rotate(45deg); }
.allBox.on .allmenu a span:before { transform:translate(-50%) rotate(-90deg); width:10px; right:-1px; top:-5px; }
.allBox.on .allmenu a span:after { transform:translate(-50%) rotate(-90deg); width:10px; left:10px; top:5px; }
header.over .allmenu a span,
header.over .allmenu a span:before,
header.over .allmenu a span:after { background-color:#fff; }
@media screen and (max-width:1110px){
    .allBox { display:block }
    .allBox.on .allmenu a span,
    .allBox.on .allmenu a span:before,
    .allBox.on .allmenu a span:after { background-color:#fff; }
}

#allmenuBox .menuBox { display:none }
.mobile #allmenuBox { position:fixed; right:-520px; top:0; max-width:520px; width:100%; height:100vh; z-index:20; transition:all 0.3s 0.1s ease-in-out; background:#1b1b1b; }
.mobile #allmenuBox.on { right:0; }
.mobile #allmenuBox .menuCont { height:100vh; }
.mobile #allmenuBox .menuBox { position:relative; overflow:hidden; }
.mobile #allmenuBox.on .menuBox { display:block }
.mobile #allmenuBox .menuBox #gnb { margin-top:80px; overflow:auto;  }
.mobile #allmenuBox .menuBox #gnb > ul { display:inline-block; white-space:nowrap; position:relative; background:#222;}
.mobile #allmenuBox .menuBox #gnb > ul > li { position:relative; display:inline-block; margin:0 -2px; border-bottom:1px solid #666;}
.mobile #allmenuBox .menuBox #gnb > ul > li > a { position:relative; color:#eee; font-weight:400; font-size:16px; line-height:130%; height:50px; display:flex; align-items:center; padding:0 34px; }
.mobile #allmenuBox .menuBox #gnb > ul > li:before { content:""; display:block; width:0; height:2px; position:absolute; left:50%; bottom:-1px; transform:translateX(-50%); background:var(--mainColor); transition:all 0.3s; }
.mobile #allmenuBox .menuBox #gnb > ul > li.on a { color:#fff; font-weight:600; }
.mobile #allmenuBox .menuBox #gnb > ul > li.on:before { width:100%; }
.mobile #allmenuBox .over-info { display:none }
.mobile #allmenuBox .subMenu { position:relative; }
.mobile #allmenuBox .subMenu:before { content:""; display:block; width:calc(100% - 150px); height:calc(100vh - 80px - 65px); position:absolute; left:150px; top:0; background:#222 }
.mobile #allmenuBox .subMenu > ul > li > a { display:none }
.mobile #allmenuBox .subMenu > ul > li > .subDepth { display:none; margin-top:15px; }
/* .mobile #allmenuBox .subMenu > ul > li:first-child > .subDepth, */
.mobile #allmenuBox .subMenu > ul > li.on > .subDepth { display:block; }
.mobile #allmenuBox .subMenu > ul > li > .subDepth > ul { padding:0; }
.mobile #allmenuBox .subMenu > ul > li > .subDepth > ul > li { position:relative; width:150px; height:60px; text-align:center; }
.mobile #allmenuBox .subMenu > ul > li > .subDepth > ul > li > a { position:relative; width:100%; height:100%; color:#eee; font-weight:400; font-size:16px; display:flex; align-items:center; justify-content:center; }
.mobile #allmenuBox .subMenu > ul > li > .subDepth > ul > li.active > a { color:#fff; font-weight:600; background:var(--mainColor); }
.mobile #allmenuBox .subMenu > ul > li > .subDepth .depth3 { display:none; position:absolute; top:0; left:150px; width:250px; }
.mobile #allmenuBox .subMenu > ul > li > .subDepth .depth3 li a { padding:0 30px; height:60px; display:flex; align-items:center; color: #eee; }
.mobile #allmenuBox .subMenu > ul > li > .subDepth .depth3 li a.imgbox { margin-left:10px; width:110px; height:60px; display:flex; align-items:center; justify-content:center; background:#f1f1f1; }
@media screen and (max-width:640px){
    .mobile #allmenuBox .menuBox #gnb > ul > li > a { padding:0 18px; }
    .mobile #allmenuBox .subMenu > ul > li > .subDepth > ul > li { height:50px; }
    .mobile #allmenuBox .subMenu > ul > li > .subDepth .depth3 li a { padding:0 20px; height:50px; }
    .mobile #allmenuBox .subMenu > ul > li > .subDepth .depth3 li a.imgbox { width:100px; height:50px; }
    .mobile #allmenuBox .subMenu > ul > li > .subDepth .depth3 li a.imgbox img { width:40px; }
}

footer { position:relative; background-color:#fff; position:relative; z-index:10; }
/* footer .footer_box { position:relative; background-color:#111; padding:120px 0 100px; } */
footer .footer_box { position:relative; background-color:#111; padding: 0px 80px 60px; }
footer .footer_box .all-menu {}
footer .footer_box .all-menu > ul { display:flex; justify-content:space-between; }
/* footer .footer_box .all-menu > ul > li:not(:last-child){ margin-bottom:20px } */
footer .footer_box .all-menu > ul > li > a { position:relative; font-weight:700; color:#fff; font-size:20px; }
footer .footer_box .all-menu > ul > li > .subDepth { margin-top:30px; }
footer .footer_box .all-menu > ul > li > .subDepth .sub_title { display: none; }
footer .footer_box .all-menu > ul > li > .subDepth .promotion { display: none; }
footer .footer_box .all-menu > ul > li > .subDepth .top_icon img { display: none; }
footer .footer_box .all-menu > ul > li > .subDepth > .footer_depth > li { display: inline-block;margin-right: 30px;height: 174px; }
footer .footer_box .all-menu > ul > li > .subDepth > .footer_depth > li:nth-child(6) { margin: 0px; }
footer .footer_box .all-menu > ul > li > .subDepth > .footer_depth > li:last-child { margin: 0px; }
footer .footer_box .all-menu > ul > li > .subDepth .depth3 li > a { color: #888; }
footer .footer_box .all-menu > ul > li > .subDepth > .footer_depth .over-info { margin: 0px; }
footer .footer_box .all-menu > ul > li > .subDepth > .footer_depth .box { display: none; }
footer .footer_box .all-menu > ul > li > .subDepth > ul > li > a { color:#cccccc; font-size:16px; line-height:1.5 }
footer .footer_box .all-menu > ul > li > .subDepth > ul > li:not(:last-child){ margin-bottom:14px }
/* footer .footer_box .all-menu > ul > li > .subDepth > ul > li > ul { display:none } */

/* Footer nav (independent from header nav) */
footer .footer_box .all-menu .footer-nav-grid { padding:50px 0 50px; }
footer .footer_box .all-menu .footer-nav-grid * { word-break:keep-all; }
footer .footer_box .all-menu .footer-nav-grid__cols {
    display:grid;
    grid-template-columns:repeat(6, minmax(0, 1fr));
    gap:26px;
}
footer .footer_box .all-menu .footer-nav-grid__col { min-width:0; }
footer .footer_box .all-menu .footer-nav-grid__group + .footer-nav-grid__group { margin-top:18px; }
footer .footer_box .all-menu .footer-nav-grid__group dt a {
    display:inline-block;
    color:#f1f5f9;
    font-size:16px;
    font-weight:700;
    line-height:1.35;
}
footer .footer_box .all-menu .footer-nav-grid__group dd { margin-top:10px; }
footer .footer_box .all-menu .footer-nav-grid__group dd ul li + li { margin-top:7px; }
footer .footer_box .all-menu .footer-nav-grid__group dd ul li a {
    color:rgba(226, 232, 240, 0.82);
    font-size:14px;
    font-weight:400;
    line-height:1.45;
}
footer .footer_box .all-menu .footer-nav-grid__group dd ul li a:hover { color:#ffffff; }

@media screen and (max-width:1600px){
    footer .footer_box .all-menu .footer-nav-grid__cols { grid-template-columns:repeat(3, minmax(0, 1fr)); }
}
@media screen and (max-width:1024px){
    footer .footer_box { padding:0 24px 50px; }
    footer .footer_box .all-menu .footer-nav-grid { padding:28px 0 24px; }
    footer .footer_box .all-menu .footer-nav-grid__cols { gap:20px 16px; }
    footer .footer_box .all-menu .footer-nav-grid__group dt a { font-size:15px; }
    footer .footer_box .all-menu .footer-nav-grid__group dd ul li a { font-size:13px; }
}
@media screen and (max-width:760px){
    footer .footer_box .all-menu .footer-nav-grid__cols { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media screen and (max-width:640px){
    footer .footer_box { padding:0 16px 44px; }
    footer .footer_box .all-menu .footer-nav-grid { padding:24px 0 20px; }
    footer .footer_box .all-menu .footer-nav-grid__cols { grid-template-columns:1fr; gap:16px; }
    footer .footer_box .all-menu .footer-nav-grid__group + .footer-nav-grid__group { margin-top:12px; }
}
footer .footer_box .all-menu > ul > li > .subDepth > ul > li > ul { color:#cccccc; font-size: 15px; line-height: 2; }
footer .footer_box .all-menu .over-info { display:none }
footer .infobox { position:relative; padding-top:55px; /*margin-top:55px;*/ border-top:1px solid #1e1e1e }
footer .infobox .flogo { position:absolute; top:75px; right:0; }
footer .infobox .flogo img { width:220px; }
footer .infobox .family-site { position:absolute; top:110px; right:0; margin-top:80px; }
footer .infobox .family-site .family-site-toggle { display:flex; align-items:center; justify-content:space-between; background-color:#242424; border:1px solid #2a2a2a; border-radius:4px; padding:12px 16px; cursor:pointer; transition:background-color 0.3s; width:180px; }
footer .infobox .family-site .family-site-toggle:hover { background-color:#222; }
footer .infobox .family-site .family-site-toggle .family-site-label { color:#ccc; font-size:14px; }
footer .infobox .family-site .family-site-toggle .plus-icon { width:16px; height:16px; opacity:0.8; transition:opacity 0.3s, transform 0.3s; margin-left:auto; }
footer .infobox .family-site .family-site-toggle:hover .plus-icon { opacity:1; }
footer .infobox .family-site .family-site-toggle.active .plus-icon { transform:rotate(45deg); }
footer .infobox .family-site .family-site-list { position:absolute; bottom:48px; right:0; margin-bottom:8px; display:none; flex-direction:column; background-color:#1a1a1a; border:1px solid #242424; border-radius:4px; padding:8px 0; width:180px; list-style:none; margin:0; opacity:0; transform:translateY(10px); transition:opacity 0.3s, transform 0.3s; }
footer .infobox .family-site .family-site-list.active { display:flex; opacity:1; transform:translateY(0); }
footer .infobox .family-site .family-site-list li { margin:0; padding:0; }
footer .infobox .family-site .family-site-list li a { display:flex; align-items:center; justify-content:space-between; color:#ccc; font-size:14px; text-decoration:none; padding:10px 16px; transition:color 0.3s, background-color 0.3s; }
footer .infobox .family-site .family-site-list li a:hover { color:#fff; background-color:#222; }
footer .infobox .family-site .family-site-list li a .link-icon { width:14px; height:14px; opacity:0.7; transition:opacity 0.3s; }
footer .infobox .family-site .family-site-list li a:hover .link-icon { opacity:1; }
footer .infobox .fmenu { display:flex; align-items:center; }
footer .infobox .fmenu ul { display:flex; }
footer .infobox .fmenu ul li a { color:#fff; font-size:17px;}
footer .infobox .fmenu ul li:not(:last-child){ margin-right:40px }
footer .infobox .info { margin-top:50px; }
footer .infobox .info ul { display:flex; }
footer .infobox .info ul:not(:last-child) { margin-bottom:14px; }
footer .infobox .info ul li { color:#aaa; font-size:14px; line-height:1.5 }
footer .infobox .info ul li:not(:last-child){ margin-right:25px }
footer .infobox .info ul li strong,
footer .infobox .info ul li span { font-weight:400; }
footer .copyright { margin-top:50px; color:#fff; font-size:14px; }
footer .copyright .stxt { color:#c0c0c0; }
@media screen and (max-width:1024px){
    footer .footer_box { padding:0 0 80px; }
    footer .footer_box .all-menu { display:none }
    footer .infobox { border-top:none; margin-top:0; padding-top:60px;  }
    footer .infobox .flogo { text-align:center; position:relative; top:unset; right:unset;}
    footer .infobox .family-site { position:relative; top:unset; right:unset; margin:30px auto 0; display:flex; justify-content:center; }
    footer .infobox .family-site .family-site-toggle { justify-content:space-between; }
    footer .infobox .family-site .family-site-list { right:auto; left:50%; transform:translateX(-50%) translateY(10px); }
    footer .infobox .family-site .family-site-list.active { transform:translateX(-50%) translateY(0); }
    footer .infobox .fmenu { justify-content:center; margin-top:40px; }
    footer .infobox .info { text-align:center; }
    footer .infobox .info ul { justify-content:center; flex-wrap:wrap; }
    footer .infobox .info ul .m2 { display:block; width:100%; }
    footer .copyright { margin-top:40px; text-align:center; }
}
@media screen and (max-width:760px){
    footer .infobox .fmenu ul li:not(:last-child){ margin-right:20px }
}
@media screen and (max-width:640px){
    footer .footer_box { padding:0 0 50px; }
    footer .inner { padding:0 10px; }
    footer .infobox { padding-top:50px;  }
    footer .infobox .family-site .family-site-toggle { padding:10px 12px; width:160px; }
    footer .infobox .family-site .family-site-list { width:160px; }
    footer .infobox .fmenu ul li:not(:last-child){ margin-right:15px }
    footer .infobox .info { margin-top:30px; }
    footer .infobox .info ul:not(:last-child){ margin-bottom:20px; }
    footer .infobox .info ul li:not(:last-child){ margin-right:20px }
}
@media screen and (max-width:520px){
    footer .infobox .info ul .m1 { display:block; width:100%; }
    footer .infobox .info ul li strong { display:block; }
    footer .infobox .info ul li span.s { display:none; }
}




#btn_top { position:fixed; left:50%; transform:translateX(-50%); margin-left:820px; bottom:20px; z-index:5; transition:all 0.3s; }
#btn_top.active { position:absolute; top:-40px; bottom:unset; }
#btn_top a { display:flex; align-items:center; justify-content:center; flex-direction:column; background:var(--mainColor); width:80px; height:80px; color:#fff; font-size:15px; }
#btn_top a span { margin:5px 0;}
@media screen and (max-width:1920px){
    #btn_top { left:unset; transform:translateX(0); right:20px; }
}
@media screen and (max-width:1024px){
    #btn_top a { width:60px; height:60px; font-size:14px; }
    #btn_top a span { margin:3px 0; }
    #btn_top.active { top:-30px; }
    header .top-menu:after { display: none; }
}
@media screen and (max-width:640px){
    #btn_top { right:10px; }
    #btn_top a { width:50px; height:50px; font-size:11px; }
    #btn_top a span { margin:2px 0; }
    #btn_top.active { top:-25px; }
    header .top-menu:after { display: none; }
}


/* privacy */
.privacy { color:#666; width:100%; overflow:hidden; box-sizing:border-box; padding:0; font-size:16px; line-height:140%; word-break:break-all; }
.privacy h2 { font-size:20px; font-weight:bold; color:#000; text-align:left; margin:50px 0 30px; }
.privacy h2:first-child { margin-top:0; }
.privacy > p { margin:15px 0; }
.privacy > p+dl { margin-top:30px; }
.privacy > dl { padding-bottom:20px;}
.privacy > dl > dt{ font-size:20px;color:#111;font-weight:700;padding-bottom:10px;}
.privacy > dl > dd{ padding-bottom:10px;text-align:justify; font-size:16px; line-height:140%;}
.privacy > dl > dd ul{ padding:10px; }
.privacy > dl > dd ul li{ line-height:120%; margin-top:10px; }
.privacy > dl > dd ul li:first-child { margin-top:0; }
.privacy > dl > dd ul li p { margin:0 10px 5px; line-height:140%; margin-top:8px;}
.sTxt h3 { font-size:18px; color:#333; font-weight:500; margin:20px 0 10px; }
.sTxt p { margin-top:10px; }
.sTxt dt { margin-top:10px; }
.sTxt dd { margin:0 8px; }
.privacy .content_lv1{ margin-bottom:10px; font-size:18px; line-height:170%; color:#333; }
.privacy .content_lv2 { margin-bottom:10px; font-size:17px; line-height:170%; color:#333; padding-left:20px; }
.privacy table { }
.privacy th { padding:12px 20px; border:1px solid #ddd; background-color:#fafafa; font-weight:700; color:#333 }
.privacy td { padding:12px 20px; border:1px solid #ddd }
@media screen and (max-width:640px){
    .privacy { font-size:16px; }
    .privacy h2 { font-size:16px; }
    .privacy > dl > dt{ font-size:15px; }
    .privacy > dl > dd{ font-size:15px; }
    .sTxt h3 { font-size:16px; }
    .privacy .content_lv1{ font-size:16px; }
    .privacy .content_lv2 { font-size:15px; }
}

/* slick-slider 필수 css */
/* .slick-slider{position:relative; display:block; box-sizing:border-box; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; -webkit-touch-callout:none; -khtml-user-select:none; -ms-touch-action:pan-y; touch-action:pan-y; -webkit-tap-highlight-color:transparent;} */
.slick-slider{position:relative; display:block; user-select:text !important; }
.slick-list{position:relative; display:block; overflow:hidden; margin:0; padding:0;}
.slick-list:focus{outline:none;}
.slick-list.dragging{cursor:pointer; cursor:hand;}
.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform:translate3d(0, 0, 0); -moz-transform:translate3d(0, 0, 0); -ms-transform:translate3d(0, 0, 0); -o-transform:translate3d(0, 0, 0); transform:translate3d(0, 0, 0);}
.slick-track{position:relative; top:0; left:0; display:block;}
.slick-track:before,.slick-track:after{display:table; content:'';}
.slick-track:after{clear:both;}
.slick-loading .slick-track{visibility:hidden;}
.slick-slide{display:none; float:left; height:100%; min-height:1px; -webkit-transform:translate3d(0,0,0);}
.slick-slide img{display:block; margin:0 auto;}
.slick-slide.slick-loading img{display:none;}
.slick-slide.dragging img{pointer-events:none;}
.slick-initialized .slick-slide{display:block;}
.slick-loading .slick-slide{visibility:hidden;}
.slick-vertical .slick-slide{display:block;height:auto; border:1px solid transparent;}
.slick-arrow.slick-hidden{display:none;}

.slick-slider .slick-track,
.slick-slider .slick-list { transform:translate3d(0, 0, 0); }
.slick-slide { transform:translate3d(0,0,0); }




/* banne logo */
.common-banner { padding:300px 0 150px 0; overflow:hidden; }
.common-banner .inner { width:100%; height:40px; overflow:hidden; position:relative; }
.common-banner .rolling { display:flex; position:absolute; height:100%; }
.common-banner .rolling ul { display:flex; }
.common-banner .rolling ul li { margin-right:70px; }
@media screen and (max-width:1100px){
    .common-banner { padding:100px 0; }
}
@media screen and (max-width:1024px){
    .common-banner { padding:100px 0; }
    .common-banner .rolling ul li { margin-right:60px; }
}
@media screen and (max-width:640px){
    .common-banner { padding:80px 0; }
    .common-banner .rolling ul li { margin-right:40px; }
}

/* animation */
.rolling.original { animation:33s linear 0s infinite normal forwards running rollingleft1; }
.rolling.clone { animation:33s linear 0s infinite normal none running rollingleft2; }
@keyframes rollingleft1 {
    0% { transform: translateX(0); }
    50% { transform: translateX(-100%); }
    50.01% { transform: translateX(100%); }
    100%{ transform: translateX(0); }
}
@keyframes rollingleft2 {
    0% { transform: translateX(0);
    }
    100% { transform: translateX(-200%); }
}

.common-consult { background:#eee; padding-top:75px; padding-bottom:75px;margin-top: -10px; }
.common-consult .title-box { padding-top:60px; text-align:center; }
.common-consult .title-box dt { color:#222; font-size:35px; font-weight:400; letter-spacing:-0.02em; line-height:1.3; }
.common-consult .title-box dt strong { font-weight:800; }
.common-consult .title-box dd { margin-top:10px; color:#474747; font-size:20px; font-weight:400; letter-spacing:-0.02em; line-height:1.5; }
.common-consult .title-box .txt { margin-top:15px; }
.common-consult .title-box .txt ul { display:flex; justify-content:center; margin-bottom: 5px; }
.common-consult .title-box .txt ul li:not(:last-child) { margin-right:30px; }
.common-consult .title-box .txt ul li { position:relative; color:#474747; font-size:15px; font-weight:300; letter-spacing:0.04em; line-height:1.3;}
.common-consult .title-box .txt ul li strong { font-weight:700; }
.common-consult .title-box .txt ul li:not(:last-child):before { content:''; display:block; position:absolute; top:50%; right:-15px; transform:translateY(-51%); width:1px; height:14px; background:#474747;  }
/* .common-consult .title-box .txt ul li:first-child { padding-left:36px; background:url(../img/common/consult_icon.png) left center no-repeat;  } */
/* .common-consult .title-box .txt ul li:last-child { background:none; } */
.common-consult .title-box .txt img { width: 20px; height: 15px; margin-right: 5px; background: left center no-repeat; }
.common-consult .ipCont { background-color:#fff; border-radius:20px; padding:95px 140px 60px; display:none }
.common-consult .ipCont-footer { padding:30px 30px 10px;}
.common-consult .ipCont ul { display:flex; flex-wrap:wrap; }
.common-consult .ipCont ul li:nth-child(2n+1) { width:35%; padding-right:30px; }
.common-consult .ipCont ul li:nth-child(2n) { width:65%; padding-left:30px; }
.common-consult .ipCont ul li.full { width:100%; padding:0; }
.common-consult .ipCont ul li { display:flex; }
.common-consult .ipCont ul li:not(last-child) { margin-bottom:22px; }
.common-consult .ipCont ul li label { width:135px; color:#222; font-size:18px; font-weight:400; letter-spacing:-0.02em; padding-top:15px; line-height:1.3 }
.common-consult .ipCont ul li:nth-child(2n) label { width:100px; }
.common-consult .ipCont ul li.full label { width:135px; }
.common-consult .ipCont ul li .ipbox { width:calc(100% - 135px); display:flex; align-items:center; color:rgba(34, 34, 34, 0.6); font-size:17px; font-weight:300; }
.common-consult .ipCont ul li:nth-child(2n) .ipbox { width:calc(100% - 100px); }
.common-consult .ipCont ul li.full .ipbox { width:calc(100% - 135px); }
.common-consult .ipCont ul li .ipbox .stxt { width:60px; text-align:center; display:inline-block }
.common-consult .ipCont ul li input[type="text"],
.common-consult .ipCont ul li input[type="password"] { height:47px; padding:0 20px; width:100%; font-size:16px; color:#222; font-weight:400; border:1px solid rgba(217, 217, 217, 0.9); outline:none; background:#fff; border-radius:6px; }
.common-consult .ipCont ul li input.ip03-2 { width:110% }
.common-consult .ipCont ul li textarea { width:100%; height:235px; padding:15px 20px; width:100%; font-size:16px; color:#222; font-weight:400; border:1px solid rgba(217, 217, 217, 0.9); outline:none; background:#fff; border-radius:6px; }
.common-consult .ipCont ul li input::placeholder,
.common-consult .ipCont ul li textarea::placeholder { font-size:14px; }
.common-consult .ipCont ul li .sbox { width:100%; }
.common-consult .ipCont ul li .sbox .box { overflow:auto; height:200px; padding:15px 20px; width:100%; font-size:16px; color:#222; font-weight:400; border:1px solid rgba(217, 217, 217, 0.9); outline:none; background:#fff; border-radius:6px; }
.common-consult .ipCont button { transition:all 0.5s; margin:60px auto; margin-top:60px; width:220px; height:60px; border:1px solid var(--mainColor); display:flex; justify-content:center; align-items:center; border-radius:60px; background:#fff }
.common-consult .ipCont button span { transition:all 0.5s; font-family:var(--subFont1); font-weight:400; color:var(--mainColor); line-height:1.2; font-size:17px; padding-right:16px; display:inline-block; background:url(../img/main/service_arr.png) right center no-repeat; }
.common-consult .ipCont button:hover { background:var(--mainColor); }
.common-consult .ipCont button:hover span { filter:brightness(0) invert(1);}

.common-consult .btn-open-order { transition:all 0.5s; margin:20px auto; width:220px; height:60px; border:1px solid var(--mainColor); display:flex; justify-content:center;color: #fff; align-items:center; border-radius:60px; background:var(--mainColor);cursor: pointer; }
.common-consult .btn-open-order span { transition:all 0.5s; font-family:var(--subFont1); font-weight:400; color:#fff; line-height:1.2; font-size:18px; display:inline-block; background:url(../img/main/service_arr.png) right center no-repeat; }
.common-consult .btn { transition:all 0.5s; margin:35px auto; width:230px; height:68px; overflow:hidden }
.common-consult .btn a { position:relative; display:flex; align-items:center; height:100%; background:#fff; border-radius:68px; padding-left:39px; }
.common-consult .btn a span { transition:all 0.5s; color:var(--mainColor); font-size:20px; font-weight:600; white-space:nowrap; overflow:hidden }
.common-consult .btn a:before { transition:all 0.5s; content:''; display:block; position:absolute; top:50%; right:4px; transform:translateY(-50%); width:60px; height:60px; border-radius:60px; background:var(--mainColor) url(../img/common/consult_arr.png) center center no-repeat; }
.common-consult .btn.on { width:68px; }
.common-consult .btn.on a span { display:none; }
.common-consult .btn.on a:before { transform:translateY(-50%) rotate(180deg);}

.common-consult .modal_btn { transition:all 0.3s; margin:35px auto; width:230px; height:68px; overflow:hidden;cursor: pointer; }
.common-consult .modal_btn a { transition:all 0.3s; position:relative; display:flex; align-items:center; height:100%; background:#fff; border-radius:68px; padding-left:39px; }
.common-consult .modal_btn a:before { transition:all 0.5s; content:''; display:block; position:absolute; top:50%; right:4px; transform:translateY(-50%); width:60px; height:60px; border-radius:60px; background:var(--mainColor) url(../img/common/consult_arr.png) center center no-repeat; }
.common-consult .modal_btn a span { transition:all 0.5s; color:var(--mainColor); font-size:20px; font-weight:600; white-space:nowrap; overflow:hidden }

.common-consult .ipCont .ch-box { margin-top:15px; text-align:right; }
.common-consult .ipCont .ch { position:relative; display:inline-block }
.common-consult .ipCont .ch input[type="checkbox"],
.common-consult .ipCont .ch input[type="radio"]{opacity:0; height:auto; position:absolute; left:7px; top:0; }
.common-consult .ipCont .ch input[type="checkbox"] + span,
.common-consult .ipCont .ch input[type="radio"] + span { position:relative; padding:0 0 0 35px; font-weight:300; font-size:15px; line-height:1.1 !important; display:inline-block; color:#555; }
.common-consult .ipCont .ch input[type="checkbox"] + span:after,
.common-consult .ipCont .ch input[type="radio"] + span:after { content:''; display:block; margin:-4px 0 0 0; width:25px; height:25px; vertical-align:middle; background:none; border-radius:5px; border:1px solid #ddd; position:absolute; left:0; top:-2px; }
.common-consult .ipCont .ch input[type="checkbox"]:checked + span:after,
.common-consult .ipCont .ch input[type="radio"]:checked + span:after { background:url(../img/common/icon_ch_on1.png) no-repeat center center; }
@media screen and (max-width:1400px){
    .common-consult .ipCont ul li:nth-child(2n+1) { width:45%; padding-right:20px; }
    .common-consult .ipCont ul li:nth-child(2n) { width:55%; padding-left:20px; }
    .common-consult .ipCont ul li.full { width:100%; padding:0; }
}
@media screen and (max-width:1280px){
    .common-consult .ipCont { padding:20px 20px 1px; }
}
@media screen and (max-width:1110px){
    .common-consult .title-box { padding-top:30px; }
}
@media screen and (max-width:1024px){
    .common-consult { padding-bottom:50px; }
    .common-consult .title-box { padding-top:20px; }
    .common-consult .title-box dt { font-size:28px; }
    .common-consult .title-box dd { margin-top:10px; font-size:20px; }
    .common-consult .title-box .txt { margin-top:15px; }
    .common-consult .title-box .txt ul li:not(:last-child) { margin-right:30px; }
    .common-consult .title-box .txt ul li { font-size:15px; }
    .common-consult .title-box .txt ul li:not(:last-child):before { right:-15px; height:12px; }
    .common-consult .title-box .txt ul li:first-child { padding-left:36px; }
    .common-consult .ipCont { border-radius:10px; padding:20px 20px 1px; }
    .common-consult .btn { margin:30px auto; width:200px; height:60px; }
    .common-consult .btn a { padding-left:35px; }
    .common-consult .btn a span { font-size:18px; }
    .common-consult .btn a:before { width:52px; height:52px; }
    .common-consult .btn.on { width:60px; }
}
@media screen and (max-width:960px){
    .common-consult .ipCont ul li:not(last-child) { margin-bottom:18px; }
    .common-consult .ipCont ul li:nth-child(2n+1),
    .common-consult .ipCont ul li:nth-child(2n) { width:100%; padding:0; }
    .common-consult .ipCont ul li:nth-child(2n) label { width:135px; }
    .common-consult .ipCont ul li:nth-child(2n) .ipbox { width:calc(100% - 135px); }
}
@media screen and (max-width:640px){
    .common-consult { padding-bottom:40px; }
    .common-consult .title-box { padding-top:10px; }
    .common-consult .title-box dt { font-size:22px; }
    .common-consult .title-box dd { font-size:18px; }
    .common-consult .ipCont { padding:30px 20px 1px; }
    .common-consult .ipCont ul li { flex-wrap:wrap; }
    .common-consult .ipCont ul li:not(last-child) { margin-bottom:15px; }
    .common-consult .ipCont ul li label,
    .common-consult .ipCont ul li:nth-child(2n) label,
    .common-consult .ipCont ul li .ipbox,
    .common-consult .ipCont ul li.full .ipbox,
    .common-consult .ipCont ul li:nth-child(2n) .ipbox { width:100%; }
    .common-consult .ipCont ul li label { margin:0 0 3px; font-size:16px; padding:0; }
    .common-consult .btn { width:180px; height:55px; }
    .common-consult .btn a { padding-left:39px; padding-left:32px; }
    .common-consult .btn a span { font-size:17px; }
    .common-consult .btn a:before { width:47px; height:47px; }
    .common-consult .btn.on { width:55px; }
}

.popup-wrap{
    background-color:rgba(0,0,0,.2);
    justify-content:center;
    align-items:center;
    position:fixed;
    top:0;
    left:0;
    right:0;
    bottom:0;
    display:none;
    padding:15px;
    z-index: 100;
}
/* 푸터 문의 reCAPTCHA 등: 좌·우 플로팅 CTA(9999)보다 위에 오도록 */
.popup-wrap#popup-order{
    z-index:10050;
}
.popup{
    z-index: 100;
    width:1200px;
    max-width:100%;
    max-height: 100%;
    background-color:#ffffff;
    border-radius:4px;
    overflow:hidden;
    box-shadow: 5px 10px 10px 1px rgba(0,0,0,.3);
}
.popup-order{
    z-index: 100;
    width:1050px;
    max-width:100%;
    max-height: 100%;
    background-color:#ffffff;
    border-radius:4px;
    overflow:hidden;
    box-shadow: 5px 10px 10px 1px rgba(0,0,0,.3);
}

.popup-head{
width:100%;
height:60px;
display:flex;
align-items:center;
justify-content: space-between;
background-color:#0569ff;
}
.popup-head .pop-btn{
align-items:right;
}
.head-title {
    font-size: 22px;
    font-weight: 500;
    padding: 18px;
    color: #fff;
}
.popup-body{
width:100%;
height: 710px;
background-color:#ffffff;
}
.request-popup-body{
width:100%;
height: 100%;
background-color:#ffffff;
}
.body-content{
width:100%;
height: 714px;
}
.body-content iframe .Korean .tpl_sidepadtheme {
    overflow-x: hidden;
}
.request-body-content{
    width:100%;
    height: 100%;
}
.body-titlebox{
text-align:center;
width:100%;
margin-bottom:10px;
}
.body-contentbox{
word-break:break-word;
overflow-y:auto;
min-height:100px;
height: 100%;
}
.body-contentbox::-webkit-scrollbar {
display: none;
}
.popup-foot{
width:100%;
height:50px;
}
.pop-btn{
display:inline-flex;
height:100%;
justify-content:center;
align-items:center;
color:#ffffff;
cursor:pointer;
}
.pop-btn.confirm{
border-right:1px solid #3b5fbf;
}
.pop-btn img{
width: 36px;
margin-right: 12px;
}

@media screen and (max-width:1110px){
    header .subDepth { display:none }
    header .sub_title { display:none }
    header .promotion { display:none }
}

/* =======================================================
   고정 전화 CTA (좌측 하단)
   ======================================================= */
.fixed-phone-cta { position:fixed; left:38px; bottom:38px; z-index:9999; }
.fixed-phone-link {
    display:flex; align-items:center; gap:10px;
    background:#fff; border:1px solid #e1e1e1; border-radius:50px;
    padding:12px 22px 12px 16px;
    box-shadow:0 4px 16px rgba(0,0,0,0.10);
    text-decoration:none; color:#222;
    transition:all 0.3s;
}
.fixed-phone-link:hover {
    border-color:var(--mainColor);
    box-shadow:0 6px 20px rgba(5,105,255,0.15);
}
.fixed-phone-icon {
    display:flex; align-items:center; justify-content:center;
    width:24px; height:24px; min-width:24px;
    background:linear-gradient(rgb(55, 153, 220) 0%, rgb(55, 125, 220) 100%); border-radius:50%;
    color:#fff;
}
.fixed-phone-icon svg { width:14px; height:14px; }
.fixed-phone-label {
    font-size:15px; font-weight:700; color:#222;
    letter-spacing:-0.02em; white-space:nowrap;
}

/* 모바일: 아이콘만 표시 */
@media screen and (max-width:768px){
    .fixed-phone-cta { left:16px; bottom:16px; }
    .fixed-phone-link { padding:0; border-radius:50%; width:52px; height:52px; justify-content:center; }
    .fixed-phone-label { display:none; }
    .fixed-phone-icon { width:52px; height:52px; }
    .fixed-phone-icon svg { width:22px; height:22px; }
}

/* =======================================================
   고정 온라인 문의 CTA (우측 하단) — 메인 컬러 그라데이션 강조
   ======================================================= */
.fixed-inquiry-cta { position:fixed; right:38px; bottom:38px; z-index:9999; }
.fixed-inquiry-cta .fixed-inquiry-link {
    display:inline-flex; align-items:center; justify-content:flex-end; gap:10px;
    height:52px;
    padding:0 20px 0 16px;
    border:none; border-radius:50px;
    background:linear-gradient(125deg, #0a7cff 0%, var(--mainColor) 45%, #0442b8 100%);
    box-shadow:0 8px 26px rgba(5,105,255,0.38);
    text-decoration:none;
    color:#fff;
    transition:box-shadow 0.28s ease, filter 0.28s ease, background 0.32s ease;
}
.fixed-inquiry-cta .fixed-inquiry-link:hover {
    box-shadow:0 10px 32px rgba(5,105,255,0.48);
    filter:brightness(1.06);
}
.fixed-inquiry-cta .fixed-inquiry-icon-chat {
    display:flex; align-items:center; justify-content:center;
    width:auto; height:auto; min-width:0;
    background:transparent;
    border:none;
    color:#fff;
}
.fixed-inquiry-cta .fixed-inquiry-icon-chat svg { width:15px; height:15px; }
.fixed-inquiry-cta .fixed-inquiry-label {
    font-size:15px; font-weight:800; color:#fff;
    letter-spacing:-0.02em; white-space:nowrap;
}
/* 링크 전용(1:1 페이지 등): 가운데 정렬 pill */
.fixed-inquiry-cta a.fixed-inquiry-link {
    justify-content:center;
    padding:0 24px;
}

@media screen and (max-width:768px){
    .fixed-inquiry-cta { right:16px; bottom:16px; }
    .fixed-inquiry-cta .fixed-inquiry-link {
        padding:0; border-radius:50%; width:52px; height:52px;
        justify-content:center;
    }
    .fixed-inquiry-cta .fixed-inquiry-label { display:none; }
    .fixed-inquiry-cta .fixed-inquiry-icon-chat { width:52px; height:52px; min-width:52px; border:0; background:transparent; }
    .fixed-inquiry-cta .fixed-inquiry-icon-chat svg { width:22px; height:22px; }
}

/* 좌·우 플로팅이 겹치지 않도록 좁은 화면에서 살짝 위로 (선택) */
@media screen and (max-width:400px){
    .fixed-inquiry-cta { bottom:max(16px, env(safe-area-inset-bottom)); }
    .fixed-phone-cta { bottom:max(16px, env(safe-area-inset-bottom)); }
}

/* =======================================================
   플로팅 문의 패널 (FAB 위에 표시, DOM은 #footer-inquiry-root 이동)
   ======================================================= */
.footer-inquiry-placeholder:empty {
    min-height: 0;
}
.footer-inquiry-floating-mount {
    position:fixed;
    right:38px;
    bottom:110px;
    /* 좌측 고정 전화 CTA(9999)보다 위, reCAPTCHA 팝업(#popup-order 10050)은 그보다 위 유지 */
    z-index:10000;
    width:min(760px, calc(100vw - 36px));
    max-height:none;
    overflow:visible;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate3d(0, calc(100% + 20px), 0);
    transform-origin:right bottom;
    transition:opacity 0.38s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.42s cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0.38s;
}
body.footer-inquiry-fab-open .footer-inquiry-floating-mount {
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate3d(0, 0, 0);
}
.footer-inquiry-floating-mount .footer-inquiry-root {
    background:#fff;
    border-radius:16px;
    box-shadow:0 16px 48px rgba(0,0,0,0.16);
    border:1px solid #e8e8e8;
    overflow:visible;
    padding:20px;
    box-sizing:border-box;
}
.footer-inquiry-floating-mount .ipCont-footer {
    padding:0 !important;
}
/* 플로팅 전체화면(모바일)에서만 표시 — 푸터 인라인에서는 숨김 */
.footer-inquiry-sheet-head {
    display:none;
}
/* 플로팅 폼만: th 너비·좌측 패딩, 문의하기 버튼 */
@media screen and (min-width:641px){
    .footer-inquiry-floating-mount .boardReg-box .ipbox-footer table.inquiry-form-grid tbody th,
    .footer-inquiry-floating-mount .boardReg-box .ipbox-footer tbody th {
        min-width:110px !important;
        width:110px;
        padding:0 12px 0 20px !important;
        box-sizing:border-box;
    }
    .footer-inquiry-floating-mount .boardReg-box .ipbox-footer table.inquiry-form-grid tbody tr:last-child th {
        padding-top:20px !important;
    }
}
.footer-inquiry-floating-mount .ipbox-footer .footer-inquiry-action-row {
    display:flex;
    flex-direction:row;
    align-items:stretch;
    justify-content:center;
    gap:0;
    width:100%;
    margin-top:32px;
}
/* 하단 인라인(.common-consult)에서는 숨김 — 모바일 플로팅 시트에서만 표시 */
.footer-inquiry-sheet-close {
    display:none !important;
}
.footer-inquiry-floating-mount .ipbox-footer .Inquiry-btn {
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    margin-top:0;
    text-align:center;
}
.footer-inquiry-floating-mount .ipbox-footer .Inquiry-btn button {
    width:100%;
    max-width:300px;
    height:56px;
    margin:0 auto;
    border:none;
    border-radius:10px;
    background:var(--mainColor);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    box-shadow:0 4px 16px rgba(5,105,255,0.28);
    transition:filter 0.25s ease, box-shadow 0.25s ease;
}
.footer-inquiry-floating-mount .ipbox-footer .Inquiry-btn button:hover {
    filter:brightness(1.07);
    box-shadow:0 6px 20px rgba(5,105,255,0.36);
}
.footer-inquiry-floating-mount .ipbox-footer .Inquiry-btn button span {
    font-weight:700;
    font-size:18px;
    color:#fff;
    letter-spacing:-0.02em;
}
/* 플로팅: 개인정보·(선택)마케팅 전문보기 — 고정 높이 + 내부 스크롤 */
.footer-inquiry-floating-mount .inquiry-agreement-wrap .agreement-detail-box {
    max-height:80px;
    overflow-x:hidden;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
}
.footer-inquiry-floating-mount .inquiry-agreement-wrap .agreement-detail-box::-webkit-scrollbar {
    width:8px;
}
.footer-inquiry-floating-mount .inquiry-agreement-wrap .agreement-detail-box::-webkit-scrollbar-thumb {
    background:var(--mainColor);
    border-radius:4px;
}
.footer-inquiry-floating-mount .inquiry-agreement-wrap .agreement-detail-box::-webkit-scrollbar-track {
    background:#E8E8E8;
}
/* 플로팅 온라인 문의(레이어)만: 폼 라벨(th) strong·필수표시, 개인정보 동의 한 줄 14px */
.footer-inquiry-floating-mount .boardReg-box .ipbox-footer table.inquiry-form-grid tbody th,
.footer-inquiry-floating-mount .boardReg-box .ipbox-footer table.inquiry-form-grid tbody th strong,
.footer-inquiry-floating-mount .boardReg-box .ipbox-footer table.inquiry-form-grid tbody th strong span {
    font-size:14px !important;
}
.footer-inquiry-floating-mount .inquiry-agreement-wrap .agreement-checkbox .label-text,
.footer-inquiry-floating-mount .inquiry-agreement-wrap .agreement-checkbox .label-text strong {
    font-size:14px !important;
}
button.fixed-inquiry-toggle.fixed-inquiry-link {
    font:inherit;
    text-align:inherit;
    margin:0;
    cursor:pointer;
    appearance:none;
    -webkit-appearance:none;
}
.fixed-inquiry-icon-close {
    display:none !important;
}
.fixed-inquiry-cta.is-open .fixed-inquiry-icon-chat {
    display:none !important;
}
.fixed-inquiry-cta.is-open .fixed-inquiry-icon-close {
    display:flex !important;
}
/* 데스크톱: 높이 52px 고정, max-width 축소로 우측 고정·좌측이 줄어드는 효과 */
@media screen and (min-width:601px){
    .fixed-inquiry-toggle.fixed-inquiry-link {
        overflow:hidden;
        max-width:340px;
        transition:max-width 0.4s cubic-bezier(0.4, 0, 0.2, 1),
            padding 0.4s cubic-bezier(0.4, 0, 0.2, 1),
            border-radius 0.35s ease,
            background 0.35s ease,
            box-shadow 0.28s ease,
            filter 0.28s ease;
    }
    .fixed-inquiry-cta.is-open .fixed-inquiry-toggle.fixed-inquiry-link {
        max-width:52px;
        height:52px;
        min-width:52px;
        padding:0;
        border-radius:50%;
        justify-content:center;
        gap:0;
        overflow:hidden;
        background:#fff;
        border:1px solid #e1e1e1;
        box-shadow:0 4px 16px rgba(0,0,0,0.10);
        filter:none;
    }
    .fixed-inquiry-cta.is-open .fixed-inquiry-toggle.fixed-inquiry-link:hover {
        border-color:#bdbdbd;
        box-shadow:0 5px 18px rgba(0,0,0,0.14);
        filter:none;
    }
    .fixed-inquiry-cta.is-open .fixed-inquiry-label {
        display:none;
    }
    .fixed-inquiry-cta.is-open .fixed-inquiry-icon-close {
        width:52px;
        height:52px;
        min-width:52px;
        background:transparent;
        border:none;
        box-shadow:none;
        align-items:center;
        justify-content:center;
    }
    .fixed-inquiry-cta.is-open .fixed-inquiry-icon-close svg {
        width:22px;
        height:22px;
        stroke:#888;
    }
}

@media screen and (max-width:640px){
    body.footer-inquiry-fab-open {
        overflow:hidden;
    }
    .footer-inquiry-floating-mount .boardReg-box .ipbox-footer table.inquiry-form-grid tbody th,
    .footer-inquiry-floating-mount .boardReg-box .ipbox-footer tbody th {
        padding-left:14px !important;
        padding-right:12px !important;
    }
    /* 온라인 문의(#footer-form) 모바일: 담당자~문의 내용 필드 패딩 12px, 라벨 14px */
    #footer-form table.inquiry-form-grid tbody th {
        padding:12px !important;
        font-size:14px !important;
    }
    #footer-form table.inquiry-form-grid tbody td {
        padding:12px !important;
    }
    /* 모바일: 온라인 문의 — 헤더 아래 전체 시트, 아래에서 위로 등장 · 전화 FAB보다 위(z-index) */
    .footer-inquiry-floating-mount {
        top:calc(65px + env(safe-area-inset-top, 0px));
        right:0;
        bottom:0;
        left:0;
        width:100%;
        max-width:none;
        height:auto;
        min-height:calc(100vh - 65px - env(safe-area-inset-top, 0px));
        min-height:calc(100dvh - 65px - env(safe-area-inset-top, 0px));
        max-height:none;
        margin:0;
        padding:0;
        border-radius:0;
        z-index:10000;
        overflow-x:hidden;
        overflow-y:auto;
        -webkit-overflow-scrolling:touch;
        overscroll-behavior:contain;
        transform:translate3d(0, 100%, 0);
        transform-origin:center bottom;
        transition:opacity 0.36s cubic-bezier(0.22, 1, 0.36, 1),
            transform 0.42s cubic-bezier(0.22, 1, 0.36, 1),
            visibility 0.36s;
    }
    body.footer-inquiry-fab-open .footer-inquiry-floating-mount {
        transform:translate3d(0, 0, 0);
    }
    .footer-inquiry-floating-mount .footer-inquiry-root {
        border-radius:0;
        border:0;
        box-shadow:none;
        min-height:100%;
        padding:24px 22px calc(28px + env(safe-area-inset-bottom,0px));
        box-sizing:border-box;
    }
    .footer-inquiry-floating-mount .footer-inquiry-sheet-head {
        display:block;
        text-align:center;
        margin:0 0 22px;
        padding:6px 8px 0;
        box-sizing:border-box;
    }
    .footer-inquiry-floating-mount .footer-inquiry-sheet-title {
        margin:0;
        font-size:24px;
        font-weight:800;
        color:#222;
        letter-spacing:-0.04em;
        line-height:1.2;
    }
    .footer-inquiry-floating-mount .footer-inquiry-sheet-sub {
        margin:12px 0 0;
        padding:0;
        font-size:15px;
        font-weight:400;
        color:#888;
        letter-spacing:-0.02em;
        line-height:1.55;
    }
    .footer-inquiry-floating-mount .inquiry-agreement-wrap .agreement-detail-box {
        max-height:min(40vh,200px);
    }
    .footer-inquiry-floating-mount .ipbox-footer .footer-inquiry-action-row {
        flex-wrap:nowrap;
        justify-content:center;
        align-items:stretch;
        gap:10px;
        padding:0 4px;
        margin-top:16px;
        margin-bottom:4px;
    }
    .footer-inquiry-floating-mount .ipbox-footer .footer-inquiry-sheet-close {
        display:inline-flex !important;
        align-items:center;
        justify-content:center;
        flex:0 0 auto;
        min-width:88px;
        height:56px;
        margin:0;
        padding:0 16px;
        font:inherit;
        font-size:16px;
        font-weight:600;
        color:#444;
        background:#fff;
        border:1px solid #e1e1e1;
        border-radius:10px;
        cursor:pointer;
        box-shadow:0 2px 10px rgba(0,0,0,0.06);
        -webkit-appearance:none;
        appearance:none;
    }
    .footer-inquiry-floating-mount .ipbox-footer .footer-inquiry-sheet-close:active {
        background:#f5f5f5;
    }
    .footer-inquiry-floating-mount .ipbox-footer .Inquiry-btn {
        flex:1;
        min-width:0;
        max-width:280px;
    }
    .footer-inquiry-floating-mount .ipbox-footer .Inquiry-btn button {
        max-width:none;
        width:100%;
    }
    body.footer-inquiry-fab-open #fixed-inquiry-cta {
        visibility:hidden;
        pointer-events:none;
        opacity:0;
    }
    .fixed-inquiry-cta.is-open .fixed-inquiry-toggle.fixed-inquiry-link {
        width:52px;
        height:52px;
        max-width:none;
        background:#fff;
        border:1px solid #e1e1e1;
        box-shadow:0 4px 16px rgba(0,0,0,0.10);
        justify-content:center;
        padding:0;
    }
    .fixed-inquiry-cta.is-open .fixed-inquiry-toggle.fixed-inquiry-link:hover {
        border-color:#bdbdbd;
        box-shadow:0 5px 18px rgba(0,0,0,0.14);
    }
    .fixed-inquiry-cta.is-open .fixed-inquiry-icon-close {
        background:transparent;
        border:0;
        width:52px;
        height:52px;
        min-width:52px;
    }
    .fixed-inquiry-cta.is-open .fixed-inquiry-icon-close svg {
        stroke:#888;
    }
}
