@charset "UTF-8";
/*
トップページ専用スタイル（front-page.php）
hori-preview デザインカンプ準拠
*/
/* このデザイン内の .container はサイト共通の .container（1300px）とは別に、
   デザインカンプの1120px幅で表示する（トップページのセクション内のみに限定） */
.front-page .hero .container,
.front-page .notice-section .container,
.front-page .service-directory .container,
.front-page .services .container,
.front-page .about .container,
.front-page .first-visit .container,
.front-page .news .container,
.front-page .access .container,
.front-page .footer-cta .container {
  max-width: 1120px;
  /* 左右の余白はサイト共通のルート余白（--wp--style--root--padding-*）に統一する */
  padding-top: 0;
  padding-bottom: 0;
}

#bg-blobs {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: #FFF8F3;
  pointer-events: none;
  overflow: hidden;
}

.bg-blob {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}

.bg-blob--orange {
  width: 1200px;
  height: 1200px;
  bottom: -350px;
  left: -300px;
  background: radial-gradient(circle, rgba(228, 110, 72, 0.38) 0%, rgba(232, 122, 92, 0.24) 22%, rgba(240, 155, 110, 0.1) 48%, rgba(248, 190, 160, 0.03) 65%, rgba(255, 220, 195, 0) 75%);
  filter: blur(55px);
}

.front-page .section {
  padding: 120px 0;
  position: relative;
  overflow: hidden;
}
.front-page .section > .container,
.front-page .section > *:not(.section-blob):not(.sec-accent) {
  position: relative;
  z-index: 1;
}

/* セクション見出し共通 */
.sec-label {
  /* 太字化しても薄いopacityと小さいfont-sizeのせいで細く見えるとの指摘を受け、
     サイズを上げ、不透明度も1に戻して視認性を上げる（2026-08-06） */
  display: block;
  font-family: larken, "Cormorant Garamond", serif;
  font-size: 14px;
  letter-spacing: 0.25em;
  color: #E87A5C;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 10px;
  opacity: 1;
}

.sec-heading {
  /* 見出し前の「●」が既製のリスト記号っぽく量産感が出るとの指摘を受け廃止。
     上の英字ラベル（.sec-label）だけで十分に意匠として成立するため、
     見出し自体は記号なしのタイポグラフィのみで見せる（2026-08-06） */
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: clamp(26px, 3vw, 38px);
  font-weight: 600;
  line-height: 1.5;
  color: #3A2E2A;
  margin-bottom: 20px;
  letter-spacing: 0.06em;
}
.sec-heading em {
  font-style: normal;
  color: inherit;
}

.sec-body {
  color: #4A3D36;
  font-size: 16px;
  line-height: 2;
  max-width: 540px;
  font-weight: 500;
  letter-spacing: 0.04em;
  word-break: keep-all;
  overflow-wrap: break-word;
}

/* ボタン共通 */
.btn-text {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1.5px solid #E87A5C;
  border-radius: 100px;
  padding: 10px 24px;
  font-size: 15px;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #E87A5C;
  background: rgba(255, 255, 255, 0.6);
  transition: background 0.2s, color 0.2s, box-shadow 0.2s;
  white-space: nowrap;
  text-decoration: none;
}
.btn-text::after {
  content: "›";
  font-size: 16px;
  line-height: 1;
  transition: transform 0.18s;
}
.btn-text:hover {
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 4px 16px rgba(232, 122, 92, 0.18);
}
.btn-text:hover::after {
  transform: translateX(3px);
}

/* ============================
   ヒーロー FV
   ============================ */
.hero {
  height: 100vh;
  min-height: 500px;
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #FAE8DE 0%, #F2D0BE 45%, #E8BCA8 100%);
}

.hero-deco-text {
  position: absolute;
  top: 3%;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
  font-family: larken, "Cormorant Garamond", serif;
  font-size: clamp(80px, 13vw, 190px);
  font-weight: 500;
  color: rgba(232, 122, 92, 0.1);
  letter-spacing: 0.04em;
  pointer-events: none;
  z-index: 3;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  line-height: 1;
}

.hero-arch-wrap {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: max(164vh, 85vw);
  min-width: 500px;
  height: calc(max(164vh, 85vw) / 2);
  min-height: 400px;
  border-radius: 50% 50% 0 0/100% 100% 0 0;
  overflow: hidden;
  z-index: 2;
}

.hero-arch-img {
  width: 100%;
  height: 100%;
  background: linear-gradient(160deg, #fde0d0 0%, #f5cedc 55%, #f0c8d8 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.hero-arch-img::after {
  content: "";
  position: absolute;
  inset: 0;
  /* 暗くして白文字を読ませるのではなく、下部だけ明るく持ち上げて
     濃い色の文字を読ませる方式に変更（影・靄が不自然という指摘のため） */
  background: linear-gradient(to top, rgba(255, 248, 244, 0.65) 0%, rgba(255, 248, 244, 0.28) 32%, transparent 58%);
  pointer-events: none;
}

.hero-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center 40%;
     object-position: center 40%;
  display: block;
  opacity: 0;
  transition: opacity 1.4s ease-in-out;
}
.hero-slide.is-active {
  opacity: 1;
}

