1<!DOCTYPE html><!--1QKJiAoKiGM9xkRJsurmM--><html lang="ja"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/7e7d96b1e6991756.css?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/1613d6c61bec808d.css?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/715be398208dca58.css?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-d64b67ff9e733332.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77"/>
1<script src="/_next/static/chunks/4bd1b696-f785427dddbba9fb.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/1255-f480ec036265ea17.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/main-app-5eb0d9c55a395822.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/5316-f9f6a1a6e3b648ee.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/2619-3c9e02e22d10480a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/734-9cd027f8a4fe6136.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/2663-0dede9e6c4ffe948.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/8197-047fbffb9fd0bc1d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/8028-092da74c7ab82549.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/4545-5e14d14f7fb19bf4.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/2884-724f8ccfada609d7.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/9955-e72ce8f7e660b24d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/9599-388af8aea021ea48.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/app/layout-e22937023721c497.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<script src="/_next/static/chunks/app/privacy-policy/page-9e0ab4d2a0526b1b.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" async=""></script>
1<link rel="canonical" href="https://www.artistai.jp"/><meta name="next-size-adjust" content=""/><title>Privacy Policy | Artist AI VIDEO</title><meta name="description" content="Read the Artist AI VIDEO privacy policy. Learn how we collect, use, and protect your personal data on our AI video generation platform."/><meta name="author" content="Artist AI VIDEO"/><meta name="keywords" content="AI video generation,AI video editor,AI video creator,video enhancement,AI art,text to video,AI video platform,video editing online"/><meta name="creator" content="Artist AI VIDEO"/><meta name="publisher" content="Artist AI VIDEO"/><meta name="robots" content="index, follow"/><meta name="googlebot" content="index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1"/><link rel="canonical" href="https://www.artistai.jp"/><meta property="og:title" content="Privacy Policy | Artist AI VIDEO"/><meta property="og:description" content="Read the Artist AI VIDEO privacy policy and how we protect your data."/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Artist AI VIDEO â AI Video Generation & Editing Platform"/><meta name="twitter:description" content="AI-powered video generation and editing platform. Create, enhance, and transform videos with intelligent AI tools."/><meta name="twitter:image" content="https://www.artistai.jp/logo/logo.png"/><link rel="icon" href="/favicon.ico" type="image/x-icon" sizes="16x16"/><link rel="icon" href="/logo/logo_min.svg" type="image/svg+xml"/>
1<script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"Organization","name":"Artist AI VIDEO","url":"https://www.artistai.jp","logo":"https://www.artistai.jp/logo/logo.png"},{"@type":"SoftwareApplication","name":"Artist AI VIDEO","applicationCategory":"MultimediaApplication","operatingSystem":"Web","offers":{"@type":"Offer","price":"0","priceCurrency":"USD"}},{"@type":"FAQPage","mainEntity":[{"@type":"Question","name":"What can I create with Artist AI VIDEO?","acceptedAnswer":{"@type":"Answer","text":"Artist AI VIDEO is an AI-powered video generation and editing platform. You can generate videos from text prompts, edit existing videos with AI tools, and enhance video quality â all in your browser."}},{"@type":"Question","name":"How does AI video generation work on Artist AI VIDEO?","acceptedAnswer":{"@type":"Answer","text":"Our AI models generate professional-quality videos from your text descriptions and creative prompts. You can customize styles, add effects, and fine-tune results with our editing tools."}},{"@type":"Question","name":"Do I need to install software to use Artist AI VIDEO?","acceptedA
1nswer":{"@type":"Answer","text":"No, Artist AI VIDEO is entirely browser-based. You can generate and edit videos directly in your web browser without any installation."}}]}]}</script>
1<script> 2 (function() { 3 try { 4 const storedTheme = localStorage.getItem('theme'); 5 const hasThemePreference = storedTheme === 'light' || storedTheme === 'dark'; 6 const theme = hasThemePreference 7 ? storedTheme 8 : 'dark'; // Default to dark mode for new users 9 10 document.documentElement.setAttribute('data-theme', theme); 11 // Store the theme in localStorage if not already set 12 if (!hasThemePreference) { 13 localStorage.setItem('theme', theme); 14 } 15 } catch (e) { 16 // Fallback if localStorage is not available 17 const defaultTheme = 'dark'; // Changed to dark as default 18 document.documentElement.setAttribute('data-theme', defaultTheme); 19 } 20 })(); 21</script>
21<script> 22 (function() { 23 'use strict'; 24 // IMMEDIATE removeChild patch - must run before anything else 25 if (typeof Node !== 'undefined' && Node.prototype.removeChild) { 26 const originalRemoveChild = Node.prototype.removeChild; 27 Node.prototype.removeChild = function(child) { 28 if (!child) return child; 29 if (child.parentNode === this) { 30 try { 31 return originalRemoveChild.call(this, child); 32 } catch(e) { 33 if (typeof child.remove === 'function') { 34 child.remove(); 35 return child; 36 } 37 return child; 38 } 39 } 40 if (child.parentNode) { 41 try { 42 return originalRemoveChild.call(child.parentNode, child); 43 } catch(e) { 44 if (typeof child.remove === 'function') { 45 child.remove(); 46 return child; 47 } 48 return child; 49 } 50 } 51 if (typeof child.remove === 'function') { 52 try { child.remove(); } catch(e) {} 53 } 54 return child; 55 }; 56 } 57 })(); 58 </script>
58<script> 59 (function() { 60 'use strict'; 61 62 // CRITICAL: Patch removeChild IMMEDIATELY before anything else can use it 63 // This must be the very first thing we do 64 const originalRemoveChild = Node.prototype.removeChild; 65 Node.prototype.removeChild = function(child) { 66 // Always check if child is actually a child before removing 67 if (!child) { 68 return child; 69 } 70 71 // Check if child is actually a child of this node 72 if (child.parentNode === this) { 73 try { 74 return originalRemoveChild.call(this, child); 75 } catch (e) { 76 // Even if parentNode matches, Edge translation might have moved it 77 // Use remove() as safe fallback 78 if (typeof child.remove === 'function') { 79 child.remove(); 80 return child; 81 } 82 // Silently return child if we can't remove it 83 return child; 84 } 85 } 86 87 // Child is not a child of this node - likely moved by translation 88 // Try to remove from actual parent 89 if (child.parentNode) { 90 try { 91 return originalRemoveChild.call(child.parentNode, child); 92 } catch (e) { 93 // If that fails, use remove() 94 if (typeof child.remove === 'function') { 95 child.remove(); 96 return child; 97 } 98 return child; 99 } 100 } 101 102 // No parent - use remove() if available, otherwise just return 103 if (typeof child.remove === 'function') { 104 try { 105 child.remove(); 106 } catch (e) { 107 // Silently ignore 108 } 109 } 110 return child; 111 }; 112 113 // Detect Edge browser 114 const isEdge = navigator.userAgent.includes('Edg'); 115 116 // Edge-specific: Global error handler to catch removeChild errors 117 if (isEdge) { 118 const originalErrorHandler = window.onerror; 119 window.onerror = function(message, source, lineno, colno, error) { 120 // Check if it's a removeChild error 121 if (message && (message.toString().includes('removeChild') || message.toString().includes('not a child'))) { 122 // Silently suppress Edge translation-related removeChild errors 123 return true; // Prevent default error handling 124 } 125 // Call original error handler for other errors 126 if (originalErrorHandler) { 127 return originalErrorHandler.call(this, message, source, lineno, colno, error); 128 } 129 return false; 130 }; 131 132 // Also catch unhandled promise rejections 133 window.addEventListener('unhandledrejection', function(event) { 134 const error = event.reason; 135 if (error && (error.message && (error.message.includes('removeChild') || error.message.includes('not a child')))) { 136 event.preventDefault(); 137 } 138 }); 139 } 140 141 // Clean Google Translate attributes that cause hydration mismatches 142 const cleanTranslationAttributes = function() { 143 // Remove Google Translate attributes from all elements 144 const translationAttrs = ['_msthidden', '_mstaria-label', '_msthash', '_msttexthash']; 145 document.querySelectorAll('*').forEach(function(el) { 146 translationAttrs.forEach(function(attr) { 147 if (el.hasAttribute(attr)) { 148 el.removeAttribute(attr); 149 } 150 }); 151 }); 152 }; 153 154 // Clean attributes immediately and before React hydrates 155 if (document.readyState === 'loading') { 156 document.addEventListener('DOMContentLoaded', cleanTranslationAttributes); 157 } else { 158 cleanTranslationAttributes(); 159 } 160 161 // Also clean attributes periodically (Google Translate adds them dynamically) 162 const observer = new MutationObserver(function(mutations) { 163 mutations.forEach(function(mutation) { 164 if (mutation.type === 'attributes') { 165 const el = mutation.target; 166 const translationAttrs = ['_msthidden', '_mstaria-label', '_msthash', '_msttexthash']; 167 translationAttrs.forEach(function(attr) { 168 if (el.hasAttribute && el.hasAttribute(attr)) { 169 el.removeAttribute(attr); 170 } 171 }); 172 }
173 // Clean attributes from added nodes 174 mutation.addedNodes.forEach(function(node) { 175 if (node.nodeType === 1) { // Element node 176 const translationAttrs = ['_msthidden', '_mstaria-label', '_msthash', '_msttexthash']; 177 translationAttrs.forEach(function(attr) { 178 if (node.hasAttribute && node.hasAttribute(attr)) { 179 node.removeAttribute(attr); 180 } 181 }); 182 // Also clean child elements 183 if (node.querySelectorAll) { 184 node.querySelectorAll('*').forEach(function(child) { 185 translationAttrs.forEach(function(attr) { 186 if (child.hasAttribute(attr)) { 187 child.removeAttribute(attr); 188 } 189 }); 190 }); 191 } 192 } 193 }); 194 }); 195 }); 196 197 // Observe the entire document for attribute changes 198 observer.observe(document.body || document.documentElement, { 199 attributes: true, 200 subtree: true, 201 childList: true, 202 attributeFilter: ['_msthidden', '_mstaria-label', '_msthash', '_msttexthash'] 203 }); 204 205 // Also patch Element.remove() to be extra safe for Edge 206 if (Element.prototype.remove) { 207 const originalRemove = Element.prototype.remove; 208 Element.prototype.remove = function() { 209 try { 210 // Check if element is still in DOM 211 if (this.parentNode) { 212 return originalRemove.call(this); 213 } 214 // Element is not in DOM, nothing to remove 215 return; 216 } catch (e) { 217 // In Edge, translation can cause issues - silently handle 218 const isEdge = navigator.userAgent.includes('Edg'); 219 if (!isEdge) { 220 console.warn('remove() error suppressed (likely due to page translation):', e.message); 221 } 222 } 223 }; 224 } 225 226 // Edge-specific: Also patch ParentNode methods that might call removeChild 227 if (Element.prototype.replaceChildren) { 228 const originalReplaceChildren = Element.prototype.replaceChildren; 229 Element.prototype.replaceChildren = function() { 230 try { 231 return originalReplaceChildren.apply(this, arguments); 232 } catch (e) { 233 // If replaceChildren fails due to translation, try manual replacement 234 const isEdge = navigator.userAgent.includes('Edg'); 235 if (isEdge && e.message && e.message.includes('removeChild')) { 236 // Clear children manually using innerHTML as fallback 237 this.innerHTML = ''; 238 // Then append new children 239 Array.from(arguments).forEach(function(child) { 240 if (child) { 241 this.appendChild(child); 242 } 243 }, this); 244 return; 245 } 246 throw e; 247 } 248 }; 249 } 250 251 // Remove translation overlays (Google Translate and Edge Translate) that block clicks 252 const removeTranslationOverlays = function() { 253 // Remove Google Translate banner/frame that might block clicks 254 const translateBanner = document.querySelector('.goog-te-banner-frame'); 255 if (translateBanner) { 256 const iframe = translateBanner.querySelector('iframe'); 257 if (iframe) { 258 iframe.style.pointerEvents = 'none'; 259 } 260 } 261 262 // Remove Edge Translate overlays (Edge uses different selectors) 263 const edgeTranslateOverlays = document.querySelectorAll('[id*="MicrosoftTranslator"], [class*="MicrosoftTranslator"], [id*="EdgeTranslator"], [class*="EdgeTranslator"]'); 264 edgeTranslateOverlays.forEach(function(el) { 265 el.style.pointerEvents = 'none'; 266 el.style.display = 'none'; 267 }); 268 269 // Remove any high z-index overlays that might block clicks (common in Edge) 270 document.querySelectorAll('*').forEach(function(el) { 271 const style = window.getComputedStyle(el); 272 const zIndex = parseInt(style.zIndex) || 0; 273 const position = style.position; 274 275 // If it's a fixed/absolute positioned element with very high z-index 276 if ((position === 'fixed' || position === 'absolute') && zIndex > 9999) { 277 // Check if it's likely a translation overlay 278 const isTranslationOverlay = 279 (el.id && (el.id.includes('translate') || el.id.includes('translator') || el.id.includes('Microsoft'))) || 280 (el.className && (el.className.includes('translate') || el.className.includes('translator') || el.className.includes('Microsoft'))) || 281 (!el.querySelector('*') && el.textContent === ''); 282 283 if (isTranslationOverlay && !el.querySelector('iframe')) { 284 el.style.pointerEvents = 'none'; 285 el.style.display = 'none'; 286 } 287 } 288 }); 289 290 // Ensure all interactive elements remain clickable 291 const interactiveSelectors = 'button, a, input, select, textarea, [role="button"], [onclick], [tabindex], [type="submit"], [type="button"]';
292 document.querySelectorAll(interactiveSelectors).forEach(function(el) { 293 // Force pointer-events on interactive elements 294 const computedStyle = window.getComputedStyle(el); 295 if (computedStyle.pointerEvents === 'none' || el.style.pointerEvents === 'none') { 296 el.style.pointerEvents = 'auto'; 297 el.style.zIndex = '9999'; // Ensure interactive elements are on top 298 } 299 300 // Remove any translation wrappers that might block clicks 301 let parent = el.parentElement; 302 let depth = 0; 303 while (parent && depth < 5) { // Check up to 5 levels up 304 const parentStyle = window.getComputedStyle(parent); 305 const hasTranslationAttr = parent.hasAttribute('_msthidden') || 306 parent.hasAttribute('_msthash') || 307 parent.hasAttribute('_msttexthash') || 308 (parent.id && (parent.id.includes('translate') || parent.id.includes('translator'))) || 309 (parent.className && (parent.className.includes('translate') || parent.className.includes('translator'))); 310 311 if (hasTranslationAttr && parentStyle.pointerEvents === 'none') { 312 parent.style.pointerEvents = 'auto'; 313 } 314 315 // If parent is a span wrapper around interactive element, make it not block 316 if (parent.tagName === 'SPAN' && hasTranslationAttr) { 317 parent.style.pointerEvents = 'none'; 318 } 319 320 parent = parent.parentElement; 321 depth++; 322 } 323 }); 324 325 // Make translation text wrappers not block pointer events 326 document.querySelectorAll('span, div').forEach(function(el) { 327 // If element is a translation wrapper (span/div with translation attributes) 328 const hasTranslationAttr = el.hasAttribute('_msthidden') || 329 el.hasAttribute('_msthash') || 330 el.hasAttribute('_msttexthash') || 331 (el.id && (el.id.includes('translate') || el.id.includes('translator'))) || 332 (el.className && (el.className.includes('translate') || el.className.includes('translator'))); 333 334 if (hasTranslationAttr) { 335 // Check if it's wrapping an interactive element 336 const hasInteractiveChild = el.querySelector('button, a, input, select, textarea, [role="button"], [onclick]'); 337 if (hasInteractiveChild) { 338 // Make the wrapper not block clicks 339 el.style.pointerEvents = 'none'; 340 } else { 341 // For text-only wrappers, allow pointer events to pass through 342 const computedStyle = window.getComputedStyle(el); 343 if (computedStyle.pointerEvents === 'none') { 344 el.style.pointerEvents = 'auto'; 345 } 346 } 347 } 348 }); 349 }; 350 351 // Targeted fix: only restore pointer events on elements that are actually blocked, 352 // and only hide translation-related overlays that are covering them. 353 // IMPORTANT: Never unconditionally set cursor/z-index/position â that causes hydration mismatches. 354 const forceClickable = function() { 355 const interactiveElements = document.querySelectorAll('button, a, input, select, textarea, [role="button"], [onclick], [tabindex], [type="submit"], [type="button"], label[for]'); 356 357 interactiveElements.forEach(function(el) { 358 // Only unblock if pointer-events is explicitly set to none 359 const computedStyle = window.getComputedStyle(el); 360 if (computedStyle.pointerEvents === 'none') { 361 el.style.pointerEvents = 'auto'; 362 } 363 364 // Find and hide translation overlays that are physically blocking this element 365 const rect = el.getBoundingClientRect(); 366 if (rect.width === 0 && rect.height === 0) return; // off-screen / hidden, skip 367 const centerX = rect.left + rect.width / 2; 368 const centerY = rect.top + rect.height / 2; 369 const elementAtPoint = document.elementFromPoint(centerX, centerY); 370 371 if (elementAtPoint && elementAtPoint !== el && !el.contains(elementAtPoint)) { 372 const blockingEl = elementAtPoint; 373 const blockingClassName = 374 typeof blockingEl.className === 'string' 375 ? blockingEl.className 376 : (blockingEl.className && typeof blockingEl.className.baseVal === 'string' 377 ? blockingEl.className.baseVal 378 : ''); 379 380 const isTranslationElement = 381 blockingEl.hasAttribute('_msthidden') || 382 blockingEl.hasAttribute('_msthash') || 383 blockingEl.hasAttribute('_msttexthash') || 384 (blockingEl.id && (blockingEl.id.includes('translate') || blockingEl.id.includes('translator') || blockingEl.id.includes('Microsoft'))) || 385 (blockingClassName && (blockingClassName.includes('translate') || blockingClassName.includes('translator') || blockingClassName.includes('Microsoft'))); 386 387 if (isTranslationElement) { 388 blockingEl.style.pointerEvents = 'none'; 389 blockingEl.style.display = 'none'; 390 } 391 } 392 393 // Restore pointer events on parent elements if blocked by a translation wrapper 394 let parent = el.parentElement; 395 let depth = 0; 396 while (parent && depth < 10) { 397 const hasTranslationAttr = 398 parent.hasAttribute('_msthidden') || 399 parent.hasAttribute('_msthash') || 400 parent.hasAttribute('_msttexthash'); 401 if (hasTranslationAttr) { 402 const parentComputed = window.getComputedStyle(parent); 403 if (parentComputed.pointerEvents === 'none') { 404 parent.style.pointerEvents = 'auto'; 405 } 406 } 407 parent = parent.parentElement; 408 depth++; 409 } 410 }); 411 }; 412 413 // Run once after DOM is ready; re-run on translation-driven DOM mutations only 414 removeTranslationOverlays(); 415 forceClickable(); 416 417 // Run every 2s (instead of 500ms) â translation changes are slow; no need to hammer the DOM 418 setInterval(function() { 419 removeTranslationOverlays(); 420 forceClickable(); 421 }, 2000); 422 423 // Also run when DOM changes (translation modifies DOM) 424 const clickObserver = new MutationObserver(function() { 425 removeTranslationOverlays(); 426 forceClickable(); 427 }); 428 429 if (document.body) { 430 clickObserver.observe(document.body, { 431 childList: true, 432 subtree: true, 433 attributes: true, 434 attributeFilter: ['style', 'class', 'id'] 435 }); 436 } 437 438 // Also listen for click events and ensure they work 439 document.addEventListener('click', function(e) { 440 const target = e.target; 441 // If click is on a translation wrapper, find the actual button underneath 442 if (target && target.nodeType === 1 && (target.hasAttribute('_msthidden') || target.hasAttribute('_msthash'))) { 443 const interactiveChild = target.closest('button, a, input, select, textarea, [role="button"]'); 444 if (interactiveChild) { 445 e.stopPropagation(); 446 if (interactiveChild instanceof HTMLElement) { 447 interactiveChild.click(); 448 } 449 } 450 } 451 }, true); // Use capture phase to catch early 452 453 console.log('â DOM error patch applied - removeChild is now safe from translation errors'); 454 console.log('â Google Translate attribute cleaner active - hydration mismatches prevented'); 455 console.log('â Google Translate overlay remover active - click events enabled'); 456 })(); 457</script>
457<script src="/_next/static/chunks/polyfills-42372ed130431b0a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" noModule=""></script>
457</head><body class="__className_f367f3"><div hidden=""><!--$--><!--/$--></div><div class="min-h-screen bg-[#0D0D0F] text-white"><header class="fixed w-full top-0 px-4 py-4 bg-[#070719]/80 backdrop-blur-lg border-b border-white/10 z-50"><div class="container mx-auto max-w-[1320px]"><div class="flex items-center justify-between"><a class="flex items-center gap-2 text-gray-300 hover:text-white transition-colors" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left w-5 h-5"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg><span>ãã¼ã ã«æ»ã</span></a><h1 class="text-xl font-bold">ãã©ã¤ãã·ã¼ããªã·ã¼</h1></div></div></header><main class="container mx-auto max-w-[1000px] px-4 pt-24 pb-16"><div class="prose prose-invert max-w-none"><div class="space-y-8"><h1 class="text-4xl font-bold mb-8">ãã©ã¤ãã·ã¼ããªã·ã¼</h1><div class="text-gray-400 mb-8">æçµæ´æ°æ¥: 2025å¹´3æ19æ¥</div><p class="text-gray-300 leading-relaxed">Richdale AIã§ã¯ãã客æ§ã®ãã©ã¤ãã·ã¼ãéè¦ããå人ãã¼ã¿ã®ä¿è·ã«åªãã¦ãã¾ãããã®ãã©ã¤ãã·ã¼ããªã·ã¼ã§ã¯ãAIç»åçæãã©ãããã©ã¼ã ã®å©ç¨æã«ãããæ
å ±ã®åéã使ç¨ãä¿è·æ¹æ³ã«ã¤ãã¦èª¬æãã¾ãã</p><section><h2 class="text-2xl font-bold mb-4">1. åéããæ
å ±ã®æ¦è¦</h2><p class="text-gray-300 mb-4">以ä¸ã®ç¨®é¡ã®ãã¼ã¿ãåéãã¾ãï¼</p><ul class="list-disc list-inside text-gray-300 space-y-2"><li>çæã³ã³ãã³ãï¼AIæè¡ã使ç¨ãã¦ä½æãããç»åã¯ãã¦ã¼ã¶ã¼ä½é¨ã®åä¸ã¨ãµã¼ãã¹æ¹åã®ããã«ä¿åããã¾ãã</li><li>ã¦ã¼ã¶ã¼æ
å ±ï¼ã¢ã«ã¦ã³ãã使ããå ´åãã¢ã«ã¦ã³ã管çã«å¿
è¦ãªæ°åãã¡ã¼ã«ã¢ãã¬ã¹ããã®ä»ã®è©³ç´°æ
å ±ãåéããå ´åãããã¾ãã</li><li>å©ç¨ãã¼ã¿ï¼ãã©ãããã©ã¼ã ã¨ã®å¯¾è©±ãªã©ãå¿ååãããå©ç¨çµ±è¨ãåéãããµã¼ãã¹ã®åæã¨åä¸ã«æ´»ç¨ããå ´åãããã¾ãã</li></ul></section><section><h2 class="text-2xl font-bold mb-4">2. æ
å ±ã®ä½¿ç¨æ¹æ³</h2><p class="text-gray-300 mb-4">ãã¼ã¿ã¯ä»¥ä¸ã®ç®çã§ä½¿ç¨ããã¾ãï¼</p><ul class="list-disc list-inside text-gray-300 space-y-2"><li>ArtistAIãã©ãããã©ã¼ã ã®æä¾ãç¶æãæ¹å</li><li>ä½é¨ã®ãã¼ã½ãã©ã¤ãºã¨AIçæçµæã®æé©å</li><li>ã»ãã¥ãªãã£ã®ç¢ºä¿ã¨ä¸æ£å©ç¨ã®é²æ¢</li><li>æ³çè¦ä»¶ã®éµå®</li></ul><p class="text-gray-300 mt-4">ãã¼ã±ãã£ã³ã°ç®çã§ãã¼ã¿ã第ä¸è
ã«è²©å£²ã¾ãã¯å
±æãããã¨ã¯ããã¾ããã</p><p class="text-gray-300">æ©å¯æ§ã®é«ãå人æ
å ±ã¯å¦çãã¾ããã</p></section><section><h2 class="text-2xl font-bold mb-4">3. æ
å ±ã®å
±æ</h2><p class="text-gray-300 mb-4">å人æ
å ±ã販売ãããã¨ã¯ããã¾ããããã ãã以ä¸ã®ç¶æ³ã§æ
å ±ãå
±æããå ´åãããã¾ãï¼</p><ul class="list-disc list-inside text-gray-300 space-y-2"><li>ãµã¼ãã¹ãããã¤ãã¼ï¼ãµã¼ãã¹ã®éå¶ãæ¯æ´ãã第ä¸è
ãã³ãã¼ã¨ãã¼ã¿ãå
±æããå ´åãããã¾ãã</li><li>æ³çéµå®ï¼æ³å¾ã§è¦æ±ãããå ´åãæ³çè¦è«ã«å¿ãã¦æ
å ±ãé示ããå ´åãããã¾ãã</li><li>äºæ¥è²æ¸¡ï¼åä½µã売å´ãè²·åã®éã«ãäºæ¥è³ç£ã®ä¸é¨ã¨ãã¦æ
å ±ãè²æ¸¡ãããå ´åãããã¾ãã</li></ul></section><section><h2 class="text-2xl font-bold mb-4">4. ãã¼ã¿ã®ä¿ç®¡ã¨ã»ãã¥ãªãã£</h2><p class="text-gray-300 mb-4">ã»ãã¥ãªãã£ãéè¦ãã以ä¸ã®ãããªå¯¾çã宿½ãã¦ãã¾ãï¼</p><ul class="list-disc list-inside text-gray-300 space-y-2"><li>䏿£ã¢ã¯ã»ã¹ãé²ãããã®ä¿åãã¼ã¿ã®æå·å</li><li>権éã®ããæ
å½è
ã®ã¿ã«ãã¼ã¿ã¢ã¯ã»ã¹ãå¶éããã»ãã¥ã¢ãªã¢ã¯ã»ã¹å¶å¾¡</li><li>ã»ãã¥ãªãã£ã®ãã¹ããã©ã¯ãã£ã¹ã«æºæ ããããã®å®æçãªç£æ»</li></ul></section><section><h2 class="text-2xl font-bold mb-4">5. ã»ãã¥ãªãã£å¯¾ç</h2><p class="text-gray-300">æ¥çæ¨æºã®ã»ãã¥ãªãã£å¯¾çã宿½ãã䏿£ã¢ã¯ã»ã¹ãé示ãç ´å£ããã客æ§ã®æ
å ±ãä¿è·ãã¦ãã¾ãããã ããã¤ã³ã¿ã¼ãããä¸ã®éä¿¡æ¹æ³ã¯100%å®å
¨ã§ã
457¯ããã¾ããã</p></section><section><h2 class="text-2xl font-bold mb-4">6. ãã¼ã¿ä¿æ</h2><p class="text-gray-300">ãµã¼ãã¹ã®æä¾ã¨æ³çè¦ä»¶ã®éµå®ã«å¿
è¦ãªæéã®ã¿ãã客æ§ã®æ
å ±ãä¿æãã¾ãããã¼ã¿ã®åé¤ãã叿ã®å ´åã¯ã<a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="adc4c3cbc2eddfc4cec5c9ccc1c883ccc4">[email protected]</a>ã¾ã§ãé£çµ¡ãã ããã</p></section><section><h2 class="text-2xl font-bold mb-4">7. ã客æ§ã®æ¨©å©ã¨é¸æ</h2><p class="text-gray-300 mb-4">ã客æ§ã®æå¨å°ã«å¿ãã¦ãå人ãã¼ã¿ã«é¢ãã¦ä»¥ä¸ã®æ¨©å©ãæããå ´åãããã¾ãï¼</p><ul class="list-disc list-inside text-gray-300 space-y-2"><li>ã¢ã¯ã»ã¹ã¨è¨æ£ï¼ãã¼ã¿ã¸ã®ã¢ã¯ã»ã¹ã¨è¨æ£ãè¦æ±ã§ãã¾ãã</li><li>ãã¼ã¿ãã¼ã¿ããªãã£ï¼æ§é åãããå½¢å¼ã§ãã¼ã¿ã®ã³ãã¼ãè¦æ±ã§ãã¾ãã</li><li>ãªããã¢ã¦ãï¼ãã¼ã±ãã£ã³ã°éä¿¡ãç¹å®ã®ãã¼ã¿å¦çæ´»åãããªããã¢ã¦ãã§ãã¾ãã</li><li>åé¤ï¼æ³ç義åã«å¾ããå人ãã¼ã¿ã®åé¤ãè¦æ±ã§ãã¾ãã</li></ul><p class="text-gray-300 mt-4">ãããã®æ¨©å©ãè¡ä½¿ããã«ã¯ã<a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="620b0c040d22100b010a06030e074c030b">[email protected]</a>ã¾ã§ãé£çµ¡ãã ããã</p></section><section><h2 class="text-2xl font-bold mb-4">8. 第ä¸è
ã®ãªã³ã¯ã¨ãµã¼ãã¹</h2><p class="text-gray-300">å½ç¤¾ã®ãµã¼ãã¹ã«ã¯ç¬¬ä¸è
ã®ã¦ã§ããµã¤ãã¸ã®ãªã³ã¯ãå«ã¾ããå ´åãããã¾ãããããã®ãã©ã¤ãã·ã¼æ
£è¡ã«ã¤ãã¦ã¯è²¬ä»»ãè² ãããã¾ããå人æ
å ±ãå
±æããåã«ãåãµã¤ãã®ãã©ã¤ãã·ã¼ããªã·ã¼ãã確èªãã ããã</p></section><section><h2 class="text-2xl font-bold mb-4">9. åã©ãã®ãã©ã¤ãã·ã¼</h2><p class="text-gray-300">å½ç¤¾ã®ãµã¼ãã¹ã¯13æ³æªæºï¼ã¾ãã¯é©ç¨æ³ã«åºã¥ãä»ã®å¹´é½¢è¦ä»¶ï¼ã®åã©ãåãã§ã¯ããã¾ãããåã©ãã®å人æ
å ±ãæ
æã«åéãããã¨ã¯ããã¾ããã</p></section><section><h2 class="text-2xl font-bold mb-4">10. ããªã·ã¼ã®å¤æ´</h2><p class="text-gray-300">ãã®ããªã·ã¼ã¯å®æçã«æ´æ°ãããå ´åãããã¾ããéè¦ãªå¤æ´ãããå ´åã¯ãã¡ã¼ã«ã¾ãã¯ãã©ãããã©ã¼ã éç¥ã§ãç¥ãããã¾ãã</p></section><section><h2 class="text-2xl font-bold mb-4">ãåãåãã</h2><p class="text-gray-300">ãã®ãã©ã¤ãã·ã¼ããªã·ã¼ã«é¢ããã質åããæ¸å¿µããããã¾ãããã<a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="ea83848c85aa988389828e8b868fc48b83">[email protected]</a>ã¾ã§ãé£çµ¡ãã ããã</p></section><p class="text-gray-300 mt-8">ArtistAIãå©ç¨ãããã¨ã§ããã®ãã©ã¤ãã·ã¼ããªã·ã¼ã«åæãããã®ã¨ã¿ãªããã¾ãã</p></div></div></main></div><!--$--><!--/$--><div data-rht-toaster="" style="position:fixed;z-index:9999;top:16px;left:16px;right:16px;bottom:16px;pointer-events:none"></div><div><section class="Toastify" aria-live="polite" aria-atomic="false" aria-relevant="additions text" aria-label="Notifications Alt+T"></section></div>
vendor: 108 bytes, line 457
457<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
457<script src="/_next/static/chunks/webpack-d64b67ff9e733332.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77" id="_R_" async=""></script>
457<script>(self.__next_f=self.__next_f||[]).push([0])</script>
457<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n"])</script>
457<script>self.__next_f.push([1,"3:I[3479,[\"5316\",\"static/chunks/5316-f9f6a1a6e3b648ee.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2619\",\"static/chunks/2619-3c9e02e22d10480a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"734\",\"static/chunks/734-9cd027f8a4fe6136.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2663\",\"static/chunks/2663-0dede9e6c4ffe948.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8197\",\"static/chunks/8197-047fbffb9fd0bc1d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8028\",\"static/chunks/8028-092da74c7ab82549.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"4545\",\"static/chunks/4545-5e14d14f7fb19bf4.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2884\",\"static/chunks/2884-724f8ccfada609d7.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9955\",\"static/chunks/9955-e72ce8f7e660b24d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9599\",\"static/chunks/9599-388af8aea021ea48.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"7177\",\"static/chunks/app/layout-e22937023721c497.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\"],\"ThemeScript\"]\n"])</script>
457<script>self.__next_f.push([1,"a:I[7150,[],\"\"]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/7e7d96b1e6991756.css?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"style\"]\n:HL[\"/_next/static/css/1613d6c61bec808d.css?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"style\"]\n:HL[\"/_next/static/css/715be398208dca58.css?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"style\"]\n2:T50c,"])</script>
457<script>self.__next_f.push([1,"{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"name\":\"Artist AI VIDEO\",\"url\":\"https://www.artistai.jp\",\"logo\":\"https://www.artistai.jp/logo/logo.png\"},{\"@type\":\"SoftwareApplication\",\"name\":\"Artist AI VIDEO\",\"applicationCategory\":\"MultimediaApplication\",\"operatingSystem\":\"Web\",\"offers\":{\"@type\":\"Offer\",\"price\":\"0\",\"priceCurrency\":\"USD\"}},{\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"What can I create with Artist AI VIDEO?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Artist AI VIDEO is an AI-powered video generation and editing platform. You can generate videos from text prompts, edit existing videos with AI tools, and enhance video quality â all in your browser.\"}},{\"@type\":\"Question\",\"name\":\"How does AI video generation work on Artist AI VIDEO?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Our AI models generate professional-quality videos from your text descriptions and creative prompts. You can customize styles, add effects, and fine-tune results with our editing tools.\"}},{\"@type\":\"Question\",\"name\":\"Do I need to install software to use Artist AI VIDEO?\",\"acceptedA
457nswer\":{\"@type\":\"Answer\",\"text\":\"No, Artist AI VIDEO is entirely browser-based. You can generate and edit videos directly in your web browser without any installation.\"}}]}]}"])</script>
457<script>self.__next_f.push([1,"4:T606,"])</script>
457<script>self.__next_f.push([1,"\n (function() {\n 'use strict';\n // IMMEDIATE removeChild patch - must run before anything else\n if (typeof Node !== 'undefined' \u0026\u0026 Node.prototype.removeChild) {\n const originalRemoveChild = Node.prototype.removeChild;\n Node.prototype.removeChild = function(child) {\n if (!child) return child;\n if (child.parentNode === this) {\n try {\n return originalRemoveChild.call(this, child);\n } catch(e) {\n if (typeof child.remove === 'function') {\n child.remove();\n return child;\n }\n return child;\n }\n }\n if (child.parentNode) {\n try {\n return originalRemoveChild.call(child.parentNode, child);\n } catch(e) {\n if (typeof child.remove === 'function') {\n child.remove();\n return child;\n }\n return child;\n }\n }\n if (typeof child.remove === 'function') {\n try { child.remove(); } catch(e) {}\n }\n return child;\n };\n }\n })();\n "])</script>
457<script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"1QKJiAoKiGM9xkRJsurmM\",\"p\":\"\",\"c\":[\"\",\"privacy-policy\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"privacy-policy\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/7e7d96b1e6991756.css?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/1613d6c61bec808d.css?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/715be398208dca58.css?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"ja\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"meta\",null,{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no\"}],[\"$\",\"link\",null,{\"rel\":\"canonical\",\"href\":\"https://www.artistai.jp\"}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"$2\"}}],[\"$\",\"$L3\",null,{}],[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"$4\"},\"suppressHydrationWarning\":true}],\"$L5\"]}],\"$L6\"]}]]}],{\"children\":[\"privacy-policy\",\"$L7\",{\"children\":[\"__PAGE__\",\"$L8\",{},null,false]},null,false]},null,false],\"$L9\",false]],\"m\":\"$undefined\",\"G\":[\"$a\",[]],\"s\":false,\"S\":true}\n"])</script>
457<script>self.__next_f.push([1,"c:I[8743,[\"5316\",\"static/chunks/5316-f9f6a1a6e3b648ee.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2619\",\"static/chunks/2619-3c9e02e22d10480a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"734\",\"static/chunks/734-9cd027f8a4fe6136.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2663\",\"static/chunks/2663-0dede9e6c4ffe948.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8197\",\"static/chunks/8197-047fbffb9fd0bc1d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8028\",\"static/chunks/8028-092da74c7ab82549.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"4545\",\"static/chunks/4545-5e14d14f7fb19bf4.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2884\",\"static/chunks/2884-724f8ccfada609d7.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9955\",\"static/chunks/9955-e72ce8f7e660b24d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9599\",\"static/chunks/9599-388af8aea021ea48.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"7177\",\"static/chunks/app/layout-e22937023721c497.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\"],\"Providers\"]\n"])</script>
457<script>self.__next_f.push([1,"d:I[9955,[\"5316\",\"static/chunks/5316-f9f6a1a6e3b648ee.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2619\",\"static/chunks/2619-3c9e02e22d10480a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"734\",\"static/chunks/734-9cd027f8a4fe6136.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2663\",\"static/chunks/2663-0dede9e6c4ffe948.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8197\",\"static/chunks/8197-047fbffb9fd0bc1d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8028\",\"static/chunks/8028-092da74c7ab82549.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"4545\",\"static/chunks/4545-5e14d14f7fb19bf4.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2884\",\"static/chunks/2884-724f8ccfada609d7.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9955\",\"static/chunks/9955-e72ce8f7e660b24d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9599\",\"static/chunks/9599-388af8aea021ea48.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"7177\",\"static/chunks/app/layout-e22937023721c497.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\"],\"UserDataProvider\"]\n"])</script>
457<script>self.__next_f.push([1,"e:I[2306,[\"5316\",\"static/chunks/5316-f9f6a1a6e3b648ee.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2619\",\"static/chunks/2619-3c9e02e22d10480a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"734\",\"static/chunks/734-9cd027f8a4fe6136.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2663\",\"static/chunks/2663-0dede9e6c4ffe948.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8197\",\"static/chunks/8197-047fbffb9fd0bc1d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8028\",\"static/chunks/8028-092da74c7ab82549.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"4545\",\"static/chunks/4545-5e14d14f7fb19bf4.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2884\",\"static/chunks/2884-724f8ccfada609d7.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9955\",\"static/chunks/9955-e72ce8f7e660b24d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9599\",\"static/chunks/9599-388af8aea021ea48.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"7177\",\"static/chunks/app/layout-e22937023721c497.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\"],\"LanguageProvider\"]\n"])</script>
457<script>self.__next_f.push([1,"f:I[9766,[],\"\"]\n10:I[8924,[],\"\"]\n"])</script>
457<script>self.__next_f.push([1,"11:I[2663,[\"5316\",\"static/chunks/5316-f9f6a1a6e3b648ee.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2619\",\"static/chunks/2619-3c9e02e22d10480a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"734\",\"static/chunks/734-9cd027f8a4fe6136.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2663\",\"static/chunks/2663-0dede9e6c4ffe948.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8197\",\"static/chunks/8197-047fbffb9fd0bc1d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8028\",\"static/chunks/8028-092da74c7ab82549.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"4545\",\"static/chunks/4545-5e14d14f7fb19bf4.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2884\",\"static/chunks/2884-724f8ccfada609d7.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9955\",\"static/chunks/9955-e72ce8f7e660b24d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9599\",\"static/chunks/9599-388af8aea021ea48.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"7177\",\"static/chunks/app/layout-e22937023721c497.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\"],\"Toaster\"]\n"])</script>
457<script>self.__next_f.push([1,"12:I[744,[\"5316\",\"static/chunks/5316-f9f6a1a6e3b648ee.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2619\",\"static/chunks/2619-3c9e02e22d10480a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"734\",\"static/chunks/734-9cd027f8a4fe6136.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2663\",\"static/chunks/2663-0dede9e6c4ffe948.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8197\",\"static/chunks/8197-047fbffb9fd0bc1d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8028\",\"static/chunks/8028-092da74c7ab82549.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"4545\",\"static/chunks/4545-5e14d14f7fb19bf4.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2884\",\"static/chunks/2884-724f8ccfada609d7.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9955\",\"static/chunks/9955-e72ce8f7e660b24d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9599\",\"static/chunks/9599-388af8aea021ea48.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"7177\",\"static/chunks/app/layout-e22937023721c497.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\"],\"ToastContainerWrapper\"]\n"])</script>
457<script>self.__next_f.push([1,"13:I[5423,[\"5316\",\"static/chunks/5316-f9f6a1a6e3b648ee.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2619\",\"static/chunks/2619-3c9e02e22d10480a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"734\",\"static/chunks/734-9cd027f8a4fe6136.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2663\",\"static/chunks/2663-0dede9e6c4ffe948.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8197\",\"static/chunks/8197-047fbffb9fd0bc1d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8028\",\"static/chunks/8028-092da74c7ab82549.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"4545\",\"static/chunks/4545-5e14d14f7fb19bf4.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2884\",\"static/chunks/2884-724f8ccfada609d7.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9955\",\"static/chunks/9955-e72ce8f7e660b24d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9599\",\"static/chunks/9599-388af8aea021ea48.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"7177\",\"static/chunks/app/layout-e22937023721c497.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\"],\"CookieConsent\"]\n"])</script>
457<script>self.__next_f.push([1,"14:I[5998,[\"5316\",\"static/chunks/5316-f9f6a1a6e3b648ee.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2619\",\"static/chunks/2619-3c9e02e22d10480a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"734\",\"static/chunks/734-9cd027f8a4fe6136.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2663\",\"static/chunks/2663-0dede9e6c4ffe948.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8197\",\"static/chunks/8197-047fbffb9fd0bc1d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"8028\",\"static/chunks/8028-092da74c7ab82549.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"4545\",\"static/chunks/4545-5e14d14f7fb19bf4.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2884\",\"static/chunks/2884-724f8ccfada609d7.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9955\",\"static/chunks/9955-e72ce8f7e660b24d.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"9599\",\"static/chunks/9599-388af8aea021ea48.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"7177\",\"static/chunks/app/layout-e22937023721c497.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\"],\"default\"]\n"])</script>
457<script>self.__next_f.push([1,"15:I[1959,[],\"ClientPageRoot\"]\n16:I[5061,[\"5316\",\"static/chunks/5316-f9f6a1a6e3b648ee.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2619\",\"static/chunks/2619-3c9e02e22d10480a.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\",\"2902\",\"static/chunks/app/privacy-policy/page-9e0ab4d2a0526b1b.js?dpl=dpl_47oqSPwgFQ4793FcaPG5ojuR1W77\"],\"default\"]\n19:I[4431,[],\"OutletBoundary\"]\n1b:I[5278,[],\"AsyncMetadataOutlet\"]\n1d:I[4431,[],\"ViewportBoundary\"]\n1f:I[4431,[],\"MetadataBoundary\"]\n20:\"$Sreact.suspense\"\nb:T41df,"])</script>
457<script>self.__next_f.push([1,"\n (function() {\n 'use strict';\n \n // CRITICAL: Patch removeChild IMMEDIATELY before anything else can use it\n // This must be the very first thing we do\n const originalRemoveChild = Node.prototype.removeChild;\n Node.prototype.removeChild = function(child) {\n // Always check if child is actually a child before removing\n if (!child) {\n return child;\n }\n \n // Check if child is actually a child of this node\n if (child.parentNode === this) {\n try {\n return originalRemoveChild.call(this, child);\n } catch (e) {\n // Even if parentNode matches, Edge translation might have moved it\n // Use remove() as safe fallback\n if (typeof child.remove === 'function') {\n child.remove();\n return child;\n }\n // Silently return child if we can't remove it\n return child;\n }\n }\n \n // Child is not a child of this node - likely moved by translation\n // Try to remove from actual parent\n if (child.parentNode) {\n try {\n return originalRemoveChild.call(child.parentNode, child);\n } catch (e) {\n // If that fails, use remove()\n if (typeof child.remove === 'function') {\n child.remove();\n return child;\n }\n return child;\n }\n }\n \n // No parent - use remove() if available, otherwise just return\n if (typeof child.remove === 'function') {\n try {\n child.remove();\n } catch (e) {\n // Silently ignore\n }\n }\n return child;\n };\n \n // Detect Edge browser\n const isEdge = navigator.userAgent.includes('Edg');\n \n // Edge-specific: Global error handler to catch removeChild errors\n if (isEdge) {\n const originalErrorHandler = window.onerror;\n window.onerror = function(message, source, lineno, colno, error) {\n // Check if it's a removeChild error\n if (message \u0026\u0026 (message.toString().includes('removeChild') || message.toString().includes('not a child'))) {\n // Silently suppress Edge translation-related removeChild errors\n return true; // Prevent default error handling\n }\n // Call original error handler for other errors\n if (originalErrorHandler) {\n return originalErrorHandler.call(this, message, source, lineno, colno, error);\n }\n return false;\n };\n \n // Also catch unhandled promise rejections\n window.addEventListener('unhandledrejection', function(event) {\n const error = event.reason;\n if (error \u0026\u0026 (error.message \u0026\u0026 (error.message.includes('removeChild') || error.message.includes('not a child')))) {\n event.preventDefault();\n }\n });\n }\n \n // Clean Google Translate attributes that cause hydration mismatches\n const cleanTranslationAttributes = function() {\n // Remove Google Translate attributes from all elements\n const translationAttrs = ['_msthidden', '_mstaria-label', '_msthash', '_msttexthash'];\n document.querySelectorAll('*').forEach(function(el) {\n translationAttrs.forEach(function(attr) {\n if (el.hasAttribute(attr)) {\n el.removeAttribute(attr);\n }\n });\n });\n };\n \n // Clean attributes immediately and before React hydrates\n if (document.readyState === 'loading') {\n document.addEventListener('DOMContentLoaded', cleanTranslationAttributes);\n } else {\n cleanTranslationAttributes();\n }\n \n // Also clean attributes periodically (Google Translate adds them dynamically)\n const observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(mutation) {\n if (mutation.type === 'attributes') {\n const el = mutation.target;\n const translationAttrs = ['_msthidden', '_mstaria-label', '_msthash', '_msttexthash'];
457\n translationAttrs.forEach(function(attr) {\n if (el.hasAttribute \u0026\u0026 el.hasAttribute(attr)) {\n el.removeAttribute(attr);\n }\n });\n }\n // Clean attributes from added nodes\n mutation.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) { // Element node\n const translationAttrs = ['_msthidden', '_mstaria-label', '_msthash', '_msttexthash'];\n translationAttrs.forEach(function(attr) {\n if (node.hasAttribute \u0026\u0026 node.hasAttribute(attr)) {\n node.removeAttribute(attr);\n }\n });\n // Also clean child elements\n if (node.querySelectorAll) {\n node.querySelectorAll('*').forEach(function(child) {\n translationAttrs.forEach(function(attr) {\n if (child.hasAttribute(attr)) {\n child.removeAttribute(attr);\n }\n });\n });\n }\n }\n });\n });\n });\n \n // Observe the entire document for attribute changes\n observer.observe(document.body || document.documentElement, {\n attributes: true,\n subtree: true,\n childList: true,\n attributeFilter: ['_msthidden', '_mstaria-label', '_msthash', '_msttexthash']\n });\n \n // Also patch Element.remove() to be extra safe for Edge\n if (Element.prototype.remove) {\n const originalRemove = Element.prototype.remove;\n Element.prototype.remove = function() {\n try {\n // Check if element is still in DOM\n if (this.parentNode) {\n return originalRemove.call(this);\n }\n // Element is not in DOM, nothing to remove\n return;\n } catch (e) {\n // In Edge, translation can cause issues - silently handle\n const isEdge = navigator.userAgent.includes('Edg');\n if (!isEdge) {\n console.warn('remove() error suppressed (likely due to page translation):', e.message);\n }\n }\n };\n }\n \n // Edge-specific: Also patch ParentNode methods that might call removeChild\n if (Element.prototype.replaceChildren) {\n const originalReplaceChildren = Element.prototype.replaceChildren;\n Element.prototype.replaceChildren = function() {\n try {\n return originalReplaceChildren.apply(this, arguments);\n } catch (e) {\n // If replaceChildren fails due to translation, try manual replacement\n const isEdge = navigator.userAgent.includes('Edg');\n if (isEdge \u0026\u0026 e.message \u0026\u0026 e.message.includes('removeChild')) {\n // Clear children manually using innerHTML as fallback\n this.innerHTML = '';\n // Then append new children\n Array.from(arguments).forEach(function(child) {\n if (child) {\n this.appendChild(child);\n }\n }, this);\n return;\n }\n throw e;\n }\n };\n }\n \n // Remove translation overlays (Google Translate and Edge Translate) that block clicks\n const removeTranslationOverlays = function() {\n // Remove Google Translate banner/frame that might block clicks\n const translateBanner = document.querySelector('.goog-te-banner-frame');\n if (translateBanner) {\n const iframe = translateBanner.querySelector('iframe');\n if (iframe) {\n iframe.style.pointerEvents = 'none';\n }\n }\n \n // Remove Edge Translate overlays (Edge uses different selectors)\n const edgeTranslateOverlays = document.querySelectorAll('[id*=\"MicrosoftTranslator\"], [class*=\"MicrosoftTranslator\"], [id*=\"EdgeTranslator\"], [class*=\"EdgeTranslator\"]');\n edgeTranslateOverlays.forEach(function(el) {\n el.style.pointerEvents = 'none';\n el.style.display = 'none';\n });\n \n // Remove any high z-index overlays that might block clicks (common in Edge)\n document.querySelectorAll('*').forEach(function(el) {\n const style = window.getComputedStyle(el);\n const zIndex = parseInt(style.zIndex) || 0;\n const position = style.position;\n \n // If it's a fixed/absolute positioned element with very high z-index\n if ((position === 'fixed' || position === 'absolute') \u0026\u0026 zIndex \u003e 9999) {\n // Check if it's likely a translation overlay\n const isTranslationOverlay = \n (el.id \u0026\u0026 (el.id.includes('translate') || el.id.includes('translator') || el.id.includes('Microsoft'))) ||\n (el.className \u0026\u0026 (el.className.includes('translate') || el.className.includes('translator') || el.className.includes('Microsoft'))) ||\n (!el.querySelector('*') \u0026\u0026 el.textContent === '');\n \n if (isTranslationOverlay \u0026\u0026 !el.querySelector('iframe')) {\n el.style.pointerEvents = 'none';\n el.style.display = 'none';\n }\n }\n });\n \n // Ensure all interactive elements remain clickable\n const interactiveSelectors = 'button, a, input, select, textarea, [role=\"button\"], [onclick], [tabindex], [type=\"submit\"], [type=\"button\"]';
457\n document.querySelectorAll(interactiveSelectors).forEach(function(el) {\n // Force pointer-events on interactive elements\n const computedStyle = window.getComputedStyle(el);\n if (computedStyle.pointerEvents === 'none' || el.style.pointerEvents === 'none') {\n el.style.pointerEvents = 'auto';\n el.style.zIndex = '9999'; // Ensure interactive elements are on top\n }\n \n // Remove any translation wrappers that might block clicks\n let parent = el.parentElement;\n let depth = 0;\n while (parent \u0026\u0026 depth \u003c 5) { // Check up to 5 levels up\n const parentStyle = window.getComputedStyle(parent);\n const hasTranslationAttr = parent.hasAttribute('_msthidden') || \n parent.hasAttribute('_msthash') || \n parent.hasAttribute('_msttexthash') ||\n (parent.id \u0026\u0026 (parent.id.includes('translate') || parent.id.includes('translator'))) ||\n (parent.className \u0026\u0026 (parent.className.includes('translate') || parent.className.includes('translator')));\n \n if (hasTranslationAttr \u0026\u0026 parentStyle.pointerEvents === 'none') {\n parent.style.pointerEvents = 'auto';\n }\n \n // If parent is a span wrapper around interactive element, make it not block\n if (parent.tagName === 'SPAN' \u0026\u0026 hasTranslationAttr) {\n parent.style.pointerEvents = 'none';\n }\n \n parent = parent.parentElement;\n depth++;\n }\n });\n \n // Make translation text wrappers not block pointer events\n document.querySelectorAll('span, div').forEach(function(el) {\n // If element is a translation wrapper (span/div with translation attributes)\n const hasTranslationAttr = el.hasAttribute('_msthidden') || \n el.hasAttribute('_msthash') || \n el.hasAttribute('_msttexthash') ||\n (el.id \u0026\u0026 (el.id.includes('translate') || el.id.includes('translator'))) ||\n (el.className \u0026\u0026 (el.className.includes('translate') || el.className.includes('translator')));\n \n if (hasTranslationAttr) {\n // Check if it's wrapping an interactive element\n const hasInteractiveChild = el.querySelector('button, a, input, select, textarea, [role=\"button\"], [onclick]');\n if (hasInteractiveChild) {\n // Make the wrapper not block clicks\n el.style.pointerEvents = 'none';\n } else {\n // For text-only wrappers, allow pointer events to pass through\n const computedStyle = window.getComputedStyle(el);\n if (computedStyle.pointerEvents === 'none') {\n el.style.pointerEvents = 'auto';\n }\n }\n }\n });\n };\n \n // Targeted fix: only restore pointer events on elements that are actually blocked,\n // and only hide translation-related overlays that are covering them.\n // IMPORTANT: Never unconditionally set cursor/z-index/position â that causes hydration mismatches.\n const forceClickable = function() {\n const interactiveElements = document.querySelectorAll('button, a, input, select, textarea, [role=\"button\"], [onclick], [tabindex], [type=\"submit\"], [type=\"button\"], label[for]');\n\n interactiveElements.forEach(function(el) {\n // Only unblock if pointer-events is explicitly set to none\n const computedStyle = window.getComputedStyle(el);\n if (computedStyle.pointerEvents === 'none') {\n el.style.pointerEvents = 'auto';\n }\n\n // Find and hide translation overlays that are physically blocking this element\n const rect = el.getBoundingClientRect();\n if (rect.width === 0 \u0026\u0026 rect.height === 0) return; // off-screen / hidden, skip\n const centerX = rect.left + rect.width / 2;\n const centerY = rect.top + rect.height / 2;\n const elementAtPoint = document.elementFromPoint(centerX, centerY);\n\n if (elementAtPoint \u0026\u0026 elementAtPoint !== el \u0026\u0026 !el.contains(elementAtPoint)) {\n const blockingEl = elementAtPoint;\n const blockingClassName =\n typeof blockingEl.className === 'string'\n ? blockingEl.className\n : (blockingEl.className \u0026\u0026 typeof blockingEl.className.baseVal === 'string'\n ? blockingEl.className.baseVal\n : '');\n\n const isTranslationElement =\n blockingEl.hasAttribute('_msthidden') ||\n blockingEl.hasAttribute('_msthash') ||\n blockingEl.hasAttribute('_msttexthash') ||\n (blockingEl.id \u0026\u0026 (blockingEl.id.includes('translate') || blockingEl.id.includes('translator') || blockingEl.id.includes('Microsoft'))) ||\n (blockingClassName \u0026\u0026 (blockingClassName.includes('translate') || blockingClassName.includes('translator') || blockingClassName.includes('Microsoft')));\n\n if (isTranslationElement) {\n blockingEl.style.pointerEvents = 'none';\n blockingEl.style.display = 'none';\n }\n }\n\n // Restore pointer events on parent elements if blocked by a translation wrapper\n let parent = el.parentElement;\n let depth = 0;\n while (parent \u0026\u0026 depth \u003c 10) {\n const hasTranslationAttr =\n parent.hasAttribute('_msthidden') ||\n parent.hasAttribute('_msthash') ||\n parent.hasAttribute('_msttexthash');\n if (hasTranslationAttr) {\n const parentComputed = window.getComputedStyle(parent);\n if (parentComputed.pointerEvents === 'none') {\n parent.style.pointerEvents = 'auto';\n }\n }\n parent = parent.parentElement;\n depth++;\n }\n });\n };\n\n // Run once after DOM is ready; re-run on translation-driven DOM mutations only\n removeTranslationOverlays();\n forceClickable();\n\n // Run every 2s (instead of 500ms) â translation changes are slow;
457 no need to hammer the DOM\n setInterval(function() {\n removeTranslationOverlays();\n forceClickable();\n }, 2000);\n\n // Also run when DOM changes (translation modifies DOM)\n const clickObserver = new MutationObserver(function() {\n removeTranslationOverlays();\n forceClickable();\n });\n \n if (document.body) {\n clickObserver.observe(document.body, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['style', 'class', 'id']\n });\n }\n \n // Also listen for click events and ensure they work\n document.addEventListener('click', function(e) {\n const target = e.target;\n // If click is on a translation wrapper, find the actual button underneath\n if (target \u0026\u0026 target.nodeType === 1 \u0026\u0026 (target.hasAttribute('_msthidden') || target.hasAttribute('_msthash'))) {\n const interactiveChild = target.closest('button, a, input, select, textarea, [role=\"button\"]');\n if (interactiveChild) {\n e.stopPropagation();\n if (interactiveChild instanceof HTMLElement) {\n interactiveChild.click();\n }\n }\n }\n }, true); // Use capture phase to catch early\n \n console.log('â
DOM error patch applied - removeChild is now safe from translation errors');\n console.log('â
Google Translate attribute cleaner active - hydration mismatches prevented');\n console.log('â
Google Translate overlay remover active - click events enabled');\n })();\n"])</script>
457<script>self.__next_f.push([1,"5:[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"$b\"},\"suppressHydrationWarning\":true}]\n"])</script>
457<script>self.__next_f.push([1,"6:[\"$\",\"body\",null,{\"className\":\"__className_f367f3\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$Lc\",null,{\"children\":[[\"$\",\"$Ld\",null,{\"children\":[\"$\",\"$Le\",null,{\"children\":[\"$\",\"$Lf\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L10\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}],[\"$\",\"$L11\",null,{}],[\"$\",\"$L12\",null,{}],[\"$\",\"$L13\",null,{}],[\"$\",\"$L14\",null,{}]]}]}]\n"])</script>
457<script>self.__next_f.push([1,"7:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$Lf\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L10\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\n8:[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L15\",null,{\"Component\":\"$16\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@17\",\"$@18\"]}],null,[\"$\",\"$L19\",null,{\"children\":[\"$L1a\",[\"$\",\"$L1b\",null,{\"promise\":\"$@1c\"}]]}]]}]\n9:[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$L1d\",null,{\"children\":\"$L1e\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]],[\"$\",\"$L1f\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$20\",null,{\"fallback\":null,\"children\":\"$L21\"}]}]}]]}]\n"])</script>
457<script>self.__next_f.push([1,"17:{}\n18:\"$8:props:children:0:props:params\"\n"])</script>
457<script>self.__next_f.push([1,"1e:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n1a:null\n"])</script>
457<script>self.__next_f.push([1,"22:I[622,[],\"IconMark\"]\n"])</script>
457<script>self.__next_f.push([1,"1c:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Privacy Policy | Artist AI VIDEO\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Read the Artist AI VIDEO privacy policy. Learn how we collect, use, and protect your personal data on our AI video generation platform.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"author\",\"content\":\"Artist AI VIDEO\"}],[\"$\",\"meta\",\"3\",{\"name\":\"keywords\",\"content\":\"AI video generation,AI video editor,AI video creator,video enhancement,AI art,text to video,AI video platform,video editing online\"}],[\"$\",\"meta\",\"4\",{\"name\":\"creator\",\"content\":\"Artist AI VIDEO\"}],[\"$\",\"meta\",\"5\",{\"name\":\"publisher\",\"content\":\"Artist AI VIDEO\"}],[\"$\",\"meta\",\"6\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"meta\",\"7\",{\"name\":\"googlebot\",\"content\":\"index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1\"}],[\"$\",\"link\",\"8\",{\"rel\":\"canonical\",\"href\":\"https://www.artistai.jp\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:title\",\"content\":\"Privacy Policy | Artist AI VIDEO\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:description\",\"content\":\"Read the Artist AI VIDEO privacy policy and how we protect your data.\"}],[\"$\",\"meta\",\"11\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"12\",{\"name\":\"twitter:title\",\"content\":\"Artist AI VIDEO â AI Video Generation \u0026 Editing Platform\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:description\",\"content\":\"AI-powered video generation and editing platform. Create, enhance, and transform videos with intelligent AI tools.\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:image\",\"content\":\"https://www.artistai.jp/logo/logo.png\"}],[\"$\",\"link\",\"15\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"link\",\"16\",{\"rel\":\"icon\",\"href\":\"/logo/logo_min.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"$L22\",\"17\",{}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script>
457<script>self.__next_f.push([1,"21:\"$1c:metadata\"\n"])</script>
457<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4bc70e2c01a94c73b74392e4234840661791215815920" integrity="sha512-L0ha0OXavK/8okipN9F8BtP84dg9DUhPERbBXzwI6dgTA55d2+yweo3pn5CSFYs45/r8md2+xvUPtTdvTNRfjA==" data-cf-beacon='{"version":"2024.11.0","token":"34e7db0097ea4bc89aa8f3ad8faf91f8","r":1,"spa":2}' crossorigin="anonymous"></script>
457 458</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.