/* 공통 */
.txt_red {color:#f00;}
.txt_blue {color:#245a9b;}

.daon_ver2_sub_type14 .info_box { width:100%; margin:0px auto;}
.daon_ver2_sub_type14 .info_box:after{ content:""; display:block; clear:both;}
.daon_ver2_sub_type14 .info_box .txts {display:block; font-size:1.3em; color:#000; line-height:0.6em; }
.daon_ver2_sub_type14 .info_box .txts strong {color:#4165c3;} 
.daon_ver2_sub_type14 .info_box .txts_2 {display:block; font-size:1.55em;font-weight:500; color:#4165c3;text-align:center; line-height:1.6em;  margin:30px auto 20px;}
.daon_ver2_sub_type14 .info_box .txts strong {color:#4165c3;} 
.daon_ver2_sub_type14 .info_box .txts span {color:#fa0404;} 
.daon_ver2_sub_type14 .info_box .img_50 {float:left; width:49%; margin-right:2%; margin-bottom:0;}	
.daon_ver2_sub_type14 .info_box .img_50:last-child {float:right; margin-right:0;} 
.daon_ver2_sub_type14 .info_box .img_50 img {max-width:100%;}	
.daon_ver2_sub_type14 .info_box .img_50 p { margin-top:15px; font-size:1.25em; text-align:center;}
.daon_ver2_sub_type14 .info_box h3 {display:block; font-size:2.2em; color: #245a9b; text-align:left; font-weight:600;margin:30px auto 0px;}
.daon_ver2_sub_type14 .info_box h4 {display:block; font-size:1.65em;color:#245a9b; font-weight:600; line-height:1.5em;  margin:0px auto;}

.daon_ver2_sub_type14 .info_box h5 {display:block; font-size:1.4em;color:#000; font-weight:700; line-height:1.2em;  margin:0px auto;}
.daon_ver2_sub_type14 .info_box dl strong {display:block; font-size:1.85em; color: #000; margin-bottom:30px;  }
.daon_ver2_sub_type14 .info_box dl dd{ position:relative; font-size:1.3em; color: #000;  padding-left:15px; line-height:1.5em;  text-align:left; margin-top:5px; }
.daon_ver2_sub_type14 .info_box dl dd:before { content: ''; position: absolute; left: 0; top: 11px; width: 3px; height: 3px; background-color:#017ece; border-radius: 50%;}	
.daon_ver2_sub_type14 .info_box .imp {font-size:1.1em; word-break:keep-all; color:#3375C0; margin-top:20px; background:#f1f7fb; padding:5px 25px; }
.daon_ver2_sub_type14 h3.con_tit {display:block; font-size:2.2em; color: #245a9b; text-align:left; font-weight:600; line-height:1.5em;  margin:10px auto 20px;}

.daon_ver2_sub_type14 .res_wrap input {border:1px solid #e1e1e1; background-color:#f4f9fb; height:35px;} 

.daon_ver2_sub_type14 table.con_wrap { width:100%; margin:0 auto;border-top: 2px solid #494949;}
.daon_ver2_sub_type14 table.con_wrap {width:100%; margin-top:20px; font-size:1.4em; border-collapse:collapse;}
.daon_ver2_sub_type14 table.con_wrap tr {border-top:1px solid #e1e1e1}
.daon_ver2_sub_type14 table.con_wrap tr:last-child {border-bottom:1px solid #e1e1e1}
.daon_ver2_sub_type14 table.con_wrap tr th {border-left:1px solid #e1e1e1; background:#ecf5fb;text-align:center; padding:22px 20px;   font-weight:400;}
.daon_ver2_sub_type14 table.con_wrap tr th:first-child {border-left:0;}
.daon_ver2_sub_type14 table.con_wrap tr td {border-left:1px solid #e1e1e1;  padding:22px 20px;}
.daon_ver2_sub_type14 table.con_wrap tr td:first-child {border-left:0;}


/*서브 제목2*/

.daon_ver2_sub_type14 .sub_title2{margin:0 0 35px; padding:0 0; text-align:center;}
.daon_ver2_sub_type14 .sub_title2 h2 {font-size:40px; color:#000;}

@media screen and (max-width: 576px) {
 .daon_ver2_sub_type14 .sub_title2 h2 { font-size:32px}
}
/*서브 제목*/



@media all and (max-width:576px){
	.daon_ver2_sub_type14 table.con_wrap {font-size:1.15em;}
	.daon_ver2_sub_type14 table.con_wrap tr th { padding:15px 10px;}
	.daon_ver2_sub_type14 table.con_wrap tr td { padding:15px 10px;}
	.daon_ver2_sub_type14 .info_box dl dd{font-size:1.15em;}
	.daon_ver2_sub_type14 .info_box .txts {font-size:1.15em;}
	.daon_ver2_sub_type14 .info_box .txts_2 {display:block; font-size:1.35em;}

}

/* 테이블 스크롤바 */
.inter_t {width:100%; }
.inter_t h3 {display:block; font-size:2.2em; color: #245a9b; text-align:left; padding:20px 0 15px; font-weight:600;}


 /* 스크롤 */
.inter_t .scroll{width:100%;margin:0 auto; text-align:left; margin-bottom:5px; display:none;}
.inter_t .tbl_scroll_wrap { width:100%; overflow-x:auto;  white-space: nowrap; margin-bottom:30px;}
.inter_t .tbl_scroll_wrap::-webkit-scrollbar { -webkit-appearance: none; }
.inter_t .tbl_scroll_wrap::-webkit-scrollbar:vertical { width: 12px; }
.inter_t .tbl_scroll_wrap::-webkit-scrollbar:horizontal { height: 8px; }
.inter_t .tbl_scroll_wrap::-webkit-scrollbar-thumb { background-color: rgba(0, 0, 0, .5); border-radius: 10px; border: 2px solid #ffffff;  }
.inter_t .tbl_scroll_wrap::-webkit-scrollbar-track { border-radius: 10px; background-color:#fff; }
.inter_t  h3.busi_tbl_title {clear:both; font-size:2.2em; color: #245a9b; text-align:left; font-weight:600; padding:0; margin-bottom:20px; margin-top:0 !important;}
.inter_t  table.busi_tbl{ width:100%;min-width:750px; border-collapse:collapse; border-spacing:0; border-top:2px solid #dddddd;   border-right:0px solid #dddddd; margin:0 auto 10px; }
.inter_t  table.busi_tbl thead th{ font-size:1.1em; color:#333; font-weight:600; text-align:center; padding:15px 0; border-bottom:1px solid #dddddd; border-left:1px solid #dddddd ; background-color:#fff9ea; }
 
.inter_t  table.busi_tbl tbody td{ font-size:1.1em; color:#333; font-weight:400; text-align:center; padding:15px 10px; border-bottom:1px solid #dddddd; border-left:1px solid #dddddd;}
.inter_t  table.busi_tbl tbody td.t_left{text-align:left;}
.inter_t  table.busi_tbl tbody th.left{  border-left:1px solid #dddddd !important;}

.inter_t  table.busi_tbl tbody td.left{  border-left:1px solid #dddddd !important;}
.inter_t  table.busi_tbl tbody td.t_left{text-align:left;padding-left:26px; }
.inter_t  table.busi_tbl tbody td.left_bg{ background-color:#f4f8f7 !important;}
.inter_t  table.busi_tbl tbody td.left_bg2{border-left:1px solid #dddddd !important; background-color:#f4f8f7 !important;}

.inter_t  table.busi_tbl thead th:first-child {border-left:0;}
.inter_t  table.busi_tbl tbody td:first-child {border-left:0;}



 @media all and (max-width:480px){
.inter_t h3 {display:block; font-size:1.8em;}
.inter_t .scroll{width:100%;margin:0 auto; text-align:left; margin-bottom:5px;display:inline; }
.inter_t  table.busi_tbl thead th{ font-size:1.0em; }
.inter_t  table.busi_tbl tbody td{ font-size:1.0em;}
.inter_t table.con_wrap {font-size:1.15em;}
 }
 /* 테이블 스크롤바 */

 
  /* 100% 센터 /  양쪽 오픈*/
.inter_t  table.con_wrap { width:100%; margin:0 auto;}
.inter_t  table.con_wrap {width:100%; margin-top:10px; font-size:1.25em; border-collapse:collapse;}
.inter_t  table.con_wrap tr {border-top:1px solid #e1e1e1}
.inter_t  table.con_wrap tr:last-child {border-bottom:1px solid #e1e1e1}
.inter_t  table.con_wrap tr th {border-left:1px solid #e1e1e1; background:#fff9ea;text-align:center; padding:10px 0;}
.inter_t  table.con_wrap tr th:first-child {border-left:0;}
.inter_t  table.con_wrap tr td {border-left:1px solid #e1e1e1;background:#ffffff;text-align:center; padding:10px 0;}
.inter_t  table.con_wrap tr td:first-child {border-left:0;1}
 /* 100% */
 

 
@media all and (max-width:480px){
.inter_t  .scroll{width:100%;margin:0 auto; text-align:left; margin-bottom:5px;display:inline; }
.inter_t   table.busi_tbl thead th{ font-size:0.85em; }
.inter_t   table.busi_tbl tbody td{ font-size:0.85em;}
.inter_t  table.con_wrap {font-size:1.1em;}
}
/* 테이블 스크롤바 */









.select_wrap {
	display: flex;
	gap: 20px;
	border:1px solid #d9d9d9;
	padding:20px;
}
.select_wrap div {flex:1;}
.select_wrap select {
	padding: 10px;
	font-size: 16px;
	width:100%;
	border:1px solid #e1e1e1;
	background-color:#f4f9fb;
	height:55px;
	cursor:pointer;
}
.select_wrap button {
	background-color: #333;
	color: white;
	border: none;
	cursor: pointer;
}
.select_wrap button:hover {
	background-color: #555;
}

.res_box {
	border:1px solid #d9d9d9; 
	margin-top:20px; 
	padding:20px; 
	background: #f4f9fb;
}
.res_box h3 {    
    font-size: 2.0em;
    color: #245a9b;
    text-align: left;
    font-weight: 600;
    line-height: 1.5em; 
	padding:0 0 15px 0;
}
.res_box li {
	font-size: 1.3em;
    color: #333;
	padding: 0 0 0 10px;
    margin: 0;
    list-style: none;
    background: url(../img/ul1.png) no-repeat left 11px;
    text-align: left;
	line-height:1.6;
}
.pre_line {
	white-space: pre-line; 
	color:#333; 
	height:300px; 
	overflow-y:scroll;
}

.checkbox-container {
	display: flex;
	align-items: center;
	cursor: pointer;
	font-size: 16px;
}

.checkbox-container input {
	width: 20px;
	height: 20px;
	margin-right: 8px;
	cursor: pointer;
}
.date_color {color:#333; font-weight:bold;}

@media screen and (max-width:810px){
	.select_wrap {
	 flex-direction: column;
	}
}

@media screen and (max-width:640px){

.daon_ver2_sub_type14 .info_box h3 {font-size:1.8em;}

}

/*** 스케쥴 ***/
.res_schedule div.month{position:relative; margin:auto; width:340px}
.res_schedule div.month p{text-align:center; margin:25px 0px 30px; font-size:3em; color:#113d72}
.res_schedule div.month p span{font-weight:bold; color:#333}
.res_schedule div.month ul{}
.res_schedule div.month ul li{position:absolute; top:0px; }
.res_schedule div.month ul li.btn_prev{left:0px}
.res_schedule div.month ul li.btn_next{right:0px}
.res_schedule div.month ul li a{display:block; position:relative; width:50px; height:50px; text-indent:-5000px}
.res_schedule div.month ul li a:after,
.res_schedule div.month ul li a:before{display:block; content:''; position:absolute; left:50%; width:1px; height:50%; background:#245a9b; border-radius:1px}
.res_schedule div.month ul li a:before{top:5px; transform:rotate(45deg)}
.res_schedule div.month ul li a:after{top:22px; transform:rotate(-45deg)}
.res_schedule div.month ul li.btn_next a:before{transform:rotate(-45deg)}
.res_schedule div.month ul li.btn_next a:after{transform:rotate(45deg)}
.res_schedule table{width:100%; border-top:2px solid #24558f; border-collapse:collapse; table-layout:fixed; position:relative}
.res_schedule table caption{position:fixed; top:-50000px; left:-50000px}
.res_schedule table .sun, .res_schedule table .sun p{color:#d21717}
.res_schedule table .sat, .res_schedule table .sat p{color:#0033c4}
.res_schedule table thead th{position:relative; padding:10px 5px; font-size:1.3em}
.res_schedule table thead th:after{display:block; content:''; position:absolute; left:0px; top:12px; width:1px; height:15px; background:#aaa}
.res_schedule table thead th:first-child:after{display:none}
.res_schedule table thead tr{border-bottom:1px solid #24558f}
.res_schedule table tbody td{vertical-align:top; width:14.2%; border:1px solid #d3e2f1; border-width:0px 0px 1px 1px; padding:0 0 15px 0; height:100%;}
.res_schedule table tbody td:first-child{border-left:0px}
.res_schedule table tbody td>p.date{text-align:center;  width:70px; height:40px; line-height:40px; border:1px solid #d3e2f1; border-width:0px 1px 1px 0px; font-size:1.3em; float:left;}
.res_schedule table tbody td>ul{padding:5% 5% 5%}
.res_schedule table tbody td>ul>li{padding:3px 2px; border-top:1px dotted #ccc; text-overflow:ellipsis; overflow:hidden; white-space:nowrap; word-break:break-all; font-size: 1.1em; height:30px;}
.res_schedule table tbody td>ul>li:first-child{border-top:0px}
.res_schedule table tbody td.close{background:#f9f9f9}
.res_schedule table tbody td>ul>li a{color:#666; text-decoration: line-through;}
.res_schedule table tbody td>ul>li label { cursor:pointer;}
.res_schedule table tbody td>ul>li label:hover {font-weight:bold;display: inline-block;	transition: font-weight 0.3s ease;transform: scale(1.03);}
.res_schedule table tbody td>ul>li.close a{color:#aaa; text-decoration:line-through}
.res_schedule table tbody td>ul>li.close a:hover{color:#888}
.res_schedule table tbody td.close li a{color:#8e8e8e; text-decoration:line-through}
ul.book {
	clear: both;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	height: auto;
	list-style: none;
	padding: 0;
	margin: 0;
}

ul.book li {
	width: 100%;
	box-sizing: border-box;
	padding: 4px 0;
	text-align: center;
}
.res_schedule table tbody td>ul.sch_list{padding:15px 7px; text-align:left}
.res_schedule table tbody td>ul.sch_list>li{font-size:0.8em}
.res_schedule table tbody td>ul.sch_list>li span.tag{font-weight:bold; }
.res_schedule table tbody td>ul.sch_list>li div.con{display:none; position:absolute; left:0px; margin-top:4px; padding:5% 6%; ; width:88%; background:#eee; box-shadow:0px 1px 3px rgba(0,0,0,.5)}
.res_schedule table tbody td>ul.sch_list>li div.con>p.tit{padding-bottom:20px; font-size:1.55em; color:#333; border-bottom:2px solid #333; text-overflow:ellipsis; overflow:hidden}
.res_schedule table tbody td>ul.sch_list>li div.con>ul{padding-bottom:3px; border-bottom:1px solid #aaa}
.res_schedule table tbody td>ul.sch_list>li div.con>ul>li{padding:7px 7px 9px; border-top:1px dashed #ccc; white-space:normal}
.res_schedule table tbody td>ul.sch_list>li div.con>ul>li:first-child{padding-top:10px; border-top:0px}
.res_schedule table tbody td>ul.sch_list>li div.con>ul>li>p{padding:2px; display:inline-block; vertical-align:top}
.res_schedule table tbody td>ul.sch_list>li div.con>ul>li>p.q{min-width:100px; font-weight:bold}
.res_schedule table tbody td>ul.sch_list>li div.con p.close_con{margin-top:40px; text-align:center}
.res_schedule table tbody td>ul.sch_list>li div.con p.close_con a{display:inline-block; padding:10px; width:120px; background:#333; color:#fff; font-size:1.2em}
.res_schedule_week{}
.res_schedule_week dl.list{position:relative; padding:20px 0px; min-height:80px; border-bottom:1px solid #aaa}
.res_schedule_week dl.list dt{position:absolute; left:0px; top:30px; text-align:center; width:100px; font-size:2em; color:#333; line-height:100%}
.res_schedule_week dl.list dt span{display:block; font-size:0.6em}
.res_schedule_week dl.list dd{padding-left:120px}
.res_schedule_week dl.list dd>ul>li{position:relative; border-top:1px dotted #ccc}
.res_schedule_week dl.list dd>ul>li:first-child{border-top:0px}
.res_schedule_week dl.list dd>ul>li a{display:block; padding:8px 160px 10px 130px}
.res_schedule_week dl.list dd>ul>li .time{position:absolute; left:5px; top:7px; width:100px; font-size:1.13em; color:#666}
.res_schedule_week dl.list dd>ul>li .tit{font-size:1.13em; text-overflow:ellipsis; overflow:hidden; white-space:nowrap}
.res_schedule_week dl.list dd>ul>li .place{display:inline-block; position:absolute; right:0px; top:10px; text-align:center; padding:0px 10px; min-width:70px; max-width:130px; color:#666; border:1px solid #ddd; border-radius:50px; text-overflow:ellipsis; overflow:hidden; white-space:nowrap}
.res_schedule_week dl.list dd>ul>li div.con{display:none; margin-top:10px; padding:30px; background:#f0f0f0}
.res_schedule_week .nodata{border-top:0px}

.res_table_wrap {
	width: 100%;
    border-top: 2px solid #333;
    table-layout: fixed;
    position: relative;

    border-collapse: collapse;
}

/* 공통 스타일 */
.res_slot_item {
	padding: 5px;
	margin: 2px 0;
	font-size: 0.9em;
}

/* 예약 가능 */
.res_slot_item.available {
	color: #0038a9;
	text-decoration:none;
}
/* 예약됨 */
.res_slot_item.reserved del {
	color: #bdbdbd !important;
		
}
.res_slot_item.reserved_adm a{
	color: #228B22;
	text-decoration:none;
}
.res_slot_item.gy a{
	color: #ff4081;
	text-decoration:none;
}
/* 예약불가 */
.res_slot_item.unavailable a{
	color: #bdbdbd;
}

/* 관리자에 의해 시간 차단됨 */
.res_slot_item.block_time a{
	color: #b0b0b0;
}

/* 하루 전체 차단 */
.res_slot_item.block_day {
	color: #c62828;
	font-weight: bold;
	text-align: center;
	font-size:1.3em;
}

/* 마감 */
.res_slot_item.closed {
	color: #757575;
	font-weight: bold;
}

/* 버튼 */
.btn_wrap {width: 100%; text-align: center; height: 80px; margin: 50px auto 0px}
.btn_more {display:inline-block; background:#fff; color:#333; text-align:center;  font-size:1.6em; margin:0px 0px; padding:15px 45px; border:1px solid #555;  transition: 0.5s all ease; -webkit-transition: 0.5s all ease; -moz-transition: 0.5s all ease; -ms-transition: 0.5s all ease; -o-transition: 0.5s all ease;}
.btn_more:hover {color:#000; background-color:#e7e7e7; }
.btn_red {background:#FB0307; color:#fff; border-radius: 8px;}
.btn_gray {background:#666; color:#fff;}

#payment-method {
	display: flex;
	justify-content: center;
	font-weight: 500;
	gap: 10px;
	margin-bottom: 20px;
}

#payment-method .button2 {
	padding: 10px 20px;
	border: 2px solid #ccc;
	border-radius: 8px;
	background-color: #fff;
	color: #333;
	font-size: 18px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
	min-width: 100px;
	text-align: center;
}

#payment-method .button2:hover {
	background-color: #dbeafe;
	border-color: #2563eb;
	color: #1e40af;
}

#payment-method .button2.active {
	background-color: #dbeafe;
	border-color: #2563eb;
	color: #1e40af;
	font-weight: bold;
	box-shadow: 0 4px 12px rgba(30, 58, 138, 0.4);
	transform: translateY(-1px);
}

@media screen and (max-width:800px){
	
	.res_schedule div.month{width:100%}
	.res_schedule div.month p{font-size:2.6em; margin: 25px 0px 19px;}
	.res_schedule div.month ul li{top:-5px}
	.res_schedule table { border-top: 0;}
	.res_schedule table thead th{display:none}
	.res_schedule table thead tr {border-bottom:0;}
	.res_schedule table tbody td.blank{display:none}
	.res_schedule table tbody td{display:block; width:100%; border:0px; height:auto}
	.res_schedule table tbody td p.date{text-align:center; margin-top:5px; width:100%; border:0px; background:#5c7da3; color:#fff}
	.res_schedule table tbody td.sun p.date{background:#d21717}
	.res_schedule table tbody td.sat p.date{background:#1a5194}
	.res_schedule table tbody td ul{padding:5px 20px 10px}
	.res_schedule table tbody td>ul>li.close a{text-decoration:line-through}
	.res_schedule table tbody td>ul.sch_list>li div.con{position:static}
	.res_schedule_week dl.list{padding:30px 0px}
	.res_schedule_week dl.list dt{position:relative; top:0px; text-align:center; padding:5px 10px; width:100px; font-size:18px; font-weight:bold; color:#fff; background:#5c7da3s; border-radius:60px}
	.res_schedule_week dl.list dt span{display:inline; padding-left:5px; font-weight:normal}
	.res_schedule_week dl.list dd{padding-top:10px; padding-left:5px}
	.res_schedule_week dl.list dd>ul>li a{padding:8px 0px}
	.res_schedule_week dl.list dd>ul>li .time{display:none}
	.res_schedule_week dl.list dd>ul>li .tit{}
	.res_schedule_week dl.list dd>ul>li .place{display:none}
	.res_schedule_week dl.list dd>ul>li div.con{display:none; margin-top:10px; padding:30px; background:#f0f0f0}


	.res_schedule .sun {background:#d21717 !important;}
	.res_schedule .sat {background:#1a5194  !important;}

}


@media screen and (max-width:420px){
#payment-method .button2 {
	font-size: 14px;}
}


/* 예약 페이지에 한정된 스타일 (ID #res-booking 사용) */
#res-booking .info_box.res_wrap table.con_wrap {
    width: 100%;
    border-collapse: collapse;
    font-family: Arial, sans-serif;
}
#res-booking .info_box.res_wrap table.con_wrap th,
#res-booking .info_box.res_wrap table.con_wrap td {
    padding: 10px;
    border: 1px solid #ccc;
    text-align: center;
    font-size: 16px;
}
#res-booking .info_box.res_wrap table.con_wrap th {
    background-color: #f5f5f5;
}


/* 페이징 박스 */
#res-booking .my_paging_box {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 30px auto 0;
}
.btn-detail {
	padding: 9px 15px;
    font-size: 13px;
    color: #fff;
    background-color: #014d9b;
    border-radius: 3px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.btn-detail:hover {
	background-color: #1a7ee5;
}


.brs_status_label {
	padding: 9px 15px;
    font-size: 13px;
    color: #fff;
    border-radius: 3px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.brs_status_label[data-status="예약완료"] {
	border: 1px solid #a0d6ff;
    background-color: #e3f3ff;
    color: #346183;
}

.brs_status_label[data-status="예약취소"] {
	background-color: #efdede;
    color: #a72b2b;
    border: 1px solid #f1b2b2;
}

.brs_status_label[data-status="결제대기"] {
	background-color: #f1f1f1;
	color: #555;
	border: 1px solid #ccc;
}

.btn_more {
	display: inline-block;
	vertical-align: middle;
}
/* 상태/일자 관련 라벨 */
.day-status {
	font-weight: bold;
	display: inline-block;
	position: relative;
	top: 5px;
	float: right;
	margin-right: 5px;
	padding: 2px 3px;
	border-radius: 5px;
}
.day-status.block_off {
	border: 1px solid #ff6347;
	color: #ff6347;
}
.day-status.block_on {
	border: 1px solid #245a9b;
	color: #245a9b;
}
.day_box{
	min-height:100px; vertical-align:middle; display:flex; align-items:center;
}
/* CSS 추가 */
ul.day_block_center {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 100px;
	position: relative;
}

ul.day_block_center .day_msg {
	text-align: center;
}

/* 반응형 디자인 (예약 테이블에만 적용) */
@media screen and (max-width: 768px) {
	.day_box{
		min-height:50px vertical-align:middle; display:flex; align-items:center;
	}
    #res-booking .info_box.res_wrap table.con_wrap,
    #res-booking .info_box.res_wrap table.con_wrap thead,
    #res-booking .info_box.res_wrap table.con_wrap tbody,
    #res-booking .info_box.res_wrap table.con_wrap th,
    #res-booking .info_box.res_wrap table.con_wrap td,
    #res-booking .info_box.res_wrap table.con_wrap tr {
        display: block;
    }
    #res-booking .info_box.res_wrap table.con_wrap thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    #res-booking .info_box.res_wrap table.con_wrap tr {
        border: 1px solid #ccc;
        margin-bottom: 10px;
    }
    #res-booking .info_box.res_wrap table.con_wrap td {
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 50%;
        text-align: left;
		font-size:14px;
    }
    #res-booking .info_box.res_wrap table.con_wrap td:before {
        position: absolute;
        top: 10px;
        left: 10px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        font-weight: bold;
    }
    /* 각 열에 대응하는 라벨 지정 */
    #res-booking .info_box.res_wrap table.con_wrap td:nth-of-type(1):before { content: "이용시설"; }
    #res-booking .info_box.res_wrap table.con_wrap td:nth-of-type(2):before { content: "예약일"; }
    #res-booking .info_box.res_wrap table.con_wrap td:nth-of-type(3):before { content: "예약시간"; }
    #res-booking .info_box.res_wrap table.con_wrap td:nth-of-type(4):before { content: "예약인원"; }
    #res-booking .info_box.res_wrap table.con_wrap td:nth-of-type(5):before { content: "총 이용요금"; }
    #res-booking .info_box.res_wrap table.con_wrap td:nth-of-type(6):before { content: "상태"; }
    #res-booking .info_box.res_wrap table.con_wrap td:nth-of-type(7):before { content: "예약일시"; }
	.btn_wrap {
		justify-content: center;
		flex-wrap: nowrap;  
		gap: 6px;

		padding: 0 10px;
	}

	.btn_wrap a.btn_more {
		font-size: 15px;    
		padding: 10px 20px;  
		
		min-width: auto;
		flex: 1 1 auto;     
		text-align: center;
		box-sizing: border-box;
		white-space: nowrap;
	}


	#res-booking-form {
		font-size: 14px;
	}
	
	#res-booking-form .info_box.res_wrap table.con_wrap td,
	#res-booking-form .info_box.res_wrap table.con_wrap th {
		font-size: 13px;
	}
	
	#res-booking-form h2,
	#res-booking-form h3 {
		font-size: 1.4em;
	}
	
	#res-booking-form input[type="text"],
	#res-booking-form input[type="number"],
	#res-booking-form input[type="tel"] {
		font-size: 14px;
	}
	
	#res-booking-form .btn_more {
		font-size: 16px;
		padding: 10px 20px;
	}
}


/* 수강신청 */

#pay-booking .info_box.res_wrap table.con_wrap {
    width: 100%;
    border-collapse: collapse;
    font-family: Arial, sans-serif;
}
#pay-booking .info_box.res_wrap table.con_wrap th,
#pay-booking .info_box.res_wrap table.con_wrap td {
    padding: 10px;
    border: 1px solid #ccc;
    text-align: center;
    font-size: 14px;
}
#pay-booking .info_box.res_wrap table.con_wrap th {
    background-color: #f5f5f5;
}

/* 시간 라벨 스타일 */
.label-time {
    color: #014d9b;
    font-weight: bold;
    background: #e3f3ff;
    padding: 8px 14px;
    border-radius: 3px;
    border: 1px solid #a0d6ff;
}

/* 페이징 박스 */
#pay-booking .my_paging_box {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 30px auto 0;
}


@media (max-width: 1025px) {
	.res_schedule table tbody td>ul>li{ font-size: 1.05em; }
}


@media screen and (max-width: 768px) {
	.res_schedule table tbody td>ul>li{ font-size: 1.2em; padding: 5px;}
	.res_schedule table tbody td{padding:0px;}
	#pay-booking .info_box.res_wrap table.con_wrap td:nth-of-type(1):before { content: "종목"; }
	#pay-booking .info_box.res_wrap table.con_wrap td:nth-of-type(2):before { content: "강좌명"; }
	#pay-booking .info_box.res_wrap table.con_wrap td:nth-of-type(3):before { content: "요일"; }
	#pay-booking .info_box.res_wrap table.con_wrap td:nth-of-type(4):before { content: "시간"; }
	#pay-booking .info_box.res_wrap table.con_wrap td:nth-of-type(5):before { content: "강습장소"; }
	#pay-booking .info_box.res_wrap table.con_wrap td:nth-of-type(6):before { content: "강습료"; }
	#pay-booking .info_box.res_wrap table.con_wrap td:nth-of-type(7):before { content: "신청일"; }
	#pay-booking .info_box.res_wrap table.con_wrap td:nth-of-type(8):before { content: "상태"; }
	#pay-booking .info_box.res_wrap table.con_wrap td:nth-of-type(9):before { content: "확인"; }

	/* 각 열에 대응하는 라벨 지정 */
	#pay-booking .info_box.res_wrap table.con_wrap,
	#pay-booking .info_box.res_wrap table.con_wrap thead,
	#pay-booking .info_box.res_wrap table.con_wrap tbody,
	#pay-booking .info_box.res_wrap table.con_wrap th,
	#pay-booking .info_box.res_wrap table.con_wrap td,
	#pay-booking .info_box.res_wrap table.con_wrap tr {
		display: block;
	}
	#pay-booking .info_box.res_wrap table.con_wrap thead tr {
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	#pay-booking .info_box.res_wrap table.con_wrap tr {
		border: 1px solid #ccc;
		margin-bottom: 10px;
	}
	#pay-booking .info_box.res_wrap table.con_wrap td {
		border: none;
		border-bottom: 1px solid #eee;
		position: relative;
		padding-left: 50%;
		text-align: left;
	}
	#pay-booking .info_box.res_wrap table.con_wrap td:before {
		position: absolute;
		top: 10px;
		left: 10px;
		width: 45%;
		padding-right: 10px;
		white-space: nowrap;
		font-weight: bold;
	}
}

.info_tab_box {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	margin: 30px auto;
}

.tab_btn {
	display: inline-block;
	width: 220px;
	text-align: center;
	padding: 15px 0;
	font-size: 1.6em;
	color: #000;
	border: 1px solid #333;
	background-color: #fff;
	cursor: pointer;
	text-decoration: none;
	transition: 0.3s ease;
}

.tab_btn.active {
	background-color: #014D9B;
	color: #fff;
	border-color: #333;
}
.btn_fixed_wrap {width: 100%; text-align: center; height: 80px; margin: 50px auto 0px}
.res_btn{ background:#3182f6;color:#fff; border:1px solid #004c98}
@media screen and (max-width: 768px) {
	.btn_fixed_wrap {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		background: #fff;
		z-index: 9999;
		box-shadow: 0 -2px 5px rgba(0,0,0,0.1);
		padding: 10px;
	}

	.btn_fixed_wrap input[type="button"],
	.btn_fixed_wrap input[type="submit"],
	.btn_fixed_wrap button {
		width: 100%;
		padding: 14px 0;
		font-size: 1.4em;
		border-radius: 8px;
	}
	
	.content_area.greeting {
		padding-bottom: 90px; /* 고정된 버튼만큼 여유 공간 확보 */
	}
}
.con_wrap table { table-layout: fixed;} 
/* 기본 (PC 기준) */
.col-left {
	width: 20%;
}
.col-right {
	width: 80%;
}

/* 모바일 반응형 */
@media screen and (max-width: 768px) {
	.col-left {
		width: 30% !important;
	}
	.col-right {
		width: 70% !important;
	}
	ul.book li {
	width: 50%;
	padding: 4px 0;
	}
}

@media screen and (max-width: 640px) {

	.tab_btn {
	width: 160px;
	padding: 10px 0;
	font-size: 1.15em;

	}

}

.time-price-summary {
	color: #666;
	line-height: 1.3em;
}

.holiday {
    color: red;
    font-weight: bold;
}

