/* ===== coletlab-tokens ===== */
:root{--color-bg-primary:#FAF9F7;--color-bg-surface:#FFFFFF;--color-bg-elevated:#EAF3F1;--color-bg-base:#FFFFFF;--color-bg-dark-primary:#0A1414;--color-bg-dark-surface:#14201F;--color-bg-dark-elevated:#1E2D2C;--color-text-primary:#1C1F23;--color-text-secondary:#4A4E54;--color-text-muted:#7C8186;--color-text-on-brand:#FFFFFF;--color-text-on-accent:#FFFFFF;--color-text-dark-primary:#F4FAF9;--color-text-dark-secondary:#B8C4C2;--color-text-dark-muted:#6B7878;--color-brand:#067B7B;--color-brand-100:#D9EFEF;--color-brand-300:#5BAEAE;--color-brand-500:#067B7B;--color-brand-700:#054F4F;--color-brand-900:#022F2F;--color-accent:#C9885F;--color-accent-100:#F3E6DA;--color-accent-300:#DDB293;--color-accent-500:#C9885F;--color-accent-700:#9E6743;--color-accent-900:#5E3D27;--color-intelligence:#067B7B;--color-intelligence-100:#D9EFEF;--color-intelligence-300:#5BAEAE;--color-intelligence-500:#067B7B;--color-intelligence-700:#054F4F;--color-intelligence-900:#022F2F;--color-empathy:#D98A7A;--color-empathy-100:#F7E7E2;--color-empathy-300:#E5A99B;--color-empathy-500:#D98A7A;--color-empathy-700:#A65142;--color-empathy-900:#5C2E26;--color-action:#D99A4E;--color-action-100:#F7ECD7;--color-action-300:#E6C188;--color-action-500:#D99A4E;--color-action-700:#8C6420;--color-action-900:#4F3914;--color-accent-intelligence:var(--color-intelligence);--color-accent-empathy:var(--color-empathy);--color-accent-action:var(--color-action);--color-border-subtle:rgba(28, 31, 35, 0.10);--color-border-default:rgba(28, 31, 35, 0.18);--color-border-strong:rgba(28, 31, 35, 0.30);--color-border-brand:rgba(6, 123, 123, 0.45);--color-border-accent:rgba(201, 136, 95, 0.45);--color-border-dark-subtle:rgba(255, 255, 255, 0.08);--color-border-dark-default:rgba(255, 255, 255, 0.14);--color-border-dark-strong:rgba(255, 255, 255, 0.24);--color-glass-subtle:rgba(28, 31, 35, 0.03);--color-glass-default:rgba(28, 31, 35, 0.05);--color-glass-strong:rgba(28, 31, 35, 0.09);--color-glass-brand:rgba(6, 123, 123, 0.06);--color-glass-accent:rgba(201, 136, 95, 0.07);--color-decor-bracket:#067B7B;--color-decor-grid:rgba(28, 31, 35, 0.08);--color-decor-hairline:rgba(28, 31, 35, 0.22);--bracket-size:14px;--bracket-thickness:1.5px;--bracket-inset:10px;--color-glass-dark-subtle:rgba(255, 255, 255, 0.04);--color-glass-dark-default:rgba(255, 255, 255, 0.06);--color-glass-dark-brand:rgba(91, 174, 174, 0.10);--font-sans-jp:"Noto Sans JP","Hiragino Sans","Hiragino Kaku Gothic ProN","Helvetica Neue",Arial,sans-serif;--font-sans-latin:"Noto Sans JP","Hiragino Sans","Hiragino Kaku Gothic ProN","Helvetica Neue",Arial,sans-serif;--font-body-jp:"Noto Sans JP","Hiragino Sans","Hiragino Kaku Gothic ProN","Helvetica Neue",Arial,sans-serif;--font-serif-jp:"Shippori Mincho","Hiragino Mincho ProN","Yu Mincho","YuMincho",serif;--font-serif-latin:"Playfair Display",Georgia,"Times New Roman",serif;--font-mono:"JetBrains Mono","SF Mono",Consolas,monospace;--font-en:var(--font-serif-latin);--fs-xs:0.75rem;--fs-sm:0.875rem;--fs-base:1rem;--fs-md:1.0625rem;--fs-lg:1.125rem;--fs-xl:1.25rem;--fs-2xl:1.5rem;--fs-3xl:1.875rem;--fs-4xl:2.25rem;--fs-5xl:3rem;--fs-6xl:3.75rem;--fs-7xl:4.5rem;--fs-8xl:6rem;--fs-display-lg:clamp(2.5rem, 6.5vw, 5.5rem);--fs-display-md:clamp(2rem, 5vw, 4.5rem);--lh-tight:1.15;--lh-snug:1.35;--lh-normal:1.55;--lh-relaxed:1.7;--lh-loose:1.85;--ls-tighter:-0.02em;--ls-tight:-0.01em;--ls-normal:0;--ls-wide:0.02em;--ls-wider:0.05em;--ls-widest:0.1em;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--fw-black:900;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--space-10:8rem;--space-11:12rem;--radius-none:0;--radius-sm:0.125rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 rgba(28, 31, 35, 0.05);--shadow-md:0 2px 8px -2px rgba(28, 31, 35, 0.07);--shadow-lg:0 6px 20px -8px rgba(28, 31, 35, 0.10);--shadow-xl:0 12px 32px -12px rgba(28, 31, 35, 0.12);--shadow-glow-brand:0 1px 2px 0 rgba(28, 31, 35, 0.06);--shadow-glow-accent:0 1px 2px 0 rgba(28, 31, 35, 0.06);--shadow-inner-subtle:inset 0 1px 0 0 rgba(255, 255, 255, 0.5);--blur-sm:8px;--blur-md:16px;--blur-lg:32px;--duration-instant:100ms;--duration-fast:200ms;--duration-base:300ms;--duration-slow:600ms;--duration-slowest:1200ms;--ease-out-expo:cubic-bezier(0.16, 1, 0.3, 1);--ease-in-out-quart:cubic-bezier(0.76, 0, 0.24, 1);--ease-spring:cubic-bezier(0.34, 1.56, 0.64, 1);--container-narrow:720px;--container-default:1200px;--container-wide:1440px;--section-py-mobile:4rem;--section-py-desktop:8rem;--header-height:64px;--z-behind:-1;--z-base:0;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-header:500;--z-overlay:800;--z-modal:900;--z-toast:1000}
/* ===== coletlab-base ===== */
*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:var(--header-height,64px);overflow-x:clip}.anchor-sentinel{display:block;height:0;scroll-margin-top:0;pointer-events:none}body{font-family:var(--font-sans-jp);font-size:var(--fs-base);line-height:var(--lh-loose);color:var(--color-text-primary);background:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip;min-height:100vh}main{--color-bg-primary:#FAF9F7;--color-bg-surface:#FFFFFF;--color-bg-elevated:#EAF3F1;--color-bg-base:#FFFFFF;background:var(--color-bg-primary)}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif-jp);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);color:var(--color-text-primary)}a{color:inherit;text-decoration:none;transition:color var(--duration-fast) var(--ease-out-expo)}a:hover{color:var(--color-brand)}img,picture,svg{max-width:100%;height:auto;display:block}embed,iframe,object,pre,table,video{max-width:100%}pre{overflow-x:auto;-webkit-overflow-scrolling:touch}button{font:inherit;cursor:pointer;border:none;background:0 0;color:inherit}ol,ul{list-style:none}.font-latin{font-family:var(--font-sans-latin)}.font-mono{font-family:var(--font-mono)}:focus{outline:0}:focus-visible{outline:2px solid var(--color-brand);outline-offset:4px;border-radius:var(--radius-sm)}::selection{background:var(--color-brand);color:var(--color-text-on-brand)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:var(--color-bg-elevated);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-brand)}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.font-serif-jp{font-family:var(--font-serif-jp)}.font-en,.font-serif-latin{font-family:var(--font-serif-latin);letter-spacing:var(--ls-wide)}.has-brackets{position:relative}.has-brackets::after,.has-brackets::before{content:"";position:absolute;width:var(--bracket-size);height:var(--bracket-size);pointer-events:none;border-color:var(--color-decor-bracket);border-style:solid;border-width:0}.has-brackets::before{top:var(--bracket-inset);left:var(--bracket-inset);border-top-width:var(--bracket-thickness);border-left-width:var(--bracket-thickness)}.has-brackets::after{right:var(--bracket-inset);bottom:var(--bracket-inset);border-bottom-width:var(--bracket-thickness);border-right-width:var(--bracket-thickness)}.has-blueprint-grid{background-image:linear-gradient(var(--color-decor-grid) 1px,transparent 1px),linear-gradient(90deg,var(--color-decor-grid) 1px,transparent 1px);background-size:var(--space-7) var(--space-7);background-position:center center}.hairline{border:0;border-top:1px solid var(--color-decor-hairline)}
/* ===== coletlab-components ===== */
.skip-link{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;background:var(--color-brand);color:var(--color-text-on-brand);text-decoration:none}.skip-link:focus,.skip-link:focus-visible{position:fixed;top:12px;left:12px;width:auto;height:auto;padding:8px 16px;margin:0;overflow:visible;clip:auto;white-space:normal;border-radius:4px;z-index:9999;outline:2px solid var(--color-brand);outline-offset:2px;font-size:14px;font-weight:700}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:100%;max-width:var(--container-default);margin-inline:auto;padding-inline:var(--space-5)}@media (max-width:380px){.container{padding-inline:var(--space-4)}}.container--wide{max-width:var(--container-wide)}.container--narrow{max-width:var(--container-narrow)}@media (min-width:768px){.container{padding-inline:var(--space-6)}}.section{padding-block:var(--section-py-mobile)}@media (min-width:1024px){.section{padding-block:var(--section-py-desktop)}}.lp-geo-hero{--lp-opening-accent:var(--color-brand);--lp-opening-accent-soft:rgba(6, 123, 123, 0.10);--lp-opening-accent-border:rgba(6, 123, 123, 0.30)}.lp-ig-hero{--lp-opening-accent:var(--color-empathy);--lp-opening-accent-soft:rgba(231, 111, 142, 0.12);--lp-opening-accent-border:rgba(231, 111, 142, 0.32)}.lp-meo-hero{--lp-opening-accent:var(--color-accent);--lp-opening-accent-soft:rgba(200, 101, 74, 0.12);--lp-opening-accent-border:rgba(200, 101, 74, 0.32)}.lp-web-hero{--lp-opening-accent:var(--color-action);--lp-opening-accent-soft:rgba(244, 163, 64, 0.14);--lp-opening-accent-border:rgba(244, 163, 64, 0.34)}.lp-mc-hero{--lp-opening-accent:var(--color-brand);--lp-opening-accent-soft:rgba(6, 123, 123, 0.10);--lp-opening-accent-border:rgba(6, 123, 123, 0.30)}.lp-hero-diagnostic{position:relative;display:grid;gap:var(--space-3);padding:clamp(var(--space-4),3vw,var(--space-5));border:1px solid var(--lp-opening-accent-border,var(--color-border-brand));border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(255,255,255,.74) 0,rgba(255,255,255,.42) 58%,var(--lp-opening-accent-soft,rgba(6,123,123,.1)) 100%),var(--color-bg-base);box-shadow:0 18px 46px rgba(26,40,38,.08);overflow:hidden}.lp-hero-diagnostic::before{content:"";position:absolute;inset:10px 10px auto auto;width:92px;height:92px;border:1px solid var(--lp-opening-accent-border,var(--color-border-brand));transform:rotate(16deg);opacity:.45;pointer-events:none}.lp-hero-diagnostic>p{position:relative;z-index:1;margin:0;color:var(--lp-opening-accent,var(--color-brand));font-family:var(--font-sans-latin);font-size:var(--fs-xs);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-widest);text-transform:uppercase}.lp-hero-diagnostic ul{position:relative;z-index:1;display:grid;grid-template-columns:1fr;gap:var(--space-2);margin:0;padding:0;list-style:none}.lp-hero-diagnostic li{display:flex;gap:var(--space-2);align-items:flex-start;color:var(--color-text-primary);font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:var(--lh-relaxed)}.lp-hero-diagnostic li::before{content:"";width:8px;height:8px;margin-top:.55em;border-radius:50%;background:var(--lp-opening-accent,var(--color-brand));flex:0 0 auto}@media (min-width:768px){.lp-hero-diagnostic ul{grid-template-columns:repeat(3,minmax(0,1fr))}}.lp-hero-diagnostic.lp-hero-diagnostic{gap:var(--space-4);padding:clamp(var(--space-4),2.5vw,var(--space-5));border-color:var(--lp-opening-accent-border,var(--color-border-brand));border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,255,255,.72) 54%,var(--lp-opening-accent-soft,rgba(6,123,123,.1)) 100%),var(--color-bg-surface);box-shadow:0 18px 42px rgba(26,40,38,.1)}.lp-hero-diagnostic.lp-hero-diagnostic::before{inset:12px 12px auto auto;width:76px;height:76px;opacity:.22}.lp-hero-diagnostic.lp-hero-diagnostic>p{display:inline-flex;align-items:center;width:fit-content;gap:var(--space-2);padding:.45em .8em;border-radius:999px;background:var(--color-bg-dark-primary);color:var(--color-text-dark-primary);font-size:clamp(.72rem, 1.4vw, var(--fs-xs));line-height:1;box-shadow:0 10px 24px rgba(6,123,123,.18)}.lp-hero-diagnostic.lp-hero-diagnostic>p::before{content:"";width:.62em;height:.36em;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg) translateY(-1px);flex:0 0 auto}.lp-hero-diagnostic.lp-hero-diagnostic ul{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--space-3)}.lp-hero-diagnostic.lp-hero-diagnostic li{position:relative;display:block;min-height:64px;padding:var(--space-4) var(--space-4) var(--space-4) calc(var(--space-4) + 34px);border:1px solid rgba(6,123,123,.14);border-radius:10px;background:rgba(255,255,255,.78);color:var(--color-text-primary);font-size:clamp(.92rem, 1.45vw, var(--fs-sm));font-weight:var(--fw-bold);line-height:var(--lh-relaxed);box-shadow:inset 0 1px 0 rgba(255,255,255,.82);overflow-wrap:break-word}.lp-hero-diagnostic.lp-hero-diagnostic li::before{position:absolute;top:var(--space-4);left:var(--space-4);width:22px;height:22px;box-sizing:border-box;margin-top:0;border-radius:50%;border:2px solid var(--lp-opening-accent,var(--color-brand));background:var(--color-bg-dark-primary);box-shadow:0 8px 18px rgba(6,123,123,.22)}.lp-hero-diagnostic.lp-hero-diagnostic li::after{content:"";position:absolute;top:calc(var(--space-4) + 6px);left:calc(var(--space-4) + 7px);width:8px;height:5px;border-left:2px solid var(--color-text-dark-primary);border-bottom:2px solid var(--color-text-dark-primary);transform:rotate(-45deg)}@media (min-width:1024px){.lp-hero-diagnostic.lp-hero-diagnostic ul{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}.lp-conversion-stage{--stage-accent:var(--color-brand);--stage-accent-soft:rgba(6, 123, 123, 0.10);--stage-accent-border:rgba(6, 123, 123, 0.34);--stage-accent-ink:var(--color-brand-900);position:relative;padding-block:var(--space-9);background:repeating-linear-gradient(135deg,rgba(26,40,38,.045) 0 1px,transparent 1px 18px),linear-gradient(120deg,rgba(255,255,255,.88) 0,rgba(250,249,247,.94) 52%,var(--stage-accent-soft) 100%),var(--color-bg-primary);border-block:1px solid var(--stage-accent-border);overflow:hidden;isolation:isolate}.lp-conversion-stage::after,.lp-conversion-stage::before{content:"";position:absolute;z-index:-1;pointer-events:none}.lp-conversion-stage::before{inset:var(--space-5) auto auto 6%;width:220px;height:220px;border:1px solid var(--stage-accent-border);clip-path:polygon(0 0,100% 14%,82% 100%,8% 82%);transform:rotate(-8deg);opacity:.42}.lp-conversion-stage::after{right:0;bottom:var(--space-6);width:min(42vw,560px);height:96px;background:linear-gradient(90deg,transparent 0 10%,var(--stage-accent) 10% 18%,transparent 18% 24%,var(--stage-accent) 24% 30%,transparent 30% 100%);opacity:.1}.lp-conversion-stage--geo{--stage-accent:var(--color-brand);--stage-accent-soft:rgba(6, 123, 123, 0.10);--stage-accent-border:rgba(6, 123, 123, 0.34);--stage-accent-ink:var(--color-brand-900)}.lp-conversion-stage--ig{--stage-accent:var(--color-empathy);--stage-accent-soft:rgba(231, 111, 142, 0.12);--stage-accent-border:rgba(231, 111, 142, 0.34);--stage-accent-ink:var(--color-empathy-900)}.lp-conversion-stage--meo{--stage-accent:var(--color-accent);--stage-accent-soft:rgba(200, 101, 74, 0.12);--stage-accent-border:rgba(200, 101, 74, 0.34);--stage-accent-ink:var(--color-accent-900)}.lp-conversion-stage--web{--stage-accent:var(--color-action);--stage-accent-soft:rgba(244, 163, 64, 0.14);--stage-accent-border:rgba(244, 163, 64, 0.36);--stage-accent-ink:var(--color-action-900)}.lp-conversion-stage--mc{--stage-accent:var(--color-intelligence);--stage-accent-soft:rgba(20, 212, 212, 0.10);--stage-accent-border:rgba(20, 212, 212, 0.30);--stage-accent-ink:var(--color-brand-900)}.lp-conversion-stage__inner{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-7);align-items:center}@media (min-width:1024px){.lp-conversion-stage__inner{grid-template-columns:minmax(0,0.82fr) minmax(0,1.18fr);gap:var(--space-9)}}.lp-conversion-stage__copy{min-width:0}.lp-conversion-stage__eyebrow{display:inline-flex;align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);color:var(--stage-accent-ink);font-family:var(--font-sans-latin);font-size:var(--fs-xs);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-widest);text-transform:uppercase}.lp-conversion-stage__eyebrow::before{content:"";width:42px;height:3px;background:var(--stage-accent)}.lp-conversion-stage__title{margin:0;color:var(--color-text-primary);font-size:var(--fs-4xl);font-weight:var(--fw-black);line-height:var(--lh-tight);letter-spacing:0;font-feature-settings:"palt"}.lp-conversion-stage__lead{margin:var(--space-5) 0 0;color:var(--color-text-secondary);font-size:var(--fs-md);font-weight:var(--fw-medium);line-height:var(--lh-loose)}.lp-conversion-stage__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.lp-conversion-stage__visual{position:relative;min-width:0;min-height:360px}@media (min-width:1024px){.lp-conversion-stage__title{font-size:var(--fs-6xl)}.lp-conversion-stage__lead{font-size:var(--fs-lg)}}.lp-stage-geo{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(160px,0.65fr);gap:var(--space-4);align-items:stretch}.lp-stage-geo__answer{position:relative;padding:var(--space-5);border:1px solid var(--color-border-dark-default);border-radius:8px;background:linear-gradient(160deg,rgba(20,212,212,.16),transparent 36%),linear-gradient(145deg,var(--color-bg-dark-primary),var(--color-bg-dark-surface));box-shadow:0 24px 54px rgba(10,20,20,.22);overflow:hidden}.lp-stage-geo__answer::before{content:"";position:absolute;inset:0 0 auto;height:18px;background:repeating-linear-gradient(90deg,var(--stage-accent) 0 28px,transparent 28px 42px);opacity:.42}.lp-stage-geo__bar,.lp-stage-geo__citations{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.lp-stage-geo__bar{justify-content:space-between;margin-top:var(--space-4);color:var(--color-text-dark-secondary);font-family:var(--font-sans-latin);font-size:var(--fs-xs);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-wider);text-transform:uppercase}.lp-stage-geo__question{margin:var(--space-5) 0 var(--space-3);padding:var(--space-3);border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(255,255,255,.06);color:var(--color-text-dark-primary);font-weight:var(--fw-bold);line-height:var(--lh-relaxed)}.lp-stage-geo__response{margin:0;color:var(--color-text-dark-secondary);font-size:var(--fs-sm);line-height:var(--lh-loose)}.lp-stage-geo__citations{margin-top:var(--space-5)}.lp-stage-geo__citations span{padding:7px 10px;border:1px solid rgba(20,212,212,.28);border-radius:999px;color:var(--color-text-dark-primary);font-family:var(--font-sans-latin);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.lp-stage-geo__signals{display:grid;gap:var(--space-3)}.lp-stage-geo__signals div{padding:var(--space-4);border:1px solid var(--stage-accent-border);border-radius:8px;background:rgba(255,255,255,.82);color:var(--color-text-primary);box-shadow:0 12px 28px rgba(26,40,38,.08)}.lp-stage-geo__signals span,.lp-stage-geo__signals strong{display:block}.lp-stage-geo__signals strong{color:var(--stage-accent-ink);font-family:var(--font-sans-latin);font-size:var(--fs-sm);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-wide)}.lp-stage-geo__signals span{margin-top:var(--space-2);color:var(--color-text-secondary);font-size:var(--fs-xs);line-height:var(--lh-relaxed)}.lp-stage-ig{display:grid;grid-template-columns:minmax(230px,0.8fr) minmax(0,1fr);gap:var(--space-5);align-items:center}.lp-stage-ig__phone{position:relative;width:min(100%,280px);aspect-ratio:9/16;padding:var(--space-5) var(--space-4);border:8px solid var(--color-bg-dark-primary);border-radius:28px;background:linear-gradient(180deg,rgba(231,111,142,.18),transparent 42%),var(--color-bg-dark-surface);box-shadow:0 26px 52px rgba(110,31,54,.22);justify-self:center}.lp-stage-ig__phone::before{content:"";position:absolute;top:10px;left:50%;width:72px;height:8px;border-radius:999px;background:rgba(255,255,255,.18);transform:translateX(-50%)}.lp-stage-ig__dm,.lp-stage-ig__profile,.lp-stage-ig__search{border-radius:8px;background:rgba(255,255,255,.1);color:var(--color-text-dark-primary)}.lp-stage-ig__search{margin-top:var(--space-5);padding:var(--space-3);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.lp-stage-ig__post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-3)}.lp-stage-ig__post-grid span{display:block;aspect-ratio:1;border-radius:8px;background:linear-gradient(135deg,var(--color-empathy),var(--color-action))}.lp-stage-ig__post-grid span:nth-child(2){background:linear-gradient(135deg,var(--color-brand),var(--color-intelligence))}.lp-stage-ig__post-grid span:nth-child(3){background:linear-gradient(135deg,var(--color-accent),var(--color-empathy))}.lp-stage-ig__post-grid span:nth-child(4){background:linear-gradient(135deg,var(--color-action),var(--color-bg-primary))}.lp-stage-ig__profile{margin-top:var(--space-3);padding:var(--space-3)}.lp-stage-ig__profile span,.lp-stage-ig__profile strong{display:block}.lp-stage-ig__profile strong{font-size:var(--fs-sm);line-height:var(--lh-snug)}.lp-stage-ig__profile span{margin-top:var(--space-1);color:var(--color-text-dark-secondary);font-size:var(--fs-xs)}.lp-stage-ig__dm{margin-top:var(--space-3);padding:var(--space-3);background:var(--color-empathy);font-size:var(--fs-xs);font-weight:var(--fw-extrabold);text-align:center}.lp-stage-ig__flow{display:grid;gap:var(--space-4);margin:0;padding:0;list-style:none}.lp-stage-ig__flow li{display:grid;grid-template-columns:54px minmax(0,1fr);gap:var(--space-3);align-items:center;padding:var(--space-4);border:1px solid var(--stage-accent-border);border-radius:8px;background:rgba(255,255,255,.78);box-shadow:0 14px 30px rgba(26,40,38,.07)}.lp-stage-ig__flow li>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--stage-accent);color:var(--color-text-on-brand);font-family:var(--font-sans-latin);font-size:var(--fs-xs);font-weight:var(--fw-extrabold);grid-row:1/3}.lp-stage-ig__flow em,.lp-stage-ig__flow strong{display:block;font-style:normal}.lp-stage-ig__flow strong{color:var(--color-text-primary);font-family:var(--font-sans-latin);font-size:var(--fs-lg);font-weight:var(--fw-extrabold);grid-column:2}.lp-stage-ig__flow em{grid-column:2;margin-top:var(--space-1);color:var(--color-text-secondary);font-size:var(--fs-sm);line-height:var(--lh-relaxed)}.lp-stage-meo{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,0.76fr);gap:var(--space-4);align-items:end}.lp-stage-meo__map{position:relative;min-height:320px;border:1px solid rgba(200,101,74,.3);border-radius:8px;background:linear-gradient(90deg,rgba(6,123,123,.12) 1px,transparent 1px),linear-gradient(0deg,rgba(6,123,123,.12) 1px,transparent 1px),linear-gradient(135deg,rgba(200,101,74,.2),rgba(255,255,255,.7));background-size:42px 42px,42px 42px,auto;box-shadow:0 22px 48px rgba(92,43,31,.14)}.lp-stage-meo__map::before{content:"";position:absolute;inset:22% 12% 26% 18%;border:6px solid rgba(200,101,74,.34);border-right-color:transparent;border-radius:42% 58% 48% 52%;transform:rotate(-12deg)}.lp-stage-meo__pin{position:absolute;width:28px;height:28px;border:4px solid #fff;border-radius:50% 50% 50% 0;background:var(--stage-accent);box-shadow:0 10px 22px rgba(92,43,31,.2);transform:rotate(-45deg)}.lp-stage-meo__pin::after{content:"";position:absolute;inset:6px;border-radius:50%;background:#fff}.lp-stage-meo__pin--main{left:48%;top:34%;width:40px;height:40px}.lp-stage-meo__pin--sub{left:22%;top:58%;background:var(--color-brand)}.lp-stage-meo__pin--tiny{right:18%;top:18%;background:var(--color-action)}.lp-stage-meo__pack{position:relative;margin-left:-56px;padding:var(--space-5);border:1px solid rgba(26,40,38,.12);border-radius:8px;background:rgba(255,255,255,.9);box-shadow:0 26px 54px rgba(26,40,38,.16)}.lp-stage-meo__shop em,.lp-stage-meo__shop span,.lp-stage-meo__shop strong{display:block}.lp-stage-meo__shop strong{color:var(--color-text-primary);font-size:var(--fs-xl);font-weight:var(--fw-extrabold)}.lp-stage-meo__shop span{margin-top:var(--space-2);color:var(--stage-accent-ink);font-size:var(--fs-sm);font-weight:var(--fw-bold)}.lp-stage-meo__shop em{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:var(--fs-xs);font-style:normal}.lp-stage-meo__actions,.lp-stage-meo__checks{display:grid;gap:var(--space-2)}.lp-stage-meo__actions{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:var(--space-4)}.lp-stage-meo__actions span,.lp-stage-meo__checks span{border-radius:8px;font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center}.lp-stage-meo__actions span{padding:var(--space-2);background:var(--stage-accent);color:var(--color-text-on-accent)}.lp-stage-meo__checks{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.lp-stage-meo__checks span{padding:var(--space-3);border:1px solid var(--stage-accent-border);background:rgba(255,255,255,.74);color:var(--color-text-primary)}.lp-stage-web{display:grid;gap:var(--space-4)}.lp-stage-web__board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);align-items:end;padding:var(--space-4);border:1px solid rgba(244,163,64,.32);border-radius:8px;background:linear-gradient(90deg,rgba(244,163,64,.16) 0 1px,transparent 1px),linear-gradient(0deg,rgba(244,163,64,.12) 0 1px,transparent 1px),rgba(255,255,255,.74);background-size:40px 40px;box-shadow:0 24px 50px rgba(122,74,10,.12)}.lp-stage-web__lane{display:flex;min-height:178px;flex-direction:column;justify-content:flex-end;gap:var(--space-2);padding:var(--space-4);border:1px solid rgba(26,40,38,.1);border-radius:8px;background:#fff}.lp-stage-web__lane:nth-child(2){min-height:214px}.lp-stage-web__lane:nth-child(3){min-height:250px}.lp-stage-web__lane:nth-child(4){min-height:286px}.lp-stage-web__lane--now{background:var(--color-bg-dark-primary);color:var(--color-text-dark-primary)}.lp-stage-web__lane span,.lp-stage-web__lane strong{display:block}.lp-stage-web__lane strong{color:inherit;font-family:var(--font-sans-latin);font-size:var(--fs-lg);font-weight:var(--fw-extrabold)}.lp-stage-web__lane span{color:inherit;font-size:var(--fs-xs);line-height:var(--lh-relaxed);opacity:.78}.lp-stage-web__matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.lp-stage-web__matrix div{padding:var(--space-4);border:1px solid rgba(26,40,38,.1);border-radius:8px;background:rgba(255,255,255,.78)}.lp-stage-web__matrix span,.lp-stage-web__matrix strong{display:block}.lp-stage-web__matrix strong{color:var(--stage-accent-ink);font-family:var(--font-sans-latin);font-weight:var(--fw-extrabold)}.lp-stage-web__matrix span{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:var(--fs-sm);line-height:var(--lh-relaxed)}.lp-stage-mc{display:grid;gap:var(--space-4)}.lp-stage-mc__columns div,.lp-stage-mc__header,.lp-stage-mc__rhythm span{border-radius:8px}.lp-stage-mc__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-5);background:linear-gradient(135deg,rgba(20,212,212,.2),transparent 42%),var(--color-bg-dark-primary);color:var(--color-text-dark-primary)}.lp-stage-mc__header span{font-family:var(--font-sans-latin);font-size:var(--fs-xs);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-wider);text-transform:uppercase}.lp-stage-mc__header strong{font-family:var(--font-sans-latin);font-size:var(--fs-xl);font-weight:var(--fw-extrabold)}.lp-stage-mc__columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.lp-stage-mc__columns div{position:relative;min-height:180px;padding:var(--space-4);border:1px solid var(--stage-accent-border);background:rgba(255,255,255,.82);box-shadow:0 18px 36px rgba(6,101,101,.1)}.lp-stage-mc__columns div::before{content:"";position:absolute;top:0;left:0;width:100%;height:8px;background:var(--stage-accent)}.lp-stage-mc__columns span,.lp-stage-mc__columns strong{display:block}.lp-stage-mc__columns strong{margin-top:var(--space-3);color:var(--stage-accent-ink);font-family:var(--font-sans-latin);font-size:var(--fs-xl);font-weight:var(--fw-extrabold)}.lp-stage-mc__columns span{margin-top:var(--space-3);color:var(--color-text-secondary);font-size:var(--fs-sm);line-height:var(--lh-loose)}.lp-stage-mc__rhythm{display:flex;flex-wrap:wrap;gap:var(--space-2)}.lp-stage-mc__rhythm span{padding:var(--space-3) var(--space-4);background:var(--color-bg-dark-primary);color:var(--color-text-dark-primary);font-size:var(--fs-xs);font-weight:var(--fw-bold)}@media (max-width:1023px){.lp-conversion-stage{padding-block:var(--space-8)}.lp-conversion-stage__visual{min-height:auto}.lp-stage-geo,.lp-stage-ig,.lp-stage-meo{grid-template-columns:minmax(0,1fr)}.lp-stage-meo__pack{margin-left:0}.lp-stage-web__board{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-stage-web__lane,.lp-stage-web__lane:nth-child(2),.lp-stage-web__lane:nth-child(3),.lp-stage-web__lane:nth-child(4){min-height:150px}}@media (max-width:767px){.lp-hero-diagnostic{border-radius:var(--radius-md)}.lp-hero-diagnostic ul{gap:var(--space-2)}.lp-conversion-stage{padding-block:var(--space-7)}.lp-conversion-stage::before{width:150px;height:150px;opacity:.28}.lp-conversion-stage__inner{gap:var(--space-6)}.lp-conversion-stage__title{font-size:var(--fs-3xl)}.lp-conversion-stage__lead{font-size:var(--fs-base)}.lp-conversion-stage__actions{display:grid;grid-template-columns:1fr}.lp-conversion-stage__actions .btn{width:100%}.lp-stage-geo__signals,.lp-stage-mc__columns,.lp-stage-meo__checks,.lp-stage-web__board,.lp-stage-web__matrix{grid-template-columns:minmax(0,1fr)}.lp-stage-ig__phone{width:min(100%,250px)}}@media (max-width:767px){.about-access,.about-business,.about-clients,.about-info,.about-manifesto,.about-message,.about-vision,.ai-lab,.bento,.case-study,.news-column,.services-bento,.services-detail,.services-faq,.services-strengths,.strengths{padding-block:var(--space-8)}.about-access__header,.about-business__header,.about-clients__header,.about-info__header,.about-manifesto__header,.about-message__header,.about-vision__header,.ai-lab__header,.bento__header,.case-study__header,.services-bento__header,.services-detail__header,.services-faq__header,.services-strengths__header,.strengths__header{margin-bottom:var(--space-6)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);font-family:inherit;font-size:var(--fs-base);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);line-height:1;border-radius:2px;min-height:48px;transition:background var(--duration-fast) var(--ease-in-out-quart),color var(--duration-fast) var(--ease-in-out-quart),border var(--duration-fast) var(--ease-in-out-quart),transform var(--duration-fast) var(--ease-out-expo);white-space:nowrap;cursor:pointer;border:1px solid transparent}@media (max-width:767px){.btn{font-size:var(--fs-base);min-height:52px;padding-inline:var(--space-5);max-width:100%;white-space:normal;line-height:1.35;text-align:center}.btn--lg{font-size:var(--fs-lg);min-height:56px}.btn--ghost{min-height:44px;padding-inline:var(--space-3)}}.btn:focus-visible{outline-offset:4px}.btn--primary{background:var(--color-brand);color:var(--color-text-on-brand)}.btn--primary:hover{background:var(--color-brand-700);transform:translateY(-2px);color:var(--color-text-on-brand)}.btn--secondary{background:0 0;color:var(--color-text-primary);border-color:var(--color-border-default)}.btn--secondary:hover{border-color:var(--color-brand);background:var(--color-glass-brand);color:var(--color-text-primary)}.btn--ghost{background:0 0;color:var(--color-text-secondary);padding:var(--space-3) var(--space-4)}.btn--ghost:hover{color:var(--color-brand)}.btn--ghost::after{content:" →";transition:transform var(--duration-fast) var(--ease-spring);display:inline-block}.btn--ghost:hover::after{transform:translateX(4px)}.btn--accent{background:var(--color-accent-700);color:var(--color-text-on-accent)}.btn--accent:hover{background:var(--color-accent-900);transform:translateY(-2px);color:var(--color-text-on-accent)}.btn--lg{padding:var(--space-5) var(--space-7);font-size:var(--fs-lg)}.btn--sm{padding:var(--space-2) var(--space-4);font-size:var(--fs-sm)}.site-header{position:fixed;inset:0 0 auto 0;z-index:var(--z-header);background:rgba(250,249,247,.88);backdrop-filter:blur(var(--blur-md));-webkit-backdrop-filter:blur(var(--blur-md));border-bottom:1px solid rgba(6,123,123,.12);box-shadow:none;transition:transform var(--duration-base) var(--ease-out-expo)}@media (max-width:767px){.site-header{background:rgba(250,249,247,.96)}}.site-header[data-hidden=true]{transform:translateY(-100%)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);height:64px;max-width:var(--container-wide);margin-inline:auto;padding-inline:var(--space-4)}@media (min-width:768px){.site-header__inner{padding-inline:var(--space-6)}}.site-logo{display:flex;align-items:center;flex-shrink:0;line-height:0;transition:opacity var(--duration-fast) var(--ease-out-expo)}.site-logo:hover{opacity:.75}.site-logo img,.site-logo svg{height:26px;width:auto;display:block}@media (min-width:768px){.site-logo img,.site-logo svg{height:28px}}.global-nav{display:none;flex:1;justify-content:center}@media (min-width:1024px){.global-nav{display:flex}}.global-nav__list{display:flex;gap:var(--space-7);align-items:center}.global-nav__list a{display:flex;flex-direction:column;align-items:center;gap:3px;padding:var(--space-2) 0;color:var(--color-text-secondary);transition:color var(--duration-fast) var(--ease-out-expo);position:relative}.global-nav__en{font-family:var(--font-sans-latin);font-size:11px;font-weight:var(--fw-bold);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--color-brand);line-height:1;opacity:.85;transition:opacity var(--duration-fast) var(--ease-out-expo)}.global-nav__ja{font-family:var(--font-sans-jp);font-size:var(--fs-sm);font-weight:var(--fw-medium);letter-spacing:var(--ls-tight);line-height:1.2}.global-nav__list a:hover{color:var(--color-text-primary)}.global-nav__list a:hover .global-nav__en{opacity:1;color:var(--color-brand-500)}.global-nav__list a[aria-current=page]{color:var(--color-text-primary)}.global-nav__list a[aria-current=page] .global-nav__en{opacity:1}.global-nav__list a[aria-current=page]::after{content:"";position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);width:4px;height:4px;background:var(--color-brand);border-radius:var(--radius-full)}.global-nav__list>li.has-dropdown{position:relative}.global-nav__list>li.has-dropdown>a::before{content:"";position:absolute;top:100%;left:0;right:0;height:14px;pointer-events:auto}.global-nav__list>li.has-dropdown>a>.global-nav__chevron{display:inline-block;margin-left:4px;font-size:9px;color:var(--color-brand-300);transition:transform var(--duration-fast) var(--ease-out-expo);opacity:.8;transform:translateY(1px)}.global-nav__list>li.has-dropdown:focus-within>a>.global-nav__chevron,.global-nav__list>li.has-dropdown:hover>a>.global-nav__chevron{transform:rotate(180deg) translateY(-1px);opacity:1}.global-nav__dropdown{position:absolute;top:calc(100% + 14px);left:0;transform:translateY(-8px);min-width:460px;max-width:calc(100vw - var(--space-6) * 2);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);padding:var(--space-5);background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);opacity:0;visibility:hidden;transition:opacity var(--duration-base) var(--ease-out-expo),visibility var(--duration-base) var(--ease-out-expo),transform var(--duration-base) var(--ease-out-expo);z-index:var(--z-dropdown)}.global-nav__list>li.has-dropdown:focus-within>.global-nav__dropdown,.global-nav__list>li.has-dropdown:hover>.global-nav__dropdown{opacity:1;visibility:visible;transform:translateY(0)}.global-nav__dropdown-group{display:flex;flex-direction:column;gap:var(--space-3)}.global-nav__dropdown-label{font-family:var(--font-sans-latin);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--color-brand);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border-subtle)}.global-nav__dropdown ul{display:flex;flex-direction:column;gap:2px;list-style:none;padding:0}.global-nav__dropdown ul a{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;text-align:left;padding:var(--space-2) var(--space-3);font-family:var(--font-sans-jp);font-size:var(--fs-sm);color:var(--color-text-secondary);font-weight:var(--fw-medium);letter-spacing:var(--ls-tight);line-height:1.4;border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--ease-out-expo),background var(--duration-fast) var(--ease-out-expo),transform var(--duration-fast) var(--ease-spring)}.global-nav__dropdown ul a:hover{color:var(--color-text-primary);background:var(--color-glass-brand);transform:translateX(4px)}.global-nav__list>li.has-dropdown:nth-child(4)>.global-nav__dropdown,.global-nav__list>li.has-dropdown:nth-child(5)>.global-nav__dropdown{left:auto;right:0}.global-nav__list>li.has-dropdown:nth-child(4)>.global-nav__dropdown{grid-template-columns:1fr;min-width:240px}@media (min-width:1024px) and (max-width:1279px){.global-nav__list{gap:var(--space-5)}}@media (max-width:1023px){.global-nav__chevron,.global-nav__dropdown{display:none}}@media (min-width:768px){.br-sp{display:none}}.br-pc{display:none}@media (min-width:1024px){.br-pc{display:inline}}.site-header__cta{flex-shrink:0;display:flex;align-items:center;gap:var(--space-2)}.site-header__cta .btn{padding-inline:var(--space-6)}@media (max-width:1023px){.site-header__cta{display:none}}.section-overline{display:inline-block;font-family:var(--font-sans-latin);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--color-brand-300);margin-bottom:var(--space-4);position:relative;padding-left:var(--space-5)}.section-overline::before{content:"";position:absolute;left:0;top:50%;width:var(--space-4);height:1px;background:var(--color-brand-300);transform:translateY(-50%)}.section-label{display:inline-flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);font-family:var(--font-sans-latin)}.section-label--center{margin-inline:auto}.section-label__num{font-size:var(--fs-base);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-tight);color:var(--color-brand);font-feature-settings:"tnum";line-height:1}.section-label__line{display:block;width:36px;height:1px;background:linear-gradient(90deg,var(--color-brand) 0,transparent 100%)}.section-label__en{font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--color-brand-300)}@media (max-width:767px){.section-label{gap:var(--space-2);margin-bottom:var(--space-4)}.section-label__line{width:24px}}.bg-mega-typo{position:absolute;inset:0;pointer-events:none;display:flex;align-items:center;justify-content:space-between;font-family:var(--font-sans-latin);font-size:clamp(4rem, 13vw, 13rem);font-weight:900;color:var(--color-text-primary);opacity:.045;letter-spacing:0;white-space:nowrap;z-index:var(--z-behind);user-select:none;overflow:hidden;will-change:transform}@media (max-width:767px){.bg-mega-typo{opacity:.035;font-size:clamp(3.5rem, 16vw, 6rem)}}.bg-mega-typo span{display:block}.bg-mega-typo span:first-child{transform:translateX(-12%)}.bg-mega-typo span:last-child{transform:translateX(12%)}.bg-mega-typo--brand span:last-child{color:var(--color-brand);opacity:.5}.bg-mega-typo--empathy span:last-child{color:var(--color-empathy);opacity:.4}.bg-mega-typo--single{justify-content:center}.bg-mega-typo--single span{transform:none!important}.section-glow-line{position:absolute;inset:0 0 auto 0;height:1px;background:rgba(6,123,123,.12);pointer-events:none;z-index:var(--z-base)}.section-title{font-size:var(--fs-display-md);font-weight:var(--fw-extrabold);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);color:var(--color-text-primary);font-feature-settings:"palt"}@media (max-width:767px){.about-access__title,.about-business__title,.about-clients__title,.about-info__title,.about-manifesto__title,.about-message__title,.about-vision__title,.ai-lab__title,.bento__title,.case-study__title,.services-bento__title,.services-faq__title,.services-strengths__title,.strengths__title{font-size:clamp(1.75rem, 7.5vw, 2.125rem);line-height:1.25}}.section-title__break{display:block}.section-title__accent{color:var(--color-brand-300)}.reveal{opacity:0;transform:translateY(32px) scale(.985);transition:opacity 720ms var(--ease-out-expo),transform 720ms var(--ease-out-expo);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0) scale(1)}.reveal--from-left{transform:translate3d(-40px,0,0)}.reveal--from-left.is-visible{transform:translate3d(0,0,0)}.reveal--from-right{transform:translate3d(40px,0,0)}.reveal--from-right.is-visible{transform:translate3d(0,0,0)}.reveal--scale{transform:scale(.94)}.reveal--scale.is-visible{transform:scale(1)}.reveal--blur{filter:blur(8px);transition:opacity 720ms var(--ease-out-expo),transform 720ms var(--ease-out-expo),filter .6s var(--ease-out-expo)}.reveal--blur.is-visible{filter:blur(0)}.reveal[data-delay="1"]{transition-delay:60ms}.reveal[data-delay="2"]{transition-delay:0.12s}.reveal[data-delay="3"]{transition-delay:0.18s}.reveal[data-delay="4"]{transition-delay:0.24s}.reveal[data-delay="5"]{transition-delay:0.30s}.reveal[data-delay="6"]{transition-delay:0.36s}@media (max-width:767px){.reveal{transform:translateY(20px) scale(.99);transition:opacity 520ms var(--ease-out-expo),transform 520ms var(--ease-out-expo)}.reveal--from-left{transform:translate3d(-24px,0,0)}.reveal--from-right{transform:translate3d(24px,0,0)}.reveal[data-delay="1"]{transition-delay:40ms}.reveal[data-delay="2"]{transition-delay:80ms}.reveal[data-delay="3"]{transition-delay:0.12s}.reveal[data-delay="4"]{transition-delay:0.16s}.reveal[data-delay="5"]{transition-delay:0.20s}.reveal[data-delay="6"]{transition-delay:0.24s}}@media (prefers-reduced-motion:reduce){.reveal,.reveal--blur,.reveal--from-left,.reveal--from-right,.reveal--scale{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:48px;min-height:48px;padding:var(--space-2);margin-right:calc(var(--space-2) * -1);border-radius:var(--radius-md)}.menu-toggle span{display:block;width:24px;height:2px;background:var(--color-text-primary);border-radius:var(--radius-full);transition:transform var(--duration-fast) var(--ease-spring)}@media (min-width:1024px){.menu-toggle{display:none}}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;z-index:90;background:linear-gradient(180deg,rgba(250,249,247,.98) 0,rgba(234,243,241,.98) 100%);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overflow-y:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity var(--duration-base) var(--ease-out-expo),visibility var(--duration-base) var(--ease-out-expo),transform var(--duration-base) var(--ease-out-expo)}body.menu-open .mobile-menu{opacity:1;visibility:visible;transform:translateY(0)}@media (min-width:1024px){.mobile-menu{display:none!important}}body.menu-open{overflow:hidden}.mobile-menu__inner{max-width:560px;margin-inline:auto;padding:96px var(--space-5) var(--space-7);display:flex;flex-direction:column;gap:var(--space-6)}.mobile-menu__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.mobile-menu__item{border-bottom:1px solid var(--color-border-subtle)}.mobile-menu__expand,.mobile-menu__link{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-4) 0;width:100%;background:0 0;border:none;color:var(--color-text-primary);text-align:left;cursor:pointer;font-family:inherit;text-decoration:none;transition:color var(--duration-fast) var(--ease-out-expo)}.mobile-menu__expand:hover,.mobile-menu__link:hover{color:var(--color-brand)}.mobile-menu__en{font-family:var(--font-sans-latin);font-size:var(--fs-lg);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight)}.mobile-menu__ja{font-size:var(--fs-sm);color:var(--color-text-secondary)}.mobile-menu__chevron{margin-left:auto;color:var(--color-text-secondary);transition:transform var(--duration-fast) var(--ease-out-expo)}.mobile-menu__expand[aria-expanded=true] .mobile-menu__chevron{transform:rotate(180deg);color:var(--color-brand-300)}.mobile-menu__row{display:flex;align-items:stretch;gap:var(--space-2)}.mobile-menu__link--parent{flex:1 1 auto;min-width:0}.mobile-menu__expand--icon{flex:0 0 auto;width:48px;min-height:48px;padding:var(--space-3) 0;justify-content:flex-end;align-items:center}.mobile-menu__expand--icon .mobile-menu__chevron{margin-left:0}.mobile-menu__sub{list-style:none;margin:0;padding:0 0 var(--space-3) var(--space-4);display:none}.mobile-menu__expand[aria-expanded=true]+.mobile-menu__sub{display:block}.mobile-menu__item--has-children:has(.mobile-menu__expand[aria-expanded=true])>.mobile-menu__sub{display:block}.mobile-menu__sub li{padding:0}.mobile-menu__sub a{display:flex;align-items:center;min-height:44px;color:var(--color-text-secondary);font-size:var(--fs-sm);text-decoration:none;transition:color var(--duration-fast) var(--ease-out-expo)}.mobile-menu__sub a:hover{color:var(--color-brand-300)}.mobile-menu__sub-divider{margin-top:var(--space-3);padding-top:var(--space-2)!important;border-top:1px solid var(--color-border-subtle);color:var(--color-text-muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--ls-widest);pointer-events:none}.mobile-menu__cta{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}@keyframes hero-decor-float-y{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes hero-decor-float-y-slow{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes hero-decor-spark-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.18);opacity:.75}}@keyframes hero-decor-spark-pulse-soft{0%,100%{transform:scale(1);opacity:.85}50%{transform:scale(1.1);opacity:1}}@keyframes hero-decor-drift{0%,100%{transform:translate(0,0)}50%{transform:translate(2px,-4px)}}@keyframes hero-decor-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.018)}}@keyframes hero-decor-blink{0%,100%,88%{transform:scaleY(1)}92%{transform:scaleY(.08)}96%{transform:scaleY(1)}}@keyframes hero-decor-sway{0%,100%{transform:rotate(-.4deg)}50%{transform:rotate(.6deg)}}@keyframes hero-decor-bar-grow{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.06)}}@keyframes hero-decor-bg-pulse{0%,100%{transform:scale(1);opacity:.06}50%{transform:scale(1.04);opacity:.1}}@keyframes hero-decor-arrow-flow{0%{stroke-dashoffset:18}100%{stroke-dashoffset:0}}@media (prefers-reduced-motion:no-preference){.hero-decor-float{animation:hero-decor-float-y 4s ease-in-out infinite;transform-origin:center;transform-box:fill-box}.hero-decor-float-2{animation:hero-decor-float-y-slow 4.6s ease-in-out .6s infinite;transform-origin:center;transform-box:fill-box}.hero-decor-spark{animation:hero-decor-spark-pulse 3.2s ease-in-out infinite;transform-origin:center;transform-box:fill-box}.hero-decor-spark-2{animation:hero-decor-spark-pulse-soft 4s ease-in-out 1.2s infinite;transform-origin:center;transform-box:fill-box}.hero-decor-drift{animation:hero-decor-drift 5s ease-in-out infinite;transform-origin:center;transform-box:fill-box}.hero-decor-breathe{animation:hero-decor-breathe 4.4s ease-in-out infinite;transform-origin:center;transform-box:fill-box}.hero-decor-blink{animation:hero-decor-blink 5s ease-in-out .4s infinite;transform-origin:center;transform-box:fill-box}.hero-decor-sway{animation:hero-decor-sway 6s ease-in-out infinite;transform-origin:center;transform-box:fill-box}.hero-decor-bar-grow{animation:hero-decor-bar-grow 3.6s ease-in-out infinite;transform-origin:bottom;transform-box:fill-box}.hero-decor-bg-pulse{animation:hero-decor-bg-pulse 6s ease-in-out infinite;transform-origin:center;transform-box:fill-box}.hero-decor-arrow-flow{stroke-dasharray:6 12;animation:hero-decor-arrow-flow 1.8s linear infinite}}.mobile-menu__cta .btn{width:100%;justify-content:center}.back-to-top{position:fixed;bottom:16px;right:16px;z-index:var(--z-sticky);width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-brand);color:var(--color-text-on-brand);border:1px solid var(--color-brand-300);border-radius:var(--radius-sm);box-shadow:none;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity var(--duration-base) var(--ease-out-expo),visibility var(--duration-base) var(--ease-out-expo),transform var(--duration-fast) var(--ease-spring),background var(--duration-fast) var(--ease-out-expo)}@media (min-width:768px){.back-to-top{bottom:24px;right:24px;width:48px;height:48px}}.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{transform:translateY(-4px);background:var(--color-brand-700)}.back-to-top:focus-visible{outline:2px solid var(--color-brand-300);outline-offset:4px}.back-to-top svg{width:18px;height:18px;fill:currentColor}@media (prefers-reduced-motion:reduce){.back-to-top{transition:opacity var(--duration-base),visibility var(--duration-base)}.back-to-top:hover{transform:none}.btn--accent:hover,.btn--ghost:hover,.btn--ghost:hover::after,.btn--primary:hover,.btn--secondary:hover{transform:none!important}}.section-decor{display:block;position:absolute;width:96px;height:96px;background-repeat:no-repeat;background-position:center;background-size:contain;pointer-events:none;opacity:.45;z-index:0}.section-decor--a{background-image:url("https://colet-lab.jp/wp-content/themes/coletlab/assets/img/geo/section_decor_a.svg")}.section-decor--b{background-image:url("https://colet-lab.jp/wp-content/themes/coletlab/assets/img/geo/section_decor_b.svg")}.section-decor--c{background-image:url("https://colet-lab.jp/wp-content/themes/coletlab/assets/img/geo/section_decor_c.svg")}.section-decor--top-right{top:-16px;right:0}.section-decor--top-left{top:-16px;left:0}.section-decor--bottom-right{bottom:-16px;right:0}.section-decor--bottom-left{bottom:-16px;left:0}@media (max-width:767px){.section-decor{width:64px;height:64px;opacity:.4}.section-decor--top-left,.section-decor--top-right{top:4px}.section-decor--bottom-left,.section-decor--bottom-right{bottom:4px}}.site-footer{position:relative;background:linear-gradient(180deg,var(--color-bg-elevated) 0,var(--color-bg-primary) 58%,var(--color-bg-surface) 100%);border-top:1px solid rgba(6,123,123,.14);margin-top:var(--space-9);color:var(--color-text-secondary);overflow:hidden;isolation:isolate}.site-footer::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(6,123,123,.36),transparent);pointer-events:none}.site-footer__inner{padding-block:var(--space-8) var(--space-6)}@media (min-width:768px){.site-footer__inner{padding-block:var(--space-9) var(--space-6)}}@media (min-width:1024px){.site-footer__inner{padding-block:var(--space-10) var(--space-7)}}.site-footer__grid{display:grid;grid-template-columns:1fr;gap:var(--space-7);margin-bottom:var(--space-8)}@media (min-width:640px){.site-footer__grid{grid-template-columns:1fr 1fr;gap:var(--space-7)}}@media (min-width:1024px){.site-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:var(--space-8)}}.site-footer__brand{display:flex;flex-direction:column;gap:var(--space-4)}.site-footer__logo{display:inline-block;line-height:0;transition:opacity var(--duration-fast) var(--ease-out-expo)}.site-footer__logo:hover{opacity:.7}.site-footer__logo img{height:28px;width:auto;display:block}.site-footer__tagline{display:flex;flex-direction:column;gap:4px;line-height:var(--lh-snug)}.site-footer__tagline-en{font-family:var(--font-sans-latin);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--color-brand-700)}.site-footer__tagline-ja{font-family:var(--font-sans-jp);font-size:var(--fs-base);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--color-text-primary)}.site-footer__address{font-size:var(--fs-xs);color:var(--color-text-muted);line-height:var(--lh-loose);font-style:normal}.site-footer__address a{color:var(--color-text-secondary);transition:color var(--duration-fast) var(--ease-out-expo)}.site-footer__address a:hover{color:var(--color-brand)}.site-footer__nav-title{font-family:var(--font-sans-latin);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--color-brand-700);margin-bottom:var(--space-4)}.site-footer__nav-list{display:flex;flex-direction:column;gap:var(--space-3)}.site-footer__nav-list a{font-size:var(--fs-sm);color:var(--color-text-secondary);letter-spacing:var(--ls-tight);transition:color var(--duration-fast) var(--ease-out-expo);display:inline-block;padding-block:4px}.site-footer__nav-list a:hover{color:var(--color-brand)}.site-footer__channels{display:flex;flex-direction:column;gap:var(--space-6)}.site-footer__sns{display:flex;gap:var(--space-3);flex-wrap:wrap}.site-footer__sns-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-full);background:rgba(255,255,255,.72);border:1px solid rgba(6,123,123,.14);color:var(--color-text-secondary);transition:color var(--duration-fast) var(--ease-out-expo),border-color var(--duration-fast) var(--ease-out-expo),background var(--duration-fast) var(--ease-out-expo),transform var(--duration-fast) var(--ease-spring)}.site-footer__sns-icon svg{width:16px;height:16px;fill:currentColor}.site-footer__sns-icon:hover{color:var(--color-text-on-brand);background:var(--color-brand);border-color:var(--color-brand);transform:translateY(-2px)}.site-footer__bottom{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-5);border-top:1px solid rgba(6,123,123,.12);align-items:center;text-align:center}@media (min-width:768px){.site-footer__bottom{flex-direction:row;justify-content:space-between;align-items:center;text-align:left}}.site-footer__legal{display:flex;gap:var(--space-5);flex-wrap:wrap;justify-content:center}.site-footer__legal a{font-size:var(--fs-xs);color:var(--color-text-muted);letter-spacing:var(--ls-tight);transition:color var(--duration-fast) var(--ease-out-expo)}@media (max-width:1023px){.site-footer__legal a,.site-footer__nav-list a{display:inline-flex;align-items:center;min-height:44px}.site-footer__sns-icon{width:44px;height:44px}}.site-footer__legal a:hover{color:var(--color-brand)}.site-footer__copyright{font-family:var(--font-sans-latin);font-size:var(--fs-xs);color:var(--color-text-muted);letter-spacing:var(--ls-wide)}:root{--breadcrumb-top-offset:calc(var(--header-height, 64px) + var(--space-3));--breadcrumb-bottom-gap:var(--space-1);--page-hero-top-offset:calc(var(--header-height, 64px) + var(--space-6))}@media (min-width:1024px){:root{--breadcrumb-top-offset:calc(var(--header-height, 64px) + var(--space-4));--breadcrumb-bottom-gap:var(--space-2);--page-hero-top-offset:calc(var(--header-height, 64px) + var(--space-6))}}body.error404,body.page{--page-hero-top-offset:var(--space-4)}@media (min-width:1024px){body.error404,body.page{--page-hero-top-offset:var(--space-5)}}.breadcrumb{position:relative;isolation:isolate;max-width:var(--container-wide);margin-inline:auto;padding-inline:var(--space-4);padding-top:var(--breadcrumb-top-offset);padding-bottom:var(--breadcrumb-bottom-gap)}.breadcrumb::before{content:"";position:absolute;z-index:0;inset-block:0;left:50%;width:100vw;transform:translateX(-50%);background:0 0;pointer-events:none}@media (min-width:768px){.breadcrumb{padding-inline:var(--space-6)}}.breadcrumb__list{position:relative;z-index:1;display:inline-flex;flex-wrap:wrap;gap:0 var(--space-2);align-items:center;font-size:var(--fs-xs);color:var(--color-text-secondary);list-style:none;margin:0;padding:0;background:0 0;border:0;border-radius:0}.breadcrumb__list>*{white-space:nowrap}.breadcrumb__list a{position:relative;display:inline-flex;align-items:center;gap:4px;color:var(--color-text-secondary);text-decoration:none;font-weight:500;transition:color .2s ease;padding-block:2px}.breadcrumb__list a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right center;transition:transform .25s var(--ease-out-expo, cubic-bezier(.16, 1, .3, 1))}.breadcrumb__list a:hover{color:var(--color-brand)}.breadcrumb__list a:hover::after{transform:scaleX(1);transform-origin:left center}.breadcrumb__list li:first-child a::before{content:"";width:14px;height:14px;background-color:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 12 12 3l9 9'/><path d='M5 10v10h14V10'/><path d='M10 20v-6h4v6'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 12 12 3l9 9'/><path d='M5 10v10h14V10'/><path d='M10 20v-6h4v6'/></svg>") center/contain no-repeat;display:inline-block;flex-shrink:0}.breadcrumb__sep{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:var(--color-brand);opacity:.55;font-size:0}.breadcrumb__sep::before{content:"";width:100%;height:100%;background-color:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='9 18 15 12 9 6'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='9 18 15 12 9 6'/></svg>") center/contain no-repeat}.breadcrumb__list [aria-current=page]{color:var(--color-brand);font-weight:700;white-space:normal;word-break:break-word}.contact-form__topic-options:has(.wpcf7-radio){display:block}.contact-form__topic-options .wpcf7-form-control-wrap{display:block;width:100%}.contact-form__topic-options .wpcf7-radio{display:grid;grid-template-columns:1fr;gap:var(--space-3);width:100%}@media (min-width:768px){.contact-form__topic-options .wpcf7-radio{grid-template-columns:repeat(2,1fr)}}.contact-form__topic-options .wpcf7-list-item{margin:0;display:flex;align-items:stretch}.contact-form__topic-options .wpcf7-list-item>label{position:relative;width:100%;height:100%;display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);min-height:60px;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out-expo),background var(--duration-fast) var(--ease-out-expo)}.contact-form__topic-options .wpcf7-list-item>label:hover{border-color:var(--color-border-strong)}@media (hover:none){.contact-form__topic-options .wpcf7-list-item>label:hover{border-color:var(--color-border-default)}}.contact-form__topic-options .wpcf7-list-item>label::before{content:"";flex-shrink:0;width:20px;height:20px;margin-top:2px;border:2px solid var(--color-border-strong);border-radius:var(--radius-full);background:var(--color-bg-primary);transition:border-color var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) var(--ease-out-expo)}.contact-form__topic-options .wpcf7-list-item>label:has(input[type=radio]:checked){border-color:var(--color-brand);background:var(--color-glass-brand)}.contact-form__topic-options .wpcf7-list-item>label:has(input[type=radio]:checked)::before{border-color:var(--color-brand);box-shadow:inset 0 0 0 5px var(--color-brand)}.contact-form__topic-options .wpcf7-list-item>label:focus-within{border-color:var(--color-brand);box-shadow:0 0 0 3px rgba(6,123,123,.15);outline:0}.contact-form__topic-options .wpcf7-list-item input[type=radio]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.contact-form__topic-options .wpcf7-list-item-label{display:block}.contact-form__field--consent .wpcf7-acceptance,.contact-form__field--consent .wpcf7-form-control-wrap{display:block}.contact-form__field--consent .wpcf7-list-item{margin:0;display:block}.contact-form__field--consent .wpcf7-list-item>label{display:flex;align-items:flex-start;gap:var(--space-2);cursor:pointer;font-size:var(--fs-base);color:var(--color-text-primary);line-height:var(--lh-relaxed)}.contact-form__field--consent .wpcf7-list-item>label input[type=checkbox]{margin-top:4px;flex-shrink:0;width:18px;height:18px;accent-color:var(--color-brand)}.contact-form__field--consent .wpcf7-list-item-label a{color:var(--color-brand);text-decoration:underline}.contact-form__submit{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-top:var(--space-5)}.contact-form__submit input[type=button],.contact-form__submit input[type=submit]{-webkit-appearance:none;appearance:none;font-family:inherit;cursor:pointer}.contact-form__submit input.btn{background-clip:padding-box;text-transform:none;letter-spacing:var(--ls-tight)}.contact-form__submit input.btn:disabled{opacity:.5;cursor:not-allowed}.contact-form__submit input.wpcf7c-force-hide{display:none}.wpcf7-confirm-message{background:var(--color-glass-brand);border-left:3px solid var(--color-brand);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);font-size:var(--fs-sm);color:var(--color-text-primary)}.wpcf7-response-output{margin:var(--space-4) 0!important;padding:var(--space-3) var(--space-4)!important;border:1px solid var(--color-border-default)!important;border-radius:var(--radius-md);font-size:var(--fs-sm);line-height:var(--lh-relaxed)}.wpcf7 form.sent .wpcf7-response-output{border-color:var(--color-brand)!important;background:var(--color-glass-brand)}.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.invalid .wpcf7-response-output{border-color:var(--color-accent-empathy)!important;background:rgba(231,111,142,.08)}.wpcf7-not-valid-tip{display:block;margin-top:var(--space-1);font-size:var(--fs-sm);color:var(--color-accent-empathy)}.wpcf7-form-control.wpcf7-not-valid{border-color:var(--color-accent-empathy)!important}body.paged main{padding-top:calc(var(--header-height,64px) + var(--space-5))}@media (min-width:1024px){body.paged main{padding-top:calc(var(--header-height,64px) + var(--space-6))}}a[target="_blank"]:not(.no-ext-icon):not([class*=btn]):not([class*=card]):not([class*=banner]):not([class*=cell]):not([class*=sns]):not([class*=cta]):not([class*=share]):not([class*="--line"])::after{content:"";display:inline-block;width:.7em;height:.7em;margin-left:.22em;vertical-align:-.04em;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 11 11 5'/%3E%3Cpath d='M6.4 5H11v4.6'/%3E%3C/svg%3E") no-repeat center/contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 11 11 5'/%3E%3Cpath d='M6.4 5H11v4.6'/%3E%3C/svg%3E") no-repeat center/contain;opacity:.7}.section-spark{position:absolute;top:var(--space-6);right:var(--space-5);width:40px;height:40px;opacity:.85;pointer-events:none;user-select:none;z-index:1}@media (max-width:767px){.section-spark{width:30px;height:30px;top:var(--space-5);right:var(--space-4)}}.ai-check-band{background:var(--color-brand,#067b7b);color:#fff;padding:clamp(28px,5vw,52px) 0}.ai-check-band__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6,32px);flex-wrap:wrap}.ai-check-band__copy{flex:1 1 460px;min-width:0}.ai-check-band__eyebrow{font-size:13px;font-weight:700;letter-spacing:.08em;color:rgba(255,255,255,.85);margin:0 0 10px}.ai-check-band__title{font-size:clamp(20px, 3.4vw, 30px);font-weight:800;line-height:1.4;margin:0 0 12px;color:#fff}.ai-check-band__lead{font-size:15px;line-height:1.85;color:rgba(255,255,255,.92);margin:0;max-width:60ch}.ai-check-band a.ai-check-band__btn{flex:0 0 auto;background:#fff;color:var(--brand-700,#054f4f);border:1px solid #fff;text-align:center;line-height:1.4}.ai-check-band a.ai-check-band__btn:hover{background:var(--color-accent-action,#f4a340);border-color:var(--color-accent-action,#f4a340);color:#1a2826}.ai-check-band__arrow{margin-left:8px}@media (max-width:767px){.ai-check-band__inner{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--space-5,24px)}.ai-check-band__copy{flex:0 0 auto}.ai-check-band a.ai-check-band__btn{width:100%;justify-content:center}}
/* ===== coletlab-shared-finalcta ===== */
.site-footer{margin-top:0}.about-final-cta{background:var(--color-bg-dark-primary);color:var(--color-text-dark-primary);padding-block:var(--space-11) var(--space-10)}@media (max-width:1023px){.about-final-cta{padding-block:var(--space-10) var(--space-9)}}.about-final-cta .final-cta__inner{display:block;text-align:left;gap:var(--space-7)}.about-final-cta .final-cta__title{color:var(--color-text-dark-primary);font-size:var(--fs-3xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);margin:0;text-align:left}.about-final-cta .final-cta__lead{color:var(--color-text-dark-secondary);font-size:var(--fs-base);line-height:var(--lh-loose);max-width:none;margin:var(--space-5) 0 0;text-align:left}.about-final-cta .final-cta__buttons{margin-top:var(--space-6);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--space-3);justify-content:flex-start;align-items:stretch}.about-final-cta .final-cta__sub-link{margin-top:var(--space-6);font-size:var(--fs-sm);text-align:left;color:var(--color-text-dark-muted)}.about-final-cta .final-cta__sub-link a{color:var(--color-brand-300);border-bottom-color:rgba(91,174,174,.3)}.about-final-cta .final-cta__sub-link a:hover{color:var(--color-brand-300);border-bottom-color:var(--color-brand-300)}.about-final-cta::before{width:min(1100px,90vw);height:min(720px,70vh);background:radial-gradient(ellipse at center,rgba(91,174,174,.22) 0,rgba(91,174,174,.08) 35%,transparent 65%);filter:blur(60px)}.about-final-cta::after{content:"";position:absolute;inset:0;z-index:var(--z-behind);pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse at center,black 30%,transparent 78%);-webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 78%)}.about-final-cta .section-label__en,.about-final-cta .section-label__num{color:var(--color-brand-300)}.about-final-cta .final-cta__price-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:var(--space-5) 0 0;padding:0;border-block:1px solid rgba(232,240,240,0.16);background:rgba(232,240,240,.12);list-style:none}.about-final-cta .final-cta__price-list>div{padding:var(--space-4);background:rgba(10,20,20,.76)}.about-final-cta .final-cta__price-list dt{margin:0 0 var(--space-1);color:var(--color-brand-300);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:0;text-transform:none}.about-final-cta .final-cta__price-list dd{margin:0;color:var(--color-text-dark-primary);font-size:var(--fs-base);font-weight:var(--fw-bold);line-height:var(--lh-snug)}.about-final-cta .about-final-cta__tel,.about-final-cta .btn--secondary{color:var(--color-text-dark-primary);background:var(--color-glass-dark-default);border:1px solid var(--color-border-dark-default);font-family:var(--font-mono),var(--font-sans-jp);font-feature-settings:"tnum" 1;letter-spacing:.01em}.about-final-cta .about-final-cta__tel:hover,.about-final-cta .btn--secondary:hover{color:var(--color-brand-300);background:var(--color-glass-dark-strong);border-color:var(--color-border-dark-strong);transform:translateY(-2px)}@media (max-width:767px){.about-final-cta .final-cta__price-list{grid-template-columns:1fr}.about-final-cta .final-cta__buttons{width:100%;flex-direction:column;align-items:stretch}.about-final-cta .final-cta__buttons .btn{width:100%;min-height:56px}}
/* ===== coletlab-page-home ===== */
/* ============================================================
 * pages/home.css ─ トップページ専用スタイル（v2）
 *
 * 構成：Hero / Trust Bar / Bento / Strengths / Case Study /
 *      AI Lab / News & Column / Final CTA
 * 設計：ライト基盤＋ダーク強調（Case Study / AI Lab）のハイブリッド
 * ============================================================ */

