/**
 * BookingWorks フロントエンド モダンスキン
 *
 * Booking_app.css の後に読み込み、タイポグラフィ(サイズ・ウェイト・行間)、
 * 入力欄・ボタンの見た目、余白、予約内容の強調表示を現代的に整える。
 *
 * - 一般設定「デザイン」で指定する背景色・枠線色・フォントサイズは上書きしない
 *   (サイズは em / max() で基準サイズに追従させる)
 * - 既存レイアウト(display / position / アニメーション)は変更しない
 * - セレクタは .start_bookingworks を先頭に付け、元CSSより優先させる
 */

.start_bookingworks {
	--bw-muted: #6b7280;
	--bw-border: #dddddd;
	--bw-primary: #1f2937;
	--bw-primary-hover: #111827;
	--bw-primary-text: #ffffff;
	--bw-secondary-text: #1f2937;
	--bw-accent: #2563eb;
	--bw-focus: rgba(37, 99, 235, 0.22);
	--bw-danger: #dc2626;
	--bw-radius: 10px;
	--bw-radius-sm: 8px;
	line-height: 1.6;
	/* -webkit-font-smoothing: antialiased は macOS で文字が細くなり太字が効きにくいため指定しない */
}

/* ============================================================
   1. カレンダー
   ============================================================ */

.start_bookingworks #bookingworks_calendarPage .calendarHeader {
	align-items: center;
	padding: 12px 4px;
	font-size: 1.15em;
	font-weight: 600;
}

.start_bookingworks #bookingworks_calendarPage .moveMonthButton,
.start_bookingworks #bookingworks_calendarPage .arrowLeft,
.start_bookingworks #bookingworks_calendarPage .arrowRight {
	cursor: pointer;
	border-radius: 999px;
	transition: background-color 0.15s ease;
}

.start_bookingworks #bookingworks_calendarPage .moveMonthButton:hover {
	background-color: rgba(0, 0, 0, 0.05);
}

.start_bookingworks #bookingworks_calendarPage .week_slot {
	padding: 8px 0;
	font-size: 0.85em;
	font-weight: 600;
	letter-spacing: 0.04em;
}

.start_bookingworks #bookingworks_calendarPage .dateField {
	padding: 8px 0 4px;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}

.start_bookingworks #bookingworks_calendarPage .available_day {
	cursor: pointer;
	transition: background-color 0.15s ease;
}

.start_bookingworks #bookingworks_calendarPage .available_day .dateField {
	font-weight: 600;
}

.start_bookingworks #bookingworks_calendarPage .closingDay .dateField,
.start_bookingworks #bookingworks_calendarPage .pastDay .dateField {
	opacity: 0.55;
}

.start_bookingworks #bookingworks_calendarPage .remainderPanel,
.start_bookingworks #bookingworks_calendarPage .symbolPanel,
.start_bookingworks #bookingworks_calendarPage .numberInsteadOfSymbols {
	font-weight: 600;
}

/* ============================================================
   2. 日付・時間枠の選択ページ
   ============================================================ */

.start_bookingworks #bookingworks_schedulePage .selectedDate {
	font-size: 1.25em;
	font-weight: 600;
	padding: 6px 0;
}

.start_bookingworks #bookingworks_schedulePage .selectable_day_slot {
	padding: 12px 6px;
	font-weight: 600;
	transition: background-color 0.15s ease;
}

.start_bookingworks #bookingworks_schedulePage .selectable_day_slot .weekPanel {
	font-size: 0.8em;
	font-weight: 600;
	letter-spacing: 0.04em;
	opacity: 0.85;
}

.start_bookingworks #bookingworks_schedulePage .selectable_time_slot,
.start_bookingworks #bookingworks_schedulePage .selectable_service_slot,
.start_bookingworks #bookingworks_servicePage .selectable_service_slot {
	padding: 14px 16px;
	align-items: center;
	gap: 10px;
	font-size: max(1em, 16px);
	transition: background-color 0.15s ease;
}

.start_bookingworks #bookingworks_schedulePage .timeSlot {
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}

