.forPc { display: block; }
.forMob { display: none; }

#hd_pop { position: fixed; left: 0; top: 0; z-index: 99999; width: 0; height: 0; }
#hd_pop h2 { overflow: hidden; position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; clip: rect(0,0,0,0); }
#hd_pop .hd_pops { position: absolute; overflow: hidden; border-radius: 24px; background: #fff; box-shadow: 0 24px 70px rgba(0, 0, 0, 0.22); }
#hd_pop .hd_pops .hd_pops_con { overflow: hidden; background: #fff; }
#hd_pop .hd_pops .hd_pops_con p { margin: 0; }
#hd_pop .hd_pops .hd_pops_con img { display: block; width: 100%; height: 100%; object-fit: cover; }
#hd_pop .hd_pops .hd_pops_con br { display: none; }
#hd_pop .hd_pops .hd_pops_footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 16px; background: #fff; border-top: 1px solid #eee; }
#hd_pop .hd_pops .hd_pops_footer button { border: 0; background: none; cursor: pointer; font-size: 14px; color: #555; line-height: 1.4; }
#hd_pop .hd_pops .hd_pops_footer .hd_pops_reject { text-align: left; }
#hd_pop .hd_pops .hd_pops_footer .hd_pops_reject strong { font-weight: 700; color: var(--colorMain); }
#hd_pop .hd_pops .hd_pops_footer .hd_pops_close { flex-shrink: 0; padding: 8px 14px; border-radius: 999px; background: var(--colorMain); color: #fff; }
#hd_pop .hd_pops .hd_pops_footer .hd_pops_close i { display: none; }

@media (max-width: 768px) {
    #hd_pop { width: 100%; height: 100%; pointer-events: none; }
    #hd_pop .hd_pops { left: 50% !important; top: 50% !important; width: calc(100% - 40px) !important; max-width: 450px; transform: translate(-50%, -50%); pointer-events: auto; }
    #hd_pop .hd_pops .hd_pops_con { width: 100% !important; height: auto !important; max-height: 70vh; }
    #hd_pop .hd_pops .hd_pops_con img { height: auto; object-fit: contain; }
    #hd_pop .hd_pops .hd_pops_footer { padding: 12px; }
    #hd_pop .hd_pops .hd_pops_footer button { font-size: 13px; }
}ㄹ

html,
body {
    overflow-x: hidden;
}
body { display: flex;  flex-direction: column; }
.inner { max-width: 1400px; margin: 0 auto; }
#container { margin-top: 105px; }
.tit { color: var(--colorMain); font-size: 26px; font-weight: 600; }
html.lenis,
html.lenis body { height: auto; }

.lenis.lenis-smooth { scroll-behavior: auto !important; }

.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }

.lenis.lenis-stopped { overflow: hidden; }
/* 헤더 */
#header { position: fixed; z-index: 99; background: var(--colorWhite); top: 0; height: 105px; display: flex; align-items: center; justify-content: center; gap: 79px; width: 100%; }
#header .logo {  }
#header .logo img {  }
#header nav {  }
#header nav ul { display: flex; align-items: center; gap: 49px; }
#header nav ul li { position: relative; font-family: 'Pretendard' !important; color: var(--colorBlack); font-size: 19px; font-weight: 600; cursor: pointer; transition: color 0.35s ease; }
#header nav ul li::after { content: ""; position: absolute; left: 0; bottom: -8px; width: 0; height: 2px; background-color: var(--colorMain); transition: width 0.35s ease; }
#header nav ul li:hover { color: var(--colorMain); }
#header nav ul li:hover::after { width: 100%; }
#header nav ul li:hover a { color: var(--colorMain); }
#header nav ul li a { color: var(--colorBlack); font-family: 'Pretendard' !important; font-size: 19px; font-weight: 600; transition: color 0.35s ease; }

#header .mobileMenuBtn { display: none; flex-direction: column; justify-content: center; gap: 6px; width: 44px; height: 44px; border: 0; background: transparent; cursor: pointer; }
#header .mobileMenuBtn span { display: block; width: 28px; height: 2px; background-color: var(--colorBlack); transition: all 0.3s ease; }
.sideDim { position: fixed; display: none; left: 0; top: 0; z-index: 998; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.45); }
.sideDim.on { display: block; }

.mobileSideMenu { position: fixed; right: -320px; top: 0; z-index: 999; width: 300px; height: 100vh; background-color: var(--colorMain); padding: 40px 24px; box-shadow: -10px 0 30px rgba(0, 0, 0, 0.12); transition: right 0.35s ease; }
.mobileSideMenu.on { right: 0; }
.mobileSideMenu .sideLogo { display: flex; align-items: center; justify-content: space-between; margin-bottom: 53px; }
.mobileSideMenu .sideLogo img { max-width: 150px; }
.mobileSideMenu ul { display: flex; flex-direction: column; }
.mobileSideMenu ul li { font-size: 21px; font-weight: 600; line-height: 47px; letter-spacing: 0.21px; color: var(--colorWhite); cursor: pointer; transition: color 0.3s ease; }

.mobileSideMenu ul li a { font-size: 21px; font-weight: 600; line-height: 47px; letter-spacing: 0.21px; color: var(--colorWhite); transition: color 0.3s ease; }

.mobileSideMenu .closeBtn { border: 0; padding: 0; background: transparent; cursor: pointer; }

body.sideOpen { overflow: hidden; }