/* ============================================================
 * Hero Section
 * ============================================================ */

.hero {
	position: relative;
	min-height: 100vh;
	display: flex;
	align-items: center;
	padding-top: calc(64px + var(--space-7)); /* header高さ＋余白 */
	padding-bottom: var(--space-9);
	overflow: hidden;
	isolation: isolate;
	background: var(--color-bg-primary);
}

/* ─── ヒーロー右側のSVGコンポジション領域（about/services と同一仕様に統一） ─── */
.hero__visual {
	position: absolute;
	top: 50%;
	right: max(var(--space-5), calc((100vw - var(--container-wide)) / 2 + var(--space-5)));
	transform: translateY(-50%);
	width: 46%;
	max-width: 600px;
	z-index: 0;
	pointer-events: none;
	overflow: visible;
	opacity: 0;
	animation: hero-visual-in var(--duration-slowest) var(--ease-out-expo) 1.4s forwards;
}

/* SP・タブレット（〜1023px）：KV画像の背景化＋オーバーレイは hero-viewport.css に集約。
   ここではテキスト配置と SCROLL インジケーターの抑制のみ。 */
@media (max-width: 1023px) {
	.hero {
		padding-bottom: var(--space-7);
	}

	/* SP では SCROLL インジケーターを非表示。
	   .hero--implementation-map 配下も specificity を合わせて非表示にする。 */
	.hero__scroll,
	.hero--implementation-map .hero__scroll {
		display: none;
	}
}

