.error { color: #F00; }

input[type="text"].error, textarea.error, select.error { border: solid 1px #F00; background-color: #ffe6e6; }

label.error { color: #F00; }

ul.error li { color: #F00; }

.CMScontrol { display: flex; justify-content: space-between; margin-bottom: 2em; }
.CMScontrol a { text-decoration: none; }
.CMScontrol a:hover { opacity: 0.7; }
.CMScontrol a + a { margin-left: 0.5em; }

.CMSsubcon { display: block; clear: both; margin-top: 0.5em; margin-bottom: 3.5em; }
.CMSsubcon a { text-decoration: none; }
.CMSsubcon a:hover { opacity: 0.7; }
.CMSsubcon a + a { margin-left: 0.5em; }

span.CMSsubcon { text-align: right; margin-top: 0; margin-bottom: -1em; }

td > .CMSsubcon { display: flex; justify-content: space-between; margin-top: 0; margin-bottom: 0; }

a.CMSlink, a.CMSlogout, a.CMSadd, a.CMScustom, a.CMSpublish, a.CMSmodify, a.CMSdelete { display: inline-block; padding: 0 1em; border-radius: 0.25em; }

a.CMSlink, a.CMSlogout { color: #777; background-color: #eaeaea; }

a.CMSadd, a.CMScustom { color: #09F; background-color: #e6f5ff; }

a.CMSpublish { color: #F00; background-color: #ffe6e6; }

a.CMSmodify { color: #09F; background-color: #e6f5ff; }

a.CMSdelete { color: #F09; background-color: #ffe6f5; }

p.CMSinput { margin-top: 25px; line-height: 1.5em; }
p.CMSinput .checkbox { margin-right: 1.5em; }
p.CMSinput .checkbox input[type="checkbox"] + span { margin-left: 0.5em; }
p.CMSinput .checkbox-wrapper { display: inline-block; margin-right: 1em; }
p.CMSinput .checkbox-wrapper .checkbox { margin-right: 0.5em; }
p.CMSinput .radio { margin-right: 1.5em; }
p.CMSinput .radio input[type="radio"] + span { margin-left: 0.5em; }
p.CMSinput .radio-wrapper { display: inline-block; margin-right: 1em; }
p.CMSinput .radio-wrapper .radio { margin-right: 0.5em; }
p.CMSinput label { display: inline-block; margin-right: 2em; }
p.CMSinput input[type="text"], p.CMSinput input[type="date"], p.CMSinput input[type="password"], p.CMSinput select, p.CMSinput textarea { line-height: 1.5em; padding: 0.25em; }
p.CMSedit { margin-top: 25px; margin-left: -21px; margin-right: -21px; }
p.CMSedit span.headline { margin-left: 21px; }
p.CMSedit .cms { width: calc( 100% + 42px ); }
p.CMSbutton { margin-top: 25px; }
p.CMSbutton input { line-height: 2em; height: 3em; width: 10em; }

div.modify .w4em { width: 4em; }
div.modify .w5em { width: 5em; }
div.modify .w6em { width: 6em; }
div.modify .input-m { width: 75%; }
div.modify .input-l { width: 100%; }

.cms img.image { display: block; width: 100%; height: auto; margin: 4px auto; box-sizing: border-box; }

@media screen and (min-width: 768px), print { .cms img.image { margin: 6px auto; } }
@media screen and (min-width: 640px), print { .cms img.image { width: 75%; }
  .cms img.image.left, .cms img.image.right { width: 50%; }
  .cms img.image.left { padding-right: 0.5em; margin-right: 0.5em; float: left; }
  .cms img.image.right { padding-left: 0.5em; margin-left: 0.5em; float: right; }
  .cms p img.image:nth-of-type(2n+1) + img.image.left { margin-right: -0.5em; }
  .cms p img.image:nth-of-type(2n+1) + img.image.right { margin-left: -0.5em; } }
