@charset "UTF-8";
.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; }
  .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.CMSlink.nolink,
  a.CMSlogout.nolink {
    color: #CCC;
    background-color: #f6f6f6;
    pointer-events: none; }

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.CMSedit .cms .dl > dt,
    p.CMSedit .cms .dl > dd,
    p.CMSedit .cms .inlineBlock {
      position: relative; }
      p.CMSedit .cms .dl > dt::after,
      p.CMSedit .cms .dl > dd::after,
      p.CMSedit .cms .inlineBlock::after {
        content: "";
        display: inline-block;
        width: calc( 100% - 4px );
        height: 2px;
        background-color: #EE6;
        position: absolute;
        bottom: 0;
        left: 1px; }
    p.CMSedit .cms .inlineBlock::after {
      bottom: 3px; }
    p.CMSedit .cms .dl > dt::after {
      background-color: #CCF; }
    p.CMSedit .cms .dl > dd::after {
      background-color: #9EE; }
    p.CMSedit .cms .viewSpBreak {
      position: relative; }
      p.CMSedit .cms .viewSpBreak::before {
        content: "";
        position: absolute;
        display: inline-block;
        width: 2px;
        height: 1.5em;
        vertical-align: middle;
        margin-left: -1px;
        margin-right: -1px;
        background-color: #FBB; }
p.CMSbutton {
  margin-top: 25px; }
  p.CMSbutton input {
    line-height: 2em;
    height: 3em;
    width: 10em; }

div.modify {
  /*	.w4em {					// w1em～w16emまで下で定義済
  		width: 4em;
  	}
  	.w5em {
  		width: 5em;
  	}
  	.w6em {
  		width: 6em;
  	} */ }
  div.modify .input-m {
    width: 75%; }
  div.modify .input-l {
    width: 100%; }

.cms {
  --tbw-cell-vertical-padding: 0.25em;
  --tbw-cell-horizontal-padding: 0.5em;
  --tbw-cell-line-height: 1.75em; }
  .cms img.image {
    display: block;
    width: 100%;
    height: auto;
    margin: 3.5px auto;
    box-sizing: border-box; }
  .cms table {
    width: 100%;
    border-collapse: collapse; }
    .cms table th,
    .cms table td {
      height: calc(var(--tbw-cell-vertical-padding) * 2 + var(--tbw-cell-line-height));
      min-width: calc(var(--tbw-cell-horizontal-padding) * 2);
      padding: var(--tbw-cell-vertical-padding) var(--tbw-cell-horizontal-padding);
      border: 1px solid #666; }
    .cms table th {
      white-space: nowrap;
      text-align: center; }
    .cms table thead th {
      background-color: #00532e;
      color: #fff; }
    .cms table tbody th {
      background-color: #eee; }
  .cms dl {
    display: flex; }
    .cms dl > dt {
      white-space: nowrap; }
      .cms dl > dt .inlineBlock {
        text-align-last: justify; }
    .cms dl > dd {
      flex-grow: 1;
      margin-left: 0; }
    .cms dl.always {
      display: block; }
      .cms dl.always > dd {
        padding-left: 1em; }
  .cms .scrollT {
    overflow: auto; }
    .cms .scrollT table {
      min-width: 100%; }
  .cms .inlineBlock {
    text-decoration: none;
    display: inline-block; }
  .cms .w1em {
    width: 1em; }
  .cms .w2em {
    width: 2em; }
  .cms .w3em {
    width: 3em; }
  .cms .w4em {
    width: 4em; }
  .cms .w5em {
    width: 5em; }
  .cms .w6em {
    width: 6em; }
  .cms .w7em {
    width: 7em; }
  .cms .w8em {
    width: 8em; }
  .cms .w9em {
    width: 9em; }
  .cms .w10em {
    width: 10em; }
  .cms .w11em {
    width: 11em; }
  .cms .w12em {
    width: 12em; }
  .cms .w13em {
    width: 13em; }
  .cms .w14em {
    width: 14em; }
  .cms .w15em {
    width: 15em; }
  .cms .w16em {
    width: 16em; }

@media screen and (max-width: 1203px) {
  .cms dl.smartphone {
    display: block; }
    .cms dl.smartphone > dd {
      padding-left: 1em; } }
@media screen and (min-width: 1204px), print {
  .cms img.image {
    margin: 4px auto; }
  .cms .spBreak {
    display: none; } }
@media screen and (min-width: 575px), print {
  .cms img.image {
    width: 75%; }
    .cms img.image.left, .cms img.image.right {
      width: calc( 50% - 0.5em ); }
    .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; } }
