@charset "utf-8";
/* カレンダーモーダル ================= */
/* モーダル全体 */
.time-modal{
	position: fixed;
	inset: 0;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .35s ease, visibility .35s ease;
}

/* 背景 */
.time-modal__bg{
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  transition: opacity .35s ease;
}
.time-modal.is-show .time-modal__bg{
  opacity: 1;
}
/* 白いコンテンツ枠 */
.time-modal__box{
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(90vw, 600px);
  padding: 32px 24px;
  background: #fff;
  transform: translate(-50%, -50%) translateY(12px);
  opacity: 0;
  transition: opacity .35s ease, transform .35s ease;
}
.time-modal.is-show{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.time-modal.is-show .time-modal__box{
  opacity: 1;
  transform: translate(-50%, -50%) translateY(0);
}

/* タイトル */
p#copy_start{
	font-size: 1.125rem;
	font-weight: 600;
	margin: 10px 0 12px 0;
}
p#copy_start,
p#copy_end{
	text-align: center;
}
#timeModalLabel{
	margin: 0 0 20px;
	text-align: center;
	line-height: 1.6;
	font-size: 1.125rem;
	font-weight: 400;
}
/* ボタン一覧 */
.time-modal__buttons{
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 12px;
	margin: 0 auto 40px auto;
	padding: 0;
	list-style: none;
	width: min(100%, 300px);

}

/* 時間帯ボタン */
.time-btn{
	appearance: none;
	border: 1px solid #CCCCCC;
	background: #F8F9F9;
	padding: 6px 20px;
	cursor: pointer;
	font: inherit;
	width: 100%;
	letter-spacing: 0.25em;
	font-weight: bold;
}
.time-btn:hover{
	appearance: none;
	border: 1px solid #A2948B;
	background: #A2948B;
	color: #ffffff;
}
.time-btn:disabled,
.time-btn.is-disabled{
  opacity: 0.35;
  background: #ccc;
  color: #666;
  border-color: #ccc;
  cursor: not-allowed;
  pointer-events: none;
}
/* 閉じるボタンの段落 */
.time-modal__close{
	position: absolute;
	right: 0;
	bottom: -56px;
	margin: 0;
	text-align: right;
	width: 100%;
}

/* 閉じるボタン */
#timeModalClose{
	appearance: none;
	padding: 10px 18px;
	cursor: pointer;
	font: inherit;
	background: none;
	border: none;
	color: #fff;
	width: 100%;
	text-align: right;
}
/* 選択結果表示 */
.wish-result span{
	height: 44px;
	line-height: 36px;
	display: inline-block;
	font-size: 1.0625rem;
}
.wish-result > span:first-child{
	border: 1px solid #ddd;
	padding: 4px 12px;
	margin-right: 10px;
	width: 215px;
}
.detail_contact form .wish-result span select{
	border: 1px solid #ddd;
	height: 44px;
	padding: 4px 12px;
	line-height: 36px;
	font-size: 1.0625rem;
	margin-right: 10px;
}
button.wish-reset-btn{
	border: 1px solid #CCCCCC;
	font-size: 1rem;
	line-height: 42px;
	width: 150px;
	border-radius: 4px;
}
/* SP */
.type_sp .wish-result{
	flex-wrap: wrap;
	justify-content: space-between;
}
.type_sp #wish01_result_text,
.type_sp #wish02_result_text{
	margin-bottom: 10px;
	margin-right: 0;
	width: 100%;
}
.type_sp #wish01_hour,
.type_sp #wish02_hour,
.type_sp .wish-result span{
	width: 100%;
	display: inline-block;
}
.type_sp .wish-result span.wish-result-hour{
	display: inline-block;
	width: calc( 50% - 10px);
}
.type_sp .type_sp .wish-result  select{
	border: 1px solid red;
	width: calc( 50vw - 10px );
}