@charset "UTF-8";
/* ============================================================
 * custom-refine.css
 * 2026-06-10 追加：デザイン微調整（イータイム）
 * 目的：既存テンプレートを壊さず、トップ＋全ページの見た目を上品に整える。
 *       コンテンツ・文言・構成・配色トーン（水色基調）は変更しない。
 * 方針：ヘッダー・グローバルナビには手を入れない（追加なし）。
 *       既存クラスは上書きせず、より詳細なセレクタで差分追加する。
 *       必ず全スタイルシートの最後に読み込むこと。
 * 配色トークン：primary #35bfed / link #20b6e8 / hover #5ccff5
 *               logo-blue #5dbed5 / accent-green #a1c900 / footer-bg #c5e8fa
 * ============================================================ */

/* ------------------------------------------------------------
 * 0. 本文タイポグラフィ（読みやすさの底上げ）
 * ---------------------------------------------------------- */
[data-role="contents"] [data-module-type="paragraph-editable"] p {
  line-height: 1.9;
  letter-spacing: 0.02em;
  color: #3a3a3a;
}

/* ------------------------------------------------------------
 * 0-2. ページ内アンカーのスムーススクロール
 *      フッターの「PAGE TOP（#outer）」等を滑らかに移動させる
 * ---------------------------------------------------------- */
html {
  scroll-behavior: smooth;
}

/* ------------------------------------------------------------
 * 1. セクションの余白・リズム
 *    コンテンツ各ブロックに上下の呼吸を持たせる
 * ---------------------------------------------------------- */
[data-role="contents"] > .row[data-module-type="container"] {
  margin-top: 6px;
  margin-bottom: 6px;
}
[data-role="contents"] [data-module-type="heading"] {
  margin-top: 44px;
}
[data-role="contents"] [data-module-type="heading"]:first-child,
[data-role="contents"] > .row:first-child [data-module-type="heading"] {
  margin-top: 8px;
}

/* ------------------------------------------------------------
 * 2. 見出し（h2-G001 水色バー）に左アクセントと締まりを付与
 *    ※既存の角丸・影・配色は活かしつつ、左に水色のラインを追加
 * ---------------------------------------------------------- */
[data-role="contents"] h2[class*="h2-G001"],
[data-role="contents"] h2[class*="h2-G002"],
.contact-heading h2[class*="h2-G001"],
.contact-heading h2[class*="h2-G002"] {
  position: relative;
  border-left: 5px solid #35bfed;
  letter-spacing: 0.06em;
  box-shadow: 0 1px 4px rgba(53, 191, 237, 0.18);
}
/* お問い合わせ見出し：他ページと同じくコンテナ幅・同等の余白に */
.contact-heading {
  margin: 8px 0 20px;
}

/* ------------------------------------------------------------
 * 3. コンテンツ画像・ギャラリーをカード調に
 *    （スライダー本体には影を付けない＝はみ出し防止のため除外）
 * ---------------------------------------------------------- */
[data-role="contents"] [data-module-type="image-editable"] img,
[data-role="contents"] .gallery-typeA-box img {
  border-radius: 5px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.10);
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
[data-role="contents"] .gallery-typeA-box a:hover img {
  box-shadow: 0 5px 16px rgba(0, 0, 0, 0.18);
  transform: translateY(-2px);
}

/* ------------------------------------------------------------
 * 4. スライダーのサムネイル列を復旧（重要な崩れ修正）
 *    テーマCSSがprint.css(media=print)内にしか無いため、
 *    画面表示でサムネイルが原寸縦積みになる不具合を解消する。
 *    → 横並びの小サムネイル列（本来の意図）に戻す。
 * ---------------------------------------------------------- */
