/* sitemap-B */
#sitemap {opacity: 1; transition: all 0.2s ease;}
#sitemap:hover {opacity: 0.6;}
.dialog-widget-content {backdrop-filter: blur(10px);}
svg.e-font-icon-svg {width: 3.5rem !important; height: 3.5rem !important; z-index: 5;}
/* sitemap::after design */
.sitemap .elementor-heading-title {position: relative; display: inline-block;}
.sitemap .elementor-heading-title::after {content: ''; position: absolute; top: -1.5rem; right: -1rem; width: 0.7rem; height: 0.7rem; transform: translateY(-30px); border-radius: 50%; background-color: var(--main-color); opacity: 0; transition: all 0.3s ease;}
.sitemap .sitemap-sub:hover .elementor-heading-title::after {opacity: 1; transform: translateY(0px);}

/* common design */
.common-title 
{font-size: 5.4rem; font-weight: 600;  margin-bottom: 2.5rem; letter-spacing: -0.14rem;}
.common-detail
{font-size: 2rem; font-weight: 500; color: var(--sub-color); letter-spacing: -0.1rem;}
.filter 
{filter: invert(1) brightness(0);}
.hide-menu {display:none !important;}

/* sub visual */
#subVisual
{position: relative; overflow: hidden;}
#subNavCon
{position: absolute; bottom: 3rem; backdrop-filter: blur(5px);}
#subNav .elementor-item
{border-bottom:3px solid transparent;}
#subNav .elementor-item:after 
{display:none;}
#subNav .elementor-item:hover
{background-color: var(--bg-color);;}
#subNav .elementor-item-active
{background-color: var(--bg-color);;}
#subVisual #subNav ul.elementor-nav-menu li:last-child a:after { display: none; } 
 
#subVisual #subNav ul.elementor-nav-menu li.current-menu-item a,
#subVisual #subNav ul.elementor-nav-menu li.current-page-ancestor a { color: var(--main-color);  } 
#subNav .elementor-item:hover
{border-bottom:3px solid var(--main-color); border-radius:0;} 
/* #subVisual #subNav ul.elementor-nav-menu li.current-menu-item a:after,
#subVisual #subNav ul.elementor-nav-menu li.current-page-ancestor a:after 
{background-color:var(--main-color);} */
/* sub design */
#subContent,.business-con01
{margin: 10rem 0;}
.sub-title-con 
{margin: 10rem 0;}
.business-con
{margin: 8rem 0;}
.title-wrap01
{text-align: center;}
.title-wrap01 h2
{position: relative; display: inline-block; text-align: center; font-size: 4.5rem; font-weight:700;}
.title-wrap01 h2::after
{content: ""; position: absolute; top: -1rem; left: -1rem; width: 1rem; height: 1rem; background-color: var(--main-color); border-radius: 50%;}

/* header,footer,top */
.header
{position: relative; background-color: #fff; transition: all 0.3s ease-in-out; z-index: 99;}
.header.fixed {position: fixed !important; top: 0; left: 0; width: 100%; box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.1);}

