/* SPメニュー最上部のお問い合わせブロック（2026-10-21追加） */
.HeaderContact {
  display: none;
}

@media screen and (max-width: 640px) {
  .HeaderContact {
    display: block;
    width: 84.84375vw;
    margin: 0 0 0 auto;
    padding: 7vw 5vw 6vw;
    background: #FFF;
    text-align: center;
  }
  .HeaderContact__ttl {
    margin: 0 0 3.5vw;
    font-size: 4.2vw;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: .05em;
    color: #594A3C;
  }
  .HeaderContact__ttl span {
    padding: 0 .3em;
    background: linear-gradient(transparent 62%, var(--hc-marker) 62%, var(--hc-marker) 92%, transparent 92%);
  }
  .HeaderContact__ttl--web { --hc-marker: #FBE3E6; }
  .HeaderContact__ttl--tel { --hc-marker: #E3F0DE; margin-top: 7vw; }
  .HeaderContact__btn {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 15vw;
    padding: 0 9vw 0 5vw;
    border-radius: 999px;
    white-space: nowrap;
    line-height: 1.3;
  }
  .HeaderContact__btn::after {
    content: "";
    position: absolute;
    right: 5.5vw;
    top: 50%;
    width: 2.2vw;
    height: 2.2vw;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
  }
  .HeaderContact__btn--web {
    background: #EF949D;
    color: #FFF;
    font-size: 4vw;
    letter-spacing: .05em;
  }
  .HeaderContact__btn--tel {
    background: #E9F3E5;
    color: #5BA04A;
    font-size: 5.6vw;
    letter-spacing: .02em;
  }
  .HeaderContact__btn:hover {
    opacity: .85;
  }
  .HeaderContact__fd {
    width: 7vw;
    height: auto;
    margin-right: 2vw;
    flex-shrink: 0;
  }
  .HeaderContact__time {
    margin: 3vw 0 0;
    font-size: 3.4vw;
    font-weight: 500;
    color: #5BA04A;
  }
}
