 @charset "utf-8";
/* doc.css는 디자인페이지 스타일을 정의합니다. */
.root_daum_roughmap {width:100% !important; height:clamp(250px, calc( 440 / var(--inner) * 100vw ), 440px) !important;}
.root_daum_roughmap .wrap_map {height:clamp(250px, calc( 440 / var(--inner) * 100vw ), 440px) !important;}
.roughmap_lebel_text {line-height:0 !important; font-size:0 !important;}
.roughmap_lebel_text:after {content:"경기 군포시 고산로 148번길 17 "; font-size:12px; line-height:15px;}

.bullet-item .bullet-list {position:relative; padding-left:15px; margin-top:10px; line-height:1.3;}
.bullet-item .bullet-list:first-child {margin-top:0;}
.bullet-item .bullet-list::before {position:absolute; content:''; left:0; top:9px; width:3px; height: 3px; background:var(--color-primary); border-radius: 50%;}
.bullet-item .bullet-list.none {padding-left: 0;}
.bullet-item .bullet-list.none::before {display: none;}
.bulletitem2 { padding-left: 0.6em; text-indent: -0.6em;}

/*  css 파일 추가 처리(선택사항)  */
.fr-box .swiper-wrapper {display:block;}

.blocker {z-index: 100;}
.modal {max-width:980px; width: 100%;}