.hero-copy {
  position: absolute;
  bottom: 100px;
  left: 10%;
  z-index: 4;
}

.hero-copy-eyebrow {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
}

.hero-copy-rule {
  width: 44px;
  height: 1px;
  background: rgba(58, 46, 42, 0.35);
  flex-shrink: 0;
}

.hero-copy-since {
  font-family: larken, "Cormorant Garamond", serif;
  font-size: 10px;
  letter-spacing: 0.38em;
  color: rgba(58, 46, 42, 0.75);
  font-weight: 700;
  text-transform: uppercase;
}

.hero-copy h1 {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: clamp(28px, 3.6vw, 52px);
  font-weight: 500;
  color: #3A2E2A;
  letter-spacing: 0.08em;
  line-height: 1.4;
}

.hero-copy-tagline {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: clamp(11px, 1vw, 13px);
  color: rgba(58, 46, 42, 0.75);
  letter-spacing: 0.2em;
  font-weight: 400;
  margin-top: 22px;
  line-height: 1;
}

/* 有機的blob装飾 */
.hero-blobs {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  overflow: hidden;
}

.hero-blob {
  position: absolute;
  border-radius: 60% 40% 55% 45%/50% 55% 45% 50%;
  opacity: 0;
  animation: blobFloat 0s ease-in-out infinite alternate, blobMorph 0s ease-in-out infinite alternate, blobFadeIn 0.4s ease forwards;
}

@keyframes blobFadeIn {
  to {
    opacity: 1;
  }
}
@keyframes blobFloat {
  0% {
    transform: translateY(0) rotate(0deg);
  }
  100% {
    transform: translateY(-22px) rotate(6deg);
  }
}
@keyframes blobMorph {
  0% {
    border-radius: 60% 40% 55% 45%/50% 55% 45% 50%;
  }
  33% {
    border-radius: 45% 55% 40% 60%/60% 40% 55% 45%;
  }
  66% {
    border-radius: 55% 45% 60% 40%/45% 60% 40% 55%;
  }
  100% {
    border-radius: 40% 60% 45% 55%/55% 45% 60% 40%;
  }
}
.hero-blob--1 {
  width: clamp(180px, 20vw, 280px);
  height: clamp(160px, 18vw, 240px);
  left: 2%;
  top: 22%;
  background: radial-gradient(ellipse at 40% 40%, rgba(232, 122, 92, 0.22) 0%, rgba(255, 210, 180, 0.1) 60%, transparent 100%);
  animation-duration: 7s, 9s, 0.4s;
  animation-delay: 0s, 0s, 0.1s;
}

.hero-blob--2 {
  width: clamp(180px, 22vw, 320px);
  height: clamp(160px, 19vw, 280px);
  right: 4%;
  top: 6%;
  background: radial-gradient(ellipse at 55% 35%, rgba(230, 160, 80, 0.3) 0%, rgba(255, 220, 160, 0.13) 60%, transparent 100%);
  animation-duration: 8.5s, 11s, 0.4s;
  animation-delay: -3s, -2s, 0.2s;
}

.hero-blob--3 {
  width: clamp(70px, 9vw, 120px);
  height: clamp(60px, 8vw, 105px);
  right: 1%;
  top: 38%;
  background: radial-gradient(ellipse at 45% 50%, rgba(218, 95, 127, 0.2) 0%, rgba(253, 210, 225, 0.1) 60%, transparent 100%);
  animation-duration: 6s, 8s, 0.4s;
  animation-delay: -1.5s, -4s, 0.3s;
}

.hero-blob--4 {
  width: clamp(90px, 11vw, 150px);
  height: clamp(80px, 10vw, 135px);
  right: 5%;
  bottom: 42%;
  background: radial-gradient(ellipse at 50% 45%, rgba(106, 158, 122, 0.18) 0%, rgba(180, 220, 190, 0.08) 60%, transparent 100%);
  animation-duration: 9s, 12s, 0.4s;
  animation-delay: -4s, -1s, 0.4s;
}

.hero-blob--5 {
  width: clamp(60px, 7vw, 100px);
  height: clamp(100px, 13vw, 180px);
  left: 8%;
  top: 50%;
  background: radial-gradient(ellipse at 50% 40%, rgba(232, 122, 92, 0.16) 0%, rgba(255, 230, 210, 0.08) 60%, transparent 100%);
  animation-duration: 10s, 14s, 0.4s;
  animation-delay: -2s, -6s, 0.5s;
}

/* セクション装飾blob（共通・JSで自動生成） */
.section-blob {
  position: absolute;
  border-radius: 60% 40% 55% 45%/50% 55% 45% 50%;
  pointer-events: none;
  z-index: 0;
  animation: blobFloat 8s ease-in-out infinite alternate, blobMorph 12s ease-in-out infinite alternate;
}

.sec-accent {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
  animation: blobFloat 10s ease-in-out infinite alternate;
}

