.suggestion-wrapper,
.suggestion-car-wrapper{
	position: absolute;
	top: 0;
	left: 0;
	padding: 7px 0px;
	border: 1px solid #999;
	background-color: #fff;
	box-shadow: 0px 0px 5px rgb(0 0 0 / 50%);
	z-index: 10;
	text-align: left;
	max-width: 85vw;
}
.suggestion-wrapper .suggestion-line,
.suggestion-car-wrapper .suggestion-car-line{
	font-size: 13px;
	padding: 2px 15px;
	cursor: pointer;
	white-space: nowrap;
}
@media screen and (max-width: 569px) {
  .suggestion-wrapper .suggestion-line,
  .suggestion-car-wrapper .suggestion-car-line {
    white-space: normal;
  }
}
.suggestion-wrapper .suggestion-line:hover,
.suggestion-car-wrapper .suggestion-car-line:hover{
	background-color: #eef;
}
.suggestion-wrapper .suggestion-line.selected,
.suggestion-car-wrapper .suggestion-car-line.selected{
	background-color: #eef;
}

.suggestion-wrapper .suggestion-sub,
.suggestion-car-wrapper .suggestion-sub{
	display: inline-block;
	font-size: 11px;
	color: #999;
	margin-left: 10px;
}
#PickupPosBlock,
#DeliveryPosBlock{
	margin-bottom: 8px;
}
#PickupPosOtherPlace,
#DeliveryPosOtherPlace{
	display: none;
}
#PickupPosOtherPlace.open,
#DeliveryPosOtherPlace.open{
	display: block;
}

.pd-info .form-control.pos-number{
	width: 50%;
	margin-right: 5px;
}
.pd-info .form-control.address{
	margin-right: 5px;
}


