/* 家族の想い出撮影会 専用。デザイン案のCSSを .page-familyphoto-shooting の中だけに効かせています */
.page-familyphoto-shooting h1, .page-familyphoto-shooting h2, .page-familyphoto-shooting h3{font-family:var(--disp);font-weight:700;line-height:1.5;text-wrap:balance;margin:0}
.page-familyphoto-shooting .crumb{margin-left:auto;font-size:13px;color:var(--ink-soft)}
.page-familyphoto-shooting .crumb a{text-decoration:none}
.page-familyphoto-shooting .top{padding-top:40px;padding-bottom:0}
.page-familyphoto-shooting .eyebrow{font-family:var(--num);font-size:11px;letter-spacing:.2em;color:var(--accent);
  text-transform:uppercase;margin-bottom:12px}
.page-familyphoto-shooting .top h1{font-size:27px;line-height:1.62}
.page-familyphoto-shooting .top .lead{margin-top:18px;color:var(--ink-soft);font-size:15px;max-width:34em}
@media(min-width:900px){
.page-familyphoto-shooting .top h1{font-size:36px}
}
.page-familyphoto-shooting section{padding:56px 0}
@media(min-width:900px){
.page-familyphoto-shooting section{padding:80px 0}
}
.page-familyphoto-shooting .sec-head{margin-bottom:28px}
.page-familyphoto-shooting .sec-head h2{font-size:22px}
.page-familyphoto-shooting .sec-head .en{font-family:var(--num);font-size:11px;letter-spacing:.2em;color:var(--ink-soft);
  text-transform:uppercase;margin-top:8px}
.page-familyphoto-shooting .sec-head::after{content:"";display:block;width:40px;height:2px;background:var(--accent);margin-top:16px}
@media(min-width:900px){
.page-familyphoto-shooting .sec-head h2{font-size:28px}
}
.page-familyphoto-shooting .chip{display:inline-flex;align-items:center;font-family:var(--disp);font-weight:700;font-size:12px;
  padding:5px 13px;border-radius:999px;letter-spacing:.04em}
