@charset "utf-8";

/* レンタル期間入力 */
#mtsrcb-entry-form label {
    cursor: pointer;
}

#mtsrcb-entry-date,
#mtsrcb-entry-calendar {
    margin-bottom: 1.1em;
}

.rental-premises-entry {
    font-size: 1rem;
    margin-bottom: 0.6em;
}

.rental-premises-title {
    display: block;
    font-size: 1.3em;
    margin-bottom: 0.4em;
}

.rental-premises-box {
    margin-bottom: 0.3em;
}

.rental-premises-select {
    border: 1px solid #888888;
    border-radius: 3px;
    font-size: 1.05em;
    margin-right: 0.2em;
    min-width: 7em;
    padding: 0.2em;
}

.rental-premises-map {
    display: inline-block;
}

.action-row.description {
    margin-bottom: 1em;
}

.rental-date-entry {
    display: flex;
    font-size: 1rem;
    margin-bottom: 0.5em;
}

.rental-date-box label {
    display: block;
    font-size: 1.3em;
    margin-bottom: 0.4em;
}

.date-entry.focused {
    background-color: #fafad2;
}
.date-box-date,
.date-box-time {
    margin-bottom: 0.3em;
}

.date-box-date input,
.date-box-time select {
    border: 1px solid #888888;
    border-radius: 3px;
    font-size: 1em;
    padding: 0.2em;
}


.form-addchr {
    margin: 0 0.2em;
}

#rental-date-arrow {
    align-self: center;
    font-size: 1.5em;
    margin: 0 0.8em;
}

.rental-action-row input {
    border: 1px solid #888888;
    border-radius: 3px;
    font-size: 1rem;
}

/* カレンダー切替 */
.booking-calendar {
    font-size: 1rem;
    margin-bottom: 1em;
}

#change-calendar-pain {
    margin-bottom: 0.5em;
}

#change-calendar-pain input {
    border: 1px solid #888888;
    border-radius: 3px;
    padding: 0.2em;
}

.calendar-button,
.calendar-title {
    display: inline-block;
}

#calendar-link-title {
    display: none;
}

.calendar-button input:disabled {
    background-color: #cccccc;
}

/* 車両予約カレンダー */
.schedule-calendar.month-2 {
    display: inline-block;
    margin-right: 0.2em;
    vertical-align: top;
    width: 49%;
}

.schedule-calendar.month-3 {
    display: inline-block;
    margin-right: 0.1em;
    vertical-align: top;
    width: 32%;
}

.entry-content .schedule-calendar table,
.schedule-calendar table {
    border-collapse: collapse;
    line-height: 1.5em;
    width: 100%;
}

.entry-content .schedule-calendar th,
.entry-content .schedule-calendar td,
.schedule-calendar th,
.schedule-calendar td {
    border: 1px solid #cccccc;
    padding: 0.3em;
    text-align: center;
    width: 14%;
}

.schedule-calendar th:first-child,
.schedule-calendar th:last-child,
.schedule-calendar td:first-child,
.schedule-calendar td:last-child {
    padding: 0.3em;
}

.schedule-calendar td {
    vertical-align: top;
}

.entry-content .schedule-calendar caption,
.schedule-calendar caption {
    font-size: 1.4em;
    margin-bottom: 0.5em;
    text-align: center;
}

.caption-prev {
    float: left;
}

.caption-title {
    display: inline-block;
}

.caption-next {
    float: right;
}

.day-number {
    text-align: right;
}

.day-status {
    font-family: sans-serif;
}

.day-note {
    font-size: 0.8em;
    line-height: 1.1;
    min-height: 1.2em;
}

.entry-content .week-row-thead th,
.week-row-thead th {
    background-color: #888888;
    color: #ffffff;
}

td.no-day {
    background-color: #e8e8e8;
}

td.available {
    cursor: pointer;
}

td.today {
    background-color: #fafad2;
}

.entry-content th.sat,
th.sat,
.sat .day-number {
    color: blue;
}

.entry-content th.sun,
th.sun,
.sun .day-number,
.holiday .day-number {
    color: red;
}

#alter-day-season.high,
td.high-season>.day-number {
    background-color: #ffccff;
}

#alter-day-season.low,
td.low-season>.day-number {
    background-color: #ccffff;
}

/* フォームテーブルのデフォルト設定 */
.mts-form-table {
    border-collapse: separate;
    border-spacing: 0.3em;
    border: 1px solid #cccccc;
    margin: 0 0.5em;
    width: 100%;
}

.mts-form-table th:first-child,
.mts-form-table th:last-child,
.mts-form-table th {
    border-right: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
    padding: 0.4em;
    width: 25%;
}

.mts-form-table td:first-child,
.mts-form-table td:last-child,
.mts-form-table td {
    border-right: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
    padding: 0.4em;
}

.mts-form-table .vehicle-charge-price,
.mts-form-table .option-charge-price {
    text-align: right;
}

.mts-form-table .option-charge-price {
    width: 20%;
}


/* 予約フォーム期間・車両 */
#mts-rental-application {
    font-size: 1rem;
}

.rental-vehicle-img {
    width: 100%;
}

.rental-form-block {
    font-size: 1rem;
    margin-bottom: 1.5em;
}

