@charset "utf-8";
/* ============================================================
   LOGICALTE（service/logicalte）
   本番テーマ lastcompass220713 のCSSより後に読み込むこと。
   画像は ../../images/restyle/ に配置。
   自動生成: build_dist.py — プレビューの適用順をそのまま保持。
   ============================================================ */

/* ---------- lcRestyle ---------- */
/* ============================================================
   LOGICALTE（/service/logicalte）
   オリジナル配色遵守。ヘッダー/フッターのみ他サービスページと
   同じデザイン言語（ベース色はオリジナルの紺 #1C2A3C を維持）
   ============================================================ */

/* ---- フォント：他サービスページと統一（本文=Noto Sans JP／見出し=Noto Serif JP） ---- */
body.logicalte.service,
body.logicalte.service p,
body.logicalte.service li,
body.logicalte.service dt,
body.logicalte.service dd,
body.logicalte.service td,
body.logicalte.service th,
body.logicalte.service a,
body.logicalte.service input,
body.logicalte.service textarea,
body.logicalte.service .flow-text,
body.logicalte.service .unit-text-02{
  font-family:"Noto Sans JP","Inter",-apple-system,sans-serif;
}
/* 見出しもゴシック基本（ユーザー指定） */
body.logicalte.service h2,
body.logicalte.service .iblock,
body.logicalte.service .unit-title-08,
body.logicalte.service .unit-title-07,
body.logicalte.service .flow-title,
body.logicalte.service .unit-case-01 .title{
  font-family:"Noto Sans JP",sans-serif !important;
}

/* ---- 赤の強調文字はゴールドに（他サービスページと統一） ---- */
body.logicalte.service .fc-red{
  color:#a8834a !important;
}

