@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Serif+JP:wght@400;500;700&display=swap";:root{--color-ink: #0a0a0a;--color-ink-light: #1a1a1a;--color-ink-muted: #555555;--color-paper: #fefefe;--color-paper-warm: #f8f7f4;--color-paper-dark: #f0efe8;--color-accent: #c9a962;--color-accent-light: #e2c987;--color-accent-dark: #a08844;--gradient-gold: linear-gradient(135deg, #c9a962 0%, #e6d4a5 50%, #c9a962 100%);--gradient-gold-dark: linear-gradient(135deg, #a08844 0%, #c9a962 100%);--glass-bg: rgba(255, 255, 255, .7);--glass-bg-dark: rgba(10, 10, 10, .85);--glass-border: rgba(255, 255, 255, .2);--glass-blur: blur(20px);--color-subtle: #e8e6e0;--color-border: #d4d2cc;--font-sans: "Noto Sans JP", -apple-system, BlinkMacSystemFont, sans-serif;--font-serif: "Noto Serif JP", Georgia, serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 4rem;--text-7xl: 5rem;--text-8xl: 7rem;--text-9xl: 9rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--space-40: 10rem;--space-48: 12rem;--space-64: 16rem;--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-base: .4s cubic-bezier(.4, 0, .2, 1);--transition-slow: .6s cubic-bezier(.4, 0, .2, 1);--transition-slower: 1s cubic-bezier(.16, 1, .3, 1);--transition-elastic: .8s cubic-bezier(.68, -.55, .265, 1.55);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .04);--shadow-base: 0 8px 32px rgba(0, 0, 0, .08);--shadow-lg: 0 20px 60px rgba(0, 0, 0, .12);--shadow-xl: 0 32px 80px rgba(0, 0, 0, .16);--shadow-glow: 0 0 60px rgba(201, 169, 98, .3);--shadow-glow-strong: 0 0 100px rgba(201, 169, 98, .5);--radius-sm: 6px;--radius-base: 12px;--radius-lg: 20px;--radius-xl: 28px;--radius-2xl: 40px;--radius-full: 9999px;--max-width: 1400px;--header-height: 90px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:400;line-height:1.8;color:var(--color-ink);background-color:var(--color-paper);overflow-x:hidden;cursor:default}.cursor-glow{position:fixed;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(201,169,98,.08) 0%,transparent 70%);pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:opacity .3s ease}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:500;line-height:1.2;letter-spacing:-.03em}h1{font-size:var(--text-7xl);font-weight:600}h2{font-size:var(--text-5xl)}h3{font-size:var(--text-2xl)}p{margin-bottom:var(--space-4)}a{color:inherit;text-decoration:none;transition:all var(--transition-fast)}a:hover{color:var(--color-accent)}.text-gradient{background:var(--gradient-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-glow{text-shadow:0 0 40px rgba(201,169,98,.4)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-8)}.section{padding:var(--space-40) 0;position:relative}.section-title{font-size:var(--text-5xl);margin-bottom:var(--space-4);position:relative;display:inline-block}.section-title:after{content:"";display:block;width:80px;height:3px;background:var(--gradient-gold);margin-top:var(--space-6);border-radius:var(--radius-full)}.section-subtitle{font-family:var(--font-sans);font-size:var(--text-xl);color:var(--color-ink-muted);font-weight:300;max-width:700px;line-height:1.9}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-5) var(--space-10);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;letter-spacing:.08em;text-transform:uppercase;border:none;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--transition-slow)}.btn:hover:before{left:100%}.btn-primary{background:var(--color-ink);color:var(--color-paper);box-shadow:var(--shadow-base)}.btn-primary:hover{background:var(--color-ink-light);transform:translateY(-4px);box-shadow:var(--shadow-xl)}.btn-secondary{background:transparent;color:var(--color-ink);border:2px solid var(--color-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.btn-secondary:hover{border-color:var(--color-ink);background:var(--color-ink);color:var(--color-paper);transform:translateY(-4px)}.btn-accent{background:var(--gradient-gold);color:var(--color-ink);box-shadow:var(--shadow-base),var(--shadow-glow);font-weight:600}.btn-accent:hover{transform:translateY(-4px) scale(1.02);box-shadow:var(--shadow-xl),var(--shadow-glow-strong)}.card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-10);transition:all var(--transition-base);position:relative}.card:before{content:"";position:absolute;inset:0;border-radius:var(--radius-xl);padding:1px;background:linear-gradient(135deg,rgba(255,255,255,.4),transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-xl);transform:translateY(-8px)}.card-dark{background:var(--glass-bg-dark);color:var(--color-paper)}.input-group{position:relative;margin-bottom:var(--space-6)}.input{width:100%;padding:var(--space-5);font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-ink);background:var(--color-paper);border:2px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base)}.input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 4px #c9a96226,var(--shadow-base)}.input::placeholder{color:var(--color-ink-muted)}.textarea{min-height:180px;resize:vertical}.label{display:block;margin-bottom:var(--space-3);font-size:var(--text-sm);font-weight:600;color:var(--color-ink);letter-spacing:.02em}@keyframes fadeInUp{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes pulse-glow{0%,to{box-shadow:0 0 40px #c9a9624d}50%{box-shadow:0 0 80px #c9a96280}}@keyframes rotate-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes morph{0%,to{border-radius:60% 40% 30% 70%/60% 30% 70% 40%;transform:rotate(0) scale(1)}25%{border-radius:30% 60% 70% 40%/50% 60% 30%;transform:rotate(90deg) scale(1.05)}50%{border-radius:50% 60% 30%/30% 70% 60% 50%;transform:rotate(180deg) scale(1)}75%{border-radius:60% 40%/70% 30% 50% 60%;transform:rotate(270deg) scale(.95)}}@keyframes wave{0%,to{transform:translate(-50%) translateY(0) rotate(0)}25%{transform:translate(-25%) translateY(-15px) rotate(3deg)}50%{transform:translate(0) translateY(0) rotate(0)}75%{transform:translate(-75%) translateY(15px) rotate(-3deg)}}@keyframes parallax-float{0%,to{transform:translateY(0) translate(0) rotateX(0) rotateY(0)}25%{transform:translateY(-15px) translate(10px) rotateX(5deg) rotateY(-5deg)}50%{transform:translateY(-25px) translate(0) rotateX(0) rotateY(0)}75%{transform:translateY(-15px) translate(-10px) rotateX(-5deg) rotateY(5deg)}}@keyframes glitch{0%,90%,to{transform:translate(0);opacity:1}92%{transform:translate(-2px,2px);opacity:.8}94%{transform:translate(2px,-2px);opacity:.9}96%{transform:translate(-1px,1px);opacity:1}98%{transform:translate(1px,-1px);opacity:.95}}@keyframes drift{0%{transform:translateY(100vh) translate(0) rotate(0);opacity:0}10%{opacity:1}50%{transform:translateY(50vh) translate(20px) rotate(180deg)}90%{opacity:1}to{transform:translateY(-10vh) translate(-20px) rotate(360deg);opacity:0}}@keyframes char-reveal{0%{opacity:0;transform:translateY(40px) rotateX(-90deg);filter:blur(10px)}to{opacity:1;transform:translateY(0) rotateX(0);filter:blur(0)}}@keyframes scale-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes ripple{0%{transform:scale(.8);opacity:1}to{transform:scale(2.4);opacity:0}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes magnetic{0%,to{transform:translate(0) translateY(0)}25%{transform:translate(5px) translateY(-5px)}50%{transform:translate(-5px) translateY(5px)}75%{transform:translate(3px) translateY(3px)}}@keyframes stagger-reveal{0%{clip-path:inset(0 100% 0 0);opacity:0}to{clip-path:inset(0 0 0 0);opacity:1}}@keyframes aurora{0%,to{background-position:0% 50%;filter:hue-rotate(0deg)}50%{background-position:100% 50%;filter:hue-rotate(30deg)}}.morph-blob{animation:morph 15s ease-in-out infinite}.parallax-float{animation:parallax-float 8s ease-in-out infinite;transform-style:preserve-3d}.gradient-animated{background-size:200% 200%;animation:gradient-shift 8s ease infinite}.magnetic-hover{transition:transform var(--transition-fast)}.magnetic-hover:hover{animation:magnetic .6s ease-in-out}.stagger-children>*{opacity:0;animation:stagger-reveal .8s cubic-bezier(.16,1,.3,1) forwards}.stagger-children>*:nth-child(1){animation-delay:.1s}.stagger-children>*:nth-child(2){animation-delay:.2s}.stagger-children>*:nth-child(3){animation-delay:.3s}.stagger-children>*:nth-child(4){animation-delay:.4s}.stagger-children>*:nth-child(5){animation-delay:.5s}.stagger-children>*:nth-child(6){animation-delay:.6s}.grain-overlay:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");opacity:.03;pointer-events:none;z-index:1}.neon-glow{text-shadow:0 0 5px rgba(201,169,98,.5),0 0 10px rgba(201,169,98,.4),0 0 20px rgba(201,169,98,.3),0 0 40px rgba(201,169,98,.2)}.card-3d{transform-style:preserve-3d;perspective:1000px;transition:transform var(--transition-base)}.card-3d:hover{transform:rotateY(5deg) rotateX(-5deg) translateY(-10px)}.btn-liquid{position:relative;overflow:hidden}.btn-liquid:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,rgba(255,255,255,.4) 0%,transparent 70%);border-radius:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-liquid:hover:before{width:400px;height:400px}.animate-fade-in{animation:fadeIn 1s cubic-bezier(.16,1,.3,1) forwards}.animate-fade-in-up{animation:fadeInUp 1s cubic-bezier(.16,1,.3,1) forwards}.animate-slide-in-left{animation:slideInLeft 1s cubic-bezier(.16,1,.3,1) forwards}.animate-slide-in-right{animation:slideInRight 1s cubic-bezier(.16,1,.3,1) forwards}.animate-scale-in{animation:scaleIn .8s cubic-bezier(.16,1,.3,1) forwards}.animate-float{animation:float 6s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);background-size:200% 100%;animation:shimmer 2s infinite}.animate-pulse-glow{animation:pulse-glow 3s ease-in-out infinite}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.delay-6{animation-delay:.6s}.delay-7{animation-delay:.7s}.delay-8{animation-delay:.8s}.gradient-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;pointer-events:none}.gradient-orb-gold{background:var(--color-accent)}.gradient-orb-dark{background:var(--color-ink)}.line-accent{width:80px;height:3px;background:var(--gradient-gold);border-radius:var(--radius-full)}.grid-bg{position:absolute;inset:0;background-image:linear-gradient(to right,rgba(0,0,0,.03) 1px,transparent 1px),linear-gradient(to bottom,rgba(0,0,0,.03) 1px,transparent 1px);background-size:60px 60px;pointer-events:none}@media(max-width:1024px){:root{--text-6xl: 3.5rem;--text-7xl: 4rem;--text-8xl: 5rem;--text-9xl: 6rem}.section{padding:var(--space-32) 0}}@media(max-width:768px){:root{--text-4xl: 2rem;--text-5xl: 2.5rem;--text-6xl: 3rem;--text-7xl: 3.5rem;--text-8xl: 4rem;--header-height: 80px}.container{padding:0 var(--space-5)}.section{padding:var(--space-24) 0}}@media(max-width:480px){:root{--text-3xl: 1.5rem;--text-4xl: 1.75rem;--text-5xl: 2.25rem;--text-6xl: 2.5rem}}::selection{background:var(--color-accent);color:var(--color-ink)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-paper-dark)}::-webkit-scrollbar-thumb{background:var(--gradient-gold);border-radius:var(--radius-full);border:2px solid var(--color-paper-dark)}::-webkit-scrollbar-thumb:hover{background:var(--color-accent-dark)}.skeleton{background:linear-gradient(90deg,var(--color-paper-warm) 25%,var(--color-paper) 50%,var(--color-paper-warm) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-base)}
