@charset "UTF-8";

/*-- 雲上閣 reservation.css --*/

.reserve_box {
    margin-top: 60px;
	padding: 30px;
	border: #bda286 5px solid;
	text-align: center;
}
.reserve_title {
	position:relative;
	margin-bottom: 15px;
	padding: 0 0 30px;
    overflow: hidden;
	color: #3a3230;
	font-size: 1.875rem;
    text-align: center;
    letter-spacing: 3px;
}
.reserve_title:after {
    position: absolute;
    left: 0;
    bottom: 10px;
    width: 100%;
    height: 7px;
    background: -webkit-repeating-linear-gradient(-45deg, #bda286, #bda286 2px, #fff 2px, #fff 4px);
    background: repeating-linear-gradient(-45deg, #bda286, #bda286 2px, #fff 2px, #fff 4px);
    content: "";
}

.reserve_form {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
    align-items: center;
}
.reserve_form li {
    display: block;
    margin-bottom: 20px;
    padding: 10px 20px;
    font-size: 18px;
    background: #e8e0da;
}
.reserve_form li span {
    font-weight: bold;
    display: block;
    margin-bottom: 5px;
}

.reserve_submit {
	position: relative;
    width: 100%;
}
.reserve_submit::after {
	display: block;
	content: "";
	position: absolute;
	top: calc(50% - 7px);
	left: calc(50% + 60px);
	width: 10px;
	height: 10px;
	border-top: solid 1px #473e35;
	border-right: solid 1px #473e35;
	transform: rotate(45deg);
    z-index: 2;
}
.reserve_submit input[type="submit"] {
    display: inline-block;
    position: relative;
    z-index: 1;
	min-width: 190px;
    padding: 20px 50px 20px 30px;
	border: none;
	color: #473e35;
	background: #f2c028;
    border-radius: 5px;
    font-weight: bold;
	font-size: 1rem;
    letter-spacing: 2px;
    cursor: pointer;
    transition: .3s;
}
.reserve_submit input[type="submit"]:hover {
    background: #fe4;
}

/* iOS Reset */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

/* datepicker */
.datepicker {
    position: relative;
    z-index: 3;
}
.ui-datepicker-trigger {
    border: none;
    background: url("/images/reserve_calender.svg") no-repeat;
    background-size: 16px 16px;
    width: 16px;
    height: 16px;
    text-indent: -9999px;
    cursor: pointer;
}
.ui-datepicker {    
	margin: 16px 0 0 -100px;
	overflow: hidden;
	width: 600px;
	height: 330px;
	background: #fff;
	border: 6px solid #ccc;
	border-radius: 10px;
	box-shadow: 18px 18px 0 0 rgba(0,0,0,0.2);
}
.ui-datepicker .ui-datepicker-header {
	padding: 10px;
	font-size: 1.25rem;
	color: #fff;
	background: #473e35;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
	top: auto;
}
.ui-datepicker-prev::after,
.ui-datepicker-next::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	display: block;
	width: 12px;
	height: 12px;
	border: 2px solid;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.ui-datepicker-prev::after {
	border-color: transparent transparent #fff #fff;
}
.ui-datepicker-next::after {
	border-color: #fff #fff transparent transparent;
}
.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
	background: #473e35;
    border-color: #473e35;
}
.ui-datepicker th {
	padding: 9px 6px;
	font-size: 1.125rem;
	font-weight: normal;
	text-align: center;
	color: #473e35;
}
.ui-datepicker td span,
.ui-datepicker td a {
	padding: 18px 6px;
	font-size: 1.125rem;
	text-align: center;
	color: #473e35;
	border-radius: 3px;
}
.ui-datepicker td a.ui-state-active {
	color: #fff;
	background: #bda286;
    border-color: #bda286;
}
.ui-datepicker td a.ui-state-highlight {
	background: #f8f4f1;
	border: 1px solid #bda286;
}
.ui-datepicker td a.ui-state-highlight.ui-state-active {
    color: #473e35;
}
.ui-datepicker .ui-datepicker-buttonpane {
	position: absolute;
	left: 3px;
	right: 3px;
	bottom: 3px;
	padding: 0;
	border-top: 1px solid #000;
}
.ui-datepicker .ui-datepicker-buttonpane button {
	-webkit-appearance: none;
	min-width: 60px;
	margin: 3px 0 0;
	padding: 6px;
	font-size: 14px;
	color: #fff;
	background: #473e35;
	border: 0 none;
	border-radius: 5px;
}

@media screen and (max-width: 999px){
    .reserve_form {
        display: block;
        margin-bottom: 20px;
        background: #e8e0da;
    }
    .reserve_form li {
        float: left;
        margin-bottom: 2px;
        padding: 10px 0;
        font-size: 16px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        box-sizing: border-box;
    }
    .reserve_form li:nth-of-type(1) { width: 30%; }
    .reserve_form li:nth-of-type(2) { width: 10%; }
    .reserve_form li:nth-of-type(3) { width: 15%; }
    .reserve_form li:nth-of-type(4) { width: 15%; }
    .reserve_form li:nth-of-type(5) { width: 30%; }
    
}
@media screen and (max-width: 839px){
    .reserve_form li {
        padding: 15px 0;
    }
    .reserve_form li:nth-of-type(1) { width: 50%; }
    .reserve_form li:nth-of-type(2) { width: 20%; }
    .reserve_form li:nth-of-type(3) { width: 30%; border-right: 2px solid #e8e0da; }
    .reserve_form li:nth-of-type(4) { width: 30%; }
    .reserve_form li:nth-of-type(5) { width: 70%; }
}
@media screen and (max-width: 767px){
    .reserve_box {
        margin-top: 45px;
        padding: 20px;
    }
    .reserve_title {
        font-size: 1.5rem;
        letter-spacing: 2px;
    }
    .reserve_form li span {
        margin-bottom: 2px;
    }
    
    .ui-datepicker {
    	margin: 16px 0 0 -5%;
        width: 90%!important;
        height: 555px!important;
    }
    .ui-datepicker-multi .ui-datepicker-group {
        float: none!important;
    }
    .ui-datepicker-multi-2 .ui-datepicker-group {
        width: 100%!important;    
    }
}
@media screen and (max-width: 567px){
    .reserve_box {
        padding: 20px 10px;
    }
    .reserve_form li:nth-of-type(1) { width: 75%; }
    .reserve_form li:nth-of-type(2) { width: 25%; border-right: 2px solid #e8e0da; }
    .reserve_form li:nth-of-type(3) { width: 50%; border-right: 2px solid #fff; }
    .reserve_form li:nth-of-type(4) { width: 50%; border-right: 2px solid #e8e0da; }
    .reserve_form li:nth-of-type(5) { width: 100%; border-right: 2px solid #e8e0da; }

}
@media screen and (max-width: 399px){
    .reserve_box {
        padding: 20px 5px;
    }
    .reserve_form li {
        font-size: 12px;
    }
    .reserve_form li:nth-of-type(1) { width: 80%; }
    .reserve_form li:nth-of-type(2) { width: 20%; }
    .reserve_form li input[type=checkbox] {
        transform: scale(1.33);
    }
}
