/* =====================================================================
   トップページ LP Comp 版（2026-11-07 試作・本番には入れていない）
   主参照＝LP Comp clinic-fv（全幅写真の下辺を斜めに切り、白いパネルと
   濃い面が写真の縁をまたぐ／下に事実の帯）＋ homenurse-fv（事実の帯の区切り線）。
   色は今のトップの色（深緑・生成り・金）をそのまま使う＝ベースは変えない。
   ===================================================================== */
body.home.lp{
  --lp-ink:#123c34;
  --lp-deep:#064236;
  --lp-green:#19856f;
  --lp-soft:#e5f1eb;
  --lp-cream:#f8f7ef;
  --lp-gold:#d99347;
  --lp-line:rgba(6,66,54,.14);
}

/* ---------- FV ---------- */
body.home.lp .hero.lp-hero{background:var(--lp-cream)!important;padding:0!important;text-align:left!important;overflow:hidden}
body.home.lp .hero.lp-hero::before,
body.home.lp .hero.lp-hero::after{display:none!important}
body.home.lp .lp-stage{position:relative}

/* 写真＝画面幅いっぱい・下辺は右上がりの斜め */
body.home.lp .hero .hero-carousel.lp-photo{
  max-width:none!important;width:100%!important;margin:0!important;border-radius:0!important;box-shadow:none!important;
  height:clamp(420px,46vw,640px)!important;
  clip-path:polygon(0 0,100% 0,100% 84%,0 100%);
}
body.home.lp .hero .hero-carousel.lp-photo::after{display:none!important}

/* 細い円の輪郭 1本（写真の斜めの縁と生成りの地をまたぐ） */
body.home.lp .lp-ring{position:absolute;left:3%;top:calc(clamp(420px,46vw,640px) - 150px);width:200px;height:200px;
  border:1.5px solid rgba(25,133,111,.45);border-radius:50%;pointer-events:none;z-index:1}

body.home.lp .lp-over{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);
  gap:22px;align-items:start;margin-top:-150px!important}

/* 白いパネル＝見出し（写真の縁をまたぐ） */
body.home.lp .lp-panel{position:relative;background:#fff;border-radius:14px;padding:34px 38px 30px;
  box-shadow:0 18px 40px rgba(6,66,54,.12)}
body.home.lp .hero .lp-panel h1{
  text-align:left!important;margin:0!important;padding:0!important;
  font-size:clamp(1.65rem,3.1vw,2.55rem)!important;line-height:1.45!important;font-weight:600!important;
  letter-spacing:.02em!important;color:var(--lp-deep)!important;background:none!important}
body.home.lp .hero .lp-panel h1::before,
body.home.lp .hero .lp-panel h1::after{display:none!important}
body.home.lp .hero .lp-panel h1 .accent{color:var(--lp-deep)!important;
  background:linear-gradient(transparent 78%,rgba(217,147,71,.55) 78%,rgba(217,147,71,.55) 92%,transparent 92%)}
