@charset "utf-8";
/*
Theme Name: 株式会社佐藤塗装店 2026.10.09
Theme URI: 
Author: 旭広告社
Description: COMPANY official theme
Version: 1.5
*/

.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
 }
 .alignright {
	float: right;
	margin-bottom: 20px;
	margin-left: 20px;
 }
 .alignleft {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
 }
 .wp-caption,
 [class*='wp-image'] {
	display: block;
	max-width: 100% !important;
	margin-top: 1.5em;
	text-align: center;
 }
 .wp-caption-text {
	margin-top: 0;
 }


/* 初回表示でカレンダーが隠れないようにプラグインルートを表示 */
.booking-calendar > .start_booking_package,
.booking-calendar > [id^="booking-package-id-"] {
	display: block !important;
}

#booking-package_inputFormPanel {
	display: none;
}

.booking-selection-status {
	margin-top: 8px;
	font-size: 0.9rem;
	padding: 8px 12px;
	background-color: #fff3cd;
	border: 1px solid #ffecb5;
	border-radius: 4px;
	color: #664d03;
}

.visit-pref .wpcf7-form-control {
	display: block;
 }
 
 .visit-time-range,
 .visit-time-range-sat {
	margin-top: 8px;
 }
 
.visit-time-range.is-hidden,
.visit-time-range-sat.is-hidden {
	display: none;
}

 .visit-time-range label,
 .visit-time-range-sat label {
	display: inline-block;
	margin-right: 6px;
 }

.screen-reader-response {
	position: absolute;
	left: -9999px;
}

#scheduleMainPanel .selectedTimeSlotPanel {
	background-color: #e6f4ff;
	border: 1px solid #69b1ff;
}

#scheduleMainPanel .selectable_time_slot {
	position: relative;
	padding-left: 2.2em !important;
}

#scheduleMainPanel .selectable_time_slot::before {
	content: "○";
	position: absolute;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
	color: #2e7d32;
	font-weight: bold;
}

#scheduleMainPanel .selectable_time_slot.closed::before,
#scheduleMainPanel .selectable_time_slot[data-status="0"]::before {
	content: "×";
	color: #d32f2f;
}

/* カレンダー日付：選択可能な日（.available_day かつ data-onclick="1"）だけ○、不可（.pastDay等）は×。○はセル中央 */
.booking-calendar .day_slot.available_day[data-onclick="1"] {
	position: relative;
}

.booking-calendar .day_slot.available_day[data-onclick="1"]::before {
	content: "○";
	position: absolute;
	width: 100%;
	height: 100%;
display: flex;
justify-content: center;
align-items: center;
padding-top: 10px;
	color: #2e7d32;
	font-weight: bold;
	font-size: 0.9em;
	line-height: 1;
}

.booking-calendar .day_slot.pastDay,
.booking-calendar .day_slot[data-onclick="0"] {
	position: relative;
}

.booking-calendar .day_slot.pastDay::before,
.booking-calendar .day_slot[data-onclick="0"]::before {
	content: "×";
	position: absolute;
	width: 100%;
	height: 100%;
display: flex;
justify-content: center;
align-items: center;
padding-top: 10px;
	color: #d32f2f;
	font-weight: bold;
	font-size: 0.9em;
	line-height: 1;
}

.cf7-status-message {
	margin-top: 12px;
	color: #d32f2f;
}

.cf7-status-message[data-status="sent"] {
	color: #2e7d32;
}

.booking-calendar,
.booking-calendar * {
	font-size: 14px;
}


		input[type="text"],
		input[type="tel"],
		input[type="email"],
		input[type="number"],
		input[type="date"],
		input[type="time"],
		input[type="datetime-local"],
		input[type="url"],
		input[type="search"],
		textarea {
			font-size: 1.6rem;
			padding: 8px 12px;
			border: 1px solid #aaa;
			border-radius: 4px;
			width: 100%;
		}


/* バリデーションエラー時は CF7 の .wpcf7-response-output のみ表示するため非表示 */
.cf7-status-message[data-status="invalid"] {
	display: none;
}

.wpcf7-submit {
	background-color: #EF7633;
	color: #fff;
	font-size: 1.8rem;
	width: 300px;
	text-align: center;
	margin: 0 auto;
	padding: 10px 20px;
	border-radius: 50px;
	border: none;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.wpcf7-submit:hover {
	background-color: lighten(#EF7633, 10%);
}

.wpcf7-list-item {
	display: block !important;
	margin-left: 0 !important;

}


