@charset "utf-8";
.reserv .tableCell .bookingInner {padding: 40px;}
.reserv .tableCell .bookingInner2 {padding: 40px;background:rgba(252,244,234,.6);}

.booking {padding:30px 40px 40px;background:rgba(252,244,234,.6);}
.booking .hName { position: relative; padding-bottom:30px;text-align:center;display:none;}
.booking h2 {font-size:22px;letter-spacing:-1px;line-height:1.2em; word-break:keep-all;color:rgba(60,40,40,1);font-weight:300;font-family: 'Noto Serif KR', sans-serif;}
.booking h2 span {border-bottom:1px solid rgba(60,40,40,1);padding-bottom:6px;}
.booking h3 { font-size: 14px; letter-spacing: .0em; line-height:1.4;margin-bottom:10px; color:rgba(60,40,40,1);margin-top:20px;font-family: 'Noto sans KR',serif;}

.booking_form {
	position:relative;
}
.booking_form h3 {
	font-size: 16px; 
	line-height:1 !important;
	margin-bottom:0px; 
	margin-top:0px;
	color:rgba(60,40,40,1);
	font-family: 'Noto Sans KR',sans-serif;
	font-weight:400;
}
.booking_form .out_tit {
	padding: 15px 20px;
	padding: 15px 0px;
    /*background:rgba(255,255,255,1);*/
	border-bottom:rgba(225,225,225,1) 1px solid;
	margin-bottom:0;	
}
.booking_form .help_txt {
	position: relative;
    top: 4px;
    float: right;
	font-size: 12px;
	color:#c1c1c1;
}
.booking_form .help_txt span {
	margin-left:-5px;
}
.booking_form i {
    font-size: 12px !important;
    color:#F00 !important;
	font-weight:600 !important;
	margin-right:5px;
}

.booking_form_wrap {
	padding: 15px 20px ;
	padding: 15px 0px ;
	/*background:rgba(255,255,255,1);*/
    /*border:rgba(235,235,235,1) 1px solid;*/
	border-top:none;
	position:relative;
}
.booking_list {
	margin:0 -2% 0; 
}
.booking_list .item {
	float: left;
	width: 46%;
	margin:0 2%;
	padding:5px 0px 10px;
}
.booking_list .red{
	color: #F00;
}
.booking_list .item100 {
	width: 96%;
}
.booking_list .label {
	display: inline-block;
	padding:4px;
	position: relative;
	vertical-align: middle;
	font-size: 14px;
	color: #000;
}
.booking_form .your-memo{ height: 100px;resize:vertical;}
.booking_form .your-memo2 .do_form_field {height: 130px;resize:vertical;}
.booking_form .do_form_field_cap { width:100px;}
.booking_form .do_agree_check_request {padding: 10px 0 10px 0px;}
.booking_form a.capbtn {
	display:inline-block; height:40px;
	padding:0px 4px;*padding:0px 4px;
	font-weight:normal; 
	color:rgba(230,200,160,1);
	background:rgba(60,40,40,1);
	border: 1px solid rgba(60,40,40,1);
	font-size:11px;text-align:center;line-height:40px;
}
.booking_form a.capbtn:hover {background:rgba(65,50,40,1);border: 1px solid rgba(65,50,40,1);}
.booking_form .do_form_control {text-align: center; padding-top:20px;}
.booking_form input[type=checkbox],
.booking_form input[type=radio] {
	display: inline-block;
	font-size: 13px;
	line-height: 1em;
	margin: 4px 0 0;
	padding: 0;
	width: 1.25em;
	height: 1.25em;
	-webkit-border-radius: 0em;
	background:none;
	vertical-align: text-top;
}

.do_file_upload_wrapper { position: relative; }
.do_file_upload_input { width: 100%; cursor: pointer;}
.do_file_upload_button {position: absolute; top: 0; right: 0; width: 140px; height: 100%; margin: 0; background:rgba(60,40,40,1);color:rgba(255,255,255,1);}
.do_file_upload_button:after { font-family: 'themify';font-size: 16px; line-height: 1; position: absolute; top: 50%; right: 10px; display: block; width: 16px; height: 16px; margin-top: -8px; content: "\e66b"; }

