*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,sans-serif;-webkit-font-smoothing:antialiased}.sr-ready .fade-in-up{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.fade-in-up.visible{opacity:1!important;transform:translateY(0)!important}.sr-ready .fade-in-left{opacity:0;transform:translate(-40px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.fade-in-left.visible{opacity:1!important;transform:translate(0)!important}.sr-ready .fade-in-right{opacity:0;transform:translate(40px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.fade-in-right.visible{opacity:1!important;transform:translate(0)!important}.sr-ready .stagger-children>*{opacity:0;transform:translateY(30px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}.stagger-children.visible>*:nth-child(1){transition-delay:0ms}.stagger-children.visible>*:nth-child(2){transition-delay:80ms}.stagger-children.visible>*:nth-child(3){transition-delay:.16s}.stagger-children.visible>*:nth-child(4){transition-delay:.24s}.stagger-children.visible>*:nth-child(5){transition-delay:.32s}.stagger-children.visible>*:nth-child(6){transition-delay:.4s}.stagger-children.visible>*{opacity:1!important;transform:translateY(0)!important}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.hero-animated-bg{background:linear-gradient(-45deg,#1b5e20,#2e7d32,#1a3a2a,#2d6b30,#1b5e20);background-size:400% 400%;animation:gradientShift 15s ease infinite}@keyframes float1{0%,to{transform:translate(0) rotate(0);opacity:.6}25%{transform:translate(80px,-60px) rotate(90deg);opacity:.8}50%{transform:translate(40px,-120px) rotate(180deg);opacity:.5}75%{transform:translate(-30px,-80px) rotate(270deg);opacity:.7}}@keyframes float2{0%,to{transform:translate(0) rotate(0);opacity:.5}33%{transform:translate(-60px,-90px) rotate(120deg);opacity:.7}66%{transform:translate(30px,-150px) rotate(240deg);opacity:.4}}@keyframes float3{0%,to{transform:translate(0) rotate(0);opacity:.4}50%{transform:translate(100px,-100px) rotate(180deg);opacity:.6}}.petal{position:absolute;pointer-events:none}.petal-1{animation:float1 12s ease-in-out infinite}.petal-2{animation:float2 16s ease-in-out infinite}.petal-3{animation:float3 20s ease-in-out infinite}.petal-4{animation:float1 14s ease-in-out infinite 2s}.petal-5{animation:float2 18s ease-in-out infinite 4s}.card-hover{transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1)}.card-hover:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001f}.header-glass{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background-color .3s ease}.logo-mark{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:#fff}.logo-mark:hover .logo-icon{transform:scale(1.05)}.logo-icon{transition:transform .3s ease}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.price-shimmer{background:linear-gradient(90deg,#2e7d32,#4caf50,#81c784,#4caf50,#2e7d32);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 4s linear infinite}.wave-divider{width:100%;overflow:hidden;line-height:0}.wave-divider svg{display:block;width:100%;height:60px}.activity-card{position:relative;overflow:hidden;border-radius:16px}.activity-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#1b5e2008,#2e7d320f);opacity:0;transition:opacity .3s ease}.activity-card:hover:before{opacity:1}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{box-shadow:0 0 #2e7d3266}50%{box-shadow:0 0 0 12px #2e7d3200}}.cta-pulse{animation:pulse 2.5s ease-in-out infinite}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.16,1,.3,1)}.faq-answer.open{grid-template-rows:1fr}.faq-answer>div{overflow:hidden}html{scroll-behavior:smooth}@media (max-width: 768px){.desktop-nav{display:none!important}.hamburger-btn{display:flex!important}}@media (min-width: 769px){.mobile-menu{display:none!important}}@media (prefers-reduced-motion: reduce){.sr-ready .fade-in-up,.sr-ready .fade-in-left,.sr-ready .fade-in-right,.sr-ready .stagger-children>*{opacity:1;transform:none;transition:none}}
