/* Responsive overrides; keep the original desktop design. */
.archive-note { padding: .75em; border: 1px solid #73521b; background: #fff5d9; }
@media (max-width: 980px) {
    body { margin: 0; }
    div#ctbox { width: 100%; margin: 0; padding: 0; }
    div#title, div#info, div#doc, div#copyright {
        float: none; box-sizing: border-box; width: 100%; height: auto; margin: 0; padding: 12px;
    }
    div#title span { display: block; padding-left: 0; }
    span#title_bottom { font-size: 1.6em; }
    ul.menu { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 0; }
    li.menu { font-size: 1rem; }
    li.menu a { display: inline-block; padding: 8px 0; }
    div#info > br { display: none; }
    div#doc { overflow-wrap: anywhere; }
    div#doc p, address { font-size: 1rem; line-height: 1.7; }
    div#doc img { max-width: 100%; height: auto; }
    div#doc input, div#doc textarea { box-sizing: border-box; max-width: 100%; font-size: 1rem; }
    div#doc table { display: block; max-width: 100%; overflow-x: auto; }
}