.services .sec-accent--amber {
  width: 680px;
  height: 680px;
  top: -160px;
  right: -200px;
  background: radial-gradient(circle, rgba(230, 162, 56, 0.2) 0%, rgba(240, 185, 100, 0.1) 38%, rgba(248, 210, 140, 0.04) 60%, transparent 72%);
  filter: blur(60px);
}

.about .sec-accent--pink {
  width: 720px;
  height: 720px;
  bottom: -180px;
  left: -220px;
  background: radial-gradient(circle, rgba(220, 88, 120, 0.17) 0%, rgba(238, 150, 175, 0.09) 38%, rgba(248, 190, 205, 0.04) 60%, transparent 72%);
  filter: blur(70px);
  animation-duration: 13s;
  animation-delay: -4s;
}

.first-visit .sec-accent--green {
  width: 640px;
  height: 640px;
  top: -120px;
  right: -180px;
  background: radial-gradient(circle, rgba(100, 158, 118, 0.18) 0%, rgba(148, 196, 160, 0.09) 38%, rgba(190, 220, 198, 0.04) 60%, transparent 72%);
  filter: blur(65px);
  animation-duration: 11s;
  animation-delay: -2s;
}

.news .sec-accent--coral {
  width: 580px;
  height: 580px;
  bottom: -140px;
  left: -160px;
  background: radial-gradient(circle, rgba(232, 122, 92, 0.18) 0%, rgba(242, 162, 130, 0.09) 38%, rgba(250, 198, 172, 0.04) 60%, transparent 72%);
  filter: blur(60px);
  animation-duration: 9s;
  animation-delay: -6s;
}

/* MV右下：信頼の指標カード */
.hero-stats {
  position: absolute;
  right: 4%;
  bottom: 100px;
  z-index: 4;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: flex-end;
}

.hero-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background: rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  padding: 22px 28px 18px;
  border-radius: 20px;
  border: 1px solid rgb(255, 255, 255);
  box-shadow: 0 6px 28px rgba(58, 46, 42, 0.14);
  min-width: 108px;
}

.hero-stat-num {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Sans", "Noto Sans JP", Arial, sans-serif;
  font-size: 42px;
  font-weight: 500;
  color: #E87A5C;
  letter-spacing: 0.04em;
  line-height: 1;
}
.hero-stat-num small {
  font-size: 16px;
  font-weight: 400;
}

.hero-stat-label {
  font-size: 15px;
  color: #453931;
  letter-spacing: 0.08em;
  font-weight: 300;
  margin-top: 5px;
  white-space: nowrap;
}

