:root{--cream:#f7f3e9;--ink:#263e35;--green:#19534c;--muted:#68756c;--line:#e2ddce;--red:#ac493d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--cream);font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;font-size:16px;line-height:1.85}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--red);outline-offset:5px}.skip{position:absolute;top:-80px;padding:12px;background:white}.skip:focus{top:0;z-index:20}header{max-width:1440px;margin:auto;padding:26px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-size:18px;font-weight:700;letter-spacing:.06em}.brand small{display:block;font-size:14px;letter-spacing:.2em;font-weight:500;color:var(--muted)}.brand-mark{display:grid;place-items:center;background:var(--green);color:var(--cream);width:43px;height:43px;border-radius:50%;font-size:27px}nav{display:flex;gap:30px;font-size:14px}nav a:hover,.source:hover{color:var(--red)}main{max-width:1440px;margin:auto}.intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:48px 7% 68px;gap:60px}.eyebrow{color:var(--muted);font-size:14px;font-weight:600;letter-spacing:.16em;margin:0 0 16px}h1{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(42px,5.4vw,76px);line-height:1.4;font-weight:600;letter-spacing:.08em;margin:16px 0 26px}h1 span{color:var(--green)}.lead{color:#55665a;font-size:18px}.button{display:inline-flex;gap:35px;align-items:center;border-radius:4px;background:var(--green);color:white;padding:15px 25px;margin-top:18px;font-size:16px}.button:hover{background:#28695e}.intro-note{font-size:14px;letter-spacing:.1em;color:var(--muted);margin-top:24px}.intro-art{max-width:480px;transform:rotate(2deg);background:#e9e4d7;padding:14px;box-shadow:0 15px 40px #3d442018;border-radius:160px 160px 8px 8px}.intro-art .bear-art{border-radius:146px 146px 0 0;aspect-ratio:1/1; background-size:300% 200%}.art-caption{padding:18px 16px 10px;transform:rotate(-2deg)}.art-caption span{color:var(--muted);font-size:14px;margin-right:20px}.art-caption strong{font-size:17px}.art-caption p{font-size:14px;margin:5px 0 0}.collection{padding:60px 5%}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px}.section-heading h2,h2{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:30px;letter-spacing:.05em;margin:0 0 10px}.section-heading p{margin:0;color:var(--muted)}.section-heading .eyebrow{margin-bottom:8px}.count{font-family:Georgia,serif;font-size:46px;color:var(--green);white-space:nowrap}.count small{display:block;font-family:inherit;font-size:14px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 22px}.card{background:#fffdf7;border:1px solid var(--line);border-radius:9px;overflow:hidden}.bear-art{aspect-ratio:var(--ratio,1);width:100%;background-image:var(--img);background-size:var(--size);background-position:var(--pos);background-repeat:no-repeat;background-color:#fff;}.bear-art.cleanup{background-color:#f3efe1}.card-copy{padding:20px 21px 23px}.card-top{display:flex;justify-content:space-between;gap:6px;align-items:start}.place{color:var(--green);font-size:14px;font-weight:700}.number{color:#9a9d8f;font-size:14px;font-family:Georgia,serif}.card h3{font-size:19px;line-height:1.5;margin:10px 0 18px}.card .eyebrow{font-size:14px;letter-spacing:.05em;margin:0 0 5px;color:#947151}.card p:not(.eyebrow){font-size:16px;line-height:1.8;margin:0 0 18px;color:#556158}.source{font-size:14px;color:var(--green);text-decoration:underline;text-underline-offset:5px}.idea{color:#837664;text-decoration:none}.story{margin:55px 5%;padding:50px;background:#e9eee5;display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;border-radius:8px}.story h2{font-size:32px}.story p:not(.eyebrow){margin:0 0 18px}.friends{padding-top:65px}.about{max-width:800px;margin:45px auto 80px;padding:30px 30px 0;border-top:1px solid var(--line)}.about h2{font-size:24px}.about p:not(.eyebrow){color:var(--muted);font-size:16px}footer{padding:30px 5%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;font-size:14px;align-items:center}footer .brand{font-size:16px}@media(min-width:1400px){.grid{gap:28px}}@media(max-width:1100px){.grid{grid-template-columns:repeat(3,1fr)}.intro{gap:30px}.count{font-size:36px}}@media(max-width:760px){header{padding:18px 5%;align-items:start;gap:14px;flex-direction:column}nav{gap:24px}.intro{padding:35px 6% 25px;gap:25px;grid-template-columns:1fr 1fr}.intro-copy .eyebrow{font-size:14px;letter-spacing:.04em}h1{font-size:37px;letter-spacing:.03em;margin:8px 0 16px}.lead{font-size:16px}.button{padding:11px 14px;font-size:14px;gap:10px}.intro-note{font-size:14px}.art-caption{padding:12px 3px}.art-caption strong{font-size:14px;display:block}.art-caption span{font-size:14px}.art-caption p{display:none}.intro-art{padding:8px;align-self:center}.section-heading h2{font-size:25px}.section-heading p{font-size:16px}.grid{grid-template-columns:repeat(2,1fr);gap:18px 12px}.card-copy{padding:15px 14px}.card h3{font-size:18px}.card p:not(.eyebrow){font-size:16px}.collection{padding:40px 5%}.count{display:none}.story{grid-template-columns:1fr;gap:20px;padding:28px;margin:30px 5%}.story h2{font-size:27px}footer{flex-direction:column;align-items:start}footer span{font-size:14px}.about{margin:35px 5% 50px;padding:25px 0 0}}@media(max-width:420px){.intro{grid-template-columns:1fr}.intro-copy{position:relative}h1 br{display:none}h1{font-size:35px}.intro-art{max-width:270px;width:100%;margin:0 auto}.intro-note{margin:18px 0}.grid{grid-template-columns:1fr 1fr}.place{font-size:14px}.card h3{font-size:17px}.card-copy{padding:14px 11px}.source{font-size:14px}.section-heading h2{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.single-art{display:block;width:100%;aspect-ratio:3/4;object-fit:contain;background:#fffdf7}
.intro h1{font-size:clamp(34px,4.1vw,58px);line-height:1.55;letter-spacing:.04em}.intro-art .single-art{aspect-ratio:1/1;object-fit:contain;border-radius:146px 146px 0 0;background:#eee8da}@media(max-width:760px){.intro h1{font-size:30px}}@media(max-width:420px){.intro h1{font-size:34px}}
.intro-art .bear-art{background-size:var(--size);aspect-ratio:var(--ratio,1)}
.town-intro{margin:25px 5% 10px;padding:36px 40px;background:#eee9dc;border-radius:12px}.town-intro .section-heading{align-items:start}.town-address{font-size:14px;color:var(--green);border:1px solid #b8c0ae;padding:6px 13px;border-radius:30px;white-space:nowrap}.town-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:40px}.town-description p{margin:0 0 18px}.town-quote{font-weight:600;color:var(--green);border-left:3px solid #82987d;padding-left:18px}.location-panel{padding:24px;background:#faf8f0;border-radius:9px}.location-route{display:flex;align-items:center;justify-content:space-between;position:relative;margin:20px 0}.location-route:before{content:"";position:absolute;left:10%;right:10%;height:2px;background:#a9baa8;top:50%}.location-route>span,.location-route>strong{position:relative;background:#faf8f0;padding:10px;text-align:center;font-size:16px;line-height:1.5}.location-route>strong{background:var(--green);color:white;border-radius:50%;width:108px;height:108px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:25px}.location-route small{font-size:14px;font-weight:400}.location-note{font-size:14px;color:var(--muted)}.town-rail{padding-top:16px;border-top:1px solid var(--line)}.town-rail p{margin:8px 0 0;font-size:16px}.town-sources{display:flex;gap:25px;margin-top:20px}nav{flex-wrap:wrap}@media(max-width:760px){.town-intro{padding:26px 22px}.town-layout{grid-template-columns:1fr;gap:16px}.town-intro .section-heading{flex-direction:column;gap:12px}.town-sources{gap:16px;flex-wrap:wrap}nav{gap:12px 20px}.location-panel{padding:20px}.location-route>strong{width:96px;height:96px}}
.town-picture{margin:0 0 30px}.town-picture img{display:block;width:100%;height:auto;border-radius:10px}.town-picture figcaption{font-size:14px;color:var(--muted);margin-top:10px;line-height:1.7}
.merch-link{display:block;margin-top:16px;color:var(--green);font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:5px}.kore-links{margin:20px 5% 50px;padding:35px 40px;border:1px solid var(--line);border-radius:10px;background:#eee9dc}.kore-links h2{font-size:28px}.kore-links p{margin-bottom:0}.kore-links>div{display:flex;gap:16px;flex-wrap:wrap}.kore-links .button{gap:10px}.cafe-link{background:#f9f7ee;color:var(--green);border:1px solid var(--green)}.cafe-link:hover{color:white}@media(max-width:760px){.kore-links{padding:26px 22px}.kore-links h2{font-size:24px}.kore-links>div{gap:0 16px}}

.kuma-contact{max-width:1100px;margin:0 auto;padding:64px 24px 80px;border-top:1px solid #dfd6c9}.kuma-contact h2{font-size:clamp(1.65rem,4vw,2.3rem);margin:8px 0 20px}.kuma-contact>p,.publication-note p{max-width:760px;line-height:1.9}.kuma-contact .contact-note,.kuma-contact .contact-account{font-size:.875rem;color:#635c53}.kuma-contact .button{margin:14px 0 8px}.publication-note{margin-top:36px;padding-top:24px;border-top:1px solid #dfd6c9}.publication-note h3{font-size:1.125rem;margin:0 0 12px}

/* ── スマホ優先（2026-10-07 ゆきさん指示）────────────────────────
   560px以下は1列。カード幅が167pxしかなく、見出しが8文字で割れていたため。
   絵は正方形にして、スマホでも絵が主役に見えるようにする。 */
@media(max-width:560px){
  .grid{grid-template-columns:1fr; gap:26px}
  .card .single-art{aspect-ratio:1/1}
  .card-copy{padding:20px 20px 24px}
  .card h3{font-size:21px; line-height:1.55; margin:12px 0 20px}
  .card p:not(.eyebrow){font-size:17px; line-height:1.9}
  .place{font-size:15px}
  .number{font-size:15px}
  .source{font-size:15px}
  .intro-art{max-width:320px}
  .collection{padding:40px 6%}
}
