.toc{grid-column:1 / -1;display:grid;grid-template-columns:repeat(5,1fr);column-gap:var(--gap);border-top:1px solid var(--ink);margin-top:10rem}.toc a{padding:2rem 0 0;display:flex;flex-direction:column;gap:.6rem}.toc i{font-family:var(--en);font-size:1.5rem;color:var(--mute)}.toc b{font-family:var(--en);font-size:calc(var(--fl) * 3.4);line-height:1;transition:color .3s,transform .5s cubic-bezier(.2,.7,.2,1)}.toc span{font-size:1.2rem;letter-spacing:.1em;color:var(--mute)}.toc a:hover b{color:var(--accent);transform:translateX(.8rem)}@media (max-width:719px){.toc{grid-template-columns:1fr 1fr;row-gap:2rem;margin-top:6rem}.toc b{font-size:2.6rem}}.area{padding:12rem 0}.area__side{grid-column:1 / 4;display:flex;flex-direction:column;gap:.4rem;position:sticky;top:12rem;align-self:start}.area__no{font-family:var(--en);font-style:italic;font-size:1.8rem;color:var(--mute)}.area__en{font-family:var(--en);font-size:calc(var(--fl) * 6);line-height:.95;letter-spacing:-.025em;margin:.8rem 0 1rem;white-space:nowrap}.area__jp{font-size:1.6rem;font-weight:500;letter-spacing:.12em}.area__body{grid-column:4 / 13}.area__lead{font-size:2rem;font-weight:500;line-height:1.9;letter-spacing:.04em;margin-bottom:4.8rem}.area__lead:has(+ .area__intro){margin-bottom:1.6rem}.area__intro{font-size:1.5rem;line-height:1.9;margin-bottom:4.8rem;color:#4a4843}.dark .area__intro{color:rgba(243,241,236,.66)}.area__by{margin-top:1.2rem;font-family:var(--en);font-size:2rem;line-height:1.2}.area__by i{color:var(--mute);margin:0 .1em}.dark .area__by i{color:rgba(243,241,236,.5)}.area__note{margin-top:2.4rem;font-size:1.35rem;color:var(--mute)}.menu-t{border-top:1px solid var(--ink)}.menu-t div{display:grid;grid-template-columns:3fr 5fr;column-gap:var(--gap);padding:2.2rem 0;border-bottom:1px solid var(--line);align-items:center}.menu-t dt{font-size:1.6rem;font-weight:500;letter-spacing:.04em}.menu-t dd{font-size:1.4rem;line-height:1.9;color:#4a4843}.dark .menu-t{border-top-color:var(--paper)}.dark .menu-t div{border-bottom-color:rgba(243,241,236,.16)}.dark .menu-t dd,.dark .area__note{color:rgba(243,241,236,.66)}.dark .area__no{color:rgba(243,241,236,.5)}.area.dark{border-top:0}.studio-logo{width:22rem;height:auto;margin-bottom:4rem}.area__more{margin-top:4.8rem}@media (max-width:719px){.area{padding:7rem 0}.area__side,.area__body{grid-column:1 / -1}.area__side{position:static;margin-bottom:3.2rem}.area__en{font-size:3.5rem}.area__lead{font-size:1.6rem;margin-bottom:3rem}.area__intro{font-size:1.35rem;margin-bottom:3rem}.menu-t div{grid-template-columns:1fr;row-gap:.4rem}}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--gap);border-top:1px solid var(--ink);counter-reset:s}.step{padding:2.4rem 2rem 0 0}.step__no{font-family:var(--en);font-style:italic;font-size:1.6rem;color:var(--mute)}.step__en{font-family:var(--en);font-size:calc(var(--fl) * 4.4);line-height:1;margin:1.2rem 0 1.6rem}.step__h{font-size:1.6rem;font-weight:500;letter-spacing:.06em;margin-bottom:.8rem}.step__d{font-size:1.4rem;line-height:1.9;color:#4a4843}.flow-note{margin-top:5.6rem}.flow-src{margin-top:2rem;font-size:1.2rem;line-height:1.8;color:var(--mute)}@media (min-width:720px) and (max-width:1023px){.steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:3.2rem}}@media (max-width:719px){.steps{grid-template-columns:1fr}.step{padding:2.4rem 0;border-bottom:1px solid var(--line)}.step__en{font-size:3.4rem}}.area + .sec{padding-top:2rem}@media (max-width:719px){.area + .sec{padding-top:1rem}}.layers{grid-column:1 / -1;margin-top:6.4rem;border-top:1px solid var(--ink)}.layer{display:grid;grid-template-columns:3fr 9fr;column-gap:var(--gap);padding:3.2rem 0;border-bottom:1px solid var(--line);align-items:center}.layer__h{display:flex;flex-direction:column;gap:.4rem}.layer__h i{font-family:var(--en);font-size:1.5rem;color:var(--mute)}.layer__h b{font-family:var(--en);font-size:calc(var(--fl) * 3.2);line-height:1}.layer__h span{font-size:1.2rem;letter-spacing:.1em;color:var(--mute)}@media (max-width:719px){.layers{margin-top:4rem}.layer{grid-template-columns:1fr;row-gap:1.6rem;padding:2.4rem 0}.layer__h b{font-size:2.6rem}}.caps{list-style:none;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:3.6rem;row-gap:1.2rem}.caps li{position:relative;display:inline-flex;align-items:flex-start;gap:.5rem;font-family:var(--en);font-size:calc(var(--fl) * 4.2);line-height:1.05;letter-spacing:-.015em}.caps li::before{content:"/";position:absolute;left:-1.8rem;top:0;transform:translateX(-50%);color:var(--line);font-style:italic}.caps li:first-child::before,.caps li.is-bol::before{content:none}.cap__en{transition:color .3s}.cap__jp{font-family:var(--jp);font-size:1.1rem;letter-spacing:.08em;line-height:1;color:var(--mute);margin-top:.6rem;white-space:nowrap}@media (max-width:719px){.caps{row-gap:.8rem;column-gap:2rem}.caps li{font-size:2.6rem}.caps li::before{left:-1rem}.cap__jp{font-size:1rem}}html:not([lang=en]) .cap__en{display:none}html:not([lang=en]) .caps{column-gap:3.2rem;row-gap:1.4rem}html:not([lang=en]) .caps li{font-family:inherit;font-size:calc(var(--fl) * 2.4);font-weight:500;line-height:1.4;letter-spacing:.02em}html:not([lang=en]) .caps li::before{left:-1.6rem;font-family:var(--en);font-weight:400}html:not([lang=en]) .cap__jp{font-family:inherit;font-size:1em;letter-spacing:inherit;line-height:inherit;color:var(--ink);margin-top:0}html[lang=en] .cap__jp{display:none}@media (max-width:719px){html:not([lang=en]) .caps{column-gap:2rem;row-gap:1rem}html:not([lang=en]) .caps li{font-size:1.7rem}html:not([lang=en]) .caps li::before{left:-1rem}}.vz{border-top:1px solid var(--line)}.vz__word{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:.28em;font-family:var(--en);font-weight:400;font-size:calc(var(--fl) * 11);line-height:.95;letter-spacing:-.03em}.vz__inv{color:#8c8880;font-style:italic}.vz__arr{color:var(--mute);font-size:.5em;transform:translateY(-.3em)}.vz__vis{color:var(--ink)}.vz__sub{margin:3.2rem 0 4.8rem;font-family:var(--min);font-weight:500;font-size:2.8rem;line-height:1.45;transform:scaleX(.82);transform-origin:left top;width:calc(100% / .82)}html[lang=en] .vz__sub{font-family:var(--en);font-weight:400;transform:none;width:auto}.vz__def{margin-bottom:8rem}.vz__head{margin-top:0;font-size:3.6rem}@media (max-width:719px){.vz__word{font-size:5.6rem}.vz__sub{font-size:2rem;margin:2rem 0 3.2rem}.vz__def{margin-bottom:5.6rem}.vz__head{font-size:2.4rem}}.vz .flow-note{margin-top:6.4rem}.rip{position:relative;aspect-ratio:1 / 1;max-width:72rem;margin-top:6.4rem}.rip-wrap{grid-column:1 / -1}.rip{margin-left:auto;margin-right:auto}.rip__svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.rip__svg circle{fill:none;stroke:var(--ink);stroke-width:1;vector-effect:non-scaling-stroke;stroke-opacity:var(--o)}.rip__svg .rip__dot{fill:var(--ink);stroke:none}.rip__l{position:absolute;left:50%;top:var(--y);transform:translate(-50%,-50%);display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;column-gap:.6rem;row-gap:.3rem;max-width:24rem;padding:.4rem 1.2rem;background:var(--paper);border:1px solid rgba(28,26,23,.28);border-radius:10rem;text-align:center;white-space:nowrap}.rip__l i{font-family:var(--en);font-style:italic;font-size:1.3rem;color:var(--mute)}.rip__l b{font-family:var(--en);font-weight:400;font-size:calc(var(--fl) * 2.8);line-height:1;transition:color .3s}.rip__l span{flex-basis:100%;font-size:1.2rem;letter-spacing:.1em;color:var(--mute)}.rip__l:hover b{color:var(--accent)}.rip__top,.rip__bottom{position:absolute;left:50%;transform:translate(-50%,-50%);font-size:1.2rem;letter-spacing:.1em;color:var(--mute);white-space:nowrap}.rip__top{top:3.6%}.rip__bottom{top:97%}@media (max-width:719px){.rip{margin-top:4rem}.rip__l{flex-wrap:nowrap;align-items:center;column-gap:.4rem;min-height:32px;padding:0 .9rem}.rip__l::after{content:'';position:absolute;left:0;right:0;top:50%;height:44px;transform:translateY(-50%)}.rip__l i{font-size:1rem}html:not([lang=en]) .rip__l b{display:none}html:not([lang=en]) .rip__l span{flex-basis:auto;font-size:1.2rem;color:var(--ink);letter-spacing:.06em}html[lang=en] .rip__l b{font-size:1.5rem}html[lang=en] .rip__l span{display:none}.rip__top,.rip__bottom{font-size:1rem}}.ra{margin-top:6.4rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,32rem);gap:6.4rem;align-items:center}.ra__fig{position:relative;aspect-ratio:1 / 1;max-width:64rem;width:100%;margin:0 auto;container-type:inline-size}.ra__fig svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.ra__fig circle{fill:none;stroke:var(--ink);stroke-width:1;vector-effect:non-scaling-stroke;stroke-opacity:.4}.ra__fig circle.out{stroke-opacity:1}.ra__fig circle.core{fill:var(--ink);fill-opacity:.05;stroke-opacity:.6}.ra__c,.ra__o{position:absolute;left:50%;transform:translate(-50%,-50%);margin:0;letter-spacing:.1em;white-space:nowrap}.ra__c{top:50%;white-space:normal;width:20%;text-align:center;font-size:max(1rem,min(1.2rem,2.4cqw));line-height:1.35}.ra__o{top:97%;font-size:1.2rem;color:var(--mute)}.ra__t{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:min(2.8rem,5.6cqw);height:min(2.8rem,5.6cqw);border-radius:50%;background:var(--paper);border:1px solid rgba(28,26,23,.4);display:grid;place-items:center;font-family:var(--en);font-style:italic;font-size:max(1rem,min(1.3rem,2.8cqw))}.ra__side{min-width:0}.ra__list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.ra__list a{display:grid;grid-template-columns:3.6rem 1fr;align-items:baseline;min-height:44px;padding:1.4rem 0;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}.ra__list .no{font-family:var(--en);font-style:italic;color:var(--mute)}.ra__list .nm{display:flex;flex-wrap:wrap;column-gap:1.2rem;align-items:baseline}.ra__list b{font-family:var(--en);font-weight:400;font-size:calc(var(--fl) * 2.6);line-height:1;transition:color .3s}.ra__list .nm span{font-size:1.2rem;color:var(--mute);letter-spacing:.08em}html[lang=en] .ra__list .nm span{display:none}.ra__list a:hover b{color:var(--accent)}@media (min-width:720px) and (max-width:1023px){.ra{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:4rem}}@media (max-width:719px){.ra{margin-top:4rem;grid-template-columns:minmax(0,1fr);gap:3.2rem}.ra__o{font-size:1rem}.ra__list{display:grid;grid-template-columns:1fr 1fr;column-gap:1.6rem}.ra__list a{grid-template-columns:2.4rem 1fr;padding:1rem 0}html:not([lang=en]) .ra__list b{display:none}html:not([lang=en]) .ra__list .nm span{color:var(--ink);font-size:1.3rem;letter-spacing:.02em;white-space:nowrap}html[lang=en] .ra__list b{font-size:1.6rem}}.mo{--ez:cubic-bezier(.22,1,.36,1)}.mo .ra__fig circle{transform-box:view-box;transform-origin:500px 500px;transform:scale(var(--s0,0));opacity:0;transition:transform 1.5s var(--ez),opacity .5s ease}.mo .ra__fig circle:nth-child(1){--s0:.256;--d:.78s}.mo .ra__fig circle:nth-child(2){--s0:.301;--d:.66s}.mo .ra__fig circle:nth-child(3){--s0:.364;--d:.54s}.mo .ra__fig circle:nth-child(4){--s0:.462;--d:.42s}.mo .ra__fig circle:nth-child(5){--s0:.632;--d:.30s}.mo .ra__fig circle:nth-child(6){--s0:.4;--d:0s}.mo.is-in .ra__fig circle{transform:scale(1);opacity:1;transition-delay:var(--d)}.mo .ra__c,.mo .ra__o,.mo .ra__t,.mo .ra__list li{opacity:0;transition:opacity .7s ease}.mo .ra__t{transition:opacity .7s ease,background-color .5s ease,color .5s ease,border-color .5s ease}.mo.is-in .ra__c{opacity:1;transition-delay:.3s}.mo.is-in .ra__t,.mo.is-in .ra__list li{opacity:1;transition-delay:1.9s}.ra__fig .ra__br path{fill:none;stroke:var(--ink);stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.1s var(--ez)}.ra__fig .ra__br .tr{transition-duration:.7s}.ra__fig .ra__br .knot{fill:var(--ink);opacity:0;transition:opacity .4s ease}.mo.is-in .ra__t.is-pick{background:var(--ink);color:var(--paper);border-color:var(--ink);transition-delay:1.9s,2.9s,2.9s,2.9s}.mo.is-in .ra__br .br{stroke-dashoffset:0;transition-delay:3.3s}.mo.is-in .ra__br .knot{opacity:1;transition-delay:4.3s}.mo.is-in .ra__br .tr{stroke-dashoffset:0;transition-delay:4.3s}.mo.is-in .ra__o{opacity:1;color:var(--ink);transition:opacity .7s ease 1.9s,color .6s ease 4.9s}.mo.is-in .ra__list li.is-pick .no{color:var(--ink);transition:color .5s ease 2.9s}@media (prefers-reduced-motion:reduce){.mo *,.mo .ra__fig circle{transition:none !important;opacity:1 !important}.mo .ra__fig circle{transform:none !important}.mo .ra__br path{stroke-dashoffset:0 !important}}@media (max-width:719px){.ra-note{margin-bottom:.6em}}