html{scroll-behavior:smooth}body{color:#000;background:#fff;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,Hiragino Sans,Noto Sans JP,sans-serif;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}*{box-sizing:border-box;margin:0;padding:0}header{z-index:1000;background:#fff;border-bottom:1px solid #e0e0e0;padding:12px 16px;position:fixed;top:0;left:0;right:0}nav{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.logo{letter-spacing:1px;font-size:16px;font-weight:500}.nav-links{letter-spacing:.5px;gap:30px;font-size:14px;display:none}.nav-links a{color:#000;transition:color .3s}.nav-links a:hover{color:#ffd34a}.menu-toggle{cursor:pointer;flex-direction:column;justify-content:center;gap:4px;width:24px;height:24px;display:flex}.menu-toggle span{background:#111;border-radius:1px;height:2px;transition:transform .25s,opacity .25s;display:block}.menu-toggle.open span:first-child{transform:translateY(3px)rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-3px)rotate(-45deg)}.nav-overlay{z-index:900;background:#fff;border-bottom:1px solid #e0e0e0;transition:transform .25s;position:fixed;top:56px;left:0;right:0;transform:translateY(-100%)}.nav-overlay.open{transform:translateY(0)}.nav-overlay-inner{max-width:1200px;margin:0 auto;padding:16px}.nav-mobile-links{text-transform:uppercase;letter-spacing:1px;flex-direction:column;gap:8px;font-size:14px;display:flex}.nav-mobile-links a{padding:8px 0}.nav-mobile-links a:hover{color:#ffd34a}.hero-wrapper{margin-top:56px}.hero{background:#fff;justify-content:center;align-items:flex-end;height:100vh;min-height:420px;padding-bottom:60px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";mix-blend-mode:multiply;pointer-events:none;z-index:1;background:#0000004d;position:absolute;inset:0}.hero-slide{opacity:0;z-index:0;transition:opacity .9s;position:absolute;inset:0}.hero-slide img{object-fit:cover;width:100%;height:100%}.hero-slide:nth-child(4) img{object-position:60% 50%}.hero-slide.active{opacity:1}.hero-dots{z-index:3;gap:8px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.hero-dot{opacity:.7;cursor:pointer;background:0 0;border:1px solid #fff;border-radius:50%;width:6px;height:6px}.hero-dot.active{background:#fff}.scroll-indicator{text-align:center;z-index:3;animation:2s infinite bounce;position:relative}.scroll-indicator span{letter-spacing:2px;color:#f0f0f0;margin-bottom:10px;font-size:11px;display:block}.scroll-arrow{border-bottom:2px solid #f0f0f0;border-right:2px solid #f0f0f0;width:20px;height:20px;margin:0 auto;transform:rotate(45deg)}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}section{max-width:1200px;margin:0 auto;padding:80px 20px}h2{letter-spacing:2px;margin-bottom:32px;font-size:32px;font-weight:300}.about-container{max-width:960px;margin:0 auto;padding:80px 24px;display:block}.about-text{margin-bottom:40px}.about-text p{color:#333;margin-bottom:20px;line-height:1.8}.company-info{padding-left:0}.company-address span{line-height:1.6}.company-info ul{list-style:none}.company-info li{border-bottom:1px solid #e0e0e0;justify-content:space-between;gap:16px;padding:12px 0;display:flex}.company-info li:last-child{border-bottom:none}.company-info strong{color:#666;text-transform:uppercase;letter-spacing:1px;white-space:nowrap;font-size:12px;font-weight:400}.company-info span{font-size:14px}#projects{background:#fafafa}.projects-grid{grid-template-columns:1fr;gap:20px;margin-top:30px;display:grid}.project-card{text-align:center;cursor:default;background:#fff;border:1px solid #e0e0e0;padding:30px 24px;transition:transform .3s,box-shadow .3s}.project-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000000f}.project-card h3{color:#000;margin-bottom:10px;font-size:18px;font-weight:400}.project-card p{color:#666;font-size:14px;line-height:1.6}.contact-container{grid-template-columns:1fr;align-items:start;gap:40px;display:grid}.contact-text p{color:#333;margin-bottom:12px;line-height:1.8}.contact-form{flex-direction:column;gap:25px;display:flex}.contact-links{flex-direction:column;gap:12px;margin-top:24px;font-size:14px;display:flex}.contact-item .label{text-transform:uppercase;letter-spacing:1px;color:#777;min-width:60px;font-size:11px;display:inline-block}.contact-item a{border-bottom:1px solid #0000;text-decoration:none}.contact-item a:hover{border-bottom-color:#ffd34a}.submit-btn{color:#fff;text-transform:uppercase;letter-spacing:1.5px;cursor:pointer;background:#000;border:none;align-self:flex-start;padding:10px 28px;font-size:12px;transition:background .3s,color .3s}.submit-btn:hover{color:#000;background:#ffd34a}footer{color:#777;border-top:1px solid #e0e0e0;padding:16px;font-size:11px}.footer-inner{flex-direction:column;justify-content:center;align-items:center;gap:8px;max-width:1200px;margin:0 auto;display:flex}.footer-links{gap:12px;font-size:11px;display:flex}.footer-links a{color:#777}.footer-links a:hover{color:#000}@media (min-width:769px){header{padding:20px 40px}.hero-wrapper{margin-top:72px}section{padding:100px 40px}h2{margin-bottom:40px;font-size:36px}.about-container{gap:80px}.company-info{padding-left:40px}.projects-grid{grid-template-columns:repeat(3,1fr);gap:30px;margin-top:50px}.contact-container{grid-template-columns:1fr 1fr;gap:80px}.nav-links{display:flex}.menu-toggle,.nav-overlay{display:none}.footer-inner{flex-direction:row;justify-content:space-between;align-items:center}}@media (max-width:480px){.logo{font-size:14px}}
