:root{--bg-color: #050505;--text-color: #f0f0f0;--accent-color: #7b2cbf;--accent-gradient: linear-gradient(45deg, #7b2cbf, #4361ee);--header-bg: rgba(5, 5, 5, .8);--section-padding: 80px 20px;--font-main: "Outfit", sans-serif;--font-jp: "Noto Sans JP", sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-main);background-color:var(--bg-color);color:var(--text-color);line-height:1.6;overflow-x:hidden}h1,h2,h3{font-family:var(--font-main);font-weight:700;line-height:1.2}a{text-decoration:none;color:inherit;transition:color .3s ease}ul{list-style:none}header{position:fixed;top:0;left:0;width:100%;padding:20px 0;z-index:1000;transition:all .3s ease}header.scrolled{background-color:var(--header-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:15px 0;border-bottom:1px solid rgba(255,255,255,.1)}header .container{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 20px}.logo{font-size:1.5rem;font-weight:700;letter-spacing:1px}nav ul{display:flex;gap:30px}nav a{font-size:.9rem;text-transform:uppercase;letter-spacing:1px}nav a:hover,nav a.active{color:#4361ee}.btn-primary{background:var(--accent-gradient);padding:10px 25px;border-radius:30px;font-weight:500;transition:transform .3s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 5px 15px #4361ee66}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;z-index:1001}.mobile-menu-toggle span{display:block;width:25px;height:2px;background-color:var(--text-color);margin:5px 0;transition:all .3s ease}#hero{height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;background:#000}.bg-video{position:absolute;top:50%;left:50%;min-width:100%;min-height:100%;width:auto;height:auto;transform:translate(-50%,-50%);object-fit:cover;z-index:-2}.hero-bg .overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;z-index:-1}.hero-content{z-index:1}.hero-content h1{font-size:4rem;margin-bottom:20px}.hero-content h1 .jap{font-family:var(--font-jp);font-size:2rem;display:block;margin-top:10px;font-weight:700;background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.subtitle{font-size:1.2rem;margin-bottom:40px;opacity:.8;font-family:var(--font-jp)}.btn-outline{display:inline-block;padding:12px 30px;border:1px solid var(--text-color);border-radius:30px;font-weight:500;text-transform:uppercase;letter-spacing:1px}.btn-outline:hover{background:var(--text-color);color:var(--bg-color)}.glitch{position:relative}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;background:var(--bg-color)}.glitch:before{left:2px;text-shadow:-1px 0 #cc00ff;animation:glitch-anim-1 2s infinite linear alternate-reverse}.glitch:after{left:-2px;text-shadow:-1px 0 #00ccff;animation:glitch-anim-2 3s infinite linear alternate-reverse}@keyframes glitch-anim-1{0%{clip-path:inset(20% 0 80% 0)}20%{clip-path:inset(60% 0 10% 0)}40%{clip-path:inset(40% 0 50% 0)}60%{clip-path:inset(80% 0 5% 0)}80%{clip-path:inset(10% 0 70% 0)}to{clip-path:inset(30% 0 20% 0)}}@keyframes glitch-anim-2{0%{clip-path:inset(10% 0 60% 0)}20%{clip-path:inset(80% 0 5% 0)}40%{clip-path:inset(30% 0 20% 0)}60%{clip-path:inset(10% 0 80% 0)}80%{clip-path:inset(50% 0 10% 0)}to{clip-path:inset(20% 0 60% 0)}}section{padding:var(--section-padding)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.section-title{text-align:center;margin-bottom:60px}.section-title h2{font-size:2.5rem;margin-bottom:10px;text-transform:uppercase;letter-spacing:2px}.section-title p{font-size:1rem;color:#888;font-family:var(--font-main);text-transform:uppercase;letter-spacing:1px}#philosophy{background-color:#0a0a0a}.philosophy-content{text-align:center;max-width:800px;margin:0 auto}.philosophy-quote{font-family:var(--font-jp);font-size:2rem;font-weight:700;margin-bottom:30px;line-height:1.5;background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.philosophy-text{font-family:var(--font-jp);font-size:1.1rem;line-height:2;color:#ccc}.swiper{width:100%;padding-bottom:50px}.swiper-slide{background:#111;border-radius:10px;overflow:hidden;transition:transform .3s}.swiper-slide-active{transform:scale(1.05);box-shadow:0 10px 30px #00000080;z-index:10}.video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%}.work-info{padding:20px}.work-info h3{font-family:var(--font-main);font-size:1.2rem;margin-bottom:10px}.work-info p{font-family:var(--font-jp);font-size:.9rem;color:#ccc}.swiper-button-next,.swiper-button-prev{color:var(--text-color)}.swiper-pagination-bullet-active{background:var(--accent-color)}.business-section{min-height:80vh;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.05)}.business-section .container{display:flex;align-items:center;justify-content:space-between;gap:50px}.business-section.alt-layout .container{flex-direction:row-reverse}.business-content{flex:1;max-width:600px}.business-visual{flex:1;height:auto;aspect-ratio:1 / 1;max-width:500px;background:#111;border-radius:20px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.05);box-shadow:0 20px 50px #00000080;transition:transform .3s;margin:0 auto}.business-visual:hover{transform:scale(1.02);border-color:#7b2cbf4d}.visual-img{width:100%;height:100%;object-fit:cover;border-radius:20px}.visual-placeholder{font-size:2rem;font-weight:700;color:#333;font-family:var(--font-main);text-transform:uppercase;letter-spacing:2px;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.section-label{font-family:var(--font-main);color:var(--accent-color);font-size:.9rem;font-weight:700;margin-bottom:20px;letter-spacing:2px;text-transform:uppercase}.business-content h2{font-size:3rem;margin-bottom:10px;font-family:var(--font-jp)}.business-content h3{font-size:1.5rem;margin-bottom:25px;color:#888;font-weight:300}.business-content .description{font-size:1.1rem;margin-bottom:20px;line-height:1.8;font-weight:700}.business-content .card-detail{font-family:var(--font-jp);color:#aaa;line-height:1.8;padding-left:20px;border-left:3px solid var(--accent-color)}.card-detail a{color:var(--accent-color);text-decoration:underline;text-decoration-color:#7b2cbf80;transition:all .3s}.card-detail a:hover{color:#fff;text-decoration-color:#fff}.btn-ip{margin-top:40px;font-family:var(--font-jp);display:inline-block}@media (max-width: 900px){.business-section .container{flex-direction:column;text-align:center;gap:30px}.business-section.alt-layout .container{flex-direction:column-reverse;text-align:center;gap:30px}.business-content{max-width:100%}.business-content .card-detail{padding-left:0;border-left:none;border-top:3px solid var(--accent-color);padding-top:20px}.btn-ip{margin-top:50px;font-family:var(--font-jp)}.business-visual{width:100%;height:auto;aspect-ratio:1 / 1;max-width:400px;margin:0 auto}.business-content h2{font-size:2.2rem}}.team-grid{display:flex;justify-content:center;gap:40px;flex-wrap:wrap}.team-member{text-align:center;max-width:300px}.member-img{width:150px;height:150px;border-radius:50%;overflow:hidden;margin:0 auto 20px;border:3px solid #333}.placeholder-avatar{width:100%;height:100%;background:#222;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#555}.team-member h3{margin-bottom:5px}.team-member .role{color:#4361ee;font-size:.9rem;margin-bottom:15px;font-weight:500}.team-member .comment{font-family:var(--font-jp);font-size:.9rem;font-style:italic;color:#ccc}.member-avatar{width:100%;height:100%;object-fit:cover}.social-link{margin-top:10px}.social-link a{color:var(--accent-color);font-size:.9rem;font-weight:500;transition:color .3s}.social-link a:hover{color:#fff}.contact-form{max-width:600px;margin:0 auto;background:#111;padding:40px;border-radius:10px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-size:.9rem;color:#aaa}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;background:#222;border:1px solid #333;border-radius:5px;color:#fff;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4361ee}.btn-submit{width:100%;padding:15px;background:var(--accent-gradient);border:none;border-radius:30px;color:#fff;font-weight:700;cursor:pointer;transition:opacity .3s}.btn-submit:hover{opacity:.9}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.turnstile-container{display:flex;justify-content:center;margin-bottom:20px}.tv-animation-content{max-width:700px;margin:0 auto;text-align:center}.tv-visual{margin-bottom:30px;border-radius:15px;overflow:hidden;box-shadow:0 20px 50px #00000080}.tv-img{width:100%;display:block}.tv-animation-content h3{font-size:1.5rem;margin-bottom:15px;font-family:var(--font-jp)}.tv-meta{color:#888;font-family:var(--font-jp);font-size:.95rem;margin-bottom:20px}.tv-description{font-family:var(--font-jp);line-height:1.9;color:#ccc;margin-bottom:30px}.form-message{text-align:center;padding:12px;border-radius:5px;margin-bottom:20px;display:none;font-family:var(--font-jp)}.form-message.success{display:block;background:#2ecc7126;color:#2ecc71;border:1px solid rgba(46,204,113,.3)}.form-message.error{display:block;background:#e74c3c26;color:#e74c3c;border:1px solid rgba(231,76,60,.3)}.page-hero{padding:160px 0 60px;text-align:center}.page-hero h1{font-size:3.5rem;margin-bottom:10px}.page-subtitle{font-family:var(--font-jp);font-size:1.2rem;color:#888}.about-section{padding:60px 0}.about-card{background:#111;border-radius:20px;padding:40px;border:1px solid rgba(255,255,255,.05);max-width:800px;margin:0 auto}.company-table{width:100%;border-collapse:collapse;font-family:var(--font-jp)}.company-table tr{border-bottom:1px solid rgba(255,255,255,.08)}.company-table tr:last-child{border-bottom:none}.company-table th{text-align:left;padding:20px 20px 20px 0;color:#888;font-weight:400;width:120px;vertical-align:top;white-space:nowrap}.company-table td{padding:20px 0;line-height:1.8}.founder-section{padding:80px 0}.founder-content{display:flex;gap:60px;align-items:flex-start;max-width:900px;margin:0 auto}.founder-img-wrapper{text-align:center;flex-shrink:0}.founder-img{width:180px;height:180px;border-radius:50%;object-fit:cover;border:3px solid #333;margin-bottom:15px}.founder-name h3{margin-bottom:5px}.founder-role{color:var(--accent-color);font-size:.9rem;margin-bottom:8px}.founder-social a{color:var(--accent-color);font-size:.9rem;transition:color .3s}.founder-social a:hover{color:#fff}.founder-message{font-family:var(--font-jp);line-height:2;color:#ccc}.founder-message p{margin-bottom:20px}.career-section{padding:80px 0}.timeline{max-width:700px;margin:0 auto;position:relative;padding-left:40px}.timeline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--accent-color),transparent)}.timeline-item{position:relative;padding-bottom:40px}.timeline-item:before{content:"";position:absolute;left:-46px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--accent-color);border:2px solid #000}.timeline-year{font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:700;color:var(--accent-color);margin-bottom:8px}.timeline-content p{font-family:var(--font-jp);color:#aaa;line-height:1.8}@media (max-width: 768px){.page-hero h1{font-size:2.5rem}.founder-content{flex-direction:column;align-items:center;text-align:center}.about-card{padding:25px}.company-table th{display:block;padding-bottom:5px}.company-table td{display:block;padding-top:0;padding-bottom:20px}}footer{text-align:center;padding:40px 0;border-top:1px solid #222;color:#666;font-size:.9rem}.footer-logo{font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:10px}@media (max-width: 768px){.mobile-menu-toggle{display:block}nav{position:fixed;top:0;right:-100%;width:70%;height:100vh;background:#000;padding:80px 40px;transition:right .3s ease;z-index:1000}nav.active{right:0}nav ul{flex-direction:column}.hero-content h1{font-size:2.5rem}.hero-content h1 .jap,.philosophy-quote{font-size:1.5rem}}
