/* ===== sp.css：施工ドキュメント子ページ用（昨日再現・固定版） ===== */

@media screen and (max-width:768px){

  /* --- 基本 --- */
  html, body{
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
  }
  body{
    font-size:16px !important;
    line-height:1.85 !important;
    overflow-x:hidden !important;
  }

  /* --- 画像（昨日の核） --- */
  img{
    max-width:100% !important;
    height:auto !important;
    display:block !important;
    margin:14px auto !important;
  }

  /* --- 固定幅テーブル狙い撃ち解除 --- */
  table[width="1254"],
  table[width="1280"],
  table[width="1286"],
  table[width="740"]{
    width:100% !important;
    max-width:100% !important;
  }

  .hpb-main, .hpb-lb-tb1, .hpb-colm1{
    width:100% !important;
    max-width:100% !important;
  }

  /* --- 文字の暴れ抑制 --- */
  span[style*="font-size : 200%"],
  span[style*="font-size: 200%"]{
    font-size:100% !important;
  }

  /* --- 見出し --- */
  h1{
    font-size:20px !important;
    line-height:1.4 !important;
    margin:12px 12px 8px !important;
  }
  h2.doc-h2{
    font-size:18px !important;
    line-height:1.5 !important;
    margin:22px 12px 10px !important;
  }

  /* --- 余白 --- */
  p, td{
    padding-left:12px !important;
    padding-right:12px !important;
  }
  hr{
    margin:18px 0 !important;
  }

  /* --- 導入部：br整理（あるページだけ効く） --- */
  #_HPB_LAYOUT_LMH0 br{
    display:none !important;
  }

  /* =====================================================
     ★本命：上部メニュー縦化（HPBに“勝つ”ため強め）
     - table / tr / td すべてスマホでブロック化
     - #_HPB_LAYOUT_LMH0 を付けて優先順位を上げる
     ===================================================== */

  /* メニューのテーブル側（クラスがある場合） */
  #_HPB_LAYOUT_LMH0 table.hpb-hmenu1,
  #_HPB_LAYOUT_LMH0 table.hpb-hmenu1 tbody,
  #_HPB_LAYOUT_LMH0 table.hpb-hmenu1 tr{
    display:block !important;
    width:100% !important;
  }

  /* td側（君が貼ってくれた class に直撃） */
  #_HPB_LAYOUT_LMH0 td.hpb-hmenu1-idle1{
    display:block !important;
    width:100% !important;
    box-sizing:border-box !important;
    border:1px solid #444 !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
  }

  /* リンクをボタン化 */
  #_HPB_LAYOUT_LMH0 a.hpb-hmenu1-link1{
    display:block !important;
    width:100% !important;
    padding:14px 12px !important;
    text-align:center !important;
    font-size:16px !important;
    line-height:1.2 !important;
    white-space:normal !important;
  }

  /* font/bが挟まってても邪魔させない */
  #_HPB_LAYOUT_LMH0 td.hpb-hmenu1-idle1 b,
  #_HPB_LAYOUT_LMH0 td.hpb-hmenu1-idle1 font{
    display:block !important;
    width:100% !important;
  }
}
/* ============================
   最終パッチ：HPB横メニューを“強制縦積み”
   tableレイアウトに負ける時の切り札
   ============================ */

  /* メニュー行(tr)をflex化して縦に積む */
  tr:has(> td.hpb-hmenu1-idle1){
    display:flex !important;
    flex-direction:column !important;
  }

  /* ↑ :has が効かない端末もあるので保険（広めに当てる） */
  td.hpb-hmenu1-idle1{
    display:block !important;
    width:100% !important;
    box-sizing:border-box !important;
    border:1px solid #444 !important;
    margin:0 !important;
    padding:0 !important;
  }

  a.hpb-hmenu1-link1{
    display:block !important;
    width:100% !important;
    padding:14px 12px !important;
    text-align:center !important;
    font-size:16px !important;
    line-height:1.2 !important;
    white-space:normal !important;
  }

  /* font/bが挟まっても邪魔しない */
  td.hpb-hmenu1-idle1 b,
  td.hpb-hmenu1-idle1 font{
    display:block !important;
    width:100% !important;
  }
