@import"https://fonts.googleapis.com/css2?family=Nanum+Pen+Script&family=Saira+Stencil:ital,wght@0,100..900;1,100..900&family=Yuji+Syuku&display=swap";.loading-logo[data-v-ad230560],h1[data-v-93f7da81]{display:flex;align-items:center;gap:20px}h1 img[data-v-93f7da81]{display:block;margin:0!important}h2 span[data-v-ca04232e]{display:block;font-size:.5em;color:var(--color-text-secondary);line-height:1.8}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#111;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px}.loading-logo{font-family:Saira Stencil,sans-serif;font-size:42px;font-weight:100;color:#fff;letter-spacing:.1em}.loading-bar{width:200px;height:2px;background:#333;overflow:hidden}.loading-bar-fill{height:100%;background:#c00;transition:width .15s ease}.fade-leave-active{transition:opacity .4s ease}.fade-leave-to{opacity:0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scrollbar-gutter:stable}body{font-family:Nanum Pen Script,Arial,sans-serif}html[lang=ja] body{font-family:Yuji Syuku,serif;background:#fff;color:#111;overflow-x:hidden;word-break:keep-all}#particle-canvas{position:fixed;left:0;top:0;width:100vw;height:100vh;pointer-events:none;z-index:0}#site-wrap{max-width:1080px;margin:0 auto;position:relative}#dna-col{position:fixed;top:0;width:260px;height:100vh;overflow:hidden;pointer-events:none;z-index:10}#dna-canvas{position:absolute;left:0;top:0;width:260px}#content-col{margin-left:280px;padding:0 60px 120px 20px;position:relative;z-index:5}.section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid #eee;padding:80px 0}.section .intro-logo{margin-bottom:20px;border-radius:18px;box-shadow:0 2px 12px #00000026}.section h1{font-family:Saira Stencil,sans-serif;font-size:52px;font-weight:100;letter-spacing:-1px;margin-bottom:24px;line-height:1.1}.section h2{font-size:45px;font-weight:600;margin-bottom:20px;line-height:1.2}.section p{font-size:27px;line-height:1.8;color:#444;max-width:560px}.section p+p{margin-top:14px}.sec-eyebrow{font-family:Saira Stencil,sans-serif;font-size:11px!important;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:#c00;margin-bottom:16px;max-width:none}.works-list{margin-top:32px}.work-item{border-left:2px solid #111;padding:14px 0 14px 20px;margin-bottom:16px}.work-item .work-tags{display:flex;gap:8px;margin-bottom:6px}.work-item .work-tag{font-family:Saira Stencil,sans-serif;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.1em;color:#c00;text-decoration:none;transition:color .15s}.work-item .work-tag:hover{color:#900}.work-item strong{display:block;font-size:24px;font-weight:600;margin-bottom:6px}.work-item p{font-size:20px;color:#666;margin:0;max-width:none}.work-item .work-btn{margin-top:16px}.work-btn{display:inline-block;padding:10px 24px;font-family:Saira Stencil,sans-serif;font-size:14px;font-weight:400;letter-spacing:.05em;color:#fff;background:#111;border:1px solid #111;border-radius:0;text-decoration:none;cursor:pointer;transition:background .2s,color .2s}.work-btn:hover{background:#c00;border-color:#c00;color:#fff}.career-list{margin-top:32px;border-top:1px solid #eee}.career-item{display:flex;gap:24px;align-items:baseline;padding:12px 0;border-bottom:1px solid #eee;font-size:15px}.career-year{color:#999;font-size:13px;min-width:90px;font-variant-numeric:tabular-nums}.contact-links{margin-top:32px;display:flex;flex-direction:column;gap:12px}a{font-size:20px;font-weight:600;color:#111;text-decoration:none;letter-spacing:-.02em;transition:color .15s}a:hover{color:#c00}#sec-story a{color:#c00;text-decoration:none}#node-tooltip{position:fixed;background:#c00;color:#fff;font-size:13px;padding:5px 10px;border-radius:4px;pointer-events:none;opacity:0;transition:opacity .15s;z-index:100;white-space:nowrap}#scroll-hint{position:fixed;bottom:28px;left:50%;transform:translate(-50%);font-size:12px;color:#aaa;letter-spacing:.08em;animation:fadeHint 3s ease forwards;z-index:200}@keyframes fadeHint{0%{opacity:1}70%{opacity:1}to{opacity:0}}a:focus-visible,button:focus-visible{outline:2px solid #c00;outline-offset:3px;border-radius:2px}@media(prefers-reduced-motion:reduce){#particle-canvas,#dna-canvas{display:none}#scroll-hint{animation:none;opacity:0}}@media(max-width:680px){#dna-col{position:fixed;left:50%!important;transform:translate(-50%);width:100vw;opacity:.13;z-index:1;pointer-events:none}#dna-canvas{width:100%!important}#content-col{margin-left:0;padding:0 24px 100px;z-index:5}.section h1{font-size:38px}.section h2{font-size:28px}.section p{max-width:100%}.career-item{flex-direction:column;gap:4px}}.work-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:#0f0f0f8c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.work-modal-panel{position:relative;width:min(820px,100%);max-height:calc(100vh - 80px);background:#fff;border:1px solid #111;box-shadow:0 24px 80px #00000059;display:flex;overflow:hidden}.work-modal-rail{flex:0 0 56px;position:relative;border-right:1px solid #eee;background:#fafafa}.work-modal-rail .helix-rail{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.work-modal-rail .helix-strand{fill:none;stroke-width:1.2;vector-effect:non-scaling-stroke}.work-modal-rail .helix-strand.s1{stroke:#111}.work-modal-rail .helix-strand.s2{stroke:#c00}.work-modal-rail .helix-rungs line{stroke:#ddd;stroke-width:1;vector-effect:non-scaling-stroke}.work-modal-rail .helix-nodes circle{fill:#c00}.work-modal-close{position:absolute;top:14px;right:14px;z-index:2;width:36px;height:36px;border:1px solid #111;background:#fff;font-family:Saira Stencil,sans-serif;font-size:22px;line-height:1;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.work-modal-close:hover{background:#c00;border-color:#c00;color:#fff}.work-modal-scroll{flex:1;overflow-y:auto;padding:56px 56px 56px 40px;scrollbar-width:thin;scrollbar-color:#c00 transparent}.work-modal-scroll::-webkit-scrollbar{width:10px}.work-modal-scroll::-webkit-scrollbar-track{background:transparent}.work-modal-scroll::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#c00,#500);border:2px solid #fff;border-radius:5px}.work-modal-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#e00,#700)}.work-detail .work-tags{display:flex;gap:8px;margin-bottom:8px}.work-detail .work-tag{font-family:Saira Stencil,sans-serif;font-size:11px;font-weight:600;letter-spacing:.1em;color:#c00}.work-detail-header{margin-bottom:32px}.work-detail-header h2{font-size:38px;font-weight:600;line-height:1.15;margin-bottom:6px}.work-detail-tagline{font-size:20px;color:#777;margin:0;max-width:none}.work-detail-shots{display:grid;gap:12px;margin-bottom:36px}.work-detail-shots[data-ratio=phone]{grid-template-columns:repeat(3,1fr)}.work-detail-shots[data-ratio=phone] .work-shot{aspect-ratio:9/16}.work-detail-shots[data-ratio=wide]{grid-template-columns:repeat(2,1fr)}.work-detail-shots[data-ratio=wide] .work-shot{aspect-ratio:16/10}.work-shot{background:linear-gradient(135deg,#f5f5f5,#e5e5e5);border:1px solid #ddd;display:flex;align-items:center;justify-content:center;font-family:Saira Stencil,sans-serif;font-size:11px;letter-spacing:.18em;color:#aaa;text-transform:uppercase;overflow:hidden}.work-shot img{display:block;width:100%;height:100%;object-fit:cover}.work-shot img.zoomable{cursor:zoom-in;transition:transform .25s ease}.work-shot img.zoomable:hover{transform:scale(1.02)}.image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:24px;background:#080808eb;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);overflow:hidden;touch-action:none;outline:none}.image-lightbox-img{max-width:100%;max-height:100%;width:auto;height:auto;display:block;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;pointer-events:auto;transform-origin:center center;will-change:transform}.image-lightbox-close{position:absolute;top:18px;right:18px;z-index:2;width:40px;height:40px;border:1px solid rgba(255,255,255,.6);background:#0006;color:#fff;font-family:Saira Stencil,sans-serif;font-size:24px;line-height:1;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.image-lightbox-close:hover{background:#c00;border-color:#c00;color:#fff}.image-lightbox-enter-active,.image-lightbox-leave-active{transition:opacity .2s ease}.image-lightbox-enter-active .image-lightbox-img,.image-lightbox-leave-active .image-lightbox-img{transition:opacity .25s ease,transform .25s ease}.image-lightbox-enter-from,.image-lightbox-leave-to{opacity:0}.image-lightbox-enter-from .image-lightbox-img,.image-lightbox-leave-to .image-lightbox-img{opacity:0;transform:scale(.96)}@media(max-width:680px){.image-lightbox{padding:0}.image-lightbox-close{top:14px;right:14px;width:36px;height:36px;font-size:22px}}.work-detail-section{margin-bottom:28px}.work-detail-section h3{font-size:22px;font-weight:600;margin-bottom:10px;padding-left:14px;border-left:3px solid #c00;line-height:1.3}.work-detail-section p{font-size:20px;line-height:1.7;color:#444;max-width:none}.work-detail-section p+p{margin-top:8px}.work-detail-section ul{list-style:none;padding:0;margin:0}.work-detail-section ul li{font-size:20px;line-height:1.7;color:#444;padding-left:22px;position:relative}.work-detail-section ul li:before{content:"-";position:absolute;left:0;color:#c00}.work-detail-cta{margin-top:36px}.work-modal-enter-active,.work-modal-leave-active{transition:opacity .25s ease}.work-modal-enter-active .work-modal-panel,.work-modal-leave-active .work-modal-panel{transition:transform .32s cubic-bezier(.2,.8,.2,1),opacity .32s}.work-modal-enter-from,.work-modal-leave-to{opacity:0}.work-modal-enter-from .work-modal-panel,.work-modal-leave-to .work-modal-panel{transform:translateY(24px) scale(.98);opacity:0}@media(max-width:680px){.work-modal{padding:0}.work-modal-panel{width:100%;max-height:100vh;height:100vh;border:none}.work-modal-rail{flex-basis:36px}.work-modal-scroll{padding:56px 24px 80px}.work-detail-header h2{font-size:30px}.work-detail-shots[data-ratio=phone]{grid-template-columns:repeat(2,1fr)}}