body.home.lp .lp-panel .lp-sub{margin:14px 0 0!important;padding:0!important;text-align:left!important;
  font-size:1rem!important;font-weight:500!important;color:#4c6660!important;letter-spacing:.04em;background:none!important;border:0!important}
body.home.lp .lp-panel .lp-sub::before,body.home.lp .lp-panel .lp-sub::after{display:none!important}

/* 小さな十字（線画） */
body.home.lp .lp-cross{position:absolute;width:18px;height:18px}
body.home.lp .lp-cross::before,body.home.lp .lp-cross::after{content:"";position:absolute;background:var(--lp-gold);border-radius:1px}
body.home.lp .lp-cross::before{left:8px;top:0;width:2px;height:18px}
body.home.lp .lp-cross::after{top:8px;left:0;width:18px;height:2px}
body.home.lp .lp-cross-a{right:18px;top:-30px}

/* 濃い面＝診療体制（写真の右下の角にかかる） */
body.home.lp .lp-info{background:var(--lp-deep);color:#fff;border-radius:14px;padding:22px 24px 18px;margin-top:26px;
  box-shadow:0 18px 40px rgba(6,66,54,.18)}
body.home.lp .lp-info .service-summary{display:block!important;margin:0!important;padding:0!important;list-style:none;background:none!important;border:0!important}
body.home.lp .lp-info .service-summary li{display:block!important;padding:11px 0!important;margin:0!important;border:0!important;
  border-top:1px solid rgba(255,255,255,.22)!important;background:none!important;text-align:left!important}
body.home.lp .lp-info .service-summary li:first-child{border-top:0!important;padding-top:0!important}
body.home.lp .lp-info .summary-tag{display:block!important;background:none!important;border:0!important;padding:0!important;margin:0 0 2px!important;
  color:#f3c58f!important;font-size:.78rem!important;font-weight:600!important;letter-spacing:.08em;text-align:left!important;width:auto!important;min-width:0!important}
body.home.lp .lp-info .summary-text{display:block!important;color:#fff!important;font-size:.95rem!important;font-weight:500!important;line-height:1.7!important;text-align:left!important}

/* 事実の帯（淡い緑・細い縦線で区切る） */
body.home.lp .lp-facts{background:var(--lp-soft);margin-top:34px;padding:22px 0}
body.home.lp .lp-facts .hero-stats{display:grid!important;grid-template-columns:repeat(4,1fr);margin:0!important;padding:0!important;
  border:0!important;background:none!important;box-shadow:none!important;list-style:none}
body.home.lp .lp-facts .hero-stats li{text-align:center;padding:2px 8px!important;border:0!important;border-left:1px solid rgba(6,66,54,.22)!important;background:none!important}
body.home.lp .lp-facts .hero-stats li:first-child{border-left:0!important}
body.home.lp .lp-facts .hero-stats li small{font-size:.8rem!important;color:#4c6660!important;font-weight:500!important}
body.home.lp .lp-facts .hero-stats li b{font-size:1.9rem!important;font-weight:600!important;color:var(--lp-deep)!important;line-height:1.25!important;
  font-feature-settings:"palt";letter-spacing:.01em}
body.home.lp .lp-facts .hero-stats li b i{font-size:.9rem!important;font-weight:600!important;margin:0 1px}

/* 行動（電話・予約・アクセス）＝予約を主にする。押せる物の決まり（枠＋下の厚い縁）は既存のまま */
body.home.lp .lp-act{padding-top:28px;padding-bottom:6px}
body.home.lp .hero .lp-act .quick-actions{display:grid!important;grid-template-columns:1fr 1.35fr 1fr;gap:14px!important;max-width:820px!important;margin:0 auto!important}
body.home.lp .hero .lp-act .qa{flex-direction:row!important;justify-content:center!important;gap:12px!important;padding:16px 14px!important;text-align:left!important;min-height:72px}
body.home.lp .hero .lp-act .qa .qa-ill{width:44px!important;height:44px!important;margin:0!important;flex:none}
body.home.lp .hero .lp-act .qa .qa-ill svg{width:24px!important;height:24px!important}
body.home.lp .hero .lp-act .qa small{display:block;margin-left:2px}
body.home.lp .hero .lp-act .quick-actions .qa:nth-child(2){background:var(--lp-deep)!important;color:#fff!important;border-color:var(--lp-deep)!important;
  box-shadow:0 5px 0 #03251e!important;font-size:1.08rem!important}
body.home.lp .hero .lp-act .quick-actions .qa:nth-child(2) small{color:#cfe3dc!important}
body.home.lp .hero .lp-act .quick-actions .qa:nth-child(2) .qa-ill{background:rgba(255,255,255,.14)!important}
body.home.lp .hero .lp-act .quick-actions .qa:nth-child(2) .qa-ill svg{fill:#fff!important}
/* 並び：予約を真ん中に（電話・予約・アクセスの順のまま、予約だけ広く濃く） */
body.home.lp .hero .lp-act .qa:nth-child(2){order:0}

/* 目的別の入口＝診療科のアイコン行（間に細い縦線） */
body.home.lp .hero .lp-act .gateway{display:grid!important;grid-template-columns:repeat(3,1fr);gap:0!important;max-width:1040px;margin:30px auto 0!important;
  background:#fff;border-radius:14px;border:1px solid var(--lp-line);padding:6px 0}
body.home.lp .hero .lp-act .gw{flex-direction:column!important;align-items:center!important;text-align:center!important;gap:6px!important;
  background:none!important;border:0!important;border-left:1px solid var(--lp-line)!important;border-radius:0!important;box-shadow:none!important;
  padding:20px 18px 18px!important;color:var(--lp-deep)!important;font-weight:600}
body.home.lp .hero .lp-act .gw:first-child{border-left:0!important}
body.home.lp .hero .lp-act .gw .ico{font-size:2.1rem!important;color:var(--lp-green)!important;background:none!important;width:auto!important;height:auto!important}
body.home.lp .hero .lp-act .gw small{font-weight:500;margin-top:4px;font-size:.8rem!important}
body.home.lp .hero .lp-act .gw .go{margin:6px 0 0!important;color:var(--lp-green)!important;font-size:.86rem!important;border-bottom:1.5px solid currentColor;line-height:1.5}

/* ---------- お知らせ ---------- */
body.home.lp .notice-box{max-width:1040px;border-radius:12px;background:#fff;border:1px solid var(--lp-line);border-left:4px solid var(--lp-gold);box-shadow:none}

/* ---------- 見出し（細い角ゴシック・大きさで階層） ---------- */
body.home.lp .sec-title{font-size:clamp(1.55rem,2.6vw,2.1rem)!important;font-weight:500!important;letter-spacing:.06em;color:var(--lp-deep)!important;margin-bottom:10px}
body.home.lp .sec-title small{font-size:.74rem!important;letter-spacing:.32em!important;color:var(--lp-gold)!important;font-weight:600!important;margin-bottom:8px!important}
body.home.lp .sec-title small::before,body.home.lp .sec-title small::after{display:none!important}
body.home.lp .sec-title small{display:inline-block!important;padding-bottom:6px;border-bottom:1.5px solid var(--lp-gold)}
body.home.lp .sec-title{display:flex;flex-direction:column;align-items:center}

/* ---------- 診療案内＝罫線のタイル（影なし・同じ型を続けない） ---------- */
body.home.lp .dept-grid{gap:0!important;background:#fff;border:1px solid var(--lp-line);border-radius:14px;overflow:hidden;grid-template-columns:repeat(5,1fr)!important}
body.home.lp .dept{border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;
  border-right:1px solid var(--lp-line)!important;border-bottom:1px solid var(--lp-line)!important;padding:22px 10px 20px!important}
body.home.lp .dept:nth-child(5n){border-right:0!important}
body.home.lp .dept:nth-last-child(-n+5){border-bottom:0!important}
body.home.lp .dept:hover{background:#fbfaf4!important}

/* ---------- 予防＝横長の段（アイコン左・文字右） ---------- */
body.home.lp .prev-cards{gap:14px!important}
body.home.lp .prev-card{flex-direction:row!important;display:flex!important;align-items:center!important;text-align:left!important;gap:16px!important;
  padding:18px 20px!important;border-radius:14px!important}
body.home.lp .prev-card .prev-ill{margin:0!important;flex:none;width:60px!important;height:60px!important}
body.home.lp .prev-card .pc-body{display:block}
body.home.lp .prev-card .pc-title{font-size:1.06rem}

/* ---------- 専門外来＝写真と文字のジグザグ（文字の面が写真の縁をまたぐ） ---------- */
body.home.lp .specialty{background:#fff!important}
body.home.lp .spec-cards{display:grid!important;grid-template-columns:1fr!important;gap:44px!important;max-width:1040px;margin:26px auto 0}
body.home.lp .spec-card{display:grid!important;grid-template-columns:1.15fr 1fr;align-items:center;background:none!important;border:0!important;box-shadow:none!important;overflow:visible!important}
body.home.lp .spec-card .ph{height:340px!important;border-radius:14px!important;overflow:hidden}
body.home.lp .spec-card .ph img{width:100%;height:100%;object-fit:cover}
body.home.lp .spec-card .body{position:relative;background:#fff;border-radius:14px;margin-left:-70px;padding:30px 32px 28px!important;
  box-shadow:0 18px 40px rgba(6,66,54,.12);border-top:3px solid var(--lp-green)}
body.home.lp .spec-card:nth-child(2){grid-template-columns:1fr 1.15fr}
body.home.lp .spec-card:nth-child(2) .ph{order:2}
body.home.lp .spec-card:nth-child(2) .body{margin-left:0;margin-right:-70px;z-index:1}
body.home.lp .spec-card h3{font-size:1.35rem!important;font-weight:600!important}
body.home.lp .spec-card .num{background:none!important;color:var(--lp-gold)!important;padding:0!important;font-size:.95rem!important;font-weight:700!important;
  display:block;margin:6px 0 10px;border:0!important}
body.home.lp .spec-card .more{display:inline-block;margin-top:10px;font-weight:700;border-bottom:1.5px solid currentColor}

/* ---------- 担当獣医師＝写真がカードの上辺をまたぐ ---------- */
body.home.lp .doc-grid{grid-template-columns:repeat(3,1fr)!important;max-width:1040px!important;gap:18px!important;margin-top:62px!important}
body.home.lp .doc-card{flex-direction:column!important;text-align:center;padding:66px 20px 22px!important;position:relative;border-radius:14px!important}
body.home.lp .doc-card img{position:absolute;top:-48px;left:50%;transform:translateX(-50%);width:100px!important;height:100px!important;
  border:4px solid #fff;box-shadow:0 8px 20px rgba(6,66,54,.14)}
body.home.lp .doc-card b{font-size:1.04rem!important;color:var(--lp-deep)}
body.home.lp .doc-card small{text-align:left;margin-top:8px!important;font-size:.84rem!important}
body.home.lp .doc-grid .doc-card:last-child:nth-child(odd){grid-column:auto!important;width:auto!important;justify-self:stretch!important}
body.home.lp .doc-more{text-align:center}

/* ---------- 予約＝3つの面を横に（見出しの下に本文） ---------- */
body.home.lp #reserve .container{max-width:1080px}
body.home.lp #reserve .policy-box{margin:0!important}
@media(min-width:960px){
  body.home.lp #reserve .container{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
  body.home.lp #reserve .sec-title,body.home.lp #reserve .sec-lead,body.home.lp #reserve .quick-actions{grid-column:1/-1}
}
body.home.lp #reserve .policy-box{background:#fff;border:1px solid var(--lp-line)!important;border-top:3px solid var(--lp-green)!important;border-left:1px solid var(--lp-line)!important;
  border-radius:14px;padding:22px 22px 20px!important}

/* ---------- スマホ ---------- */
@media(max-width:959px){
  body.home.lp .lp-over{grid-template-columns:1fr;gap:0;margin-top:-90px!important}
  body.home.lp .lp-info{margin-top:14px}
  body.home.lp .dept-grid{grid-template-columns:repeat(2,1fr)!important}
  body.home.lp .dept:nth-child(5n){border-right:1px solid var(--lp-line)!important}
  body.home.lp .dept:nth-child(2n){border-right:0!important}
  body.home.lp .dept:nth-last-child(-n+5){border-bottom:1px solid var(--lp-line)!important}
  body.home.lp .dept:nth-last-child(-n+2){border-bottom:0!important}
  body.home.lp .spec-card,body.home.lp .spec-card:nth-child(2){grid-template-columns:1fr}
  body.home.lp .spec-card:nth-child(2) .ph{order:0}
  body.home.lp .spec-card .ph{height:230px!important}
  body.home.lp .spec-card .body,body.home.lp .spec-card:nth-child(2) .body{margin:-44px 14px 0!important}
  body.home.lp .doc-grid{grid-template-columns:1fr!important;gap:62px!important}
}
@media(max-width:759px){
  body.home.lp .hero .hero-carousel.lp-photo{height:74vw!important;clip-path:polygon(0 0,100% 0,100% 88%,0 100%)}
  body.home.lp .lp-ring{top:calc(74vw - 90px);width:120px;height:120px;left:-20px}
  body.home.lp .lp-over{margin-top:-64px!important}
  body.home.lp .lp-panel{padding:22px 20px 20px}
  body.home.lp .hero .lp-panel h1{font-size:1.5rem!important}
  body.home.lp .lp-panel .lp-sub{font-size:.92rem!important;margin-top:8px!important}
  body.home.lp .lp-cross-a{right:12px;top:-28px}
  body.home.lp .lp-info{padding:18px 18px 12px}
  body.home.lp .lp-facts{margin-top:24px;padding:16px 0}
  body.home.lp .lp-facts .hero-stats{grid-template-columns:repeat(2,1fr);row-gap:14px}
  body.home.lp .lp-facts .hero-stats li:nth-child(3){border-left:0!important}
  body.home.lp .lp-facts .hero-stats li b{font-size:1.5rem!important}
  body.home.lp .hero .lp-act .quick-actions{grid-template-columns:1fr 1fr;gap:10px!important}
  body.home.lp .hero .lp-act .quick-actions .qa:nth-child(2){grid-column:1/-1;order:-1}
  body.home.lp .hero .lp-act .qa{padding:12px 10px!important;min-height:64px}
  body.home.lp .hero .lp-act .gateway{grid-template-columns:1fr;padding:0}
  body.home.lp .hero .lp-act .gw{flex-direction:row!important;text-align:left!important;border-left:0!important;border-top:1px solid var(--lp-line)!important;padding:16px 16px!important;gap:12px!important}
  body.home.lp .hero .lp-act .gw:first-child{border-top:0!important}
  body.home.lp .hero .lp-act .gw .ico{font-size:1.7rem!important}
  body.home.lp .hero .lp-act .gw .go{margin:0 0 0 auto!important;border-bottom:0}
  body.home.lp .prev-cards{grid-template-columns:1fr!important}
  body.home.lp .spec-card .body,body.home.lp .spec-card:nth-child(2) .body{padding:22px 20px!important}
}
@media(prefers-reduced-motion:reduce){body.home.lp .hero-carousel img{transition:none!important}}

/* ---------- 既存の強い決まり（body.home .hero .container を縦1列・static に固定）に勝つ ---------- */
body.home.lp .hero .container.lp-over{display:grid!important;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start!important;
  position:relative!important;z-index:2!important;max-width:1080px!important;margin:-150px auto 0!important;padding:0 22px!important;gap:22px}
body.home.lp .hero .container.lp-over>.lp-panel{position:relative!important;width:auto!important}
body.home.lp .hero .container.lp-over>.lp-info{position:relative!important;width:auto!important}
body.home.lp .hero .container.lp-act{max-width:1080px!important;padding:28px 22px 6px!important;align-items:stretch!important}
body.home.lp .hero .container.lp-act>*{width:100%!important}
body.home.lp .lp-facts .container{max-width:1080px!important;align-items:stretch!important}
body.home.lp .hero .hero-carousel.lp-photo::after{display:none!important;content:none!important}
@media(max-width:959px){
  body.home.lp .hero .container.lp-over{grid-template-columns:1fr;gap:0;margin-top:-90px!important}
}
@media(max-width:759px){
  body.home.lp .hero .hero-carousel.lp-photo{width:100%!important;margin:0!important;height:74vw!important;box-shadow:none!important}
  body.home.lp .hero .container.lp-over{margin-top:-64px!important;padding:0 16px!important}
  body.home.lp .hero .container.lp-act{padding:22px 16px 6px!important}
  body.home.lp .lp-cross-a{right:14px!important;top:-26px!important}
}

/* ---------- 仕上げ（2026-11-07 目視の後） ---------- */
body.home.lp .lp-info .lp-nb{white-space:nowrap}
body.home.lp .lp-info .service-summary li{grid-template-columns:none!important}
body.home.lp .lp-info .service-summary .summary-tag{text-align:left!important;min-width:0!important;padding:0!important;font-size:.78rem!important}
body.home.lp .doc-more{display:block!important;width:fit-content;margin:18px auto 0!important;text-align:center}
body.home.lp .prev-card .more,body.home.lp .prev-card>span:last-child:not(.pc-body){margin-left:auto}
body.home.lp .hero .lp-act .quick-actions{gap:14px!important}
body.home.lp .hero .lp-act .qa{border-radius:12px!important}
@media(max-width:759px){
  /* 既存どおりスマホの電話・予約は下の追従バーに任せる（ここではアクセスだけ） */
  body.home.lp .hero .lp-act .quick-actions{grid-template-columns:1fr!important}
  body.home.lp .hero .lp-act .quick-actions .qa[href="#access"]{grid-column:1/-1;flex-direction:row!important;justify-content:center!important;width:100%!important}
}
body.home.lp .lp-info .service-summary .summary-text .lp-nb{display:inline!important;white-space:nowrap;padding:0!important;margin:0!important;background:none!important;border:0!important;font:inherit!important;color:inherit!important;width:auto!important;text-align:left!important}
body.home.lp .lp-info .service-summary .summary-text,body.home.lp .lp-info .service-summary .summary-tag{text-align:left!important}

/* ===== 2026-11-07 院長の指摘で改訂：濃い緑の面（濃い地に白文字）をやめ、白いパネル1枚に収める ===== */
body.home.lp .hero .hero-carousel.lp-photo{height:clamp(400px,42vw,600px)!important}
body.home.lp .lp-ring{top:calc(clamp(400px,42vw,600px) - 150px)}
body.home.lp .hero .container.lp-over{display:block!important;margin-top:-140px!important}
body.home.lp .hero .container.lp-over>.lp-panel{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:0 34px;align-items:center;
  max-width:1036px;padding:30px 36px 28px!important}
body.home.lp .lp-panel>.lp-head,body.home.lp .lp-panel>.lp-info{position:relative!important;width:auto!important}
body.home.lp .lp-panel>.lp-info{background:none!important;color:var(--lp-ink)!important;box-shadow:none!important;border-radius:0!important;
  margin:0!important;padding:2px 0 2px 30px!important;border-left:1px solid var(--lp-line)}
body.home.lp .lp-panel .lp-info .service-summary li{border-top:1px solid var(--lp-line)!important;padding:9px 0!important}
body.home.lp .lp-panel .lp-info .service-summary li:first-child{border-top:0!important;padding-top:0!important}
body.home.lp .lp-panel .lp-info .service-summary li:last-child{padding-bottom:0!important}
body.home.lp .lp-panel .lp-info .service-summary .summary-tag{color:#a35f17!important;font-size:.78rem!important;font-weight:700!important}
body.home.lp .lp-panel .lp-info .service-summary .summary-text{color:var(--lp-ink)!important;font-size:.94rem!important;line-height:1.65!important}

/* 予約ボタンも濃い塗り＋白文字をやめる：白地に緑の太い縁で「主」を示す */
body.home.lp .hero .lp-act .quick-actions .qa:nth-child(2){background:#fff!important;color:var(--lp-deep)!important;
  border:2px solid var(--lp-green)!important;border-bottom-width:5px!important;box-shadow:0 6px 18px rgba(6,66,54,.10)!important;font-size:1.1rem!important}
body.home.lp .hero .lp-act .quick-actions .qa:nth-child(2) small{color:#4c6660!important}
body.home.lp .hero .lp-act .quick-actions .qa:nth-child(2) .qa-ill{background:var(--lp-soft)!important}
body.home.lp .hero .lp-act .quick-actions .qa:nth-child(2) .qa-ill svg{fill:var(--lp-green)!important}

@media(max-width:959px){
  body.home.lp .hero .container.lp-over>.lp-panel{grid-template-columns:1fr;gap:0}
  body.home.lp .lp-panel>.lp-info{border-left:0;border-top:1px solid var(--lp-line);padding:14px 0 0!important;margin-top:16px!important}
}
@media(max-width:759px){
  body.home.lp .hero .hero-carousel.lp-photo{height:88vw!important;clip-path:polygon(0 0,100% 0,100% 90%,0 100%)}
  body.home.lp .lp-ring{top:calc(88vw - 80px)}
  body.home.lp .hero .container.lp-over{margin-top:-58px!important}
  body.home.lp .hero .container.lp-over>.lp-panel{padding:20px 18px 16px!important}
  body.home.lp .lp-panel .lp-info .service-summary li{display:grid!important;grid-template-columns:5.6em 1fr!important;gap:8px;align-items:baseline;padding:8px 0!important}
  body.home.lp .lp-panel .lp-info .service-summary .summary-tag{font-size:.74rem!important;margin:0!important}
  body.home.lp .lp-panel .lp-info .service-summary .summary-text{font-size:.88rem!important;line-height:1.6!important}
}
@media(max-width:759px){body.home.lp .lp-panel .lp-info .service-summary .summary-tag{text-align:left!important;justify-self:start!important;width:auto!important}}

/* ===== 2026-11-07 院長の指摘②：写真ごとに見せる所を決める（重ね方の工夫） =====
   PC：写真を少し高く・パネルの重なりを浅く（140→100px）。写真の高さは画面の高さに合わせ、パネルが最初の1画面に収まる上限で止める
   1・3=受付・待合は院長の指摘③で最初の位置に戻した（広い空間を見せる）
   2=診察  先生の顔・犬の頭・手元が帯に入る位置
   （1・3は直す前の位置の方が全体が入る）
   4=トリミング 犬の頭が切れない位置
   5=手術  天井と照明を切り、顔から手元までを帯に入れ、手前の器具台にパネルを少し重ねる */
body.home.lp .hero .hero-carousel.lp-photo{height:clamp(400px,min(46vw,calc(100vh - 270px)),680px)!important}
body.home.lp .lp-ring{top:calc(clamp(400px,min(46vw,calc(100vh - 270px)),680px) - 120px)}
body.home.lp .hero .container.lp-over{margin-top:-100px!important}
body.home.lp #heroCarousel img:nth-child(1){object-position:center 58%!important}
body.home.lp #heroCarousel img:nth-child(2){object-position:center 49%!important}
body.home.lp #heroCarousel img:nth-child(3){object-position:center 42%!important}
body.home.lp #heroCarousel img:nth-child(4){object-position:center 24%!important}
body.home.lp #heroCarousel img:nth-child(5){object-position:center 58%!important}
@media(max-width:759px){
  body.home.lp .hero .hero-carousel.lp-photo{height:88vw!important}
  body.home.lp .lp-ring{top:calc(88vw - 80px)}
  body.home.lp .hero .container.lp-over{margin-top:-58px!important}
  body.home.lp #heroCarousel img:nth-child(1){object-position:center center!important}
  body.home.lp #heroCarousel img:nth-child(2){object-position:center 62%!important}
  body.home.lp #heroCarousel img:nth-child(3){object-position:center 42%!important}
  body.home.lp #heroCarousel img:nth-child(4){object-position:center 54%!important}
  body.home.lp #heroCarousel img:nth-child(5){object-position:center 80%!important}
}

/* ===== 2026-11-07 院長の指摘④：受付・待合が帯になって狭い → PCは写真を右寄せで大きく（横1.6:縦1）、パネルは左から写真の端に重ねる
   スマホは写真を縦に長く（88vw→112vw）・重なりを浅く ===== */
@media(min-width:960px){
  body.home.lp .lp-stage{display:grid!important;grid-template-columns:1fr;--ph:min(calc(62vw / 1.6),calc(100vh - 150px),620px)}
  body.home.lp .hero .hero-carousel.lp-photo{grid-area:1/1;justify-self:end;width:62vw!important;height:var(--ph)!important;
    clip-path:polygon(9% 0,100% 0,100% 100%,0 100%)!important}
  body.home.lp .hero .container.lp-over{grid-area:1/1;align-self:center;margin:0 auto!important;width:100%!important}
  body.home.lp .hero .container.lp-over>.lp-panel{grid-template-columns:1fr!important;gap:0!important;max-width:520px!important;margin:0!important;padding:32px 34px 28px!important}
  body.home.lp .lp-panel>.lp-info{border-left:0!important;border-top:1px solid var(--lp-line);padding:16px 0 0!important;margin-top:18px!important}
  body.home.lp .lp-ring{top:auto;bottom:-60px;left:2%}
  body.home.lp .lp-facts{margin-top:28px}
  body.home.lp #heroCarousel img:nth-child(1){object-position:center 58%!important}
  body.home.lp #heroCarousel img:nth-child(2){object-position:center 51%!important}
  body.home.lp #heroCarousel img:nth-child(3){object-position:center 45%!important}
  body.home.lp #heroCarousel img:nth-child(4){object-position:center 38%!important}
  body.home.lp #heroCarousel img:nth-child(5){object-position:center 60%!important}
}
@media(max-width:759px){
  body.home.lp .hero .hero-carousel.lp-photo{height:112vw!important;clip-path:polygon(0 0,100% 0,100% 94%,0 100%)!important}
  body.home.lp .lp-ring{top:calc(112vw - 70px)}
  body.home.lp .hero .container.lp-over{margin-top:-36px!important}
  body.home.lp #heroCarousel img:nth-child(1){object-position:center center!important}
  body.home.lp #heroCarousel img:nth-child(2){object-position:center 90%!important}
  body.home.lp #heroCarousel img:nth-child(3){object-position:center 50%!important}
  body.home.lp #heroCarousel img:nth-child(4){object-position:center 79%!important}
  body.home.lp #heroCarousel img:nth-child(5){object-position:center 95%!important}
}
@media(min-width:960px){
  body.home.lp .lp-panel .lp-head h1{font-size:clamp(28px,2.4vw,35px)!important;white-space:nowrap;line-height:1.45!important}
}

/* ===== 2026-11-07 院長の指摘⑤：PCは白い枠をやめ、写真の左の空いた所に文字を置く（重ねない） ===== */
@media(min-width:960px){
  body.home.lp .lp-stage{--pw:58vw;--ph:min(calc(58vw / 1.6),calc(100vh - 150px),600px)}
  body.home.lp .hero .hero-carousel.lp-photo{width:var(--pw)!important}
  body.home.lp .hero .container.lp-over>.lp-panel{background:none!important;box-shadow:none!important;border-radius:0!important;
    max-width:calc(100vw - var(--pw) - 180px - 40px)!important;padding:0!important}
  body.home.lp .lp-panel .lp-cross{display:none!important}
}
@media(min-width:960px){body.home.lp .lp-panel .lp-head h1{font-size:min(2.05vw,32px)!important}}

/* ===== 2026-11-07 院長が案B（ロゴの丸を生かす）を採用：淡い大きな円＋線画アイコン（PCだけ。スマホは今の形） ===== */
body.home.lp .lp-ico{display:none}
@media(min-width:960px){
  body.home.lp .lp-ring{display:none!important}
  body.home.lp .hero .container.lp-over>.lp-panel{isolation:isolate}
  body.home.lp .hero .container.lp-over>.lp-panel::before{content:"";position:absolute;z-index:-1;left:-130px;top:50%;
    width:min(590px,41vw);aspect-ratio:1;transform:translateY(-50%);border-radius:50%;
    border:1.5px solid rgba(25,133,111,.16);background:radial-gradient(circle at 40% 40%,rgba(25,133,111,.05),rgba(25,133,111,.02) 70%);pointer-events:none}
  body.home.lp .lp-panel .lp-head{position:relative;padding-bottom:20px!important;border-bottom:1px solid var(--lp-line)}
  body.home.lp .lp-panel .lp-head::after{content:"";position:absolute;left:0;bottom:-1.5px;width:44px;height:3px;border-radius:2px;background:var(--lp-green)}
  body.home.lp .lp-panel>.lp-info{border-top:0!important;margin-top:6px!important;padding-top:0!important}
  body.home.lp .lp-panel .lp-info .service-summary li{display:grid!important;grid-template-columns:30px 1fr;column-gap:20px;align-items:center;padding:14px 0!important}
  body.home.lp .lp-panel .lp-info .service-summary li:first-child{padding-top:14px!important}
  body.home.lp .lp-ico{display:block;grid-row:1/3;width:30px;height:30px}
  body.home.lp .lp-ico svg{width:30px;height:30px;fill:none;stroke:var(--lp-green);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
  body.home.lp .lp-panel .lp-info .service-summary .summary-tag,
  body.home.lp .lp-panel .lp-info .service-summary .summary-text{grid-column:2;border-left:1px solid var(--lp-line);padding-left:16px!important}
  body.home.lp .lp-panel .lp-info .service-summary .summary-tag{font-size:.86rem!important;letter-spacing:.06em;padding-bottom:2px!important}
}
@media(min-width:960px){
  body.home.lp .lp-panel .lp-info .service-summary .summary-tag{grid-row:1!important;align-self:end}
  body.home.lp .lp-panel .lp-info .service-summary .summary-text{grid-row:2!important;align-self:start}
  body.home.lp .lp-panel .lp-info .service-summary .summary-tag,
  body.home.lp .lp-panel .lp-info .service-summary .summary-text{display:block!important;width:auto!important;margin:0!important;justify-self:stretch!important;text-align:left!important}
  body.home.lp .hero .container.lp-over>.lp-panel{margin-left:-24px!important;max-width:calc(100vw - var(--pw) - 180px)!important}
  body.home.lp .lp-panel .lp-info .service-summary .summary-text{font-size:.9rem!important}
  body.home.lp .hero .container.lp-over>.lp-panel::before{width:min(500px,36vw);left:-90px}
}
@media(min-width:960px){
  body.home.lp .lp-panel .lp-info .service-summary li{grid-template-columns:30px minmax(0,1fr)!important;row-gap:2px!important;column-gap:18px!important}
  body.home.lp .lp-panel .lp-info .service-summary .summary-tag,
  body.home.lp .lp-panel .lp-info .service-summary .summary-text{border-left:1px solid var(--lp-line)!important}
  body.home.lp .lp-panel .lp-info .service-summary .summary-tag{padding-top:2px!important}
}
@media(min-width:960px){body.home.lp .lp-panel .lp-info .service-summary .summary-tag{border-radius:0!important;background:none!important}}

/* ===== 2026-11-07 院長：案Bの見本に寄せる＋「かかりつけ」にオレンジの下線 ===== */
@media(min-width:960px){
  body.home.lp .hero .container.lp-over>.lp-panel{margin-left:-64px!important;max-width:min(470px,calc(100vw - var(--pw) - 120px))!important}
  body.home.lp .lp-panel .lp-head h1{font-size:min(2.5vw,36px)!important;line-height:1.5!important;letter-spacing:.01em}
  body.home.lp .lp-panel .lp-head .lp-sub{font-size:1.12rem!important;margin-top:10px!important}
  body.home.lp .lp-panel .lp-head h1 .accent{color:inherit!important;background:none!important;text-decoration:underline!important;
    text-decoration-color:#e8892b!important;text-decoration-thickness:4px!important;text-underline-offset:7px!important;text-decoration-skip-ink:none}
  body.home.lp .hero .container.lp-over>.lp-panel::before{width:min(580px,40vw);left:-110px;top:46%}
  body.home.lp .lp-panel .lp-info .service-summary li{grid-template-columns:auto minmax(0,1fr)!important;column-gap:18px!important;padding:15px 0!important}
  body.home.lp .lp-ico{width:auto;height:30px;padding-right:18px;border-right:1px solid rgba(6,66,54,.28);display:flex;align-items:center}
  body.home.lp .lp-ico svg{width:30px;height:30px}
  body.home.lp .lp-panel .lp-info .service-summary .summary-tag,
  body.home.lp .lp-panel .lp-info .service-summary .summary-text{border-left:0!important;padding-left:0!important}
  body.home.lp .lp-panel .lp-info .service-summary .summary-tag{font-size:.98rem!important;letter-spacing:.08em}
  body.home.lp .lp-panel .lp-info .service-summary .summary-text{font-size:.97rem!important;line-height:1.6!important}
}
@media(min-width:960px){body.home.lp .lp-ico svg{stroke:#1d5a4c!important;stroke-width:1.8!important}}
@media(min-width:960px){body.home.lp .hero .container.lp-over>.lp-panel::before{background:none!important;border-color:rgba(25,133,111,.22)!important}}
