:root{--color-border:#ccc;--color-danger-hover:#c13;--color-danger:#b02;--color-em:#666;--color-error:#b02;--color-hover:#f3f3f3;--color-note:#666;--color-primary-hover:#71f;--color-primary:#60e;--header-height:3em;--side-width:11em}
button,
input:not([type=checkbox]):not([type=radio]),
select{box-sizing:border-box;font-family:inherit;font-size:100%}button,
input:not([type=checkbox]):not([type=radio]),
select{height:2em}textarea{box-sizing:border-box;height:10em;font-size:100%}input:not([type=checkbox]):not([type=radio]),
select,
textarea{border:1px solid #aaa;border-radius:0}input:not([type=checkbox]):not([type=radio]):focus,
textarea:focus{outline:1px solid var(--color-primary)}input[readonly]:not([type=checkbox]):not([type=radio]):focus{outline:none}button{border:1px solid #ccc;border-radius:4px;padding:0 1em;background:#eee;line-height:1}button:enabled:hover{border-color:#aaa;background-color:var(--color-hover)}button.primary:enabled{border-color:var(--color-primary);background-color:var(--color-primary);color:#fff}button.primary:enabled:hover{border-color:var(--color-primary-hover);background-color:var(--color-primary-hover)}button.danger:enabled{border-color:var(--color-danger);background-color:var(--color-danger);color:#fff}button.danger:enabled:hover{border-color:var(--color-danger-hover);background-color:var(--color-danger-hover)}form .error{color:var(--color-error);font-size:calc(12 / 14 * 100%)}form .note{color:var(--color-note);font-size:calc(12 / 14 * 100%)}table.form{width:100%;border-collapse:collapse}table.form th,
table.form td{border:1px solid var(--color-border);padding:4px}table.form th{width:8.5em;background:#eee;text-align:left}table.form input[type=text],
table.form textarea{width:100%}table.form textarea:not(.code){font:inherit}table.form select{max-width:50vw}table.form tr[data-required] th:after{content:'必須';float:right;margin:1px 0;border-radius:2px;padding:0 3px;background:#888;font-size:calc(12 / 14 * 100%);font-weight:normal;color:#fff}table.form .upload-image{display:flex;align-items:center;margin-top:4px;height:160px}table.form .upload-image img{max-height:100%}table.form input[value=""] ~ .upload-image [data-upload-image],
table.form input[value=""] ~ [data-upload-link],
table.form input[value=""] ~ [data-action="clear-upload-image"],
table.form input[value=""] ~ [data-action="clear-upload"]{display:none}table.form .checkbox-list :not(:last-child){margin-bottom:2px}.submit-buttons{display:flex;position:sticky;bottom:-1em;padding:1.5em 0 1em;background:#fff}.submit-buttons .delete{margin-left:auto}table.form input[data-label]{width:calc(100% - 4.3em);margin-right:.3em}[data-label] + button{box-sizing:border-box;padding:0;width:4em}.tag-item{display:inline-block;margin:.25em 0;width:16em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}
body > header{z-index:1;position:fixed;display:flex;align-items:center;box-sizing:border-box;top:0;width:100%;height:var(--header-height);border:0 solid var(--color-border);border-bottom-width:1px}.header-logo{margin-left:.6em;height:calc(var(--header-height) - 1.2em)}.header-title{margin-left:1em;font-weight:bold}.header-menu{display:flex;justify-content:right;gap:1em;align-items:center;flex-grow:1;margin-right:1em;list-style:none;color:var(--color-em)}.header-flash{position:absolute;box-sizing:border-box;left:50%;top:calc((100% - 2em) / 2 - 1px);transform:translateX(-50%);height:2em;border:1px solid #fc6;border-radius:2px;padding:0 .5em;background:#feb;line-height:2em}
body > aside{position:fixed;top:var(--header-height);box-sizing:border-box;width:var(--side-width);height:calc(100vh - var(--header-height));border:0 solid var(--color-border);border-right-width:1px;padding:.5em 0 1em;line-height:1.25;overflow-y:auto;scrollbar-width:thin}body > aside::-webkit-scrollbar{width:.5em}body > aside::-webkit-scrollbar-track{background:#f0f0f0}body > aside::-webkit-scrollbar-thumb{background:#cdcdcd}aside > div{margin-bottom:1.4em}aside > div:last-child{margin-bottom:0}body > aside h2{margin:.9em 0 .4em 1em;color:var(--color-em);font-size:100%}body > aside ul{margin:0;padding-left:0;list-style:none}body > aside a{display:block;padding:.35em 1em;text-decoration:none}body > aside a:hover{background:var(--color-hover)}body > aside .indent a{padding-left:2em}
body{margin:0;font-family:Arial,sans-serif;font-size:14px}main{position:relative;margin:var(--header-height) 0 0 var(--side-width);box-sizing:border-box;width:calc(100% - var(--side-width));height:calc(100vh - var(--header-height));padding:0 1em 1em 1em;overflow:auto}main > h1{margin:0 0 .5em 0;border:0 solid var(--color-border);padding:.5em 0;border-bottom-width:1px;font-size:18px;font-weight:normal;line-height:1.4}main > h1 > span{margin-left:1em;font-size:14px;color:var(--color-em)}.titletoolbar{float:right;margin-left:1em;line-height:3em}.titletoolbar > a{vertical-align:middle}.titletoolbar-download{display:inline-block;width:24px;height:24px;border-radius:2px;background:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJtNyAxMGw1IDVsNSAtNW0tNSA1di0xMm0tNyAxNmgxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNjY2IiBzdHJva2Utd2lkdGg9IjIiLz48L3N2Zz4K) no-repeat}.titletoolbar-download:hover{background-color:var(--color-hover)}.toolbar{display:flex;gap:.5em;align-items:center;margin-bottom:.6em;height:2em}.toolbar-search{display:flex;gap:.5em;align-items:center;margin-left:auto}.toolbar-search input[name=q]{width:20em;padding-right:1.75em}.toolbar-clear-search{width:22px;height:22px;margin:0 3px 0 calc(-.5em - 25px);border:none;padding:0;background:center/18px url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJtNCA0bDE2IDE2bTAgLTE2bC0xNiAxNiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNjY2IiBzdHJva2Utd2lkdGg9IjIiLz48L3N2Zz4K) no-repeat;cursor:pointer}:placeholder-shown + .toolbar-clear-search{display:none}img[data-action="view-image"]{cursor:pointer}main.login{margin-left:0;width:100%}main.login form{box-sizing:border-box;margin:6em auto 0;width:24em;border:1px solid #ddd;padding:2em}main.login input,
main.login button{width:100%}main.login input{margin-bottom:1.5em}main.login button{margin-top:.5em}main.login label{color:var(--color-em)}main.login .error{font-size:100%;margin-bottom:1em}