@charset "UTF-8";

/* =============================================================================
 *  datepicker.css（SP）  面接のご希望日時用カレンダー
 * ========================================================================== */

/* ---- 対象の入力欄 ---- */
.hkdp_input {
	cursor: pointer;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b9a94f' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: center right 3.2vw !important;
	background-size: 4.8vw 4.8vw !important;
	padding-right: 10.6vw !important;
}

/* ---- カレンダー本体 ---- */
.hkdp {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 88vw;
	max-width: 420px;
	background: #fff;
	border: 1px solid #d9cd97;
	border-radius: 2.13vw;
	box-shadow: 0 1.06vw 4vw rgba(0, 0, 0, 0.2);
	box-sizing: border-box;
	overflow: hidden;
	font-size: 3.46vw;
	line-height: 1.4;
	color: #000;
	text-align: left;
}

/* ---- 年月と前後の月ボタン ---- */
.hkdp_head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #ffd40b;
	padding: 2.4vw 1.6vw;
}
.hkdp_title {
	font-size: 4vw;
	font-weight: bold;
	letter-spacing: 0.26vw;
}
.hkdp_nav {
	width: 9.33vw;
	height: 9.33vw;
	border: none;
	background: transparent;
	border-radius: 50%;
	overflow: hidden;
	text-indent: -9999px;
	position: relative;
	padding: 0;
}
.hkdp_nav:disabled { opacity: 0.25; }
.hkdp_nav:before {
	content: "";
	width: 2.4vw;
	height: 2.4vw;
	border-top: 0.53vw solid #000;
	border-left: 0.53vw solid #000;
	position: absolute;
	top: 50%;
	left: 50%;
	text-indent: 0;
}
.hkdp_prev:before { transform: translate(-30%, -50%) rotate(-45deg); }
.hkdp_next:before { transform: translate(-70%, -50%) rotate(135deg); }

/* ---- 日付グリッド ---- */
.hkdp_body { padding: 2.66vw 2.66vw 0 2.66vw; }
.hkdp_cal {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}
.hkdp_cal th {
	font-size: 3.2vw;
	font-weight: bold;
	padding: 1.06vw 0;
	text-align: center;
	color: #464646;
}
.hkdp_cal td {
	padding: 0.4vw;
	text-align: center;
}
.hkdp_cal .hkdp_w0 { color: #d64545; }
.hkdp_cal .hkdp_w6 { color: #3a71c1; }

.hkdp_day {
	display: block;
	width: 100%;
	height: 9.6vw;
	line-height: 9.6vw;
	padding: 0;
	border: none;
	background: transparent;
	border-radius: 1.33vw;
	font-size: 3.73vw;
	font-weight: bold;
	color: inherit;
	box-sizing: border-box;
}
.hkdp_day.is-holiday { color: #d64545; }
.hkdp_day.is-selected { background: #ffd40b; color: #000; }
.hkdp_day.is-disabled {
	color: #c9c9c9;
	background: #f5f5f5;
	text-decoration: line-through;
}

/* ---- 時間帯（CONFIG.timeSlots を設定した場合のみ表示） ---- */
.hkdp_time {
	padding: 2.66vw 2.66vw 0 2.66vw;
	border-top: 1px dashed #e0d9b8;
	margin-top: 2.66vw;
}
.hkdp_time_ttl {
	font-size: 3.2vw;
	font-weight: bold;
	margin-bottom: 1.6vw;
	color: #464646;
}
.hkdp_time_list {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
}
.hkdp_time_list li { width: 50%; padding: 0.8vw; box-sizing: border-box; }
.hkdp_time_btn {
	width: 100%;
	height: 8.53vw;
	border: 1px solid #d9cd97;
	background: #fff;
	border-radius: 1.33vw;
	font-size: 3.46vw;
	font-weight: bold;
}
.hkdp_time_btn:disabled { color: #c9c9c9; border-color: #e5e5e5; background: #f5f5f5; }

/* ---- 注意書き・操作ボタン ---- */
.hkdp_note {
	font-size: 2.93vw;
	line-height: 1.6;
	color: #767676;
	padding: 2.66vw 3.2vw 0 3.2vw;
}
.hkdp_note:empty { display: none; }
.hkdp_foot {
	display: flex;
	justify-content: flex-end;
	padding: 2.13vw 2.66vw 2.66vw 2.66vw;
}
.hkdp_btn {
	border: 1px solid #d9cd97;
	background: #fff;
	border-radius: 1.33vw;
	font-size: 3.2vw;
	font-weight: bold;
	padding: 1.6vw 3.73vw;
	margin-left: 1.6vw;
	color: #000;
}
