*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #2E7D32;--primary-light: #4CAF50;--primary-dark: #1B5E20;--secondary-color: #FF6F00;--text-dark: #212121;--text-light: #757575;--bg-light: #FAFAFA;--bg-white: #FFFFFF;--border-color: #E0E0E0;--shadow: 0 2px 8px rgba(0, 0, 0, .1);--shadow-hover: 0 4px 16px rgba(0, 0, 0, .15);--transition: all .3s ease}body{font-family:Noto Sans JP,sans-serif;line-height:1.6;color:var(--text-dark);background-color:var(--bg-white);overflow-x:hidden}.page-loader{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--bg-white);display:flex;justify-content:center;align-items:center;z-index:9999;transition:opacity .5s ease,visibility .5s ease}.page-loader.hidden{opacity:0;visibility:hidden}.transition-loader{position:fixed;top:0;left:0;width:100%;height:80px;background:linear-gradient(to bottom,var(--primary-color),transparent);display:flex;justify-content:center;align-items:center;z-index:9998;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.transition-loader.active{opacity:1;visibility:visible}.loader-spinner{width:50px;height:50px;border:4px solid var(--bg-light);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.transition-loader .loader-spinner{width:30px;height:30px;border-color:var(--bg-white);border-top-color:var(--primary-light)}@keyframes spin{to{transform:rotate(360deg)}}header{position:fixed;top:0;left:0;width:100%;background-color:var(--bg-white);box-shadow:var(--shadow);z-index:1000;transition:var(--transition)}.header-container{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.logo h1{font-size:32px;font-weight:700;color:var(--primary-color);letter-spacing:2px}.logo-subtitle{font-size:12px;color:var(--text-light);margin-top:-4px}nav ul{display:flex;list-style:none;gap:32px}nav a{text-decoration:none;color:var(--text-dark);font-weight:500;transition:var(--transition);position:relative;padding:8px 0}nav a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--primary-color);transition:var(--transition)}nav a:hover:after,nav a.active:after{width:100%}nav a:hover,nav a.active{color:var(--primary-color)}.mobile-menu-btn{display:none;flex-direction:column;gap:6px;background:none;border:none;cursor:pointer;padding:8px}.mobile-menu-btn span{width:28px;height:3px;background-color:var(--primary-color);transition:var(--transition);border-radius:2px}.mobile-menu-btn.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:nth-child(3){transform:rotate(-45deg) translate(8px,-8px)}main{margin-top:80px}.page{display:none;opacity:0;animation:fadeIn .5s ease forwards}.page.active{display:block}@keyframes fadeIn{to{opacity:1}}.container{max-width:1200px;margin:0 auto;padding:80px 24px}.section-title{font-size:40px;font-weight:700;text-align:center;margin-bottom:64px;color:var(--primary-color);position:relative;padding-bottom:16px}.section-title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80px;height:4px;background-color:var(--secondary-color);border-radius:2px}.hero{height:calc(100vh - 80px);position:relative;display:flex;justify-content:center;align-items:center;text-align:center;padding:40px 24px;overflow:hidden}.hero-image{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.hero-image:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#e8f5e9d9,#c8e6c9d9)}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-content{max-width:800px;position:relative;z-index:1}.hero-title{font-size:56px;font-weight:700;color:var(--primary-dark);margin-bottom:24px;line-height:1.3}.hero-subtitle{font-size:20px;color:var(--text-dark);margin-bottom:48px;line-height:1.8}.hero-buttons{display:flex;gap:24px;justify-content:center;flex-wrap:wrap}.btn{padding:16px 40px;border-radius:50px;text-decoration:none;font-weight:600;font-size:16px;transition:var(--transition);display:inline-block}.btn-primary{background-color:var(--primary-color);color:var(--bg-white);box-shadow:var(--shadow)}.btn-primary:hover{background-color:var(--primary-dark);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.btn-secondary{background-color:var(--bg-white);color:var(--primary-color);border:2px solid var(--primary-color)}.btn-secondary:hover{background-color:var(--primary-color);color:var(--bg-white);transform:translateY(-2px)}.about-content{display:grid;grid-template-columns:1fr;gap:64px}.about-text h3{font-size:32px;margin-bottom:24px;color:var(--primary-color);line-height:1.5}.about-text p{font-size:16px;line-height:1.9;color:var(--text-dark);margin-bottom:20px}.about-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px}.feature-card{background-color:var(--bg-white);padding:40px 32px;border-radius:16px;text-align:center;box-shadow:var(--shadow);transition:var(--transition)}.feature-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.feature-icon{font-size:56px;margin-bottom:24px}.feature-card h4{font-size:22px;margin-bottom:16px;color:var(--primary-color)}.feature-card p{font-size:15px;color:var(--text-light);line-height:1.7}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:40px}.service-card{background-color:var(--bg-white);border-radius:16px;box-shadow:var(--shadow);overflow:hidden;transition:var(--transition)}.service-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.service-header{background:linear-gradient(135deg,var(--primary-color),var(--primary-light));color:var(--bg-white);padding:32px 24px}.service-header h3{font-size:24px;font-weight:700}.service-body{padding:32px 24px}.service-body p{font-size:15px;margin-bottom:24px;line-height:1.8;color:var(--text-dark)}.service-body ul{list-style:none}.service-body li{border-bottom:1px solid var(--border-color);color:var(--text-dark);position:relative;padding:12px 0 12px 24px}.service-body li:last-child{border-bottom:none}.service-body li:before{content:"✓";position:absolute;left:0;color:var(--primary-color);font-weight:700}.voice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px}.voice-card{background-color:var(--bg-white);border-radius:16px;padding:32px;box-shadow:var(--shadow);transition:var(--transition)}.voice-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.voice-avatar{width:80px;height:80px;margin:0 auto 24px}.voice-avatar svg{width:100%;height:100%}.voice-text{font-size:15px;line-height:1.8;color:var(--text-dark);margin-bottom:20px;font-style:italic}.voice-name{font-size:14px;font-weight:600;color:var(--primary-color);text-align:right}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px;margin-bottom:48px}.pricing-card{background-color:var(--bg-white);border-radius:16px;box-shadow:var(--shadow);overflow:hidden;transition:var(--transition);position:relative}.pricing-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.pricing-card.featured{border:3px solid var(--primary-color)}.pricing-card.special{background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.pricing-badge{position:absolute;top:16px;right:16px;background-color:var(--secondary-color);color:var(--bg-white);padding:6px 16px;border-radius:20px;font-size:12px;font-weight:700}.pricing-header{padding:32px 24px 24px;text-align:center}.pricing-header h3{font-size:24px;font-weight:700;color:var(--primary-color);margin-bottom:8px}.pricing-description{font-size:14px;color:var(--text-light)}.pricing-price{text-align:center;padding:24px;border-bottom:2px solid var(--border-color)}.price-amount{font-size:48px;font-weight:700;color:var(--primary-color)}.price-unit{font-size:16px;color:var(--text-light);margin-left:4px}.pricing-features{list-style:none;padding:32px 24px}.pricing-features li{color:var(--text-dark);position:relative;padding:12px 0 12px 28px;font-size:15px}.pricing-features li:before{content:"✓";position:absolute;left:0;color:var(--primary-color);font-weight:700;font-size:18px}.pricing-note{background-color:var(--bg-light);padding:24px;border-radius:8px;text-align:center}.pricing-note p{font-size:14px;color:var(--text-light);margin-bottom:8px}.pricing-note p:last-child{margin-bottom:0}.access-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:48px}.access-info h3{font-size:28px;color:var(--primary-color);margin-bottom:32px}.info-item{margin-bottom:32px}.info-item h4{font-size:16px;font-weight:700;color:var(--primary-color);margin-bottom:12px}.info-item p{font-size:15px;line-height:1.8;color:var(--text-dark)}.access-map{background-color:var(--bg-light);border-radius:16px;overflow:hidden;min-height:400px;display:flex;justify-content:center;align-items:center}.map-placeholder{text-align:center;font-size:48px}footer{background-color:var(--primary-dark);color:var(--bg-white);padding:48px 24px 24px}.footer-content{max-width:1200px;margin:0 auto 32px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px}.footer-info h3{font-size:24px;margin-bottom:12px}.footer-info p{font-size:14px;color:#fffc}.footer-contact p{font-size:14px;line-height:1.8;color:#fffc}.footer-bottom{max-width:1200px;margin:0 auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.2);text-align:center}.footer-bottom p{font-size:13px;color:#ffffffb3}@media (max-width: 768px){.mobile-menu-btn{display:flex}nav{position:fixed;top:80px;left:0;width:100%;background-color:var(--bg-white);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(-20px);transition:var(--transition)}nav.active{opacity:1;visibility:visible;transform:translateY(0)}nav ul{flex-direction:column;padding:24px;gap:16px}nav a{display:block;padding:12px 0}.hero{height:auto;min-height:calc(100vh - 80px);padding:64px 24px}.hero-title{font-size:36px}.hero-subtitle{font-size:16px}.hero-buttons{flex-direction:column;gap:16px}.btn{padding:14px 32px}.section-title{font-size:32px;margin-bottom:40px}.container{padding:48px 24px}.about-text h3{font-size:26px}.services-grid,.voice-grid,.pricing-grid,.access-content{grid-template-columns:1fr}.footer-content{grid-template-columns:1fr;text-align:center}}@media (max-width: 480px){.logo h1{font-size:24px}.hero-title{font-size:28px}.hero-subtitle{font-size:14px}.section-title{font-size:26px}.price-amount{font-size:36px}}
