/* === COMPANY / PC Super-Override (clean & minimal) ====================== */
@media (min-width:1025px){

  /* 0) PCではスマホメニューを完全排除（再発防止） */
  html body .sp-menu-btn,
  html body [aria-label="スマホメニュー"],
  html body a[href*="spmenu" i]{
    display:none !important; visibility:hidden !important;
  }

  /* 1) h1：背景はページ全幅の薄い青、画像はサイドバー右端まで */
  html body #title_box{
    width:100% !important;                /* 全幅の薄青帯 */
    background:#DAEBF7 !important;
    margin:0 0 28px 0 !important;         /* 下28pxを必ず確保 */
    padding:0 !important;
  }
  /* 中枠（960px）想定：存在しなくても動くように両対応 */
  html body #title_box .title-inner{
    width:960px !important; margin:0 auto !important; box-sizing:border-box !important;
  }
  html body #title_box h1{ margin:0 !important; padding:0 !important; background:none !important; }
  html body #title_box h1 img{
    display:block !important;
    width:960px !important;               /* サイドバー右端まで（サイト内幅） */
    max-width:100% !important;
    height:auto !important;
    margin:0 auto !important;             /* 中央に配置（左右位置をフッターと揃える） */
  }

  /* 2) フッター：全域グレー、3列維持（折り返し禁止） */
  html body footer,
  html body #footer_box,
  html body #footer_menuArea{
    background:#f8f8f8 !important; color:#333 !important;
  }
  html body #footer_box{
    width:960px !important; margin:0 auto !important;
    display:flex !important; align-items:flex-start !important;
    justify-content:space-between !important; gap:16px !important;
    padding:24px 0 !important; box-sizing:border-box !important; flex-wrap:nowrap !important;
  }
  html body #footer_box address{
    float:none !important; flex:0 0 300px !important; width:300px !important; margin:0 !important; padding:0 !important;
  }
  html body #footer_menuArea{
    float:none !important; width:auto !important; margin:0 !important; padding:0 !important;
    display:flex !important; flex-wrap:nowrap !important; gap:16px !important;
    justify-content:space-between !important; align-items:flex-start !important; flex:1 1 auto !important;
  }
  html body #footer_menuArea .footer_menuBox{
    display:block !important; flex:1 1 0 !important; min-width:180px !important; margin:0 !important; padding:0 !important;
  }

  /* 3) copy青帯：左=Copyright、右=リンク（?付）、左右端をフッター枠に揃える */
  html body #copy_area{
    background:#127CB8 !important; color:#fff !important;
    display:flex !important; align-items:center !important; justify-content:center !important;
    padding:12px 0 !important; white-space:nowrap !important; flex-wrap:nowrap !important;
  }
  html body #copy_box{
    width:960px !important; margin:0 auto !important;
    display:flex !important; align-items:center !important; justify-content:space-between !important; gap:20px !important;
    background:transparent !important; float:none !important;
  }
  /* 左：フッター内枠の“左”に合わせる（左寄せ） */
  html body #copy{
    display:inline-block !important; margin:0 !important; padding:0 !important;
    color:#fff !important; background:transparent !important; text-align:left !important; font-size:95% !important;
  }
  /* 右：リンク2件を右寄せ、?は天地センターに */
  html body #copy_box ul{
    margin:0 !important; padding:0 !important; list-style:none !important;
    display:inline-flex !important; align-items:center !important; justify-content:flex-end !important; gap:18px !important;
  }
  html body #copy_box ul li{ display:inline-flex !important; align-items:center !important; }
  html body #copy_box ul li a{
    color:#fff !important; text-decoration:none !important;
    display:inline-flex !important; align-items:center !important; gap:6px !important;
  }
  html body #copy_box ul li a::before{
    content:"\25B6"; display:inline-block !important; line-height:1 !important; /* ?天地センター */
  }
  html body #copy_box ul li a:hover{ text-decoration:underline !important; }
}
/* === /Super-Override ==================================================== */

@media (min-width:1025px){
  /* ?重複防止：HTML側のテキストに含まれる「?」を消す */
  #copy_box ul li a{
    color:#fff !important;
    text-decoration:none !important;
    display:inline-flex !important;
    align-items:center !important;  /* 天地センター */
    gap:6px !important;
  }
  #copy_box ul li a::before{
    content:"\25B6";  /* ?をCSSで一括追加 */
    display:inline-block;
    line-height:1;
    margin-right:4px;
  }
  /* HTML側にもし ? があった場合は透明化して非表示扱い */
  #copy_box ul li a:has(> span)::before,
  #copy_box ul li a span{
    color:transparent !important;
  }
}

