/* aicl2-frame.css ＝ 最小フレームワーク（自動生成 by build.py）。
   各セクションのコンポーネントCSSは各wp:htmlブロックの<style>に同梱されています。 */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Sora:wght@500;600;700&display=swap');
:root{--c-bg:#ffffff;
  --c-bg-alt:#f3f7fc;
  --c-bg-soft:#eaf1fb;
  --c-ink:#0c1b2e;
  --c-ink-2:#4d5d72;
  --c-line:#e2e9f2;
  --c-brand:#1a5cdb;
  --c-brand-dark:#1444a8;
  --c-brand-soft:#e9f1fe;
  --c-navy:#0b1f3a;
  --c-navy-2:#0f2a4d;
  --radius:16px;
  --radius-sm:10px;
  --shadow:0 18px 50px -22px rgba(12,27,46,.28);
  --shadow-sm:0 8px 24px -14px rgba(12,27,46,.30);
  --nav-h:74px;
  --maxw:1160px;
  --font-jp:"Noto Sans JP",system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  --font-en:"Sora",var(--font-jp);}
.l-header,#header,.c-headerBar,
.l-fixHeader,#fix_header,.l-fixHeaderBg,.l-fixHeader__inner,
#sp_menu,.l-header__menuBtn,.l-header__customBtn,.p-spMenu,.p-spMenu__menu,
.p-mainVisual,#mainvisual,.c-mainVisual,
.l-sidebar,#sidebar,.p-sidebar,.c-widgetArea--sidebar,
.l-footer,#footer,.c-fixBtns,.p-fixCta,.c-fixCta,
.c-gotop,#page_top,#pagetop,.p-breadcrumb,.c-pageTitle,.p-pageTitle,
.c-postThumb,.l-footer__widgets,.p-postList{display:none !important;}
html,body{overflow-x:hidden !important;}
body{margin:0 !important; padding:0 !important; background:var(--c-bg) !important;}
.l-container,.l-content,.l-main,#main,.l-mainArea,.l-mainContent,
.l-mainContent__inner,.post_content,.l-article,.c-content,.l-articleBody,
.p-postContent,article.p-post,article{max-width:none !important; width:100% !important; margin:0 !important;
  padding:0 !important; float:none !important; border:0 !important; background:transparent !important;}
.l-container{display:block !important;}
.acx,.acx *{box-sizing:border-box;}
.acx{font-family:var(--font-jp); color:var(--c-ink);
  font-size:16px; line-height:1.8; letter-spacing:.01em;
  -webkit-font-smoothing:antialiased;}
.acx img{max-width:100%; display:block;}
.acx a{color:var(--c-brand); text-decoration:none; transition:.2s;}
.acx a:hover{color:var(--c-brand-dark);}
.acx p{margin:0 0 1em;}
.acx h1,.acx h2,.acx h3,.acx h4{margin:0; color:var(--c-ink); font-weight:700; line-height:1.42; letter-spacing:.01em;}
.acx-nav{position:fixed; inset:0 0 auto 0; z-index:9000; height:var(--nav-h);
  background:rgba(255,255,255,.92); backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid var(--c-line);}
.acx-nav__inner{max-width:1240px; height:100%; margin:0 auto; padding:0 24px;
  display:flex; align-items:center; justify-content:space-between; gap:24px;}
.acx-logo{display:inline-flex; align-items:center; gap:10px; font-weight:900;
  font-size:1.18rem; color:var(--c-ink) !important; letter-spacing:.01em;}
.acx-logo:hover{color:var(--c-ink) !important;}
.acx-logo__mark{width:30px; height:30px; border-radius:9px;
  background:linear-gradient(135deg,var(--c-brand),#3f86ff);
  display:inline-flex; align-items:center; justify-content:center; color:#fff; font-family:var(--font-en);
  font-weight:700; font-size:.95rem; box-shadow:0 6px 14px -6px rgba(26,92,219,.8);}
.acx-logo small{display:block; font-size:.6rem; font-weight:500; color:var(--c-ink-2); letter-spacing:.18em;}
.acx-logo__img{height:34px; width:auto; display:block;}
.acx-footer .acx-logo__img{filter:brightness(0) invert(1);}
.acx-nav__links{display:flex; align-items:center; gap:30px;}
.acx-nav__links a{font-size:.93rem; font-weight:500; color:var(--c-ink) !important; position:relative;}
.acx-nav__links a:not(.acx-nav__cta)::after{content:""; position:absolute; left:0; bottom:-7px;
  width:0; height:2px; background:var(--c-brand); transition:.25s; border-radius:2px;}
.acx-nav__links a:not(.acx-nav__cta):hover{color:var(--c-brand) !important;}
.acx-nav__links a:not(.acx-nav__cta):hover::after,
.acx-nav__links a.is-current:not(.acx-nav__cta)::after{width:100%;}
.acx-nav__links a.is-current:not(.acx-nav__cta){color:var(--c-brand) !important;}
.acx-nav__cta{background:var(--c-brand); color:#fff !important; padding:11px 22px; border-radius:999px;
  font-weight:700 !important; box-shadow:0 10px 22px -12px rgba(26,92,219,.8);}
.acx-nav__cta:hover{background:var(--c-brand-dark); color:#fff !important;}
.acx-burger{display:none; width:44px; height:44px; border:0; background:transparent; cursor:pointer;
  flex-direction:column; gap:5px; align-items:center; justify-content:center;}
.acx-burger span{width:24px; height:2px; background:var(--c-ink); border-radius:2px; transition:.25s;}
body.acx-menu-open .acx-burger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
body.acx-menu-open .acx-burger span:nth-child(2){opacity:0;}
body.acx-menu-open .acx-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.acx-footer__brand .acx-logo{color:#fff !important;}
.acx-reveal{opacity:0; transform:translateY(22px); transition:opacity .7s ease, transform .7s ease;}
.acx-reveal.is-in{opacity:1; transform:none;}
html.ss .acx-reveal{opacity:1 !important; transform:none !important;}
html.ss *,html.ss *::before,html.ss *::after{animation:none !important; transition:none !important;}
html.ss .s3d-hero{height:760px !important; min-height:760px !important;}
@media(max-width:760px){
.acx-burger{display:flex;}
.acx-nav__links{position:fixed; inset:var(--nav-h) 0 auto 0; flex-direction:column; align-items:stretch; gap:0;
    background:#fff; border-bottom:1px solid var(--c-line); padding:10px 18px 22px;
    transform:translateY(-12px); opacity:0; pointer-events:none; transition:.25s; box-shadow:var(--shadow-sm);}
body.acx-menu-open .acx-nav__links{transform:none; opacity:1; pointer-events:auto;}
.acx-nav__links a{padding:14px 6px; border-bottom:1px solid var(--c-line);}
.acx-nav__links a:not(.acx-nav__cta)::after{display:none;}
.acx-nav__cta{text-align:center; margin-top:12px;}
}
