*{margin:0;padding:0;box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Sans","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.6;color:#171717}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.hero{background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);color:#fff;padding:6rem 1.5rem 8rem;text-align:center;position:relative;overflow:hidden}.hero::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url(data:image/svg+xml,<svg\ width=\"60\"\ height=\"60\"\ xmlns=\"http://www.w3.org/2000/svg\"><circle\ cx=\"30\"\ cy=\"30\"\ r=\"1\"\ fill=\"white\"\ opacity=\"0.1\"/></svg>);animation:drift 20s linear infinite}@keyframes drift {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(60px);
  }
}.hero-content{position:relative;z-index:1}.hero h1{font-size:clamp(2.5rem,8vw,4rem);font-weight:800;margin-bottom:1rem;line-height:1.2}.hero-description{font-size:clamp(1.125rem,3vw,1.5rem);margin-bottom:2.5rem;opacity:.95}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{padding:1rem 2.5rem;font-size:1.1rem;font-weight:600;border-radius:.5rem;transition:all .3s ease;text-decoration:none;display:inline-block;border:2px solid transparent}.btn-primary{background:#fff;color:#2563eb}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(0,0,0,.2)}.btn-secondary{background:transparent;color:#fff;border:2px solid #fff}.btn-secondary:hover{background:#fff;color:#2563eb}.story{padding:6rem 1.5rem;background:#fafafa}.story-content{max-width:800px;margin:0 auto;text-align:center}.story h2{font-size:clamp(2rem,6vw,2.5rem);font-weight:700;margin-bottom:2rem}.story-text{font-size:clamp(1rem,2.5vw,1.2rem);line-height:2;color:#262626;margin-bottom:1.5rem}.story-highlight{font-size:clamp(1.25rem,3vw,1.5rem);font-weight:600;color:#2563eb;margin:2rem 0;padding:1.5rem;background:#fff;border-radius:.5rem;box-shadow:0 4px 6px rgba(0,0,0,.05)}.features{padding:6rem 1.5rem;background:#fff}.features h2{text-align:center;font-size:clamp(1.875rem,5vw,2.5rem);font-weight:700;margin-bottom:4rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.feature-card{padding:2rem;background:#fafafa;border-radius:1rem;transition:transform .3s ease}.feature-card:hover{transform:translateY(-5px)}.feature-icon{font-size:3rem;margin-bottom:1rem;display:block}.feature-card h3{font-size:1.5rem;font-weight:600;margin-bottom:1rem}.feature-card p{color:#262626;line-height:1.8}.how-it-works{padding:6rem 1.5rem;background:#fafafa}.how-it-works h2{text-align:center;font-size:clamp(1.875rem,5vw,2.5rem);font-weight:700;margin-bottom:4rem}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;max-width:900px;margin:0 auto}.step{text-align:center}.step-number{width:60px;height:60px;background:#2563eb;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1.5rem}.step h3{font-size:1.3rem;font-weight:600;margin-bottom:.5rem}.step p{color:#262626}.contact{padding:6rem 1.5rem;background:#fff}.contact h2{text-align:center;font-size:clamp(1.875rem,5vw,2.5rem);font-weight:700;margin-bottom:1rem}.contact-subtitle{text-align:center;font-size:1.2rem;color:#262626;margin-bottom:4rem}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:3rem;max-width:1200px;margin:0 auto}.contact-card{background:#fafafa;padding:2.5rem;border-radius:1rem;border:2px solid transparent;transition:border-color .3s ease}.contact-card:hover{border-color:#2563eb}.contact-card h3{font-size:1.8rem;font-weight:600;margin-bottom:.5rem;color:#2563eb}.contact-card>p{color:#262626;margin-bottom:2rem}.site-footer{background:#171717;color:#fff;padding:3rem 1.5rem 1.5rem;text-align:center}.site-footer h3{font-size:1.8rem;margin-bottom:.5rem}.site-footer>p{opacity:.8;margin-bottom:2rem}.footer-copyright{padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);opacity:.6;font-size:.9rem}.admin-bar .hero{padding-top: calc(6rem + 32px)}@media (max-width:768px){.contact-grid{grid-template-columns:1fr}.cta-buttons{flex-direction:column;align-items:center}.btn{width:100%;max-width:300px;text-align:center}}