/* Keep the immersive cover; make every following scene explain one job. */
h2 em{font-style:normal;color:#6535bf}.hero-overline>span:first-child{font-size:.875rem;letter-spacing:.08em}.hero-wordmark{font-size:19.5vw;letter-spacing:-.085em}.hero-message{max-width:660px;padding:28px 32px}.hero-message h1{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.55;letter-spacing:-.045em}.hero-audience{font-size:.875rem}.hero-description{font-size:1rem;margin-top:20px;line-height:1.95}.hero-cta{margin-top:22px}.hero-cta>span::after{content:'相談・見積もり無料';display:block;font-size:.75rem;font-weight:400;margin-top:3px}.hero-content{grid-template-columns:1.3fr 1fr;gap:7%;bottom:35px}.hero-aside>p{font-size:1.5rem}.hero-aside em{font-size:2.1rem}.desktop-nav{gap:28px}.desktop-nav a{white-space:nowrap}.work-stories{padding:105px 0 0;background:white;position:relative;z-index:3}.story-intro{display:grid;grid-template-columns:1.25fr 1fr;gap:0 10%;align-items:end;margin-bottom:55px}.story-intro>.section-label{grid-column:1/-1}.story-intro h2{font-size:clamp(2.2rem,4.2vw,4.4rem);line-height:1.6;letter-spacing:-.055em}.story-intro>p:last-child{max-width:470px;justify-self:end;line-height:2.05}.work-scenes{border-top:1px solid #c7bfce}.work-scene{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:48px 0;border-bottom:1px solid #c7bfce;align-items:center}.scene-copy{padding-right:30px}.scene-topic{display:flex;align-items:center;gap:20px;font-size:.9375rem;font-weight:600;color:var(--ink);margin-bottom:25px}.scene-topic>span{font-size:.75rem;font-weight:400;border:1px solid #a29aaa;border-radius:50%;width:31px;height:31px;display:grid;place-items:center}.scene-before{font-size:.875rem;color:#625869;padding:0 0 16px;border-bottom:1px solid #d4cdda;max-width:450px}.scene-copy h3{font-size:clamp(1.8rem,3.2vw,3.25rem);line-height:1.65;letter-spacing:-.04em;margin-top:22px;font-weight:800}.scene-explanation{font-size:1rem;margin-top:20px;max-width:460px}.workflow-visual{background:#ede8f7;padding:26px 36px 32px;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;--flow-progress:0}.workflow-caption{font-size:.75rem;letter-spacing:.06em;color:#655471;margin-bottom:22px}.workflow{list-style:none;display:flex;flex-direction:column;gap:24px;padding:0;margin:0;position:relative}.workflow:before{content:'';position:absolute;left:27px;top:25px;bottom:25px;width:1px;background:#a998bd;z-index:0}.workflow:after{content:'';position:absolute;left:27px;top:25px;bottom:25px;width:2px;background:#6535bf;transform-origin:top;transform:scaleY(var(--flow-progress));z-index:0}.workflow li{position:relative;z-index:1;padding:16px 22px 16px 65px;background:white;border:1px solid #cfc6dc;min-height:66px;display:flex;flex-direction:column;justify-content:center}.workflow li>span{position:absolute;left:19px;top:21px;font-size:.75rem;color:#655373}.workflow strong{font-size:1.1rem;font-weight:650;color:var(--ink);line-height:1.7}.workflow small{font-size:.8125rem;color:#655373;margin-top:3px}.workflow li.workflow-core{background:#ded1f4;border-color:#bba6d6}.workflow li.step-active{border-color:#7546b3}.booking .workflow-visual{background:#e8edf6}.booking .workflow-core{background:#d7e4f6;border-color:#a7bdd9}.routing .workflow-visual{background:#f5e8e3}.routing .workflow-core{background:#f3d9ce;border-color:#d2b2a4}.booking .scene-copy{order:2;padding-left:15px;padding-right:0}.booking .workflow-visual{order:1}.scene-topic,.scene-copy h3{transition:transform .4s}.work-scene.is-revealed .workflow li{animation:workflow-enter .65s both}.work-scene.is-revealed .workflow li:nth-child(2){animation-delay:.12s}.work-scene.is-revealed .workflow li:nth-child(3){animation-delay:.24s}@keyframes workflow-enter{from{transform:translateY(16px)}to{transform:none}}
/* Open-ended exploration is available without overwhelming the main story. */
.catalog-section{padding:25px 0 90px;background:white}.catalog-drawer{background:#f3f1f7}.catalog-drawer>summary{padding:30px 35px;display:flex;align-items:center;justify-content:space-between;gap:30px;list-style:none;cursor:pointer}.catalog-drawer>summary::-webkit-details-marker{display:none}.catalog-drawer>summary .micro{color:var(--muted)}.catalog-drawer>summary h2{font-size:1.45rem;line-height:1.8;letter-spacing:-.025em;margin-top:5px}.drawer-action{display:flex;align-items:center;gap:25px;font-size:.875rem;color:var(--ink);white-space:nowrap}.drawer-action i{font-size:1.5rem;font-style:normal;font-weight:400;line-height:1;transition:transform .2s}.catalog-drawer[open] .drawer-action i{transform:rotate(45deg)}.drawer-body{padding:10px 35px 35px}.catalog-title{grid-template-columns:145px 1.2fr 1fr}.catalog-title h3{font-size:1.25rem}.catalog-content{padding-left:170px}.catalog-foot .inline-link{min-width:130px}.mobile-only{display:none}
.products-section{padding:100px 0;background:#f5f3f8}.products-section .section-head{margin-bottom:45px}.product-feature{position:relative!important;top:auto!important;background:#ede7f5;border:0}.product-copy{padding:38px 40px;background:#ede7f5}.product-copy h3{font-size:clamp(2rem,3.15vw,3.2rem);line-height:1.6}.product-purpose{font-size:.875rem;color:#62516e;margin-top:0!important;margin-bottom:13px}.product-name{font-size:1.1rem;font-weight:650;color:var(--ink);margin-top:18px!important}.product-name>span{font-size:.75rem;font-weight:450;letter-spacing:.1em;padding-left:10px}.product-copy>p:not(.product-tagline){font-size:1rem}.product-benefits{list-style:none;margin:20px 0 0;padding:0;color:var(--ink);font-size:.875rem}.product-benefits li{padding:7px 0;border-bottom:1px solid #cdc2d9}.product-benefits li:before{content:'＋';color:#664388;margin-right:10px}.product-preview{background:#d9cbee;min-height:650px;align-items:center;padding:85px 30px 25px}.product-preview>img{height:525px;width:245px;object-fit:cover;object-position:top;border-radius:24px;box-shadow:22px 25px 0 #bdacd4;border:6px solid #171545}.product-preview-label{font-size:.75rem;color:#524065}.product-pair{padding-top:0!important;gap:28px}.product-small{background:white;box-shadow:none!important;min-height:0!important;padding:32px;border-top:2px solid #b7a0d3}.product-small.tally{background:white;border-top-color:#d2a49a}.product-small h3{font-size:1.6rem}.product-small>.product-status{margin-bottom:18px}.product-small>p:not(.product-display){font-size:1rem}.product-flow{margin:25px 0;padding:22px 25px;background:#ece6f5;display:flex;flex-direction:column;text-align:center;align-items:center;gap:6px;color:var(--ink)}.product-flow>span{font-size:.875rem}.product-flow>strong{display:block;font-size:1.1rem;font-weight:650;background:white;padding:10px 18px;width:100%}.product-flow>b{font-size:1rem;font-weight:400;color:#715d82;line-height:1.5}.tally .product-flow{background:#f3e6e1}.product-small>p.product-small-meta{min-height:0;font-size:.875rem;padding-top:20px;margin-top:22px}.product-price{margin-top:23px}.product-price strong{font-size:2.6rem}.ghost{margin-top:15px}
.pricing-section{background:white;padding:100px 0}.pricing-section h2{font-size:clamp(2rem,3.6vw,3.8rem)}.price-list{display:grid;grid-template-columns:1fr 1fr;gap:25px;border:0}.price-list article{display:flex;align-items:stretch;flex-direction:column;gap:22px;border:1px solid #c9c1d2;padding:30px}.price-list article:first-child{background:#ede5fa;border-color:#bba5d6}.price-list h3{font-size:1.5rem;margin-top:12px}.price-list .micro{font-size:.875rem;letter-spacing:.02em}.price-number{margin-top:auto;text-align:left;font-size:3.3rem}.price-list article:nth-child(n+3){display:grid;grid-template-columns:1fr auto;gap:15px 24px;background:#f5f3f8;border-color:#ded9e4}.price-list article:nth-child(n+3)>p{grid-column:1/-1;order:3}.price-list article:nth-child(n+3) .price-number{font-size:2rem;align-self:center;text-align:right}.price-list article:nth-child(n+3) h3{font-size:1.1rem}.price-list article:nth-child(n+3) .micro{font-size:.75rem}.price-list article:nth-child(n+3) .price-time{font-size:.8125rem}.price-list article:nth-child(n+3) .price-number small{font-size:.875rem}.price-list article:nth-child(n+3) .price-number>span:not(.price-time){font-size:1.1rem}.pricing-bottom{font-size:.875rem}.process-section{background:#f3f1f7;padding:90px 0}.process-layout{display:block}.process-intro{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 10%;align-items:end}.process-intro>.section-label{grid-column:1/-1}.process-intro>p:not(.section-label){margin:0}.process-list{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:45px}.process-list>li,.process-list>li:first-child{display:block;padding:22px 0 0;border-bottom:0;border-top:1px solid #b1a1bf;background:transparent!important}.step-num{font-size:3rem;color:#6a4a86}.process-list h3{font-size:1.125rem;margin-top:18px}.process-list p{font-size:1rem;margin-top:15px}.process-note{font-size:.875rem}
.about-section{padding:100px 0 75px;background:white}.founder-grid{grid-template-columns:.85fr 1.2fr;gap:10%;align-items:center}.portrait{max-width:390px}.portrait>img{aspect-ratio:.82}.founder-lead{font-size:clamp(1.4rem,2.6vw,2.6rem);line-height:1.8}.founder-copy>p:not(.founder-lead){margin-top:22px}.founder-signoff{margin-top:25px;padding-top:20px}.profile-details{margin-top:65px;display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:start}.profile-details>details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.profile-details summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;padding:22px 0;gap:20px;color:var(--ink);font-weight:600}.profile-details summary::-webkit-details-marker{display:none}.profile-details summary>span{font-size:1.2rem;font-weight:400;transition:transform .2s}.profile-details details[open] summary>span{transform:rotate(45deg)}.profile-detail-body{padding:0 0 25px}.profile-detail-body>p+p{margin-top:15px}.profile-detail-body .tool-stack{margin-top:20px}.profile-detail-body .tool-stack p{font-size:.9375rem}.profile-details .tool-stack>div{padding:14px 0}.company-grid{margin-top:55px;padding-top:35px;grid-template-columns:.85fr 1.2fr;gap:10%}.company-grid>.section-label{font-size:1rem;font-weight:600;color:var(--ink)}.company-grid dl>div{padding:16px 0}.company-grid dd{font-size:.9375rem}.faq-section{padding:80px 0;background:#f4f1f7}.faq-layout h2{font-size:2.5rem}.contact-section{padding-top:85px}.contact-layout{grid-template-columns:1.3fr 1fr;gap:8%}.contact-layout h2{font-size:clamp(2rem,3.2vw,3.3rem);line-height:1.75}.contact-main{background:#171545;color:white;border-color:#171545}.contact-main:hover{background:#352558}.footer-type{font-size:15vw}.footer{padding-top:35px}
@media(max-width:1100px){.desktop-nav{gap:20px}.hero-message{padding:25px}.work-scene{gap:6%}.scene-copy{padding-right:0}.workflow-visual{padding:25px}.workflow strong{font-size:1rem}.product-copy{padding:32px 28px}.product-copy h3{font-size:2.2rem}.product-preview{min-height:680px}.product-preview>img{max-width:85%}.price-list article:nth-child(n+3){display:flex}.price-list article:nth-child(n+3) .price-number{text-align:left}.process-list{gap:25px}.catalog-title{grid-template-columns:140px 1fr;gap:7px 20px}.catalog-title p{grid-column:2}.catalog-title .mono{grid-row:1/3}.catalog-content{padding-left:160px}}
@media(max-width:800px){.desktop-nav>a:nth-child(3){display:block}.desktop-nav>a:nth-child(4){display:none}.hero-wordmark{font-size:20vw}.hero-content{grid-template-columns:1.6fr .7fr}.hero-message h1{font-size:2rem}.hero-description{font-size:1rem}.story-intro{gap:6%;grid-template-columns:1fr 1fr}.story-intro h2{font-size:2.2rem}.scene-copy h3{font-size:2rem}.workflow-visual{padding:22px 18px}.workflow li{padding-left:52px;padding-right:12px}.workflow li>span{left:15px}.workflow strong{font-size:1rem}.workflow small{font-size:.75rem}.catalog-title{grid-template-columns:1fr;gap:8px}.catalog-title .mono{grid-row:auto}.catalog-title p{grid-column:auto}.catalog-content{padding-left:0}.product-copy{padding:28px 22px}.product-copy h3{font-size:2rem}.product-preview>img{max-width:95%}.product-preview{padding-inline:20px}.product-preview-label{display:block}.product-small{padding:26px}.price-list{gap:18px}.price-list article{padding:25px}.price-number{font-size:2.8rem}.process-list{grid-template-columns:1fr 1fr;gap:30px}.founder-grid{gap:7%}.founder-lead{font-size:1.65rem}.profile-details{gap:25px}.contact-layout{gap:6%}.contact-main strong{font-size:1.4rem}}
@media(max-width:600px){.hero-stage{min-height:780px}.hero-wordmark{font-size:21vw;padding-top:28px}.hero-content{bottom:22px;display:block}.hero-message{padding:20px;max-width:none}.hero-message h1{font-size:1.9rem;line-height:1.6;letter-spacing:-.035em}.hero-audience{font-size:.875rem;margin-bottom:12px}.hero-description{font-size:1rem;line-height:1.9;margin-top:15px}.hero-description br{display:none}.hero-cta{margin-top:17px}.hero-overline>span:first-child{font-size:.8125rem;letter-spacing:.035em}.hero-aside>p{font-size:.875rem}.hero-aside em{font-size:1.2rem}.hero-aside{margin-top:15px}.work-stories{padding-top:65px}.story-intro{display:block;margin-bottom:30px}.story-intro h2{font-size:2rem;line-height:1.8}.story-intro>p:last-child{margin-top:22px;font-size:1rem;max-width:none}.story-intro>p:last-child br{display:none}.work-scene{display:flex;flex-direction:column;gap:28px;padding:30px 0 35px;align-items:stretch}.scene-copy,.booking .scene-copy{padding:0;order:1}.workflow-visual,.booking .workflow-visual{order:2;padding:22px}.scene-topic{margin-bottom:20px;font-size:.9375rem;gap:15px}.scene-before{font-size:.875rem;line-height:1.8;padding-bottom:13px}.scene-copy h3{font-size:1.9rem;line-height:1.75;margin-top:17px}.scene-explanation{font-size:1rem;margin-top:16px}.workflow-caption{font-size:.75rem;margin-bottom:16px}.workflow{gap:19px}.workflow li{padding:13px 15px 13px 52px;min-height:59px}.workflow li>span{left:17px;top:19px}.workflow strong{font-size:1rem}.workflow small{font-size:.8125rem}.workflow:before,.workflow:after{left:25px}.catalog-section{padding:20px 0 65px}.catalog-drawer>summary{padding:23px 20px;display:block}.catalog-drawer>summary h2{font-size:1.35rem;line-height:1.85;margin-top:8px}.drawer-action{justify-content:space-between;margin-top:20px;font-size:.875rem}.drawer-body{padding:5px 20px 25px}.mobile-only{display:block}.catalog-title h3{font-size:1.1rem}.catalog-row summary{padding:23px 22px 23px 0}.catalog-toggle{width:15px;right:0}.catalog-toggle:before,.catalog-toggle:after{width:15px}.catalog-title p{font-size:.875rem}.catalog-content li{font-size:1rem}.filters button{padding:9px 10px;font-size:.875rem}.filter-caption{font-size:.875rem}.catalog-foot{margin-top:20px;font-size:1rem}.products-section{padding:65px 0}.products-section .section-head{margin-bottom:30px}.products-section h2{font-size:1.8rem;line-height:1.8}.product-feature{display:flex;flex-direction:column}.product-copy{order:1;padding:26px 23px}.product-purpose{font-size:.875rem!important;margin-bottom:12px!important}.product-copy h3{font-size:2rem;line-height:1.65}.product-copy>.product-status{margin-bottom:20px}.product-name{font-size:1.1rem!important;margin-top:15px!important}.product-name>span{font-size:.75rem}.product-copy>p:not(.product-tagline){font-size:1rem}.product-benefits{font-size:.875rem;margin-top:17px}.product-price{margin-top:23px}.product-price strong{font-size:2.6rem}.product-price small{font-size:.875rem}.ghost{margin-top:12px}.product-preview{order:2;height:360px;min-height:0;padding:62px 25px 0;align-items:flex-end}.product-preview>img{height:310px;width:205px;max-width:75%;border-radius:20px 20px 0 0;box-shadow:16px 18px 0 #bdacd4}.product-preview-label{display:flex;left:22px;right:22px;top:18px;font-size:.75rem}.product-pair{margin-top:24px}.product-small{padding:26px 23px}.product-small h3{font-size:1.45rem}.product-small>p:not(.product-display){font-size:1rem}.product-flow{padding:20px;margin:22px 0}.product-flow>strong{font-size:1rem;padding:10px 12px}.product-small>p.product-small-meta{font-size:.875rem;margin-top:20px;padding-top:18px}.pricing-section{padding:65px 0}.pricing-section h2{font-size:1.9rem;line-height:1.8}.price-list{display:block}.price-list article,.price-list article:nth-child(n+3){display:flex;padding:25px 23px;gap:18px}.price-list article+article{margin-top:18px}.price-list article>div:first-child .micro{font-size:.875rem}.price-list h3{font-size:1.4rem;margin-top:10px}.price-number{font-size:2.8rem}.price-list article:nth-child(n+3) h3{font-size:1.2rem}.price-list article:nth-child(n+3) .price-number{font-size:2.3rem;text-align:left}.price-list article:nth-child(n+3) .price-number small{font-size:.9375rem}.pricing-bottom{font-size:.875rem}.process-section{padding:65px 0}.process-intro{display:block}.process-intro>p:not(.section-label){margin-top:23px}.process-list{display:block;margin-top:32px}.process-list>li,.process-list>li:first-child{display:grid;grid-template-columns:40px 1fr;gap:20px;padding:25px 0}.step-num{font-size:2.4rem}.process-list h3{font-size:1.125rem;margin-top:2px}.process-list p{font-size:1rem;margin-top:12px}.process-list>li:last-child{border-bottom:1px solid #b1a1bf}.about-section{padding:65px 0}.about-section h2{font-size:1.8rem;line-height:1.85}.founder-grid{display:block}.portrait{max-width:350px}.portrait>img{aspect-ratio:.85;max-height:420px}.founder-lead{font-size:1.6rem;line-height:1.9}.founder-copy{margin-top:30px}.founder-copy>p:not(.founder-lead){margin-top:21px}.profile-details{display:block;margin-top:40px}.profile-details>details+details{border-top:0}.profile-details summary{font-size:1rem;padding:22px 0}.profile-detail-body .tool-stack p{font-size:1rem}.company-grid{display:block;margin-top:40px;padding-top:30px}.company-grid dd{font-size:1rem}.company-grid dl>div{padding:18px 0}.faq-section{padding:65px 0}.faq-layout h2{font-size:1.9rem}.contact-section{padding-top:65px}.contact-layout h2{font-size:1.65rem;line-height:1.9}.contact-layout p{font-size:1rem;line-height:2}.contact-main strong{font-size:1.5rem}.footer-type{font-size:17.5vw}.footer{padding-top:25px}}
@media(prefers-reduced-motion:no-preference){.motion-ready .immersive-hero{height:135svh;min-height:1080px}.motion-ready .hero-stage{min-height:850px}}
@media(max-width:600px) and (prefers-reduced-motion:no-preference){.motion-ready .immersive-hero{height:115svh;min-height:890px}.motion-ready .hero-stage{min-height:780px}}
@media(prefers-reduced-motion:reduce){.workflow:after{transform:scaleY(1)}.workflow li{animation:none!important}}

.business-section{background:#0c0919;color:#fff;padding:64px 0}.business-section .company-grid{margin:0;padding-top:0;border-top:0}.business-section dt,.business-section .section-label{color:#c9c3df}
