/* ============================================================
   ヘッダー検索アイコン（JDL本家 l-header の虫眼鏡に構造・寸法を一致）
   旧実装の問題（構造からの是正）:
     - .icon-sch a.search-icon-btn{height:70px} を無条件指定していた
       → PC70pxヘッダー用の固定値が SP(ヘッダー52px)にも当たり、
         検索ボックスが 70px のままヘッダー下へ約17pxはみ出していた
     - .icon-sch{background:#e5e5e5} の灰色箱 → JDLは背景なし(透明)
   是正方針:
     - 枠は透明・ヘッダー高さに追従(PC70px / SP52px)・虫眼鏡を中央配置
     - 虫眼鏡サイズは JDL実測(PC≒24px / SP22px)に一致
   実測根拠: jdl.co.jp/corp/ ライブ計測 2026-06-03 (PC1280/SP375)
   ============================================================ */
/* 枠: JDL実測どおり グレー背景 #e5e5e5 を維持しつつ、ヘッダー高さに追従(SPはみ出し是正) */
.icon-sch {
  background: #e5e5e5 !important;       /* JDL実測: rgb(229,229,229) のグレー箱(透明にしていたのを是正) */
  max-height: none !important;
  height: 70px !important;              /* PCヘッダー(70px)に一致 */
  top: 0 !important;                    /* SPの top:-17px ずれを是正 */
  display: flex !important;
  align-items: center;
  justify-content: center;
  overflow: visible;
}
.icon-sch a.search-icon-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;            /* 親(=ヘッダー高)に追従。旧70px固定を廃止 */
  padding: 0;
}
.icon-sch a.search-icon-btn img {
  width: 27px;             /* JDL実測: 虫眼鏡 27px(icon-header02 27x27) */
  height: 27px;
  display: block;
}
@media (max-width: 768px) {
  /* SP: ヘッダー52pxに一致させ、はみ出しを解消(背景グレー・アイコン27pxは維持) */
  .icon-sch { height: 52px !important; }
}

/* ============================================================
   サイト内検索モーダル（JDL本家 search-dialog / lity-search に構造・色・フォント・寸法を一致）
   機能は Google CSE。表示はJDL準拠:
     .search-modal(白50%オーバーレイ) > .modal-body(中央・PC80%/SP90%・92vh・scroll)
       > .modal-header(.close-btn 青右上) + .modal-content(検索バー + .key 主要ページ)
   実測根拠: jdl.co.jp の search-dialog scoped CSS / lity-search.css / 2026-06-03 ライブ計測
   ============================================================ */
.search-modal {
  /* JDLは2タイプ存在。デフォルト=下層ページ(JDL search-dialog2): position:fixed; z-index:9999。
     固定オーバーレイでヘッダー(.l-header z:9500)に重なる。背景ロックはせず背景はスクロール可、モーダルは固定。 */
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  background-color: rgba(255, 255, 255, 0.5); /* JDL: 白50%オーバーレイ */
  font-family: "Noto Sans JP","Helvetica Neue",Helvetica,"Hiragino Sans","Hiragino Kaku Gothic ProN",Arial,"Yu Gothic",Meiryo,sans-serif;
  /* 文字色も2タイプ。下層(JDL search-dialog2)デフォルト: 本文#424242。
     リンク・×は素色#008cd0(:visitedで効くようvarを使わず個別ルールで指定)。トップは body#samplehptop で#555/#00fに上書き */
  --sm-text: #424242;
}
.search-modal .modal-body { color: var(--sm-text); }
/* トップページ(body#samplehptop)のみ JDL search-dialog 相当: position:absolute; z-index:auto。
   オーバーレイ(z auto)がヘッダー(9500)より下=ヘッダー非重なり、背景ごとスクロール(モーダルも流れる)。modal-body(z9999)はヘッダーより上。
   文字色もトップ用: 本文#555 / リンク・×#00f(純青) */