.hero__visual img,
.hero__visual svg {
	width: 100%;
	height: auto;
	display: block;
}

@keyframes hero-visual-in {
	from { opacity: 0; transform: translateY(-50%) scale(0.96); }
	to   { opacity: 1; transform: translateY(-50%) scale(1); }
}

/* SP用：transform は使わず、opacity を 1 までフルに上げる（背景化されたあとも HMR 用に保持） */
@keyframes hero-visual-in-sp {
	from { opacity: 0; transform: scale(0.96); }
	to   { opacity: 1; transform: scale(1); }
}

/* ─── 背景の極薄メガタイポグラフィ「INTELLIGENCE / EMPATHY」 ─── */
.hero__bg-typo {
	position: absolute;
	inset: 0;
	pointer-events: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-family: var(--font-sans-latin);
	font-size: clamp(5rem, 16vw, 16rem);
	font-weight: var(--fw-extrabold);
	color: var(--color-text-primary);
	opacity: 0.04;  /* ライト基盤では少し上げて視認 */
	letter-spacing: var(--ls-tight);
	white-space: nowrap;
	z-index: 0;
	user-select: none;
	overflow: hidden;
}

.hero__bg-typo span {
	display: block;
}

.hero__bg-typo span:first-child {
	transform: translateX(-10%);
}

.hero__bg-typo span:last-child {
	transform: translateX(10%);
}

/* ─── インナーコンテナ：左にコピー、右にSVGコンポジション（隣に重ねる） ─── */
.hero__inner {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	max-width: var(--container-wide);
	margin-inline: auto;
	padding-inline: var(--space-4);
	position: relative;
	z-index: 1;
}

@media (min-width: 768px) {
	.hero__inner {
		padding-inline: var(--space-6);
	}
}

/* ─── Content side（テキストを左カラムに） ─── */
.hero__content {
	display: flex;
	flex-direction: column;
	gap: var(--space-5);
	width: 100%;
	max-width: 640px;
}

@media (min-width: 1024px) {
	.hero__content {
		max-width: 600px;
		margin-right: auto;
	}
}

/* タブレット〜SP：コンテンツの max-width を解除し、container--wide 幅いっぱいへ。
   背景の極薄メガタイポは画面幅を超えないようサイズ・寄せを抑制。 */
@media (max-width: 1023px) {
	.hero__content {
		max-width: none;
	}

	.hero__bg-typo {
		font-size: clamp(3rem, 14vw, 6rem);
	}

	.hero__bg-typo span:first-child,
	.hero__bg-typo span:last-child {
		transform: none;
	}
}

/* 巨大な大見出し（キネティック・タイポグラフィ） */
.hero__title {
	font-size: var(--fs-display-lg);
	line-height: 1.3;
	letter-spacing: var(--ls-tighter);
	color: var(--color-text-primary);
	font-weight: var(--fw-extrabold);
	font-feature-settings: "palt";
}

/* SP（〜767px）でメインコピーを一段大きく：40〜44pxの主役級サイズで主張 */
@media (max-width: 767px) {
	.hero__title {
		font-size: clamp(2.5rem, 11vw, 3.25rem);  /* 40〜52px */
		line-height: 1.3;
		letter-spacing: -0.02em;
	}
}

/* PCの句点孤立対策。SPでは text-flow.css 側で折り返しを許可する。 */
.hero__title-line {
	display: inline-block;
	white-space: nowrap;
}

/* 各「語」を inline-block にしてフェードインさせる */
.hero__title .word {
	display: inline-block;
	/* LCP要素のため opacity:0 で隠さない。テキストは即描画し、入場演出は
	   transform（合成プロパティ）のみで行う＝LCP計測を遅らせず CLS も出さない。 */
	transform: translateY(24px);
	animation: hero-word-in var(--duration-slowest) var(--ease-out-expo) forwards;
}

.hero__title .word:nth-child(1) { animation-delay: 0.0s; }
.hero__title .word:nth-child(2) { animation-delay: 0.25s; }
.hero__title .word:nth-child(3) { animation-delay: 0.50s; }
.hero__title .word:nth-child(4) { animation-delay: 0.75s; }

/* 強調語（実装する）：スクロール連動シャイン＋動的アンダーライン
   `--hero-shine` (0→1) がスクロールで増えると、グラデが左→右へ走る */
.hero__title .word--accent {
	position: relative;
	display: inline-block;
	background-image: linear-gradient(
		100deg,
		var(--color-accent) 0%,
		var(--color-accent) 38%,
		var(--color-brand) 50%,
		var(--color-intelligence) 62%,
		var(--color-accent) 100%
	);
	background-size: 280% 100%;
	background-position: calc((1 - var(--hero-shine, 0)) * 100%) 0;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	transition: background-position 80ms linear;
}

@media (prefers-reduced-motion: reduce) {
	.hero__title .word--accent {
		background: none;
		-webkit-text-fill-color: var(--color-accent);
		color: var(--color-accent);
	}
}

@keyframes hero-word-in {
	from { transform: translateY(24px); }
	to   { transform: translateY(0); }
}

/* English overline（タグライン上の極小ラベル） */
.hero__overline {
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	font-weight: var(--fw-semibold);
	letter-spacing: var(--ls-widest);
	text-transform: uppercase;
	color: var(--color-brand);
	opacity: 0;
	animation: hero-fade-in var(--duration-slow) var(--ease-out-expo) 0.2s forwards;
	margin-bottom: calc(var(--space-3) * -1);
}

/* サブキャッチ */
.hero__subtitle {
	font-size: clamp(1.125rem, 2.2vw, 1.5rem);
	font-weight: var(--fw-semibold);
	line-height: var(--lh-snug);
	color: var(--color-text-primary);
	letter-spacing: var(--ls-tight);
	opacity: 0;
	animation: hero-fade-in var(--duration-slow) var(--ease-out-expo) 1.0s forwards;
}

.hero__subtitle .x-mark {
	color: var(--color-accent);
	margin-inline: 0.2em;
	font-weight: var(--fw-regular);
}

/* リード文 */
.hero__lead {
	font-size: var(--fs-base);
	color: var(--color-text-secondary);
	line-height: var(--lh-loose);
	max-width: 540px;
	opacity: 0;
	animation: hero-fade-in var(--duration-slow) var(--ease-out-expo) 1.2s forwards;
}

@keyframes hero-fade-in {
	from { opacity: 0; transform: translateY(12px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* CTA グループ */
.hero__cta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-3);
	margin-top: var(--space-3);
	opacity: 0;
	animation: hero-fade-in var(--duration-slow) var(--ease-out-expo) 1.4s forwards;
}

@media (min-width: 640px) {
	.hero__cta {
		gap: var(--space-4);
	}
}

/* SP（〜767px）ではCTA2ボタンを画面センターに配置＆主CTAは横幅フル */
@media (max-width: 767px) {
	.hero__cta {
		justify-content: center;
		gap: var(--space-3);
		margin-top: var(--space-5);  /* リード文との余白を広めに */
	}

	/* 主要CTA（btn--primary）はフル幅でタップしやすく、視認性 18px */
	.hero__cta .btn--primary {
		flex: 1 1 100%;
		width: 100%;
		min-height: 56px;
		font-size: var(--fs-lg);
		justify-content: center;
	}

	/* 副CTA（btn--ghost）：横幅フルで読みやすく */
	.hero__cta .btn--ghost {
		flex: 1 1 100%;
		width: 100%;
		min-height: 48px;
		font-size: var(--fs-base);
		justify-content: center;
	}

	/* SP でリード文・サブタイトル・definition のサイズコントラストを強化 */
	.hero__lead {
		font-size: var(--fs-lg);  /* 18px */
		line-height: 1.75;
	}

	.hero__subtitle {
		font-size: 1.25rem;  /* 20px */
		line-height: 1.45;
	}

	.hero__definition {
		font-size: var(--fs-base);  /* 16px */
	}

	.hero__overline {
		font-size: 0.8125rem;  /* 13px：少し見やすく */
	}

	/* hero__content の項目間 gap を広めに：呼吸する余白 */
	.hero__content {
		gap: var(--space-4);
	}

	/* hero セクション全体の上下余白：詰まらず空きすぎない */
	.hero {
		padding-top: calc(64px + var(--space-6));
		padding-bottom: var(--space-8);
	}

	/* SVG ヒーロービジュアル：SPで主役級サイズに */
	.hero__visual {
		max-width: 360px;
		margin-top: var(--space-6);
	}
}

/* ─── Scroll indicator ─── */
.hero__scroll {
	position: absolute;
	bottom: var(--space-5);
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-2);
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	letter-spacing: var(--ls-widest);
	text-transform: uppercase;
	color: var(--color-text-muted);
	opacity: 0;
	/* hero-fade-in は translateY のみだが transform プロパティ全体を上書きしてしまうため、SCROLL専用の keyframes を使う */
	animation: hero-scroll-fade-in var(--duration-slow) var(--ease-out-expo) 2.0s forwards;
}

@keyframes hero-scroll-fade-in {
	from { opacity: 0; transform: translate(-50%, 12px); }
	to   { opacity: 1; transform: translate(-50%, 0); }
}

.hero__scroll-line {
	width: 1px;
	height: 32px;
	background: linear-gradient(
		to bottom,
		transparent,
		var(--color-brand)
	);
	/* transform-origin は固定（keyframes 内で切り替えるとコンポジタ非対応になり
	 * Lighthouse の非合成アニメ警告が出る）。後半の「下端を残して縮む」動きは
	 * translateY(100%) との合成で同じ見た目を transform のみで再現する */
	transform-origin: top;
	animation: scroll-line-move 2s var(--ease-in-out-quart) infinite;
}

@keyframes scroll-line-move {
	0%   { transform: translateY(0) scaleY(0); }
	50%  { transform: translateY(0) scaleY(1); }
	100% { transform: translateY(100%) scaleY(0); }
}


/* ============================================================
 * Hero 機能定義（タグライン直下の1行）
 * ============================================================ */

.hero__definition {
	font-size: clamp(1rem, 1.5vw, 1.25rem);
	font-weight: var(--fw-semibold);
	color: var(--color-brand);
	letter-spacing: var(--ls-tight);
	line-height: var(--lh-snug);
	opacity: 0;
	animation: hero-fade-in var(--duration-slow) var(--ease-out-expo) 0.85s forwards;
}

/* ============================================================
 * Home KV Variation
 * 生成アート「実装の地図」を、左コピーと同じ紙面上に敷く。
 * ============================================================ */

.hero--implementation-map {
	min-height: 100svh;
	padding-top: calc(64px + var(--space-6));
	padding-bottom: var(--space-8);
	background: var(--color-bg-primary);
	color: var(--color-text-primary);
}


.hero--implementation-map::before,
.hero--implementation-map::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
}

/* 左：明朝コピーの可読性を守る半透明ベール。右：設計図を濃く見せるため透明寄り。
   ただし図面は左(STRATEGY)→中央(IMPLEMENT)→右(RESULT)の意味の流れを持つため、
   左端も完全には隠さず、製図線が紙に薄く透ける程度に留める。 */
.hero--implementation-map::before {
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(250, 249, 247, 0.9) 0%, rgba(250, 249, 247, 0.82) 36%, rgba(250, 249, 247, 0.42) 58%, rgba(250, 249, 247, 0.04) 82%),
		radial-gradient(circle at 16% 22%, rgba(6, 123, 123, 0.06), transparent 32%),
		linear-gradient(180deg, rgba(250, 249, 247, 0.06) 0%, rgba(250, 249, 247, 0) 18%, rgba(250, 249, 247, 0) 80%, rgba(250, 249, 247, 0.9) 100%);
}

/* フィルムグレイン：軽量なSVGノイズを data-URI でタイル。外部リクエスト 0。
   mix-blend-mode で紙にざらつきを溶け込ませ、デジタルなのに手触りを出す。 */
.hero--implementation-map::after {
	z-index: 2;
	display: block;
	opacity: 0.5;
	mix-blend-mode: multiply;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");
	background-size: 160px 160px;
	/* グレインの自動移動を停止：背景がチラついて動く印象になるため静的グレインにする（でぐ指摘） */
}

/* グレインを微小に動かして“フィルムが回っている”質感に（重くならない transform のみ） */
@keyframes hero-grain-shift {
	0%   { transform: translate3d(0, 0, 0); }
	20%  { transform: translate3d(-2%, 1%, 0); }
	40%  { transform: translate3d(1%, -2%, 0); }
	60%  { transform: translate3d(-1%, 2%, 0); }
	80%  { transform: translate3d(2%, -1%, 0); }
	100% { transform: translate3d(0, 0, 0); }
}

.hero--implementation-map .hero__bg-typo {
	display: none;
}

.hero--implementation-map .hero__inner {
	position: relative;
	z-index: 3;
	min-height: calc(100svh - 64px - var(--space-6));
	align-items: center;
}

.hero--implementation-map .hero__content {
	position: relative;
	max-width: min(900px, 74vw);
	gap: var(--space-6);
	padding-block: var(--space-7);
}

.hero--implementation-map .hero__content::before {
	content: "";
	position: absolute;
	top: calc(var(--space-3) * -1);
	left: 0;
	width: 9rem;
	height: 0.5rem;
	background:
		linear-gradient(90deg, var(--color-brand) 0 36%, var(--color-empathy) 36% 67%, var(--color-action) 67% 100%);
	border-radius: var(--radius-full);
	opacity: 0.9;
	transform: scaleX(0);
	transform-origin: left center;
	animation: hero-accent-line-draw 0.72s var(--ease-out-expo) 1.08s forwards;
}

.hero--implementation-map .hero__overline {
	color: var(--color-brand-700);
}

.hero--implementation-map .hero__title {
	font-size: 5.75rem;
	line-height: 1.3;
	letter-spacing: 0;
	color: var(--color-text-primary);
	text-wrap: balance;
}

.hero--implementation-map .hero__title .word--accent {
	text-shadow: 0 10px 30px rgba(6, 123, 123, 0.14);
}

/* KVタイトル：PCではJSがポインタ追従の transform を当てる（will-change で滑らかに）。
   アクセント語は触らない間も微かに“呼吸”して、組み上がり続ける生命感を出す。 */
.hero--implementation-map .hero__title {
	will-change: transform;
	transition: transform 0.12s ease-out;
}

.hero--implementation-map .hero__title .word--accent {
	will-change: transform;
	transform-origin: center;
	animation:
		hero-accent-breathe 5.2s var(--ease-in-out-quart, ease-in-out) infinite;
}

@keyframes hero-accent-breathe {
	0%, 100% {
		text-shadow: 0 10px 30px rgba(6, 123, 123, 0.14);
		letter-spacing: 0;
	}
	50% {
		text-shadow: 0 14px 38px rgba(6, 123, 123, 0.22);
		letter-spacing: 0.012em;
	}
}

/* PCでJSが word--accent に inline transform を当てると、breathe の transform と
   競合してJS側が勝つ。letter-spacing / text-shadow の呼吸は transform と独立なので
   両立する（JSは translate/rotate のみ操作）。 */

@media (prefers-reduced-motion: reduce) {
	.hero--implementation-map .hero__title,
	.hero--implementation-map .hero__title .word--accent {
		animation: none;
		transition: none;
		transform: none;
		will-change: auto;
	}
}

.hero--implementation-map .hero__definition {
	max-width: none;
	color: var(--color-brand-700);
	font-size: clamp(1.125rem, 1.35vw, 1.25rem);
	font-weight: var(--fw-semibold);
	line-height: 1.72;
	letter-spacing: 0;
}

@media (min-width: 1024px) {
	.hero--implementation-map .hero__definition-line {
		display: inline-block;
		white-space: nowrap;
	}
}

.hero--implementation-map .hero__visual {
	position: absolute;
	inset: 0;
	top: 0;
	right: 0;
	transform: none;
	width: 100%;
	max-width: none;
	height: 100%;
	z-index: 0;
	overflow: hidden;
	/* canvas が自身で「組成」アニメを描くため、コンテナの opacity フェードは行わない。
	   テキスト（h1/リード/CTA）は最前面で即表示し、canvas 初期化遅延は LCP に影響しない。 */
	opacity: 1;
	animation: none;
	filter: none;
}

/* 自己組成マップ canvas：実寸は JS が px 指定（DPR 上限2）。
   CSS は背景レイヤーとして 100% 充填のフォールバックを与える。 */
/* canvas は紙にインクが乗る質感を出すため multiply で合成。
   ティール/コッパーの線が紙地 #FAF9F7 に沈み込み、手描き設計図のように見える。 */
.hero--implementation-map .hero__map-canvas {
	display: block;
	width: 100%;
	height: 100%;
	mix-blend-mode: multiply;
}

