.sub_banner{position: relative; width: 100vw; left: -50vw; margin-left: 50%;}
.sub_banner .inner{max-width: 1720px; display: flex; align-items: center; justify-content: center; background-size: cover; background-position: center; background-attachment: fixed; text-align: center; padding: 0 20px;  margin: 0 auto;}
.sub_banner .en_title{font-size: 18px; line-height: 1; color: var(--point); font-weight: bold; font-family: var(--mon); }
.sub_banner .kr_title{font-size: 60px; line-height: 70px; color: #fff; font-weight: bold; margin-top: 30px;}
.sub_banner .text{font-size: 22px; line-height: 30px; color: #ffffff; font-weight: 500; margin-top: 20px;}

.underline{position: relative; font-weight: bold; z-index: 2;}
.underline::before{position: absolute; content: ''; bottom: 0; left: 0; width: 100%; height: 10px; background-color: var(--point); z-index: -1;}

.colorPoint{color: var(--point) !important;}

/* 0101 company/greeting.asp */
#greeting{}
    #greeting .greeting_ul{position: relative;}
    #greeting .greeting_ul::before{position: absolute; content: ''; width: 2px; top: 0; bottom: 0; left: calc(50% - 1px); background-color: #e6e6e6; z-index: 1;}
    #greeting .greeting_ul::after{position: absolute; content: ''; top: 50%; left: 50%; font-size: 18px; line-height: 1; color: #e6e6e6; font-weight: bold; font-family: var(--mon); writing-mode: tb-rl; background-color: #fff; padding: 20px 0; transform: translate(-50%, -50%) rotate(-180deg); z-index: 2;}
    #greeting .greeting_ul li{display: flex; flex-wrap: wrap; gap: 40px 7%; align-items: center; flex-direction: row;}
    #greeting .greeting_ul li + li{margin: 130px 0 0;}
    #greeting .greeting_ul li .imgArea{width: calc((100% - 7%)/2); height: 400px; background-size: cover; background-position: center;}
    #greeting .greeting_ul li .imgArea img{filter: drop-shadow(5px 10px 15px rgba(0,0,0,0.25));}
    #greeting .greeting_ul li .textArea{width: calc((100% - 7%)/2); text-align: left;}
    #greeting .greeting_ul li .textArea .en_title{font-size: 18px; line-height: 1; color: var(--point); font-weight: bold; font-family: var(--mon); }
    #greeting .greeting_ul li .textArea .kr_title{position: relative; font-size: 45px; line-height: 50px; color: #111111; font-weight: 550; padding: 0 0 70px; margin: 60px 0 0;}
    #greeting .greeting_ul li .textArea .kr_title::before{position: absolute; content: attr(data-en); display: inline-block; font-size: 80px; line-height: 1; color: rgba(17,17,17,0.1); font-weight: bold; font-family: var(--mon); top: 10px; left: 0; right: auto;}
    #greeting .greeting_ul li .textArea .text{display: inline-block; font-size: 20px; line-height: 1.5; color: #666666; max-width: 420px;}
    #greeting .greeting_ul li .textArea .text + .text{margin-top: 10px;}

    #greeting .greeting_ul li:nth-of-type(even){flex-direction: row-reverse;}
    #greeting .greeting_ul li:nth-of-type(even) .textArea{text-align: right;}
    #greeting .greeting_ul li:nth-of-type(even) .textArea .kr_title::before{left: auto; right: 0;}

/* 0102 company/history.asp */
#history{}
    #history .sub_banner{margin-bottom: 130px;}
    #history .sub_banner .inner{width: 100%; height: 500px; background-image: url('/images/sub/history_banner_bg.jpg'); }

    .philosophy{}
    .philosophy_en_title{font-size: 18px; line-height: 1; color: var(--point); font-weight: bold; font-family: var(--mon); text-align: center;}
    .philosophy_kr_title{font-size: 40px; line-height: 1.25; color: #111111; text-align: center; margin: 40px 0;}
    .philosophy_list{display: flex; flex-wrap: wrap; gap: 20px; counter-reset: philosophy; margin-bottom: 120px;}
    .philosophy_list li{position: relative; width: calc((100% - 20px)/2); background-color: #f5f5f5; border-radius: 20px; overflow: hidden;}
    .philosophy_list li .thumb{position: relative;}
    .philosophy_list li .thumb::after{position: absolute; counter-increment: philosophy;   content: counter(philosophy, decimal-leading-zero);; width: 90px; aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; font-size: 30px; line-height: 1; color: #fff; font-weight: bold; font-family: var(--mon); background-color: var(--point); left: 50%; bottom: -45px; margin-left: -45px;}
    .philosophy_list li .textArea{padding: 80px 40px 50px;}
    .philosophy_list li .textArea h4{font-size: 30px; line-height: 40px; color: #111111; font-weight: bold; margin-bottom: 20px;}
    .philosophy_list li .textArea p{font-size: 18px; line-height: 28px; color: #666666;}

    .philosophy_desc{text-align: left;}
    .philosophy_desc .philosophy_kr_title{text-align: left; margin: 0 0 30px;}
    .philosophy_desc .text{font-size: 18px; line-height: 28px; color: #666666;}
    .philosophy_desc .philosophy_desc_medal{width: calc(36.2rem + 20px); display: flex; flex-wrap: wrap; gap: 20px; float: right; margin: 0 0 30px 30px;}
    .philosophy_desc .philosophy_desc_medal img{width: 18.1rem;}
    .clear_both{clear: both;}

    .philosophy_history_gallery{display: flex; flex-wrap: wrap; gap: 35px; margin : 100px 0 140px;}
    .philosophy_history_gallery li{width: calc((100% - 70px)/3);}

    .history_head{ text-align: center; margin-bottom: 70px; line-height: 1; color: #111111;}
    .history_head .since{font-size: 60px; font-weight: bold; font-family: var(--mon); margin-bottom: 35px;}
    .history_head .title{font-size: 40px; font-weight: bold; margin-bottom: 20px;}
    .history_head .text{font-size: 18px; line-height: 28px; color: #666666; }

    .history{position: relative; max-width: 100rem; margin: 0 auto;}
    .history::before{position: absolute; content: ''; top: 0; bottom: 0; left: calc(400px + 10% - 1px); width: 2px; background-color: #dddddd;}
    .history li{position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 40px 20%;}
    .history li::before{position: absolute; content: ''; top: calc(50% - 10px); left: calc(400px + 10% - 10px); width: 20px; height: 20px; background-color: var(--point); border-radius: 50%; z-index: 2;}
    .history li + li{margin-top: 80px;}
    .history li .thumb{width: 400px; display: flex; align-items: center; justify-content: center;}
    .history li .thumb img{object-fit: cover; max-width: initial; width: 100%; height: 100%;}
    .history li .desc{width: calc(100% - 400px - 20%);}
    .history li .desc .years{font-size: 30px; line-height: 1; color: var(--point); font-weight: bold; margin-bottom: 20px;}
    .history li .desc .kr_title{font-size: 22px; line-height: 30px; color: #111111; font-weight: 550; margin-bottom: 10px;}
    .history li .desc .en_title{font-size: 18px; line-height: 26px; color: #666666;}

/* 0104 /company/doctor.asp */
#doctor{}
    .doctor_list{display: flex; flex-wrap: wrap; gap: 33px}
    .doctor_list > li{width: calc((100% - 99px)/4); cursor: pointer; border: 2px solid #efefef; transition: all ease 0.5s;}
    .doctor_list > li:hover{border-color: var(--point);}
    .doctor_list > li .thumb{width: 100%; aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; background-image: url('/images/sub/doctor_thumb_bg.jpg'); }
    .doctor_list > li .thumb img{max-width: initial; width: 100%; height: 100%;}
    .doctor_list > li .desc{font-size: 0; line-height: 0; padding: 30px 10px 40px; text-align: center;}
    .doctor_list > li .desc .department{display: flex; flex-wrap: wrap; gap: 10px 20px; justify-content: center; overflow: hidden;}
    .doctor_list > li .desc .department li{position: relative; font-size: 20px; line-height: 1; color: #666666; font-weight: 500;}
    .doctor_list > li .desc .department li + li::before{position: absolute; content: ''; width: 1px; height: 20px; left: calc(-10px - 0.5px); top: 0; background-color: #ddd;}
    .doctor_list > li .desc .en_name{font-size: 18px; line-height: 26px; color: var(--point); font-weight: 550; font-family: var(--mon); margin: 25px 0 0;}
    .doctor_list > li .desc .kr_name{font-size: 35px; line-height: 1; color: #111111; font-weight: 550; margin: 15px 0 0;}

    .doctor_view{position: fixed; width: 100vw; height: 100vh; top: 0; left: 0; display: flex; align-items: flex-start; justify-content: center; background-color: rgba(0,0,0,0.5); padding: 50px 0 0; z-index: 7; overflow-y: auto; overflow-x: hidden; display: none;}
    .doctor_view .inner{max-width: 1200px; width: 100%; height: auto; background-color: #fff; padding: 70px; margin: 0 auto; }
    .doctor_view .inner .doctor_view_top{position: relative; display: flex; flex-wrap: wrap; gap: 30px 60px; align-items: flex-start; margin-bottom: 70px;}
    .doctor_view .inner .doctor_view_top .close{position: absolute; width: 30px; height: 30px; top: 0; right: 0; overflow: hidden; cursor: pointer;}
    .doctor_view .inner .doctor_view_top .close::before,
    .doctor_view .inner .doctor_view_top .close::after{position: absolute; content: ''; top: 50%; left: 50%; width: 2px; height: 200%; background-color: #333; transform: translate(-50%,-50%) rotate(45deg);}
    .doctor_view .inner .doctor_view_top .close::after{transform: translate(-50%,-50%) rotate(-45deg);}

    .doctor_view .inner .doctor_view_top .thumb{width: 400px; aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; background-image: url('/images/sub/doctor_thumb_bg.jpg'); background-size: cover; font-size: 0; line-height: 0;}
    .doctor_view .inner .doctor_view_top .thumb img{max-width: none; width: 100%; height: 100%;}

    .doctor_view .inner .doctor_view_top .infoArea{width: calc(100% - 400px - 60px); }
    .doctor_view .inner .doctor_view_top .infoArea .name{display: flex; flex-wrap: wrap; gap: 10px 20px; align-items: baseline; padding: 0 50px 0 0; margin: 0 0 40px;}
    .doctor_view .inner .doctor_view_top .infoArea .name .kr_name{font-size: 50px; line-height: 1; color: #111111; font-weight: 550;}
    .doctor_view .inner .doctor_view_top .infoArea .name .en_name{font-size: 25px; line-height: 30px; color: #999999; font-weight: bold; font-family: var(--mon);}
    .doctor_view .inner .doctor_view_top .infoArea .bailiwick{margin: 0 0 50px;}
    .doctor_view .inner .doctor_view_top .infoArea .bailiwick .point{width: 110px; height: 45px; display: flex; align-items: center; justify-content: center; font-size: 22px; line-height: 1; color: #ffffff; font-weight: 550; background-color: var(--point); border-radius: 10px; margin: 0 0 20px;}
    .doctor_view .inner .doctor_view_top .infoArea .bailiwick .list{font-size: 25px; line-height: 30px; color: #666666; font-weight: 500;}

    .doctor_view .inner .doctor_view_top .infoArea .workCheck{overflow-x: auto; overflow-y: hidden;}
    .doctor_view .inner .doctor_view_top .infoArea .workCheck::-webkit-scrollbar{width: 100%; height: 3px;}
    .doctor_view .inner .doctor_view_top .infoArea .workCheck::-webkit-scrollbar-thumb{height: 100%; background-color:var(--point); border-radius: 10px;}
    .doctor_view .inner .doctor_view_top .infoArea .workCheck::-webkit-scrollbar-track{background-color: rgba(0,0,0,0.1);}
    .doctor_view .inner .doctor_view_top .infoArea .workCheck table{width: 100%; min-width: 500px; border-collapse: separate; background-color: #ddd; border-top: 2px solid #111; table-layout: fixed;}
    .doctor_view .inner .doctor_view_top .infoArea .workCheck table thead tr td{font-size: 20px; line-height: 1; color: #111111; font-weight: 550; text-align: center; background-color: #f1f6f8; padding: 20px;}
    .doctor_view .inner .doctor_view_top .infoArea .workCheck table tbody tr th,
    .doctor_view .inner .doctor_view_top .infoArea .workCheck table tbody tr td{padding: 15px 20px; background-color: #fff;}
    .doctor_view .inner .doctor_view_top .infoArea .workCheck table tbody tr th{font-size: 20px; line-height: 1; color: #666; font-weight: 550;}
    .doctor_view .inner .doctor_view_top .infoArea .workCheck table tbody tr td{position: relative; font-size: 0; line-height: 0;}
    .doctor_view .inner .doctor_view_top .infoArea .workCheck table tbody tr td.active::before{position: absolute; content: ''; top: 50%; left: 50%; width: 20px; aspect-ratio: 1/1; background-color: var(--point); border-radius: 50%; margin: -10px 0 0 -10px;}
    .doctor_view .inner .doctor_view_top .infoArea .workCheck table tbody tr td.triangle::before{position: absolute; content: ''; top: 50%; left: 50%; width: 0; height: 0; border-bottom: 20px solid var(--point); border-left: solid 11.5px transparent; border-right: solid 11.5px transparent; transform: translate(-50%,-50%);}

    .doctor_view .inner .doctor_view_desc{}
    .doctor_view .inner .doctor_view_desc .doctor_view_desc_con{}
    .doctor_view .inner .doctor_view_desc .doctor_view_desc_con > ul{width: 100%; overflow: hidden;}
    .doctor_view .inner .doctor_view_desc .doctor_view_desc_con > ul + ul{margin-top: 60px;}
    .doctor_view .inner .doctor_view_desc .doctor_view_desc_con > ul .title{position: relative; font-size: 30px; line-height: 1; color: #111111; font-weight: 550; padding: 0 0 20px; margin: 0 0 20px;}
    .doctor_view .inner .doctor_view_desc .doctor_view_desc_con > ul .title::before{position: absolute; content: ''; width: 100%; height: 2px; bottom: 0; left: 0; background-color: #ddd;}
    .doctor_view .inner .doctor_view_desc .doctor_view_desc_con > ul .title::after{position: absolute; content: ''; width: 200px; height: 2px; bottom: 0; left: 0; background-color: #111;}
    .doctor_view .inner .doctor_view_desc .doctor_view_desc_con > ul li{position: relative; font-size: 18px; line-height: 30px; color: #666666; padding: 0 0 0 10px;}
    .doctor_view .inner .doctor_view_desc .doctor_view_desc_con > ul li::before{position: absolute; content: ''; width: 2px; height: 2px; top: calc(15px - 1px); left: 0; background-color: #666; border-radius: 50%;}

/* 0105 /company/location.asp */
#location{}
    #location .map{width: 100%; height: 600px; margin-bottom: 80px;border: 2px solid #becdc6;}
    #location .location_info{display: flex; flex-wrap: wrap; gap: 40px 0; align-items: flex-start; margin-bottom: 60px;}
    #location .location_info .info_01{width: 400px;}
    #location .location_info .info_01 .title{font-size: 35px; line-height: 1; color: #111111; margin-bottom: 10px;}
    #location .location_info .info_01 .text{font-size: 18px; line-height: 30px; color: #666666; margin-bottom: 40px;}
    #location .location_info .info_01 ul li{display: flex; gap: 20px; align-items: center;}
    #location .location_info .info_01 ul li + li{margin-top: 10px;}
    #location .location_info .info_01 ul li .weekend{width: 80px; height: 40px; display: flex; align-items: center; justify-content: center; font-size: 18px; line-height: 1; color: #ffffff; font-weight: 550; background-color: #666666; border-radius: 10px;}
    #location .location_info .info_01 ul li .time{font-size: 20px; line-height: 1; color: #666666; font-weight: 500;}

    #location .location_info .info_02{width: calc(100% - 400px);}
    #location .location_info .info_02 .contact{display: flex; flex-wrap: wrap; gap: 20px 40px; align-items: flex-start; padding: 35px 0; border-bottom: 1px solid #ddd;}
    #location .location_info .info_02 .contact:last-child{border-bottom: none;}
    #location .location_info .info_02 .contact span.title{width: 100px; display: flex; align-items: center; justify-content: center; font-size: 20px; line-height: 30px; color: #111111; font-weight: bold; font-family: var(--mon); text-align: center;}
    #location .location_info .info_02 .contact span:not(.title){width: calc(100% - 100px - 40px); font-size: 20px; line-height: 30px; color: #666666; }
    #location .location_info .info_02 .contact.point{padding: 0 0 35px;}
    #location .location_info .info_02 .contact.point span.title{height: 40px; font-size: 20px; line-height: 1; color: #fff; font-weight: bold; font-family: var(--mon); background-color: var(--point); border-radius: 15px;}
    #location .location_info .info_02 .contact.point span:not(.title){font-size: 35px; line-height: 40px; color: var(--point); font-weight: bold; font-family: var(--mon);}

    #location .traffic{}
    #location .traffic .desc + .desc{margin-top: 40px;}
    #location .traffic .traffic_title{font-size: 35px; line-height: 1; color: #111111; margin-bottom: 0px;}
    #location .traffic .desc{display: flex; flex-wrap: wrap; gap: 40px 80px; align-items: flex-start;}
    #location .traffic .desc .left{width: 320px; display: flex; flex-wrap: wrap; gap: 20px 0; align-items: center; padding: 30px 0;}
    #location .traffic .desc .left .traffic_img{width: 80px;}
    #location .traffic .desc .left .traffic_desc .traffic_desc_kr_title{font-size: 25px; line-height: 30px; color: #111111; font-weight: 550; margin-bottom: 5px;}
    #location .traffic .desc .left .traffic_desc .traffic_desc_en_title{font-size: 18px; line-height: 1; color: #999999;}

    #location .traffic .desc .right{width: calc(100% - 320px - 80px);}
    #location .traffic .desc .right ul li{display: flex; flex-wrap: wrap; gap: 20px; align-items: flex-start; border-bottom: 1px solid #ddd; padding: 30px 0;}
    #location .traffic .desc .right ul li:last-child{border-bottom: none;}
    
    #location .traffic .desc .right ul li .direction{width: 90px; display: flex; gap: 10px; align-items: center; justify-content: flex-end;}
    #location .traffic .desc .right ul li .direction .num{width: 30px; aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; font-size: 16px; line-height: 30px; color: #fff; border-radius: 50%;}
    #location .traffic .desc .right ul li .direction .num.one{background-color: #465c82;}
    #location .traffic .desc .right ul li .direction .num.five{background-color: #9e5be5;}
    #location .traffic .desc .right ul li .direction .num.eight{background-color: #e51e6e;}
    #location .traffic .desc .right ul li .direction_desc{width: calc(100% - 110px);}
    #location .traffic .desc .right ul li .direction_desc h4{font-size: 20px; line-height: 30px; color: #111111; font-weight: 550; margin-bottom: 10px;}
    #location .traffic .desc .right ul li .direction_desc p{font-size: 18px; line-height: 28px; color: #666666;}

    #location .traffic .desc .right ul li .direction .bus_num{width: 70px; height: 35px; display: flex; align-items: center; justify-content: center; font-size: 16px; line-height: 35px; color: #fff; background-color: #666666; border-radius: 10px;}

    #location .parking{display: flex; gap: 20px 0; align-items: flex-start; padding: 45px 50px; margin-bottom: 60px;}
    #location .parking .parking_title{width: 400px; font-size: 35px; line-height: 1; color: #111111; font-weight: bold; flex-shrink: 0;}
    #location .parking .parking_list{flex: 1; margin: 0; padding-left: 140px;}
    #location .parking .parking_list li{font-size: 23px; line-height: 1.75; color: #333333;}
    #location .parking .parking_list li + li{margin-top: 20px;}

/* 0201 /hospital/info.asp */
#info{}
    #info .sub_banner .inner{height: 420px; background-image: url('/images/sub/info_banner_01.jpg'); padding: 0;}
    
    #info .info_desc{position: relative; display: flex; flex-wrap: wrap; margin: -190px 0 60px; z-index: 6;}
    #info .info_desc .left{width: 460px; padding: 60px; background-color: var(--point);}
    #info .info_desc .info_desc_title{font-size: 35px; line-height: 1; color: #fff; font-weight: 550; margin-bottom: 15px;}
    #info .info_desc .info_desc_text{font-size: 18px; line-height: 25px; color: #fff; font-weight: 550; margin-bottom: 10px;}
    #info .info_desc .info_desc_contact{margin: 40px 0 0;}
    #info .info_desc .info_desc_contact .title{display: inline-block; font-size: 20px; line-height: 1; color: #fff; font-weight: 550; padding: 1.20px 15px;  background-color: #111; border-radius: 10px;}
    #info .info_desc .info_desc_contact .call{font-size: 45px; line-height: 50px; color: #fff; font-weight: bold; font-family: var(--mon); margin: 20px 0;}
    #info .info_desc .info_desc_contact .weekend li{display: flex; flex-wrap: wrap; gap: 10px 15px; font-size: 18px; line-height: 1; color: #fff; font-weight: 500;}
    #info .info_desc .info_desc_contact .weekend li + li{margin-top: 10px;}
    #info .info_desc .info_desc_contact .weekend li .day{width: 65px; display: flex; justify-content: space-between;}
    #info .info_desc .info_desc_contact .weekend li .time{width: calc(100% - 6.50px - 15px); }

    #info .info_desc .right{width: calc(100% - 460px); background-color: #56585e; padding: 60px;}
    #info .info_desc .right .info_desc_step{display: flex; flex-wrap: wrap; gap: 20px 30px;}
    #info .info_desc .right .info_desc_step .title{width: 120px; display: flex; align-items: center; justify-content: center; font-size: 22px; line-height: 1; color: #fff; font-weight: bold; border: 3px solid #fff; border-radius: 10px;}
    #info .info_desc .right .info_desc_step.first .title{color: var(--point); border-color: var(--point);}
    #info .info_desc .right .info_desc_step .info_desc_step_array{width: calc(100% - 120px - 30px); display: flex; flex-wrap: wrap; gap: 10px 20px; counter-reset: info_desc_step_array; padding: 0 20px 0 0;}
    #info .info_desc .right .info_desc_step .info_desc_step_array p{width: 100%; margin-bottom: 0;}
    #info .info_desc .right .info_desc_step .info_desc_step_array li{position: relative; font-size: 18px; line-height: 30px; color: #fff; padding: 0 0 0 90px;}
    #info .info_desc .right .info_desc_step .info_desc_step_array li::before{position: absolute; counter-increment: info_desc_step_array; content: '0'counter(info_desc_step_array); width: 45px; height: 30px; display: flex; align-items: center; justify-content: center; background-color: #888888; font-size: 16px; line-height: 1; font-weight: 550; border-radius: 5px; top: 0; left: 30px;}
    #info .info_desc .right .info_desc_step .info_desc_step_array li::after{position: absolute; content: '>'; font-size: 26px; line-height: 30px; color: #fff; font-weight: 550; font-family: 'SUIT Variable' !important; top: 20p; left: 0;}
    #info .info_desc .right .info_desc_step .info_desc_step_array li:first-of-type{padding: 0 0 0 60px;}
    #info .info_desc .right .info_desc_step .info_desc_step_array li:first-of-type::after{display: none;}
    #info .info_desc .right .info_desc_step .info_desc_step_array li:first-of-type::before{left: 0;}
    #info .info_desc .right .info_desc_step.first{padding: 0 0 30px; margin: 0 0 30px; border-bottom: 1px solid #666666;}

    #info .info_tip{background-image: url('/images/sub/info_banner_02.jpg'); background-size: 100% 450px; background-repeat: no-repeat; background-position: top right; padding: 120px 60px 250px;}
    #info .info_tip_title{position: relative; padding: 0 0 0 70px;}
    #info .info_tip_title::before{position: absolute; content: ''; top: -20px; left: 0; width: 57px; height: 61px; background-image: url('/images/sub/info_icon_01.png'); background-size: cover;}
    #info .info_tip_title h4{font-size: 40px; line-height: 1; color: #111111; font-weight: bold; margin-bottom: 15px;}
    #info .info_tip_title p{font-size: 20px; line-height: 30px; color: #111111; font-weight: 500; }

    #info .info_tip_type{max-width: 1180px; width: 100%; background-color: #fff; border: 1px solid #ddd; padding: 60px; margin: -180px auto 0;}
    #info .info_tip_type .info_tip_type_title{font-size: 35px; line-height: 1; color: #111111; font-weight: 550; margin: 0 0 35px;}
    #info .info_tip_type .inner{display: flex; flex-wrap: wrap; gap: 40px 100px;}
    #info .info_tip_type .inner .type{position: relative; width: calc((100% - 100px)/2); }
    #info .info_tip_type .inner .type + .type::before{position: absolute; content: ''; top: 0; left: calc(-50px - 0.5px); width: 1px; height: 100%; background-color: #ddd; }
    #info .info_tip_type .inner .type .type_name{width: 100px; height: 45px; display: flex; align-items: center; justify-content: center; font-size: 20px; line-height: 45px; color: #fff; font-weight: 550; background-color: #56585e; border-radius: 10px; margin-bottom: 20px;}
    #info .info_tip_type .inner .type.type1 .type_name{background-color: var(--point);}
    #info .info_tip_type .inner .type ul li{position: relative; font-size: 18px; line-height: 30px; color: #666666; padding: 0 0 0 10px;}
    #info .info_tip_type .inner .type ul li::before{position: absolute; content: ''; top: calc(15px - 1px); left: 0; width: 2px; height: 2px; background-color: #666; border-radius: 50%;}
    #info .info_tip_type .inner .type ul li.ver2{color: #999999; padding: 0 0 0 20px; }
    #info .info_tip_type .inner .type ul li.ver2::before{content: '*'; width: auto; height: auto; left: 10px; top: 0; background-color: transparent;}

    /* 진료시간표 */
    #info .info_schedule{margin: 0 0 80px; padding-top: 30px; letter-spacing: 0.15em;}

    #info .info_schedule_summary{border: 1px solid #ddd; border-radius: 15px; overflow: hidden; margin: 0 0 50px;}
    #info .info_schedule_summary ul{display: flex; flex-wrap: wrap;}
    #info .info_schedule_summary li{flex: 1; min-width: 160px; padding: 32px 20px; border-right: 1px solid #ddd; background-color: #f8fbfc; text-align: center;}
    #info .info_schedule_summary li:last-child{border-right: none;}
    #info .info_schedule_summary li .label{font-size: 25px; line-height: 1; color: #666; font-weight: 550; margin-bottom: 14px;}
    #info .info_schedule_summary li .time{font-size: 25px; line-height: 1.4; color: #111; font-weight: bold; font-family: var(--mon);}
    #info .info_schedule_summary li.closed .label{color: #999;}
    #info .info_schedule_summary li.closed .time{color: #999; font-family: 'SUIT Variable'; font-weight: 500; font-size: 18px;}

    #info .info_schedule_body{}
    #info .info_schedule_legend{display: flex; align-items: center; gap: 20px; margin: 0 0 16px; justify-content: flex-end;}
    #info .info_schedule_legend .legend_item{display: inline-flex; align-items: center; gap: 8px; font-size: 16px; line-height: 1; color: #666666;}
    #info .info_schedule_legend .legend_item .dot{width: 18px; height: 18px; border-radius: 50%; background-color: var(--point); display: inline-block; flex-shrink: 0;}
    #info .info_schedule_legend .legend_item .tri{width: 0; height: 0; border-bottom: 18px solid var(--point); border-left: 10.4px solid transparent; border-right: 10.4px solid transparent; display: inline-block; flex-shrink: 0;}

    #info .info_schedule_list{display: flex; flex-wrap: wrap; gap: 24px;}
    #info .info_schedule_list > li{width: calc((100% - 24px)/2); display: flex; border: 1px solid #ddd; border-radius: 15px; overflow: hidden;}
    #info .info_schedule_list > li .sch_thumb{width: 160px; flex-shrink: 0; background-color: #f1f6f8; display: flex; align-items: flex-end; justify-content: center; overflow: hidden;}
    #info .info_schedule_list > li .sch_thumb img{width: 100%; object-fit: cover; display: block;}
    #info .info_schedule_list > li .sch_info{flex: 1; padding: 28px 24px; display: flex; flex-direction: column; gap: 8px; min-width: 0;}
    #info .info_schedule_list > li .sch_name{font-size: 28px; line-height: 1; color: #111111; font-weight: bold;}
    #info .info_schedule_list > li .sch_dept{font-size: 25px; line-height: 1.5; color: var(--point); font-weight: 550; margin-bottom: 10px;}

    #info .info_schedule_list > li .sch_table{overflow-x: auto; overflow-y: hidden; margin-top: auto;}
    #info .info_schedule_list > li .sch_table::-webkit-scrollbar{width: 100%; height: 3px;}
    #info .info_schedule_list > li .sch_table::-webkit-scrollbar-thumb{background-color: var(--point); border-radius: 10px;}
    #info .info_schedule_list > li .sch_table::-webkit-scrollbar-track{background-color: rgba(0,0,0,0.1);}
    #info .info_schedule_list > li .sch_table table{width: 100%; min-width: 320px; border-collapse: separate; border-spacing: 2px; background-color: #ddd; border-top: 2px solid #111; table-layout: fixed;}
    #info .info_schedule_list > li .sch_table table thead tr td{font-size: 20px; line-height: 1; color: #111; font-weight: 550; text-align: center; background-color: #f1f6f8; padding: 12px 8px;}
    #info .info_schedule_list > li .sch_table table tbody tr th,
    #info .info_schedule_list > li .sch_table table tbody tr td{padding: 12px 8px; background-color: #fff; text-align: center;}
    #info .info_schedule_list > li .sch_table table tbody tr th{font-size: 20px; line-height: 1; color: #666; font-weight: 550; white-space: nowrap;}
    #info .info_schedule_list > li .sch_table table tbody tr td{position: relative; font-size: 0; line-height: 0;}
    #info .info_schedule_list > li .sch_table table tbody tr td.active::before{position: absolute; content: ''; top: 50%; left: 50%; width: 16px; aspect-ratio: 1/1; background-color: var(--point); border-radius: 50%; margin: -8px 0 0 -8px;}
    #info .info_schedule_list > li .sch_table table tbody tr td.triangle::before{position: absolute; content: ''; top: 50%; left: 50%; width: 0; height: 0; border-bottom: 16px solid var(--point); border-left: 9.2px solid transparent; border-right: 9.2px solid transparent; transform: translate(-50%, -50%);}

/* 020101 /hospital/hospitalzation.asp */
#hospitalzation{}
    .hospitalzation_in{margin: 0 0 100px;}
    .hospitalzation_step{display: flex; justify-content: center; margin: 0 auto 60px;}
    .hospitalzation_step img{position: relative; z-index: 4;}

    .hospitalzation_table{overflow-y: hidden; overflow-x: auto;}
    .hospitalzation_table .title{font-size: 30px; line-height: 1.2; color: #111111; font-weight: bold; margin: 0 0 30px;}
    .hospitalzation_table table{width: 100%; border-collapse: collapse; border-top: 2px solid #111;}
    .hospitalzation_table table tr{border-bottom: 1px solid #ddd;}
    .hospitalzation_table table tr th{font-size: 18px; line-height: 1.5; color: #111111; font-weight: bold; text-align: center; background-color: #f1f6f8; border-right: 1px solid #ddd; padding: 40px 20px;}
    .hospitalzation_table table tr td{font-size: 18px; line-height: 1.5; color: #666666; padding: 40px 20px;}
    .hospitalzation_table table tr td b{color: #111;}
    .hospitalzation_table table tr td ul li{position: relative; font-size: 18px; line-height: 26px; color: #666666; padding: 0 0 0 10px;}
    .hospitalzation_table table tr td ul li::before{position: absolute; content: ''; top: calc(13px - 1px); left: 0; width: 5px; height: 2px; background-color: #666;}
    .hospitalzation_table table tr td ul li + li{margin: 5px 0 0;}

/* 0203 /hospital/reservation.asp */
#reservation{}
    #reservation .inner{height: 420px; background-image: url('/images/sub/reserve_banner_01.jpg');}
    .reservation_step{margin: 80px 0 0;}
    .reservation_step.mgb8{margin: 80px 0;}
    .reservation_step_title{font-size: 30px; line-height: 1.2; color: #111111; font-weight: bold; margin-bottom: 40px;}
    .reservation_step_title span.point{color: var(--point);}
    .reservation_step_title span.etc{position: relative; display: inline-block; font-size: 20px; line-height: 30px; color: #666666; font-weight: 500; padding: 0 0 0 30px;}
    .reservation_step_title span.etc::before{position: absolute; top: -20p; left: calc(15px - 0.5px); content: ''; width: 1px; height: 30px; background-color: #666;}


    .reservation_step .step{display: flex; flex-wrap: wrap; gap: 40px 68px; overflow: hidden;}
    .reservation_step .step li{width: calc((100% - 340px)/6); }
    .reservation_step .step li .img{position: relative; width: 100%; text-align: center;}
    .reservation_step .step li .img::before{position: absolute; content: '>'; width: auto; height: auto; font-size: 45px; line-height: 1;  font-family: 'SUIT Variable' !important; top: 50%; left: -34px; transform: translate(-50%,-50%);}
    .reservation_step .step li.first + li .img::before{display: none;}
    .reservation_step .step li .img img{display: inline-block;}
    .reservation_step .step li .text{font-size: 20px; line-height: 30px; color: #111111; font-weight: bold; text-align: center; padding: 15px 0 0;}

    .reservation_step .desc{margin: 30px 0 0;}
    .reservation_step .desc li{position: relative; font-size: 18px; line-height: 28px; color: #666666; font-weight: 550; padding: 0 0 0 12px}
    .reservation_step .desc li span.black{color: #111111;}
    .reservation_step .desc li + li{margin-top: 5px;}
    .reservation_step .desc li span.point{color: var(--point);}
    .reservation_step .desc li span.underline2{position: relative; display: inline-block; color: #111;}
    .reservation_step .desc li::before{position: absolute; content: ''; top: 14px; left: 0;}
    .reservation_step .desc li.multiply::before{content: '*'; top: 0;}
    .reservation_step .desc li.dot::before{top: calc(14px - 1.5px); width: 3px; height: 3px; background-color: #666;}
    .reservation_step .desc li span.underline2::before{position: absolute; content: ''; top: auto; bottom: 0; left: 0; width: 100%; height: 1px; background-color: #111;}

    .hrefNaver{display: block; width: 261px; margin: 40px auto 0;}

/* 0302 /information/cartoon.asp */
    .cartoon_list{display: flex; flex-wrap: wrap; gap: 80px 20px;}
    .cartoon_list li{width: calc((100% - 60px)/4); min-height: 380px; display: flex; flex-direction: column; justify-content: space-between; background-position: center; background-size: cover; border-radius: 10px; overflow: hidden; padding: 50px 30px; border: 1px solid #ddd;}
    .cartoon_list li .title{}
    .cartoon_list li .title .en_title{font-size: 18px; line-height: 20px; color: rgba(255,255,255,0.3); font-weight: bold; font-family: var(--mon); margin-bottom: 10px; transition: all ease 0.5s;}
    .cartoon_list li:hover .title .en_title{color: rgba(255,255,255,0.9);}
    .cartoon_list li .title .kr_title{font-size: 35px; line-height: 1; color: #ffffff; font-weight: bold;}
    .cartoon_list li .btns{display: flex; flex-wrap: wrap; gap: 10px;}
    .cartoon_list li .btns .btn{width: calc((100% - 10px)/2); display: flex; align-items: center; justify-content: center; font-size: 17px; line-height: 20px; color: #fff; font-weight: 550; border: 1px solid #fff; text-align: center; background-color: transparent; border-radius: 10px; padding: 15px 5px; transition: all ease 0.5s;}
    .cartoon_list li .btns .btn:is(.active, :hover){background-color: var(--point); border-color: var(--point);}

/* 0401~07 /product/product~.asp */
#product{}
    .product_list{}
    .product_list > li{display: flex; flex-wrap: wrap; gap: 40px 7%; align-items: flex-start;}
    .product_list > li + li{margin-top: 100px;}
    .product_list > li .thumb{position: relative; max-width: 500px; width: 100%; z-index: 1;}
    /* .product_list > li .thumb .viewMore{position: absolute; left: calc(50% - 20px); bottom: 20px; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background-color: #888888; border-radius: 10px; z-index: 2; cursor: pointer; transition: all ease 0.5s;} */
    .product_list > li .thumb .viewMore{display: none;}
    .product_list > li .thumb .viewMore:hover{background-color: var(--point); border-radius: 50%;}
    .product_list > li .desc{width: calc(100% - 500px - 7%); }
    .product_list > li .desc .title{padding: 0 0 40px; margin: 0 0 40px; border-bottom: 1px solid #ddd;}
    .product_list > li .desc .title .en_title{font-size: 20px; line-height: 1; color: var(--point); font-weight: bold; font-family: var(--mon); margin-bottom: 20px;}
    .product_list > li .desc .title .kr_title{font-size: 40px; line-height: 1; color: #111111; font-weight: bold;}

    .product_list > li .desc .contents ul{max-width: 640px;}
    .product_list > li .desc .contents ul .b{font-size: 22px; line-height: 1; color: #111; font-weight: bold; margin-bottom: 10px;}
    .product_list > li .desc .contents ul li{position: relative; font-size: 20px; line-height: 30px; color: #666666;  padding: 0 0 0 10px;}
    .product_list > li .desc .contents ul li + .b{margin-top: 10px;}
    .product_list > li .desc .contents ul li + li{margin-top: 5px;}
    .product_list > li .desc .contents ul li::before{position: absolute; content: ''; top: calc(15px - 1.5px); left: 0; width: 3px; height: 3px; border-radius: 50%; background-color: #666;}

/* 050201 /information/document.asp */
#document{}
    .document_top{text-align: center;}
    .document_top .title{font-size: 40px; line-height: 50px; color: #111111; font-weight: bold; margin-bottom: 15px;}
    .document_top .desc{font-size: 22px; line-height: 32px; color: #111111; font-weight: 500; }
    .document_top .tip{max-width: 840px; width: 100%; font-size: 20px; line-height: 30px; color: #666666;  background-color: #f5f5f5; padding: 30px 20px; margin: 40px auto 0;}

    .document_article{margin: 100px 0 0;}
    .document_article .document_article_title{font-size: 30px; line-height: 1; color: #111111; font-weight: bold; margin-bottom: 15px;}
    .document_article ul.text li{position: relative; font-size: 18px; line-height: 28px; color: #666666; padding: 0 0 0 15px;}
    .document_article ul.text li span.black{color: #111; font-weight: 550;}
    .document_article ul.text li span.point{color: var(--point); font-weight: 550;}
    .document_article ul.text li.multiply::before{position: absolute; content: '※'; top: 0; left: 0;}
    .document_article ul.text li.dot::before{position: absolute; content: ''; top: calc(14px - 1.5px); left: 0; width: 3px; height: 3px; border-radius: 50%; background-color: #666;}
    .document_article ul.step{display: flex; flex-wrap: wrap; gap: 40px 80px; overflow: hidden;}
    .document_article ul.step li{width: calc((100% - 320px)/5);}
    .document_article ul.step li .thumb{position: relative; text-align: center; margin: 50px 0 0;}
    .document_article ul.step li .thumb::before{position: absolute; content: '>'; font-size: 45px; line-height: 1; color: #666666; font-weight: 550; font-family: 'SUIT Variable' !important; top: 50%; left: -40px; transform: translate(-50%,-50%);}
    .document_article ul.step li .thumb img{display: inline-block;}
    .document_article ul.step li .desc{padding: 20px 0 0; text-align: center;}
    .document_article ul.step li .desc h4{font-size: 22px; line-height: 1; color: #111111; font-weight: 550; margin-bottom: 10px;}
    .document_article ul.step li .desc p{font-size: 18px; line-height: 1.5; color: #666666;}

    .document_arcitle_table{overflow-y: hidden; overflow-x: auto;}
    .document_arcitle_table table{min-width: 640px; width: 100%; border-collapse: collapse; border: 1px solid #ddd; border-top: 2px solid #111;}
    .document_arcitle_table table tr{border-bottom: 1px solid #ddd;}
    .document_arcitle_table table thead td{font-size: 18px; line-height: 25px; color: #111111; font-weight: 550; text-align: center; background-color: #f1f6f8; padding: 25px;}
    .document_arcitle_table table thead td + td{border-left: 1px solid #ddd;}
    .document_arcitle_table table tbody th,
    .document_arcitle_table table tbody td{font-size: 18px; line-height: 26px; color: #666666; padding: 20px; text-align: left;}
    .document_arcitle_table table tbody th{text-align: center; color: var(--point); font-weight: 550;}
    .document_arcitle_table table tbody th span.black{color: #666666;}
    .document_arcitle_table table tbody td{border-left: 1px solid #ddd;}

    .document_arcitle_table ul.text + .text{margin-top: 10px;}
    .document_arcitle_table ul.text li.line{position: relative; padding: 0 0 0 15px;}
    .document_arcitle_table ul.text li.line::before{position: absolute; content: ''; width: 7.5px; height: 2px; background-color: #666; top: calc(13px - 1px); left: 0;}

    .document_arcitle_table_tip{background-color: #f5f5f5; padding: 35px 20px; margin: 20px 0 0;}
    .document_arcitle_table .table_tip{font-size: 18px; line-height: 28px; color: #666666; padding: 10px 0 0;}

    .document_download{display: flex; flex-wrap: wrap; gap: 40px 0;}
    .document_download .download_title{width: 440px; display: flex; align-items: center; justify-content: center; gap: 20px 30px;}
    .document_download .download_title .text{font-size: 25px; line-height: 35px; color: #111111;}
    .document_download .download_title .icon{width: 55px;}
    .document_download .download{display: flex; flex-wrap: wrap; gap: 20px; }
    .document_download .download > a{min-width: 420px; width: calc((100% - 20px)/2); display: flex; align-items: center; justify-content: space-between; gap: 20px ; background-color: #f5f5f5; border: 1px solid #ddd; padding: 35px 50px;}
    .document_download .download > a .text{font-size: 20px; line-height: 1.4; color: #666666; font-weight: 500;}

    .document_download span.black{color: #111; font-weight: 550;}
    .document_download span.point{color: var(--point); font-weight: 550;}

    .document2_desc{text-align: center;}
    .document2_desc .title{font-size: 30px; line-height: 1; color: #111111; font-weight: bold; margin-bottom: 30px;}

#privacy{}
    #privacy .privacy_head{margin: 0 auto 100px;}
    #privacy .privacy_head .head_p01{font-size: 20px; line-height: 1.5; color: #666666; text-align: center;}
    #privacy .privacy_head .head_ul{max-width: 840px; width: 100%; display: flex; flex-wrap: wrap; justify-content: center; gap: 50px 30px; margin: 50px auto 100px;}
    #privacy .privacy_head .head_ul li{width: calc((100% - 60px)/3); text-align: center;}
    #privacy .privacy_head .head_ul li .imgArea{max-width: 180px; width: 100%; aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; background-color: #f5f5f5; border: 1px solid #dddddd; border-radius: 50%;  padding: 20px; margin: 0 auto; transition: all ease 0.5s;}
    #privacy .privacy_head .head_ul li p{max-width: 200px; display: inline-block; font-size: 22px; line-height: 30px; color: #111111; font-weight: 550; text-align: center; padding: 20px 0 0;}
    #privacy .privacy_head .head_index{border: 1px solid #dddddd;}
    #privacy .privacy_head .head_index_title{font-size: 30px; line-height: 1; color: #111111; font-weight: bold; background-color: #f5f5f5; border-bottom: 1px solid #ddd; padding: 40px;}
    #privacy .privacy_head .head_index_title span{display: inline-block; padding: 0 0 0 10px;}
    #privacy .privacy_head .head_index_array{padding: 40px;}
    #privacy .privacy_head .head_index_array ul{display: flex; flex-wrap: wrap; gap: 10px; counter-reset: privacyIndex;}
    #privacy .privacy_head .head_index_array ul li{width: calc((100% - 10px)/2);}
    #privacy .privacy_head .head_index_array ul li a{position: relative; font-size: 18px; line-height: 25px; color: #666666; font-weight: 500; padding: 0 0 0 25px; transition: all ease 0.5s;}
    #privacy .privacy_head .head_index_array ul li a:hover{color: var(--point);}
    #privacy .privacy_head .head_index_array ul li a::before{position: absolute; counter-increment: privacyIndex;  content: counter(privacyIndex)"."; top: 0; left: 0;}

    .privacy_main{border: 1px solid #ddd; padding: 40px;}
    .privacy_main article{}
    .privacy_main article + article{margin: 40px 0 0;}
    .privacy_main .title{font-size: 25px; line-height: 1; color: #111; font-weight: 550; margin: 0 0 20px;}
    .privacy_main .sub_title{font-size: 20px; line-height: 1.5; color: #333; font-weight: 500; margin: 0 0 30px;}
    .privacy_main ul{position: relative; font-size: 20px; line-height: 1.25; color: #333; padding: 0;}
    .privacy_main ul li{padding-top: 5px;}
    .privacy_main ul > li{font-size: 20px; font-weight: 500;}
    .privacy_main ul > li > ul > li{font-size: 18px;  font-weight: normal;}

    .privacy_main .numS{counter-reset: numS; }
    .privacy_main .numS > li{position: relative; padding: 0 0 0 25px; margin: 10px 0 0;}
    .privacy_main .numS > li::before{position: absolute; counter-increment: numS; content: counter(numS)")"; top: 0; left: 0;}

    .privacy_main .numC{}
    .privacy_main .numC > li{position: relative; padding: 0 0 0 25px; margin: 10px 0 0;}
    .privacy_main .numC > li::before{position: absolute; content: counter ""; top: 0; left: 0;}
    .privacy_main .numC > li:nth-of-type(1):before{content: '①';}
    .privacy_main .numC > li:nth-of-type(2):before{content: '②';}
    .privacy_main .numC > li:nth-of-type(3):before{content: '③';}
    .privacy_main .numC > li:nth-of-type(4):before{content: '④';}
    .privacy_main .numC > li:nth-of-type(5):before{content: '⑤';}
    .privacy_main .numC > li:nth-of-type(6):before{content: '⑥';}
    .privacy_main .numC > li:nth-of-type(7):before{content: '⑦';}
    .privacy_main .numC > li:nth-of-type(8):before{content: '⑧';}
    .privacy_main .numC > li:nth-of-type(9):before{content: '⑨';}

    .privacy_main .buls{}
    .privacy_main .buls > li{position: relative; padding: 0 0 0 15px; margin: 5px 0 0;}
    .privacy_main .buls > li::before{position: absolute; content: ""; top: calc(11.25px - 0.5px); left: 0; width: 10px; height: 1px; background-color: #333;}
   
    .privacy_main .table {margin: 20px auto 0;}
    .privacy_main .table table{width: 100%; border-collapse: collapse; font-size: 18px; line-height: 1.33; color: #333; text-align: center; border: 1px solid #ddd; border-bottom: none;}
    .privacy_main .table table thead{background-color: var(--point); color: #fff;}
    .privacy_main .table table tr{border-bottom: 1px solid #ddd;}
    .privacy_main .table table tr td{padding: 10px;}
    .privacy_main .table table tr td + td{border-left: 1px solid #ddd;}







    @media only screen and (max-width : 1300px){
        #info .info_desc .right .info_desc_step .info_desc_step_array{padding: 0;}

        #info .info_tip{background-size: 1300px 450px; background-position: center;}
    }
    @media only screen and (max-width : 1200px){
        .doctor_list {gap: 20px;}
        .doctor_list > li {width: calc((100% - 60px)/4);}
        
        .doctor_view .inner{padding: 30px;}

        .reservation_step .step {gap: 40px;}
        .reservation_step .step li {width: calc((100% - 200px)/6);}

        .reservation_step .step li .img::before { font-size: 40px; left: -20px;}

        .cartoon_list li{padding: 50px 20px;}
        .cartoon_list li .btns .btn{width: 100%;}

        .document_article ul.step{gap: 40px;}
        .document_article ul.step li{width: calc((100% - 160px)/5);}
        .document_article ul.step li .thumb::before{left: -20px;}
    
    }
    @media only screen and (max-width : 1024px){
        #greeting .greeting_ul{padding: 0 0 0 20px;}
        #greeting .greeting_ul::before{left: 0;}
        #greeting .greeting_ul::after{left: 0;}    
        #greeting .greeting_ul li + li{margin-top: 60px;}
        #greeting .greeting_ul li .imgArea{width: 100%; height: auto; min-height: 400px; max-height: 400px; aspect-ratio: 3/2;}
        #greeting .greeting_ul li .textArea{width: 100%;}
        #greeting .greeting_ul li .textArea .text{max-width: none;}
        #greeting .greeting_ul li:nth-of-type(even) .textArea{text-align: left;}
        #greeting .greeting_ul li:nth-of-type(even) .textArea .kr_title::before{left: 0; right: auto;}

        .sub_banner .inner{background-attachment: initial;}

        .philosophy_list li .textArea{padding: 80px 20px 35px;}

        .philosophy_desc .philosophy_desc_medal{width: 18.1rem; margin: 0 0 0 20px;}

        .philosophy_history_gallery{gap: 20px;}
        .philosophy_history_gallery li{width: calc((100% - 40px)/3);}

        .history::before{left: calc(400px + 5% - 1px);}
        .history li{gap: 40px 10%;}
        .history li::before{left: calc(400px + 5% - 10px);}
        .history li .desc{width: calc(100% - 400px - 10%);}

        .doctor_list > li {width: calc((100% - 40px)/3);}

        .doctor_view .inner .doctor_view_top .infoArea{width: 100%;}

        #location .location_info .info_01{width: 360px;}
        #location .location_info .info_02{width: calc(100% - 360px);}
        #location .traffic .desc{gap: 40px;}
        #location .traffic .desc .right{width: calc(100% - 320px - 80px);}
        #location .parking{padding: 35px 30px;}
        #location .parking .parking_title{width: 360px;}

        #info .info_desc .left{width: 100%;}
        #info .info_desc .right{width: 100%;}

        #info .info_tip_type .inner{gap: 40px;}
        #info .info_tip_type .inner .type {width: calc((100% - 40px)/2)}
        #info .info_tip_type .inner .type + .type::before {left: calc(-20px - 0.5px);}

        #info .info_schedule_list > li{width: 100%;}
        #info .info_schedule_list > li .sch_thumb{width: 180px;}

        .cartoon_list li{width: calc((100% - 40px)/3);}
        .cartoon_list li .btns .btn{width: calc((100% - 10px)/2);}

        .product_list > li .desc{width: 100%;}


    }
    @media only screen and (max-width : 840px){
        .reservation_step .step li {width: calc((100% - 80px)/3);}
    
    }
    @media only screen and (max-width : 768px){
        #location .location_info .info_01{width: 100%;}
        #location .location_info .info_02{width: 100%;}
        #location .traffic .desc{gap: 0 40px;}
        #location .traffic .desc .right{width: 100%;}
        #location .parking{flex-direction: column; gap: 15px; padding: 25px 20px;}
        #location .parking .parking_title{width: auto; font-size: 28px;}
        #location .parking .parking_list{padding-left: 22px;}

        .cartoon_list{gap: 40px 20px;}
        .cartoon_list li{width: calc((100% - 20px)/2);}
        .cartoon_list li .btns .btn{width: calc((100% - 10px)/2);}

        .document_article ul.step{justify-content: center;}
        .document_article ul.step li{width: calc((100% - 80px)/3);}

        .document_arcitle_table table tbody th, .document_arcitle_table table tbody td{padding: 10px;}
    
    }
    @media only screen and (max-width : 640px){
        .mmVar{display: none !important;}


        .philosophy_list li{width: 100%;}

        .philosophy_history_gallery li{width: calc((100% - 20px)/2);}

        .history{padding: 0 0 0 20px;}
        .history::before{left: 0;}
        .history li{gap: 40px 10%;}
        .history li::before{left: -30px; top: -10px;}
        .history li .desc{width: 100%;}


        .doctor_list > li {width: calc((100% - 20px)/2);}

        #info .info_desc .left{padding: 30px;}
        #info .info_desc .right{padding: 30px;}

        #info .info_schedule_summary li{flex: 1 0 calc(50% - 1px); border-bottom: 1px solid #ddd;}
        #info .info_schedule_summary li:nth-child(2n){border-right: none;}
        #info .info_schedule_summary li:nth-last-child(-n+2){border-bottom: none;}
        #info .info_schedule_list > li .sch_thumb{width: 130px;}
        #info .info_schedule_list > li .sch_name{font-size: 22px;}
        #info .info_schedule_list > li .sch_info{padding: 20px 16px;}

        #info .info_tip{padding: 60px 30px 250px;}
        #info .info_tip_type{padding: 30px;}
        #info .info_tip_type .inner .type{width: 100%;}
        #info .info_tip_type .inner .type + .type::before { top: calc(-20px - 0.5px); left: 0; width: 100%; height: 1px;}

        #privacy .privacy_head .head_ul li{width: calc((100% - 30px)/2);}
        #privacy .privacy_head .head_index_array ul li{width: 100%;}
    
    }
    @media only screen and (max-width : 480px){
        .reservation_step .step li {width: calc((100% - 40px)/2);}

        .document_article ul.step li{width: calc((100% - 40px)/2);}

        #privacy .privacy_head .head_index_title,
        #privacy .privacy_head .head_index_array,
        .privacy_main{padding: 20px;}
    
    }

    @media only screen and (max-width : 400px){
        .doctor_list{gap: 10px;}
        .doctor_list > li {width: calc((100% - 10px)/2);}

        .doctor_view .inner{padding: 10px;}
        .doctor_view .inner .doctor_view_top .thumb{width: auto; padding: 0 30px; margin: 0 auto; background-image: none;}
        .doctor_view .inner .doctor_view_top .thumb img{height: auto; aspect-ratio: 1/1;}

        .cartoon_list li{padding: 50px 20px 20px;}
        .cartoon_list li .btns .btn{width: calc(100%);}


    
    }
	.hours-wrap {
	  max-width: 1100px;
	  margin: 0 auto;
	  
	  box-sizing: border-box;
	  padding: 0 16px;
	}

	.hours-title {
	  text-align: center;
	  font-size: 36px;
	  font-weight: 800;
	  color: #222;
	  margin: 40px 0 16px;
	}

	.hours-subtitle {
	  text-align: center;
	  font-size: 16px;
	  color: #555;
	  margin: 0 0 32px;
	}

	.hours-table {
	  width: 100%;
	  border-collapse: collapse;
	  border-top: 2px solid #333;
	  font-size: 25px;
	  table-layout: fixed;
	}

	.hours-col-label { width: 25%; }
	.hours-col-value { width: 75%; }

	.hours-th {
	  padding: 18px 0;
	  text-align: center;
	  font-weight: 700;
	  height: 100px;
	  color: #333;
	  background-color: #f5f5f5;
	  border-bottom: 1px solid #e0e0e0;
	}

	.hours-table tbody tr {
	  border-bottom: 1px solid #e8e8e8;
	}

	.hours-label {
	  padding: 30px 20px;
	  text-align: center;
	  font-weight: 700;
	  color: #333;
	  background:#f8faf8;
	  vertical-align: middle;
	}

	.hours-value {
	  padding: 22px 30px;
	  color: #444;
	  vertical-align: middle;
	  line-height: 1.6;
	}

	.hours-label--off,
	.hours-value--off {
	  color:#db4433;
	}

	/* ===== 반응형: 모바일에서 카드형으로 전환 ===== */
	@media (max-width: 600px) {
	  .hours-title {
		font-size: 26px;
		margin: 24px 0 10px;
	  }

	  .hours-subtitle {
		font-size: 14px;
		margin-bottom: 20px;
	  }

	  .hours-table {
		border-top: none;
	  }

	  .hours-table thead {
		display: none;
	  }

	  .hours-table,
	  .hours-table tbody,
	  .hours-table tr,
	  .hours-table td {
		display: block;
		width: 100% !important;
	  }

	  .hours-table tbody tr {
		border: 1px solid #e8e8e8;
		border-radius: 8px;
		margin-bottom: 12px;
		overflow: hidden;
	  }

	  .hours-label {
		background-color: #f5f5f5;
		border-bottom: 1px solid #e8e8e8;
		padding: 12px 16px;
		text-align: left;
		font-size: 18px;
	  }

	  .hours-value {
		padding: 14px 16px;
		text-align: left;
		font-size: 18px;
		line-height: 1.7;
	  }
	}