:root{--paper:#fffdf8;--bg:#f3f0e9;--navy:#24364b;--blue:#526d82;--red:#9a463f;--line:#c9c3b8;--text:#292929;--muted:#6b6861}*{box-sizing:border-box}html{overflow-x:hidden}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Yu Gothic,YuGothic,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;line-height:1.8;overflow-x:hidden}a{color:inherit}.wrap{width:min(1120px,100% - 64px);margin-inline:auto}.notice{background:var(--navy);color:#fff;text-align:center;padding:5px 16px;font-size:13px}.head{justify-content:space-between;align-items:center;height:112px;display:flex}.head p{color:var(--muted);font-size:14px}.brand{flex-direction:column;line-height:1;text-decoration:none;display:flex}.brand b{letter-spacing:.08em;color:var(--navy);font:48px Georgia,Yu Mincho,serif}.brand span{letter-spacing:.28em;margin-top:9px;font-size:12px}header{background:var(--paper)}nav{border-block:1px solid var(--line);background:#fff}nav .wrap{display:flex}nav a{border-left:1px solid #ddd;padding:12px 26px;font-size:14px;text-decoration:none}nav a:last-child{border-right:1px solid #ddd}nav a.active,nav a:hover{color:var(--navy);background:#eef1f2}.menu{display:none}.hero{border-bottom:1px solid var(--line);background:#eee8db;padding:54px 0}.hero-grid{grid-template-columns:1.55fr 1fr;align-items:center;gap:60px;display:grid}.hero h1,.page>h1{color:var(--navy);margin:0 0 24px;font-family:Georgia,Yu Mincho,serif;font-size:40px;line-height:1.35}.hero p{max-width:650px}.hero aside{background:var(--paper);border:1px solid var(--line);border-top:5px solid var(--blue);padding:26px}.hero aside h2{color:var(--navy);margin:0;font-size:21px}.actions,.modal-actions,.old-actions,.sim-actions,.pdf-tools{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.button,button{cursor:pointer;min-height:44px}.button{background:var(--navy);color:#fff;border:1px solid var(--navy);justify-content:center;align-items:center;padding:8px 22px;text-decoration:none;display:inline-flex}.button.secondary{color:var(--navy);background:0 0}.button.red{background:var(--red);border-color:var(--red)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=slider]:focus-visible{outline-offset:3px;outline:3px solid #e09b28}.content{padding-block:48px 70px}.three{border:1px solid var(--line);background:var(--paper);grid-template-columns:repeat(3,1fr);display:grid}.three article{border-right:1px solid var(--line);padding:25px}.three article:last-child{border:0}.three h2{color:var(--navy);margin-top:0;font-size:19px}.news{margin-top:45px}.news h2,.page h2{color:var(--navy);border-bottom:2px solid var(--navy);padding-bottom:8px;font-family:Georgia,Yu Mincho,serif}.news div{border-bottom:1px dotted #aaa;grid-template-columns:170px 1fr;padding:10px 4px;display:grid}.news time{color:var(--muted)}footer{background:var(--navy);color:#fff;padding:22px;font-size:12px}.page{background:var(--paper);border-inline:1px solid #ddd;min-height:650px;padding:48px 54px 75px}.page .lead{border-left:5px solid var(--blue);background:#f4f3ef;padding:14px 20px;font-size:18px}.page section{margin-top:40px}.page ul{padding-left:1.5em}.page table,.archive table{border-collapse:collapse;width:100%}.page th,.page td{border:1px solid var(--line);text-align:left;padding:12px}.page th{background:#eee;width:160px}.activity-list section{border-bottom:1px solid var(--line);gap:25px;margin:0;padding:24px 0;display:flex}.activity-list section>span{color:#82909e;font:32px Georgia,serif}.activity-list h2{border:0;margin:0}.narrow{max-width:850px}.form{gap:22px;margin-top:35px;display:grid}.form label{font-weight:700;display:grid}.form input,.form select,.form textarea{font:inherit;background:#fff;border:1px solid #96928a;padding:10px;font-size:16px}.form .check{align-items:center;gap:10px;font-weight:400;display:flex}.form .check input{width:22px;height:22px}.form .button{justify-self:start}.success{border:1px solid var(--blue);background:#f4f7f7;margin-top:35px;padding:25px}.overlay{z-index:1000;background:#000a;place-items:center;padding:32px;display:grid;position:fixed;inset:0}.modal{background:#fff;border:1px solid #333;width:min(560px,100%);max-height:calc(100vh - 64px);padding:24px;overflow:auto}.modal.wide{width:min(920px,100vw - 64px)}.modal-head{border-bottom:1px solid #aaa;justify-content:space-between;align-items:flex-start;margin-bottom:18px;display:flex}.modal-head h2{margin:0 12px 12px 0;font-size:18px}.close{background:#eee;border:1px solid #777;width:44px;font-size:25px}.modal-actions button,.old-actions button,.old-actions a,.archive button,.archive a{color:#111;background:#eee;border:2px outset #ddd;padding:7px 16px;font:14px Arial,sans-serif;text-decoration:none}.document-scroll{max-height:calc(100vh - 160px);overflow:auto}.document-scroll img{object-fit:contain;width:100%;height:auto;display:block}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.database-bg{background:#e9e7e1;min-height:680px;padding:52px 16px;font-family:Arial,Yu Gothic,sans-serif}.db-panel{background:#fff;border:1px solid #7e858c;max-width:960px;margin:auto}.db-panel>header{background:#d7dce0;border-bottom:1px solid #7e858c;padding:13px 20px}.db-panel h1{color:#293d50;margin:0;font:22px Georgia,serif}.db-body{padding:32px}.db-search{max-width:600px;display:flex}.db-search input{border:1px solid #555;flex:1;min-width:0;padding:8px;font-size:16px}.db-search button,.db-result button{background:#e7e7e7;border:1px solid #555;border-radius:0;padding:5px 25px;font:16px Arial}.db-result{border-top:1px solid #aaa;min-height:150px;margin-top:35px;padding-top:25px}.db-result dl{grid-template-columns:150px 1fr;margin:0 0 18px;display:grid}.db-result dt,.db-result dd{border-bottom:1px solid #ddd;margin:0;padding:9px}.db-result dt{background:#eee}.error,.sim-error{color:#8e241e;font-weight:700}.archive-bg,.sim-bg{background:#dedede;min-height:760px;padding:35px 16px;font-family:Arial,MS PGothic,sans-serif;line-height:1.55}.archive,.sim-wrap{background:#fff;border:1px solid #555;max-width:900px;margin:auto;padding:18px}.archive>header{border-bottom:3px double #555;margin-bottom:22px}.archive h1,.sim-wrap h1{color:#174c50;margin:0;font-size:25px}.archive header strong{font-size:14px}.archive form{background:#eee;border:1px solid #888;align-items:center;gap:8px;padding:15px;display:flex}.archive input{min-width:0;padding:6px;font-size:16px}.archive-result{margin-top:25px}.archive th,.archive td{text-align:left;border:1px solid #555;padding:8px}.archive th{background:#ddd;width:145px}.message{white-space:pre-line;border:1px solid #777;padding:20px;line-height:1.9}.archive-error{color:#900}.archive-info{background:#eff;border:1px solid #277;padding:9px}.pdf-tools{margin:0 0 12px}.pdf{border:1px solid #777;width:100%;height:70vh}.sim-wrap{max-width:780px}.back{color:#164f55;margin-bottom:15px;display:inline-block}.machine{background:#8f6749;border:5px ridge #a67c59;grid-template-columns:1fr 1fr;gap:15px;max-width:650px;margin:28px auto;padding:18px;display:grid;box-shadow:inset 0 0 0 2px #4e3526}.lever-cell{aspect-ratio:1;background:#b48864;border:2px solid #5f412f;min-width:0;position:relative}.lever-number{color:#342318;position:absolute;top:5px;left:8px}.letter{color:#261a12;z-index:2;font-weight:700;position:absolute;transform:translate(-50%,-50%)}.letter.up{top:9%;left:50%}.letter.right{top:50%;left:91%}.letter.down{top:91%;left:50%}.letter.left{top:50%;left:9%}.letter.center{top:50%;left:50%}.lever-track{background:#9f7557;border:2px solid #61422e;border-radius:50%;position:absolute;inset:18%}.lever-control{touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:10%}.lever-control svg{width:100%;height:100%;overflow:visible}.lever-control line{stroke:#412c20;stroke-width:9px;stroke-linecap:round}.lever-control circle{fill:#755039;stroke:#36251c;stroke-width:3px}.lever-control .handle{fill:#c49a74}.reader{gap:6px;max-width:650px;margin:auto;font-weight:700;display:grid}.reader input{letter-spacing:.18em;background:#e8ebda;border:2px inset #aaa;padding:10px;font:24px Courier New,monospace}.sim-actions{max-width:650px;margin-inline:auto}.sim-actions button{border:2px outset #ddd;padding:7px 18px}.sim-status,.sim-error{max-width:650px;min-height:28px;margin-inline:auto}@media (max-width:700px){.wrap{width:calc(100% - 32px)}.notice{text-align:left;font-size:11px}.head{height:88px}.brand b{font-size:36px}.brand span{font-size:10px}.head p{display:none}.menu{border:1px solid var(--navy);background:#fff;place-content:center;gap:5px;width:48px;display:grid}.menu i{background:var(--navy);width:24px;height:2px;display:block}nav{position:relative}nav .wrap{z-index:20;background:#fff;border-bottom:1px solid #777;width:100%;padding:0 16px;display:none;position:absolute;top:0;left:0}nav.open .wrap{display:block}nav a{padding:12px;display:block;border:0!important;border-bottom:1px solid #ddd!important}.hero{padding:35px 0}.hero-grid{grid-template-columns:1fr;gap:28px}.hero h1,.page>h1{font-size:29px}.three{grid-template-columns:1fr}.three article{border-right:0;border-bottom:1px solid var(--line)}.news div{grid-template-columns:1fr;padding:13px 4px}.page{border:0;width:100%;padding:36px 16px}.page .lead{font-size:16px}.page th{width:110px}.activity-list section{gap:12px}.overlay{padding:12px}.modal,.modal.wide{width:100%;max-height:calc(100vh - 24px);padding:14px}.db-body{padding:18px}.db-search button{padding-inline:18px}.db-result dl{grid-template-columns:1fr}.archive-bg,.sim-bg{padding:16px 8px}.archive,.sim-wrap{padding:12px}.archive form{flex-wrap:wrap;align-items:stretch}.archive form input{flex:1}.archive th{width:105px}.old-actions{flex-direction:column}.old-actions a,.old-actions button{text-align:center}.pdf{height:65vh}.machine{gap:7px;margin-inline:-2px;padding:8px}.lever-number{font-size:12px}.letter{font-size:13px}.sim-actions{display:grid}.sim-actions button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.fiction-note{text-align:center;max-width:900px;margin:0 auto 14px;font-size:12px;line-height:1.75}.copyright{text-align:center;margin:0}