/* === PC専用：copy右側リンクを縦並び＆右揃え／?の重複を止める ============ */
@media (min-width:1025px){

  /* 1) これまでの ? 疑似要素を“完全に無効化” */
  #copy_box ul li a::before{
    content:none !important;
  }

  /* 2) 右側のリンクを“改行（縦並び）＋右揃え”にする */
  #copy_box{
    justify-content:space-between !important;  /* 左右に振り分けは維持 */
  }
  #copy_box ul{
    display:flex !important;
    flex-direction:column !important;          /* ← 縦並び */
    align-items:flex-end !important;           /* ← 右揃え */
    justify-content:flex-end !important;
    gap:6px !important;                         /* 行間 */
    margin:0 !important; padding:0 !important; list-style:none !important;
  }

  /* 3) ?は“テキストに含まれている1個だけ”を使う。天地センター揃え */
  #copy_box ul li{ display:flex !important; }
  #copy_box ul li a{
    display:inline-flex !important;
    align-items:center !important;             /* ← 縦位置センター */
    white-space:nowrap !important;
    color:#fff !important; text-decoration:none !important;
  }
  #copy_box ul li a:hover{ text-decoration:underline !important; }
}

@media (min-width:1025px){

  /* コピーエリア右側リンク：同一行・右揃え・?付き */
  #copy_box ul{
    display:flex !important;
    flex-direction:row !important;         /* ← 横並びに変更 */
    justify-content:flex-end !important;   /* ← 右揃え */
    align-items:center !important;
    gap:20px !important;                   /* リンク間隔 */
    list-style:none !important;
    margin:0 !important; padding:0 !important;
  }

  #copy_box ul li{
    display:inline-flex !important;
    align-items:center !important;
  }

  #copy_box ul li a{
    color:#fff !important;
    text-decoration:none !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:6px !important;
  }

  /* ?はCSSで統一追加（HTML側の?は削除しなくてOK） */
  #copy_box ul li a::before{
    content:"\25B6";                       /* ? */
    display:inline-block;
    line-height:1;
    vertical-align:middle;
  }

  #copy_box ul li a:hover{
    text-decoration:underline !important;
  }
}

@media (min-width:1025px){

  /* --- コピーエリア全体の調整 --- */
  #copy_area{
    background:#127CB8 !important;
    color:#fff !important;
    padding:14px 0 10px 0 !important;
    display:block !important;
  }

  #copy_box{
    width:960px !important;
    margin:0 auto !important;
    text-align:left !important;
  }

  /* --- 左側のCopyright --- */
  #copy{
    display:block !important;
    text-align:left !important;
    font-size:95% !important;
    color:#fff !important;
    background:transparent !important;
    margin:0 !important;
  }

  /* --- 改行して右側リンク（個人情報保護方針・サイトマップ）を同一行・右揃え --- */
  #copy_box ul{
    display:flex !important;
    justify-content:flex-end !important;   /* 右寄せ */
    align-items:center !important;
    list-style:none !important;
    margin:4px 0 0 0 !important;           /* Copyrightの下に少し余白 */
    padding:0 !important;
    gap:20px !important;
  }

  #copy_box ul li{
    display:inline-flex !important;
    align-items:center !important;
  }

  #copy_box ul li a{
    color:#fff !important;
    text-decoration:none !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:6px !important;
  }

  #copy_box ul li a::before{
    content:"\25B6";  /* ? */
    display:inline-block;
    line-height:1;
    vertical-align:middle;
  }

  #copy_box ul li a:hover{
    text-decoration:underline !important;
  }
}


/* === PC: copy帯 最小・強制オーバーライド（改行＋右寄せ＋白?） ============ */
@media (min-width:1025px){

  /* 帯の色と文字色を最優先で固定（内側の白背景も無効化） */
  html body #copy_area{
    background:#127CB8 !important; color:#fff !important;
    padding:12px 0 !important;
  }
  html body #copy_area *{
    background:transparent !important; color:#fff !important;
  }

  /* 960px 内枠 */
  html body #copy_box{
    width:960px !important; margin:0 auto !important;
  }

  /* 1行目：Copyright（ここで改行が入る） */
  html body #copy{
    display:block !important;             /* ← 改行を確定 */
    margin:0 0 6px 0 !important;          /* 下だけ少し空ける */
    text-align:left !important;
  }

  /* 2行目：リンク2件を“同一行・右寄せ” */
  html body #copy_box ul{
    list-style:none !important; margin:0 !important; padding:0 !important;
    display:flex !important; flex-direction:row !important;
    justify-content:flex-end !important; align-items:center !important;
    gap:22px !important;                  /* リンク間隔 */
  }
  html body #copy_box ul li{ display:inline-flex !important; align-items:center !important; }
  html body #copy_box ul li a{
    display:inline-flex !important; align-items:center !important; white-space:nowrap !important;
    color:#fff !important; text-decoration:none !important;
  }

  /* ? が消えるのを防止（過去の content:none を打ち消す） */
  html body #copy_box ul li a::before{
    content:"\25B6" !important;           /* ← 白い ? を強制表示 */
    display:inline-block !important; line-height:1 !important;
    margin-right:6px !important; position:relative; top:.05em;
  }
  html body #copy_box ul li a:hover{ text-decoration:underline !important; }
}

