*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #2d5f5d;--secondary-color: #7fb069;--accent-color: #d4a574;--text-dark: #2c3e50;--text-light: #6b7280;--bg-light: #f9fafb;--white: #ffffff;--border-color: #e5e7eb}body{font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;line-height:1.7;color:var(--text-dark);background-color:var(--white)}.loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--white);display:flex;justify-content:center;align-items:center;z-index:9999;transition:opacity .5s ease,visibility .5s ease}.loading-screen.hidden{opacity:0;visibility:hidden}.page-transition{position:fixed;top:0;left:0;width:100%;height:80px;background-color:#fffffff2;display:flex;justify-content:center;align-items:center;z-index:9998;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;box-shadow:0 2px 8px #0000001a}.page-transition.active{opacity:1;visibility:visible}.loader{width:48px;height:48px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.page-transition .loader{width:32px;height:32px}@keyframes spin{to{transform:rotate(360deg)}}header{background-color:var(--white);box-shadow:0 2px 8px #0000000d;position:sticky;top:0;z-index:1000}.header-container{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.logo{font-size:24px;font-weight:700;color:var(--primary-color);text-decoration:none;letter-spacing:.05em}nav ul{display:flex;list-style:none;gap:32px}nav a{color:var(--text-dark);text-decoration:none;font-weight:500;transition:color .3s ease;cursor:pointer}nav a:hover,nav a.active{color:var(--primary-color)}.hero{background:linear-gradient(135deg,#2d5f5dd9,#7fb069d9),url(/image.png);background-size:cover;background-position:center;background-attachment:fixed;color:var(--white);padding:120px 24px;text-align:center;position:relative}.hero h1{font-size:48px;font-weight:700;margin-bottom:24px;line-height:1.3}.hero p{font-size:20px;margin-bottom:40px;opacity:.95;max-width:600px;margin-left:auto;margin-right:auto}.cta-button{display:inline-block;background-color:var(--white);color:var(--primary-color);padding:16px 48px;border-radius:8px;text-decoration:none;font-weight:600;font-size:18px;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer}.cta-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0003}.container{max-width:1200px;margin:0 auto;padding:80px 24px}.section-title{text-align:center;margin-bottom:64px}.section-title h2{font-size:36px;font-weight:700;color:var(--primary-color);margin-bottom:16px}.section-title p{font-size:18px;color:var(--text-light)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;margin-top:48px}.service-card{background-color:var(--white);border-radius:12px;padding:40px;box-shadow:0 4px 16px #00000014;transition:transform .3s ease,box-shadow .3s ease;text-align:center}.service-card:hover{transform:translateY(-8px);box-shadow:0 8px 24px #0000001f}.service-icon{width:64px;height:64px;margin:0 auto 24px}.service-card h3{font-size:24px;font-weight:600;color:var(--primary-color);margin-bottom:16px}.service-card p{color:var(--text-light);line-height:1.8}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;margin-top:48px}.testimonial-card{background-color:var(--bg-light);border-radius:12px;padding:32px;position:relative}.testimonial-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.avatar{width:56px;height:56px}.testimonial-name{font-weight:600;color:var(--text-dark);margin-bottom:4px}.testimonial-age{font-size:14px;color:var(--text-light)}.testimonial-text{color:var(--text-dark);line-height:1.8;font-style:italic}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;margin-top:48px}.pricing-card{background-color:var(--white);border:2px solid var(--border-color);border-radius:12px;padding:40px;text-align:center;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.pricing-card:hover{transform:translateY(-8px);box-shadow:0 8px 24px #0000001f;border-color:var(--primary-color)}.pricing-card.featured{border-color:var(--primary-color);background:linear-gradient(135deg,#2d5f5d0d,#7fb0690d)}.pricing-card h3{font-size:24px;font-weight:600;color:var(--primary-color);margin-bottom:16px}.price{font-size:40px;font-weight:700;color:var(--text-dark);margin:24px 0}.price-unit{font-size:16px;color:var(--text-light);font-weight:400}.pricing-features{list-style:none;margin:32px 0;text-align:left}.pricing-features li{padding:12px 0;color:var(--text-dark);border-bottom:1px solid var(--border-color)}.pricing-features li:last-child{border-bottom:none}.company-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:48px;margin-top:48px}.info-section h3{font-size:20px;font-weight:600;color:var(--primary-color);margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid var(--primary-color)}.info-list{list-style:none}.info-list li{padding:12px 0;display:flex;gap:16px}.info-label{font-weight:600;color:var(--text-dark);min-width:120px}.info-value{color:var(--text-light)}footer{background-color:var(--primary-color);color:var(--white);padding:48px 24px 24px}.footer-content{max-width:1200px;margin:0 auto;text-align:center}.footer-logo{font-size:24px;font-weight:700;margin-bottom:16px;letter-spacing:.05em}.footer-info{margin:24px 0;opacity:.9;line-height:1.8}.footer-divider{height:1px;background-color:#fff3;margin:32px 0 24px}.footer-copyright{opacity:.8;font-size:14px}@media (max-width: 768px){.header-container{flex-direction:column;gap:16px}nav ul{gap:16px;flex-wrap:wrap;justify-content:center}.hero{padding:80px 24px}.hero h1{font-size:32px}.hero p{font-size:16px}.container{padding:48px 16px}.section-title h2{font-size:28px}.services-grid,.testimonials-grid,.pricing-grid,.company-info-grid{grid-template-columns:1fr}}#app{min-height:calc(100vh - 200px)}