.start_bookingworks #bookingworks_schedulePage .subtitle,
.start_bookingworks #bookingworks_schedulePage .remainingSlots,
.start_bookingworks #bookingworks_schedulePage .descriptionOfService,
.start_bookingworks #bookingworks_servicePage .descriptionOfService {
	font-size: 0.9em;
	color: var(--bw-muted);
}

.start_bookingworks #bookingworks_schedulePage .courseCostPanel,
.start_bookingworks #bookingworks_schedulePage .serviceCost,
.start_bookingworks #bookingworks_servicePage .serviceCost {
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}

.start_bookingworks #bookingworks_schedulePage .closed {
	opacity: 0.5;
	cursor: not-allowed;
}

.start_bookingworks #bookingworks_servicePage .title,
.start_bookingworks #bookingworks_serviceDetails .title {
	font-size: 1.2em;
	font-weight: 600;
	padding: 12px 8px;
}

/* ページ下部の「戻る」「次へ」 */
.start_bookingworks #bottomPanel > button,
.start_bookingworks #bookingworks_schedulePage .bookingButton,
.start_bookingworks #bookingworks_serviceDetails .select_date_button,
.start_bookingworks #bookingworks_serviceDetails .returnButton,
.start_bookingworks #bookingworks_durationStay button {
	-webkit-appearance: none;
	appearance: none;
	font-family: inherit;
	font-size: max(1em, 16px);
	font-weight: 600;
	line-height: 1.3;
	padding: 10px 18px;
	min-height: 44px;
	border: 1px solid var(--bw-border);
	border-radius: var(--bw-radius-sm);
	background-color: #fff;
	color: var(--bw-secondary-text);
	cursor: pointer;
	transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

.start_bookingworks #bottomPanel > button:hover,
.start_bookingworks #bookingworks_serviceDetails .returnButton:hover {
	background-color: rgba(0, 0, 0, 0.04);
}

.start_bookingworks #bottomPanel > #nextButton,
.start_bookingworks #bookingworks_schedulePage .bookingButton,
.start_bookingworks #bookingworks_serviceDetails .select_date_button {
	background-color: var(--bw-primary);
	border-color: var(--bw-primary);
	color: var(--bw-primary-text);
}

.start_bookingworks #bottomPanel > #nextButton:hover,
.start_bookingworks #bookingworks_schedulePage .bookingButton:hover,
.start_bookingworks #bookingworks_serviceDetails .select_date_button:hover {
	background-color: var(--bw-primary-hover);
}

/* ============================================================
   3. 入力フォーム・確認ページ・完了ページ
   ============================================================ */

.start_bookingworks #bookingworks_inputFormPanel .title_in_form,
.start_bookingworks #bookingworks-loginform .title_in_form,
.start_bookingworks #bookingworks-user-form .title_in_form,
.start_bookingworks #bookingworks-user-edit-form .title_in_form,
.start_bookingworks #bookingworks_myBookingDetails .selectedDate {
	font-size: 1.3em;
	font-weight: 600;
	padding: 14px 8px;
	letter-spacing: 0.01em;
}

.start_bookingworks #bookingworks_inputFormPanel .row,
.start_bookingworks #bookingworks_myBookingDetails .row,
.start_bookingworks #bookingworks_serviceDetails .row,
.start_bookingworks #bookingworks_myBookingDetailsFroVisitor .row,
.start_bookingworks #bookingworks-user-form .row,
.start_bookingworks #bookingworks-loginform .row,
.start_bookingworks #bookingworks-user-edit-form .row {
	padding: 14px 16px;
}

/* 項目名 */
.start_bookingworks #bookingworks_inputFormPanel .name,
.start_bookingworks #bookingworks_serviceDetails .name,
.start_bookingworks #bookingworks_myBookingDetailsFroVisitor .name,
.start_bookingworks #bookingworks_myBookingDetails_panel .name,
.start_bookingworks #bookingworks-user-form .name,
.start_bookingworks #bookingworks-loginform .name,
.start_bookingworks #bookingworks-user-edit-form .name {
	font-size: 0.92em;
	font-weight: 600;
	letter-spacing: 0.02em;
	padding-bottom: 6px;
}

