@charset "utf-8";
.sec {padding: var(--space-120) 0;}
.sec:first-child {padding-top: 0;}
.group:not(:last-child) {margin-bottom: var(--space-80);}
.dot-list>li {position: relative; padding-left: 15px;}
.dot-list>li:before {content: ''; position: absolute; width: 5px; height: 5px; background: var(--primary-color); border-radius: 100%; top: 50%; left: 0; transform: translateY(-50%);}
.group-tit {margin-bottom: var(--space-30); font-size: var(--font-size-24); color: var(--dark-color);}
.group-tit .num {display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 10px; background: var(--primary-color); color: #fff; font-size: var(--font-size-18); font-weight: 600;}
.group-tit-wrap {margin-bottom:var(--space-80); text-align: center;}
.group-tit-wrap .sub-tit {margin-bottom: var(--space-20);}

.sec-greetings .contain {gap: var(--space-80);}
.greeting-img {width: 48.3333%;}
.greeting-txt h2 {margin-bottom: var(--space-40); font-size: var(--font-size-32); line-height: 1.4375em; color: var(--dark-color); font-weight: 700;}

.sec-history {background: #FFFDF8;}
.history-item {display: flex; align-items: center; padding: var(--space-40); background: #fff; border-radius: var(--radius-16); box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.08);}
.history-item:not(:last-child) {margin-bottom: var(--space-20);}
.history-year {display: flex; align-items: center; height: fit-content; line-height: 1em; font-size: var(--font-size-24); color: var(--primary-color); font-weight: 700;}
.history-year:after {content: ''; display: block; width: 1px; height: 16px; background: #ddd; margin: 0 var(--space-40);}
.history-date {min-width: 110px; font-size: var(--font-size-20); font-weight: 600; line-height: 1em;}
.history-item > ul > li {display: flex; align-items: center; line-height: 1.5em;}
.history-item > ul > li:not(:last-child) {margin-bottom: 6px;}
.history-item > ul > li > ul > li:not(:last-child) {margin-bottom: 3px;}

.vision-box {padding: var(--space-30); border-radius: var(--radius-16); border: 1px solid #ddd;}
.mission-boxes {display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-40);}
.mission-box {width: calc((100% - var(--space-40) * 2) / 3); padding: var(--space-50) var(--space-30); text-align: center; border: 1px solid #ddd; border-radius: var(--radius-16);}
.mission-box .icon {margin-bottom: var(--space-25);}

.root_daum_roughmap .cont {display: none;}
.root_daum_roughmap .wrap_map, .root_daum_roughmap {width: 100% !important;}
.location-boxes {margin-top: 20px; gap: var(--space-20);}
.location-box {padding: var(--space-45) var(--space-30); border-radius:var(--radius-24); border: 1px solid #ddd; text-align: center; font-size: var(--font-size-20); font-weight: 500;}
.location-box h3 {margin: var(--space-25) 0 var(--space-15); font-size: var(--font-size-24); font-weight: 600;}
.location-address {display: flex; align-items: center; gap: 10px; margin-bottom: 30px; font-size: var(--font-size-24); font-weight: 600;}

.facility-slides {max-width: 700px; padding: 0 var(--container-space); margin: 0 auto; text-align: center; font-size: var(--font-size-32); font-weight: 600; color: var(--dark-color);}
.facility-slides .swiper {overflow: visible;}
.facility-item .img {position: relative; padding-bottom: 75%; width: 100%; padding-bottom: 75%; margin-bottom: var(--space-45); border-radius: var(--radius-24); overflow: hidden; opacity: .16; transition: .2s;}
.facility-item .img img {position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
.swiper-slide-active .facility-item .img {opacity: 1;}
.facility-item {padding-bottom: 15px;}
.facility-arrows {position: absolute; z-index: 10; bottom: 0; left: 50%; transform: translateX(-50%); max-width: 360px; width: 100%; height: 60px; margin: 0 auto;}
.facility-arrow {top: 0; left: 0; width: 60px; height: 60px; margin: 0; background: #fff; border-radius: 100%; border: 1px solid #ddd;}
.facility-arrow:after {font-size: 20px; color: #ddd;} 
.facility-arrow:hover {background: var(--primary-color);}
.facility-arrow.swiper-button-next {right: 0; left: auto;}

.page-service {display: flex; gap: 40px var(--space-40);}
.service-tit {display: flex; align-items: center; justify-content: center; width: 100%; padding: var(--space-25) 15px; margin: 20px 0 var(--space-40); border-radius: var(--radius-16); background: #FBF4ED; color: var(--primary-color); font-size: var(--font-size-20); font-weight: 600;}
.service-tit span {display: flex; align-items: center; gap: var(--space-20);}
.service-tit span:before, .service-tit span:after {content: ''; display: block; width: 31px; height: 5px; background: url('/images/common/gnb-on.png') 50% 50% no-repeat; background-size: contain;}
.service-item .dot-list {display: flex; flex-wrap: wrap; gap: 10px;}
.service-item .dot-list li {width: calc((100% - 20px) / 3);}

.table-help-txt {text-indent: -.8em; padding-left: .8em; margin-bottom: var(--space-25); font-weight: 500; color: var(--primary-color);}
.table-wrap table {border-collapse: collapse; width: 100%; text-align: center; border-top: 2px solid #686868;}
.table-wrap thead th {background: #FAFAFA; color: var(--dark-color); font-weight: 700;}
.table-wrap th, .table-wrap td {padding: clamp(5px, calc(11 / var(--inner) * 100vw), 11px) var(--space-20); border: 1px solid #ddd;}
.table-wrap th:first-child, .table-wrap td:first-child {border-left: none;}
.table-wrap th:last-child, .table-wrap td:last-child {border-right: none;}

.sec-process .group-tit {display: flex; align-items: center; gap: 20px;}
.admission-consultation-boxes {display: flex; gap: 20px; text-align: center;}
.admission-consultation-box {display: flex; flex-direction: column; padding: var(--space-45) clamp(15px, calc(65 / var(--inner) * 100vw), 65px); border: 1px solid #ddd; border-radius: var(--radius-16);}
.admission-consultation-box .wrap {flex:1; margin-bottom: var(--space-30);}
.admission-consultation-box h4 {margin-bottom: var(--space-15); font-size: var(--font-size-24); color: var(--dark-color);}
.admission-consultation-cnt {display: flex; align-items: center; justify-content: center; gap: 10px; padding: var(--space-35) 15px; background: #F9F7F0; border-radius: 8px; font-size: var(--font-size-24); font-weight: 600; color: var(--primary-color);}
.admission-consultation-cnt .icon {display: flex;}
.admission-preparation a {display: flex; align-items: center; gap: 10px; font-weight: 600; color: var(--primary-color);}
.admission-preparation a:after {content: ''; display: block; width: 12px; height: 12px; background: url('/images/sub/icon-link.png') 50% 50% no-repeat; background-size: contain;}
.page-admission-cost .group {position: relative;}
.page-admission-cost .group-tit,
.page-admission-insurance .group-tit {position: relative; padding-left: 18px;}
.page-admission-cost .group-tit:before,
.page-admission-insurance .group-tit:before {content: ''; position: absolute; left: 0; top: 50%; width: 8px; height: 8px; border-radius: 100%; background: var(--primary-color); transform: translateY(-50%);}
.page-admission-cost .table-help-txt {position: absolute; top: 0; right: 0; color: var(--red-color); font-weight: 600;}
.admission-insurance-boxes {display: flex; flex-wrap: wrap; gap: 15px;}
.admission-insurance-box {padding: var(--space-40) 15px; text-align: center; border: 1px solid #ddd; border-radius: var(--radius-16);}
.admission-insurance-box .num {font-weight: 700; color: var(--primary-color); line-height: 1em; margin-bottom: var(--space-15);}
.admission-insurance-box h4 {font-size: var(--font-size-18); font-weight: 600;}




