/* ===================================================================
   /company スマホ決定版 v20251026-clean-merge
   - スマホのみ発火（PC・トップへ無影響）
   - 競合していたパッチを一本化して確実に適用
   =================================================================== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* ==== 0) PCメニュー“復活”の根絶：強制キル ==== */
  html body #gmenu_box,
  html body #gmenu_box *,
  html body nav .gmenu,
  html body .gmenu,
  html body .pc-nav {
    display:none !important;
    visibility:hidden !important;
    height:0 !important; overflow:hidden !important;
    opacity:0 !important; pointer-events:none !important;
    position:absolute !important; left:-9999px !important; top:-9999px !important; z-index:-1 !important;
  }
  /* パンくずもOFF（狭幅対策） */
  html body #pan_area{ display:none !important; }

  /* ==== 1) レイアウト土台：完全1カラム ==== */
  html body #page, html body #contents{ display:block !important; width:auto !important; max-width:100% !important; }
  html body #main, html body #lmenu, html body #center_area, html body #right_area{
    float:none !important; clear:both !important; position:static !important;
    display:block !important; box-sizing:border-box !important;
    width:auto !important; max-width:100% !important; margin:0 !important;
  }

  /* 本文：中央寄せ・最大700px・h1との間=35px */
  html body #contents{ margin-top:35px !important; }
  html body #center_area{
    max-width:700px !important; margin-left:auto !important; margin-right:auto !important;
    text-align:left !important;
  }

  /* サイドバー：最大328px、本文と同じセンター基準 */
  html body #right_area{
    width:auto !important; max-width:328px !important;
    margin:28px auto 0 !important; text-align:left !important;
  }
  html body #right_area img{ width:100% !important; height:auto !important; display:block !important; }

  /* ==== 2) メニューボタンとh1の間を 30px ==== */
  html body .sp-menu-btn, html body .spmenu-btn{ margin:8px auto 30px !important; }

  /* ==== 3) h1：薄い青帯 + 「｜」1mm 青 + 「会社情報」青（画像は非表示） ==== */
  html body #title_area, html body #title_box{ width:100% !important; margin:0 auto !important; padding:0 !important; }
  html body #title_box h1 img{ display:none !important; }
  html body #title_box h1{
    max-width:700px !important; margin:0 auto !important;
    padding:10px 12px !important; background:#DAEBF7 !important;
    display:flex !important; align-items:center !important; justify-content:flex-start !important;
    text-align:left !important; line-height:1.4 !important;
    color:#127CB8 !important; font-size:18px !important; font-weight:700 !important;
  }
  html body #title_box h1::before{
    content:""; display:inline-block; width:1mm; height:1.2em; background:#127CB8; margin-right:8px;
  }
  html body #title_box h1::after{
    content:"会社情報"; white-space:nowrap; color:#127CB8;
  }

  /* ==== 4) h2青バー：直下画像幅（最大328px）に揃える ==== */
  html body #main ul.indexmenu, html body #main ul.indexmenu2{
    list-style:none !important; margin:0 auto !important; padding:0 !important;
  }
  html body #main ul.indexmenu li, html body #main ul.indexmenu2 li{
    float:none !important; clear:both !important; width:auto !important; height:auto !important;
    max-width:328px !important; margin:0 auto 16px !important; padding:0 !important; text-align:left !important;
  }
  html body #main ul.indexmenu li h2, html body #main ul.indexmenu2 li h2{
    display:block !important; width:100% !important; max-width:328px !important;
    margin:0 auto 0 !important; padding:8px 12px 8px 16px !important;
    background:#127CB8 !important; color:#fff !important; border:none !important; position:relative !important;
    line-height:1.35 !important; box-sizing:border-box !important;
  }
  html body #main ul.indexmenu li h2::before, html body #main ul.indexmenu2 li h2::before{
    content:""; position:absolute; left:0; top:50%; transform:translateY(-50%);
    width:3mm; height:1mm; background:#fff;
  }
  html body #main ul.indexmenu li .pic, html body #main ul.indexmenu2 li .pic{ margin:0 !important; padding:0 !important; display:block !important; }
  html body #main ul.indexmenu li .pic img, html body #main ul.indexmenu2 li .pic img{
    display:block !important; width:100% !important; max-width:328px !important; height:auto !important; margin:0 auto !important;
  }

  /* ==== 5) 画像：回り込み解除＆中央 ==== */
  html body #main img, html body #center_area img, html body #contents img{
    display:block !important; float:none !important; max-width:100% !important; height:auto !important; margin:0 auto 12px !important;
  }

  /* ==== 6) フッター：#f8f8f8 に統一／FAX直下にメニュー（間隔2em） ==== */
  html body footer{
    background:#f8f8f8 !important; color:#333 !important;
    width:100% !important; margin:0 !important; padding:20px 0 !important; clear:both !important;
  }
  html body footer :not(#copy_area):not(#copy_area *){ background:transparent !important; box-shadow:none !important; border:none !important; }
  html body #footer_box{
    width:92% !important; max-width:960px !important; margin:0 auto !important; padding:0 !important; text-align:left !important;
    float:none !important; clear:both !important;
  }
  /* address(=会社/FAX) の“直下”にメニューを置き、間隔を 2em */
  html body #footer_menuArea{
    display:block !important; width:100% !important; margin:2em 0 0 !important; padding:0 !important; float:none !important;
  }
  html body #footer_menuArea .footer_menuBox{
    float:none !important; display:block !important; width:100% !important; margin:0 0 12px 0 !important; padding:0 !important;
  }
  html body #footer_menuArea .footer_menuBox .title{ line-height:1.3 !important; margin:0 0 6px 0 !important; }
  html body #footer_menuArea .footer_menuBox li{ line-height:1.6 !important; margin:2px 0 !important; }

  /* コピー帯は青のまま */
  html body #copy_area{
    background:#127CB8 !important; color:#fff !important; padding:12px 0 !important;
  }
  html body #copy_area *, html body #copy_area a{ color:#fff !important; background:transparent !important; text-decoration:none !important; }

  /* ==== 7) 保険：横スクロール抑止 ==== */
  html, body{ overflow-x:hidden !important; }
}