body#samplehptop .search-modal { position: absolute; z-index: auto; --sm-text: #555; }
/* トップページ(JDL search-dialog)はリンク・×を純青#00f。:visitedでも効くよう素色・スコープで上書き(下層デフォルトは#008cd0) */
body#samplehptop .search-modal .key a,
body#samplehptop .search-modal .item .title a,
body#samplehptop .search-modal .pagenation li a,
body#samplehptop .search-modal .close-btn { color: #00f; }
/* モーダル内リンクは全状態で下線なし(ホバー/フォーカス含む)。色は原本(JDL)同様 rgb(0,0,255) のまま */
.search-modal a,
.search-modal a:link,
.search-modal a:visited,
.search-modal a:hover,
.search-modal a:focus,
.search-modal a:active { text-decoration: none !important; }
.search-modal.is-open { display: block; }
.search-modal .modal-body {
  position: absolute;
  inset: 0;
  margin: auto;             /* 上下左右中央 (JDL: position:absolute;inset:0;margin:auto) */
  box-sizing: border-box;
  width: 80%;               /* JDL PC: 80% */
  height: 92vh;             /* JDL: 92vh */
  background-color: #fff;
  border: none;             /* JDL: border none */
  box-shadow: 0 0 5px 0;    /* JDL: 0 0 5px 0(色指定なし) */
  font-size: 16px;
  z-index: 9999;            /* JDL: 9999 */
  overflow-y: scroll;
  overflow-x: hidden;
}
.search-modal .modal-header { height: 0; }
/* 文字サイズ変更(JDL moji-resizer 原本準拠: 文字サイズ 小12/中16/大20px。
   ボタンは幅2em均等の枠ボックス・選択 rgb(71,164,255)・hover rgb(146,201,255)・headは枠なし)。close-btnの左に配置 */