/* hero__visual / canvas は pointer-events: none のまま。
   ポインタ反応は JS が親 .hero（host）の pointermove を購読する。
   イベントは canvas を素通りして .hero に届くため、テキスト選択やリンク操作を一切奪わない。 */

.hero--implementation-map .hero__scroll {
	z-index: 3;
}

.hero--implementation-map .hero__scene-label,
.hero--implementation-map .hero__visual svg {
	display: none;
}

@keyframes hero-map-art-in {
	from {
		opacity: 0;
		transform: scale(1.025);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}

.hero--implementation-map .hero__title .word {
	opacity: 1;
	transform: none;
	animation: none;
}

.hero--implementation-map .hero__cta {
	opacity: 0;
	transform: translate3d(-18px, 14px, 0) rotate(-0.25deg);
	animation: hero-copy-column-in 0.78s var(--ease-out-expo) 1.52s forwards;
	will-change: opacity, transform;
}

/* LCP候補の .hero__title / .hero__definition は opacity:0 フェード群に入れない。
   opacity:0 で隠すと LCP の描画がアニメ完了（delay+0.86s）まで遅れるため。
   h1 は子 .word の transform スライドが入場を担い（段階5）、リード文は下の
   transform のみの入場（hero-definition-in）で即描画＋演出を両立する。 */
.hero--implementation-map .hero__overline {
	opacity: 0;
	transform: translate3d(-22px, 18px, 0) rotate(-0.4deg);
	animation: hero-copy-column-in 0.86s var(--ease-out-expo) 0.18s forwards;
	will-change: opacity, transform;
}

/* リード文（LCP候補）：opacity は常に1。transform（合成プロパティ）だけで
   スライド入場するため、テキストは初回ペイントから見えて LCP を遅らせない。
   ※ 基底 .hero__definition（434行付近）の opacity:0 + hero-fade-in を打ち消すため
   opacity:1 を明示する。 */
.hero--implementation-map .hero__definition {
	opacity: 1;
	transform: translate3d(-22px, 18px, 0) rotate(-0.4deg);
	animation: hero-definition-in 0.86s var(--ease-out-expo) forwards;
	will-change: transform;
}

@keyframes hero-definition-in {
	from {
		transform: translate3d(-22px, 18px, 0) rotate(-0.4deg);
	}
	to {
		transform: translate3d(0, 0, 0) rotate(0deg);
	}
}

@keyframes hero-copy-column-in {
	from {
		opacity: 0;
		transform: translate3d(-22px, 18px, 0) rotate(-0.4deg);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0) rotate(0deg);
	}
}

@keyframes hero-accent-line-draw {
	from {
		transform: scaleX(0);
	}
	to {
		transform: scaleX(1);
	}
}

@keyframes hero-diagonal-line-draw {
	from {
		background-size: 0% 100%, 100% 100%;
	}
	to {
		background-size: 100% 100%, 100% 100%;
	}
}

@media (min-width: 1280px) {
	.hero--implementation-map .hero__title {
		font-size: 6.6rem;
	}
}

@media (max-width: 1180px) and (min-width: 1024px) {
	.hero--implementation-map .hero__title {
		font-size: 5rem;
	}

	.hero--implementation-map .hero__content {
		max-width: min(860px, calc(100vw - var(--space-8)));
	}
}

@media (max-width: 1023px) {
	.hero--implementation-map {
		min-height: 0; /* SP/タブレットでは vh 固定を解除し、コンテンツの長さに任せる */
		/* ヘッダー（fixed 64px）の下に十分な呼吸を確保（48px） */
		padding-top: calc(64px + var(--space-7));
	}

	/* SP：上部の見出し帯だけ可読を担保し、下半分は設計図が透けて見えるよう薄める。
	   指でスクロールするだけで製図が引かれていく様子を、テキスト下でも見せる。 */
	.hero--implementation-map::before {
		z-index: 0;
		background:
			linear-gradient(180deg, rgba(250, 249, 247, 0.62) 0%, rgba(250, 249, 247, 0.8) 30%, rgba(250, 249, 247, 0.42) 60%, rgba(250, 249, 247, 0.18) 100%),
			radial-gradient(circle at 18% 16%, rgba(6, 123, 123, 0.06), transparent 32%);
	}

	.hero--implementation-map .hero__inner {
		min-height: auto;
		align-items: flex-start;
		order: 1;
	}

	.hero--implementation-map .hero__content {
		max-width: none;
		gap: var(--space-5);
		padding-block: var(--space-5) var(--space-3);
	}

	.hero--implementation-map .hero__title {
		font-size: 4.25rem;
		line-height: 1.3;
	}

	/* SP/タブレット：自己組成マップ canvas を hero 全体に背景として広げ、
	   ::before のオーバーレイ（home.css 459行）でテキスト可読性を保つ。 */
	.hero--implementation-map .hero__visual {
		position: absolute;
		inset: 0;
		top: 0;
		right: 0;
		width: 100%;
		max-width: none;
		height: 100%;
		margin: 0;
		padding: 0;
		aspect-ratio: auto;
		transform: none;
		z-index: 0;
		overflow: hidden;
		pointer-events: none;
		opacity: 0.5; /* SP/タブレット：図を薄くしてコピーの可読性を優先（2026-06-01） */
		animation: none;
	}

	.hero--implementation-map .hero__map-canvas {
		display: block;
		width: 100%;
		height: 100%;
	}

	/* SPはグレインを控えめに（紙の質感は残しつつ視認性を最優先） */
	.hero--implementation-map::after {
		opacity: 0.38;
	}
}

@keyframes hero-map-art-in-sp {
	from {
		opacity: 0;
		transform: translateY(16px) scale(0.97);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@media (max-width: 767px) {
	.hero--implementation-map {
		padding-bottom: var(--space-7);
	}

	.hero--implementation-map .hero__content {
		gap: var(--space-3);
	}

	.hero--implementation-map .hero__content::before {
		width: 6.5rem;
		height: 0.42rem;
	}

	/* SP：ブラウザ幅にできるだけいっぱい（「成果へ実装する。」8文字が画面幅に
	   ぴったり収まる最大サイズ）。font-feature-settings: "palt" による字詰めも考慮。
	   句点「。」が右端で切れないよう 12vw に抑える。 */
	.hero--implementation-map .hero__title {
		font-size: clamp(2.5rem, 11.5vw, 3.5rem);
		line-height: 1.3;
		letter-spacing: -0.04em;
	}

	.hero--implementation-map .hero__visual {
		width: 100%;
		margin-top: 0;
	}

	.hero--implementation-map .hero__visual img {
		object-position: 62% center;
	}
}

/* 380px 以下の特別縮小は廃止：
   SP（767px 以下）の clamp(2.75rem, 12.5vw, 3.75rem) が
   小さい画面でも自動でスケールするので不要。 */


/* ============================================================
 * Section 01.5 ─ Trust Bar（暫定：数＋テキスト名）
 * ============================================================ */

.trust-bar {
	position: relative;
	padding-block: var(--space-6);
	background: var(--color-bg-surface);
	border-block: 1px solid var(--color-border-subtle);
	overflow: hidden;
}

.trust-bar__inner {
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
	align-items: center;
	text-align: center;
}

.trust-bar__label {
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	font-weight: var(--fw-bold);
	letter-spacing: var(--ls-widest);
	text-transform: uppercase;
	color: var(--color-brand);
}

.trust-bar__metrics {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-5);
	justify-content: center;
	align-items: center;
	font-size: var(--fs-sm);
	color: var(--color-text-secondary);
}

.trust-bar__metrics strong {
	color: var(--color-text-primary);
	font-weight: var(--fw-bold);
	font-family: var(--font-sans-latin);
	letter-spacing: var(--ls-tight);
	font-size: 1.05em;
}

.trust-bar__divider {
	display: inline-block;
	width: 1px;
	height: 14px;
	background: var(--color-border-default);
}

.trust-bar__partners {
	font-size: var(--fs-xs);
	color: var(--color-text-muted);
	letter-spacing: var(--ls-tight);
	line-height: var(--lh-relaxed);
	max-width: 80ch;
}


/* ============================================================
 * Section 01.6 ─ 目的別ルーティング
 * ============================================================ */

.purpose-router {
	position: relative;
	padding-block: var(--space-8);
	background:
		radial-gradient(circle at 8% 14%, rgba(6, 123, 123, 0.06), transparent 28%),
		radial-gradient(circle at 94% 8%, rgba(201, 136, 95, 0.06), transparent 24%),
		linear-gradient(180deg, var(--color-bg-primary) 0%, var(--color-bg-surface) 48%, var(--color-bg-primary) 100%);
	overflow: hidden;
	isolation: isolate;
}

.purpose-router::before {
	content: "";
	position: absolute;
	inset: var(--space-5);
	border: 1px solid rgba(6, 123, 123, 0.08);
	border-radius: 4px;
	pointer-events: none;
	z-index: 0;
}

.purpose-router__inner {
	position: relative;
	z-index: 1;
}

.purpose-router__header {
	position: relative;
	margin-bottom: var(--space-6);
}

.purpose-router__title {
	font-size: 3rem;
	font-weight: var(--fw-extrabold);
	line-height: var(--lh-tight);
	color: var(--color-text-primary);
	letter-spacing: 0;
}

.purpose-router__lead {
	margin-top: var(--space-4);
	font-size: var(--fs-base);
	line-height: var(--lh-relaxed);
	color: var(--color-text-secondary);
}

.purpose-router__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-3);
}

@media (min-width: 768px) {
	.purpose-router {
		padding-block: var(--space-9);
	}

	.purpose-router__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--space-4);
	}
}

@media (min-width: 1120px) {
	.purpose-router__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.purpose-card {
	position: relative;
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-areas:
		"kicker arrow"
		"title arrow"
		"desc arrow";
	gap: var(--space-2) var(--space-4);
	min-height: 172px;
	padding: var(--space-5);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.72)),
		radial-gradient(circle at 100% 0%, var(--purpose-accent-soft, rgba(6, 123, 123, 0.10)), transparent 54%);
	border: 1px solid var(--color-border-subtle);
	border-radius: 2px;
	color: var(--color-text-primary);
	text-decoration: none;
	box-shadow: none;
	overflow: hidden;
	transition:
		transform var(--duration-base) var(--ease-out-expo),
		border-color var(--duration-base) var(--ease-out-expo),
		box-shadow var(--duration-slow) var(--ease-out-expo),
		background var(--duration-base) var(--ease-out-expo);
}

.purpose-card::before {
	content: "";
	position: absolute;
	top: var(--space-4);
	left: var(--space-4);
	width: 4rem;
	height: 0.28rem;
	border-radius: var(--radius-full);
	background: var(--purpose-accent, var(--color-brand));
	opacity: 0.88;
}

.purpose-card::after {
	content: "";
	position: absolute;
	right: calc(var(--space-5) * -1);
	bottom: calc(var(--space-5) * -1);
	width: 8.5rem;
	height: 8.5rem;
	border-radius: 50%;
	border: 1px solid var(--purpose-accent-border, rgba(6, 123, 123, 0.22));
	opacity: 0.55;
}

.purpose-card:hover {
	transform: translateY(-5px);
	border-color: var(--purpose-accent-border, var(--color-border-brand));
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 1), rgba(234, 243, 241, 0.82)),
		radial-gradient(circle at 100% 0%, var(--purpose-accent-soft, rgba(6, 123, 123, 0.14)), transparent 56%);
	box-shadow: none;
}

.purpose-card__kicker {
	grid-area: kicker;
	align-self: end;
	margin-top: var(--space-4);
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	font-weight: var(--fw-extrabold);
	letter-spacing: var(--ls-widest);
	text-transform: uppercase;
	color: var(--purpose-accent, var(--color-brand));
}

.purpose-card__title {
	grid-area: title;
	display: block;
	font-size: var(--fs-xl);
	line-height: var(--lh-snug);
	font-weight: var(--fw-extrabold);
	letter-spacing: 0;
}

.purpose-card__desc {
	grid-area: desc;
	display: block;
	font-size: var(--fs-sm);
	line-height: var(--lh-relaxed);
	color: var(--color-text-secondary);
}

.purpose-card__arrow {
	grid-area: arrow;
	align-self: end;
	justify-self: end;
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: var(--radius-full);
	background: var(--purpose-accent, var(--color-brand));
	color: #ffffff;
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xl);
	font-weight: var(--fw-bold);
	line-height: 1;
	transition: transform var(--duration-base) var(--ease-out-expo);
}

.purpose-card:hover .purpose-card__arrow {
	transform: translateX(4px);
}

.purpose-card--ax {
	--purpose-accent: var(--color-brand);
	--purpose-accent-border: rgba(6, 123, 123, 0.38);
	--purpose-accent-soft: rgba(6, 123, 123, 0.13);
}

.purpose-card--geo {
	--purpose-accent: var(--color-brand);
	--purpose-accent-border: rgba(6, 123, 123, 0.38);
	--purpose-accent-soft: rgba(6, 123, 123, 0.16);
}

.purpose-card--meo {
	--purpose-accent: var(--color-brand);
	--purpose-accent-border: rgba(6, 123, 123, 0.34);
	--purpose-accent-soft: rgba(6, 123, 123, 0.13);
}

.purpose-card--instagram {
	--purpose-accent: var(--color-accent);
	--purpose-accent-border: rgba(201, 136, 95, 0.36);
	--purpose-accent-soft: rgba(201, 136, 95, 0.14);
}

.purpose-card--web {
	--purpose-accent: var(--color-accent);
	--purpose-accent-border: rgba(201, 136, 95, 0.38);
	--purpose-accent-soft: rgba(201, 136, 95, 0.16);
}

.purpose-card--marketing {
	--purpose-accent: var(--color-accent);
	--purpose-accent-border: rgba(201, 136, 95, 0.34);
	--purpose-accent-soft: rgba(201, 136, 95, 0.13);
}

.purpose-card--training {
	--purpose-accent: var(--color-brand);
	--purpose-accent-border: rgba(6, 123, 123, 0.36);
	--purpose-accent-soft: rgba(6, 123, 123, 0.13);
}

.owned-service-lane {
	display: grid;
	gap: var(--space-5);
	margin-top: var(--space-7);
	padding-top: var(--space-6);
	border-top: 1px solid var(--color-border-subtle);
}

@media (min-width: 1024px) {
	.owned-service-lane {
		grid-template-columns: minmax(220px, 0.72fr) minmax(0, 1.8fr);
		align-items: center;
		gap: var(--space-6);
	}
}

.owned-service-lane__eyebrow {
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	font-weight: var(--fw-extrabold);
	letter-spacing: var(--ls-widest);
	text-transform: uppercase;
	color: var(--color-brand);
}

.owned-service-lane__title {
	margin-top: var(--space-2);
	font-size: var(--fs-2xl);
	line-height: var(--lh-tight);
	font-weight: var(--fw-extrabold);
	color: var(--color-text-primary);
	letter-spacing: 0;
}

.owned-service-lane__lead {
	margin-top: var(--space-3);
	font-size: var(--fs-sm);
	line-height: var(--lh-relaxed);
	color: var(--color-text-secondary);
}

.owned-service-lane__banners {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-4);
	align-items: stretch;
}

@media (min-width: 768px) {
	.owned-service-lane__banners {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.owned-service-banner {
	display: grid;
	grid-template-rows: auto 1fr;
	min-height: 100%;
	background: var(--color-bg-surface);
	border: 1px solid var(--color-border-subtle);
	border-radius: 2px;
	color: var(--color-text-primary);
	text-decoration: none;
	overflow: hidden;
	box-shadow: none;
	transition:
		transform var(--duration-base) var(--ease-out-expo),
		border-color var(--duration-base) var(--ease-out-expo),
		box-shadow var(--duration-slow) var(--ease-out-expo);
}

.owned-service-banner:hover {
	transform: translateY(-5px);
	border-color: var(--color-border-brand);
	box-shadow: none;
}

.owned-service-banner img {
	width: 100%;
	aspect-ratio: 1200 / 630;
	height: auto;
	object-fit: cover;
	background: var(--color-bg-elevated);
}

.owned-service-banner__body {
	display: grid;
	gap: var(--space-2);
	padding: var(--space-4);
	background: var(--color-bg-surface);
}

.owned-service-banner__eyebrow {
	font-size: var(--fs-xs);
	font-weight: var(--fw-bold);
	line-height: var(--lh-snug);
	color: var(--color-text-secondary);
}

.owned-service-banner__title {
	font-family: var(--font-serif-jp);  /* 見出しは明朝で世界観統一 */
	font-size: var(--fs-lg);
	font-weight: var(--fw-semibold);
	line-height: var(--lh-tight);
	color: var(--color-text-primary);
	letter-spacing: 0;
}

.owned-service-banner__desc {
	display: block;
	font-size: var(--fs-sm);
	line-height: var(--lh-relaxed);
	color: var(--color-text-secondary);
}

.owned-service-banner__cta {
	display: inline-flex;
	align-items: center;
	gap: var(--space-2);
	min-height: 44px;
	width: fit-content;
	margin-top: var(--space-1);
	font-size: var(--fs-sm);
	font-weight: var(--fw-bold);
	color: var(--color-brand);
}

.owned-service-banner__cta::after {
	/* Revipo・AIコード健診は外部サービスへのリンク（target="_blank"）。
	   外部リンクの慣例に合わせ矢印は斜め上向き ↗ にする（でぐ指摘・2026-06-03）。 */
	content: "↗";
	font-family: var(--font-sans-latin);
	transform: translateY(-1px);
}

@media (max-width: 767px) {
	.purpose-router::before {
		inset: var(--space-3);
		border-radius: 2px;
	}

	.purpose-router__title {
		font-size: 2rem;
		line-height: 1.16;
	}

	.purpose-card {
		min-height: 156px;
		padding: var(--space-5) var(--space-4);
	}

	.purpose-card__title {
		font-size: var(--fs-lg);
	}

	.purpose-card__arrow {
		width: 44px;
		height: 44px;
	}
}


/* ============================================================
 * Section 02 ─ 3事業 Bento Grid
 * ============================================================ */

.bento {
	position: relative;
	padding-block: var(--space-9);
	overflow: hidden;
	isolation: isolate;
}

@media (min-width: 1024px) {
	.bento {
		padding-block: var(--space-10);
	}
}

/* セクションヘッダー（グリッド本体と同じ container--wide で左端を揃える） */
.bento__header {
	margin-bottom: var(--space-8);
	position: relative;
}

.bento__title {
	font-size: var(--fs-display-md);
	font-weight: var(--fw-extrabold);
	line-height: var(--lh-tight);
	letter-spacing: var(--ls-tight);
	color: var(--color-text-primary);
	font-feature-settings: "palt";
}

.bento__title span {
	display: block;
}

/* h2直下の TL;DR：セクションの問いに自己完結で答える1〜2文（GEO対応） */
.bento__lead {
	margin-top: var(--space-4);
	font-size: var(--fs-base);
	line-height: var(--lh-relaxed);
	color: var(--color-text-secondary);
	max-width: 64ch;
}

.bento__lead strong {
	color: var(--color-text-primary);
	font-weight: var(--fw-semibold);
}

/* グリッド本体 */
.bento__grid {
	display: grid;
	gap: var(--space-4);
	grid-template-columns: 1fr;
}

@media (min-width: 768px) {
	.bento__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: var(--space-5);
	}
}

/* デスクトップ：5カラム非対称レイアウト */
@media (min-width: 1024px) {
	.bento__grid {
		grid-template-columns: repeat(5, 1fr);
		grid-template-rows: minmax(420px, auto) minmax(360px, auto);
		grid-template-areas:
			"ax    ax    ax    event event"
			"web   web   bridge bridge bridge";
		gap: var(--space-5);
	}

	.bento-cell--ax     { grid-area: ax; }
	.bento-cell--event  { grid-area: event; }
	.bento-cell--web    { grid-area: web; }
	.bento-cell--bridge { grid-area: bridge; }
}

/* ─── Bento Cell 共通 ─── */
.bento-cell {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
	padding: var(--space-6);
	background: var(--color-bg-surface);
	border: 1px solid var(--color-border-subtle);
	border-radius: 2px;
	overflow: hidden;
	transition:
		border-color var(--duration-base) var(--ease-out-expo),
		transform    var(--duration-base) var(--ease-out-expo),
		box-shadow   var(--duration-slow) var(--ease-out-expo);
	isolation: isolate;
}

.bento-cell::before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(
		circle at 100% 0%,
		var(--color-glass-brand) 0%,
		transparent 50%
	);
	z-index: 0;
	pointer-events: none;
	opacity: 0;
	transition: opacity var(--duration-slow) var(--ease-out-expo);
}

.bento-cell:hover {
	border-color: var(--color-border-brand);
	transform: translateY(-6px);
	box-shadow: none;
	background: var(--color-bg-elevated);
}

.bento-cell:hover .bento-cell__title {
	color: var(--color-brand);
}

.bento-cell:hover::before {
	opacity: 1;
}

@media (min-width: 1024px) {
	.bento-cell {
		padding: var(--space-7);
	}
}

/* セル内の重ね順 */
.bento-cell > * {
	position: relative;
	z-index: 1;
}

/* アイコン */
.bento-cell__icon {
	position: absolute;
	z-index: 0;
	pointer-events: none;
	user-select: none;
}

.bento-cell__icon img {
	width: 100%;
	height: auto;
	display: block;
	opacity: 0.45;
	transition:
		transform var(--duration-slowest) var(--ease-out-expo),
		opacity   var(--duration-slow) var(--ease-out-expo);
}

.bento-cell:hover .bento-cell__icon img {
	transform: scale(1.05) rotate(-2deg);
	opacity: 0.75;
}

/* AX セル：右下にやや小さめ（SVGがハッキリしてるのでサイズ控えめに） */
.bento-cell--ax .bento-cell__icon {
	width: 40%;
	bottom: -4%;
	right: -2%;
}

/* イベント セル：右下（サイズアップ） */
.bento-cell--event .bento-cell__icon {
	width: 64%;
	bottom: -10%;
	right: -10%;
}

/* Web集客 セル：右下 */
.bento-cell--web .bento-cell__icon {
	width: 50%;
	bottom: -10%;
	right: -8%;
}

/* ラベル */
.bento-cell__label {
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	font-weight: var(--fw-semibold);
	letter-spacing: var(--ls-widest);
	text-transform: uppercase;
	color: var(--color-brand);
	display: inline-flex;
	align-items: center;
	gap: var(--space-2);
}

.bento-cell--event .bento-cell__label { color: var(--color-empathy); }
.bento-cell--ax .bento-cell__label    { color: var(--color-intelligence); }

.bento-cell__label-ja {
	color: var(--color-text-muted);
	font-family: var(--font-sans-jp);
	letter-spacing: var(--ls-tight);
	text-transform: none;
}

/* タイトル */
.bento-cell__title {
	font-size: clamp(1.25rem, 2.4vw, 1.75rem);
	font-weight: var(--fw-bold);
	line-height: var(--lh-snug);
	letter-spacing: var(--ls-tight);
	color: var(--color-text-primary);
	font-feature-settings: "palt";
}

.bento-cell--ax .bento-cell__title {
	font-size: clamp(1.5rem, 2.8vw, 2.25rem);
}

/* リード */
.bento-cell__lead {
	font-size: var(--fs-sm);
	color: var(--color-text-secondary);
	line-height: var(--lh-loose);
	max-width: 56ch;
}

@media (min-width: 1024px) {
	.bento-cell--ax .bento-cell__lead {
		font-size: var(--fs-base);
		max-width: 50ch;
	}
}

/* 対応領域リスト */
.bento-cell__list {
	display: flex;
	flex-direction: column;
	gap: var(--space-2);
	margin-top: var(--space-2);
}

.bento-cell__list li {
	font-size: var(--fs-sm);
	color: var(--color-text-secondary);
	padding-left: var(--space-4);
	position: relative;
	line-height: var(--lh-relaxed);
}

.bento-cell__list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.7em;
	width: 6px;
	height: 1px;
	background: var(--color-brand);
}

/* CTA矢印 */
.bento-cell__cta {
	margin-top: auto;
	padding-top: var(--space-4);
	font-size: var(--fs-sm);
	font-weight: var(--fw-semibold);
	color: var(--color-text-primary);
	display: inline-flex;
	align-items: center;
	gap: var(--space-2);
	align-self: flex-start;
	transition: color var(--duration-fast) var(--ease-out-expo);
}

.bento-cell__cta::after {
	content: "→";
	transition: transform var(--duration-fast) var(--ease-spring);
	display: inline-block;
	color: var(--color-brand);
}

.bento-cell__cta:hover {
	color: var(--color-brand);
}

.bento-cell__cta:hover::after {
	transform: translateX(6px);
	color: var(--color-brand);
}

/* ─── Bridge セル（シナジー） ─── */
.bento-cell--bridge {
	background: linear-gradient(
		135deg,
		var(--color-bg-elevated) 0%,
		var(--color-bg-surface) 100%
	);
	border-color: var(--color-border-default);
}

.bento-cell--bridge .bento-cell__label {
	color: var(--color-text-secondary);
}

/* Bridge セルの見出しを大きく（AX と同等） */
.bento-cell__title--bridge {
	font-size: clamp(1.5rem, 2.8vw, 2.25rem);
}

/* Bridge セル：右に寄せて配置（3円のシナジーSVG） */
.bento-cell--bridge .bento-cell__icon {
	width: 42%;
	top: 50%;
	right: -4%;
	bottom: auto;
	transform: translateY(-50%);
}

.bento-cell--bridge .bento-cell__icon img {
	opacity: 0.20;
	transition: opacity var(--duration-base) var(--ease-out-expo);
}

.bento-cell--bridge:hover .bento-cell__icon img {
	opacity: 0.45;
}

/* ドット表現：左寄せ（画像が右上なので下部全幅を使う） */
.bento-cell--bridge .bento-cell__synergy {
	justify-content: flex-start;
}

@media (max-width: 767px) {
	.bento-cell--bridge .bento-cell__synergy {
		justify-content: center;
	}
}

/* デスクトップ時：指定フレーズを折り返さない（モバイルでは自然折り返し） */
@media (min-width: 1024px) {
	.bento-cell__lead--bridge .nowrap-line {
		white-space: nowrap;
		display: inline-block;
	}
}

.bento-cell__synergy {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--space-4);
	margin-top: var(--space-5);
	padding-top: var(--space-5);
	border-top: 1px dashed var(--color-border-subtle);
}

.bento-cell__synergy .dot {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: var(--radius-full);
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	font-weight: var(--fw-bold);
	letter-spacing: var(--ls-wider);
	border: 1px solid;
}

.bento-cell__synergy .dot--ax {
	color: var(--color-intelligence);
	border-color: var(--color-intelligence);
}

.bento-cell__synergy .dot--event {
	color: var(--color-empathy);
	border-color: var(--color-empathy);
}

.bento-cell__synergy .dot--web {
	color: var(--color-brand);
	border-color: var(--color-brand);
}

.bento-cell__synergy-plus {
	font-family: var(--font-sans-latin);
	font-weight: var(--fw-bold);
	color: var(--color-text-muted);
}


/* ============================================================
 * Section 05 ─ AI Lab（ラボノート / 動画 / ラボの棚 / 法人相談）
 * ============================================================ */

/* B-5: 全体トーンを抑える方向で、padding と背景強度を縮小 */
.ai-lab {
	position: relative;
	padding-block: var(--space-8);
	/* 背景は override 層で var(--color-bg-dark-primary) に上書きされるため、ここではフォールバックのみ */
	background: var(--color-bg-primary);
	isolation: isolate;
	overflow: hidden;
}

@media (min-width: 1024px) {
	.ai-lab {
		padding-block: var(--space-9);
	}
}

.ai-lab__header {
	margin-bottom: var(--space-7);
	text-align: left;
	position: relative;
}

.ai-lab__header .section-label {
	justify-content: flex-start;
	margin-bottom: var(--space-3);
}

.ai-lab__header-main {
	max-width: 640px;
}

.ai-lab__header-aside {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--space-4);
	max-width: 560px;
}

.ai-lab__header-aside .ai-lab__lead,
.ai-lab__header-aside .ai-lab__about-link {
	margin-top: 0;  /* gap で間隔を一元管理 */
}

@media (min-width: 1024px) {
	.ai-lab__header {
		display: grid;
		grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
		gap: var(--space-6);
		align-items: end;  /* 下揃え：h2末尾とabout_link末尾を視覚的に揃える */
	}

	.ai-lab__header-main,
	.ai-lab__header-aside {
		max-width: none;
	}

	.ai-lab__header-aside {
		/* h2 の line-height(1.1) で生じる descender 余白と視覚バランスを取る微調整 */
		padding-bottom: var(--space-1);
	}
}

.ai-lab__title {
	font-size: var(--fs-display-md);
	font-weight: var(--fw-extrabold);
	line-height: var(--lh-tight);
	letter-spacing: var(--ls-tight);
	color: var(--color-text-primary);
	font-feature-settings: "palt";
}