/* ===== /company スマホ最終 追加パッチ v20251026-K ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* 1) メニューボタン：確実に「ボタン化」＆“半分幅”適用 */
  /* コンテナ自体を中央に置き、幅を固定 */
  html body .sp-menu-btn,
  html body .spmenu-btn{
    display:block !important;
    width:16.5% !important;          /* ほぼ半分 */
    max-width:96px !important;
    min-width:64px !important;
    margin:8px auto 14px !important; /* 中央配置 */
  }
  /* a 要素が幅を奪っているケースを潰す（必須） */
  html body .sp-menu-btn > a,
  html body .spmenu-btn > a{
    display:block !important;
    width:100% !important;
    padding:6px 8px !important;
    text-align:center !important;
    font-weight:700 !important;
    background:#fff !important; color:#333 !important;
    border:1px solid #999 !important; border-radius:6px !important;
    box-sizing:border-box !important;
  }

  /* 2) フッター：会社名→〒の行を 2em あける（ピンポイント） */
  html body #footer_box address .company + p{
    margin-top:2em !important;
  }

  /* 3) FAX の下で 2em あけて ▼会社情報 を開始
        ＋ 右段に回り込むのを禁止（フロート/フレックスを全解除） */
  html body #footer_box{
    display:block !important;                  /* flex等を無効化 */
  }
  html body #footer_box address{
    float:none !important; width:auto !important; margin:0 !important; padding:0 !important;
  }
  html body #footer_menuArea{
    display:block !important;
    float:none !important; clear:both !important;
    width:100% !important;
    margin:2em 0 0 !important;                 /* ← FAX直下の余白 2em */
    padding:0 !important;
  }
  html body #footer_menuArea .footer_menuBox{
    float:none !important; display:block !important; width:100% !important;
    margin:0 0 12px 0 !important; padding:0 !important;
  }
}

