@import "https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700;800;900&family=Noto+Sans+JP:wght@400;500;700&display=swap";.preloader{background-color:var(--color-dark-deep);color:var(--color-white);z-index:99999;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.preloader h1{color:var(--color-white);margin:0 0 24px;font-size:24px;font-weight:800}.progress-bar-container{background:#ffffff26;border-radius:2px;width:240px;height:2px;overflow:hidden}.progress-bar{background:var(--color-accent);height:100%}.noise-overlay{pointer-events:none;z-index:9999;opacity:.04;mix-blend-mode:multiply;position:absolute;inset:0}.marquee-wrapper{pointer-events:none;z-index:1;justify-content:center;width:100%;display:flex;position:absolute;bottom:32px;left:0}.glitch-text{letter-spacing:8px;color:var(--color-accent);opacity:.15;white-space:nowrap;font-size:110px;font-weight:900}@media (width<=768px){.marquee-wrapper{bottom:24px}.glitch-text{letter-spacing:4px;font-size:56px}}.site-menu{z-index:200000;background:var(--color-dark-deep);color:var(--color-bg);padding:24px var(--header-padding) 48px;overscroll-behavior:contain;flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.site-menu-topbar{flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.site-menu-brand{letter-spacing:.12em;color:var(--color-accent);font-size:14px;font-weight:900}.site-menu-close{width:52px;height:52px;color:var(--color-bg);background:0 0;border:1px solid #f6ebdd40;border-radius:50%;justify-content:center;align-items:center;transition:background .25s,color .25s;display:flex}.site-menu-close:hover{background:var(--color-bg);color:var(--color-dark-deep)}.site-menu-body{width:100%;max-width:900px;margin-top:auto;margin-bottom:auto;padding:48px 0}.site-menu-home{color:var(--color-bg);background:0 0;border:none;align-items:center;gap:10px;margin-bottom:56px;padding:0;font-family:inherit;font-size:clamp(40px,8vw,84px);font-weight:900;line-height:1;transition:color .25s;display:inline-flex}.site-menu-home:hover{color:var(--color-accent)}.site-menu-home svg{transition:transform .25s}.site-menu-home:hover svg{transform:translate(4px,-4px)}.site-menu-app{margin-bottom:40px}.site-menu-app-name{letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent);margin:0 0 16px;font-size:13px;font-weight:700}.site-menu-links{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.site-menu-link{color:var(--color-bg);text-align:left;background:0 0;border:none;padding:4px 0;font-family:inherit;font-size:clamp(22px,3.5vw,34px);font-weight:700;line-height:1.25;transition:color .2s,padding-left .2s}.site-menu-link:hover{color:var(--color-accent);padding-left:12px}.site-menu-app-soon .site-menu-app-name{color:#f6ebdd66}.site-menu-soon-row{align-items:center;display:flex}.site-menu-soon-label{color:#f6ebdd59;letter-spacing:.04em;font-size:clamp(22px,3.5vw,34px);font-weight:700}@media (width<=768px){.site-menu{padding:16px var(--header-padding-mobile) 40px}.site-menu-body{padding:32px 0}.site-menu-home{margin-bottom:40px}.site-menu-app{margin-bottom:32px}}*{-webkit-tap-highlight-color:transparent}.portfolio-section{perspective:1200px;touch-action:none;width:100vw;height:100%;position:fixed;overflow:hidden}@media (width>=769px){.portfolio-section,.portfolio-section *{cursor:none!important}}.site-header{padding:24px var(--header-padding);z-index:100000;justify-content:space-between;align-items:center;display:flex;position:relative}.logo-circle{border:2px dashed var(--color-dark);width:64px;height:64px;color:var(--color-accent);background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:14px;font-weight:900;display:flex}.nav-actions{align-items:center;gap:16px;display:flex}.lang-toggle{background:var(--color-white);border-radius:var(--border-radius-card);padding:4px;font-size:14px;font-weight:700;display:flex}.lang-toggle span{color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:30px;padding:8px 16px;transition:background-color .2s,color .2s}.lang-toggle .active{background:var(--color-accent-alt);color:var(--color-white)}.menu-btn{background:var(--color-dark);border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.section-headings{text-align:center;z-index:1;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;margin-top:-100px;padding:0 20px;display:flex;position:absolute;inset:0}.title-huge{color:var(--color-accent);letter-spacing:2px;margin:0;font-size:100px;font-weight:900;line-height:1}.subtitle{color:#222;letter-spacing:1px;margin-top:10px;font-size:16px;font-weight:500}.carousel-container{z-index:2;justify-content:center;align-items:center;width:100%;height:620px;display:flex;position:relative}.carousel-track{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.portfolio-card-wrapper{will-change:transform, opacity;transform-style:preserve-3d;position:absolute}.portfolio-card{border-radius:var(--border-radius-card);width:100%;height:100%;position:relative;overflow:hidden;box-shadow:0 20px 50px #00000026}.coming-soon-badge{z-index:5;border-radius:var(--border-radius-pill);letter-spacing:.16em;white-space:nowrap;pointer-events:none;padding:8px 20px;font-size:13px;font-weight:800;position:absolute;top:28px;left:50%;transform:translate(-50%)}.app-soon-tag{letter-spacing:.12em;text-transform:uppercase;font-size:15px;font-weight:800;display:inline-block}.mock-phone{aspect-ratio:1220/2712;transform-origin:50%;background-color:#000;border:10px solid #1a1a1a;border-radius:32px;justify-content:center;width:250px;display:flex;position:absolute;top:50%;left:50%;overflow:hidden;box-shadow:20px 20px 40px #0003,inset 0 0 0 2px #ffffff1a}.phone-notch{z-index:10;background-color:#1a1a1a;border-radius:12px;width:80px;height:24px;position:absolute;top:8px}.phone-screen{border-radius:22px;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.phone-icon-center{z-index:5;position:absolute;top:50%;left:50%}.phone-app-ui{z-index:4;flex-direction:column;gap:12px;padding:40px 16px 16px;display:flex;position:absolute;inset:0}.ui-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.ui-header h4{margin:0;font-size:14px;font-weight:800}.ui-avatar{border-radius:50%;width:32px;height:32px}.ui-block-main{border-radius:16px;flex:1;width:100%}.ui-row{gap:12px;height:100px;display:flex}.ui-block-small{border-radius:16px;flex:1}.app-info{flex-direction:column;justify-content:center;width:320px;margin:0;display:flex;position:absolute;top:50%;left:50%}.app-category{letter-spacing:2px;margin-bottom:6px;font-size:12px;font-weight:800}.app-title{letter-spacing:-1px;margin:0 0 16px;font-size:52px;font-weight:900;line-height:.95}.app-desc{opacity:.9;margin:0 0 20px;font-size:14px;font-weight:500;line-height:1.5}.app-features{flex-direction:column;gap:10px;margin:0 0 24px;padding:0;list-style:none;display:flex}.app-features li{align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.download-btn{border-radius:var(--border-radius-pill);border:none;justify-content:center;align-items:center;gap:8px;width:fit-content;padding:14px 20px;font-size:14px;font-weight:700;display:flex;box-shadow:0 10px 20px #0000001a}.controls-wrapper{z-index:10;justify-content:center;align-items:center;gap:16px;margin-top:10px;display:flex;position:relative}.nav-btn,.all-btn{background:var(--color-dark);color:var(--color-white);border:none;transition:background .2s}.nav-btn{border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.all-btn{border-radius:30px;height:56px;padding:0 32px;font-size:15px;font-weight:600}@media (width<=768px){.site-header{padding:16px var(--header-padding-mobile)}.hide-mobile{display:none!important}.section-headings{margin-top:-150px}.title-huge{letter-spacing:1px;font-size:56px}.subtitle{font-size:13px}.carousel-container{height:100vh;position:absolute;top:0;left:0}.app-info{text-align:center;width:280px;top:auto;bottom:32px}.app-title{font-size:38px}.app-features{align-items:center}.download-btn{margin:0 auto}}.privacy-container{color:#1e293b;background-color:#f8fafc;height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;overflow-y:auto}.privacy-header{z-index:10;background-color:#fff;border-bottom:1px solid #e2e8f0;padding:1.5rem 0;position:sticky;top:0}.privacy-header-content{flex-direction:column;max-width:800px;margin:0 auto;padding:0 2rem;display:flex}.privacy-header-top{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem;display:flex}.privacy-back-link{color:#64748b;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s}.privacy-header .lang-toggle{background:#f1f5f9;border-radius:30px;flex-shrink:0;gap:2px;padding:3px;font-size:.8rem;font-weight:700;display:flex}.privacy-header .lang-toggle span{color:#64748b;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:30px;padding:5px 12px;transition:background-color .2s,color .2s}.privacy-header .lang-toggle .active{color:#fff;background:#0f172a}.privacy-back-link:hover{color:#0f172a}.privacy-header-content h1{color:#0f172a;margin:0;font-size:1.25rem;font-weight:600}.privacy-content{background-color:#fff;border-radius:8px;max-width:800px;margin:2rem auto 0;padding:3rem 2rem 5rem;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.privacy-section{margin-bottom:2.5rem}.privacy-section h2{color:#0f172a;border-bottom:1px solid #f1f5f9;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.25rem;font-weight:600}.privacy-section p{color:#334155;margin-bottom:1rem;font-size:.95rem}.privacy-section ul{color:#334155;margin-bottom:1.5rem;padding-left:1.5rem;font-size:.95rem}.privacy-section li{margin-bottom:.5rem}.tokusho-dl{color:#334155;margin:0;font-size:.95rem}.tokusho-dl dt{color:#0f172a;margin-top:1.25rem;font-weight:600}.tokusho-dl dt:first-child{margin-top:0}.tokusho-dl dd{border-bottom:1px solid #f1f5f9;margin:.35rem 0 0;padding-bottom:.85rem;line-height:1.7}@media (width>=640px){.tokusho-dl{grid-template-columns:13rem 1fr;column-gap:1.5rem;display:grid}.tokusho-dl dt{margin-top:0;padding:.85rem 0}.tokusho-dl dd{margin:0;padding:.85rem 0}.tokusho-dl dt:not(:first-child){border-top:1px solid #f1f5f9}}.privacy-contact{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:1rem}.support-question{color:#0f172a;margin:1.5rem 0 .5rem;font-size:1rem;font-weight:600}.privacy-section a{color:#d9534f;border-bottom:1px solid #0000;font-weight:500;text-decoration:none;transition:border-color .2s}.privacy-section a:hover{border-bottom-color:currentColor}.support-link-button{background-color:#0f172a;border-radius:6px;margin-top:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:background-color .2s;display:inline-block;color:#fff!important;border-bottom:none!important}.support-link-button:hover{background-color:#334155}.support-link-list{padding-left:0;list-style:none}.support-link-list li{margin-bottom:.75rem}.support-steps{color:#334155;padding-left:1.5rem;font-size:.95rem}.support-steps li{margin-bottom:.75rem;padding-left:.25rem}.privacy-footer-date{text-align:right;color:#64748b;border-top:1px solid #e2e8f0;margin-top:4rem;padding-top:1rem;font-size:.875rem}@media (width<=640px){.privacy-header-content{flex-direction:column;align-items:flex-start;gap:1rem}.privacy-back-link{margin-right:0}.privacy-content{box-shadow:none;border-radius:0;margin-top:0;padding:2rem 1rem 4rem}}:root{--color-bg:#f6ebdd;--color-accent:#e68855;--color-accent-alt:#e57a44;--color-dark:#333;--color-dark-deep:#111;--color-text-muted:#888;--color-white:#fff;--header-padding:40px;--header-padding-mobile:20px;--border-radius-card:40px;--border-radius-pill:100px}*,:before,:after{box-sizing:border-box}body{background-color:var(--color-bg);color:var(--color-dark);margin:0;padding:0;font-family:Poppins,Noto Sans JP,sans-serif;overflow:hidden}.App{flex-direction:column;min-height:100vh;display:flex}
