@keyframes shimmer{0%{transform:translateX(-100%)}50%{transform:translateX(100%)}to{transform:translateX(100%)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px rgba(59,130,246,.3)}50%{box-shadow:0 0 40px rgba(59,130,246,.6)}}@keyframes gradient-shift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes text-glow{0%,to{text-shadow:0 0 10px hsla(0,0%,100%,.5),0 0 20px rgba(59,130,246,.3),0 0 30px rgba(147,51,234,.2)}50%{text-shadow:0 0 20px hsla(0,0%,100%,.8),0 0 40px rgba(59,130,246,.6),0 0 60px rgba(147,51,234,.4)}}@keyframes slide-in-bottom{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-left{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes zoom-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes rotate-in{0%{opacity:0;transform:rotate(-10deg) scale(.8)}to{opacity:1;transform:rotate(0deg) scale(1)}}.animate-shimmer{animation:shimmer 2s infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}.animate-gradient-shift{animation:gradient-shift 8s ease infinite;background-size:400% 400%}.animate-text-glow{animation:text-glow 3s ease-in-out infinite}.animate-slide-in-bottom{animation:slide-in-bottom .6s ease-out}.animate-slide-in-left{animation:slide-in-left .6s ease-out}.animate-slide-in-right{animation:slide-in-right .6s ease-out}.animate-zoom-in{animation:zoom-in .5s ease-out}.animate-rotate-in{animation:rotate-in .8s ease-out}.bg-premium-gradient{background:linear-gradient(135deg,#667eea,#764ba2 25%,#f093fb 50%,#f5576c 75%,#4facfe)}.bg-hero-gradient{background:linear-gradient(135deg,#1e293b,#334155 25%,#475569 50%,#1e293b 75%,#0f172a)}.bg-card-gradient{background:linear-gradient(145deg,hsla(0,0%,100%,.9),hsla(0,0%,100%,.7))}.bg-card-gradient-dark{background:linear-gradient(145deg,rgba(31,41,55,.9),rgba(17,24,39,.7))}.text-premium-gradient{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-hero-gradient{background:linear-gradient(135deg,#fff,#e2e8f0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-glow{text-shadow:0 0 10px hsla(0,0%,100%,.3),0 0 20px rgba(59,130,246,.2),0 0 30px rgba(147,51,234,.1)}.shadow-premium{box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04),0 0 50px rgba(59,130,246,.1)}.shadow-hero{box-shadow:0 25px 50px -12px rgba(0,0,0,.5),0 0 100px rgba(59,130,246,.2)}.shadow-card-hover{box-shadow:0 25px 50px -12px rgba(0,0,0,.15),0 0 30px rgba(59,130,246,.1)}.border-premium{border:1px solid;border-image:linear-gradient(135deg,#667eea,#764ba2) 1}.border-glow{border:1px solid rgba(59,130,246,.3);box-shadow:0 0 10px rgba(59,130,246,.2),inset 0 0 10px rgba(59,130,246,.1)}.glass-effect{background:hsla(0,0%,100%,.1);backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.2)}.glass-effect-dark{background:rgba(17,24,39,.1);backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.1)}.hover-lift{transition:all .3s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 25px 50px -12px rgba(0,0,0,.25),0 0 30px rgba(59,130,246,.2)}.hover-glow{transition:all .3s ease}.hover-glow:hover{box-shadow:0 0 30px rgba(59,130,246,.4),0 0 60px rgba(147,51,234,.2);transform:scale(1.05)}.hover-scale{transition:transform .3s cubic-bezier(.4,0,.2,1)}.hover-scale:hover{transform:scale(1.05)}.btn-premium{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;padding:12px 32px;border-radius:16px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.btn-premium:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);transition:left .5s}.btn-premium:hover:before{left:100%}.btn-premium:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(102,126,234,.4),0 0 30px rgba(118,75,162,.3)}.loading-skeleton{background:linear-gradient(90deg,rgba(0,0,0,.1) 25%,rgba(0,0,0,.05) 50%,rgba(0,0,0,.1) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.loading-dots:after{content:"";animation:loading-dots 1.5s infinite}@keyframes loading-dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}.smooth-scroll{scroll-behavior:smooth}.parallax-slow{transform:translateY(var(--scroll-y,0) * .5)}.parallax-fast{transform:translateY(var(--scroll-y,0) * -.3)}.font-display{font-family:Inter,Hiragino Sans,Yu Gothic,sans-serif;font-feature-settings:"ss01","ss02","cv01","cv03"}.font-body{font-family:Inter,Hiragino Sans,Yu Gothic,sans-serif;font-feature-settings:"kern","liga","clig","calt"}@media (max-width:640px){.responsive-text-xs{font-size:.75rem}.responsive-text-sm{font-size:.875rem}.responsive-text-base{font-size:1rem}.responsive-text-lg{font-size:1.125rem}.responsive-text-xl{font-size:1.25rem}.responsive-text-2xl{font-size:1.5rem}.responsive-text-3xl{font-size:1.875rem}}@media (min-width:641px) and (max-width:1024px){.responsive-text-xs{font-size:.8rem}.responsive-text-sm{font-size:.9rem}.responsive-text-base{font-size:1.1rem}.responsive-text-lg{font-size:1.25rem}.responsive-text-xl{font-size:1.4rem}.responsive-text-2xl{font-size:1.7rem}.responsive-text-3xl{font-size:2.2rem}}@media (min-width:1025px){.responsive-text-xs{font-size:.85rem}.responsive-text-sm{font-size:.95rem}.responsive-text-base{font-size:1.1rem}.responsive-text-lg{font-size:1.3rem}.responsive-text-xl{font-size:1.5rem}.responsive-text-2xl{font-size:1.8rem}.responsive-text-3xl{font-size:2.5rem}}@media (prefers-color-scheme:dark){.dark-mode-glow{box-shadow:0 0 20px rgba(59,130,246,.2),0 0 40px rgba(147,51,234,.1)}.dark-mode-text-glow{text-shadow:0 0 10px rgba(59,130,246,.3),0 0 20px rgba(147,51,234,.2)}}@media (prefers-reduced-motion:reduce){.animate-float,.animate-gradient-shift,.animate-pulse-glow,.animate-shimmer,.animate-text-glow{animation:none}.hover-glow:hover,.hover-lift:hover,.hover-scale:hover{transform:none}}@media (prefers-contrast:high){.glass-effect,.glass-effect-dark{background:rgba(0,0,0,.9);border:2px solid #fff}.text-hero-gradient,.text-premium-gradient{-webkit-text-fill-color:currentColor;background:none}}.focus-ring:focus{outline:none;box-shadow:0 0 0 4px rgba(59,130,246,.5)}.focus-ring-dark:focus{outline:none;box-shadow:0 0 0 4px rgba(59,130,246,.5),0 0 0 6px #1f2937}@media print{.no-print{display:none!important}.print-friendly{background:#fff!important;color:#000!important;box-shadow:none!important}}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}.gpu-accelerated{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}@container (min-width: 320px){.container-responsive{padding:1rem}}@container (min-width: 768px){.container-responsive{padding:2rem}}@container (min-width: 1024px){.container-responsive{padding:3rem}}.premium-scrollbar::-webkit-scrollbar{width:8px}.premium-scrollbar::-webkit-scrollbar-track{background:rgba(0,0,0,.1);border-radius:4px}.premium-scrollbar::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px}.premium-scrollbar::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#5a6fd8,#6b46a3)}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.03) 20%,hsla(0,0%,100%,.06) 50%,hsla(0,0%,100%,.03) 80%,hsla(0,0%,100%,0));background-size:200% 100%;animation:skeleton-shimmer 2s ease-in-out infinite}@keyframes reveal-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.reveal-on-scroll{animation:reveal-up .6s cubic-bezier(.16,1,.3,1) both;animation-timeline:view();animation-range:entry 0 entry 40%}*{--ease-out-expo:cubic-bezier(0.16,1,0.3,1);--ease-in-out-sine:cubic-bezier(0.37,0,0.63,1)}.jp-text-balance{text-wrap:balance;word-break:keep-all;overflow-wrap:anywhere;line-break:strict;hanging-punctuation:allow-end}.text-render-premium{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"palt","kern"}.noise-overlay:after{content:"";position:absolute;inset:0;opacity:.015;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:128px}.card-lift{transition:transform .4s var(--ease-out-expo),box-shadow .4s var(--ease-out-expo)}.card-lift:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.3),0 0 1px hsla(0,0%,100%,.05)}.press-feedback{transition:transform .15s cubic-bezier(.2,0,0,1)}.press-feedback:active{transform:scale(.97)}.stagger-item{opacity:0;animation:reveal-up .5s var(--ease-out-expo) forwards}.stagger-item:first-child{animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:50ms}.stagger-item:nth-child(3){animation-delay:.1s}.stagger-item:nth-child(4){animation-delay:.15s}.stagger-item:nth-child(5){animation-delay:.2s}.stagger-item:nth-child(6){animation-delay:.25s}.stagger-item:nth-child(7){animation-delay:.3s}.stagger-item:nth-child(8){animation-delay:.35s}.stagger-item:nth-child(9){animation-delay:.4s}.smooth-scroll-dark{scrollbar-width:thin;scrollbar-color:hsla(0,0%,100%,.08) transparent}.smooth-scroll-dark::-webkit-scrollbar{width:6px;height:6px}.smooth-scroll-dark::-webkit-scrollbar-track{background:transparent}.smooth-scroll-dark::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.08);border-radius:3px}.smooth-scroll-dark::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.15)}.frosted-panel{background:rgba(5,5,5,.7);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%)}.img-reveal{opacity:0;transition:opacity .5s var(--ease-out-expo)}.img-reveal.loaded{opacity:1}.focus-ring-premium:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(220,38,38,.5),0 0 0 4px rgba(220,38,38,.15)}.color-transition-smooth{transition:color .7s var(--ease-in-out-sine),background-color .7s var(--ease-in-out-sine),border-color .7s var(--ease-in-out-sine),box-shadow .7s var(--ease-in-out-sine)}:root{--jt-ink-deepest:#0a0a0b;--jt-ink-deep:#111113;--jt-ink-base:#18181b;--jt-ink-subtle:#27272a;--jt-ink-muted:#3f3f46;--jt-ink-dim:#52525b;--jt-ink-soft:#71717a;--jt-ink-light:#a1a1aa;--jt-shu:#c53030;--jt-shu-bright:#e53e3e;--jt-shu-deep:#9b2c2c;--jt-shu-glow:rgba(197,48,48,.15);--jt-shu-subtle:rgba(197,48,48,.08);--jt-kin:#d69e2e;--jt-kin-subtle:rgba(214,158,46,.1);--jt-space-xs:4px;--jt-space-sm:8px;--jt-space-md:16px;--jt-space-lg:24px;--jt-space-xl:40px;--jt-space-2xl:64px;--jt-space-3xl:96px;--jt-radius-sm:6px;--jt-radius-md:8px;--jt-radius-lg:12px;--jt-radius-xl:16px;--jt-radius-full:9999px;--jt-ease:cubic-bezier(0.16,1,0.3,1);--jt-duration-fast:150ms;--jt-duration-base:250ms;--jt-duration-slow:500ms}.bg-jt-deepest{background-color:var(--jt-ink-deepest)}.bg-jt-deep{background-color:var(--jt-ink-deep)}.bg-jt-base{background-color:var(--jt-ink-base)}.bg-jt-card{background-color:var(--jt-ink-deep);border:1px solid hsla(0,0%,100%,.04)}.jt-card{background:var(--jt-ink-deep);border-radius:var(--jt-radius-md);padding:var(--jt-space-md);transition:background var(--jt-duration-base) var(--jt-ease),transform var(--jt-duration-base) var(--jt-ease);position:relative;overflow:hidden}.jt-card:before{content:"";position:absolute;inset:0;opacity:.012;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.jt-card:hover{background:var(--jt-ink-base)}.jt-play-fab{width:48px;height:48px;border-radius:50%;background:var(--jt-shu);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 16px rgba(0,0,0,.3);transition:transform var(--jt-duration-fast) var(--jt-ease),background var(--jt-duration-fast) var(--jt-ease),box-shadow var(--jt-duration-fast) var(--jt-ease);cursor:pointer}.jt-play-fab:hover{transform:scale(1.06);background:var(--jt-shu-bright);box-shadow:0 8px 24px var(--jt-shu-glow)}.jt-play-fab:active{transform:scale(.96)}.jt-play-fab svg{color:#fff;fill:#fff;width:20px;height:20px;margin-left:2px}.jt-play-fab-sm{width:36px;height:36px}.jt-play-fab-sm svg{width:16px;height:16px}.jt-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--jt-space-lg)}.jt-section-title{font-size:1.375rem;font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1.2}.jt-section-link{font-size:.75rem;font-weight:600;color:var(--jt-ink-light);text-transform:uppercase;letter-spacing:.1em;transition:color var(--jt-duration-fast)}.jt-chip,.jt-section-link:hover{color:#fff}.jt-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--jt-radius-full);font-size:.8125rem;font-weight:600;background:hsla(0,0%,100%,.05);border:none;transition:background var(--jt-duration-fast) var(--jt-ease);cursor:pointer;white-space:nowrap}.jt-chip:hover{background:hsla(0,0%,100%,.1)}.jt-chip[data-active=true]{background:#fff;color:var(--jt-ink-deepest)}.jt-progress-track{height:4px;background:hsla(0,0%,100%,.06);border-radius:2px;overflow:hidden;cursor:pointer;position:relative}.jt-progress-track:hover{height:6px}.jt-progress-fill{height:100%;background:var(--jt-shu);border-radius:2px;position:relative;transition:width .1s linear}.jt-progress-track:hover .jt-progress-fill:after{content:"";position:absolute;right:-5px;top:50%;transform:translateY(-50%);width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 2px 4px rgba(0,0,0,.3)}.jt-dynamic-bg{position:relative}.jt-dynamic-bg:before{content:"";position:absolute;top:0;left:0;right:0;height:40vh;background:var(--jt-gradient,linear-gradient(180deg,var(--jt-shu-subtle) 0,transparent 100%));pointer-events:none;transition:background 1s var(--jt-ease);z-index:0}.jt-heading-xl{font-size:clamp(2rem,5vw,3.5rem);font-weight:800;letter-spacing:-.04em;line-height:1.1}.jt-heading-lg,.jt-heading-xl{font-family:Inter,Noto Sans JP,sans-serif;color:#fff}.jt-heading-lg{font-size:1.375rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.jt-heading-serif{font-family:"Noto Serif JP",Georgia,serif;font-weight:600;letter-spacing:0;line-height:1.3}.jt-body{font-size:.875rem;line-height:1.6;color:var(--jt-ink-light)}.jt-caption{font-size:.6875rem;line-height:1.4;color:var(--jt-ink-soft);letter-spacing:.02em}.jt-mono{font-family:SF Mono,Fira Code,monospace;font-variant-numeric:tabular-nums}.jt-cover-play{position:relative;overflow:hidden;border-radius:var(--jt-radius-md)}.jt-cover-play .jt-play-fab{position:absolute;bottom:8px;right:8px;opacity:0;transform:translateY(8px);transition:opacity var(--jt-duration-base) var(--jt-ease),transform var(--jt-duration-base) var(--jt-ease)}.jt-cover-play:hover .jt-play-fab{opacity:1;transform:translateY(0)}.jt-shu-accent{width:3px;height:20px;background:var(--jt-shu);border-radius:2px;flex-shrink:0}.jt-washi-overlay{position:absolute;inset:0;pointer-events:none;opacity:.02;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='w'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.015' numOctaves='5' seed='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23w)'/%3E%3C/svg%3E")}.jt-sumi-glow{box-shadow:0 0 0 1px hsla(0,0%,100%,.03);transition:box-shadow var(--jt-duration-slow) var(--jt-ease)}.jt-sumi-glow:hover{box-shadow:0 0 0 1px hsla(0,0%,100%,.06),0 8px 32px rgba(0,0,0,.3),0 0 60px var(--jt-shu-glow)}.jt-scroll{scrollbar-width:thin;scrollbar-color:var(--jt-ink-subtle) transparent}.jt-scroll::-webkit-scrollbar{width:5px;height:5px}.jt-scroll::-webkit-scrollbar-track{background:transparent}.jt-scroll::-webkit-scrollbar-thumb{background:var(--jt-ink-subtle);border-radius:3px}.jt-scroll::-webkit-scrollbar-thumb:hover{background:var(--jt-ink-muted)}