:root{--primary-color: #2563eb;--secondary-color: #475569;--accent-color: #f59e0b;--jpgo-color: #ef4444;--daijoubu-color: #10b981;--background-color: #0f172a;--surface-color: #1e293b;--text-color: #f8fafc;--text-muted: #94a3b8;--font-main: "Inter", sans-serif;--font-jp: "Noto Sans JP", sans-serif;--container-width: 1200px;--header-height: 80px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-main);background-color:var(--background-color);color:var(--text-color);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-jp);font-weight:700;line-height:1.2}a{text-decoration:none;color:inherit;transition:color .3s ease}ul{list-style:none}.container{max-width:var(--container-width);margin:0 auto;padding:0 20px}#header{position:fixed;top:0;left:0;width:100%;height:var(--header-height);background:#0f172acc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.1)}#header .container{display:flex;justify-content:space-between;align-items:center;width:100%}.logo{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent}nav ul{display:flex;gap:30px}nav a{font-weight:600;font-size:1rem;color:var(--text-muted)}nav a:hover{color:var(--text-color)}.hero{height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding-top:var(--header-height)}.hero-content{text-align:center;z-index:10;max-width:800px}.hero h1{font-size:4rem;margin-bottom:20px}.gradient-text{background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero p{font-size:1.5rem;color:var(--text-muted);margin-bottom:40px}.hero-buttons{display:flex;gap:20px;justify-content:center}.btn{padding:12px 30px;border-radius:50px;font-weight:600;font-size:1rem;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px #0003}.btn-primary{background:var(--primary-color);color:#fff}.btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.hero-background{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 50% 50%,#2563eb1a,#0f172a00 70%);z-index:1}.product-section{padding:100px 0;position:relative}.product-content{display:flex;align-items:center;gap:60px}.reverse .product-content{flex-direction:row-reverse}.product-text{flex:1}.product-image{flex:1;display:flex;justify-content:center}.badge{display:inline-block;padding:6px 12px;background:#ef444433;color:var(--jpgo-color);border-radius:20px;font-size:.875rem;font-weight:600;margin-bottom:20px}.badge-warm{background:#10b98133;color:var(--daijoubu-color)}.product-text h2{font-size:3rem;margin-bottom:20px}.description{font-size:1.125rem;color:var(--text-muted);margin-bottom:30px}.features li{margin-bottom:15px;font-size:1rem;display:flex;align-items:center;gap:10px}.btn-store{display:inline-block;margin-top:30px}.btn-store img{height:60px}.app-icon-wrapper{width:300px;height:300px;background:#ffffff0d;border-radius:60px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.app-icon{width:200px;height:200px;object-fit:contain;border-radius:40px}#jpgo .app-icon{background-color:#fff;padding:15px}.company-section{padding:100px 0;background:var(--surface-color)}.company-section h2{text-align:center;font-size:2.5rem;margin-bottom:60px}.company-card{background:#ffffff08;border-radius:20px;padding:40px;display:flex;gap:40px;border:1px solid rgba(255,255,255,.05)}.company-details{flex:1}.detail-item{display:flex;margin-bottom:20px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:20px}.detail-item:last-child{border-bottom:none}.detail-item .label{width:120px;font-weight:600;color:var(--text-muted)}.company-map{flex:1;background:#334155;border-radius:10px;overflow:hidden;height:200px;display:flex;align-items:center;justify-content:center}footer{padding:40px 0;border-top:1px solid rgba(255,255,255,.1);text-align:center;color:var(--text-muted)}.footer-links{margin-top:20px;display:flex;justify-content:center;gap:20px}.footer-links a:hover{text-decoration:underline}@media(max-width:768px){.hero h1{font-size:2.5rem}.product-content,.reverse .product-content{flex-direction:column;text-align:center}.features li{justify-content:center}.company-card{flex-direction:column}.detail-item{flex-direction:column;gap:5px}}.map-image{width:100%;height:100%;object-fit:cover}