/* 見出し直下のサブ（emph）。命令形フレーズの強度を活かすため bold＋size up */
.ai-lab__sub {
	display: block;
	margin-top: var(--space-3);
	font-size: clamp(1.125rem, 1.8vw, 1.5rem);
	font-weight: var(--fw-bold);
	color: var(--color-brand);
	letter-spacing: var(--ls-tight);
	font-style: normal;
}

.ai-lab__about-link {
	display: inline-flex;
	align-items: center;
	gap: var(--space-2);
	margin-top: var(--space-5);
	font-size: var(--fs-sm);
	color: var(--color-text-secondary);
	font-weight: var(--fw-medium);
	letter-spacing: var(--ls-tight);
	transition: color var(--duration-fast) var(--ease-out-expo);
	border-bottom: 1px solid var(--color-border-subtle);
	padding-bottom: 2px;
}

.ai-lab__about-link::after {
	content: "→";
	transition: transform var(--duration-fast) var(--ease-spring);
}

.ai-lab__about-link:hover {
	color: var(--color-brand);
	border-bottom-color: var(--color-brand);
}

.ai-lab__about-link:hover::after {
	transform: translateX(4px);
}

.ai-lab__lead {
	margin-top: var(--space-5);
	font-size: var(--fs-base);
	color: var(--color-text-secondary);
	line-height: var(--lh-loose);
}

.ai-lab__lead strong {
	color: var(--color-text-primary);
	font-weight: var(--fw-semibold);
}

/* 非対称グリッド（3事業 Bento と同じ思想で「主役+脇役」構成） */
.ai-lab__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-5);
}

/* iPad：2列 1行+1行 */
@media (min-width: 768px) and (max-width: 1023px) {
	.ai-lab__grid {
		grid-template-columns: 1fr 1fr;
		gap: var(--space-4);
	}
	.ai-lab__channel--article {
		grid-column: 1 / -1;  /* 記事は全幅で目立たせる */
	}
}

/* PC：左に大きな記事カード、右に2つのサブカード縦並び */
@media (min-width: 1024px) {
	.ai-lab__grid {
		grid-template-columns: 3fr 2fr;
		grid-template-rows: 1fr 1fr;
		grid-template-areas:
			"article codecheck"
			"article consult";
		gap: var(--space-4);
	}
	.ai-lab__channel--article   { grid-area: article; }
	.ai-lab__channel--codecheck { grid-area: codecheck; }
	.ai-lab__channel--consult   { grid-area: consult; }
}

/* AIコード健診カード：ダーク背景でブランド色強調（Featured Service） */
.ai-lab__channel--codecheck {
	background: linear-gradient(135deg, #064E4E 0%, #0A3030 100%);
	color: #F4FAF9;
	border-color: rgba(255, 255, 255, 0.18);
}
.ai-lab__channel--codecheck:hover {
	background: linear-gradient(135deg, #075959 0%, #0E3838 100%);
	border-color: rgba(255, 255, 255, 0.35);
}
.ai-lab__channel--codecheck .ai-lab__channel-en {
	color: #C9885F;
}
.ai-lab__channel--codecheck .ai-lab__channel-title,
.ai-lab__channel--codecheck .ai-lab__channel-desc {
	color: #F4FAF9;
}
.ai-lab__channel--codecheck .ai-lab__channel-cta {
	color: #F4FAF9;
}
/* 外部リンクなので矢印を右上向きに変更 */
.ai-lab__channel--codecheck .ai-lab__channel-cta::after {
	content: "↗";
	color: #C9885F;
}
.ai-lab__channel--codecheck .ai-lab__channel-cta:hover::after {
	color: #F4FAF9;
	transform: translate(3px, -3px);
}
.ai-lab__channel--codecheck:hover .ai-lab__channel-title {
	color: #F4FAF9;
}

/* AIコード健診カードのシールドアイコン（右下に装飾的に） */
.ai-lab__channel--codecheck .ai-lab__codecheck-shield {
	position: absolute;
	top: auto;
	left: auto;
	right: var(--space-5);
	bottom: var(--space-5);
	width: 90px;
	height: 70px;
	opacity: 0.32;
	pointer-events: none;
	user-select: none;
	z-index: 0;
	transition: opacity var(--duration-base) var(--ease-out-expo), transform var(--duration-base) var(--ease-out-expo);
}
.ai-lab__codecheck-shield svg {
	width: 100%;
	height: 100%;
	display: block;
}
.ai-lab__channel--codecheck:hover .ai-lab__codecheck-shield {
	opacity: 0.5;
	transform: scale(1.05);
}

/* チャンネルカード（Bento と同じ「画像背景＋テキスト前景」構造） */
.ai-lab__channel {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
	padding: var(--space-6);
	background: var(--color-bg-surface);
	border: 1px solid var(--color-border-subtle);
	border-radius: 2px;
	overflow: hidden;
	isolation: isolate;
	transition:
		border-color var(--duration-base) var(--ease-out-expo),
		transform    var(--duration-base) var(--ease-out-expo),
		box-shadow   var(--duration-slow) var(--ease-out-expo);
}

.ai-lab__channel > * {
	position: relative;
	z-index: 1;
}

.ai-lab__channel:hover {
	border-color: var(--color-border-brand);
	transform: translateY(-6px);
	box-shadow: none;
	background: var(--color-bg-elevated);
}

.ai-lab__channel:hover .ai-lab__channel-title {
	color: var(--color-brand);
}

@media (min-width: 1024px) {
	.ai-lab__channel--article {
		padding: var(--space-7);
	}
}

/* 画像（Bento Gridセルと同じスタイル：背景的に配置、ホバーで反応） */
.ai-lab__channel-img {
	position: absolute;
	z-index: 0;
	pointer-events: none;
	user-select: none;
}

.ai-lab__channel-img img {
	width: 100%;
	height: auto;
	display: block;
	opacity: 0.45;
	transition:
		transform var(--duration-slowest) var(--ease-out-expo),
		opacity   var(--duration-slow)    var(--ease-out-expo);
}

.ai-lab__channel:hover .ai-lab__channel-img img {
	transform: scale(1.05) rotate(-2deg);
	opacity: 0.75;
}

/* SP（〜767px）：詰まり防止＆タップ精度向上の調整 */
@media (max-width: 767px) {
	/* ─── Bento Cell（3事業セル）：SP で上質さを出すための調整 ─── */
	.bento-cell {
		padding: var(--space-5);   /* 24px：窮屈にならない */
		border-radius: 2px;  /* 18px：親しみやすさ */
		gap: var(--space-3);
	}

	.bento__grid {
		gap: var(--space-4);  /* 16px */
	}

	/* Bento アイコンSVG：SPはセル幅が狭く、右下のSVGがCTAボタン・本文と重なるため
	   サイズを縮小し、opacity を罫線レベルまで下げて干渉を抑える（display:none にはしない） */
	.bento-cell__icon img {
		opacity: 0.14;
	}
	.bento-cell--ax .bento-cell__icon     { width: 34%; }
	.bento-cell--event .bento-cell__icon  { width: 46%; }
	.bento-cell--web .bento-cell__icon    { width: 42%; }
	.bento-cell--bridge .bento-cell__icon { width: 36%; }

	.bento-cell__title {
		font-size: 1.375rem;  /* 22px */
		line-height: 1.4;
	}

	.bento-cell--ax .bento-cell__title {
		font-size: 1.5rem;  /* 24px：AX セルは少し大きく */
	}

	.bento-cell__lead {
		font-size: var(--fs-sm);  /* 14px */
		line-height: 1.75;
	}

	.bento-cell__list li {
		font-size: var(--fs-sm);
		line-height: 1.7;
	}

	.bento-cell__cta {
		padding-top: var(--space-3);
		font-size: var(--fs-sm);
	}

	/* ─── Strength Card：SP で ── 数字＋見出し＋リード のリズム強化 ─── */
	.strengths__grid {
		gap: var(--space-5);
	}

	.strength-card {
		padding: var(--space-5) var(--space-4);
	}

	.strength-card__visual {
		width: 88px;
		height: 88px;
		margin-bottom: var(--space-2);
	}

	.strength-card__title {
		font-size: 1.25rem;  /* 20px */
		line-height: 1.45;
	}

	.strength-card__lead {
		font-size: var(--fs-sm);
		line-height: 1.85;
	}

	/* 中間CTA */
	.strengths__mid-cta {
		gap: var(--space-3);
		margin-top: var(--space-7);
		padding-top: var(--space-6);
	}

	.strengths__mid-cta-text {
		font-size: var(--fs-base);
		line-height: 1.6;
	}

	/* ─── Case Card（ダーク強調）：SP で metrics と padding を最適化 ─── */
	.case-grid {
		gap: var(--space-4);
	}

	/* SP：base .case-card（後方・padding space-7）に同specificityで負けて無効化されていたため、
	   case-study スコープ（0,2,0）で specificity を上げて確実に効かせる。
	   でぐ指示（2026-06-06）でSPは padding 20px に設定。 */
	.case-study .case-card {
		padding: 20px;
		border-radius: 2px;
		gap: var(--space-3);
	}

	.case-card__metrics {
		gap: var(--space-2);
		padding-block: var(--space-4);
	}

	.case-card__metric-value {
		font-size: clamp(1.625rem, 7.5vw, 2.125rem);  /* 26〜34px */
	}

	.case-card__metric-label {
		font-size: var(--fs-xs);  /* 11px→12px：SP実績指標ラベル。最低フォントサイズ確保 */
	}

	.case-card__title {
		font-size: var(--fs-lg);  /* 18px */
		line-height: 1.45;
	}

	.case-card__desc {
		font-size: var(--fs-sm);
		line-height: 1.85;
	}

	/* ─── AI Lab Channel：SP でカード詰まりを軽減 ─── */
	.ai-lab__grid {
		gap: var(--space-4);
	}

	.ai-lab__channel {
		padding: var(--space-5);
		border-radius: 2px;
		gap: var(--space-3);
	}

	.ai-lab__channel-title {
		font-size: 1.25rem;  /* 20px */
		line-height: 1.3;
	}

	.ai-lab__channel-desc {
		font-size: var(--fs-sm);
		line-height: 1.8;
	}

	/* AI Lab CTA バンド：SP で内側余白を最適化 */
	.ai-lab__cta-band {
		padding: var(--space-6) var(--space-4);
		border-radius: 2px;
		margin-top: var(--space-7);
		gap: var(--space-4);
	}

	.ai-lab__cta-band-text {
		font-size: var(--fs-base);
		line-height: 1.7;
	}

	.ai-lab__cta-band-buttons .btn {
		min-height: 52px;
		font-size: var(--fs-base);
	}

	/* ─── News & Column：SP でゆとりあるリスト表現 ─── */
	.news-column__grid {
		gap: var(--space-6);
	}

	.news-list__item {
		padding-block: var(--space-4);
		gap: var(--space-2);
	}

	.news-list__title {
		font-size: var(--fs-base);  /* 16px：本文と同じ可読性 */
		line-height: 1.65;
	}

	.column-grid {
		gap: var(--space-3);
	}

	.column-item {
		padding: var(--space-4);
		border-radius: 2px;
	}

	.column-item__title {
		font-size: var(--fs-base);  /* 16px */
		line-height: 1.55;
	}

	/* ─── AI Lab：見出しサイズ ─── */
	.ai-lab__sub {
		font-size: var(--fs-lg);  /* 18px */
	}

	.ai-lab__lead {
		font-size: var(--fs-base);
		line-height: 1.85;
	}

	/* ─── Bento bridge セル synergy dot：SP で詰めつつ視認性確保 ─── */
	.bento-cell__synergy {
		margin-top: var(--space-4);
		padding-top: var(--space-4);
		gap: var(--space-3);
	}

	.bento-cell__synergy .dot {
		width: 48px;
		height: 48px;
	}
}

/* タッチデバイス（hover不可）では画像が薄いまま終わるので、初期 opacity を上げて視認性を確保
   併せて、hover で transform: translateY(-Npx) が掛かる要素を打ち消し（タップで「飛ぶ」のを防ぐ） */
@media (hover: none) {
	.ai-lab__channel-img img {
		opacity: 0.6;
	}

	.bento-cell:hover,
	.purpose-card:hover,
	.owned-service-banner:hover,
	.ai-lab__channel:hover,
	.case-card:hover,
	.strength-card:hover,
	.column-item:hover {
		transform: none;
		box-shadow: none;
	}

	.bento-cell:hover .bento-cell__icon img,
	.ai-lab__channel:hover .ai-lab__channel-img img,
	.strength-card:hover .strength-card__visual img {
		transform: none;
	}

	.purpose-card:hover .purpose-card__arrow {
		transform: none;
	}
}

/* 各セル：画像位置（Bento の3事業セルと同じく「右下」基本） */
/* 記事セルだけは上下中央に配置（左右は右寄り維持） */
.ai-lab__channel--article .ai-lab__channel-img {
	width: 42%;
	top: 50%;
	right: -6%;
	bottom: auto;
	transform: translateY(-50%);
}

/* 小さい3つのカード：アイコンも小さめでコンパクトに */
.ai-lab__channel--video .ai-lab__channel-img {
	width: 42%;
	bottom: -8%;
	right: -8%;
}

.ai-lab__channel--resource .ai-lab__channel-img {
	width: 45%;
	bottom: -8%;
	right: -8%;
}

.ai-lab__channel--consult .ai-lab__channel-img {
	width: 40%;
	bottom: -6%;
	right: -6%;
}

.ai-lab__channel-en {
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	font-weight: var(--fw-semibold);
	letter-spacing: var(--ls-widest);
	text-transform: uppercase;
	color: var(--color-brand);
}

.ai-lab__channel-title {
	font-size: var(--fs-2xl);
	font-weight: var(--fw-bold);
	color: var(--color-text-primary);
	letter-spacing: var(--ls-tight);
	line-height: 1;
}

.ai-lab__channel-desc {
	font-size: var(--fs-sm);
	color: var(--color-text-secondary);
	line-height: var(--lh-relaxed);
}

.ai-lab__channel-desc strong {
	color: var(--color-text-primary);
	font-weight: var(--fw-semibold);
}

/* 画像未配置時のフォールバック（broken image アイコン非表示） */
.ai-lab__channel-img img:not([src]),
.ai-lab__channel-img img[src=""],
.ai-lab__channel-img img[src$="undefined"] {
	display: none;
}

.ai-lab__channel-list {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin-top: var(--space-3);
	padding-top: var(--space-4);
	border-top: 1px dashed var(--color-border-subtle);
}

.ai-lab__channel-item {
	font-size: var(--fs-sm);
	color: var(--color-text-primary);
	line-height: var(--lh-snug);
	border-bottom: 1px dashed var(--color-border-subtle);
}

.ai-lab__channel-item:last-child {
	border-bottom: none;
}

.ai-lab__channel-item a {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding-block: var(--space-3);
	color: var(--color-text-primary);
	transition: color var(--duration-fast) var(--ease-out-expo);
}

.ai-lab__channel-item a:hover {
	color: var(--color-brand);
}

.ai-lab__channel-item a:hover .ai-lab__channel-item-meta {
	color: var(--color-brand-500);
}

.ai-lab__channel-item-meta {
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	color: var(--color-brand);
	letter-spacing: var(--ls-wide);
}

.ai-lab__channel-note {
	font-size: var(--fs-xs);
	color: var(--color-text-secondary);
	line-height: var(--lh-relaxed);
	padding: var(--space-3) var(--space-4);
	background: var(--color-glass-subtle);
	border-radius: var(--radius-sm);
	border-left: 2px solid var(--color-brand);
	margin-top: var(--space-3);
}

.ai-lab__channel-cta {
	margin-top: auto;
	padding-top: var(--space-4);
	font-size: var(--fs-sm);
	font-weight: var(--fw-semibold);
	color: var(--color-text-primary);
	display: inline-flex;
	align-items: center;
	gap: var(--space-2);
	align-self: flex-start;
	transition: color var(--duration-fast) var(--ease-out-expo);
}

.ai-lab__channel-cta::after {
	content: "→";
	transition: transform var(--duration-fast) var(--ease-spring);
	color: var(--color-brand);
	display: inline-block;
}

.ai-lab__channel-cta:hover {
	color: var(--color-brand);
}

.ai-lab__channel-cta:hover::after {
	transform: translateX(6px);
	color: var(--color-brand);
}

.ai-lab__code-check-card {
	position: relative;
	display: grid;
	gap: var(--space-3);
	margin-top: var(--space-4);
	padding: var(--space-4);
	/* 編集トーンへ統一：旧amber/ワインのグラデ＋glowを廃し、ダーク面＋コッパー罫線で
	   「featured」を控えめに差別化（角を立てる） */
	border-radius: 2px;
	background: var(--color-bg-dark-surface);
	border: 1px solid var(--color-accent);
	color: var(--color-text-on-brand);
	text-decoration: none;
	overflow: hidden;
	transition: transform var(--duration-base) var(--ease-out-expo), border-color var(--duration-base);
}

.ai-lab__code-check-card:hover {
	transform: translateY(-2px);
	border-color: var(--color-accent-700);
}

.ai-lab__code-check-copy,
.ai-lab__code-check-arrow {
	position: relative;
	z-index: 1;
}

.ai-lab__code-check-eyebrow {
	margin: 0 0 var(--space-1);
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	font-weight: 800;
	letter-spacing: var(--ls-widest);
	text-transform: uppercase;
	color: var(--color-action);
}

.ai-lab__code-check-title {
	margin: 0 0 var(--space-1);
	font-family: var(--font-sans-jp);
	font-size: var(--fs-xl);
	font-weight: var(--fw-extrabold);
	line-height: var(--lh-tight);
	color: var(--color-text-on-brand);
	letter-spacing: 0;
}

.ai-lab__code-check-desc {
	margin: 0;
	font-size: var(--fs-sm);
	line-height: var(--lh-relaxed);
	color: rgba(255, 255, 255, 0.88);
}

.ai-lab__code-check-visual {
	position: absolute;
	right: -10px;
	bottom: -16px;
	width: min(30vw, 132px);
	opacity: 0.32;
	pointer-events: none;
}

.ai-lab__code-check-visual svg {
	display: block;
	width: 100%;
	height: auto;
}

.ai-lab__code-check-arrow {
	display: inline-flex;
	align-items: center;
	gap: var(--space-2);
	margin-top: 0;
	font-size: var(--fs-sm);
	font-weight: var(--fw-bold);
	color: var(--color-action);
}

.ai-lab__code-check-arrow::after {
	/* AIコード健診は外部サービス（security.colet-lab.jp・target="_blank"）。外部リンクの慣例で ↗（でぐ指摘・2026-06-03） */
	content: "↗";
	transition: transform var(--duration-fast) var(--ease-spring);
}

.ai-lab__code-check-card:hover .ai-lab__code-check-arrow::after {
	/* 斜め矢印に合わせ、ホバーは右上方向へ */
	transform: translate(4px, -4px);
}

@media (min-width: 768px) {
	.ai-lab__code-check-card {
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		padding: var(--space-4) var(--space-5);
	}

	.ai-lab__code-check-desc {
		max-width: 58ch;
	}
}

@media (hover: none) {
	.ai-lab__code-check-card:hover {
		transform: none;
	}
}

/* .ai-lab__video-thumb 系スタイル：HTML に該当クラスなし。SVG動画チャネル化済みのため削除（2026-05-02 review）。 */

/* 補助バンド：LINE登録 + AX相談 */
.ai-lab__cta-band {
	margin-top: var(--space-8);
	padding: var(--space-7) var(--space-6);
	background: var(--color-glass-brand);
	border: 1px solid var(--color-border-brand);
	border-radius: 2px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-5);
}

@media (min-width: 1024px) {
	.ai-lab__cta-band {
		padding: var(--space-7) var(--space-8);
	}
}

.ai-lab__cta-band-text {
	font-size: var(--fs-base);
	color: var(--color-text-primary);
	line-height: var(--lh-relaxed);
	max-width: 56ch;
}

.ai-lab__cta-band-text strong {
	color: var(--color-brand);
	font-weight: var(--fw-bold);
}

.ai-lab__cta-band-buttons {
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
	width: 100%;
	align-items: stretch;
	max-width: 480px;
}

@media (min-width: 640px) {
	.ai-lab__cta-band-buttons {
		flex-direction: row;
		justify-content: center;
		gap: var(--space-4);
		max-width: none;
		align-items: center;
	}
}

/* LINE ボタン（ブランド統一、LINEアイコンのみ採用） */
.btn--line {
	display: inline-flex;
	align-items: center;
	gap: var(--space-2);
}

.btn--line svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}


/* ============================================================
 * Section 04 ─ Three Strengths
 * ============================================================ */

.strengths {
	position: relative;
	padding-block: var(--space-9);
	background: var(--color-bg-primary);
	overflow: hidden;
	isolation: isolate;
}

@media (min-width: 1024px) {
	.strengths {
		padding-block: var(--space-10);
	}
}

.strengths__header {
	margin-bottom: var(--space-8);
	max-width: var(--container-default);
	position: relative;
}

.strengths__title {
	font-size: var(--fs-display-md);
	font-weight: var(--fw-extrabold);
	line-height: var(--lh-tight);
	letter-spacing: var(--ls-tight);
	color: var(--color-text-primary);
	font-feature-settings: "palt";
}

.strengths__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-6);
}

/* タブレット幅は2カラム＋3枚目を全幅に。3カラムは1024px以上 */
@media (min-width: 768px) and (max-width: 1023px) {
	.strengths__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: var(--space-5);
	}

	.strengths__grid > .strength-card:nth-child(3) {
		grid-column: 1 / -1;
	}
}

@media (min-width: 1024px) {
	.strengths__grid {
		grid-template-columns: repeat(3, 1fr);
		gap: var(--space-7);
	}
}

/* 中間CTA：強みセクション末尾に配置（離脱対策） */
.strengths__mid-cta {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-4);
	margin-top: var(--space-8);
	padding-top: var(--space-7);
	border-top: 1px solid var(--color-border-subtle);
	text-align: center;
}

.strengths__mid-cta-text {
	font-size: var(--fs-lg);
	color: var(--color-text-secondary);
	font-weight: var(--fw-medium);
	letter-spacing: var(--ls-tight);
}

@media (min-width: 768px) {
	.strengths__mid-cta {
		flex-direction: row;
		justify-content: center;
		gap: var(--space-6);
	}
}

/* 個別カード */
.strength-card {
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
	padding: var(--space-6) var(--space-5);
	position: relative;
	isolation: isolate;
}

.strength-card__visual {
	width: 120px;
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: var(--space-3);
	position: relative;
	overflow: hidden;
}

.strength-card__visual img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	opacity: 0.85;
	transition:
		transform var(--duration-slowest) var(--ease-out-expo),
		opacity   var(--duration-slow)    var(--ease-out-expo);
}

/* 新版 SVG（POP）は viewBox いっぱいに描かれているので拡大不要 */

.strength-card:hover .strength-card__visual img {
	transform: scale(1.08) rotate(-3deg);
	opacity: 1;
}

.strength-card--synergy:hover .strength-card__visual img {
	transform: scale(1.08) rotate(-3deg);
}

.strength-card__number {
	position: absolute;
	top: 0;
	right: 0;
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	font-weight: var(--fw-semibold);
	letter-spacing: var(--ls-widest);
	color: var(--color-text-muted);
}

.strength-card__title {
	font-size: var(--fs-2xl);
	font-weight: var(--fw-bold);
	line-height: var(--lh-snug);
	letter-spacing: var(--ls-tight);
	color: var(--color-text-primary);
	font-feature-settings: "palt";
}

.strength-card__lead {
	font-size: var(--fs-sm);
	color: var(--color-text-secondary);
	line-height: var(--lh-loose);
}

/* 3つのカードでアクセント色を分担 */
.strength-card--synergy     .strength-card__title::before { background: var(--color-brand); }
.strength-card--discipline  .strength-card__title::before { background: var(--color-empathy); }
.strength-card--flexibility .strength-card__title::before { background: var(--color-action); }

.strength-card__title {
	position: relative;
	padding-top: var(--space-3);
}

.strength-card__title::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 32px;
	height: 2px;
	border-radius: var(--radius-full);
}


/* ============================================================
 * Section 05 ─ Case Study Pickup
 * ============================================================ */

.case-study {
	position: relative;
	padding-block: var(--space-9);
	overflow: hidden;
	isolation: isolate;
}

@media (min-width: 1024px) {
	.case-study {
		padding-block: var(--space-10);
	}
}

.case-study__header {
	margin-bottom: var(--space-8);
	max-width: var(--container-default);
}

.case-study__title {
	font-size: var(--fs-display-md);
	font-weight: var(--fw-extrabold);
	line-height: var(--lh-tight);
	letter-spacing: var(--ls-tight);
	color: var(--color-text-primary);
	font-feature-settings: "palt";
}

.case-study__lead {
	margin-top: var(--space-5);
	font-size: var(--fs-base);
	color: var(--color-text-secondary);
	line-height: var(--lh-loose);
	max-width: 90ch; /* デスクトップで各行を1行に収める */
}

.case-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-5);
}

@media (min-width: 1024px) {
	.case-grid {
		grid-template-columns: 1fr 1fr;
		gap: var(--space-6);
	}

	.case-grid--3col {
		grid-template-columns: repeat(3, 1fr);
		gap: var(--space-5);
	}

	/* HTML順：AX → Instagram → イベント
	   表示順：AX → イベント → Instagram に並び替え */
	.case-grid--3col > article:nth-child(1) { order: 1; }  /* AX */
	.case-grid--3col > article:nth-child(2) { order: 3; }  /* Instagram → 3番目へ */
	.case-grid--3col > article:nth-child(3) { order: 2; }  /* イベント → 2番目へ */
}

.case-card {
	display: flex;
	flex-direction: column;
	gap: var(--space-5);
	padding: var(--space-7);
	background: var(--color-bg-surface);
	border: 1px solid var(--color-border-subtle);
	border-radius: 2px;
	transition:
		border-color var(--duration-base) var(--ease-out-expo),
		transform    var(--duration-base) var(--ease-out-expo),
		box-shadow   var(--duration-slow) var(--ease-out-expo);
}

.case-card:hover {
	border-color: var(--color-border-brand);
	transform: translateY(-6px);
	box-shadow: none;
	background: var(--color-bg-elevated);
}

/* KPI数値出現時のシマー演出 */
.case-card__metric-value {
	position: relative;
	display: inline-block;
	overflow: hidden;
}

.case-card__metric-value::after {
	content: "";
	position: absolute;
	top: 0;
	left: -150%;
	width: 60%;
	height: 100%;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(201, 136, 95, 0.4) 50%,
		transparent 100%
	);
	pointer-events: none;
}

.case-card__metric-value.is-shimmer::after {
	animation: shimmer 1.4s var(--ease-out-expo) forwards;
}

@keyframes shimmer {
	from { left: -150%; }
	to   { left: 250%; }
}

.case-card__tags {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2);
}

.case-card__tag {
	font-family: var(--font-sans-jp);
	font-size: var(--fs-xs);
	font-weight: var(--fw-medium);
	letter-spacing: var(--ls-tight);
	color: var(--color-brand);
	padding: var(--space-1) var(--space-3);
	border: 1px solid var(--color-border-brand);
	border-radius: var(--radius-full);
}

.case-card__metrics {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--space-2);
	padding-block: var(--space-4);
	border-block: 1px dashed var(--color-border-subtle);
}

.case-card__metric {
	text-align: center;
}

.case-card__metric-value {
	display: block;
	font-family: var(--font-sans-latin);
	font-size: clamp(1.75rem, 4vw, 2.5rem);
	font-weight: var(--fw-extrabold);
	line-height: 1;
	color: var(--color-action);
	letter-spacing: var(--ls-tighter);
}

.case-card__metric-suffix {
	font-size: 0.6em;
	font-weight: var(--fw-bold);
	margin-left: 2px;
	color: var(--color-action-300);
}

.case-card__metric-label {
	display: block;
	font-size: 0.7rem;          /* 11.2px に微減 */
	color: var(--color-text-secondary);
	margin-top: var(--space-2);
	letter-spacing: -0.02em;    /* Zen Kaku Gothic New の見え方に合わせて微調整 */
	font-feature-settings: "palt"; /* 約物を詰めて1行に収まりやすく */
	line-height: 1.3;
	white-space: normal;
	overflow-wrap: anywhere;
}

/* .case-card__keywords 系：他カードとレイアウト統一のため削除済み（2026-05-02） */

.case-card__title {
	font-size: var(--fs-xl);
	font-weight: var(--fw-bold);
	line-height: var(--lh-snug);
	letter-spacing: var(--ls-tight);
	color: var(--color-text-primary);
}

.case-card__desc {
	font-size: var(--fs-sm);
	color: var(--color-text-secondary);
	line-height: var(--lh-loose);
}

.case-card__cta {
	margin-top: auto;
	font-size: var(--fs-sm);
	font-weight: var(--fw-semibold);
	color: var(--color-text-primary);
	display: inline-flex;
	align-items: center;
	gap: var(--space-2);
	align-self: flex-start;
	transition: color var(--duration-fast) var(--ease-out-expo);
}

.case-card__cta::after {
	content: "→";
	transition: transform var(--duration-fast) var(--ease-spring);
	color: var(--color-brand);
	display: inline-block;
}

.case-card__cta:hover {
	color: var(--color-brand);
}