/* 푸터 */
footer { background-color: var(--colorFooter); }
footer .footerInner { display: flex; align-items: center; gap: 140px; padding: 90px 0; }
footer .footerInner span { display: flex; align-items: center; }
footer .footerInner span, footer .footerInner p { color: #FFFFFFBF; font-size: 19px; font-weight: 400; line-height: 35px}
footer .footerInner .footerInfo div { display: flex; align-items: center; }
footer .footerInner .footerInfo .infoItem:first-child:after { content: ""; display: inline-block; width: 2px; height: 15px; background: rgba(255, 255, 255, 0.2); margin: 0 14px; vertical-align: middle; }
footer .footerInner .footerInfo span::after { content: ""; display: inline-block; width: 2px; height: 15px; background: rgba(255, 255, 255, 0.2); margin: 0 14px; vertical-align: middle; }
footer .footerInner .footerInfo span:last-child::after { display: none; }
.footerInfoTop { display: flex; flex-wrap: wrap; }
.footerInfoTop .infoItem { display: flex; align-items: flex-start; gap: 8px; }
.footerInfoTop .infoItem strong { flex-shrink: 0; color: #FFFFFFBF; font-size: 19px; font-weight: 400;  line-height: 35px;}
.footerInfoTop .infoItem span { color: #FFFFFFBF; font-size: 19px; font-weight: 400; line-height: 35px; }




.mobileBottomBar { display: none;   position: fixed;  bottom: 0;  left: 0;  width: 100%;  height: 80px;  background: var(--colorMain);  z-index: 900; }
.mobileBottomBar a { display: flex; flex-direction: column; align-items: center; justify-content: center; flex: 1;  gap: 5px; color: var(--colorWhite); font-size: 14px; font-weight: 300; }
.mobileBottomBar a img { width: 30px; height: 30px; object-fit: contain; }

/* 퀵메뉴 */
.quickMenu { position: fixed; right: 30px; top: 250px; z-index: 100; }
.quickMenu .quickItem { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; width: 92px; border: 0; background-color: #FF9933; color: var(--colorWhite); font-size: 18px; font-weight: 500; text-align: center; text-decoration: none; cursor: pointer; }
.quickMenu .quickItem:first-child { border-radius: 20px 20px 0 0; padding-top: 26px; padding-bottom: 18px; }
.quickMenu .quickItem:first-child span { font-size: 14px; font-weight: 500; }
.quickMenu .quickItem:nth-child(2) { position: relative; padding-bottom: 22px; }
.quickMenu .quickItem:nth-child(2) span { font-size: 14px; font-weight: 500;  }
.quickMenu .quickItem:nth-child(2)::after { content: ""; position: absolute; left: 22px; right: 22px; bottom: 0; height: 1px; background-color: rgba(255, 255, 255, 0.35); }
.quickMenu .quickItem.phoneItem { border-radius: 0 0 20px 20px; padding: 22px 0 26px; margin-bottom: 17px; }
.quickMenu .quickItem .material-symbols-outlined { margin-bottom: 10px; font-size: 42px; font-weight: 300; color: var(--colorWhite); }
.quickMenu .quickItem .blogIcon { display: block; margin-bottom: 10px; font-size: 42px; font-weight: 700; line-height: 1; color: var(--colorWhite); }
.quickMenu .quickItem strong { margin-top: 8px; font-size: 20px; font-weight: 800; line-height: 23px; }
.quickMenu .topBtn { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 92px; height: 92px; border: 0; border-radius: 22px; background-color: var(--colorWhite); color: #666; font-size: 18px; font-weight: 500; cursor: pointer; filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.12)); }
.quickMenu .topBtn .material-symbols-outlined { margin-bottom: 6px; font-size: 44px; font-weight: 300; color: #444; }
.quickMenu .topBtn img { animation: topFloat 1.8s ease-in-out infinite; }

.quickMenu .quickItem img,
.quickMenu .quickItem span {
    opacity: 0.5;
    transition: all 0.3s ease;
}

.quickMenu .quickItem:hover img , 
.quickMenu .quickItem.phoneItem img{
    opacity: 1;
}

.quickMenu .quickItem:hover span {
     opacity: 1;
}

@keyframes topFloat
{
    0%
    {
        transform: translateY(0);
    }

    50%
    {
        transform: translateY(-8px);
    }

    100%
    {
        transform: translateY(0);
    }
}

.mainVisual { position: relative; width: 100%; height: 90dvh; margin-bottom: 140px; }
.mainVisual .mainVisualSlide  { height: 100%; }
.mainVisual .mainVisualItem { height: 100%; }
.mainVisual .mainVisualItem img { width: 100%; height: 100%; object-fit: cover; }
.mainVisual .textBox { position: absolute; left: 50%; top: 32%; transform: translateX(-50%); width: 100%; max-width: 1400px; }
.mainVisual .textBox h2 { font-size: 79px; font-weight: 700; color: var(--colorWhite); margin-bottom: 22px; line-height: 1.1; }
.mainVisual .textBox2 h2 { font-size: 70px; font-weight: 700; color: var(--colorWhite); margin-bottom: 22px; line-height: 1.2; }

.mainVisual .textBox p { font-size: 30px; font-weight: 500; line-height: 40px; color: var(--colorWhite); }
.mainVisualSlide .swiper-slide { opacity: 0 !important; transition-property: opacity !important; }
.mainVisualSlide .swiper-slide-active { opacity: 1 !important; }

.section1 { display: flex; align-items: center; justify-content: center; margin-bottom: 132px; }
.section1 .inner { }
.section1 .inner h2 { font-size: 43px; font-weight: 700; line-height: 50px; color: var(--colorBlack); text-align: center; margin-bottom: 74px; }
.section1 .inner .logo { }
.section1 .inner .logo img { }

.section2 { contain: layout; position: relative; display: block; background: var(--colorBack); padding: 155px 0; overflow: hidden; margin-bottom: 140px; }
.section2::before { content: ""; position: absolute; left: 0; bottom: 0; width: 700px; height: 755px; background: url("/img/web1_08.svg") no-repeat center / contain; pointer-events: none; z-index: 0; }
.section2 .inner { position: relative; z-index: 1; }
.section2 .top { display: flex; gap: 170px; margin-bottom: 156px; }
.section2 .top .textBox {  }
.section2 .top .textBox .tit { margin-bottom: 22px; color: var(--colorMain); font-weight: 600; }
.section2 .top .textBox h2 { line-height: 1.2; font-size: 39px; font-weight: 600; color: var(--colorBlack); margin-bottom: 36px; }
.section2 .top .textBox p { font-size: 24px; font-weight: 300; line-height: 44px; color: var(--colorBlack);}
.section2 .bottom { display: flex; gap: 170px; }
.section2 .bottom ul { display: flex; flex-direction: column; gap: 25px; }
.section2 .bottom ul li { background: #fdfcfbd1; border-radius: 30px 0; padding: 35px 27px 21px 26px; text-align: center; box-shadow: 0 14px 30px rgba(0, 0, 0, 0.04); }
.section2 .bottom ul li .icon { margin: 0 auto 17px; width: 74px; height: 74px; }
.section2 .bottom ul li .icon img { width: 100%; height: 100%; }
.section2 .bottom ul li .textBox {  }
.section2 .bottom ul li .textBox h4 { font-size: 33px; font-weight: 600; margin-bottom: 12px; color: var(--colorBlack); }
.section2 .bottom ul li .textBox p { font-size: 23px; font-weight: 400; line-height: 30px; color: var(--colorBlack); }
.section2 .bottom .textBox {  }
.section2 .bottom .textBox h3 { font-size: 33px; font-weight: 600; color: var(--colorBlack); margin-bottom: 25px; }
.section2 .bottom .textBox h2 { display: flex; align-items: end; gap: 10px; font-size: 41px; font-weight: 600; letter-spacing: 31.57px; color: var(--colorBlack); margin-bottom: 33px; }
.section2 .bottom .textBox h2 span { font-size: 28px; font-weight: 600; letter-spacing: 10.64px; }
.section2 .bottom .textBox p { font-size: 27px; line-height: 45px; font-weight: 300; color: var(--colorBlack); }

.section3 { margin-bottom: 158px; }
.section3 .tit { margin-bottom: 88px; }
.section3 h3 { text-align: center; font-size: 39px; font-weight: 600; color: var(--colorBlack); line-height: 50px; margin-bottom: 56px; }
.section3 .topImgBox { margin-bottom: 45px; }
.section3 .topImgBox img { width: 100%; }
.section3 p.topText { font-size: 24px; line-height: 44px; font-weight: 300; color: var(--colorBlack); text-align: center; margin-bottom: 28px; }
.section3 .bottomImgBox { margin-bottom: 125px; }
.section3 .bottomImgBox img { width: 100%; }
.section3 p.bottomText { font-size: 32px; font-weight: 600; color: var(--colorMain); text-align: center; }

.section4 { background-color: var(--colorBack);  padding: 170px 0;  margin-bottom: 137px; }
.section4 .tit { margin-bottom: 54px; }
.section4 .wrap { display: flex; align-items: center; justify-content: space-between; }
.section4 .wrap .box {  }
.section4 .wrap .box h2 { font-size: 40px; font-weight: 600; color: var(--colorBlack); letter-spacing: -0.8px; margin-bottom: 36px; }
.section4 .wrap .box .imgBox { margin-bottom: 30px; }
.section4 .wrap .box .imgBox img {}
.section4 .wrap .box p { min-height: 190px; text-align: center; font-size: 31px; font-weight: 600; letter-spacing: -0.62px; color: var(--colorBlack); line-height: 1.2; margin-bottom: 20px; }
.section4 .wrap .box p span { color: var(--colorMain); }
.section4 .wrap .box .listBox {}
.section4 .wrap .box .listBox ul { padding: 40px 0 40px 60px ; background: #CC99661A; border-radius: 20px; }
.section4 .wrap .box .listBox ul li { position: relative; padding-left: 20px; font-size: 26px; line-height: 48px; font-weight: 500; color: var(--colorBlack); }
.section4 .wrap .box .listBox ul li::before { content: ""; position: absolute; left: 0; top: 20px; width: 7px; height: 7px; border-radius: 999px; background: var(--colorMain); }

.section5 { margin-bottom: 192px; }
.section5 .tit { margin-bottom: 38px; }
.section5 .faqList { border-top: 1px solid #666666CC; }
.section5 .faqList .faqItem { border-bottom: 1px solid #666666CC; }
.section5 .faqList .faqItem .faqBtn { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 30px 20px; border: 0; background: transparent; cursor: pointer; text-align: left; }
.section5 .faqList .faqItem .faqBtn strong { flex-shrink: 0; min-width: 20px; font-size: 26px; font-weight: 500; line-height: 1.4; color: var(--colorBlack); }
.section5 .faqList .faqItem .faqBtn span { flex: 1; font-size: 26px; font-weight: 500; line-height: 1.4; color: var(--colorBlack); }
.section5 .faqList .faqItem .faqBtn em { position: relative; flex-shrink: 0; width: 18px; height: 18px; margin-left: 20px; font-style: normal; transition: transform 0.35s ease; }
.section5 .faqList .faqItem .faqBtn em::before { content: ""; position: absolute; left: 50%; top: 50%; width: 10px; height: 10px; border-right: 1px solid var(--colorBlack); border-bottom: 1px solid var(--colorBlack); transform: translate(-50%, -70%) rotate(45deg); transition: transform 0.35s ease; }
.section5 .faqList .faqItem .faqAnswer { overflow: hidden; max-height: 0; transition: max-height 0.45s ease; }
.section5 .faqList .faqItem .faqAnswer .faqAnswerInner { padding: 0 40px 30px 90px; }
.section5 .faqList .faqItem .faqAnswer .faqAnswerInner p { padding: 20px 30px; border-radius: 18px; background-color: var(--colorBack); font-size: 20px; font-weight: 400; line-height: 1.7; color: #555; }
.section5 .faqList .faqItem.on .faqBtn em::before { border-color: var(--colorMain); transform: translate(-50%, -35%) rotate(225deg); }


.section6 { position: relative; background: #FAF9F8; padding: 154px 0  ; }
.section6 .tit { margin-bottom: 100px; }
.section6 .facilitySlideWrap { position: relative; width: 100%; overflow: hidden; padding: 0 0 80px; }
.section6 .facilitySlide { overflow: visible; width: 100%; }
.section6 .facilitySlide ul { align-items: center; }
.section6 .facilitySlide ul li { position: relative; z-index: 1; opacity: 0.45; transform: scale(0.72); transition: transform 0.6s ease, opacity 0.6s ease; }
.section6 .facilitySlide ul li .imgBox { overflow: hidden; width: 100%; }
.section6 .facilitySlide ul li .imgBox img { display: block; width: 100%; height: 100%; object-fit: cover; }
.section6 .facilitySlide ul li.swiper-slide-active { z-index: 5; opacity: 1; transform: scale(1); }
.section6 .facilitySlide ul li.swiper-slide-prev, .section6 .facilitySlide ul li.swiper-slide-next { z-index: 2; opacity: 0.78; transform: scale(0.72); }
.section6 .facilityArr { position: absolute; top: 50%; z-index: 5; display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; border: 0; border-radius: 999px; background-color: #f1eeee; cursor: pointer; transform: translateY(-50%); }
.section6 .facilityArr span { font-size: 30px; font-weight: 300; line-height: 1; color: #fff; }
.section6 .facilityPrev { left: 125px; }
.section6 .facilityNext { right: 125px; }


.section7 { padding: 120px 0; background: var(--colorBack); }
.section7 .tit { margin-bottom: 34px; }
.section7 .wrap { display: flex; justify-content: space-between; align-items: flex-start; }
.section7 .wrap .infoBox { position: relative; width: calc(100% - 760px); flex-shrink: 0; }
.section7 .wrap .infoBox .infoItem { position: relative; margin-bottom: 52px; }
.section7 .wrap .infoBox .infoItem:last-child { margin-bottom: 0; }
.section7 .wrap .infoBox .infoItem .iconBox { display: flex; align-items: center; gap: 12px; margin-bottom: 3px; }
.section7 .wrap .infoBox .infoItem .iconBox h3 { font-size: 26px; line-height: 48px; font-weight: 600; }
.section7 .wrap .infoBox .infoItem .textBox { padding-left: 62px; }
.section7 .wrap .infoBox .infoItem .textBox .telBox { display: flex; align-items: center; gap: 18px; margin-bottom: 12px; flex-wrap: wrap; }
.section7 .wrap .infoBox .infoItem .textBox .telBox p { display: flex; align-items: center; font-size: 37px; font-weight: 700; line-height: 48px; letter-spacing: -0.37px; color: var(--colorBlack); }
.section7 .wrap .infoBox .infoItem .textBox .telBox p em { font-size: 25px; font-weight: 700; line-height: 48px; letter-spacing: -0.25px; color: var(--colorMain); margin-right: 5px; }
.section7 .wrap .infoBox .infoItem .textBox > span { display: block; font-size: 21px; font-weight: 400; color: var(--colorBlack); }
.section7 .wrap .infoBox .infoItem .textBox .timeGroup { margin-bottom: 21px; }
.section7 .wrap .infoBox .infoItem .textBox .timeGroup:last-child { margin-bottom: 0; }
.section7 .wrap .infoBox .infoItem .textBox .orangeText { display: flex; align-items: center; margin-bottom: 18px; font-size: 0; }
.section7 .wrap .infoBox .infoItem .textBox .orangeText strong { display: block; width: 125px; flex-shrink: 0; font-size: 25px; font-weight: 700; line-height: 1; letter-spacing: -0.25px; color: var(--colorMain); }
.section7 .wrap .infoBox .infoItem .textBox .orangeText span { display: block; width: calc(100% - 125px); font-size: 20px; font-weight: 400; color: var(--colorBlack); }
.section7 .wrap .infoBox .infoItem .textBox dl { display: flex; flex-wrap: wrap; }
.section7 .wrap .infoBox .infoItem .textBox dl dt { width: 125px; flex-shrink: 0; font-size: 24px; font-weight: 600; line-height: 30px; color: var(--colorBlack); }
.section7 .wrap .infoBox .infoItem .textBox dl dd { width: calc(100% - 125px); font-size: 24px; font-weight: 500; line-height: 30px; color: var(--colorBlack); letter-spacing: -0.24px; }
.section7 .wrap .infoBox .infoItem .textBox .orangeText.map { font-size: 25px; font-weight: 700; line-height: 48px; letter-spacing: -0.25px; color: var(--colorMain); margin-bottom: 0;}
.section7 .wrap .infoBox .infoItem .textBox .wayText { font-size: 24px; font-weight: 600; line-height: 30px; color: var(--colorBlack); }
.section7 .wrap .map > img { display: block; width: 100%; height: auto; margin-bottom: 16px; }
.section7 .wrap .map .textBox { padding-left: 20px; }
.section7 .wrap .map .textBox .titBox { display: flex; align-items: center; gap: 11px; }
.section7 .wrap .map .textBox .titBox img { }
.section7 .wrap .map .textBox .titBox p { font-size: 25px; font-weight: 700; line-height: 48px; letter-spacing: -0.25px; color: var(--colorMain); }
.section7 .wrap .map .textBox > p { padding-left: 58px; font-size: 24px; line-height: 30px; font-weight: 600; letter-spacing: -0.24px; color: var(--colorBlack); }
.section7 .wrap .map .textBox > p strong { font-weight: 600; color: var(--colorMain); }
.section7 .wrap .map .mapIcon { display: flex; align-items: center; gap: 13px; margin-top: 40px; }
.section7 .wrap .map .mapIcon a { position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; transition: transform 0.35s ease, box-shadow 0.35s ease, background-color 0.35s ease; will-change: transform; }
.section7 .wrap .map .mapIcon a:hover { transform: translateY(-6px);  }
.section7 .wrap .map .mapIcon a img { position: relative; z-index: 1; transition: transform 0.35s ease; }

.section7 .wrap .map .mapIcon a:hover img { }
.section7 .wrap .map .mapIcon img {  }

.mainVisual .swiper-slide-active .textBox h2 { animation: mainTextUp 1.1s ease forwards; }
.mainVisual .swiper-slide-active .textBox p { animation: mainTextUp 1.1s 0.25s ease forwards; }
.mainVisual .textBox h2, .mainVisual .textBox p { opacity: 0; transform: translateY(35px); }
@keyframes mainTextUp { 0% { opacity: 0; transform: translateY(35px); } 100% { opacity: 1; transform: translateY(0); } }



/* 공지사항 */

.customNotice { padding: 120px 20px 160px; background: #fff; }
.customNotice .customNoticeInner { width: 100%; max-width: 1200px; margin: 0 auto; }
.customNotice .customNoticeTitle { text-align: center; margin-bottom: 70px; }
.customNotice .customNoticeTitle span { display: block; color: var(--colorMain); font-size: 17px; font-weight: 700; letter-spacing: 4px; margin-bottom: 14px; }
.customNotice .customNoticeTitle h2 { color: var(--colorBlack); font-size: 48px; font-weight: 700; letter-spacing: -1.44px; margin-bottom: 18px; }
.customNotice .customNoticeTitle p { color: #666; font-size: 18px; font-weight: 400; line-height: 1.6; }
.customNotice .customNoticeTop { display: flex; align-items: center; justify-content: space-between; margin-bottom: 22px; }
.customNotice .customNoticeTop p { color: #444; font-size: 16px; font-weight: 400; }
.customNotice .customNoticeTop p strong { color: var(--colorMain); font-weight: 700; }
.customNotice .customNoticeSearch { display: flex; align-items: center; gap: 8px; }
.customNotice .customNoticeSearch input { width: 280px; height: 48px; border: 1px solid #ddd; color: #333; font-size: 15px; font-weight: 400; padding: 0 16px; box-sizing: border-box; outline: none; transition: border-color 0.3s ease; }
.customNotice .customNoticeSearch input:focus { border-color: var(--colorMain); }
.customNotice .customNoticeSearch button { width: 86px; height: 48px; border: 0; background: var(--colorMain); color: #fff; font-size: 15px; font-weight: 600; cursor: pointer; transition: background 0.3s ease, transform 0.3s ease; }
.customNotice .customNoticeSearch button:hover { background: var(--colorSub); transform: translateY(-2px); }
.customNotice .customNoticeBoard { border-top: 2px solid var(--colorMain); }
.customNotice .customNoticeHead { display: grid; grid-template-columns: 110px 1fr 150px; align-items: center; min-height: 66px; border-bottom: 1px solid #d7d7d7; background: #fafafa; }
.customNotice .customNoticeHead span { color: #222; font-size: 16px; font-weight: 700; text-align: center; }
.customNotice .customNoticeRow { display: grid; grid-template-columns: 110px 1fr 150px; align-items: center; min-height: 72px; border-bottom: 1px solid #e5e5e5; transition: background 0.3s ease; }
.customNotice .customNoticeRow:hover { background: #f7fbff; }
.customNotice .customNoticeRow span { color: #666; font-size: 15px; font-weight: 400; text-align: center; }
.customNotice .customNoticeRow strong { color: #222; font-size: 17px; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; transition: color 0.3s ease; }
.customNotice .customNoticeRow:hover strong { color: var(--colorMain); }
.customNotice .customNoticeRow.fixed { background: #fbfdff; }
.customNotice .customNoticeRow.fixed span em { display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 28px; border-radius: 999px; background: var(--colorMain); color: #fff; font-size: 13px; font-weight: 700; font-style: normal; }
.customNotice .customNoticeEmpty { display: flex; align-items: center; justify-content: center; min-height: 180px; border-bottom: 1px solid #e5e5e5; color: #777; font-size: 17px; font-weight: 400; }
.customNotice .customNoticePaging { display: flex; justify-content: center; margin-top: 50px; }
.customNotice .customNoticePaging .pg_wrap { display: flex; justify-content: center; }
.customNotice .customNoticePaging .pg { display: flex; align-items: center; justify-content: center; gap: 6px; }
.customNotice .customNoticePaging .pg a, .customNotice .customNoticePaging .pg strong { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; height: 38px; border: 1px solid #ddd; color: #555; font-size: 15px; font-weight: 500; box-sizing: border-box; transition: all 0.3s ease; }
.customNotice .customNoticePaging .pg strong, .customNotice .customNoticePaging .pg a:hover { border-color: var(--colorMain); background: var(--colorMain); color: #fff; }

.noticeReadWrap { width: 100%; max-width: 1200px; margin: 0 auto; padding: 80px 20px ; box-sizing: border-box; }
.noticeReadHead { border-top: 2px solid var(--colorMain); border-bottom: 1px solid #e5e5e5; padding: 20px; box-sizing: border-box; background: #fff; }
.noticeReadHead strong { display: block; color: var(--colorBlack); font-size: 34px; font-weight: 700; line-height: 1.35; letter-spacing: -1.02px; margin-bottom: 15px; }
.noticeReadHead div { display: flex; align-items: center; gap: 24px; }
.noticeReadHead div span { position: relative; color: #777; font-size: 16px; font-weight: 400; line-height: 1.4; }
.noticeReadHead div span + span::before { content: ""; position: absolute; top: 50%; left: -12px; width: 1px; height: 13px; background: #ddd; transform: translateY(-50%); }
.noticeReadBody { min-height: 360px; border-bottom: 1px solid #e5e5e5; padding: 56px 34px 50px; box-sizing: border-box; color: #333; font-size: 18px; font-weight: 400; line-height: 1.85; word-break: keep-all; overflow-wrap: break-word; }
.noticeReadBody p { color: #333; font-size: 18px; font-weight: 400; line-height: 1.85; margin-bottom: 18px; }
.noticeReadBody img { display: block; max-width: 100%; height: auto; margin: 24px auto; }
.noticeReadBody table { width: 100%; border-collapse: collapse; margin: 24px 0; }
.noticeReadBody table th, .noticeReadBody table td { border: 1px solid #ddd; color: #333; font-size: 16px; line-height: 1.6; padding: 14px; box-sizing: border-box; }
.noticeReadBtnBox { display: flex; align-items: center; justify-content: center; margin-top: 50px; }
.noticeReadBtnBox a { display: inline-flex; align-items: center; justify-content: center; width: 160px; height: 52px; border: 1px solid var(--colorMain); background: var(--colorMain); color: #fff; font-size: 16px; font-weight: 600; transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease; }
.noticeReadBtnBox a:hover { background: #fff; color: var(--colorMain); transform: translateY(-3px); }



@media (max-width: 1384px) {
    #header { gap: 30px; }
    #header nav ul { gap: 20px; } 
    #header nav ul li { font-size: 15px; }
    #header nav ul li a { font-size: 15px; }
}

@media (max-width: 1024px) {

    .forPc { display: none; }
    .forMob { display: block; }

    .inner { max-width: 100%; padding: 0 10px; word-break: keep-all; }

    #header { height: 90px; gap: 10px; }
    #header nav ul { gap: 10px; } 
    #header nav ul li { font-size: 14px; }
    #header nav ul li a { font-size: 14px; }
    #header .logo img { max-width: 130px; }

    .quickMenu { right: 20px; top: 210px; }
    .quickMenu .quickItem { width: 76px; font-size: 15px; }
    .quickMenu .quickItem .material-symbols-outlined, .quickMenu .quickItem .blogIcon { font-size: 34px; }
    .quickMenu .quickItem strong { font-size: 17px; line-height: 20px; }
    .quickMenu .topBtn { width: 76px; height: 76px; font-size: 15px; }

    .mainVisual { margin-bottom: 100px; }
    .mainVisual .textBox { max-width: calc(100% - 60px); top: 30%; }
    .mainVisual .textBox h2 { font-size: 56px; }
    .mainVisual .textBox p { font-size: 24px; line-height: 34px; }

    .section1 { margin-bottom: 100px; }
    .section1 .inner h2 { font-size: 36px; margin-bottom: 50px; }

    .section2 { padding: 110px 0; margin-bottom: 100px; }
    .section2::before { width: 500px; height: 540px; }
    .section2 .top { gap: 70px; margin-bottom: 110px; }
    .section2 .top .textBox h2 { font-size: 32px; }
    .section2 .top .textBox p { font-size: 20px; line-height: 36px; }
    .section2 .bottom { gap: 70px; }
    .section2 .bottom ul li { padding: 28px 22px 20px; }
    .section2 .bottom ul li .icon { width: 60px; height: 60px; }
    .section2 .bottom ul li .textBox h4 { font-size: 26px; line-height: 1.2; }
    .section2 .bottom ul li .textBox p { font-size: 19px; line-height: 27px; }
    .section2 .bottom .textBox h3 { font-size: 28px; }
    .section2 .bottom .textBox h2 { font-size: 34px; letter-spacing: 22px; }
    .section2 .bottom .textBox h2 span { font-size: 23px; letter-spacing: 8px; }
    .section2 .bottom .textBox p { font-size: 22px; line-height: 38px; }

    .section3 { margin-bottom: 120px; }
    .section3 .tit { margin-bottom: 60px; }
    .section3 h3 { font-size: 32px; }
    .section3 p.topText { font-size: 20px; line-height: 36px; }
    .section3 .bottomImgBox { margin-bottom: 90px; }
    .section3 p.bottomText { font-size: 26px; }

    .section4 { padding: 120px 0; margin-bottom: 100px; }
    .section4 .wrap { gap: 30px; }
    .section4 .wrap .box h2 { font-size: 32px; }
    .section4 .wrap .box p { min-height: 150px; font-size: 24px; }
    .section4 .wrap .box .imgBox img { width: 100%; }
    .section4 .wrap .box .listBox ul { padding: 30px 20px 30px 38px; }
    .section4 .wrap .box .listBox ul li { font-size: 21px; line-height: 38px; }

    .section5 { margin-bottom: 140px; }
    .section5 .faqList .faqItem .faqBtn span { font-size: 22px; }
    .section5 .faqList .faqItem .faqAnswer .faqAnswerInner p { font-size: 18px; }

    .section6 { padding: 110px 0; }
    .section6 .tit { margin-bottom: 70px; }
    .section6 .facilityArr { width: 54px; height: 54px; }
    .section6 .facilityPrev { left: 30px; }
    .section6 .facilityNext { right: 30px; }

    .section7 { padding: 100px 0; }
    .section7 .wrap { flex-direction: column; gap: 50px; }
    .section7 .wrap .infoBox { width: 100%; }
    .section7 .wrap .infoBox .infoItem { margin-bottom: 40px; }
    .section7 .wrap .infoBox .infoItem .iconBox h3 { font-size: 22px; }
    .section7 .wrap .infoBox .infoItem .textBox { padding-left: 52px; }
    .section7 .wrap .infoBox .infoItem .textBox .telBox p { font-size: 29px; }
    .section7 .wrap .infoBox .infoItem .textBox .telBox p em { font-size: 21px; }
    .section7 .wrap .infoBox .infoItem .textBox > span { font-size: 18px; }
    .section7 .wrap .infoBox .infoItem .textBox .orangeText strong { width: 105px; font-size: 21px; }
    .section7 .wrap .infoBox .infoItem .textBox .orangeText span { width: calc(100% - 105px); font-size: 17px; }
    .section7 .wrap .infoBox .infoItem .textBox dl dt { width: 105px; font-size: 20px; }
    .section7 .wrap .infoBox .infoItem .textBox dl dd { width: calc(100% - 105px); font-size: 20px; }
    .section7 .wrap .infoBox .infoItem .textBox .wayText { font-size: 20px; }
    .section7 .wrap .map { flex: 1; width: 100%; }
    .section7 .wrap .map .textBox .titBox p { font-size: 21px; }
    .section7 .wrap .map .textBox > p { font-size: 20px; line-height: 28px; }
    .section7 .wrap .map .mapIcon { margin-top: 30px; }
    .section7 .wrap .map .mapIcon a img { width: 100%; }

    footer .footerInner { gap: 70px; padding: 70px 0; }
    footer .footerInner span, footer .footerInner p { font-size: 16px; line-height: 30px; }


    .customNotice { padding: 90px 20px 120px; }
    .customNotice .customNoticeTitle { margin-bottom: 54px; }
    .customNotice .customNoticeTitle h2 { font-size: 40px; }
    .customNotice .customNoticeHead { grid-template-columns: 80px 1fr 130px; min-height: 60px; }
    .customNotice .customNoticeRow { grid-template-columns: 80px 1fr 130px; min-height: 66px; }
    .customNotice .customNoticeRow strong { font-size: 16px; }
    .noticeReadWrap { padding: 140px 20px 120px; }
    .noticeReadHead { padding: 20px; }
    .noticeReadHead strong { font-size: 28px; }
    .noticeReadBody { padding: 42px 26px 56px; font-size: 17px; }
    .noticeReadBody p { font-size: 17px; }
}
 


@media (max-width: 768px) {

    .inner { padding: 0 20px; }
    #container { margin-top: 65px; }
    .quickMenu { display: none; }
    .tit { font-size: 23px; }
    #header { height: 65px; padding: 0 25px; justify-content: space-between;}
    #header nav { display: none; }
    #header .logo img { max-width: 196px; width: 100%; }
    #header .mobileMenuBtn { display: flex; }
    
    .mobileBottomBar { display: flex; }

    .mainVisual { height: 80dvh; }
    .mainVisual .textBox { top: 55%; margin-bottom: 10px; }
    .mainVisual .textBox2 { top: 40%; }
    .mainVisual .textBox h2 { font-size: 38px; line-height: 42px; }
    .mainVisual .textBox2 h2 { font-size: 38px; line-height: 1.3; }
    .mainVisual .textBox p { font-size: 17px; line-height: 1.2; }

    .section1 { margin-bottom: 75px; }
    .section1 .inner h2 { font-size: 30px; line-height: 39px; margin-bottom: 60px; }
    .section1 .inner .logo img { width: 220px; }

    .section2 { padding: 58px 0; }
    .section2 .inner .tit { margin-bottom: 24px; }
    .section2 .top { flex-direction: column; gap: 44px; }
    .section2 .top .doctorImg img { width: 100%; }
    .section2 .top .textBox h2 { font-size: 27px; }
    .section2 .top .textBox p { font-size: 20px; line-height: 42px; letter-spacing: -0.46px; }

    .section2 .bottom { flex-direction: column-reverse; }
    .section2 .bottom .textBox h3 { font-size: 25px; margin-bottom: 19px; }
    .section2 .bottom .textBox h2 { font-size: 28px; margin-bottom: 20px; }
    .section2 .bottom .textBox h2 span { font-size: 20px; }
    .section2 .bottom .textBox p { font-size: 20px; line-height: 42px; letter-spacing: -0.46px; }

    .section3 h3 { font-size: 28px; line-height: 40px; }
    .section3 p.topText { font-size: 21px; line-height: 32px; }
    .section3 p.bottomText { font-size: 23px; line-height: 35px; }
    .section3 .topImgBox img { height: 259px; object-fit: cover; }

    .section4 { padding: 73px 0; margin-bottom: 70px; }
    .section4 .wrap { flex-direction: column; gap: 100px; }
    .section4 .wrap .box h2 { font-size: 27px; margin-bottom: 13px; }
    .section4 .wrap .box .imgBox { margin-bottom: 18px; }
    .section4 .wrap .box p { font-size: 20px; }
    .section4 .wrap .box .listBox ul { padding: 13px 20px; }
    .section4 .wrap .box .listBox ul li { padding-left: 16px; font-size: 18px; line-height: 35px; letter-spacing: -0.36px; font-weight: 400; }
    .section4 .wrap .box .listBox ul li::before { top: 15px; }


    .section5 { margin-bottom: 77px; }
    .section5 .faqList .faqItem .faqBtn { padding: 20px 0 ; align-items: flex-start; padding: 22px 0; gap: 5px; }
    .section5 .faqList .faqItem .faqBtn span { font-size: 21px; line-height: 27px; }
    .section5 .faqList .faqItem .faqBtn strong { min-width: 30px; font-size: 21px; }
    .section5 .faqList .faqItem .faqBtn em { width: 16px; height: 16px; margin-left: 8px; margin-top: 5px; align-self: center; }
    .section5 .faqList .faqItem .faqAnswer .faqAnswerInner { padding: 0 0 24px 52px; }
    .section5 .faqList .faqItem .faqAnswer .faqAnswerInner p { padding: 18px 20px; border-radius: 14px; font-size: 16px; }

    .section6 { padding: 70px 0 30px; }
    .section6 .tit { margin-bottom: 27px; }
    .section6 .facilityArr { display: none; }
    .section6 .facilitySlideWrap { padding: 0 0 30px; }

    .section7 { padding: 75px 0; }
    .section7 .wrap { flex-direction: column; }
    .section7 .wrap .infoBox { width: 100%; }

    
    .section7 .wrap .infoBox .infoItem .textBox { padding-left: 30px; }
    .section7 .wrap .infoBox .infoItem .iconBox img { width: 40px; height: 40px; }
    .section7 .wrap .infoBox .infoItem .iconBox h3 { font-size: 23px; }
    .section7 .wrap .infoBox .infoItem .textBox .telBox { flex-direction: column; align-items: start; gap: unset; }
    .section7 .wrap .infoBox .infoItem .textBox .telBox p em { width: 55px; }
    .section7 .wrap .infoBox .infoItem .textBox .orangeText { flex-direction: column; align-items: start; margin-bottom: 7px; }
    .section7 .wrap .infoBox .infoItem .textBox .orangeText strong { width: auto; font-size: 25px; line-height: 48px; letter-spacing: -0.25px; }
    .section7 .wrap .infoBox .infoItem .textBox .orangeText span { font-size: 20px; width: 100%; }
    .section7 .wrap .infoBox .infoItem .textBox dl dt { width: 95px; font-size: 20px; }
    .section7 .wrap .map { display: flex; flex-direction: column; }
    .section7 .wrap .map > img { order: 1; }
    .section7 .wrap .map .textBox { order: 3; padding-left: unset; }
    .section7 .wrap .map .textBox .titBox {  }
    .section7 .wrap .map .mapIcon { order: 2; margin-top: unset;  margin-bottom: 34px; }
    .section7 .wrap .map .mapIcon a img { max-width: 100%; width: 100%; }

    footer { padding-bottom: 90px; }
    footer .footerInner { flex-direction: column; align-items: start; padding: 63px 0 60px 30px; } 
    footer .footerInner .footerInfo > div { flex-direction: column; align-items: start; }
    footer .footerInner .footerInfo span::after,footer .footerInner .footerInfo .infoItem:first-child:after { display: none; }
    footer .footerInner .footerInfoTop .infoItem { align-items: start; }
    .footerInfoTop .infoItem strong , .footerInfoTop .infoItem span ,footer .footerInner span, footer .footerInner p { font-size: 17px; line-height: 28px; }
    footer .footerInner p.copyright { margin-top: 20px; font-size: 13px; }

    .customNotice { padding: 70px 16px 90px; }
    .customNotice .customNoticeTitle { margin-bottom: 40px; }
    .customNotice .customNoticeTitle span { font-size: 13px; letter-spacing: 3px; margin-bottom: 10px; }
    .customNotice .customNoticeTitle h2 { font-size: 32px; margin-bottom: 12px; }
    .customNotice .customNoticeTitle p { font-size: 15px; }
    .customNotice .customNoticeTop { display: block; margin-bottom: 18px; }
    .customNotice .customNoticeTop p { margin-bottom: 12px; font-size: 14px; }
    .customNotice .customNoticeSearch { width: 100%; }
    .customNotice .customNoticeSearch input { width: calc(100% - 74px); height: 44px; font-size: 14px; }
    .customNotice .customNoticeSearch button { width: 66px; height: 44px; font-size: 14px; }
    .customNotice .customNoticeHead { grid-template-columns: 58px 1fr 88px; min-height: 54px; }
    .customNotice .customNoticeHead span { font-size: 13px; }
    .customNotice .customNoticeHead span:nth-child(4) { display: none; }
    .customNotice .customNoticeRow { grid-template-columns: 58px 1fr 88px; min-height: 60px; }
    .customNotice .customNoticeRow span { font-size: 13px; }
    .customNotice .customNoticeRow span:nth-child(4) { display: none; }
    .customNotice .customNoticeRow strong { font-size: 14px; }
    .customNotice .customNoticeRow.fixed span em { width: 42px; height: 24px; font-size: 12px; }
    .customNotice .customNoticePaging { margin-top: 34px; }
    .customNotice .customNoticePaging .pg a, .customNotice .customNoticePaging .pg strong { min-width: 32px; height: 32px; font-size: 13px; }

    .noticeReadWrap { padding: 110px 16px 90px; }
    .noticeReadHead { padding: 20px; }
    .noticeReadHead strong { font-size: 23px; line-height: 1.4; margin-bottom: 18px; }
    .noticeReadHead div { flex-wrap: wrap; gap: 8px 20px; }
    .noticeReadHead div span { font-size: 14px; }
    .noticeReadHead div span + span::before { left: -10px; height: 11px; }
    .noticeReadBody { min-height: 260px; padding: 34px 18px 46px; font-size: 15px; line-height: 1.75; }
    .noticeReadBody p { font-size: 15px; line-height: 1.75; }
    .noticeReadBody table th, .noticeReadBody table td { font-size: 14px; padding: 10px; }
    .noticeReadBtnBox { margin-top: 36px; }
    .noticeReadBtnBox a { width: 140px; height: 48px; font-size: 15px; }


}
@media (max-width: 385px) {
    .section7 .wrap .infoBox .infoItem .textBox dl dt { width: 95px; font-size: 17px; }
}
