@charset "utf-8";
.map-iframe iframe,
.root_daum_roughmap,
.root_daum_roughmap .wrap_map {overflow:hidden; height:clamp(250px, calc( 500 / var(--inner) * 100vw ), 500px) !important; width:100% !important;}
.root_daum_roughmap .cont {display:none !important;}

.doc-cnt80 {margin-bottom:var(--space-80);}

.intro {display:flex; flex-direction:column; gap:var(--space-80);}
.intro .visual {display:flex; flex-direction:column; gap:var(--space-20);}
.intro .img {position:relative; border-radius:20px; overflow:hidden;}
.intro .img img {width:100%; aspect-ratio:60/19; object-fit:cover;}
.intro .img:after {content:''; position:absolute; inset:0; background:rgba(0,0,0,0.1);}
.intro .bg-txt {font-size:var(--font-size-48); font-weight:800; text-align:right; letter-spacing:12px; color:rgba(0,0,0,0.05); line-height:1;}
.intro .cont {display:flex; justify-content:space-between;}
.intro .tt {width:44%;}
.intro .label {display:block; font-size:var(--font-size-18); font-weight:500; color:var(--color-primary); letter-spacing:1.8px; line-height:1; margin-bottom:var(--space-20);}
.intro .tt .tit {font-size:var(--font-size-34); line-height:1.47; color:#242424;}
.intro .desc {width:52%; display:flex; flex-direction:column; gap:var(--space-25);}
.intro .desc .tit {font-size:var(--font-size-24); line-height:1.25; color:#242424;}
.intro .desc p {font-size:var(--font-size-18); line-height:1.67;}
html[lang="en"] .intro .tt .tit {font-size:var(--font-size-28);}

.cert {display:flex; justify-content:center; gap:var(--space-60); text-align:center;}
.cert .item {display:flex; flex-direction:column; gap:var(--space-25); align-items:center;}
.cert .img {border:1px solid #ddd;}
.cert .img img {width:400px; aspect-ratio:8/11; object-fit:cover;}
.cert .tit {font-size:var(--font-size-18); font-weight:600; color:#242424; line-height:1.56;}

.declare {display:flex; flex-direction:column; align-items:center; padding:var(--space-80) var(--space-40); background:#fff; box-shadow:6px 6px 30px rgba(0,0,0,0.16);}
.declare .cont {display:flex; flex-direction:column; gap:var(--space-60); align-items:center; width:100%;}
.declare .head {display:flex; flex-direction:column; gap:var(--space-40); text-align:center; color:#242424;}
.declare .tit {font-size:var(--font-size-30); line-height:1.47;}
.declare .desc {font-size:var(--font-size-18); font-weight:500; line-height:1.44;}
.declare .divider {display:flex; align-items:center; gap:var(--space-20); width:100%;}
.declare .divider:before, .declare .divider:after {content:''; flex:1; height:1px; background:#ddd;}
.declare .divider span {font-size:var(--font-size-16); color:#8f8f8f;}
.declare .list {display:flex; flex-direction:column; gap:16px; width:100%;}
.declare .list li {display:flex; align-items:center;}
.declare .list .num {width:40px; flex-shrink:0; font-size:var(--font-size-15); font-weight:600; color:#242424; line-height:1.67;}
.declare .list p {flex:1; font-size:var(--font-size-16); line-height:1.875;}
.declare .pledge {font-size:var(--font-size-16); text-align:center; line-height:1.875;}
.declare .logo {margin-top:var(--space-40);}
.declare .logo img {width:498px; aspect-ratio:498/157; opacity:0.04;}
.declare .sign {font-size:var(--font-size-24); font-weight:600; text-align:center; color:#242424; line-height:1.17;}

.service {display:flex; justify-content:space-between; gap:var(--space-60);}
.service .item {flex:1; display:flex; flex-direction:column; gap:var(--space-60);}
.service .img {border-radius:20px; overflow:hidden;}
.service .img img {width:100%; aspect-ratio:67/36; object-fit:cover;}
.service .cont {display:flex; flex-direction:column; gap:var(--space-40);}
.service .ico {width:clamp(40px, calc( 64 / var(--inner) * 100vw ), 64px); height:clamp(40px, calc( 64 / var(--inner) * 100vw ), 64px); display:flex; align-items:center; justify-content:center; background:#111; border-radius:var(--space-15);}
.service .ico img {width:clamp(20px, calc( 32 / var(--inner) * 100vw ), 32px); height:clamp(20px, calc( 32 / var(--inner) * 100vw ), 32px);}
.service .tit {font-size:var(--font-size-34); color:#242424; line-height:1.29; letter-spacing:-0.03em;}
.service .list {display:flex; flex-direction:column; gap:clamp(10px, calc( 16 / var(--inner) * 100vw ), 16px);}
.service .list li {display:flex; align-items:center; gap:clamp(10px, calc( 16 / var(--inner) * 100vw ), 16px); padding:clamp(16px, calc( 24 / var(--inner) * 100vw ), 24px); background:#f8f8f8; border-radius:20px;}
.service .list .chk {width:clamp(16px, calc( 24 / var(--inner) * 100vw ), 24px); display:flex; flex-shrink:0; align-items:center;}
.service .list .chk img {width:100%; height:clamp(16px, calc( 24 / var(--inner) * 100vw ), 24px);}
.service .list p {font-size:var(--font-size-18); font-weight:600; color:#454545; line-height:2.22; letter-spacing:-0.03em;}

.location {margin-top:var(--space-60); display:flex; justify-content:space-between; align-items:flex-start;}
.location .info {display:flex; flex-direction:column; gap:8px;}
.location .label {font-size:var(--font-size-16); font-weight:700; color:var(--color-primary); line-height:1.625;}
.location .addr {display:flex; flex-direction:column; gap:clamp(10px, calc( 16 / var(--inner) * 100vw ), 16px);}
.location .tit {font-size:var(--font-size-30); font-weight:700; color:#242424; line-height:1.67;}
.location .sub {font-size:var(--font-size-18); line-height:1.56;}
.location .contact {width:500px; line-height:1.5;}
.location .item {display:flex; align-items:center; gap:var(--space-30); padding:var(--space-40) 0; border-bottom:1px solid #ddd;}
.location .item:first-child {border-top:1px solid #ddd;}
.location .item dt {display:flex; align-items:center; gap:clamp(10px, calc( 16 / var(--inner) * 100vw ), 16px); width:120px; font-size:var(--font-size-18); font-weight:600; color:#242424;}
.location .ico {width:clamp(16px, calc( 24 / var(--inner) * 100vw ), 24px); display:flex; align-items:center;}
.location .ico img {width:100%; height:clamp(16px, calc( 24 / var(--inner) * 100vw ), 24px);}
.location .item dd {font-size:var(--font-size-18);}
html[lang="en"] .location .tit {font-size:var(--font-size-24);}


.mfds {width:100%; border-collapse:collapse; text-align:center; line-height:1.3;}
.mfds th {padding:18px 10px; background:#111; color:#fff; font-size:var(--font-size-18); border:1px solid #111;}
.mfds td {padding:9px 10px; border:1px solid #ddd; font-size:var(--font-size-17); vertical-align:middle;}
.mfds td:last-child {border-right:none;}
.mfds td em {padding-right:3px;}
.mfds .cate {width:23.33%; background:#fafafa; border-left:0!important; font-size:var(--font-size-18); font-weight:700; color:#242424;}
.mfds .type {width:19.17%; font-weight:600; font-size:var(--font-size-18);}

.sub-sec {padding:var(--space-100) 0; background-color:#F8F8F8;}

.procedure {margin-bottom:var(--space-80);}
.procedure .list {display:flex; position:relative;}
.procedure .list::before {content:''; position:absolute; top:75px; left:30px; right:30px; border-top:1px dashed #B7B7B7;}
.procedure .list li {text-align: center; flex:1; display:flex; flex-direction:column; align-items:center; gap:var(--space-30); position:relative; z-index:1;}
.procedure .list li::after {content:''; position:absolute; top:67px; right:0; transform:translateX(50%); width:clamp(10px, calc( 16 / var(--inner) * 100vw ), 16px); height:clamp(10px, calc( 16 / var(--inner) * 100vw ), 16px); background:url('/images/sub/step-arrow.svg') center / contain no-repeat; z-index:2;}
.procedure .list li:last-child::after {display:none;}
.procedure .circle {width:150px; aspect-ratio:1 / 1; background:#F8F8F8; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center;}
.procedure .num {font-family:'Montserrat', sans-serif; font-size:var(--font-size-15); font-weight:700; color:#242424; line-height:24px; letter-spacing:-0.45px;}
.procedure .circle .img {display:flex; align-items:center; justify-content:center; overflow:hidden;}
.procedure .circle .img img {height:clamp(50px, calc( 80 / var(--inner) * 100vw ), 80px);}
.procedure .tit {font-size:var(--font-size-22); font-weight:700; color:#242424;}
html[lang="en"] .procedure .tit {font-size:var(--font-size-20);}

.caution {background:#fff; border-radius:20px; padding:var(--space-60) var(--space-40); display:flex; flex-direction:column; gap:var(--space-40);}
.caution .head {display:flex; align-items:center; gap:clamp(10px, calc( 16 / var(--inner) * 100vw ), 16px);}
.caution .ico {width:30px; height:30px; background:#D52C30; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:var(--font-size-18); font-weight:600; color:#fff; letter-spacing:-.03em; line-height:1;}
.caution .tit {font-size:var(--font-size-34); color:#242424; letter-spacing:-1.02px; line-height:1.5;}
.caution .list {display:flex; flex-direction:column; gap:16px; padding-left:46px;}
.caution .list li {position:relative; padding-left:16px; font-size:var(--font-size-20); font-weight:600; color:#454545; letter-spacing:-0.6px; line-height:1.5;}
.caution .list li::before {content:''; width:6px; height:6px; top:11px; background:#D52C30; border-radius:2px; flex-shrink:0; position:absolute; left:0;}
.caution .list strong {color:#242424;}

/* docs */ 
.docs {display:flex; flex-direction:column; gap:var(--space-80);}
.docs .desc {font-size:var(--font-size-34); font-weight:700; color:#242424; line-height:1.47; letter-spacing:-0.03em;}
.docs .head {display:flex; align-items:center; gap:var(--space-15);}
.docs .dot {width:9px; height:9px; background:var(--color-primary); border-radius:2px; flex-shrink:0;}
.docs .head .tit {font-size:var(--font-size-30); color:#242424; line-height:1.67; letter-spacing:-0.03em;}
.docs section {display:flex; flex-direction:column; gap:24px;}
.docs .card {display:flex; align-items:flex-start; gap:var(--space-40); padding:var(--space-40); background:#f9f9f9; border-radius:20px;}
.docs .ico {width:clamp(40px, calc( 64 / var(--inner) * 100vw ), 64px); height:clamp(40px, calc( 64 / var(--inner) * 100vw ), 64px); display:flex; align-items:center; justify-content:center; border-radius:clamp(10px, calc( 16 / var(--inner) * 100vw ), 16px); flex-shrink:0;}
.docs .ico.red {background:var(--color-primary);}
.docs .ico.dark {background:#111;}
.docs .ico .img {width:clamp(20px, calc( 30 / var(--inner) * 100vw ), 30px); height:clamp(20px, calc( 30 / var(--inner) * 100vw ), 30px); display:flex; align-items:center; justify-content:center;}
.docs .ico .img img {width:100%; height:100%;}
.docs .cont {flex:1; display:flex; flex-direction:column; gap:var(--space-30); line-height:1.5;}
.docs .cont .tit {font-size:var(--font-size-28); color:#242424; letter-spacing:-0.03em;}
.docs .cont .txt {font-size:var(--font-size-18); font-weight:600; color:#454545; letter-spacing:-0.03em;}
.docs .btn-group {display:flex; gap:8px; flex-shrink:0;}
.docs .btn {display:flex; align-items:center; justify-content:center; gap:8px; height:70px; padding:var(--space-15) var(--space-50); border-radius:100px; font-size:var(--font-size-20); font-weight:700; letter-spacing:-0.03em;}
.docs .btn.dark {background:#111; color:#fff;}
.docs .btn.line {background:#fff; border:1px solid #111; color:#242424;}
.docs .btn .img {width:24px; height:24px; display:flex; align-items:center; justify-content:center;}
.docs .btn .img img {width:100%; height:100%;}
.docs .sec2 .list {display:flex; gap:var(--space-40);}
.docs .sec2 .list li {flex:1; display:flex; flex-direction:column; gap:var(--space-40); padding:var(--space-40); background:#f9f9f9; border-radius:20px;}
html[lang="en"] .docs .btn-group {flex-direction: column;}

.inquiry {margin-bottom:var(--space-80); display:flex; gap:var(--space-25); align-items:flex-start;}
.inquiry .desc {flex:1; font-size:var(--font-size-18); font-weight:500; line-height:1.56;}
.inquiry .desc strong {color:var(--color-primary);}
.inquiry .btn-consult {gap:10px; padding: 0 var(--space-50); height:70px; text-align: center; display:flex; align-items:center; justify-content:center; background:#111; border-radius:200px; flex-shrink:0;}
.inquiry .btn-consult .img {width:clamp(20px, calc( 30 / var(--inner) * 100vw ), 30px); height:clamp(20px, calc( 30 / var(--inner) * 100vw ), 30px); display:flex; align-items:center; justify-content:center;}
.inquiry .btn-consult .img img {width:100%; height:100%;}
.inquiry .btn-consult span {font-size:var(--font-size-20); font-weight:700; color:#fff; letter-spacing:-0.03em;}




.cntinfo {grid-template-columns:repeat(3, 1fr); display:grid; gap:var(--space-40);}
.cntinfo li {display:flex; justify-content:center; flex-direction:column; align-items:center; padding:var(--space-40); background:#fff; border-radius:20px; box-shadow:6px 6px 30px rgba(0,0,0,0.16); text-align:center;}
.cntinfo .ico {width:clamp(40px, calc( 64 / var(--inner) * 100vw ), 64px); height:clamp(40px, calc( 64 / var(--inner) * 100vw ), 64px); display:flex; align-items:center; justify-content:center; border-radius:clamp(10px, calc( 16 / var(--inner) * 100vw ), 16px);}
.cntinfo .ico.red {background:var(--color-primary);}
.cntinfo .ico.dark {background:#111;}
.cntinfo .ico .img {width:clamp(16px, calc( 24 / var(--inner) * 100vw ), 24px); height:clamp(16px, calc( 24 / var(--inner) * 100vw ), 24px); display:flex; align-items:center; justify-content:center;}
.cntinfo .ico .img img {width:100%; height:100%;}
.cntinfo .tit {font-size:var(--font-size-24); margin:var(--space-30) 0 var(--space-20); display:block; color:#242424; letter-spacing:-.03em; line-height:1.42;}
.cntinfo .txt {font-size:var(--font-size-18); font-weight:600; letter-spacing:-.03em; line-height:1.44;}
.cntinfo .txt .tel {display:block; margin-bottom:var(--space-15);}    
.cntinfo .sub {font-weight:600; letter-spacing:-.03em; line-height:1.75;}

.modal {max-width:1160px; padding:0; background:unset; box-shadow:none; background-color:#fff; border-radius:clamp(20px, calc( 30 / var(--inner) * 100vw ), 30px);}
.modal a.close-modal {top:var(--space-30); right:var(--space-30); width:clamp(35px, calc( 48 / var(--inner) * 100vw ), 48px); height:clamp(35px, calc( 48 / var(--inner) * 100vw ), 48px); display:block; background:url('/images/bbs/modal-close.png') 50% 50% / contain no-repeat;}

.pop-inquiry {padding:var(--space-80);}
.pop-head {display:flex; flex-direction:column; gap:var(--space-20);}
.pop-head h2 {font-size:var(--font-size-34); font-weight:700; color:#242424; line-height:1.29; text-align:center; margin-bottom:var(--space-40);}
.pop-sec {margin-bottom:var(--space-35);}
.sec-head {display:flex; justify-content:space-between; align-items:center; margin-bottom:var(--space-25);}
.sec-head .tit {font-size:var(--font-size-24); font-weight:700; color:#242424; line-height:1.42;}
.sec-head .required {font-size:var(--font-size-16); font-weight:600;}
.red {color:var(--color-primary);}
.pop-form {display:flex; flex-wrap:wrap; gap:var(--space-20);}
.pop-form .item {display:flex; flex-direction:column;}
.pop-form .item.full {width:100%;}
.pop-form .item.half {width:calc(50% - var(--space-10));}
.pop-form .item .label {display:block; font-size:var(--font-size-18); font-weight:500; color:#454545; margin-bottom:8px; width:100%;}
.pop-form .label .sub-txt {font-size:var(--font-size-15); font-weight:600; color:#a7a7a7;}
.file-wrap {display:flex; flex-direction:column; gap:8px; width:100%;}
.file-row {display:flex; gap:8px; align-items:center;}
.file-row .file-name {flex:1; max-width:500px;}
.btn-file {display:flex; align-items:center; justify-content:center; width:100px; height:48px; border-radius:8px; font-size:var(--font-size-15); font-weight:600; color:#fff; cursor:pointer; flex-shrink:0;}
.btn-file input[type="file"] {position:absolute; width:0; height:0; opacity:0;}
.btn-file.red {background:var(--color-primary); position:relative;}
.btn-file.dark {background:#242424; border:0;}
.btn-add-file {width:100%; height:clamp(38px, calc( 44 / var(--inner) * 100vw ), 44px); background:#fafafa; border:1px solid #ddd; border-radius:8px; font-size:var(--font-size-15); font-weight:600; color:#242424; cursor:pointer;}
.privacy-box {background:#fafafa; border:1px solid rgba(221,221,221,0.87); border-radius:8px; padding:10px; height:140px; overflow-y:auto; font-size:var(--font-size-14); color:#484848; line-height:1.43;}
.pop-body .buttons {margin:0;}
.pop-body .buttons .btn-pack {font-size:var(--font-size-18); font-weight:600; border-radius:40px; width:240px; height:60px; background:#111; color:#fff; border:0;}
.pop-body .buttons .btn-pack:hover {background-color:var(--color-primary);}
.pop-body .form-agree {margin:var(--space-20) 0 var(--space-40);}
.pop-body .form-agree .check {margin:0; text-align:center;}
.ui-datepicker {z-index:1000 !important;}
.chk-wrap {display:flex; gap:var(--space-40);}

.pop-body .captcha-wrap,
.pop-body .input {height:44px; border-radius:8px;}
.pop-body .captcha-wrap {display:flex; gap:8px; align-items:center;}
.pop-body .captcha-wrap img {border-radius:8px;}
.pop-body .captcha-wrap .input {width:300px;}