:root{--brand-primary:#06c;--brand-light:#6cf;--brand-gradient:linear-gradient(135deg,#6cf,#06c);--brand-gradient-hover:linear-gradient(135deg,#7ad4ff,#1c7ed6);--brand-text-color:#333;--text-black:#333;--icon-color:#0065cc;--icon-bg-color:#e4edf7;--background-color:#fafaff;--spacing-xs:0.5rem;--spacing-sm:0.75rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--brand-border-radius:12px;--brand-shadow:0px 4px 8px rgba(0,0,0,.15)}@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Roboto:wght@500;700&display=swap");*{margin:0;padding:0;border:none;box-sizing:border-box}body{font-family:Noto Sans JP,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;color:var(--brand-text-color);background-color:var(--background-color);background:linear-gradient(135deg,#f8fafc,#e2e8f0);text-align:center;padding-bottom:60px;background-repeat:no-repeat;min-height:100vh;-webkit-user-select:none;-moz-user-select:none;user-select:none}span{display:block}.box{width:85%;height:auto;background-color:#fff;box-shadow:var(--brand-shadow);border-radius:var(--brand-border-radius);padding:var(--spacing-lg);margin:30px auto;max-width:500px;position:relative;overflow:hidden}.gradient-bar{height:8px;background:var(--brand-gradient);border-radius:var(--brand-border-radius) var(--brand-border-radius) 0 0;margin:calc(-1 * var(--spacing-lg)) calc(-1 * var(--spacing-lg)) var(--spacing-lg)}.box .title{font-size:20px;margin:2px 0}.box .text{font-size:13px;padding:3px 0;width:100%}.box .subtitle{font-size:16px;border-top:1px solid #d6d6d6;padding:3px 0}.box .sub_subtitle{font-size:18px;padding:3px 0}.logo{width:80%;margin:10px 0}#section1 p{font-size:25px}.number{font-size:50px;font-weight:700}.display-number{font-family:Roboto,ui-monospace,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.tel{font-size:25px;font-weight:700;border-top:1px solid #d6d6d6;padding:3px 0}a{color:#00e;text-decoration:none}.timetable{width:90%}.btn-brand{display:inline-block;background:var(--brand-gradient);border:none;color:#fff;font-weight:500;padding:.6rem 1rem;border-radius:8px;transition:all .3s ease;text-decoration:none}.btn-brand:hover{background:var(--brand-gradient-hover);transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,204,255,.3)}.btn-brand-outline{display:inline-block;border:2px solid var(--brand-primary);color:var(--brand-primary);background:transparent;font-weight:500;padding:.5rem .9rem;border-radius:8px;transition:all .3s ease;text-decoration:none}.btn-brand-outline:hover{background:var(--brand-gradient);color:#fff;transform:translateY(-1px)}.fade-in{animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pulse-glow{animation:pulseGlow 2s infinite}@keyframes pulseGlow{0%,to{box-shadow:0 0 20px rgba(102,204,255,.3)}50%{box-shadow:0 0 30px rgba(102,204,255,.6)}}.icon-box{width:36px;height:36px;background-color:var(--icon-bg-color);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--icon-color)}.login-background{background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh}.dark-background{background:linear-gradient(135deg,#0f172a,#1e293b);min-height:100vh}.receipt-item{width:50%;height:25%;border:2px solid #000;padding:16px;font-size:16px;line-height:1.4;box-sizing:border-box;position:relative;background:#fff;display:flex;flex-direction:column}.receipt-header{text-align:center;font-size:24px;font-weight:700;margin-bottom:16px;color:#000;border-bottom:2px solid #000;padding-bottom:8px}