.case-card__cta:hover::after {
	transform: translateX(6px);
	color: var(--color-brand);
}


/* ============================================================
 * Section 06 ─ News & Column
 * ============================================================ */

.news-column {
	position: relative;
	padding-block: var(--space-9);
	background: var(--color-bg-surface);
	overflow: hidden;
	isolation: isolate;
}

.news-column__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-7);
}

@media (min-width: 1024px) {
	.news-column__grid {
		grid-template-columns: 1fr 2fr;
		gap: var(--space-8);
	}
}

.news-column__block-header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	margin-bottom: var(--space-5);
	padding-bottom: var(--space-4);
	border-bottom: 1px solid var(--color-border-subtle);
}

.news-column__block-title {
	display: flex;
	align-items: baseline;
	gap: var(--space-3);
}

.news-column__block-title-en {
	font-family: var(--font-sans-latin);
	font-size: var(--fs-xs);
	font-weight: var(--fw-semibold);
	letter-spacing: var(--ls-widest);
	text-transform: uppercase;
	color: var(--color-brand);
}

.news-column__block-title-ja {
	font-size: var(--fs-xl);
	font-weight: var(--fw-bold);
	color: var(--color-text-primary);
	letter-spacing: var(--ls-tight);
}

.news-column__more {
	font-size: var(--fs-xs);
	color: var(--color-text-secondary);
	letter-spacing: var(--ls-tight);
}

.news-column__more::after {
	content: " →";
	transition: transform var(--duration-fast) var(--ease-spring);
	display: inline-block;
}

.news-column__more:hover {
	color: var(--color-brand);
}

.news-column__more:hover::after {
	transform: translateX(4px);
}

/* News List */
.news-list {
	display: flex;
	flex-direction: column;
}

.news-list__item {
	display: flex;
	flex-direction: column;
	gap: var(--space-2);
	padding-block: var(--space-4);
	border-bottom: 1px solid var(--color-border-subtle);
	transition: background var(--duration-fast) var(--ease-out-expo);
}

.news-list__item:hover {
	background: var(--color-glass-subtle);
}

.news-list__meta {
	display: flex;
	align-items: center;
	gap: var(--space-3);
	font-size: var(--fs-xs);
	color: var(--color-text-muted);
	letter-spacing: var(--ls-tight);
}

.news-list__date {
	font-family: var(--font-sans-latin);
}

.news-list__category {
	color: var(--color-brand);
	padding-inline: var(--space-2);
	border-left: 1px solid var(--color-border-default);
}

.news-list__title {
	font-size: var(--fs-sm);
	color: var(--color-text-primary);
	line-height: var(--lh-relaxed);
	font-weight: var(--fw-medium);
}

/* Column Grid */
.column-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-4);
}

@media (min-width: 640px) {
	.column-grid {
		grid-template-columns: 1fr 1fr;
	}
}

.column-item {
	display: flex;
	flex-direction: column;
	gap: var(--space-2);
	padding: var(--space-4);
	border: 1px solid var(--color-border-subtle);
	border-radius: 2px;
	transition:
		border-color var(--duration-fast) var(--ease-out-expo),
		background   var(--duration-fast) var(--ease-out-expo);
}

.column-item:hover {
	border-color: var(--color-border-brand);
	background: var(--color-glass-brand);
}

.column-item__meta {
	display: flex;
	align-items: center;
	gap: var(--space-2);
	font-size: var(--fs-xs);
	color: var(--color-text-muted);
	letter-spacing: var(--ls-tight);
}

.column-item__category {
	font-family: var(--font-sans-latin);
	font-weight: var(--fw-semibold);
	letter-spacing: var(--ls-wider);
	text-transform: uppercase;
	color: var(--color-brand);
}

.column-item__date {
	font-family: var(--font-sans-latin);
}

.column-item__title {
	font-size: var(--fs-sm);
	color: var(--color-text-primary);
	line-height: var(--lh-snug);
	font-weight: var(--fw-medium);
}



/* ============================================================
 * Light Mode Override Layer（v2 リニューアル：2026-05-02）
 *
 * 全体ライト基盤の中で、Case Study と AI Lab をダーク強調セクションとして
 * 維持。ファクトの重み・研究室感を担保。
 * ============================================================ */

/* ─── Case Study：ダーク強調セクション ─── */
.case-study {
	background: var(--color-bg-dark-primary);
	color: var(--color-text-dark-primary);
}

.case-study .case-study__title,
.case-study .case-study__lead,
.case-study .case-study__lead strong,
.case-study .case-card__metric-value,
.case-study .case-card__metric-label,
.case-study .case-card__title,
.case-study .case-card__desc,
.case-study .case-card__cta {
	color: var(--color-text-dark-primary);
}

.case-study .case-study__lead,
.case-study .case-card__desc,
.case-study .case-card__metric-label {
	color: var(--color-text-dark-secondary);
}

.case-study .case-card {
	background: var(--color-bg-dark-surface);
	border: 1px solid var(--color-border-dark-subtle);
}

.case-study .case-card:hover {
	background: var(--color-bg-dark-elevated);
	border-color: var(--color-border-dark-default);
}

.case-study .section-label__num,
.case-study .section-label__en {
	color: var(--color-brand-300);
}

.case-study .case-card__tag {
	background: var(--color-glass-dark-default);
	color: var(--color-text-dark-secondary);
	border: 1px solid var(--color-border-dark-subtle);
}

.case-study .case-card__metric-value {
	color: var(--color-action);  /* アンバー：数字を最も目立たせる */
}


/* ─── AI Lab：ダーク強調セクション ─── */
.ai-lab {
	background: var(--color-bg-dark-primary);
	color: var(--color-text-dark-primary);
}

.ai-lab .ai-lab__title,
.ai-lab .ai-lab__sub,
.ai-lab .ai-lab__lead,
.ai-lab .ai-lab__lead strong,
.ai-lab .ai-lab__channel-title,
.ai-lab .ai-lab__channel-desc,
.ai-lab .ai-lab__channel-desc strong,
.ai-lab .ai-lab__channel-en,
.ai-lab .ai-lab__channel-cta,
.ai-lab .ai-lab__about-link,
.ai-lab .ai-lab__cta-band-text,
.ai-lab .ai-lab__cta-band-text strong {
	color: var(--color-text-dark-primary);
}

.ai-lab .ai-lab__lead,
.ai-lab .ai-lab__channel-desc,
.ai-lab .ai-lab__about-link {
	color: var(--color-text-dark-secondary);
}

.ai-lab .ai-lab__sub {
	color: var(--color-brand-300);
}

.ai-lab .ai-lab__channel {
	background: var(--color-bg-dark-surface);
	border: 1px solid var(--color-border-dark-subtle);
}

.ai-lab .ai-lab__channel:hover {
	background: var(--color-bg-dark-elevated);
	border-color: var(--color-border-dark-default);
}

.ai-lab .section-label__num,
.ai-lab .section-label__en {
	color: var(--color-brand-300);
}

.ai-lab .ai-lab__channel-item a {
	color: var(--color-text-dark-secondary);
}

.ai-lab .ai-lab__channel-item a:hover {
	color: var(--color-brand-300);
}

.ai-lab .ai-lab__channel-item-meta {
	color: var(--color-text-dark-muted);
}

.ai-lab .ai-lab__cta-band {
	background: var(--color-glass-dark-brand);
	border: 1px solid var(--color-border-dark-default);
}

/* CTAバンド内のボタン：ダーク背景上で見えるよう override */
.ai-lab .ai-lab__cta-band .btn--secondary,
.ai-lab .ai-lab__cta-band .btn--line {
	color: var(--color-text-dark-primary);
	border-color: var(--color-border-dark-default);
	background: var(--color-glass-dark-default);
}

.ai-lab .ai-lab__cta-band .btn--secondary:hover,
.ai-lab .ai-lab__cta-band .btn--line:hover {
	background: var(--color-glass-dark-strong);
	border-color: var(--color-border-dark-strong);
	color: var(--color-text-dark-primary);
}

/* Case Study 内のCTAボタンも同様の保護（あれば） */
.case-study .btn--secondary,
.case-study .btn--ghost {
	color: var(--color-text-dark-primary);
	border-color: var(--color-border-dark-default);
}

@media (max-width: 767px) {
	/* トップページ内の主要CTAは、親コンテンツ幅いっぱいで押せる状態にそろえる。 */
	.hero__cta,
	.strengths__mid-cta,
	.ai-lab__cta-band-buttons,
	.about-final-cta .final-cta__buttons {
		width: 100%;
	}

	.ai-lab__cta-band-buttons,
	.about-final-cta .final-cta__buttons {
		flex-direction: column;
		align-items: stretch;
		max-width: 480px;
		margin-inline: auto;
	}

	.hero__cta .btn,
	.strengths__mid-cta .btn,
	.ai-lab__cta-band-buttons .btn,
	.about-final-cta .final-cta__buttons .btn {
		width: 100%;
		flex: 1 1 100%;
	}

	.bento-cell__cta,
	.owned-service-banner__cta,
	.case-card__cta,
	.ai-lab__channel-cta {
		width: 100%;
		min-height: 48px;
		padding: var(--space-3) var(--space-4);
		justify-content: center;
		align-self: stretch;
		text-align: center;
		border: 1px solid var(--color-border-subtle);
		border-radius: 2px;
		background: var(--color-glass-brand);
	}

	.case-study .case-card__cta,
	.ai-lab .ai-lab__channel-cta {
		border-color: var(--color-border-dark-default);
		background: var(--color-glass-dark-default);
	}
}


/* ─── ダーク強調セクション内の bg-mega-typo（背景大文字）の見え方調整 ─── */
.case-study .bg-mega-typo,
.ai-lab .bg-mega-typo {
	color: var(--color-text-dark-primary);
	opacity: 0.04;
}


/* ─── ダーク強調セクション内の section-glow-line：上端の発光ライン ─── */
.case-study .section-glow-line,
.ai-lab .section-glow-line {
	background: linear-gradient(90deg, transparent, var(--color-brand-300), transparent);
	opacity: 0.4;
}


/* ============================================================
 * prefers-reduced-motion 対応の網羅化
 *
 * シマー演出 / Bento ホバー光 / scroll-line / hover transform などを
 * reduce 環境で無効化。アクセシビリティ要件を満たす。
 * ============================================================ */