/* 値(確認・完了・予約詳細) */
.start_bookingworks #bookingworks_inputFormPanel .value,
.start_bookingworks #bookingworks_serviceDetails .value,
.start_bookingworks #bookingworks_myBookingDetailsFroVisitor .value,
.start_bookingworks #bookingworks_myBookingDetails_panel .value {
	font-size: max(1em, 16px);
	line-height: 1.5;
	word-break: break-word;
}

.start_bookingworks #bookingworks_inputFormPanel.booking_completed_panel .row .value,
.start_bookingworks #bookingworks_inputFormPanel .booking_confirmed ~ .row .value,
.start_bookingworks #bookingworks_myBookingDetailsFroVisitor .value,
.start_bookingworks #bookingworks_myBookingDetails_panel .value {
	font-weight: 600;
}

/* 予約日時・サービス・合計金額を強調 */
.start_bookingworks #bookingworks_inputFormPanel .bookingTime,
.start_bookingworks #bookingworks_myBookingDetailsFroVisitor .bookingTime,
.start_bookingworks #bookingworks_myBookingDetails .bookingTime {
	font-size: 1.25em;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	margin-right: 0.3em;
}

.start_bookingworks #bookingworks_inputFormPanel .bookingSubtitle,
.start_bookingworks #bookingworks_myBookingDetailsFroVisitor .bookingSubtitle,
.start_bookingworks #bookingworks_myBookingDetails .bookingSubtitle {
	font-weight: 600;
}

.start_bookingworks #bookingworks_inputFormPanel .bookingDate,
.start_bookingworks #bookingworks_myBookingDetailsFroVisitor .bookingDate,
.start_bookingworks #bookingworks_myBookingDetails .bookingDate {
	font-weight: 600;
}

.start_bookingworks #bookingworks_inputFormPanel .total_amount .value,
.start_bookingworks #bookingworks_inputFormPanel .serviceCost,
.start_bookingworks #bookingworks_myBookingDetailsFroVisitor .serviceCost,
.start_bookingworks #bookingworks_myBookingDetails .serviceCost,
.start_bookingworks #bookingworks_myBookingDetails .planPrice {
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

.start_bookingworks #bookingworks_inputFormPanel .total_amount .value {
	font-size: 1.35em;
}

.start_bookingworks #bookingworks_inputFormPanel .serviceName,
.start_bookingworks #bookingworks_serviceDetails .serviceName,
.start_bookingworks #bookingworks_myBookingDetailsFroVisitor .serviceName,
.start_bookingworks #bookingworks_myBookingDetails .serviceName {
	font-weight: 600;
}

.start_bookingworks #bookingworks_inputFormPanel .breakdownPanel,
.start_bookingworks #bookingworks_inputFormPanel .costPerGuests {
	font-size: 0.9em;
	color: var(--bw-muted);
}

.start_bookingworks #bookingworks_inputFormPanel .description,
.start_bookingworks #bookingworks_durationStay .description {
	font-size: 0.85em;
	line-height: 1.5;
	color: var(--bw-muted);
	margin-top: 4px;
}

.start_bookingworks #bookingworks_inputFormPanel .description:empty {
	display: none;
}

/* 必須マーク */
.start_bookingworks #bookingworks_inputFormPanel .required:after,
.start_bookingworks #bookingworks-user-edit-form .required:after {
	top: 0;
	font-weight: 700;
	margin-left: 4px;
	color: var(--bw-danger);
}

