@charset "UTF-8";
/* ==========================================================================
   サンプラス TOP（PC 541:1895 / SP 541:980・2026-09-11 全ノードJSON実測）
   共通セクション（FV / pickup / news / Q&A / info）は .p-top--sunplus で上書き。館固有は .p-sun__*
   ========================================================================== */
/* --------------------------------------------------------------------------
   FV 上書き（SP 541:982 STRETCH → 幅296.1% 左-186.0%／PC 541:2300 FILL＝cover）
   -------------------------------------------------------------------------- */
/* 2026-09-21 比率の是正（p-top.scss の .p-top__fv-slide 参照）: 旧 left -186%・幅296.1% → 中央に来る点＝(725.4+195)/1154.79 */
.p-top--sunplus .p-top__fv-slide {
  --fv-f: 0.797027;
}

/* --------------------------------------------------------------------------
   pickup 上書き（見出し＝「＋」＋TOPICS 館色。SP: group 130×60 at x120.3＝中心 185.3・＋27 (0,0)・文字 (17.9,6) ＋が 9.1 重なる）
   -------------------------------------------------------------------------- */
.p-top--sunplus .p-top__pickup-title {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 6px 19.4px 0 0; /* 文字 y6・中心を 9.7 左へ */
  color: var(--color-main);
}

.p-top--sunplus .p-top__pickup-plus {
  margin-top: -6px;
  margin-right: -9.1px;
}

.p-top--sunplus .p-top__pickup-slider {
  margin-top: 32px; /* 実測: 見出しブロック下端60 → バナー92 */
}

/* --------------------------------------------------------------------------
   コンセプト（SP のみ 541:1338 390×212 at y1069）
   -------------------------------------------------------------------------- */
.p-sun__concept {
  position: relative;
  width: 100%;
  height: min(212px, 54.358974359vw);
  margin-top: 64px; /* 実測: TOPICKS 下端1005 → 1069 */
  overflow: hidden;
}

.p-sun__concept-canvas {
  position: absolute;
  top: 0;
  left: 50%;
  width: 390px;
  height: 212px;
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #525252;
  text-align: center;
}

/* 541:1339 (0,0) 390×86 Zen Old Mincho 700 24 lh43.2 */
.p-sun__concept-title {
  margin: 0;
  font-family: "Zen Old Mincho", serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.7916666667;
}

/* 541:1340 (0,116) 390×96 Zen Old Mincho 400 18 lh32.4 */
.p-sun__concept-text {
  margin: 30px 0 0;
  font-family: "Zen Old Mincho", serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7777777778;
}

/* --------------------------------------------------------------------------
   3つの理由（PC 541:2210 1346×905 at x47 / SP 541:1295 351×1443.9 at x-1）
   -------------------------------------------------------------------------- */
/* 2026-09-21 flex/grid 化（先方依頼 9/19）: 高さ固定(1443.9)をやめ中身に追従（.js-canvas-fit）。
   カード＝写真 → 下地（文を載せる）の縦積み。下地は高さ固定をやめ「文＋上下の余白」で伸びる（Figma の高さは下限）。
   SP＝カード3枚を縦に積む（すき間は Figma のまま 46.1／64.1＝均等化しない）／PC＝見出し群 → カード3枚の横並び（すき間 84）。
   🚫 バッジ（輪・点・Point・番号）は写真の角に重ねる飾り＝absolute のまま・位置は 9/18 のユーザー裁定の値から一切変えない（基準をカードに移しただけ）。背面 POINT も absolute のまま */
.p-sun__points {
  position: relative;
  width: 100%;
  margin-top: 40px; /* 実測: concept 下端1281 → 1321 */
  overflow: hidden;
}

.p-sun__points-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  min-height: 1443.9px; /* Figma のフレーム高さを下限に */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #525252;
}

/* PC のみ（見出し群・背面 POINT） */
.p-sun__points-en,
.p-sun__points-head {
  display: none;
}

/* カード SP 幅285.3: 1枚目 (63.9,50.8)／2枚目 (64.7,524.5)＝1枚目下端478.4 → 46.1／3枚目 (64.7,1016.3)＝2枚目下端952.2 → 64.1 */
.p-sun__points-item {
  position: relative; /* バッジの基準 */
  display: grid;
  grid-template-columns: 285.3px;
  flex: none;
}

.p-sun__points-item--1 {
  margin: 50.8px 0 0 63.9px;
}

.p-sun__points-item--2 {
  margin: 46.1px 0 0 64.7px;
}

.p-sun__points-item--3 {
  margin: 64.1px 0 0 64.7px;
}

/* バッジ SP: 91.3×92.5 at (-1, 4.7 / 478.4 / 970.1)＝カード（写真の左上）から 上46.1・左64.9（2,3枚目は65.7） */
.p-sun__points-badge {
  position: absolute;
  top: -46.1px;
  width: 91.3px;
  height: 92.5px;
}

.p-sun__points-item--1 .p-sun__points-badge {
  left: -64.9px;
}

.p-sun__points-item--2 .p-sun__points-badge {
  left: -65.7px;
}

.p-sun__points-item--3 .p-sun__points-badge {
  left: -65.7px;
}

/* 輪 541:1308 — 🔴 2026-09-18 是正（3段階）。
   ⚠️① 当初は VECTOR の `absoluteBoundingBox`(90.95) を直径にしていた（VECTOR は箱と実際の
      図形が一致しない）。`strokeGeometry` 実読で外形 76.5135・線幅 0.5332。
   ⚠️② `border-radius:50%` の閉じた真円で描いていたが、Figma は **右下 1/4 が欠けた弧**
      （strokeGeometry の弧は3本＝下→左→上→右の 270°のみ）。border では途切れを描けないため
      **SVG の stroke-dasharray** へ変更。
   🔴③ それでも「円が左上にずれている」とユーザー再指摘。調査の結果
      **Figma の生データ自体が破綻していた**＝点は弧より 0.28px 外側・方向 91.40°（真下でない）、
      文字塊の中心は弧の中心から (+7.34, +9.90) ずれる。∴Figma の座標をそのまま使うと崩れる。
   ✅ **ユーザー指定の正解条件で解き直した**（2026-09-18・原文「①円の端が点の位置と一致して
      重なっている ②point01などが円の中心に位置する」／「点の中心が円の端と一致する位置に」）。
   🔴 **ただし3つの要求は同時に成立しない**（ユーザー問い「円の大きさは本当に一致しているのか」で発覚）:
      当初は条件①②だけで半径を逆算し 直径 69.875 にしたが、**Figma の直径 76.5135 より 6.64px 小さく**
      なっていた（当方は大きさを照合していなかった＝報告漏れ）。
      ∴ **大きさは Figma を正解とし**（デザインの寸法そのもの・ずれ量も 6.64px > 3.32px と大きい）、
      **位置は条件①（点が弧の欠けの終端＝真下の端に重なる）を満たす**ように置く:
        直径  = 76.5135（Figma 実測）
        中心x = 点の中心x 52.5859 ∴ left = 52.5859 − 38.2568 = 14.3291
        中心y = 点の中心y 83.0859 − 半径 38.2568 = 44.8291 ∴ top = 6.5723
      ⚠️この結果、文字塊の縦中心 48.1484 は円の中心 44.8291 より **+3.32px 下**に残る（許容）。
   📌 点・ラベル・番号は **一切変更していない**（ユーザー指示）。動かすのは円だけ。 */
.p-sun__points-ring {
  position: absolute;
  top: 6.5723px;
  left: 14.3291px;
  width: 76.5135px;
  height: 76.5135px;
  color: var(--color-tint); /* circle の stroke="currentColor" が参照 */
  overflow: visible;
}

/* 点 541:1309 3.8 at (50.7,81.2)
   ⚠️2026-09-18: 当方が一度 (35.72,74.91) へ変更したが、ユーザー指示
   「Point01や点の位置などは一切元の修正前から変えないでください」により元の値へ復帰 */
.p-sun__points-dot {
  position: absolute;
  top: 81.2px;
  left: 50.7px;
  width: 3.8px;
  height: 3.8px;
  border-radius: 50%;
  background: var(--color-tint);
}

/* Point 541:1305 (32.7,21.5) Buenard 400 11.21 lh14.6 */
.p-sun__points-label {
  position: absolute;
  top: 21.5px;
  left: 32.7px;
  font-family: "Buenard", serif;
  font-size: 11.21px;
  font-weight: 400;
  line-height: 1.3380909902;
  white-space: nowrap;
}

/* 番号 541:1306 (30.1,28.8) Buenard 400 35.43 lh46.1 */
.p-sun__points-num {
  position: absolute;
  top: 28.8px;
  left: 30.1px;
  font-family: "Buenard", serif;
  font-size: 35.43px;
  font-weight: 400;
  line-height: 1.2983347446;
  white-space: nowrap;
}

/* 写真 SP 285.3×208.7 r28.14 上（541:1299 (64.9,50.8) / 541:1313 (65.7,524.5) / 541:1327 (65.7,1016.3)） */
.p-sun__points-img {
  grid-area: 1/1;
  width: 285.3px;
  height: 208.7px;
  border-radius: 28.14px 28.14px 0 0;
  overflow: hidden;
}

.p-sun__points-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 下地 SP 285.3×218.9 r28.14 下 #f5eded（541:1298 (64.9,259.5) / 541:1312 (65.7,733.3) / 541:1326 (65.7,1225)）。
   文と同じ段に重ねて置く＝文が長くなれば段が伸び、下地も一緒に伸びる（218.9 は下限） */
.p-sun__points-bg {
  grid-area: 2/1;
  min-height: 218.9px;
  border-radius: 0 0 28.14px 28.14px;
  background: var(--color-bg-light);
}

/* 文 SP（541:1300 (81.3,289.2) 252.5w / 541:1314 (88.3,763) 239.2w / 541:1328 (88.3,1254.7) 239.2w）
   下地の上端から 29.7・下の余白は最小 25.7（2,3枚目の実寸: 218.9 − 29.7 − 163.5） */
.p-sun__points-text {
  position: relative; /* 下地より手前 */
  grid-area: 2/1;
  justify-self: start;
  margin: 29.7px 0 25.7px;
}

.p-sun__points-item--1 .p-sun__points-text {
  width: 252.5px;
  margin-left: 16.4px;
} /* 80.3 − 63.9 */
.p-sun__points-item--2 .p-sun__points-text {
  width: 239.2px;
  margin-left: 22.6px;
} /* 87.3 − 64.7 */
.p-sun__points-item--3 .p-sun__points-text {
  width: 239.2px;
  margin-left: 22.6px;
}

/* 2枚目だけ Figma は写真下端733.2 と下地733.3 のあいだに 0.1 のすき間がある＝以降の位置を Figma の値ちょうどに保つ */
.p-sun__points-item--2 .p-sun__points-img {
  margin-bottom: 0.1px;
}

/* 題 SP Zen Old Mincho 700 20 lh29 中央 */
.p-sun__points-item-title {
  margin: 0;
  font-family: "Zen Old Mincho", serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.45;
  text-align: center;
  white-space: nowrap;
}

/* 本文 SP Noto Sans 400 16 lh25.6（箱 78/104＝26/行）・題下 +30.5 */
.p-sun__points-item-text {
  margin: 30.5px 0 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.625;
  text-align: left;
}

/* --------------------------------------------------------------------------
   客室（PC 541:2184 1314×660 at x126 / SP 541:1256 370×735.5 at x10）
   -------------------------------------------------------------------------- */
/* 2026-09-21 flex/grid 化（先方依頼 9/19）: 高さ固定(735.5)をやめ中身に追従（.js-canvas-fit）。説明文が長くなればボタンが下がる。
   SP＝写真の枠 → ROOM → 副題 → 説明 → ボタン の縦積み／PC＝左に文字の列・右に写真の枠（grid）。
   写真の枠の中: 🔁2026-09-25 写真は横一列（flex）に並べて1枚分ずつ送る（すずさん 9/22「スライダーに変更」）。客室名・矢印は重ねる要素＝absolute。「＋」も飾り＝absolute のまま */
.p-sun__rooms {
  position: relative;
  width: 100%;
  margin-top: 90px; /* 実測: points 下端2764.9 → 2854.9 */
  overflow: hidden;
}

.p-sun__rooms-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  min-height: 735.5px; /* Figma のフレーム高さを下限に */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #525252;
}

/* スライダー枠 SP 541:1258 (0,0)+10 370×323（主 336 + gap13 + 見切れ 47） */
.p-sun__rooms-slider {
  position: relative; /* 中の写真・矢印の基準 */
  flex: none;
  width: 370px;
  height: 323px;
  margin-left: 10px;
  overflow: visible; /* SP は矢印（y353）が枠の外＝hidden だと消える（9/12 参照PNG照合で発覚）。スライド/見切れは各自の箱で切る */
}

/* 写真の見える範囲（SP: 主 336 + 間隔13 + 見切れ47 ＝ 0〜396。見切れの右端は画面外＝section で切れる） */
.p-sun__rooms-view {
  position: absolute;
  top: 0;
  left: 0;
  width: 396px;
  height: 323px;
  overflow: hidden;
}

/* 写真の列: 1枚 336・間隔13 ＝ 次の写真の左端が 349（旧 見切れ 541:1260 の x349 と同じ位置） */
.p-sun__rooms-track {
  display: flex;
  gap: 13px;
  height: 100%;
}

.p-sun__rooms-slide {
  position: relative; /* 客室名（absolute）の基準 */
  flex: 0 0 336px;
  width: 336px;
  height: 323px;
  margin: 0;
}

.p-sun__rooms-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 客室名 541:1261 (11,273) 129×43 白 Zen Old Mincho 400 24 lh43.2
   今の1枚だけ表示（見切れの写真には Figma でも客室名が無い＝次の写真の名前は出さない） */
.p-sun__rooms-name {
  opacity: 0;
  transition: opacity 0.3s ease;
  position: absolute;
  top: 273px;
  left: 11px;
  color: #ffffff;
  font-family: "Zen Old Mincho", serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.7916666667;
  white-space: nowrap;
}

.p-sun__rooms-slide.is-active .p-sun__rooms-name {
  opacity: 1;
}

/* 矢印 SP 24.5（541:1263 (153,353) / 541:1266 (192.5,353)）＝キャンバス基準 +10 */
.p-sun__rooms-arrow {
  position: absolute;
  top: 353px;
  width: 24.5px;
  height: 24.5px;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  line-height: 0;
}

.p-sun__rooms-arrow img {
  display: block;
  width: 100%;
  height: 100%;
}

.p-sun__rooms-arrow--prev {
  left: 153px;
}

.p-sun__rooms-arrow--next {
  left: 192.5px;
}

/* 「＋」27 541:1273 (0,407.5)+10 */
.p-sun__rooms-plus {
  position: absolute;
  top: 407.5px;
  left: 10px;
  width: 27px;
  height: 27px;
}

.p-sun__rooms-plus::before {
  top: 13.4px;
}

.p-sun__rooms-plus::after {
  left: 12.9px;
}

/* ROOM 541:1272 (17,413.5)+10 114×61 Buenard 700 36 lh61.2 館色 中央 */
.p-sun__rooms-title {
  width: 114px;
  margin: 90.5px 0 0 27px; /* 写真の枠の下端323 → 413.5（あいだに矢印 y353） */
  color: var(--color-main);
  font-family: "Buenard", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 副題 541:1276 (0,496.5)+10 370×86 Zen Old Mincho 700 24 lh43.2 */
.p-sun__rooms-sub {
  width: 370px;
  margin: 22px 0 0 10px; /* ROOM 下端474.5 → 496.5 */
  font-family: "Zen Old Mincho", serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.7916666667;
}

/* 説明 541:1277 (0,604.5)+10 370w Noto Sans 400 16 lh28.8 */
.p-sun__rooms-text {
  width: 370px;
  margin: 22px 0 0 10px; /* 副題下端582.5 → 604.5 */
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8125;
}

/* ボタン 541:1278 (79.1,700.5)+10: 説明下端662.5 → 700.5＝38 */
.p-sun__rooms-btn {
  margin: 38px 0 0 89.1px;
}

/* --------------------------------------------------------------------------
   館内施設・サービス（PC 541:2147 1236×272 at x125 / SP 541:1218 375×463 at x7）
   -------------------------------------------------------------------------- */
/* 2026-09-21 flex/grid 化（先方依頼 9/19）: 高さ固定(463)をやめ中身に追従（.js-canvas-fit）。項目の増減で崩れない。
   SP＝見出し → 英字 → 一覧（3列）→ ボタン の縦積み／PC＝見出し行（見出し・英字・右端ボタン）→ 一覧（6列）。
   タイルは Figma でも等間隔（SP 25／PC 51）＝均等化による移動なし。「＋」は見出しに重ねる飾り＝absolute のまま */
.p-sun__service {
  position: relative;
  width: 100%;
  margin-top: 90px; /* 実測: ROOMS 下端3590.4 → 3680.4 */
  overflow: hidden;
}

.p-sun__service-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  min-height: 463px; /* Figma のフレーム高さを下限に */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #525252;
}

/* 「＋」27 541:1222 (2,0.4)+7 */
.p-sun__service-plus {
  position: absolute;
  top: 0.4px;
  left: 9px;
}

/* 題 541:1221 (26,0)+7 324×61 Zen Old Mincho 700 36 lh61.2 館色 中央 */
.p-sun__service-title {
  width: 324px;
  margin: 0 0 0 33px;
  color: var(--color-main);
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 英字 541:1225 (2,61)+7 372.6×34 Buenard 500 20 lh34 左 */
.p-sun__service-en {
  width: 372.6px;
  margin: 0 0 0 9px;
  font-family: "Buenard", serif;
  font-size: 20px;
  font-weight: 500; /* Figma 541 実測=500（Buenard-Medium）。Google Fonts は 500 を配信＝代替不要・2026-09-14 是正 */
  line-height: 1.7;
  white-space: nowrap;
}

/* ボタン 541:1226 (86,427.2)+7: 一覧の下（2段目下端375.7 → 427.2＝51.5）。DOM は PC の並び（見出し行の右）なので SP は order で最後へ */
.p-sun__service-btn {
  order: 3;
  margin: 51.5px 0 0 93px;
}

/* 一覧 SP: 108 角を3列（x8/141/274＝すき間25）・段のすき間 24.7（135+108 → 267.7）。英字下端95 → 1段目135＝40 */
.p-sun__service-list {
  order: 2;
  display: grid;
  grid-template-columns: repeat(3, 108px);
  gap: 24.7px 25px;
  margin: 40px 0 0 8px;
  list-style: none;
}

/* タイル SP 108 角 #f5eded。中身＝画像（上10.5・中央）＋ラベル（画像下 +2.8・中央。長い文言は左右均等にはみ出す） */
.p-sun__service-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 108px;
  height: 108px;
  padding-top: 10.5px;
  background: var(--color-bg-light);
}

/* 画像 67.2 at (20.4,10.5)＝中央／EV 78.4×67.2 at (15.5,10.5)＝中央(14.8)より 0.7 右 */
.p-sun__service-icon {
  display: block;
  flex: none;
  width: 67.2px;
  height: 67.2px;
  object-fit: contain;
}

.p-sun__service-item--ev .p-sun__service-icon {
  width: 78.4px;
  margin-left: 1.4px; /* 中央寄せの中で 0.7 右へ */
}

/* ラベル y+80.5（画像下端77.7 → 2.8）Noto Sans 700 11.2 lh19 中央 */
.p-sun__service-label {
  margin: 2.8px 0 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 11.2px;
  font-weight: 700;
  line-height: 1.6964285714;
  text-align: center;
  white-space: nowrap;
}

/* --------------------------------------------------------------------------
   送迎について（帯 SP 541:985 390×732 at y4161 ／ 541:1282 390×569 at y4233.4）
   帯＝セクション。内容はキャンバス（390×732）内の y+72.4 に置く
   -------------------------------------------------------------------------- */
/* 2026-09-21 flex/grid 化（先方依頼 9/19）: 高さ固定(732)をやめ中身に追従（.js-canvas-fit）。本文が長くなればボタンが下がり帯も伸びる。
   SP＝写真 → 見出し → 本文 → ボタン の縦積み／PC＝左に写真・右に文字の列（grid）。「＋」は見出しに重ねる飾り＝absolute のまま */
.p-sun__transfer {
  position: relative;
  width: 100%;
  margin-top: 17.6px; /* 実測: service 下端4143.4 → 帯4161 */
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff 0%, var(--color-band) 16.3%, var(--color-band) 84.6%, #ffffff 100%);
}

.p-sun__transfer-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  min-height: 732px; /* Figma の帯の高さを下限に */
  padding: 72.4px 0 30px; /* 上＝写真 y72.4／下＝ボタンと帯の下端のあいだの最小の余白 */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #525252;
}

/* 写真 541:1283 (0,0)+72.4 390×206 FILL */
.p-sun__transfer-img {
  flex: none;
  width: 390px;
  height: 206px;
  overflow: hidden;
}

.p-sun__transfer-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 「＋」541:1291 (18,241)+72.4 */
.p-sun__transfer-plus {
  position: absolute;
  top: 313.4px;
  left: 18px;
}

/* 題 541:1290 (60.6,253)+72.4 216×61 館色 中央 */
.p-sun__transfer-title {
  width: 216px;
  margin: 47px 0 0 60.6px; /* 写真下端278.4 → 325.4 */
  color: var(--color-main);
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 本文 541:1294 (18,344)+72.4 364×160 Noto Sans 400 18 lh32.4（5行） */
.p-sun__transfer-text {
  width: 364px;
  margin: 30px 0 0 18px; /* 見出し下端386.4 → 416.4 */
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7777777778;
}

/* ボタン 541:1285 (17,534)+72.4: 本文下端576.4 → 606.4＝30 */
.p-sun__transfer-btn {
  margin: 30px 0 0 17px;
}

/* --------------------------------------------------------------------------
   アクセス（PC 541:2101 992×541 at x224 / SP 541:1184 370×784 at x10）
   -------------------------------------------------------------------------- */
/* 2026-09-21 flex 化（先方依頼 9/19）: 高さ固定(784)をやめ中身に追従（.js-canvas-fit）。見出し→住所→電話→地図→案内文 を中央揃えの縦積みに。
   余白は Figma 座標の差（各行コメント）。「＋」と PC の背面 ACCESS は見出しに重ねる飾り＝absolute のまま */
.p-sun__access {
  position: relative;
  width: 100%;
  margin-top: -0.6px; /* 実測: 帯下端4893 → access 4892.4 */
  overflow: hidden;
}

.p-sun__access-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 390px;
  min-height: 784px; /* Figma のフレーム高さを下限に */
  padding-top: 12px; /* 見出し y12 */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #525252;
}

.p-sun__access-en {
  display: none;
}

/* 「＋」541:1188 (91.7,0)+10 */
.p-sun__access-plus {
  position: absolute;
  top: 0;
  left: 101.7px;
}

