:root{color-scheme:light;--navy:#10165b;--red:#cf3046;--ink:#20283b;--muted:#586174;--line:#dce1e9;--paper:#f5f7fa}*{box-sizing:border-box}body{margin:0;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:var(--paper);line-height:1.85}a{color:var(--navy);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #166eaf;outline-offset:4px}header{min-height:96px;padding:16px max(24px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);background:white}header>a:last-child{font-size:14px}.brand img{display:block;width:140px;height:auto}.skip{position:absolute;top:-90px;left:20px;padding:12px;background:white;z-index:10}.skip:focus{top:12px}main{max-width:1120px;margin:0 auto;padding:64px 24px 80px;min-height:70vh}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:800;color:var(--red);margin:0 0 12px}h1{font-size:clamp(28px,4vw,42px);line-height:1.4;color:var(--navy);margin:0 0 20px;letter-spacing:.03em}h2{font-size:20px;line-height:1.5;margin:0 0 14px;color:var(--navy)}p{margin:0 0 18px}.login-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.intro>p:not(.eyebrow){font-size:18px}.guide{border-left:3px solid var(--red);padding-left:22px;margin-top:48px;max-width:420px}.guide h2{font-size:16px}.guide p,.help{font-size:14px;color:var(--muted)}.login-card{padding:36px;background:white;border:1px solid var(--line);border-top:4px solid var(--navy);border-radius:8px;box-shadow:0 10px 30px #1b244a08}.login-card>p{font-size:14px}label{display:block;font-size:15px;font-weight:700;margin:22px 0 8px}input:not([type=hidden]){display:block;width:100%;font:inherit;font-size:16px;padding:12px;border:1px solid #8791a2;border-radius:4px;background:white}button,.watch{display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:48px;border:0;border-radius:4px;padding:12px 22px;font:inherit;font-weight:700;background:var(--navy);color:white;cursor:pointer;text-decoration:none}button:hover,.watch:hover{background:#252c76}form>button:not(.secondary){width:100%;margin-top:28px}.help{border-top:1px solid var(--line);padding-top:22px;margin:28px 0 0}.notice{padding:16px;background:#eef2f8;border-left:3px solid var(--navy)}.error{background:#fff0f1;border-color:var(--red);color:#9c1630}.member-heading{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:36px}.secondary{background:white;color:var(--navy);border:1px solid var(--line)}.secondary:hover{background:#e9edf5}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.video-card{padding:28px;background:white;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:6px;overflow-wrap:anywhere}.category{font-size:12px;letter-spacing:.08em;color:var(--muted)}.watch{margin-top:12px}.empty{grid-column:1/-1;background:white;border:1px solid var(--line);padding:48px 24px;text-align:center}.empty p{margin:0;color:var(--muted)}.member-note{margin-top:40px;border-top:1px solid var(--line);padding-top:24px}.member-note h2{font-size:16px}.member-note p{font-size:14px;color:var(--muted)}.back{display:inline-block;margin-bottom:28px}.player{position:relative;aspect-ratio:16/9;background:#111;max-width:960px}.player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.description{margin-top:24px;white-space:pre-line;overflow-wrap:anywhere}footer{padding:24px;text-align:center;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}@media(max-width:760px){header{padding:14px 20px}.brand img{width:116px}main{padding:36px 20px 56px}.login-grid{grid-template-columns:1fr;gap:28px}.guide{margin-top:24px}.login-card{padding:24px}.video-grid{grid-template-columns:1fr}.member-heading{flex-wrap:wrap;gap:12px}.intro>p:not(.eyebrow){font-size:16px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.playback-help{max-width:960px;margin-top:24px;padding:24px;background:white;border:1px solid var(--line);border-left:3px solid var(--navy)}.playback-help h2{font-size:16px}.playback-help p{font-size:14px;color:var(--muted);margin-bottom:12px}.playback-help-actions{display:flex;flex-wrap:wrap;gap:12px}.playback-help-actions .watch{margin-top:0;font-size:14px}.playback-help-actions .secondary:hover{background:#e9edf5}@media(max-width:760px){.playback-help{padding:20px}.playback-help-actions{flex-direction:column}.playback-help-actions .watch{width:100%;gap:8px}}
.admin-shell{max-width:760px;margin:0 auto}.admin-card{margin-top:24px;padding:32px;background:white;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:6px}.admin-summary{display:grid;grid-template-columns:160px minmax(0,1fr);gap:12px 24px;margin:24px 0}.admin-summary dt{font-weight:700}.admin-summary dd{margin:0;overflow-wrap:anywhere}.field-hint{font-size:14px;color:var(--muted);margin:8px 0 0}.admin-timing{min-width:0;padding:20px;margin:32px 0 0;border:1px solid var(--line);border-radius:4px}.admin-timing legend{font-weight:700;padding:0 8px}.schedule-datetime{display:none}.admin-timing:has(input[value=schedule]:checked) .schedule-datetime{display:block}.admin-shell .check-row{display:flex;align-items:flex-start;gap:12px;min-height:48px;font-size:15px;font-weight:400;padding:8px 0;margin:16px 0 0}.admin-shell .check-row input{flex:0 0 20px;width:20px;height:20px;padding:0;margin-top:4px;accent-color:var(--navy)}.admin-shell input[type=datetime-local]{min-width:0;max-width:100%}.admin-shell .notice{margin-bottom:24px;overflow-wrap:anywhere}.admin-shell .notice p:last-child{margin-bottom:0}.admin-card form>button.secondary{margin-top:24px;width:100%}@media(max-width:760px){.admin-card{padding:24px 20px}.admin-summary{grid-template-columns:1fr;gap:4px;margin:16px 0}.admin-summary dd{margin-bottom:12px}.admin-timing{padding:16px}.admin-shell .member-heading{margin-bottom:24px}}
.video-group + .video-group{margin-top:48px}.video-group>h2{font-size:26px;margin-bottom:16px}.video-group--intro{max-width:48rem}.intro-video-list{display:grid;gap:24px}.group-description{color:var(--muted)}.training-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;margin:24px 0 0;list-style:none}.training-video-grid>*{min-width:0}.video-group .video-card{height:100%;padding:24px;display:flex;flex-direction:column}.video-card h3{font-size:20px;line-height:1.6;color:var(--navy);margin:0 0 12px}.video-step{color:var(--red);font-size:13px;font-weight:800;letter-spacing:.08em;margin-bottom:12px}.video-summary{font-size:15px;color:var(--muted);line-height:1.9}.video-group .player{flex-shrink:0;margin-top:auto;width:100%}.video-expand{align-self:flex-start;margin-top:16px;font-size:14px;padding:8px 0;min-height:44px}.video-group .player iframe:focus-visible{outline:3px solid #166eaf;outline-offset:4px}@media(max-width:900px){.training-video-grid{grid-template-columns:1fr}.video-group--intro{max-width:none}.video-group .video-card{padding:24px}.video-group>h2{font-size:24px}}

.player-skip{position:absolute;left:-9999px}.player-skip:focus{position:static;align-self:flex-start;margin-bottom:12px}