.theme-a .nivo-controlNav.nivo-thumbs-enabled,
.theme-b .nivo-controlNav.nivo-thumbs-enabled,
.theme-c .nivo-controlNav.nivo-thumbs-enabled {
  margin: 10px 0 0;
  padding: 0;
  border: 0;
  text-align: center;
  font-size: 0; /* インライン要素間の余白除去 */
  line-height: 0;
}
.theme-a .nivo-controlNav.nivo-thumbs-enabled a,
.theme-b .nivo-controlNav.nivo-thumbs-enabled a,
.theme-c .nivo-controlNav.nivo-thumbs-enabled a {
  display: inline-block;
  width: 16%;
  height: auto;
  padding: 0 1%;
  margin: 0;
  border: 0;
  background: none;
  vertical-align: top;
  text-indent: -9999px;
  overflow: hidden;
  cursor: pointer;
  opacity: 0.65;
  transition: opacity 0.2s ease;
}
.theme-a .nivo-controlNav.nivo-thumbs-enabled a:hover,
.theme-b .nivo-controlNav.nivo-thumbs-enabled a:hover,
.theme-c .nivo-controlNav.nivo-thumbs-enabled a.active,
.theme-c .nivo-controlNav.nivo-thumbs-enabled a:hover {
  opacity: 1;
}
.theme-a .nivo-controlNav.nivo-thumbs-enabled a img,
.theme-b .nivo-controlNav.nivo-thumbs-enabled a img,
.theme-c .nivo-controlNav.nivo-thumbs-enabled a img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 3px;
}

/* ------------------------------------------------------------
 * 5. メインビジュアルのキャプションを上品に
 *    巨大なオレンジ文字の主張を抑え、読みやすい帯に整える
 * ---------------------------------------------------------- */
[data-role="main-visual"] .nivo-caption {
  font-size: clamp(15px, 2.0vw, 26px) !important;
  line-height: 1.55 !important;
  max-width: 64%;
  padding: 14px 20px !important;
  border-radius: 3px;
}

/* ------------------------------------------------------------
 * 6. 会社案内などの表組みを柔らかく整える
 * ---------------------------------------------------------- */
[data-role="contents"] table.table-bordered th,
[data-role="contents"] table.table-bordered td {
  padding: 13px 16px;
  vertical-align: middle;
  line-height: 1.7;
}
[data-role="contents"] table.table-bordered th {
  white-space: nowrap;
  font-weight: bold;
}

/* ------------------------------------------------------------
 * 7. フッターのバナー（電話／お問合せ）をカード化＆文字折れ防止
 * ---------------------------------------------------------- */
footer .bnr-wrapper {
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.14);
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
footer .bnr-wrapper:hover {
  box-shadow: 0 7px 20px rgba(0, 0, 0, 0.22);
  transform: translateY(-2px);
}
footer .bnr-catch {
  white-space: nowrap;
  letter-spacing: 0.04em;
}
footer .bnr-catch,
footer .bnr-catch-desc {
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
}

/* ------------------------------------------------------------
 * 8. 「＞詳細はこちら」リンクの座りを良く
 * ---------------------------------------------------------- */
[data-role="contents"] a[href$="company.html"] {
  font-weight: bold;
}

/* ------------------------------------------------------------
 * 9. ヘッダー右側「お電話・FAX／TEL／FAX」の折り返し（文字ずれ）防止
 *    タブレット幅（ハンバーガー出現直前 768〜979px）でセルが
 *    狭くなり電話番号が途中で折り返す問題を解消する。
 *    ※ヘッダー本体には手を入れず、折り返しのみ抑止。
 * ---------------------------------------------------------- */
header .header-inner-content[data-module-type="paragraph-editable"] p,
header #header-info {
  white-space: nowrap;
}

/* ------------------------------------------------------------
 * 10. お問い合わせページの体裁を他ページと揃えるための共通化
 *     本来は各ページ <head> 内インラインCMSスタイルで定義される
 *     上部ボーダー・wrapper余白・フッター背景を全ページ共通で定義。
 *     （他ページは同値が既に定義済みのため見た目は不変）
 * ---------------------------------------------------------- */
div.border {
  border-top: 8px solid #35bfed;
}
div#wrapper.wrapper {
  padding-top: 8px;
}
footer {
  background-color: rgba(197, 232, 250, 1);
  padding: 20px 1% 10px;
}

/* ------------------------------------------------------------
 * 11. スマホ表示の微調整（既存ブレークポイント 767px に合わせる）
 * ---------------------------------------------------------- */
