@charset "utf-8";
/* =================================================================
   법률형_1 (법무법인 · 변호사사무소) — 애드플랜 테마
   모든 선택자는 .lw- 로 시작한다. 게시판 스킨과 겹치지 않는다.
   --lw-blue 는 공용 크롬(헤더 · LNB · 맨위로)이 쓰는 강조색이라
   이름을 바꾸지 않고 남색으로 값만 맞췄다.
   ================================================================= */

:root{
  --lw-navy:#152f52;
  --lw-navy-d:#0d1f39;
  --lw-gold:#a8813f;
  --lw-blue:#152f52;
  --lw-blue-d:#0d1f39;
  --lw-ink:#15181c;
  --lw-body:#5f666f;
  --lw-line:#e1e5ea;
  --lw-bg:#f4f6f8;
  --lw-dark:#152f52;
  --lw-wrap:1240px;
  --lw-gutter:24px;
}

.lw-wrap{ max-width:var(--lw-wrap); margin:0 auto; padding:0 var(--lw-gutter); }

body{
  font-family:'Noto Sans KR','맑은 고딕',Malgun Gothic,sans-serif;
  color:var(--lw-body); background:#fff; letter-spacing:-.01em;
  padding-top:var(--lw-fixedh,110px);
}
.lw-skip{ position:absolute; left:-9999px; }
.lw-skip:focus{ left:10px; top:10px; z-index:999; background:#fff; padding:10px 16px; }

img{ max-width:100%; }
.lw-empty{ padding:40px 0; text-align:center; color:#999; font-size:14px; }
.lw-empty a{ color:var(--lw-blue); text-decoration:underline; }

.lw-ico{ width:38px; height:41px; flex:none; color:var(--lw-blue); }

/* --------------------------------------------------------------- 고정 상단 */
.lw-fixed{ position:fixed; top:0; left:0; right:0; z-index:100; background:#fff; }

.lw-demo{
  background:#111827; color:rgba(255,255,255,.72); text-align:center;
  padding:9px var(--lw-gutter); display:flex; justify-content:center; gap:8px 26px; flex-wrap:wrap;
  font-size:11.5px;
}
.lw-demo b{ color:#fff; }
.lw-demo a{ color:#fff; border-bottom:1px solid rgba(255,255,255,.5); padding-bottom:2px; }

/* 유틸리티 바 */
.lw-util{ background:#f7f8fa; border-bottom:1px solid var(--lw-line); font-size:12px; }
.lw-util__in{
  max-width:var(--lw-wrap); margin:0 auto; padding:0 var(--lw-gutter); height:34px;
  display:flex; align-items:center; justify-content:space-between;
}
.lw-util__tel{ color:var(--lw-ink); font-weight:700; letter-spacing:0; }
.lw-util__tel i{ color:var(--lw-blue); font-style:normal; }
.lw-util__nav{ display:flex; align-items:center; }
.lw-util__nav li{ position:relative; padding:0 12px; }
.lw-util__nav li + li::before{
  content:''; position:absolute; left:0; top:50%; width:1px; height:9px;
  margin-top:-4px; background:var(--lw-line);
}
.lw-util__nav a{ color:#8a8f98; }
.lw-util__nav a:hover{ color:var(--lw-ink); }

/* 헤더 */
.lw-header{ background:#fff; border-bottom:1px solid var(--lw-line); }
.lw-header__in{
  max-width:var(--lw-wrap); margin:0 auto; padding:0 var(--lw-gutter); height:76px;
  display:flex; align-items:center; gap:24px;
}
.lw-logo{ display:flex; align-items:baseline; gap:9px; flex:none; }
.lw-logo strong{ font-size:23px; font-weight:800; letter-spacing:-.02em; color:var(--lw-ink); }
.lw-logo strong em{ font-style:normal; color:var(--lw-blue); }
.lw-logo small{ font-size:11px; color:#9aa0a8; letter-spacing:-.02em; }

.lw-gnb{ margin-left:auto; }
.lw-gnb__ul{ display:flex; }
.lw-gnb__li{ position:relative; }
.lw-gnb__li > a{
  display:block; padding:0 26px; line-height:75px; font-size:16px; font-weight:600;
  color:var(--lw-ink); border-bottom:3px solid transparent;
}
.lw-gnb__li:hover > a,
.lw-gnb__li.is-on > a{ color:var(--lw-blue); border-bottom-color:var(--lw-blue); }
.lw-gnb__sub{
  position:absolute; left:50%; top:100%; transform:translateX(-50%);
  min-width:160px; background:#fff; border:1px solid var(--lw-line); border-top:0;
  padding:8px 0; opacity:0; visibility:hidden; transition:opacity .16s ease;
  box-shadow:0 12px 24px rgba(0,0,0,.07);
}
.lw-gnb__li:hover .lw-gnb__sub,
.lw-gnb__li:focus-within .lw-gnb__sub{ opacity:1; visibility:visible; }
.lw-gnb__sub a{ display:block; padding:9px 20px; font-size:14px; color:#555; text-align:center; }
.lw-gnb__sub a:hover{ background:var(--lw-bg); color:var(--lw-blue); }
.lw-gnb__empty{ font-size:13px; color:#999; }
.lw-gnb__empty a{ color:var(--lw-blue); text-decoration:underline; }

.lw-burger{
  display:none; margin-left:auto; width:40px; height:40px; background:none; border:0;
  flex-direction:column; justify-content:center; gap:5px; cursor:pointer;
}
.lw-burger span{ display:block; height:2px; background:var(--lw-ink); }

/* 모바일 드로어 */
.lw-drawer{ position:fixed; inset:0; z-index:200; }
.lw-drawer__bg{ position:absolute; inset:0; background:rgba(0,0,0,.45); }
.lw-drawer__panel{
  position:absolute; right:0; top:0; bottom:0; width:min(320px,86vw);
  background:#fff; padding:64px 26px 30px; overflow-y:auto;
}
.lw-drawer__close{ position:absolute; right:18px; top:18px; background:none; border:0; font-size:19px; cursor:pointer; }
.lw-drawer__panel > ul > li > a{
  display:block; padding:14px 0; font-size:16px; font-weight:700; color:var(--lw-ink);
  border-bottom:1px solid var(--lw-line);
}
.lw-drawer__panel ul ul{ padding:8px 0 12px 12px; }
.lw-drawer__panel ul ul a{ display:block; padding:7px 0; font-size:14px; color:var(--lw-body); }


/* --------------------------------------------------------------- 섹션 공통 */
.lw-sec{ padding:96px 0; }
.lw-en{
  font-size:12.5px; font-weight:700; letter-spacing:.16em; color:var(--lw-gold);
  text-transform:uppercase;
}
.lw-head{ text-align:center; margin-bottom:52px; }
.lw-head h2{
  margin-top:12px; font-size:clamp(26px,3.2vw,38px); font-weight:800;
  letter-spacing:-.03em; color:var(--lw-ink);
}
.lw-head__d{ margin-top:16px; font-size:15px; line-height:1.85; color:var(--lw-body); }
.lw-head--light h2{ color:#fff; }
.lw-head--light .lw-head__d{ color:rgba(255,255,255,.72); }

.lw-more{ margin-top:44px; text-align:center; }
.lw-more a{
  display:inline-block; padding:14px 38px; font-size:14px; font-weight:700;
  color:var(--lw-ink); border:1px solid var(--lw-ink); transition:background .18s ease, color .18s ease;
}
.lw-more a:hover{ background:var(--lw-ink); color:#fff; }

/* 헤더 상담 버튼 */
.lw-hcta{
  flex:none; margin-left:26px; padding:11px 22px; font-size:14px; font-weight:700;
  color:#fff; background:var(--lw-navy); transition:background .18s ease;
}
.lw-hcta:hover{ background:var(--lw-gold); }

/* --------------------------------------------------------------- 히어로 */
.lw-hero{ position:relative; min-height:640px; overflow:hidden; color:#fff; }
.lw-hero__track{ position:absolute; inset:0; display:flex; will-change:transform; }
.lw-hero__slide{ flex:0 0 100%; height:100%; }
.lw-hero__slide img{ width:100%; height:100%; object-fit:cover; display:block; }
.lw-hero__dim{
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(8,18,34,.62) 0%, rgba(8,18,34,.5) 45%, rgba(8,18,34,.78) 100%);
}
.lw-hero__in{
  position:relative; z-index:3; max-width:var(--lw-wrap); margin:0 auto;
  padding:150px var(--lw-gutter) 120px; text-align:center;
}
.lw-hero__top{ font-size:clamp(14px,1.5vw,17px); letter-spacing:.04em; color:rgba(255,255,255,.82); }
.lw-hero__h{
  margin-top:18px; font-size:clamp(30px,4.6vw,56px); font-weight:800;
  line-height:1.25; letter-spacing:-.035em; text-shadow:0 2px 20px rgba(0,0,0,.35);
}
.lw-hero__d{
  margin-top:22px; font-size:clamp(14px,1.5vw,16.5px); line-height:1.9;
  color:rgba(255,255,255,.8);
}

/* 통합검색 */
.lw-search{
  display:flex; align-items:center; gap:10px; max-width:620px; margin:46px auto 0;
  background:rgba(255,255,255,.96); padding:8px 8px 8px 24px;
  box-shadow:0 18px 44px rgba(4,12,26,.34);
}
.lw-search__lb{ position:absolute; left:-9999px; }
.lw-search input[type=search]{
  flex:1; min-width:0; height:46px; border:0; background:none; outline:none;
  font-size:15px; color:var(--lw-ink);
}
.lw-search input[type=search]::placeholder{ color:#9aa0a8; }
.lw-search button{
  flex:none; width:52px; height:46px; border:0; cursor:pointer;
  background:var(--lw-navy); color:#fff;
}
.lw-search button:hover{ background:var(--lw-gold); }
.lw-search button svg{ width:20px; height:20px; }

/* --------------------------------------------------------------- 상담 정보 띠 */
.lw-band{
  position:relative; z-index:5; max-width:var(--lw-wrap);
  margin:-58px auto 0; padding:0 var(--lw-gutter);
}
.lw-band__in{
  display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; gap:34px;
  background:#fff; border:1px solid var(--lw-line); box-shadow:0 14px 38px rgba(12,24,44,.1);
  padding:26px 30px;
}
.lw-band__tel{ display:flex; align-items:center; gap:11px; color:var(--lw-ink); }
.lw-band__tel svg{ width:22px; height:22px; color:var(--lw-gold); flex:none; }
.lw-band__tel span{ font-size:25px; font-weight:800; letter-spacing:-.02em; }
.lw-band__hours{ display:flex; flex-direction:column; gap:4px; padding-left:34px; border-left:1px solid var(--lw-line); }
.lw-band__hours strong{ font-size:14.5px; font-weight:700; color:var(--lw-ink); }
.lw-band__hours small{ font-size:12.5px; color:#8a8f98; }
.lw-band__now{ display:flex; align-items:center; gap:8px; font-size:13.5px; color:#8a8f98; }
.lw-band__now i{ width:8px; height:8px; border-radius:50%; background:#c3c8ce; flex:none; }
.lw-band__now.is-open{ color:#1f7a4d; font-weight:700; }
.lw-band__now.is-open i{ background:#23a05f; box-shadow:0 0 0 4px rgba(35,160,95,.16); }
.lw-band__cta{
  flex:none; padding:15px 30px; font-size:14.5px; font-weight:700; color:#fff;
  background:var(--lw-navy); transition:background .18s ease;
}
.lw-band__cta:hover{ background:var(--lw-gold); }

/* --------------------------------------------------------------- 업무분야 */
.lw-fields{ position:relative; background:var(--lw-navy); overflow:hidden; }
.lw-fields__deco{ position:absolute; inset:0; pointer-events:none; }
.lw-fields__ring{
  position:absolute; left:-130px; top:70px; width:420px; height:420px;
  border:1px solid rgba(255,255,255,.09); border-radius:50%;
}
.lw-fields__slant{
  position:absolute; right:-160px; bottom:-120px; width:560px; height:560px;
  background:rgba(255,255,255,.03); transform:rotate(24deg);
}
.lw-fields .lw-wrap{ position:relative; z-index:2; }
.lw-fields__grid{
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px;
}
/* 계단식 — 열마다 조금씩 내려 앉는다 (레퍼런스의 엇갈린 배치를 그리드로 구현) */
.lw-fields__item:nth-child(4n+2){ transform:translateY(26px); }
.lw-fields__item:nth-child(4n+3){ transform:translateY(52px); }
.lw-fields__item:nth-child(4n+4){ transform:translateY(78px); }
.lw-fields__item a{
  display:flex; flex-direction:column; gap:20px; height:100%;
  padding:30px 26px 26px; min-height:186px;
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);
  color:#fff; transition:background .2s ease, border-color .2s ease, transform .2s ease;
}
.lw-fields__item a:hover{ background:var(--lw-gold); border-color:var(--lw-gold); transform:translateY(-5px); }
.lw-fields__item .lw-ico{ width:36px; height:39px; color:rgba(255,255,255,.78); }
.lw-fields__item a:hover .lw-ico{ color:#fff; }
.lw-fields__item strong{
  font-size:19px; font-weight:700; line-height:1.35; letter-spacing:-.02em; margin-top:auto;
}
.lw-fields__go{ display:block; }
.lw-fields__go svg{ width:22px; height:22px; color:rgba(255,255,255,.5); }
.lw-fields__item a:hover .lw-fields__go svg{ color:#fff; }
/* 마지막 줄이 아래로 삐져나가지 않도록 섹션 하단에 여유를 준다 */
.lw-fields{ padding-bottom:174px; }

/* --------------------------------------------------------------- 업무사례 */
.lw-tabs{
  display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-bottom:38px;
}
.lw-tabs button{
  padding:9px 18px; font-size:13.5px; font-weight:600; color:#6b7280;
  background:#fff; border:1px solid var(--lw-line); cursor:pointer;
  transition:background .16s ease, color .16s ease, border-color .16s ease;
}
.lw-tabs button:hover{ border-color:var(--lw-navy); color:var(--lw-navy); }
.lw-tabs button.is-on{ background:var(--lw-navy); border-color:var(--lw-navy); color:#fff; }

.lw-cases__grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.lw-cases__item a{
  display:flex; flex-direction:column; height:100%; padding:26px 24px 22px;
  background:#fff; border:1px solid var(--lw-line);
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.lw-cases__item a:hover{
  border-color:var(--lw-navy); box-shadow:0 16px 34px rgba(12,24,44,.1); transform:translateY(-4px);
}
.lw-cases__tags{ display:flex; flex-wrap:wrap; gap:6px; }
.lw-cases__result{
  padding:5px 11px; font-size:12px; font-weight:800; color:#fff; background:var(--lw-gold);
}
.lw-cases__tags span{
  padding:5px 11px; font-size:12px; font-weight:600; color:var(--lw-navy);
  background:#eef2f8;
}
.lw-cases__item h3{
  margin-top:16px; font-size:16.5px; font-weight:700; line-height:1.5;
  letter-spacing:-.02em; color:var(--lw-ink);
}
.lw-cases__item p{
  margin-top:12px; font-size:13.5px; line-height:1.8; color:var(--lw-body);
}
.lw-cases__item time{
  margin-top:auto; padding-top:18px; font-size:12.5px; color:#9aa0a8;
}
.lw-cases__none{ padding:50px 0; text-align:center; font-size:14px; color:#8a8f98; }

/* --------------------------------------------------------------- 구성원 */
.lw-members{ background:var(--lw-bg); }
.lw-members__grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.lw-members__item a{ display:block; height:100%; background:#fff; border:1px solid var(--lw-line); }
.lw-members__item a:hover{ border-color:var(--lw-navy); }
.lw-members__pic{
  position:relative; aspect-ratio:4/5; max-width:100%; overflow:hidden;
  background:var(--lw-navy); display:flex; align-items:center; justify-content:center;
}
.lw-members__pic img{ width:100%; height:100%; object-fit:cover; display:block; }
.lw-members__ini{
  font-size:44px; font-weight:800; letter-spacing:-.04em; color:rgba(255,255,255,.32);
}
.lw-members__txt{ padding:22px 22px 24px; }
.lw-members__role{ font-size:12.5px; font-weight:700; color:var(--lw-gold); }
.lw-members__txt h3{
  margin-top:7px; font-size:19px; font-weight:800; letter-spacing:-.02em; color:var(--lw-ink);
}
.lw-members__field{ margin-top:11px; font-size:13.5px; font-weight:600; color:var(--lw-navy); }
.lw-members__career{ margin-top:8px; font-size:13px; line-height:1.75; color:var(--lw-body); }

/* --------------------------------------------------------------- 소식 · 칼럼 */
.lw-insight__cols{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:44px; }
.lw-insight__col h3{
  display:flex; align-items:baseline; justify-content:space-between;
  padding-bottom:16px; border-bottom:2px solid var(--lw-ink);
  font-size:19px; font-weight:800; color:var(--lw-ink);
}
.lw-insight__col h3 a{ font-size:13px; font-weight:600; color:#8a8f98; }
.lw-insight__col h3 a:hover{ color:var(--lw-navy); }
.lw-insight__col li{ border-bottom:1px solid var(--lw-line); }
.lw-insight__col li a{
  display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px 2px;
}
.lw-insight__col li a span{
  font-size:14.5px; color:var(--lw-ink); overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.lw-insight__col li a:hover span{ color:var(--lw-navy); text-decoration:underline; }
.lw-insight__col li a time{ flex:none; font-size:12.5px; color:#9aa0a8; }

/* --------------------------------------------------------------- 상담 신청 */
.lw-counsel{ background:var(--lw-navy); color:#fff; }
.lw-counsel__in{ display:grid; grid-template-columns:330px 1fr; gap:60px; align-items:start; }
.lw-counsel__side h2{
  margin-top:12px; font-size:clamp(26px,3vw,34px); font-weight:800; letter-spacing:-.03em; color:#fff;
}
.lw-counsel__side p{ margin-top:18px; font-size:14.5px; line-height:1.9; color:rgba(255,255,255,.74); }
.lw-counsel__tel{
  display:block; margin-top:30px; font-size:29px; font-weight:800;
  letter-spacing:-.02em; color:#fff;
}
.lw-counsel__tel:hover{ color:var(--lw-gold); }
.lw-counsel__hours{ display:block; margin-top:6px; font-size:13px; color:rgba(255,255,255,.6); }

.lw-form{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 20px;
  background:#fff; padding:34px 32px 32px;
}
.lw-form__done{
  grid-column:1 / -1; padding:15px 18px; background:#eaf6ef; color:#1f7a4d;
  font-size:14px; font-weight:700;
}
.lw-form__row{ display:flex; flex-direction:column; gap:8px; }
.lw-form__row.is-wide{ grid-column:1 / -1; }
.lw-form__row label,
.lw-form__lb{ font-size:13.5px; font-weight:700; color:var(--lw-ink); }
.lw-form__row label b,
.lw-form__lb b{ color:#c0392b; }
.lw-form__row input[type=text],
.lw-form__row input[type=tel],
.lw-form__row select,
.lw-form__row textarea{
  width:100%; padding:12px 14px; font-size:14.5px; color:var(--lw-ink);
  border:1px solid var(--lw-line); background:#fff; font-family:inherit;
}
.lw-form__row textarea{ resize:vertical; line-height:1.75; }
.lw-form__row input:focus,
.lw-form__row select:focus,
.lw-form__row textarea:focus{ outline:2px solid var(--lw-navy); outline-offset:-2px; }
.lw-form__captcha{ gap:10px; }
.lw-form__agree{ grid-column:1 / -1; font-size:13px; color:var(--lw-body); }
.lw-form__agree label{ font-weight:600; color:var(--lw-ink); }
.lw-form__agree > a{ margin-left:8px; color:var(--lw-navy); text-decoration:underline; }
.lw-form__agree p{ margin-top:8px; font-size:12px; line-height:1.7; color:#8a8f98; }
.lw-form__err{
  grid-column:1 / -1; padding:12px 16px; background:#fdecea; color:#c0392b;
  font-size:13.5px; font-weight:600;
}
.lw-form__submit{
  grid-column:1 / -1; height:56px; border:0; cursor:pointer;
  background:var(--lw-navy); color:#fff; font-size:16px; font-weight:800; font-family:inherit;
  transition:background .18s ease;
}
.lw-form__submit:hover{ background:var(--lw-gold); }
.lw-form__submit:disabled{ background:#9aa0a8; cursor:default; }

/* --------------------------------------------------------------- 오시는 길 */
.lw-map__in{ display:grid; grid-template-columns:1fr 1.1fr; gap:56px; align-items:center; }
.lw-map__txt h2{
  margin-top:12px; font-size:clamp(26px,3vw,34px); font-weight:800;
  letter-spacing:-.03em; color:var(--lw-ink);
}
.lw-map__txt dl{ margin-top:30px; display:grid; grid-template-columns:96px 1fr; gap:14px 16px; }
.lw-map__txt dt{ font-size:13.5px; font-weight:700; color:var(--lw-navy); }
.lw-map__txt dd{ font-size:14.5px; line-height:1.8; color:var(--lw-body); }
.lw-map__txt dd a{ color:var(--lw-ink); font-weight:700; }
.lw-map__go{
  display:inline-block; margin-top:30px; padding:13px 28px; font-size:14px; font-weight:700;
  color:#fff; background:var(--lw-navy);
}
.lw-map__go:hover{ background:var(--lw-gold); }
.lw-map__pic img{ width:100%; max-width:100%; display:block; }


/* --------------------------------------------------------------- 서브페이지 */
.lw-sbanner{ position:relative; height:220px; overflow:hidden; }
.lw-sbanner > img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.lw-sbanner::after{ content:''; position:absolute; inset:0; background:rgba(14,26,44,.5); }
.lw-sbanner__in{
  position:relative; z-index:2; height:100%; display:flex; flex-direction:column;
  align-items:center; justify-content:center; color:#fff; text-align:center;
}
.lw-sbanner__top{ font-size:16px; color:rgba(255,255,255,.85); }
.lw-sbanner__h{ font-size:31px; font-weight:800; color:#fff; margin-top:6px; }

.lw-crumb{ background:var(--lw-bg); border-bottom:1px solid var(--lw-line); }
.lw-crumb__in{
  max-width:var(--lw-wrap); margin:0 auto; padding:0 var(--lw-gutter); height:46px;
  display:flex; align-items:center; justify-content:flex-end; gap:10px; font-size:12.5px; color:#8a8f98;
}
.lw-crumb__in span::before{ content:'›'; margin-right:10px; color:#c3c8ce; }
.lw-crumb__in a{ color:var(--lw-blue); }

.lw-sub{ padding:56px 0 96px; }
.lw-sub__in{
  max-width:var(--lw-wrap); margin:0 auto; padding:0 var(--lw-gutter);
  display:grid; grid-template-columns:210px 1fr; gap:52px; align-items:start;
}
.lw-sub__in.is-full{ grid-template-columns:1fr; gap:0; }
.lw-lnb h2{
  font-size:19px; font-weight:800; color:var(--lw-ink);
  padding-bottom:16px; border-bottom:2px solid var(--lw-ink);
}
.lw-lnb li a{
  display:block; padding:13px 16px; font-size:14px; color:#777;
  border-bottom:1px solid var(--lw-line);
}
.lw-lnb li a:hover{ color:var(--lw-blue); }
.lw-lnb li.is-on a{ background:#eef5fd; color:var(--lw-blue); font-weight:700; }
.lw-sub__h{ font-size:26px; font-weight:800; color:var(--lw-ink); margin-bottom:26px; }
.lw-sub__body #bo_list, .lw-sub__body #bo_v, .lw-sub__body #bo_w, .lw-sub__body #bo_vc{
  --adb-maxw:100%; --adb-gutter:0;
}

/* --------------------------------------------------------------- 푸터 */
.lw-footer{ background:#2b2b2b; color:#9a9a9a; padding:46px 0 40px; text-align:center; }
.lw-footer__in{ max-width:var(--lw-wrap); margin:0 auto; padding:0 var(--lw-gutter); }
.lw-logo--foot{ justify-content:center; }
.lw-logo--foot strong{ color:#fff; }
.lw-logo--foot strong em{ color:#5eb0ff; }
.lw-logo--foot small{ color:#8a8a8a; }
.lw-footer__nav{
  display:flex; justify-content:center; flex-wrap:wrap; margin-top:26px;
  padding-top:22px; border-top:1px solid rgba(255,255,255,.13); font-size:13px;
}
.lw-footer__nav li{ position:relative; padding:0 14px; }
.lw-footer__nav li + li::before{
  content:''; position:absolute; left:0; top:50%; width:1px; height:10px; margin-top:-5px;
  background:rgba(255,255,255,.2);
}
.lw-footer__nav a{ color:#b5b5b5; }
.lw-footer__nav a:hover{ color:#fff; }
.lw-footer__nav a.is-strong{ color:#fff; font-weight:700; }
.lw-footer__info{ margin-top:20px; font-size:12.5px; line-height:1.9; color:#8a8a8a; }
.lw-footer__info a{ color:#b5b5b5; }
.lw-footer__ad{ margin-top:14px; font-size:12.5px; color:#8a8a8a; }
.lw-footer__copy{ margin-top:16px; font-size:12px; color:#6e6e6e; }

.lw-top{
  position:fixed; right:22px; bottom:22px; z-index:90; width:44px; height:44px;
  background:var(--lw-dark); color:#fff; border:0; cursor:pointer; font-size:13px;
  opacity:0; visibility:hidden; transition:opacity .2s ease;
}
.lw-top.is-on{ opacity:.85; visibility:visible; }
.lw-top:hover{ opacity:1; background:var(--lw-blue); }


/* --------------------------------------------------------------- 반응형 */
@media (max-width:1180px){
  .lw-gnb__li > a{ padding:0 15px; font-size:15px; }
  .lw-hcta{ margin-left:16px; padding:10px 16px; font-size:13px; }
  .lw-band__in{ grid-template-columns:auto 1fr auto; gap:24px; }
  .lw-band__cta{ grid-column:1 / -1; text-align:center; }
  .lw-cases__grid,
  .lw-members__grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  /* 열 수가 바뀌면 계단 오프셋을 다시 계산한다 */
  .lw-fields__grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .lw-fields__item:nth-child(4n+2),
  .lw-fields__item:nth-child(4n+3),
  .lw-fields__item:nth-child(4n+4){ transform:none; }
  .lw-fields__item:nth-child(3n+2){ transform:translateY(26px); }
  .lw-fields__item:nth-child(3n+3){ transform:translateY(52px); }
  .lw-fields{ padding-bottom:148px; }
}
@media (max-width:1024px){
  .lw-counsel__in{ grid-template-columns:1fr; gap:36px; }
}
@media (max-width:900px){
  .lw-gnb{ display:none; }
  .lw-burger{ display:flex; }
  .lw-header__in{ height:64px; }
  .lw-hcta{ display:none; }
  .lw-sec{ padding:72px 0; }
  .lw-hero{ min-height:560px; }
  .lw-hero__in{ padding:110px var(--lw-gutter) 96px; }
  .lw-band{ margin-top:-42px; }
  .lw-band__in{ grid-template-columns:1fr; gap:18px; padding:24px 24px 26px; text-align:center; }
  .lw-band__tel{ justify-content:center; }
  .lw-band__hours{ padding-left:0; border-left:0; align-items:center; }
  .lw-band__now{ justify-content:center; }
  .lw-cases__grid,
  .lw-members__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lw-fields__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lw-fields__item:nth-child(3n+2),
  .lw-fields__item:nth-child(3n+3){ transform:none; }
  .lw-fields__item:nth-child(2n){ transform:translateY(24px); }
  .lw-fields{ padding-bottom:110px; }
  .lw-insight__cols{ grid-template-columns:1fr; gap:38px; }
  .lw-map__in{ grid-template-columns:1fr; gap:32px; }
  .lw-sub__in{ grid-template-columns:1fr; gap:30px; }
  .lw-lnb ul{ display:flex; flex-wrap:wrap; }
  .lw-lnb li a{ border-bottom:0; padding:10px 14px; }
}
@media (max-width:640px){
  :root{ --lw-gutter:18px; }
  .lw-util__tel{ display:none; }
  .lw-util__in{ justify-content:flex-end; }
  .lw-sec{ padding:58px 0; }
  .lw-head{ margin-bottom:36px; }
  .lw-hero{ min-height:500px; }
  .lw-hero__in{ padding:92px var(--lw-gutter) 84px; }
  .lw-search{ padding:6px 6px 6px 16px; margin-top:34px; }
  .lw-search input[type=search]{ height:42px; font-size:14px; }
  .lw-search button{ width:46px; height:42px; }
  .lw-band__tel span{ font-size:22px; }
  .lw-fields__grid{ grid-template-columns:1fr; gap:12px; }
  .lw-fields__item:nth-child(2n){ transform:none; }
  .lw-fields__item a{ min-height:0; padding:22px 22px; flex-direction:row; align-items:center; gap:16px; }
  .lw-fields__item strong{ margin-top:0; font-size:17px; }
  .lw-fields__go{ margin-left:auto; }
  .lw-fields{ padding-bottom:58px; }
  .lw-cases__grid{ grid-template-columns:1fr; }
  .lw-members__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  .lw-members__txt{ padding:18px 16px 20px; }
  .lw-members__txt h3{ font-size:17px; }
  .lw-form{ grid-template-columns:1fr; padding:26px 20px 24px; }
  .lw-counsel__tel{ font-size:25px; }
  .lw-map__txt dl{ grid-template-columns:80px 1fr; }
  .lw-sbanner{ height:170px; }
  .lw-sbanner__h{ font-size:24px; }
  .lw-more a{ padding:13px 28px; }
}
