:root{--ink: #101312;--ink-2: #3d4441;--ink-3: #666d68;--paper: #ffffff;--paper-2: #f4f5f1;--paper-3: #e9ebe3;--rule: #d9dcd4;--rule-2: #b3b8ae;--green: #23863b;--lime: #8fc31f;--green-field: #2f7b43;--sans: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, "Noto Sans JP", sans-serif;--serif: "Hiragino Mincho ProN", "Yu Mincho", YuMincho, "Noto Serif JP", "Times New Roman", serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--gutter: clamp(22px, 5vw, 68px);--maxw: 1180px;--head-h: 62px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.9;font-feature-settings:"palt";-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}a{color:inherit}h1,h2,h3,h4{margin:0;font-weight:700;line-height:1.34;letter-spacing:.005em}p{margin:0 0 1.1em}p:last-child{margin-bottom:0}ul,ol,dl{margin:0;padding:0;list-style:none}code{font-family:var(--mono);font-size:.88em;background:var(--paper-2);border:1px solid var(--rule);padding:.05em .38em}:focus-visible{outline:2px solid var(--green);outline-offset:2px}.mono{font-family:var(--mono);font-size:.84em;letter-spacing:.02em}.dim{color:var(--ink-3)}.small{font-size:.88em;line-height:1.75;color:var(--ink-2)}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);margin:0 0 .8em}.site{display:flex;flex-direction:column;min-height:100vh}main{flex:1}.reveal{opacity:0;transform:translateY(12px);transition:opacity .6s ease,transform .6s ease;transition-delay:calc(var(--i, 0) * .07s)}.reveal.is-visible{opacity:1;transform:none}.table-wrap tbody tr,.ba .ba-row,.spec .spec-row,.stack-fig .chip,.arch-grid .arch-cell,.num-grid .num,.two-up .card,.inline-list li{opacity:0}.table-wrap.is-visible tbody tr,.ba.is-visible .ba-row,.spec.is-visible .spec-row,.stack-fig.is-visible .chip,.arch-grid.is-visible .arch-cell,.num-grid.is-visible .num,.two-up.is-visible .card,.inline-list.is-visible li{animation:rise-in .6s ease both;animation-delay:calc(var(--i, 0) * .06s)}.num-grid .num:nth-child(2),.two-up .card:nth-child(2),.inline-list li:nth-child(2){--i: 1}.num-grid .num:nth-child(3),.inline-list li:nth-child(3){--i: 2}.num-grid .num:nth-child(4),.inline-list li:nth-child(4){--i: 3}.inline-list li:nth-child(5){--i: 4}.inline-list li:nth-child(6){--i: 5}.inline-list li:nth-child(7){--i: 6}.inline-list li:nth-child(8){--i: 7}.site-head{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--ink)}.site-head-in{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter);height:var(--head-h);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:baseline;gap:10px}.eeful-logo{width:96px;height:auto}.brand-sub{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--ink-3);text-transform:uppercase}.site-nav{display:flex;gap:26px}.site-nav button{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);padding:4px 0;border-bottom:2px solid transparent}.site-nav button:hover{color:var(--ink)}.site-nav button.active{color:var(--ink);border-bottom-color:var(--green)}.nav-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center}.mobile-nav{position:fixed;inset:var(--head-h) 0 0;z-index:49;background:var(--paper);border-top:1px solid var(--rule);display:flex;flex-direction:column}.mobile-nav button{display:flex;align-items:center;justify-content:space-between;padding:22px var(--gutter);border-bottom:1px solid var(--rule);font-size:18px;font-weight:700}.mobile-nav button.active{color:var(--green)}.masthead,.page-head{max-width:var(--maxw);margin:0 auto;padding:clamp(56px,9vw,118px) var(--gutter) clamp(44px,6vw,76px)}.masthead h1,.page-title{font-family:var(--serif);font-weight:600;letter-spacing:.01em;line-height:1.3}.masthead h1{font-size:clamp(40px,7.4vw,92px);margin:0 0 .55em}.page-title{font-size:clamp(40px,7vw,84px);margin:0 0 .5em}.masthead .lead,.page-sub{font-size:clamp(16px,1.5vw,19px);line-height:1.95;color:var(--ink-2);max-width:36em;margin-bottom:2em}.masthead .lead b,.page-sub b{color:var(--ink);font-weight:700}.btn-row{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;gap:8px;height:54px;padding:0 26px;background:var(--ink);color:var(--paper);font-size:15px;font-weight:700;border:1px solid var(--ink);transition:background .18s ease,color .18s ease,border-color .18s ease}.btn:hover{background:var(--green);border-color:var(--green)}.btn.ghost{background:transparent;color:var(--ink)}.btn.ghost:hover{background:var(--ink);color:var(--paper)}.doclink{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:15.5px;text-decoration:none;border-bottom:1px solid var(--rule-2);padding-bottom:3px;transition:border-color .18s ease,color .18s ease;cursor:pointer;align-self:flex-start}.doclink:hover{color:var(--green);border-bottom-color:var(--green)}.link-rows{display:flex;flex-direction:column;gap:18px;align-items:flex-start}.shot{width:100%;overflow:hidden}.shot img{width:100%;height:clamp(280px,46vw,620px);object-fit:cover;transform:scale(1.005);transition:transform 14s linear}.shot.is-visible img{transform:scale(1.07)}.shot.short img{height:clamp(240px,32vw,420px)}.kite-scene{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:#eef2ea}.kite-scene.plain{background:var(--paper);border:1px solid var(--rule)}.kite-sky{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.kite-fig{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.kite-rise,.kite-sway{transform-box:view-box;transform-origin:632px 750px}.kite-rise{transform:rotate(-13deg) scale(.94);opacity:0}.kite-scene.is-visible .kite-rise{animation:kite-rise 2.2s cubic-bezier(.2,.8,.25,1) .1s forwards}@keyframes kite-rise{0%{transform:rotate(-13deg) scale(.94);opacity:0}18%{opacity:1}to{transform:none;opacity:1}}.kite-scene.is-visible .kite-sway{animation:kite-sway 7s 2.1s ease-in-out infinite alternate}@keyframes kite-sway{0%{transform:rotate(-1.3deg)}to{transform:rotate(1.4deg)}}.kite-line{fill:none;stroke:#61806c;stroke-width:2.6;stroke-linecap:round;stroke-dasharray:1200;stroke-dashoffset:1200}.kite-scene.is-visible .kite-line{animation:kite-draw 1.7s .25s ease forwards}@keyframes kite-draw{to{stroke-dashoffset:0}}.kite-person{opacity:0}.kite-scene.is-visible .kite-person{animation:fade-in 1s .2s forwards}@keyframes fade-in{to{opacity:1}}.kite-name{margin-top:8px}.kite-cap{position:absolute;left:clamp(20px,4vw,60px);top:clamp(26px,5vw,68px);max-width:18em;margin:0;font-family:var(--serif);font-weight:600;font-size:clamp(16px,2.15vw,29px);line-height:1.8;letter-spacing:.03em;color:var(--ink);opacity:0}.kite-scene.is-visible .kite-cap{animation:rise-in 1s 1.5s cubic-bezier(.2,.8,.25,1) forwards}.hero-art{position:relative}.hero .kite-scene{aspect-ratio:16 / 8}.hero-copy{position:absolute;z-index:2;left:0;right:0;top:clamp(28px,7vw,96px);max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}.hero-copy .eyebrow{opacity:0;animation:rise-in .8s .35s ease forwards}.hero-copy h1{font-family:var(--serif);font-weight:600;font-size:clamp(24px,3.1vw,43px);line-height:1.46;letter-spacing:.01em;margin:0}.hero-below{max-width:var(--maxw);margin:0 auto;padding:clamp(36px,5vw,64px) var(--gutter) clamp(20px,4vw,44px)}.hero-below .lead{font-size:clamp(16px,1.55vw,20px);line-height:2;color:var(--ink-2);max-width:34em;margin-bottom:2em}.hero-below .lead b{color:var(--ink);font-weight:700}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.converge{background:var(--green-field);color:var(--paper);padding:clamp(56px,9vw,118px) clamp(20px,4vw,48px);text-align:center;overflow:hidden}.cv-bar{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:10px;background:#fff;padding:15px 17px;position:relative;overflow:hidden;max-width:100%}.cv-bar:after{content:"";position:absolute;top:0;bottom:0;width:36%;left:-45%;background:linear-gradient(90deg,transparent,rgba(35,134,59,.22),transparent)}.converge.is-visible .cv-bar:after{animation:cv-shine 1s 1.05s ease forwards}@keyframes cv-shine{to{left:115%}}.cv-chip{color:#fff;font-size:14px;font-weight:700;padding:9px 15px;white-space:nowrap;opacity:0;transform:translate(var(--sx),var(--sy)) scale(.82)}.converge.is-visible .cv-chip{animation:cv-fly .95s cubic-bezier(.25,.9,.3,1) both;animation-delay:var(--d)}@keyframes cv-fly{0%{opacity:0;transform:translate(var(--sx),var(--sy)) scale(.82)}60%{opacity:1}to{opacity:1;transform:none}}.cv-word{font-family:var(--serif);font-weight:600;font-size:clamp(54px,10vw,132px);line-height:1.1;letter-spacing:.02em;margin:clamp(26px,4vw,46px) 0 0;opacity:0}.converge.is-visible .cv-word{animation:rise-in .9s 1.15s cubic-bezier(.2,.8,.25,1) forwards}.cv-sub{font-size:clamp(14px,1.5vw,18px);color:#ffffffd6;margin:1em 0 0;opacity:0}.converge.is-visible .cv-sub{animation:rise-in .8s 1.55s ease forwards}.sec{max-width:var(--maxw);margin:0 auto;padding:clamp(56px,8vw,104px) var(--gutter);border-top:1px solid var(--rule)}.sec-head{display:flex;align-items:baseline;gap:14px;padding-bottom:14px;margin-bottom:26px;border-bottom:1px solid var(--ink)}.sec-no{font-family:var(--mono);font-size:13px;color:var(--green);font-weight:700}.sec-en{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)}.sec-title{font-size:clamp(26px,3.6vw,44px);line-height:1.42;letter-spacing:-.005em;margin:0 0 .85em;max-width:22em}.body{font-size:16.5px;color:var(--ink-2);max-width:40em;margin-bottom:2.2em}.body b{color:var(--ink)}.note{font-family:var(--mono);font-size:11.5px;line-height:1.85;color:var(--ink-3);margin:20px 0 0;padding-top:13px;border-top:1px solid var(--rule)}.note code{background:none;border:0;padding:0;color:var(--ink-2)}.statement{background:var(--green-field);color:var(--paper);padding:clamp(76px,12vw,168px) var(--gutter)}.statement.light{background:var(--paper-2);color:var(--ink)}.statement.reveal{opacity:1;transform:none;transition:none}.st-inner{max-width:calc(var(--maxw) - 2 * var(--gutter));margin:0 auto}.statement p{font-family:var(--serif);font-weight:600;font-size:clamp(28px,5.2vw,64px);line-height:1.62;letter-spacing:.035em;max-width:16em;margin:0}.st-line{display:block;overflow:hidden}.st-line>span{display:block;transform:translateY(108%)}.statement.is-visible .st-line>span{animation:st-up .95s cubic-bezier(.2,.8,.25,1) both;animation-delay:calc(.1s + var(--i) * .15s)}@keyframes st-up{to{transform:none}}.statement .statement-sub{font-family:var(--sans);font-weight:400;font-size:clamp(14px,1.4vw,16.5px);line-height:1.95;letter-spacing:0;color:#ffffffd6;max-width:34em;margin:1.9em 0 0;opacity:0}.statement.is-visible .statement-sub{animation:rise-in .9s .75s ease forwards}.statement.light .statement-sub{color:var(--ink-2)}.ba{border-top:1px solid var(--ink)}.ba-head,.ba-row{display:grid;grid-template-columns:1fr 1fr}.ba-head span{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);padding:12px 30px 12px 0}.ba-head span+span{padding-left:30px;color:var(--green)}.ba-row{border-top:1px solid var(--rule)}.ba-row>div{padding:22px 30px 22px 0}.ba-row>div+div{padding:22px 0 22px 30px;border-left:1px solid var(--rule);background:var(--paper-2)}.ba-before{font-size:15px;color:var(--ink-3)}.ba-after{font-size:16px;font-weight:700;color:var(--ink);line-height:1.8}.ba-row:last-child{border-bottom:1px solid var(--ink)}.spec{border-top:1px solid var(--ink)}.spec-row{display:grid;grid-template-columns:9em 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--rule)}.spec-row dt{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase;padding-top:5px}.spec-row dd{margin:0;font-size:15px;line-height:1.8}.spec.wide .spec-row{grid-template-columns:11em 1fr}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.doc-table{width:100%;border-collapse:collapse;font-size:15px;min-width:560px}.doc-table th{text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-weight:400;padding:0 22px 11px 0;border-bottom:1px solid var(--ink);white-space:nowrap}.doc-table td{padding:18px 22px 18px 0;border-bottom:1px solid var(--rule);vertical-align:top;line-height:1.8;color:var(--ink-2)}.doc-table td:last-child,.doc-table th:last-child{padding-right:0}.doc-table td b{color:var(--ink);font-size:1.03em}.doc-table tr:hover td{background:var(--paper-2)}.stack-fig{border:1px solid var(--ink)}.stack-row{display:grid;grid-template-columns:152px 1fr;gap:22px;padding:20px 22px;border-bottom:1px solid var(--rule)}.stack-row:last-child{border-bottom:0}.stack-row.base{background:var(--paper-2)}.stack-row.infra{background:var(--ink);color:#cfd4d0;border-bottom:0}.stack-tag{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);display:flex;align-items:baseline;gap:8px}.stack-row.infra .stack-tag{color:#949c95}.stack-tag i{font-style:normal;font-size:15px;font-weight:700;color:var(--green)}.stack-items{display:flex;flex-wrap:wrap;gap:6px}.stack-items.mono span{font-family:var(--mono);font-size:11.5px;color:#cfd4d0;border:1px solid #3a423d;padding:4px 9px}.chip{display:inline-flex;align-items:baseline;gap:6px;border:1px solid var(--ink);padding:5px 10px;font-size:13px;font-weight:700;background:var(--paper)}.chip i{font-style:normal;font-family:var(--mono);font-size:10px;color:var(--ink-3);font-weight:400}.chip.plain{border-color:var(--rule-2);font-weight:400;color:var(--ink-2)}.chip.more{border-style:dashed;border-color:var(--rule-2);color:var(--ink-3);font-weight:400}.stack-arrow{display:flex;align-items:center;gap:10px;padding:8px 22px;border-bottom:1px solid var(--rule);background:var(--paper-2)}.stack-arrow span{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--ink-3)}.stack-arrow:before{content:"▲";font-size:8px;color:var(--rule-2)}.num-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.num{padding:34px 26px;border-right:1px solid var(--rule)}.num:first-child{padding-left:0}.num:last-child{border-right:0;padding-right:0}.num-v{display:block;font-size:clamp(40px,5vw,62px);font-weight:700;line-height:1.02;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.num-u{display:block;font-size:15px;font-weight:700;margin:14px 0 8px}.num p{font-size:13.5px;line-height:1.78;color:var(--ink-2);margin:0}.two-up{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--ink)}.card{padding:32px 32px 32px 0;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:14px;align-items:flex-start}.card:last-child{border-right:0;padding-left:32px}.card h3{font-size:24px}.card p{font-size:15px;color:var(--ink-2);margin:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,4vw,60px)}.two-col h3{font-size:20px;margin-bottom:.7em}.two-col p{font-size:15.5px;color:var(--ink-2)}.two-col.req h3{font-size:16px;padding-bottom:11px;margin-bottom:18px;border-bottom:1px solid var(--ink);display:flex;align-items:baseline;gap:10px}.tick li{position:relative;padding:12px 0 12px 24px;font-size:15px;line-height:1.78;color:var(--ink-2);border-bottom:1px solid var(--rule)}.tick li:before{content:"—";position:absolute;left:0;color:var(--green)}.inline-list{display:grid;grid-template-columns:12em 1fr;gap:22px;margin-top:36px;padding-top:22px;border-top:1px solid var(--rule)}.inline-list-label{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase}.inline-list ul{display:flex;flex-wrap:wrap;gap:8px}.inline-list li{border:1px solid var(--rule-2);padding:7px 13px;font-size:13.5px;color:var(--ink-2)}.arch-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.arch-cell{padding:30px 30px 30px 0;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}.arch-cell:nth-child(3n){border-right:0}.arch-cell h4{font-size:18px;margin-bottom:.6em}.arch-cell p{font-size:14px;color:var(--ink-2);margin:0;line-height:1.85}.pyramid{margin-top:clamp(30px,4vw,48px);border-top:1px solid var(--ink)}.pyramid li{display:flex;align-items:center;gap:18px;padding:16px 0;border-bottom:1px solid var(--rule);font-weight:700;font-size:clamp(16px,1.9vw,20px);letter-spacing:.02em}.pyramid li .mono{color:var(--ink-3);font-weight:400;min-width:2.4em}.pyramid li:first-child{color:var(--green)}.role-list{border-top:1px solid var(--ink);margin-bottom:clamp(30px,4vw,48px)}.role-list li{display:grid;grid-template-columns:72px 1fr;gap:14px;padding:24px 0;border-bottom:1px solid var(--rule)}.role-no{font-family:var(--mono);font-size:13px;color:var(--green);font-weight:700}.role-list h4{font-size:18px;margin-bottom:.45em}.role-list p{font-size:15px;color:var(--ink-2);margin:0}.day{border-top:1px solid var(--ink)}.day li{display:grid;grid-template-columns:84px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--rule)}.day-time{font-family:var(--mono);font-size:13px;color:var(--green);font-weight:700;padding-top:2px}.day h4{font-size:17px;margin-bottom:.35em}.day p{font-size:14.5px;color:var(--ink-2);margin:0}.site-foot{background:var(--ink);color:#b9bfba}.foot-top{max-width:var(--maxw);margin:0 auto;padding:clamp(44px,5vw,72px) var(--gutter) 40px;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px}.site-foot .eeful-logo{width:108px;filter:brightness(0) invert(1);opacity:.92}.site-foot .brand-sub{display:block;margin:10px 0 18px;color:#838a84}.site-foot .eyebrow{color:#838a84;margin-bottom:1.2em}.site-foot a,.site-foot nav button{display:flex;align-items:center;gap:5px;font-size:14px;color:#b9bfba;text-decoration:none;padding:6px 0;text-align:left}.site-foot a:hover,.site-foot nav button:hover{color:var(--lime)}.site-foot nav{display:flex;flex-direction:column;align-items:flex-start}.copyright{max-width:var(--maxw);margin:0 auto;padding:18px var(--gutter) 30px;border-top:1px solid #2a312d;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;color:#757c77}.qd{--bf-primary: #3b6fa0;--bf-primary-fg: #ffffff;--bf-secondary: #5a9e8f;--bf-accent: #8b6cb8;--bf-fg: #171717;--bf-muted-fg: #555555;--bf-bg: #ffffff;--bf-surface: #fafafa;--bf-surface-2: #f5f5f5;--bf-border: #dedede;--bf-input: #cccccc;margin:0;color:var(--bf-fg)}.qd-frame{border:1px solid var(--ink);background:var(--bf-bg);display:flex;flex-direction:column;height:clamp(560px,74vh,720px);overflow:hidden}.qd-header{flex-shrink:0;height:52px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(90deg,#3b6fa0,#5a9e8f,#8b6cb8);color:#fff}.qd-header-l{display:flex;align-items:center;gap:10px}.qd-brand{font-size:15px;font-weight:700}.qd-badge{font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.12em;border:1px solid rgba(255,255,255,.55);padding:2px 6px}.qd-header-r{display:flex;align-items:center;gap:14px}.qd-greet{font-size:12.5px;color:#ffffffd9}.qd-greet b{color:#fff}.qd-clock{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}.qd-main{flex:1;display:flex;min-height:0}.qd-chat{flex:1;min-width:0;display:flex;flex-direction:column;border-right:1px solid var(--bf-border)}.qd-messages{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.qd-msg{max-width:84%;padding:10px 12px;font-size:14px;line-height:1.75;animation:qd-rise .4s ease both}.qd-msg.user{margin-left:auto;background:var(--bf-primary);color:var(--bf-primary-fg)}.qd-msg.assistant{margin-right:auto;background:var(--bf-surface-2)}.qd-msg-who{display:block;font-size:11px;font-weight:700;opacity:.7;margin-bottom:3px}.qd-msg-text{margin:0;white-space:pre-wrap}@keyframes qd-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.qd-attach-img{width:132px;height:84px;object-fit:cover;border:1px solid rgba(255,255,255,.35);margin-bottom:7px}.qd-attach-file{display:inline-flex;align-items:center;gap:6px;margin-bottom:7px;border:1px solid rgba(255,255,255,.3);padding:5px 10px;font-size:13px}.qd-tool{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--bf-muted-fg);padding:3px 0}.qd-tool.done{color:var(--bf-secondary);font-weight:700}.qd-spin{animation:qd-spin 1s linear infinite}@keyframes qd-spin{to{transform:rotate(360deg)}}.qd-input{flex-shrink:0;border-top:1px solid var(--bf-border);padding:10px;display:flex;align-items:center;gap:7px;background:var(--bf-bg)}.qd-input-icon{width:38px;height:38px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--bf-input);color:var(--bf-muted-fg)}.qd-input-field{flex:1;min-width:0;min-height:38px;padding:8px 12px;border:1px solid var(--bf-input);font-size:14px;display:flex;align-items:center;overflow:hidden}.qd-placeholder{color:#9c9c9c}.qd-caret{display:inline-block;width:2px;height:1em;margin-left:2px;background:currentColor;vertical-align:text-bottom;animation:qd-blink 1s step-end infinite}@keyframes qd-blink{0%,49%{opacity:1}50%,to{opacity:0}}.qd-send{height:38px;padding:0 20px;display:flex;align-items:center;background:var(--bf-primary);color:var(--bf-primary-fg);font-size:14px;font-weight:700}.qd-panel{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--bf-bg)}.qd-panel-inner{flex:1;min-height:0;display:flex;flex-direction:column;animation:qd-panel-enter .5s cubic-bezier(.22,1,.36,1) both}@keyframes qd-panel-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.qd-panel-body{display:flex;flex-direction:column;height:100%}.qd-panel-head{flex-shrink:0;border-bottom:1px solid var(--bf-border);padding:11px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.qd-panel-title{font-size:14.5px;font-weight:700}.qd-panel-trailing{display:flex;align-items:center;gap:8px;flex-shrink:0}.qd-icon-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;color:var(--bf-muted-fg)}.qd-panel-scroll{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:14px}.qd-panel-scroll.flush{padding:0;gap:0}.qd-panel-empty{flex:1;display:flex;flex-direction:column;justify-content:center;padding:32px;color:var(--bf-muted-fg);font-size:13px;text-align:center}.qd-empty-title{font-size:15px;font-weight:700;color:var(--bf-fg)}.qd-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 16px;font-size:13.5px;font-weight:700;border:1px solid var(--bf-input);color:var(--bf-fg);background:var(--bf-bg)}.qd-btn.primary{background:var(--bf-primary);border-color:var(--bf-primary);color:var(--bf-primary-fg)}.qd-btn.sm{height:32px;padding:0 11px;font-size:12.5px}.qd-btn.block{width:100%}.qd-feedback{display:flex;align-items:center;gap:7px;margin:0;padding:9px 12px;font-size:13px;border-left:3px solid var(--bf-primary);background:var(--bf-surface-2);color:var(--bf-muted-fg)}.qd-feedback.ok{border-left-color:var(--bf-secondary);color:var(--bf-secondary);font-weight:700}.qd-section h4{font-size:12px;letter-spacing:.06em;color:var(--bf-muted-fg);padding-bottom:7px;margin-bottom:2px;border-bottom:1px solid var(--bf-border)}.qd-infolist{border-top:1px solid var(--bf-border)}.qd-info{display:grid;grid-template-columns:8.4em 1fr;gap:12px;padding:9px 0;border-bottom:1px solid var(--bf-border)}.qd-info dt{font-size:12px;color:var(--bf-muted-fg)}.qd-info dd{margin:0;font-size:13.5px;font-weight:700;line-height:1.6}.qd-vlist li{font-weight:400;padding:1px 0}.qd-vlist li:before{content:"・";color:var(--bf-muted-fg)}.qd-table-wrap{overflow-x:auto}.qd-table{width:100%;border-collapse:collapse;font-size:12.5px}.qd-table th{text-align:left;padding:9px 10px;white-space:nowrap;background:var(--bf-surface-2);border-bottom:1px solid var(--bf-border);font-size:11.5px;color:var(--bf-muted-fg)}.qd-table td{padding:9px 10px;border-bottom:1px solid var(--bf-border);white-space:nowrap}.qd-rowlink{color:var(--bf-primary);font-weight:700;text-decoration:underline;text-underline-offset:.15em}.qd-count{padding:8px 14px;font-size:11.5px;color:var(--bf-muted-fg);margin:0}.qd-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.qd-md{font-size:13px;line-height:1.8}.qd-md h2{font-size:16px;margin:0 0 10px}.qd-md h3{font-size:14px;margin:16px 0 6px}.qd-md h4{font-size:13px;margin:13px 0 5px;color:var(--bf-fg);border:0;padding:0;letter-spacing:0}.qd-md p{margin:0 0 9px}.qd-md hr{border:0;border-top:1px solid var(--bf-border);margin:13px 0}.qd-md ul{margin:0 0 9px;padding-left:4px}.qd-md li{padding-left:13px;position:relative;margin-bottom:3px}.qd-md li:before{content:"・";position:absolute;left:-2px;color:var(--bf-muted-fg)}.qd-md-tablewrap{overflow-x:auto;margin:0 0 11px}.qd-md table{width:100%;border-collapse:collapse;font-size:11.5px}.qd-md th,.qd-md td{border:1px solid var(--bf-border);padding:6px 8px;text-align:left;vertical-align:top}.qd-md th{background:var(--bf-surface-2);font-size:11px;white-space:nowrap}.qd-controls{display:flex;flex-wrap:wrap;align-items:center;gap:0;border:1px solid var(--ink);border-top:0}.qd-controls button{display:flex;align-items:center;gap:6px;height:46px;padding:0 18px;font-size:13.5px;font-weight:700;border-right:1px solid var(--rule)}.qd-controls button:hover{background:var(--paper-2)}.qd-progress{margin-left:auto;padding:0 18px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--ink-3)}.qd-scenes{display:grid;grid-template-columns:repeat(3,1fr);margin-top:20px;border-top:1px solid var(--rule)}.qd-scenes button{display:flex;align-items:baseline;gap:10px;width:100%;text-align:left;padding:13px 16px 13px 0;border-bottom:1px solid var(--rule);font-size:13.5px;color:var(--ink-2)}.qd-scenes button:hover{color:var(--ink)}.qd-scenes button.active{color:var(--green);font-weight:700}.qd-scene-no{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);flex-shrink:0}.qd-scenes button.active .qd-scene-no{color:var(--green)}@media(max-width:1000px){.num-grid{grid-template-columns:1fr 1fr}.num{border-bottom:1px solid var(--rule)}.num:nth-child(2n){border-right:0;padding-right:0}.num:nth-child(odd){padding-left:0}.num:nth-last-child(-n+2){border-bottom:0}.arch-grid{grid-template-columns:1fr 1fr}.arch-cell:nth-child(3n){border-right:1px solid var(--rule)}.arch-cell:nth-child(2n){border-right:0;padding-left:28px}.qd-scenes{grid-template-columns:1fr 1fr}}@media(max-width:820px){.site-nav{display:none}.nav-toggle{display:flex}.two-col,.two-up{grid-template-columns:1fr}.two-up{gap:0}.card{border-right:0;border-bottom:1px solid var(--rule);padding:26px 0}.card:last-child{padding-left:0;border-bottom:0}.inline-list{grid-template-columns:1fr;gap:12px}.stack-row{grid-template-columns:1fr;gap:10px}.foot-top{grid-template-columns:1fr 1fr}.qd-main{flex-direction:column}.qd-chat{border-right:0;border-bottom:1px solid var(--bf-border);flex:1.1}.qd-panel{flex:1}.qd-frame{height:78vh}.qd-scenes{grid-template-columns:1fr}.qd-greet,.ba-head{display:none}.ba-row{grid-template-columns:1fr}.ba-row>div{padding:16px 0}.ba-row>div+div{padding:16px 0 20px 16px;border-left:3px solid var(--green)}.ba-before:before,.ba-row>div+div:before{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--ink-3);margin-bottom:5px}.ba-before:before{content:"これまで"}.ba-row>div+div:before{content:"QAITO";color:var(--green)}}@media(max-width:680px){.doc-table{min-width:0}.doc-table thead{display:none}.doc-table,.doc-table tbody,.doc-table tr,.doc-table td{display:block;width:100%}.doc-table tr{padding:18px 0;border-bottom:1px solid var(--rule)}.doc-table tr:first-child{border-top:1px solid var(--ink)}.doc-table tr:hover td{background:none}.doc-table td{border:0;padding:3px 0}.doc-table td:first-child{color:var(--ink);margin-bottom:3px}.doc-table td:first-child b{font-size:1.06em}.doc-table td:first-child .mono{display:block;font-size:11px}}@media(max-width:560px){body{font-size:15px}.num-grid{grid-template-columns:1fr}.num{border-right:0;padding:26px 0!important;border-bottom:1px solid var(--rule)}.num:last-child{border-bottom:0}.arch-grid{grid-template-columns:1fr}.arch-cell{border-right:0!important;padding-left:0!important;padding-right:0}.spec-row,.spec.wide .spec-row,.role-list li,.day li{grid-template-columns:1fr;gap:4px}.foot-top{grid-template-columns:1fr}.qd-info{grid-template-columns:1fr;gap:2px}}.sec.wide .converge,.sec.wide .kite-scene{margin-left:calc(-1 * var(--gutter));margin-right:calc(-1 * var(--gutter));width:auto}.legal-head .page-title{font-size:clamp(27px,4vw,52px)}.legal-head .page-sub{font-size:clamp(15px,1.3vw,16.5px)}.legal-sec{margin-bottom:clamp(34px,4.5vw,54px)}.legal-sec h2{font-size:clamp(16px,1.8vw,19px);padding-bottom:11px;margin-bottom:16px;border-bottom:1px solid var(--ink)}.legal-sec p,.legal-sec li{font-size:15px;line-height:1.95;color:var(--ink-2);max-width:46em}.legal-sec ul{margin:0 0 1.1em}.legal-sec li{position:relative;padding-left:1.15em}.legal-sec li:before{content:"・";position:absolute;left:0;color:var(--ink-3)}.legal .spec{margin-bottom:clamp(30px,4vw,46px)}.sub-head{font-size:clamp(18px,2.1vw,24px);margin:clamp(44px,6vw,72px) 0 4px;padding-bottom:12px;border-bottom:1px solid var(--ink)}.after-kite{margin-top:clamp(28px,4vw,44px);margin-bottom:2em}@media(max-width:760px){.hero .kite-scene{aspect-ratio:4 / 3}.hero-copy{position:static;max-width:none;padding:30px var(--gutter) 0;animation:none}.kite-scene.plain{aspect-ratio:4 / 3}.kite-cap{position:static;padding:20px var(--gutter) 24px;max-width:none;background:var(--paper)}.kite-scene.plain{aspect-ratio:auto}.kite-scene.plain .kite-fig{position:relative;aspect-ratio:4 / 3;height:auto}.cv-chip{font-size:12.5px;padding:7px 11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.shot img{transition:none;transform:none}.shot.is-visible img{transform:none}.st-line>span{transform:none}.table-wrap tbody tr,.ba .ba-row,.spec .spec-row,.stack-fig .chip,.arch-grid .arch-cell,.num-grid .num,.two-up .card,.inline-list li,.kite-person,.kite-cap,.cv-chip,.cv-word,.cv-sub,.statement-sub,.hero-copy .eyebrow{opacity:1!important;transform:none!important}.kite-rise{opacity:1;transform:none}.kite-line{stroke-dashoffset:0}.qd-msg,.qd-panel-inner,.qd-spin,.qd-caret,.kite-rise,.kite-sway,.kite-line,.kite-person{animation:none!important}}@media print{.site-head,.qd-controls,.qd-scenes{display:none}.reveal,.table-wrap tbody tr,.ba .ba-row,.spec .spec-row,.stack-fig .chip,.arch-grid .arch-cell,.num-grid .num,.two-up .card,.inline-list li{opacity:1;transform:none}.st-line>span{transform:none}.statement,.converge{background:none!important;color:#000!important}}
