:root{--color-primary: #1b2ea3; --color-secondary: #3C3C3C; --color-text: #141414; --mn-sec-padding: 100px; --sub-sec-padding: 120px; --fz-10: min(2.1vw, 10px); --fz-11: min(2.4vw, 11px); --fz-12: min(2.7vw, 12px); --fz-13: min(2.9vw, 13px); --fz-14: min(3.2vw, 14px); --fz-15: min(3.5vw, 15px); --fz-16: min(3.7vw, 16px); --fz-17: min(4.0vw, 17px); --fz-18: min(4.3vw, 18px); --fz-19: min(4.5vw, 19px); --fz-20: min(4.8vw, 20px); --fz-21: min(5.1vw, 21px); --fz-22: min(5.3vw, 22px); --fz-23: min(5.6vw, 23px); --fz-24: min(5.9vw, 24px); --fz-25: min(6.1vw, 25px); --fz-26: min(6.4vw, 26px); --fz-27: min(6.7vw, 27px); --fz-28: min(6.9vw, 28px); --fz-29: min(7.2vw, 29px); --fz-30: min(7.5vw, 30px); --fz-31: min(7.7vw, 31px); --fz-32: min(8.0vw, 32px); --fz-33: min(8.3vw, 33px); --fz-34: min(8.5vw, 34px); --fz-35: min(8.8vw, 35px); --fz-36: min(9.1vw, 36px); --fz-37: min(9.3vw, 37px); --fz-38: min(9.6vw, 38px); --fz-39: min(9.9vw, 39px); --fz-40: min(10.1vw, 40px); --fz-41: min(10.4vw, 41px); --fz-42: min(10.7vw, 42px); --fz-43: min(10.9vw, 43px); --fz-44: min(11.2vw, 44px); --fz-45: min(11.5vw, 45px); --fz-46: min(11.7vw, 46px); --fz-47: min(12.0vw, 47px); --fz-48: min(12.3vw, 48px); --fz-49: min(12.5vw, 49px); --fz-50: min(12.8vw, 50px); --fz-64: min(16.4vw, 64px); --fz-76: min(19.4vw, 76px); --fz-80: min(20.5vw, 80px); --fz-84: min(22vw, 84px); --h1-fz: 36px; --h2-fz: 28px; --h3-fz: 24px; --h4-fz: 20px; --h5-fz: 18px; --tit-desc-fz: 18px; --detail-fz: 18px; --ff-pretendard: 'Pretendard Variable',serif; --ff-cormorant: 'Cormorant Garamond',serif; --ff-nanummyeongjo: 'Nanum Myeongjo',serif;}
h1{font-size: var(--fz-36);}
h2{font-size: var(--fz-28);}
h3{font-size: var(--fz-24);}
h4{font-size: var(--fz-20);}
h5{font-size: var(--fz-18);}
body, button, input, select, textarea, a{font-family: var(--ff-pretendard); color: var(--color-text);}
body{-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}
.pc-ib{display: inline-block !important; width: max-content !important;}
.mo{display: none !important;}
.mo-ib{display: none !important;}
.mo-if{display: none !important;}
.mo-f{display: none !important;}
.mo-g{display: none !important;}
.dpnone{display: none !important;}
header{position: fixed; top: 0; z-index: 999; display: flex; flex-direction: column; justify-content: flex-start; align-items: center; width: 100%; margin: 0 auto; background: transparent; transition: all 0.3s ease; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05); --hd-text: #3c3c3c; --hd-ham: #1b2ea3;}
header.hide{transform: translateY(-100%); box-shadow: unset;}
header.wh{background: #ffffff !important; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05) !important; --hd-text: #3c3c3c !important; --hd-ham: #1b2ea3 !important;}
header.tr{background: transparent; box-shadow: unset; --hd-text: #ffffff; --hd-ham: #ffffff;}
header .hd-cont{position: relative; display: flex; justify-content: space-between; align-items: center; align-self: stretch; width: 100%; max-width: 1920px; padding: 8px 60px; margin: 0 auto; box-sizing: border-box;}
header .hd-cont .hd-left{padding: 12px 20px;}
header .logo-area{display: flex; align-items: center; width: 250px; padding: 0; margin: 0;}
header .logo-area a{display: flex; align-items: center;}
header .logo-image{display: block; width: 214px; height: auto;}
header .logo-image.cl{display: block;}
header .logo-image.wh{display: none;}
header.tr .logo-image.cl{display: none;}
header.tr .logo-image.wh{display: block;}
header .navigation{display: flex; justify-content: center; align-items: center; flex-grow: 1; height: 100%;}
header .menu-list{display: flex; gap: 76px; justify-content: center; width: 100%; margin: 0; padding: 0; list-style: none; white-space: nowrap;}
header .menu-item{position: relative; width: fit-content; transition: width 0.5s; text-align: center;}
header .menu-item a{font-size: 20px; font-weight: 400; line-height: 1.4; color: var(--hd-text); text-align: center; word-wrap: break-word;}
header .menu-item:after{position: absolute; content: ''; bottom: -30px; left: 0; z-index: 100; width: 0; height: 2px; background-color: var(--color-primary); transition: width 0.5s ease;}
header .menu-item:hover:after{width: 100%;}
header.is-hover .menu-list, header.is-active .menu-list{gap: 0;}
header.is-hover .menu-list .menu-item, header.is-active .menu-list .menu-item{width: calc(100% / 6);}
header .hd-btn-wrap{display: flex; justify-content: flex-end; align-items: center; width: 250px; gap: 28px;}
header .hd-btn-wrap .btn-login{padding: 10px 27px; border: 1px solid var(--hd-ham); border-radius: 99px; font-size: 18px; font-weight: 500; line-height: normal; font-style: normal; color: var(--hd-text);}
header .hamburger-button{display: inline-flex; flex-direction: column; justify-content: space-between; align-items: flex-start; position: relative; width: 36px; height: 18px; padding: 0; border: none; background: none; cursor: pointer;}
header .bar{width: 100%; height: 2px; background: var(--hd-ham); transition: all 0.3s;}
header.is-active .bar:nth-child(1){transform: translateY(8px) rotate(30deg);}
header.is-active .bar:nth-child(2){opacity: 0;}
header.is-active .bar:nth-child(3){transform: translateY(-8px) rotate(-30deg);}
#top_menu{position: absolute; top: 100%; left: 0; z-index: 99; width: 100%; height: 0; overflow: hidden; background: #ffffff; transition: height 0.3s ease-in-out; box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);}
#main_header.is-hover #top_menu, #main_header.is-active #top_menu{height: 312px;}
#top_menu .nav-body{display: flex; justify-content: center; width: 100%; max-width: 1920px; padding: 36px 80px 88px; margin: 0 auto;}
#top_menu .nav-body ul{display: flex; align-items: flex-start;}
#top_menu .nav-body ul li{position: relative; display: flex; flex-direction: column; align-items: center; gap: 36px; width: calc(100% / 6); text-align: center;}
#top_menu .nav-body ul li:after{position: absolute; content: ''; top: -36px; left: 0; width: 0; height: 2px; background-color: var(--color-primary); transition: width 0.5s ease;}
#top_menu .nav-body ul li:hover:after{width: 100%;}
#top_menu .nav-body ul li a{position: relative; font-size: 16px; font-weight: 500; line-height: normal; font-style: normal; color: #3c3c3c;}
#top_menu .nav-body ul li a:hover:before{position: absolute; top: 50%; left: -9px; transform: translateY(-50%); width: 5px; height: 5px; border-radius: 50%; background-color: #7fa0c1; content: '';}
#side_menu{position: fixed; top: 0; right: -100%; z-index: 1000; width: 100%; max-width: 840px; height: 100vh; padding: 40px 50px 40px 100px; box-sizing: border-box; background: url(../img/nav_bg.webp) no-repeat center/cover; background-blend-mode: multiply, normal; overflow-y: auto; transition: right 0.5s ease;}
#side_menu.open{right: 0;}
#side_menu .nav-head{display: flex; justify-content: flex-end; align-items: center; gap: 60px; width: 100%; padding: 0; box-sizing: border-box; background-color: transparent;}
#side_menu .nav-head .side-logo{display: none;}
#side_menu .nav-head .head-btn-group{display: flex; align-items: center; gap: 12px;}
#side_menu .nav-head .head-btn-group .btn-login-round{display: flex; justify-content: center; align-items: center; padding: 18px 30px; box-sizing: border-box; border-radius: 48px; background: rgba(255, 255, 255, 0.12); font-family: Pretendard, var(--ff-pretendard); font-size: 16px; font-weight: 500; color: #ffffff; text-decoration: none;}
#side_menu .nav-head .side-close{display: flex; justify-content: center; align-items: center; padding: 0; border: none; background: transparent; cursor: pointer;}
#side_menu .nav-body{width: 100%; margin-top: 47px; padding: 0; box-sizing: border-box;}
#side_menu .nav-body .sitemap-list{display: flex; flex-direction: column; align-items: flex-start; gap: 16px; width: 100%;}
#side_menu .nav-body .sitemap-list .sitemap-row{display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 16px; width: 100%;}
#side_menu .nav-body .sitemap-list .sitemap-row .row-1depth{font-family: Pretendard, var(--ff-pretendard); font-size: 24px; font-weight: 700; line-height: 60px; color: #ffffff; text-decoration: none;}
#side_menu .nav-body .sitemap-list .sitemap-row .row-2depth{display: flex; align-items: center; gap: 40px;}
#side_menu .nav-body .sitemap-list .sitemap-row .row-2depth a{transition: color 0.3s; font-family: Pretendard, var(--ff-pretendard); font-size: 20px; font-weight: 500; line-height: 48px; color: #e9e9e9; text-decoration: none;}
#side_menu .nav-body .sitemap-list .sitemap-row .row-2depth a:hover{color: #ffffff;}
#side_menu .nav-body .side-bottom-member{display: none;}
footer{position: relative; width: 100%; z-index: 10;}
footer .ft-road-section{display: flex; width: 100%; height: 1062px; background-color: #ffffff;}
footer .ft-road-section .map-area{width: 57%; max-width: 1097px; height: 100%;}
footer .ft-road-section .map-area .root_daum_roughmap{width: 100% !important; height: 100% !important; box-sizing: border-box; border: none;}
footer .ft-road-section .map-area .root_daum_roughmap .wrap_map{width: 100% !important; height: 100% !important; box-sizing: border-box;}
footer .ft-road-section .map-area .root_daum_roughmap .roughmap_lebel_text, footer .ft-road-section .map-area .root_daum_roughmap .wrap_roughmap_lebel, footer .ft-road-section .map-area .root_daum_roughmap .roughmap_maker_label{display: none !important;}
footer .ft-road-section .info-area{position: relative; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; height: 100%; padding: 120px 130px; box-sizing: border-box; background-color: #ffffff;}
footer .ft-road-section .info-area .bg-number{position: absolute; right: 130px; bottom: 120px; z-index: 1; font-size: 600px; font-family: 'Adobe Hebrew', serif; font-style: italic; font-weight: 600; color: rgba(221, 223, 237, 0.12); line-height: 1; pointer-events: none;}
footer .ft-road-section .info-area .info-box{position: relative; z-index: 2; display: flex; flex-direction: column; gap: 48px; width: 100%; max-width: 548px;}
footer .ft-road-section .info-area .info-box .title-box{display: flex; flex-direction: column; gap: 5px;}
footer .ft-road-section .info-area .info-box .title-box span{font-family: SUIT, var(--ff-pretendard); font-size: 36px; font-weight: 700; line-height: 1.47; color: #171717;}
footer .ft-road-section .info-area .info-box .title-box span.accent{color: #1b2ea3;}
footer .ft-road-section .info-area .info-box .address-text{font-family: SUIT, var(--ff-pretendard); font-size: 24px; font-weight: 500; line-height: 1.5; color: #171717;}
footer .ft-road-section .info-area .info-box .btn-group{display: flex; gap: 16px;}
footer .ft-road-section .info-area .info-box .btn-group a{display: flex; justify-content: center; align-items: center; gap: 10px; width: 150px; height: 50px; box-sizing: border-box; border-radius: 10px; font-family: SUIT, var(--ff-pretendard); font-size: 14px; font-weight: 700; text-decoration: none;}
footer .ft-road-section .info-area .info-box .btn-group a.btn-kakao{background-color: #F6CB1B; color: #fff;}
footer .ft-road-section .info-area .info-box .btn-group a.btn-naver{background-color: #26B518; color: #ffffff;}
footer .ft-road-section .info-area .info-box .clinic-title{font-family: SUIT, var(--ff-pretendard); font-size: 24px; font-weight: 600; line-height: 36px; color: #171717;}
footer .ft-road-section .info-area .info-box .clinic-hours{display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 12px;}
footer .ft-road-section .info-area .info-box .clinic-hours .hour-row{display: flex; align-items: center; gap: 78px; width: 100%;}
footer .ft-road-section .info-area .info-box .clinic-hours .hour-row .day-label{width: 73px; font-family: SUIT, var(--ff-pretendard); font-size: var(--fz-20); font-weight: 500; line-height: 1.8; color: #171717; text-align: justify; text-align-last: justify;}
footer .ft-road-section .info-area .info-box .clinic-hours .hour-row.notice-row .day-label{width: 100%; text-align: left; text-align-last: left;}
footer .ft-road-section .info-area .info-box .clinic-hours .hour-row .time-val{font-family: SUIT, var(--ff-pretendard); font-size: var(--fz-20); font-weight: 500; line-height: 1.8; color: #171717;}
footer .ft-road-section .info-area .info-box .contact-box{display: flex; align-items: center; gap: 35px;}
footer .ft-road-section .info-area .info-box .contact-box .tel-number{font-family: SUIT, var(--ff-pretendard); font-size: var(--fz-32); font-weight: 600; line-height: 36px; color: #171717;}
footer .ft-road-section .info-area .info-box .contact-box .btn-consult{display: flex; justify-content: center; align-items: center; gap: 2px; width: 170px; height: 50px; box-sizing: border-box; border-radius: 10px; background-color: #1b2ea3; font-family: Pretendard, var(--ff-pretendard); font-size: 15px; font-weight: 600; color: #ffffff; text-decoration: none;}
footer .ft-road-section .info-area .info-box .notice-text{font-family: SUIT, var(--ff-pretendard); font-size: 16px; font-weight: 500; line-height: 1.5; color: #171717;}
footer .ft-info-section{display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 10px; width: 100%; padding: 100px 160px 120px; box-sizing: border-box; background-color: #1f1f1f;}
footer .ft-info-section .info-links{display: flex; justify-content: flex-start; align-items: center; gap: 60px;}
footer .ft-info-section .info-links .link-item{font-family: Pretendard, var(--ff-pretendard); font-size: 20px; font-weight: 600; color: #f0f0f0; text-decoration: none; transition: 0.5s;}
footer .ft-info-section .info-links .link-item:hover{font-weight: 700; color: #3b80ff;}
footer .ft-info-section .info-body{display: flex; justify-content: space-between; align-items: flex-end; width: 100%;}
footer .ft-info-section .info-body .info-left{display: flex; flex-direction: column; justify-content: center; align-items: flex-start;}
footer .ft-info-section .info-body .info-left .company-details{display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 12px; width: 629px;}
footer .ft-info-section .info-body .info-left .company-details span{display: block; width: 100%; font-family: Pretendard, var(--ff-pretendard); font-size: 18px; font-weight: 300; color: #f0f0f0; line-height: 1.4;}
footer .ft-info-section .info-body .info-right{display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-end; gap: 30px; height: 130px;}
footer .ft-info-section .info-body .info-right .ft-logo{width: 270px; height: 61px; object-fit: contain;}
footer .ft-info-section .info-body .info-right .copyright-text{font-family: Pretendard, var(--ff-pretendard); font-size: 16px; font-weight: 400; color: #999999;}
/* .floating-container{position: fixed; bottom: 30px; right: 20px; z-index: 999; display: flex; flex-direction: column; align-items: center; gap: 15px; pointer-events: none;} */
.quick-menu{position: fixed; right: 40px; bottom: 40px; z-index: 1000;}
.btn-toggle{width: 79px; height: 79px; background: #1B2EA3; border-radius: 50%; border: none; cursor: pointer; position: relative; z-index: 2; transition: 0.3s;}
.btn-toggle .open-icon{background: transparent; border-radius: 50%; display: block; margin: 0 auto; transition: 0.3s; color: #FFF; text-align: center; font-family: Pretendard; font-size: 11.742px; font-style: normal; font-weight: 500; line-height: normal; letter-spacing: -0.235px;}
.btn-toggle .open-icon img{margin-top: 4px; margin-bottom: 8px;}
.btn-toggle .close-icon{display: none; font-size: 30px; color: #fff;}
.quick-list{position: absolute; bottom: 0; width: 79px; background: #4877CF; border-radius: 75px; padding: 12px 0 79px 0; margin: 0; opacity: 0; visibility: hidden; overflow: hidden; transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); transform: translateY(30px);}
.quick-list li{width: 100%; text-align: center; border-bottom: 1px solid rgba(255,255,255,0.2);}
.quick-list li:last-child{border-bottom: none;}
.quick-list a{display: flex; flex-direction: column; align-items: center; gap: 7px; padding: 15px 0; color: #fff; font-size: 11px; word-break: keep-all;}
.quick-list .icon{font-size: 20px; margin-bottom: 5px;}
.quick-menu.active .quick-list{opacity: 1; visibility: visible; transform: translateY(0);}
.quick-menu.active .btn-toggle{}
.quick-menu.active .btn-toggle .open-icon{display: none;}
.quick-menu.active .btn-toggle .close-icon{display: block; color: #FFF; text-align: center; font-family: Pretendard; font-size: 11.742px; font-style: normal; font-weight: 500; line-height: normal; letter-spacing: -0.235px;}
.quick-menu.active .btn-toggle .close-icon img{margin-bottom: 4px;}
@keyframes rotateText{
    from{transform: rotate(0deg);}
    to{transform: rotate(360deg);}
}
@media(max-width: 1024px){
    :root{--mn-sec-padding: 80px; --sub-sec-padding: 100px; --h1-fz: var(--fz-25); --h2-fz: var(--fz-22); --h3-fz: var(--fz-20); --h4-fz: var(--fz-18); --h5-fz: var(--fz-16); --tit-desc-fz: var(--fz-16); --detail-fz: var(--fz-18);}
    .pc{display: none !important;}
    .pc-ib{display: none !important;}
    .mo{display: block !important;}
    .mo-ib{display: inline-block !important;}
    .mo-if{display: inline-flex !important;}
    .mo-f{display: flex !important;}
    .mo-g{display: grid !important;}
    header{background: #ffffff;}
    header .hd-cont{height: 60px; padding: 0 20px;}
    header .logo-area{width: auto; margin: 0; padding: 0;}
    header .logo-image{width: 120px;}
    header .hd-btn-wrap{width: auto; gap: 15px;}
    header .navigation{display: none;}
    header .hd-btn-wrap .btn-login{display: none;}
    header .hamburger-button{width: 28px; gap: 5px;}
    header .bar{height: 1.5px;}
    #top_menu{display: none;}
    #side_menu{max-width: 100%; padding: 30px 30px 40px;}
    #side_menu .nav-head{display: flex; justify-content: space-between; align-items: center; width: 100%; padding: 0; box-sizing: border-box;}
    #side_menu .nav-head .side-logo{display: flex; align-items: center;}
    #side_menu .nav-head .side-logo img{width: auto; height: 32px;}
    #side_menu .nav-head .head-btn-group{display: none;}
    #side_menu .nav-head .side-close{display: flex; justify-content: center; align-items: center; padding: 0; border: none; background: transparent; cursor: pointer;}
    #side_menu .nav-body{padding: 0; margin-top: 30px; box-sizing: border-box;}
    #side_menu .nav-body .sitemap-list{display: flex; flex-direction: column; gap: 24px; max-height: none; overflow-y: visible;}
    #side_menu .nav-body .sitemap-list .sitemap-row{display: flex; flex-direction: column; align-items: flex-start; gap: 10px; height: auto; margin-bottom: 0;}
    #side_menu .nav-body .sitemap-list .sitemap-row .row-1depth{width: 100%; font-family: Pretendard, var(--ff-pretendard); font-size: 20px; font-weight: 700; line-height: 1.4; color: #ffffff; text-decoration: none;}
    #side_menu .nav-body .sitemap-list .sitemap-row .row-2depth{display: flex; flex-wrap: wrap; gap: 12px 20px;}
    #side_menu .nav-body .sitemap-list .sitemap-row .row-2depth a{font-family: Pretendard, var(--ff-pretendard); font-size: 16px; font-weight: 500; line-height: 1.5; color: #e9e9e9; text-decoration: none;}
    #side_menu .nav-body .side-bottom-member{display: flex; align-items: center; gap: 10px; margin-top: 40px; padding-top: 25px; border-top: 1px solid rgba(255, 255, 255, 0.15);}
    #side_menu .nav-body .side-bottom-member .btn-member-link{display: flex; justify-content: center; align-items: center; padding: 10px 20px; box-sizing: border-box; border-radius: 48px; background: rgba(255, 255, 255, 0.12); font-family: Pretendard, var(--ff-pretendard); font-size: 14px; font-weight: 500; color: #ffffff; text-decoration: none;}
    .floating-container{bottom: 20px; right: 10px; align-items: flex-end;}
    .floating-container .floating-trigger{width: 80px; height: 80px;}
    .floating-container .trigger-circle{width: 55px; height: 55px; font-size: var(--fz-12);}
    .floating-container .trigger-text{width: 75px;}
    .floating-container .quick-item{width: 140px; height: 40px; font-size: var(--fz-14);}
    footer .ft-road-section{flex-direction: column-reverse; height: auto;}
    footer .ft-road-section .map-area{width: 100%; height: 350px;}
    footer .ft-road-section .info-area{width: 100%; padding: 50px 40px;}
    footer .ft-road-section .info-area .info-box .clinic-hours .hour-row{gap: 20px;}
    footer .ft-road-section .info-area .info-box .clinic-hours .hour-row .day-label{width: 63px; font-size: var(--fz-18);}
    footer .ft-road-section .info-area .info-box .clinic-hours .hour-row .time-val{font-size: var(--fz-18);}
    footer .ft-road-section .info-area .info-box .clinic-hours .hour-row.notice-row .day-label{font-size: var(--fz-16);}
    footer .ft-road-section .info-area .info-box .contact-box{flex-direction: column; align-items: center;}
    footer .ft-road-section .info-area .info-box{gap: 30px;}
    footer .ft-road-section .info-area .info-box .title-box{gap: 0;}
    footer .ft-road-section .info-area .info-box .title-box span{font-size: var(--fz-28);}
    footer .ft-road-section .info-area .info-box .address-text{font-size: var(--fz-18);}
    footer .ft-road-section .info-area .info-box .notice-text{font-size: var(--fz-14); text-align: center;}
    footer .ft-info-section{gap: 30px; align-items: center; padding: 50px 20px 60px; text-align: center;}
    footer .ft-info-section .info-links{gap: 20px;}
    footer .ft-info-section .info-links .link-item{font-size: 16px;}
    footer .ft-info-section .info-body{flex-direction: column; align-items: center; gap: 40px; height: auto; margin-top: 40px;}
    footer .ft-info-section .info-body .info-left .company-details{gap: 8px; width: 100%;}
    footer .ft-info-section .info-body .info-left .company-details span{font-size: 14px;}
    footer .ft-info-section .info-body .info-right{align-items: center; gap: 20px; height: auto;}
    footer .ft-info-section .info-body .info-right .ft-logo{width: 180px; height: auto;}
    footer .ft-info-section .info-body .info-right .copyright-text{font-size: 12px; text-align: left;}
    .quick-menu{bottom: 30px; right: 30px;}
}