/* 題 541:1187 (134.3,12)+10 144×61 館色 中央（「＋」が左に付くぶん右寄り＝x144.3） */
.p-sun__access-title {
  align-self: flex-start;
  width: 144px;
  margin: 0 0 0 144.3px;
  color: var(--color-main);
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 住所 541:1192 (2.5,103)+10 365×20 Noto Sans JP 400 20 lh19.8 左／TEL 541:1193 (27,148)+10 316×20 中央 */
.p-sun__access-addr,
.p-sun__access-tel {
  margin: 0;
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  white-space: nowrap;
}

.p-sun__access-addr {
  width: 365px;
  margin-top: 30px; /* 見出し下端73 → 103 */
}

.p-sun__access-tel {
  width: 316px;
  margin-top: 25px; /* 住所下端123 → 148 */
  text-align: center;
}

/* 地図 541:1197 (0,181)+10 370×270: 電話下端168 → 181＝13 */
.p-sun__access-map {
  width: 370px;
  height: 270px;
  margin-top: 13px;
  background: #d9d9d9;
}

.p-sun__access-map iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

/* 案内文 x10・y491（地図下端451 → 40）から縦に積む: 車の見出し → 案内 → 駐車場 → 電車の見出し → 駅の行 */
.p-sun__access-text {
  width: 370px;
  margin-top: 40px;
}

/* 見出し行（アイコン30 + gap4 + 文字 24px 600 lh40.8）: 車 541:1206 (0,491)+10／電車 541:1211 (0,657)+10 */
.p-sun__access-head {
  display: flex;
  gap: 4px;
  align-items: center;
  height: 41px;
  margin: 0;
}

.p-sun__access-head--train {
  margin-top: 19px;
} /* 駐車場下端638 → 657 */
.p-sun__access-ico {
  display: block;
  width: 30px;
  height: 30px;
}

.p-sun__access-head-text {
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.7083333333;
  white-space: nowrap;
}

/* 行（18px lh30.6→31）: 案内 541:1205 (0,557) 400／駐車場 541:1209 (0,607) 600／駅 541:1215 (0,723)／徒歩 541:1216 (212.5,723) */
.p-sun__access-line {
  margin: 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7222222222;
  white-space: nowrap;
}

.p-sun__access-line--dir {
  margin-top: 25px;
} /* 見出し下端532 → 557 */
.p-sun__access-line--park {
  margin-top: 19px;
  font-weight: 600;
} /* 案内下端588 → 607 */
/* 駅の行: 駅名 → 点線 → 徒歩 の横並び（y723＝電車の見出し下端698 → 25）。駅名が変われば点線と徒歩も付いて動く */
.p-sun__access-row {
  display: flex;
  align-items: flex-start;
  margin-top: 25px;
}

.p-sun__access-line--walk {
  margin-left: 3px;
} /* 線右端219.5 → 222.5 */
/* 線 541:1217 (175.5,747)+10 34×1 #525252。駅名の箱（幅180＝右端190）に 4.5 かぶせる（閉じかっこの右の空き）。縦は行の上から24 */
.p-sun__access-rule {
  flex: none;
  width: 34px;
  margin: 24px 0 0 -4.5px;
  height: 1px;
  background: repeating-linear-gradient(90deg, #525252 0 1px, transparent 1px 4px); /* strokeDashes [1,3] ROUND＝点線 */
}

/* --------------------------------------------------------------------------
   news 上書き（SP 541:1152 at y5766.4: 見出し「＋」(2,0)+15・NEWS (44.6,12) 館色・お知らせ (2,73)）
   -------------------------------------------------------------------------- */
.p-top--sunplus .p-top__news {
  margin-top: 90px; /* 実測: access 下端5676.4 → 5766.4 */
}

/* 2026-09-21 flex 化（p-top.scss の news 参照）: 見出しは y0 起点（「＋」が (0,0)・NEWS は padding-top 12）＝台紙の上余白12を消す。
   「＋」は見出しに重ねる飾り＝absolute のまま（基準は見出し） */
.p-top--sunplus .p-top__news-canvas {
  padding-top: 0;
}

.p-top--sunplus .p-top__news-head {
  position: relative;
}

.p-top--sunplus .p-top__news-plus {
  position: absolute;
  top: 0;
  left: 0;
}

.p-top--sunplus .p-top__news-title {
  margin-left: 42.6px;
  padding-top: 12px;
  color: var(--color-main);
}

.p-top--sunplus .p-top__news-en {
  display: none;
}

/* タグ: Noto Sans 600・お知らせ #f5eded／キャンペーン・店舗情報 #cca11f 白文字（541:1170/2089） */
.p-top--sunplus .p-top__news-cat {
  font-weight: 600;
}

.p-top--sunplus .p-top__news-cat--cream {
  background: var(--color-tint);
  color: #ffffff;
}

/* --------------------------------------------------------------------------
   Q&A 上書き（帯 SP 541:986 at y6456・Q&A 541:1095 at (26,6488.1)・帯下端7448）
   -------------------------------------------------------------------------- */
.p-top--sunplus .p-top__qa {
  margin-top: 57.9px; /* 実測: news 下端6398.1 → 帯6456 */
  background: linear-gradient(180deg, #ffffff 0%, var(--color-band) 16.3%, var(--color-band) 84.6%, #ffffff 100%);
}

.p-top--sunplus .p-top__qa-canvas {
  padding: 32.1px 0 152.9px; /* 実測: 帯6456 → Q&A 6488.1／Q&A 下端7295.1 → 帯下端7448 */
}

/* 「＋」541:1097 (52,0)+26 ＝ キャンバス y＝padding-top */
.p-top--sunplus .p-top__qa-plus {
  position: absolute;
  top: 32.1px;
  left: 78px;
}

/* 題 541:1100 (82.2,12)+26 館色 */
.p-top--sunplus .p-top__qa-title {
  margin-left: 108.2px;
  color: var(--color-main);
}

/* Q 丸 541:1106: #525252 塗り・白文字・枠なし／A 丸 541:1113: 館色 */
.p-top--sunplus .p-top__qa-mark--q {
  border: 0;
  background: #525252;
  color: #ffffff;
}

.p-top--sunplus .p-top__qa-mark--a {
  background: var(--color-main);
}

/* --------------------------------------------------------------------------
   info 上書き（SP 541:1074 at (10,7385.1): 「＋」(92,0)・題 (134.6,12) 館色。帯に 62.9 重なる。フッターまで 100）
   -------------------------------------------------------------------------- */
.p-top--sunplus .p-top__info {
  --info-title-left: 144.6px; /* 「＋」(102) の右。2026-09-21 flex 化＝位置は変数で持つ（p-top.scss の info 参照） */
  margin-top: -62.9px;
  margin-bottom: 100px; /* 実測: info 下端7986.1 → footer 8086.1 */
}

.p-top--sunplus .p-top__info-plus {
  position: absolute;
  top: 0;
  left: 102px;
}

.p-top--sunplus .p-top__info-title {
  color: var(--color-main);
}

/* ==========================================================================
   PC
   ========================================================================== */
@media (min-width: 769px) {
  /* FV PC: 写真 FILL＝cover／見出し 541:2304 (137,230) 550w 45px lh81 ls-3.6／注記 (137,422)／線 (137,469) */
  .p-top--sunplus .p-top__fv-slide {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
  }
  .p-top--sunplus .p-top__fv-title--pc {
    top: 230px;
    left: 137px;
    width: 550px;
    font-size: 45px;
    line-height: 1.8;
    letter-spacing: -3.6px;
  }
  .p-top--sunplus .p-top__fv-note {
    top: 422px;
    left: 137px;
  }
  .p-top--sunplus .p-top__fv-line {
    top: 469px;
    left: 137px;
  }
  /* pickup PC: group 278.5×115 at x430.5（中心 569.75≒570）・＋42.6 (0,0)・TOPICS (55.5,6) gap12.9 */
  .p-top--sunplus .p-top__pickup-title {
    padding-right: 0;
  }
  .p-top--sunplus .p-top__pickup-plus {
    width: 42.6px;
    height: 42.6px;
    margin-right: 12.9px;
  }
  .p-top--sunplus .p-top__pickup-plus::before {
    top: 21.7px;
  }
  .p-top--sunplus .p-top__pickup-plus::after {
    left: 21px;
  }
  .p-top--sunplus .p-top__pickup-slider {
    margin-top: 48px; /* 実測: 見出しブロック下端115 → バナー163 */
  }
  .p-sun__concept {
    display: none;
  }
  /* points PC: 541:2210 1346×905 at x47 y1394（pickup 下端1243 → +151） */
  .p-sun__points {
    margin-top: 151px;
  }
  /* PC＝折り返す横並び: 見出し群（幅いっぱいの1段）→ カード3枚。
     同じ行のカードは一番高いものに揃える（align-items:stretch＋下地の段を 1fr）＝Figma も本文 138/170/202 に対し下地は3枚とも 280 で揃えている。
     🔑 2026-09-22 ユーザー指摘「そのカードの下地だけが伸びる＝適切か」→ 1枚だけ伸びて下端が不揃いになるのは不適切＝是正 */
  .p-sun__points-canvas {
    flex-flow: row wrap;
    align-items: stretch;
    align-content: flex-start;
    width: 1440px;
    min-height: 905px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 背面 POINT 541:1901 — 🔴 2026-09-18 是正（ユーザー指摘「POINT の『P』が表示されていない」）。
     ⚠️当方は `writing-mode: vertical-lr` の縦書きで実装していたが誤り。
     Figma 実読では **`size` が 312×125 の横書きテキストを rotation 1.5708rad（90°）回転**させた
     ものだった（`absoluteBoundingBox` 125×312 は回転後の外形＝これを箱サイズに使ったのが誤り）。
     縦書きにすると箱幅が 125px になり right が 1547.5 ＝ 親 `.p-sun__points` の
     `overflow:hidden`（右端 1455）を **92.5px 超過**して各文字の右側が削られていた
     （＝「P」だけでなく全文字が縦に切れていた／実測 en_box 1422.5〜1547.5 vs section 〜1455）。
     ∴ **312×125 の横書き＋`rotate(90deg)`** に直す。回転の基準点を左上にし、
     Figma の外形 125×312 と同じ位置に収まるよう translate で補正する。 */
  .p-sun__points-en {
    position: absolute;
    top: 21px;
    left: 1330px; /* Figma 1283 + 他要素と同じ +47 補正 */
    display: block;
    width: 312px;
    height: 125px;
    margin: 0;
    color: var(--color-main);
    font-family: "Buenard", serif;
    font-size: 96px;
    font-weight: 700;
    line-height: 1.3020833333;
    letter-spacing: 4.8px;
    text-align: center;
    white-space: nowrap;
    opacity: 0.3;
    transform: rotate(90deg) translateY(-125px);
    transform-origin: top left;
  }
  /* 見出し群 541:2211 (353,0)+47 640w: 題 36px 700 lh64.8（箱65）・本文 (353,125) 20px lh36 */
  .p-sun__points-head {
    display: block;
    flex: none;
    width: 640px;
    margin: 0 400px; /* 左右 400＝この段を見出し群だけで使い切る（中心720） */
    text-align: center;
  }
  .p-sun__points-title {
    margin: 0;
    font-family: "Zen Old Mincho", serif;
    font-size: 36px;
    font-weight: 700;
    line-height: 1.8055555556;
    white-space: nowrap;
  }
  .p-sun__points-lead {
    margin: 60px 0 0;
    font-family: "Zen Old Mincho", serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.8;
  }
  /* バッジ PC 116.8×118.3 at y299・x 0/448/897 (+47) */
  .p-sun__points-badge {
    top: -59px; /* 299 − 写真358 */
    width: 116.8px;
    height: 118.3px;
  }
  .p-sun__points-item--1 .p-sun__points-badge {
    left: -83px;
  } /* 47 − 130 */
  .p-sun__points-item--2 .p-sun__points-badge {
    left: -84px;
  } /* 495 − 579 */
  .p-sun__points-item--3 .p-sun__points-badge {
    left: -84px;
  } /* 944 − 1028 */
  /* カード PC 幅365: y358（見出し群の下端197 → 161）・x 130/579/1028＝すき間 84 */
  .p-sun__points-item {
    grid-template-columns: 365px;
    grid-template-rows: auto 1fr; /* 下地の段が行の余りを受ける＝3枚の下端が揃う */
  }
  .p-sun__points-item--1 {
    margin: 161px 0 0 130px;
  }
  .p-sun__points-item--2 {
    margin: 161px 0 0 84px;
  }
  .p-sun__points-item--3 {
    margin: 161px 0 0 84px;
  }
  /* 🔴 2026-09-18 是正（SP と同じ方針）: 大きさは Figma 実測 97.8762 を正解とし、
     位置は条件①（点が真下の端に重なる）で決める:
       中心x = 点の中心x 67.3203 ∴ left = 67.3203 − 48.9381 = 18.3822
       中心y = 点の中心y 106.2266 − 48.9381 = 57.2885 ∴ top = 8.3504
     線幅は viewBox スケールで Figma 実値 0.6821 に自動一致する。 */
  .p-sun__points-ring {
    top: 8.3504px;
    left: 18.3822px;
    width: 97.8762px;
    height: 97.8762px;
  }
  /* ⚠️2026-09-18: 当方が一度 (45.7,95.83) へ変更したが、ユーザー指示により元の値へ復帰 */
  .p-sun__points-dot {
    top: 103.8px;
    left: 64.9px;
    width: 4.86px;
    height: 4.86px;
  }
  .p-sun__points-label {
    top: 27.4px;
    left: 41.9px;
    font-size: 14.33px;
    line-height: 1.3258897418;
  }
  .p-sun__points-num {
    top: 36.9px;
    left: 38.5px;
    font-size: 45.32px;
    line-height: 1.3018534863;
  }
  /* 写真 PC 365×267 r36 上 y358・x 83/532/981 (+47) */
  .p-sun__points-img {
    width: 365px;
    height: 267px;
    border-radius: 36px 36px 0 0;
  }
  .p-sun__points-item--2 .p-sun__points-img {
    margin-bottom: 0;
  }
  /* 下地 PC 365×280 r36 下 y625（280 は下限） */
  .p-sun__points-bg {
    min-height: 280px;
    border-radius: 0 0 36px 36px;
  }
  /* 文 PC y663（下地の上端625 → 38）・x 104/561/1010 (+47)・w 323/306/306。下の余白は最小 40（3枚目の実寸: 280 − 38 − 202） */
  .p-sun__points-text {
    margin-top: 38px;
    margin-bottom: 40px;
  }
  .p-sun__points-item--1 .p-sun__points-text {
    width: 323px;
    margin-left: 21px;
  } /* 151 − 130 */
  .p-sun__points-item--2 .p-sun__points-text {
    width: 306px;
    margin-left: 29px;
  } /* 608 − 579 */
  .p-sun__points-item--3 .p-sun__points-text {
    width: 306px;
    margin-left: 29px;
  }
  /* 2026-09-22: 1枚目の本文1行目は 18px×18字＝324 ＞ 箱323。行末の「。」を詰めない Firefox では1行増えていた → 本文の箱だけ右へ 2 広げる（左揃え＝文字は動かない） */
  .p-sun__points-item--1 .p-sun__points-item-text {
    margin-right: -2px;
  }
  .p-sun__points-item-title {
    font-size: 24px;
    line-height: 1.4583333333;
  }
  /* 本文 PC 18px lh32.4（箱 64/96/128＝32/行）・題下 +39 */
  .p-sun__points-item-text {
    margin-top: 39px;
    font-size: 18px;
    line-height: 1.7777777778;
  }
  /* rooms PC: 541:2184 1314×660 at x126 y2483（points 下端2299 → +184） */
  .p-sun__rooms {
    margin-top: 184px;
  }
  /* PC＝左列（〜x566）に ROOMS → 説明 → ボタン・右列に写真の枠（4段ぶん）。4段目(1fr)が枠の余りの高さを受ける */
  .p-sun__rooms-canvas {
    display: grid;
    grid-template-columns: 566px 874px;
    grid-template-rows: auto auto auto 1fr;
    justify-items: start;
    align-content: start;
    width: 1440px;
    min-height: 660px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* スライダー枠 541:2197 (440,0)+126 758×660（主 698×531 + gap13 + 見切れ 164×531＝右端1441 → 1440 で切れる） */
  .p-sun__rooms-slider {
    grid-area: 1/2/span 4/auto;
    width: 874px;
    margin-left: 0;
    height: 660px;
    overflow: hidden;
  }
  /* 写真の見える範囲 PC: 枠 874（主 698 + 間隔13 + 見切れ 164 → 875・右端1440 で切れる） */
  .p-sun__rooms-view {
    width: 874px;
    height: 531px;
  }
  .p-sun__rooms-slide {
    flex-basis: 698px;
    width: 698px;
    height: 531px;
  }
  /* 客室名 541:2201 (467,478)+126 → 枠内 (27,478) */
  .p-sun__rooms-name {
    top: 478px;
    left: 27px;
  }
  /* 見切れ 541:2200 (1151,0)+126 → 枠内 (711,0) 164×531 STRETCH [[0.2316,0,0.00706]] → 幅431.7% 左-3.05%
     ＝ 次の写真を 698×531 に cover で入れた時の左端（800×600 → 708×531・左 -5）と一致＝次の写真そのものが見えている形。
     2026-09-25 スライド化で専用の見切れ画像は廃止し、列の次の1枚（x711）で表す */
  /* 矢印 49: 541:2202 (957,611)+126 / 541:2205 (1036,611)+126 → 枠内 (517,611) / (596,611) */
  .p-sun__rooms-arrow {
    top: 611px;
    width: 49px;
    height: 49px;
  }
  .p-sun__rooms-arrow--prev {
    left: 517px;
  }
  .p-sun__rooms-arrow--next {
    left: 596px;
  }
  /* 「＋」42.6 541:2189 (0,0)+126 */
  .p-sun__rooms-plus {
    top: 0;
    left: 126px;
    width: 42.6px;
    height: 42.6px;
  }
  .p-sun__rooms-plus::before {
    top: 21.7px;
  }
  .p-sun__rooms-plus::after {
    left: 21px;
  }
  /* ROOMS 541:2188 (43,14)+126 234×83 Buenard 600 64 lh83.3 左 */
  .p-sun__rooms-title {
    grid-column: 1;
    width: 234px;
    margin: 14px 0 0 169px;
    font-size: 64px;
    font-weight: 600; /* PC のみ 600（SP は 541:1272 が 700）。Google Fonts は Buenard 600 を配信する＝代替不要 */
    line-height: 1.296875;
    text-align: left;
  }
  .p-sun__rooms-sub {
    display: none; /* PC に副題無し（541:2184 実測） */
  }
  /* 説明 541:2192 (0,137)+126 311×86 Noto Sans 400 24 lh43.2 */
  .p-sun__rooms-text {
    grid-column: 1;
    width: 320px; /* Figma 311。1行目は 24px×13字＝312 ＞ 311 で、行末の「、」を詰めない Firefox では3行になっていた → 右へ広げる（左揃え＝文字は動かない・2026-09-22） */
    margin: 40px 0 0 126px; /* ROOMS 下端97 → 137 */
    font-size: 24px;
    line-height: 1.7916666667;
  }
  /* ボタン 541:2193 (0,263)+126: 説明下端223 → 263＝40 */
  .p-sun__rooms-btn {
    grid-column: 1;
    margin: 40px 0 0 126px;
  }
  /* service PC: 541:2147 1236×272 at x125 y3243（rooms 下端3143 → +100） */
  .p-sun__service {
    margin-top: 100px;
  }
  /* PC＝見出し行（上詰め・高さ83＝見出し下端）→ 一覧。折り返す横並びで、一覧だけ幅100%にして次の段へ */
  .p-sun__service-canvas {
    flex-flow: row wrap;
    align-content: flex-start;
    width: 1440px;
    min-height: 272px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 「＋」42.6 541:2181 (0,0)+125 */
  .p-sun__service-plus {
    top: 0;
    left: 125px;
    width: 42.6px;
    height: 42.6px;
  }
  .p-sun__service-plus::before {
    top: 21.7px;
  }
  .p-sun__service-plus::after {
    left: 21px;
  }
  /* 題 541:2175 (36,22)+125 */
  .p-sun__service-title {
    margin: 22px 0 0 161px;
  }
  /* 英字 541:2176 (388,43)+125 214×34 中央: 見出し右端485 → 513＝28 */
  .p-sun__service-en {
    width: 214px;
    margin: 43px 0 0 28px;
    text-align: center;
  }
  /* ボタン 541:2177 (990,48)+125: 英字右端727 → 1115＝388 */
  .p-sun__service-btn {
    order: 0;
    margin: 48px 0 0 388px;
  }
  /* タイル 154.36 角 y117（見出し行の下端83 → 34）・x 36/241.4/446.7/652.1/857.4/1062.8 (+125)＝すき間 51 */
  .p-sun__service-list {
    order: 1;
    flex: 0 0 100%;
    grid-template-columns: repeat(6, 154.36px);
    gap: 51px;
    margin: 34px 0 0 161px;
  }
  .p-sun__service-item {
    width: 154.36px;
    height: 154.36px;
    padding-top: 15px;
  }
  /* 画像 96 at (29.2,15)＝中央／EV 112×96 at (22.2,15)＝中央(21.2)より 1 右 */
  .p-sun__service-icon {
    width: 96px;
    height: 96px;
  }
  .p-sun__service-item--ev .p-sun__service-icon {
    width: 112px;
    margin-left: 2px;
  }
  /* ラベル y+115（画像下端111 → 4）Noto Sans 700 16 lh27.2 */
  .p-sun__service-label {
    margin-top: 4px;
    font-size: 16px;
    line-height: 1.6875;
  }
  /* 送迎 PC: 帯 541:1897 1444×676 at y3686（service 下端3515 → +171）／Transfer 541:2134 at x-1 y3734（帯+48） */
  .p-sun__transfer {
    margin-top: 171px;
  }
  /* PC＝左列に写真（4段ぶん）・右列に 見出し → 本文 → ボタン。4段目(1fr)が写真の余りの高さを受ける＝文字の段は中身の高さのまま */
  .p-sun__transfer-canvas {
    display: grid;
    grid-template-columns: 735px 1fr; /* 写真の右端 x735 */
    grid-template-rows: auto auto auto 1fr;
    justify-items: start;
    align-content: start;
    width: 1440px;
    min-height: 676px;
    padding: 49px 0 30px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 写真 541:2146 (0,1)-1 → (-1,49) 736×395 */
  .p-sun__transfer-img {
    grid-area: 1/1/span 4/auto;
    width: 736px;
    height: 395px;
    margin-left: -1px;
  }
  /* 「＋」541:2142 (815,1)-1 → (814,49) */
  .p-sun__transfer-plus {
    top: 49px;
    left: 814px;
  }
  /* 題 541:2141 (857.6,13)-1 → (856.6,61) */
  .p-sun__transfer-title {
    grid-column: 2;
    margin: 12px 0 0 121.6px; /* y61−49／x856.6−735 */
  }
  /* 本文 541:2145 (815,104)-1 → (814,152) 470×96（3行）: 見出し下端122 → 152＝30 */
  .p-sun__transfer-text {
    grid-column: 2;
    width: 470px;
    margin: 30px 0 0 79px;
  }
  /* ボタン 541:2136 (814,246)-1 → (813,294): 本文下端248 → 294＝46 */
  .p-sun__transfer-btn {
    grid-column: 2;
    margin: 46px 0 0 78px;
  }
  /* access PC: 541:2101 992×541 at x224 y4330（帯下端4362 → -32） */
  .p-sun__access {
    margin-top: -32px;
    overflow: visible; /* 背面 ACCESS が上に 60 はみ出さない（y60）が、左端 x-1 のため */
  }
  /* PC: 上＝見出し・住所・電話／下＝左列（案内文 x225）＋右列（地図 x750）。DOM は 地図→案内文 の順なので grid で列を指定 */
  .p-sun__access-canvas {
    display: grid;
    grid-template-columns: 525px 465px; /* 225→750／地図465。2列ぶんの中央＝225+990/2＝720（住所・電話の中心） */
    justify-items: center;
    align-items: start;
    align-content: start;
    width: 1440px;
    min-height: 541px;
    padding: 12px 0 0 225px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 背面 ACCESS 541:1900 (-1,4390)＝キャンバス (-1,60) 185×555 Buenard 700 142.12 lh184.9 ls7.11 館色 30% */
  .p-sun__access-en {
    position: absolute;
    top: 60px;
    left: -1px;
    display: block;
    width: 185px;
    height: 555px;
    margin: 0;
    color: var(--color-main);
    font-family: "Buenard", serif;
    font-size: 142.12px;
    font-weight: 700;
    line-height: 1.301716859;
    letter-spacing: 7.11px;
    white-space: nowrap;
    opacity: 0.3;
    writing-mode: vertical-lr;
    text-orientation: sideways;
  }
  /* 「＋」541:2105 (402.7,0)+224 */
  .p-sun__access-plus {
    left: 626.7px;
  }
  /* 題 541:2104 (445.3,12)+224＝x669.3 */
  .p-sun__access-title {
    grid-column: 1/-1;
    justify-self: start;
    margin-left: 444.3px; /* 669.3 − 225 */
  }
  /* 住所 541:2109 (313.5,133)+224／TEL 541:2110 (318,178)+224 356w: 見出し下端73 → 133＝60／住所下端153 → 178＝25 */
  .p-sun__access-addr {
    grid-column: 1/-1;
    margin-top: 60px;
  }
  .p-sun__access-tel {
    grid-column: 1/-1;
    width: 356px;
  }
  /* 地図 541:2130 (526,278)+224 465×263: 電話下端198 → 278＝80 */
  .p-sun__access-map {
    grid-area: 4/2;
    width: 465px;
    height: 263px;
    margin-top: 80px;
  }
  /* 左列 x1 (+224): 車 (1,278)／案内 (1,344) 500／駐車場 (1,394)／電車 (1,444)／駅 (1,510)／線 (176.5,534)／徒歩 (213.5,510)＝すき間は SP と同じ */
  .p-sun__access-text {
    grid-area: 4/1;
    justify-self: start;
    margin-top: 80px;
  }
  .p-sun__access-line--dir {
    font-weight: 500;
  }
  /* news PC: 541:2070 at (185,5031)（access 下端4871 → +160＝ニューと同じ）。見出しはニューと同じ・＋無し */
  .p-top--sunplus .p-top__news {
    margin-top: 160px;
  }
  .p-top--sunplus .p-top__news-plus {
    display: none;
  }
  .p-top--sunplus .p-top__news-title {
    margin-left: 0;
    padding-top: 0;
    color: #525252;
  }
  /* Q&A PC: 帯 541:1898 at y5565（news 下端5415 → +150）・Q&A (280,5575)＝帯+10・帯下端6557＝Q&A 下端+181 */
  .p-top--sunplus .p-top__qa {
    margin-top: 150px;
  }
  .p-top--sunplus .p-top__qa-canvas {
    padding: 10px 0 181px;
  }
  /* 背面 Q&A 541:1899 (1286,5622)＝帯上端+57 185×308 Buenard 700 142.12 lh184.9 ls7.11 白70% */
  .p-top--sunplus .p-top__qa-en {
    top: 57px;
    left: 1286px;
    width: 185px;
    height: 308px;
    font-size: 142.12px;
    line-height: 1.301716859;
    letter-spacing: 7.11px;
    opacity: 0.7;
  }
  /* 「＋」541:2014 (294,0)+280 ＝ (574, padding-top 10)／題 541:2013 (336.6,12)+280 #525252 */
  .p-top--sunplus .p-top__qa-plus {
    top: 10px;
    left: 574px;
  }
  .p-top--sunplus .p-top__qa-title {
    margin: 12px 0 0 616.6px; /* 541:2013 y12（ニュー PC は y0） */
    color: #525252;
  }
  .p-top--sunplus .p-top__qa-list {
    margin-top: 78px; /* 実測: 題下端73 → 一覧151 */
  }
  /* info PC: 541:1990 at (223,6536)＝帯下端6557 -21・「＋」(412,0)+223・題 (454.6,12) lh61.2 #525252・列 x0 → 223 */
  .p-top--sunplus .p-top__info {
    --info-title-top: 12px;
    --info-title-left: 669.3px; /* 2026-09-25 中央揃え: 677.6 → 669.3（「＋」+題のまとまり 635〜821.6＝中心728.3 を一覧の中心 720 へ −8.3。他2館と同じく 見出しの中心＝一覧の中心） */
    --info-list-gap: 69px; /* 見出し下端73 → 一覧142 */
    --info-list-left: 0px; /* 2026-09-25 中央揃え（先方 9/23）: 一覧は CSS で中央（p-top.scss）。Figma は未修正（x223＝右へ42.5ずれ） */
    --info-item-gap: 30.5px; /* 左の右端749 → 右779.5 */
    margin-top: -21px;
    margin-bottom: 100px;
  }
  .p-top--sunplus .p-top__info-plus {
    left: 626.7px; /* 635 → 626.7（見出しと一緒に −8.3） */
  }
  .p-top--sunplus .p-top__info-title {
    color: #525252;
    line-height: 1.6944444444;
  }
}
/* ==========================================================================
   ウィング TOP（PC 541:2 / SP 541:495・2026-09-11 全ノードJSON実測）
   共通セクション（FV / pickup / news / Q&A / info）は .p-top--wing で上書き。館固有は .p-wing__*
   「///」飾り＝chev-* inline SVG（線2px・pad1 込みの外形。位置は Figma 座標 −1）
   ========================================================================== */
/* 「///」共通: currentColor=strong（#167cc1） */
.p-wing__chev {
  position: absolute;
  color: var(--color-strong); /* display は指定しない（.u-pc/.u-sp の display:none を後勝ちで潰し PC/SP 両方が出る事故＝9/12 参照PNG照合で発覚） */
}

/* 波飾り（541:19/508: 線 #015fbd 70%・pad2 込み） */
.p-wing__wave {
  position: absolute;
  pointer-events: none; /* display は指定しない（同上） */
}

/* --------------------------------------------------------------------------
   FV 上書き（SP 541:929 STRETCH → 幅186.7% 高139.8% 左-69.75% 上-26.16%）
   -------------------------------------------------------------------------- */
/* 2026-09-21 比率の是正（p-top.scss の .p-top__fv-slide 参照）: 旧 幅186.7% 左-69.75% → 係数 728.13/650・中央に来る点 (272.025+195)/728.13 */
/* ⏸2026-09-29 SP は旧写真（縦長 f598）のまま据え置き: PC の撮影写真 ff13 は横長 1980×1080 で、SP 枠(390×650)の高さいっぱいに置くと
   どの位置で切っても白い見出し3行が白い建物・ロゴに重なり読めない（実測）。旧 SP は見出しが空に乗る縦長の専用写真＝SP 用の素材/配置の指定待ち */
.p-top--wing .p-top__fv-slide {
  --fv-k: 1.1202;
  --fv-f: 0.641403;
  top: -26.16%;
  height: 139.8%;
}

/* --------------------------------------------------------------------------
   pickup 上書き（SP: group 159.5×42 を中央（x115.25）・///36.5×29.3 (+2,+6.3)・TOPICS (+48.5,0) 32px 600 lh41.6 #123a63）
   -------------------------------------------------------------------------- */
.p-top--wing .p-top__pickup-title {
  position: relative;
  width: 159.5px;
  margin-inline: auto;
  padding-left: 48.5px;
  color: var(--color-main);
  line-height: 1.3125;
  text-align: left;
}

.p-top--wing .p-wing__chev--pickup-sp {
  top: 5.3px;
  left: 1px;
  width: 38.52px;
  height: 31.32px;
}

.p-top--wing .p-top__pickup-slider {
  margin-top: 50px; /* 実測: 見出し42 → バナー92 */
}

/* --------------------------------------------------------------------------
   コンセプト（PC 541:369 1152×488 at x137 / SP 541:870 373×763 at x0 基準）
   -------------------------------------------------------------------------- */
/* 2026-09-22 flex 化（先方依頼 9/19）: 高さ固定(763)をやめ中身に追従（.js-canvas-fit）。
   文字の部分（副題 → 本文）だけ縦積みに。本文が長くなればセクションが伸びる（固定のままだと overflow:hidden で切れる）。
   🚫 写真（斜め切り）・「///」・小写真・背面 CONCEPT は重ね合わせの構図＋出現アニメ＝absolute のまま。SP は写真（y1〜243）の下から文字を始める＝台紙の上余白 273 */
.p-wing__concept {
  position: relative;
  width: 100%;
  margin-top: 79px; /* 実測: TOPICKS 下端1005 → 1084 */
  overflow: hidden;
}

.p-wing__concept-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  min-height: 763px; /* Figma のフレーム高さを下限に */
  padding-top: 273px; /* 副題 y273（上は写真の場所） */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: var(--color-main);
}

.p-wing__concept-en {
  display: none;
}

/* 副題 SP 541:873 (10.1,273) 264×48 Zen Old Mincho 700 24 lh48 ／ 541:874 (0,315.4) */
.p-wing__concept-title {
  margin: 0;
  font-family: "Zen Old Mincho", serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 2;
  white-space: nowrap;
}

.p-wing__concept-title-l1,
.p-wing__concept-title-l2 {
  display: block;
}

.p-wing__concept-title-l1 {
  margin-left: 10.1px;
}

.p-wing__concept-title-l2 {
  margin-top: -5.6px; /* 実測: 273+48=321 → 315.4 */
}

/* 本文 SP 541:875 (12,386) 320×377 Zen Old Mincho 500 18 lh28.8（13行＝29/行） */
.p-wing__concept-text {
  width: 320px;
  margin: 22.6px 0 0 12px; /* 副題下端363.4 → 386 */
  font-family: "Zen Old Mincho", serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.6111111111;
}

/* 写真 SP: マスク 541:878 385×242 (42,1)・右下を (140.49/242) → (283.45/385) で斜め切り。写真 541:879 STRETCH 507×259.3 at (-71.7,-2.9)（マスク基準） */
.p-wing__concept-photo {
  position: absolute;
  top: 1px;
  left: 42px;
  width: 385px;
  height: 242px;
  overflow: hidden;
  /* 🔴 2026-09-18 是正（ユーザー指摘「現在は右下が切り取られているが、正しくは**左上**が
     切り取られており、あしらいとセットでデザインとして成立する形が正解」）:
     ⚠️当方は `fillGeometry` の**ローカル座標だけ**を読んで clip-path を作り、
     マスク `541:878` に掛かっている **`relativeTransform` の180度回転**（[[-1,0,W],[0,-1,H]]）を
     無視していた＝上下左右が反転し「右下カット」になっていた。
     ✅親座標へ変換した正しい形状＝**左上カット**（PC/SP とも同じ％）。
     ✅あしらいの斜線3本 `541:380-382` は写真の**左上(0〜128px)**にあり、
        Figma の実描画（画像書き出しで確認）でも**左上が切れて斜線が入る**＝これで整合する。 */
  clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 41.9%, 26.4% 0);
}

/* 2026-09-21 比率の是正: Figma は STRETCH 507×259.3（比1.955）＝元画像(1312×738・比1.7778)より横に +10.0% 伸びる。
   ＝配置ミスと判断（ユーザー裁定 9/21）。高さ 259.3 のまま幅を本来の比率 460.98 に戻し、マスク中央に来る点
   （Figma: x=(71.7+192.5)/507=52.11%）を同じ位置に保つ → left = 192.5 − 0.5211×460.98 = −47.7（右端 413.3 ≥ マスク幅385＝覆う） */
/* 🔁2026-09-29 撮影写真 4776（4096×2731）へ差し替え。SP の Figma は旧写真のまま＝PC 867:4952 の見せる範囲
   [[0.8576,0,0.1167],[0,0.7058,0.2091]] をマスク(385×242)の比率で中央から切り出す（高さ 0.7058・幅 0.7488・中心 x0.5455）
   → マスク基準 幅514.2・高342.9・左-88.0・上-71.7（比 1.4998＝元画像どおり） */
.p-wing__concept-photo img {
  position: absolute;
  top: -71.7px;
  left: -88px;
  width: 514.2px;
  max-width: none;
  height: 342.9px;
  object-fit: fill;
}

/* 「///」写真上 SP 541:880 90.6×89.9 (42,1.7)（pad2 込み 94.6×93.9 → -2） */
.p-wing__concept-lines {
  position: absolute;
  top: -0.3px;
  left: 40px;
  width: 94.62px;
  height: 93.92px;
  color: var(--color-strong);
}

/* 小写真は PC のみ */
.p-wing__concept-sub {
  display: none;
}

/* アニメ（少し遅れて下からフェードイン）。is-inview で発火・ふわっと
   根拠: Figma コメント 541:385（2026-09-11「ここの写真のフェードインアニメーション質問」）
   → 2026-09-13 回答「ニューユタカ同様に少し遅れて下からフェードイン（コード同じでOK）」
   ＝ニューユタカ concept（p-top.scss）と同じ値・SP は小写真が非表示のため PC でのみ効く */
.p-wing__concept-sub {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.9s ease-out, transform 0.9s ease-out;
  transition-delay: 0.2s;
}

.p-wing__concept.is-inview .p-wing__concept-sub {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .p-wing__concept-sub {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
/* --------------------------------------------------------------------------
   3つのポイント（PC 541:329 at y1914・帯 y2098〜4030 / SP 541:829 at y1920・帯 y1905〜4218）
   セクション高＝帯下端まで。帯は background-image で位置指定
   -------------------------------------------------------------------------- */
/* 2026-09-21 flex 化（先方依頼 9/19）: 高さ固定(2298)をやめ中身に追従（.js-canvas-fit）。
   SP＝見出し → 項目3つ（写真 → 文）の縦積み・すき間はどこも 40／PC＝項目は 写真｜文 の横並び（文は写真の上下中央＝Figma どおり）・項目のすき間 80。
   PC の背面 POINT は飾り＝absolute のまま */
.p-wing__points {
  position: relative;
  width: 100%;
  margin-top: 73px; /* 実測: concept 下端1847 → 1920 */
  overflow: hidden;
  /* 帯 541:497 (0,1905) 390×2313＝セクションの上15 から下端まで。
     2026-09-22 是正: 位置・大きさが px 固定で、390 以外の幅（台紙が縮む）や中身が伸びた時に帯だけ追従しなかった
     （実測: 320px で下のぼかしが消える）。縮尺を掛け、下端はセクションの高さに合わせる。390 では従来と同値 */
  background: linear-gradient(180deg, #ffffff 0%, var(--color-band) 16.3%, var(--color-band) 84.6%, #ffffff 100%) 0 calc(-15px * var(--canvas-scale-sp, 1))/100% calc(100% + 15px * var(--canvas-scale-sp, 1)) no-repeat;
}

.p-wing__points-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px; /* 見出し下端76 → 写真116／項目下端800 → 次の写真840／1495 → 1535 */
  width: 390px;
  min-height: 2298px; /* Figma の帯の下端までを下限に（3つ目の下端2254 ＋ 44） */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: var(--color-main);
}

.p-wing__points-en {
  display: none;
}

/* 見出し SP 541:830 (66,0)+8 → 中央 240×76 Zen Old Mincho 700 24 lh38.4 2行 */
.p-wing__points-title {
  width: 240px;
  margin: 0;
  font-family: "Zen Old Mincho", serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5833333333;
  text-align: center;
}

/* 項目 SP: 写真 → 文（すき間30＝写真下端439 → 文469）・幅370 */
.p-wing__points-item {
  display: flex;
  flex: none;
  flex-direction: column;
  gap: 30px;
  width: 370px;
}

/* 写真 SP 370×323 y116/840/1535（x0→10） */
.p-wing__points-img {
  flex: none;
  width: 370px;
  height: 323px;
  overflow: hidden;
}

.p-wing__points-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 文 SP y469/1193/1888 x10 370w */
.p-wing__points-body {
  width: 370px;
}

/* ラベル: 「///」47.9×38.5 (0,2.8) + POINT 0N (57.9,0) Buenard 600 33.66 lh43.8（箱44） */
.p-wing__points-label {
  position: relative;
  height: 44px;
  margin: 0;
  padding-left: 57.9px;
  font-family: "Buenard", serif;
  font-size: 33.66px;
  font-weight: 600;
  line-height: 1.3071895425;
  white-space: nowrap;
}

.p-wing__chev--label {
  top: 1.8px;
  left: -1px;
  width: 49.95px;
  height: 40.5px;
}

/* 副題 y+74（SP）24px 700 lh34.8（箱35/70） */
.p-wing__points-sub {
  margin: 30px 0 0;
  font-family: "Zen Old Mincho", serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4583333333;
}

/* 本文 副題下 +30（SP: 1件目 139-74-35=30 ／ 2・3件目 174-74-70=30）18px lh32.4（箱 32/行） */
.p-wing__points-text {
  margin: 30px 0 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7777777778;
}

/* --------------------------------------------------------------------------
   客室（PC 541:303 1320×660 at x118 y4006 / SP 541:803 at 左10 y4317）
   -------------------------------------------------------------------------- */
/* 2026-09-21 flex/grid 化（先方依頼 9/19）: 高さ固定(840)をやめ中身に追従（.js-canvas-fit）。説明文が長くなればボタンが下がる。
   SP＝写真の枠 → ROOMS → 副題 → 説明 → ボタン の縦積み／PC＝左に文字の列・右に写真の枠（grid）。
   🚫 写真の枠の中（重ねて切り替える写真・客室名・見切れ・矢印）は重ねる仕組み＝absolute のまま。波飾り・「///」も飾り＝absolute のまま */
.p-wing__rooms {
  position: relative;
  width: 100%;
  margin-top: 99px; /* 実測: 帯下端4218 → ROOMS 4317 */
  overflow: visible; /* 波飾りが上端 -99 に出る */
}

.p-wing__rooms-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  min-height: 840px; /* Figma のフレーム高さを下限に */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: var(--color-main);
}

/* 波飾り SP 541:508 (227,4218)＝ROOMS 上端 -99（pad2 → -2） */
.p-wing__wave--rooms {
  top: -101px;
  left: 225px;
  width: 160px;
  height: 48.51px;
}

/* スライダー枠 (10,0) 370×323（主 336 + gap13 + 見切れ 32 at 349） */
.p-wing__rooms-slider {
  position: relative; /* 中の写真・矢印の基準 */
  flex: none;
  width: 370px;
  height: 323px;
  margin-left: 10px;
  overflow: visible; /* SP は矢印（y353）が枠の外＝hidden だと消える（9/12 参照PNG照合で発覚）。スライド/見切れは各自の箱で切る */
}

/* 写真の見える範囲（SP: 主 336 + 間隔13 + 見切れ32 ＝ 0〜381）。🔁2026-09-27 スライド化（サンプラスと同じ） */
.p-wing__rooms-view {
  position: absolute;
  top: 0;
  left: 0;
  width: 381px;
  height: 323px;
  overflow: hidden;
}

/* 写真の列: 1枚 336・間隔13 ＝ 次の写真の左端が 349（旧 見切れ 541:807 の x349 と同じ位置） */
.p-wing__rooms-track {
  display: flex;
  gap: 13px;
  height: 100%;
}

.p-wing__rooms-slide {
  position: relative; /* 客室名（absolute）の基準 */
  flex: 0 0 336px;
  width: 336px;
  height: 323px;
  margin: 0;
}

.p-wing__rooms-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 🔁2026-09-29 1枚目＝撮影写真 0a03（4096×2731）。PC 867:4893 STRETCH [[0.6646,0,0.2476],[0,0.7583,0.1208]]（枠 698×531 と同じ比率）。
   SP の Figma は旧写真のまま＝その PC 範囲を SP 枠(336×323)の比率で中央から切り出す（高さ 0.7583・幅 0.5259・中心 x0.5799）
   → SP 幅190.13% 左-60.26% 高131.87% 上-15.93% */
.p-wing__rooms-slide {
  overflow: hidden;
}

.p-wing__rooms-slide .p-wing__rooms-img--room-01 {
  position: absolute;
  top: -15.93%;
  left: -60.26%;
  width: 190.13%;
  max-width: none;
  height: 131.87%;
  object-fit: fill;
}

/* 客室名 541:808 (11,273) 白 Zen Old Mincho 400 24 lh43.2
   今の1枚だけ表示（見切れの写真には Figma でも客室名が無い） */
.p-wing__rooms-name {
  opacity: 0;
  transition: opacity 0.3s ease;
  position: absolute;
  top: 273px;
  left: 11px;
  color: #ffffff;
  font-family: "Zen Old Mincho", serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.7916666667;
  white-space: nowrap;
}

.p-wing__rooms-slide.is-active .p-wing__rooms-name {
  opacity: 1;
}

/* 矢印 SP 24.5 (153,353)(192.5,353)（枠内） */
.p-wing__rooms-arrow {
  position: absolute;
  top: 353px;
  width: 24.5px;
  height: 24.5px;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  line-height: 0;
}

.p-wing__rooms-arrow img {
  display: block;
  width: 100%;
  height: 100%;
}

.p-wing__rooms-arrow--prev {
  left: 153px;
}

.p-wing__rooms-arrow--next {
  left: 192.5px;
}

/* 「///」SP 541:818 48.1×32 (0,15)+407.5 → (10,422.5)（pad1 → -1） */
.p-wing__chev--rooms {
  top: 421.5px;
  left: 9px;
  width: 50.15px;
  height: 34px;
}

/* ROOMS SP 541:822 (64.1,0)+407.5 → (74.1,407.5) 176×62 Buenard 600 48 lh62.4 */
.p-wing__rooms-title {
  margin: 84.5px 0 0 74.1px; /* 写真の枠の下端323 → 407.5（あいだに矢印 y353） */
  font-family: "Buenard", serif;
  font-size: 48px;
  font-weight: 600;
  line-height: 1.2916666667;
  white-space: nowrap;
}

/* 副題 SP 541:823 (0,491.5)+10 370×86 Zen Old Mincho 700 24 lh43.2 */
.p-wing__rooms-sub {
  width: 370px;
  margin: 22px 0 0 10px; /* ROOMS 下端469.5 → 491.5 */
  font-family: "Zen Old Mincho", serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.7916666667;
}

/* 説明 SP 541:824 (0,599.5)+10 370×173 Noto Sans 400 16 lh28.8（6行＝29） */
.p-wing__rooms-text {
  width: 370px;
  margin: 22px 0 0 10px; /* 副題下端577.5 → 599.5 */
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8125;
}

/* ボタン SP 541:825 (78.1,802.5)+10: 説明下端773.5 → 802.5＝29 */
.p-wing__rooms-btn {
  margin: 29px 0 0 88.1px;
}

/* --------------------------------------------------------------------------
   館内施設・サービス（PC 541:270 1220×272 at x129 / SP 541:753 375×463 at x7）
   -------------------------------------------------------------------------- */
/* 2026-09-21 flex 化（先方依頼 9/19）: 高さ固定(463)をやめ中身に追従（.js-canvas-fit）。項目の増減で崩れない。
   SP＝見出し → 英字 → 一覧（3個ずつ折り返し）→ ボタン の縦積み／PC＝見出し行（見出し・英字・右端ボタン）→ 一覧（横一列・すき間114）。
   ⚠️ SP の2段目だけ Figma のタイルが大きい（1段目 108・すき間10／2段目 114.2・すき間2）。6px 超の差なので均等化せず Figma のまま保持
   （揃える場合は比較をユーザーへ見せてから）。「///」は見出しに重ねる飾り＝absolute のまま */
.p-wing__service {
  position: relative;
  width: 100%;
  margin-top: 79.5px; /* 実測: ROOMS 下端5157 → 5236.5 */
  overflow: hidden;
}

.p-wing__service-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  min-height: 463px; /* Figma のフレーム高さを下限に */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: var(--color-main);
}

/* 「///」SP 541:756 55.7×31 (2,15)+7 → (9,15) */
.p-wing__chev--service {
  top: 14px;
  left: 8px;
  width: 57.73px;
  height: 33px;
}

/* 題 SP 541:760 (67.7,0)+7 304×61 Zen Old Mincho 700 36 lh61.2 ls-2.52 中央 */
.p-wing__service-title {
  width: 304px;
  margin: 0 0 0 74.7px;
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  letter-spacing: -2.52px;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 英字 SP 541:761 (2,61)+7 372.6×34 Buenard 500 20 lh34 左 */
.p-wing__service-en {
  width: 372.6px;
  margin: 0 0 0 9px;
  font-family: "Buenard", serif;
  font-size: 20px;
  font-weight: 500; /* Figma 541 実測=500（Buenard-Medium）。Google Fonts は 500 を配信＝代替不要・2026-09-14 是正 */
  line-height: 1.7;
  white-space: nowrap;
}

/* ボタン SP 541:762 (86,427.2)+7: 一覧の下（2段目下端387.2 → 427.2＝40）。DOM は PC の並び（見出し行の右）なので SP は order で最後へ */
.p-wing__service-btn {
  order: 3;
  margin: 40px 0 0 93px;
}

/* 一覧 SP: x20 から3個ずつ折り返す（幅348＝3個ぶん）。英字下端95 → 1段目135＝40・段のすき間30（243 → 273） */
.p-wing__service-list {
  order: 2;
  display: flex;
  flex-wrap: wrap;
  row-gap: 30px;
  width: 348px;
  margin: 40px 0 0 20px;
  list-style: none;
}

/* タイル SP: 白 108 y135 x13/131/249 (+7)＝すき間10／2段目 114.2 y273 x13/129.2/245.4 (+7)＝すき間2（Figma のまま）。
   中身＝画像（上・中央）＋ラベル（画像の下・中央。長い文言は左右均等にはみ出す） */
.p-wing__service-item {
  display: flex;
  flex: none;
  flex-direction: column;
  align-items: center;
  width: 108px;
  height: 108px;
  margin-right: 10px;
  padding-top: 10.5px;
  background: #ffffff;
}

.p-wing__service-item:nth-child(3n) {
  margin-right: 0;
}

.p-wing__service-item--4,
.p-wing__service-item--5,
.p-wing__service-item--6 {
  width: 114.2px;
  height: 114.2px;
  margin-right: 2px;
  padding-top: 11.1px;
}

/* 画像: 1段目 67.3 at (20.3,10.5)／2段目 71 at (22.3/21.4,11.1)・大浴場 82.9×71 at (15.8,11.1)。
   中央寄せからの端数（Figma のまま）は左右の margin で持つ（ずらしたい量の2倍） */
.p-wing__service-icon {
  display: block;
  flex: none;
  width: 67.3px;
  height: 67.3px;
  margin-right: 0.1px; /* 中央20.35 → 20.3 */
  object-fit: contain;
}

.p-wing__service-item--4 .p-wing__service-icon {
  width: 71px;
  height: 71px;
  margin: 0 0 0 1.4px;
} /* 中央21.6 → 22.3 */
.p-wing__service-item--5 .p-wing__service-icon {
  width: 71px;
  height: 71px;
  margin: 0 0.4px 0 0;
} /* 中央21.6 → 21.4 */
.p-wing__service-item--6 .p-wing__service-icon {
  width: 82.9px;
  height: 71px;
  margin: 0 0 0 0.3px;
} /* 中央15.65 → 15.8 */
/* ラベル: 1段目 y+80.6（画像下端77.8 → 2.8）11.21px lh19／2段目 y+85.1（82.1 → 3）11.84px lh20・中央 */
.p-wing__service-label {
  margin: 2.8px 0 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 11.21px;
  font-weight: 700;
  line-height: 1.6949152542;
  text-align: center;
  white-space: nowrap;
}

.p-wing__service-item--4 .p-wing__service-label,
.p-wing__service-item--5 .p-wing__service-label,
.p-wing__service-item--6 .p-wing__service-label {
  margin-top: 3px;
  font-size: 11.84px;
  line-height: 1.6891891892;
}

/* --------------------------------------------------------------------------
   アクセス（PC 541:235 992×560 at x228 y5258 / SP 541:718 370×784 at x10 y5779.5）
   -------------------------------------------------------------------------- */
/* 2026-09-21 flex 化（先方依頼 9/19）: 高さ固定(784)をやめ中身に追従（.js-canvas-fit）。見出し→住所→電話→地図→案内文 を中央揃えの縦積みに。
   余白は Figma 座標の差（各行コメント）。「///」と PC の背面 ACCESS は見出しに重ねる飾り＝absolute のまま */
.p-wing__access {
  position: relative;
  width: 100%;
  margin-top: 80px; /* 実測: service 下端5699.5 → 5779.5 */
  overflow: hidden;
}

.p-wing__access-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 390px;
  min-height: 784px; /* Figma のフレーム高さを下限に */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: var(--color-main);
}

.p-wing__access-en {
  display: none;
}

/* 「///」SP 541:721 (74.6,15)+10 */
.p-wing__chev--access {
  top: 14px;
  left: 83.6px;
  width: 57.73px;
  height: 33px;
}

/* 題 SP 541:725 (140.4,0)+10 155×61（先頭に空白1字＝実測どおりの幅で中央） */
.p-wing__access-title {
  align-self: flex-start; /* 「///」が左に付くぶん右寄り＝x150.4 */
  width: 155px;
  margin: 0 0 0 150.4px;
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 住所 SP 541:727 (18.5,91)+10 333×20 Noto Sans JP 400 16 lh19.8 左／TEL 541:728 (7,131)+10 356×20 18px 中央 */
.p-wing__access-addr,
.p-wing__access-tel {
  margin: 0;
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
  font-weight: 400;
  line-height: 20px;
  white-space: nowrap;
}

.p-wing__access-addr {
  width: 333px;
  margin-top: 30px; /* 見出し下端61 → 91 */
  font-size: 16px;
}

.p-wing__access-tel {
  width: 356px;
  margin-top: 20px; /* 住所下端111 → 131 */
  font-size: 18px;
  text-align: center;
}

/* 地図 SP 541:732 (0,181)+10 370×270: 電話下端151 → 181＝30 */
.p-wing__access-map {
  width: 370px;
  height: 270px;
  margin-top: 30px;
  background: #d9d9d9;
}

.p-wing__access-map iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

/* 案内文 x10・y491（地図下端451 → 40）から縦に積む: 車の見出し → 案内 → 駐車場 → 電車の見出し → 駅の行。
   駅の行の下端は 785＝Figma のフレーム(784)を行の高さの端数 1 だけ越える → margin-bottom:-1 でフレーム高さを保つ */
.p-wing__access-text {
  width: 370px;
  margin: 40px 0 -1px;
}

/* 見出し行（アイコン30 + gap4 + 24px 600 lh40.8）: 車 (0,491)+10／電車 (0,688)+10 */
.p-wing__access-head {
  display: flex;
  gap: 4px;
  align-items: center;
  height: 41px;
  margin: 0;
}

.p-wing__access-head--train {
  margin-top: 19px;
} /* 駐車場下端669 → 688 */
.p-wing__access-ico {
  display: block;
  width: 30px;
  height: 30px;
}

.p-wing__access-head-text {
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.7083333333;
  white-space: nowrap;
}

/* 行 18px lh30.6→31: 案内 (0,557) 2行／駐車場 (0,638) 500／駅 (0,754)／徒歩 (235,754) */
.p-wing__access-line {
  margin: 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7222222222;
  white-space: nowrap;
}

.p-wing__access-line--dir {
  margin-top: 25px;
} /* 見出し下端532 → 557 */
.p-wing__access-line--park {
  margin-top: 19px;
  font-weight: 500;
} /* 案内下端619 → 638 */
/* 駅の行: 駅名 → 点線 → 徒歩 の横並び（y754＝電車の見出し下端729 → 25）。駅名が変われば点線と徒歩も付いて動く */
.p-wing__access-row {
  display: flex;
  align-items: flex-start;
  margin-top: 25px;
}

.p-wing__access-line--walk {
  margin-left: 3px;
} /* 点線右端242 → 245 */
/* 点線 541:752 (198,778)+10 34×1 dashes[1,3] #123a63: 駅名の箱の右端208 にそのまま続く・縦は行の上から24 */
.p-wing__access-rule {
  flex: none;
  width: 34px;
  margin-top: 24px;
  height: 1px;
  background: repeating-linear-gradient(90deg, var(--color-main) 0 1px, transparent 1px 4px);
}

/* --------------------------------------------------------------------------
   news 上書き（SP 541:685 at (15,6643.5): 「///」55.7×31 (2,10.5) + News 92×52 (67.7,0) 40px・お知らせ (2,62)）
   -------------------------------------------------------------------------- */
.p-top--wing .p-top__news {
  z-index: 1; /* 波飾りが次の Q&A 帯（後続セクション）の下に隠れないように前面へ（9/12 参照PNG照合で発覚） */
  margin-top: 80px; /* 実測: access 下端6563.5 → 6643.5 */
  overflow: visible; /* 波飾りが下にはみ出す */
}

/* 2026-09-21 flex 化（p-top.scss の news 参照）: 見出しは y0 起点＝台紙の上余白12を消す。「///」は見出しに重ねる飾り＝absolute のまま。
   見出しの高さが 52+10+29=91（ニューは 90＋上12）なので、一覧 y120 までの間隔は 29 */
.p-top--wing .p-top__news-canvas {
  padding-top: 0;
}

.p-top--wing .p-top__news-head {
  position: relative;
}

.p-top--wing .p-top__news-list {
  margin-top: 29px;
}

.p-top--wing .p-wing__chev--news {
  top: 9.5px;
  left: -1px;
  width: 57.73px;
  height: 33px;
}

/* SP も「News」40px（541:692: Poppins 500 の残骸に Buenard 上書き・箱52）・#525252 */
.p-top--wing .p-top__news-title {
  margin-left: 65.7px;
  font-size: 40px;
  font-weight: 400;
  line-height: 1.3;
}

.p-top--wing .p-top__news-sub {
  margin-top: 10px; /* 52 → 62 */
}

.p-top--wing .p-top__news-en {
  display: none;
}

/* タグ: キャンペーン＝#f69233(tint) 白文字（541:206） */
.p-top--wing .p-top__news-cat--cream {
  background: var(--color-tint);
  color: #ffffff;
}

/* 波飾り SP 541:499 (24,7317)＝news 上端 +673.5（pad2 → -2）。キャンバス原点はページ x0 */
.p-wing__wave--news {
  top: 671.5px;
  left: 22px;
  width: 160px;
  height: 48.51px;
}

/* --------------------------------------------------------------------------
   Q&A 上書き（帯 SP 541:498 at y7430・Q&A (26,7449)・帯下端8351）
   -------------------------------------------------------------------------- */
.p-top--wing .p-top__qa {
  margin-top: 154.8px; /* 実測: news 下端7275.2 → 帯7430 */
  background: linear-gradient(180deg, #ffffff 0%, var(--color-band) 16.3%, var(--color-band) 84.6%, #ffffff 100%);
}

.p-top--wing .p-top__qa-canvas {
  padding: 19px 0 95px; /* 実測: 帯7430 → Q&A 7449／下端8256 → 8351 */
}

/* 「///」SP 541:629 (28,15)+26 → (54, 19+15) */
.p-top--wing .p-wing__chev--qa {
  top: 33px;
  left: 53px;
  width: 57.73px;
  height: 33px;
}

/* 題 SP 541:633 (93.7,0)+26 → x119.7・y0（ニューは y12）・#123a63 */
.p-top--wing .p-top__qa-title {
  margin: 0 0 0 119.7px;
  color: var(--color-main);
}

.p-top--wing .p-top__qa-list {
  margin-top: 40px; /* 実測: 題下端61 → 一覧101 */
}

/* ブロック地 #f7f7f7（541:636 ほか）・Q丸 #123a63 白・質問/回答/トグル #123a63・A丸 #f69233(tint) */
.p-top--wing .p-top__qa-q {
  background: #f7f7f7;
  color: var(--color-main);
}

.p-top--wing .p-top__qa-mark--q {
  border: 0;
  background: var(--color-main);
  color: #ffffff;
}

.p-top--wing .p-top__qa-toggle::before,
.p-top--wing .p-top__qa-toggle::after {
  background: var(--color-main);
}

.p-top--wing .p-top__qa-mark--a {
  background: var(--color-tint);
}

.p-top--wing .p-top__qa-a-text {
  color: var(--color-main);
}

/* --------------------------------------------------------------------------
   info 上書き（SP 541:605 at (10,8346): 「///」(80,15)・題 (145.7,0) #123a63。帯下端8351 → -5。フッターまで 100）
   -------------------------------------------------------------------------- */
.p-top--wing .p-top__info {
  --info-title-top: 0px;
  --info-title-left: 155.7px; /* 「///」(89) の右。2026-09-21 flex 化＝位置は変数で持つ（p-top.scss の info 参照） */
  --info-list-gap: 37px; /* 見出し下端61 → 一覧98 */
  margin-top: -5px;
  margin-bottom: 100px;
}

.p-top--wing .p-wing__chev--info {
  top: 14px;
  left: 89px;
  width: 57.73px;
  height: 33px;
}

.p-top--wing .p-top__info-title {
  color: var(--color-main);
}

/* ==========================================================================
   PC
   ========================================================================== */
@media (min-width: 769px) {
  /* FV PC: 写真 STRETCH → 幅112.16% 高152.49% 左-6.08% 上-12.17%／見出し (135,177) 625w 45px lh81 ls-3.6 3行／注記 (135,481)・円矢印 (424,487)・線 (135,528) */
  /* 🔁2026-09-29 撮影写真 ff13 867:5001 STRETCH [[1,0,0],[0,0.8976,-0.0838]] → 幅100%・高111.41%・上+9.34%（=65.8px）
     ＝写真の上端は FV 枠の上端より 65.8px 下＝その上はアナウンスバー（67px）に重なって隠れる（Figma の実描画も同じ） */
  .p-top--wing .p-top__fv-slide {
    top: 9.34%;
    left: 0;
    width: 100%;
    height: auto;
    aspect-ratio: 1980/1080;
  }
  .p-top--wing .p-top__fv-title--pc {
    top: 177px;
    left: 135px;
    width: 625px;
    font-size: 45px;
    line-height: 1.8;
    letter-spacing: -3.6px;
  }
  .p-top--wing .p-top__fv-note {
    top: 481px;
    left: 135px;
    gap: 9px;
    align-items: flex-start;
  }
  .p-top--wing .p-top__fv-note-icon {
    margin-top: 6px; /* 541:487 y6（行内中央ではない実測値） */
  }
  .p-top--wing .p-top__fv-line {
    top: 528px;
    left: 135px;
  }
  /* pickup PC: 541:420 294.5×83 at x423（+150）: ///63.5×51 (0,16)・TOPICS (73.5,0) 221×83 64px lh83.3 左 */
  .p-top--wing .p-top__pickup-title {
    width: 294.5px;
    margin-left: 423px;
    padding-left: 73.5px;
    font-size: 64px;
    line-height: 1.296875;
  }
  .p-top--wing .p-wing__chev--pickup-pc {
    top: 15px;
    left: -1px;
    width: 65.52px;
    height: 53px;
  }
  .p-top--wing .p-top__pickup-slider {
    margin-top: 80px; /* 実測: 見出し83 → バナー163 */
  }
  /* concept PC: 541:369 1152×488 at x137 y1403（pickup 下端1243 → +160） */
  .p-wing__concept {
    margin-top: 160px;
    overflow: visible; /* 背面 CONCEPT が下にはみ出す（1409+376=1785 < 1891 なので実際は収まる） */
  }
  .p-wing__concept-canvas {
    width: 1440px;
    min-height: 488px; /* 小写真の下端 488 */
    padding-top: 0;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 背面 CONCEPT 541:6 (1347,1409)＝キャンバス (1347,6) 99×376 Buenard 700 76.15 lh99.1 ls3.81 strong 30% */
  .p-wing__concept-en {
    position: absolute;
    top: 6px;
    left: 1347px;
    display: block;
    width: 99px;
    height: 376px;
    margin: 0;
    color: var(--color-strong);
    font-family: "Buenard", serif;
    font-size: 76.15px;
    font-weight: 700;
    line-height: 1.3000656599;
    letter-spacing: 3.81px;
    white-space: nowrap;
    opacity: 0.3;
    writing-mode: vertical-lr;
    text-orientation: sideways;
  }
  /* 副題 PC 541:373 (17,0)+137 352×64 32px lh64／541:374 (0,71)+137 */
  .p-wing__concept-title {
    margin-left: 137px;
    font-size: 32px;
    line-height: 2;
  }
  .p-wing__concept-title-l1 {
    margin-left: 17px;
  }
  .p-wing__concept-title-l2 {
    margin-top: 7px; /* 64 → 71 */
  }
  /* 本文 PC 541:371 (17,168)+137 536×288 Zen Old Mincho 500 18 lh36 */
  .p-wing__concept-text {
    width: 536px;
    margin: 33px 0 0 154px; /* 副題下端135 → 168 */
    line-height: 2;
  }
  /* 写真 PC: マスク 541:377 (604,3.5)+137 548×344.5・写真 541:378 656×360 FILL at (554,4)+137 → マスク基準 (-50,0.5) */
  .p-wing__concept-photo {
    top: 3.5px;
    left: 741px;
    width: 548px;
    height: 344.5px;
    /* 🔴 2026-09-18 是正（SPと同じ）: マスク `541:377` も180度回転が掛かっており、
       親座標へ直すと**左上カット**が正しい。 */
    clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 41.9%, 26.4% 0);
  }
  /* 🔁2026-09-29 撮影写真 4776 867:4952（656×360 at マスク基準 (-50,0.5)）STRETCH [[0.8576,0,0.1167],[0,0.7058,0.2091]]
     → 幅 656/0.85756=765.0・高 360/0.70583=510.0・左 -50−89.3=-139.3・上 0.5−106.7=-106.2 */
  .p-wing__concept-photo img {
    top: -106.2px;
    left: -139.3px;
    width: 765px;
    height: 510px;
    object-fit: fill;
  }
  /* 「///」PC 541:379 129×128 (604,4.5)+137（pad2 → -2） */
  .p-wing__concept-lines {
    top: 2.5px;
    left: 739px;
    width: 133px;
    height: 132px;
  }
  /* 小写真 PC 541:385 (892,289)+137 204×199 FILL */
  .p-wing__concept-sub {
    position: absolute;
    top: 289px;
    left: 1029px;
    display: block;
    width: 204px;
    height: 199px;
    overflow: hidden;
  }
  /* 🔁2026-09-29 撮影写真 ebeb 867:4957 STRETCH [[0.5675,0,0.2570],[0,0.8303,0.0542]]（枠 204×199 と同じ比率）
     → 幅176.21% 左-45.29% 高120.44% 上-6.53% */
  .p-wing__concept-sub img {
    position: absolute;
    top: -6.53%;
    left: -45.29%;
    display: block;
    width: 176.21%;
    max-width: none;
    height: 120.44%;
    object-fit: fill;
  }
  /* points PC: 541:329 at y1914（concept 下端1891 → +23）・帯 541:5 (0,2098) 1449×1932 → y184〜2116 */
  .p-wing__points {
    margin-top: 23px;
    background-position: 0 calc(184px * var(--canvas-scale-pc, 1)); /* 帯 y2098 − セクション y1914。1440 では従来と同値（184／1932） */
    background-size: 100% calc(100% - 184px * var(--canvas-scale-pc, 1));
  }
  .p-wing__points-canvas {
    align-items: flex-start;
    gap: 80px; /* 項目下端735 → 次の写真815／1269 → 1349 */
    width: 1440px;
    min-height: 2116px;
    padding-top: 129px; /* 見出し y129 */
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 背面 POINT 541:7 (2,2206)＝キャンバス (2,292) 167×417 Buenard 700 128.36 lh167 ls6.42 白 */
  .p-wing__points-en {
    position: absolute;
    top: 292px;
    left: 2px;
    display: block;
    width: 167px;
    height: 417px;
    margin: 0;
    color: #ffffff;
    font-family: "Buenard", serif;
    font-size: 128.36px;
    font-weight: 700;
    line-height: 1.3010283577;
    letter-spacing: 6.42px;
    white-space: nowrap;
    writing-mode: vertical-lr;
    text-orientation: sideways;
  }
  /* 見出し PC 541:331 (473,129)+5 504×52 36px lh52.1 */
  .p-wing__points-title {
    width: 504px;
    margin: 0 0 20px 478px; /* 見出し下端181 → 写真281＝100（すき間80＋20） */
    font-size: 36px;
    line-height: 1.4444444444;
    white-space: nowrap;
  }
  /* 項目 PC: 写真（x160.5）｜文（x776.5＝写真右端680.5 → 96）・文は写真の上下中央（y361.5/911.5/1413.5 は中央置きの値） */
  .p-wing__points-item {
    flex-direction: row;
    align-items: center;
    gap: 96px;
    width: auto;
    margin-left: 160.5px;
  }
  /* 写真 PC 520×454 (155.5)+5 y281/815/1349 */
  .p-wing__points-img {
    width: 520px;
    height: 454px;
  }
  /* 文 PC 523w (771.5)+5 */
  .p-wing__points-body {
    width: 523px;
  }
  /* 副題 y+87（44 + 43）／本文 y+165（副題35 + 43） */
  .p-wing__points-sub {
    margin-top: 43px;
    white-space: nowrap;
  }
  .p-wing__points-text {
    margin-top: 43px;
  }
  /* rooms PC: 541:303 1320×660 at x118 y4006（帯下端4030 → -24） */
  .p-wing__rooms {
    margin-top: -24px;
  }
  /* PC＝左列（〜x680）に ROOMS → 副題 → 説明 → ボタン・右列に写真の枠（5段ぶん）。5段目(1fr)が枠の余りの高さを受ける */
  .p-wing__rooms-canvas {
    display: grid;
    grid-template-columns: 680px 758px;
    grid-template-rows: auto auto auto auto 1fr;
    justify-items: start;
    align-content: start;
    width: 1440px;
    min-height: 660px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 波飾り PC 867:4593 (1218,3842)＝ROOMS 上端(4006) -164（pad2 → -2）
     🔁2026-09-27 Figma 更新で 75 上へ（旧 3952＝-54 では下の山の裾が写真の上端に 1.5px 被っていた＝すずさん 9/22 指摘）
     🔁2026-09-29 Figma 9/28 版でさらに 35 上（3877 → 3842） */
  .p-wing__wave--rooms {
    top: -166px;
    left: 1216px;
    width: 198.5px;
    height: 59.5px;
  }
  /* スライダー枠 541:317 (562,0)+118 → (680,0) 758×660（主 698×531 + gap13 + 見切れ 47 at 711） */
  .p-wing__rooms-slider {
    grid-area: 1/2/span 5/auto;
    width: 758px;
    margin-left: 0;
    height: 660px;
    overflow: hidden;
  }
  /* 写真の見える範囲 PC: 枠 758（主 698 + 間隔13 + 見切れ 47） */
  .p-wing__rooms-view {
    width: 758px;
    height: 531px;
  }
  .p-wing__rooms-slide {
    flex-basis: 698px;
    width: 698px;
    height: 531px;
  }
  /* 1枚目 PC 867:4893 → 幅150.46% 左-37.25% 高131.87% 上-15.93% */
  .p-wing__rooms-slide .p-wing__rooms-img--room-01 {
    left: -37.25%;
    width: 150.46%;
  }
  /* 客室名 541:321 (589,478)+118 → 枠内 (27,478) */
  .p-wing__rooms-name {
    top: 478px;
    left: 27px;
  }
  /* 見切れ 541:320 (1273,0)+118 → 枠内 (711,0) 47×531 STRETCH [[0.0664,0,0.0071]] → 幅1506.4% 左-10.6%（708×531・左-5）
     ＝ 次の写真を 698×531 に cover で入れた時の左端と一致。2026-09-27 スライド化で列の次の1枚（x711）で表す */
  /* 矢印 49: 541:323 (1079,611)+118 / 541:326 (1158,611)+118 → 枠内 (517,611) / (596,611) */
  .p-wing__rooms-arrow {
    top: 611px;
    width: 49px;
    height: 49px;
  }
  .p-wing__rooms-arrow--prev {
    left: 517px;
  }
  .p-wing__rooms-arrow--next {
    left: 596px;
  }
  /* 「///」PC 541:306 63.5×51 (0,16)+118 */
  .p-wing__chev--rooms {
    top: 15px;
    left: 117px;
    width: 65.52px;
    height: 53px;
  }
  /* ROOMS 541:310 (73.5,0)+118 234×83 64px lh83.3 */
  .p-wing__rooms-title {
    grid-column: 1;
    margin: 0 0 0 191.5px;
    font-size: 64px;
    line-height: 1.296875;
  }
  /* 副題 541:311 (0,105)+118 480×116 32px 700 lh57.6（58） */
  .p-wing__rooms-sub {
    grid-column: 1;
    width: 480px;
    margin: 22px 0 0 118px; /* ROOMS 下端83 → 105 */
    font-size: 32px;
    line-height: 1.8125;
  }
  /* 説明 541:312 (0,243)+118 507×290 24px lh43.2（箱 290 固定） */
  .p-wing__rooms-text {
    grid-column: 1;
    width: 507px;
    margin: 22px 0 0 118px; /* 副題下端221 → 243 */
    font-size: 24px;
    line-height: 1.7916666667;
  }
  /* ボタン 541:313 (0,555)+118: 説明文の実際の下端544（7行×43＝301。Figma の箱は 290 で文がはみ出している）→ 555＝11 */
  .p-wing__rooms-btn {
    grid-column: 1;
    margin: 11px 0 0 118px;
  }
  /* service PC: 541:270 1220×272 at x129 y4826（ROOMS 下端4666 → +160） */
  .p-wing__service {
    margin-top: 160px;
  }
  /* PC＝見出し行（上詰め・高さ61）→ 一覧。折り返す横並びで、一覧だけ幅いっぱいにして次の段へ */
  .p-wing__service-canvas {
    flex-flow: row wrap;
    align-content: flex-start;
    width: 1440px;
    min-height: 272px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 「///」541:275 45.4×31 (4,15)+129 */
  .p-wing__chev--service {
    top: 14px;
    left: 132px;
    width: 47.39px;
    height: 33px;
  }
  /* 題 541:279 (59.4,0)+129 324×61 ls0 */
  .p-wing__service-title {
    width: 324px;
    margin-left: 188.4px;
    letter-spacing: 0;
  }
  /* 英字 541:273 (395,21)+129 214×34 中央: 見出し右端512.4 → 524＝11.6 */
  .p-wing__service-en {
    width: 214px;
    margin: 21px 0 0 11.6px;
    text-align: center;
  }
  /* ボタン 541:280 (986,26)+129: 英字右端738 → 1115＝377 */
  .p-wing__service-btn {
    order: 0;
    margin: 26px 0 0 377px;
  }
  /* アイコン PC y132（見出し行の下端61 → 71）: x29/239/449/659/869/1079 (+129)＝すき間 114・下地なし・96（大浴場だけ箱128・絵112×96）・ラベル y232 16px 700 lh27.2 */
  .p-wing__service-list {
    order: 1;
    flex: 0 0 auto;
    gap: 40px 114px;
    width: 1282px; /* 1440 − 158 */
    margin: 71px 0 0 158px;
  }
  .p-wing__service-item,
  .p-wing__service-item--4,
  .p-wing__service-item--5,
  .p-wing__service-item--6 {
    width: 96px;
    height: 127px;
    margin-right: 0;
    padding-top: 0;
    background: none;
  }
  .p-wing__service-item--6 {
    width: 128px;
  }
  .p-wing__service-icon,
  .p-wing__service-item--4 .p-wing__service-icon,
  .p-wing__service-item--5 .p-wing__service-icon {
    width: 96px;
    height: 96px;
    margin: 0;
  }
  .p-wing__service-item--6 .p-wing__service-icon {
    width: 112px;
    height: 96px;
    margin: 0;
  }
  /* ラベル y+100（画像下端96 → 4） */
  .p-wing__service-label,
  .p-wing__service-item--4 .p-wing__service-label,
  .p-wing__service-item--5 .p-wing__service-label,
  .p-wing__service-item--6 .p-wing__service-label {
    margin-top: 4px;
    font-size: 16px;
    line-height: 1.6875;
  }
  /* access PC: 541:235 992×560 at x228 y5258（service 下端5098 → +160） */
  .p-wing__access {
    margin-top: 160px;
    overflow: visible; /* 背面 ACCESS は x0（左端）・y180〜735 → 収まるが安全側 */
  }
  /* PC: 上＝見出し・住所・電話／下＝左列（案内文 x229）＋右列（地図 x754）。DOM は 地図→案内文 の順なので grid で列を指定 */
  .p-wing__access-canvas {
    display: grid;
    grid-template-columns: 525px 465px; /* 229→754／地図465。2列ぶんの中央＝229+990/2＝724（住所・電話の中心） */
    justify-items: center;
    align-items: start;
    align-content: start;
    width: 1440px;
    min-height: 560px;
    padding-left: 229px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 背面 ACCESS 541:8 (0,5438)＝キャンバス (0,180) 185×555 Buenard 700 142.12 lh184.9 ls7.11 strong 30% */
  .p-wing__access-en {
    position: absolute;
    top: 180px;
    left: 0;
    display: block;
    width: 185px;
    height: 555px;
    margin: 0;
    color: var(--color-strong);
    font-family: "Buenard", serif;
    font-size: 142.12px;
    font-weight: 700;
    line-height: 1.301716859;
    letter-spacing: 7.11px;
    white-space: nowrap;
    opacity: 0.3;
    writing-mode: vertical-lr;
    text-orientation: sideways;
  }
  /* 「///」541:239 45.4×31 (390.8,15)+228 */
  .p-wing__chev--access {
    top: 14px;
    left: 617.8px;
    width: 47.39px;
    height: 33px;
  }
  /* 題 541:243 (446.2,0)+228 155×61 */
  .p-wing__access-title {
    grid-column: 1/-1;
    justify-self: start;
    margin-left: 445.2px; /* 674.2 − 229 */
  }
  /* 住所 541:245 (288,121)+228 416w 20px／TEL 541:246 (318,166)+228 356w 20px: 見出し下端61 → 121＝60／住所下端141 → 166＝25 */
  .p-wing__access-addr {
    grid-column: 1/-1;
    width: 416px;
    margin-top: 60px;
    font-size: 20px;
  }
  .p-wing__access-tel {
    grid-column: 1/-1;
    width: 356px;
    margin-top: 25px;
    font-size: 20px;
  }
  /* 地図 541:266 (526,266)+228 465×294: 電話下端186 → 266＝80 */
  .p-wing__access-map {
    grid-area: 4/2;
    width: 465px;
    height: 294px;
    margin-top: 80px;
  }
  /* 左列 x1 (+228): 車 (1,266)／案内 (1,332)／駐車場 (1,413)／電車 (1,463)／駅 (1,529)／徒歩 (236,529)／点線 (199,553)＝すき間は SP と同じ。下端560＝フレームちょうど */
  .p-wing__access-text {
    grid-area: 4/1;
    justify-self: start;
    margin: 80px 0 0;
  }
  /* news PC: 541:199 at (189,5978)（access 下端5818 → +160・x は 185 でなく 189）。見出し: ///45.4×31 (0,10.5) + News (55.4,0)・#525252 */
  .p-top--wing .p-top__news {
    margin-top: 160px;
  }
  /* x は 185 でなく 189（Figma どおり・deviation ⑱）＝台紙の左余白で持つ */
  .p-top--wing .p-top__news-canvas {
    padding-left: 189px;
  }
  .p-top--wing .p-wing__chev--news {
    top: 9.5px;
    left: -1px;
    width: 47.39px;
    height: 33px;
  }
  .p-top--wing .p-top__news-title {
    margin-left: 55.4px;
  }
  .p-top--wing .p-top__news-list {
    margin-top: 0;
  }
  /* 波飾り PC 541:10 (186,6599)＝news 上端 +621（pad2 → -2）・キャンバス基準 x186 */
  .p-wing__wave--news {
    top: 619px;
    left: 184px;
    width: 198.5px;
    height: 59.5px;
  }
  /* Q&A PC: 帯 541:4 at y6612（news 下端6362 → +250）・Q&A (284,6666)＝帯+54・帯下端7817＝Q&A 下端+350 */
  .p-top--wing .p-top__qa {
    margin-top: 250px;
  }
  .p-top--wing .p-top__qa-canvas {
    padding: 54px 0 350px;
  }
  /* 背面 Q&A 541:9 (1270,6887)＝帯上端 +275 185×308 白70% */
  .p-top--wing .p-top__qa-en {
    top: 275px;
    left: 1270px;
    width: 185px;
    height: 308px;
    font-size: 142.12px;
    line-height: 1.301716859;
    letter-spacing: 7.11px;
    opacity: 0.7;
  }
  /* 「///」541:141 (588.6,15)+284 → (872.6, 54+15) */
  .p-top--wing .p-wing__chev--qa {
    top: 68px;
    left: 871.6px;
    width: 47.39px;
    height: 33px;
  }
  /* 題 541:145 (644,0)+284 → x928・y0 */
  .p-top--wing .p-top__qa-title {
    margin: 0 0 0 928px;
  }
  .p-top--wing .p-top__qa-list {
    margin-top: 90px; /* 61 → 151 */
    margin-left: 284px;
  }
  /* info PC: 541:116 at (220,7887)＝帯下端7817 +70・「///」63.5×51 (432,5.6)+220・題 (505.5,0.6) lh61.2・列 x0.5 → 220.5 / 556.5 → 776.5 */
  .p-top--wing .p-top__info {
    --info-title-top: 0.6px;
    --info-title-left: 685.5px; /* 2026-09-25 中央揃え（先方 9/23）: 見出し・一覧とも右へ40ずれていた（中心760/761）→ 両方 -40（Figma 未修正・ニューの修正と同じ動かし方） */
    --info-list-gap: 81px; /* 見出し下端61.6 → 一覧142.6 */
    --info-list-left: 0px; /* 一覧は CSS で中央（p-top.scss）。旧 220.5 */
    --info-item-gap: 30px;
    margin-top: 70px;
    margin-bottom: 100px;
  }
  .p-top--wing .p-wing__chev--info {
    top: 4.6px;
    left: 611px; /* 651 → 611（見出しと一緒に -40） */
    width: 65.52px;
    height: 53px;
  }
  .p-top--wing .p-top__info-title {
    line-height: 1.6944444444;
  }
}
/* ==========================================================================
   p-top  各館 TOP（館固有セクション）
   実測: ニューユタカ PC 541:2369 / SP 541:1436（2026-09-11 全ノードJSON）
   ========================================================================== */
/* --------------------------------------------------------------------------
   FV（PC 541:2809 1440×705 / SP 541:1437 390×650）
   写真は背景（cover）。文字は実測px座標のキャンバス（PC1440/SP390）を scale で縮小して配置。
   -------------------------------------------------------------------------- */
.p-top__fv {
  position: relative;
  width: 100%;
  height: min(650px, 166.6666666667vw); /* 設計高で上限＝設計幅より広い端末/検品幅(405)では固定px・中央（白洋舎 c-page-title と同じ） */
  overflow: hidden;
}

.p-top__fv-slides {
  position: absolute;
  inset: 0;
}

/* 写真の切り抜き＝Figma imageTransform（STRETCH）を再現。
   SP 541:1438: [[0.3377,0,0.1429],[0,1,0]] → 表示幅 1/0.3377=296.1%・左 -0.1429/0.3377=-42.31%・縦は全域
   PC 541:2810: [[0.9048,0,0.0394],[0,0.7871,0.2130]] → 幅 110.52%・高 127.05%・左 -4.36%・上 -27.06% */
/* 2026-09-21 比率の是正（先方指摘 9/19「MV・全幅表示の画像のアスペクト比」）:
   旧＝箱の幅%×高さ% の両方で写真の大きさを決めていた → 箱の比率が設計と変わる幅（SP 390超・PC 1440超＝FV の高さが
   650/705 で頭打ち）で写真が横に約10%伸びた（実測 430px=+10.2%・1600px=+11.1%）。
   新＝写真の大きさは「FV の高さ × 係数」で決め（比率固定）、Figma で箱の中央に来ていた点（--fv-f）を常に箱の中央に保つ。
        箱が写真より広い時だけ 100% まで広げ cover で切り取る（歪ませない）。left の clamp は左右に空きを作らないため。
   設計幅以下では旧指定と同じ計算結果になる（例: ニュー SP 幅=166.667vw×1.7766=296.1%・左=50%−0.311753×296.1%=−42.31%） */
.p-top__fv-slide {
  --fv-h: min(650px, calc(100vw * 650 / 390)); /* .p-top__fv の高さと同じ式 */
  --fv-k: 1.7766; /* 写真の描画幅 ÷ FV高さ＝1154.79 / 650（541:1438） */
  --fv-f: 0.311753; /* 箱の中央に来る写真上の点＝(165.009+195) / 1154.79 */
  --fv-w: calc(var(--fv-h) * var(--fv-k));
  position: absolute;
  top: 0;
  left: clamp(100% - max(var(--fv-w), 100%), 50% - var(--fv-f) * var(--fv-w), 0px);
  width: max(var(--fv-w), 100%);
  max-width: none; /* 共通 img{max-width:100%} を解除（罠#14） */
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 1.2s ease;
}

.p-top__fv-slide.is-active {
  opacity: 1;
}

.p-top__fv-canvas {
  position: absolute;
  top: 0;
  left: 50%;
  width: 390px;
  height: 650px;
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #ffffff;
}

/* SP 本文 541:1439: (24,108) w342 Zen Old Mincho 400 24.58px lh44.2 ls-1.97 3行 */
.p-top__fv-title {
  position: absolute;
  top: 108px;
  left: 24px;
  width: 342px;
  margin: 0;
  font-family: "Zen Old Mincho", serif;
  font-size: 24.58px;
  font-weight: 400;
  line-height: 1.7900732303;
  letter-spacing: -1.97px;
}

.p-top__fv-title--pc {
  display: none;
}

/* PC のみの要素（注記・線）は SP フレームに存在しない */
.p-top__fv-note,
.p-top__fv-line {
  display: none;
}

@media (min-width: 769px) {
  .p-top__fv {
    height: min(705px, 48.9583333333vw);
  }
  /* PC は幅基準（1440 以下は箱の比率が一定＝旧指定と同値。1440 超は幅に比例して拡大し常に覆う） */
  .p-top__fv-slide {
    top: -27.06%;
    left: -4.36%;
    width: 110.52%;
    height: auto;
    aspect-ratio: 1591.488/895.7025; /* 設計時の描画寸法 1440×110.52% × 705×127.05%（541:2810） */
  }
  .p-top__fv-canvas {
    width: 1440px;
    height: 705px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* PC 本文 541:2812: (783,253) w672 Zen Old Mincho 400 48 lh69.5 3行 */
  .p-top__fv-title {
    top: 253px;
    left: 783px;
    width: 672px;
    font-size: 48px;
    line-height: 1.4583333333;
    letter-spacing: 0;
  }
  .p-top__fv-title--pc {
    display: block;
  }
  .p-top__fv-title--sp {
    display: none;
  }
  /* 注記行 541:2814: (783,497) h29・文字 20px 700 lh29 + gap10 + 円矢印22（y500.5＝行内中央） */
  .p-top__fv-note {
    position: absolute;
    top: 497px;
    left: 783px;
    display: flex;
    align-items: center;
    gap: 10px;
    height: 29px;
  }
  .p-top__fv-note-text {
    margin: 0;
    font-family: "Zen Old Mincho", serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.45;
    white-space: nowrap;
  }
  .p-top__fv-note-icon {
    display: block;
    width: 22px;
    height: 22px;
  }
  /* 白線 541:2820: (783,544) 318×1 */
  .p-top__fv-line {
    position: absolute;
    top: 544px;
    left: 783px;
    display: block;
    width: 318px;
    height: 1px;
    background: #ffffff;
  }
}
/* --------------------------------------------------------------------------
   ピックアップ（PC 541:2772 1140×371 / SP 541:1808 390×228）
   FV 下端からの余白: PC 93（779→872）／SP 64（713→777）＝実測（指示書の 160/90 とは別の個別値）
   -------------------------------------------------------------------------- */
.p-top__pickup {
  position: relative;
  width: 100%;
  margin-top: 64px;
}

/* 見出し 541:1809: Buenard 700 32 lh54.4 #525252 中央（PC 541:2808: 64 lh108.8） */
.p-top__pickup-title {
  margin: 0;
  color: #525252;
  font-family: "Buenard", serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.6875;
  text-align: center;
}

/* スライダー（SP: 見出し下端54 → トラック y92 ＝ 38。1枚 289×109.3・gap21・左13・次が見切れる） */
.p-top__pickup-slider {
  position: relative;
  margin-top: 38px;
}

.p-top__pickup-track {
  display: flex;
  gap: 21px;
  padding-inline: 13px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: 13px;
  scrollbar-width: none;
  list-style: none;
  -webkit-overflow-scrolling: touch;
}

.p-top__pickup-track::-webkit-scrollbar {
  display: none;
}

.p-top__pickup-item {
  flex: 0 0 289px;
  scroll-snap-align: start;
}

/* 🔁2026-09-25 1枚ずつ横に送る（common.js initPeekSlider が .is-step を付けた時だけ・SP のみ動く・先方 9/23）。
   止まっている時は 左端13 に1枚・右に次の1枚の端（323〜）が見える＝Figma 541:1808 と同じ。
   列を1枚分（289+21＝310）ずつ動かす＝左揃えのまま。最後の1枚の次は先頭の複製が来る＝右端で止まらない。
   ⚠️ 列は横スクロールさせない（overflow を visible にして、はみ出しは親で切る。auto のままだと列の外が見えない） */
.p-top__pickup-slider.is-step {
  overflow: hidden;
}

.p-top__pickup-slider.is-step .p-top__pickup-track {
  overflow: visible;
  scroll-snap-type: none;
}

.p-top__pickup-link {
  display: block;
  transition: opacity 0.3s ease;
}

.p-top__pickup-link:hover {
  opacity: 0.85;
}

.p-top__pickup-img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 550/208;
}

/* ドット 541:1844: 5px・gap3・y223（トラック下端201.3 → 21.7）・active #d9d9d9 / 他 #e9e9e9 */
.p-top__pickup-dots {
  display: flex;
  justify-content: center;
  gap: 3px;
  margin-top: 21.7px;
  list-style: none;
}

.p-top__pickup-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #e9e9e9; /* 実測 541:1846（非アクティブ） */
}

.p-top__pickup-dot.is-active {
  background: #d9d9d9; /* 実測 541:1845 #d9d9d9 */
}

@media (min-width: 769px) {
  .p-top__pickup {
    width: min(100%, 1140px);
    margin-top: 93px;
    margin-inline: auto;
  }
  .p-top__pickup-title {
    font-size: 64px;
    line-height: 1.703125;
  }
  /* PC: 見出し下端109 → バナー y163 ＝ 54。2枚横並び 550×208 gap40・ドットなし */
  .p-top__pickup-slider {
    margin-top: 54px;
  }
  .p-top__pickup-track {
    gap: 40px;
    padding-inline: 0;
    scroll-padding-inline: 0;
  }
  .p-top__pickup-item {
    flex-basis: 550px;
  }
  /* PC はデザインどおり先頭2枚の横並び・動かさない（common.js が PC では transform を外す）。3枚目以降と複製は出さない */
  .p-top__pickup-item:nth-child(n+3) {
    display: none;
  }
  .p-top__pickup-dots {
    display: none;
  }
}
/* --------------------------------------------------------------------------
   コンセプト（PC 541:2762 1143×715 / SP 541:1800 374×640）
   固定構図＝実測px座標のキャンバス（SP 390 幅の中で x0 起点・PC 1440 幅の中で x116 起点）を scale で縮小
   -------------------------------------------------------------------------- */
.p-top__concept {
  position: relative;
  width: 100%;
  height: min(640px, 164.1025641026vw);
  margin-top: 90px; /* 実測: TOPICKS 下端1005 → 1095 */
  overflow: hidden;
}

.p-top__concept-canvas {
  position: absolute;
  top: 0;
  left: 50%;
  width: 390px;
  height: 640px;
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
}

.p-top__concept-img {
  position: absolute;
  display: block;
  object-fit: cover; /* Figma scaleMode FILL */
}

/* フロント写真 SP 541:1802 (0,54) 247×204。画像を枠より大きく置いて枠で切る（STRETCH 切り抜きの再現）。
   🔁2026-09-29 撮影写真へ差し替え（2677・4096×2730）。SP の Figma は旧写真のまま＝PC 802:662 の見せる範囲
   [[0.4131,0,0.2936],[0,0.3398,0.4885]] を SP 枠の比率で中央から切り出す（高さ 0.3398 を保ち幅 0.2743・中心 x0.5002）
   → 幅 247/0.2743=900.7・高 204/0.3398=600.3・左 -327.0・上 -293.3（比 1.5004＝元画像どおり・歪みなし） */
.p-top__concept-frame--front {
  position: absolute;
  top: 54px;
  left: 0;
  width: 247px;
  height: 204px;
  overflow: hidden;
}

.p-top__concept-img--front {
  top: -293.3px;
  left: -327px;
  width: 900.7px;
  max-width: none;
  height: 600.3px;
  object-fit: fill;
}

/* 縦書き見出し（SP 541:1804/1805: 24px lh28.8・列幅28/25・右列「心を込めた」x329 h145・左列「温かいおもてなし」x288 h232）
   Figma の縦書きは「1文字1行の横組み」（高さ＝文字数×lh28.8）＝同じ仕組みで組む（writing-mode だと字送りが1emになり高さが合わない） */
.p-top__concept-title {
  position: absolute;
  top: 0;
  right: 33px; /* 実測: 右列右端 357 ＝ 390 − 33 */
  display: flex;
  flex-direction: row-reverse; /* 右の列（心を込めた）から読む */
  align-items: flex-start; /* 列の高さは文字数どおり（Figma 145/232・stretch させない） */
  gap: 16px; /* 実測: 左列右端313 → 右列329 */
  margin: 0;
  color: #525252;
  font-family: "Zen Old Mincho", serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2083333333;
  white-space: normal;
}

.p-top__concept-title-line {
  display: block;
  width: 25px; /* 実測 541:1805「温かいおもてなし」列幅25 */
  word-break: break-all;
}

.p-top__concept-title-line:first-child {
  width: 28px; /* 実測 541:1804「心を込めた」列幅28 */
}

/* タオル SP 541:1806 (252,285) 122×171 */
.p-top__concept-img--towel {
  top: 285px;
  left: 252px;
  width: 122px;
  height: 171px;
}

/* 本文 SP 541:1801 (33,544) 324×96 Zen Old Mincho 500 18 lh32.4 */
.p-top__concept-text {
  position: absolute;
  top: 544px;
  left: 33px;
  width: 324px;
  margin: 0;
  color: #525252;
  font-family: "Zen Old Mincho", serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.7777777778;
}

/* ベッド SP 541:1807 (103,386) 173×105 */
.p-top__concept-img--bed {
  top: 386px;
  left: 103px;
  width: 173px;
  height: 105px;
}

/* アニメ（SP: タオル 右から → ベッド 左から → 文字 下から）。is-inview で発火・ふわっと（指示書） */
/* 🔴 2026-09-18 是正（ユーザー裁定）: 縦書きタイトル「心を込めた／温かいおもてなし」は
   フェードさせない。本文「初めてお越しになる〜目指しています。」はフェードさせる。
   （Figma にも 9/11 合意にもタイトルへのアニメ指示は無く、当方が PC/SP 両方に余計に掛けていた）
   ∴ `.p-top__concept-title` をアニメ対象から外す（写真2枚と本文は従来どおり） */
.p-top__concept-img--towel,
.p-top__concept-img--bed,
.p-top__concept-text {
  opacity: 0;
  transition: opacity 0.9s ease-out, transform 0.9s ease-out;
}

.p-top__concept-img--towel {
  transform: translateX(40px);
  transition-delay: 0.2s;
}

.p-top__concept-img--bed {
  transform: translateX(-40px);
  transition-delay: 0.7s;
}

.p-top__concept-text {
  transform: translateY(30px);
  transition-delay: 1.2s;
}

.p-top__concept.is-inview .p-top__concept-img--towel,
.p-top__concept.is-inview .p-top__concept-img--bed,
.p-top__concept.is-inview .p-top__concept-text {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .p-top__concept-img--towel,
  .p-top__concept-img--bed,
  .p-top__concept-text {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
@media (min-width: 769px) {
  .p-top__concept {
    height: min(715px, 49.6527777778vw);
    margin-top: 161px; /* 実測: pick up 下端1243 → 1404 */
  }
  /* キャンバス 1440 幅・concept フレームは x116 起点（座標は 116 を足した値） */
  .p-top__concept-canvas {
    width: 1440px;
    height: 715px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* フロント PC 802:662 (0,43) 518×284。🔁2026-09-29 撮影写真（2677）＝STRETCH [[0.4131,0,0.2936],[0,0.3398,0.4885]]
     → 幅 518/0.41312=1253.9・高 284/0.33983=835.7・左 -368.1・上 -408.3（比 1.5004＝元画像どおり） */
  .p-top__concept-frame--front {
    top: 43px;
    left: 116px;
    width: 518px;
    height: 284px;
  }
  .p-top__concept-img--front {
    top: -408.3px;
    left: -368.1px;
    width: 1253.9px;
    height: 835.7px;
    object-fit: fill;
  }
  /* 見出し PC 541:2765/2766: 32px lh38.4・列幅43・右列「心を込めた」x760(=116+644) 右端803(=1440−637)・左列 x697・gap 20（740→760） */
  .p-top__concept-title {
    right: 637px;
    gap: 20px;
    font-size: 32px;
    line-height: 1.1875;
    /* 🔴 2026-09-18: タイトルはフェードさせない（上記の是正）＝delay 指定を削除 */
  }
  .p-top__concept-title-line,
  .p-top__concept-title-line:first-child {
    width: 43px;
  }
  /* タオル PC 541:2768 (930,182) 213×283（左から） */
  .p-top__concept-img--towel {
    top: 182px;
    left: 1046px;
    width: 213px;
    height: 283px;
    transform: translateX(-40px);
    transition-delay: 0.2s;
  }
  /* 本文 PC 541:2767 (143,428) 324×96 */
  .p-top__concept-text {
    top: 428px;
    left: 259px;
    transition-delay: 0.7s;
  }
  /* ベッド PC 541:2769 (614,528) 292×187（下から） */
  .p-top__concept-img--bed {
    top: 528px;
    left: 730px;
    width: 292px;
    height: 187px;
    transform: translateY(40px);
    transition-delay: 1.2s;
  }
}
/* --------------------------------------------------------------------------
   特徴（point）PC 541:2724 1440×2334 at y2735 / SP 541:1758 390×2082 at y2001
   固定構図＝実測px座標のキャンバス。写真の切り抜きは Figma imageTransform（STRETCH）を再現
   -------------------------------------------------------------------------- */
.p-top__point {
  position: relative;
  width: 100%;
  height: min(2082px, 533.8461538462vw);
  margin-top: 55px; /* 実測: 写真帯下端1946 → points 2001 */
  overflow: hidden;
}

.p-top__point-canvas {
  position: absolute;
  top: 0;
  left: 50%;
  width: 390px;
  height: 2082px;
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
}

/* 見出し SP 541:1799: (15,0) 360×104 Zen Old Mincho 700 36 lh52.1 中央 2行（PC 541:2725: (0,0) 1440×52 1行） */
.p-top__point-title {
  position: absolute;
  top: 0;
  left: 15px;
  width: 360px;
  margin: 0;
  color: #525252;
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.4444444444;
  text-align: center;
}

.p-top__point-title-br {
  display: inline; /* SP は「ホテルニューユタカの／特徴」で明示改行 */
}

/* 写真枠（切り抜き用の窓）と写真（Figma imageTransform 由来の拡大・オフセット） */
.p-top__point-frame {
  position: absolute;
  overflow: hidden;
}

.p-top__point-photo {
  position: absolute;
  display: block;
  max-width: none;
  object-fit: fill;
}

/* 各ブロックの写真（SP: 390×268 at x0・y162 / 853.9 / 1487.8） */
.p-top__point-frame--1 {
  top: 162px;
  left: 0;
  width: 390px;
  height: 268px;
}

.p-top__point-frame--2 {
  top: 853.9px;
  left: 0;
  width: 390px;
  height: 268px;
}

.p-top__point-frame--3 {
  top: 1487.8px;
  left: 0;
  width: 390px;
  height: 268px;
}

/* 小写真 SP 541:1773 (214,354) 157.1×121.5 */
.p-top__point-frame--1b {
  top: 354px;
  left: 214px;
  width: 157.1px;
  height: 121.5px;
}

/* 切り抜き: 5e01 [[0.8517,0,0.1238],[0,0.8776,0.123]] → 幅117.41% 左-14.54% 高113.95% 上-14.02% */
.p-top__point-photo--1 {
  top: -14.02%;
  left: -14.54%;
  width: 117.41%;
  height: 113.95%;
}

/* 🔁2026-09-29 撮影写真 bf71（PC 541:2761）[[0.6779,0,0.1412],[0,0.7866,0.1326]] → 幅147.52% 左-20.83% 高127.13% 上-16.85%
   SP 枠(157.1×121.5)と PC 枠(296×229)は同じ比率＝PC と同じ範囲（SP の Figma は旧写真 b9f7 のまま） */
.p-top__point-photo--1b {
  top: -16.85%;
  left: -20.83%;
  width: 147.52%;
  height: 127.13%;
}

/* 8d65 SP [[0.8517,0,0.1238],[0,0.8776,0.123]] */
.p-top__point-photo--2 {
  top: -14.02%;
  left: -14.54%;
  width: 117.41%;
  height: 113.95%;
}

/* 🔁2026-09-29 撮影写真 1896（PC 541:2730 と同じ写真）。SP 枠(390×268)と PC 枠(735×505)は同じ比率＝PC と同じ範囲
   [[0.8517,0,0.0731],[0,0.8776,0.0602]] → 幅117.42% 左-8.58% 高113.95% 上-6.86%（SP の Figma は旧写真 c393 のまま） */
.p-top__point-photo--3 {
  top: -6.86%;
  left: -8.58%;
  width: 117.42%;
  height: 113.95%;
}

.p-top__point-photo--3-pc {
  display: none; /* PC 541:2730 は別写真 342132b555b8 */
}

/* 色の小四角（SP: 50.4 at (0.3,439.5)/(0.3,1765.3)）と白の小四角（55×51 at (19,464) / 52×48 at (19,1790)） */
.p-top__point-square {
  position: absolute;
  width: 50.4px;
  height: 50.4px;
}

.p-top__point-square--1 {
  top: 439.5px;
  left: 0.3px;
  background: var(--color-tint);
} /* 541:1764 #f7c2b8 */
.p-top__point-square--3 {
  top: 1765.3px;
  left: 0.3px;
  background: #fffbf2;
} /* 541:1789 */
.p-top__point-white {
  position: absolute;
  background: #ffffff;
}

.p-top__point-white--1 {
  top: 464px;
  left: 19px;
  width: 55px;
  height: 51px;
}

.p-top__point-white--3 {
  top: 1790px;
  left: 19px;
  width: 52px;
  height: 48px;
}

/* テキスト（SP: 305幅・gap15.9。1=(31,490) 2=(43,1184.9) 3=(31,1815.8)） */
.p-top__point-body {
  position: absolute;
  display: flex;
  flex-direction: column;
  gap: 15.9px;
  width: 305px;
  color: #525252;
}

.p-top__point-body--1 {
  top: 490px;
  left: 31px;
}

.p-top__point-body--2 {
  top: 1184.9px;
  left: 43px;
}

.p-top__point-body--3 {
  top: 1815.8px;
  left: 31px;
}

/* 見出し群（Figma: POINT 0N ＋ 小見出しを gap15 の縦並び。SP は gap 15.9 の同列） */
.p-top__point-head {
  display: flex;
  flex-direction: column;
  gap: 10px; /* SP 541:1769 Group 105 = Title 31 + 10 + Text 64（実測 y13993→14034） */
}

.p-top__point-num {
  margin: 0;
  font-family: "Buenard", serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2916666667;
  /* 🔴 2026-09-18 是正（ユーザー指摘・SP）: Figma 541:1770/1782/1795 は
     親 Container（x31 w305／02は x43）の中で POINT箱（w112.7）が中央に置かれている
     （中央値 31+(305-112.7)/2 = 127.15 ／ Figma実測 129.1・140.0・129.1 とほぼ一致）。
     実装は箱の左端に貼り付き 31/43/31 ＝ -98px ずれていた。PCは既に下のMQで center 済み */
  text-align: center;
}

.p-top__point-sub {
  margin: 0;
  font-family: "Zen Old Mincho", serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

.p-top__point-sub-br {
  display: inline; /* SP のみ明示改行（1・3） */
}

.p-top__point-text {
  margin: 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8125;
  text-align: left;
}

/* 白カード（PC のみ 541:2755/2743/2732） */
.p-top__point-card {
  display: none;
}

@media (min-width: 769px) {
  .p-top__point {
    height: min(2334px, 162.0833333333vw);
    margin-top: 160px; /* 実測: 写真帯下端2575 → point 2735（指示書のセクション余白160と一致） */
  }
  .p-top__point-canvas {
    width: 1440px;
    height: 2334px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  .p-top__point-title {
    left: 0;
    width: 1440px;
  }
  .p-top__point-title-br {
    display: none;
  }
  /* 写真 PC: 1=(144.2,230) 2=(663.2,1045) 3=(144.8,1790) 各735×505／小=(216.2,675) 296×229 */
  .p-top__point-frame--1 {
    top: 230px;
    left: 144.2px;
    width: 735px;
    height: 505px;
  }
  .p-top__point-frame--2 {
    top: 1045px;
    left: 663.2px;
    width: 735px;
    height: 505px;
  }
  .p-top__point-frame--3 {
    top: 1790px;
    left: 144.8px;
    width: 735px;
    height: 505px;
  }
  .p-top__point-frame--1b {
    top: 675px;
    left: 216.2px;
    width: 296px;
    height: 229px;
  }
  /* 8d65 PC [[0.8517,0,0.074],[0,0.8776,0.0004]] → 左-8.69% 上-0.05% */
  .p-top__point-photo--2 {
    top: -0.05%;
    left: -8.69%;
  }
  /* PC の3枚目 541:2730 🔁2026-09-29 撮影写真 1896 [[0.8517,0,0.0731],[0,0.8776,0.0602]] → 左-8.58% 上-6.86% */
  .p-top__point-photo--3 {
    display: none;
  }
  .p-top__point-photo--3-pc {
    display: block;
    top: -6.86%;
    left: -8.58%;
    width: 117.42%;
    height: 113.95%;
  }
  /* 色の四角 PC: 175 at (41.8,152) / (42,1712)。白の小四角は PC に無い */
  .p-top__point-square {
    width: 175px;
    height: 175px;
  }
  .p-top__point-square--1 {
    top: 152px;
    left: 41.8px;
  }
  .p-top__point-square--3 {
    top: 1712px;
    left: 42px;
  }
  .p-top__point-white {
    display: none;
  }
  /* 白カード PC: 1=(705,456)596×381 2=(155,1271)596×381 3=(705,2016)596×318 */
  .p-top__point-card {
    position: absolute;
    display: block;
    width: 596px;
    background: #ffffff;
  }
  .p-top__point-card--1 {
    top: 456px;
    left: 705px;
    height: 381px;
  }
  .p-top__point-card--2 {
    top: 1271px;
    left: 155px;
    height: 381px;
  }
  .p-top__point-card--3 {
    top: 2016px;
    left: 705px;
    height: 318px;
  }
  /* テキスト PC: 505幅・見出し群(94)→本文 gap30。1=(751,505) 2=(201,1336) 3=(751,2065) */
  .p-top__point-body {
    gap: 30px;
    width: 505px;
  }
  .p-top__point-body--1 {
    top: 505px;
    left: 751px;
  }
  .p-top__point-body--2 {
    top: 1336px;
    left: 201px;
  }
  .p-top__point-body--3 {
    top: 2065px;
    left: 751px;
  }
  .p-top__point-head {
    gap: 15px;
  }
  .p-top__point-num {
    font-size: 33.66px; /* 実測 33.658 */
    line-height: 1.3071895425;
  }
  .p-top__point-sub {
    font-size: 24px;
    line-height: 1.4583333333;
  }
  /* 🔴 2026-09-18 是正: 以前は「541:2758/2759 が align=LEFT だから POINT 01 は左揃え」と
     していたが誤り。これらは autoresize=WIDTH_AND_HEIGHT（＝箱が文字幅ぴったり）で、
     LEFT/CENTER のどちらでも見た目が変わらない＝配置の根拠にならないプロパティだった。
     実座標で判定すると 3件とも列内で中央に置かれている:
       POINT 01 `541:2758` x=913.0（列751/幅505の中央配置なら 934.5・左なら 751 ＝中央寄り）
       見出し   `541:2759` x=751.0（w=504＝ほぼ列幅のため中央751.5と一致）
       POINT 02 `541:2747` x=297.5 ＝中央配置値 297.5 と完全一致
       POINT 03 `541:2737` x=811.5 ＝中央配置値 811.5 と完全一致
     ∴ ラベル・見出しは3件とも中央。本文（`541:2760` w=505・列幅いっぱい）は左のまま */
  .p-top__point-num,
  .p-top__point-sub {
    text-align: center;
  }
  .p-top__point-sub-br {
    display: none;
  }
  .p-top__point-text {
    font-size: 18px;
    line-height: 1.7777777778;
  }
}
/* --------------------------------------------------------------------------
   back decoration（541:2458 / 541:1440）＝セクション背面の帯・大きな英字・写真帯
   -------------------------------------------------------------------------- */
/* コンセプト背面の薄クリーム帯 541:2461（PC 1440×888 at y1343＝concept 上端1404 の 61px 上）／ 541:1442（SP 390×746 at y1045＝concept 1095 の 50px 上） */
.p-top__concept::before {
  position: absolute;
  top: -50px;
  left: 50%;
  z-index: -1;
  width: 100vw;
  height: 746px;
  transform: translateX(-50%);
  background: #fffbf2; /* 実測 541:1442 */
  content: "";
}

.p-top__concept {
  overflow: visible; /* 帯を上下にはみ出させる（横は .l-main の clip で守る） */
  z-index: 0;
}

/* 「CONCEPT」541:2462: Buenard 700 120 lh156.1 ls6・#c71801 40%・90°回転・箱 156×592 at (1302,1369)＝concept 上端の 35px 上。PC のみ（SP に無し） */
.p-top__concept-en {
  display: none;
}

/* 写真帯（フローに置く。PC 541:2466 1440×348 at y2227 / SP 541:1444 390×162 at y1784） */
.p-top__strip {
  position: relative;
  width: 100%;
  height: 41.5384615385vw; /* 2026-09-21: 上限 min(162px,…) を外し箱の比率を常に一定に（390超で写真が横に伸びた原因） */
  overflow: hidden;
}

.p-top__strip--1 {
  margin-top: 49px; /* 実測: concept 下端1735 → 1784 */
}

.p-top__strip-img {
  position: absolute;
  display: block;
  max-width: none;
  object-fit: fill;
}

/* 切り抜き（imageTransform）🔁2026-09-29 撮影写真 4776（4096×2731）。SP の Figma は旧写真 0379 のまま＝
   PC 802:666 の見せる範囲 [[0.9994,0,0],[0,0.3608,0.2902]] を SP 枠(390×162)の比率で中央から切り出す
   （高さ 0.3608 を保ち幅 0.5792・中心 x0.4997）→ 幅172.66% 左-36.27% 高277.14% 上-80.43% */
.p-top__strip--1 .p-top__strip-img {
  top: -80.43%;
  left: -36.27%;
  width: 172.66%;
  height: 277.14%;
}

@media (min-width: 769px) {
  .p-top__concept::before {
    top: -61px;
    height: 888px;
  }
  .p-top__concept-en {
    position: absolute;
    top: -35px;
    left: 1302px;
    display: block;
    width: 156px;
    height: 592px;
    margin: 0;
    color: var(--color-main);
    font-family: "Buenard", serif;
    font-size: 120px;
    font-weight: 700;
    line-height: 1.3008333333;
    letter-spacing: 6px;
    white-space: nowrap;
    opacity: 0.4;
    writing-mode: vertical-lr; /* 90°回転（上→下に読む） */
    text-orientation: sideways;
  }
  .p-top__strip {
    height: 24.1666666667vw; /* 同上（1440超で伸びた原因） */
  }
  .p-top__strip--1 {
    margin-top: 108px; /* 実測: concept 下端2119 → 2227 */
  }
  /* PC 802:666（1445 幅・x-2）🔁2026-09-29 撮影写真 4776 [[0.9994,0,0],[0,0.3608,0.2902]] → 幅100.07% 左0% 高277.14% 上-80.43% */
  .p-top__strip--1 .p-top__strip-img {
    top: -80.43%;
    left: 0;
    width: 100.07%;
    height: 277.14%;
  }
}
/* --------------------------------------------------------------------------
   客室（PC 541:2694 1383×750 at x29 / SP 541:1730 390×1514）
   -------------------------------------------------------------------------- */
.p-top__rooms {
  position: relative;
  width: 100%;
  /* 2026-09-21 flex 化（先方依頼 9/19）: 高さ固定(1514)をやめ中身に追従（.js-canvas-fit）。部屋の増減で崩れない */
  margin-top: 90px; /* 実測: points 下端4083 → 4172.8（指示書 90） */
  overflow: hidden;
}

/* 台紙（縮尺）は従来どおり。SP＝見出し→カード縦積み→ボタン／PC＝見出し行（見出し＋右端ボタン）→カード横並び */
.p-top__rooms-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 390px;
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
}

/* SP は見出しとボタンが一覧を挟む（DOM は PC の並び＝見出し行の中にボタン）→ 見出し行の箱を消して order で並べる */
.p-top__rooms-head {
  display: contents;
}

/* 見出し SP 541:1731 (129,0) 132×47 Buenard 600 36 lh46.8＝中央（x129＋幅の半分≒195） */
.p-top__rooms-title {
  order: 1;
  margin: 0;
  color: #525252;
  font-family: "Buenard", serif;
  font-size: 36px;
  font-weight: 600;
  line-height: 1.3055555556;
  white-space: nowrap;
}

/* ボタン SP 541:1732 (88,1477)＝中央・一覧下端1437 → 40。フレーム下端1514＝ボタン下端 */
.p-top__rooms-btn {
  order: 3;
  margin-top: 40px;
}

/* 一覧 SP: 見出し下端47 → 87＝40。カードは隙間なく縦積み（y87 / 537 / 987） */
.p-top__rooms-list {
  order: 2;
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 40px 0 0;
  list-style: none;
}

/* カード SP 390×450。写真は背面に敷き（重ねる要素＝absolute のまま）、キャプションは上から 200.8 の位置に中央で置く */
.p-top__rooms-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  min-height: 450px;
  padding-top: 200.8px;
}

.p-top__rooms-item--3 {
  padding-top: 200.1px; /* 実測 541:1753 */
}

.p-top__rooms-photos {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

/* オーバーレイ #525252 55%（541:1738 ほか） */
.p-top__rooms-photos::after {
  position: absolute;
  inset: 0;
  background: rgba(82, 82, 82, 0.55);
  content: "";
}

.p-top__rooms-photo {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: fill;
  opacity: 0;
  transition: opacity 1.2s ease;
}

.p-top__rooms-photo.is-active {
  opacity: 1;
}

/* 切り抜き（imageTransform）: 01 [[0.5006,0,0.3748],[0,1,0]] → 幅199.76% 左-74.87% ／ 02 左-75.93% ／ 03 は FILL（cover） */
/* 2026-09-21 比率の是正: 上の imageTransform を「幅199.76%×高さ100%」で再現すると、SP の箱(390×450)では
   描画 779×450＝元画像(1400×933・比1.5005)より横に +15.4% 伸びる（PC の箱 461×614 では 920.9×614＝比1.4998 で伸びない）。
   ＝Figma SP 側の配置ミスと判断（ユーザー裁定 9/21「明らかな人為ミスは修正可」・deviation ⑪⑯ と同型）。
   → 箱いっぱいに cover。見せる範囲の中心は Figma と同じ（01: 62.51% / 02: 63.03%）→ object-position で指定 */
/* 🔁2026-09-29 撮影写真へ差し替え（01 a772・02 f75e・03 6f05／いずれも 4096×2731）。
   PC 541:2696/2697 [[0.5006,0,0.2496],[0,1,0]]・[[0.5006,0,0.5002],[0,1,0]]／541:2698 FILL
   ＝PC 枠(461×614)と同じ比率の範囲（幅 0.5006・高さ全域）＝cover の object-position で再現: 49.99%／100%（0.5002+0.5006＝1.0008 は右端で止める）／50%。
   SP の Figma は旧写真のまま＝その PC 範囲を SP 枠(390×450)の比率で中央から切り出す（幅 0.5006 を保ち高さ 0.8663）
   → 幅199.76%・高115.43%・上-7.72%・左 -49.87%／-99.76%／-49.88% */
.p-top__rooms-photo--1,
.p-top__rooms-photo--2,
.p-top__rooms-photo--3 {
  top: -7.72%;
  width: 199.76%;
  height: 115.43%;
}

.p-top__rooms-photo--1 {
  left: -49.87%;
}

.p-top__rooms-photo--2 {
  left: -99.76%;
}

.p-top__rooms-photo--3 {
  left: -49.88%;
}

@media (min-width: 769px) {
  .p-top__rooms-photo--1,
  .p-top__rooms-photo--2,
  .p-top__rooms-photo--3 {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p-top__rooms-photo--1 {
    object-position: 49.99% 50%;
  }
  .p-top__rooms-photo--2 {
    object-position: 100% 50%;
  }
  .p-top__rooms-photo--3 {
    object-position: 50% 50%;
  }
}
/* 2026-09-21 削除（先方指示・Discord 9/19 23:04 えーちゃん「SPサイズで出てくる中央の小さい画像は削除」＝デザインチェック時の見落とし）:
   Figma SP 541:1739 / 541:1746 / 541:1753（150.6×91.6 の重ね画像）は実装しない＝Figma との意図的差分 */
/* キャプション SP: 各写真の +200.8・幅150.6・中央（Figma x120.1＝中央119.7 と 0.4 差） */
.p-top__rooms-cap {
  position: relative; /* 背面の写真（absolute）より前面に出す */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  width: 150.6px;
  color: #ffffff;
  text-align: center;
}

/* 2026-09-22 是正（deviation ⑥）: Figma は1枚目だけキャプション群（小画像＋線＋文字）が左に 22.4（PC 27）ずれ、2・3枚目は中央。
   群ごとのずれで避ける物も無い＝置き間違い（ユーザー裁定 9/21「明らかな人為ミスは修正可」・9/22 確認）→ 3枚とも中央に揃える */
.p-top__rooms-name {
  margin: 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.7;
  white-space: nowrap;
}

.p-top__rooms-line {
  display: block;
  width: 113px;
  height: 1px;
  margin-bottom: -1px; /* Figma の LINE は高さ0（次要素は線の y から +12）＝1px の実体ぶんを相殺 */
  background: #ffffff;
}

.p-top__rooms-spec {
  margin: 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.7222222222;
  white-space: nowrap;
}

.p-top__rooms-capacity {
  margin: 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7142857143;
  white-space: nowrap;
}

@media (min-width: 769px) {
  .p-top__rooms {
    margin-top: 160px; /* 実測: point 下端5069 → 5229 */
  }
  /* キャンバス 1440 幅。1行目＝見出し(x125)＋ボタン(右端1346.7・上46)／2行目＝カード3枚（x29 から隙間なく） */
  .p-top__rooms-canvas {
    align-items: stretch;
    width: 1440px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  .p-top__rooms-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 0 93.3px 0 125px; /* 右＝1440 −（ボタン x1133＋幅213.7） */
  }
  /* 見出し PC 541:2701 (96,0)+29 234×83 64px lh83.3 */
  .p-top__rooms-title {
    font-size: 64px;
    line-height: 1.296875;
  }
  /* ボタン PC 541:2702 (1104,46)+29 */
  .p-top__rooms-btn {
    margin-top: 46px;
  }
  /* 一覧 PC: 見出し下端83 → 136＝53。461×614 を x29 から横並び */
  .p-top__rooms-list {
    flex-direction: row;
    width: auto;
    margin: 53px 0 0 29px;
  }
  .p-top__rooms-item {
    flex: 0 0 461px;
    width: 461px;
    min-height: 614px;
    padding-top: 274px; /* キャプション PC y410 − 136 */
  }
  .p-top__rooms-item--3 {
    padding-top: 274px;
  }
  /* キャプション PC 幅178・中央（Figma x142＝中央141.5 と 0.5 差） */
  .p-top__rooms-cap {
    width: 178px;
  }
}
/* --------------------------------------------------------------------------
   館内施設・サービス（PC 541:2664 1220×272 at x125 / SP 541:1691 375×579 at x7）
   -------------------------------------------------------------------------- */
.p-top__service {
  position: relative;
  width: 100%;
  /* 2026-09-21 flex/grid 化（先方依頼 9/19「position ではなく flex で・WP化前に見直し」）:
     高さは固定(579)をやめ中身に追従（.js-canvas-fit＝NEXT #18）。項目の増減で崩れない */
  margin-top: 90px; /* 実測: ROOMS 下端5686.8 → 5776.8 */
  overflow: hidden;
}

/* 台紙（縮尺）は従来どおり。中身は座標指定をやめ、縦積み（SP）／見出し行＋一覧（PC）で流す。
   余白の値は Figma 実測の座標差から出したもの（各行コメント） */
.p-top__service-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  padding-bottom: 4px; /* ボタン下端575 → フレーム下端579 */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
}

/* 見出し SP 541:1694 (2,0)+7 324×61 Zen Old Mincho 700 36 lh61.2 中央 */
.p-top__service-title {
  width: 324px;
  margin: 0 0 0 9px;
  color: #525252;
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 英字 SP 541:1695 (2,61)+7 372.6×34 Buenard 500 20 lh34 左 */
.p-top__service-en {
  width: 372.6px;
  margin: 0 0 0 9px;
  color: #525252;
  font-family: "Buenard", serif;
  font-size: 20px;
  font-weight: 500; /* Figma 541 実測=500（Buenard-Medium）。Google Fonts は 500 を配信＝代替不要・2026-09-14 是正 */
  line-height: 1.7;
  text-align: left;
  white-space: nowrap;
}

/* ボタン SP 541:1723 (74,540)+7: 一覧の下（7番目の下端493.2 → 540＝46.8）。DOM は PC の並び（見出し行の右）なので SP は order で最後へ */
.p-top__service-btn {
  order: 3;
  margin: 46.8px 0 0 81px;
}

/* 一覧 SP: 白108×108 を3列。左端12〜右端382 に均等割（Figma は x12/138/274＝間隔18/28 と不揃い → 均等 23/23。中央列のみ +5px）。
   行間25（Figma 24.7〜26.2）。英字下端95 → 1段目135＝40 */
.p-top__service-list {
  order: 2;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 25px;
  width: 100%;
  margin: 40px 0 0;
  padding: 0 8px 0 12px;
  list-style: none;
}

/* 項目: 画像（上10.5・中央）＋ラベル（画像下 +2.8・中央。長い文言は左右均等にはみ出す） */
.p-top__service-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 108px;
  height: 108px;
  padding-top: 10.5px;
  background: #ffffff; /* 541:1698 ほか（白地の上なので見えない・Figma どおり） */
}

.p-top__service-icon {
  display: block;
  flex: none;
  width: 67.2px;
  height: 67.2px;
  object-fit: cover;
}

.p-top__service-label {
  margin: 2.8px 0 0;
  color: #525252;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.7142857143;
  text-align: center;
  white-space: nowrap;
}

/* 会議室・宴会場 SP 541:1720: 画像 78.4×67.7（ラベルは画像下 +2.8） */
.p-top__service-item--6 .p-top__service-icon {
  width: 78.4px;
  height: 67.7px;
}

/* 1Fフリースペース SP 541:1727 (10,388.2)+7 112×105: 画像92×96 は左寄せ・ラベルは中央で画像に 15px 重なる（y+81）。
   Figma は 2段目の下 12.2（他の行間25より詰まる）・左 +5 ＝ その差を margin で持つ */
.p-top__service-item--7 {
  align-items: flex-start;
  width: 112px;
  height: 105px;
  margin: -12.8px 0 0 5px;
  padding-top: 0;
  background: none;
}

.p-top__service-item--7 .p-top__service-icon {
  width: 92px;
  height: 96px;
}

.p-top__service-item--7 .p-top__service-label {
  align-self: center;
  margin-top: -15px;
}

@media (min-width: 769px) {
  .p-top__service {
    margin-top: 160px; /* 実測: rooms 下端5979 → 6139 */
  }
  /* PC: 1行目＝見出し(x140)＋英字(x492・上21)＋ボタン(右端1338.7)／2行目＝一覧（y132） */
  .p-top__service-canvas {
    flex-flow: row wrap;
    align-items: flex-start;
    width: 1440px;
    padding: 0 101.3px 13px 140px; /* 右＝1440−ボタン右端1338.7／下＝一覧下端259 → 272 */
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  .p-top__service-title {
    margin-left: 0;
  }
  /* 英字 PC 541:2668 (367,21)+125 214×34 中央: 見出し右端464 → 492＝28 */
  .p-top__service-en {
    width: 214px;
    margin: 21px 0 0 28px;
    text-align: center;
  }
  /* ボタン PC 541:2669 (986,26)+125: 行の右端へ */
  .p-top__service-btn {
    order: 0;
    margin: 26px 0 0 auto;
  }
  /* 一覧 PC: Figma の中心は 202/379/558/736/912/1089/1268＝ほぼ等間隔（177.67）＝「等幅7列の中央に置く」設計と読める。
     → 等幅7列（列幅177.67・左端113.17）で各項目を中央に。Figma との差は最大 1.3px。見出し下端61 → 一覧132＝71 */
  .p-top__service-list {
    display: grid;
    grid-template-columns: repeat(7, 177.67px);
    justify-items: center;
    row-gap: 40px;
    width: auto;
    margin: 71px 0 0 -26.83px; /* 113.17 − 140 */
    padding: 0;
  }
  /* 項目 PC: 画像96×96（末尾2つ 112×96）＋ラベル（画像下 +4）16px 700 lh27.2 */
  .p-top__service-item {
    width: 96px;
    height: 127px;
    padding-top: 0;
    background: none;
  }
  .p-top__service-icon {
    width: 96px;
    height: 96px;
  }
  .p-top__service-label {
    margin-top: 4px; /* 実測: 画像下端228 → ラベル232 */
    font-size: 16px;
    line-height: 1.6875;
  }
  .p-top__service-item--6 {
    width: 112px;
  }
  .p-top__service-item--6 .p-top__service-icon {
    width: 112px;
    height: 96px;
  }
  /* 1Fフリースペース PC 541:2692: 箱128・画像112×96 は中央（(128−112)/2=8）・ラベル幅128 */
  .p-top__service-item--7 {
    align-items: center;
    width: 128px;
    height: 127px;
    margin: 0;
  }
  .p-top__service-item--7 .p-top__service-icon {
    width: 112px;
    height: 96px;
  }
  .p-top__service-item--7 .p-top__service-label {
    margin-top: 4px;
  }
}
/* --------------------------------------------------------------------------
   写真帯2（PC 541:2470 y6571 / SP 541:1443 y6445）
   -------------------------------------------------------------------------- */
.p-top__strip--2 {
  margin-top: 89px; /* 実測: service 下端6355.8 → 6445 */
}

/* 🔁2026-09-29 撮影写真 b54b（4096×2731）。PC 541:2471 の Figma 切り抜き [[0.7997,0,0.1860],[0,0.3421,0.5004]] は
   枠(1445×348)より縦長の範囲を当てている（そのままだと横に +18% 伸びる）＝9/21 裁定と同じく歪ませない:
   範囲の幅 0.7997・中心 (0.5859, 0.6714) を保ち、高さを枠の比率に合わせて 0.2889 にする（PC の見せる範囲）。
   SP の Figma は旧写真 c6fa のまま＝その PC 範囲を SP 枠(390×162)の比率で中央から切り出す（高さ 0.2889・幅 0.4637）
   → SP 幅215.67% 左-76.36% 高346.18% 上-182.44% */
.p-top__strip--2 .p-top__strip-img {
  top: -182.44%;
  left: -76.36%;
  width: 215.67%;
  height: 346.18%;
}

@media (min-width: 769px) {
  .p-top__strip--2 {
    margin-top: 160px; /* 実測: service 下端6411 → 6571 */
  }
  /* PC 541:2471 🔁2026-09-29 撮影写真 b54b（上の説明の PC 範囲）→ 幅125.04% 左-23.26% 高346.18% 上-182.44% */
  .p-top__strip--2 .p-top__strip-img {
    top: -182.44%;
    left: -23.26%;
    width: 125.04%;
  }
}
/* --------------------------------------------------------------------------
   会議室・宴会場（PC 541:2630 878×954 at x281 / SP 541:1667 388×1550.5 at x2）
   -------------------------------------------------------------------------- */
.p-top__meeting {
  position: relative;
  z-index: 0;
  width: 100%;
  /* 2026-09-21 flex 化（先方依頼 9/19）: 高さ固定(1550.5)をやめ中身に追従（.js-canvas-fit）。会場の増減・文言の変更で崩れない */
  margin-top: 78px; /* 実測: 写真帯下端6607 → 6685 */
}

/* クリーム帯 SP 541:1441 (0,6600) 390×1674 ＝ セクション上端の 85px 上から */
.p-top__meeting::before {
  position: absolute;
  top: -85px;
  left: 50%;
  z-index: -1;
  width: 100vw;
  height: 1674px;
  transform: translateX(-50%);
  background: #fffbf2;
  content: "";
}

/* 台紙（縮尺）は従来どおり。中身は 見出し → 説明 → 会場の一覧 →（PC のみ）ボタン の縦積み。
   余白は Figma 座標の差（各行コメント）。背面のクリーム帯（::before）は重ねる飾り＝absolute のまま */
.p-top__meeting-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  min-height: 1550.5px; /* Figma のフレーム高さを下限に */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
}

/* 見出し SP 541:1669 (0,0)+2 387×61 */
.p-top__meeting-title {
  width: 387px;
  margin: 0 0 0 2px;
  color: #525252;
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 説明 SP 541:1671 (36.5,91)+2 314×96 Noto Sans 400 18 lh32.4 中央: 見出し下端61 → 91＝30 */
.p-top__meeting-text {
  width: 314px;
  margin: 30px 0 0 38.5px;
  color: #525252;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7777777778;
  text-align: center;
}

/* 一覧 SP: 縦1列 x61+2・y227（説明下端187 → 40）／各 280×421.2・次まで 30（678.2−648.2） */
.p-top__meeting-list {
  display: flex;
  flex-direction: column;
  gap: 30px;
  margin: 40px 0 0 63px;
  list-style: none;
}

.p-top__meeting-item {
  width: 280px;
}

.p-top__meeting-photo {
  position: relative;
  width: 280px;
  height: 280px;
  overflow: hidden;
}

.p-top__meeting-img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover; /* FILL */
}

.p-top__meeting-img--sp {
  display: block;
}

.p-top__meeting-item--2 .p-top__meeting-img--pc {
  display: none; /* SP は別写真 */
}

/* 1枚目 🔁2026-09-29 撮影写真 27c3（PC 541:2639）STRETCH [[0.6062,0,0.2237],[0,0.9091,-0.0116]]（枠 280×280・正方形の範囲＝歪みなし）。
   Figma は上端が写真の外（-0.0116）に 1.16% はみ出して置かれ、枠の上 3.6px に写真が無い（Figma の実描画でも隙間が出る）
   ＝配置のずれと判断し、範囲を写真の内側（上端 0）に収める → 幅164.98% 左-36.90% 高110.00% 上0。
   SP の枠も 280×280（Figma は旧写真 5e01 のまま）＝PC と同じ範囲 */
.p-top__meeting-item--1 .p-top__meeting-img--pc {
  top: 0;
  left: -36.9%;
  width: 164.98%;
  max-width: none;
  height: 110%;
  object-fit: fill;
}

/* 名称行 SP 541:1675: 写真下 +20・263×39.2。四角13.06 at (0.9,13.1)・文字 Noto Sans 600 22.38 lh38.1 202w 中央 at x18.2 */
.p-top__meeting-body {
  position: relative;
  width: 263px;
  margin-top: 20px;
  color: #525252;
}

/* 名称行＝■＋会場名の横並び（■ (0.9,13.1)・文字 x18.2 → すき間 18.2−0.9−13.06＝4.24）。上下中央＝(39.2−13.06)/2＝13.07 */
.p-top__meeting-name {
  display: flex;
  align-items: center;
  gap: 4.24px;
  height: 39.2px;
  margin: 0;
  padding-left: 0.9px;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 22.38px;
  font-weight: 600;
  line-height: 1.6979445934;
}

.p-top__meeting-square {
  flex: none;
  width: 13.06px;
  height: 13.06px;
}

.p-top__meeting-square--tint {
  background: var(--color-tint);
} /* 541:2636 #f7c2b8 */
.p-top__meeting-square--blue {
  background: #c6e8ee;
} /* 541:2645（SP は 3つとも #f7c2b8 ＝ 下で上書き） */
.p-top__meeting-item--2 .p-top__meeting-square--blue {
  background: var(--color-tint); /* SP 541:1682 #f7c2b8 */
}

.p-top__meeting-name-text {
  align-self: flex-start; /* 文字は行の上端から（Figma y0）。■だけ上下中央 */
  width: 202px;
  text-align: center;
  white-space: nowrap;
}

/* 3つ目 541:1689: 文字 x18・幅90（すき間 18−0.9−13.06＝4.04） */
.p-top__meeting-item--3 .p-top__meeting-name {
  gap: 4.04px;
}

.p-top__meeting-item--3 .p-top__meeting-name-text {
  width: 90px;
}

/* 1つ目 🔁2026-09-29「大宴会場」＋2行目「スカイバンケット」（PC 873:5076 の2行構成・Figma 表記「スカイバケット」は誤字＝先方指示の表記で入れる）。
   SP の Figma は旧「大宴会場「松の間」」1行のまま＝1行（22.38px×13字＝291）では名称行 263 に収まらないため PC と同じ2行にする:
   1行目は ■＋「大宴会場」（文字は他の行と同じく ■ の右 x18.2 から）、2行目は同じ書体で 1行目の文字の左端に揃える */
.p-top__meeting-item--1 .p-top__meeting-name-text {
  width: auto;
}

.p-top__meeting-name2 {
  margin: 0 0 0 18.2px;
  color: #525252;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 22.38px;
  font-weight: 600;
  line-height: 1.6979445934;
  white-space: nowrap;
}

/* 定員 SP: 名称行下 +20（586.2−566.2）・18px 500 lh30.6・左揃え・175/165w */
.p-top__meeting-cap {
  width: 175px;
  margin: 20px 0 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.7222222222;
  text-align: left;
  white-space: nowrap;
}

/* ボタン: SP には無い（Figma 541:1667 に非存在・📮） */
.p-top__meeting-btn {
  display: none;
}

@media (min-width: 769px) {
  .p-top__meeting {
    margin-top: 128px; /* 実測: 写真帯下端6919 → 7047 */
  }
  /* クリーム帯 PC 541:2460 (−2,6919) 1444×1216 ＝ セクション上端の 128px 上から */
  .p-top__meeting::before {
    top: -128px;
    height: 1216px;
  }
  /* キャンバス 1440・meeting フレームは x281 起点 */
  /* PC は全部中央（見出し・説明 448w＝x496、一覧 878w＝x281、ボタン＝x589 は、いずれも 1440 の中央） */
  .p-top__meeting-canvas {
    align-items: center;
    width: 1440px;
    min-height: 954px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  .p-top__meeting-title {
    width: 448px;
    margin-left: 0;
  }
  /* 説明 PC: 見出し下端61 → 121＝60 */
  /* 2026-09-22: 箱が文字ぴったり（2行目 18px×25字＝450 ＞ 448）で、行末の「。」を詰めない Firefox では3行になっていた
     （座標固定の頃は下と重なって隠れていた）。折り返し位置を <br class="u-br-pc"> で固定し、箱は左右均等に広げる＝文字の位置は不変 */
  .p-top__meeting-text {
    width: 460px;
    margin: 60px 0 0;
  }
  /* 一覧 PC: 3列 280 gap19・y265（説明下端185 → 80）。各列 574（セル 280 ×2 gap14）。列1・3＝文字上/写真下、列2＝写真上/文字下 */
  .p-top__meeting-list {
    flex-direction: row;
    gap: 19px;
    margin: 80px 0 0;
  }
  .p-top__meeting-item {
    display: flex;
    flex-direction: column;
    gap: 14px;
    height: 574px;
  }
  .p-top__meeting-item--1 .p-top__meeting-photo,
  .p-top__meeting-item--3 .p-top__meeting-photo {
    order: 2;
  }
  .p-top__meeting-img--sp {
    display: none;
  }
  .p-top__meeting-item--2 .p-top__meeting-img--pc {
    display: block;
  }
  /* 文字セル 280×280。中身は 名称行（上80）→ 定員（名称行の下18）の縦積み。
     ⚠️ 横位置は列ごとに Figma 実測の左余白を持つ（下の3組）。Figma は厳密な中央揃えでなく、行の中心がセル中心から
        列1 +7.2／列2 +10.2／列3 +0.5px ずれている（2026-09-21 実測）。中央に整えると 7〜10px 動く＝ユーザー判断待ちのため、現状は位置を変えない */
  .p-top__meeting-body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 280px;
    height: 280px;
    margin-top: 0;
    padding-top: 80px;
  }
  .p-top__meeting-name {
    gap: 4.5px;
    height: 41px;
    padding-left: 1px;
    font-size: 24px;
    line-height: 1.7083333333;
  }
  .p-top__meeting-square {
    width: 14px;
    height: 14px;
  }
  .p-top__meeting-name-text {
    text-align: center;
    white-space: nowrap;
  }
  /* 定員 PC: 名称行下端121 → 139＝18・中央揃えの文字 */
  .p-top__meeting-cap {
    margin: 18px 0 0;
    text-align: center;
  }
  /* 列1 🔁2026-09-29 Figma 873:5078（セル基準 x28,y81 223×151）:
     1行目 541:2635 (28,81) 223×42 ＝■14 at (29,95)・「大宴会場」96w at (53,81) 左揃え（■の右 10）
     2行目 873:5076 (28,126) 223×41 中央揃え 24px 600 lh40.8
     定員 541:2638 (54,170) 129w 中央揃え 2行（2行目の下 +3）
     ⚠️ Figma どおりの位置（セル中央ではない：1行目は左寄せ・定員の中心はセル中心より 21px 左）。他の列と同じく位置は変えない */
  .p-top__meeting-item--1 .p-top__meeting-body {
    padding-top: 81px;
  }
  .p-top__meeting-item--1 .p-top__meeting-name {
    gap: 10px;
    height: 42px;
    margin-left: 28px;
    padding-left: 1px;
  }
  .p-top__meeting-item--1 .p-top__meeting-name-text {
    width: 96px;
    text-align: left;
  }
  .p-top__meeting-item--1 .p-top__meeting-cap {
    width: 129px;
    margin: 3px 0 0 54px;
  }
  .p-top__meeting-name2 {
    width: 223px;
    margin: 3px 0 0 28px;
    font-size: 24px;
    line-height: 1.7083333333;
    text-align: center;
  }
  /* 列2 541:2643〜2647: 名称行 x32・会場名 216w・定員 x57.5 165w。■は青（541:2645） */
  .p-top__meeting-item--2 .p-top__meeting-name {
    margin-left: 32px;
  }
  .p-top__meeting-item--2 .p-top__meeting-square {
    background: #c6e8ee;
  }
  .p-top__meeting-item--2 .p-top__meeting-name-text {
    width: 216px;
  }
  .p-top__meeting-item--2 .p-top__meeting-cap {
    width: 165px;
    margin-left: 57.5px;
  }
  /* 列3 541:2650〜2654: 名称行 x58（■は行内 x25）・会場名 96w（■の右 5）・定員 x58 165w（名称行の下 17） */
  .p-top__meeting-item--3 .p-top__meeting-name {
    gap: 5px;
    margin-left: 58px;
    padding-left: 25px;
  }
  .p-top__meeting-item--3 .p-top__meeting-name-text {
    width: 96px;
  }
  .p-top__meeting-item--3 .p-top__meeting-cap {
    width: 165px;
    margin: 17px 0 0 58px;
  }
  /* ボタン PC 541:2660 (308,919)+281 261.7×37 白地: 一覧下端839 → 80。Figma のフレーム(954)よりボタン下端(956)が 2px はみ出す＝高さに数えない */
  .p-top__meeting-btn {
    display: inline-flex;
    margin: 80px 0 -2px;
  }
}
/* --------------------------------------------------------------------------
   アクセス（PC 541:2546 1017×916 at x212 / SP 541:1631 370×922 at x10）
   -------------------------------------------------------------------------- */
.p-top__access {
  position: relative;
  width: 100%;
  /* 2026-09-21: SP は高さ固定(922)をやめ中身に追従（.js-canvas-fit が 内側の高さ×縮尺 を入れる＝NEXT #18）。
     固定のままだと常時表示にした電車の案内（+92.5px）が overflow:hidden で切れる。元の 922 ＝ 本文上端491.5 ＋ 本文430.5 */
  margin-top: 79.5px; /* 実測: meeting 下端8235.5 → 8315 */
  overflow: hidden;
  /* 2026-09-25: SP の経路2（387w＝Figma どおり枠が7pxはみ出す）がある。hidden だけだと scrollIntoView・ページ内検索で
     この枠が横に7px スクロールされる（実測: 本文の左端 10 → 3）。clip は切り取りのみでスクロールさせない（非対応ブラウザは hidden のまま） */
  overflow: clip;
}

/* 2026-09-21 flex 化（第2弾）: 見出し・住所・電話・地図も座標指定をやめ、中央揃えの縦積みに（SP はどれも幅390の中央＝中心195）。
   余白は Figma 座標の差（各行コメント） */
.p-top__access-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 390px;
  padding-top: 0.5px; /* 見出し y0.5 */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #525252;
}

/* 「ACCESS」（PC のみ・SP に無し） */
.p-top__access-en {
  display: none;
}

/* 見出し SP 541:1634 (113,0.5)+10 144×61 */
.p-top__access-title {
  width: 144px;
  margin: 0;
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 住所 SP 541:1636 (24.5,91.5)+10 321×20 Noto Sans JP 400 18 lh19.8 左: 見出し下端61.5 → 91.5＝30 */
.p-top__access-address {
  width: 321px;
  margin: 30px 0 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.1111111111;
  white-space: nowrap;
}

/* TEL SP 541:1637 (27,136.5)+10 316×20 中央: 住所下端111.5 → 136.5＝25 */
.p-top__access-tel {
  width: 316px;
  margin: 25px 0 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.1111111111;
  text-align: center;
  white-space: nowrap;
}

/* 地図 SP 541:1641 (0,181.5)+10 370×270: TEL 下端156.5 → 181.5＝25 */
.p-top__access-map {
  width: 370px;
  height: 270px;
  margin-top: 25px;
  overflow: hidden;
  background: #d9d9d9;
}

.p-top__access-iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

/* 文字列 SP: 801:128 帯 y471.5（地図下端451.5 → 20）から縦に積む（車の帯 → 本文 → 電車の帯 → 本文）
   🔁2026-09-25 旧 541:1436 の 40 → 新フレーム 801:128 の 20 */
.p-top__access-text {
  width: 370px;
  margin-top: 20px;
}

/* 帯＝アコーディオンの開閉ボタン（SP 801:128 車 (0,471.5)・電車 (0,823): 370×41 #fdebe7・アイコン30 (0,5.5)・名称 24px 600 lh40.8 (34,0)）
   🔁2026-09-25 再びアコーディオン（先方 9/23）。見た目は新フレーム 801:128（旧 541:1436 の 48高・左余白16 から変更）。
   並びは横並び（flex）: 左余白0＝アイコンx0／間隔4＝名称x34−30／上下中央＝アイコン(41−30)/2=5.5・名称(41−41)/2=0 */
.p-top__access-head {
  position: relative; /* ＋／−（.p-top__access-toggle）の基準 */
  display: flex;
  align-items: center;
  gap: 4px;
  width: 100%;
  height: 41px;
  margin: 0;
  padding: 0;
  border: 0;
  background: var(--color-bg-light); /* 実測 #fdebe7 ＝ 館の bg-light */
  color: #525252;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

/* ＋／−（旧 541:1436 の印: 電車 541:1664「+」16×16 at 帯内 x340・線2px／車 541:1648「−」16×2）
   9/21 以前の実装（9/18 ユーザー確認済み）と同じ: 右余白14・16角・線2px。上下は帯41の中央＝(41−16)/2=12.5
   開いている時は縦線を消して「−」、閉じている時は「+」。帯に重ねる飾りのため absolute */
.p-top__access-toggle {
  position: absolute;
  top: 12.5px;
  right: 14px;
  width: 16px;
  height: 16px;
}

.p-top__access-toggle::before,
.p-top__access-toggle::after {
  position: absolute;
  top: 7px;
  left: 0;
  width: 16px;
  height: 2px;
  background: #525252;
  content: "";
}

.p-top__access-toggle::after {
  transform: rotate(90deg);
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.p-top__access-head[aria-expanded=true] .p-top__access-toggle::after {
  opacity: 0;
  transform: rotate(0);
}

.p-top__access-icon {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
}

.p-top__access-head-text {
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.7083333333;
  white-space: nowrap;
}

/* 電車の帯は本文の下 +19.5（801:128: 駐車場下端803.5 → 帯823） */
.p-top__access-group--train {
  margin-top: 19.5px;
}

/* パネル（SP: 帯下 +25＝801:128 車 512.5 → 537.5／閉じている時は非表示） */
.p-top__access-panel {
  display: none;
  padding-top: 25px;
}

.p-top__access-group.is-open .p-top__access-panel {
  display: block;
}

/* 電車のパネル: 帯下端864 → 駅行888.5 ＝ 24.5（801:128） */
.p-top__access-group--train .p-top__access-panel {
  padding-top: 24.5px;
}

.p-top__access-sub {
  margin: 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.7222222222;
}

.p-top__access-route {
  margin: 10px 0 0; /* 実測: 見出し下端589 → 本文599 */
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7222222222;
}

.p-top__access-sub--2 {
  margin-top: 10px; /* 実測: 本文下端661 → 見出し671 */
}

/* 2つ目の経路（SP 801:128: 文字枠 387w・2行＝「…乗り継ぎ、」で改行）。
   枠が帯の幅370を 17 超えるのは Figma どおり（370 だと1行目 381.8px が入らず「継/ぎ、」で割れて3行＋「分」だけの行になる）。
   はみ出すのは行末「、」の文字枠の余白のみで、「、」の形は画面内に収まる（2026-09-25 画素で確認）。PC は下の MQ で 440 列の中に戻す */
.p-top__access-route--2 {
  width: 387px;
}

.p-top__access-parking {
  margin: 19px 0 0; /* 実測: 本文下端805 → 824 */
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.7222222222;
}

/* 駅行（PC 541:2570/2576・SP 801:128 とも 350.5w）: タグ 84×33 枠1px + 駅名 + 線 + 徒歩 */
.p-top__access-row {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0;
  width: 350.5px;
  height: 33px;
  margin: 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7222222222;
  white-space: nowrap;
}

.p-top__access-row--2 {
  margin-top: 8px; /* 実測: 行1下端695 → 行2 703 */
}

.p-top__access-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 84px;
  height: 33px;
  border: 1px solid #525252;
}

.p-top__access-station {
  margin-left: 9.5px; /* 実測: タグ右端84.5 → 駅名94 */
}

.p-top__access-line {
  display: block;
  flex: 1;
  height: 1px;
  margin: 0 2.5px 0 4px; /* 実測: 駅名右端165 → 線169 / 線右端273 → 徒歩275.5 */
  background: repeating-linear-gradient(90deg, #000000 0 1px, transparent 1px 4px); /* 541:2575 stroke #000000 dashes [1,3] ROUND＝点線（JSON strokeDashes・9/11 参照PNGで確認） */
}

.p-top__access-walk {
  flex-shrink: 0;
}

.p-top__access-bus-title {
  margin: 20px 0 0; /* SP 801:128: 駅行下端962.5 → 982.5（PC は 19） */
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.7222222222;
}

.p-top__access-bus-text {
  width: 364px; /* SP 801:128 の本文枠 364w（PC は 439） */
  margin: 10px 0 0;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7777777778;
}

.p-top__access-btn {
  margin-top: 20px; /* SP 801:128: 本文下端1119.5 → 1139.5（PC は 19） */
}

@media (min-width: 769px) {
  .p-top__access {
    margin-top: 192px; /* 実測: meeting 下端8001 → 8193 */
    overflow: visible; /* 「ACCESS」が上へ 14px 食い込む分は見えていて良い（帯なし） */
  }
  /* キャンバス 1440・access フレームは x212 起点 */
  /* PC: 上＝見出し・住所・電話（中央）／下＝左列440（案内文）＋右列465（地図）。DOM は 地図→案内文 の順なので grid で列を指定 */
  .p-top__access-canvas {
    display: grid;
    grid-template-columns: 440px 465px;
    column-gap: 111px; /* 左列右端652.5 → 地図763.5 */
    justify-items: center;
    align-items: start;
    width: 1440px;
    min-height: 916px;
    padding: 0 0 0 212.5px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 「ACCESS 」541:2463: (21,8207) 156×475 ＝ セクション上端 +14・x21（キャンバス座標） */
  .p-top__access-en {
    position: absolute;
    top: 14px;
    left: 21px;
    display: block;
    width: 156px;
    height: 475px;
    margin: 0;
    color: var(--color-main);
    font-family: "Buenard", serif;
    font-size: 120px;
    font-weight: 700;
    line-height: 1.3008333333;
    letter-spacing: 6px;
    white-space: nowrap;
    opacity: 0.4;
    writing-mode: vertical-lr;
    text-orientation: sideways;
  }
  /* 見出し・住所・電話 PC: 356w・x542（＝2列ぶんの幅1016 の中央 720.5 と 0.5 差）。住所 y121（見出し下端61 → 60）・電話 y166（→ 25） */
  .p-top__access-title,
  .p-top__access-address,
  .p-top__access-tel {
    grid-column: 1/-1;
    width: 356px;
    margin-right: 1px; /* 2列ぶんの中央 720.5 → Figma の 720 へ（右に 1px 足すと中央が 0.5 左へ寄る） */
  }
  .p-top__access-address {
    margin-top: 60px;
    font-size: 20px;
    line-height: 1;
  }
  .p-top__access-tel {
    margin-top: 25px;
    font-size: 20px;
    line-height: 1;
  }
  /* 地図 PC 541:2590 (551.5,266)+212 465×650: 電話下端186 → 266＝80 */
  .p-top__access-map {
    grid-area: 4/2;
    width: 465px;
    height: 650px;
    margin-top: 80px;
  }
  /* 左列 PC (0.5,266)+212 幅440 */
  .p-top__access-text {
    grid-area: 4/1;
    width: 440px;
    margin-top: 80px;
  }
  /* PC は帯なし・アコーディオンなし（常時展開・押しても何も起きない）。アイコン (0,5.5) 30・名称 (34,0)＝左余白0・間隔4・上下中央 (41−30)/2=5.5 */
  .p-top__access-head {
    height: 41px;
    padding: 0;
    background: none;
    cursor: default;
    pointer-events: none;
  }
  .p-top__access-toggle {
    display: none;
  }
  .p-top__access-panel,
  .p-top__access-group.is-open .p-top__access-panel {
    display: block;
    padding-top: 25px; /* 実測: 名称下端307 → 見出し332 */
  }
  .p-top__access-sub--2 {
    margin-top: 20px; /* 実測: 本文下端404 → 424 */
  }
  .p-top__access-route {
    margin-top: 10px; /* 実測: 332+31=363 → 373 */
  }
  .p-top__access-route--2 {
    width: auto;
  }
  .p-top__access-parking {
    margin-top: 19px; /* 実測: 527 → 546 */
  }
  /* 電車: 帯 (1,596)＝駐車場下端577 → 596 = 19 */
  .p-top__access-group--train {
    margin-top: 19px;
  }
  /* 電車の見出しは Figma 実測でアイコン x0.5・名称 x34.5（車は 0 / 34）＝見出しごと 0.5px 右 */
  .p-top__access-group--train .p-top__access-head {
    padding-left: 0.5px;
  }
  .p-top__access-group--train .p-top__access-panel {
    padding-top: 25px; /* 実測: 637 → 662 */
  }
  /* 送迎バス PC (0.5,755): 行2下端736 → 755 = 19 ／ 本文 (1,796) 439w ／ ボタン (0.5,879): 本文下端860 → 879 = 19 */
  .p-top__access-bus-title {
    margin-top: 19px;
  }
  .p-top__access-bus-text {
    width: 439px;
  }
  .p-top__access-btn {
    margin-top: 19px;
  }
}
/* --------------------------------------------------------------------------
   お知らせ（PC 541:2599 1070×384 at x185 / SP 541:1603 361×631.7 at x15）
   -------------------------------------------------------------------------- */
.p-top__news {
  position: relative;
  width: 100%;
  /* 2026-09-21 flex/grid 化（先方依頼 9/19）: 高さ固定(631.7)をやめ中身に追従（.js-canvas-fit）。
     お知らせは投稿から出る一覧＝題名の行数・件数が変わっても下線や次の記事に重ならない */
  margin-top: 79px; /* 実測: access 下端9237 → 9316 */
  overflow: hidden;
}

/* 台紙（縮尺）は従来どおり。中身は SP＝縦積み／PC＝左列（見出し・ボタン）＋右列（一覧）の grid */
.p-top__news-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  min-height: 631.7px; /* Figma のフレーム高さを下限に（中身が増えれば伸びる） */
  padding: 12px 0 15.7px; /* 上＝見出し y12／下＝ボタン下端616 → フレーム下端631.7 */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #525252;
}

/* 「NEWS」（PC のみ） */
.p-top__news-en {
  display: none;
}

/* 見出し SP 541:1605 (2,12)+15 105×61 Buenard 700 36 lh61 ／ 541:1606 (2,73)+15 Zen Kaku Gothic New 500 20 lh29 */
.p-top__news-head {
  margin-left: 17px;
}

.p-top__news-title {
  margin: 0;
  font-family: "Buenard", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  white-space: nowrap;
}

.p-top__news-sub {
  margin: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.45;
  white-space: nowrap;
}

/* 記事 SP: x15・y120（見出し下端102 → 18）。Figma の刻み 157 ＝ メタ36 + 15 + 題名2行44 + 下36 + 線1 + 次まで25 */
.p-top__news-list {
  display: flex;
  flex-direction: column;
  gap: 25px;
  width: 361px;
  margin: 18px 0 0 15px;
  list-style: none;
}

/* 下線は記事の下辺（Figma: 記事上端 +131）。SP は最後の1件だけ線なし（541:1613/1620 の2本のみ）＝幅は保って色だけ消す */
.p-top__news-item {
  width: 100%;
  padding-bottom: 36px;
  border-bottom: 1px solid #d9d9d9; /* 541:1613 #d9d9d9 */
}

.p-top__news-item:last-child {
  border-bottom-color: transparent;
}

.p-top__news-link {
  display: block;
  transition: opacity 0.3s ease;
}

.p-top__news-link:hover {
  opacity: 0.7;
}

/* メタ SP 541:1608: 日付 (0,8.5) 84×19 → タグ (104,0) 96×36（間隔20）。DOM はタグ→日付（PC の並び）なので SP は逆順に並べる */
.p-top__news-meta {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: flex-end;
  gap: 20px;
  height: 36px;
}

.p-top__news-date {
  min-width: 84px;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3571428571;
  white-space: nowrap;
}

.p-top__news-cat {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 96px;
  height: 36px;
  border-radius: 100px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4285714286;
  white-space: nowrap;
}

.p-top__news-cat--tint {
  background: var(--color-bg-light);
} /* 541:1610 #fdebe7 */
.p-top__news-cat--cream {
  background: #fffbf2;
} /* 541:2618 */
/* 題名 SP 541:1612 (2,171)→メタ下 +15・359w・16px 500 lh22。Figma は1行でも2行ぶん（44）の場所を取る刻み＝min-height で再現。3行以上は伸びる */
.p-top__news-text {
  display: block;
  width: 359px;
  min-height: 44px;
  margin: 15px 0 0 2px;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.375;
}

/* ボタン SP 541:1627 (100,579)+15: 一覧下端566 → 13 */
.p-top__news-btn {
  margin: 13px 0 0 115px;
}

@media (min-width: 769px) {
  .p-top__news {
    margin-top: 156px; /* 実測: access 下端9109 → 9265 */
    overflow: visible; /* 「NEWS」がセクション上端の 28px 上から始まる */
  }
  /* キャンバス 1440・news フレームは x185 起点。左列384（見出し・ボタン）＋右列686（一覧） */
  .p-top__news-canvas {
    display: grid;
    grid-template-columns: 384px 686px;
    grid-template-rows: auto 1fr;
    align-items: start;
    width: 1440px;
    min-height: 384px;
    padding: 0 0 0 185px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 「NEWS」541:2464 (1298,9237) 156×367 ＝ セクション上端 −28。背面の飾り文字＝重ねる要素なので absolute のまま */
  .p-top__news-en {
    position: absolute;
    top: -28px;
    left: 1298px;
    display: block;
    width: 156px;
    height: 367px;
    margin: 0;
    color: var(--color-main);
    font-family: "Buenard", serif;
    font-size: 120px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 6px;
    white-space: nowrap;
    opacity: 0.4;
    writing-mode: vertical-lr;
    text-orientation: sideways;
  }
  /* 左列 PC 541:2600 (0,0)+185: News (0,0) 232×52 Buenard 700 40 lh60・お知らせ (0,62) Noto Sans 500 24 lh33 */
  .p-top__news-head {
    grid-area: 1/1;
    justify-self: start;
    margin-left: 0;
  }
  .p-top__news-title {
    font-size: 40px;
    font-weight: 400; /* Figma は Buenard 500（Google Fonts に無い）→ 400 で代替（service 英字と同判断） */
    line-height: 1.3; /* 実測箱 52（指定 lh60 は Poppins の残骸・INTRINSIC） */
  }
  .p-top__news-sub {
    margin-top: 10px; /* 実測: 52 → 62 */
    font-family: "Noto Sans", "Noto Sans JP", sans-serif;
    font-size: 24px;
    line-height: 1.375;
  }
  /* 右列 PC 541:2608 (384,0)+185 686w: 記事 y0 / 138 / 276・下線 y108 / 246 / 384 ＝ メタ36 + 20 + 題名22 + 下30 + 線1 + 次まで29 */
  .p-top__news-list {
    grid-area: 1/2/span 2;
    gap: 29px;
    width: 686px;
    margin: 0;
  }
  .p-top__news-item {
    padding-bottom: 30px;
  }
  /* PC は3件とも線あり（541:2629）。最後の線はフレーム下端(384)の外に描かれる＝高さに数えない */
  .p-top__news-item:last-child {
    margin-bottom: -1px;
    border-bottom-color: #d9d9d9;
  }
  /* メタ PC 541:2610: タグ (0,0) → 日付（間隔20）。「キャンペーン」は 107×36（541:2618） */
  .p-top__news-meta {
    flex-direction: row;
    justify-content: flex-start;
  }
  .p-top__news-date {
    min-width: 0;
  }
  .p-top__news-cat {
    font-family: "Noto Sans", "Noto Sans JP", sans-serif;
    line-height: 1.3571428571;
  }
  .p-top__news-cat--cream {
    width: 107px;
  }
  /* 題名 PC 541:2614 (384,56)→メタ下 +20・552w */
  .p-top__news-text {
    width: 552px;
    min-height: 22px;
    margin: 20px 0 0;
  }
  /* ボタン PC 541:2604 (0,165)+185: 見出し下端95 → 70 */
  .p-top__news-btn {
    grid-area: 2/1;
    justify-self: start; /* grid の既定（列幅いっぱいに伸ばす）を止める＝ボタンは自然幅 */
    margin: 70px 0 0;
  }
}
/* --------------------------------------------------------------------------
   よくある質問（PC 541:2491 880×801 at x280 / SP 541:1550 343×807 at x26）
   帯＝セクション（PC 541:2459 y9725〜 / SP 541:1445 y9980〜）。高さは内容可変＝ JS(.js-canvas-fit) で 内側高×縮尺 を反映
   -------------------------------------------------------------------------- */
.p-top__qa {
  position: relative;
  width: 100%;
  margin-top: 32.3px; /* 実測: news 下端9947.7 → 帯9980 */
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff 0%, var(--color-bg-light) 16.35%, var(--color-bg-light) 84.62%, #ffffff 100%); /* 541:1445 */
}

.p-top__qa-canvas {
  position: relative;
  left: 50%;
  width: 390px;
  padding: 47.7px 0 80.3px; /* 実測: 帯9980 → Q&A 10027.7 ／ Q&A 下端10834.7 → 帯下端10915 */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #525252;
}

/* 「Q&A」（PC のみ） */
.p-top__qa-en {
  display: none;
}

/* 見出し SP 541:1551 (64,12)+26 216×61 Zen Old Mincho 700 36 lh61.2 中央 */
.p-top__qa-title {
  width: 216px;
  margin: 12px 0 0 90px;
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 一覧 SP 541:1552 (0,101)+26 343w gap16 */
.p-top__qa-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 343px;
  margin: 28px 0 0 26px; /* 実測: 見出し下端73 → 101 */
}

/* ブロック SP 541:1553: 質問 → gap16 → 回答 */
.p-top__qa-item {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* 質問 SP 541:1554: 白 r10・padding16・row gap12 align center */
.p-top__qa-q {
  display: flex;
  gap: 12px;
  align-items: center;
  width: 100%;
  padding: 16px;
  border: 0;
  border-radius: 10px;
  background: #ffffff;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  appearance: none;
}

/* SP 541:1555: アイコンと文は上揃え（541:1569 y406 ＝ 541:1572 y406） */
.p-top__qa-q-inner {
  display: flex;
  flex: 1 1 auto;
  gap: 12px;
  align-items: flex-start;
  min-width: 0;
}

/* Q/A 丸 36・Montserrat 600 16 lh18 中央（541:1558 (27,126)＝丸 +11,+9） */
.p-top__qa-mark {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.125;
}

.p-top__qa-mark--q {
  border: 1px solid #525252; /* 541:1557 内側1px */
  background: #ffffff;
  color: #525252;
}

.p-top__qa-mark--a {
  background: var(--color-main); /* SP 541:1564 #c71801 */
  color: #ffffff;
}

/* 質問文 SP: Noto Sans 500 16 lh27.2 235w（541:1581 ほか）。箱は 27/54/81 の整数＝1行 27 で実装 */
.p-top__qa-q-text {
  flex: 1 1 auto;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6875;
}

/* トグル 16×16 線2px（541:1573: 閉＝＋／541:1560: 開＝−） */
.p-top__qa-toggle {
  position: relative;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
}

.p-top__qa-toggle::before,
.p-top__qa-toggle::after {
  position: absolute;
  top: 7px;
  left: 0;
  width: 16px;
  height: 2px;
  background: #525252;
  content: "";
}

.p-top__qa-toggle::after {
  transform: rotate(90deg);
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.p-top__qa-q[aria-expanded=true] .p-top__qa-toggle::after {
  opacity: 0;
  transform: rotate(0);
}

/* 回答 SP 541:1562: padding 0 16・row gap8・上揃え（541:1564 y185 ＝ 541:1566 y185）。閉じている時は非表示 */
.p-top__qa-a {
  display: none;
  gap: 8px;
  align-items: flex-start;
  padding: 0 16px;
}

.p-top__qa-item.is-open .p-top__qa-a {
  display: flex;
}

/* 回答文 SP 541:1566: Noto Sans JP 400 15 lh27 ls0.6 267w */
.p-top__qa-a-text {
  flex: 1 1 auto;
  margin: 0;
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
  font-size: 15px;
  font-weight: 400;
  letter-spacing: 0.6px;
  line-height: 1.8;
}

@media (min-width: 769px) {
  .p-top__qa {
    margin-top: 76px; /* 実測: news 下端9649 → 帯9725 */
    background: linear-gradient(180deg, #ffffff 0%, var(--color-bg-light) 16.3%, var(--color-bg-light) 84.6%, #ffffff 100%); /* 541:2459 */
  }
  .p-top__qa-canvas {
    width: 1440px;
    padding: 84px 0 102px; /* 実測: 帯9725 → Q&A 9809 ／ 下端10610 → 10712 */
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 「Q&A」541:2465 (36,9913)＝帯上端 +188・125×208・Buenard 700 96 lh124.9 ls4.8・白40%・rotate90 */
  .p-top__qa-en {
    position: absolute;
    top: 188px;
    left: 36px;
    display: block;
    width: 125px;
    height: 208px;
    margin: 0;
    color: #ffffff;
    font-family: "Buenard", serif;
    font-size: 96px;
    font-weight: 700;
    line-height: 1.3020833333;
    letter-spacing: 4.8px;
    white-space: nowrap;
    opacity: 0.4;
    writing-mode: vertical-lr;
    text-orientation: sideways;
  }
  /* 見出し PC 541:2492 (332,0)+280 → x612 */
  .p-top__qa-title {
    margin: 0 0 0 612px;
  }
  /* 一覧 PC 541:2493 (0,151)+280 880w gap32 */
  .p-top__qa-list {
    gap: 32px;
    width: 880px;
    margin: 90px 0 0 280px; /* 実測: 見出し下端61 → 151 */
  }
  .p-top__qa-item {
    gap: 24px; /* 541:2494 */
  }
  /* 質問 PC 541:2495: padding 16 24・gap24・中央揃え（541:2499 y171.5 ＝ 丸167 + 4.5） */
  .p-top__qa-q {
    gap: 24px;
    padding: 16px 24px;
  }
  .p-top__qa-q-inner {
    gap: 24px;
    align-items: center;
  }
  /* 回答 PC 541:2501: padding 0 26・gap24・A丸 #a31300(strong)・Noto Sans 400 14 lh25.2 ls0.56 */
  .p-top__qa-a {
    gap: 24px;
    padding: 0 26px;
  }
  .p-top__qa-mark--a {
    background: var(--color-strong); /* 541:2503 */
  }
  .p-top__qa-a-text {
    font-family: "Noto Sans", "Noto Sans JP", sans-serif;
    font-size: 14px;
    letter-spacing: 0.56px;
    line-height: 1.8;
  }
}
/* --------------------------------------------------------------------------
   関連情報（PC 541:2474 1082×467 at x223 / SP 541:1533 370×601 at x10）
   -------------------------------------------------------------------------- */
.p-top__info {
  position: relative;
  width: 100%;
  /* 2026-09-21 flex 化（先方依頼 9/19）: 高さ固定(601)をやめ中身に追従（.js-canvas-fit）。項目の増減で崩れない。
     3館共通の部品。館ごとの差（見出しの位置・一覧の開始位置）は下の変数だけで持つ（_top-sunplus / _top-wing が上書き）。
     ✅ 2026-09-25 PC 中央揃え（先方 9/23「関連情報は中央揃えで」・すずさんが Figma ニューPCを 43px 左へ修正済み＝見出し 692→649・一覧 223.5→180.5）。
     3館とも一覧の左端を 180.5（＝ニューの Figma 値・幅1081 の中心 721）に揃える（館ごとの値は _top-sunplus / _top-wing） */
  --info-title-top: 12px; /* 見出し y */
  --info-title-left: 123px; /* 見出し x（ニューは幅390の中央） */
  --info-list-gap: 25px; /* 見出し下端73 → 一覧98 */
  --info-list-left: 10px;
  --info-item-gap: 26.8px; /* 1件目下端332.9 → 2件目359.7 */
  margin-bottom: 80px; /* 実測: info 下端11515.7 → footer 11595.7 */
  overflow: hidden;
}

/* 台紙（縮尺）は従来どおり。中身は 見出し → 一覧 の縦積み。「＋」「///」の飾り（他館）は見出しに重ねる要素＝absolute のまま */
.p-top__info-canvas {
  position: relative;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 390px;
  min-height: 601px; /* Figma のフレーム高さを下限に */
  transform: translateX(-50%) scale(var(--canvas-scale-sp));
  transform-origin: top center;
  color: #525252;
}

/* 見出し SP 541:1534 (113,12)+10 144×61 lh61.2 中央 */
.p-top__info-title {
  width: 144px;
  margin: var(--info-title-top) 0 0 var(--info-title-left);
  font-family: "Zen Old Mincho", serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.6944444444;
  text-align: center;
  white-space: nowrap;
}

/* 一覧 SP: 541:1536 (0,98)+10 370×236 ／ 541:1543 (0,359.7)+10 370×241.3 を縦に積む */
.p-top__info-list {
  display: flex;
  flex-direction: column;
  gap: var(--info-item-gap);
  margin: var(--info-list-gap) 0 0 var(--info-list-left);
  list-style: none;
}

.p-top__info-item {
  width: 370px;
}

.p-top__info-link {
  display: block;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s ease;
}

.p-top__info-link:hover {
  opacity: 0.7;
}

/* 画像 SP 541:1537 369.7×204.04（FILL＝cover 中央）／541:1544 369.7×208.29（STRETCH 縦74.57%・上25.4%＝下揃え） */
.p-top__info-img {
  display: block;
  width: 369.7px;
  height: 204.04px;
  overflow: hidden;
}

.p-top__info-item--2 .p-top__info-img {
  height: 208.29px;
}

.p-top__info-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-top__info-item--2 .p-top__info-img img {
  object-position: 50% 100%;
}

/* 見出し行 SP 541:1538: 画像下 +6.9（302.04 → 308.9）・gap7.9・align center */
.p-top__info-cap {
  display: flex;
  gap: 7.9px;
  align-items: center;
  margin-top: 6.9px;
}

.p-top__info-item--2 .p-top__info-cap {
  margin-top: 6.8px; /* 568.0 → 574.8 */
  gap: 8px;
}

/* 541:1539 Noto Sans JP 700 23.72px lh24 ／ 541:1546 23.85px */
.p-top__info-label {
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
  font-size: 23.72px;
  font-weight: 700;
  line-height: 24px;
  white-space: nowrap;
}

.p-top__info-item--2 .p-top__info-label {
  font-size: 23.85px;
}

/* 丸矢印 541:1541 20.62×20.9（strong）／541:1548 20.62×21.13 */
.p-top__info-arrow {
  display: block;
  flex: 0 0 auto;
  width: 20.62px;
  height: 20.9px;
  color: var(--color-strong);
}

.p-top__info-item--2 .p-top__info-arrow {
  height: 21.13px;
}

@media (min-width: 769px) {
  .p-top__info {
    --info-title-top: 0px;
    --info-title-left: 648px; /* 見出し PC 541:2475 144w: Figma 修正後 649（一覧 180.5 と中心721で一致）→ 一覧を CSS 中央（中心720）にしたので同じ関係を保って 648 */
    --info-list-gap: 90px; /* 見出し下端52 → 一覧142 */
    --info-list-left: 0px; /* 2026-09-25: PC は一覧を CSS で中央揃え（下の .p-top__info-list）＝数値の左位置は使わない */
    --info-item-gap: 30px; /* 左の右端749.5 → 右779.5 */
    margin-top: 58px; /* 実測: 帯下端10712 → info 10770 */
    margin-bottom: 100px; /* 実測: info 下端11237 → footer 11337 */
  }
  .p-top__info-canvas {
    width: 1440px;
    min-height: 467px;
    transform: translateX(-50%) scale(var(--canvas-scale-pc));
  }
  /* 見出し PC 541:2475 144×52 lh52.1 */
  .p-top__info-title {
    line-height: 1.4444444444;
  }
  /* 2列 PC: 左 526w ／ 右 525w を横に並べる。
     2026-09-25 中央揃え（先方 9/23）: 一覧は数値で置かず左右の余白を自動＝キャンバス1440の中央（件数・幅が変わっても中央のまま）。
     Figma ニューの修正値 x180.5 に対し中央は 179.5（幅1081）＝1px 差 */
  .p-top__info-list {
    flex-direction: row;
    align-self: center;
    margin-inline: auto;
  }
  .p-top__info-item {
    width: 526px;
  }
  .p-top__info-item--2 {
    width: 525px;
  }
  .p-top__info-img,
  .p-top__info-item--2 .p-top__info-img {
    width: 100%;
    height: 261px;
  }
  /* 見出し行 PC 541:2479: 画像下 +39（gap39）・gap8・Noto Sans JP 700 24 lh24 */
  .p-top__info-cap,
  .p-top__info-item--2 .p-top__info-cap {
    margin-top: 39px;
    gap: 8px;
  }
  .p-top__info-label,
  .p-top__info-item--2 .p-top__info-label {
    font-size: 24px;
  }
  /* 丸矢印 PC 541:2482 21×21（実測 x199.5＝文字右端191 + 8.5） */
  .p-top__info-arrow,
  .p-top__info-item--2 .p-top__info-arrow {
    width: 21px;
    height: 21px;
    margin-left: 0.5px;
  }
}
