section[id]{scroll-margin-top:80px}@keyframes float-particle{0%,to{transform:translateY(0) translate(0) scale(1);opacity:.3}25%{transform:translateY(-30vh) translate(10px) scale(1.2);opacity:.6}50%{transform:translateY(-60vh) translate(-15px) scale(.8);opacity:.4}75%{transform:translateY(-80vh) translate(5px) scale(1.1);opacity:.2}to{transform:translateY(-100vh) translate(0) scale(1);opacity:0}}@keyframes scroll-wheel{0%{transform:translateY(0);opacity:1}to{transform:translateY(8px);opacity:0}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes subtle-pulse{0%,to{box-shadow:0 0 #d4af3733}50%{box-shadow:0 0 0 8px #d4af3700}}.fade-in-section{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.25,.46,.45,.94),transform .7s cubic-bezier(.25,.46,.45,.94);will-change:opacity,transform}.fade-in-section.is-visible{opacity:1;transform:none}.section-label{display:inline-block;color:#556b2f;font-weight:700;letter-spacing:.15em;text-transform:uppercase;font-size:.8125rem;margin-bottom:.5rem}.section-divider{display:flex;justify-content:center;margin-bottom:1.5rem}.section-divider span{display:block;width:48px;height:3px;background:linear-gradient(90deg,#556b2f,#d4af37);border-radius:2px}.corporate-hero{position:relative;height:100vh;min-height:600px;display:flex;align-items:center;justify-content:center;overflow:hidden}.corporate-hero .hero-slideshow{position:absolute;inset:0}.corporate-hero .hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.08);transition:opacity 1.2s ease,transform 6s ease}.corporate-hero .hero-slide.is-active{opacity:1;transform:scale(1)}.corporate-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#556b2f80,#1a2e0a99);mix-blend-mode:multiply;z-index:1}.corporate-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,rgba(0,0,0,.2) 40%,transparent 70%);z-index:2}.corporate-hero .hero-particles{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}.corporate-hero .hero-particle{position:absolute;bottom:-10px;width:4px;height:4px;background:#d4af3799;border-radius:50%;animation:float-particle linear infinite}.corporate-hero .hero-particle:nth-child(1){left:10%;animation-duration:12s;animation-delay:0s;width:3px;height:3px}.corporate-hero .hero-particle:nth-child(2){left:25%;animation-duration:15s;animation-delay:2s;width:5px;height:5px}.corporate-hero .hero-particle:nth-child(3){left:45%;animation-duration:10s;animation-delay:4s}.corporate-hero .hero-particle:nth-child(4){left:60%;animation-duration:14s;animation-delay:1s;width:6px;height:6px}.corporate-hero .hero-particle:nth-child(5){left:75%;animation-duration:11s;animation-delay:3s;width:3px;height:3px}.corporate-hero .hero-particle:nth-child(6){left:90%;animation-duration:13s;animation-delay:5s}.corporate-hero .hero-content{position:relative;z-index:10;text-align:center;color:#fff;padding:0 1.5rem}.corporate-hero .hero-content .hero-tagline{font-size:.9375rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;letter-spacing:.15em;margin-bottom:1.5rem;color:#d4af37;text-shadow:0 2px 8px rgba(0,0,0,.3)}@media (min-width: 768px){.corporate-hero .hero-content .hero-tagline{font-size:1.25rem}}.corporate-hero .hero-content .md-only{display:block}@media (min-width: 768px){.corporate-hero .hero-content .md-only{display:none}}.corporate-hero .hero-content h1{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:2rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;color:#fff;text-shadow:0 4px 16px rgba(0,0,0,.3)}@media (min-width: 768px){.corporate-hero .hero-content h1{font-size:3.5rem}}@media (min-width: 1024px){.corporate-hero .hero-content h1{font-size:4.5rem}}@media (min-width: 768px){.corporate-hero .hero-content h1 br{display:none}}.corporate-hero .hero-content .hero-description{font-size:1rem;color:#ffffffe6;max-width:42rem;margin:0 auto 3rem;line-height:1.8}@media (min-width: 768px){.corporate-hero .hero-content .hero-description{font-size:1.125rem}}.corporate-hero .hero-content .hero-buttons{display:flex;flex-direction:column;gap:1.5rem;justify-content:center;align-items:center;margin-bottom:3rem}@media (min-width: 640px){.corporate-hero .hero-content .hero-buttons{flex-direction:row}}.corporate-hero .hero-content .hero-buttons .btn-primary{display:inline-flex;align-items:center;gap:1rem;background:linear-gradient(135deg,#fff,#f0f0f0);color:#556b2f;font-weight:700;padding:1.5rem 3rem;border-radius:9999px;transition:all .3s ease;box-shadow:0 10px 30px -5px #0003;transform:translateY(0)}.corporate-hero .hero-content .hero-buttons .btn-primary i{font-size:.75rem;transition:transform .3s ease}.corporate-hero .hero-content .hero-buttons .btn-primary:hover{transform:translateY(-4px);box-shadow:0 16px 40px -5px #0000004d}.corporate-hero .hero-content .hero-buttons .btn-primary:hover i{transform:translate(4px)}.corporate-hero .hero-content .hero-buttons .btn-secondary{border:1px solid rgba(255,255,255,.6);color:#fff;font-weight:500;padding:1.5rem 3rem;border-radius:9999px;transition:all .3s ease;backdrop-filter:blur(4px)}.corporate-hero .hero-content .hero-buttons .btn-secondary:hover{background-color:#ffffff1f;border-color:#fff}.corporate-hero .hero-content .hero-scroll-indicator{display:flex;flex-direction:column;align-items:center;gap:8px}.corporate-hero .hero-content .hero-scroll-indicator__mouse{width:24px;height:38px;border:2px solid rgba(255,255,255,.4);border-radius:12px;display:flex;justify-content:center;padding-top:6px}.corporate-hero .hero-content .hero-scroll-indicator__wheel{width:3px;height:8px;background:#fff9;border-radius:2px;animation:scroll-wheel 1.5s ease-out infinite}.corporate-hero .hero-content .hero-scroll-indicator__text{font-size:.625rem;letter-spacing:.2em;color:#fff6;font-weight:500}.stats-section{background:linear-gradient(135deg,#3e4f22,#556b2f,#475927);padding:3rem 0;position:relative;overflow:hidden}.stats-section:before{content:"";position:absolute;inset:0;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48ZyBmaWxsPSIjZmZmIiBmaWxsLW9wYWNpdHk9IjAuMDMiPjxwYXRoIGQ9Ik0zNiAzNFYyMkgxOHYxMkgxMlYxMEg0MlYzNEgzNnoiLz48L2c+PC9nPjwvc3ZnPg==);opacity:.5}.stats-section:after{content:"";position:absolute;top:-40%;right:-10%;width:50%;height:180%;background:radial-gradient(ellipse,rgba(212,175,55,.07),transparent 70%);pointer-events:none}.stats-section .stats-header{text-align:center;margin-bottom:2rem;position:relative;z-index:1}.stats-section .stats-badge{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#d4af374d,#d4af371a);border:1px solid rgba(212,175,55,.5);box-shadow:0 0 14px #d4af3733,inset 0 1px #ffffff1a;color:#d4af37;font-size:.875rem;font-weight:700;padding:.5rem 1.25rem;border-radius:9999px;letter-spacing:.08em;margin-bottom:1rem;text-shadow:0 0 8px rgba(212,175,55,.3)}.stats-section .stats-badge i{font-size:.85rem;filter:drop-shadow(0 0 4px rgba(212,175,55,.4))}.stats-section .stats-lead{color:#ffffffbf;font-size:.875rem;margin:0;letter-spacing:.02em}@media (min-width: 768px){.stats-section .stats-lead{font-size:1rem}}.stats-section .stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;position:relative;z-index:1;max-width:900px;margin:0 auto}@media (min-width: 768px){.stats-section .stats-grid{grid-template-columns:repeat(3,1fr)}}.stats-section .stat-item{text-align:center;color:#fff;padding:1.5rem 1rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:1rem;transition:background .3s ease}.stats-section .stat-item:hover{background:#ffffff14}.stats-section .stat-icon{margin-bottom:.5rem;color:#d4af37b3;font-size:1.25rem}@media (min-width: 768px){.stats-section .stat-icon{font-size:1.5rem}}.stats-section .stat-number{font-size:2.5rem;font-weight:700;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;color:#d4af37;display:inline}@media (min-width: 768px){.stats-section .stat-number{font-size:3.5rem}}.stats-section .stat-unit{font-size:1rem;font-weight:500;color:#fffc;display:inline;margin-left:2px}@media (min-width: 768px){.stats-section .stat-unit{font-size:1.25rem}}.stats-section .stat-label{font-size:.8125rem;color:#ffffffa6;margin-top:.5rem;letter-spacing:.02em;font-weight:500}@media (min-width: 768px){.stats-section .stat-label{font-size:.875rem}}.about-section{padding:4rem 0;background-color:#f4f5f0}@media (min-width: 768px){.about-section{padding:5rem 0}}.about-section .about-content{display:flex;flex-direction:column;align-items:center;gap:3rem}@media (min-width: 768px){.about-section .about-content{flex-direction:row}}.about-section .about-content .about-image{width:100%}@media (min-width: 768px){.about-section .about-content .about-image{width:50%}}.about-section .about-content .about-image img{width:100%;height:500px;object-fit:cover;border-radius:1rem;box-shadow:0 25px 50px -12px #0003;transition:transform .5s ease}.about-section .about-content .about-image img:hover{transform:scale(1.02)}.about-section .about-content .about-text{width:100%}@media (min-width: 768px){.about-section .about-content .about-text{width:50%}}.about-section .about-content .about-text h2{color:#556b2f;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;font-size:1.875rem;margin-bottom:1.5rem}@media (min-width: 768px){.about-section .about-content .about-text h2{font-size:2.25rem}}.about-section .about-content .about-text .divider{width:4rem;height:3px;background:linear-gradient(90deg,#556b2f,#d4af37);margin-bottom:2rem;border-radius:2px}.about-section .about-content .about-text p{color:#334155;line-height:1.85;margin-bottom:1.5rem}.problems-section{padding:4rem 0}@media (min-width: 768px){.problems-section{padding:5rem 0}}.problems-section .section-header{text-align:center;max-width:48rem;margin:0 auto 3rem}.problems-section .section-header h2{font-size:1.875rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#334155;margin-bottom:1rem}@media (min-width: 768px){.problems-section .section-header h2{font-size:2.25rem}}.problems-section .section-header p{color:#64748b}.problems-section .problems-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 768px){.problems-section .problems-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.problems-section .problems-grid{grid-template-columns:repeat(4,1fr)}}.problems-section .problems-grid .problem-card{background:#fff;padding:2rem 1.5rem;border-radius:1rem;box-shadow:0 4px 16px #0000000f;border-top:4px solid #556b2f;transition:transform .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}.problems-section .problems-grid .problem-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(85,107,47,.2),transparent)}.problems-section .problems-grid .problem-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px #0000001a}.problems-section .problems-grid .problem-card .problem-icon{width:3.5rem;height:3.5rem;background:linear-gradient(135deg,#556b2f1f,#556b2f0a);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#556b2f;font-size:1.5rem;margin:0 auto 1.5rem}.problems-section .problems-grid .problem-card h3{font-size:1.125rem;font-weight:700;text-align:center;margin-bottom:1rem;color:#334155}.problems-section .problems-grid .problem-card p{font-size:.875rem;color:#64748b;text-align:center;line-height:1.7}.features-section{padding:4rem 0;background-color:#f4f5f0}@media (min-width: 768px){.features-section{padding:5rem 0}}.features-section .section-header{text-align:center;margin-bottom:3rem}.features-section .section-header h2{font-size:1.875rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#334155;margin-top:1rem;margin-bottom:1.5rem}@media (min-width: 768px){.features-section .section-header h2{font-size:2.25rem}}.features-section .section-header p{color:#64748b;margin-top:1.5rem}.features-section .features-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width: 768px){.features-section .features-grid{grid-template-columns:repeat(2,1fr)}}.features-section .features-grid .feature-card{position:relative;overflow:hidden;border-radius:1rem;box-shadow:0 8px 32px #00000026;height:22rem;transition:box-shadow .4s ease}.features-section .features-grid .feature-card:hover{box-shadow:0 16px 48px #0003}.features-section .features-grid .feature-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .7s cubic-bezier(.25,.46,.45,.94)}.features-section .features-grid .feature-card:hover img{transform:scale(1.08)}.features-section .features-grid .feature-card .feature-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.4) 50%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;color:#fff}.features-section .features-grid .feature-card .feature-overlay .feature-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.features-section .features-grid .feature-card .feature-overlay .feature-header i{color:#d4af37;font-size:1.5rem}.features-section .features-grid .feature-card .feature-overlay .feature-header h3{font-size:1.375rem;font-weight:700;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;color:#fff}.features-section .features-grid .feature-card .feature-overlay p{color:#ffffffd9;font-size:.875rem;line-height:1.7;opacity:0;transform:translateY(1rem);transition:opacity .4s ease,transform .4s ease}@media (min-width: 768px){.features-section .features-grid .feature-card .feature-overlay:hover p{opacity:1;transform:translateY(0)}}@media (max-width: 767px){.features-section .features-grid .feature-card.is-visible .feature-overlay p{opacity:1;transform:translateY(0)}}.plans-section{padding:4rem 0;background-color:#fff}@media (min-width: 768px){.plans-section{padding:5rem 0}}.plans-section .section-header{text-align:center;margin-bottom:3rem}.plans-section .section-header h2{font-size:1.875rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#334155;margin-top:1rem;margin-bottom:1.5rem}@media (min-width: 768px){.plans-section .section-header h2{font-size:2.25rem}}.plans-section .section-header p{color:#64748b;margin-top:1.5rem}.plans-section .plans-grid{display:grid;grid-template-columns:1fr;gap:2rem;max-width:75rem;margin:0 auto 3rem}@media (min-width: 768px){.plans-section .plans-grid{grid-template-columns:repeat(3,1fr)}}.plans-section .plans-grid .plan-card{background:#fff;border-radius:1rem;padding:2.5rem 2rem 2rem;box-shadow:0 4px 16px #0000000f;border:1px solid #e2e8f0;transition:all .4s cubic-bezier(.25,.46,.45,.94);position:relative;text-align:center;overflow:visible}.plans-section .plans-grid .plan-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#556b2f,#7c9c45);opacity:0;transition:opacity .3s ease}.plans-section .plans-grid .plan-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001f}.plans-section .plans-grid .plan-card:hover:before{opacity:1}.plans-section .plans-grid .plan-card__icon{width:3.5rem;height:3.5rem;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#556b2f1a,#556b2f0a);border-radius:12px;color:#556b2f;font-size:1.25rem}.plans-section .plans-grid .plan-card__icon--featured{background:linear-gradient(135deg,#d4af3726,#d4af370d);color:#d4af37}.plans-section .plans-grid .plan-card--featured{border:2px solid #556b2f;box-shadow:0 8px 24px #556b2f1f}.plans-section .plans-grid .plan-card--featured:before{opacity:1;background:linear-gradient(90deg,#556b2f,#d4af37)}@media (min-width: 768px){.plans-section .plans-grid .plan-card--featured{transform:translateY(-1rem)}}@media (min-width: 768px){.plans-section .plans-grid .plan-card--featured:hover{transform:translateY(calc(-1rem - 8px))}}.plans-section .plans-grid .plan-card--featured .plan-badge{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#d4af37,#dabb55);color:#fff;font-size:.75rem;font-weight:700;padding:.25rem 1.5rem;border-radius:9999px;box-shadow:0 4px 12px #d4af374d;letter-spacing:.05em}.plans-section .plans-grid .plan-card h3{font-size:1.25rem;font-weight:700;color:#334155;margin-bottom:1rem}.plans-section .plans-grid .plan-card .plan-price{color:#556b2f;font-weight:700;font-size:2.25rem;margin-bottom:.25rem}.plans-section .plans-grid .plan-card .plan-price .period{font-size:.875rem;color:#64748b;font-weight:400}.plans-section .plans-grid .plan-card .plan-unit-price{font-size:.875rem;color:#64748b;margin-bottom:1.5rem}.plans-section .plans-grid .plan-card .plan-slots{text-align:center;background-color:#f1f5f9;padding:1rem;border-radius:.5rem;font-weight:700;color:#334155;margin-top:1.5rem}.plans-section .plans-grid .plan-card .plan-slots--featured{background:linear-gradient(135deg,#556b2f1a,#556b2f0d);color:#556b2f}.plans-section .pay-as-you-go{max-width:64rem;margin:0 auto 3rem;background:#fff;padding:2rem;border-radius:1rem;box-shadow:0 4px 16px #0000000f;border:1px solid #e2e8f0;transition:transform .3s ease,box-shadow .3s ease}.plans-section .pay-as-you-go:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.plans-section .pay-as-you-go .pay-as-you-go-content{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:1.5rem}@media (min-width: 768px){.plans-section .pay-as-you-go .pay-as-you-go-content{flex-direction:row}}.plans-section .pay-as-you-go .pay-as-you-go-content .pay-as-you-go-info h4{font-weight:700;font-size:1.125rem;margin-bottom:.25rem}.plans-section .pay-as-you-go .pay-as-you-go-content .pay-as-you-go-info p{font-size:.875rem;color:#64748b}.plans-section .pay-as-you-go .pay-as-you-go-content .pay-as-you-go-price{text-align:right}.plans-section .pay-as-you-go .pay-as-you-go-content .pay-as-you-go-price .price{font-size:1.5rem;font-weight:700;color:#556b2f}.plans-section .pay-as-you-go .pay-as-you-go-content .pay-as-you-go-price .unit{font-size:.875rem;color:#64748b}.plans-section .pay-as-you-go .pay-as-you-go-content .pay-as-you-go-price .note{font-size:.75rem;color:#94a3b8;margin-top:.25rem}.plans-section .pay-as-you-go-cta{max-width:64rem;margin:0 auto 3rem;text-align:center}.plans-section .pay-as-you-go-cta .cta-button{display:inline-flex;align-items:center;gap:1rem;background:linear-gradient(135deg,#d4af37,#d8b74b);color:#3e4f22;font-weight:700;font-size:1.125rem;padding:1.5rem 3rem;border-radius:9999px;transition:all .3s ease;box-shadow:0 8px 24px #d4af3740;transform:translateY(0);text-decoration:none}@media (min-width: 768px){.plans-section .pay-as-you-go-cta .cta-button{font-size:1.25rem;padding:1.5rem 3rem}}.plans-section .pay-as-you-go-cta .cta-button:hover{transform:translateY(-4px);box-shadow:0 12px 32px #d4af3759}.plans-section .plan-benefits{background:linear-gradient(135deg,#3e4f22,#556b2f);color:#fff;padding:2.5rem;border-radius:1.25rem;box-shadow:0 16px 48px #0003;max-width:80rem;margin:0 auto;text-align:center;position:relative;overflow:hidden}.plans-section .plan-benefits:before{content:"";position:absolute;inset:0;opacity:.08;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48ZyBmaWxsPSIjZmZmIiBmaWxsLW9wYWNpdHk9IjAuMSI+PHBhdGggZD0iTTM2IDM0VjIySDE4djEySDEyVjEwSDQyVjM0SDM2eiIvPjwvZz48L2c+PC9zdmc+)}.plans-section .plan-benefits:after{content:"";position:absolute;top:-50%;right:-20%;width:60%;height:200%;background:radial-gradient(ellipse,rgba(212,175,55,.08),transparent 70%);pointer-events:none}.plans-section .plan-benefits .benefits-content{position:relative;z-index:10}.plans-section .plan-benefits .benefits-content h3{font-size:1.5rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;margin-bottom:2rem;color:#d4af37}@media (min-width: 768px){.plans-section .plan-benefits .benefits-content h3{font-size:1.875rem}}.plans-section .plan-benefits .benefits-content .benefits-grid{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2rem}@media (min-width: 768px){.plans-section .plan-benefits .benefits-content .benefits-grid{flex-direction:row;gap:4rem}}.plans-section .plan-benefits .benefits-content .benefits-grid--equal .benefit-item .benefit-value{font-size:2rem!important}@media (min-width: 768px){.plans-section .plan-benefits .benefits-content .benefits-grid--equal .benefit-item .benefit-value{font-size:2rem!important}}.plans-section .plan-benefits .benefits-content .benefits-grid .benefit-item{display:flex;flex-direction:column;align-items:center}.plans-section .plan-benefits .benefits-content .benefits-grid .benefit-item .benefit-label{font-size:.875rem;color:#fffc;margin-top:.375rem}.plans-section .plan-benefits .benefits-content .benefits-grid .benefit-item .benefit-value{font-size:2.25rem;font-weight:700;color:#fff;margin-bottom:.25rem}@media (min-width: 768px){.plans-section .plan-benefits .benefits-content .benefits-grid .benefit-item .benefit-value{font-size:3rem}}.plans-section .plan-benefits .benefits-content .benefits-grid .benefit-item .benefit-value .highlight{color:#d4af37}.plans-section .plan-benefits .benefits-content .benefits-grid .benefit-item .benefit-badge{background:linear-gradient(135deg,#d4af37,#dabb55);color:#3e4f22;font-size:.75rem;font-weight:700;padding:.25rem 1rem;border-radius:9999px}.plans-section .plan-benefits .benefits-content .benefits-grid .benefit-item .benefit-text{font-size:1.125rem;font-weight:700;color:#fff;margin-top:1rem}@media (min-width: 768px){.plans-section .plan-benefits .benefits-content .benefits-grid .benefit-item .benefit-text{font-size:1.5rem}}.plans-section .plan-benefits .benefits-content .benefits-grid .benefits-divider{display:none;width:1px;height:6rem;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.3),transparent)}@media (min-width: 768px){.plans-section .plan-benefits .benefits-content .benefits-grid .benefits-divider{display:block}}.plans-section .plan-benefits .benefits-content .benefits-note{margin-top:2rem;font-size:.875rem;color:#fffc}.plans-section .plan-benefits-cta{text-align:center;margin-top:3rem;max-width:80rem;margin-left:auto;margin-right:auto}.plans-section .plan-benefits-cta .cta-button{display:inline-flex;align-items:center;gap:1rem;background:linear-gradient(135deg,#d4af37,#d8b74b);color:#3e4f22;font-weight:700;font-size:1.125rem;padding:1.5rem 3rem;border-radius:9999px;transition:all .3s ease;box-shadow:0 8px 24px #d4af3740;transform:translateY(0);text-decoration:none;animation:subtle-pulse 3s ease-in-out infinite}@media (min-width: 768px){.plans-section .plan-benefits-cta .cta-button{font-size:1.25rem;padding:1.5rem 3rem}}.plans-section .plan-benefits-cta .cta-button:hover{transform:translateY(-4px);box-shadow:0 12px 32px #d4af3759;animation:none}.simulator-section{padding:4rem 0;background:linear-gradient(180deg,#f4f5f0,#fff)}@media (min-width: 768px){.simulator-section{padding:5rem 0}}.simulator-section .section-header{text-align:center;margin-bottom:3rem}.simulator-section .section-header h2{font-size:1.875rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#334155;margin-top:1rem}@media (min-width: 768px){.simulator-section .section-header h2{font-size:2.25rem}}.simulator-section .section-header p{color:#64748b;max-width:36rem;margin:1rem auto 0}.simulator-section .simulator-card{max-width:56rem;margin:0 auto;background:#fff;border-radius:1.25rem;box-shadow:0 8px 32px #00000014;border:1px solid #f1f5f9;overflow:hidden}.simulator-section .simulator-input-area{padding:2rem;display:flex;flex-direction:column;gap:2rem;background:linear-gradient(180deg,#556b2f05,#fff)}@media (min-width: 768px){.simulator-section .simulator-input-area{padding:2.5rem 3rem}}.simulator-section .simulator-input-row{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 768px){.simulator-section .simulator-input-row{grid-template-columns:1fr 1fr;gap:2rem}}.simulator-section .simulator-input-group{display:flex;align-items:flex-start;gap:1.5rem;background:#fff;padding:1.5rem 2rem;border-radius:1rem;border:1.5px solid #f1f5f9;transition:border-color .3s ease,box-shadow .3s ease}.simulator-section .simulator-input-group:hover{border-color:#556b2f40;box-shadow:0 4px 16px #556b2f0f}.simulator-section .simulator-input-group:focus-within{border-color:#556b2f;box-shadow:0 4px 20px #556b2f1f}@media (min-width: 768px){.simulator-section .simulator-input-group--wide{max-width:50%}}.simulator-section .simulator-input-group__icon{width:2.75rem;height:2.75rem;background:linear-gradient(135deg,#556b2f1f,#556b2f0a);border-radius:.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.125rem}.simulator-section .simulator-input-group__icon i{color:#556b2f;font-size:1.125rem}.simulator-section .simulator-input-group__body{flex:1;min-width:0}.simulator-section .simulator-input-group__body label{display:block;font-size:.8125rem;font-weight:600;color:#94a3b8;margin-bottom:.375rem;letter-spacing:.01em}.simulator-section .simulator-input-wrap{display:flex;align-items:center;gap:.5rem}.simulator-section .simulator-input-wrap input[type=number]{width:6rem;padding:.5rem .75rem;border:none;border-bottom:2px solid #e2e8f0;border-radius:0;font-size:1.5rem;font-weight:700;color:#334155;background:transparent;text-align:left;transition:border-color .3s ease;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif}.simulator-section .simulator-input-wrap input[type=number]:focus{outline:none;border-bottom-color:#556b2f}.simulator-section .simulator-input-wrap input[type=number]{-moz-appearance:textfield}.simulator-section .simulator-input-wrap input[type=number]::-webkit-outer-spin-button,.simulator-section .simulator-input-wrap input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.simulator-section .simulator-input-wrap select{width:100%;padding:.5rem .75rem;border:none;border-bottom:2px solid #e2e8f0;border-radius:0;font-size:1.0625rem;font-weight:600;color:#334155;background:transparent;transition:border-color .3s ease;font-family:inherit;cursor:pointer}.simulator-section .simulator-input-wrap select:focus{outline:none;border-bottom-color:#556b2f}.simulator-section .simulator-input-wrap .simulator-input-unit{font-size:1.125rem;font-weight:700;color:#94a3b8}.simulator-section .simulator-btn-wrap{text-align:center;padding-top:.5rem}.simulator-section .simulator-btn{display:inline-flex;align-items:center;justify-content:center;gap:.625rem;background:linear-gradient(135deg,#556b2f,#6d893c);color:#fff;font-weight:700;font-size:1.0625rem;padding:1rem 2.5rem;border-radius:9999px;border:none;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #556b2f40;position:relative;overflow:hidden}.simulator-section .simulator-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transform:translate(-100%);transition:transform .5s ease}.simulator-section .simulator-btn:hover{transform:translateY(-3px);box-shadow:0 10px 28px #556b2f59}.simulator-section .simulator-btn:hover:before{transform:translate(100%)}.simulator-section .simulator-btn:active{transform:translateY(-1px)}.simulator-section .simulator-btn i{font-size:1rem}.simulator-section .simulator-result{border-top:1px solid #f1f5f9;padding:2rem;background:#f8fafc;animation:sim-fade-in .5s ease}@media (min-width: 768px){.simulator-section .simulator-result{padding:2.5rem}}@keyframes sim-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.simulator-section .simulator-result__summary{text-align:center;margin-bottom:2rem}.simulator-section .simulator-result__total{display:inline-flex;align-items:baseline;gap:.5rem;background:#fff;padding:1rem 2rem;border-radius:1rem;box-shadow:0 2px 12px #0000000f;border:1px solid #e2e8f0}.simulator-section .simulator-result__total-label{font-size:.875rem;color:#64748b;font-weight:600}.simulator-section .simulator-result__total-value{font-size:2rem;font-weight:800;color:#556b2f;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif}.simulator-section .simulator-result__total-unit{font-size:.875rem;color:#64748b;font-weight:600}.simulator-section .simulator-result__recommendation{text-align:center;margin-bottom:3rem;padding:2rem;background:linear-gradient(135deg,#556b2f0a,#d4af370f);border-radius:1rem;border:1px solid rgba(212,175,55,.2)}.simulator-section .simulator-result__badge{display:inline-flex;align-items:center;gap:.375rem;background:linear-gradient(135deg,#d4af37,#d8b74b);color:#fff;font-size:.8125rem;font-weight:700;padding:.375rem 1rem;border-radius:9999px;margin-bottom:1.5rem}.simulator-section .simulator-result__badge i{font-size:.75rem}.simulator-section .simulator-result__plan-name{font-size:1.75rem;font-weight:800;color:#334155;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;margin-bottom:.25rem}@media (min-width: 768px){.simulator-section .simulator-result__plan-name{font-size:2rem}}.simulator-section .simulator-result__plan-price{font-size:1.25rem;font-weight:700;color:#556b2f;margin-bottom:1rem}.simulator-section .simulator-result__plan-reason{font-size:.9375rem;color:#64748b;line-height:1.7}.simulator-section .simulator-result__comparison{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem}@media (min-width: 768px){.simulator-section .simulator-result__comparison{grid-template-columns:repeat(2,1fr)}}.simulator-section .sim-compare-card{background:#fff;border-radius:.875rem;padding:1.5rem;border:1.5px solid #e2e8f0;transition:border-color .3s ease,box-shadow .3s ease}.simulator-section .sim-compare-card--recommended{border-color:#d4af37;box-shadow:0 4px 16px #d4af3726;position:relative}.simulator-section .sim-compare-card--recommended:before{content:"BEST";position:absolute;top:-.5rem;right:1rem;background:#d4af37;color:#fff;font-size:.6875rem;font-weight:800;padding:.125rem .5rem;border-radius:4px;letter-spacing:.05em}.simulator-section .sim-compare-card .sim-compare-card__name{font-size:1rem;font-weight:700;color:#334155;margin-bottom:.25rem}.simulator-section .sim-compare-card .sim-compare-card__price{font-size:1.25rem;font-weight:800;color:#556b2f;margin-bottom:1rem}.simulator-section .sim-compare-card .sim-compare-card__price span{font-size:.8125rem;font-weight:600;color:#94a3b8}.simulator-section .sim-compare-card .sim-compare-card__detail{font-size:.8125rem;color:#64748b;line-height:1.6}.simulator-section .sim-compare-card .sim-compare-card__detail .sim-compare-card__detail-row{display:flex;justify-content:space-between;padding:.25rem 0;border-bottom:1px dashed #f1f5f9}.simulator-section .sim-compare-card .sim-compare-card__detail .sim-compare-card__detail-row:last-child{border-bottom:none}.simulator-section .sim-compare-card .sim-compare-card__detail .sim-compare-card__detail-label{color:#94a3b8}.simulator-section .sim-compare-card .sim-compare-card__detail .sim-compare-card__detail-value{font-weight:600;color:#475569}.simulator-section .sim-compare-card .sim-compare-card__detail .sim-compare-card__detail-value--over{color:#ef4444}.simulator-section .sim-compare-card .sim-compare-card__detail .sim-compare-card__detail-value--saving{color:#16a34a}.simulator-section .simulator-result__note{text-align:center;font-size:.8125rem;color:#94a3b8;line-height:1.7}.simulator-section .simulator-result__note a{color:#556b2f;text-decoration:underline}.payment-section{padding:4rem 0;background-color:#f4f5f0}@media (min-width: 768px){.payment-section{padding:5rem 0}}.payment-section h2{font-size:1.875rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;text-align:center;margin-bottom:1.5rem;color:#334155}.payment-section .payment-description{text-align:center;color:#64748b;margin-bottom:3rem}.payment-section .payment-methods{display:grid;grid-template-columns:1fr;gap:3rem;max-width:80rem;margin:0 auto}@media (min-width: 768px){.payment-section .payment-methods{grid-template-columns:repeat(2,1fr)}}.payment-section .payment-methods .payment-card{background:#fff;padding:2rem;border-radius:1rem;border:1px solid #e2e8f0;box-shadow:0 4px 16px #0000000f;position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.payment-section .payment-methods .payment-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.payment-section .payment-methods .payment-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#556b2f,#7c9c45)}.payment-section .payment-methods .payment-card--accent:before{background:linear-gradient(90deg,#d4af37,#dabb55)}.payment-section .payment-methods .payment-card h3{font-size:1.25rem;font-weight:700;text-align:center;color:#334155;margin-bottom:1.5rem}.payment-section .payment-methods .payment-card h3 span{font-size:.875rem;font-weight:400;color:#64748b}.payment-section .payment-methods .payment-card .payment-steps{position:relative}.payment-section .payment-methods .payment-card .payment-steps:before{content:"";position:absolute;left:1.5rem;top:1.5rem;bottom:1.5rem;width:2px;background:linear-gradient(to bottom,#cbd5e1,transparent)}.payment-section .payment-methods .payment-card .payment-steps .step{position:relative;display:flex;align-items:flex-start;gap:1.5rem;margin-bottom:2rem}.payment-section .payment-methods .payment-card .payment-steps .step:last-child{margin-bottom:0}.payment-section .payment-methods .payment-card .payment-steps .step .step-number{z-index:10;flex-shrink:0;width:3rem;height:3rem;background-color:#fff;border:2px solid #556b2f;color:#556b2f;border-radius:9999px;display:flex;align-items:center;justify-content:center;font-weight:700;box-shadow:0 2px 8px #00000014;transition:all .3s ease}.payment-section .payment-methods .payment-card .payment-steps .step--active .step-number{background:linear-gradient(135deg,#556b2f,#72903f);color:#fff;border-color:#556b2f}.payment-section .payment-methods .payment-card .payment-steps .step--accent .step-number{border-color:#d4af37;color:#d4af37}.payment-section .payment-methods .payment-card .payment-steps .step--accent.step--active .step-number{background:linear-gradient(135deg,#d4af37,#dabb55);color:#fff}.payment-section .payment-methods .payment-card .payment-steps .step .step-content{padding-top:.5rem}.payment-section .payment-methods .payment-card .payment-steps .step .step-content h4{font-weight:700;font-size:1.125rem;margin-bottom:.25rem}.payment-section .payment-methods .payment-card .payment-steps .step .step-content p{font-size:.875rem;color:#334155;line-height:1.6}.payment-section .payment-methods .payment-card .payment-steps .step .step-content p .highlight{color:#556b2f;font-weight:700}.payment-section .payment-methods .payment-card .payment-steps .step .step-content p .highlight-accent{color:#d4af37;font-weight:700}.payment-section .payment-methods .payment-card .payment-steps .step .step-content p .underline{border-bottom:1px solid rgba(212,175,55,.5)}.payment-section .payment-methods .payment-card .payment-steps .step .step-content .step-example{margin-top:1rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:1rem;border-radius:.5rem;border:1px solid #e2e8f0;font-size:.75rem;color:#64748b}.flow-section{padding:4rem 0;background-color:#fff}@media (min-width: 768px){.flow-section{padding:5rem 0}}.flow-section .section-header{text-align:center;margin-bottom:3rem}.flow-section .section-header h2{font-size:1.875rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#334155;margin-top:1rem}@media (min-width: 768px){.flow-section .section-header h2{font-size:2.25rem}}.flow-section .flow-grid{display:grid;grid-template-columns:1fr;gap:2rem;max-width:75rem;margin:0 auto}@media (min-width: 768px){.flow-section .flow-grid{grid-template-columns:repeat(4,1fr)}}.flow-section .flow-grid .flow-item{text-align:center}.flow-section .flow-grid .flow-item .flow-image-wrapper{margin-bottom:1.5rem;position:relative;overflow:hidden;border-radius:.75rem}.flow-section .flow-grid .flow-item .flow-image-wrapper img{width:100%;height:12rem;object-fit:cover;box-shadow:0 4px 12px #0000001a;transition:transform .5s ease}.flow-section .flow-grid .flow-item .flow-image-wrapper:hover img{transform:scale(1.06)}.flow-section .flow-grid .flow-item .flow-image-wrapper .flow-number{position:absolute;bottom:-1rem;right:-1rem;width:3rem;height:3rem;background:linear-gradient(135deg,#556b2f,#72903f);color:#fff;border-radius:9999px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem;border:4px solid white;box-shadow:0 4px 12px #00000026}.flow-section .flow-grid .flow-item h3{font-size:1.125rem;font-weight:700;margin-bottom:1rem;color:#334155}.flow-section .flow-grid .flow-item p{font-size:.875rem;color:#64748b;line-height:1.7;text-align:left}.stores-section{padding:4rem 0;background-color:#fff}@media (min-width: 768px){.stores-section{padding:5rem 0}}.stores-section .section-header{text-align:center;margin-bottom:3rem}.stores-section .section-header h2{font-size:1.875rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#334155;margin-top:1rem}@media (min-width: 768px){.stores-section .section-header h2{font-size:2.25rem}}.stores-section .section-header p{color:#64748b;margin-top:1.5rem}.stores-section .section-header .section-note{color:#556b2f;font-weight:600;margin-top:1rem;font-size:1rem}@media (min-width: 768px){.stores-section .section-header .section-note{font-size:1.125rem}}.stores-section .stores-grid{display:grid;grid-template-columns:1fr;gap:3rem;max-width:80rem;margin:0 auto}@media (min-width: 768px){.stores-section .stores-grid{grid-template-columns:repeat(2,1fr)}}.stores-section .stores-grid .store-card{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;padding:3rem;box-shadow:0 4px 16px #0000000f;transition:transform .3s ease,box-shadow .3s ease}.stores-section .stores-grid .store-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.stores-section .stores-grid .store-card h3{font-size:1.5rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#556b2f;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:3px solid;border-image:linear-gradient(90deg,#556b2f,#d4af37) 1}.stores-section .stores-grid .store-card .store-info{display:flex;flex-direction:column;gap:1.5rem}.stores-section .stores-grid .store-card .store-item{display:flex;flex-direction:column;gap:.5rem}@media (min-width: 768px){.stores-section .stores-grid .store-card .store-item{flex-direction:row;gap:1.5rem}}.stores-section .stores-grid .store-card .store-item .store-label{font-weight:700;color:#334155;font-size:.875rem;min-width:6rem;flex-shrink:0}@media (min-width: 768px){.stores-section .stores-grid .store-card .store-item .store-label{font-size:1rem}}.stores-section .stores-grid .store-card .store-item .store-value{color:#334155;font-size:.875rem;line-height:1.7;flex:1}@media (min-width: 768px){.stores-section .stores-grid .store-card .store-item .store-value{font-size:1rem}}.stores-section .stores-grid .store-card .store-item .store-value p{margin:0 0 .5rem;color:#334155}.stores-section .stores-grid .store-card .store-item .store-value .map-link{display:inline-flex;align-items:center;gap:4px;color:#556b2f;text-decoration:underline;margin-top:.5rem;transition:color .3s ease}.stores-section .stores-grid .store-card .store-item .store-value .map-link:hover{color:#3e4f22}.stores-section .stores-grid .store-card .store-item .store-value .store-note{font-size:.75rem;color:#64748b;margin-top:.5rem;font-style:italic}.stores-section .stores-grid .store-card .store-map{margin-top:2rem;border-radius:.75rem;overflow:hidden;box-shadow:0 2px 8px #0000001a}.stores-section .stores-grid .store-card .store-map iframe{width:100%;height:300px;border:0;display:block}.faq-section{padding:4rem 0;background-color:#f4f5f0}@media (min-width: 768px){.faq-section{padding:5rem 0}}.faq-section .section-header{text-align:center;margin-bottom:3rem}.faq-section .section-header h2{font-size:1.875rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#334155;margin-top:1rem}@media (min-width: 768px){.faq-section .section-header h2{font-size:2.25rem}}.faq-section .faq-list{max-width:64rem;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.faq-section .faq-list .faq-item{background:#fff;padding:2rem;border-radius:1rem;box-shadow:0 2px 12px #0000000a;border:1px solid #f1f5f9;transition:transform .3s ease,box-shadow .3s ease}.faq-section .faq-list .faq-item:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.faq-section .faq-list .faq-item .faq-question{display:flex;align-items:flex-start;gap:1.5rem}.faq-section .faq-list .faq-item .faq-question .faq-label{color:#fff;background:linear-gradient(135deg,#556b2f,#72903f);font-weight:700;font-size:.875rem;width:2rem;height:2rem;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.faq-section .faq-list .faq-item .faq-question h3{font-size:1.0625rem;font-weight:700;color:#334155;padding-top:.1875rem}.faq-section .faq-list .faq-item .faq-answer{display:flex;align-items:flex-start;gap:1.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #f1f5f9}.faq-section .faq-list .faq-item .faq-answer .faq-label{color:#fff;background:linear-gradient(135deg,#d4af37,#dabb55);font-weight:700;font-size:.875rem;width:2rem;height:2rem;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.faq-section .faq-list .faq-item .faq-answer p{color:#334155;line-height:1.75;padding-top:.1875rem}.faq-section .faq-list .faq-item .faq-answer p a{color:#556b2f;text-decoration:underline}.additional-services-section{padding:4rem 0;background-color:#f4f5f0}@media (min-width: 768px){.additional-services-section{padding:5rem 0}}.additional-services-section .section-header{text-align:center;margin-bottom:3rem}.additional-services-section .section-header h2{font-size:1.875rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#334155;margin-bottom:0}@media (min-width: 768px){.additional-services-section .section-header h2{font-size:2.25rem}}.additional-services-section .services-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:3rem}@media (min-width: 768px){.additional-services-section .services-grid{grid-template-columns:repeat(3,1fr)}}.additional-services-section .services-grid .service-card{background:#fff;padding:3rem;border-radius:1rem;box-shadow:0 4px 16px #0000000f;text-align:center;transition:transform .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}.additional-services-section .services-grid .service-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#556b2f,#d4af37);opacity:0;transition:opacity .3s ease}.additional-services-section .services-grid .service-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px #0000001a}.additional-services-section .services-grid .service-card:hover:before{opacity:1}.additional-services-section .services-grid .service-card .service-icon{width:4rem;height:4rem;background:linear-gradient(135deg,#556b2f1f,#556b2f0a);border-radius:1rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#556b2f;font-size:1.75rem;transition:background .3s ease}.additional-services-section .services-grid .service-card:hover .service-icon{background:linear-gradient(135deg,#556b2f2e,#556b2f14)}.additional-services-section .services-grid .service-card h3{font-size:1.25rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#334155;margin-bottom:1rem}.additional-services-section .services-grid .service-card .service-subtitle{font-size:.875rem;color:#556b2f;font-weight:600;margin-bottom:1.5rem}.additional-services-section .services-grid .service-card .service-description{font-size:.875rem;color:#64748b;line-height:1.7;margin:0}.additional-services-section .services-note{text-align:center;max-width:48rem;margin:0 auto}.additional-services-section .services-note .note-main{font-size:1rem;color:#334155;font-weight:600;margin-bottom:1rem}@media (min-width: 768px){.additional-services-section .services-note .note-main{font-size:1.125rem}}.additional-services-section .services-note .note-disclaimer{font-size:.875rem;color:#64748b;margin:0}.contact-section{padding:4rem 0;background:linear-gradient(135deg,#334155,#2d3a4e);color:#fff;position:relative;overflow:hidden}.contact-section:before{content:"";position:absolute;top:-30%;left:-10%;width:50%;height:160%;background:radial-gradient(ellipse,rgba(85,107,47,.06),transparent 70%);pointer-events:none}.contact-section .section-header{text-align:center;margin-bottom:3rem;position:relative}.contact-section .section-header h2{font-size:1.875rem;font-family:Optima,Optima,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica Neue,Arial,sans-serif;font-weight:700;margin-bottom:1.5rem;color:#fff}@media (min-width: 768px){.contact-section .section-header h2{font-size:2.25rem}}.contact-section .section-header p{color:#fff9;max-width:36rem;margin:0 auto}.contact-section .contact-content{display:flex;flex-direction:column;gap:3rem;max-width:80rem;margin:0 auto;position:relative}@media (min-width: 1024px){.contact-section .contact-content{flex-direction:row}}.contact-section .contact-content .contact-info{width:100%}@media (min-width: 1024px){.contact-section .contact-content .contact-info{width:33.333333%}}.contact-section .contact-content .contact-info .contact-card{background:#ffffff0f;padding:2rem;border-radius:1rem;backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);text-align:center;transition:background .3s ease}.contact-section .contact-content .contact-info .contact-card:hover{background:#ffffff1a}.contact-section .contact-content .contact-info .contact-card i{font-size:1.875rem;margin-bottom:1.5rem;color:#d4af37}.contact-section .contact-content .contact-info .contact-card h3{font-size:1.125rem;font-weight:700;margin-bottom:.25rem;color:#fff}.contact-section .contact-content .contact-info .contact-card p{font-size:1.125rem;font-weight:700;color:#fff;word-break:break-all}.contact-section .contact-content .contact-info .contact-note{font-size:.875rem;color:#ffffff80;text-align:center;margin-top:1.5rem}.contact-section .contact-content .contact-form-wrapper{width:100%}@media (min-width: 1024px){.contact-section .contact-content .contact-form-wrapper{width:66.666667%}}.contact-section .contact-content .contact-form-wrapper .contact-form{background:#fff;color:#334155;padding:2rem;border-radius:1rem;box-shadow:0 16px 48px #0003}@media (min-width: 768px){.contact-section .contact-content .contact-form-wrapper .contact-form{padding:2.5rem}}.contact-section .contact-content .contact-form-wrapper .contact-form .form-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:1.5rem}@media (min-width: 768px){.contact-section .contact-content .contact-form-wrapper .contact-form .form-grid{grid-template-columns:repeat(2,1fr)}}.contact-section .contact-content .contact-form-wrapper .contact-form .form-group{margin-bottom:1.5rem}.contact-section .contact-content .contact-form-wrapper .contact-form .form-group label{display:block;font-size:.875rem;font-weight:700;margin-bottom:.5rem}.contact-section .contact-content .contact-form-wrapper .contact-form .form-group label .required{color:#ef4444}.contact-section .contact-content .contact-form-wrapper .contact-form .form-group label .required-badge{display:inline-block;background-color:#ef4444;color:#fff;font-size:.7rem;font-weight:700;padding:.1rem .4rem;border-radius:.25rem;margin-left:.5rem;vertical-align:middle}.contact-section .contact-content .contact-form-wrapper .contact-form .form-group label .required-badge.hidden{display:none}.contact-section .contact-content .contact-form-wrapper .contact-form .form-group input,.contact-section .contact-content .contact-form-wrapper .contact-form .form-group select,.contact-section .contact-content .contact-form-wrapper .contact-form .form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid #e2e8f0;border-radius:.75rem;transition:border-color .3s ease,box-shadow .3s ease;font-family:inherit;font-size:1rem;background:#f8fafc}.contact-section .contact-content .contact-form-wrapper .contact-form .form-group input:focus,.contact-section .contact-content .contact-form-wrapper .contact-form .form-group select:focus,.contact-section .contact-content .contact-form-wrapper .contact-form .form-group textarea:focus{outline:none;border-color:#556b2f;box-shadow:0 0 0 3px #556b2f26;background:#fff}.contact-section .contact-content .contact-form-wrapper .contact-form .form-group textarea{resize:vertical;min-height:6rem}.contact-section .contact-content .contact-form-wrapper .contact-form .form-submit{text-align:center}.contact-section .contact-content .contact-form-wrapper .contact-form .form-submit button{background:linear-gradient(135deg,#556b2f,#69843a);color:#fff;font-weight:700;font-size:1.125rem;padding:1.5rem 3rem;border-radius:9999px;border:none;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 24px #556b2f40;transform:translateY(0);width:100%}@media (min-width: 768px){.contact-section .contact-content .contact-form-wrapper .contact-form .form-submit button{width:auto}}.contact-section .contact-content .contact-form-wrapper .contact-form .form-submit button:hover{transform:translateY(-4px);box-shadow:0 12px 32px #556b2f59}.contact-section .contact-content .contact-form-wrapper .contact-form .plan-selection-container{margin-bottom:1.5rem;transition:all .3s}.contact-section .contact-content .contact-form-wrapper .contact-form .plan-selection-container.hidden{display:none}.contact-section .contact-content .contact-form-wrapper .contact-form .consultation-dates-container{margin-bottom:1.5rem;transition:all .3s}.contact-section .contact-content .contact-form-wrapper .contact-form .consultation-dates-container.hidden{display:none}.contact-section .contact-content .contact-form-wrapper .contact-form .consultation-dates-container .date-time-row{display:flex;gap:.5rem}.contact-section .contact-content .contact-form-wrapper .contact-form .consultation-dates-container .date-time-row input[type=date],.contact-section .contact-content .contact-form-wrapper .contact-form .consultation-dates-container .date-time-row select{flex:1;width:0;min-width:0}.contact-section .contact-content .contact-form-wrapper .contact-form .form-privacy{margin-top:1rem}.contact-section .contact-content .contact-form-wrapper .contact-form .privacy-check{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#475569;cursor:pointer}.contact-section .contact-content .contact-form-wrapper .contact-form .privacy-check input[type=checkbox]{width:1.125rem;height:1.125rem;accent-color:#556b2f;cursor:pointer;flex-shrink:0}.contact-section .contact-content .contact-form-wrapper .contact-form .privacy-check a{color:#556b2f;text-decoration:underline;font-weight:600}.contact-section .contact-content .contact-form-wrapper .contact-form .privacy-check a:hover{color:#39481f}.stat-note{font-size:.6875rem;color:#94a3b8;margin-top:.25rem;font-weight:400}.corporate-footer{background:#1e293b;color:#e2e8f0;padding:3rem 0 1.5rem}.corporate-footer .footer-content{display:grid;grid-template-columns:1fr 2fr;gap:3rem;padding-bottom:2rem;border-bottom:1px solid #334155}@media (max-width: 768px){.corporate-footer .footer-content{grid-template-columns:1fr;gap:2rem}}.corporate-footer .footer-brand .footer-logo{height:48px;width:auto;filter:brightness(0) invert(1);margin-bottom:.75rem}.corporate-footer .footer-brand .footer-tagline{font-size:.875rem;color:#94a3b8;line-height:1.6}.corporate-footer .footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}@media (max-width: 640px){.corporate-footer .footer-links{grid-template-columns:1fr 1fr;gap:1.5rem}}.corporate-footer .footer-link-group h4{font-size:.8125rem;font-weight:700;color:#f1f5f9;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.corporate-footer .footer-link-group ul{list-style:none;padding:0;margin:0}.corporate-footer .footer-link-group li{margin-bottom:.5rem}.corporate-footer .footer-link-group a{font-size:.8125rem;color:#94a3b8;text-decoration:none;transition:color .2s}.corporate-footer .footer-link-group a:hover{color:#fff}.corporate-footer .footer-bottom{padding-top:1.5rem;text-align:center}.corporate-footer .footer-bottom p{font-size:.75rem;color:#64748b}