/* ===== /company スマホ専用：メニューボタン強制表示・半幅 v20251027-final ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* すべてのスマホメニューボタン要素を再表示させ、幅を強制固定 */
  html body .sp-menu-btn,
  html body .spmenu-btn {
    display:block !important;
    position:relative !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    width:16.5% !important;       /* ほぼ半分 */
    max-width:96px !important;
    min-width:64px !important;
    margin:8px auto 14px !important;  /* 中央配置 */
    z-index:100 !important;           /* 前面へ */
  }

  /* aタグ自体も幅100%のボタンとして明示 */
  html body .sp-menu-btn > a,
  html body .spmenu-btn > a {
    display:block !important;
    width:100% !important;
    padding:6px 8px !important;
    text-align:center !important;
    font-weight:700 !important;
    background:#fff !important;
    color:#333 !important;
    border:1px solid #999 !important;
    border-radius:6px !important;
    box-sizing:border-box !important;
  }
}

/* ===== /company スマホ専用：メニューボタン核オーバーライド v20251027N ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* 1) とにかく表示させる（hidden/absolute/float など全部無効化） */
  html body :is(.sp-menu-btn,.spmenu-btn,[aria-label="スマホメニュー"][role="navigation"]){
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    position:relative !important;
    float:none !important; clear:both !important;
    left:auto !important; right:auto !important; top:auto !important; bottom:auto !important;
    margin:8px auto 14px !important; padding:0 !important;
    width:auto !important; max-width:none !important; /* 親幅依存を一旦解除 */
    pointer-events:auto !important; z-index:999 !important; text-align:center !important;
  }

  /* 2) a要素自体を“ボタン”として固定幅化（確実に目に見えるサイズ） */
  html body :is(.sp-menu-btn,.spmenu-btn,[aria-label="スマホメニュー"][role="navigation"]) > a{
    display:inline-block !important;
    width:96px !important;              /* 端末で“半分相当”の見た目を固定 */
    min-width:96px !important;
    padding:6px 8px !important;
    background:#fff !important; color:#333 !important;
    border:1px solid #999 !important; border-radius:6px !important;
    font-weight:700 !important; text-align:center !important;
    box-sizing:border-box !important;
  }

  /* （補強）親がtext-align:leftでも中央に見えるよう inline-block を中央寄せ */
  html body :is(.sp-menu-btn,.spmenu-btn,[aria-label="スマホメニュー"][role="navigation"]) { text-align:center !important; }
  html body :is(.sp-menu-btn,.spmenu-btn,[aria-label="スマホメニュー"][role="navigation"]) > a { vertical-align:middle !important; }
}

/* ===== /company SP：メニュー＆フッター最終fix v20251027P ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* 1) メニューボタン：<a class="spmenu-btn"> を直接スタイル（確実適用） */
  html body a.spmenu-btn,
  html body a.sp-menu-btn{
    display:block !important;
    width:16.5% !important;          /* ほぼ“半分”／上限で見た目安定 */
    max-width:96px !important;
    min-width:64px !important;
    margin:8px auto 30px !important; /* h1までの余白=30pxを確保 */
    padding:6px 8px !important;
    text-align:center !important; font-weight:700 !important;
    background:#fff !important; color:#333 !important;
    border:1px solid #999 !important; border-radius:6px !important;
    position:relative !important; visibility:visible !important; opacity:1 !important;
    pointer-events:auto !important; z-index:100 !important;
  }

  /* 2) フッター：会社名→〒 の行間=2em */
  html body #footer_box address .company + p{
    margin-top:2em !important;
  }

  /* 3) FAX直下で 2em 空けて ▼会社情報（回り込みを完全停止） */
  html body #footer_box{ display:block !important; }
  html body #footer_box address{
    float:none !important; width:auto !important; margin:0 !important; padding:0 !important;
  }
  html body #footer_menuArea{
    display:block !important;
    float:none !important; clear:both !important;
    width:100% !important;
    margin:2em 0 0 !important;   /* ← FAXの直下に2em */
    padding:0 !important;
  }
  html body #footer_menuArea .footer_menuBox{
    float:none !important; display:block !important; width:100% !important;
    margin:0 0 12px 0 !important; padding:0 !important;
  }

  /* 4) フッター色：PCに合わせて #f8f8f8 を“確実”に適用 */
  html body footer{
    background:#f8f8f8 !important; color:#333 !important;
  }
  html body footer :not(#copy_area):not(#copy_area *){
    background:transparent !important; box-shadow:none !important; border:none !important;
  }
}