/* テキスト入力・セレクト・テキストエリア */
.start_bookingworks #bookingworks_inputFormPanel .form_text,
.start_bookingworks #bookingworks-loginform .form_text,
.start_bookingworks #bookingworks-user-form .form_text,
.start_bookingworks #bookingworks-user-edit-form .form_text,
.start_bookingworks #bookingworks_inputFormPanel input[type=text],
.start_bookingworks #bookingworks_inputFormPanel input[type=email],
.start_bookingworks #bookingworks_inputFormPanel input[type=tel],
.start_bookingworks #bookingworks_inputFormPanel input[type=number],
.start_bookingworks #bookingworks_inputFormPanel input[type=password],
.start_bookingworks #bookingworks_inputFormPanel select,
.start_bookingworks #bookingworks_inputFormPanel textarea,
.start_bookingworks #bookingworks-user-form input[type=text],
.start_bookingworks #bookingworks-user-form input[type=email],
.start_bookingworks #bookingworks-user-form input[type=tel],
.start_bookingworks #bookingworks-user-form input[type=number],
.start_bookingworks #bookingworks-user-form input[type=password],
.start_bookingworks #bookingworks-user-form select,
.start_bookingworks #bookingworks-user-form textarea,
.start_bookingworks #bookingworks-loginform input[type=text],
.start_bookingworks #bookingworks-loginform input[type=password],
.start_bookingworks #bookingworks-user-edit-form input[type=text],
.start_bookingworks #bookingworks-user-edit-form input[type=email],
.start_bookingworks #bookingworks-user-edit-form input[type=tel],
.start_bookingworks #bookingworks-user-edit-form input[type=number],
.start_bookingworks #bookingworks-user-edit-form input[type=password],
.start_bookingworks #bookingworks-user-edit-form select,
.start_bookingworks #bookingworks-user-edit-form textarea,
.start_bookingworks #bookingworks_durationStay select {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--bw-border);
	border-radius: var(--bw-radius-sm);
	background-color: #fff;
	color: var(--bw-secondary-text);
	font-family: inherit;
	font-size: max(1em, 16px);
	line-height: 1.4;
	box-shadow: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.start_bookingworks #bookingworks_inputFormPanel select,
.start_bookingworks #bookingworks-user-form select,
.start_bookingworks #bookingworks-user-edit-form select,
.start_bookingworks #bookingworks_durationStay select {
	padding-right: 36px;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%236b7280' stroke-width='1.6' d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	-webkit-appearance: none;
	appearance: none;
}

.start_bookingworks #bookingworks_inputFormPanel textarea {
	min-height: 7em;
	resize: vertical;
}

.start_bookingworks #bookingworks_inputFormPanel .form_text:focus,
.start_bookingworks #bookingworks_inputFormPanel select:focus,
.start_bookingworks #bookingworks_inputFormPanel textarea:focus,
.start_bookingworks #bookingworks-loginform .form_text:focus,
.start_bookingworks #bookingworks-user-form .form_text:focus,
.start_bookingworks #bookingworks-user-form select:focus,
.start_bookingworks #bookingworks-user-edit-form .form_text:focus,
.start_bookingworks #bookingworks-user-edit-form select:focus,
.start_bookingworks #bookingworks_durationStay select:focus {
	outline: none;
	border-color: var(--bw-accent);
	box-shadow: 0 0 0 3px var(--bw-focus);
}

.start_bookingworks #bookingworks_inputFormPanel .error_empty_value,
.start_bookingworks #bookingworks_serviceDetails .error_empty_value,
.start_bookingworks #bookingworks-user-form .error_empty_value,
.start_bookingworks #bookingworks-user-edit-form .error_empty_value,
.start_bookingworks #bookingworks_durationStay .error_empty_value {
	border-color: var(--bw-danger);
	background-color: #fff5f5;
}

/* チェックボックス・ラジオ */
.start_bookingworks #bookingworks_inputFormPanel input[type=checkbox],
.start_bookingworks #bookingworks_inputFormPanel input[type=radio],
.start_bookingworks #bookingworks-user-form input[type=checkbox],
.start_bookingworks #bookingworks-user-edit-form input[type=checkbox],
.start_bookingworks #bookingworks_schedulePage input[type=checkbox],
.start_bookingworks #optionsMainPanel input[type=checkbox],
.start_bookingworks #bookingworks_servicePage input[type=checkbox] {
	width: 18px;
	height: 18px;
	margin: 0 8px 0 0;
	vertical-align: -3px;
	accent-color: var(--bw-accent);
	cursor: pointer;
}

