:root{--color-bg:#f5f5f7;--color-surface:#fff;--color-text:#1d1d1f;--color-muted:#6e6e73;--color-border:#d2d2d7;--color-accent:#0071e3;--color-accent-hover:#0077ed;--color-danger:#ff3b30;--color-success:#34c759;color:var(--color-text);background:var(--color-bg);font-family:system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Hiragino Sans,Yu Gothic,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-bg);margin:0}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}.hero{color:#fff;background:linear-gradient(90deg,#000000d1 0%,#00000094 42%,#00000029 100%),url(/ai-benkyou/images/hero-ai-workshop.png) 50%/cover;min-height:92vh;padding:18px 20px 56px}.nav{justify-content:space-between;align-items:center;max-width:1120px;margin:0 auto;display:flex}.brand{font-size:14px;font-weight:700}.nav-right{align-items:center;gap:18px;display:flex}.nav-links{color:#ffffffb8;gap:22px;font-size:14px;display:none}.version-switch{color:#fff;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f;border:1px solid #ffffff8c;border-radius:999px;align-items:center;gap:4px;padding:7px 16px;font-size:13px;font-weight:700;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.version-switch:hover{color:#0071e3;background:#ffffffeb;transform:translateY(-1px)}.hero-inner,.section-inner{max-width:1120px;margin:0 auto}.hero-inner{flex-direction:column;justify-content:center;align-items:flex-start;min-height:calc(92vh - 64px);padding-top:48px;display:flex}.eyebrow{color:var(--color-accent);letter-spacing:0;text-transform:uppercase;margin:0 0 12px;font-size:13px;font-weight:700}h1,h2,h3,p{margin-top:0}h1{letter-spacing:0;gap:4px;max-width:900px;margin-bottom:24px;font-size:clamp(46px,9vw,104px);line-height:.98;display:grid}.title-line{display:block}.title-line-accent{color:#0000;filter:drop-shadow(0 10px 26px #0071e342);background:linear-gradient(90deg,#fff 0%,#bde9ff 42%,#57b8ff 100%);-webkit-background-clip:text;background-clip:text}.title-version{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#8ed7ff;background:#0071e32e;border:1px solid #6ec6ff6b;border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-height:54px;margin-top:14px;padding:0 24px;font-size:clamp(22px,4vw,38px);display:inline-flex}.hero-copy{color:#ffffffe6;text-shadow:0 8px 28px #00000059;gap:10px;max-width:820px;font-size:clamp(18px,3vw,28px);line-height:1.55;display:grid}.hero-copy strong{color:#fff;font-size:clamp(22px,4vw,38px);line-height:1.35}.hero-copy span{color:#dff3ff;font-weight:800}.hero-meta{flex-wrap:wrap;gap:10px;margin:12px 0 28px;display:flex}.hero-meta span{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#fff;background:#ffffff24;border:1px solid #ffffff3d;border-radius:999px;padding:10px 14px}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.button,.event-apply{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-weight:700;transition:transform .16s,background .16s,color .16s;display:inline-flex}.button:hover,.event-apply:hover{transform:translateY(-1px)}.button.primary,.event-apply{background:var(--color-accent);color:#fff}.button.primary:hover,.event-apply:hover{background:var(--color-accent-hover)}.button.secondary{color:var(--color-text);background:#e8e8ed}.section{padding:54px 20px}.split{gap:24px;display:grid}.intro p:last-child{color:var(--color-muted);font-size:18px;line-height:1.9}.section-heading{margin-bottom:26px}.section-heading h2,.form-card h2{letter-spacing:0;margin-bottom:12px;font-size:clamp(30px,7vw,52px);line-height:1.12}.section-heading p:not(.eyebrow){color:var(--color-muted);line-height:1.7}.outcome-grid,.event-grid{gap:14px;display:grid}.outcome-card,.event-card,.form-card,details{background:#ffffffe0;border:1px solid #d2d2d7b8;border-radius:18px;box-shadow:0 18px 56px #1d1d1f12}.outcome-card{padding:22px;font-size:17px;font-weight:700;line-height:1.6}.event-card{flex-direction:column;gap:14px;padding:14px;display:flex;overflow:hidden}.event-card.is-disabled{opacity:.72}.event-top,.seat-row{justify-content:space-between;align-items:center;display:flex}.event-thumb-button{aspect-ratio:16/9;cursor:pointer;background:#101014;border:0;border-radius:14px;width:100%;margin:0;padding:0;display:block;overflow:hidden}.event-thumb-button img{object-fit:cover;width:100%;height:100%;transition:transform .22s,filter .22s;display:block}.event-thumb-button:hover img{filter:saturate(1.08)contrast(1.04);transform:scale(1.035)}.event-no{color:var(--color-muted);font-weight:700}.status{border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}.status.open{color:#128235;background:#34c7591f}.status.few{color:#9a5b00;background:#ff950026}.status.full,.status.closed{color:var(--color-danger);background:#ff3b301c}.event-date{color:var(--color-accent);margin-bottom:-8px;font-weight:700}.event-card h3{margin-bottom:0;font-size:20px;line-height:1.45}.event-summary{color:var(--color-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.7;display:-webkit-box;overflow:hidden}.seat-row{text-align:center;background:#f5f5f7;border-radius:14px;padding:14px 12px}.seat-row div{flex:1}.seat-row strong{font-size:28px;display:block}.seat-row span{color:var(--color-muted);font-size:12px}.participants p{color:var(--color-muted);margin-bottom:8px;font-size:13px;font-weight:700}.participants ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.participants li,.empty{color:#3a3a3c;font-size:14px}.event-apply.disabled{color:#6e6e73;cursor:not-allowed;pointer-events:none;background:#d2d2d7}.event-detail-button{color:#fff;cursor:pointer;background:#1d1d1f;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:42px;padding:0 18px;font-weight:800;transition:transform .16s,background .16s;display:inline-flex}.event-detail-button:hover{background:#333338;transform:translateY(-1px)}.event-modal[hidden]{display:none}.event-modal{z-index:50;position:fixed;inset:0}.event-modal-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0000008f;position:absolute;inset:0}.event-modal-panel{background:#fff;border-radius:18px;width:min(100vw - 28px,940px);max-width:940px;max-height:min(88vh,840px);position:absolute;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 28px 90px #00000057}.modal-close{color:#fff;cursor:pointer;z-index:2;background:#1d1d1fdb;border:0;border-radius:999px;justify-content:center;align-items:center;width:44px;height:44px;margin:14px 14px -58px auto;font-size:26px;display:inline-flex;position:sticky;top:14px}.event-modal-image{aspect-ratio:16/9;object-fit:cover;width:100%;max-height:min(40vh,340px);display:block}.event-modal-body{gap:20px;padding:24px;display:grid}.event-modal-kicker{flex-wrap:wrap;gap:8px;display:flex}.event-modal-kicker span{color:var(--color-accent);background:#f5f5f7;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800}.event-modal-body h2{margin:0;font-size:clamp(28px,5vw,46px);line-height:1.18}.event-modal-copy{gap:16px;display:grid}.event-modal-copy section{background:#f5f5f7;border-radius:16px;padding:18px}.event-modal-copy h3{margin-bottom:8px;font-size:16px}.event-modal-copy p{color:#3a3a3c;margin:0;line-height:1.9}.forms{background:linear-gradient(#0208124d,#0208128f),url(/ai-benkyou/images/application-bg.png) 50%/cover;padding-top:76px;padding-bottom:76px}.photos{background:var(--color-bg);padding-top:34px}.photo-section-inner{max-width:1100px}.compact-heading{text-align:center;margin-bottom:18px}.compact-heading h2{font-size:clamp(24px,5vw,34px)}.compact-heading p:not(.eyebrow){font-size:14px}.photo-filmstrip-wrapper{width:100%;margin:36px 0 0;padding:32px 0 24px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%)}.photo-filmstrip{gap:32px;width:max-content;padding:18px 0;animation:50s linear infinite filmScroll;display:flex}.photo-filmstrip:hover{animation-play-state:paused}@keyframes filmScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.polaroid-card{cursor:pointer;background:#fff;border-radius:4px;flex-shrink:0;width:clamp(220px,22vw,300px);margin:0;padding:14px 14px 40px;transition:transform .45s cubic-bezier(.165,.84,.44,1),box-shadow .45s cubic-bezier(.165,.84,.44,1);position:relative;box-shadow:0 4px 16px #00000014,0 1px 4px #0000000f}.polaroid-1{transform:rotate(-3deg)}.polaroid-2{transform:rotate(2.5deg)translateY(10px)}.polaroid-3{transform:rotate(-1.5deg)translateY(-6px)}.polaroid-4{transform:rotate(4deg)translateY(14px)}.polaroid-5{transform:rotate(-2deg)translateY(-10px)}.polaroid-6{transform:rotate(3deg)translateY(8px)}.polaroid-7{transform:rotate(-4.5deg)translateY(4px)}.polaroid-8{transform:rotate(1.5deg)translateY(-12px)}.polaroid-9{transform:rotate(-3.5deg)translateY(16px)}.polaroid-card:hover{z-index:10;box-shadow:0 22px 50px #0000002e,0 6px 14px #0000001a;transform:rotate(0)scale(1.08)translateY(-14px)!important}.polaroid-img-wrap{border-radius:2px;line-height:0;overflow:hidden}.polaroid-img-wrap img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .5s cubic-bezier(.165,.84,.44,1);display:block}.polaroid-card:hover .polaroid-img-wrap img{transform:scale(1.04)}.polaroid-label{text-align:center;color:#5a5a5e;letter-spacing:.02em;margin-top:14px;font-family:Klee One,Yu Maru,Hiragino Maru Gothic ProN,Kosugi Maru,sans-serif;font-size:12px;font-weight:700;line-height:1.5;display:block}.polaroid-card:before{content:"";z-index:5;clip-path:polygon(0% 12%,3% 0%,97% 3%,100% 15%,98% 85%,95% 100%,5% 98%,0% 90%);background:#ffeb7899;width:64px;height:20px;position:absolute;top:-10px;left:50%;transform:translate(-50%)rotate(-2deg);box-shadow:0 1px 3px #0000000a}.polaroid-1:before{background:#ff789680;transform:translate(-55%)rotate(-5deg)}.polaroid-2:before{background:#78dcff80;transform:translate(-42%)rotate(3deg)}.polaroid-3:before{background:#96ff7880;transform:translate(-50%)rotate(-1deg)}.polaroid-4:before{background:#ffb45080;transform:translate(-48%)rotate(4deg)}.polaroid-5:before{background:#c896ff80;transform:translate(-52%)rotate(-3deg)}.polaroid-6:before{background:#ffeb7899;transform:translate(-50%)rotate(2deg)}.polaroid-7:before{background:#78dcff80;transform:translate(-54%)rotate(-4deg)}.polaroid-8:before{background:#ff789680;transform:translate(-46%)rotate(3deg)}.polaroid-9:before{background:#96ff7880;transform:translate(-50%)rotate(-2deg)}.form-layout{justify-items:center;gap:18px;display:grid}.form-layout.single-form{max-width:920px}.form-card{gap:18px;width:min(100%,840px);padding:24px;display:grid}.form-card.compact{align-self:start}.field-grid{gap:14px;display:grid}label,legend{color:var(--color-muted);gap:8px;font-size:13px;font-weight:700;display:grid}.field-hint{color:#8a8a8e;font-size:12px;font-weight:600}input,textarea{border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:12px;outline:none;width:100%;padding:13px 14px}input:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 4px #0071e31f}fieldset{border:0;margin:0;padding:0}.fee-box{background:linear-gradient(135deg,#0071e31a,#34c75914),#f5f5f7;border:1px solid #0071e329;border-radius:16px;gap:4px;padding:16px;display:grid}.fee-box span{color:var(--color-muted);font-size:13px;font-weight:700}.fee-box strong{color:var(--color-text);font-size:30px}.fee-box p{color:var(--color-muted);margin:0;line-height:1.6}.dynamic-fields{gap:14px;display:grid}.cancel-event-group{gap:8px;margin-top:12px;display:grid}.cancel-event-group p{color:var(--color-text);margin:0;font-size:14px;font-weight:800}.check-list,.radio-list{gap:8px;margin-top:8px;display:grid}.check-row,.radio-list label{color:var(--color-text);background:#f5f5f7;border-radius:12px;grid-template-columns:18px 1fr;align-items:start;gap:10px;padding:12px;font-size:14px;font-weight:600;line-height:1.5;display:grid}.check-row input,.radio-list input{width:auto;margin-top:3px}.check-row.disabled{color:var(--color-muted);opacity:.65}.submit-button{width:100%}.submit-button:disabled{color:#8e8e93;cursor:not-allowed;opacity:.8;pointer-events:none;background:#d2d2d7;transform:none}.form-notice{border-left:4px solid var(--color-danger);color:var(--color-danger);background:#ff3b300d;border-radius:4px;margin:-4px 0 16px;padding:10px 14px;font-size:13px;font-weight:700;line-height:1.5}.form-message{border-radius:12px;margin:0;padding:12px;font-weight:700;line-height:1.6}.form-message.info{color:var(--color-accent);background:#0071e31a}.form-message.success{color:#128235;background:#34c7591f}.form-message.error{color:var(--color-danger);background:#ff3b301a}.faq-list{gap:10px;display:grid}.visual-band{background:linear-gradient(90deg,#f5f5f7f5,#f5f5f7b8),url(/ai-benkyou/images/ai-workshop-bg.png) 50%/cover;border-top:1px solid #d2d2d7b3}.visual-band-content{gap:22px;display:grid}.content-divider{border:0;border-top:1px solid #0071e329;width:100%;margin:6px 0}.consulting-promo{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff94;border:1px solid #0071e329;border-radius:16px;padding:24px;box-shadow:0 10px 32px #1d1d1f0a}.promo-lead{color:var(--color-text);margin-bottom:10px;font-size:18px}.promo-text{color:var(--color-muted);margin-bottom:22px;font-size:14.5px;line-height:1.8}.promo-button{cursor:pointer;background:var(--color-accent);color:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-height:48px;padding:0 24px;font-size:14.5px;font-weight:700;transition:transform .16s,background .16s,box-shadow .16s;display:inline-flex;box-shadow:0 4px 14px #0071e333}.promo-button:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 8px 22px #0071e359}.promo-button .arrow{margin-left:6px;transition:transform .18s}.promo-button:hover .arrow{transform:translate(4px)}details{padding:18px 20px}summary{cursor:pointer;font-weight:700}details p{color:var(--color-muted);margin:12px 0 0;line-height:1.7}.footer{color:var(--color-muted);text-align:center;gap:8px;padding:40px 20px;display:grid}.footer p{color:var(--color-text);margin-bottom:0;font-weight:700}.footer a{color:var(--color-accent);font-weight:700}@media (width>=720px){.nav-links{display:flex}.split{grid-template-columns:.85fr 1.15fr}.outcome-grid,.field-grid,.event-modal-copy{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=980px){.forms{background-attachment:fixed}.event-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-layout{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.form-layout.single-form{grid-template-columns:minmax(0,1fr)}.outcome-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.submit-success-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1200;background:#0f0f148c;justify-content:center;align-items:center;padding:20px;animation:.25s success-fade;display:flex;position:fixed;inset:0}.submit-success-card{text-align:center;background:#fff;border-radius:20px;width:100%;max-width:420px;padding:34px 28px 28px;animation:.3s cubic-bezier(.2,.9,.3,1.4) success-pop;box-shadow:0 24px 64px #00000047}.submit-success-icon{font-size:44px;line-height:1}.submit-success-title{color:#1d1d1f;margin:12px 0 8px;font-size:22px;font-weight:800}.submit-success-text{color:#1d1d1f;word-break:break-all;margin:0 0 8px;font-size:15px;font-weight:600;line-height:1.6}.submit-success-note{color:#86868b;margin:0 0 20px;font-size:12px}.submit-success-close{color:#fff;cursor:pointer;background:#0071e3;border:0;border-radius:999px;padding:11px 44px;font-size:15px;font-weight:700;transition:background .2s,transform .2s}.submit-success-close:hover{background:#0a7cf0;transform:translateY(-1px)}@keyframes success-pop{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes success-fade{0%{opacity:0}to{opacity:1}}.venue-line{background:#0071e30d;border:1px solid #0071e32e;border-radius:10px;align-items:flex-start;gap:10px;padding:9px 12px;display:flex}.venue-line .venue-label{background:var(--color-accent);color:#fff;border-radius:6px;flex-shrink:0;margin-top:1px;padding:3px 9px;font-size:11px;font-weight:700}.venue-line .venue-body{flex-direction:column;gap:1px;line-height:1.55;display:flex}.venue-line .venue-body strong{font-size:15px;font-weight:800}.venue-line .venue-body span{color:var(--color-muted);font-size:13px}.venue-line .venue-body a{color:var(--color-accent);width:fit-content;font-size:13px;font-weight:700}.venue-line .venue-body a:hover{text-decoration:underline}.event-apply.waitlist-btn{color:#fff;background:#ff9500}.event-apply.waitlist-btn:hover{background:#e08600}.waitlist-panel{max-width:460px}.waitlist-form-card{box-shadow:none;border:0}.waitlist-target{color:var(--color-accent);margin:0 0 6px;font-weight:700}