/*=======================================
????
=======================================*/
.p-mycarCalendar__text {
	text-align: center;
	margin: 10px auto 40px;
}
.p-mycarCalendar__inner {
	max-width: 674px;
	width: 100%;
	margin: auto;
}
.p-mycarCalendar__table {
	width: 100%;
	margin: 0 auto 37px;
	table-layout: fixed;
	border-left: 1px solid #CDCDCD;
}
.p-mycarCalendar__table .row-heading {
	background-color: #00A2E9;
	color: #fff;
	text-align: center;
	height: 28px;
	vertical-align: middle;
}
.p-mycarCalendar__table .col-heading:not(:last-child) {
	border-right: 1px solid #fff;
}
.p-mycarCalendar__table .row-notSelect,.p-mycarCalendar__table .col.col-notSelect {
	background-color: #E8E8E8;
}
.p-mycarCalendar__table .col {
	border-right: 1px solid #CDCDCD;
	border-bottom: 1px solid #CDCDCD;
	height: 33px;
	text-align: center;
	vertical-align: middle;
	font-size: 2rem;
}
.p-mycarCalendar__table .col.col-day {
	font-size: 1.6rem;
}
.p-mycarCalendar__table .col.saturday {
	color: #007BBC;
}
.p-mycarCalendar__table .col.sunday {
	color: #CC0000;
}
.p-mycarCalendar__table .col.col-red {
	background-color: #F8DDDD;
}
.p-mycarCalendar__table .col .icon-pickup , .p-mycarCalendar__table .col .icon-delivery {
	border-radius: 5px;
	font-size: 1.2rem;
	font-weight: bold;
	text-align: center;
	padding: 1px 12px;
	color: #fff;
	display: inline-block;
}
.p-mycarCalendar__table .col .icon-pickup {
	background-color: #F7A016;
}
.p-mycarCalendar__table .col .icon-delivery {
	background-color: #199322;
}
.row-labelMonthly {
	background-color: #67CBF7;
	color: #fff;
	text-align: center;
	height: 28px;
	vertical-align: middle;
}
.p-mycarCalendar__btnSelect {
	background-color: transparent;
	border: none;
	font-size: 2rem;
}
.p-mycarCalendar__textDeliveryCheck {
	display: flex;
	justify-content: left;
	align-items: center;
}
.p-mycarCalendar__textDeliveryCheck p {
	font-weight: bold;
}
.p-mycarCalendar__textDeliveryCheck label {
	display: flex;
	justify-content: left;
	align-items: center;
	margin-left: 10px;
}
.p-mycarCalendar__inner .note {
	font-size: 1.2rem;
	margin: 10px 0 16px;
}
.p-mycarCalendar__inner .remarks {
	resize: none;
	height: 81px;
}
.p-mycarCalendar__btnArea {
	margin: 18px auto 158px;
	display: flex;
	justify-content: center;
	flex-direction: row-reverse;
	align-items: center;
}
.p-mycarCalendar__btnSubmit {
	font-weight: bold;
    line-height: 1;
    text-align: center;
    border-radius: 5px;
	width: 60%;
	background: linear-gradient(to bottom, #f8f8f8 0%, #fff 21.18%, #fff 34.48%, #efefef 80.3%, #e2e2e2 100%);
    border: 2px solid #c20001;
}
.p-mycarCalendar__btnSubmit .c-btn__solidInner {
    color: #E61211;
	font-size: 1.9rem;
}
.p-mycarCalendar__btnReset {
	width: 35%;
	margin-right: 5%;
}
.detail-area-mycar__body {
	position: relative;
    background: #fff;
    border: 1px solid #D4D4D4;
    padding: 33px 40px 22px;
	text-align: center;
	margin-bottom: 38px;
}
.detail-area-mycar__body p {
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.2;
}
.detail-area-mycar__body p:first-child {
	margin-bottom: 15px;
}

.detail-area-mycar__footer .note {
	margin: 10px 0 20px;
	font-size: 1.2rem;
}
.detail-area-mycar__footer .remarks-text {
	background: #fff;
    border: 1px solid #D4D4D4;
    padding: 13px 12px;
	min-height: 100px;
}
.detail-area-mycar__footer .remarks-text span {
	font-weight: bold;
}

@media screen and (max-width: 570px) {
	.p-mycarCalendar__text {
		margin: 2.5vw 3vw;
		font-size: 1.4rem;
	}
	.p-mycarCalendar__contentWrap {
		margin: 0 5vw;
	}
	.p-mycarCalendar__table .col-heading:not(:last-child) {
		font-size: 1.2rem;
	}
	.p-mycarCalendar__table .col.col-day {
		font-size: 1.3rem;
	}
	.p-mycarCalendar__table .col {
		font-size: 1.8rem;
	}
	.p-mycarCalendar__btnSelect {
		font-size: 1.8rem;
	}
	.row-labelMonthly {
		font-size: 1.2rem;
	}
	.p-mycarCalendar__btnReset .c-btn__solidInner {
		font-size: 1.6rem;
		padding: 1.75vw 1.5vw;
	}
	.pickup-event-date-ph,
	.delivery-event-date-ph {
		display: block;
		position: absolute;
		width: 100%;
		height: 30px;
		border-radius: 3px;
		background-color: transparent;
		pointer-events: none;
		color: #bbb;
		padding: 4px 8px 3px 8px;
		font-size: 1.4rem;
	}
	.detail-area-mycar__body p {
		font-size: 1.7rem;
		line-height: 1.2;
	}
}

/* booking */
.alert_booking {
	margin-bottom: 30px;
	text-align: left;
}
.booking_table {
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #dddddd;
	border-left: 1px solid #dddddd;
}
.booking_table thead {
	height: 45px;
	background-color: #FFF2CC;
	border-right: 1px solid #dddddd;
}
.booking_table thead tr{
	margin-right: 16px;
}
.booking_table thead th {
    text-align: center;
	height: 45px;
	text-align: center;
}
.booking_table thead th {
    width: 20%;
}
.booking_table thead th:first-child {
    width: 40%;
}
.booking_table thead tr th:last-child {
	border-right: none;
}
/* .booking_table tbody tr:nth-last-child(-n+12) .booking_evt {
    cursor: not-allowed;
    pointer-events: none;
	background-color: #eeeeee;
}
.booking_table tbody tr:nth-last-child(-n+12) .booking_evt::after{
    content: "×";
} */
.booking_table tr.d_saturday, .booking_table tr.d_saturday .booking_evt, .booking_table tr.d_saturday .booking_evt_disable{
	background-color: #C9DAF8 !important;
}
.booking_table tr.d_sunday, .booking_table tr.d_holiday, .booking_table tr.d_sunday .booking_evt, .booking_table tr.d_sunday .booking_evt_disable, .booking_table tr.d_holiday .booking_evt, .booking_table tr.d_holiday .booking_evt_disable {
	background-color: #F4CCCC !important;
}
.booking_table thead tr th{
    border-right: 1px solid #dddddd;
	padding: 10px 0;
	float: left;
}
.booking_table tbody {
	width: 100%;
	height: 500px;
	overflow-y: auto;
}
.booking_table tbody tr {
	height: 35px;
	width: 100%;
}
.booking_table thead, .booking_table tbody, .booking_table tr, .booking_table td, .booking_table th{
    display:block;
}
.booking_table tbody tr td{
	width: 20%;
	height: 35px;
	float: left;
	position: relative;
    border-right: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
	text-align: center;
	padding-top:5px;
	padding-bottom:5px;
	/* min-width: 80px;
	max-width: 150px; */
}
.booking_table tbody tr td:first-child{
	/* min-width: 120px; */
	width: 40%;
	padding-left: 5px;
	padding-right: 5px;
}
.booking_table tr .booking_evt {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	padding-top: 5px;
	padding-bottom: 5px;
	width: 100%;
	height: 100%;
	background-color: transparent;
	color: #333333;
	border: 1px solid transparent;
}
.booking_table tbody tr td .booking_evt::after{
    content: "○";
	margin: 0 auto;
}
.booking_table tr .booking_evt_disable {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	padding-top: 5px;
	padding-bottom: 5px;
	width: 100%;
	height: 100%;
	background-color: #eeeeee;
	color: #333333;
	border: 1px solid transparent;
	cursor: not-allowed;
    pointer-events: none;
}
.booking_table tbody tr td .booking_evt_disable::after{
	margin: 0 auto;
}
.booking_table tbody tr.d_concerned td .booking_evt::after{
    content: "△";
}
.booking_table tr.d_saturday .booking_evt::after, .booking_table tr.d_sunday .booking_evt::after, .booking_table tr.d_holiday .booking_evt::after, .booking_table tr .booking_evt.disable::after, .booking_table tr .booking_evt_disable::after {
	content: "×";
}
.booking_table tr.d_notworking .booking_evt::after {
	content: "×";
}
.booking_table tbody tr td .booking_evt.pickupDate::after {
	content: "引取" !important;
	color: #ffffff;
}
.booking_table tbody tr td .booking_evt.deliveryDate::after {
	content: "配送" !important;
	color: #ffffff;
}
.booking_table tr.d_saturday .booking_evt, .booking_table tr.d_sunday, .booking_table tr.d_holiday .booking_evt, .booking_table tr.d_notworking .booking_evt, .booking_table tr .booking_evt.disable {
	cursor: not-allowed;
    pointer-events: none;
}
.booking_table tr .booking_evt.disable {
	background-color: #eeeeee;
	cursor: not-allowed;
    pointer-events: none;
}
.booking_table tr .booking_evt.disable.pickupDate, .booking_table tr .booking_evt.disable.deliveryDate {
	background-color: #eeeeee;
	cursor: pointer;
    pointer-events: auto;
}
.booking_table tr .booking_evt.active {
	background-color: #ffffff !important;
	cursor: pointer !important;
    pointer-events: auto !important;
}
.booking_table tr .booking_evt.active::after {
	content: "○" !important;
}
.booking_table tr .booking_evt.pickupDate {
	background-color: #0F9D58 !important;
	border: 1px solid #ffffff;
}
.booking_table tr .booking_evt.deliveryDate {
	background-color: #F29766 !important;
	border: 1px solid #ffffff;
}
/* .booking_table tr.d_saturday  .booking_evt {
	background-color: #C9DAF8;
}
.booking_table tr.d_sunday .booking_evt, .booking_table tr.d_holiday .booking_evt {
	background-color: #F4CCCC;
} */
.booking__wrap .booking-summary {
	margin-top: 30px;
}
.booking__wrap .booking-summary .box{
	padding: 15px;
	border: 1px solid #dddddd;
}
.booking__wrap .booking-summary .list {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}
.booking__wrap .booking-summary .list.list-timebooking {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}
.booking__wrap .booking-summary input{
	border-color: transparent;
	background-color: transparent;
}
.booking__wrap .booking-summary .list-title {
	font-weight: bold;
}
.booking__wrap .booking-summary .list-timebooking input{
	min-width: 270px;
	font-size: 20px;
}
.booking__wrap .booking-summary .list-timebooking .list-title {
	font-size: 20px;
}
@media screen and (min-width: 768px) {
	.booking__wrap .booking-summary .list-text {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 70%;
	}
}
@media screen and (max-width: 768px) {
	.booking_table thead tr {
		margin-right: 0;
	}
	.booking__wrap .booking-summary .list-timebooking .list-title {
		font-size: 18px;
	}
	.booking__wrap .booking-summary .list-text {
		display: block;
		width: 70%;
	}
	.booking__wrap .booking-summary .list-timebooking input {
		width: 100%;
		font-size: 18px;
	}
}
.booking__wrap .booking-summary .list-text #PickupTimeSpecificationPriceLabel, .booking__wrap .booking-summary .list-text #DeliveryTimeSpecificationPriceLabel {
	padding-right: 0;
	padding-left: 15px;
	min-width: 100px;
	text-align: right;
}
.booking__wrap .booking-summary .list-text.checkbox {
	width: 100%;
	margin-left: 40px;
}
.c-modalOptionBooking {
	padding: 0px;
}
.c-modalOptionBooking .c-modal__btnClose {
	top: 5px;
}
.c-modalOptionBooking .modal_bottom button {
	margin: 20px auto 0px;
}
#page-shipping-detail .shipping-detail-archive .c-modalOptionBooking .booking__wrap {
	margin: 0;
}
#page-shipping-detail .shipping-detail-archive .c-modalOptionBooking .booking__wrap .group-title{
	font-weight: bold;
	margin-bottom: 30px;
}
@media screen and (max-width:1024px) {
	#page-shipping-detail .shipping-detail-archive .c-modalOptionBooking .booking__wrap {
		padding-top: 40px;
	}
}
@media screen and (min-width:768px) {
	.c-modalOptionBooking {
		max-width: 700px;
	}
	.c-modalOptionBooking .modal_bottom {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.c-modalOptionBooking .modal_bottom button {
		max-width: 45%;
	}
}

@media screen and (max-width:620px) {
	.c-modalOptionBooking {
		width: 100%;
		padding: 0;
	}
	.c-modalOptionBooking .booking-daily {
		overflow-x: auto;
	}
	.booking_table tbody tr {
		height: 45px;
		width: 100%;
	}
	.booking_table tbody tr td {
		height: 45px;
		font-size: 15px;
	}
}
@media screen and (max-width:420px) {
	.booking_table tbody tr {
		height: 60px;
	}
	.booking_table tbody tr td {
		height: 60px;
	}
}

/*=======================================
休暇のお知らせ
=======================================*/
.page-top-news {
	margin: 20px auto;
	max-width: 1000px;
	border: 2px solid #E61211;
	padding: 10px 20px;
	border-radius: 5px;
}
.page-top-news h2 {
  position: relative;
  cursor: pointer;
}
.page-top-news h2:hover {
	opacity: 0.7;
}
.page-top-news h2::after {
  content: "";
  display: block;
  position: absolute;
  background: url("/img/common/icon_arw_5.png") center center/100% 100% no-repeat;
  top: -3px;
  right: 10px;
  width: 32px;
  height: 32px;
  transition: all 0.3s;
}
.page-top-news h2.rev::after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  top: -2px;
  right: 10px;
  width: 32px;
  height: 32px;
  transition: all 0.3s;
}
.page-top-news p {
	display: none;
	margin-top: 20px;
}
.page-top-news span {
  color: #17559D;
  font-weight: bold;
  padding-right: 10px;
}

