:root{--primary-color: #0a0a0a;--primary-dark: #000000;--accent-color: #3b82f6;--accent-bright: #60a5fa;--secondary-color: #f59e0b;--text-primary: #0a0a0a;--text-secondary: #6b7280;--text-light: #9ca3af;--background: #ffffff;--background-dark: #0a0a0a;--background-gray: #f9fafb;--background-light-gray: #fafafa;--border-color: #e5e7eb;--border-light: #f3f4f6;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;color:var(--text-primary);line-height:1.6;background-color:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:1280px;margin:0 auto;padding:0 24px}.header{background-color:#fffffff2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-light);position:sticky;top:0;z-index:100;box-shadow:0 1px #00000008;transition:all .3s ease}.header-content{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 0;flex-wrap:wrap;gap:1.5rem}.company-name{font-size:1.5rem;font-weight:800;color:var(--primary-color);letter-spacing:-.02em;position:relative;transition:all .3s ease}.company-name:after{content:"";position:absolute;bottom:-4px;left:0;width:40px;height:3px;background:linear-gradient(90deg,var(--accent-color),var(--accent-bright));border-radius:2px}.nav-list{display:flex;list-style:none;gap:2.5rem;flex-wrap:wrap}.nav-link{color:var(--text-primary);text-decoration:none;font-weight:600;font-size:.9rem;padding:.5rem 0;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;letter-spacing:.01em}.nav-link:before{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%) scaleX(0);width:100%;height:2px;background:linear-gradient(90deg,var(--accent-color),var(--accent-bright));transition:transform .3s cubic-bezier(.4,0,.2,1);border-radius:2px}.nav-link:hover{color:var(--accent-color)}.nav-link:hover:before{transform:translate(-50%) scaleX(1)}.nav-link.active{color:var(--accent-color)}.nav-link.active:before{transform:translate(-50%) scaleX(1)}.hero{background:var(--background-dark);color:#fff;padding:8rem 0 10rem;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 30%,rgba(59,130,246,.15) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(96,165,250,.1) 0%,transparent 50%);pointer-events:none}.hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:2.5rem}.hero-title{font-size:3.5rem;font-weight:800;line-height:1.2;margin-bottom:1rem;letter-spacing:-.03em;background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:fadeInUp .8s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-text{font-size:1.375rem;opacity:.9;max-width:600px;font-weight:400;letter-spacing:.01em;animation:fadeInUp .8s ease-out .2s backwards}.hero-icon{margin-top:2rem;animation:fadeInUp .8s ease-out .4s backwards;filter:drop-shadow(0 10px 30px rgba(59,130,246,.3))}.section-title{font-size:2.5rem;font-weight:800;text-align:center;margin-bottom:4rem;color:var(--text-primary);letter-spacing:-.02em;position:relative;display:inline-block;width:100%}.section-title:after{content:"";position:absolute;bottom:-12px;left:50%;transform:translate(-50%);width:60px;height:4px;background:linear-gradient(90deg,var(--accent-color),var(--accent-bright));border-radius:2px}.features{padding:6rem 0;background:linear-gradient(180deg,var(--background-light-gray) 0%,var(--background) 100%)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem}.feature-card{background:#fff;padding:3rem 2.5rem;border-radius:20px;text-align:center;box-shadow:0 2px 8px #0000000a;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid var(--border-light);position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent-color),var(--accent-bright));transform:scaleX(0);transition:transform .4s cubic-bezier(.4,0,.2,1)}.feature-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000014}.feature-card:hover:before{transform:scaleX(1)}.feature-icon{margin-bottom:2rem;display:flex;justify-content:center;transition:transform .4s cubic-bezier(.4,0,.2,1)}.feature-card:hover .feature-icon{transform:scale(1.1)}.feature-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary);letter-spacing:-.01em}.feature-text{color:var(--text-secondary);line-height:1.8;font-size:1rem}.cta{padding:6rem 0;background:var(--background-dark);color:#fff;text-align:center;position:relative;overflow:hidden}.cta:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 50%,rgba(59,130,246,.12) 0%,transparent 50%),radial-gradient(circle at 70% 50%,rgba(96,165,250,.08) 0%,transparent 50%);pointer-events:none}.cta-content{position:relative;z-index:1}.cta-title{font-size:2.25rem;font-weight:800;margin-bottom:1.25rem;letter-spacing:-.02em}.cta-text{font-size:1.25rem;opacity:.9;font-weight:400}.footer{background-color:#0f0f0f;color:#fff;padding:4rem 0 2rem;margin-top:auto}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;margin-bottom:3rem}.footer-company{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.footer-address{color:#a1a1aa;line-height:1.8;font-size:.95rem}.footer-nav-list{list-style:none;display:flex;flex-direction:column;gap:.875rem}.footer-link{color:#a1a1aa;text-decoration:none;transition:all .3s ease;font-size:.95rem;display:inline-block}.footer-link:hover{color:#fff;transform:translate(4px)}.footer-bottom{border-top:1px solid #27272a;padding-top:2rem;text-align:center}.copyright{color:#71717a;font-size:.875rem}.page-header{background:var(--background-dark);color:#fff;padding:5rem 0;text-align:center;position:relative;overflow:hidden}.page-header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 25% 40%,rgba(59,130,246,.15) 0%,transparent 50%),radial-gradient(circle at 75% 60%,rgba(96,165,250,.1) 0%,transparent 50%);pointer-events:none}.page-title{position:relative;z-index:1;font-size:3rem;font-weight:800;margin-bottom:.75rem;letter-spacing:-.02em}.page-subtitle{position:relative;z-index:1;font-size:1rem;opacity:.7;font-weight:500;letter-spacing:.15em;text-transform:uppercase}.company-info{padding:6rem 0}.info-table{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 2px 12px #0000000d;margin-bottom:4rem;border:1px solid var(--border-light)}.info-row{display:grid;grid-template-columns:240px 1fr;border-bottom:1px solid var(--border-light);transition:background .3s ease}.info-row:hover{background:var(--background-light-gray)}.info-row:last-child{border-bottom:none}.info-label{background-color:var(--background-light-gray);padding:2rem;font-weight:700;color:var(--text-primary);font-size:.95rem;letter-spacing:.01em}.info-value{padding:2rem;color:var(--text-secondary);line-height:1.9;font-size:.95rem}.company-message{background:linear-gradient(135deg,var(--background-light-gray) 0%,var(--background) 100%);padding:4rem;border-radius:20px;border-left:5px solid var(--accent-color);box-shadow:0 2px 12px #0000000a}.message-title{font-size:1.75rem;font-weight:800;margin-bottom:1.5rem;color:var(--text-primary);letter-spacing:-.01em}.message-text{line-height:2;color:var(--text-secondary);font-size:1rem}.services-section{padding:6rem 0;background:var(--background-light-gray)}.services-intro{text-align:center;margin-bottom:5rem}.services-intro-text{font-size:1.125rem;color:var(--text-secondary);line-height:1.9;max-width:800px;margin:0 auto}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem;margin-bottom:5rem}.service-card{background:#fff;padding:3rem 2.5rem;border-radius:20px;box-shadow:0 2px 12px #0000000d;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid var(--border-light);position:relative;overflow:hidden}.service-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--accent-color),var(--accent-bright));transform:scaleX(0);transition:transform .4s cubic-bezier(.4,0,.2,1)}.service-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001a}.service-card:hover:before{transform:scaleX(1)}.service-icon{display:flex;justify-content:center;margin-bottom:2rem;transition:transform .4s cubic-bezier(.4,0,.2,1)}.service-card:hover .service-icon{transform:scale(1.08)}.service-title{font-size:1.5rem;font-weight:700;margin-bottom:1.25rem;color:var(--text-primary);text-align:center;letter-spacing:-.01em}.service-description{color:var(--text-secondary);line-height:1.9;text-align:center;font-size:.95rem}.services-note{background:#fff;padding:3.5rem;border-radius:20px;border-left:5px solid var(--secondary-color);box-shadow:0 2px 12px #0000000d}.note-title{font-size:1.75rem;font-weight:800;margin-bottom:1.25rem;color:var(--text-primary);letter-spacing:-.01em}.note-text{line-height:1.9;color:var(--text-secondary);font-size:1rem}.pricing-section{padding:6rem 0;background:var(--background)}.pricing-intro{text-align:center;margin-bottom:5rem}.pricing-intro-text{font-size:1.125rem;color:var(--text-secondary);line-height:1.9;max-width:800px;margin:0 auto}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem;margin-bottom:5rem}.pricing-card{background:#fff;border-radius:20px;box-shadow:0 2px 12px #0000000d;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);border:2px solid var(--border-light);position:relative}.pricing-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001a;border-color:var(--accent-color)}.pricing-card-featured{border-color:var(--accent-color);border-width:3px;transform:scale(1.02)}.pricing-card-featured:hover{transform:translateY(-8px) scale(1.02)}.pricing-badge{background:linear-gradient(135deg,var(--accent-color),var(--accent-bright));color:#fff;padding:.75rem 1rem;font-size:.875rem;font-weight:700;text-align:center;letter-spacing:.05em}.pricing-header{padding:2.5rem 2rem;text-align:center;border-bottom:1px solid var(--border-light)}.pricing-icon{display:flex;justify-content:center;margin-bottom:1.5rem;transition:transform .4s ease}.pricing-card:hover .pricing-icon{transform:scale(1.1)}.pricing-plan-name{font-size:1.5rem;font-weight:800;color:var(--text-primary);letter-spacing:-.01em}.pricing-body{padding:2.5rem 2rem}.pricing-price{text-align:center;margin-bottom:2.5rem}.price-amount{font-size:3rem;font-weight:800;color:var(--accent-color);letter-spacing:-.02em}.price-unit{font-size:1rem;color:var(--text-secondary);margin-left:.5rem;font-weight:500}.pricing-features{list-style:none;margin-bottom:2rem}.pricing-feature{color:var(--text-secondary);border-bottom:1px solid var(--border-light);position:relative;padding:1rem 0 1rem 2rem;font-size:.95rem;transition:all .3s ease}.pricing-feature:hover{color:var(--text-primary);padding-left:2.25rem}.pricing-feature:before{content:"✓";position:absolute;left:0;color:var(--secondary-color);font-weight:700;font-size:1.125rem}.pricing-feature:last-child{border-bottom:none}.pricing-note{font-size:.875rem;color:var(--text-light);text-align:center;font-style:italic;margin-top:1rem}.pricing-notes{background:var(--background-light-gray);padding:3.5rem;border-radius:20px;box-shadow:0 2px 12px #0000000a}.notes-title{font-size:1.75rem;font-weight:800;margin-bottom:2rem;color:var(--text-primary);letter-spacing:-.01em}.notes-list{list-style:none}.notes-item{color:var(--text-secondary);line-height:1.8;position:relative;padding:1rem 0 1rem 2rem;font-size:.95rem}.notes-item:before{content:"•";position:absolute;left:0;color:var(--accent-color);font-weight:700;font-size:1.5rem;line-height:1}.testimonials-section{padding:6rem 0;background:var(--background-light-gray)}.testimonials-intro{text-align:center;margin-bottom:5rem}.testimonials-intro-text{font-size:1.125rem;color:var(--text-secondary);line-height:1.9;max-width:800px;margin:0 auto}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:2.5rem}.testimonial-card{background:#fff;padding:3rem 2.5rem;border-radius:20px;box-shadow:0 2px 12px #0000000d;display:flex;flex-direction:column;align-items:center;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid var(--border-light);position:relative;overflow:hidden}.testimonial-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent-color),var(--accent-bright));transform:scaleX(0);transition:transform .4s cubic-bezier(.4,0,.2,1)}.testimonial-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001a}.testimonial-card:hover:before{transform:scaleX(1)}.testimonial-avatar{margin-bottom:2rem;transition:transform .4s ease}.testimonial-card:hover .testimonial-avatar{transform:scale(1.05)}.testimonial-content{width:100%}.testimonial-rating{display:flex;gap:.375rem;justify-content:center;margin-bottom:2rem}.testimonial-text{color:var(--text-secondary);line-height:1.9;margin-bottom:2rem;text-align:center;font-size:1rem}.testimonial-author{border-top:1px solid var(--border-light);padding-top:1.5rem;text-align:center}.author-name{font-weight:700;color:var(--text-primary);margin-bottom:.5rem;font-size:1.05rem;letter-spacing:-.01em}.author-company{font-size:.9rem;color:var(--text-light);font-weight:500}.access-section{padding:6rem 0;background:var(--background)}.access-content{display:grid;grid-template-columns:1fr;gap:4rem}.access-title{font-size:2rem;font-weight:800;margin-bottom:2.5rem;color:var(--text-primary);letter-spacing:-.02em}.access-details{display:flex;flex-direction:column;gap:2rem}.access-item{display:flex;gap:2rem;padding:2.5rem;background:var(--background-light-gray);border-radius:20px;border-left:5px solid var(--accent-color);transition:all .3s ease;box-shadow:0 2px 8px #00000008}.access-item:hover{transform:translate(8px);box-shadow:0 8px 24px #00000014}.access-icon{flex-shrink:0}.access-label{font-weight:700;color:var(--text-primary);margin-bottom:.75rem;font-size:1.125rem;letter-spacing:-.01em}.access-value{color:var(--text-secondary);line-height:1.9;font-size:.95rem}.map-container{border-radius:20px;overflow:hidden;box-shadow:0 8px 32px #0000001f;height:500px;border:1px solid var(--border-light)}.map-container iframe{display:block}@media (max-width: 768px){.header-content{flex-direction:column;align-items:flex-start;padding:1rem 0}.nav-list{flex-direction:column;gap:.75rem;width:100%}.nav-link{display:block;width:100%;padding:.75rem 0}.company-name{font-size:1.375rem}.hero{padding:5rem 0 6rem}.hero-title{font-size:2.25rem}.hero-text{font-size:1.125rem}.section-title{font-size:2rem}.page-title{font-size:2.25rem}.features-grid,.services-grid,.pricing-grid,.testimonials-grid{grid-template-columns:1fr}.pricing-card-featured{transform:scale(1)}.pricing-card-featured:hover{transform:translateY(-8px) scale(1)}.info-row{grid-template-columns:1fr}.info-label{border-bottom:none}.access-item{flex-direction:column;gap:1.5rem;padding:2rem}.access-item:hover{transform:translateY(-4px)}.map-container{height:350px}.company-message,.services-note,.pricing-notes{padding:2.5rem}}@media (max-width: 480px){.container{padding:0 20px}.hero{padding:4rem 0 5rem}.hero-title{font-size:1.875rem}.hero-text{font-size:1rem}.features,.services-section,.pricing-section,.testimonials-section,.access-section,.company-info{padding:4rem 0}.section-title{font-size:1.75rem;margin-bottom:3rem}.feature-card,.service-card,.testimonial-card{padding:2rem 1.75rem}.pricing-body{padding:2rem 1.5rem}.company-message,.services-note,.pricing-notes{padding:2rem}.access-item{padding:1.75rem}.map-container{height:300px}}