/* ===== /company スマホ専用：メニューボタン最終fix v20251027Q ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* メニューボタン：横幅を全体の約1/4、高さを少し広げて中央配置 */
  html body a.spmenu-btn,
  html body a.sp-menu-btn {
    display:inline-block !important;        /* ← block→inline-blockで全幅化を防止 */
    width:25% !important;                   /* ← 画面幅の約1/4 */
    max-width:96px !important;
    min-width:80px !important;
    padding:10px 0 !important;              /* ← 高さを少し広げる */
    margin:12px auto 30px !important;       /* 上下余白・中央寄せ */
    text-align:center !important;
    font-weight:700 !important;
    font-size:16px !important;
    background:#fff !important;
    color:#333 !important;
    border:1px solid #999 !important;
    border-radius:6px !important;
    line-height:1.4 !important;
    position:relative !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    z-index:100 !important;
  }

  /* 親要素がtext-align:leftでも中央に */
  html body div:has(> a.spmenu-btn),
  html body div:has(> a.sp-menu-btn) {
    text-align:center !important;
  }
}

/* ===== /company SP：メニューボタン最終核fix v20251028 ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* 親div自体を中央に寄せて“全幅ブロック”を解除 */
  html body div.sp-menu-btn {
    display:inline-block !important;       /* ← これで全幅をやめる */
    text-align:center !important;
    width:auto !important;
    margin:12px auto 30px !important;      /* h1との間隔30px */
    padding:0 !important;
    float:none !important;
  }

  /* 内側のa要素をボタン化：横幅1/4、高さ広め */
  html body div.sp-menu-btn > a {
    display:block !important;
    width:25vw !important;                 /* ← 画面幅の25%（4分の1） */
    max-width:100px !important;
    min-width:72px !important;
    padding:10px 0 !important;             /* ← 高さを少し広げる */
    margin:0 auto !important;
    background:#fff !important;
    color:#333 !important;
    border:1px solid #999 !important;
    border-radius:6px !important;
    font-weight:700 !important;
    font-size:16px !important;
    line-height:1.4 !important;
    text-align:center !important;
    box-sizing:border-box !important;
  }
}

/* ===== /company SP：メニューボタン確定fix v20251028B ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* 1) 親divのdisplay/flex等を全解除し、中央寄せ */
  html body div.sp-menu-btn[role="navigation"]{
    all:unset;                            /* ← これで既存指定を全解除（flexやwidth:100%等をリセット） */
    display:block !important;
    width:auto !important;
    text-align:center !important;
    margin:12px auto 35px !important;     /* h1との間隔を広めに */
    padding:0 !important;
  }

  /* 2) 子のaをボタン化：横幅25vw・高さ広め */
  html body div.sp-menu-btn[role="navigation"] > a{
    display:inline-block !important;
    width:25vw !important;                /* 画面の約1/4 */
    max-width:100px !important;
    min-width:80px !important;
    padding:14px 0 !important;            /* ← 高さをさらに広げる */
    background:#fff !important;
    color:#333 !important;
    border:1px solid #999 !important;
    border-radius:8px !important;
    font-weight:700 !important;
    font-size:16px !important;
    line-height:1.4 !important;
    text-align:center !important;
    box-sizing:border-box !important;
  }
}

