/* グローバルナビ・フッター・会社概要の見た目（2026-10-01 CEO 指示・全サイトで統一）
   見本 = apps/elearnig/templates/shared/company/_header.html / _footer.html / _profile.html（クラス名 uah- / uaf- / uap-） */

/* ===== グローバルナビ ===== */
.uah-skip{position:absolute;left:12px;top:-60px;z-index:10001;background:#1a1a1a;color:#fff;padding:8px 14px;font-size:13px;text-decoration:none}
.uah-skip:focus{top:8px}
.uah{position:sticky;top:0;z-index:1000;border-top:3px solid var(--uah-accent);font-family:var(--uac-font,'Noto Sans JP',sans-serif);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,.97);border-bottom:1px solid #E6E2DC;--uah-fg:#3d3d3d;--uah-fg-strong:#1a1a1a;--uah-panel:#fff;--uah-line:#F0EDE8}
.uah *{box-sizing:border-box}
.uah-in{max-width:1200px;margin:0 auto;height:68px;padding:0 32px;display:flex;align-items:center;gap:28px;position:relative}
.uah-logo{display:flex;align-items:center;gap:10px;flex-shrink:0;line-height:1;text-decoration:none;color:#1a1a1a}
.uah-nav{flex:1;display:flex;justify-content:center}
.uah-list{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.uah-list li{margin:0;padding:0;list-style:none}
.uah-list a{position:relative;display:block;padding:10px 12px;font-size:14px;font-weight:500;color:var(--uah-fg);text-decoration:none;letter-spacing:.04em;white-space:nowrap;line-height:1.5}
.uah-list a::after{content:'';position:absolute;left:12px;right:12px;bottom:2px;height:2px;background:var(--uah-accent);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.uah-list a:hover{color:var(--uah-fg-strong)}
.uah-list a:hover::after,.uah-list a[aria-current="page"]::after{transform:scaleX(1)}
.uah-list a[aria-current="page"]{color:var(--uah-fg-strong);font-weight:700}
.uah-login-sp{display:none!important}
.uah-actions{display:flex;align-items:center;gap:18px;flex-shrink:0;margin-left:auto}
.uah-logout{margin:0;display:inline}
.uah-login{font-size:13px;color:var(--uah-fg);text-decoration:none;white-space:nowrap;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;line-height:1.5}
.uah-login:hover{color:var(--uah-fg-strong);text-decoration:underline}
.uah-cta{display:inline-flex;align-items:center;height:40px;padding:0 20px;background:var(--uah-accent);color:#fff!important;font-size:14px;font-weight:700;text-decoration:none;border-radius:2px;white-space:nowrap;transition:filter .2s;line-height:1}
.uah-cta:hover{filter:brightness(.88)}
.uah-toggle{display:none;width:40px;height:40px;position:relative;background:none;border:none;padding:0;cursor:pointer}
.uah-toggle span{position:absolute;left:9px;width:22px;height:2px;background:var(--uah-fg-strong);transition:transform .25s,opacity .25s}
.uah-toggle span:nth-child(1){top:13px}.uah-toggle span:nth-child(2){top:19px}.uah-toggle span:nth-child(3){top:25px}
.uah-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.uah-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.uah-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.uah a:focus-visible,.uah button:focus-visible{outline:2px solid var(--uah-accent);outline-offset:2px}
#main-content:focus{outline:none}
@media (max-width:1100px){.uah-in{gap:16px;padding:0 20px}.uah-list a{padding:10px 8px;font-size:13px}}
@media (max-width:960px){
  .uah-in{padding:0 16px;gap:12px;height:60px;position:static}
  .uah-nav{position:absolute;top:100%;left:0;right:0;display:none;background:var(--uah-panel);box-shadow:0 12px 24px rgba(0,0,0,.12)}
  .uah-nav.is-open{display:block}
  .uah-list{flex-direction:column;gap:0;padding:8px 16px 16px}
  .uah-list a,.uah-list button{display:block;width:100%;text-align:left;padding:14px 4px;font-size:16px;border-bottom:1px solid var(--uah-line)}
  .uah-list a::after{display:none}
  .uah-list a[aria-current="page"]{color:var(--uah-accent)}
  .uah-login-sp{display:block!important}
  .uah-actions>.uah-login,.uah-actions>.uah-logout{display:none}
  .uah-actions{gap:8px}
  .uah-cta{height:36px;padding:0 14px;font-size:13px}
  .uah-toggle{display:block}
}

/* ===== フッター ===== */
.uaf{background:#F5F2ED;color:#3d3d3d;border-top:1px solid #E6E2DC;font-family:var(--uac-font,'Noto Sans JP',sans-serif);margin:0;text-align:left}
.uaf *{box-sizing:border-box}
.uaf-in{max-width:1200px;margin:0 auto;padding:56px 32px 28px}
.uaf-cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid #DDD7CE}
.uaf-h{font-size:13px;font-weight:700;color:#1a1a1a;letter-spacing:.08em;margin:0 0 14px;padding-left:10px;border-left:3px solid var(--uaf-accent);line-height:1.3}
.uaf ul{list-style:none;margin:0;padding:0}
.uaf li{margin:0;padding:0;list-style:none}
.uaf-col a{display:block;padding:5px 0;font-size:13px;line-height:1.6;color:#4a4a4a;text-decoration:none}
.uaf-col a:hover{color:var(--uaf-accent);text-decoration:underline}
.uaf-col a span{display:block;font-size:11px;color:#8a8580}
.uaf-copy{margin:0;padding-top:24px;font-size:11px;color:#8a8580}
@media (max-width:768px){.uaf-in{padding:40px 16px 24px}.uaf-cols{grid-template-columns:1fr;gap:28px}}

/* ===== 会社概要ページ ===== */
.uap-page{background:#fff;padding:56px 24px 16px;font-family:var(--uac-font,'Noto Sans JP',sans-serif)}
.uap-page-head{max-width:900px;margin:0 auto 48px;text-align:left}
.uap-eyebrow{margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--uap-accent,#C8272E)}
.uap-title{margin:0 0 12px;font-size:clamp(28px,4vw,38px);font-weight:900;color:#1a1a1a;line-height:1.3}
.uap-lead{margin:0;font-size:15px;color:#3d3d3d;line-height:1.8}
.uap{margin:0 auto 64px;max-width:900px;font-family:var(--uac-font,'Noto Sans JP',sans-serif);text-align:left;color:#1a1a1a}
.uap *{box-sizing:border-box}
.uap-h{font-size:22px;font-weight:800;color:#1a1a1a;margin:0 0 24px;padding-bottom:14px;border-bottom:2px solid #1a1a1a;position:relative;letter-spacing:.04em;line-height:1.4}
.uap-h::after{content:'';position:absolute;left:0;bottom:-2px;width:72px;height:2px;background:var(--uap-accent,#C8272E)}
.uap-table{margin:0}
.uap-table>div{display:grid;grid-template-columns:150px 1fr;border-bottom:1px solid #E6E2DC}
.uap-table dt{padding:18px 16px;font-size:14px;font-weight:700;color:#595959;background:#FAF8F5;margin:0}
.uap-table dd{padding:18px 20px;font-size:15px;color:#1a1a1a;line-height:1.8;margin:0;background:#fff}
.uap-table dd a{color:#1a1a1a;text-decoration:none}
.uap-biz{display:block}
.uap-ceo{display:grid;grid-template-columns:220px 1fr;gap:40px;align-items:start}
.uap-photo{margin:0}
.uap-photo img{width:100%;height:auto;display:block;border-radius:2px}
.uap-photo figcaption{margin-top:10px;font-size:13px;color:#595959;text-align:center}
.uap-text p{margin:0 0 14px;font-size:15px;line-height:2;color:#3d3d3d}
.uap-book{display:flex;gap:18px;align-items:center;margin-top:24px;padding:16px;border:1px solid #E6E2DC;border-radius:4px;background:#FAF8F5;color:#1a1a1a;text-decoration:none}
.uap-book img{width:96px;height:auto;flex:none;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.uap-book-body{display:flex;flex-direction:column;gap:4px}
.uap-book-lead{font-size:13px;font-weight:700;color:var(--uap-accent,#C8272E)}
.uap-book-title{font-size:15px;font-weight:800;line-height:1.6}
.uap-book-sub{font-size:12px;color:#595959;line-height:1.6}
.uap-book-btn{margin-top:6px;font-size:14px;font-weight:700;color:var(--uap-accent,#C8272E)}
.uap-book:hover .uap-book-btn{text-decoration:underline}
@media (max-width:768px){.uap-page{padding:40px 16px 8px}.uap-table>div{grid-template-columns:96px 1fr}.uap-table dt{padding:14px 10px;font-size:13px}.uap-table dd{padding:14px 12px;font-size:14px}.uap-ceo{grid-template-columns:1fr;gap:20px}.uap-photo{max-width:200px}}

/* ===== VibeGuard だけの部分（ロゴ・フォント。3サイト統一フォントに合わせる） ===== */
:root{--uac-font:'BIZ UDPGothic','Zen Kaku Gothic New','Noto Sans JP',sans-serif}
.uah-logo{font-family:'Zen Kaku Gothic New','BIZ UDPGothic',sans-serif;font-weight:900;font-size:20px;letter-spacing:.01em;color:#0E1B2E}
.uah-logo-mark{width:26px;height:26px;color:#2E6BFF;flex:none}
.uah-logo-accent{color:#2E6BFF}
.uap-title,.uap-h{font-family:'Zen Kaku Gothic New','BIZ UDPGothic',sans-serif}
#checks,#faq{scroll-margin-top:72px}

/* システム管理「ブランド画像」で登録したロゴ（2026-10-16）。高さはノビルゲートの共通ヘッダーと同じ 44px／スマホ 34px */
.uah-logo-img{height:44px;width:auto;max-width:260px;display:block;object-fit:contain}
@media (max-width:960px){.uah-logo-img{height:34px;max-width:200px}}
