/* Existing common-page visibility; mobile and print rules remain unchanged. */
@media screen and (min-width: 768px) {
  .wrapper-contact-fixed.is-contact { display: block; }
}

/* Dedicated templates have no shared header styles. Keep these rules local. */
.atruck-service-banner {
  position: fixed; right: 0; top: 212px; z-index: 990;
  font-family: "Noto Sans JP", sans-serif; font-size: 14px; line-height: 1.6;
}
.atruck-service-banner *, .atruck-service-banner *::before { box-sizing: border-box; }
.atruck-service-banner .list-contact { padding: 0; margin: 0; list-style: none; }
.atruck-service-banner .detail-contact { width: 130px; height: 100px; margin: 0 0 10px; padding: 0; }
.atruck-service-banner .detail-contact a {
  display: flex; align-items: center; justify-content: center; width: 100%; height: 100%;
  color: #fff; text-align: center; text-decoration: none; font-weight: 500;
  border-radius: 5px 0 0 5px;
}
.atruck-service-banner .detail-contact a:focus-visible { outline: 3px solid #f7c948; outline-offset: -3px; }
.atruck-service-banner .detail-contact a:hover { opacity: .8; }
.atruck-service-banner .vonds-offices-icon a { background: #e14324; }
.atruck-service-banner .vonds-offices-icon span { position: relative; padding-top: 49px; font-size: 14px; }
.atruck-service-banner .vonds-offices-icon span::before {
  content: ""; position: absolute; top: 2px; left: 50%; transform: translateX(-50%);
  width: 46px; height: 43px; background: #fff;
  -webkit-mask: url("https://www.a-truck.jp/wp/wp-content/themes/fcvanilla/img/common/vonds-offices-icon.png") no-repeat center / contain;
  mask: url("https://www.a-truck.jp/wp/wp-content/themes/fcvanilla/img/common/vonds-offices-icon.png") no-repeat center / contain;
}
.atruck-service-banner .detail-contact.rf-banner { height: auto; }
.atruck-service-banner .rf-banner img { display: block; width: 130px; height: auto; max-width: 100%; }
.atruck-service-banner .detail-contact.mail-contact,
.atruck-service-banner .detail-contact.rf-banner-sp_only { display: none; }
@media screen and (max-width: 767px) {
  /* Keep the existing contact date fields within the mobile form width. */
  .wrapper-form .rentday .date-range { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); width: 100%; }
  .wrapper-form .rentday .date-range .wpcf7-form-control-wrap { min-width: 0; }
  .wrapper-form .rentday .date-range input[type="date"] { min-width: 0; max-width: 100%; width: 100%; }
  body:has(.atruck-service-banner) { padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px)); }
  .atruck-service-banner { top: auto; bottom: 0; left: 0; width: 100%; background: #fdd65f; padding-bottom: env(safe-area-inset-bottom, 0px); }
  .atruck-service-banner .list-contact { display: flex; width: 100%; }
  .atruck-service-banner .detail-contact { height: 64px; min-width: 0; margin: 0; }
  .atruck-service-banner .detail-contact a { border-radius: 0; }
  .atruck-service-banner .detail-contact.vonds-offices-icon,
  .atruck-service-banner .detail-contact.mail-contact { display: block; flex: 1 1 25%; width: 25%; }
  .atruck-service-banner .vonds-offices-icon span { padding-top: 29px; font-size: 12px; }
  .atruck-service-banner .vonds-offices-icon span::before { top: 0; width: 26px; height: 24px; }
  .atruck-service-banner .detail-contact.mail-contact a { flex-direction: column; gap: 5px; background: #072982; font-size: 12px; }
  .atruck-service-banner .mail-contact img { width: 20px; height: 20px; }
  .atruck-service-banner .detail-contact.rf-banner { display: none; }
  .atruck-service-banner .detail-contact.rf-banner-sp_only { display: block; flex: 2 1 50%; width: 50%; }
  .atruck-service-banner .rf-banner-sp_only a { flex-direction: column; gap: 5px; background: #fdd65f; }
  .atruck-service-banner .rf-banner-sp_only p { padding: 0; margin: 0; white-space: nowrap; }
  .atruck-service-banner .rf-banner-sp_only a .rf-banner-text1 { font-size: 14px; font-weight: bold; color: #f06; }
  .atruck-service-banner .rf-banner-sp_only a .rf-banner-text2 { font-size: 12px; color: #053980; }
}
@media print { .atruck-service-banner { display: none; } }