#footer
{background-color: #263238; box-shadow: 0 -1px 3px rgba(0, 0, 0, 0.05);}
.footer-container
{padding: 6rem 0;}
.footer-wrap 
{display: flex; justify-content: space-between;}
.footer-left .footer-logo
{padding-bottom: 3.5rem;}
.footer-left .f-poliy ul
{display: flex; gap: 2.5rem; padding-bottom: 2rem;}
.footer-left .f-poliy ul li a
{display: block; font-size: 1.8rem; font-weight: 500; color: #fff;}
.footer-left .f-adress ul
{display: flex; gap: 1.5rem;}
.footer-left .f-adress ul li
{position: relative; font-size: 1.6rem; font-weight: 400; color: #fff;}
.footer-left .f-adress ul li::before
{content: ""; position: absolute; top: 50%; transform: translateY(-50%); right: -8px; width: 1px; height: 100%; background-color: #fff;}
.footer-left .f-adress ul li:nth-last-child(1)::before
{display: none;}
.footer-right
{width: 26%; padding: 4rem 5rem; background-color: #ffffff15; border-radius: 2rem;}
.footer-right .tell-wrap
{padding-bottom: 3rem;}
.footer-right .tell-wrap p
{padding-bottom: 1.5rem; font-size: 2rem; font-weight: 300; color: #fff; letter-spacing: -0.14rem;}
.footer-right .tell-wrap h2
{font-size: 3.6rem; font-weight: 600; color: #fff; letter-spacing: -0.2rem;}
.footer-right .mail-wrap p
{font-size: 1.8rem; font-weight: 400; color: #fff; letter-spacing: -0.1rem;}
.footer-right .mail-wrap p:nth-of-type(1)
{padding-bottom: 1rem;}
.footer-wrap .capyright
{padding-top: 4.5rem; font-size: 1.4rem; font-weight: 300; letter-spacing: -0.1rem; color: #fff;}

#top
{position: fixed; bottom: 10rem; right: 10rem; z-index: 30;}
.top-wrap ul
{display: flex; flex-direction: column; align-items: flex-end; gap: 1.5rem;}
.top-wrap .item
{width:6.4rem; height: 6.4rem; border-radius: 50rem; background-color: #fff; box-shadow: 0 0 5px rgba(0, 0, 0, 0.2); transition: width 0.6s ease;}
.top-wrap .item a
{width: 100%; height: 100%; display: flex; align-items: center;}
.top-wrap .item img 
{position: absolute; right: 1rem; transform: translateX(-50%);}
.top-wrap .item.req img
{transform: translateX(-10%);}
.top-wrap .item a p
{position: absolute; left: 3rem; font-size: 1.6rem; font-weight: 600; color: var(--txt-color); opacity: 0; transition: opacity 0.5s ease;}
.top-wrap .item.req 
{background-color: var(--main-color);}
.top-wrap .item.req p
{color: #fff;}

.top-wrap .item:hover {width: 18rem;}
.top-wrap .item:hover a {padding: 2rem;}
.top-wrap .item:hover p {opacity: 1; transition-delay: 0.2s;}

/* animation--------------------------- */

/* 서브페이지 or 섹션용 animation 위로 */
#visualCon,#guickCon,#productCon,#quickCon
{opacity: 0; transform: translateY(50px); transition: all 0.6s ease; overflow: hidden;}
#visualCon.active,#guickCon.active,#productCon.active,#quickCon.active
{opacity: 1; transform: translateY(0);}

.title-wrap01, .business-con01,.business-con,
.company-con, .business-sub-con ,.guide-box,
.img-con .img,.pro-wrap, .sub-category-con
{opacity: 0; transform: translateY(50px); transition: all 0.6s ease;}
.title-wrap01.active, .business-con01.active,.business-con.active,
.company-con.active, .business-sub-con.active ,.guide-box.active,
.img-con .img.active,.pro-wrap.active ,.sub-category-con.active
{opacity: 1; transform: translateY(0);}

/* animation 좌우에서 */
.gui-left,.pro-left,.footer-left,
.greeting-txt-con
{opacity: 0; transform: translateX(-30px); transition: all 0.6s ease;}
.gui-right,.pro-right,.footer-right
,.greeting-img-con
{opacity: 0; transform: translateX(30px); transition: all 0.6s ease;}

.gui-left.active,.gui-right.active,
.pro-left.active,.pro-right.active,
.footer-left.active,.footer-right.active,
.greeting-txt-con.active,.greeting-img-con.active
{opacity: 1; transform: translate(0, 0);}

/* animation - 도로록, 나란히 하나씩 올라오기 */
.qui-left ul li,.guide-box .icon-wrap ul li,.vis-item
,.greeting-con .title-wrap h3,
.greeting-con .txt-list li,
.gre-item,
.sub-detail ul li, .img-con .img
{opacity: 0; transform: translateY(30px); transition: opacity 0.6s ease, transform 0.6s ease;}
.qui-left ul li.active,.guide-box .icon-wrap ul li.active,.vis-item.active
,.greeting-con .title-wrap h3.active,
.greeting-con .txt-list li.active,
.gre-item.active,
.sub-detail ul li.active, .img-con .img.active
{opacity: 1; transform: translateY(0);}