@media (prefers-reduced-motion: reduce) {
	/* hero アンダーライン＋ヒーロー周辺アニメ（網羅） */
		.hero__title .word--accent::after,
		.hero--implementation-map::after,
		.hero--implementation-map .hero__content::before,
		.hero--implementation-map .hero__title,
		.hero__title .word,
		.hero__visual,
		.hero__overline,
		.hero__subtitle,
		.hero__lead,
		.hero__cta,
		.hero__definition,
		.hero__scroll,
		.hero__scroll-line {
		animation: none !important;
		opacity: 1 !important;
		filter: none !important;
		transform: none !important;
	}

	/* グレイン：reduce 環境ではアニメだけ止め、薄く静止表示（opacity:1 上書きを是正） */
	.hero--implementation-map::after {
		background-size: 160px 160px !important;
		opacity: 0.34 !important;
	}

	@media (min-width: 1024px) {
		.hero--implementation-map .hero__visual {
			transform: none !important;
		}
	}

	/* Case Study メトリクスのシマー演出 */
	.case-card__metric-value::after {
		animation: none !important;
	}

	/* Bento カードのホバー光 */
	.bento-cell::before {
		transition: none !important;
	}

	/* Bento カード／strength カード／ai-lab チャネル等のホバー transform */
	.bento-cell:hover,
	.purpose-card:hover,
	.owned-service-banner:hover,
	.strength-card:hover,
	.ai-lab__channel:hover,
	.case-card:hover {
		transform: none !important;
	}

	.purpose-card,
	.purpose-card__arrow,
	.owned-service-banner {
		transition: none !important;
	}

	/* SCROLL ラインのアニメ */
	.hero__scroll {
		animation: none !important;
		transform: translateX(-50%) !important;
		opacity: 1 !important;
	}

	/* reveal クラス（IntersectionObserver の段階フェードイン） */
	.reveal {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	/* ai-lab セクション内のホバー transform 系 */
	.ai-lab__channel-img img,
	.bento-cell__icon img {
		transition: none !important;
	}
}

/* ===== coletlab-page-home-creative ===== */
.film-grain{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.5;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.32'/%3E%3C/svg%3E");background-size:160px 160px}@media (max-width:767px){.film-grain{opacity:.38}}@media (prefers-reduced-motion:reduce){.film-grain{opacity:.32}}.editorial-index{display:inline-flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-5);line-height:1}.editorial-index__num{font-family:var(--font-serif-jp);font-size:clamp(2.75rem, 7vw, 4.5rem);font-weight:var(--fw-semibold);color:var(--color-brand);letter-spacing:var(--ls-tighter);font-feature-settings:"tnum";line-height:.8}.editorial-index__en{font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--color-text-secondary);align-self:flex-end;padding-bottom:.4em}.editorial-index__total{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--ls-wide);color:var(--color-text-muted);align-self:flex-end;padding-bottom:.4em}.editorial-index--invert .editorial-index__num{color:var(--color-brand-300)}.editorial-index--invert .editorial-index__en{color:var(--color-text-dark-secondary)}.editorial-index--invert .editorial-index__total{color:var(--color-text-dark-muted)}.editorial-index--center{display:flex;justify-content:center;margin-inline:auto;margin-bottom:var(--space-5)}.editorial-index--center .editorial-index__en{padding-bottom:0;letter-spacing:var(--ls-widest)}@media (max-width:767px){.editorial-index{gap:var(--space-2);margin-bottom:var(--space-4)}.editorial-index__num{font-size:clamp(2.25rem, 12vw, 3rem)}}.section-movement{position:relative}.bento.section-movement::before,.news-column.section-movement::before,.purpose-router.section-movement::before,.strengths.section-movement::before{content:"";position:absolute;inset:0 0 auto 0;height:clamp(180px,32vh,360px);background-image:linear-gradient(var(--color-decor-grid) 1px,transparent 1px),linear-gradient(90deg,var(--color-decor-grid) 1px,transparent 1px);background-size:var(--space-7) var(--space-7);-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,0.5),transparent);mask-image:linear-gradient(180deg,rgba(0,0,0,0.5),transparent);pointer-events:none;z-index:0;opacity:.7}.purpose-router.section-movement::before{border:0;border-radius:0;inset:0 0 auto 0}.bento.section-movement>.container,.news-column.section-movement>.container,.strengths.section-movement>.container{position:relative;z-index:1}.purpose-router.section-movement{background:var(--color-bg-primary)}.purpose-router__header{border-bottom:1px solid var(--color-decor-hairline);padding-bottom:var(--space-5)}.purpose-router__title{font-family:var(--font-serif-jp);font-size:clamp(2rem, 5vw, 3.25rem);font-weight:var(--fw-semibold);mix-blend-mode:multiply}@media (min-width:1120px){.purpose-router__grid{grid-template-columns:repeat(6,1fr);grid-auto-rows:1fr;gap:0;border-top:1px solid var(--color-decor-hairline);border-left:1px solid var(--color-decor-hairline)}.purpose-router__grid>.purpose-card:first-child{grid-column:span 3;grid-row:span 2}.purpose-router__grid>.purpose-card:nth-child(2){grid-column:span 3}.purpose-router__grid>.purpose-card:nth-child(3){grid-column:span 3}.purpose-router__grid>.purpose-card:nth-child(4){grid-column:span 2}.purpose-router__grid>.purpose-card:nth-child(5){grid-column:span 2}.purpose-router__grid>.purpose-card:nth-child(6){grid-column:span 2}.purpose-router__grid>.purpose-card:nth-child(7){grid-column:span 6}}.purpose-router .purpose-card{background:0 0;border:0;border-right:1px solid var(--color-decor-hairline);border-bottom:1px solid var(--color-decor-hairline);border-radius:0;box-shadow:none;min-height:168px;padding:var(--space-5);grid-template-areas:"kicker arrow" "title  title" "desc   desc";gap:var(--space-3);transition:background var(--duration-base) var(--ease-out-expo),color var(--duration-base) var(--ease-out-expo)}.purpose-router .purpose-card::before{top:0;left:0;width:100%;height:2px;border-radius:0;background:var(--purpose-accent,var(--color-brand));opacity:0;transform-origin:left;transform:scaleX(0);transition:transform var(--duration-slow) var(--ease-out-expo),opacity var(--duration-fast) linear}.purpose-router .purpose-card::after{content:none}.purpose-router .purpose-card:focus-visible,.purpose-router .purpose-card:hover{background:var(--color-glass-brand);transform:none;box-shadow:none;border-color:var(--color-decor-hairline)}.purpose-router .purpose-card:focus-visible::before,.purpose-router .purpose-card:hover::before{opacity:1;transform:scaleX(1)}.purpose-router .purpose-card__kicker{font-family:var(--font-mono);margin-top:0;align-self:start;color:var(--color-text-secondary)}.purpose-router .purpose-card:hover .purpose-card__kicker{color:var(--purpose-accent,var(--color-brand))}.purpose-router .purpose-card__title{font-family:var(--font-serif-jp);font-weight:var(--fw-semibold)}@media (min-width:1120px){.purpose-router__grid>.purpose-card:first-child .purpose-card__title{font-size:clamp(1.5rem, 2.4vw, 2.25rem)}.purpose-router__grid>.purpose-card:first-child .purpose-card__desc{font-size:var(--fs-base);max-width:34ch}}.purpose-router .purpose-card__arrow{width:auto;height:auto;background:0 0;color:var(--purpose-accent,var(--color-brand));border-radius:0;font-family:var(--font-mono);font-size:var(--fs-lg);align-self:start;justify-self:end}.purpose-router .purpose-card:hover .purpose-card__arrow{transform:translateX(4px)}.purpose-router .owned-service-lane{border-top:1px solid var(--color-decor-hairline)}.purpose-router .owned-service-lane__title{font-family:var(--font-serif-jp);font-weight:var(--fw-semibold)}@media (max-width:767px){.purpose-router .purpose-card{border-right:0;min-height:0;padding:var(--space-5) var(--space-2)}.purpose-router__grid{border-top:1px solid var(--color-decor-hairline)}}.bento__header{position:relative;padding:var(--space-6) var(--space-5) var(--space-7);margin-inline:auto}.bento__header::after,.bento__header::before{content:"";position:absolute;width:18px;height:18px;border:0 solid var(--color-decor-bracket);pointer-events:none}.bento__header::before{top:0;left:0;border-top-width:var(--bracket-thickness);border-left-width:var(--bracket-thickness)}.bento__header::after{bottom:var(--space-5);right:0;border-bottom-width:var(--bracket-thickness);border-right-width:var(--bracket-thickness)}.bento__title{font-family:var(--font-serif-jp);font-size:clamp(2rem, 5.5vw, 3.5rem);font-weight:var(--fw-semibold);mix-blend-mode:multiply}.bento .bento-cell{border-radius:var(--radius-sm);box-shadow:none;border:1px solid var(--color-decor-hairline);transition:border-color var(--duration-base) var(--ease-out-expo),background var(--duration-base) var(--ease-out-expo),transform var(--duration-base) var(--ease-out-expo)}.bento .bento-cell:hover{transform:translateY(-3px);border-color:var(--color-brand);box-shadow:none}.bento .bento-cell__title{font-family:var(--font-serif-jp);font-weight:var(--fw-semibold)}.bento .bento-cell__label{font-family:var(--font-mono)}.bento--inverted{background:var(--color-bg-dark-primary);color:var(--color-text-dark-primary)}.bento--inverted .bento__title{color:var(--color-text-dark-primary);mix-blend-mode:normal}.bento--inverted .bento__lead{color:var(--color-text-dark-secondary)}.bento--inverted .bento__lead strong{color:var(--color-text-dark-primary)}.bento--inverted .bento-cell{background:var(--color-bg-dark-surface);border-color:var(--color-border-dark-subtle)}.bento--inverted .bento-cell:hover{background:var(--color-bg-dark-elevated);border-color:var(--color-border-dark-default);box-shadow:none}.bento--inverted .bento-cell--bridge{background:var(--color-bg-dark-elevated);border-color:var(--color-border-dark-default)}.bento--inverted .bento-cell::before{background:radial-gradient(circle at 100% 0,var(--color-glass-dark-brand) 0,transparent 50%)}.bento--inverted .bento-cell__cta,.bento--inverted .bento-cell__title{color:var(--color-text-dark-primary)}.bento--inverted .bento-cell__label-ja,.bento--inverted .bento-cell__lead,.bento--inverted .bento-cell__list li{color:var(--color-text-dark-secondary)}.bento--inverted .bento-cell:hover .bento-cell__title{color:var(--color-brand-300)}.bento--inverted .bento-cell--ax .bento-cell__label,.bento--inverted .bento-cell__label{color:var(--color-brand-300)}.bento--inverted .bento-cell--event .bento-cell__label{color:var(--color-empathy-300)}.bento--inverted .bento-cell__list li::before{background:var(--color-brand-300)}.bento--inverted .bento-cell__cta::after{color:var(--color-brand-300)}.bento--inverted .bento-cell__cta:hover,.bento--inverted .bento-cell__cta:hover::after{color:var(--color-brand-300)}.bento--inverted .bento-cell__synergy .dot--ax,.bento--inverted .bento-cell__synergy .dot--web{color:var(--color-brand-300);border-color:var(--color-brand-300)}.bento--inverted .bento-cell__synergy .dot--event{color:var(--color-empathy-300);border-color:var(--color-empathy-300)}.bento--inverted .bento-cell__icon img{opacity:.22}.bento--inverted.section-movement::before{background-image:linear-gradient(rgba(91,174,174,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(91,174,174,.14) 1px,transparent 1px)}@media (max-width:767px){.bento--inverted .bento-cell__cta{border-color:var(--color-border-dark-default);background:var(--color-glass-dark-default)}}.strengths.section-movement{background:var(--color-bg-primary)}.strengths__header{border-bottom:1px solid var(--color-decor-hairline);padding-bottom:var(--space-5)}.strengths__title{font-family:var(--font-serif-jp);font-size:clamp(1.75rem, 4.5vw, 3rem);font-weight:var(--fw-semibold);mix-blend-mode:multiply}@media (min-width:1024px){.strengths .strengths__grid{gap:0;border-top:1px solid var(--color-decor-hairline)}.strengths .strength-card{padding:var(--space-8) var(--space-6);border-right:1px solid var(--color-decor-hairline)}.strengths .strength-card:last-child{border-right:0}}.strengths .strength-card__number{position:static;font-family:var(--font-serif-jp);font-size:clamp(2.5rem, 4vw, 3.5rem);font-weight:var(--fw-semibold);color:var(--color-brand);letter-spacing:var(--ls-tighter);line-height:.9;opacity:.9;margin-bottom:var(--space-2)}.strengths .strength-card__number{font-feature-settings:"tnum"}.strengths .strength-card__title{font-family:var(--font-serif-jp);font-weight:var(--fw-semibold)}.strengths .strength-card__title::before{display:none}.strengths .strength-card__title{padding-top:0}.case-study--redacted .case-study__title{font-family:var(--font-serif-jp);font-size:clamp(2rem, 5.5vw, 3.75rem);font-weight:var(--fw-semibold);line-height:var(--lh-snug)}.case-study--redacted .case-study__title-line{display:block}.redacted-inline{display:inline-block;position:relative;color:var(--color-bg-dark-primary);background:var(--color-text-dark-primary);border-radius:1px;padding-inline:0.3em;font-weight:700}.case-card__client{display:flex;align-items:center;gap:var(--space-3);margin-top:calc(var(--space-2) * -1)}.case-card__client-label{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--color-text-dark-secondary);flex:none}.redacted-bar{position:relative;display:block;height:1.15em;width:9.5em;max-width:100%;border-radius:2px;background:repeating-linear-gradient(110deg,var(--color-text-dark-primary) 0 .9em,rgba(244,250,249,.86) .9em 1.05em);overflow:hidden}.redacted-bar--short{width:6.5em}.redacted-bar--long{width:11em}.redacted-bar::after{content:"";position:absolute;inset:0;background:var(--color-bg-dark-primary);transform:scaleX(1);transform-origin:right;transition:transform .9s var(--ease-out-expo)}.case-card.is-visible .redacted-bar::after{transform:scaleX(0)}.case-study--redacted .case-card__title{font-family:var(--font-serif-jp);font-weight:var(--fw-semibold)}.case-study--redacted .case-card__metric-value{font-family:var(--font-mono)}.case-study--redacted .case-study__header{border-bottom:1px solid var(--color-border-dark-subtle);padding-bottom:var(--space-6)}.ai-lab--manifesto{padding-block:var(--space-9) var(--space-9)}.ai-lab__manifesto{position:relative;margin-bottom:var(--space-9);padding-block:var(--space-6) var(--space-7)}.ai-lab__manifesto-rule{display:block;width:100%;height:2px;margin-bottom:var(--space-6);overflow:visible}.ai-lab__manifesto-rule line{stroke:var(--color-brand-300);stroke-width:2;opacity:.6;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.2s var(--ease-out-expo)}.ai-lab__manifesto.is-visible .ai-lab__manifesto-rule line{stroke-dashoffset:0}.ai-lab__manifesto-lead{margin-bottom:var(--space-6)}.ai-lab__manifesto-copy{display:block}.ai-lab__manifesto-line{display:block;font-family:var(--font-serif-jp);font-weight:var(--fw-semibold);color:var(--color-text-dark-primary);letter-spacing:var(--ls-tighter);line-height:1.04;font-size:clamp(2.75rem, 12vw, 9rem);mix-blend-mode:screen}.ai-lab__manifesto-line--lead{color:var(--color-text-dark-secondary);font-size:clamp(2.25rem, 9vw, 7rem)}.ai-lab__manifesto-line em{font-style:normal;color:var(--color-brand-300)}.ai-lab__manifesto-sub{display:block;margin-top:var(--space-4);font-family:var(--font-mono);font-size:clamp(.95rem, 2.2vw, 1.35rem);letter-spacing:var(--ls-wide);color:var(--color-text-dark-secondary)}.ai-lab--manifesto .ai-lab__title{font-family:var(--font-serif-jp)}.ai-lab--manifesto .ai-lab__sub{font-family:var(--font-sans-jp);font-weight:var(--fw-medium)}@media (max-width:767px){.ai-lab__manifesto{margin-bottom:var(--space-7)}.ai-lab__manifesto-line{line-height:1.08}}.news-column__lead-header{margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-decor-hairline)}.news-column__block-title-ja{font-family:var(--font-serif-jp);font-weight:var(--fw-semibold)}.news-column__block-title .news-column__block-title-en,.news-column__block-title-en{font-family:var(--font-mono)}.final-cta--closing .final-cta__title{font-family:var(--font-serif-jp);font-weight:var(--fw-semibold)}@media (min-width:768px){.final-cta--closing .final-cta__inner{text-align:center}.final-cta--closing .final-cta__title{text-align:center}.final-cta--closing .final-cta__lead{text-align:left}.final-cta--closing .final-cta__sub-link{text-align:center}.final-cta--closing .final-cta__buttons{justify-content:center}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.bento.section-movement::before,.news-column.section-movement::before,.purpose-router.section-movement::before,.strengths.section-movement::before{animation:blueprint-draw linear both;animation-timeline:view();animation-range:entry 0% entry 70%}.editorial-index{animation:index-rise linear both;animation-timeline:view();animation-range:entry 5% cover 22%}.ai-lab__manifesto-line{animation:manifesto-settle linear both;animation-timeline:view();animation-range:entry 0% cover 35%}.bento__header{animation:bracket-tighten linear both;animation-timeline:view();animation-range:entry 0% entry 60%}}}@keyframes blueprint-draw{from{clip-path:inset(0 0 100% 0);opacity:0}60%{opacity:.7}to{clip-path:inset(0 0 0 0);opacity:.7}}@keyframes index-rise{from{transform:translateY(28px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes manifesto-settle{from{transform:translateX(-3%);letter-spacing:.04em;opacity:.4}to{transform:translateX(0);letter-spacing:var(--ls-tighter);opacity:1}}@keyframes bracket-tighten{from{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.bento.section-movement::before,.news-column.section-movement::before,.purpose-router.section-movement::before,.strengths.section-movement::before{clip-path:none!important;opacity:.55!important;animation:none!important}.ai-lab__manifesto-line,.bento__header,.editorial-index{animation:none!important;transform:none!important;opacity:1!important;letter-spacing:var(--ls-tighter)}.ai-lab__manifesto-rule line{stroke-dashoffset:0!important;transition:none!important}.redacted-bar::after{transform:scaleX(0)!important;transition:none!important}.purpose-router .purpose-card:hover{transform:none!important}.bento .bento-cell:hover{transform:none!important}}.news-column.section-movement::before,.purpose-router.section-movement::before,.strengths.section-movement::before{background-image:linear-gradient(rgba(6,123,123,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(6,123,123,.07) 1px,transparent 1px)}
/* ===== coletlab-hero-viewport ===== */
:root{--kv-viewport-height:100svh;--kv-main-offset:calc(var(--header-height, 64px) + var(--space-3));--page-hero-viewport-height:calc(var(--kv-viewport-height) - var(--breadcrumb-top-offset, calc(var(--header-height, 64px) + var(--space-3))) - var(--breadcrumb-bottom-gap, var(--space-1)) - var(--space-6));--page-hero-bg:linear-gradient(
		180deg,
		var(--color-bg-surface) 0%,
		var(--color-bg-surface) 64%,
		rgba(250, 249, 247, 0.74) 100%
	);--page-hero-bottom-edge:rgba(6, 123, 123, 0.1)}@supports not (height:100svh){:root{--kv-viewport-height:100vh}}@media (min-width:1024px){:root{--kv-main-offset:calc(var(--header-height, 64px) + var(--space-4))}}:is(
.hero,.about-hero,.services-hero,.works-hero,.error-hero,.lp-geo-hero,.lp-ig-hero,.lp-meo-hero,.lp-web-hero,.lp-mc-hero,.lp-geo-thanks-hero,.lp-ig-thanks-hero,.lp-meo-thanks-hero,.lp-web-thanks-hero,.lp-mc-thanks-hero
){min-height:var(--kv-viewport-height);box-sizing:border-box}:is(
.about-hero,.services-hero,.works-hero,.error-hero,.lp-geo-hero,.lp-ig-hero,.lp-meo-hero,.lp-web-hero,.lp-mc-hero,.lp-geo-thanks-hero,.lp-ig-thanks-hero,.lp-meo-thanks-hero,.lp-web-thanks-hero,.lp-mc-thanks-hero
){align-items:center}body.page :is(
.about-hero,.services-hero,.works-hero,.privacy-hero
){background:var(--page-hero-bg);box-shadow:inset 0 -1px 0 var(--page-hero-bottom-edge)}@media (min-width:1024px){body.page :is(
.about-hero,.services-hero,.works-hero
){min-height:var(--page-hero-viewport-height);align-items:center;justify-content:flex-start;padding-top:var(--page-hero-top-offset)}body.page :is(
.about-hero__inner,.services-hero__inner,.works-hero__inner,.privacy-hero__inner
){align-self:center;margin-top:0}body.page :is(
.about-hero__overline,.services-hero__overline,.works-hero__overline,.privacy-hero__overline
){margin-top:0}}@media (min-width:1024px) and (max-height:760px){body.page :is(
.about-hero__scroll,.services-hero__scroll,.works-hero__scroll
){bottom:var(--space-3)}body.page :is(
.about-hero__scroll-line,.services-hero__scroll-line,.works-hero__scroll-line
){height:24px}}:is(
.error-hero,.privacy-hero
){display:flex}:is(
.error-hero__inner,.privacy-hero__inner
){width:100%}.search-hero{display:flex;align-items:center;min-height:calc(var(--kv-viewport-height) - var(--breadcrumb-top-offset) - var(--breadcrumb-bottom-gap) - 40px);box-sizing:border-box}.search-hero__inner{width:100%}:is(
.archive--ailab .ailab-bento,.page--resources .shelf-bento
){min-height:calc(var(--kv-viewport-height) - var(--breadcrumb-top-offset) - var(--breadcrumb-bottom-gap));box-sizing:border-box;display:flex;align-items:center}:is(
.archive--ailab .ailab-bento__inner,.page--resources .shelf-bento__inner
){width:100%}body.home .hero--implementation-map{min-height:var(--kv-viewport-height)}body.error404 .error-hero,body.single-cpt_lp :is(
.lp-geo-hero,.lp-ig-hero,.lp-meo-hero,.lp-web-hero,.lp-mc-hero,.lp-geo-thanks-hero,.lp-ig-thanks-hero,.lp-meo-thanks-hero,.lp-web-thanks-hero,.lp-mc-thanks-hero
){min-height:var(--page-hero-viewport-height);padding-top:var(--page-hero-top-offset)}body.single-cpt_lp{--page-hero-top-offset:calc(var(--header-height, 64px) + var(--space-5));--page-hero-viewport-height:calc(var(--kv-viewport-height) - var(--header-height, 64px))}@media (min-width:1024px){body.single-cpt_lp{--page-hero-top-offset:calc(var(--header-height, 64px) + var(--space-6))}}:is(.bg-mega-typo,[class*="__bg-typo"]){font-weight:900;letter-spacing:0}:is(
.about-hero__picture,.services-hero__picture,.works-hero__picture
){position:relative;z-index:1;display:block;width:128%;margin-left:-12%;transform:scale(1.08);transform-origin:center right;filter:drop-shadow(0 28px 60px rgba(6, 79, 79, .14))}:is(
.about-hero__picture img,.services-hero__picture img,.works-hero__picture img
){display:block;width:100%;height:auto}@media (min-width:1024px){body.home .hero--implementation-map .hero__inner{min-height:calc(var(--kv-viewport-height) - var(--header-height,64px) - var(--space-6) - var(--space-8))}:is(
.about-hero,.services-hero,.works-hero
)::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.99) 0,rgba(255,255,255,.98) 30%,rgba(255,255,255,.86) 47%,rgba(255,255,255,.38) 66%,rgba(255,255,255,.1) 84%,rgba(255,255,255,.02) 100%),linear-gradient(180deg,rgba(255,255,255,.74) 0,rgba(255,255,255,0) 24%,rgba(255,255,255,0) 76%,rgba(255,255,255,.78) 100%)}:is(
.about-hero__inner,.services-hero__inner,.works-hero__inner,.about-hero__scroll,.services-hero__scroll,.works-hero__scroll
){z-index:3}}@media (max-width:1023px){body.home .hero--implementation-map,body.home .hero--implementation-map .hero__inner{min-height:0}:is(
.hero,.about-hero,.services-hero,.works-hero,.contact-thanks-hero,.privacy-hero,.error-hero,.lp-geo-hero,.lp-ig-hero,.lp-meo-hero,.lp-web-hero,.lp-mc-hero,.lp-geo-thanks-hero,.lp-ig-thanks-hero,.lp-meo-thanks-hero,.lp-web-thanks-hero,.lp-mc-thanks-hero
){min-height:0}:is(
.archive--ailab .ailab-bento,.page--resources .shelf-bento
){min-height:0}:is(
.hero,.about-hero,.services-hero,.works-hero
){position:relative;overflow:hidden;isolation:isolate}:is(
.about-hero,.services-hero,.works-hero
)::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(250,249,247,.92) 0,rgba(250,249,247,.78) 28%,rgba(250,249,247,.62) 60%,rgba(250,249,247,.85) 100%)}body.page :is(
.about-hero,.services-hero,.works-hero
)::before{background:linear-gradient(180deg,rgba(250,249,247,.94) 0,rgba(250,249,247,.82) 28%,rgba(250,249,247,.66) 60%,rgba(250,249,247,.85) 100%)}:is(
.hero__visual,.about-hero__visual,.services-hero__visual,.works-hero__visual
){position:absolute;inset:0;top:0;right:0;width:100%;max-width:none;height:100%;margin:0;padding:0;transform:none;z-index:0;overflow:hidden;pointer-events:none}:is(
.hero__visual picture,.about-hero__picture,.services-hero__picture,.works-hero__picture
){position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;transform:none;filter:none}:is(
.hero__visual img,.about-hero__picture img,.services-hero__picture img,.works-hero__picture img
){width:100%;height:100%;object-fit:cover;object-position:center;display:block}:is(
.hero__inner,.about-hero__inner,.services-hero__inner,.works-hero__inner
){position:relative;z-index:3}}@media (prefers-reduced-motion:reduce) and (min-width:1024px){:is(
.about-hero__visual,.services-hero__visual,.works-hero__visual
){animation:none!important;opacity:1!important;transform:none!important}:is(
.about-hero__picture,.services-hero__picture,.works-hero__picture
){transform:translateY(-50%)!important}}body.page .contact-hero{min-height:0;display:block;align-items:initial;justify-content:initial;padding-top:var(--space-5);padding-bottom:var(--space-4);margin-bottom:0;background:var(--color-bg-primary);box-shadow:inset 0 -1px 0 var(--color-border-subtle)}body.page .contact-hero::before{content:none}body.page .contact-hero__inner{position:relative;z-index:1;width:auto;align-self:auto;margin-top:0}body.page .contact-hero__visual{position:static;inset:auto;width:auto;max-width:none;height:auto;margin:0;padding:0;transform:none;overflow:visible;opacity:1;animation:none}body.page .contact-hero__visual>svg{display:block}@media (min-width:1024px){body.page .contact-hero{padding-top:var(--space-6);padding-bottom:var(--space-5);margin-bottom:0}body.page .contact-hero__visual{width:100%;max-width:280px;aspect-ratio:1/1}}
/* ===== coletlab-text-flow ===== */
:is(body.home,body.page,body.archive,body.search,body.error404,body.single-cpt_lp) p{max-width:none;text-wrap:normal}:is(body.home,body.page,body.archive,body.search,body.error404,body.single-cpt_lp) p[class*="-lead"],:is(body.home,body.page,body.archive,body.search,body.error404,body.single-cpt_lp) p[class*="__lead"]{max-width:none;text-wrap:normal}:is(body.home,body.page,body.archive,body.search,body.error404,body.single-cpt_lp) :is(
[class*="__header"]:not(.container):not([class*="__header-"]),[class*="__body"]:not(.container):not([class*="__body-"]),[class*="__copy"]:not(.container):not([class*="__copy-"]),[class*="__text"]:not(.container):not([class*="__text-"]),[class*="__intro"]:not(.container):not([class*="__intro-"])
){max-width:none}:is(body.home,body.page,body.archive,body.search,body.error404,body.single-cpt_lp) .container{max-width:var(--container-default)}:is(body.home,body.page,body.archive,body.search,body.error404,body.single-cpt_lp) .container--wide{max-width:var(--container-wide)}:is(body.home,body.page,body.archive,body.search,body.error404,body.single-cpt_lp) .container--narrow{max-width:var(--container-narrow)}@media (max-width:1023px){:root{--fs-xs:0.875rem}:is(
.case-card__metric-label,.contact-form__required,.contact-form__optional,.column-card__category,.ailab-card__video-badge,.ailab-card__category-pill,.shelf-card__video-badge,.shelf-card__category-pill,.search-tabs__count,.search-result__type,.contact-form__submit-note code,.contact-thanks-next__card-meta
){font-size:.875rem;line-height:1.35}.case-card__metric-label{white-space:normal;overflow:visible;text-overflow:clip}}@media (max-width:767px){.trust-bar{padding-block:var(--space-3)!important}.trust-bar__inner{flex-direction:column!important;flex-wrap:wrap;align-items:center!important;justify-content:center;gap:var(--space-2)!important;text-align:center}.trust-bar__label{font-size:var(--fs-xs);text-align:center}.trust-bar__metrics{flex-direction:column!important;flex-wrap:wrap;align-items:center!important;justify-content:center;gap:var(--space-1) var(--space-2)!important;font-size:var(--fs-xs);line-height:1.55;text-align:center}.trust-bar__divider{display:none!important}.trust-bar__partners{font-size:var(--fs-xs);text-align:center}}@media (min-width:768px) and (max-width:1023px){.trust-bar{padding-block:var(--space-4)}.trust-bar__inner{gap:var(--space-3)}.trust-bar__metrics{gap:var(--space-2) var(--space-4);font-size:var(--fs-sm)}}@media (max-width:767px){:is(
.bento__title,.strengths__title,.case-study__title,.ai-lab__title,.purpose-router__title,.news-column__title,.about-manifesto__title,.about-message__title,.about-info__title,.about-business__title,.about-clients__title,.about-access__title,.about-vision__title,.services-bento__title,.services-detail__title,.services-strengths__title,.services-faq__title,.works-confidentiality__title,.works-summary__title,.works-challenges__title,.works-coverage__title,.works-process__title,.works-final__title,.works-impact__title,.contact-form-section__title,.contact-faq__title,.contact-tel__title,.contact-access__title,.contact-privacy__title,.contact-thanks-hero__title,.contact-thanks-info__title,.contact-thanks-next__title,.privacy-section__title,.lp-geo-shift__title,.lp-geo-vs__title,.lp-geo-service__title,.lp-geo-consult__title,.lp-geo-flow__title,.lp-geo-faq__title,.lp-geo-form-section__title,.lp-geo-privacy__title,.lp-geo-promise__title,.lp-geo-thanks-hero__title,.lp-geo-thanks-info__title,.lp-ig-shift__title,.lp-ig-vs__title,.lp-ig-service__title,.lp-ig-consult__title,.lp-ig-flow__title,.lp-ig-faq__title,.lp-ig-form-section__title,.lp-ig-privacy__title,.lp-ig-promise__title,.lp-ig-thanks-hero__title,.lp-ig-thanks-info__title,.lp-meo-shift__title,.lp-meo-vs__title,.lp-meo-service__title,.lp-meo-consult__title,.lp-meo-flow__title,.lp-meo-faq__title,.lp-meo-form-section__title,.lp-meo-privacy__title,.lp-meo-promise__title,.lp-meo-thanks-hero__title,.lp-meo-thanks-info__title,.lp-web-shift__title,.lp-web-vs__title,.lp-web-issue__title,.lp-web-service__title,.lp-web-consult__title,.lp-web-flow__title,.lp-web-faq__title,.lp-web-form-section__title,.lp-web-privacy__title,.lp-web-promise__title,.lp-web-thanks-hero__title,.lp-web-thanks-info__title,.lp-mc-shift__title,.lp-mc-vs__title,.lp-mc-service__title,.lp-mc-consult__title,.lp-mc-flow__title,.lp-mc-faq__title,.lp-mc-form-section__title,.lp-mc-privacy__title,.lp-mc-promise__title,.lp-mc-thanks-hero__title,.lp-mc-thanks-info__title,.ailit-section__title,.shelf-bento__title,.shelf-concept__title,.shelf-list__title
){font-size:clamp(1.5rem, 6.5vw, 2rem);line-height:1.3;letter-spacing:-.005em}:is(
.strength-card__title,.services-strength__title,.about-business__card-title-ja,.about-clients__category-title,.bento-cell__title,.purpose-card__title,.owned-service-banner__title,.contact-thanks-next__card-title,.shelf-card__title,.ailab-card__title,.column-card__title,.column-item__title,.info-list__title,.news-list__title
){font-size:clamp(1.125rem, 4.5vw, 1.375rem);line-height:1.4}:is(
.about-manifesto__lead,.about-message__lead,.about-info__lead,.about-business__lead,.about-clients__lead,.about-access__lead,.about-vision__lead,.services-bento__lead,.services-detail__lead,.services-strengths__lead,.services-faq__lead,.works-confidentiality__lead,.works-summary__lead,.works-challenges__lead,.works-coverage__lead,.works-process__lead,.contact-form-section__lead,.contact-faq__lead,.purpose-router__lead,.lp-geo-shift__lead,.lp-geo-vs__lead,.lp-geo-service__lead,.lp-geo-faq__lead,.lp-ig-shift__lead,.lp-ig-vs__lead,.lp-ig-service__lead,.lp-ig-faq__lead,.lp-meo-shift__lead,.lp-meo-vs__lead,.lp-meo-service__lead,.lp-meo-faq__lead,.lp-web-shift__lead,.lp-web-vs__lead,.lp-web-issue__lead,.lp-web-service__lead,.lp-web-faq__lead,.lp-mc-shift__lead,.lp-mc-vs__lead,.lp-mc-service__lead,.lp-mc-faq__lead
){font-size:var(--fs-base);line-height:1.7}}@media (min-width:768px) and (max-width:1023px){:is(
.bento__title,.strengths__title,.case-study__title,.ai-lab__title,.purpose-router__title,.news-column__title,.about-manifesto__title,.about-message__title,.about-info__title,.about-business__title,.about-clients__title,.about-access__title,.about-vision__title,.services-bento__title,.services-detail__title,.services-strengths__title,.services-faq__title,.works-confidentiality__title,.works-summary__title,.works-challenges__title,.works-coverage__title,.works-process__title,.works-final__title,.works-impact__title,.contact-form-section__title,.contact-faq__title,.contact-tel__title,.contact-access__title,.contact-privacy__title,.privacy-section__title,.lp-geo-shift__title,.lp-geo-vs__title,.lp-geo-service__title,.lp-geo-consult__title,.lp-geo-flow__title,.lp-geo-faq__title,.lp-geo-form-section__title,.lp-geo-privacy__title,.lp-geo-promise__title,.lp-ig-shift__title,.lp-ig-vs__title,.lp-ig-service__title,.lp-ig-consult__title,.lp-ig-flow__title,.lp-ig-faq__title,.lp-ig-form-section__title,.lp-ig-privacy__title,.lp-ig-promise__title,.lp-meo-shift__title,.lp-meo-vs__title,.lp-meo-service__title,.lp-meo-consult__title,.lp-meo-flow__title,.lp-meo-faq__title,.lp-meo-form-section__title,.lp-meo-privacy__title,.lp-meo-promise__title,.lp-web-shift__title,.lp-web-vs__title,.lp-web-issue__title,.lp-web-service__title,.lp-web-consult__title,.lp-web-flow__title,.lp-web-faq__title,.lp-web-form-section__title,.lp-web-privacy__title,.lp-web-promise__title,.lp-mc-shift__title,.lp-mc-vs__title,.lp-mc-service__title,.lp-mc-consult__title,.lp-mc-flow__title,.lp-mc-faq__title,.lp-mc-form-section__title,.lp-mc-privacy__title,.lp-mc-promise__title,.shelf-bento__title,.shelf-concept__title,.shelf-list__title
){font-size:clamp(1.875rem, 4.8vw, 2.5rem);line-height:1.25}}@media (max-width:767px){:is(
.btn,.breadcrumb__list > *,.breadcrumb__list a,.works-nav__link,.search-tabs__item,.column-archive__category-pill,.single-ailab__breadcrumb > *,[class*="__title"],[class*="__title-line"],[class*="__lead-line"],[class*="__copy-line"],[class*="__audience"],[class*="__cta"],[class*="__eyebrow"],[class*="__overline"],[class*="__badge"],[class*="__pill"],[class*="__tag"],[class*="__label"],[class*="__meta"],[class*="__category"],[class*="__item"],[class*="__tab"]
){max-width:100%;min-width:0;white-space:normal!important;overflow-wrap:anywhere;word-break:normal!important}.breadcrumb__sep{white-space:nowrap!important;overflow-wrap:normal}}@media (max-width:767px){:is(
.bento,.strengths,.case-study,.ai-lab,.news-column,.purpose-router,.owned-service-banner-section,.about-manifesto,.about-message,.about-info,.about-business,.about-clients,.about-access,.about-vision,.services-bento,.services-detail,.services-strengths,.services-faq,.works-confidentiality,.works-summary,.works-challenges,.works-coverage,.works-process,.works-final,.works-impact,.contact-form-section,.contact-faq,.contact-tel,.contact-access,.contact-privacy,.privacy-section,.lp-geo-shift,.lp-geo-vs,.lp-geo-service,.lp-geo-consult,.lp-geo-flow,.lp-geo-faq,.lp-geo-form-section,.lp-geo-privacy,.lp-geo-promise,.lp-ig-shift,.lp-ig-vs,.lp-ig-service,.lp-ig-consult,.lp-ig-flow,.lp-ig-faq,.lp-ig-form-section,.lp-ig-privacy,.lp-ig-promise,.lp-meo-shift,.lp-meo-vs,.lp-meo-service,.lp-meo-consult,.lp-meo-flow,.lp-meo-faq,.lp-meo-form-section,.lp-meo-privacy,.lp-meo-promise,.lp-web-shift,.lp-web-vs,.lp-web-issue,.lp-web-service,.lp-web-consult,.lp-web-flow,.lp-web-faq,.lp-web-form-section,.lp-web-privacy,.lp-web-promise,.lp-mc-shift,.lp-mc-vs,.lp-mc-service,.lp-mc-consult,.lp-mc-flow,.lp-mc-faq,.lp-mc-form-section,.lp-mc-privacy,.lp-mc-promise,.ailit-section,.shelf-bento,.shelf-concept,.shelf-list
){padding-block:var(--space-7)}}@media (min-width:768px) and (max-width:1023px){:is(
.bento,.strengths,.case-study,.ai-lab,.news-column,.purpose-router,.owned-service-banner-section,.about-manifesto,.about-message,.about-info,.about-business,.about-clients,.about-access,.about-vision,.services-bento,.services-detail,.services-strengths,.services-faq,.works-confidentiality,.works-summary,.works-challenges,.works-coverage,.works-process,.works-final,.works-impact,.contact-form-section,.contact-faq,.contact-tel,.contact-access,.contact-privacy,.privacy-section,.lp-geo-shift,.lp-geo-vs,.lp-geo-service,.lp-geo-consult,.lp-geo-flow,.lp-geo-faq,.lp-geo-form-section,.lp-geo-privacy,.lp-geo-promise,.lp-ig-shift,.lp-ig-vs,.lp-ig-service,.lp-ig-consult,.lp-ig-flow,.lp-ig-faq,.lp-ig-form-section,.lp-ig-privacy,.lp-ig-promise,.lp-meo-shift,.lp-meo-vs,.lp-meo-service,.lp-meo-consult,.lp-meo-flow,.lp-meo-faq,.lp-meo-form-section,.lp-meo-privacy,.lp-meo-promise,.lp-web-shift,.lp-web-vs,.lp-web-issue,.lp-web-service,.lp-web-consult,.lp-web-flow,.lp-web-faq,.lp-web-form-section,.lp-web-privacy,.lp-web-promise,.lp-mc-shift,.lp-mc-vs,.lp-mc-service,.lp-mc-consult,.lp-mc-flow,.lp-mc-faq,.lp-mc-form-section,.lp-mc-privacy,.lp-mc-promise,.ailit-section,.shelf-bento,.shelf-concept,.shelf-list
){padding-block:var(--space-8)}}@media (max-width:767px){:is(
.about-manifesto__header,.about-message__header,.about-info__header,.about-business__header,.about-clients__header,.about-access__header,.about-vision__header,.services-bento__header,.services-detail__header,.services-strengths__header,.services-faq__header,.works-confidentiality__header,.works-summary__header,.works-challenges__header,.works-coverage__header,.works-process__header,.contact-form-section__header,.contact-faq__header,.privacy-section__header,.purpose-router__header
){text-align:left;margin-inline:0;max-width:none}}@media (min-width:768px) and (max-width:1023px){:is(
.about-manifesto__header,.about-message__header,.about-info__header,.about-business__header,.about-clients__header,.about-access__header,.about-vision__header,.services-bento__header,.services-detail__header,.services-strengths__header,.services-faq__header,.works-confidentiality__header,.works-summary__header,.works-challenges__header,.works-coverage__header,.works-process__header,.contact-form-section__header,.contact-faq__header,.privacy-section__header,.purpose-router__header
){text-align:left;margin-inline:0}}
/* ===== coletlab-tonmana-inheritance ===== */
body:not(.home):not(.page--ai-literacy){--color-text-secondary:#34413F;--color-text-muted:#5B6A67;--color-border-subtle:rgba(26, 40, 38, 0.14);--color-decor-hairline:rgba(26, 40, 38, 0.18)}body:not(.home):not(.page--ai-literacy) main{background:var(--color-bg-primary)}body:not(.home):not(.page--ai-literacy) :is(
.column-card,.search-result,.error-card,.info-list,.ailab-bento__cell,.ailab-card,.shelf-bento__cell,.shelf-card,.single-post__featured,.single-post__cta-card,.single-post__next-card,.single-post__related-card,.sidebar-block,.sidebar-link,.contact-thanks-next__card,.contact-thanks-info__card,[class*="-thanks-info__card"],.lp-hero-diagnostic,.lp-stage-geo__answer,.lp-stage-geo__signals > div,.lp-stage-ig__phone,.lp-stage-ig__flow li,.lp-stage-meo__map,.lp-stage-meo__actions,.lp-stage-web__board,.lp-stage-web__stack > div,.lp-stage-mc__board,.lp-stage-mc__rhythm > div,[class*="-vs__table-wrap"],[class*="-compare__table-wrap"],.wpcf7-form
){border-radius:var(--radius-sm);box-shadow:none}body:not(.home):not(.page--ai-literacy) :is(
.column-card,.search-result,.error-card,.ailab-bento__cell,.ailab-card,.shelf-bento__cell,.shelf-card,.single-post__cta-card,.single-post__next-card,.single-post__related-card,.contact-thanks-next__card,[class*="-thanks-next__card"]:not([class*="__card-"]),.lp-hero-diagnostic,.lp-stage-geo__answer,.lp-stage-geo__signals > div,.lp-stage-ig__phone,.lp-stage-ig__flow li,.lp-stage-meo__map,.lp-stage-meo__actions,.lp-stage-web__board,.lp-stage-web__stack > div,.lp-stage-mc__board,.lp-stage-mc__rhythm > div,[class*="-vs__table-wrap"],[class*="-compare__table-wrap"]
){border:1px solid var(--color-decor-hairline)}body:not(.home):not(.page--ai-literacy) .single-post--info .single-post__related-card{border:0;border-bottom:1px dashed rgba(0,0,0,.08)}body:not(.home):not(.page--ai-literacy) :is(
.column-card:hover,.search-result:hover,.error-card:hover,.ailab-bento__cell:hover,.ailab-card:hover,.shelf-bento__cell:hover,.shelf-card:hover,.single-post__next-card:hover,.single-post__related-card:hover,.contact-thanks-next__card:hover,[class*="-thanks-next__card"]:not([class*="__card-"]):hover
){border-color:var(--color-border-brand);box-shadow:none}@media (hover:none){body:not(.home):not(.page--ai-literacy) :is(
.column-card:hover,.search-result:hover,.error-card:hover,.ailab-bento__cell:hover,.ailab-card:hover,.shelf-bento__cell:hover,.shelf-card:hover,.single-post__next-card:hover,.single-post__related-card:hover,.contact-thanks-next__card:hover,[class*="-thanks-next__card"]:not([class*="__card-"]):hover
){transform:none}}body:not(.home):not(.page--ai-literacy) :is(
.ailab-archive-concept__author,.shelf-concept__author
){border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);box-shadow:none}body:not(.home):not(.page--ai-literacy) :is(
.ailab-archive-concept__cta-card,.shelf-concept__cta-card
){border-radius:var(--radius-sm);box-shadow:none}body:not(.home):not(.page--ai-literacy) :is(
.ailab-archive-concept__cta-card:hover,.shelf-concept__cta-card:hover
){transform:none;box-shadow:none}@media (hover:none){body:not(.home):not(.page--ai-literacy) :is(
.ailab-archive-concept__cta-card:hover,.shelf-concept__cta-card:hover
){transform:none}}body.single-post :is(
.single-post__body .ai-lab-caution,.single-post__body .ai-lab-screenshot,.single-post__body .ai-lab-screenshot img,.single-post__body .ai-lab-screenshot a,.single-post__body .ai-lab-table,.single-post__body .ai-lab-table table,.single-post__body .ai-lab-code-wrap,.single-post__body .ai-lab-code-wrap .hcb_wrap,.single-post__body .ai-lab-code-wrap pre
){box-shadow:none}body:not(.home):not(.page--ai-literacy) :is(
.column-hero__title,.info-hero__title,.search-hero__title,.error-hero__title,.ailab-bento__title,.shelf-bento__title,.contact-hero__title,.contact-thanks-hero__title,.privacy-hero__title,.ailab-bento__cell-title,.shelf-bento__cell-title,.single-ailab__title,[class*="-thanks-hero__title"],[class*="-thanks-info__title"],[class*="-thanks-next__title"]
){font-family:var(--font-serif-jp);font-weight:var(--fw-semibold);letter-spacing:0;mix-blend-mode:normal}body:not(.home):not(.page--ai-literacy) :is(
.column-hero__overline,.info-hero__overline,.search-hero__overline,.ailab-bento__overline,.shelf-bento__overline,.contact-hero__overline,.privacy-hero__overline,[class*="-thanks-hero__overline"]
){background:0 0;border:0;border-radius:0;padding:0;font-family:var(--font-mono);font-weight:var(--fw-medium);letter-spacing:var(--ls-widest);color:var(--color-text-secondary)}body:not(.home):not(.page--ai-literacy) :is(
.column-hero__overline,.info-hero__overline,.search-hero__overline,.ailab-bento__overline,.shelf-bento__overline,.contact-hero__overline,[class*="-thanks-hero__overline"]
)::before{content:"";width:24px;height:1px;border-radius:0;background:var(--color-brand);box-shadow:none}body:not(.home):not(.page--ai-literacy) :is(.column-hero,.info-hero,.search-hero){background:var(--color-bg-primary);border-bottom:1px solid var(--color-decor-hairline)}.archive--info main::before{content:"";position:absolute;inset:0 0 auto 0;height:clamp(140px,24vh,280px);background-image:linear-gradient(var(--color-decor-grid) 1px,transparent 1px),linear-gradient(90deg,var(--color-decor-grid) 1px,transparent 1px);background-size:var(--space-7) var(--space-7);-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,0.42),transparent);mask-image:linear-gradient(180deg,rgba(0,0,0,0.42),transparent);pointer-events:none;z-index:0;opacity:.56}.archive--info main{position:relative}.archive--info main>*{position:relative;z-index:1}.info-list{background:var(--color-bg-surface);border-color:var(--color-decor-hairline)}.info-list__title{font-family:var(--font-serif-jp);font-weight:var(--fw-semibold)}.info-list__date,.info-pagination__item{font-family:var(--font-mono);letter-spacing:var(--ls-wide)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__bg-typo,.ailab-archive-hero__bg-typo,.shelf-bento__bg-typo,.shelf-hero__bg-typo
){letter-spacing:0;opacity:.028;color:var(--color-brand)}body.page--resources :is(.shelf-bento__bg-typo,.shelf-hero__bg-typo){color:var(--color-accent)}body:not(.home):not(.page--ai-literacy) :is(.ailab-bento__decor,.shelf-bento__decor){opacity:.26}body:not(.home):not(.page--ai-literacy) :is(.ailab-bento__cell,.shelf-bento__cell){background:var(--color-bg-surface)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--hero,.shelf-bento__cell--hero
){background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(234,243,241,.72)),var(--color-bg-surface)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check,.ailab-bento__cell--cta-training,.ailab-bento__cell--cta-contact,.ailab-bento__cell--cta-line,.shelf-bento__cell--cta-code-check,.shelf-bento__cell--cta-contact,.shelf-bento__cell--cta-line
){background:var(--color-bg-surface);color:var(--color-text-primary);border:1px solid var(--color-decor-hairline);box-shadow:none}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check,.ailab-bento__cell--cta-training,.ailab-bento__cell--cta-contact,.ailab-bento__cell--cta-line,.shelf-bento__cell--cta-code-check,.shelf-bento__cell--cta-contact,.shelf-bento__cell--cta-line
) :is(.ailab-bento__cta-eyebrow,.shelf-bento__cta-eyebrow){color:var(--color-text-secondary);opacity:1}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check,.ailab-bento__cell--cta-training,.ailab-bento__cell--cta-contact,.ailab-bento__cell--cta-line,.shelf-bento__cell--cta-code-check,.shelf-bento__cell--cta-contact,.shelf-bento__cell--cta-line
) :is(
.ailab-bento__cta-title,.ailab-bento__cta-arrow,.shelf-bento__cta-title,.shelf-bento__cta-arrow
){color:var(--color-text-primary)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check,.ailab-bento__cell--cta-training,.ailab-bento__cell--cta-contact,.ailab-bento__cell--cta-line,.shelf-bento__cell--cta-code-check,.shelf-bento__cell--cta-contact,.shelf-bento__cell--cta-line
) :is(.ailab-bento__cta-desc,.shelf-bento__cta-desc){color:var(--color-text-secondary)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check,.ailab-bento__cell--cta-training,.ailab-bento__cell--cta-contact,.ailab-bento__cell--cta-line,.shelf-bento__cell--cta-code-check,.shelf-bento__cell--cta-contact,.shelf-bento__cell--cta-line
) :is(.ailab-bento__cta-icon,.shelf-bento__cta-icon){background:rgba(6,123,123,.08)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check,.ailab-bento__cell--cta-training,.ailab-bento__cell--cta-contact,.ailab-bento__cell--cta-line,.shelf-bento__cell--cta-code-check,.shelf-bento__cell--cta-contact,.shelf-bento__cell--cta-line
) :is(.ailab-bento__cta-icon svg,.shelf-bento__cta-icon svg){fill:var(--color-brand)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-training,.ailab-bento__cell--cta-contact,.ailab-bento__cell--cta-line
) .ailab-bento__cta-arrow::after,body:not(.home):not(.page--ai-literacy) :is(
.shelf-bento__cell--cta-code-check,.shelf-bento__cell--cta-contact,.shelf-bento__cell--cta-line
) .shelf-bento__cta-arrow::after{background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z'/%3E%3C/svg%3E") center/contain no-repeat}body:not(.home):not(.page--ai-literacy) .ailab-bento__cell--cta-code-check .ailab-bento__cta-arrow::after{content:none}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check:hover,.ailab-bento__cell--cta-training:hover,.ailab-bento__cell--cta-contact:hover,.ailab-bento__cell--cta-line:hover,.shelf-bento__cell--cta-code-check:hover,.shelf-bento__cell--cta-contact:hover,.shelf-bento__cell--cta-line:hover
){background:var(--color-brand);color:var(--color-text-dark-primary);border-color:var(--color-brand);box-shadow:none}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check:hover,.ailab-bento__cell--cta-training:hover,.ailab-bento__cell--cta-contact:hover,.ailab-bento__cell--cta-line:hover,.shelf-bento__cell--cta-code-check:hover,.shelf-bento__cell--cta-contact:hover,.shelf-bento__cell--cta-line:hover
) :is(.ailab-bento__cta-eyebrow,.shelf-bento__cta-eyebrow){color:rgba(244,250,249,.78)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check:hover,.ailab-bento__cell--cta-training:hover,.ailab-bento__cell--cta-contact:hover,.ailab-bento__cell--cta-line:hover,.shelf-bento__cell--cta-code-check:hover,.shelf-bento__cell--cta-contact:hover,.shelf-bento__cell--cta-line:hover
) :is(
.ailab-bento__cta-title,.ailab-bento__cta-arrow,.shelf-bento__cta-title,.shelf-bento__cta-arrow
){color:var(--color-text-dark-primary)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check:hover,.ailab-bento__cell--cta-training:hover,.ailab-bento__cell--cta-contact:hover,.ailab-bento__cell--cta-line:hover,.shelf-bento__cell--cta-code-check:hover,.shelf-bento__cell--cta-contact:hover,.shelf-bento__cell--cta-line:hover
) :is(.ailab-bento__cta-desc,.shelf-bento__cta-desc){color:rgba(244,250,249,.84)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check:hover,.ailab-bento__cell--cta-training:hover,.ailab-bento__cell--cta-contact:hover,.ailab-bento__cell--cta-line:hover,.shelf-bento__cell--cta-code-check:hover,.shelf-bento__cell--cta-contact:hover,.shelf-bento__cell--cta-line:hover
) :is(.ailab-bento__cta-icon,.shelf-bento__cta-icon){background:rgba(255,255,255,.14)}body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__cell--cta-code-check:hover,.ailab-bento__cell--cta-training:hover,.ailab-bento__cell--cta-contact:hover,.ailab-bento__cell--cta-line:hover,.shelf-bento__cell--cta-code-check:hover,.shelf-bento__cell--cta-contact:hover,.shelf-bento__cell--cta-line:hover
) :is(.ailab-bento__cta-icon svg,.shelf-bento__cta-icon svg){fill:var(--color-bg-surface)}body.page--resources .shelf-bento__step-num{background:rgba(201,136,95,.18);color:var(--color-text-primary);border:1px solid rgba(201,136,95,.52);box-shadow:none}@media (max-width:767px){body:not(.home):not(.page--ai-literacy) :is(
.ailab-bento__bg-typo,.ailab-archive-hero__bg-typo,.shelf-bento__bg-typo,.shelf-hero__bg-typo
){opacity:.02}}body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual)>svg{display:block}body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual) svg text{fill:var(--color-text-primary);opacity:.9}body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual) svg text[fill="#067B7B"]{fill:var(--color-brand);opacity:.95}body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual) svg text[fill="#C9885F"]{fill:#8F553C;opacity:.95}body.page .about-hero__visual svg .about-hero__node circle,body.page .services-hero__visual svg .services-hero__node,body.page .services-hero__visual svg g[font-family] rect,body.page .works-hero__visual svg .works-hero__nodes circle{fill:rgba(255,255,255,0.86);opacity:1}@media (max-width:1023px){body.page :is(.about-hero,.services-hero,.works-hero)::before{display:none}body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual) svg *{opacity:1}body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual) svg :is(circle,line,path,rect){stroke-width:1.8}}@media (min-width:1024px){body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual){position:absolute;top:50%;right:calc(max(0px,(100vw - var(--container-wide))/ 2) + var(--space-6));bottom:auto;left:auto;width:min(44vw,560px);max-width:560px;height:auto;max-height:min(66svh,540px);padding:0;transform:translateY(-50%);background:0 0;border:none;z-index:0;pointer-events:none;overflow:visible;opacity:0;animation:coletlab-fixed-page-hero-visual-in var(--duration-slowest) var(--ease-out-expo) 1.65s forwards}body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual) svg{max-height:min(64svh,520px)}body.page :is(.about-hero,.services-hero,.works-hero)::before{background:linear-gradient(90deg,rgba(250,249,247,.99) 0,rgba(250,249,247,.96) 28%,rgba(250,249,247,.7) 46%,rgba(250,249,247,.16) 66%,rgba(250,249,247,.04) 88%)}}@media (min-width:768px) and (max-width:1023px){body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual){position:static;z-index:0;order:2;width:100%;max-width:100%;height:auto;margin:var(--space-8) 0 0;padding:0;transform:none;background:0 0;border:none;overflow:visible;display:block;pointer-events:none;opacity:0;animation:coletlab-fixed-page-hero-visual-in-sp var(--duration-slowest) var(--ease-out-expo) 1.2s forwards}body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual) svg{width:100%;max-width:440px;height:auto;margin-inline:auto;display:block}}@media (max-width:767px){body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual){position:static;z-index:0;order:2;width:100vw;max-width:100vw;height:auto;margin:var(--space-5) 0 0;margin-left:calc(50% - 50vw);padding:0 var(--space-3);transform:none;background:0 0;border:none;overflow:visible;display:block;pointer-events:none;opacity:0;animation:coletlab-fixed-page-hero-visual-in-sp var(--duration-slowest) var(--ease-out-expo) 1.2s forwards}body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual) svg{width:100%;max-width:none;height:auto;margin-inline:auto;display:block}}body.page .about-hero__hub{animation-delay:1.95s}body.page .about-hero__links line:first-child{animation-delay:2.15s}body.page .about-hero__links line:nth-child(2){animation-delay:2.3s}body.page .about-hero__links line:nth-child(3){animation-delay:2.45s}body.page .about-hero__links line:nth-child(4){animation-delay:2.6s}body.page .services-hero__links path:first-child{animation-delay:2.05s}body.page .services-hero__links path:nth-child(2){animation-delay:2.25s}body.page .services-hero__links path:nth-child(3){animation-delay:2.45s}body.page .works-hero__spine{animation-delay:2.05s}@keyframes coletlab-fixed-page-hero-visual-in{from{opacity:0;transform:translateY(-50%) scale(.98)}to{opacity:.98;transform:translateY(-50%) scale(1)}}@keyframes coletlab-fixed-page-hero-visual-in-sp{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes coletlab-fixed-page-hero-visual-fade{from{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual){opacity:1!important;animation:none!important}@media (min-width:1024px){body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual){transform:translateY(-50%)!important}}@media (max-width:1023px){body.page :is(.about-hero__visual,.services-hero__visual,.works-hero__visual){transform:none!important}}}body.single-cpt_lp .section-label::after{content:"";align-self:flex-end;padding-bottom:.45em;font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--ls-wide);color:var(--color-text-secondary)}body.page :is(
.about-clients--dark,.works-summary--dark,.services-detail--dark
){background:var(--color-bg-dark-primary)}body.page :is(
.about-clients--dark,.works-summary--dark,.services-detail--dark
) .editorial-index--invert :is(
.editorial-index__num
){color:var(--color-brand-300)}body.page :is(
.about-clients--dark,.works-summary--dark,.services-detail--dark
) .editorial-index--invert :is(
.editorial-index__en,.editorial-index__total
){color:var(--color-text-dark-secondary)}body:not(.home):not(.page--ai-literacy) .section-label{align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-5);line-height:1}body:not(.home):not(.page--ai-literacy) .section-label__num{font-family:var(--font-serif-jp);font-size:clamp(2.25rem, 6vw, 3.5rem);font-weight:var(--fw-semibold);color:var(--color-brand);letter-spacing:0;font-feature-settings:"tnum";line-height:.8}body:not(.home):not(.page--ai-literacy) .section-label__line{width:1px;height:1.6em;align-self:flex-end;margin-bottom:.3em;background:var(--color-decor-hairline)}body:not(.home):not(.page--ai-literacy) .section-label__en{font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:var(--ls-widest);color:var(--color-text-secondary);align-self:flex-end;padding-bottom:.45em}body.lp--ai-geo-writing .section-label::after{content:"/ 08"}body.lp--bizboot-meo .section-label::after{content:"/ 09"}body.lp--instagram-marketing .section-label::after{content:"/ 11"}body.lp--web-marketing-support .section-label::after{content:"/ 09"}body.lp--marketing-copilot .section-label::after{content:"/ 10"}body.lp--ai-business-system .section-label::after{content:"/ 11"}body.lp--thanks .section-label::after{content:"/ 01"}body.archive--column .about-final-cta .section-label::after,body.archive--info .about-final-cta .section-label::after,body.page--contact-thanks .section-label::after{align-self:flex-end;padding-bottom:.45em;font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--ls-wide);color:var(--color-text-secondary)}body.page--contact-thanks .section-label::after{content:"/ 02"}body.archive--info .about-final-cta .section-label::after{content:"/ 02"}body.archive--column .about-final-cta .section-label::after{content:"/ 03"}body:not(.home):not(.page--ai-literacy) .about-final-cta .section-label::after,body:not(.home):not(.page--ai-literacy) .about-final-cta .section-label__en,body:not(.home):not(.page--ai-literacy) .about-final-cta .section-label__num{color:var(--color-brand-300)}body.archive--ailab .about-final-cta .final-cta__inner,body.archive--ailab .about-final-cta .final-cta__lead,body.archive--ailab .about-final-cta .final-cta__sub-link,body.archive--ailab .about-final-cta .final-cta__title,body.page--resources .about-final-cta .final-cta__inner,body.page--resources .about-final-cta .final-cta__lead,body.page--resources .about-final-cta .final-cta__sub-link,body.page--resources .about-final-cta .final-cta__title{text-align:center}body.archive--ailab .about-final-cta .final-cta__buttons,body.page--resources .about-final-cta .final-cta__buttons{justify-content:center}@media (min-width:1024px){body.page--resources .about-final-cta .final-cta__buttons{flex-wrap:nowrap}body.page--resources .about-final-cta .final-cta__buttons .btn{padding-inline:var(--space-6);white-space:nowrap}}body.single-cpt_lp :is(
.lp-geo-hero,.lp-ig-hero,.lp-meo-hero,.lp-web-hero,.lp-mc-hero,[class*="-thanks-hero"]
){background:var(--page-hero-bg)}body.single-cpt_lp :is(
[class*="-thanks-hero__visual"],[class*="-thanks-info__card"]
){background:var(--color-bg-surface);border:1px solid var(--color-decor-hairline);border-radius:var(--radius-sm);box-shadow:none}body.single-cpt_lp :is(
[class*="-thanks-hero__visual-spark"],[class*="-thanks-hero__visual-bubble"]
){animation:none;opacity:.28}body.single-cpt_lp :is(
.lp-geo-thanks-info,.lp-ig-thanks-info,.lp-meo-thanks-info,.lp-web-thanks-info,.lp-mc-thanks-info,.lp-ax-thanks-info
){background:var(--color-bg-primary)}body.single-cpt_lp :is(.lp-conversion-stage,[class*="-thanks-info"],[class*="-thanks-next"]){position:relative}body.single-cpt_lp :is(.lp-conversion-stage,[class*="-thanks-info"],[class*="-thanks-next"])::before{background-image:linear-gradient(var(--color-decor-grid) 1px,transparent 1px),linear-gradient(90deg,var(--color-decor-grid) 1px,transparent 1px);background-size:var(--space-7) var(--space-7)}body.single-cpt_lp .about-final-cta .final-cta__title,body:not(.home):not(.page--ai-literacy) .about-final-cta .final-cta__title{mix-blend-mode:normal}body:not(.home):not(.page--ai-literacy) .about-final-cta::before{display:none}body:not(.home):not(.page--ai-literacy) .about-final-cta{border-top:1px solid var(--color-border-dark-subtle)}body .breadcrumb::before,body:not(.home):not(.page--ai-literacy) .breadcrumb::before{left:0;width:100%;max-width:100%;transform:none;background:0 0}body.page :is(.about-hero,.services-hero,.works-hero,.privacy-hero){background:var(--color-bg-primary)}@media (max-width:1023px){body.page:not(.page--ai-literacy) :is(
.about-hero__title-line,.services-hero__title-line,.works-hero__title-line,.about-section__title-line,.services-section__title-line,.works-section__title-line
){display:inline;white-space:normal}}body.single-cpt_lp :is(
.lp-geo-hero__visual,.lp-ig-hero__visual,.lp-meo-hero__visual,.lp-web-hero__visual,.lp-mc-hero__visual
){max-width:680px;border-radius:var(--radius-sm);box-shadow:none}@media (min-width:1024px){body.single-cpt_lp :is(
.lp-geo-hero__visual,.lp-ig-hero__visual,.lp-meo-hero__visual,.lp-web-hero__visual,.lp-mc-hero__visual
){top:57%;max-height:min(66svh,560px);overflow:visible;right:max(var(--space-3),calc((100vw - var(--container-wide))/ 2 - var(--space-4)))}body.single-cpt_lp :is(
.lp-geo-hero__visual,.lp-ig-hero__visual,.lp-meo-hero__visual,.lp-web-hero__visual,.lp-mc-hero__visual
) svg{max-height:min(64svh,540px)}}body.single-cpt_lp :is(
.lp-geo-hero__visual,.lp-ig-hero__visual,.lp-meo-hero__visual,.lp-web-hero__visual,.lp-mc-hero__visual
) svg text{letter-spacing:0}@media (max-width:1023px){body.single-cpt_lp :is(
.lp-geo-hero__visual,.lp-ig-hero__visual,.lp-meo-hero__visual,.lp-web-hero__visual,.lp-mc-hero__visual
){position:static;width:min(100%,560px);margin:var(--space-7) auto 0;transform:none;opacity:.98}}body.single-cpt_lp :is(
.lp-geo-vs__table-wrap,.lp-meo-vs__table-wrap,.lp-ig-vs__table-wrap,.lp-mc-compare__table-wrap
){background:var(--color-bg-surface);border:1px solid var(--color-decor-hairline);border-radius:var(--radius-sm);box-shadow:none}body.single-cpt_lp :is(
.lp-geo-vs__table,.lp-meo-vs__table,.lp-ig-vs__table,.lp-mc-compare__table
){border-color:var(--color-decor-hairline)}body.single-cpt_lp :is(
.lp-geo-vs__table th,.lp-geo-vs__table td,.lp-meo-vs__table th,.lp-meo-vs__table td,.lp-ig-vs__table th,.lp-ig-vs__table td,.lp-mc-compare__table th,.lp-mc-compare__table td
){border-color:var(--color-decor-hairline)}@media (max-width:767px){body.single-cpt_lp :is(
.lp-geo-vs__table tbody tr,.lp-meo-vs__table tbody tr,.lp-ig-vs__table tbody tr,.lp-mc-compare__table tbody tr
){background:var(--color-bg-surface);border:1px solid var(--color-decor-hairline);border-radius:var(--radius-sm);box-shadow:none}body.single-cpt_lp :is(
.lp-geo-vs__table tbody td,.lp-meo-vs__table tbody td,.lp-ig-vs__table tbody td,.lp-mc-compare__table tbody td
){border-left-width:1px;box-shadow:none}body.single-cpt_lp .lp-geo-vs__table tbody td::before,body.single-cpt_lp .lp-ig-vs__table tbody td::before,body.single-cpt_lp .lp-mc-compare__table tbody td::before,body.single-cpt_lp .lp-meo-vs__table tbody td::before{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--ls-wide);color:var(--color-text-secondary)}body.single-cpt_lp :is(
.lp-geo-vs__col-highlight,.lp-meo-vs__col-highlight,.lp-ig-vs__col-highlight,.lp-mc-compare__col-highlight
){background:rgba(6,123,123,.06);border-color:var(--color-border-brand);box-shadow:none}}body.single-cpt_lp :is(
.lp-hero-diagnostic,.lp-hero-diagnostic li,[class*="-hero__mini-label"],[class*="-hero__visual"],[class*="-thanks-hero__visual"],[class*="-thanks-info__card"],[class*="-thanks-next__card"]:not([class*="__card-"]),[class*="-vs__table-wrap"],[class*="-compare__table-wrap"],[class*="-vs__table"],[class*="-compare__table"],details[class*="-faq__item"],[class*="-diagnosis__card"],[class*="-issue-card"],[class*="-strength"],[class*="-promise__card"],[class*="-deliverables__list"] li,[class*="-service__scope"],[class*="-service__scope-block"],[class*="-service__scope-title"],[class*="-scope__item"],[class*="-scope__card"],[class*="-scope-block"],[class*="-scope-title"],[class*="-plans__notice"],[class*="-plan"],[class*="-why-card"],[class*="-flow__step"],[class*="-order__points"] li,[class*="-shift__points"] li,[class*="-why__points"] li,[class*="__points-num"],[class*="__step-num"],[class$="__num"],[class$="__number"],[class*="-service__scope-list"] li,[class*="-scope-list"] li,[class*="-scope-grid"] > *,[class*="-stage-"][class*="__sheet"],[class*="-stage-"][class*="__node"],[class*="-stage-"][class*="__guard"],[class*="-stage-"][class*="__pack"],[class*="-stage-"][class*="__phone"],[class*="-stage-"][class*="__profile"],[class*="-stage-"][class*="__dm"],[class*="-stage-"][class*="__board"],[class*="-stage-"][class*="__header"],[class*="-stage-"][class*="__lane"],[class*="-stage-"][class*="__question"],[class*="-stage-"][class*="__actions"],[class*="-stage-"][class*="__flow"] li,[class*="-stage-"][class*="__signals"] > *,[class*="-stage-"][class*="__stack"] > *,[class*="-stage-"][class*="__rhythm"] > *,.contact-form,.lp-web-form,.wpcf7-form,.contact-form__input,.contact-form__textarea,.contact-form__topic-option,[class*="-sticky-cta__btn"],[class*="__badge"],[class*="__label"],[class*="__tag"]
){border-radius:var(--radius-sm)!important;box-shadow:none!important}body.single-cpt_lp [class*="-stage-"] :is(div,span,strong){box-shadow:none!important}body.single-cpt_lp [class*="-stage-"] :is(div,span,strong):not([class*=pin]){border-radius:var(--radius-sm)!important}body.single-cpt_lp :is(
.lp-hero-diagnostic,[class*="-hero__visual"],[class*="-thanks-hero__visual"],[class*="-thanks-info__card"],[class*="-thanks-next__card"]:not([class*="__card-"]),[class*="-vs__table-wrap"],[class*="-compare__table-wrap"],details[class*="-faq__item"],[class*="-diagnosis__card"],[class*="-issue-card"],[class*="-strength"],[class*="-promise__card"],[class*="-deliverables__list"] li,[class*="-service__scope"],[class*="-service__scope-block"],[class*="-scope__item"],[class*="-scope__card"],[class*="-plans__notice"],[class*="-plan"],[class*="-why-card"],[class*="-flow__step"],[class*="-order__points"] li,[class*="-shift__points"] li,[class*="-why__points"] li,[class*="-service__scope-list"] li,[class*="-scope-list"] li,[class*="-scope-grid"] > *,[class*="-stage-"][class*="__sheet"],[class*="-stage-"][class*="__node"],[class*="-stage-"][class*="__guard"],[class*="-stage-"][class*="__pack"],[class*="-stage-"][class*="__phone"],[class*="-stage-"][class*="__profile"],[class*="-stage-"][class*="__dm"],[class*="-stage-"][class*="__board"],[class*="-stage-"][class*="__header"],[class*="-stage-"][class*="__lane"],[class*="-stage-"][class*="__question"],[class*="-stage-"][class*="__actions"],[class*="-stage-"][class*="__flow"] li,[class*="-stage-"][class*="__signals"] > *,[class*="-stage-"][class*="__stack"] > *,[class*="-stage-"][class*="__rhythm"] > *,.contact-form,.lp-web-form,.wpcf7-form,.contact-form__input,.contact-form__textarea,.contact-form__topic-option
){border-color:var(--color-decor-hairline)}body.single-cpt_lp :is(
.lp-hero-diagnostic li::before,[class*="-points"] li::before,[class*="-points"] li::after,[class*="-scope"]::before,[class*="-scope"]::after,[class*="-service__scope"]::before,[class*="-service__scope"]::after,[class*="-plan"]::before,[class*="-plan"]::after,[class*="-notice"]::before,[class*="-notice"]::after,[class*="-card"]::before,[class*="-card"]::after
){box-shadow:none!important}body.single-cpt_lp :is(
[class*="-points"] li::after,[class*="-scope"]::after,[class*="-service__scope"]::after
){display:none}body.single-post :is(
.single-post__body h2,.single-post__body h3,.single-post__body h4,.single-post__title,.single-ailab__title,.single-post__related-card-title
){letter-spacing:0}body.single-post .single-post__body h2::before{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--ls-wide)}body.single-post .single-post__body h2::after{width:min(160px,42%);height:1px;background:var(--color-decor-hairline)}body.single-post .single-post__body h3::before{border-radius:var(--radius-sm);background:var(--color-brand);box-shadow:none}body.single-post :is(
.sidebar-link,.sidebar-tag,.sidebar-ranking__cat,.sidebar-recent__cat,.single-ailab__category
){border-radius:var(--radius-sm);box-shadow:none}body.single-post :is(
.sidebar-link[href="/lp/ai-geo-writing/"],.sidebar-link[href="/lp/bizboot-meo/"],.sidebar-link[href="/lp/instagram-marketing/"],.sidebar-link[href="/lp/web-marketing-support/"],.sidebar-link[href="/lp/marketing-copilot/"],.sidebar-link[href="/resources/"]
){box-shadow:none;border-left:1px solid var(--color-decor-hairline)}body:not(.page--ai-literacy) .single-post__sidebar .sidebar-block{background:var(--color-bg-surface);color:var(--color-text-primary);border:1px solid var(--color-decor-hairline)}body:not(.page--ai-literacy) .single-post__sidebar .sidebar-search-block{background:var(--color-brand);color:var(--color-text-dark-primary)}body:not(.page--ai-literacy) .single-post__sidebar :is(
.sidebar-link,.sidebar-link--highlight,.sidebar-link--line,.sidebar-link--code-check
){background:var(--color-bg-surface);color:var(--color-text-primary);border:1px solid var(--color-decor-hairline);box-shadow:none}body:not(.page--ai-literacy) .single-post__sidebar :is(
.sidebar-link__title,.sidebar-link--highlight .sidebar-link__title,.sidebar-link--line .sidebar-link__title,.sidebar-link--code-check .sidebar-link__title
){color:var(--color-text-primary)}body:not(.page--ai-literacy) .single-post__sidebar :is(
.sidebar-link__desc,.sidebar-link--highlight .sidebar-link__desc,.sidebar-link--line .sidebar-link__desc,.sidebar-link--code-check .sidebar-link__desc,.sidebar-links__group-label
){color:var(--color-text-secondary)}body:not(.page--ai-literacy) .single-post__sidebar :is(
.sidebar-link__icon,.sidebar-link--highlight .sidebar-link__icon,.sidebar-link--line .sidebar-link__icon,.sidebar-link--code-check .sidebar-link__icon
){color:var(--color-brand)}body:not(.page--ai-literacy) .single-post__sidebar .sidebar-link:hover{background:var(--color-brand);color:var(--color-text-dark-primary);border-color:var(--color-brand)}body:not(.page--ai-literacy) .single-post__sidebar .sidebar-link:hover .sidebar-link__title{color:var(--color-text-dark-primary)}body:not(.page--ai-literacy) .single-post__sidebar .sidebar-link:hover .sidebar-link__desc{color:rgba(244,250,249,.84)}body:not(.page--ai-literacy) .single-post__sidebar .sidebar-link:hover .sidebar-link__icon{color:var(--color-bg-surface)}@media (hover:none){body.single-post .sidebar-link:hover{transform:none}}@media (max-width:767px){body.single-post :is(
.single-post__related-card-meta,.sidebar-search__hint,.sidebar-link__desc,.sidebar-links__group-label,.sidebar-ranking__cat,.sidebar-recent__date,.sidebar-recent__cat
){font-size:var(--fs-sm)}body.single-post .single-ailab__category::before{font-size:var(--fs-sm)}}.column-hero__bg-typo,.contact-hero__bg-typo,.contact-thanks-hero__bg-typo,.info-hero__bg-typo,.lp-geo-hero__bg-typo,.lp-geo-thanks-hero__bg-typo,.lp-ig-hero__bg-typo,.lp-ig-thanks-hero__bg-typo,.lp-mc-hero__bg-typo,.lp-mc-thanks-hero__bg-typo,.lp-meo-hero__bg-typo,.lp-meo-thanks-hero__bg-typo,.lp-web-hero__bg-typo,.lp-web-thanks-hero__bg-typo,.privacy-hero__bg-typo{display:none!important}:is(
.contact-hero,.contact-form-section,.contact-tel,.contact-faq,.contact-privacy,.contact-access
) :is(.section-decor,.bg-mega-typo,.section-glow-line){display:none!important}