.search-modal .moji-resizer { position: absolute; top: 10px; right: 25px; padding: 0.2em 0.5em; z-index: 1; } /* JDL .resizer: top10/right25/padding .2em .5em */
.search-modal .moji-resizer ul { list-style: none; margin: 0; padding-left: 0.5em; display: flex; align-items: center; font-size: 0.8em; color: var(--sm-text); } /* JDL: padding-left .5em / font-size .8em */
.search-modal .moji-resizer li { list-style: none; line-height: normal; float: none; margin-right: 2px; } /* JDL: line-height normal(=1だと小中大ボタンが低くなる) */
.search-modal .moji-resizer .head { padding: 0.2em 0.5em 0.2em 0; white-space: nowrap; cursor: inherit; border: none; } /* JDL: padding 0.2em上下/0.5em右(他liと高さ揃え) */
.search-modal .moji-resizer .moji-size { width: 2em; text-align: center; padding-top: 0.2em; padding-bottom: 0.2em; border: 1px solid #ccc; border-radius: 3px; cursor: pointer; color: var(--sm-text); background: #fff; } /* JDL: padding .2em上下/width2em/border#ccc */
.search-modal .moji-resizer .moji-size:hover { background: rgb(146, 201, 255); }
.search-modal .moji-resizer .moji-size.selected { background: rgb(71, 164, 255); color: #fff; border-color: rgb(71, 164, 255); }
.search-modal .close-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 20px;
  line-height: normal;      /* JDL: line-height指定なし(normal)。1だと×が低くなる(高さ20→29) */
  color: #008cd0;           /* 下層=シアン。トップは body#samplehptop で#00fに上書き */
  text-decoration: none;
  cursor: pointer;
}
.search-modal .modal-content {
  margin-top: 3em;          /* JDL: 3em */
  padding-left: 2.5em;      /* JDL: 2.5em */
  padding-right: 1.5em;     /* JDL: 1.5em。padding-bottomはJDLに無いので削除(独自仕様除去) */
}
/* モーダル内検索バー（JDL search-bar: input 33px / submit #008ee1 幅4.5em） */
.search-modal .search-bar-form { margin-top: 1em; }
.search-modal table.search-bar {
  box-shadow: 0 0 1px 0;
  border: 1px solid #025a8d;
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}
.search-modal .search-bar-input-container { position: relative; background: #fff; padding-left: .5em; }
.search-modal .search-bar-input { width: 100%; border: 0; outline: none; font-size: 1em; height: 33px; }
.search-modal .search-bar-submit-container { text-align: center; background: #008ee1; border: 0; width: 4.5em; }
.search-modal .search-bar-submit { vertical-align: middle; }
/* ×クリアボタン(JDL search-bar相当)。入力欄の右上に黒×。モーダル/トップ中央バー共通(.search-modal外にも適用するため非スコープ) */
/* JDL実機準拠: .search-bar-clear は top:0.5em/right:1em/color:#000、font-sizeは入力欄(45px=17px / 33px=16px)を継承。
   font-sizeを継承させることで×の高さが欄高に追従し、JDL同様どちらのバーでも中央付近に表示される(独自のtop:50%/1.1emは撤去) */
/* コンテナscopeで定義(JDLが search-bar .search-bar-clear で勝たせるのと同構造)。
   これによりSPの汎用ルール com-common.css `.search a{top:15px;right:70px}`(0,1,1) を特異度(0,2,0)で上書きできる */
.search-bar-input-container .search-bar-clear { position: absolute; top: 0.5em; right: 1em; color: #000; text-decoration: none; }
.search-bar-input-container .search-bar-clear:visited, .search-bar-input-container .search-bar-clear:hover { color: #000; text-decoration: none; }
.search-bar-input::-ms-clear { display: none; }
/* おすすめキーワード（JDL recommended-keywords 原本準拠: boxはborder:none、h4はborder-bottom:1px #ccc、
   li は display:inline-block; width:19%(5列)・line-height:2em・0.9em。レスポンシブ 32/48/100%。リンク rgb(0,0,255)/下線なし） */
.search-modal .key { margin-top: 1em; margin-bottom: 10px; }
.search-modal .key .recommended { width: 100%; border: none; border-radius: 3px; box-sizing: border-box; padding: 0 10px 5px; margin-top: 23px; margin-bottom: 10px; } /* JDL: mt23/mb10/pl10/pr10/pb5/border none/radius3 */
.search-modal .key .recommended h4 { font-size: 0.9em; font-weight: bold; color: var(--sm-text); margin: 15px 0 .5em; padding-bottom: 4px; border-bottom: 1px solid #ccc; } /* JDL: h4下線で区切る(独立hrは廃止) */
.search-modal .key .recommended ul { list-style: none; margin: 0; padding-left: 0; }
.search-modal .key .recommended ul li { display: inline-block; width: 19%; line-height: 2em; box-sizing: border-box; font-size: 0.9em; list-style: none; vertical-align: top; }
.search-modal .key a { color: #008cd0; text-decoration: none; } /* 下層=シアン。トップは body#samplehptop で#00fに上書き。:visitedで効くようvarでなく素色 */ /* font-sizeはliの0.9em(14.4px)を継承。ここで0.9emを再指定すると二重適用で12.96pxに縮む(JDLは14.4px) */
.search-modal .key a:hover { text-decoration: none; }
@media only screen and (max-width: 1200px) { .search-modal .key .recommended ul li { width: 32%; } }
@media only screen and (max-width: 768px)  { .search-modal .key .recommended ul li { width: 48%; } }
@media only screen and (max-width: 640px)  { .search-modal .key .recommended ul li { width: 100%; } }
/* 検索結果(モーダル内インライン表示。JDL search-dialog .item に準拠) */
/* 件数表示: JDL原本 inline style 準拠(clear:both; margin-top:.5em; text-align:right; font-size:.7em)。右寄せ・小さめ・太字なし */
.search-modal .sm-count { clear: both; margin-top: 0.5em; text-align: right; font-size: 0.7em; color: #333; }
.search-modal .sm-state { margin: 1.5em 0; color: #888; }
.search-modal .sm-state.err { color: #c00; }
.search-modal .item { clear: both; margin-top: 1.5em; }
.search-modal .item .title { font-size: 1.1em; line-height: 1.3em; font-weight: bold; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; } /* JDL原本: nowrap+ellipsisで1行省略 */
/* JDL原本はタイトルリンクに下線あり。.search-modal a{text-decoration:none!important}を個別!importantで上書き */
.search-modal .item .title a { color: #008cd0; text-decoration: underline !important; } /* 下層=シアン。トップは#00fに上書き */
.search-modal .item .title a:hover { opacity: .75; }
.search-modal .item .url { font-size: 0.7em; color: #00801e; margin: 0 0 0.4em; } /* JDL原本: 0.7em/rgb(0,128,30)/margin-bottom0.4em。word-break無し(原本準拠の通常折返し) */
.search-modal .item .snippet { font-size: 0.9em; color: var(--sm-text); word-break: break-all; line-height: normal; } /* JDL実測: line-height normal */
.search-modal .item .snippet b { font-weight: 700; }
/* Pagefindのマッチ強調<mark>はJDLのキーワード太字に合わせる(背景なし) */
.search-modal .item .snippet mark { background: transparent; color: inherit; font-weight: 700; }
/* 結果ゼロ/検索前は空要素が不要なバー(高さ・余白)を作らないよう非表示 */
.search-modal .pagenation:empty, .search-modal .sm-state:empty, .search-modal .sm-count:empty { display: none !important; margin: 0 !important; padding: 0 !important; }
.search-modal .pagenation { margin-top: 20px; padding: 0 0 1em; margin-bottom: 10px; list-style: none; overflow: hidden; } /* JDL: pager margin-bottom:10px(下端余白)。当サイトに欠落していた */
.search-modal .pagenation li { list-style: none; float: left; margin-right: 2px; padding: 3px; }
.search-modal .pagenation li a { color: #008cd0; text-decoration: none; cursor: pointer; } /* 下層=シアン。トップは#00fに上書き */
.search-modal .pagenation li a.selected { font-weight: bold; cursor: default; }
.search-modal .pagenation li a:not(.selected):hover { text-decoration: none; }
/* 背景スクロールロックは廃止(JDLはロックせず背景もスクロールできる)。html.is-search-open ルールは撤去 */
@media only screen and (max-width: 768px) {
  /* JDL原本SP: top:calc(50vh - 40vh)=10vh で上に余白を持たせる(PCはtop:0中央のまま)。width90%/height92vh */
  .search-modal .modal-body { top: calc(50vh - 40vh); width: 90%; height: 92vh; }
}

/* ============================================================
   AOS（スクロールアニメ）未読み込み対策
   ・AOS.init を呼ばないページ(co/index, nw/index, pages/service 等)で
     data-aos 要素が opacity:0 のまま隠れる事故を防ぐ強制表示。
   ・AOS.init 済みページでは AOS が各要素に .aos-init を付与するため
     :not(.aos-init) で除外し、本来のアニメ(opacity:0→出現)を妨げない。
     (旧: 無条件 [data-aos]{opacity:1!important} が liberty 等のアニメを殺していた)
   ============================================================ */
[data-aos]:not(.aos-init) {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* ============================================================
   ヘッダー初期 opacity:0 対策（common.js が is-on を付ける前提なので強制表示）
   ============================================================ */
.l-header,
.l-wrapper .l-header {
  opacity: 1 !important;
  visibility: visible !important;
}

/* ============================================================
   ヘッダーの高さ & ロゴサイズ (compras.png 639x96 のアスペクト比対応)
   トップ index と他ページ (header.js) の両方を共通制御
   ============================================================ */
/* ヘッダー高さは 70px 固定 */
.l-header {
  height: 70px !important;
  min-height: 70px !important;
  display: flex !important;
  align-items: center !important;
  box-sizing: border-box;
}
.l-header_inr {
  display: flex;
  align-items: center;
  width: 100%;
}
/* ロゴは固定高さでpin: ヘッダー高さ(70px固定)の変動に連動させず、ロゴがヘッダー高さに影響を与えないようにする。
   compras.png 639x96 → 高さ24px指定で幅は自動(約160px)。flex-shrink:0でflex内でも縮まない */
.l-header_logo_img {
  height: 24px !important;
  width: auto !important;
  max-width: none !important;
  display: block;
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .l-header { height: 52px !important; min-height: 52px !important; }
  /* モバイルはロゴをさらに小さくして l-header_sub(ページ種別タイトル)が検索アイコンに重ならないようにする */
  .l-header_logo_img { height: 14px !important; width: auto !important; max-width: none !important; }
}

/* トップページ (body#samplehptop) では aside (青いリンクバー) を非表示
   原本 sample-blueprint の index.html では aside がコメントアウトされていた */
body#samplehptop .aside { display: none !important; }

/* 本家 JDL 準拠: ヒーロー背景は section.background_lightgrey2 の d4-top(1910x510) 1枚に統一。
   旧 Phase の #top-box への top2.png 後付け背景・高さ480px膨張・padding 50% は本家構造から
   逸脱していたため撤去。高さは com-basic.css の #top-box{min-height:410px} に委ねる。 */
body#samplehptop #top-box > div {
  position: relative;
  z-index: 2;
}

/* ============================================================
   多くの事務所が効果を実感（ba-achievement）レイアウト
   ============================================================ */
body:not(.jdl-original) .ba-achievement {
  max-width: 1000px;
  margin: 24px auto;
  background: #f5f5f5;
  padding: 20px 24px;
  border: 1px solid #d6d6d6;
  border-radius: 8px;
}
body:not(.jdl-original) .ba-achievement h3 {
  font-size: 1.5rem;
  font-weight: 800;
  color: #1d2733;
  border-bottom: 3px solid #ff8c0a;
  padding-bottom: 8px;
  margin: 0 0 12px;
}
body:not(.jdl-original) .ba-achievement > div:not(.box-flex) {
  font-size: 0.95em;
  color: #444;
  margin-bottom: 8px;
}
body:not(.jdl-original) .ba-achievement ul.box-flex {
  list-style: none;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 24px;
  margin: 12px 0 0;
  padding: 0;
}
body:not(.jdl-original) .ba-achievement ul.box-flex li {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0;
  padding: 0;
  font-size: 0.92em;
}
body:not(.jdl-original) .ba-achievement .speechbubble {
  position: relative;
  flex: 1;
  background: #fff;
  border-radius: 10px;
  padding: 12px 16px;
  font-weight: 600;
  color: #1d2733;
}
body:not(.jdl-original) .ba-achievement .speechbubble::after {
  content: "";
  position: absolute;
  top: 18px;
  right: -10px;
  border: 8px solid transparent;
  border-left-color: #fff;
}
body:not(.jdl-original) .ba-achievement .box-img {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #fff;
  box-shadow: 0 0 0 1px #d6d6d6;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
body:not(.jdl-original) .ba-achievement .box-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
body:not(.jdl-original) .ba-achievement .bo-casestudy {
  text-align: right;
  margin: 12px 0 0;
}
body:not(.jdl-original) .ba-achievement .bo-casestudy a {
  display: inline-block;
  background: #ff8c0a;
  color: #fff;
  border-radius: 30px;
  padding: 8px 22px;
  font-size: 0.85em;
  font-weight: 700;
  text-decoration: none;
}
body:not(.jdl-original) .ba-achievement .bo-casestudy a:hover { background: #e57c00; }
@media (max-width: 768px) {
  body:not(.jdl-original) .ba-achievement ul.box-flex { grid-template-columns: 1fr; }
}

/* ============================================================
   #Mailto / .mailto セクション（お問合せ）
   本家JDL準拠: PC・SPとも常に3列(flex row nowrap)。li=各1/3幅・margin 0 10px。
   実測根拠: jdl.co.jp/co/ ライブ計測 2026-06-03 (PC li380px / SP li92.5px)
   ※以前は li:40% かつ SP で flex-direction:column としており、3列が崩れ
     SPで縦1列に積まれて本家と不一致だった(是正)。
   ============================================================ */
ul.mailto, body:not(.jdl-original) ul#Mailto {
  margin: 0 auto !important;   /* 負のmargin-bottomはaside(青ナビ)と重なる不具合のため撤去 */
  padding: 0 !important;
  list-style: none;
  clear: both;
  text-align: center !important;
  display: flex !important;
  flex-direction: row !important;   /* SPでも横3列を維持(縦積み禁止) */
  flex-wrap: nowrap;
  justify-content: center;
  gap: 0;                            /* 余白は li の margin:0 10px で確保(JDL同様) */
  max-width: 1200px;
}
ul.mailto li, body:not(.jdl-original) ul#Mailto li {
  width: calc((100% - 60px) / 3) !important;  /* 3列(margin 10px×2×3=60px を差引) */
  box-sizing: border-box;
  background: #fff;
  border: none !important;
  border-bottom: 1px solid #ccc !important;
  border-right: 1px solid #ccc !important;
  margin: 0 10px !important;
  padding: 5px 8px !important;   /* JDL li: 5px 8px */
  border-radius: 0 !important;
  text-align: center;
  font-size: 0.9em;
  font-weight: bold;
  position: static;
  min-height: 0 !important;
  transition: box-shadow .2s;
}
ul.mailto li:hover, body:not(.jdl-original) ul#Mailto li:hover {
  box-shadow: 0 4px 14px rgba(0,0,0,.1);
}
ul.mailto li > a, body:not(.jdl-original) ul#Mailto li > a {
  padding: 10px 0 !important;   /* JDL a: 10px 0 */
  display: block !important;
  color: #333 !important;
  position: static !important;
  inset: auto !important;
  text-indent: 0 !important;
  overflow: visible !important;
  z-index: auto;
}
ul.mailto li > div:first-of-type, body:not(.jdl-original) ul#Mailto li > div:first-of-type {
  width: auto !important;
  height: auto !important;
  flex-shrink: 1;
  margin: 0 auto 6px;
}
ul.mailto li img, body:not(.jdl-original) ul#Mailto li img {
  width: 12% !important;
  height: auto !important;
  display: block;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  /* SP: 3列維持のまま JDL SP に一致(font11px・line-height11px・★weight normal・img≒22px)
     ※JDLは PC=bold(700) だが SP=normal(400) と太さが変わる(本家実測) */
  ul.mailto li, body:not(.jdl-original) ul#Mailto li { font-size: 11px; line-height: 1.3; font-weight: normal !important; }
  ul.mailto li > a, body:not(.jdl-original) ul#Mailto li > a { font-weight: normal !important; }
  ul.mailto li img, body:not(.jdl-original) ul#Mailto li img { width: 22px !important; height: 22px !important; margin-bottom: 6px; }
}
ul.mailto li h3, body:not(.jdl-original) ul#Mailto li h3 {
  font-size: 1.25em;
  font-weight: 800;
  color: #1d2733;
  margin: 0;
}
ul.mailto li .sub, body:not(.jdl-original) ul#Mailto li .sub {
  font-size: 0.85em;
  color: #6b7280;
  margin-bottom: 4px;
}

/* ============================================================================
   .maintxt 本文の箇条書き(classなし ul)を統一
   グローバル com-basic.css の `ul{padding:0}` で list-style:disc(outside)の黒丸が
   コンテンツ枠の左外へ飛び出す不具合を是正。左パディングを復帰し枠内に収める。
   対象は class の無い本文リストのみ(btm_menu/block2/block4/indent 等は除外)。
   → corp/agency.html と accessibility/index.html のリスト表示を揃える。
   ============================================================================ */
.maintxt ul:not([class]) {
  list-style-type: disc;
  padding-left: 1.5em;
  margin: 0.6em 0 1.2em;
}
.maintxt ul:not([class]) li {
  margin: 0.4em 0;
  line-height: 1.8;
}

/* ============================================================================
   製品案内(product) の「詳細ページを見る」ボタン(.bo-01)を中央寄せに復元。
   .block2 li p (margin:15px 5px / 詳細度0,1,2) が .bo-01 (margin:20px auto /
   詳細度0,1,0) を上書きし、auto が効かず左寄せになっていた。
   .block2 li p.bo-01 (詳細度0,2,2) で .bo-01 本来の margin:auto を復元する。
   ============================================================================ */
.block2 li p.bo-01 {
  margin: 20px auto;
}

/* ============================================================================
   2026-06-14: 会社情報(corp)配下 本文画像のSP中央寄せ＋レスポンシブ
   .center が @media(max-width:768px) で text-align:left に上書きされ、
   .img-container(flex row)内の .con-img/.con-img2 画像も左寄せ・サイズ不揃いになる対策。
   指示: corp/index.html 配下ページの画像をSPで中央寄せ・適正サイズに統一。
   ============================================================================ */
@media only screen and (max-width:768px){
  .box-white .maintxt .img-container { flex-direction:column; align-items:center; }
  .box-white .maintxt .center { text-align:center; }
  .box-white .maintxt .center img,
  .box-white .maintxt .con-img img,
  .box-white .maintxt .con-img2 img { display:block; margin-left:auto; margin-right:auto; max-width:100%; height:auto; }
}

/* 2026-06-14: welcome等 .img-container 内のプレーンdiv画像(CEO等)もSPで中央寄せ。
   横幅は等倍のまま(max-width付けず＝100%に拡大しない)。 */
@media only screen and (max-width:768px){
  .box-white .maintxt .img-container img { display:block; margin-left:auto; margin-right:auto; }
}

/* ============================================================================
   2026-06-23 指示: 青ボタン系リンク(bo-01/bo-02/bo-03 系)の右矢印(a::before の「>」)を撤去。
   ※「次へ/前へ」等のナビ矢印・パンくず・会社情報ナビは別クラスのため対象外。
   ============================================================================ */
.bo-01 a::before,
.bo-01b a::before,
.bo-01s a::before,
.bo-01s2 a::before,
.bo-01s3 a::before,
.bo-01s5 a::before,
.bo-01ore a::before,
.bo-02 a::before,
.bo-02ore a::before,
.bo-03 a::before {
  content: none !important;
  display: none !important;
}

/* ============================================================================
   2026-06-24 指示: btm_menu(会社案内の前後ナビ青バナー)をページ間で太さ・文字サイズを統一。
   継承line-heightの差で高さがバラついていた(例:business 32px / soudan 40px)ため明示。
   文字は本文と同等(0.9em→1em)に。※左右のナビ矢印(:first/:last-child a::before)は残す。
   ============================================================================ */
.btm_menu li a {
  padding: 12px 0 !important;
  font-size: 1em !important;
  line-height: 1.5 !important;
}
