/* ===== seiko: works専用（モバイル）上書き。PCには非適用 ===== */
@media (max-width: 768px) {

  /* 共通余白と横スクロール抑止 */
  html, body { overflow-x: hidden; }
  .wrap { padding-left: 16px !important; padding-right: 16px !important; }

  /* ===================== Header ===================== */
  header .wrap.bar{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:8px 10px !important;
    height:auto !important;
    padding:10px 0 !important;
  }
  /* ロゴは1行で切らさない */
  header .logo,
  header .logo a{
    font-size:16px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
    display:inline-block !important;
    flex: 1 1 auto !important;
    min-width: 160px !important;
  }
  /* ナビ：ボタン化を廃止（枠線・背景を消す）＋2段まで折り返し */
  header nav ul{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:10px !important;
    width:100% !important;
    order:2 !important;
    margin:2px 0 0 !important;
    padding:0 !important;
  }
  header nav li{ list-style:none !important; }
  header nav a{
    display:inline-block !important;
    padding:6px 8px !important;
    border:none !important;                 /* ← 枠線を確実に消す */
    background:transparent !important;      /* ← ボタン背景を消す */
    box-shadow:none !important;             /* 念のため */
    outline:none !important;                /* 念のため */
    font-size:13px !important;
    color: var(--muted) !important;
  }
  /* TEL はナビの下／右寄せ／1行 */
  header .tel{
    order:3 !important;
    width:100% !important;
    text-align:right !important;
    font-size:14px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
  }

  /* ===================== Works カード（横レイアウト） ===================== */
  .gallery.cards{
    display:grid !important;
    grid-template-columns:1fr !important;   /* 2列にしたい場合は repeat(2,1fr) */
    gap:14px !important;
  }
  .card.pr.spacer{ display:none !important; }
  .card.pr{
    display:grid !important;
    grid-template-columns:112px 1fr;
    align-items:start;
    gap:12px;
    padding:12px 14px !important;
  }
  .card.pr img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:8px;
  }
  .card.pr .meta{
    padding:0 !important;
    display:flex !important;
    flex-direction:column;
    gap:6px;
  }
  .card.pr .meta h3{
    font-size:16px !important;
    line-height:1.4 !important;
    margin:0 !important;
    word-break:keep-all;
    overflow-wrap:anywhere;
  }
  .card.pr .cap{ font-size:14px !important; line-height:1.7 !important; }
  .card.pr time{ font-size:12.5px !important; }
  .card.pr .links{
    grid-column:1 / -1;
    padding:8px 0 0 !important;
    gap:8px !important;
    flex-wrap:wrap;
  }

  /* ===================== Footer ===================== */
  .footgrid{
    display:block !important;               /* 1カラムに固定（確実） */
    text-align:center !important;
    margin-top:6px !important;
  }
  .footgrid .fine{
    display:block !important;
    font-size:13px !important;
    line-height:1.6 !important;
    word-break:keep-all !important;         /* 逐字改行を抑止 */
    white-space:normal !important;
    margin:4px 0 !important;
  }
  .footgrid .fine br{ display:none !important; } /* 万一の手動改行を無効化 */
}