.page-familyphoto-shooting .chip.open{background:var(--accent);color:#fff}
.page-familyphoto-shooting .chip.few{background:#E8A33D;color:#2E2A27}
.page-familyphoto-shooting .chip.full{background:var(--rule);color:var(--ink-soft)}
.page-familyphoto-shooting .chip.done{background:transparent;border:1px solid var(--rule);color:var(--ink-soft)}
.page-familyphoto-shooting .event{background:var(--surface);border:1px solid var(--rule);border-radius:6px;
  padding:28px;display:grid;gap:16px;box-shadow:var(--shadow)}
.page-familyphoto-shooting .event h3{font-size:21px;margin-top:4px}
.page-familyphoto-shooting .event dl{display:grid;grid-template-columns:5em 1fr;gap:10px 18px;font-size:14.5px;margin:0}
.page-familyphoto-shooting .event dt{color:var(--ink-soft);white-space:nowrap}
.page-familyphoto-shooting .event dd{margin:0}
.page-familyphoto-shooting .event p.say{font-size:14.5px;color:var(--ink-soft);line-height:1.9}
.page-familyphoto-shooting .event .go{margin-top:6px}
.page-familyphoto-shooting .states{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;align-items:center;font-size:12px;color:var(--ink-soft)}
.page-familyphoto-shooting .states .lbl{margin-right:4px}
.page-familyphoto-shooting .what{display:grid;gap:2px;border-top:1px solid var(--rule)}
.page-familyphoto-shooting .what article{padding:24px 2px;border-bottom:1px solid var(--rule);display:grid;gap:6px}
.page-familyphoto-shooting .what h3{font-size:16.5px}
.page-familyphoto-shooting .what p{font-size:14.5px;color:var(--ink-soft);line-height:1.85}
.page-familyphoto-shooting .gallery{display:grid;gap:24px}
.page-familyphoto-shooting .gallery figure{margin:0;display:grid;gap:10px}
.page-familyphoto-shooting .gallery img{border-radius:3px;box-shadow:var(--shadow);aspect-ratio:3/2;object-fit:cover}
.page-familyphoto-shooting .gallery figcaption{font-size:13px;color:var(--ink-soft);border-left:2px solid var(--accent);
  padding-left:10px}
@media(min-width:700px){
.page-familyphoto-shooting .gallery{grid-template-columns:repeat(3,1fr)}
}
.page-familyphoto-shooting .venues{display:grid;gap:2px;margin-top:8px}
.page-familyphoto-shooting .venues div{display:flex;align-items:baseline;gap:12px;padding:14px 2px;border-bottom:1px solid var(--rule);
  font-size:14.5px}
.page-familyphoto-shooting .venues .place{font-family:var(--disp);font-weight:500}
.page-familyphoto-shooting .venues .where{margin-left:auto;color:var(--ink-soft);font-size:13px;white-space:nowrap}
.page-familyphoto-shooting .host{background:var(--accent-wash);border-radius:6px;padding:26px;display:grid;gap:12px}
.page-familyphoto-shooting .host h3{font-size:17px;color:var(--accent)}
.page-familyphoto-shooting .host p{font-size:14.5px;line-height:1.9}
.page-familyphoto-shooting .js-reveal .reveal{opacity:0;transform:translateY(12px) scale(1.01);filter:blur(5px)}
.page-familyphoto-shooting .js-reveal .reveal.is-in{opacity:1;transform:none;filter:none;
  transition:opacity .72s cubic-bezier(.22,.61,.36,1),transform .72s cubic-bezier(.22,.61,.36,1),
             filter .62s ease-out}

/* 開催予定の箱。ここは固定ページの本文がそのまま入るので、
   ふつうに書いた見出しや箇条書きが、カードの形に見えるようにしています。 */
.page-familyphoto-shooting .event-body > * + *{margin-top:14px}
.page-familyphoto-shooting .event-body h2,
.page-familyphoto-shooting .event-body h3{font-family:var(--disp);font-weight:700;font-size:20px;
  line-height:1.5;margin:0}
.page-familyphoto-shooting .event-body h2 + p,
.page-familyphoto-shooting .event-body h3 + p{margin-top:10px}
.page-familyphoto-shooting .event-body p{font-size:14.5px;line-height:1.9}
.page-familyphoto-shooting .event-body ul{list-style:none;margin:0;padding:0;
  display:grid;gap:9px;font-size:14px}
.page-familyphoto-shooting .event-body li{display:flex;gap:14px;align-items:baseline}
.page-familyphoto-shooting .event-body li::before{content:"";flex:0 0 6px;height:6px;border-radius:50%;
  background:var(--accent);transform:translateY(-2px)}
.page-familyphoto-shooting .event-body img{border-radius:4px;margin-top:6px}
.page-familyphoto-shooting .event-body .none{color:var(--ink-soft)}
.page-familyphoto-shooting .event-body a:not(.btn){color:var(--accent)}

/* 本文の「見出しから下」の部分。実績・会場募集・スケジュールなどが入ります */
.page-familyphoto-shooting .entry-rest{padding:0}
.page-familyphoto-shooting .entry-rest > *{max-width:100%}
.page-familyphoto-shooting .entry-rest h2{font-size:22px;margin-top:52px}
.page-familyphoto-shooting .entry-rest h3{font-size:17px;margin-top:34px}
.page-familyphoto-shooting .entry-rest img{border-radius:4px}

/* 横幅を、トップページのアルバムと同じ広さ（1200px）まで広げます。 */
.page-familyphoto-shooting .narrow{max-width:1200px}

/* 申込ボタンの下の小さな案内（2026-10-15） */
.page-familyphoto-shooting .event .go-sub{margin-top:8px;font-size:13px;color:var(--ink-soft)}
.page-familyphoto-shooting .event .go-sub a{color:var(--accent)}

/* 撮影会のアイキャッチ画像（2026-10-16）。横長にそろえて切り取る */
.page-familyphoto-shooting .event .event-pic{margin:0 0 4px;border-radius:4px;overflow:hidden;aspect-ratio:3/2;background:var(--ground)}
.page-familyphoto-shooting .event .event-pic img{width:100%;height:100%;object-fit:cover;display:block}
