*{-webkit-touch-callout: none; -webkit-overflow-scrolling: touch;}
.d_block{display: block;}
.d_flex{display: flex;}
.blind{font-size: 0; line-height: 0;}
.co_red{color: #fd1202 !important;}
.co_grn{color: #21a44f !important;}
.mt4{margin-top: 4px !important;}
.mt8{margin-top: 8px !important;}
.mt12{margin-top: 12px !important;}
.mt16{margin-top: 16px !important;}
.ml_auto{margin-left: auto;}
.mt24{margin-top: 24px;}
[class *= btn_bg]{display: flex; align-items: center; justify-content: center; color: #fff; border-radius: 100px;}
.btn_bg_grn{background-color: #21A44F;}
.btn_bg_bk{background-color: #111;}
.btn_bg_org{background-color: #ff7b00;}
.btn_bg_navy{background-color: #1a315a;}
.ta_c{text-align: center;}
.text_underline{text-decoration: underline;}
.w100p{width: 100% !important;}

.scroll_top{display: none; position: fixed; right: 24px; bottom: 56px; width: 88px; height: 88px; background: url("/image/care/top_btn.svg") center / cover no-repeat;}

.select_div{display: flex; gap: 4px; align-items: center;}
.select_div .unit{font-size: 14px; line-height: 16px; color: #333;}
.select_box {flex: 1; position:relative;}
.select_box .select_info{display:flex; gap: 4px; padding: 12px 16px; align-items: center; font-size: 16px; color:#666; font-weight: 400; background-color: #fff; border: 1px solid #ccc; border-radius: 8px;}
.select_box .select_info::after{content:""; margin-left: auto; width: 20px; height: 20px; background: url("/image/icon_arrow_down_bk.svg") center / cover no-repeat;}
.select_box .select_info[aria-pressed="true"]::after{transform: rotate(180deg);}
.select_box .select_info[aria-pressed="true"]+.select_list{display:block; z-index:3;}
.select_box .select_list{position:absolute; top:52px; left:0; display:none; width:100%; max-height:360px; padding:6px; overflow-y:auto; background-color:#fff; border:1px solid #DEDFE5; border-radius:6px; box-shadow:0px 15px 30px -5px rgba(0, 0, 0, 0.15); z-index: 3;}
.select_box .select_list a{position:relative; display:block; padding: 6px; overflow: hidden; font-size: 16px; line-height: 20px; color:#666; font-weight: 400; border-radius:4px; text-indent: 0; text-overflow: ellipsis;white-space: nowrap;}
.select_box .select_list a:hover{background-color:#f8f8f9;}
.select_box .select_list a.disabled{pointer-events: none; color: #ccc;}
.select_box .select_list::-webkit-scrollbar {width: 14px;}
.select_box .select_list::-webkit-scrollbar-thumb {background-color: #dedfe5; border-radius: 10px; background-clip: padding-box; border: 4px solid transparent;}
.select_box .select_list::-webkit-scrollbar-track {background-color: transparent; border-radius: 10px;}

.input_area input{width: 100%; padding: 12px; font-size: 14px; line-height: 20px; color: #666; border: 1px solid #b3b3b3; border-radius: 8px;}

.check_box_wrap{display: flex; flex-direction: column; gap: 4px;}
.check_box{padding: 8px 0;}
.check_box label{display: flex; gap: 8px; align-items: center; font-size: 14px; color: #666; font-weight: 500;}
.check_box label:before{content: ''; width: 18px; height: 18px; border: 1px solid #ccc; border-radius: 4px; z-index: 1;}
.check_box input[type="checkbox"]{display: none;}
.check_box input[type="checkbox"]:checked + label:before{border-color: #ff7b00; background: url("/image/icon_check_small_wh.svg") center / cover #ff7b00 no-repeat;}
.check_box label button{text-align: left;}

.tab_content{display: none;}
.tab_content.active{display: block;}

.calendar{}
.calendar .calendar_header{display: flex; width: 100%; align-items: center; justify-content: space-between;}
.calendar .calendar_header .current_month{font-size: 18px; color: #333; font-weight: 500;}
.calendar .calendar_header .month_btn{width: 44px; height: 44px; border: 1px solid #e3e3e3; border-radius: 12px; background: url("/image/icon_arrow_down_bk.svg") center / 24px no-repeat;}
.calendar .calendar_header .month_btn.disabled{pointer-events: none; opacity: 0.4;}
.calendar .calendar_header .prev_month{transform: rotate(90deg);}
.calendar .calendar_header .next_month{transform: rotate(270deg);}
.calendar .days{height: 40px; display: flex; align-items: center;}
.calendar .day{width: calc(100%/7); font-size: 14px; font-weight: 700; color: #666; text-align: center;}
.calendar .dates{margin-top: 8px; display: flex; flex-wrap: wrap; align-items: center;}
.calendar .date{display: flex; flex-direction: column; align-items: center; justify-content: center; width: calc(100%/7); height: 48px; font-size: 16px; font-weight: 500; color: #333; cursor: pointer;}
.calendar .date.today{color: #ff7b00;}
.calendar .date.today:after{content:'오늘'; margin-top: 2px; font-size: 11px;}
.calendar .date:nth-child(7n){pointer-events: none;}
.calendar .date:nth-child(7n+1){color: #fd1202 !important; pointer-events: none;}
.calendar .date.selected{background: #ff7b00; border-radius: 4px; color: #fff;}
.calendar .date.not_date{pointer-events: none;}
.calendar .date.disabled{color: #ccc; pointer-events: none;}


.bottom_sheet{display: none; position: fixed; bottom: 0; left: 50%; transform: translateX(-50%); max-width: 600px; min-width: 320px; width: 100%; height: calc(100vh - 40px); max-height: 720px; z-index: 101; background: #fff; border-radius: 24px 24px 0 0; overflow: hidden;}
.bottom_sheet.active{display: block;}
.bottom_sheet .sheet_inner{display: flex; flex-direction: column; height: 100%;}
.bottom_sheet .sheet_header{padding: 36px 16px 24px; display: flex; justify-content: space-between; align-items: center; gap: 32px; font-size: 20px; line-height: 24px; font-weight: 700; color: #333;}
.bottom_sheet .sheet_header .close-bottom-sheet{width: 24px; height: 24px; background: url("/image/icon_xbtn_bk.svg") center / 28px no-repeat;}
.bottom_sheet .sheet_body{flex: 1; overflow: auto;}
.bottom_sheet .sheet_body::-webkit-scrollbar {width: 14px;}
.bottom_sheet .sheet_body::-webkit-scrollbar-thumb {background-color: #dedfe5; border-radius: 10px; background-clip: padding-box; border: 4px solid transparent;}
.bottom_sheet .sheet_body::-webkit-scrollbar-track {background-color: transparent; border-radius: 10px;}
.bottom_sheet .sheet_btn_wrap{padding: 12px 16px; display: flex; gap: 8px; box-shadow: 0px -4px 24px 0px #00000014;}
.bottom_sheet .sheet_btn_wrap .btn{flex: 1; padding: 20px; font-size: 16px; line-height: 16px; font-weight: 700; border-radius: 16px;}
.bottom_sheet .sheet_btn_wrap .btn_bg_gry{background: #f7f7f7; color: #4d4d4d;}
.bottom_sheet .sheet_btn_wrap .btn_bg_org{background: #ff7b00; color: #fff;}
.bottom_sheet .radio_list input{display: none;}
.bottom_sheet .radio_list label{display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; font-size: 14px; line-height: 20px; color: #333;}
.bottom_sheet .radio_list input:checked + label{background: #fff7f0; color: #ff7b00; font-weight: 600;}
.bottom_sheet .radio_list input:checked + label:after{content: ''; width: 20px; height: 20px; background: url("/image/icon_check_small_org.svg") center / cover no-repeat;}

.terms_table{border: 1px solid #e3e3e3; border-radius: 8px; overflow: hidden;}
.terms_table table{width: 100%;}
.terms_table table tr:not(:last-child){border-bottom: 1px solid #e3e3e3;}
.terms_table table th{padding: 12px 8px; font-size: 12px; line-height: 14px; font-weight: 600; color: #666; background: #f5f5f5;}
.terms_table table td{padding: 12px 8px; font-size: 14px; line-height: 20px; color: #4d4d4d; border-left: 1px solid #e3e3e3;}