/* ---- ヘッダー：他サービスページと同じデザイン言語 ---- */
body.logicalte.service .header-wrap{
  background:#1C2A3C !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}
body.logicalte.service .box-header-02 .header-nav a{
  color:#cfd8e4 !important;
  font-family:"Open Sans","Noto Sans JP",sans-serif !important;
  transition:color .2s, box-shadow .2s;
}
body.logicalte.service .box-header-02 .header-nav a span{ color:#8a97ab !important; }
body.logicalte.service .box-header-02 .header-wrap .header-inner .header-nav ul.nav-inner > li > a::after{
  color:#8a97ab !important;
}
body.logicalte.service .box-header-02 .header-wrap .header-inner .header-nav ul.nav-inner > li > a:hover{
  background:transparent !important;
  color:#d8b877 !important;
  box-shadow:inset 0 -2px 0 #d8b877;
}
body.logicalte.service .box-header-02 .header-wrap .header-inner .header-nav ul.nav-inner > li > a:hover::after{
  color:rgba(216,184,119,.65) !important;
}
/* COMPASS PORT：金縁のシャープな矩形（他ページと同じ） */
body.logicalte.service .header-btn .btn-inner{
  background:transparent !important;
  border:1px solid rgba(216,184,119,.65) !important;
  color:#ECD8A4 !important;
  border-radius:2px !important;
}
/* ドロップダウン：ダークガラス＋金の天板ライン（他ページと同じ） */
body.logicalte.service .box-header-02 .header-wrap .header-inner .header-nav ul.nav-inner > li .nav-child{
  border-top:2px solid #d8b877;
  box-shadow:0 18px 40px rgba(0,0,0,.5);
}
body.logicalte.service .box-header-02 .header-wrap .header-inner .header-nav ul.nav-inner > li .nav-child > li{
  background:rgba(12,12,14,.96) !important;
}
body.logicalte.service .box-header-02 .header-nav ul.nav-inner .nav-child a{
  color:#cfd8e4 !important;
}
body.logicalte.service .box-header-02 .header-nav ul.nav-inner .nav-child a span,
body.logicalte.service .box-header-02 .header-nav ul.nav-inner .nav-child a::after{
  color:rgba(216,184,119,.75) !important;
}
body.logicalte.service .box-header-02 .header-nav ul.nav-inner .nav-child a:hover{
  color:#d8b877 !important;
}

/* ---- フッターのフォントを他サービスページと統一 ---- */
body.logicalte.service .box-footer-01,
body.logicalte.service .box-footer-01 a,
body.logicalte.service .box-footer-01 p,
body.logicalte.service .box-footer-01 li,
body.logicalte.service .box-footer-01 dt,
body.logicalte.service .box-footer-01 dd,
body.logicalte.service .box-footer-01 address{
  font-family:"Open Sans","Noto Sans JP",sans-serif !important;
}

/* ---- キャッチ（見出し+テキスト）を白余白の上下中央に：上下の余白を対称化 ---- */
body.logicalte.service .box-mainvisual-01.logicalte{
  margin-bottom:56px !important;
}
body.logicalte.service .section-service-logicalte-head{
  margin-bottom:56px !important;
}

/* ---- キャッチ見出しを課題見出しと同サイズに縮小＋文字詰め ---- */
body.logicalte.service .unit-title-10{
  font-size:28px !important;
  line-height:1.6 !important;
  letter-spacing:.04em !important;
  margin-bottom:18px !important;
}
@media (max-width:767px){
  body.logicalte.service .unit-title-10{
    font-size:22px !important;
  }
}

/* ---- REQUESTフォーム：他サービスページのデザイン言語に統一 ---- */
/* 必須バッジ：黄色→ゴールド */
body.logicalte.service .box-form-01 th.required::after{
  background:#b8945a !important;
  color:#fff !important;
  border-radius:2px;
  letter-spacing:.08em;
}
/* パネル：グレー面→白＋金ヘアライン枠 */
body.logicalte.service .section-service-logicalte-request .box-bg-01{
  background:#fff !important;
  border:1px solid rgba(184,148,90,.5) !important;
}
/* 入力欄：白地＋ヘアライン、フォーカスで紺 */
body.logicalte.service .box-form-01 input[type="text"],
body.logicalte.service .box-form-01 input[type="email"],
body.logicalte.service .box-form-01 input[type="tel"],
body.logicalte.service .box-form-01 textarea{
  border:1px solid #d7dbe3 !important;
  background:#fff !important;
  border-radius:0 !important;
}
body.logicalte.service .box-form-01 input:focus,
body.logicalte.service .box-form-01 textarea:focus{
  outline:none !important;
  border-color:#1c2238 !important;
}
/* 行区切りをヘアラインに */
body.logicalte.service .box-form-01 table tr{
  border-bottom:1px solid #e3e6ec !important;
}
/* 送信ボタン：紺→金グラデ（CVボタンと同じ言語） */
body.logicalte.service .btn-submit1 input.wpcf7-submit{
  background:linear-gradient(135deg,#ecd8a4,#d8b877 45%,#b8945a) !important;
  color:#16233b !important;
  font-family:"Noto Sans JP",sans-serif !important;
  font-weight:700 !important;
  font-size:15px !important;
  letter-spacing:.14em !important;
  padding:20px 10px !important;
  border:0 !important;
  border-radius:2px !important;
  box-shadow:0 5px 14px rgba(5,12,25,.2), inset 0 0 0 1px rgba(255,255,255,.35) !important;
  transition:filter .2s;
}
body.logicalte.service .btn-submit1 input.wpcf7-submit:hover{
  filter:brightness(1.07);
}

/* ---- SERVICE/CASE/SEMINARの白パネルのドロップシャドウを削除 ---- */
body.logicalte.service .section-service-logicalte-service .box-bg-02,
body.logicalte.service .section-service-logicalte-case .box-bg-02,
body.logicalte.service .section-service-logicalte-event .box-bg-02{
  box-shadow:none !important;
}

/* ---- フロートアップ（AOS）を機敏に（他ページと同じ） ---- */
body.logicalte.service [data-aos]{
  transition-duration:.45s !important;
  transition-delay:0s !important;
}

/* ============================================================
   サービスページ共通フッター（グレー）
   背景 #F2F2F2 に統一し、フォントは "Open Sans","Noto Sans JP"。
   ============================================================ */
body.service:not(.recruit) .box-footer-01:not(.recruit){
  background:#F2F2F2 !important;
}
/* 内側wrapの二重塗りを無効化 */
body.service:not(.recruit) .box-footer-01:not(.recruit) .footer-wrap{
  background:transparent !important;
}
body.service:not(.recruit) .box-footer-01:not(.recruit) a,
body.service:not(.recruit) .box-footer-01:not(.recruit) p,
body.service:not(.recruit) .box-footer-01:not(.recruit) li,
body.service:not(.recruit) .box-footer-01:not(.recruit) dt,
body.service:not(.recruit) .box-footer-01:not(.recruit) dd,
body.service:not(.recruit) .box-footer-01:not(.recruit) address{
  color:#1C222F !important;
}
body.service:not(.recruit) .box-footer-01:not(.recruit) a:hover{ color:#a8834a !important; }

/* メニュー横の商品名（::after）は金 */
body.service:not(.recruit) .box-footer-01:not(.recruit) a::after,
body.service:not(.recruit) footer:not(.recruit) .footer-sitemap a::after{
  color:#a8834a !important;
}
body.service:not(.recruit) .box-footer-01:not(.recruit) .footer-wrap .footer-info::before{
  background:rgba(28,34,47,.14) !important;
}
body.service:not(.recruit) .box-footer-01:not(.recruit) .footer-copyright{
  background:#E9E9E9 !important;
  color:#6B7280 !important;
}

/* 中央ロゴは原色（反転しない） */
body.service:not(.recruit) footer:not(.recruit) .unit-logo-03,
body.service:not(.recruit) .box-footer-01:not(.recruit) .unit-logo-03,
body.service:not(.recruit) .box-footer-01:not(.recruit) .footer-logo{
  filter:none !important;
  opacity:1 !important;
}

/* ---- フォント統一 ---- */
body.service:not(.recruit) .box-footer-01:not(.recruit),
body.service:not(.recruit) .box-footer-01 a,
body.service:not(.recruit) .box-footer-01 p,
body.service:not(.recruit) .box-footer-01 li,
body.service:not(.recruit) .box-footer-01 dt,
body.service:not(.recruit) .box-footer-01 dd,
body.service:not(.recruit) .box-footer-01 address,
body.service:not(.recruit) .box-footer-01 .footer-copyright{
  font-family:"Open Sans","Noto Sans JP",sans-serif !important;
}

/* ============================================================
   サービスページ共通 — 金の正本化
   テーマ側に残る旧ゴールド #D2C185 を正本の4値に寄せる。

   正本パレット
     #ECD8A4  ペール（濃色背景のグラデ上端）
     #D8B877  ライト（濃色背景の文字）
     #B8945A  スタンダード（罫・枠・面）
     #A8834A  ダーク（明色背景の文字）
   ============================================================ */

/* 問い合わせフォームの表の罫線 */
body.service:not(.recruit) .box-form-01 table td,
body.service:not(.recruit) .box-form-01 table th,
body.service:not(.recruit) .box-table-08 table td,
body.service:not(.recruit) .box-table-08 table th,
body.service:not(.recruit) table th.required,
body.service:not(.recruit) table th.required.nowrap{
  /* テーマ既定の 2px ベタ金は重いので、1pxの淡い金に */
  border-bottom:1px solid rgba(184,148,90,.42) !important;
}

/* 「WEB」などのラベルバッジ */
body.service:not(.recruit) .under-simplenote-sec04 li > span{
  background:#B8945A !important;
  color:#ffffff !important;
}

/* ============================================================
   SEMINAR・ブログ一覧カード（.box-article-01）の左右余白
   携帯で本文が画面端から10px、日付(.time-inner)が右へはみ出していた。
   ============================================================ */
@media screen and (max-width:900px){
  body.service:not(.recruit) .box-article-01 > li{
    padding-left:6px !important;
    padding-right:6px !important;
    box-sizing:border-box !important;
  }
  body.service:not(.recruit) .box-article-01 .time-inner{
    display:inline-block !important;
    max-width:100% !important;
    white-space:normal !important;
    box-sizing:border-box !important;
  }
}

/* CASE一覧（.box-article-04）：親wrapperの余白が10pxしかなく本文が端に寄る */
@media screen and (max-width:1100px){
  body.service:not(.recruit) .box-article-04{
    padding-left:10px !important;
    padding-right:10px !important;
    box-sizing:border-box !important;
  }
}

/* ============================================================
   iPad帯のガター穴を塞ぐ
   テーマは .blc_in / .wrapper に @media(max-width:1000px) でしか
   左右paddingを与えておらず、1001〜1100pxでは max-width:1000px の
   まま余白が5pxしか残らない。
   ※ReNOMAは個別に調整済みのため除外（比較表と白ボックスの幅一致を保つ）
   ============================================================ */
@media screen and (min-width:1001px) and (max-width:1100px){
  body.service:not(.recruit):not(.renoma):not(.simplenote) .blc_in,
  body.service:not(.recruit):not(.renoma):not(.simplenote) .wrapper{
    padding-left:40px !important;
    padding-right:40px !important;
    box-sizing:border-box !important;
  }
}

/* ---------- lgcv ---------- */
/* ============================================================
   フッターCVバー 案3 — フローティングゴールド
   画面下に浮かせた独立ボタン（左右に余白＋影）。
   バー型よりアプリ的で、コンテンツの視認を妨げない。
   ※本番反映時はリンク先(tel:)を資料ページURLへ変更が必要。採用LP(.recruit)のENTRYバーは対象外
   ============================================================ */
.unit-fix-07:not(.recruit){
  left:14px !important;
  right:14px !important;
  bottom:14px !important;
  width:auto !important;
}
/* 下層ページはバー内に複数リンク（セミナー/資料請求/電話）があるため、
   資料請求(fix-inquery)だけを残してCTA化する。TOPは電話のみ→そのまま置換 */
.unit-fix-07:has(.fix-inquery) .fix-inner:not(.fix-inquery){ display:none !important; }
.unit-fix-07:not(.recruit) .fix-inner .fix-main,
.unit-fix-07:not(.recruit) .fix-inner .fix-sub{ display:none !important; }
.unit-fix-07:not(.recruit) .fix-inner{
  background:linear-gradient(135deg,#ecd8a4,#d8b877 45%,#b8945a) !important;
  display:flex !important;
  align-items:center; justify-content:center; gap:9px;
  padding:15px 10px !important;
  border-radius:2px !important;
  box-shadow:0 5px 14px rgba(5,12,25,.28), inset 0 0 0 1px rgba(255,255,255,.35);
}
.unit-fix-07:not(.recruit) .fix-inner::before{
  content:"期間限定資料を確認する";
  font-family:"Noto Sans JP",sans-serif;
  font-weight:700;
  font-size:14px;
  letter-spacing:.12em;
  color:#16233b;
  line-height:1;
}
.unit-fix-07:not(.recruit) .fix-inner::after{
  content:"→";
  font-weight:700;
  color:#16233b;
  line-height:1;
}

/* ---------- lgh1 ---------- */
body.logicalte.service .box-mainvisual-01.logicalte{
  display:flex;
  align-items:center;
  justify-content:center;
}
body.logicalte.service .box-mainvisual-01.logicalte .mainvisual-inner{
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
body.logicalte.service .box-mainvisual-01.logicalte .mainvisual-logo{
  position:static !important;
  top:auto !important;
  left:auto !important;
  transform:none !important;
  margin:0 !important;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hero-sub{
  text-align:center;
  font-family:"Noto Sans JP",sans-serif;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hs-kicker{
  display:block;
  font-family:"Open Sans","Noto Sans JP",sans-serif;
  font-size:11px;
  letter-spacing:.34em;
  text-indent:.34em;
  color:#d8b877;
  font-weight:600;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hs-name{
  display:block;
  color:#fff;
  font-family:"Noto Serif JP",serif;
  font-weight:600;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hs-desc{
  color:#cfd5e2;
  line-height:2;
  margin:0;
}

/* 表紙 案1 — センターコンパクト（ロゴ縮小＋商品情報を下段に） */
body.logicalte.service .box-mainvisual-01.logicalte .mainvisual-logo img{
  width:390px !important;
  max-width:72vw !important;
  height:auto !important;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hero-sub{ margin-top:26px; }
body.logicalte.service .box-mainvisual-01.logicalte .lg-hs-kicker{ margin-bottom:10px; }
body.logicalte.service .box-mainvisual-01.logicalte .lg-hs-name{
  font-size:20px;
  letter-spacing:.14em;
  margin-bottom:10px;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hs-desc{ font-size:13.5px; }
@media (max-width:767px){
  body.logicalte.service .box-mainvisual-01.logicalte .mainvisual-logo img{ width:300px !important; }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hs-name{ font-size:17px; }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hs-desc{ font-size:12px; padding:0 6%; }
}

/* ---------- lghr4 ---------- */
body.logicalte.service .box-mainvisual-01.logicalte .mainvisual-logo{ display:none !important; }
body.logicalte.service .box-mainvisual-01.logicalte .lg-hero{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:20px;
  font-family:"Noto Sans JP",sans-serif;
  padding:0 4%;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-catch{
  color:#d8b877;
  font-size:15px;
  font-weight:600;
  letter-spacing:.16em;
  margin:0;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-line{
  color:#fff;
  font-size:38px;
  font-weight:700;
  letter-spacing:.06em;
  line-height:1.5;
  margin:0;
  white-space:nowrap;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-mark{
  color:#fff;
  font-family:"Open Sans","Noto Sans JP",sans-serif;
  font-weight:800;
  font-size:26px;
  letter-spacing:.22em;
  text-indent:.22em;
  line-height:1;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-mark span{
  display:block;
  font-size:8.5px;
  font-weight:600;
  letter-spacing:.4em;
  text-indent:.4em;
  color:#9aa4bd;
  margin-top:7px;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-cta{
  display:inline-flex;
  align-items:center;
  gap:12px;
  background:linear-gradient(135deg,#ecd8a4,#d8b877 45%,#b8945a);
  color:#16233b !important;
  font-weight:700;
  font-size:15px;
  letter-spacing:.1em;
  padding:16px 48px;
  border-radius:2px;
  box-shadow:0 5px 14px rgba(5,12,25,.35), inset 0 0 0 1px rgba(255,255,255,.35);
  transition:filter .2s, transform .2s;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-cta:hover{
  filter:brightness(1.07);
  transform:translateY(-1px);
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-note{ display:none; }
@media (max-width:767px){
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-line{ font-size:19px; white-space:normal; }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-catch{ font-size:12.5px; }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-cta{ padding:14px 34px; font-size:13.5px; }
}

/* TOP 案4 — 一行コピー特大（金の下線アクセント、ワードマークは控えめ） */
body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-line{
  font-size:44px;
  letter-spacing:.04em;
  padding-bottom:22px;
  background:linear-gradient(90deg, transparent, #b8945a, transparent) center bottom / 220px 2px no-repeat;
}
body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-catch{ font-size:16px; }
body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-mark{ font-size:15px; color:#8a97ab; }
body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-mark span{ display:none; }
@media (max-width:767px){
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-line{ font-size:21px; padding-bottom:16px; background-size:140px 2px; }
}



/* SP専用改行（PC/タブレットでは無効） */
body.logicalte.service .box-mainvisual-01.logicalte .lg-br-sp{ display:none; }
/* タブレット帯（768-1100px）：一行コピーを可変スケールで収める */
@media (max-width:1100px) and (min-width:768px){
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-line{ font-size:clamp(24px, 3.6vw, 40px) !important; }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-catch{ font-size:14px !important; }
}
@media (max-width:767px){
  body.logicalte.service .box-mainvisual-01.logicalte .lg-br-sp{ display:inline; }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-line{ white-space:normal; }
}

/* ---------- lgwm3 ---------- */
body.logicalte.service .box-mainvisual-01.logicalte{ position:relative; overflow:hidden; }
body.logicalte.service .box-mainvisual-01.logicalte .mainvisual-inner{ position:relative; z-index:1; }
body.logicalte.service .box-mainvisual-01.logicalte::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-repeat:no-repeat;
}

/* 透かし 案3 — 右上折れ線×左下レーダー（成長曲線の対角） */
body.logicalte.service .box-mainvisual-01.logicalte::after{
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%20640%20360'%20fill%3D'none'%3E%3Cpath%20d%3D'M20%20320h600M20%20220h600M20%20120h600'%20stroke%3D'rgba%28216%2C184%2C119%2C0.08%29'%20stroke-width%3D'1'/%3E%3Cpath%20d%3D'M20%20300L140%20240L260%20268L380%20160L500%20190L610%2060'%20stroke%3D'rgba%28216%2C184%2C119%2C0.3%29'%20stroke-width%3D'2'/%3E%3Cpath%20d%3D'M586%2058l26%202l-8%2025'%20stroke%3D'rgba%28216%2C184%2C119%2C0.3%29'%20stroke-width%3D'2'%20stroke-linecap%3D'round'/%3E%3Cg%20fill%3D'rgba%28216%2C184%2C119%2C0.4%29'%3E%3Ccircle%20cx%3D'140'%20cy%3D'240'%20r%3D'5'/%3E%3Ccircle%20cx%3D'260'%20cy%3D'268'%20r%3D'5'/%3E%3Ccircle%20cx%3D'380'%20cy%3D'160'%20r%3D'5'/%3E%3Ccircle%20cx%3D'500'%20cy%3D'190'%20r%3D'5'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%20640%20640'%20fill%3D'none'%20stroke-linejoin%3D'round'%3E%3Cpolygon%20points%3D'320%2C40%2077.5%2C180%2077.5%2C460%20320%2C600%20562.5%2C460%20562.5%2C180'%20stroke%3D'rgba%28216%2C184%2C119%2C0.15%29'%20stroke-width%3D'1.5'/%3E%3Cpolygon%20points%3D'320%2C120%20146.8%2C220%20146.8%2C420%20320%2C520%20493.2%2C420%20493.2%2C220'%20stroke%3D'rgba%28216%2C184%2C119%2C0.13%29'%20stroke-width%3D'1.2'/%3E%3Cpolygon%20points%3D'320%2C200%20216.1%2C260%20216.1%2C380%20320%2C440%20423.9%2C380%20423.9%2C260'%20stroke%3D'rgba%28216%2C184%2C119%2C0.11%29'%20stroke-width%3D'1'/%3E%3Cpath%20d%3D'M320%20320L320%2040M320%20320L77.5%20180M320%20320L77.5%20460M320%20320L320%20600M320%20320L562.5%20460M320%20320L562.5%20180'%20stroke%3D'rgba%28216%2C184%2C119%2C0.1%29'%20stroke-width%3D'1'/%3E%3Cpolygon%20points%3D'320%2C70%20164.1%2C230%20129.5%2C430%20320%2C460%20545.2%2C450%20493.2%2C220'%20stroke%3D'rgba%28216%2C184%2C119%2C0.32%29'%20stroke-width%3D'1.8'%20fill%3D'rgba%28216%2C184%2C119%2C0.06%29'/%3E%3Cg%20fill%3D'rgba%28216%2C184%2C119%2C0.4%29'%3E%3Ccircle%20cx%3D'320'%20cy%3D'70'%20r%3D'5'/%3E%3Ccircle%20cx%3D'164.1'%20cy%3D'230'%20r%3D'5'/%3E%3Ccircle%20cx%3D'129.5'%20cy%3D'430'%20r%3D'5'/%3E%3Ccircle%20cx%3D'320'%20cy%3D'460'%20r%3D'5'/%3E%3Ccircle%20cx%3D'545.2'%20cy%3D'450'%20r%3D'5'/%3E%3Ccircle%20cx%3D'493.2'%20cy%3D'220'%20r%3D'5'/%3E%3C/g%3E%3C/svg%3E");
  background-position:right -60px top 30px, left -340px bottom -360px;
  background-size:540px 304px, 760px 760px;
}
@media (max-width:767px){
  body.logicalte.service .box-mainvisual-01.logicalte::after{
    background-position:right -50px top 20px, left -90px bottom -50px;
    background-size:320px 180px, 260px 260px;
  }
}

@media (min-width:1500px){
  body.logicalte.service .box-mainvisual-01.logicalte::after{
    background-position:right -60px top 30px, left -420px bottom -450px;
    background-size:600px 338px, 940px 940px;
  }
}

/* ---------- lgfq1 ---------- */
body.logicalte.service .box-faq-04 dl{
  border:0 !important;
  background:transparent;
}
body.logicalte.service .box-faq-04 dt, body.logicalte.service .box-faq-04 dd{
  font-family:"Noto Sans JP",sans-serif !important;
}
body.logicalte.service .box-faq-04 dt::before{
  font-family:"Open Sans","Noto Sans JP",sans-serif !important;
  font-weight:700 !important;
}
body.logicalte.service .box-faq-04 dd::before{
  font-family:"Open Sans","Noto Sans JP",sans-serif !important;
  font-weight:700 !important;
}

/* FAQ 案1 — ミニマル罫線（面を捨て、金のQ.とヘアラインだけ） */
body.logicalte.service .box-faq-04 dl{
  border-bottom:1px solid #e3e6ec !important;
  margin:0 !important;
}
body.logicalte.service .box-faq-04 dt{
  padding:22px 44px 22px 46px !important;
  position:relative;
  font-size:15.5px !important;
  font-weight:700 !important;
  color:#1c222f !important;
}
body.logicalte.service .box-faq-04 dt::before{
  content:"Q." !important;
  font-size:19px !important;
  color:#a8834a !important;
  position:absolute !important;
  left:6px !important;
  top:21px !important;
  line-height:1.4 !important;
}
body.logicalte.service .box-faq-04 dt::after{
  content:"＋" !important;
  display:block !important;
  position:absolute !important;
  right:8px; top:50%;
  transform:translateY(-50%);
  color:#b8945a !important;
  font-size:17px !important;
  font-weight:400 !important;
  border:0 !important;
  width:auto !important; height:auto !important;
  background:none !important;
}
body.logicalte.service .box-faq-04 dl.open dt::after,
body.logicalte.service .box-faq-04 dt.open::after{ content:"−" !important; }
body.logicalte.service .box-faq-04 dd{
  padding:0 44px 0 46px !important;
  position:relative;
  font-size:14px !important;
  line-height:2 !important;
  color:#4a5160 !important;
}
body.logicalte.service .box-faq-04 dl.is-active dd{ padding-bottom:24px !important; }
body.logicalte.service .box-faq-04 dl.is-active dt::after{ content:"−" !important; }
body.logicalte.service .box-faq-04 dd::before{
  content:"A." !important;
  font-size:19px !important;
  color:#1c2238 !important;
  position:absolute !important;
  left:6px !important;
  top:-2px !important;
  line-height:1.4 !important;
}

/* 文字間隔を少し詰める（ユーザー指定） */
body.logicalte.service .box-faq-04 dt,
body.logicalte.service .box-faq-04 dd{
  letter-spacing:.01em !important;
}

/* ---------- lgsp2 ---------- */
/* 携帯TOP 案2 — 左寄せ金バー（縦バーに沿って左揃え） */
@media (max-width:767px){
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hero{
    align-items:flex-start;
    text-align:left;
    border-left:3px solid #b8945a;
    padding:4px 4% 4px 18px;
    margin:0 5%;
    gap:16px;
  }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-catch{ font-size:12px !important; line-height:1.9; letter-spacing:.06em !important; }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-line{
    font-size:23px !important;
    line-height:1.75 !important;
    padding-bottom:16px !important;
    background-position:left bottom !important;
    background-size:110px 2px !important;
  }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-mark{ font-size:13px !important; text-indent:0 !important; }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-hr-mark span{ text-indent:0 !important; }
  body.logicalte.service .box-mainvisual-01.logicalte .lg-cta{
    justify-content:center;
    align-self:stretch;
    white-space:nowrap;
    padding:15px 10px !important;
  }
}

/* ---------- lgbody ---------- */
/* ============================================================
   LOGICALTE 本文（logicalte.jp転用セクション）
   ネイビー×ゴールドのデザイン言語・ゴシック基本
   ============================================================ */
body.logicalte.service .lg-sec{
  padding:70px 0 76px;
  font-family:"Noto Sans JP",sans-serif;
}
body.logicalte.service .lg-sec .wrapper{
  max-width:1100px;
  margin:0 auto;
  padding:0 4%;
}
body.logicalte.service .lg-kicker{
  display:block;
  text-align:center;
  font-family:"Open Sans","Noto Sans JP",sans-serif;
  font-size:11px;
  font-weight:600;
  letter-spacing:.4em;
  text-indent:.4em;
  color:#b8945a;
  margin-bottom:10px;
}
body.logicalte.service .lg-title{
  text-align:center;
  font-size:28px;
  font-weight:700;
  color:#1c222f;
  letter-spacing:.06em;
  margin:0 0 14px;
  position:relative;
  padding-bottom:22px;
}
body.logicalte.service .lg-title::after{
  content:"";
  position:absolute;
  bottom:0; left:50%;
  transform:translateX(-50%);
  width:56px; height:2px;
  background:linear-gradient(90deg, transparent, #b8945a, transparent);
}
body.logicalte.service .lg-lead{
  text-align:center;
  font-size:14.5px;
  line-height:2.1;
  color:#2a2e36;
  margin:18px 0 0;
}

/* ---- 課題 ---- */
body.logicalte.service .lg-problem{ background:#f7f8fa; }
body.logicalte.service .lg-problem-list{
  list-style:none;
  margin:40px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
body.logicalte.service .lg-problem-list li{
  background:#fff;
  border:1px solid rgba(184,148,90,.45);
  padding:26px 22px 24px;
  margin:0;
}
body.logicalte.service .lg-pb-num{
  display:inline-block;
  font-size:11px;
  font-weight:600;
  letter-spacing:.18em;
  color:#a8834a;
  border-bottom:2px solid #b8945a;
  padding-bottom:6px;
  margin-bottom:14px;
}
body.logicalte.service .lg-pb-num b{
  font-family:"Open Sans","Noto Sans JP",sans-serif;
  font-size:17px;
  margin-left:4px;
}
body.logicalte.service .lg-problem-list h3{
  font-size:15.5px;
  font-weight:700;
  color:#1c222f;
  line-height:1.8;
  margin:0 0 10px;
}
body.logicalte.service .lg-problem-list p{
  font-size:13px;
  line-height:2;
  color:#6c7482;
  margin:0;
}

/* ---- 解決 ---- */
body.logicalte.service .lg-solution{ background:#fff; }
body.logicalte.service .lg-sol-block{ margin-top:44px; }
body.logicalte.service .lg-sol-head{
  font-size:20px;
  font-weight:700;
  color:#1c222f;
  border-left:3px solid #b8945a;
  padding:4px 0 4px 16px;
  margin:0 0 20px;
  display:flex;
  align-items:center;
  gap:12px;
}
body.logicalte.service .lg-sol-head em{
  font-style:normal;
  font-family:"Open Sans","Noto Sans JP",sans-serif;
  font-weight:700;
  font-size:26px;
  color:#B8945A;
  line-height:1;
}
body.logicalte.service .lg-sol-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}
body.logicalte.service .lg-sol-grid > div{
  background:#fafbfc;
  border:1px solid #e9ebf0;
  border-top:2px solid #b8945a;
  padding:20px 22px;
}
body.logicalte.service .lg-sol-grid h4{
  font-size:15.5px;
  font-weight:700;
  color:#1c222f;
  margin:0 0 10px;
}
body.logicalte.service .lg-sol-grid p{
  font-size:13px;
  line-height:2;
  color:#4a5160;
  margin:0;
}

/* ---- サポート体制 ---- */
body.logicalte.service .lg-support{ background:#1c2238; }
body.logicalte.service .lg-support .lg-title{ color:#fff; }
body.logicalte.service .lg-support .lg-lead{ color:#cfd5e2; }
body.logicalte.service .lg-support-list{
  list-style:none;
  margin:38px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
body.logicalte.service .lg-support-list li{
  border:1px solid rgba(216,184,119,.45);
  padding:26px 22px 24px;
  margin:0;
  text-align:center;
}
body.logicalte.service .lg-support-list em{
  font-style:normal;
  display:block;
  font-family:"Open Sans","Noto Sans JP",sans-serif;
  font-weight:700;
  font-size:22px;
  color:#d8b877;
  margin-bottom:12px;
}
body.logicalte.service .lg-support-list h3{
  font-size:15.5px;
  font-weight:700;
  color:#fff;
  margin:0 0 10px;
}
body.logicalte.service .lg-support-list p{
  font-size:12.5px;
  line-height:2;
  color:#b9c1d2;
  margin:0;
  text-align:left;
}

@media (max-width:767px){
  body.logicalte.service .lg-sec{ padding:52px 0 56px; }
  body.logicalte.service .lg-title{ font-size:22px; }
  body.logicalte.service .lg-problem-list,
  body.logicalte.service .lg-sol-grid,
  body.logicalte.service .lg-support-list{ grid-template-columns:1fr; gap:16px; }
  body.logicalte.service .lg-sol-head{ font-size:17px; }
}

/* ---------- lgfl1 ---------- */
body.logicalte.service .box-flow-01{ counter-reset:lgstep; }
body.logicalte.service .box-flow-01 > li{ counter-increment:lgstep; }
body.logicalte.service .box-flow-01 > li::before, body.logicalte.service .box-flow-01 > li::after,
body.logicalte.service .box-flow-01 > li .flow-inner::before, body.logicalte.service .box-flow-01 > li .flow-inner::after,
body.logicalte.service .box-flow-01 > li .flow-img::before, body.logicalte.service .box-flow-01 > li .flow-img::after,
body.logicalte.service .box-flow-01 > li .flow-title::after{ display:none !important; content:none !important; }
body.logicalte.service .box-flow-01 > li .flow-img img{ display:none !important; }
body.logicalte.service .box-flow-01 > li .flow-img{
  background-repeat:no-repeat;
  background-position:center;
}
body.logicalte.service .box-flow-01 > li .flow-title{
  font-family:"Noto Sans JP",sans-serif !important;
  color:#1c222f !important;
}
body.logicalte.service .box-flow-01 > li .flow-text p{
  font-family:"Noto Sans JP",sans-serif !important;
  color:#4a5160 !important;
  font-size:13px !important;
  line-height:2 !important;
}
body.logicalte.service .box-flow-01 > li:nth-child(1) .flow-img{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%2048%2048'%20fill%3D'none'%20stroke%3D'%23b8945a'%20stroke-width%3D'2.4'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M24%2012c-3-2.5-8-3.5-14-3.5v27c6%200%2011%201%2014%203.5%203-2.5%208-3.5%2014-3.5v-27c-6%200-11%201-14%203.5z'/%3E%3Cpath%20d%3D'M24%2012v27'/%3E%3C/svg%3E"); }
body.logicalte.service .box-flow-01 > li:nth-child(2) .flow-img{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%2048%2048'%20fill%3D'none'%20stroke%3D'%23b8945a'%20stroke-width%3D'2.4'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8%2010h20v14H16l-6%205v-5H8z'/%3E%3Cpath%20d%3D'M32%2020h8v12h-3v4l-5-4h-8v-5'/%3E%3C/svg%3E"); }
body.logicalte.service .box-flow-01 > li:nth-child(3) .flow-img{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%2048%2048'%20fill%3D'none'%20stroke%3D'%23b8945a'%20stroke-width%3D'2.4'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M13%206h16l7%207v29H13z'/%3E%3Cpath%20d%3D'M29%206v7h7'/%3E%3Cpath%20d%3D'M19%2028l4%204%207-8'/%3E%3C/svg%3E"); }
body.logicalte.service .box-flow-01 > li:nth-child(4) .flow-img{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%2048%2048'%20fill%3D'none'%20stroke%3D'%23b8945a'%20stroke-width%3D'2.4'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'24'%20cy%3D'24'%20r%3D'16'/%3E%3Cpath%20d%3D'M18%2016l6%208%206-8M24%2024v9M19%2026h10M19%2030h10'/%3E%3C/svg%3E"); }
body.logicalte.service .box-flow-01 > li:nth-child(5) .flow-img{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%2048%2048'%20fill%3D'none'%20stroke%3D'%23b8945a'%20stroke-width%3D'2.4'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'24'%20cy%3D'24'%20r%3D'6'/%3E%3Cpath%20d%3D'M24%208v5M24%2035v5M8%2024h5M35%2024h5M12.7%2012.7l3.5%203.5M31.8%2031.8l3.5%203.5M35.3%2012.7l-3.5%203.5M16.2%2031.8l-3.5%203.5'/%3E%3C/svg%3E"); }
body.logicalte.service .box-flow-01 > li:nth-child(6) .flow-img{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%2048%2048'%20fill%3D'none'%20stroke%3D'%23b8945a'%20stroke-width%3D'2.4'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M10%2038l2-8%2020-20%206%206-20%2020z'/%3E%3Cpath%20d%3D'M28%2014l6%206'/%3E%3Cpath%20d%3D'M10%2038l8-2'/%3E%3C/svg%3E"); }
body.logicalte.service .box-flow-01 > li:nth-child(7) .flow-img{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%2048%2048'%20fill%3D'none'%20stroke%3D'%23b8945a'%20stroke-width%3D'2.4'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M8%2010h32M12%2010h24v18H12z'/%3E%3Cpath%20d%3D'M17%2022l5-5%204%203%205-6'/%3E%3Cpath%20d%3D'M24%2028v4M18%2040l6-8%206%208'/%3E%3C/svg%3E"); }
body.logicalte.service .box-flow-01 > li:nth-child(8) .flow-img{ background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%2048%2048'%20fill%3D'none'%20stroke%3D'%23b8945a'%20stroke-width%3D'2.4'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M38%2020a15%2015%200%200%200-27-5M10%2028a15%2015%200%200%200%2027%205'/%3E%3Cpath%20d%3D'M11%208v8h8M37%2040v-8h-8'/%3E%3C/svg%3E"); }
/* サービスの流れ 案1 — 縦タイムライン（金の縦線×アイコン円ノード） */
body.logicalte.service .box-flow-01{
  display:block !important;
  position:relative;
  max-width:760px;
  margin:0 auto;
  padding-left:0 !important;
}
body.logicalte.service .box-flow-01::before{
  content:"";
  position:absolute;
  left:33px; top:20px; bottom:20px;
  width:1px;
  background:rgba(184,148,90,.5);
}
body.logicalte.service .box-flow-01 > li{
  width:100% !important;
  margin:0 0 34px !important;
  position:relative;
}
body.logicalte.service .box-flow-01 > li .flow-inner{
  display:grid;
  grid-template-columns:68px 1fr;
  column-gap:26px;
}
body.logicalte.service .box-flow-01 > li .flow-img{
  grid-row:1 / span 2;
  width:68px !important; height:68px !important;
  border-radius:50%;
  background-color:#fff;
  border:1px solid rgba(184,148,90,.6);
  background-size:34px 34px;
  position:relative; z-index:1;
  margin:0 !important;
}
body.logicalte.service .box-flow-01 > li .flow-title{ grid-column:2; }
body.logicalte.service .box-flow-01 > li .flow-text{ grid-column:2; }
body.logicalte.service .box-flow-01 > li .flow-title{
  font-size:17px !important;
  font-weight:700 !important;
  margin:4px 0 8px !important;
  text-align:left !important;
}
body.logicalte.service .box-flow-01 > li .flow-title br{ display:none; }
body.logicalte.service .box-flow-01 > li .flow-title::before{
  content:"STEP " counter(lgstep, decimal-leading-zero);
  display:block;
  font-family:"Open Sans","Noto Sans JP",sans-serif;
  font-size:11px;
  letter-spacing:.28em;
  color:#b8945a;
  font-weight:600;
  margin-bottom:4px;
}
body.logicalte.service .box-flow-01 > li .flow-text{ border-bottom:1px solid #e9ebf0; padding-bottom:18px; }

/* ---------- inline ---------- */
html{background:#fff; color-scheme:light;} .grecaptcha-badge,[class*="grecaptcha"]{display:none !important;}


/* ============================================================
   英字セクション見出し（unit-title-08）を行書系からゴシックへ統一
   ページ上部の「SERVICE MENU / サービスメニュー」等も対象
   ============================================================ */
h1.unit-title-08, h2.unit-title-08, p.unit-title-08,
h1.unit-title-08 span, h2.unit-title-08 span, p.unit-title-08 span,
h1.unit-title-08::after, h2.unit-title-08::after, p.unit-title-08::after,
.unit-title-08, .unit-title-08 span, .unit-title-08::after{
  font-family:"Open Sans","Noto Sans JP",sans-serif !important;
}


/* ---- 見出しの太さを統一（SERVICE MENU=500 / SUB MENU=600 と不揃いだった） ---- */
h1.unit-title-08, h2.unit-title-08, p.unit-title-08,
h1.unit-title-08 span, h2.unit-title-08 span, p.unit-title-08 span{
  font-weight:600 !important;
}

/* ---- 導入カードの見出し（unit-title-13）も行書体→ゴシックに ---- */
h2.unit-title-13, .unit-title-13, .unit-title-13 span{
  font-family:"Open Sans","Noto Sans JP",sans-serif !important;
  font-weight:700 !important;
}


/* 携帯: 下部CVボタンの幅をTOPの6ボタングリッド(左右10px)と統一 */
@media screen and (max-width:768px){
  .unit-fix-07:not(.recruit){ left:10px !important; right:10px !important; }
}
