@charset "utf-8";

.container.sub{min-height: 100vh;padding: 80px 20px 20px;box-sizing: border-box;}
.container.sub.login{padding-bottom: 76px;}
.container.sub.fixedFoot{padding-bottom: 100px;}
.subFoot{position: fixed;bottom: 0;left: 0;width: 100%;max-width: 750px;padding: 0 20px 20px;box-sizing: border-box;background: #fff;}

.tit_area{display: flex;flex-wrap: wrap;padding-bottom: 40px;}
.sub_tit{flex: 1;font-size: 18px;line-height: 28px;font-weight: 600;color: #222;}
.tit_area p{width: 100%;font-size: 14px;line-height: 24px;color: #555;padding-top: 4px;}
.selected_count{font-size: 13px;line-height: 28px;font-weight: 600;color: #222;}
.selected_count span{font-size: 18px;color: #EA5145;}
.selected_count.total {background: #FFF4F4;border-radius: 12px;padding: 16px; margin-bottom:20px; border: 1px solid #FFF4F4; font-size: 16px;line-height: 28px;font-weight: 600;color: #222;}
.selected_count.total span{font-size: 18px;color: #EA5145;}

/* 로그인 */
.reserve_notice{font-size: 14px;line-height: 20px;font-weight: 500;color: #222;background: #F4F4F4 url(../images/ico/ico_call02.png) no-repeat 20px 20px / 32px 32px;border-radius: 12px;padding: 16px 20px 16px 64px;margin-bottom: 40px;}
.login_box{margin-top: 24px;}
.login_box strong{font-size: 20px;line-height: 28px;font-weight: 600;}
.login_box p{font-size: 16px;line-height: 24px;color: #777;}
.login_box .form{margin-top: 20px;}
.login_box .form_label{font-size: 14px;color: #222;}
.login_box .btn_wrap{gap: 0;}
.login_box .btn_wrap.vertical .button{margin-top: 12px;}
.login_box hr{margin: 40px 0;border: 0;height: 1px;background: #EEEEEE;}


/* 검진예약하기 */
.reservation{display: flex;flex-wrap: wrap;gap: 12px;margin-top: 40px;}
.reservation a{width: calc((100% - 12px) / 2);border: 1px solid #DDDDDD;border-radius: 16px;padding: 20px 20px 43px;box-sizing: border-box;}
.reservation span{display: inline-block;font-size: 10px;font-weight: 500;color: #222;padding: 5px 8px;background: #FFEDED;border-radius: 99px;}
.reservation strong{display: block;font-size: 20px;line-height: 28px;font-weight: 600;color: #222;padding-top: 8px;}
.reservation p{font-size: 14px;line-height: 18px;color: #666;padding-top: 4px;}

.reservation a.insurance{border: none;background: #C8EDEE url(../images/img/insurance.png) no-repeat bottom 0 right 12px / 80px 77px;}
.reservation a.insurance strong{font-size: 16px;line-height: 24px;color: #33719D;}
.reservation a.insurance p{font-size: 16px;line-height: 24px;font-weight: 600;color: #222;} 


/* 완료 */
.status_box{display: flex;flex-direction: column;align-items: center;justify-content: center;height: calc(100vh - 100px);}
.fixedFoot .status_box{height: calc(100vh - 180px);}
.status_img{width: 80px;}
.status_img img{display: block;width: 100%;}
.status_desc{font-size: 18px;line-height: 28px;font-weight: 600;color: #222;padding-top: 20px;}


/* 패키지 선택 */
.package_select{display: flex;flex-direction: column;gap: 10px;}
.package_select li{position: relative;display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;gap: 4px;border: 1px solid #EEEEEE;padding: 14px 19px;border-radius: 8px;overflow: hidden;}
.package_item{display: flex;gap: 2px;flex-wrap: wrap;flex: 1;}
.package_item .tit{font-size: 16px;line-height: 24px;color: #222;font-weight: 500;word-break: break-all;max-width: calc(100% - 20px);}
.package_item .desc{width: 100%;font-size: 14px;line-height: 20px;color: #999;}
.package_select .radio_chk{margin-left: auto;margin-top: 2px;}
.package_select .radio_chk label{display: inline-block;width: 20px;height: 20px;background: url(../images/ico/ico_checkbox.png) no-repeat 0 0 / 100% 100%;}
.package_select .radio_chk input:checked + label{background-image: url(../images/ico/ico_checkbox_on.png);}
.package_item .tooltip_wrap{padding-top: 3px;}
.package_select li.on{border-color: #EA5145;}
.package_select li.on .tit{color: #EA5145;font-weight: 600;}
.package_select .detail_desc{display: none;flex-direction: column;gap: 10px;background: #FFF4F4;padding: 16px 19px;margin: 10px -19px -14px;}
.package_select li.on .detail_desc{display: flex;}
.package_select .detail_desc .row{display: flex;gap: 12px;font-size: 12px;line-height: 18px;color: #555;}
.package_select .detail_desc .label{min-width: 44px;font-weight: 600;}
.package_select .detail_desc .cont{flex: 1;}

/* step */
.step{display: flex;}
.step li{position: relative;display: flex;align-items: center;justify-content: center;width: 24px;height: 24px;box-sizing: border-box;font-size: 14px;font-weight: 500;color: #999;border: 1px solid #EEEEEE;border-radius: 99px;}
.step li + li{margin-left: 17px;}
.step li + li::before{content: '';position: absolute;top: 10px;left: -13px;width: 9px;height: 3px;background: url(../images/ico/dot_gray.png) no-repeat 0 0 / 100% 100%;}
.step li.current{background: #EA5145;border-color: #EA5145;color: #fff;}
.step li + li.current::before{background-image: url(../images/ico/dot_red.png);}
.step li.done{background: transparent;border-color: transparent;}
.step li.done::after{content: '';position: absolute;top: -1px;left: -1px;width: 24px;height: 24px;background: #DDDDDD url(../images/ico/ico_check.png) no-repeat center / 12px auto;border-radius: 99px;}

.package_banner{background: #FFF4F4 url(../images/img/package.png) no-repeat top 17px right 20px / 35px 36px;border-radius: 12px;padding: 15px 75px 15px 20px;margin-top: 20px;}
.package_banner .label{font-size: 12px;line-height: 18px;font-weight: 500;color: #777;}
.package_banner .value{font-size: 14px;line-height: 20px;font-weight: 600;color: #222;padding-top: 2px;}
.package_banner + p{font-size: 12px;line-height: 24px;font-weight: 500;color: #EA5145;margin-top: 8px;}

.reservation_time{border-top: 1px solid #EBECEEEE;padding-top: 24px;margin-top: 24px;}
.reservation_time h3{font-size: 16px;line-height: 24px;font-weight: 600;color: #222;margin-bottom: 10px;}
.time_select {display: flex;flex-wrap: wrap;gap: 12px;}
.time_select .radio_item{width: calc((100% - 24px) / 3);}
.time_select .radio_item input + label {display: block;font-size: 14px;font-weight: 500;color: #222;text-align: center;padding: 16px;border: 1px solid #eee;border-radius: 6px;cursor: pointer;}
.time_select .radio_item input:checked + label {color: #EA5145;border-color: #EA5145;}
.time_select .radio_item input:disabled + label {color: #BBBBBB;background: #F4F4F4;cursor: not-allowed;}

.checkup_check{display: flex;flex-direction: column;gap: 10px;}
.checkup_check .checkup_item{position: relative;display: flex;gap: 4px;border: 1px solid #EEEEEE;padding: 14px 24px;border-radius: 8px;}
.checkup_item .tit{font-size: 14px;line-height: 24px;color: #222;font-weight: 500;word-break: break-all;}
.checkup_check .checkup_item .checkbox{margin-left: auto;margin-top: 2px;}
.checkup_check .checkup_item .tooltip_wrap{margin-left: -2px;padding-top: 3px;}
.checkup_check .checkup_item.on{border-color: #EA5145;}
.checkup_check .checkup_item.on .tit{color: #EA5145;font-weight: 600;}
.checkup_check .checkup_item .info{flex: none;font-size: 14px;line-height: 24px;font-weight: 500;color: #999;}
.checkup_check .checkup_item .info::before{content: '';display: inline-block;vertical-align: middle;width: 1px;height: 12px;background: #eee;margin: 0 8px;}
.checkup_check .checkup_item:has(.info) .tooltip_wrap{flex: none;}
.checkup_check .checkup_item:has(.info) .info + .tooltip_wrap{flex: 1;}

.checkup_radio{display: flex;flex-direction: column;}
.checkup_radio .checkup_item{display: flex;justify-content: space-between;align-items: flex-start;gap: 5px;padding: 16px 0 15px 4px;border-bottom: 1px solid #EEEEEE;}
.checkup_radio .checkup_item:first-child{padding-top: 0;}
.checkup_radio .checkup_item .tit{flex: 1;padding-top: 2px;}
.checkup_radio .radio_item{display: flex;background: #F4F4F4;border-radius: 6px;padding: 1px;box-sizing: border-box;}
.checkup_radio .radio_item input + label{font-size: 12px;font-weight: 500;color: #999;padding: 7px 13px;border-radius: 5px;}
.checkup_radio .radio_item input:first-of-type:checked + label{color: #fff;background: #EA5145;font-weight: 600;}
.checkup_radio .radio_item input:last-of-type:checked + label{color: #222;background: #fff;font-weight: 600;}
.checkup_textarea label{display: block;font-size: 14px;line-height: 24px;color: #222;font-weight: 500;padding-top: 16px;}
.checkup_textarea textarea{display: block;width: 100%;height: 100px;margin-top: 8px;}

.reservation_date{background: #FFF4F4;border-radius: 12px;padding: 16px;border: 1px solid #FFF4F4;}
.reservation_date .tit{font-size: 12px;line-height: 20px;font-weight: 700;color: #222;}
.reservation_date .txt{font-size: 16px;line-height: 20px;font-weight: 500;color: #EA5145;padding-top: 4px;}
.reservation_date.changed{border-color: #EA5145;}
.reservation_date.current{position: relative;background: #fff;border-color: #eee;margin-bottom: 48px;}
.reservation_date.current::after{content:'';position: absolute;left: 50%;bottom: -27px;transform: translateX(-50%);width: 13px;height: 7.5px;background: url(../images/ico/ico_arrow_b.png) no-repeat;background-size: 100% 100%;}
.reservation_date.current .tit{color: #777;}
.reservation_date.current .txt{color: #222;}

.reservation_method > div + div{padding-top: 40px;margin-top: 40px;border-top: 1px solid #eee;}
.reservation_method p{font-size: 16px;line-height: 26px;color: #555;}
.reservation_method .btn_wrap{padding-top: 20px;}

/* 영문 팝업 */
.en_popup{max-width: 900px;margin: 0 auto;}
.en_popup section{padding: 80px 30px;}
.en_popup .content{padding: 40px 30px 0;}
.bg_gray{background-color: #F4F4F4;}
.en_popup .tit{position: relative;display: inline-block;font-size: 40px;line-height: 48px;font-weight: 700;color: #222;padding-left: 30px;z-index: 5;}
.en_popup .tit::after{content: '';display: inline-block;vertical-align: top;width: 8px;height: 8px;border-radius: 99px;background: #EA5145;margin-top: 8px;margin-left: 8px;}
.en_popup h3{font-size: 24px;line-height: 36px;font-weight: 700;color: #222;padding-bottom: 20px;}
.en_popup .section_img{border-radius: 16px;overflow: hidden;margin-top: -16px;}
.en_popup img{display: block;width: 100%;}
.en_popup .greeting{display: flex;gap: 60px;padding-bottom: 40px;}
.en_popup .greeting .txt{flex: 1;}
.en_popup .greeting .img{width: 250px;}
.en_popup .txt strong{font-size: 16px;line-height: 24px;font-weight: 600;color: #222;}
.en_popup .txt p{font-size: 16px;line-height: 24px;color: #555;padding-top: 16px;}
.en_popup .features{display: flex;gap: 60px;align-items: flex-start;}
.en_popup .features .img{border-radius: 16px;overflow: hidden;}
.en_popup .features ul{display: flex;flex-direction: column;gap: 20px;}
.en_popup .features li{padding-left: 44px;font-size: 14px;line-height: 22px;color: #555;background: url(../images/ico/ico_check02.png) no-repeat 0 0 / 28px 28px;}
.en_popup .features li strong{display: block;font-size: 18px;line-height: 28px;color: #222;font-weight: 600;padding-bottom: 4px;}
.en_popup .message{background-image: url(../images/img/bg_message.png);background-repeat: no-repeat;background-size: 300px 308px;background-position: top right;}
.en_popup .message p{font-size: 24px;line-height: 36px;font-weight: 600;color: #222;text-align: center;}
.en_popup .message p::before{content: '';display: block;height: 10px;background: url(../images/ico/doubleQuote.png) no-repeat top center / 14px 10px;margin-bottom: 30px;}
.en_popup .message p::after{content: '';display: block;height: 10px;background: url(../images/ico/doubleQuote.png) no-repeat top center / 14px 10px;margin-top: 30px;transform: rotate(180deg);}
.en_popup .link_btn{display: inline-block;font-size: 16px;line-height: 24px;color: #fff;font-weight: 500;background: #EA5145 url(../images/ico/ico_arrow_r.png) no-repeat top 14px right 24px / 20px 20px;border-radius: 99px;padding: 12px 52px 12px 24px;margin-top: 24px;}
.card_wrap{display: flex;gap: 12px;}
.card_item{border-radius: 16px;overflow: hidden;width: calc((100% - 24px) / 3);background: #fff;}
.card_item:has(.card_img){border: 1px solid #EEEEEE;}
.card_txt{padding: 20px;}
.card_txt strong{font-size: 18px;line-height: 28px;font-weight: 600;color: #222;}
.card_txt p{font-size: 14px;line-height: 22px;color: #555;padding-top: 8px;}
.card_ico{width: 48px;padding: 32px 20px 12px;}
.en_popup .map{border-radius: 16px;overflow: hidden;margin-top: 40px;}
.location_info .info_item{display: flex;}
.location_info .info_item + .info_item .info_cont{border-top: 1px solid #EEEEEE;}
.location_info .info_tit{font-size: 18px;line-height: 28px;font-weight: 600;color: #222;min-width: 145px;padding: 27px 0;}
.location_info .info_cont{flex: 1;font-size: 14px;line-height: 22px;color: #555;padding: 27px 0;}
.location_info ul{display: flex;flex-direction: column;gap: 20px;}
.location_info li{display: flex;}
.location_info li strong{min-width: 115px;font-weight: 600;color: #222;background-repeat: no-repeat;padding-left: 36px;background-size: 24px 24px;}
.location_info li:nth-child(1) strong{background-image: url(../images/ico/location_info01.png);}
.location_info li:nth-child(2) strong{background-image: url(../images/ico/location_info02.png);}
.location_info li:nth-child(3) strong{background-image: url(../images/ico/location_info03.png);}