.start_bookingworks #bookingworks_inputFormPanel label {
	align-items: center;
	gap: 4px;
	padding: 6px 0;
	margin-bottom: 0;
	cursor: pointer;
	font-size: max(1em, 16px);
}

.start_bookingworks #bookingworks_inputFormPanel .radio_title {
	line-height: 1.4;
}

/* ボタン */
.start_bookingworks #bookingworks_inputFormPanel .book_now_button,
.start_bookingworks #bookingworks_inputFormPanel .next_page_button,
.start_bookingworks #bookingworks-subscription_form .book_now_button,
.start_bookingworks #bookingworks_inputFormPanel .return_form_button,
.start_bookingworks #bookingworks_inputFormPanel .editButton,
.start_bookingworks #bookingworks_inputFormPanel .applyCouponButton,
.start_bookingworks #bookingworks_myBookingDetails .returnButton,
.start_bookingworks #bookingworks_myBookingDetails .cancelButton,
.start_bookingworks #bookingworks-memberActionPanel button,
.start_bookingworks #bookingworks-memberActionPanel input[type=submit],
.start_bookingworks #bookingworks-loginform button,
.start_bookingworks #bookingworks-loginform input[type=submit],
.start_bookingworks #bookingworks-user-form button,
.start_bookingworks #bookingworks-user-edit-form button {
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	font-family: inherit;
	font-size: max(1.05em, 16px);
	font-weight: 600;
	line-height: 1.3;
	padding: 13px 20px;
	min-height: 48px;
	border: 1px solid var(--bw-primary);
	border-radius: var(--bw-radius-sm);
	background-color: var(--bw-primary);
	color: var(--bw-primary-text);
	cursor: pointer;
	text-shadow: none;
	box-shadow: none;
	transition: background-color 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
}

.start_bookingworks #bookingworks_inputFormPanel .book_now_button:hover,
.start_bookingworks #bookingworks_inputFormPanel .next_page_button:hover,
.start_bookingworks #bookingworks-subscription_form .book_now_button:hover,
.start_bookingworks #bookingworks-memberActionPanel button:hover,
.start_bookingworks #bookingworks-loginform button:hover,
.start_bookingworks #bookingworks-user-form button:hover,
.start_bookingworks #bookingworks-user-edit-form button:hover {
	background-color: var(--bw-primary-hover);
	border-color: var(--bw-primary-hover);
}

.start_bookingworks #bookingworks_inputFormPanel .book_now_button:focus-visible,
.start_bookingworks #bookingworks_inputFormPanel .next_page_button:focus-visible,
.start_bookingworks #bookingworks_inputFormPanel .return_form_button:focus-visible,
.start_bookingworks #bottomPanel > button:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px var(--bw-focus);
}

.start_bookingworks #bookingworks_inputFormPanel .book_now_button:disabled,
.start_bookingworks #bookingworks_inputFormPanel .next_page_button:disabled,
.start_bookingworks #bookingworks_inputFormPanel .book_now_button[disabled],
.start_bookingworks #bookingworks_inputFormPanel .next_page_button[disabled] {
	opacity: 0.5;
	cursor: default;
}

/* 第2ボタン(戻る・編集・キャンセル) */
.start_bookingworks #bookingworks_inputFormPanel .return_form_button,
.start_bookingworks #bookingworks_inputFormPanel .editButton,
.start_bookingworks #bookingworks_inputFormPanel .applyCouponButton,
.start_bookingworks #bookingworks_myBookingDetails .returnButton,
.start_bookingworks #bookingworks_myBookingDetails .cancelButton {
	background-color: #eeeeee;
	border-color: var(--bw-border);
	color: var(--bw-secondary-text);
	font-weight: 600;
	min-height: 46px;
}

.start_bookingworks #bookingworks_inputFormPanel .return_form_button:hover,
.start_bookingworks #bookingworks_inputFormPanel .editButton:hover,
.start_bookingworks #bookingworks_inputFormPanel .applyCouponButton:hover,
.start_bookingworks #bookingworks_myBookingDetails .returnButton:hover {
	background-color: rgba(0, 0, 0, 0.04);
}