.do_btn {display: inline-block;min-width: 100px;padding: 6px 22px;font-size: 15px;font-weight: 400;line-height: 1.95;text-align: center;vertical-align: middle;border: 1px solid transparent;cursor: pointer;-webkit-transition: all 300ms;transition: all 300ms;}
a.do_download {
	color:#000000; 
	background:#fff; 
	border:rgba(60,40,40,1) 1px solid;
	letter-spacing: .05em; 
	font-size:15px; 
	text-align:center; 
	position:relative;
	display: inline-block; *display: inline; *zoom: 1; width: auto; 
	padding:0 40px 0 20px;
	line-height: 40px; 
	-webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px ;
	margin:5px 5px 5px 0;
}
a.do_download:after { 
	position: absolute; 
	top: 0; right: 10px; bottom: 0; 
	font-size: 16px; 
	font-family: 'themify'; content: "\e6a7"; 
	-webkit-font-smoothing: antialiased; text-indent: 0; -moz-osx-font-smoothing: grayscale; 
}
a.do_download:hover {background:rgba(60,40,40,1);border:rgba(60,40,40,1) 1px solid; color:#fff;}

a.btnBooking {
	color: rgba(230,200,160,1);
	background:rgba(60,40,40,1);border: 2px solid rgba(60,40,40,1);
	
	display: inline-block; *display: inline; *zoom: 1; 
	width: 100%; 
	line-height: 60px; 
	text-align: center; font-size: 16px; letter-spacing: .0em; 
	position: relative; 
	padding: 0 50px 0 50px; 
}
a.btnBooking:before { 
	display: inline-block; *display: inline; *zoom: 1; 
	font-size: 16px; 
	font-family: 'themify'; content: "\e61d"; 
	font-weight: normal; 
	margin-right:10px;
	/*-webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; */
}
a.btnBooking:hover, a.confirm:hover {
	/*color:rgba(60,40,40,1);*/
	background:rgba(65,50,40,1); border:rgba(65,50,40,1) 2px solid;
}

.booking_caution {
	position:relative;
	background:rgba(250,250,250,1);
	border:rgba(235,235,235,1) 1px solid;
	padding: 15px 20px 15px 20px;
	margin-bottom:10px;
}

.booking_caution h3 {
	font-size: 18px; 
	line-height:1 !important;
	color:#F00;
	font-weight:400;
	margin-top:0px;
	margin-bottom:10px;
}

.booking_caution li {
	font-size: 16px; 
}

.booking_caution .ico {
	position: relative;
	top: 1px;
	margin-right:5px;
}

.booking_caution i {
    font-size: 18px !important;
}

/* booking selector */
.booking_schedule_form {
	position:relative;
	background:rgba(255,255,255,1);
	border:rgba(235,235,235,1) 1px solid;
	margin-bottom:10px;
	padding:10px 20px 30px;
}

.booking_schedule_form .open {
	display:block;
}
.booking-selector {
	display:block;
	font-size: 20px; 
	line-height:1 !important;
	margin-bottom:0px; 
	margin-top:0px;
	color:rgba(60,40,40,1);
	font-weight:400;
	
	padding: 15px 0px 15px 0px;
    background:rgba(255,255,255,1);
	border-bottom:rgba(235,235,235,1) 1px solid;

}

.booking-selector .ico {
	position: relative;
	top: 1px;
	margin-right:5px;
 }
.booking-selector .updown {
	position: relative;
	float: right;
	top: 1px;
}

.booking-selector .updown i:before {
    font-size: 22px;
    color:rgba(60,40,40,1);
	/*font-weight:600;*/
	font-family: 'themify'; 
	-webkit-font-smoothing: antialiased; text-indent: 0; -moz-osx-font-smoothing: grayscale; 
	content: "\e65f";
}

.booking-selector.open .updown i:before {
	content: "\e65c";
}


.booking-selector-date {
	margin: 0;
    padding: 15px 0px;
    /*border-top: 1px solid rgba(90,80,70,1);*/
    border-bottom: 1px solid rgba(90,80,70,1);
	display:none;
}
 
.booking-selector-time {
	margin: 0;
    padding: 15px 0px;
    /*border-top: 1px solid rgba(90,80,70,1);*/
    border-bottom: 1px solid rgba(90,80,70,1);
	display:none;
}

.booking-selector-person {
	margin: 0;
    padding: 15px 0px 20px;
    /*border-top: 1px solid rgba(90,80,70,1);*/
	display:none;
    /*border-bottom: 1px solid rgba(90,80,70,1);*/
}

.booking-selector-type {
	margin: 0;
    padding: 15px 0px 20px;
    /*border-top: 1px solid rgba(90,80,70,1);*/
	display:none;
    border-bottom: 1px solid rgba(90,80,70,1);
}
.person_legend {
	display:table;
	width:100%;
}
.person_legend li {
	display:table-cell;
    padding: 10px 0px 10px 0;
    font-size: 16px;
    vertical-align: top;
}
.person_legend li .do_form_field {
	border:1px solid rgba(90,80,70,1);
}
.birthday .list_time .item {
	float:left;
	width:33.3333%;
}
.list_time .item {
	float:left;
	width:25%;
}
.list_time .item .anchor {
	display: block;
    padding: 9px 0;
    margin: 0 2px 5px;
    background:rgba(250,240,225,1);
    border: 1px solid rgba(220,210,200,1);
    text-align: center;
    font-size: 15px;
}
.list_time .item .anchor.on {
    border: 1px solid rgba(90,80,70,1);
	background: rgba(90,80,70,1);
	color:rgba(255,255,255,1);
}
.list_time .item.none .anchor {
    border: 1px solid #dedfe5;
    background-color: #f5f7f7;
    color: #ccc;
}

.time_legend {
    text-align: right;
    padding: 12px 4.5px 1px;
}

.time_legend .item {
    display: inline-block;
    font-size: 13px;
    line-height: 14px;
    color: #999;
}
.time_legend .item+.item {
    margin-left: 10px;
}

.time_legend .date_label {
	display: inline-block;
    margin-right: 5px;
    vertical-align: middle;
    width: 12px;
    height: 12px;
}

.date_label.color1 {
    border: 1px solid rgba(90,80,70,1);
	background: rgba(90,80,70,1);
}

.date_label.color2 {
    border: 1px solid #dedfe5;
	background: #f6f7f7;
}

/* calendar */
.calendar {}
.calendar .tit_calendar {
    position: relative;
    padding: 12px 0 20px;
    margin: 0 -6px 0px;
    text-align: center;
}

.calendar .tit_calendar .calendar-title {
    display: inline-block;
    min-width: 110px;
    font-size: 25px;
    line-height: 25px;
    font-weight: 600;
    color: #000;
    text-align: center;
    vertical-align: middle;
}

.calendar .tit_calendar .calendar-btn {
    display: inline-block;
    position: static;
    top: 0;
    padding: 15px 20px;
	font-size:0;
    vertical-align: middle;
	border:1px solid rgba(235,235,235,1);
}

.calendar .tit_calendar .calendar-btn.calendar-btn-prev-mon {
    left: 0;
}
.calendar .tit_calendar .calendar-btn.calendar-btn-next-mon {
    right: 0;
}

.calendar .tit_calendar .calendar-btn .fn-booking {
    margin: 0 -6px;
    vertical-align: 0;
    font-size: 19px;
    color: #666;
}
.fn-booking {
    display: inline-block;
    height: 1em;
    line-height: 1em;
}

.fn-booking:before {
    font-family: 'themify'; 
    font-style: normal;
    font-weight: 400;
    speak: none;
    display: inline;
    text-decoration: inherit;
    width: 1em;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.fn-booking-backward1:before {
    content: "\e64a";
}
.fn-booking-forward1:before {
	content: "\e649";
}

/* calendar table */
.calendar .tb_calendar {
    display: table;
    position: relative;
    table-layout: fixed;
    width: 100%;
    margin-top:10px;
    margin-bottom:10px;
}
.calendar .tb_calendar caption {
    overflow: hidden;
    width: 0;
    height: 0;
}
.calendar .tb_calendar .tb_header th {
    padding:0px 1px 15px;
    font-size: 14px;
    line-height: 12px;
    font-weight: 400;
    color: #545454;
}
.calendar .tb_calendar .tb_header th span{
    padding:5px 0px;
	background:rgba(245,245,245,1);
	width:100%;
	display:block;
}

.calendar .tb_calendar .tb_body td {
    
    text-align: center;
    color: #000;
    vertical-align: top;
    line-height: 17px;
	padding:2px;
}
.calendar .tb_calendar .tb_body td .calendar-date {
    position: relative;
    z-index: 1;
    display: block;
    min-height: 48px;
    padding: 5px 0;
    color: #333;
    font-weight: 400;
}
.calendar .tb_calendar .tb_body td .calendar-date .num {
    display: block;
	padding: 0px 0 5px;
	/*width: 22px;
    margin: 0 auto;
    border-radius: 50%;*/
    font-size: 16px;
    line-height: 17px;
    font-weight: 400;
}
.calendar .tb_calendar .tb_body td .calendar-date .num span {
	display: inline-block;
	height:30px;
	line-height:26px;
    border-radius: 50%;
    text-align: center;
    white-space: nowrap;
	border:1px solid rgba(90,80,70,0);
}

.calendar .tb_calendar .tb_body td .calendar-date .txt {
    display: block;
    margin-top: -1px;
    font-size: 10px;
    line-height: 10px;
}

.calendar .tb_calendar .tb_body td.calendar-dayoff .num, 
.calendar .tb_calendar .tb_body td.calendar-dayoff .txt, 
.calendar .tb_calendar .tb_body td.calendar-sun .num, 
.calendar .tb_calendar .tb_body td.calendar-sun .txt {
    color: #F82222;
}
.calendar .tb_calendar .tb_body td.calendar-sat .num, 
.calendar .tb_calendar .tb_body td.calendar-sat .txt {
    color: #379afc;
}
.calendar .tb_calendar .tb_body td.calendar-unselectable .num,
.calendar .tb_calendar .tb_body td.calendar-unselectable .txt {
    color: #e4e4e4;
}

.calendar .calendar-selected .calendar-date {
	background: rgba(90,80,70,1);
}

.calendar .tb_calendar .tb_body td.calendar-today .num, 
.calendar .tb_calendar .tb_body td.calendar-today .txt {
    color: #F90 !important;
}

.calendar .tb_calendar .tb_body td.calendar-today.calendar-unselectable .num, 
.calendar .tb_calendar .tb_body td.calendar-today.calendar-unselectable .txt {
    color: #e4e4e4!important;
}

.calendar .tb_calendar .tb_body td.calendar-today .num span{
    width: 30px;
    border-color:rgba(90,80,70,1);
}

.calendar .tb_calendar .tb_body td.calendar-selected .num, 
.calendar .tb_calendar .tb_body td.calendar-selected .txt {
    background: 0 0;
    font-weight: 600;
    color: #fff!important;
}

@media screen and (max-width: 1024px) {
	.reserv .tableCell .bookingInner {padding: 30px;}
	.booking {padding:40px;}
	.booking .hName {display:block;}
}
@media screen and (max-width: 940px) {
		
}
@media screen and (max-width: 768px) {
	.do_file_upload_button {width: 80px;padding: 0 4px;font-size: 14px;}
    .do_file_upload_button:after {display: none;}
}

@media screen and (max-width: 640px) {
	/* booking */
	.booking {padding:40px 20px 60px;}
	.booking .reserv {padding:0px 0 0px;}
	.reserv .tableCell .bookingInner {padding: 30px 0px 80px;}
	.reserv .tableCell .bookingInner2 {padding: 30px 20px 30px;}
	
	.booking_schedule_form {border:none}

	.booking_list {margin:0 0;}
	.booking_list .item {width: 100%; margin:0;}
	.booking_list .item100 {width: 100%;}
	.booking_form .do_form_control {padding:20px 20px 0;}
	
	.booking_caution li {
		font-size: 14px; 
	}
	
	.booking h2 {font-size:18px;}
	
}
@media screen and (max-width: 425px) {
	.birthday .list_time .item {
		width:100%;
	}
	.person_legend li {
		padding: 0px 0px 10px 0;
		display:block;
	}
	.booking_caution {
		padding: 15px 15px 15px 15px;
	}

	a.do_download {width:100%;font-size:14px;padding: 0 30px 0 5px;}
	
}