/* ===== /company SP：メニューボタン 最終オーバーライド v20251028C ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* 親div（全幅化・flex伸長を抑止して中央寄せ） */
  html body header > div.sp-menu-btn[role="navigation"]{
    display:block !important;
    text-align:center !important;
    margin:12px auto 35px !important;   /* ← 高さも少しゆとり */
    padding:0 !important;
    float:none !important;
    width:auto !important; max-width:none !important;
    flex:0 0 auto !important;           /* ← flexで伸ばされるのを阻止 */
    align-self:center !important;
  }

  /* 子a（幅?・高さ厚め・flex/100%指定の上書き） */
  html body header > div.sp-menu-btn[role="navigation"] > a{
    display:inline-block !important;    /* ← block全幅化を回避 */
    width:25vw !important;              /* ← 画面の約1/4 */
    max-width:110px !important;         /* 上限を少し広げて安定 */
    min-width:80px !important;
    padding:16px 0 !important;          /* ← 高さをさらに確保 */
    margin:0 auto !important;

    /* “幅100%”やflex:1指定を力ずくで打ち消す */
    flex:0 0 auto !important;
    align-self:center !important;

    /* 見た目（既存踏襲） */
    background:#fff !important; color:#333 !important;
    border:1px solid #999 !important; border-radius:8px !important;
    font-weight:700 !important; font-size:16px !important; line-height:1.4 !important;
    text-align:center !important; box-sizing:border-box !important;
  }

  /* 万一 .spmenu-btn（m抜け）で出ているページも同様に潰す */
  html body header > div.spmenu-btn[role="navigation"]{
    display:block !important; text-align:center !important; margin:12px auto 35px !important;
    padding:0 !important; float:none !important; width:auto !important; max-width:none !important;
    flex:0 0 auto !important; align-self:center !important;
  }
  html body header > div.spmenu-btn[role="navigation"] > a{
    display:inline-block !important; width:25vw !important; max-width:110px !important; min-width:80px !important;
    padding:16px 0 !important; margin:0 auto !important;
    flex:0 0 auto !important; align-self:center !important;
    background:#fff !important; color:#333 !important; border:1px solid #999 !important; border-radius:8px !important;
    font-weight:700 !important; font-size:16px !important; line-height:1.4 !important; text-align:center !important; box-sizing:border-box !important;
  }
}

/* ===== /company SP：メニューボタン確定fix（?幅・高さUP） v20251028D ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* 1) 目的のリンクを“ピンポイント”指定（/spmenu.html への a） */
  /*    全幅化やflex伸長を完全に打ち消し、中央に ? 幅で固定 */
  html body a[href$="/spmenu.html"]{
    display:inline-block !important;     /* ← block全幅化を回避 */
    width:25vw !important;               /* ← 画面幅の約1/4 */
    max-width:110px !important;          /* 上限で暴れ止め */
    min-width:80px !important;           /* 下限で小さすぎ防止 */
    padding:16px 0 !important;           /* ← 高さを増やす */
    margin:12px auto 35px !important;    /* ← 中央寄せ + h1との間隔 */
    text-align:center !important;
    font-weight:700 !important; font-size:16px !important; line-height:1.4 !important;
    background:#fff !important; color:#333 !important;
    border:1px solid #999 !important; border-radius:8px !important;
    box-sizing:border-box !important;

    /* flex親や幅100%の強制に勝つための保険 */
    flex:0 0 auto !important;
    align-self:center !important;
  }

  /* 2) 親がflex/左寄せでも中央に見えるように */
  html body a[href$="/spmenu.html"] { vertical-align:middle !important; }
  html body a[href$="/spmenu.html"]::before,
  html body a[href$="/spmenu.html"]::after { content:""; } /* 特に何も出さない＝副作用防止 */

  /* 3) もし“メニュー”リンクがラッパーdiv内にある場合の保険（中央寄せ） */
  html body a[href$="/spmenu.html"]{ /* 親のtext-alignがleftでも中央に */
    outline:0; /* noop */
  }
  html body a[href$="/spmenu.html"] { /* 上と同じ要素だが、敢えて末尾に置いて優先を上げる */ }
}

