@charset "UTF-8";

/* 訪問診療とは（page-home-visit-medical.php） */
.l-hero.-cover.-home-visit-medical {
  background: url(../../images/home-visit-medical-bg.jpg) center/cover no-repeat;
}

/* 初めての方へ：FV画像を少し暗くして文字を読みやすくする */
body.begining .l-hero.-short.-cover::before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 0;
  pointer-events: none;
}

/* できること：カード間の余白を安定させる */
.home-visit-medical .c-cardsection + .c-cardsection {
  margin-top: var(--space-r);
}

/* 訪問可能エリア：地図画像 */
.home-visit-medical .t-home-visit-area-map {
  margin-top: var(--space-m);
  margin-bottom: var(--space-m);
}
.home-visit-medical .t-home-visit-area-map img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--round-xs);
}

.home-visit-medical .hvm-lead {
  background: linear-gradient(135deg, #fff7f5 0%, #fff 62%, rgba(255, 152, 136, 0.12) 100%);
  border: 1px solid rgba(255, 152, 136, 0.26);
  border-radius: var(--round-r);
  padding: clamp(2.4rem, 1.58rem + 3.5vw, 4.8rem);
}

.home-visit-medical .hvm-lead__catch {
  color: var(--color-brand-primary);
  font-family: var(--font-heading);
  font-size: clamp(2rem, 1.726rem + 1.17vw, 2.8rem);
  line-height: 1.6;
  margin-bottom: var(--space-s);
}

.home-visit-medical .hvm-pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: var(--space-s);
}

.home-visit-medical .hvm-pill-list li {
  background: #fff;
  border: 1px solid rgba(255, 152, 136, 0.3);
  border-radius: 999px;
  color: var(--color-text-primary);
  font-size: 1.3rem;
  line-height: 1.5;
  padding: 0.7rem 1.4rem;
}

.home-visit-medical .hvm-service-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-s);
}

.home-visit-medical .hvm-service-card {
  background: #fff;
  border: 1px solid var(--color-border-secondary);
  border-radius: var(--round-xs);
  padding: var(--space-m);
}

.home-visit-medical .hvm-service-card h3 {
  color: var(--color-brand-primary);
  font-family: var(--font-heading);
  font-size: 1.6rem;
  line-height: 1.6;
  margin-bottom: 0.8rem;
}

.home-visit-medical .hvm-service-card p {
  line-height: 1.9;
}

.home-visit-medical .hvm-flow {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-s);
}

.home-visit-medical .hvm-flow__item {
  background: #fff;
  border: 1px solid var(--color-border-secondary);
  border-radius: var(--round-xs);
  padding: var(--space-m);
  position: relative;
}

.home-visit-medical .hvm-flow__num {
  color: var(--color-brand-primary);
  font-family: var(--font-en);
  font-size: 2rem;
  line-height: 1;
  margin-bottom: 0.8rem;
}

@media screen and (max-width: 768px) {
  .home-visit-medical .hvm-service-grid,
  .home-visit-medical .hvm-flow {
    grid-template-columns: 1fr;
  }
}

