 @charset "utf-8";
/* doc.css는 디자인페이지 스타일을 정의합니다. */
.root_daum_roughmap {width:100% !important; height:clamp(250px, calc( 450 / var(--inner) * 100vw ), 450px) !important;}
.root_daum_roughmap .wrap_map {height:clamp(250px, calc( 450 / var(--inner) * 100vw ), 450px) !important;}
.roughmap_lebel_text {line-height:0 !important; font-size:0 !important;}
.roughmap_lebel_text:after {content:"경기 하남시 미사강변서로 25"; 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:#fafafa;}
.overhidden {overflow: hidden;}
.subsec-pd {padding: clamp(50px, calc( 150 / var(--inner) * 100vw ), 150px) 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);}

/* 인사말 */
.greeting-cont {max-width:1400px; margin:0 auto;}
.greeting-layout {display:flex; align-items:flex-start; justify-content:space-between; gap:clamp(40px, calc( 100 / var(--inner) * 100vw ), 100px);}
.greeting-visual {flex:0 0 clamp(280px, calc( 640 / var(--inner) * 100vw ), 640px); max-width:640px; overflow:hidden;}
.greeting-visual img {display:block; width:100%; height:auto; object-fit:cover; object-position:bottom;}
.greeting-txt {flex:1 1 0; min-width:0; max-width:660px; display:flex; flex-direction:column; gap:var(--padding-40);}
.greeting-label {display:flex; align-items:center; gap:var(--padding-24); width:100%;}
.greeting-label .label-txt {flex-shrink:0; font-family:'Play', sans-serif; font-size:var(--font-size-18); font-weight:700; letter-spacing:-0.02em; line-height:1.56em; background:linear-gradient(90deg, var(--color-primary) 0%, var(--color-secondary) 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.greeting-label .label-line {flex:1 1 auto; min-width:0; height:1px; background:linear-gradient(90deg, rgba(2,55,105,0.3) 0%, rgba(0,110,206,0.3) 100%);}
.greeting-lead {font-size:var(--font-size-24); font-weight:600; color:var(--color-dark); letter-spacing:-0.02em; line-height:1.67em;}
.greeting-body {display:flex; flex-direction:column; gap:var(--padding-32);}
.greeting-body p {font-size:var(--font-size-16); color:var(--color-body); letter-spacing:-0.02em; line-height:1.875em;}
.greeting-sign {display:flex; align-items:center; gap:var(--padding-16);}
.greeting-sign .sign-role {font-size:var(--font-size-16); font-weight:600; color:var(--color-dark); letter-spacing:-0.02em; line-height:1.875em;}
.greeting-sign .sign-name {font-size:var(--font-size-20); font-weight:600; color:var(--color-dark); letter-spacing:-0.02em; line-height:1.5em;}


/* 찾아오시는 길 */
.location-cont {display:flex; flex-direction:column; gap:var(--padding-48);}
.location-map {width:100%; overflow:hidden;}
.location-map .mapwrap,
.location-map .map {width:100%;}
.location-map .root_daum_roughmap,
.location-map .root_daum_roughmap .wrap_map {height:clamp(250px, calc( 460 / var(--inner) * 100vw ), 460px) !important;}
.location-info {display:flex; align-items:flex-start; justify-content:flex-start; gap:clamp(40px, calc( 220 / var(--inner) * 100vw ), 220px);}
.location-addr {display:flex; align-items:center; gap:var(--padding-24);}
.location-addr .addr-icon {flex-shrink:0; display:flex; align-items:center; justify-content:center; width:clamp(40px, calc( 56 / var(--inner) * 100vw ), 56px); height:auto; aspect-ratio: 1/1; border-radius:50%; background:#f4f4f4;}
.location-addr .addr-icon img {display:block; width:clamp(20px, calc( 30 / var(--inner) * 100vw ), 30px); height:auto; aspect-ratio: 1/1;}
.location-addr .addr-txt {display:flex; flex-direction:column; gap:var(--padding-16); min-width:0;}
.location-addr .addr-main {font-size:var(--font-size-24); font-weight:600; color:var(--color-dark); letter-spacing:-0.02em; line-height:1.42em;}
.location-addr .addr-sub {font-size:var(--font-size-18); color:var(--color-body); letter-spacing:-0.02em; line-height:1.56em;}
.location-contact {display:flex; flex-direction:column; gap:var(--padding-16); flex-shrink:0; margin:0;}
.location-contact .contact-item {display:flex; align-items:center; gap:0;}
.location-contact dt {flex-shrink:0; width:clamp(70px, calc( 80 / var(--inner) * 100vw ), 80px); font-family:'Play', sans-serif; font-size:var(--font-size-18); font-weight:700; color:var(--color-dark); letter-spacing:-0.02em; line-height:1.56em;}
.location-contact dd {margin:0; font-size:var(--font-size-18); color:var(--color-body); letter-spacing:-0.02em; line-height:1.56em;}

/* 사업분야 공통 */
.biz-cont {display:flex; flex-direction:column; gap:var(--padding-150);}
.biz-intro {display:flex; align-items:center; gap:clamp(30px, calc( 95 / var(--inner) * 100vw ), 95px);}
.biz-visual {flex:0 0 clamp(280px, calc( 640 / var(--inner) * 100vw ), 640px); max-width:clamp(280px, calc( 640 / var(--inner) * 100vw ), 640px);}
.biz-visual-inner {position:relative; width:100%; aspect-ratio:640/720; overflow:hidden;}
.biz-visual-inner img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.biz-visual-inner .visual-layer {z-index:1;}
.biz-intro-txt {flex:1 1 0; min-width:0; display:flex; flex-direction:column; gap:var(--padding-48);}
.biz-head {display:flex; flex-direction:column; gap:var(--padding-32);}
.biz-label {font-family:'Play', sans-serif; font-size:var(--font-size-18); font-weight:700; color:var(--color-dark); letter-spacing:-0.02em; line-height:1.56em;}
.biz-tit {font-size:var(--font-size-32); font-weight:700; color:var(--color-dark); letter-spacing:-0.03em; line-height:1.5em;}
.biz-desc {display:flex; flex-direction:column; gap:var(--padding-16);}
.biz-desc p {font-size:var(--font-size-18); color:var(--color-body); letter-spacing:-0.02em; line-height:1.56em;}
.biz-feature {display:flex; flex-direction:column; align-items:center; gap:var(--padding-65); width:100%;}
.biz-feature-head {display:flex; flex-direction:column; align-items:center; gap:var(--padding-32); text-align:center;}
.biz-feature-tit {font-size:var(--font-size-32); font-weight:700; color:var(--color-dark); letter-spacing:-0.03em; line-height:1.5em;}
.biz-feature-list {width:100%; margin:0; padding:0; list-style:none;}
.biz-feature-item {display:flex; align-items:center; justify-content:space-between; gap:var(--padding-40); padding:var(--padding-40); border-bottom:1px dashed #b0c9df;}
.biz-feature-item:first-child {border-top:1px dashed #b0c9df;}
.biz-feature-item .item-head {display:flex; align-items:flex-start; gap:var(--padding-24); flex:1 1 auto; min-width:0;}
.biz-feature-item .item-check {flex-shrink:0; display:block; margin-top: 3px; width:clamp(20px, calc( 30 / var(--inner) * 100vw ), 30px); height:auto; aspect-ratio: 1/1;}
.biz-feature-item .item-check img {display:block; width:100%; height:auto;}
.biz-feature-item .item-tit {font-size:var(--font-size-24); font-weight:600; color:var(--color-dark); letter-spacing:-0.02em; line-height:1.67em;}
.biz-feature-item .item-desc {flex:0 0 clamp(350px, calc( 640 / var(--inner) * 100vw ), 640px); max-width:clamp(350px, calc( 640 / var(--inner) * 100vw ), 640px); font-size:var(--font-size-18); color:var(--color-body); letter-spacing:-0.02em; line-height:1.56em;}