.hero-scroll {
  position: absolute;
  bottom: 36px;
  left: 44px;
  z-index: 6;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
.hero-scroll span {
  writing-mode: vertical-rl;
  font-size: 9px;
  letter-spacing: 0.32em;
  color: #453931;
  font-weight: 300;
  text-transform: lowercase;
}
.hero-scroll::after {
  content: "";
  display: block;
  width: 1px;
  height: 52px;
  background: linear-gradient(to bottom, #453931 0%, transparent 100%);
}

/* ============================
   お知らせ（ヒーロー直下）
   ============================ */
.notice-section {
  /* 以前は半透明白（rgba(255,255,255,.5)）で背景に埋もれ、高さも20〜24pxの余白しかなく
     目立たなかったとの指摘を受け、上下の余白・文字サイズを大きくして存在感を出す。
     完全な白（2026-08-03）だと今度は硬すぎたため、透け感80%程度まで調整（2026-08-05）。
     その後、もう少し薄くしたいとの指摘で60%に再調整（2026-08-13） */
  background: rgba(255, 255, 255, 0.6);
  position: relative;
  overflow: hidden;
  padding: 56px 0;
}
.notice-section .sec-accent--notice {
  width: 320px;
  height: 320px;
  top: -100px;
  right: -80px;
  background: radial-gradient(circle, rgba(232, 122, 92, 0.16) 0%, rgba(242, 162, 130, 0.08) 40%, rgba(250, 198, 172, 0.02) 65%, transparent 75%);
  filter: blur(45px);
  animation-duration: 12s;
}
.notice-section .sec-accent--notice2 {
  width: 260px;
  height: 260px;
  bottom: -80px;
  left: -60px;
  background: radial-gradient(circle, rgba(220, 170, 190, 0.2) 0%, rgba(230, 190, 210, 0.09) 40%, rgba(240, 210, 225, 0.02) 65%, transparent 75%);
  filter: blur(40px);
  animation-duration: 15s;
  animation-delay: -5s;
}

.notice-inner {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 56px;
  align-items: stretch;
}

.notice-label-col {
  min-width: 140px;
  /* 右側の一覧との間に細い縦罫線を1本引き、ラベル列にも存在感を持たせる
     （箱・太枠ではなくヘアラインでサイト共通のエディトリアルな見せ方に揃える） */
  padding-right: 32px;
  border-right: 1px solid var(--wp--preset--color--base-border);
}

.notice-heading {
  /* .sec-heading と同様、「●」の量産感を避けて記号なしのタイポグラフィのみに（2026-08-06） */
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: clamp(24px, 2.6vw, 32px);
  font-weight: 600;
  color: #3A2E2A;
  letter-spacing: 0.08em;
  margin-top: 6px;
}

.notice-list-col {
  display: flex;
  flex-direction: column;
}
.notice-list-col .news-list {
  margin-bottom: 0;
}
.notice-list-col .news-more {
  margin-left: auto;
  margin-top: 28px;
}
.notice-list-col .news-item {
  display: flex;
  align-items: baseline;
  gap: 18px;
  flex-wrap: nowrap;
}
.notice-list-col .news-content {
  flex: 1;
  min-width: 0;
}

/* .news-list / .news-item / .news-date / .news-link / .news-tag / .news-more は
   お知らせ一覧ページ（template-notice-archive.php）でも使うため
   assets/scss/_news-list.scss に切り出し、base.scss側で読み込む共通パーツにした */
/* ============================
   診療案内（全診療科の一覧・目次形式）
   お悩みから探す（.services）と役割が重ならないよう、こちらは症状訴求ではなく
   診療科名で網羅的に見せるシンプルな目次リスト。アイコン・写真装飾は使わず、
   ヘアラインと通し番号だけで構成する。
   2026-07-31：背景・行とも透明でページ地色に埋もれて見えないとの指摘を受け、
   お知らせセクションと同じ考え方（コーラルの薄いタント＝primary-50を敷いた帯）で
   セクション自体を独立した帯として見せるように変更
   ============================ */
.service-directory {
  background: var(--wp--preset--color--primary-50);
  border-top: 1px solid var(--wp--preset--color--base-border);
  border-bottom: 1px solid var(--wp--preset--color--base-border);
  position: relative;
  overflow: hidden;
}
.service-directory .sec-accent--directory {
  width: 640px;
  height: 640px;
  top: -200px;
  left: -220px;
  background: radial-gradient(circle, rgba(232, 122, 92, 0.16) 0%, rgba(242, 162, 130, 0.08) 40%, rgba(250, 198, 172, 0.02) 65%, transparent 75%);
  filter: blur(60px);
  animation-duration: 13s;
}
.service-directory::before {
  content: "Medical Services";
  position: absolute;
  top: 0;
  right: -2%;
  font-family: larken, "Cormorant Garamond", serif;
  font-size: clamp(56px, 9vw, 130px);
  font-weight: 500;
  color: rgba(232, 122, 92, 0.1);
  pointer-events: none;
  line-height: 1;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  white-space: nowrap;
  z-index: 0;
}

.directory-list {
  /* 白カード＋シャドウの積み重ねはAIっぽい定番構成のため避け、
     ヘアライン区切りのエディトリアルな一覧に変更 */
  list-style: none;
  margin: 40px 0 0;
  padding: 0;
  border-top: 1px solid #E8D8CC;
  position: relative;
  z-index: 1;
}

.directory-item {
  border-bottom: 1px solid #E8D8CC;
}
.directory-item a {
  display: flex;
  align-items: center;
  gap: clamp(16px, 2.5vw, 28px);
  padding: clamp(20px, 3vw, 28px) 20px;
  background-color: #FFFFFF;
  text-decoration: none;
  transition: opacity 0.18s;
}
.directory-item a:hover {
  opacity: 0.72;
}
.directory-item a:hover .directory-arrow-circle {
  transform: translateX(4px);
}

.directory-icon {
  flex-shrink: 0;
  width: clamp(32px, 3.6vw, 40px);
  height: clamp(32px, 3.6vw, 40px);
  color: #E87A5C;
}
.directory-icon svg {
  width: 100%;
  height: 100%;
}

.directory-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.directory-name {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: clamp(18px, 1.9vw, 21px);
  font-weight: 600;
  color: #3A2E2A;
  letter-spacing: 0.04em;
}

.directory-desc {
  color: #4A3D36;
  font-size: clamp(13.5px, 1.2vw, 15px);
  font-weight: 500;
  letter-spacing: 0.02em;
}

.directory-more {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #E87A5C;
  font-size: 13.5px;
  font-weight: 600;
  letter-spacing: 0.04em;
  white-space: nowrap;
}

.directory-arrow-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  border: 1px solid #E87A5C;
  font-size: 13px;
  transition: transform 0.18s;
}

@media screen and (max-width: 640px) {
  .directory-more-label {
    display: none;
  }
}
/* ============================
   診療メニュー
   ============================ */
.services {
  background: transparent;
  position: relative;
  overflow: hidden;
}

/* お悩み・目的別の入り口（旧・診療案内3カード＋専門外来バーを1本に統合。
   親ページカード内に子ページリンクを埋め込む方式は分かりにくいとの指摘を受け、
   患者の目的・症状から該当ページへ直接ジャンプできる形に変更） */
.concern-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin: 48px auto 0;
  max-width: 1120px;
  padding-left: var(--wp--style--root--padding-left);
  padding-right: var(--wp--style--root--padding-right);
  box-sizing: border-box;
}

