.hero-section{background:var(--color-black);height:100vh;min-height:700px;position:relative;overflow:hidden}.video-background{object-fit:cover;opacity:.75;z-index:1;will-change:transform;width:100%;height:100%;position:absolute;top:0;left:0}.hero-overlay{z-index:1;background:linear-gradient(#0000 0%,#00000026 45%,#0009 100%);width:100%;height:100%;position:absolute;top:0;left:0}.key-message{z-index:2;text-align:center;justify-content:center;align-items:center;height:100%;padding:0 24px;display:flex;position:relative}.key-message-inner{max-width:1100px}.hero-kicker{letter-spacing:.35em;text-transform:uppercase;color:#ffffffbf;opacity:0;margin-bottom:28px;font-size:clamp(.8rem,1.4vw,1rem);font-weight:400;transition:opacity .8s .15s,transform .8s .15s;transform:translateY(16px)}.hero-kicker.is-in{opacity:1;transform:none}.hero-title{letter-spacing:.04em;color:var(--color-white);text-shadow:0 2px 24px #00000073;margin:0 0 32px;font-size:clamp(2.8rem,7vw,5.5rem);font-weight:900;line-height:1.15}.hero-title .line{display:block;overflow:hidden}.hero-title .line>span{padding-left:.55em;transition:transform .9s cubic-bezier(.22,1,.36,1);display:block;transform:translateY(110%)}.hero-title.is-in .line>span{transform:translateY(0)}html[lang=en] .hero-title .line{margin-bottom:-.18em;padding-bottom:.18em}html[lang=en] .hero-title .line>span{padding-left:0;transform:translateY(130%)}html[lang=en] .hero-title.is-in .line>span{transform:translateY(0)}.hero-title.is-in .line:nth-child(2)>span{transition-delay:.12s}.hero-lead{letter-spacing:.14em;color:#ffffffd1;word-break:keep-all;overflow-wrap:anywhere;opacity:0;margin:0;font-size:clamp(.95rem,2vw,1.25rem);font-weight:300;transition:opacity .8s .5s,transform .8s .5s;transform:translateY(16px)}.hero-lead.is-in{opacity:1;transform:none}.scroll-indicator{letter-spacing:.2em;text-transform:uppercase;color:var(--color-white);z-index:2;font-size:.75rem;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.scroll-indicator:after{content:"";background:var(--color-white);width:1px;height:40px;margin:15px auto 0;animation:2s ease-in-out infinite scrollLine;display:block}@keyframes scrollLine{0%,to{opacity:0;transform:translateY(-10px)}50%{opacity:1;transform:translateY(10px)}}.news-ticker-section{background:var(--color-white);padding:100px 0}.news-ticker-content{max-width:900px;margin:0 auto}.news-ticker-content .section-title{margin-bottom:60px}.news-ticker-list{flex-direction:column;gap:0;display:flex}.news-ticker-item{border-bottom:1px solid var(--color-gray-mid);color:inherit;align-items:baseline;gap:30px;padding:25px 0;text-decoration:none;transition:all .3s;display:flex}.news-ticker-item:first-child{border-top:1px solid var(--color-gray-mid)}.news-ticker-item:hover{transform:translate(5px)}.news-ticker-item time{color:var(--color-gray-dark);letter-spacing:.1em;flex-shrink:0;min-width:100px;font-size:.85rem;font-weight:400}.news-ticker-title{color:var(--color-black);font-size:1.05rem;font-weight:700;line-height:1.6}.news-ticker-more{text-align:center;margin-top:60px}.business-section{background:var(--color-white);padding:120px 0}.section-head{margin-bottom:70px}.biz-list{border-top:1px solid var(--color-gray-mid);max-width:1000px;margin:0 auto}.biz-item{border-bottom:1px solid var(--color-gray-mid);color:inherit;align-items:center;gap:40px;padding:40px 24px;text-decoration:none;transition:color .4s;display:flex;position:relative;overflow:hidden}.biz-item:before{content:"";transform-origin:0;z-index:0;background:#111;transition:transform .5s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:scaleX(0)}.biz-item:hover:before{transform:scaleX(1)}.biz-item:hover{color:var(--color-white)}.biz-num,.biz-body,.biz-arrow{z-index:1;position:relative}.biz-num{letter-spacing:.05em;color:var(--color-accent);min-width:2.5em;font-size:clamp(1.2rem,2.4vw,1.8rem);font-weight:900;transition:color .4s}.biz-item:hover .biz-num{color:var(--color-white)}.biz-body{flex:1}.biz-title{letter-spacing:.02em;margin:0 0 8px;font-size:clamp(1.2rem,2.6vw,1.7rem);font-weight:900;line-height:1.3}.biz-desc{color:var(--color-gray-dark);margin:0;font-size:.95rem;font-weight:300;line-height:1.7;transition:color .4s}.biz-item:hover .biz-desc{color:#ffffffd9}.biz-arrow{font-size:1.4rem;transition:transform .4s;transform:translate(0)}.biz-item:hover .biz-arrow{transform:translate(8px)}.philosophy-section{background:var(--color-gray-light);padding:100px 0}.philosophy-content{max-width:1000px;margin:0 auto}.philosophy-content .section-title{margin-bottom:60px}.philosophy-intro{color:var(--color-black);text-align:center;margin-bottom:80px;font-size:clamp(1rem,2vw,1.3rem);font-weight:300;line-height:2.2}.problem-list{margin:60px 0;padding:0;list-style:none}.problem-list li{border-top:1px solid var(--color-gray-mid);color:var(--color-black);align-items:flex-start;padding:30px 0;font-size:1.1rem;font-weight:400;line-height:1.8;display:flex}.problem-list li:last-child{border-bottom:1px solid var(--color-gray-mid)}.problem-list li:before{content:"—";color:var(--color-accent);flex-shrink:0;margin-right:20px;font-weight:700}.highlight-box{background:var(--color-white);border:1px solid var(--color-accent);text-align:center;margin:80px 0;padding:60px 40px}.highlight-box p{color:var(--color-black);margin:0;font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:400;line-height:2}.highlight-text{border-bottom:2px solid var(--color-accent);padding-bottom:2px;font-weight:700}.cta-section{text-align:center;padding:100px 0}.cta-title{letter-spacing:.05em;color:var(--color-black);margin-bottom:50px;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:900;line-height:1.6}@media screen and (width<=768px){.hero-section{min-height:600px}.hero-lead{letter-spacing:.06em}.news-ticker-section{padding:80px 0}.news-ticker-item{flex-direction:column;gap:8px;padding:20px 0}.business-section{padding:80px 0}.biz-item{align-items:flex-start;gap:20px;padding:30px 12px}.biz-arrow{display:none}.philosophy-section{padding:80px 0}.problem-list li{flex-direction:column}.problem-list li:before{margin-bottom:10px}.highlight-box{padding:40px 30px}.cta-section{padding:80px 0}}@media screen and (width<=480px){.hero-section{min-height:500px}}@media (prefers-reduced-motion:reduce){.hero-title .line>span,.hero-kicker,.hero-lead{opacity:1!important;transition:none!important;transform:none!important}.video-background{transform:none!important}.scroll-indicator:after{animation:none}}