@media screen and (max-width: 767px) {
  [data-role="main-visual"] .nivo-caption {
    max-width: 100%;
    font-size: clamp(13px, 4.2vw, 20px) !important;
    padding: 10px 14px !important;
  }
  [data-role="contents"] [data-module-type="heading"] {
    margin-top: 28px;
  }
  footer .bnr-catch {
    white-space: normal;
  }
}

/* ============================================================
 * 12. グローバルナビ刷新（スタイリッシュ化／全ページ共通）
 *     既存テンプレートの水色丸ボタンを、継ぎ目のない
 *     フラットなタブバーに刷新。ホバー・現在地を明確化。
 * ============================================================ */
.global-nav-upper-wrap {
  margin-top: 14px;
}
nav.global-nav-upper-G003-aqua {
  background: #ffffff;
  border: 1px solid #e1f0f9;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(53, 191, 237, 0.16);
}
/* 各項目：等幅・継ぎ目なし・細い区切り線 */
nav.global-nav-upper-G003-aqua.global-nav-upper-item6 > ul > li {
  width: 16.6666% !important;
  margin: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  border-right: 1px solid #e6f3fa;
  box-sizing: border-box;
}
nav.global-nav-upper-G003-aqua > ul > li:last-child {
  border-right: 0;
}
nav.global-nav-upper-G003-aqua > ul > li > a {
  padding: 15px 4px !important;
  color: #1a5a78 !important;
  font-weight: 600;
  font-size: 13.5px;
  letter-spacing: 0.04em;
  border-bottom: 3px solid transparent;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
nav.global-nav-upper-G003-aqua > ul > li > a:hover {
  background: #eaf7fd !important;
  color: #0f86b8 !important;
  border-bottom-color: #35bfed;
}
nav.global-nav-upper-G003-aqua > ul > li.active > a {
  background: linear-gradient(180deg, #3cc4ef 0%, #1ea9da 100%) !important;
  color: #ffffff !important;
  border-bottom-color: #1789b8;
}
@media screen and (min-width: 768px) and (max-width: 979px) {
  nav.global-nav-upper-G003-aqua > ul > li > a {
    font-size: 12px;
    padding: 13px 2px !important;
    letter-spacing: 0;
  }
}

/* スマホ：ハンバーガー内ナビ（side）も整える */
@media screen and (max-width: 767px) {
  nav.global-nav-side-G003-aqua > ul > li {
    background: #f3fafd !important;
    border-bottom: 1px solid #e1f0f9;
    border-radius: 0 !important;
  }
  nav.global-nav-side-G003-aqua > ul > li > a {
    padding: 14px 16px !important;
    color: #1a5a78 !important;
    font-weight: 600;
    text-align: left;
  }
  nav.global-nav-side-G003-aqua > ul > li.active > a {
    background: linear-gradient(180deg, #3cc4ef 0%, #1ea9da 100%) !important;
    color: #ffffff !important;
  }
}

/* ============================================================
 * 13. フッター刷新（全ページ共通）
 *     ・上部にブランドラインを追加して区切りを明確化
 *     ・ページリンクを ■ ビュレットから上品なピル型リンクへ
 * ============================================================ */
footer {
  border-top: 4px solid #35bfed;
}
/* ページリンク：中央寄せのピル型に */
footer #footer-link-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  padding: 6px 0 2px;
  margin: 0;
}
footer #footer-link-list li {
  width: auto !important;
  margin: 0 !important;
  list-style: none;
}
footer ul[class*="footer-link-004"] li a {
  background: #ffffff none !important; /* ■ビュレット画像を除去 */
  padding: 8px 18px !important;
  border: 1px solid #9fd4ec;
  border-radius: 999px;
  color: #0f7fb0 !important;
  font-size: 13px;
  line-height: 1;
  display: inline-block;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
footer ul[class*="footer-link-004"] li a:hover {
  background: #35bfed !important;
  color: #ffffff !important;
  border-color: #35bfed;
  box-shadow: 0 3px 8px rgba(53, 191, 237, 0.35);
}
/* PAGE TOP ボタン・コピーライトの座り */
footer [data-module-type="html-editable"] {
  margin: 6px 0 2px;
}
footer #footer-copyright {
  margin-top: 12px;
  font-size: 12px;
}
