:root{--primary-color: #1d4ed8;--secondary-color: #6d28d9;--background-color: #f8fafc;--surface-color: #ffffff;--text-color: #0f172a;--text-muted: #475569;--font-main: "Inter", sans-serif;--font-jp: "Noto Sans JP", sans-serif;--container-width: 1200px;--header-height: 64px}*{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;-webkit-font-smoothing:antialiased}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 .2s ease}a,button,.business-card,.value-card,.btn-store-mini{cursor:pointer}.container{max-width:var(--container-width);margin:0 auto;padding:0 24px}#header{position:fixed;top:20px;left:50%;transform:translate(-50%);width:calc(100% - 48px);max-width:var(--container-width);height:var(--header-height);background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,0,0,.06);border-radius:50px;z-index:1000;display:flex;align-items:center;box-shadow:0 10px 30px #0000000d;transition:all .3s ease}#header .container.header-container{display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 24px}.logo{font-size:1.25rem;font-weight:800;color:var(--text-color);letter-spacing:-.5px;display:flex;align-items:center;gap:8px}.logo-accent{background:var(--primary-color);color:#fff;font-size:.75rem;font-weight:900;padding:2px 6px;border-radius:4px;letter-spacing:.5px}nav ul{display:flex;gap:24px}nav a{font-weight:600;font-size:.9rem;color:var(--text-muted)}nav a:hover{color:var(--text-color)}.message-section{padding:120px 0 70px;background:transparent;border-bottom:1px solid rgba(0,0,0,.03)}.message-content-wrapper{display:flex;gap:60px;align-items:stretch}.message-text{flex:1.2;display:flex;flex-direction:column;justify-content:center}.vision-subtitle{font-size:.75rem;font-weight:800;color:var(--primary-color);letter-spacing:2px;margin-bottom:12px}.message-text h3{font-size:2.2rem;margin-bottom:24px;color:var(--text-color);line-height:1.4}.gradient-text{background:var(--primary-color);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.message-text p{font-size:1rem;color:var(--text-muted);margin-bottom:20px;line-height:1.8}.message-text p:last-child{margin-bottom:0}.message-values{flex:.8;display:flex;flex-direction:column;gap:20px;justify-content:center}.value-card{background:#fff9;border:1px solid rgba(0,0,0,.05);border-radius:20px;padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.value-card:hover{transform:translateY(-2px);border-color:#3b82f64d;background:#fff;box-shadow:0 10px 25px #0000000a}.value-card-header{display:flex;align-items:center;gap:16px;margin-bottom:12px}.value-icon-wrapper{width:44px;height:44px;background:#3b82f60d;border:1px solid rgba(59,130,246,.15);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--primary-color);transition:all .3s ease}.value-card:hover .value-icon-wrapper{background:#3b82f61f;border-color:#3b82f640;transform:scale(1.05)}.value-card h4{font-size:1.15rem;color:var(--text-color)}.value-card h4 .en-sub{font-size:.7rem;font-weight:500;color:var(--text-muted);margin-left:6px}.value-card p{font-size:.9rem;color:var(--text-muted);line-height:1.6}.business-section{padding:100px 0;background:#fff;border-bottom:1px solid rgba(0,0,0,.03)}.business-section h2{font-size:2.2rem;margin-bottom:50px;text-align:center;letter-spacing:-.5px;color:var(--text-color)}.ai-hero-card{position:relative;background:#ffffffd9;border:1px solid rgba(59,130,246,.25);border-radius:28px;padding:36px;margin-bottom:40px;transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 20px 45px #0000000a}.ai-hero-card:hover{transform:translateY(-4px);border-color:#60a5fa80;box-shadow:0 30px 60px #3b82f614,0 0 40px #8b5cf605}.ai-header{margin-bottom:28px;border-bottom:1px solid rgba(0,0,0,.05);padding-bottom:18px}.ai-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ai-header .en-label{font-size:.75rem;font-weight:800;color:var(--primary-color);letter-spacing:2px}.pulse-indicator{display:inline-flex;align-items:center;gap:8px;background:#10b98114;border:1px solid rgba(16,185,129,.15);padding:4px 12px;border-radius:20px}.pulse-dot{width:6px;height:6px;background-color:#10b981;border-radius:50%;position:relative}.pulse-dot:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#10b981;border-radius:50%;animation:pulse-ring 1.8s infinite ease-out}.pulse-text{font-size:.7rem;font-weight:700;color:#059669;letter-spacing:.5px}.ai-header h3{font-size:1.8rem;margin-bottom:16px;color:var(--text-color)}.ai-desc{font-size:1.05rem;color:var(--text-muted);line-height:1.8}.sub-products{display:flex;gap:30px}.sub-product-item{flex:1;background:#fffc;border:1px solid rgba(0,0,0,.04);border-radius:20px;padding:28px;display:flex;gap:24px;align-items:flex-start;transition:all .3s cubic-bezier(.4,0,.2,1)}.sub-product-item:hover{background:#fff;border-color:#60a5fa4d;transform:translateY(-2px);box-shadow:0 15px 30px #0000000d}.sub-product-icon-wrapper{flex-shrink:0;width:64px;height:64px;background:#00000005;border:1px solid rgba(0,0,0,.06);border-radius:16px;display:flex;align-items:center;justify-content:center}.sub-app-icon{width:44px;height:44px;object-fit:contain;border-radius:8px}.sub-product-item:first-child .sub-app-icon{background-color:#fff;padding:4px}.sub-product-detail{flex-grow:1}.sub-product-title-badge{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-wrap:wrap;gap:10px}.sub-product-title-badge h4{font-size:1.1rem;color:var(--text-color);font-weight:700}.badge-mini{background:#3b82f614;color:var(--primary-color);font-size:.7rem;padding:3px 10px;border-radius:30px;font-weight:700}.badge-warm-mini{background:#10b98114;color:#059669}.sub-product-detail p{font-size:.9rem;color:var(--text-muted);line-height:1.6;margin-bottom:16px}.product-tags{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.product-tags .tag{font-size:.7rem;font-weight:600;color:var(--text-muted);background:#00000005;border:1px solid rgba(0,0,0,.05);padding:3px 10px;border-radius:30px}.btn-store-mini{display:inline-block;transition:transform .2s,opacity .2s}.btn-store-mini:hover{transform:translateY(-1px);opacity:.9}.btn-store-mini img{height:38px;display:block}.btn-action-link{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:700;color:var(--primary-color);margin-top:4px;transition:all .2s ease;text-decoration:none}.btn-action-link:hover{color:var(--secondary-color);transform:translate(3px)}.btn-action-link .arrow-svg{transition:transform .2s ease}.btn-action-link:hover .arrow-svg{transform:translate(2px)}.sub-app-svg{width:36px;height:36px}.other-ventures-section{margin-top:80px}.ventures-header{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:50px}.ventures-line{flex-grow:1;height:1px;background:#00000014}.ventures-header h4{font-size:1.1rem;color:var(--text-muted);display:flex;align-items:center;gap:8px}.ventures-header h4 .en-sub{font-size:.75rem;font-weight:500;color:#0003}.other-business-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.other-business-grid .business-card{background:#fff9;border:1px solid rgba(0,0,0,.04);border-radius:20px;padding:32px 28px;display:flex;flex-direction:column;min-height:240px;transition:all .3s cubic-bezier(.4,0,.2,1)}.other-business-grid .business-card:hover{transform:translateY(-3px);background:#fff;border-color:#00000014;box-shadow:0 15px 30px #00000008}.card-icon-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.card-icon-wrapper{width:42px;height:42px;background:#00000003;border:1px solid rgba(0,0,0,.05);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#0006;transition:all .3s ease}.other-business-grid .business-card:hover .card-icon-wrapper{background:#3b82f60d;border-color:#3b82f626;color:var(--primary-color);transform:scale(1.05)}.other-business-grid .business-card .en-label{font-size:.7rem;font-weight:700;color:#0000004d;letter-spacing:1.5px}.other-business-grid .business-card h3{font-size:1.25rem;margin-bottom:12px;color:var(--text-color)}.other-business-grid .business-card p{font-size:.875rem;color:var(--text-muted);line-height:1.6}.company-section{padding:100px 0;background:#f1f5f9;border-bottom:1px solid rgba(0,0,0,.03)}.company-section h2{text-align:center;font-size:2.2rem;margin-bottom:60px;color:var(--text-color)}.company-card{background:#fff;border-radius:24px;padding:48px;display:flex;gap:48px;border:1px solid rgba(0,0,0,.04);box-shadow:0 10px 30px #00000005}.company-details{flex:1.3}.detail-item{display:flex;margin-bottom:24px;border-bottom:1px solid rgba(0,0,0,.04);padding-bottom:20px}.detail-item:last-child{border-bottom:none;padding-bottom:0;margin-bottom:0}.detail-item .label{width:140px;font-weight:700;color:#0006;flex-shrink:0;font-size:.95rem}.detail-item .value{color:var(--text-color);line-height:1.6;font-size:.95rem}.company-map{flex:.7;background:#e2e8f0;border-radius:16px;overflow:hidden;height:280px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,.05)}.map-image{width:100%;height:100%;object-fit:cover}footer{padding:50px 0;background:#fff;text-align:center;color:#0006;font-size:.85rem;border-top:1px solid rgba(0,0,0,.03)}.footer-links{margin-top:20px;display:flex;justify-content:center;gap:24px}.footer-links a{color:#00000080}.footer-links a:hover{color:var(--primary-color);text-decoration:underline}@media(max-width:1024px){.sub-products{flex-direction:column;gap:20px}.other-business-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){#header{top:12px;width:calc(100% - 24px)}.message-section{padding-top:100px;padding-bottom:40px}.message-content-wrapper{flex-direction:column;gap:40px}.message-text h3{font-size:1.75rem}.ai-hero-card{padding:32px 24px}.ai-header h3{font-size:1.5rem}.sub-products{flex-direction:column;gap:20px}.other-business-grid{grid-template-columns:1fr;gap:20px}.company-card{flex-direction:column;padding:32px 24px;gap:32px}.detail-item{flex-direction:column;gap:8px;padding-bottom:16px}.detail-item .label{width:100%}.company-map{height:220px}}