.concern-item {
  /* 周囲が暖色（コーラルのぼかし等）だらけなので、地色を暖色に寄せるとかえって馴染んで
     埋もれてしまう。白を保って明度差でコントラストを出す方向にする */
  background: #FFFFFF;
  color: #3A2E2A;
  padding: 26px 24px 24px;
  cursor: pointer;
  border-radius: 20px;
  border: 1px solid #E8D8CC;
  transition: border-color 0.2s, transform 0.2s, box-shadow 0.2s;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  display: block;
  box-shadow: 0 8px 24px rgba(58, 26, 18, 0.1);
  /* サイト共通の有機的ブロブ装飾をアイコンの背後にごく控えめに敷き、単なる白カードで
     終わらせない（新しい図形・枠を足すのではなく既存モチーフの延長にする） */
}
.concern-item::before {
  content: "";
  position: absolute;
  top: -20px;
  left: -20px;
  width: 120px;
  height: 120px;
  background: radial-gradient(circle, rgba(232, 122, 92, 0.16) 0%, transparent 70%);
  filter: blur(8px);
  pointer-events: none;
  z-index: -1;
}
.concern-item:hover {
  border-color: rgba(232, 122, 92, 0.4);
  transform: translateY(-4px);
  box-shadow: 0 14px 32px rgba(58, 26, 18, 0.16);
}

.concern-num {
  /* アイコンを外した分、文字だらけに見えないよう大きな装飾ナンバーを
     視線のアンカーにする（page-header-deco-textと同じ考え方） */
  position: absolute;
  top: 2px;
  right: 18px;
  font-family: larken, "Cormorant Garamond", serif;
  font-size: clamp(42px, 5.5vw, 58px);
  font-weight: 400;
  line-height: 1;
  color: rgba(232, 122, 92, 0.14);
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  z-index: 0;
}

.concern-en,
.concern-label,
.concern-note {
  position: relative;
  z-index: 1;
}

.concern-en {
  font-family: larken, "Cormorant Garamond", serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.22em;
  color: #E87A5C;
  text-transform: uppercase;
  display: block;
  margin-bottom: 6px;
}

.concern-label {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: 19px;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: #3A2E2A;
}

.concern-note {
  /* 他の説明文と濃さ・太さを揃える（以前は不透明度.55/weight300で特に薄かった） */
  font-size: 15px;
  color: rgba(58, 46, 42, 0.9);
  margin-top: 6px;
  font-weight: 500;
  line-height: 1.7;
}

/* ============================
   院長・当院について
   ============================ */
.about {
  background: transparent;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

.about-split {
  display: flex;
  align-items: center;
  min-height: 600px;
  position: relative;
}

.about-frost-circle {
  position: absolute;
  left: 28%;
  top: 50%;
  transform: translateY(-50%);
  width: 50%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.38);
  pointer-events: none;
  z-index: 1;
}

.about-text-col {
  position: relative;
  z-index: 2;
  flex: 1;
  padding: 80px 80px 80px 24px;
}

.about-circle-col {
  flex: 0 0 58%;
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
  padding: 0;
}

.about-circle-photo {
  width: 92%;
  aspect-ratio: 4/3;
  border-radius: 0 50% 50% 0/0 50% 50% 0;
  overflow: hidden;
  margin-left: 0;
  box-shadow: none;
  flex-shrink: 0;
}
.about-circle-photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center 30%;
     object-position: center 30%;
  display: block;
}

.about-director-name {
  font-size: 18px;
  font-weight: 500;
  color: #3A2E2A;
  letter-spacing: 0.08em;
  margin-bottom: 16px;
}

.about-director-kana {
  font-size: 13px;
  font-weight: 400;
  color: #E87A5C;
  margin-left: 4px;
}

.about-message-text {
  font-size: 16px;
  color: #4A3D36;
  line-height: 2.1;
  font-weight: 500;
  margin-bottom: 12px;
}

.about-cert-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 24px;
}

.about-cert {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 14px;
  color: #3A2E2A;
  font-weight: 300;
  padding: 10px 18px;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.9);
  letter-spacing: 0.03em;
  backdrop-filter: blur(4px);
}
.about-cert::before {
  content: "";
  width: 6px;
  height: 6px;
  background: #E87A5C;
  border-radius: 50%;
  flex-shrink: 0;
}

.about-lower {
  background: rgba(255, 255, 255, 0.72);
  padding: 56px 0 72px;
}

.about-deco-text {
  position: absolute;
  bottom: 72px;
  left: -1%;
  font-family: larken, "Cormorant Garamond", serif;
  font-size: clamp(64px, 10vw, 140px);
  font-weight: 400;
  color: rgba(255, 255, 255, 0.22);
  letter-spacing: 0.05em;
  pointer-events: none;
  line-height: 1;
  z-index: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  white-space: nowrap;
}

.about-features-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 40px;
  padding-top: 44px;
}
.about-features-row .feature-item {
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  align-items: flex-start;
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
}