/* ===== /company SP：メニューボタン幅?・高さ厚め【最終確定】 v20251028F ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* “幅100%”指定に勝つため、より具体的なセレクタで a を直接上書き */
  html body header div.sp-menu-btn[role="navigation"] > a,
  html body header div.spmenu-btn[role="navigation"] > a,
  html body header a[href$="/spmenu.html"]{
    display:inline-block !important;   /* 全幅block化を回避 */
    width:25vw !important;             /* 画面の約1/4 */
    max-width:110px !important;
    min-width:80px !important;
    padding:18px 0 !important;         /* ← ご要望どおり高さも広めに */
    margin:12px auto 35px !important;  /* 中央寄せ＋h1との間隔 */
    text-align:center !important;
    font-weight:700 !important; font-size:16px !important; line-height:1.4 !important;
    background:#fff !important; color:#333 !important;
    border:1px solid #999 !important; border-radius:8px !important;
    box-sizing:border-box !important;

    /* flexや幅伸長の保険（親がflexでも伸びない） */
    flex:0 0 auto !important; align-self:center !important;
  }
}

/* ===== /company SP：メニューボタン幅を?＆高さUP（核リセット） v20251028Z ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* 親の全幅化/フレックス等を一旦リセットして中央寄せ */
  header > .sp-menu-btn[role="navigation"],
  header > .spmenu-btn[role="navigation"]{
    all:unset;                        /* ← 既存指定を丸ごと解除 */
    display:block !important;
    text-align:center !important;
    margin:12px auto 35px !important; /* h1との間隔も確保 */
  }

  /* 対象リンクそのものを“核リセット”→?幅・高さ厚めで再構築 */
  header > .sp-menu-btn[role="navigation"] > a[href$="/spmenu.html"],
  header > .spmenu-btn[role="navigation"] > a[href$="/spmenu.html"],
  header a[href$="/spmenu.html"].spmenu-btn,
  header a[href$="/spmenu.html"].sp-menu-btn{
    all:unset;                        /* ← これで width:100% !important を無効化 */
    display:inline-block !important;  /* 全幅化を防ぐ */
    width:25vw !important;            /* 画面の約1/4 */
    max-width:110px !important;       /* 上限（幅100%に勝てる） */
    min-width:80px !important;        /* 下限 */
    padding:20px 0 !important;        /* ← ご要望どおり高ささらに広め */
    margin:0 auto !important;         /* 中央配置 */
    text-align:center !important;
    font:inherit !important;          /* リセット後のフォントを継承 */
    font-weight:700 !important;
    font-size:16px !important;
    line-height:1.4 !important;
    color:#333 !important;
    background:#fff !important;
    border:1px solid #999 !important;
    border-radius:8px !important;
    box-sizing:border-box !important;
    cursor:pointer !important;

    /* flexや伸長指定を完全拒否 */
    flex:0 0 auto !important;
    align-self:center !important;
  }
}

/* ===== /company SP：メニューボタン幅だけ確定 v20251028W ===== */
@media screen and (max-width:1024px),
       screen and (max-device-width:1024px),
       (hover:none) and (pointer:coarse){

  /* 親divを中央寄せ（全幅化をやめる） */
  html body header div.sp-menu-btn[role="navigation"][aria-label="スマホメニュー"]{
    display:block !important;
    text-align:center !important;
    margin:12px auto 35px !important;
    float:none !important; width:auto !important;
  }

  /* a要素を “必ず” ?幅＋高さ厚めに（後勝ち＆特異性MAX気味） */
  html body header div.sp-menu-btn[role="navigation"][aria-label="スマホメニュー"] > a[href$="/spmenu.html"]{
    display:inline-block !important;        /* 全幅blockを拒否 */
    width:25vw !important;                  /* 画面の約 1/4 */
    max-width:110px !important;             /* 上限で暴れ止め */
    min-width:80px !important;              /* 下限で極端な縮み防止 */
    padding:18px 0 !important;              /* ← 高さを広めに */
    margin:0 auto !important;
    text-align:center !important;
    font-weight:700 !important; font-size:16px !important; line-height:1.4 !important;
    background:#fff !important; color:#333 !important;
    border:1px solid #999 !important; border-radius:8px !important;
    box-sizing:border-box !important;
    flex:0 0 auto !important;               /* flex伸長の無効化 */
    align-self:center !important;
  }
}
