/* Dance Studio LAUGHS — 手づくり案（やわらかい手づくり感）
   見た目の大半は各ページの style 属性に書いてある。ここは全体の下地・お知らせ欄・スマホ幅の切り替え。 */
:root{--bg:#fbf6ec;--ink:#3a3631;--sage:#56705b;--clay:#b98d6f}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans JP","Hiragino Sans","Hiragino Kaku Gothic ProN",sans-serif}
img{max-width:100%}
a{color:var(--sage);text-decoration:none}
a:hover{color:#3b4f40}
.menu-btn{display:none;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#f6e6b4;border:0;cursor:pointer;padding:0}
.menu-btn:focus-visible,a:focus-visible{outline:3px solid #b98d6f;outline-offset:2px}

/* お知らせ欄（public/content/news.json から site.js が描画） */
.news-card{background:#fffdf8;border:2px dashed #b98d6f;border-radius:26px;padding:6px 32px;margin-top:32px}
.news-card.big{border-radius:28px;padding:8px 36px;margin-top:0}
.news-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;padding:16px 0;border-bottom:2px dotted #cdbfa6}
.news-card.big .news-row{padding:20px 0}
.news-row:last-child{border-bottom:0}
.news-date{font-family:"Noto Sans JP",sans-serif;font-weight:500;font-size:20px;white-space:nowrap}
.news-card.big .news-date{font-size:22px}
.news-tag{font-size:12px;background:#f4d9cc;color:#6e4630;border-radius:99px;padding:1px 14px;white-space:nowrap}
.news-tag.note{background:#f6e6b4;color:#5c4c14}
.news-title{font-size:16px}
.news-card.big .news-title{font-size:17px}
.news-body{flex-basis:100%;font-size:14px;color:#6b6358}

/* 1行に収めたい見出し（画面幅に合わせて縮む） */
.h1-one{white-space:nowrap;font-size:clamp(16px,4.6vw,40px)!important}

@media (max-width:720px){
  h1{font-size:34px!important}
  h2{font-size:22px!important}
  .sec{padding-left:20px!important;padding-right:20px!important}
  .hdr{padding:14px 20px!important;position:relative}
  .menu-btn{display:flex}
  .gnav{display:none!important;width:100%;gap:8px!important}
  .gnav.open{display:flex!important}
  .gnav a{padding:10px 18px!important}
  /* ホーム: 見出し → 写真 → 説明 → ボタンの順に並べる */
  .hero{flex-direction:column!important;align-items:stretch!important;gap:20px!important;padding-top:12px!important;padding-bottom:40px!important}
  .hero-left{display:contents!important}
  .hero-tag{order:1;font-size:12px!important}
  .hero-h1{order:2;font-size:38px!important}
  .hero-photo{order:3;flex:none!important;display:block!important;width:100%}
  .hero-photo>div{margin:0 auto}
  .hero-p{order:4;font-size:15px!important}
  .hero-btns{order:5;flex-direction:column;gap:14px!important}
  .hero-btns a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 16px!important;text-align:center}
  /* 体験のお誘い（踊る線画が帯の上にのぞく） */
  .cta-sec{padding-top:110px!important;padding-bottom:40px!important}
  .cta-sec>div{border-radius:32px!important;padding:40px 22px!important}
  .cta-dancer{margin-top:-96px!important;max-width:320px}
  .news-card,.news-card.big{padding:4px 20px;border-radius:20px;margin-top:22px}
  .news-date,.news-card.big .news-date{font-size:18px}
  .news-title,.news-card.big .news-title{font-size:15px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