.feature-num {
  /* 見出し(20px)・本文と並べると小さすぎたため、装飾的な大きめの英数ラベルとして立たせる */
  font-family: larken, "Cormorant Garamond", serif;
  font-size: 28px;
  letter-spacing: 0.06em;
  color: #E87A5C;
  margin-bottom: 12px;
  font-weight: 400;
  line-height: 1;
}

.feature-heading {
  /* 他セクションの見出しラベル（directory-name等）と太さ・大きさを揃える */
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: clamp(19px, 2vw, 22px);
  font-weight: 600;
  color: #3A2E2A;
  line-height: 1.65;
  letter-spacing: 0.04em;
  margin-bottom: 14px;
}

.feature-rule {
  width: 24px;
  height: 1px;
  background: #E87A5C;
  margin-bottom: 14px;
  flex-shrink: 0;
}

.feature-body {
  /* about-message-text（同セクション内の本文）と大きさを揃える */
  font-size: 16px;
  color: rgba(58, 46, 42, 0.85);
  line-height: 1.9;
  font-weight: 500;
}

/* ============================
   初めての方へ
   ============================ */
.first-visit {
  background: linear-gradient(150deg, rgba(255, 237, 227, 0.45) 0%, rgba(255, 248, 244, 0.6) 60%, rgba(255, 255, 255, 0.2) 100%);
  position: relative;
  overflow: hidden;
}

.first-visit-head {
  margin-bottom: 56px;
}

.steps-wrap {
  position: relative;
}

.steps-row {
  display: flex;
  align-items: stretch;
  gap: 0;
}

.step-card {
  flex: 1;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(232, 122, 92, 0.18);
  border-radius: 20px;
  padding: 36px 24px 32px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-shadow: 0 6px 24px rgba(232, 122, 92, 0.08);
  position: relative;
  overflow: hidden;
}

.step-icon {
  width: 56px;
  height: 56px;
  margin: 0 auto 16px;
  color: #E87A5C;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(232, 122, 92, 0.1);
  border-radius: 50%;
  padding: 12px;
}
.step-icon svg {
  width: 100%;
  height: 100%;
}

.step-name {
  /* 他セクションのカード見出し（.service-name等）とサイズ・書体を揃える */
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: 22px;
  font-weight: 600;
  color: #3A2E2A;
  margin-bottom: 8px;
  letter-spacing: 0.04em;
}

.step-desc {
  /* 他セクションの説明文（.feature-body等）と濃さを揃える（$color-mutedだと薄く見えた） */
  font-size: 15px;
  color: #4A3D36;
  line-height: 1.85;
  font-weight: 500;
}

.step-arrow {
  /* 番号（01-04）を廃止した代わりに、カード同士を線でつなげてステップの連続性を見せる。
     線の色はMVの背景装飾文字「HORI LADIES CLINIC」と同系色（$color-coral）に揃える */
  flex-shrink: 0;
  width: 32px;
  align-self: center;
  height: 2px;
  background: #E87A5C;
}

/* ============================
   コラムカードグリッド
   ============================ */
.col-slider {
  position: relative;
  margin-top: 40px;
}

.col-grid {
  /* 3枚フル表示＋4枚目が少し見切れる幅にして、続きがあることを示す。
     自動送りはせず、両端の矢印ボタンでのみ送る（col-slider-nav参照） */
  display: flex;
  gap: 20px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  padding-bottom: 4px;
  /* スクロールバーは見せず、ボタン操作を前提にする */
  scrollbar-width: none;
}
.col-grid::-webkit-scrollbar {
  display: none;
}

/* カード自体の見た目（背景・角丸・タイトル文字など）は共通パーツとして_column.scssに集約。
   ここでは横スクロールの並び方（1枚あたりの幅・スナップ位置）のみを指定する */
.col-grid .col-card {
  flex: 0 0 calc((100% - 40px) / 3.3);
  scroll-snap-align: start;
}

.col-slider-nav {
  position: absolute;
  top: 38%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #FFFFFF;
  border: 1px solid #E8D8CC;
  color: #E87A5C;
  font-size: 22px;
  font-family: larken, "Cormorant Garamond", serif;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(58, 26, 18, 0.12);
  transition: background 0.18s, color 0.18s, box-shadow 0.18s;
  z-index: 2;
}
.col-slider-nav:hover {
  background: #E87A5C;
  color: #FFFFFF;
}
.col-slider-nav--prev {
  left: -18px;
}
.col-slider-nav--next {
  right: -18px;
}

@media (max-width: 960px) {
  .col-grid .col-card {
    flex: 0 0 calc((100% - 20px) / 2.3);
  }
}
@media (max-width: 480px) {
  .col-grid .col-card {
    flex: 0 0 82%;
  }
  .col-slider-nav {
    width: 36px;
    height: 36px;
    font-size: 18px;
  }
  .col-slider-nav--prev {
    left: -8px;
  }
  .col-slider-nav--next {
    right: -8px;
  }
}
/* ============================
   アクセス・診療時間
   ============================ */