.rental-vehicle {
    font-size: 1.15em;
    margin-bottom: 0.5em;
}

.reserve-period-datetime {
    display: flex;
    align-items: center;
}

.rental-period-date {
    display: inline-block;
    text-align: center;
}

.rental-period-time {
    margin-bottom: 0.3em;
}

.rental-period-arrow {
    font-size: 1.5em;
    margin: 0 0.5em;
}

.rental-option-label {
    display: inline-block;
    margin: 0 1em 0 0;
}

.rental-option-list input {
    margin-right: 0.3em;
}

.customer-name-item,
.customer-address-item {
    margin-right: 0.5em;
}

/* 請求料金表 */
.rental-charge {
    text-align: right;
}

.rental-product.total,
.rental-product.tax,
.rental-product.grand-total {
    text-align: right;
}

.rental-currency {
    text-align: right;
}

/* 予約申込者 */
#mts-customer-entry {
    font-size: 1rem;
}

#mts-customer-entry input,
#mts-customer-entry select {
    height: inherit;
    padding: 0.2em;
}

.customer-name-box {
    display: inline-block;
    margin-right: 0.4em;
    width: 47%;
}

label.customer-name-label {
    display: block;
    margin-bottom: 0.1em;
}

input.customer-name {
    width: 80%;
}

#mts-customer-entry dl {
    margin: 0;
}

#mts-customer-entry dd {
    margin: 0 0 0.2em 1em;
}

.customer-header label {
    display: block;
    margin-bottom: 0.1em;
}

#customer-postcode {
    display: inline-block;
    width: 35%;
}

label.gender-label {
    display: inline-block;
    margin-right: 0.8em;
}

.mts-gender-label {
    display: inline-block;
    margin-right: 1em;
}

.form-page-link {
    margin-bottom: 0.5em;
}

.rental-note {
    padding: 0.7em;
}

/* 到着・出発便 */
#customer-itinerary input,
#customer-itinerary select {
    height: inherit;
    padding: 0.2em;
}

#customer-itinerary .itinerary-title {
    width: auto;
}

#customer-itinerary .itinerary-airline,
#customer-itinerary .itinerary-flight_no {
    width: 25%;
}

#customer-itinerary .itinerary-date_time {
    width: 40%;
}

#arrival-airline,
#arrival-flight_no,
#departure-airline,
#departure-flight_no {
    width: 95%;
}

#arrival-date,
#departure-date {
    text-align: center;
    width: 7em;
}

.itinerary-time {
    display: inline-block;
}

/* 予約確認ID入力 */
.reserve-form-block {
    font-size: 1rem;
    margin-bottom: 2em;
}

.reserve-box {
    margin-bottom: 1em;
    width: 100%;
}

.reserve-box.rental-action-row {
    margin-bottom: 2em;
}

input#reserve-id,
input#reserve-email {
    border: 1px solid #888888;
    border-radius: 3px;
    font-size: 1.1em;
    padding: 0.2em;
}

.reserve-label {
    display: block;
    margin-bottom: 0.2em;
}

/* 予約内容確認リスト */
.list-page .mts-form-table {
    border-collapse: collapse;
    border: 1px solid #cccccc;
    margin: 0 0.5em;
    width: 100%;
}

.list-page .mts-form-table th:first-child,
.list-page .mts-form-table th:last-child,
.list-page .mts-form-table th {
    border: 1px solid #cccccc;
    padding: 0.4em;
    width: 25%;
}

.list-page .mts-form-table td:first-child,
.list-page .mts-form-table td:last-child,
.list-page .mts-form-table td {
    border: 1px solid #cccccc;
    padding: 0.4em;
}

/* 予約確認お支払い */
.payment-period-arrow {
    margin: 0 0.3em;
}


/* エラーメッセージ */
#mts-message-pane.error {
    border: 1px solid #ff0000;
    border-radius: 5px;
    color: #ff0000;
    margin-bottom: 1em;
    padding: 0.5em;
}

#mts-message-pane.update {
    border: 1px solid #eeee00;
    border-radius: 5px;
    color: #eeee00;
    margin-bottom: 1em;
    padding: 0.5em;
}

/* 共通設定 */
.mts-display-none {
    display: none;
}

.mts-right {
    text-align: right;
}

.mts-left {
    text-align: left;
}

.mts-center {
    text-align: center;
}

.mts-right-box {
    display: inline-block;
    float: right;
}

.mts-inline-margin {
    margin: 0 0.1em;
}

.mts-right-margin {
    margin-right: 0.6em;
}

.mts-m100 {
    max-width: 100%;
}

.mts-fat {
    width: 95%;
}

.mts-fat-middle {
    width: 75%;
}

.mts-middle {
    width: 60%;
}

.mts-small {
    width: 25%;
}

.mts-small-title {
    width: 15%;
}

.mts-small-label {
    display: inline-block;
    text-align: center;
    width: 3.5em;
}


.mts-number {
    text-align: right;
    width: 6em;
}

.mts-small-number {
    text-align: right;
    width: 3em;
}

.mts-error {
    color: #ff0000;
}

.mts-required {
    color: #ff0000;
}

/* Document用 */
.insertion-pointer {
    border: 1px solid red;
    color: red;
    padding: 0.2em 0.7em;
    margin: 0.7em 0;
}