.bg-gray {background:#F3F3F3 ;}
.overhidden {overflow: hidden;}
.subsec-pd {padding: clamp(50px, calc( 120 / var(--inner) * 100vw ), 120px) 0;}
.subsec-pd2 {padding: clamp(40px, calc( 80 / var(--inner) * 100vw ), 80px) 0;}

.radiobx {display: flex; flex-wrap: wrap;}
.radiobx .item {display: flex;align-items: center; min-height: clamp(38px, calc( 44 / var(--inner) * 100vw ), 44px);}
.radiobx .item:not(:last-child) {margin-right: clamp(15px, calc( 40 / var(--inner) * 100vw ), 40px);}

.insubtitbx {margin-bottom: var(--padding-40); letter-spacing: -0.6px;}
.insubtitbx .intit {font-size: var(--font-size-32); font-weight: 600;}
.insubtitbx .inlinetit {padding-left:15px; position: relative; font-size:var(--font-size-24); font-weight: 600; line-height: 1;}
.insubtitbx .inlinetit::before {content:''; position: absolute; left:0; top:0; width:4px; height:clamp(18px, calc( 24 / var(--inner) * 100vw ), 24px); background:var(--color-primary); border-radius:8px;}

.sub1_1_1 {overflow: hidden;}
.sub1_1_1 .toptxt {margin-bottom:clamp(-40px, calc( -40 / var(--inner) * 100vw ), -10px) ; font-size:clamp(40px, calc( 140 / var(--inner) * 100vw ), 140px); font-weight: 800; line-height: 1.2; letter-spacing: 2.8px; white-space: nowrap; text-align: center; color: rgba(18, 18, 18, 0.06);}
.sub1_1_1 .bgbx {background: url(../images/sub/sub1_1_1-bg.jpg) no-repeat center center /cover; height: clamp(320px, calc( 578 / var(--inner) * 100vw ), 578px);}
.sub1_1_1 .bgbx .contain {position: relative; height: 100%;}
.sub1_1_1 .bgbx .textbx { position: absolute; bottom: var(--padding-40); right: 0; padding: 0 16px; color: #fff; letter-spacing: -0.7px;}
.sub1_1_1 .bgbx .inner {display: flex;flex-direction: column;gap:12px;}
.sub1_1_1 .txt1 {font-size: var(--font-size-32); font-weight: 600; line-height: 1.56;}
.sub1_1_1 .txt2 {font-size: var(--font-size-18); line-height: 1.66;}

.vm-wrap {display:flex; flex-direction:column; gap:var(--padding-30);}
.vm-block {position:relative; overflow:hidden; width:100%; min-height:clamp(120px, calc(150 / var(--inner) * 100vw), 150px); padding:clamp(24px, calc(60 / var(--inner) * 100vw), 60px) clamp(20px, calc(100 / var(--inner) * 100vw), 100px); border-radius:clamp(40px, calc(80 / var(--inner) * 100vw), 80px) 0 clamp(40px, calc(80 / var(--inner) * 100vw), 80px) 0; box-sizing:border-box;}
.vm-block--vision {background:#fef1f1;}
.vm-block--mission {background:#fef8f1;}
.vm-block__inner {display:flex; flex-wrap:wrap; align-items:center; gap:clamp(20px, calc(80 / var(--inner) * 100vw), 80px); position:relative; z-index:1;}
.vm-block__label {flex-shrink:0; margin:0; width:clamp(72px, calc(96 / var(--inner) * 100vw), 96px); font-size:var(--font-size-28); font-weight:600; line-height:1.14; letter-spacing:-0.03em;}
.vm-block--vision .vm-block__label {color:var(--color-primary);}
.vm-block--mission .vm-block__label {color:#e8730d;}
.vm-block__bar {flex-shrink:0; width:2px; height:clamp(20px, calc(30 / var(--inner) * 100vw), 30px);}
.vm-block--vision .vm-block__bar {background:var(--color-primary);}
.vm-block--mission .vm-block__bar {background:#e8730d;}
.vm-block__txt {font-size:var(--font-size-18); font-weight:400; line-height:1.5; letter-spacing:-0.03em; color:var(--color-body);}

.sub1_1_3-grid {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--padding-40);}
.sub1_1_3-card__inner {display:flex; flex-direction:column; gap:clamp(28px, calc(44 / var(--inner) * 100vw), 44px); min-height:clamp(200px, calc(240 / var(--inner) * 100vw), 240px); padding:clamp(24px, calc(40 / var(--inner) * 100vw), 40px); background:var(--color-white); border-radius:clamp(12px, calc(16 / var(--inner) * 100vw), 16px); box-shadow:6px 6px 15px rgba(0,0,0,0.1); box-sizing:border-box;}
.sub1_1_3-card__top {display:flex; align-items:flex-start; justify-content:space-between; gap:var(--padding-20); width:100%;}
.sub1_1_3-card__head {display:flex; flex-direction:column; align-items:flex-start; gap:var(--padding-30); flex:1; min-width:0;}
.sub1_1_3-card__badge {display:inline-flex; align-items:center; justify-content:center; padding:4px clamp(12px, calc(16 / var(--inner) * 100vw), 16px); background:var(--color-primary); border-radius:clamp(18px, calc(24 / var(--inner) * 100vw), 24px); font-size:var(--font-size-16); font-weight:600; line-height:1.5; letter-spacing:-0.03em; color:var(--color-white);}
.sub1_1_3-card__tit {font-size:var(--font-size-24); font-weight:600; line-height:1; letter-spacing:-0.03em; color:#121212;}
.sub1_1_3-card__icon {width:clamp(35px, calc(48 / var(--inner) * 100vw), 48px); height:clamp(35px, calc(48 / var(--inner) * 100vw), 48px);}
.sub1_1_3-card__icon img {display:block; width:100%; height:auto; max-width:100%;}
.sub1_1_3-card__dec {font-size:var(--font-size-18); font-weight:400; line-height:1.67; letter-spacing:-0.03em; color:var(--color-body);}

.sub1_2_1 .logobx {padding: var(--padding-80) 10px; text-align: center; background: #fff; border: 1px solid #ddd; border-radius:16px;}
.sub1_2_1 .logobx img {width:clamp(220px, calc(375 / var(--inner) * 100vw), 375px);}
.sub1_2_1-meta { display:flex; flex-wrap:nowrap; align-items:center; justify-content:center; gap:var(--meta-gap); margin:var(--padding-60) 0 0;}
.sub1_2_1-meta__item {flex: 1 0 33.33%; max-width: 33.33%; position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--padding-30); text-align:center;}
.sub1_2_1-meta__item:not(:last-child)::after {content:""; position:absolute; top:50%; right:0; width:2px; height:clamp(24px, calc(30 / var(--inner) * 100vw), 30px); background:#ddd; transform:translate(50%, -50%);}
.sub1_2_1-meta__icon {display:flex; align-items:center; justify-content:center; width:clamp(40px, calc(56 / var(--inner) * 100vw), 56px); height:clamp(40px, calc(56 / var(--inner) * 100vw), 56px);}
.sub1_2_1-meta__icon img {display:block; width:100%; height:auto; max-width:100%;}
.sub1_2_1-meta__body {display:flex; flex-direction:column; align-items:center; gap:var(--padding-16); width:100%;}
.sub1_2_1-meta__tit {font-size:var(--font-size-24); font-weight:600; line-height:1; letter-spacing:-0.03em; color:#121212;}
.sub1_2_1-meta__txt {font-size:var(--font-size-18); font-weight:400; line-height:1; letter-spacing:-0.03em; color:var(--color-body);}

.sub1_2_2-grid {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--padding-40); justify-items:center;}
.sub1_2_2-card {display:flex; flex-direction:column; align-items:center; gap:var(--padding-30); width: 100%;}
.sub1_2_2-card__inner {display:flex; align-items:center; justify-content:center;  width:100%;  background:var(--color-white); border-radius:clamp(12px, calc(16 / var(--inner) * 100vw), 16px); box-shadow:6px 6px 30px rgba(0,0,0,0.1); border:1px solid #ddd;}
.sub1_2_2-card__media {flex:1; width:100%; min-height:0;  border-radius:clamp(12px, calc(16 / var(--inner) * 100vw), 16px); overflow:hidden; display:flex; align-items:center; justify-content:center;}
.sub1_2_2-card__media img {display:block; width:100%; height:100%; object-fit:contain; transition:transform .45s ease;}
.sub1_2_2-card:hover .sub1_2_2-card__media img, .sub1_2_2-card:focus-within .sub1_2_2-card__media img {transform:scale(1.09);}
.sub1_2_2-card__cap {font-size:var(--font-size-18); font-weight:400; line-height:1; letter-spacing:-0.03em; color:var(--color-body); text-align:center;}

.location-bar {margin-top:clamp(-60px, calc(-60 / var(--inner) * 100vw), -20px); position: relative;z-index: 20;}
.location-bar__inner {display:flex; flex-wrap:wrap; align-items:flex-end; gap:var(--padding-50);}
.location-bar__addr {display:flex; flex-direction:column; gap:clamp(40px, calc(60 / var(--inner) * 100vw), 60px); flex-shrink:0; width:100%; max-width:340px; min-height:clamp(220px, calc(265 / var(--inner) * 100vw), 265px); padding:clamp(24px, calc(40 / var(--inner) * 100vw), 40px); background:var(--color-primary); color:var(--color-white);}
.location-bar__zip {font-size:var(--font-size-17); font-weight:400; line-height:1.59; letter-spacing:-0.03em;}
.location-bar__addr-txt {font-size:var(--font-size-24); font-weight:600; line-height:1.33; letter-spacing:-0.03em;}
.location-bar__list {display:flex; flex-wrap:wrap; align-items:center; gap:var(--padding-40); flex:1; padding-bottom: var(--padding-70);}
.location-bar__item {display:flex; align-items:center; gap:var(--padding-10);}
.location-bar__icn {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:clamp(45px, calc(60 / var(--inner) * 100vw), 60px); height:clamp(45px, calc(60 / var(--inner) * 100vw), 60px); border-radius:50%; background:#f3f3f3;}
.location-bar__icn img {display:block; width:clamp(18px, calc(24 / var(--inner) * 100vw), 24px); height:auto;}
.location-bar__meta {display:inline-flex; align-items:center; flex-wrap:wrap; gap:var(--padding-20);}
.location-bar__label {font-size:var(--font-size-18); font-weight:600; letter-spacing:-0.03em; color:#121212;}
.location-bar__val {font-size:var(--font-size-20); font-weight:400; letter-spacing:-0.03em; color:var(--color-body); text-decoration:none;}
.location-bar__val:hover {text-decoration:underline;}

.sub2-topbg {padding: var(--padding-100) var(--padding-50); margin-bottom: var(--padding-120 ); background: url(../images/sub/sub2-topbg.jpg) no-repeat center center /cover; border-radius:16px; overflow: hidden;}
.sub2-topbg .textbx {display: flex;flex-direction: column;gap: var(--padding-50); color: #fff; letter-spacing: -0.5px;}
.sub2-topbg .tit {font-size:var(--font-size-32); font-weight: bold; line-height: 1.1;}
.sub2-topbg .decbx {display: flex;flex-direction: column;gap: var(--padding-15);}
.sub2-topbg .dec {font-size: var(--font--size-18); line-height: 1.66;}

.quote-wrap {text-align: center; }
.quote-wrap .quotxt-wid {display: inline-block; max-width: 900px; margin: 0 auto; padding:0 var(--padding-70); position: relative; font-size: var(--font-size-32); letter-spacing: -0.8px; line-height: 1.56;}
.quote-wrap .quotxt-wid:after ,
.quote-wrap .quotxt-wid:before {position: absolute; content: ''; top: 0; width: clamp(20px, calc(50 / var(--inner) * 100vw), 50px); height: auto; aspect-ratio: 1 / 1; background-repeat: no-repeat; background-size: contain;}
.quote-wrap .quotxt-wid:after {right: 0; background-image: url(../images/sub/quo-2.svg);}
.quote-wrap .quotxt-wid:before {left: 0; background-image: url(../images/sub/quo-1.svg);}
.quote-wrap .line {width: 1px; height: var(--padding-100); background: #ddd; margin: var(--padding-50) auto;}
.quote-wrap .quotxt-wid.ty2 {max-width: 945px;}

.sub2_1-features {margin-top:var(--padding-60);}
.sub2_1-grid {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--padding-40); justify-items:center;}
.sub2_1-card {display: flex;flex-direction: column;gap: var(--padding-20); width: 100%;}
.sub2_1-card .card_img {position:relative; padding-bottom:72.5%; overflow:hidden; border-radius: clamp(12px, calc(16 / var(--inner) * 100vw), 16px); overflow: hidden;}
.sub2_1-card .card_img img {position:absolute; top:50%; left:0; transform:translateY(-50%); width:100%; height:auto; max-width:100%; min-height:100%;object-fit : cover;}
.cardinner {display:flex; flex-direction:column; align-items:center; gap:var(--padding-30); width:100%; height: clamp(200px, calc(300 / var(--inner) * 100vw), 300px); padding:clamp(28px, calc(50 / var(--inner) * 100vw), 50px); background:var(--color-white); border-radius:clamp(12px, calc(16 / var(--inner) * 100vw), 16px); box-shadow:6px 6px 15px rgba(0,0,0,0.1);}
.sub2_1-card__icon {display:flex; align-items:center; justify-content:center; width:clamp(44px, calc(50 / var(--inner) * 100vw), 50px); height:clamp(44px, calc(50 / var(--inner) * 100vw), 50px);}
.sub2_1-card__icon img {display:block; width:100%; height:auto; max-width:100%;}
.sub2_1-card__txt {font-size:var(--font-size-18); font-weight:400; line-height:1.67; letter-spacing:-0.03em; color:var(--color-body); text-align:center; word-break:keep-all;}

.sub2_2-stack {display:flex; flex-direction:column; gap:var(--padding-80); margin-top:var(--padding-60);}
.sub2_2-row {display:flex; flex-wrap:wrap; align-items:center; gap:clamp(40px, calc(120 / var(--inner) * 100vw), 120px);}
.sub2_2-row__media {position:relative; width:clamp(300px, calc(580 / var(--inner) * 100vw), 580px);border-radius:clamp(12px, calc(16 / var(--inner) * 100vw), 16px); overflow:hidden; box-shadow:6px 6px 30px rgba(0,0,0,0.1);}
.sub2_2-row__media img {display:block; width:100%; height:100%; object-fit:cover; object-position:center;}
.sub2_2-row__body {display:flex; flex-direction:column; gap:var(--padding-40); flex:1; }
.sub2_2-row__head {display:flex; flex-direction:column; gap:var(--padding-30);}
.sub2_2-row__num {font-size:var(--font-size-24); font-weight:800; line-height:1; letter-spacing:-0.03em; color:rgba(232,13,23,0.5);}
.sub2_2-row__tit {font-size:var(--font-size-32); font-weight:600; line-height:1; letter-spacing:-0.03em; color:#121212;}
.sub2_2-row__rule {display:block; width:50px; height:1px; background:var(--color-primary);}
.sub2_2-row__txt {display:flex; flex-direction:column; gap:var(--padding-16); font-size:var(--font-size-18); font-weight:400; line-height:1.67; letter-spacing:-0.03em; color:var(--color-body); word-break:keep-all;}

.sub2_3 .textbx {display: flex;flex-direction: column;gap: var(--padding-20); margin-top: var(--padding-60); font-size: var(--font-size-18); color: var(--color-body); line-height: 1.66; letter-spacing: -0.5px; text-align: center;}

.sub2_4_1 .imgbx {border-radius: 16px; overflow: hidden;}
.sub2_4_1 .flxWrap {gap: var(--padding-100); padding-top: var(--padding-40);}
.sub2_4_1 .titbx {width: clamp(300px, calc(650 / var(--inner) * 100vw), 650px); font-size: var(--font-size-32); line-height: 1.5; letter-spacing: -0.5px;}
.sub2_4_1 .decbx {flex: 1; display: flex;flex-direction: column;gap: var(--padding-25); letter-spacing: -0.6px;}
.sub2_4_1 .decbx .dec {font-size: var(--font-size-18); color: var(--color-body); line-height: 1.66;}

.doc-split {display:flex; flex-wrap:wrap; align-items:center; gap:clamp(40px, calc(80 / var(--inner) * 100vw), 80px);}
.doc-split__media {width:clamp(300px, calc(700 / var(--inner) * 100vw), 700px);  border-radius:clamp(12px, calc(16 / var(--inner) * 100vw), 16px); overflow:hidden; box-shadow:6px 6px 30px rgba(0,0,0,0.1);}
.doc-split__media-inner img {display:block; width:100%; height:100%; object-fit:cover; object-position:center;}
.doc-split__body {display:flex; flex-direction:column; justify-content:center; gap:var(--padding-40); flex:1; }
.doc-split__tit {font-size:var(--font-size-32); font-weight:600; line-height:1.44; letter-spacing:-0.03em; color:#121212;}
.doc-split__tit-em {color:var(--color-primary);}
.doc-split__divider {display:flex; align-items:center; width:100%; }
.doc-split__divider-accent {flex-shrink:0; width:50px; height:1px; background:var(--color-primary);}
.doc-split__divider-line {flex:1; height:1px; background:#ddd; min-width:0;}
.doc-split__txt {display:flex; flex-direction:column; gap:var(--padding-16); font-size:var(--font-size-18); font-weight:400; line-height:1.67; letter-spacing:-0.03em; color:var(--color-body); word-break:keep-all;}

.doc-point-grid {display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:var(--padding-40); justify-items:center; margin-top:var(--padding-60);}
.doc-point-card {display:flex; flex-direction:column; align-items:center; gap:var(--padding-30); width:100%; max-width:320px; padding:clamp(28px, calc(50 / var(--inner) * 100vw), 50px); background:var(--color-white); border-radius:clamp(12px, calc(16 / var(--inner) * 100vw), 16px);}
.doc-point-card__num {font-size:var(--font-size-20); font-weight:600; line-height:1; letter-spacing:-0.03em; color:#121212; text-align:center;}
.doc-point-card__icon {display:flex; align-items:center; justify-content:center; width:clamp(35px, calc(50 / var(--inner) * 100vw), 50px); height:clamp(35px, calc(50 / var(--inner) * 100vw), 50px);}
.doc-point-card__icon img {display:block; width:100%; height:auto; max-width:100%;}
.doc-point-card__label {font-size:var(--font-size-18); font-weight:400; line-height:1; letter-spacing:-0.03em; color:var(--color-body); text-align:center; word-break:keep-all;}

.doc-rule-stack {display:flex; flex-direction:column; gap:var(--padding-40);}
.doc-rule-row {display:flex; align-items:center; width:100%; min-height:clamp(100px, calc(120 / var(--inner) * 100vw), 120px); padding:clamp(20px, calc(30 / var(--inner) * 100vw), 30px); background:var(--color-white); border:1px solid #ddd; border-radius:8px; box-sizing:border-box;}
.doc-rule-row__inner {display:flex; flex-wrap:wrap; align-items:center; gap:var(--padding-30); width:100%;}
.doc-rule-row__lead {display:flex; flex-wrap:wrap; align-items:center; gap:var(--padding-30); flex-shrink:0;}
.doc-rule-row__num {flex-shrink:0; width:26px; font-size:var(--font-size-20); font-weight:600; line-height:1; letter-spacing:-0.03em; color:var(--color-primary);}
.doc-rule-row__tit {margin:0; font-size:var(--font-size-20); font-weight:600; line-height:1; letter-spacing:-0.03em; color:#121212; white-space:nowrap;}
.doc-rule-row__sep {flex-shrink:0; width:1px; height:15px; background:#ddd;}
.doc-rule-row__dec {margin:0; flex:1; min-width:min(280px, 100%); font-size:var(--font-size-18); font-weight:400; line-height:1.78; letter-spacing:-0.03em; color:var(--color-body); word-break:keep-all;}

.sub2_4_4-grid {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--padding-40); align-items:stretch;}
.sub2_4_4-card {display:flex; align-items:center; gap:var(--padding-30); width:100%; min-width:0; padding:var(--padding-40); background:var(--color-white); border-radius:clamp(12px, calc(16 / var(--inner) * 100vw), 16px); }
.sub2_4_4-card__icon {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:clamp(30px, calc(40 / var(--inner) * 100vw), 40px); height:clamp(30px, calc(40 / var(--inner) * 100vw), 40px);}
.sub2_4_4-card__icon img {display:block; width:100%; height:auto; max-width:100%;}
.sub2_4_4-card__txt {margin:0; font-size:var(--font-size-18); font-weight:400; line-height:1.56; letter-spacing:-0.03em; color:var(--color-body); word-break:keep-all;}

.doc-effect-grid {display:grid; grid-template-columns:repeat(2,1fr); gap:var(--padding-20); justify-items:stretch;}
.doc-effect-card {display:flex; flex-direction:column; align-items:center; gap:var(--padding-40);  padding:clamp(20px, calc(30 / var(--inner) * 100vw), 30px) 10px; background:var(--color-white); border-radius:clamp(12px, calc(16 / var(--inner) * 100vw), 16px); }
.doc-effect-num {font-size:var(--font-size-24); font-weight:600; line-height:1.25; letter-spacing:-0.03em; color:#121212; text-align:center;}
.doc-effect-body {display:flex; flex-direction:column; align-items:center; gap:var(--padding-30); width:100%;}
.doc-effect-icon {display:flex; align-items:center; justify-content:center; width:clamp(40px, calc(56 / var(--inner) * 100vw), 56px); height:clamp(40px, calc(56 / var(--inner) * 100vw), 56px);}
.doc-effect-icon img {display:block; width:100%; height:auto; max-width:100%;}
.doc-effect-txt {font-size:var(--font-size-18); font-weight:400; line-height:1.67; letter-spacing:-0.03em; color:var(--color-body); text-align:center; word-break:keep-all;}
.doc-effect-grid.ty2 {grid-template-columns:repeat(3,1fr);}

.doc-solution-grid {display: grid; grid-template-columns: repeat(4,1fr); gap:var(--padding-20);}
.solution-card {display: inline-flex;align-items: center;justify-content: center; padding:15px; height: clamp(60px, calc(100 / var(--inner) * 100vw), 100px); background: #fff; border-radius:8px; border: 1px solid #ddd;}
.solution-card img {height: 100%; object-fit: scale-down;}