@charset "utf-8";
:root{
  --inner: min(100% - 80px, 1280px);
  --inner-lg: min(100% - 120px, 1360px);
  --point:#0f68c9;
  --dark:#08131f;
  --line:#dfe6ee;
  --gray:#66707d;
}
.wrap{min-width:320px}
.section-inner,.header-inner{width:var(--inner);margin:0 auto}
.site-header{position:fixed;left:0;top:0;width:100%;z-index:50;background:rgba(8,19,31,.62);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08);transition:.3s ease}
.site-header.is-scrolled{background:rgba(8,19,31,.95)}
.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.logo a{display:flex;align-items:center;gap:12px;color:#fff}
.logo-mark{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#0f68c9;font-weight:800}
.logo-text{font-size:1.125rem;font-weight:800;letter-spacing:.08em}
.gnb{flex:1}
.gnb-list{display:flex;justify-content:center}
.gnb-list>li{position:relative}
.gnb-list>li>a{display:flex;align-items:center;height:88px;padding:0 22px;color:#fff;font-weight:500}
.depth2{position:absolute;left:50%;top:100%;transform:translateX(-50%);min-width:220px;padding:14px 0;background:rgba(8,19,31,.98);border:1px solid rgba(255,255,255,.1);opacity:0;visibility:hidden;transition:.25s ease}
.gnb-list>li:hover .depth2,.gnb-list>li:focus-within .depth2{opacity:1;visibility:visible}
.depth2 a{display:block;padding:10px 24px;color:rgba(255,255,255,.82)}
.depth2 a:hover,.depth2 a:focus{background:rgba(255,255,255,.07);color:#fff}
.header-util{display:flex;align-items:center;gap:16px}
.header-util>a{color:rgba(255,255,255,.82);font-size:.9375rem}
.menu-btn{display:none;position:relative;width:42px;height:42px}
.menu-btn span{position:absolute;left:9px;width:24px;height:2px;background:#fff;transition:.2s ease}
.menu-btn span:nth-child(1){top:12px}
.menu-btn span:nth-child(2){top:20px}
.menu-btn span:nth-child(3){top:28px}
.mobile-menu{position:fixed;right:0;top:0;width:min(88vw,420px);height:100vh;background:#08131f;color:#fff;transform:translateX(100%);transition:transform .3s ease;z-index:80}
.mobile-menu.is-open{transform:translateX(0)}
.mobile-menu-inner{display:flex;flex-direction:column;height:100%;padding:24px 20px 40px}
.mobile-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.1)}
.menu-close{font-size:2rem;line-height:1}
.mobile-nav{margin-top:14px;overflow-y:auto}
.mobile-nav>li{border-bottom:1px solid rgba(255,255,255,.08)}
.mobile-nav>li>button{position:relative;width:100%;padding:18px 24px 18px 0;text-align:left;font-weight:700}
.mobile-nav>li>button:after{content:'+';position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:1.25rem}
.mobile-nav>li.is-open>button:after{content:'−'}
.mobile-nav>li>ul{display:none;padding:0 0 12px}
.mobile-nav>li.is-open>ul{display:block}
.mobile-nav a{display:block;padding:8px 0;color:rgba(255,255,255,.8)}
.section{padding:110px 0}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px}
.section-label{display:block;margin-bottom:10px;color:var(--point);font-size:.875rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.section-head h3,.text-area h3,.esg-left h3{font-size:2.5rem;line-height:1.22;letter-spacing:-.03em}
.section-copy,.desc{color:var(--gray)}
.text-link{display:inline-flex;margin-top:24px;color:var(--point);font-weight:700}
.site-footer{padding:46px 0 56px;background:#0e1721;color:rgba(255,255,255,.78)}
.footer-inner{display:grid;gap:16px}
.footer-brand strong{display:block;margin-bottom:6px;color:#fff;font-size:1.125rem}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 20px}
.footer-links a:first-child{color:#fff;font-weight:700}
address{font-style:normal}
@media (min-width:1440px){.section-inner,.header-inner{width:var(--inner-lg)}}
@media (max-width:1439px){.gnb-list>li>a{padding:0 18px}}
@media (max-width:1279px){:root{--inner:min(100% - 56px,1200px)}.header-inner{height:82px;gap:20px}.gnb-list>li>a{padding:0 13px;font-size:.95rem}.section{padding:96px 0}.section-head h3,.text-area h3,.esg-left h3{font-size:2.2rem}}
@media (max-width:767px){:root{--inner:calc(100% - 40px)}.header-inner{height:72px}.logo-mark{width:36px;height:36px}.logo-text{font-size:1rem}.gnb,.header-util>a{display:none}.menu-btn{display:block}.section{padding:72px 0}.section-head{display:block;margin-bottom:24px}.section-head h3,.text-area h3,.esg-left h3{font-size:1.8rem}}
@media (max-width:320px){:root{--inner:calc(100% - 28px)}.logo-text{font-size:.92rem}.section-head h3,.text-area h3,.esg-left h3{font-size:1.6rem}}