.start_bookingworks #bookingworks_myBookingDetails .cancelButton {
	color: var(--bw-danger);
	border-color: var(--bw-danger);
}

.start_bookingworks #bookingworks_inputFormPanel .editButton,
.start_bookingworks #bookingworks_inputFormPanel .applyCouponButton {
	font-size: 0.9em;
	padding: 8px 14px;
	min-height: 36px;
}

.start_bookingworks #bookingworks_inputFormPanel .bottomBarPanel,
.start_bookingworks #bookingworks_pay_with_stripe_konbini .bottomBarPanel {
	margin-top: 12px;
}

.start_bookingworks #bookingworks_inputFormPanel .orLabel,
.start_bookingworks #bookingworks-subscription_form .orLabel {
	color: var(--bw-muted);
	font-size: 0.9em;
}

/* エラー表示 */
.start_bookingworks #bookingworks_inputFormPanel .bookingErrorMessage {
	font-size: 1.1em;
	font-weight: 600;
	padding: 12px 14px;
	margin: 8px 0;
	border: 1px solid #fecaca;
	border-radius: var(--bw-radius-sm);
	background-color: #fef2f2;
	color: #b91c1c;
	text-align: left;
}

.start_bookingworks #bookingworks_inputFormPanel .processing-text {
	color: var(--bw-muted);
}

/* 確認ページ・完了ページ */
.start_bookingworks #bookingworks_inputFormPanel .title_in_form.booking_completed,
.start_bookingworks #bookingworks_inputFormPanel .title_in_form.booking_confirmed {
	font-size: 1.4em;
}

.start_bookingworks #bookingworks_inputFormPanel .booking_confirmed ~ .row .value,
.start_bookingworks #bookingworks_inputFormPanel.booking_completed_panel .row .value {
	font-size: max(1.05em, 17px);
}

.start_bookingworks #bookingworks_inputFormPanel .booking_confirmed ~ .row .name,
.start_bookingworks #bookingworks_inputFormPanel.booking_completed_panel .row .name {
	color: var(--bw-muted);
}

/* 認証コード入力モーダル */
.start_bookingworks #bookingworks_verificationCodeContent {
	width: calc(100% - 32px);
	padding: 28px 24px;
	border-radius: 14px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.28);
	line-height: 1.6;
}

.start_bookingworks #bookingworks_verificationCodeContent .notifications {
	font-weight: 600;
}

.start_bookingworks #bookingworks_verificationCodeContent .address {
	font-weight: 600;
	word-break: break-all;
}

.start_bookingworks #bookingworks_verificationCodeContent input {
	box-sizing: border-box;
	width: 100%;
	margin: 12px 0;
	padding: 12px 14px;
	border: 1px solid var(--bw-border);
	border-radius: var(--bw-radius-sm);
	font-size: 1.5em;
	font-weight: 600;
	letter-spacing: 0.3em;
	text-align: center;
	font-variant-numeric: tabular-nums;
}

.start_bookingworks #bookingworks_verificationCodeContent input:focus {
	outline: none;
	border-color: var(--bw-accent);
	box-shadow: 0 0 0 3px var(--bw-focus);
}

.start_bookingworks #bookingworks_verificationCodeContent button {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	font-family: inherit;
	font-size: max(1.05em, 16px);
	font-weight: 600;
	padding: 13px 20px;
	min-height: 48px;
	border: 0;
	border-radius: var(--bw-radius-sm);
	background-color: var(--bw-primary);
	color: var(--bw-primary-text);
	cursor: pointer;
}

/* ============================================================
   4. 会員メニュー・予約履歴
   ============================================================ */

.start_bookingworks #bookingworks-memberActionPanel .login,
.start_bookingworks #bookingworks-memberActionPanel .logout,
.start_bookingworks #bookingworks-memberActionPanel .register,
.start_bookingworks #bookingworks-memberActionPanel .edit {
	display: inline-block;
	padding: 8px 14px;
	margin: 4px 6px 4px 0;
	border: 1px solid var(--bw-border);
	border-radius: 999px;
	font-size: 0.9em;
	font-weight: 600;
	line-height: 1.3;
	cursor: pointer;
	transition: background-color 0.15s ease;
}

