* { box-sizing: border-box; }
.page-title-img { height: 25vh; background-size: cover; background-position: center; text-align: center; margin-bottom: 30px; }
.page-title-img h2 { font-size: 3em; color: #fff; letter-spacing: 2px; line-height: 25vh; text-shadow: 1px 1px 2px rgba(0,0,0,.5) }

.booking-slide-sub { background: #fff; padding: 10px 20px 0; border: 1px solid #ccc; border-radius: 10px; box-shadow: 1px 1px 2px rgba(0,0,0,.1); margin-bottom: 50px; }
.booking-slide-sub>div { margin-bottom: 30px; }
.booking-slide-sub h3 span { background-color: #fff; color: #FFAB01; text-align: center; font-weight: 500; padding-left: 5px; padding-right: 10px; position: relative; z-index: 2; }
.booking-slide-sub h3:before { content: ""; display: block; width: 15px; height: 20px; background: #FFAB01; position: absolute; top: 12px; left: -25px; }
.booking-slide-sub h3:after { content: ""; display: block; width: 100%; height: 1px; background: #818181; position: absolute; top: 23px; z-index: 1; }
.booking-slide-sub .why { margin-top: 20px; }
.booking-slide-sub .why img { display: inline-block; width: 48%; }
.booking-slide-sub ul>li { padding-left: 20px; position: relative; margin: 10px 0; }
.booking-slide-sub ul.service-process { text-align: center; }
.booking-slide-sub ul.service-process>li { display: inline-block; width: 22%; padding: 0; }
/*.booking-slide-sub ul.service-process>li:after { content: ">"; color: #ccc; }
.booking-slide-sub ul.service-process>li:last-child:after { content: " "; }*/
.booking-slide-sub ul.service-process>li img { width: 75%; }
.booking-slide-sub ul.service-process>li span { font-size: .9em; }
.booking-slide-sub ul.notice>li:before { content: "※"; display: inline-block; width: 24px; position: absolute; left: 0px; }
.booking-slide-sub .promise { text-align: center; font-size: .7em }
.booking-slide-sub .promise>div { margin-top: 20px; }
.booking-slide-sub .promise img { display: block; width: 55%; margin: 0 auto 5px; }
.booking-slide-sub table { width: 100%; text-align: center; border-spacing: 0; }
.booking-slide-sub table th,.booking-slide-sub table td { padding: 10px 5px; border: 1px solid #fff; }
.booking-slide-sub table th { background-color: #FFAB01; color: #fff; font-weight: normal; }
.booking-slide-sub table td { background-color: rgba(255,171,0,.1); }
.booking-slide-sub table thead tr:first-child td { background-color: rgba(255,171,0,.3); }

.booking-form { background: #fff; padding: 30px 20px 0; border: 1px solid #ccc; border-radius: 10px; margin-bottom: 50px; }
.booking-form .step { margin-bottom: 50px; }
.booking-form h3 { font-weight: bold; margin-bottom: 30px; }
.booking-form h3 span { display: inline-block; letter-spacing: 0; width: 30px; height: 30px; line-height: 30px; text-align: center; color: #fff; border-radius: 20px; background-color: #FFAB01; margin-right: 10px; }
.booking-form .step-info { padding: 0 30px; }
.booking-form .step-info .form-group:after { content: ''; display: table; clear: both; }
.booking-form .step-info label { margin-top: 10px; }
.booking-form .step-info input[type="text"],.booking-form .step-info input[type="email"],.booking-form .step-info input[type="password"],
.booking-form .step-info select,.booking-form .step-info textarea,.booking-form .step-info input[type="tel"] {
  display: block; width: 100%; height: 34px; color:#A3A3A3; font-size: .9em; line-height: 1.42857143; letter-spacing: 0px; background-color: #ffffff; background-image: none; border: 1px solid #DADADA; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); padding: 6px 12px; -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; }
.booking-form .step-info select { -webkit-appearance: menulist-button; -moz-appearance: menulist-button; -ms-appearance: menulist-button; -o-appearance: menulist-button; appearance: menulist-button;}
.booking-form .step-info textarea { height: auto; margin: 10px 0; }
.group-value { margin: 10px 0; }
.group-value>div { display: inline-block; }
.group-value .total { font-size: 1.2em; color: #f00; }
.group-value span { display: inline-block; width: 30px; height: 30px; text-align: center; padding: 0; vertical-align: middle; }
.booking-form .btn { display: inline-block; padding: 6px 12px; margin-bottom: 0; font-size: 14px; font-weight: 400; line-height: 1.42857143; text-align: center; white-space: nowrap; vertical-align: middle; -ms-touch-action: manipulation; touch-action: manipulation; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; background-image: none; border: 1px solid transparent; border-radius: 4px; }
@media (min-width: 992px) and (max-width: 1155px) {
  .form-group.address { display: block; }
}
@media (max-width: 767.98px) {
  .form-group { margin-bottom: 10px; }
  .booking-slide-sub ul.service-process>li span { font-size: .9em; }
  .booking-slide-sub .promise { font-size: .9em }
  .booking-form .step-info { padding: 0 10px; }
}

/* 必填星號 */
.required-star { color: #d93025; font-size: 18px; vertical-align: middle;}
.required-star-none { color: #d93025; font-size: 18px; visibility:hidden; vertical-align: middle;}