.pickup-event-date-ph,
.delivery-event-date-ph {
	display: block;
	position: absolute;
	width: 100%;
	height: 30px;
	border-radius: 3px;
	background-color: transparent;
	pointer-events: none;
	color: #bbb;
	padding: 4px 8px 3px 8px;
	font-size: 1.4rem;
}

@media screen and (max-width: 1024px) {
	.page-top-news {
		margin-left: 10px;
		margin-right: 10px;
	}
}
@media screen and (max-width: 570px) {
	.page-top-news {
		font-size: 1.3rem;
		margin-left: 10px;
		margin-right: 10px;
	}
	.page-top-news span {
		display: block;
	}
	.page-top-news h2::after {
	  top: -6px;
	  right: -15px;
	}
	.page-top-news h2.rev::after {
	  top: -6px;
	  right: -15px;
	}
	.pickup-event-date,
	.delivery-event-date {
		position: relative;
	}

}
.car-img-note {
	color: #007BBC;
	margin-bottom: 5px;
}

.position-relative {
	position: relative;
}

/*  Com TOP 車名下注意書き用クラスを追加
	2025.03.28 Miwa
*/
.car_notice {
	color:red;
	font-weight: bold;
	padding-left: 30px;
	margin-bottom: 14px;
}

.suggestion-wrapper .suggestion-status,
.suggestion-car-wrapper .suggestion-car-status {
    font-size: 13px;
    padding: 8px 15px;
    color: #666;
    white-space: nowrap;
}
.suggestion-wrapper .suggestion-error,
.suggestion-car-wrapper .suggestion-car-error {
    color: #c00;
}
.suggestion-wrapper .suggestion-loading::before,
.suggestion-car-wrapper .suggestion-car-loading::before {
    content: '';
    display: inline-block;
    width: 12px;
    height: 12px;
    border: 2px solid #ccc;
    border-top-color: #555;
    border-radius: 50%;
    animation: suggestion-spin 0.6s linear infinite;
    margin-right: 6px;
    vertical-align: middle;
}
@keyframes suggestion-spin {
    to { transform: rotate(360deg); }
}