.start_bookingworks #bookingworks-memberActionPanel .login:hover,
.start_bookingworks #bookingworks-memberActionPanel .logout:hover,
.start_bookingworks #bookingworks-memberActionPanel .register:hover,
.start_bookingworks #bookingworks-memberActionPanel .edit:hover {
	background-color: rgba(0, 0, 0, 0.05);
}

.start_bookingworks #bookingworks-memberActionPanel .displayName {
	font-weight: 600;
}

.start_bookingworks #bookingworks_myBookingHistoryTable th {
	font-weight: 600;
	font-size: 0.9em;
}

.start_bookingworks #bookingworks_myBookingHistoryTable td,
.start_bookingworks #bookingworks_myBookingHistoryTable th {
	padding: 10px 12px;
}

.start_bookingworks #bookingworks_myBookingHistoryTable .pendingLabel,
.start_bookingworks #bookingworks_myBookingHistoryTable .approvedLabel,
.start_bookingworks #bookingworks_myBookingHistoryTable .canceledLabel {
	border-radius: 999px;
	padding: 3px 10px;
	font-size: 0.85em;
	font-weight: 600;
}

/* ============================================================
   5. 通知(nonceエラー等)
   ============================================================ */

.start_bookingworks .bookingworks_nonce_error,
.start_bookingworks #bookingworks_json_format_error_panel {
	border-radius: var(--bw-radius-sm);
	line-height: 1.6;
}

/* ============================================================
   6. スマートフォン
   ============================================================ */

@media only screen and (max-width: 480px) {

	.start_bookingworks #bookingworks_calendarPage .calendarHeader {
		padding: 10px 2px;
		font-size: 1.1em;
	}

	.start_bookingworks #bookingworks_calendarPage .day_slot {
		height: 3.8em;
	}

	.start_bookingworks #bookingworks_calendarPage .week_slot {
		font-size: 0.8em;
	}

	.start_bookingworks #bookingworks_schedulePage .selectedDate {
		font-size: 1.15em;
	}

	.start_bookingworks #bookingworks_schedulePage .selectable_time_slot,
	.start_bookingworks #bookingworks_schedulePage .selectable_service_slot,
	.start_bookingworks #bookingworks_servicePage .selectable_service_slot {
		padding: 14px 12px;
	}

	.start_bookingworks #bookingworks_inputFormPanel .title_in_form,
	.start_bookingworks #bookingworks-loginform .title_in_form,
	.start_bookingworks #bookingworks-user-form .title_in_form,
	.start_bookingworks #bookingworks-user-edit-form .title_in_form {
		font-size: 1.2em;
		padding: 12px 8px;
	}

	.start_bookingworks #bookingworks_inputFormPanel .row,
	.start_bookingworks #bookingworks_myBookingDetails .row,
	.start_bookingworks #bookingworks_serviceDetails .row,
	.start_bookingworks #bookingworks_myBookingDetailsFroVisitor .row,
	.start_bookingworks #bookingworks-user-form .row,
	.start_bookingworks #bookingworks-loginform .row,
	.start_bookingworks #bookingworks-user-edit-form .row {
		padding: 12px 12px;
	}

	.start_bookingworks #bookingworks_inputFormPanel .total_amount .value {
		font-size: 1.25em;
	}

	.start_bookingworks #bookingworks_inputFormPanel .book_now_button,
	.start_bookingworks #bookingworks_inputFormPanel .next_page_button,
	.start_bookingworks #bookingworks_inputFormPanel .return_form_button,
	.start_bookingworks #bookingworks_verificationCodeContent button {
		width: 100%;
		min-height: 50px;
	}

	.start_bookingworks #bottomPanel > button {
		min-height: 46px;
		padding: 10px 14px;
	}

	.start_bookingworks #bookingworks_verificationCodeContent {
		padding: 22px 18px;
	}

}
