.reserve_wrap{width:95%; margin:0 auto; max-width:1220px; padding:50px 0;}
.reserve_wrap .default_title{font-size:40px; font-weight:700; padding-bottom:20px;}
.reserve_wrap .sub_title{font-size:28px; font-weight:700; padding-bottom:20px; padding-top:30px;}
.reserve_wrap .reserve_alert{padding:20px 40px; border:2px solid #BD498F; border-radius:5px;}
.reserve_wrap .reserve_alert p{font-size:20px; font-weight:700; display:flex; align-items:center; gap:20px; padding:4px 0; color:#232527;}
.reserve_wrap .reserve_alert p.st1{font-weight:500; padding-bottom:0;}
.reserve_wrap .reserve_alert p.st2{color:#AA4177;}
.reserve_wrap .on_bg{padding:20px 40px;  background:#aa4177;}
.reserve_wrap .on_bg .in_title{font-size:24px; color:#fff; padding-bottom:10px;}
.reserve_wrap .on_bg .in_num{font-size:24px; color:#fff; font-weight:700; display:flex; align-items:center; gap:10px; flex-wrap:wrap;}
.reserve_wrap .on_bg .in_num a{color:#fff;}
.reserve_wrap .on_bg .in_num span{font-size:18px; color:#aa4177; font-weight:700; padding:8px 15px; border-radius:50px; background:#fff; display:block;}
.reserve_wrap .pri_chk_wrap{padding:30px 0; font-size:20px; color:#232527; display:flex; gap:10px;}
.reserve_wrap .pri_chk_wrap a{color:#BD498F; font-weight:500; font-size:17px; border-bottom:1px solid #BD498F; padding:0;}
.reserve_wrap .label_gr input[type=checkbox] { display:none; }
.reserve_wrap .label_gr input[type=radio] { display:none; }
.reserve_wrap .label_gr label { position:relative; padding-left:32px; font-size:16px; cursor:pointer; }
.reserve_wrap .label_gr label:before { content:""; position:absolute; left:0; top:0; width:24px; height:24px; background:url('/img/251118_7.png') no-repeat center/cover; }
.reserve_wrap .label_gr input[type=checkbox]:checked + label:before { background:url('/img/251118_8.png') no-repeat center/cover; }
.reserve_wrap .label_gr input[type=radio]:checked + label:before { background:url('/img/251118_8.png') no-repeat center/cover; }
.reserve_wrap .label_gr.radio label { position:relative; padding-left:32px; font-size:20px; cursor:pointer; }
.reserve_wrap .label_gr.radio label:before { content:""; position:absolute; left:0; top:3px; width:24px; height:24px; background:url('/img/251118_7.png') no-repeat center/cover; }
.reserve_wrap .label_gr.radio input[type=checkbox] { display:none; }
.reserve_wrap .label_gr.radio label.chk:before { content:""; position:absolute; left:0; top:3px; width:24px; height:24px; background:url('/img/251118_9.png') no-repeat center/cover; }
.reserve_wrap .label_gr.radio input[type=checkbox]:checked + label:before { background:url('/img/251118_10.png') no-repeat center/cover; }
.reserve_wrap input[type=submit]{border:none; font-size:18px; color:#fff; background:#AA4177; border-radius:100px; padding:10px 25px; margin:50px 0 auto;}
.input_list ul{border-top:2px solid #BD498F;}
.input_list li{display:flex; justify-content:space-between; flex-wrap:wrap; gap:20px; border-bottom:1px solid #E2E2E2;}
.input_list li .tit{width:100%; max-width:260px; font-size:18px; font-weight:700; flex: 1 1; background:#F5F5F5; padding:20px 10px; padding-left:30px; display:flex; align-items:center;}
.input_list li .tit span{color:#FE5847;}
.input_list li .input_area{width:100%; max-width:960px; flex:1 1; padding:20px 0;}
.input_list li .input_area.fl{display:flex; gap:20px; align-items:center;}
.input_list li .input_area.fl.fdc{flex-direction:column; gap:30px;}
.input_list li .input_area textarea{border:1px solid #BFBFBF; border-radius:5px; width:100%; resize:none; font-size:17px; padding:5px; height:70px;}
.input_list li .input_area textarea::placeholder { font-size:17px; }
.input_list li .input_area textarea::placeholder { color:#a0a0a0; }
.label_major_wr{width:100%; border-radius:5px; gap:50px; display:flex; align-items:center;}
.label_major{display:flex; gap:20px; font-size:20px; color:#004098; font-weight:700; align-items:center; flex:1 1;}
.label_major_select{flex:1 1; width:100%; display:flex; gap:10px; flex-direction:column}
.input_list li .input_area input[type=text]{border:1px solid #BFBFBF; border-radius:5px; width:100%; font-size:17px; padding:5px; height:40px;}
.input_list li .input_area input[type=text]::placeholder { color:#a0a0a0; font-size:17px;}
.input_list li .input_area select{border:1px solid #BFBFBF; border-radius:5px; width:100%; font-size:17px; padding:5px; height:40px;}
.input_list li .input_area select::placeholder { color:#a0a0a0; font-size:17px;}
.input_list li .input_area.date_wrap { position:relative; }
.input_list li .input_area.date_wrap input { padding-right:40px; }
.input_list li .input_area.date_wrap:after { content:""; position:absolute; right:12px; top:50%; transform:translateY(-50%); width:20px; height:20px; background:url('/img/251118_11.svg') no-repeat center/contain; cursor:pointer; }
.calendar_right{display:flex; flex-direction:column; justify-content:space-between;}
.time_calendar { width:100%; padding:20px; border:1px solid #e2e2e2; border-radius:8px; }
.cal_header { display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; background:#EFEFEF; padding:10px 20px;}
.cal_header .month_text { font-size:24px; font-weight:700; }
.cal_header .btns { display:flex; gap:10px; }
.cal_header .btns div { width:24px; height:24px; border-radius:4px; display:flex; justify-content:center; align-items:center; cursor:pointer; }
.cal_week { display:grid; grid-template-columns:repeat(7,1fr); text-align:center; margin-bottom:10px; }
.cal_week div { font-size:17px; color:#444; }
.cal_days { display:grid; grid-template-columns:repeat(7,1fr); row-gap:10px; }
.cal_days div { width:38px; height:38px; margin:0 auto; display:flex; justify-content:center; align-items:center; font-size:17px; color:#444; border:1px solid #BFBFBF; border-radius:50%; cursor:pointer; }
.cal_days .empty { pointer-events:none; opacity:0.3; border:none;}
.cal_days .active { background:#c6396d; color:#fff; border-color:#c6396d; }
.cal_days div:hover { border-color:#c6396d; }
.cal_days .disabled {opacity:0.3;pointer-events:none;}
.modal_bg { display:none; position:fixed; left:0; top:0; width:100%; height:100%; background:rgba(0,0,0,0.6); z-index:900; }
.modal_box { display:none; position:fixed; left:50%; top:50%; transform:translate(-50%, -50%); width:840px; background:#fff; border-radius:10px; padding:0; z-index:901; }
.modal_inner { padding:30px; }
.modal_content{text-align:center;}
.modal_text { max-height:400px; overflow-y:auto; font-size:20px; line-height:1.6; color:#000; margin-bottom:30px; text-align:left;}
.modal_ok { width:200px; height:45px; font-weight:700; margin:0 auto; background:#c6396d; color:#fff; border:none; border-radius:30px; cursor:pointer; font-size:18px; }
.reserve_wrap .sub_txt{font-size:20px; font-weight:400; padding-bottom:20px;}
.dh251119_1{display:flex; gap:10px;}
.dh251119_1 .in_left{flex:1 1; background:#F5F5F5; padding:30px;}
.dh251119_1 .in_left .item{font-size:20px; padding-bottom:10px;}
.dh251119_1 .in_left .item.pb0{padding-bottom:0;}
.dh251119_1 .in_left .item b{background:#AA4177; color:#fff; font-weight:700; border-radius:50px; aspect-ratio:1; display:flex; align-items:center; justify-content:center; width:30px; height:30px;}
.dh251119_1 .in_left .item span{font-size:17px; color:#777777;}
.dh251119_1 .in_left .item .df{display:flex; gap:10px;}
.dh251119_1 .in_right{flex:1 1; min-width:380px; max-width:380px; display: flex; flex-direction: column;  justify-content: space-between;}
.dh251119_1 .in_right div{border:1px solid #BFBFBF; border-radius:5px; padding:20px;}
.dh251119_1 .in_right a{background:#CD0404; text-align:center; justify-content:center; padding:20px 0; border-radius:5px; color:#fff; font-weight:700; font-size:20px; display:flex; gap:10px; align-items:center; margin-top:10px;}
.reserve_button {width:95%; margin:50px auto 0; max-width:1220px; display:grid; grid-template-columns:repeat(3, 1fr); gap:20px;}
.reserve_button .item{background:#F5F5F5; display:flex; align-items:center; justify-content:center; gap:20px; flex-direction:column; padding:50px 0;}
.reserve_button .item .t1{font-size:28px; font-weight:700;}
.reserve_button .item a{font-size:18px; font-weight:700; padding:15px 10px; transition:all 0.5s ease; border:1px solid #AA4177; border-radius:50px; width:200px; text-align:center;}
.reserve_button .item a:hover{background:#AA4177; color:#fff; transition:all 0.5s ease;}
#subpage .subtop{overflow:hidden;}
#subpage .subtop:first-child{display:none;}
@media (max-width: 1220px){
	.reserve_wrap .default_title{font-size:28px;}
	.reserve_wrap .reserve_alert{padding:20px;}
	.reserve_wrap .reserve_alert p{font-size:16px;}
	.reserve_wrap .on_bg{padding:20px;}
	.reserve_wrap .on_bg .in_title{font-size:18px;}
	.reserve_wrap .on_bg .in_num{font-size:22px;}
	.reserve_wrap .on_bg .in_num span{font-size:20px;}
	.reserve_wrap .pri_chk_wrap{padding:20px 0; font-size:18px;}
	.reserve_wrap .label_gr label{font-size:14px;}
	.reserve_wrap .pri_chk_wrap a{font-size:15px;}
	.reserve_wrap .sub_title{font-size:24px; padding-top:20px; padding-bottom:10px;}
	.input_list li .tit{font-size:18px; max-width:190px; padding-left:30px;}
	.input_list li .input_area{padding:10px 0;}
	.reserve_wrap .label_gr.radio label{font-size:16px; padding-left:20px;}
	.reserve_wrap .label_gr label:before{width:16px; height:16px;}
	.reserve_wrap .label_gr.radio label:before{width:16px; height:16px; top:5px;}
	.reserve_wrap .label_gr.radio label.chk:before{width:16px; height:16px; top:5px;}
	.label_major{font-size:16px;}
	.label_major_wr{gap:10px; padding:20px;}
	#subpage .subtop > div > p:nth-of-type(1){font-size:24px;}
	#subpage .subtop > div > p:nth-of-type(2){font-size:18px; margin-top:20px;}
	.reserve_button .item .t1{font-size:21px;}
	.reserve_button .item a{font-size:15px;}
	.reserve_wrap .sub_txt{font-size:16px;}
	.dh251119_1 .in_left .item{font-size:16px;}
	.dh251119_1 .in_left .item b{width:24px; height:24px;}
	.dh251119_1 .in_right a{font-size:16px;}
	#subpage .subtop{padding:45px 0;}
	#subpage .subtop img{transform:scale(3);}
}
@media (max-width: 990px){
	.input_list li .tit{font-size:15px; max-width:130px; padding-left:20px;}
	.calendar_right{max-width:320px;}
	.cal_header .month_text{font-size:18px;}
	.cal_week div{font-size:14px;}
	.cal_days div{width:24px; height:24px; font-size:14px;}
	.input_list li .input_area input[type=text]{height:32px; font-size:14px;}
	.input_list li .input_area.fl{gap:5px;}
	.reserve_wrap input[type=submit]{font-size:15px; margin:30px 0 auto;}
	.reserve_button .item{gap:10px;}
	.reserve_button .item .t1{font-size:16px;}
	.reserve_button .item a{font-size:14px; width:100px; padding:5px 10px;}
	.dh251119_1{flex-direction:column;}
	.dh251119_1 .in_right{min-width:100%; max-width:100%;}
	.input_list li .input_area select{height:32px; font-size:14px;}
}

@media (max-width: 767px){
	.reserve_wrap .default_title{font-size:21px;}
	.reserve_wrap .sub_title{font-size:18px;}
	.reserve_wrap .reserve_alert{padding:15px;}
	.reserve_wrap .reserve_alert p{gap:5px; font-size:14px;}
	.reserve_wrap .on_bg .in_title{font-size:16px;}
	.reserve_wrap .on_bg .in_num span{font-size:18px;}
	.reserve_wrap .on_bg .in_num{font-size:19px;}
	.calendar_right{max-width:100%; min-width:100%;}
	.calendar_right .input_area{min-width:100% !important;}
	.calendar_right .label_major{justify-content:center;}
	.dh251119_1 .in_left{padding:30px 10px;}
	.dh251119_1 .in_left .item{font-size:14px;}
	.dh251119_1 .in_left .item b{width:24px; height:24px;}
	.dh251119_1 .in_right a{font-size:14px;}
	.dh251119_1 .in_left .item span{font-size:13px;}
}

@media (max-width: 576px){
	.reserve_wrap .reserve_alert p{font-size:12px; align-items:flex-start; line-height:1.2;}
	.reserve_wrap .reserve_alert p img{width:14px;}
	.reserve_wrap .on_bg .in_title{font-size:14px;}
	.reserve_wrap .on_bg .in_num span{font-size:16px; padding:5px 13px;}
	.reserve_wrap .on_bg .in_num{font-size:17px; gap:10px;}
	.reserve_wrap .label_gr label{padding-left:20px;}
	.reserve_wrap .label_gr label:before{top:3px;}
	.reserve_wrap .pri_chk_wrap a{font-size:12px;}
	.input_list li{flex-direction:column; gap:0;}
	.input_list li .tit{max-width:100%; padding:10px;}
	.reserve_wrap .label_gr.radio label{font-size:14px;}
	.label_major_wr{padding:15px 10px;}
	.label_major_select{gap:10px;}
	.input_list li .input_area textarea{font-size:15px; height:100px;}	
	.reserve_button .item{padding:20px 0;}
	.reserve_button .item img{width:36px;}
	.reserve_button .item .t1{font-size:14px;}
	.reserve_button .item a{font-size:13px;}
	.reserve_button{grid-template-columns:repeat(1, 1fr); gap:10px;}
}