/* GALLERY */
.wg{--gold:#b8955a;--ink:#2b2b2b;max-width:1280px;margin:0 auto;padding:56px 24px 100px}
.wg-hero{text-align:center;padding:1em 0 2.5em}
.wg-eyebrow{font-family:var(--en);letter-spacing:.5em;font-size:.9rem;color:var(--gold);margin:0 0 .6em}
.wg-title{font-family:var(--en);font-weight:400;font-size:clamp(2.6rem,7vw,4.6rem);letter-spacing:.12em;line-height:1.1;color:var(--ink)}
.wg-sub{font-family:var(--en);font-style:italic;font-size:1.15rem;color:#777;margin:.5em 0 1.6em;letter-spacing:.05em}
.wg-lead{line-height:2.2;font-size:.98rem;color:#444}
.wg-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:.6em 2.2em;margin:2.2em 0 0;padding:1.1em 0;border-top:1px solid #e6e0d4;border-bottom:1px solid #e6e0d4}
.wg-nav a{font-family:var(--en);letter-spacing:.22em;font-size:.95rem;color:var(--ink);transition:color .3s}
.wg-nav a:hover{color:var(--gold)}
.wg-sec{scroll-margin-top:90px}
.wg-sec-head{text-align:center;margin:4.5em 0 2em}
.wg-sec-en{font-family:var(--en);font-size:clamp(1.7rem,4vw,2.4rem);letter-spacing:.18em;color:var(--ink);line-height:1.3}
.wg-sec-ja{font-size:.85rem;letter-spacing:.3em;color:var(--gold);margin-top:.5em}
.wg-line{display:block;width:1px;height:42px;background:var(--gold);margin:1.2em auto 0;opacity:.7}
/* 写真：JSが動くまでは段組み、動いたら横一列を揃えて並べる */
.wg-grid{column-count:3;column-gap:14px}
.wg-i{margin:0 0 14px;break-inside:avoid;overflow:hidden;background:#f3f0ea}
.wg-i a{display:block;height:100%;cursor:zoom-in}
.wg-i img{width:100%;height:auto;display:block;transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s}
.wg-i:hover img{transform:scale(1.04);filter:brightness(1.03)}
.wg-grid.is-just{column-count:auto;display:flex;flex-wrap:wrap;justify-content:center;gap:14px}
.wg-grid.is-just .wg-i{margin:0;flex:none}
.wg-grid.is-just .wg-i img{height:100%;object-fit:cover}
.wg-cta{text-align:center;margin:5em 0 1em;padding:3.2em 1.5em;background:#f7f4ee}
.wg-cta p:not([class]){line-height:2;margin:0 0 1.6em;color:#444}
.wg-note{text-align:center;font-size:.75rem;color:#999;margin:2em 0 0;letter-spacing:.05em}
@media(max-width:959px){.wg{padding:40px 16px 80px}.wg-grid{column-count:2;column-gap:10px}.wg-i{margin-bottom:10px}.wg-grid.is-just{gap:10px}}
@media(max-width:599px){.wg-lead br{display:none}.wg-nav{gap:.5em 1.4em}.wg-nav a{font-size:.8rem;letter-spacing:.15em}}
