/* トップ・製品ページ用スタイル（デザイン案から生成）。配色やフォントの調整はここで行う */
html{scroll-behavior:smooth}
body{margin:0;font-family:'Zen Kaku Gothic New',sans-serif;color:#E6E6FF;background:#08070F;line-height:1.8}
a{color:#39FF88}a:hover{color:#B5FFD3}
input:focus,textarea:focus{outline:2px solid #00F0FF;outline-offset:2px}
@keyframes iqblink{0%,49%{opacity:1}50%,100%{opacity:0}}
@keyframes iqco2{0%,100%{background:#2B7BFF;box-shadow:0 0 48px #2B7BFF}35%{background:#39FF88;box-shadow:0 0 48px #39FF88}70%{background:#FF3B3B;box-shadow:0 0 56px #FF3B3B}}
@media (prefers-reduced-motion: reduce){*{animation:none !important}html{scroll-behavior:auto}}

.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:14px;font-weight:700}
.field input,.field textarea{font:inherit;color:#E6E6FF;padding:0 14px;border:1px solid rgba(0,240,255,.5);background:#100E1C;box-sizing:border-box;width:100%}
.field input{height:50px}
.field textarea{padding:12px 14px;resize:vertical}
.form{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:20px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-submit{font:inherit;font-weight:700;height:54px;padding:0 40px;border:0;background:#39FF88;color:#08070F;cursor:pointer;align-self:flex-start;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px))}
.form-submit:disabled{opacity:.6;cursor:wait}
.form-status{margin:0;font-size:15px;min-height:1.8em;font-weight:700}
.form-status.ok{color:#39FF88}
.form-status.ng{color:#FF9A9A}

.u1{width: 100%; background: #08070F; overflow-x: hidden;}
.u2{padding: 0 24px; border-bottom: 1px solid rgba(0,240,255,.35); background: #0C0A18;}
.u3{max-width: 1200px; margin: 0 auto; min-height: 72px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 32px;}
.u4{font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: 22px; letter-spacing: 0.06em; color: #00F0FF; text-decoration: none; text-shadow: 0 0 12px #00F0FF; padding: 10px 0;}
.u5{display: flex; flex-wrap: wrap; align-items: center; gap: 4px 28px; font-family: 'JetBrains Mono', monospace; font-size: 13px; letter-spacing: 0.06em;}
.u6{color: #E6E6FF; text-decoration: none; padding: 12px 0;}
.u7{color: #08070F; background: #00F0FF; text-decoration: none; padding: 10px 20px; font-weight: 500; clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));}
.u8{padding: 80px 24px 96px; background-color: #08070F; background-image: radial-gradient(circle at 12% 18%, rgba(167,66,255,.28), transparent 42%), radial-gradient(circle at 88% 0%, rgba(0,240,255,.2), transparent 45%), radial-gradient(circle at 60% 100%, rgba(255,43,214,.16), transparent 50%), linear-gradient(rgba(0,240,255,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(0,240,255,.06) 1px, transparent 1px); background-size: auto, auto, auto, 48px 48px, 48px 48px;}
.u9{max-width: 1200px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: flex-end; gap: 48px;}
.u10{flex: 999 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 28px;}
.u11{font-family: 'JetBrains Mono', monospace; font-size: 14px; letter-spacing: 0.16em; color: #39FF88; text-shadow: 0 0 10px rgba(57,255,136,.6);}
.u12{animation: iqblink 1.1s steps(1) infinite;}
.u13{margin: 0; font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: clamp(46px, 9.5vw, 128px); line-height: 0.98; letter-spacing: -0.01em;}
.u14{display: block; color: #00F0FF; text-shadow: 0 0 6px #00F0FF, 0 0 32px rgba(0,240,255,.5);}
.u15{display: block; color: #FF2BD6; text-shadow: 0 0 6px #FF2BD6, 0 0 32px rgba(255,43,214,.5);}
.u16{display: block; color: #C58BFF; text-shadow: 0 0 6px #A742FF, 0 0 32px rgba(167,66,255,.6);}
.u17{display: block; color: #39FF88; text-shadow: 0 0 6px #39FF88, 0 0 32px rgba(57,255,136,.5);}
.u18{font-family: 'JetBrains Mono', monospace; font-weight: 500; font-size: 0.16em; letter-spacing: 0.08em; margin-left: 0.8em; padding: 0.3em 0.7em; border: 1px solid #39FF88; vertical-align: middle; text-shadow: none;}
.u19{display: block; color: #FFFFFF; font-size: 1.5em; text-shadow: 0 0 8px #FFFFFF, 0 0 28px rgba(0,240,255,.8), 0 0 64px rgba(255,43,214,.6);}
.u20{margin: 0; font-size: clamp(22px, 2.6vw, 32px); font-weight: 900; line-height: 1.5;}
.u21{margin: 0; font-size: 16px; color: #B4B0D6; max-width: 600px;}
.u22{display: flex; flex-wrap: wrap; gap: 16px;}
.u23{background: #00F0FF; color: #08070F; text-decoration: none; font-weight: 700; padding: 15px 32px; clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 14px 100%, 0 calc(100% - 14px));}
.u24{color: #E6E6FF; text-decoration: none; font-weight: 700; padding: 14px 32px; border: 1px solid #FF2BD6; box-shadow: 0 0 18px rgba(255,43,214,.35);}
.u25{flex: 1 1 380px; min-width: 0; background: rgba(12,10,24,.85); border: 1px solid rgba(0,240,255,.45); box-shadow: 0 0 32px rgba(0,240,255,.18);}
.u26{display: flex; align-items: center; gap: 8px; padding: 10px 16px; border-bottom: 1px solid rgba(0,240,255,.3); font-family: 'JetBrains Mono', monospace; font-size: 12px; color: #8B87AD;}
.u27{width: 10px; height: 10px; background: #FF2BD6; display: inline-block;}
.u28{width: 10px; height: 10px; background: #A742FF; display: inline-block;}
.u29{width: 10px; height: 10px; background: #00F0FF; display: inline-block;}
.u30{margin-left: 8px;}
.u31{padding: 20px; font-family: 'JetBrains Mono', monospace; font-size: 13px; line-height: 2; overflow-x: auto; white-space: nowrap;}
.u32{color: #E6E6FF;}
.u33{color: #8B87AD;}
.u34{color: #00F0FF;}
.u35{color: #C58BFF;}
.u36{color: #FF2BD6;}
.u37{color: #39FF88;}
.u38{color: #FFFFFF;}
.u39{color: #39FF88; text-shadow: 0 0 10px rgba(57,255,136,.6);}
.u40{padding: 104px 24px; border-top: 1px solid rgba(167,66,255,.4);}
.u41{max-width: 1200px; margin: 0 auto; display: flex; flex-direction: column; gap: 48px;}
.u42{display: flex; flex-direction: column; gap: 12px;}
.u43{font-family: 'JetBrains Mono', monospace; font-size: 13px; letter-spacing: 0.16em; color: #A742FF; text-shadow: 0 0 8px rgba(167,66,255,.7);}
.u44{margin: 0; font-size: clamp(28px, 4vw, 48px); font-weight: 900; line-height: 1.35;}
.u45{display: flex; flex-wrap: wrap; gap: 24px;}
.u46{flex: 1 1 250px; background: rgba(18,16,32,.8); border: 1px solid rgba(0,240,255,.35); border-top: 3px solid #00F0FF; padding: 32px; display: flex; flex-direction: column; gap: 14px; box-shadow: 0 0 24px rgba(0,240,255,.1);}
.u47{font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: 72px; line-height: 1; color: #00F0FF; text-shadow: 0 0 20px rgba(0,240,255,.6);}
.u48{margin: 0; font-size: 20px;}
.u49{margin: 0; font-size: 15px; color: #B4B0D6;}
.u50{flex: 1 1 250px; background: rgba(18,16,32,.8); border: 1px solid rgba(255,43,214,.35); border-top: 3px solid #FF2BD6; padding: 32px; display: flex; flex-direction: column; gap: 14px; box-shadow: 0 0 24px rgba(255,43,214,.1);}
.u51{font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: 72px; line-height: 1; color: #FF2BD6; text-shadow: 0 0 20px rgba(255,43,214,.6);}
.u52{flex: 1 1 250px; background: rgba(18,16,32,.8); border: 1px solid rgba(167,66,255,.45); border-top: 3px solid #A742FF; padding: 32px; display: flex; flex-direction: column; gap: 14px; box-shadow: 0 0 24px rgba(167,66,255,.14);}
.u53{font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: 72px; line-height: 1; color: #C58BFF; text-shadow: 0 0 20px rgba(167,66,255,.7);}
.u54{flex: 1 1 250px; background: rgba(18,16,32,.8); border: 1px solid rgba(57,255,136,.35); border-top: 3px solid #39FF88; padding: 32px; display: flex; flex-direction: column; gap: 14px; box-shadow: 0 0 24px rgba(57,255,136,.1);}
.u55{font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: 72px; line-height: 1; color: #39FF88; text-shadow: 0 0 20px rgba(57,255,136,.6);}
.u56{display: flex; flex-wrap: wrap; align-items: center; gap: 24px 56px; border: 1px solid rgba(167,66,255,.55); padding: 44px 40px; box-shadow: 0 0 36px rgba(167,66,255,.2); background-image: linear-gradient(rgba(167,66,255,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(167,66,255,.07) 1px, transparent 1px); background-size: 32px 32px;}
.u57{flex: 0 1 auto; font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: clamp(56px, 10vw, 136px); line-height: 0.9; color: #C58BFF; text-shadow: 0 0 8px #A742FF, 0 0 40px rgba(167,66,255,.7);}
.u58{flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 12px;}
.u59{margin: 0; font-size: clamp(22px, 2.6vw, 30px); font-weight: 900; line-height: 1.4;}
.u60{font-family: 'Chakra Petch', sans-serif; font-size: 1.6em; color: #39FF88; text-shadow: 0 0 16px rgba(57,255,136,.6); margin: 0 0.1em;}
.u61{padding: 104px 24px; background: #0C0A18; border-top: 1px solid rgba(0,240,255,.25);}
.u62{max-width: 1200px; margin: 0 auto; display: flex; flex-direction: column; gap: 40px;}
.u63{display: flex; flex-direction: column; border-top: 1px solid rgba(0,240,255,.3);}
.u64{display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 32px; padding: 28px 0; border-bottom: 1px solid rgba(0,240,255,.3);}
.u65{flex: 0 0 56px; font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: 28px; color: #00F0FF;}
.u66{flex: 1 1 260px; margin: 0; font-size: 24px; font-weight: 900;}
.u67{flex: 2 1 420px; margin: 0; font-size: 15px; color: #B4B0D6;}
.u68{padding: 104px 24px; border-top: 1px solid rgba(255,43,214,.3);}
.u69{display: flex; flex-wrap: wrap; background: rgba(18,16,32,.8); border: 1px solid rgba(255,43,214,.5); box-shadow: 0 0 36px rgba(255,43,214,.18);}
.u70{flex: 1 1 420px; min-width: 0; padding: 40px; display: flex; flex-direction: column; gap: 18px;}
.u71{font-family: 'JetBrains Mono', monospace; font-size: 12px; letter-spacing: 0.14em; color: #FF2BD6;}
.u72{margin: 0; font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: clamp(40px, 6vw, 72px); line-height: 1; letter-spacing: 0.02em;}
.u73{margin: 0; font-size: 18px; font-weight: 700;}
.u74{display: flex; flex-wrap: wrap; gap: 8px; font-size: 13px;}
.u75{border: 1px solid rgba(0,240,255,.4); color: #00F0FF; padding: 3px 12px;}
.u76{align-self: flex-start; font-weight: 700; padding: 10px 0; text-shadow: 0 0 8px rgba(57,255,136,.5);}
.u77{flex: 1 1 360px; min-height: 300px; display: flex; align-items: center; justify-content: center; border-left: 1px solid rgba(255,43,214,.3); background-image: linear-gradient(rgba(255,43,214,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,43,214,.08) 1px, transparent 1px); background-size: 32px 32px; font-family: 'JetBrains Mono', monospace; font-size: 13px; color: #B4B0D6;}
.u78{flex: 2 1 560px; min-width: 0; display: flex; flex-wrap: wrap; background: rgba(18,16,32,.8); border: 1px solid rgba(0,240,255,.45); box-shadow: 0 0 28px rgba(0,240,255,.14);}
.u79{flex: 0 1 220px; min-height: 220px; display: flex; border-right: 1px solid rgba(0,240,255,.25);}
.u80{display: block; width: 100%; height: 100%; min-height: 220px; object-fit: cover;}
.u81{flex: 1 1 300px; min-width: 0; padding: 32px; display: flex; flex-direction: column; gap: 12px;}
.u82{margin: 0; font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: clamp(30px, 4vw, 44px); line-height: 1.05;}
.u83{margin: 0; font-size: 17px; font-weight: 700;}
.u84{display: flex; flex-wrap: wrap; gap: 4px 24px;}
.u85{font-weight: 700; padding: 10px 0; text-shadow: 0 0 8px rgba(57,255,136,.5);}
.u86{font-weight: 700; padding: 10px 0;}
.u87{flex: 1 1 300px; min-width: 0; min-height: 180px; padding: 32px; display: flex; flex-direction: column; justify-content: center; gap: 12px; background: rgba(18,16,32,.8); border: 1px solid rgba(167,66,255,.5); box-shadow: 0 0 28px rgba(167,66,255,.16);}
.u88{margin: 0; font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: clamp(30px, 4vw, 44px); line-height: 1.05; letter-spacing: 0.04em;}
.u89{flex: 1 1 300px; min-width: 0; min-height: 180px; padding: 32px; display: flex; flex-direction: column; justify-content: center; gap: 12px; background: rgba(18,16,32,.8); border: 1px solid rgba(57,255,136,.45); box-shadow: 0 0 28px rgba(57,255,136,.14);}
.u90{display: flex; flex-wrap: wrap; gap: 56px;}
.u91{flex: 1 1 400px; min-width: 0; margin: 0; display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 0; font-size: 15px; align-content: start;}
.u92{padding: 16px 0; border-top: 1px solid rgba(139,135,173,.4); color: #B4B0D6;}
.u93{margin: 0; padding: 16px 0; border-top: 1px solid rgba(139,135,173,.4);}
.u94{padding: 16px 0; border-top: 1px solid rgba(139,135,173,.4); border-bottom: 1px solid rgba(139,135,173,.4); color: #B4B0D6;}
.u95{margin: 0; padding: 16px 0; border-top: 1px solid rgba(139,135,173,.4); border-bottom: 1px solid rgba(139,135,173,.4);}
.u96{flex: 1 1 400px; min-width: 0; display: flex; flex-direction: column; gap: 20px; border-left: 2px solid #00F0FF; padding-left: 28px; font-size: 15px;}
.u97{display: flex; flex-direction: column; gap: 2px;}
.u98{font-family: 'JetBrains Mono', monospace; font-size: 13px; color: #00F0FF;}
.u99{display: flex; flex-direction: column; border-top: 1px solid rgba(139,135,173,.4);}
.u100{display: flex; flex-wrap: wrap; gap: 4px 32px; padding: 18px 0; border-bottom: 1px solid rgba(139,135,173,.4);}
.u101{flex: 0 0 110px; font-family: 'JetBrains Mono', monospace; font-size: 14px; color: #B4B0D6;}
.u102{flex: 1 1 300px; font-weight: 700;}
.u103{padding: 104px 24px; border-top: 1px solid rgba(57,255,136,.35); background-image: radial-gradient(circle at 85% 100%, rgba(57,255,136,.14), transparent 45%), radial-gradient(circle at 0% 0%, rgba(167,66,255,.16), transparent 40%);}
.u104{max-width: 1200px; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 56px;}
.u105{flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 20px;}
.u106{margin: 0; font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: clamp(44px, 7vw, 96px); line-height: 1; color: #39FF88; text-shadow: 0 0 6px #39FF88, 0 0 32px rgba(57,255,136,.5);}
.u107{margin: 0; font-size: 16px; color: #B4B0D6;}
.u108{padding: 36px 24px; border-top: 1px solid rgba(0,240,255,.35); background: #0C0A18;}
.u109{max-width: 1200px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 32px; font-family: 'JetBrains Mono', monospace; font-size: 13px; color: #B4B0D6;}
.u110{color: #00F0FF; padding: 12px 0;}
.u111{max-width: 1200px; margin: 0 auto; min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 8px 32px;}
.u112{font-family: 'JetBrains Mono', monospace; font-size: 13px; color: #E6E6FF; text-decoration: none; padding: 12px 0;}
.u113{padding: 80px 24px 96px; background-image: radial-gradient(circle at 12% 18%, rgba(167,66,255,.28), transparent 42%), radial-gradient(circle at 88% 0%, rgba(0,240,255,.2), transparent 45%);}
.u114{max-width: 1200px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; gap: 56px;}
.u115{flex: 0 1 380px; min-width: 0;}
.u116{display: block; width: 100%; height: auto; border: 1px solid rgba(0,240,255,.45); box-shadow: 0 0 36px rgba(0,240,255,.25);}
.u117{flex: 1 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 20px;}
.u118{margin: 0; font-family: 'Chakra Petch', sans-serif; font-weight: 700; font-size: clamp(40px, 7vw, 88px); line-height: 1;}
.u119{margin: 0; font-size: clamp(20px, 2.4vw, 28px); font-weight: 900; line-height: 1.5;}
.u120{display: inline-block; background: #39FF88; color: #08070F; text-decoration: none; font-weight: 700; padding: 15px 32px; clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 14px 100%, 0 calc(100% - 14px));}
.u121{padding: 88px 24px; background: #0C0A18; border-top: 1px solid rgba(0,240,255,.25);}
.u122{flex: 1 1 360px; min-width: 0;}
.u123{margin: 12px 0 16px; font-size: clamp(26px, 3.4vw, 40px); font-weight: 900;}
.u124{margin: 0; padding-left: 1.4em; font-size: 15px; color: #B4B0D6;}
.u125{padding: 6px 0;}
.u126{margin: 0; display: grid; grid-template-columns: 96px minmax(0, 1fr); font-size: 15px;}
.u127{padding: 88px 24px; border-top: 1px solid rgba(255,43,214,.3);}
.u128{max-width: 1200px; margin: 0 auto; display: flex; flex-direction: column; gap: 32px;}
.u129{display: flex; flex-wrap: wrap; gap: 24px; align-items: flex-start;}
.u130{flex: 1 1 360px; min-width: 0; display: flex; flex-direction: column; gap: 8px;}
.u131{display: block; width: 100%; height: auto; border: 1px solid rgba(167,66,255,.45);}
.u132{margin: 0; font-size: 14px; color: #B4B0D6;}
.u133{flex: 1 1 260px; min-width: 0;}
.u134{padding: 72px 24px; border-top: 1px solid rgba(57,255,136,.35);}
.u135{max-width: 1200px; margin: 0 auto; display: flex; flex-direction: column; gap: 12px; font-size: 15px; color: #B4B0D6;}
.u136{margin: 0;}
.u137{max-width: 1200px; margin: 0 auto; font-family: 'JetBrains Mono', monospace; font-size: 13px; color: #B4B0D6;}

/* TrailRegist 紹介ページ */
.tr-wrap{max-width:1200px;margin:0 auto}
.tr-hero{padding:80px 24px 88px;background-image:radial-gradient(circle at 12% 18%,rgba(167,66,255,.28),transparent 42%),radial-gradient(circle at 88% 0%,rgba(0,240,255,.2),transparent 45%)}
.tr-hero-in{display:flex;flex-direction:column;gap:20px}
.tr-eyebrow{font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.16em;color:#A742FF;text-shadow:0 0 8px rgba(167,66,255,.7)}
.tr-title{margin:0;font-family:'Chakra Petch',sans-serif;font-weight:700;font-size:clamp(40px,7vw,88px);line-height:1}
.tr-lead{margin:0;font-size:clamp(20px,2.4vw,28px);font-weight:900;line-height:1.5}
.tr-status{margin:0;padding:16px 20px;max-width:640px;border:1px solid #FF2BD6;box-shadow:0 0 18px rgba(255,43,214,.3);background:rgba(255,43,214,.08);font-size:16px}
.tr-status strong{color:#FF8AEA;margin-right:.5em}
.tr-btn{display:inline-block;background:#39FF88;color:#08070F;text-decoration:none;font-weight:700;padding:15px 32px;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px))}
.tr-btn:hover{color:#08070F;background:#B5FFD3}
.tr-sec{padding:88px 24px;border-top:1px solid rgba(0,240,255,.25)}
.tr-sec .tr-wrap{display:flex;flex-direction:column;gap:20px}
.tr-alt{background:#0C0A18}
.tr-h2{margin:0;font-size:clamp(26px,3.4vw,40px);font-weight:900;line-height:1.35}
.tr-p{margin:0;font-size:16px;color:#B4B0D6;max-width:760px}
.tr-photos{display:flex;flex-wrap:wrap;gap:24px;margin-top:12px}
.tr-fig{flex:1 1 280px;min-width:0;margin:0;display:flex;flex-direction:column;gap:8px}
.tr-fig img{display:block;width:100%;height:auto;border:1px solid rgba(167,66,255,.45)}
.tr-fig figcaption{font-size:14px;color:#B4B0D6}
.tr-sec .tr-cols{flex-direction:row;flex-wrap:wrap;gap:56px}
.tr-col{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:16px}
.tr-list{margin:0;padding-left:1.2em;display:flex;flex-direction:column;gap:10px;font-size:15px;color:#B4B0D6}