.access {
  background: transparent;
  position: relative;
  overflow: hidden;
}
.access::before {
  content: "Access";
  position: absolute;
  top: 0;
  right: -2%;
  font-family: larken, "Cormorant Garamond", serif;
  font-size: clamp(72px, 12vw, 160px);
  font-weight: 500;
  color: rgba(232, 122, 92, 0.1);
  pointer-events: none;
  line-height: 1;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.access-head {
  margin-bottom: 52px;
}

.access-inner {
  display: grid;
  grid-template-columns: 1.25fr 1fr;
  gap: 44px;
  position: relative;
  z-index: 1;
}

.access-map {
  background: rgba(255, 255, 255, 0.25);
  border-radius: 20px;
  min-height: 340px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(58, 46, 42, 0.6);
  font-size: 13px;
  font-weight: 300;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(58, 26, 18, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(4px);
}

/* 診療時間表そのもの（.hour-table）はフッター・本文ブロックと共通の
   template-parts/hour-table.php を差し込んで使う。幅・余白も含めて
   フッターと完全に同じ見た目にするため、ここでの上書きは行わない */
.access-time {
  margin-bottom: 14px;
}

.access-loc {
  background: rgba(255, 255, 255, 0.8);
  border-radius: 18px;
  padding: 18px 24px;
  font-size: 15px;
  color: #4A3D36;
  line-height: 2.1;
  border: 1px solid rgba(255, 255, 255, 0.9);
  font-weight: 500;
  backdrop-filter: blur(4px);
  box-shadow: 0 4px 20px rgba(58, 26, 18, 0.08);
}
.access-loc strong {
  font-weight: 500;
  color: #3A2E2A;
}
.access-loc p {
  margin: 0 0 6px 0;
  line-height: 1.8;
}
.access-loc p:last-of-type {
  margin-bottom: 12px;
}

.access-station-label {
  display: inline-block;
  background: #E87A5C;
  color: #fff;
  font-size: 11px;
  font-weight: 500;
  padding: 1px 7px;
  border-radius: 3px;
  margin-right: 6px;
  vertical-align: middle;
  line-height: 1.7;
  letter-spacing: 0.04em;
}

.access-loc .access-tel-num {
  display: block;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Sans", "Noto Sans JP", Arial, sans-serif;
  font-size: 22px;
  font-weight: 500;
  color: #E87A5C;
  letter-spacing: 0.06em;
  line-height: 1.2;
  margin-top: 12px;
}

/* フッターCTAは assets/scss/_footer-cta.scss（base.scss経由・全ページ共通）に移設 */
/* ============================================================
   レスポンシブ
   ============================================================ */
@media (max-width: 1200px) {
  .front-page .section,
  .front-page .section-sm {
    padding: 96px 0;
  }
}
@media (max-width: 960px) {
  .front-page .section {
    padding: 80px 0;
  }
  .notice-section {
    padding: 40px 0;
  }
  .concern-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .about-split {
    flex-direction: column;
    min-height: auto;
  }
  .about-frost-circle {
    display: none;
  }
  .about-circle-col {
    flex: 0 0 auto;
    width: 100%;
    max-height: 360px;
    overflow: hidden;
  }
  .about-circle-photo {
    width: 100%;
    aspect-ratio: 16/9;
    border-radius: 0 0 50% 50%/0 0 40% 40%;
  }
  .about-text-col {
    padding: 40px 20px;
  }
  .about-message-text br {
    display: none;
  }
  .about-features-row {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .steps-row {
    flex-wrap: wrap;
    gap: 16px;
  }
  .step-card {
    flex: 0 0 calc(50% - 8px);
  }
  .step-arrow {
    display: none;
  }
  .notice-inner {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .notice-label-col {
    border-right: none;
    border-bottom: 1px solid var(--wp--preset--color--base-border);
    padding-right: 0;
    padding-bottom: 20px;
  }
  .access-inner {
    grid-template-columns: 1fr;
  }
  .access-map {
    min-height: 260px;
  }
}
@media (max-width: 768px) {
  .front-page .section,
  .front-page .section-sm {
    padding: 64px 0;
  }
  /* お知らせ（トップページの.notice-list-col内）は常時nowrap指定になっているため、
     スマホでは_news-list.scss側の折り返しレイアウトが効くように上書きする */
  .notice-list-col .news-item {
    flex-wrap: wrap;
  }
  .directory-item a {
    flex-wrap: wrap;
    gap: 8px 14px;
    padding: 20px 16px;
  }
  .directory-name {
    width: auto;
  }
  .directory-desc {
    flex-basis: 100%;
    order: 3;
    font-size: 13px;
  }
  .hero {
    height: 58svh;
    min-height: 380px;
  }
  .hero-arch-wrap {
    /* ドームを小さくすると、横幅いっぱいに見える範囲が広がり人物の写り込みが安定する */
    width: 88svh;
    min-width: 360px;
    height: 55svh;
    min-height: 270px;
  }
  .hero-deco-text {
    /* PCと同じ濃さだと文字が小さくなる分弱く見えるため、スマホは濃く・大きくして存在感を出す */
    font-size: clamp(56px, 15vw, 100px);
    top: 6%;
    color: rgba(232, 122, 92, 0.2);
  }
  .hero-blob--3,
  .hero-blob--4,
  .hero-blob--5 {
    display: none;
  }
  /* ドームが横幅いっぱいに広がりブロブの背後の余白がほぼ無いため、
     スマホだけ写真の手前（アーチより上のレイヤー）に重ねて見せる */
  .hero-blobs {
    z-index: 3;
  }
  .hero-blob--1 {
    width: 160px;
    height: 150px;
    left: -30px;
    top: 4%;
  }
  .hero-blob--2 {
    width: 170px;
    height: 160px;
    right: -30px;
    left: auto;
    top: 2%;
  }
  .hero-copy {
    /* MVの下端に少し余白を残す程度まで下げる */
    bottom: 100px;
    left: 5%;
  }
  .hero-copy h1 {
    /* セクションタイトル（.sec-heading、モバイルで約26px）より確実に大きくする（2026-08-13） */
    font-size: clamp(28px, 7vw, 38px);
  }
  .hero-copy h1 br {
    display: none;
  }
  .hero-copy-tagline {
    display: none;
  }
  .hero-scroll {
    display: none;
  }
  .hero-stats {
    bottom: 24px;
    right: auto;
    left: 5%;
    gap: 8px;
  }
  .hero-stat {
    padding: 10px 14px 8px;
    border-radius: 14px;
    min-width: 84px;
  }
  .hero-stat-num {
    font-size: 26px;
  }
  .hero-stat-num small {
    font-size: 12px;
  }
  .hero-stat-label {
    font-size: 11px;
    margin-top: 3px;
    white-space: nowrap;
  }
  .concern-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .step-card {
    /* SPでは2列ではなく縦1列に並べる */
    flex: 0 0 100%;
    padding: 28px 16px 24px;
  }
  .step-name {
    font-size: 17px;
  }
  /* 院長より：「01」の上の余白が空きすぎていたため詰める */
  .about-features-row {
    padding-top: 20px;
  }
  /* 院長コラム：カードタイトルが小さすぎたため大きくする */
  .col-title {
    font-size: 15px;
  }
  .footer-cta {
    padding: 52px 0;
  }
  .footer-cta h2 {
    font-size: 20px;
  }
  .footer-cta p {
    font-size: 15px;
  }
  .footer-cta-btns {
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }
  .btn-cta-white,
  .btn-cta-outline {
    width: 220px;
    text-align: center;
  }
  .sec-accent {
    width: 260px !important;
    height: 260px !important;
    top: -40px !important;
    bottom: auto !important;
    right: -60px !important;
    left: auto !important;
  }
  .section-blob {
    display: none;
  }
  .notice-section .sec-accent--notice {
    width: 200px !important;
    height: 200px !important;
    top: -40px !important;
    right: -40px !important;
    bottom: auto !important;
    left: auto !important;
  }
  .notice-section .sec-accent--notice2 {
    width: 160px !important;
    height: 160px !important;
    bottom: -40px !important;
    left: -30px !important;
  }
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZyb250LXBhZ2UuY3NzIiwiLi4vc2Nzcy9mcm9udC1wYWdlLnNjc3MiLCIuLi9zY3NzL192YXJpYWJsZXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNFaEI7OztDQUFBO0FBS0E7NkNBQUE7QUFZUTs7Ozs7Ozs7O0VBQ0ksaUJBQUE7RUFDQSx5REFBQTtFQUNBLGNBQUE7RUFDQSxpQkFBQTtBREhaOztBQ1FBO0VBQ0ksZUFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0FETEo7O0FDUUE7RUFDSSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7QURMSjs7QUNRQTtFQUNJLGFBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLFlBQUE7RUFDQSx1TEFBQTtFQU1BLGtCQUFBO0FEVko7O0FDYUE7RUFDSSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7QURWSjtBQ1lJOztFQUVJLGtCQUFBO0VBQ0EsVUFBQTtBRFZSOztBQ2NBLGVBQUE7QUFDQTtFQUNJOzJDQUFBO0VBRUEsY0FBQTtFQUNBLGdEQ2xEYTtFRG1EYixlQUFBO0VBQ0Esc0JBQUE7RUFDQSxjQ3ZFVTtFRHdFVixnQkFBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxVQUFBO0FEWEo7O0FDY0E7RUFDSTs7MkNBQUE7RUFHQSxvRUNuRVc7RURvRVgsaUNBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0NoRlE7RURpRlIsbUJBQUE7RUFDQSxzQkFBQTtBRFhKO0FDYUk7RUFDSSxrQkFBQTtFQUNBLGNBQUE7QURYUjs7QUNlQTtFQUNJLGNDMUZTO0VEMkZULGVBQUE7RUFDQSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0VBQ0Esb0JBQUE7RUFDQSx5QkFBQTtBRFpKOztBQ2VBLFVBQUE7QUFDQTtFQUNJLG9CQUFB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 */