@charset "utf-8";

/* システム共通 ベースCSS */

html, body, input, select, textarea, button {
  /* for Modan Browser (Firefox, Chrome, Safari, Opera), Mac IE5 */
  font: 12px/1.25 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS Pゴシック", "Osaka", "Arial", "sans-serif";
  /*font: 12px/1.25 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "MS Pゴシック", "Osaka", "Arial", "sans-serif";*/
  *font-size: small;  /* for Win IE7, IE6 */
  *font: x-small;  /* for Win IE in quirks mode */
  
  color: #333;
}
html, body {
  background-color: var(--body-background, #f7f7f7);
}
body {
  overflow: auto !important;
  padding: 0px !important;
  animation: Body-fadeIn 100ms ease-in 300ms;
  animation-fill-mode: both;
}
@keyframes Body-fadeIn {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}

/* input系は、"ヒラギノ角ゴ Pro W3"、"メイリオ"を外す */
input, select, textarea {
  font-family: "Hiragino Kaku Gothic Pro", "MS Pゴシック", "Osaka", "Arial", "sans-serif";
  font-size: inherit;
  line-height: normal;
}

/* inputでもボタンだけは、"ヒラギノ角ゴ Pro W3"、"メイリオ"を入れる */
input[type=button], input[type=submit], input[type=reset], input[type=file],
button,
.button,
.btn, .btn-large, .btn-small, .btn-flat {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS Pゴシック", "Osaka", "Arial", "sans-serif";
  font-size: inherit;
  font-weight: normal;
  line-height: normal;
  
  /* Materialize [.btn, .btn-large, .btn-small, .btn-flat] */
  border: none;
  border-radius: 2px;
  display: inline-block;
  padding: 0.4em;
/*   text-transform: uppercase; */
  vertical-align: middle;
  -webkit-tap-highlight-color: transparent;
  
  /* Materialize [.btn, .btn-large, .btn-small] */
  text-decoration: none;
  background: none;
  background-color: var(--button-background, #192939);
  color: var(--button-color, #f0f0f0);
  text-align: center;
  letter-spacing: .5px;
/*   -webkit-transition: background-color .2s ease-out; */
/*   transition: background-color .2s ease-out; */
  cursor: pointer;
  user-select: none;
  overflow: hidden;
  position: relative;
  margin: 0.5em 0.5em 0.5em 0;
}



/* エラー画面 */
.page-body .sys-err-box {
  margin-top: 1em;
}
.page-body .sys-err-header {
  margin: 1em 1em 0 1em;
  padding: 0.5em 0;
}
.page-body .sys-err-header table {
  border: none;
  height: auto;
/*   width: 100%; */
  margin: auto;
  text-align :center;
}
.page-body .sys-err-header table td {
  font-size: 1.5em;
  font-weight: bold;
}
.page-body .sys-err-msg {
  font-size: 1em;
  font-weight: bold;
  margin: 0 1em 0 1em;
  padding: 1em 0;
}
.page-body .sys-err-msg table {
  border: none;
  height: auto;
/*   width: 100%; */
  margin: auto;
  text-align :center;
}
.page-body .sys-err-box .msg2 {
  padding-top: 2em;
}


/* ログイン画面 ロゴ */
.login-logo {
  width: 480px;
  height: auto;
}
@media only screen and (max-width: 600px) {
  .login-logo {
    width: 100%;
    max-width: 240px;
  }
}



/* オーバーレイ */
.lean-overlay {
   overflow: hidden;
}

/* V50 ajaxローディング */
/*
.loading {
  position: absolute;
  top:30px;
  left:0px;
  z-index: 9999;
  display: none;
  min-width: 55px;
  width: 100%;
  height: 55px;
  border: none;
  margin: 0px;
  padding: 0px;
  background-image: url("../image/icon/loading.gif");
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-background-size: auto auto;
  background-size: auto auto;
}
*/

/* V60 ローディング オーバーレイ */
.campus-loading-overlay {
	display: inline-block;
  overflow: hidden;
	position: fixed;
	z-index: 10000;
	top: -100px;
	left: 0;
	bottom: 0;
	right: 0;
	height: 125%;
	width: 100%;
	/*
	background: #000;
	opacity: 0.3;
	will-change: opacity;
	*/
}
/* V60 ローディング */
.campus-loading {
	display: inline-block;
  overflow: hidden;
	position: fixed;
	z-index: 10001;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	background: rgba(64, 64, 64, 0.05);
	padding: 0;
	text-align: center;
	will-change: opacity;
}
.campus-loading .campus-loading-msg {
	display: inline-block;
	opacity: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 200px;
  height: 75px;
  margin: auto;
  background: #333;
  border-radius: 0.5em;
  box-shadow: 0 0 16px #000;
  color: #eee;
  font-size: 1.0em;
  font-weight: normal;
  padding: 2.5em 3em  1.5em 3em;
}
.campus-loading .campus-loading-msg.err {
	display: none;
  width: 270px;
  height: 125px;
}
.campus-loading .campus-loading-cancel {
	display: none !important;
  position: absolute;
  top: 0px;
  right: 0px;
  padding: 0.5em;
  margin: 0.2em 0.3em;
  vertical-align: middle;
  text-align: center;
  font-size: 1em;
  line-height: normal;
  height: auto;
  border-radius: 0.4em;
  min-width: auto; 
}
.campus-loading .campus-loading-cancel i {
  margin: 0;
  font-size: 1.5em;
  line-height: normal;
}
.campus-loading .spinner-wrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  
  font-size: 2px;
  border-top: 1.1em solid rgba(255, 255, 255, 0.2);
  border-right: 1.1em solid rgba(255, 255, 255, 0.2);
  border-bottom: 1.1em solid rgba(255, 255, 255, 0.2);
  border-left: 1.1em solid #ffffff;
  
/*   -webkit-transform: translateZ(0); */
/*   -webkit-animation: load8 1.1s infinite linear; */
/*   -ms-transform: translateZ(0); */
  transform: translateZ(0);
  animation: spinner-frames 1.0s infinite linear;
}
.campus-loading .spinner-wrapper,
.campus-loading .spinner-wrapper:after {
  border-radius: 50%;
  width: 66px;
  height: 66px;
}
/*
@-webkit-keyframes spinner-frames {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
*/
@keyframes spinner-frames {
  0% {
/*     -webkit-transform: rotate(0deg); */
    transform: rotate(0deg);
  }
  100% {
/*     -webkit-transform: rotate(360deg); */
    transform: rotate(360deg);
  }
}

.campus-loading img {
	vertical-align: middle;
	width: 24px;
	height: 24px;
}



/* clearfix */
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
  clear: none;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

#test-vw100 {
  position: absolute;
  width: 100vw;
  min-width: 100vw;
  max-width: 100vw;
  height: 0px;
}
#test-vh100 {
  position: absolute;
  width: 0px;
  height: 100vh;
  min-height: 100vh;
  max-height: 100vh;
}



/* ロケール切替 */
.ja .en {
  display: none !important;
}
.en .ja {
  display: none !important;
}




/* ヘッダー／フォント */
.b {
  font-weight: bold;
}
.th {
  font-weight: bold;
}
h1, h2, h3, h4, h5, h6, .f1, .f2, .f3, .f4, .f5, .f6 {
  line-height: 110%;
}
h1 {
  font-weight: bold;
  font-size: 3.0rem;  /* 36px */
  margin: 2.0rem 0 1.5rem 0;
}
h2 {
  font-weight: bold;
  font-size: 2.5rem;  /* 30px */
  margin: 1.7rem 0 1.4rem 0;
}
h3 {
  font-weight: bold;
  font-size: 2.0rem;  /* 24px */
  margin: 1.4rem 0 1.2rem 0;
}
h4 {
  font-weight: bold;
  font-size: 1.5rem;  /* 18px */
  margin: 1.1rem 0 1rem 0;
}
h5 {
  font-weight: bold;
  font-size: 1.35rem;  /* 16.2px */
  margin: 0.8rem 0 0.7rem 0;
}
h6 {
  font-weight: bold;
  font-size: 1.17rem;  /* 14.03px */
}
h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {
  width: 1.8em;
  margin: 0 0.5em 0 0;
  vertical-align: bottom;
}
h1 img.s, h2 img.s, h3 img.s, h4 img.s, h5 img.s, h6 img.s {
  width: 1.5em;
}

.f1 {
  font-size: 3.0rem;  /* 36px */
}
.f2 {
  font-size: 2.5rem;  /* 30px */
}
.f3 {
  font-size: 2.0rem;  /* 24px */
}
.f4 {
  font-size: 1.5rem;  /* 18px */
}
.f5 {
  font-size: 1.35rem;  /* 16.2px */
}
.f6 {
  font-size: 1.17rem;  /* 14.03px */
}
f1 img, f2 img, f3 img, f4 img, f5 img, f6 img {
  width: 1.8em;
  margin: 0 0.5em 0 0;
  vertical-align: bottom;
}
f1 img.s, f2 img.s, f3 img.s, f4 img.s, f5 img.s, f6 img.s {
  width: 1.5em;
}


/* ヘッダー／フォント／スマホ（1サイズダウン） */
@media only screen and (max-width: 600px) {
  h1 {
    font-size: 2.5rem;  /* 30px */
    margin: 1.78rem 0 1.424rem 0;
  }
  h2 {
    font-size: 2.0rem;  /* 24px */
    margin: 1.46rem 0 1.168rem 0;
  }
  h3 {
    font-size: 1.5rem;  /* 18px */
    margin: 1.14rem 0 0.912rem 0;
  }
  h4 {
    font-size: 1.35rem;  /* 16.2px */
    margin: 0.82rem 0 0.656rem 0;
  }
  h5 {
    font-size: 1.17rem;  /* 14.03px */
    margin: 0.5rem 0 0.4rem 0;
  }
  h6 {
    font-size: 1rem;  /* 12px */
    margin: 0.5rem 0 0.4rem 0;
  }
  .f1 {
    font-size: 2.5rem;  /* 30px */
  }
  .f2 {
    font-size: 2.0rem;  /* 24px */
  }
  .f3 {
    font-size: 1.5rem;  /* 18px */
  }
  .f4 {
    font-size: 1.35rem;  /* 16.2px */
  }
  .f5 {
    font-size: 1.17rem;  /* 14.03px */
  }
  .f6 {
    font-size: 1rem;  /* 12px */
  }
}

/* サイズ／幅指定（文字サイズ） */
.sw0 { min-width: auto !important; }
.sw1 { min-width: 2em !important; }
.sw2 { min-width: 3em !important; }
.sw3 { min-width: 4em !important; }
.sw4 { min-width: 5em !important; }
.sw5 { min-width: 6em !important; }
.sw6 { min-width: 7em !important; }
.sw7 { min-width: 8em !important; }
.sw8 { min-width: 9em !important; }
.sw9 { min-width: 10em !important; }
.sw10 { min-width: 11em !important; }

/* サイズ／高さ指定（文字サイズ） */
.sh0 { min-height: auto !important; }
.sh1 { min-height: 2em !important; }
.sh2 { min-height: 3em !important; }
.sh3 { min-height: 4em !important; }
.sh4 { min-height: 5em !important; }
.sh5 { min-height: 6em !important; }
.sh6 { min-height: 7em !important; }
.sh7 { min-height: 8em !important; }
.sh8 { min-height: 9em !important; }
.sh9 { min-height: 10em !important; }
.sh10 { min-height: 11em !important; }

/* マージン／左指定 */
.ml0 { margin-left: 0 !important; }
.ml1 { margin-left: 1em !important; }
.ml2 { margin-left: 2em !important; }
.ml3 { margin-left: 3em !important; }
.ml4 { margin-left: 4em !important; }
.ml5 { margin-left: 5em !important; }
.ml6 { margin-left: 6em !important; }
.ml7 { margin-left: 7em !important; }
.ml8 { margin-left: 8em !important; }
.ml9 { margin-left: 9em !important; }
.ml10 { margin-left: 10em !important; }

/* マージン／右指定 */
.mr0 { margin-right: 0 !important; }
.mr1 { margin-right: 1em !important; }
.mr2 { margin-right: 2em !important; }
.mr3 { margin-right: 3em !important; }
.mr4 { margin-right: 4em !important; }
.mr5 { margin-right: 5em !important; }
.mr6 { margin-right: 6em !important; }
.mr7 { margin-right: 7em !important; }
.mr8 { margin-right: 8em !important; }
.mr9 { margin-right: 9em !important; }
.mr10 { margin-right: 10em !important; }

/* マージン／上指定 */
.mt0 { margin-top: 0 !important; }
.mt1 { margin-top: 1em !important; }
.mt2 { margin-top: 2em !important; }
.mt3 { margin-top: 3em !important; }
.mt4 { margin-top: 4em !important; }
.mt5 { margin-top: 5em !important; }
.mt6 { margin-top: 6em !important; }
.mt7 { margin-top: 7em !important; }
.mt8 { margin-top: 8em !important; }
.mt9 { margin-top: 9em !important; }
.mt10 { margin-top: 10em !important; }

/* マージン／下指定 */
.mb0 { margin-bottom: 0 !important; }
.mb1 { margin-bottom: 1em !important; }
.mb2 { margin-bottom: 2em !important; }
.mb3 { margin-bottom: 3em !important; }
.mb4 { margin-bottom: 4em !important; }
.mb5 { margin-bottom: 5em !important; }
.mb6 { margin-bottom: 6em !important; }
.mb7 { margin-bottom: 7em !important; }
.mb8 { margin-bottom: 8em !important; }
.mb9 { margin-bottom: 9em !important; }
.mb10 { margin-bottom: 10em !important; }


/* マージンなし */
.no-margin {
  margin: 0 !important;
}

/* パディングなし */
.no-padding {
  padding: 0 !important;
}

/* ボーダーなし */
.no-border {
  border: 0 !important;
  border-radius: unset !important;
  box-shadow: unset !important;
  transition: unset !important;
}

/* 背景なし */
.no-back {
  background: transparent !important;
}




/* コンテナ */
.container {
  width: calc(100% - 4em);
  /*width: 90%;*/
  /*max-width: 1024px;*/
  max-width: unset;
  position: relative;
}
/* .login-inactive .container { */
/*   margin: 0 auto; */
/*   width: max-content; */
/* } */

.container .row {
  margin-bottom: 20px;
  position: relative;
}
.container .row .col {
  position: relative;
}
@media only screen and (max-width: 600px) {
  .row .col.s12 {
    margin: 0.3em 0;
  }
}

/* リンク */
a {
  text-decoration: none;
/*   border-bottom: 1px dotted; */
  border-bottom: 1px solid transparent;
/*  padding: 0.2em; */
}
a:hover {
  text-decoration: none;
  border-bottom: 1px solid;
  box-shadow: 0 0 4px;
}
a img {
  /*width: 1.8em;*/
  /*margin: 0 0.5em 0 0;*/
  vertical-align: middle;
}

.container .m-icons {
}
.container .m-icons a {
  margin: 0 0 1em 1em;
  font-size: 10px;
  min-width: 9em;
}
@media only screen and (max-width: 1024px) {
  .container .m-icons a {
    margin: 0 0 0.5em 0.5em;
    min-width: 8em;
  }
  .container .m-icons a .material-icons {
    font-size: 20px;
  }
}



/* 点滅 */
.blink {
    -webkit-animation: blink 3s linear 0s infinite alternate running;
    -moz-animation: blink 3s linear 0s infinite alternate running;
    animation: blink 3s linear 0s infinite alternate running;
}
@-webkit-keyframes blink {
    0% { opacity: 0; }
    20% { opacity: 1; }
    100% { opacity: 1; }
}
@-moz-keyframes blink {
    0% { opacity: 0; }
    20% { opacity: 1; }
    100% { opacity: 1; }
}
@keyframes blink {
    0% { opacity: 0; }
    20% { opacity: 1; }
    100% { opacity: 1; }
}

/* アイコン */
.material-icons {
  font-size: 1.5em;
  width: 1.2em;
  height: 1.1em;
  margin-right: 0.25em;
  vertical-align: middle;
}
.fas {
  margin-right: 0.25em;
}
body.page-body .fas {
  margin-right: 0.25em;
}


/* Newバッチ */
span.badge.new {
  background-color: #e91e63;
  font-weight: bold;
  letter-spacing: 0.1em;
}
/* スタンプ */
.stamp {
  border-radius: 6px;
  background-color: #b71c1c;
  color: #fff;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
  display: inline-block;
  padding: 1px 3px;
  margin: 0px 5px 5px 5px;
}


/* ヒント */
.hint {
  background: #f7f7e0;
  border: 1px solid #ccc;
  color: #546e7a;
  display: inline-block;
  position: relative;
  padding: 0.5em 0.5em 0.5em 2.5em;
  box-shadow: 0 0 4px #ccc;
  margin: 1em;
}

.hint:before {
  content: "\f06a";
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  font-size: 1.5em;
  font-style: normal;
  font-variant: normal;
  font-weight: 900;
  text-rendering: auto;
  position: absolute;
  left: 0.25em;
}

/* ワーニング */
.warning {
  background: #f7f7e0;
  border: 1px solid #ccc;
  color: #e64a19;
  display: inline-block;
  padding: 0.5em;
  box-shadow: 0 0 4px #ccc;
  margin: 1em;
}

.warning:before {
  content: "\f071";
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  font-size: 1.5em;
  font-style: normal;
  font-variant: normal;
  font-weight: 900;
  text-rendering: auto;
  line-height: normal;
  margin-right: 0.5em;
}


/* スクロールバー */
.ps-scrollbar-x-rail {
  z-index: 9998;
}
.ps-scrollbar-y-rail {
  z-index: 9998;
}
.ps--active-x > .ps__rail-x, .ps--active-y > .ps__rail-y {
  z-index: 9999;
}

/* Date Picker */
.picker .picker__holder {
  overflow: hidden;
}
.picker__year-display {
    background-color: #1f897f;
    color: rgba(255,255,255,0.9);
    font-size: 1.5rem;
    padding: 10px;
    margin-bottom: 10px;
}
.picker__date-display {
    margin-bottom: 10px;
}
.picker__day-display {
    display: table;
    margin: 0px auto;
    clear: both;
}
.picker__day-display > div {
    float: left;
}
.picker__day-display > span {
    font-size: 1.5rem;
    margin-left: 10px;
}
.picker__select--year.browser-default {
    width: 30%;
}
.picker__select--month.browser-default {
    width: 30%;
}
.picker__weekday-display {
    
}



/* リスト */
ul.border li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
}




/* テーブル */
table {
  display: table;
  /*width: 100% !important;*/
  border-collapse: separate;
  border-spacing: 1px;
}
table.normal {
  background: rgba(0,0,0,0.03);
}
/*
table.outer-table {
  border-spacing: 0px;
}
*/
table tr {
}
table tr.empty-row {
}
table th, table td {
  font-weight: normal;
  padding: 0.5em 0.2em;
  height: auto;
}
table tr.outer-table > th, table tr.outer-table > td {
  padding: 0;
}
table th[class*="head"], table td[class*="head"] {
  font-weight: normal;
}

table.border th, table.border td {
  border: 1px solid rgba(0,0,0,0.2);
  border-collapse: collapse;
  border-spacing: 0;
}

/* Scroll Table */
div.sp-table-scroll-box {
  margin: 0;
  padding: 0;
}
div.sp-table-scroll {
  margin: 0;
  padding: 0;
}
.sp-table-scroll-hint {
  display: none;
}

/* テーブル／スマホ */
@media only screen and (max-width: 600px) {

  table {
    width: 100%;
    max-width: calc(100vw - 24px) !important;
  }
  
  table tr.empty-row {
    display: none !important;
  }
  
  /*table td:not(:empty), table th:not(:empty) {*/
  table td, table th {
    padding: 1em 0.1em;
  }
  
  /* None Table */
  table.sp-table-none {
    table-layout: auto !important;
  }
  table.sp-table-none td, table.sp-table-none th {
    padding: 1em 0.1em;
  }
  
  
  /* Break Table */
  table.sp-table-break {
    table-layout: auto !important;
    width: 100% !important;
    max-width: calc(100vw - 24px) !important;
  }
  table.sp-table-break > tr,
  table.sp-table-break > thead > tr,
  table.sp-table-break > tbody > tr
  {
    width: 100% !important;
    /*border-bottom: 1px solid rgba(0, 0, 0, 0.1);*/
    /*margin-bottom: 1em;*/
  }
/*
  table.sp-table-break tr:after
  {
    content: '';
    display: block;
    height: 1em;
    background: var(--body-background);
  }
  table.sp-table-break tr:last-child:after
  {
    content: none;
  }
*/
/*
  table.sp-table-break th:before, table.sp-table-break td:before
  {
    content: '';
    display: block;
    height: 2em;
    width: 0px;
    float: left;
  }
*/
  table.sp-table-break > tr > th, table.sp-table-break > tr > td,
  table.sp-table-break > thead > tr > th, table.sp-table-break > thead > tr > td,
  table.sp-table-break > tbody > tr > th, table.sp-table-break > tbody > tr > td
  {
    display: inline-block !important;
    width: 100% !important;
    text-align: left;
  }
  
  table.sp-table-break > tr > th + td, table.sp-table-break > tr > td + td,
  table.sp-table-break > thead > tr > th + td, table.sp-table-break > thead > tr > td + td,
  table.sp-table-break > tbody > tr > th + td, table.sp-table-break > tbody > tr > td + td
  {
    padding-top: 0;
  }
  
  /* Cols2 Break Table */
  table.sp-table-break2 {
    table-layout: auto !important;
    width: 100% !important;
    max-width: calc(100vw - 24px) !important;
  }
  table.sp-table-break2 > tr,
  table.sp-table-break2 > thead > tr,
  table.sp-table-break2 > tbody > tr
  {
    width: 100% !important;
    display: flex;
    flex-wrap: wrap;
    height: auto;
    /*border-bottom: 1px solid rgba(0, 0, 0, 0.1);*/
    /*margin-bottom: 1em;*/
  }
/*
  table.sp-table-break2 tr:after
  {
    content: '';
    display: block;
    height: 1em;
    background: var(--body-background);
  }
  table.sp-table-break2 tr:last-child:after
  {
    content: none;
  }
*/
/*
  table.sp-table-break2 th:before, table.sp-table-break2 td:before
  {
    content: '';
    display: block;
    height: 2em;
    width: 0px;
    float: left;
  }
*/
  table.sp-table-break2 > tr > th[colspan], table.sp-table-break2 > tr > td[colspan],
  table.sp-table-break2 > thead > tr > th[colspan], table.sp-table-break2 > thead > tr > td[colspan],
  table.sp-table-break2 > tbody > tr > th[colspan], table.sp-table-break2 > tbody > tr > td[colspan]
  {
    display: block !important;
    width: 100% !important;
  }
  table.sp-table-break2 > tr > th:not([colspan]), table.sp-table-break2 > tr > td:not([colspan]),
  table.sp-table-break2 > tr > th[colspan="1"], table.sp-table-break2 > tr > td[colspan="1"],
  table.sp-table-break2 > thead > tr > th:not([colspan]), table.sp-table-break2 > thead > tr > td:not([colspan]),
  table.sp-table-break2 > thead > tr > th[colspan="1"], table.sp-table-break2 > thead > tr > td[colspan="1"],
  table.sp-table-break2 > tbody > tr > th:not([colspan]), table.sp-table-break2 > tbody > tr > td:not([colspan]),
  table.sp-table-break2 > tbody > tr > th[colspan="1"], table.sp-table-break2 > tbody > tr > td[colspan="1"]
  {
    display: inline-block !important;
    width: 50% !important;
    text-align: left;
  }
  
  
  /* Cols3 Break Table */
  table.sp-table-break3 {
    table-layout: auto !important;
    width: 100% !important;
    max-width: calc(100vw - 24px) !important;
  }
  table.sp-table-break3 > tr,
  table.sp-table-break3 > thead > tr,
  table.sp-table-break3 > tbody > tr
  {
    width: 100% !important;
    display: flex;
    flex-wrap: wrap;
    height: auto;
    /*border-bottom: 1px solid rgba(0, 0, 0, 0.1);*/
    margin-bottom: 1em;
  }
  table.sp-table-break3 tr:after
  {
    content: '';
    display: block;
    height: 1em;
    background: var(--body-background);
  }
  table.sp-table-break3 tr:last-child:after
  {
    content: none;
  }
/*
  table.sp-table-break3 th:before, table.sp-table-break3 td:before
  {
    content: '';
    display: block;
    height: 2em;
    width: 0px;
    float: left;
  }
*/
  table.sp-table-break3 > tr > th[colspan], table.sp-table-break3 > tr > td[colspan],
  table.sp-table-break3 > thead > tr > th[colspan], table.sp-table-break3 > thead > tr > td[colspan],
  table.sp-table-break3 > tbody > tr > th[colspan], table.sp-table-break3 > tbody > tr > td[colspan]
  {
    display: block !important;
    width: 100% !important;
  }
  table.sp-table-break3 > tr > th[colspan], table.sp-table-break3 > tr > td[colspan="2"],
  table.sp-table-break3 > thead > tr > th[colspan], table.sp-table-break3 > thead > tr > td[colspan="2"],
  table.sp-table-break3 > tbody > tr > th[colspan], table.sp-table-break3 > tbody > tr > td[colspan="2"]
  {
    display: block !important;
    width: 66.6666% !important;
  }
  table.sp-table-break3 > tr > th:not([colspan]), table.sp-table-break3 > tr > td:not([colspan]),
  table.sp-table-break3 > tr > th[colspan="1"], table.sp-table-break3 > tr > td[colspan="1"],
  table.sp-table-break3 > thead > tr > th:not([colspan]), table.sp-table-break3 > thead > tr > td:not([colspan]),
  table.sp-table-break3 > thead > tr > th[colspan="1"], table.sp-table-break3 > thead > tr > td[colspan="1"],
  table.sp-table-break3 > tbody > tr > th:not([colspan]), table.sp-table-break3 > tbody > tr > td:not([colspan]),
  table.sp-table-break3 > tbody > tr > th[colspan="1"], table.sp-table-break3 > tbody > tr > td[colspan="1"]
  {
    display: inline-block !important;
    width: 33.3333% !important;
    text-align: left;
  }
  
  
  /* Cols4 Break Table */
  table.sp-table-break4 {
    table-layout: auto !important;
    width: 100% !important;
    max-width: calc(100vw - 24px) !important;
  }
  table.sp-table-break4 > tr,
  table.sp-table-break4 > thead > tr,
  table.sp-table-break4 > tbody > tr
  {
    width: 100% !important;
    display: flex;
    flex-wrap: wrap;
    height: auto;
    /*border-bottom: 1px solid rgba(0, 0, 0, 0.1);*/
    margin-bottom: 1em;
  }
  table.sp-table-break4 tr:after
  {
    content: '';
    display: block;
    height: 1em;
    background: var(--body-background);
  }
  table.sp-table-break4 tr:last-child:after
  {
    content: none;
  }
/*
  table.sp-table-break4 th:before, table.sp-table-break4 td:before
  {
    content: '';
    display: block;
    height: 2em;
    width: 0px;
    float: left;
  }
*/
  table.sp-table-break4 > tr > th[colspan], table.sp-table-break4 > tr > td[colspan],
  table.sp-table-break4 > thead > tr > th[colspan], table.sp-table-break4 > thead > tr > td[colspan],
  table.sp-table-break4 > tbody > tr > th[colspan], table.sp-table-break4 > tbody > tr > td[colspan]
  {
    display: block !important;
    width: 100% !important;
  }
  table.sp-table-break4 > tr > th[colspan], table.sp-table-break4 > tr > td[colspan="3"],
  table.sp-table-break4 > thead > tr > th[colspan], table.sp-table-break4 > thead > tr > td[colspan="3"],
  table.sp-table-break4 > tbody > tr > th[colspan], table.sp-table-break4 > tbody > tr > td[colspan="3"]
  {
    display: inline-block !important;
    width: 75% !important;
  }
  table.sp-table-break4 > tr > th[colspan], table.sp-table-break4 > tr > td[colspan="2"],
  table.sp-table-break4 > thead > tr > th[colspan], table.sp-table-break4 > thead > tr > td[colspan="2"],
  table.sp-table-break4 > tbody > tr > th[colspan], table.sp-table-break4 > tbody > tr > td[colspan="2"]
  {
    display: inline-block !important;
    width: 50% !important;
  }
  table.sp-table-break4 > tr > th:not([colspan]), table.sp-table-break4 > tr > td:not([colspan]),
  table.sp-table-break4 > tr > th[colspan="1"], table.sp-table-break4 > tr > td[colspan="1"],
  table.sp-table-break4 > thead > tr > th:not([colspan]), table.sp-table-break4 > thead > tr > td:not([colspan]),
  table.sp-table-break4 > thead > tr > th[colspan="1"], table.sp-table-break4 > thead > tr > td[colspan="1"],
  table.sp-table-break4 > tbody > tr > th:not([colspan]), table.sp-table-break4 > tbody > tr > td:not([colspan]),
  table.sp-table-break4 > tbody > tr > th[colspan="1"], table.sp-table-break4 > tbody > tr > td[colspan="1"]
  {
    display: inline-block !important;
    width: 25% !important;
    text-align: left;
  }
  
  
  /* Scroll Table */
  div.sp-table-scroll {
/*     table-layout: auto !important; */
    overflow: hidden !important;
    width: 100% !important;
    max-width: calc(100vw - 24px) !important;
  }
  div.sp-table-scroll {
    overflow-x: auto !important;
    overflow-y: auto !important;
    width: 100% !important;
    max-width: calc(100vw - 24px) !important;
    height: calc(100vh / 2) !important;
    border: 1px dashed rgba(0,0,0,0.3);
  }
  div.sp-table-scroll-box .sp-table-scroll-hint {
    display: block;
  }
  table.sp-table-scroll {
    width: max-content !important;
    max-width: unset !important;
  }
  /* row1 header sticky */
  div.sp-table-scroll > table.sp-table-scroll > thead > tr:first-child > th,
  div.sp-table-scroll > table.sp-table-scroll > tbody > tr.thead:first-child > th,
  div.sp-table-scroll > table.sp-table-scroll > thead > tr:first-child > td[class*="head"],
  div.sp-table-scroll > table.sp-table-scroll > tbody > tr.thead:first-child > td[class*="head"] {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 0px !important;
    background: var(--table-scroll-sticky-background);
    color: var(--table-scroll-sticky-color);
  }
  /* row2 header sticky */
  div.sp-table-scroll > table.sp-table-scroll > thead > tr:nth-child(2) > th,
  div.sp-table-scroll > table.sp-table-scroll > tbody > tr.thead:nth-child(2) > th,
  div.sp-table-scroll > table.sp-table-scroll > thead > tr:nth-child(2) > td[class*="head"],
  div.sp-table-scroll > table.sp-table-scroll > tbody > tr.thead:nth-child(2) > td[class*="head"] {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 3rem !important;
    background: var(--table-scroll-sticky-background);
    color: var(--table-scroll-sticky-color);
  }
  /* row1 x col1 header sticky */
  div.sp-table-scroll > table.sp-table-scroll > thead > tr:first-child > th:first-child,
  div.sp-table-scroll > table.sp-table-scroll > tbody > tr.thead:first-child > th:first-child,
  div.sp-table-scroll > table.sp-table-scroll > thead > tr:first-child > td[class*="head"]:first-child,
  div.sp-table-scroll > table.sp-table-scroll > tbody > tr.thead:first-child > td[class*="head"]:first-child {
    left: 0px !important;
    background: var(--table-scroll-sticky-background);
    color: var(--table-scroll-sticky-color);
    z-index: 2;
  }
  /* col1 header sticky */
  div.sp-table-scroll > table.sp-table-scroll > tbody > tr > th:first-child,
  div.sp-table-scroll > table.sp-table-scroll > tbody > tr > td[class*="head"]:first-child {
    position: -webkit-sticky !important;
    position: sticky !important;
    left: 0px !important;
    background: var(--table-scroll-sticky-background);
    color: var(--table-scroll-sticky-color);
    z-index: 1;
  }
}


/* row-colテーブル */
.container .row .col.th {
  font-size: 1.1em;
  font-weight: bold;
}
.container .row .col.td {
}

@media only screen and (max-width: 600px) {
  .container .row .col.th {
    padding: 0.3em 0.75rem 0 0.75rem;
    border-top: 1px solid rgba(0,0,0,0.2);
  }
  .container .row .col.td {
    padding: 0 0.75rem 0 2em;
  }
}



/* フォーム */
label {
  color: inherit;
  font-size: 1rem;
}
input, select:not([multiple]) {
  border: 1px solid #ccc;
  height: 2.5em;
}
select:[multiple] {
  border: 1px solid #ccc;
}

/* テキスト */
input:not([type]),
input[type=text]:not(.browser-default),
input[type=password]:not(.browser-default),
input[type=email]:not(.browser-default),
input[type=url]:not(.browser-default),
input[type=time]:not(.browser-default),
input[type=date]:not(.browser-default),
input[type=datetime]:not(.browser-default),
input[type=datetime-local]:not(.browser-default),
input[type=tel]:not(.browser-default),
input[type=number]:not(.browser-default),
input[type=search]:not(.browser-default),
textarea.materialize-textarea {
  border: 1px solid #ccc;
  border-radius: 0;
  outline: none;
/*   height: 2.5em; */
  width: unset;
/*   font-size: 16px; */
/*   margin: 0 0 8px 0; */
  padding: 0 0.3em;
  margin-left: 0.3em;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-transition: border .3s, -webkit-box-shadow .3s;
  transition: border .3s, -webkit-box-shadow .3s;
  transition: box-shadow .3s, border .3s;
  transition: box-shadow .3s, border .3s, -webkit-box-shadow .3s;
}

/* 不活性 */
input:not([type]):disabled, input:not([type])[readonly="readonly"],
input[type=text]:not(.browser-default):disabled,
input[type=text]:not(.browser-default)[readonly="readonly"],
input[type=password]:not(.browser-default):disabled,
input[type=password]:not(.browser-default)[readonly="readonly"],
input[type=email]:not(.browser-default):disabled,
input[type=email]:not(.browser-default)[readonly="readonly"],
input[type=url]:not(.browser-default):disabled,
input[type=url]:not(.browser-default)[readonly="readonly"],
input[type=time]:not(.browser-default):disabled,
input[type=time]:not(.browser-default)[readonly="readonly"],
input[type=date]:not(.browser-default):disabled,
input[type=date]:not(.browser-default)[readonly="readonly"],
input[type=datetime]:not(.browser-default):disabled,
input[type=datetime]:not(.browser-default)[readonly="readonly"],
input[type=datetime-local]:not(.browser-default):disabled,
input[type=datetime-local]:not(.browser-default)[readonly="readonly"],
input[type=tel]:not(.browser-default):disabled,
input[type=tel]:not(.browser-default)[readonly="readonly"],
input[type=number]:not(.browser-default):disabled,
input[type=number]:not(.browser-default)[readonly="readonly"],
input[type=search]:not(.browser-default):disabled,
input[type=search]:not(.browser-default)[readonly="readonly"],
textarea.materialize-textarea:disabled,
textarea.materialize-textarea[readonly="readonly"] {
  color: rgba(0, 0, 0, 0.5);
  background: rgba(0, 0, 0, 0.03) !important;
}

input:not([type]):disabled + label,
input:not([type])[readonly="readonly"] + label,
input[type=text]:not(.browser-default):disabled + label,
input[type=text]:not(.browser-default)[readonly="readonly"] + label,
input[type=password]:not(.browser-default):disabled + label,
input[type=password]:not(.browser-default)[readonly="readonly"] + label,
input[type=email]:not(.browser-default):disabled + label,
input[type=email]:not(.browser-default)[readonly="readonly"] + label,
input[type=url]:not(.browser-default):disabled + label,
input[type=url]:not(.browser-default)[readonly="readonly"] + label,
input[type=time]:not(.browser-default):disabled + label,
input[type=time]:not(.browser-default)[readonly="readonly"] + label,
input[type=date]:not(.browser-default):disabled + label,
input[type=date]:not(.browser-default)[readonly="readonly"] + label,
input[type=datetime]:not(.browser-default):disabled + label,
input[type=datetime]:not(.browser-default)[readonly="readonly"] + label,
input[type=datetime-local]:not(.browser-default):disabled + label,
input[type=datetime-local]:not(.browser-default)[readonly="readonly"] + label,
input[type=tel]:not(.browser-default):disabled + label,
input[type=tel]:not(.browser-default)[readonly="readonly"] + label,
input[type=number]:not(.browser-default):disabled + label,
input[type=number]:not(.browser-default)[readonly="readonly"] + label,
input[type=search]:not(.browser-default):disabled + label,
input[type=search]:not(.browser-default)[readonly="readonly"] + label,
textarea.materialize-textarea:disabled + label,
textarea.materialize-textarea[readonly="readonly"] + label {
  color: rgba(0, 0, 0, 0.5);
}


/* フォーカス */
/*
input:not([type]):focus:not([readonly]),
input[type=text]:not(.browser-default):focus:not([readonly]),
input[type=password]:not(.browser-default):focus:not([readonly]),
input[type=email]:not(.browser-default):focus:not([readonly]),
input[type=url]:not(.browser-default):focus:not([readonly]),
input[type=time]:not(.browser-default):focus:not([readonly]),
input[type=date]:not(.browser-default):focus:not([readonly]),
input[type=datetime]:not(.browser-default):focus:not([readonly]),
input[type=datetime-local]:not(.browser-default):focus:not([readonly]),
input[type=tel]:not(.browser-default):focus:not([readonly]),
input[type=number]:not(.browser-default):focus:not([readonly]),
input[type=search]:not(.browser-default):focus:not([readonly]),
textarea.materialize-textarea:focus:not([readonly]) {
  border-bottom: 1px solid #26a69a;
  -webkit-box-shadow: 0 1px 0 0 #26a69a;
          box-shadow: 0 1px 0 0 #26a69a;
}

input:not([type]):focus:not([readonly]) + label,
input[type=text]:not(.browser-default):focus:not([readonly]) + label,
input[type=password]:not(.browser-default):focus:not([readonly]) + label,
input[type=email]:not(.browser-default):focus:not([readonly]) + label,
input[type=url]:not(.browser-default):focus:not([readonly]) + label,
input[type=time]:not(.browser-default):focus:not([readonly]) + label,
input[type=date]:not(.browser-default):focus:not([readonly]) + label,
input[type=datetime]:not(.browser-default):focus:not([readonly]) + label,
input[type=datetime-local]:not(.browser-default):focus:not([readonly]) + label,
input[type=tel]:not(.browser-default):focus:not([readonly]) + label,
input[type=number]:not(.browser-default):focus:not([readonly]) + label,
input[type=search]:not(.browser-default):focus:not([readonly]) + label,
textarea.materialize-textarea:focus:not([readonly]) + label {
  color: #26a69a;
}

input:not([type]):focus.valid ~ label,
input[type=text]:not(.browser-default):focus.valid ~ label,
input[type=password]:not(.browser-default):focus.valid ~ label,
input[type=email]:not(.browser-default):focus.valid ~ label,
input[type=url]:not(.browser-default):focus.valid ~ label,
input[type=time]:not(.browser-default):focus.valid ~ label,
input[type=date]:not(.browser-default):focus.valid ~ label,
input[type=datetime]:not(.browser-default):focus.valid ~ label,
input[type=datetime-local]:not(.browser-default):focus.valid ~ label,
input[type=tel]:not(.browser-default):focus.valid ~ label,
input[type=number]:not(.browser-default):focus.valid ~ label,
input[type=search]:not(.browser-default):focus.valid ~ label,
textarea.materialize-textarea:focus.valid ~ label {
  color: #4CAF50;
}

input:not([type]):focus.invalid ~ label,
input[type=text]:not(.browser-default):focus.invalid ~ label,
input[type=password]:not(.browser-default):focus.invalid ~ label,
input[type=email]:not(.browser-default):focus.invalid ~ label,
input[type=url]:not(.browser-default):focus.invalid ~ label,
input[type=time]:not(.browser-default):focus.invalid ~ label,
input[type=date]:not(.browser-default):focus.invalid ~ label,
input[type=datetime]:not(.browser-default):focus.invalid ~ label,
input[type=datetime-local]:not(.browser-default):focus.invalid ~ label,
input[type=tel]:not(.browser-default):focus.invalid ~ label,
input[type=number]:not(.browser-default):focus.invalid ~ label,
input[type=search]:not(.browser-default):focus.invalid ~ label,
textarea.materialize-textarea:focus.invalid ~ label {
  color: #F44336;
}

input:not([type]).validate + label,
input[type=text]:not(.browser-default).validate + label,
input[type=password]:not(.browser-default).validate + label,
input[type=email]:not(.browser-default).validate + label,
input[type=url]:not(.browser-default).validate + label,
input[type=time]:not(.browser-default).validate + label,
input[type=date]:not(.browser-default).validate + label,
input[type=datetime]:not(.browser-default).validate + label,
input[type=datetime-local]:not(.browser-default).validate + label,
input[type=tel]:not(.browser-default).validate + label,
input[type=number]:not(.browser-default).validate + label,
input[type=search]:not(.browser-default).validate + label,
textarea.materialize-textarea.validate + label {
  width: 100%;
}
*/
/* テキスト・コンボのフォーカス */
input:not([type]):focus:not([readonly]),
input[type=text]:focus:not([readonly]),
input[type=password]:focus:not([readonly]),
input[type=email]:focus:not([readonly]),
input[type=url]:focus:not([readonly]),
input[type=time]:focus:not([readonly]),
input[type=date]:focus:not([readonly]),
input[type=datetime-local]:focus:not([readonly]),
input[type=tel]:focus:not([readonly]),
input[type=number]:focus:not([readonly]),
input[type=search]:focus:not([readonly]),
textarea:focus:not([readonly]),
select:focus:not([readonly])
{
  outline: none;
  border-color: var(--input-focus-linecolor, #37c);
  box-shadow: var(--input-focus-shadow, 0 0 8px #59e);
}

.input-field.col label {
  left: 1.35rem;
  top: -1px;
}
.input-field > label {
  color: rgba(0, 0, 0, 0.6);
}

.input-field > label:not(.label-icon).active {
  -webkit-transform: translateY(-1.6rem) scale(0.8);
          transform: translateY(-1.6rem) scale(0.8);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
}

.input-field > input[type]:-webkit-autofill:not(.browser-default):not([type="search"]) + label,
.input-field > input[type=date]:not(.browser-default) + label,
.input-field > input[type=time]:not(.browser-default) + label {
  -webkit-transform: translateY(-1.6rem) scale(0.8);
          transform: translateY(-1.6rem) scale(0.8);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
}
.input-field .prefix {
  margin-left: 0.3em;
}
.input-field .prefix.active {
  color: var(--input-focus-prefix, #26a69a);
}


/* チェックボックス・ラジオ */
input[type=checkbox],
input[type=radio] {
  height: 1.3em;
  width: 1.3em;
  vertical-align: middle;
  margin-top: -0.1em;
  margin-left: 0.3em;
}
input[type=checkbox]:focus:not([readonly])
{
  outline: none;
  background: var(--checkbox-focus-linecolor, #37c);
  box-shadow: var(--checkbox-focus-shadow, 0 0 4px var(--focus-shadow, #59e));
  filter: var(--checkbox-focus-filter, drop-shadow(0 0 4px var(--focus-shadow, #59e)));
}
input[type=radio]:focus:not([readonly])
{
  outline: none;
  filter: var(--radio-focus-filter, drop-shadow(0 0 4px var(--focus-shadow, #59e)));
}

/* 入力OK */
/*
input.valid:not([type]), input.valid:not([type]):focus,
input.valid[type=text]:not(.browser-default),
input.valid[type=text]:not(.browser-default):focus,
input.valid[type=password]:not(.browser-default),
input.valid[type=password]:not(.browser-default):focus,
input.valid[type=email]:not(.browser-default),
input.valid[type=email]:not(.browser-default):focus,
input.valid[type=url]:not(.browser-default),
input.valid[type=url]:not(.browser-default):focus,
input.valid[type=time]:not(.browser-default),
input.valid[type=time]:not(.browser-default):focus,
input.valid[type=date]:not(.browser-default),
input.valid[type=date]:not(.browser-default):focus,
input.valid[type=datetime]:not(.browser-default),
input.valid[type=datetime]:not(.browser-default):focus,
input.valid[type=datetime-local]:not(.browser-default),
input.valid[type=datetime-local]:not(.browser-default):focus,
input.valid[type=tel]:not(.browser-default),
input.valid[type=tel]:not(.browser-default):focus,
input.valid[type=number]:not(.browser-default),
input.valid[type=number]:not(.browser-default):focus,
input.valid[type=search]:not(.browser-default),
input.valid[type=search]:not(.browser-default):focus,
textarea.materialize-textarea.valid,
textarea.materialize-textarea.valid:focus, .select-wrapper.valid > input.select-dropdown {
  border-bottom: 1px solid #4CAF50;
  -webkit-box-shadow: 0 1px 0 0 #4CAF50;
          box-shadow: 0 1px 0 0 #4CAF50;
}
*/
/* 入力エラー */
/*
input.invalid:not([type]), input.invalid:not([type]):focus,
input.invalid[type=text]:not(.browser-default),
input.invalid[type=text]:not(.browser-default):focus,
input.invalid[type=password]:not(.browser-default),
input.invalid[type=password]:not(.browser-default):focus,
input.invalid[type=email]:not(.browser-default),
input.invalid[type=email]:not(.browser-default):focus,
input.invalid[type=url]:not(.browser-default),
input.invalid[type=url]:not(.browser-default):focus,
input.invalid[type=time]:not(.browser-default),
input.invalid[type=time]:not(.browser-default):focus,
input.invalid[type=date]:not(.browser-default),
input.invalid[type=date]:not(.browser-default):focus,
input.invalid[type=datetime]:not(.browser-default),
input.invalid[type=datetime]:not(.browser-default):focus,
input.invalid[type=datetime-local]:not(.browser-default),
input.invalid[type=datetime-local]:not(.browser-default):focus,
input.invalid[type=tel]:not(.browser-default),
input.invalid[type=tel]:not(.browser-default):focus,
input.invalid[type=number]:not(.browser-default),
input.invalid[type=number]:not(.browser-default):focus,
input.invalid[type=search]:not(.browser-default),
input.invalid[type=search]:not(.browser-default):focus,
textarea.materialize-textarea.invalid,
textarea.materialize-textarea.invalid:focus, .select-wrapper.invalid > input.select-dropdown,
.select-wrapper.invalid > input.select-dropdown:focus {
  border-bottom: 1px solid #F44336;
  -webkit-box-shadow: 0 1px 0 0 #F44336;
          box-shadow: 0 1px 0 0 #F44336;
}
*/

/* 入力？？？ */
/*
input:not([type]).valid ~ .helper-text[data-success],
input:not([type]):focus.valid ~ .helper-text[data-success],
input:not([type]).invalid ~ .helper-text[data-error],
input:not([type]):focus.invalid ~ .helper-text[data-error],
input[type=text]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=text]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=text]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=text]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=password]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=password]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=password]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=password]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=email]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=email]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=email]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=email]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=url]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=url]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=url]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=url]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=time]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=time]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=time]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=time]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=date]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=date]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=date]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=date]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=datetime]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=datetime]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=datetime]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=datetime]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=datetime-local]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=datetime-local]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=datetime-local]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=datetime-local]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=tel]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=tel]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=tel]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=tel]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=number]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=number]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=number]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=number]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=search]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=search]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=search]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=search]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
textarea.materialize-textarea.valid ~ .helper-text[data-success],
textarea.materialize-textarea:focus.valid ~ .helper-text[data-success],
textarea.materialize-textarea.invalid ~ .helper-text[data-error],
textarea.materialize-textarea:focus.invalid ~ .helper-text[data-error], .select-wrapper.valid .helper-text[data-success],
.select-wrapper.invalid ~ .helper-text[data-error] {
  color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  pointer-events: none;
}

input:not([type]).valid ~ .helper-text:after,
input:not([type]):focus.valid ~ .helper-text:after,
input[type=text]:not(.browser-default).valid ~ .helper-text:after,
input[type=text]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=password]:not(.browser-default).valid ~ .helper-text:after,
input[type=password]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=email]:not(.browser-default).valid ~ .helper-text:after,
input[type=email]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=url]:not(.browser-default).valid ~ .helper-text:after,
input[type=url]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=time]:not(.browser-default).valid ~ .helper-text:after,
input[type=time]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=date]:not(.browser-default).valid ~ .helper-text:after,
input[type=date]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=datetime]:not(.browser-default).valid ~ .helper-text:after,
input[type=datetime]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default).valid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=tel]:not(.browser-default).valid ~ .helper-text:after,
input[type=tel]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=number]:not(.browser-default).valid ~ .helper-text:after,
input[type=number]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=search]:not(.browser-default).valid ~ .helper-text:after,
input[type=search]:not(.browser-default):focus.valid ~ .helper-text:after,
textarea.materialize-textarea.valid ~ .helper-text:after,
textarea.materialize-textarea:focus.valid ~ .helper-text:after, .select-wrapper.valid ~ .helper-text:after {
  content: attr(data-success);
  color: #4CAF50;
}

input:not([type]).invalid ~ .helper-text:after,
input:not([type]):focus.invalid ~ .helper-text:after,
input[type=text]:not(.browser-default).invalid ~ .helper-text:after,
input[type=text]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=password]:not(.browser-default).invalid ~ .helper-text:after,
input[type=password]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=email]:not(.browser-default).invalid ~ .helper-text:after,
input[type=email]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=url]:not(.browser-default).invalid ~ .helper-text:after,
input[type=url]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=time]:not(.browser-default).invalid ~ .helper-text:after,
input[type=time]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=date]:not(.browser-default).invalid ~ .helper-text:after,
input[type=date]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=datetime]:not(.browser-default).invalid ~ .helper-text:after,
input[type=datetime]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default).invalid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=tel]:not(.browser-default).invalid ~ .helper-text:after,
input[type=tel]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=number]:not(.browser-default).invalid ~ .helper-text:after,
input[type=number]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=search]:not(.browser-default).invalid ~ .helper-text:after,
input[type=search]:not(.browser-default):focus.invalid ~ .helper-text:after,
textarea.materialize-textarea.invalid ~ .helper-text:after,
textarea.materialize-textarea:focus.invalid ~ .helper-text:after, .select-wrapper.invalid ~ .helper-text:after {
  content: attr(data-error);
  color: #F44336;
}

input:not([type]) + label:after,
input[type=text]:not(.browser-default) + label:after,
input[type=password]:not(.browser-default) + label:after,
input[type=email]:not(.browser-default) + label:after,
input[type=url]:not(.browser-default) + label:after,
input[type=time]:not(.browser-default) + label:after,
input[type=date]:not(.browser-default) + label:after,
input[type=datetime]:not(.browser-default) + label:after,
input[type=datetime-local]:not(.browser-default) + label:after,
input[type=tel]:not(.browser-default) + label:after,
input[type=number]:not(.browser-default) + label:after,
input[type=search]:not(.browser-default) + label:after,
textarea.materialize-textarea + label:after, .select-wrapper + label:after {
  display: block;
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  opacity: 0;
  -webkit-transition: .2s opacity ease-out, .2s color ease-out;
  transition: .2s opacity ease-out, .2s color ease-out;
}
*/

/* placeholder */
:placeholder-shown {
    color: #00bcd4;
    opacity: 1;
}
/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder {
    color: #00bcd4;
    opacity: 1;
}
/* Firefox 18- */
:-moz-placeholder {
    color: #00bcd4;
    opacity: 1;
}
/* Firefox 19+ */
::-moz-placeholder {
    color: #00bcd4;
    opacity: 1;
}
/* IE 10+ */
:-ms-input-placeholder {
    color: #00bcd4;
    opacity: 1;
}


/* テキストエリア */
textarea {
  background-color: #fff;
  height: auto;
}
textarea.materialize-textarea {
  margin-top: 0.5em;
  margin-left: 0.3em;
  border-top: 1px solid #ddd;
  border-left: 1px solid #ddd;
  border-right: 1px solid #9e9e9e;
  border-bottom: 1px solid #9e9e9e;
  resize: vertical;
  overflow-y: auto;
  padding: 0.5em 0;
}
.input-field .prefix ~ textarea {
  padding: 0.5em 0;
}
textarea.materialize-textarea:focus:not([readonly]) {
  outline: none;
  border-bottom: 1px solid #37c;
  border-right: 1px solid #37c;
  box-shadow: 0 0 8px #59e;
}

/* コンボ */
select {
  margin-left: 0.3em;
}
/* 不活性 */
select:disabled,
select.disabled,
select[readonly="readonly"]
{
    background: rgba(0, 0, 0, 0.03) !important;
    color: rgba(0, 0, 0, 0.5) !important;
}

/* ボタン */
i.left {
  margin-right: 3px;
}

input[type=button],
input[type=submit],
input[type=reset],
input[type=file],
button,
.btn, .btn-large, .btn-small,
.btn-floating,
.btn-flat
{
  height: 2.5em;
  min-width: 10em;
}
.btn, .btn-large, .btn-small,
.btn-floating,
.btn-flat {
  border-bottom: none;
  outline: 0;
  font-size: 1em;
  padding: 0px 0.5em;
}
.btn-flat {
  background-color: transparent;
  box-shadow: none;
}
a.btn, a.btn-large, a.btn-small,
a.btn-floating,
a.btn-flat {
  padding: 0.5em 0.5em;
}

.btn img, .btn-large img, .btn-small img,
.btn-floating img,
.btn-flat img {
  width: 16px;
  height: 16px;
  margin-right: 0.1em;
}

.btn:hover, .btn-large:hover, .btn-small:hover, .btn-flat:hover {
  outline: none;
  background: var(--button-focus-background, rgba(0, 16, 32, 0.7));
/*   border-color: var(--button-focus-linecolor, #37c); */
  border: none;
  box-shadow: var(--button-focus-shadow, 0 0 8px 2px #59e);
  color: var(--button-focus-color, #fff);
}
.btn:focus, .btn-large:focus, .btn-small:focus, .btn-flat:focus {
  outline: none;
  background: var(--button-focus-background, rgba(0, 16, 32, 0.7));
/*   border-color: var(--button-focus-linecolor, #37c); */
  border: none;
  box-shadow: var(--button-focus-shadow, 0 0 8px 2px #59e);
  color: var(--button-focus-color, #fff);
}
input[type=button]:hover, input[type=submit]:hover,
input[type=reset]:hover, input[type=file]:hover,
button:hover, .button:hover
{
  outline: none;
  background: var(--button-focus-background, rgba(0, 16, 32, 0.7));
/*   border-color: var(--button-focus-linecolor, #37c); */
  border: none;
  box-shadow: var(--button-focus-shadow, 0 0 8px 2px #59e);
  color: var(--button-focus-color, #fff);
}
input[type=button]:focus, input[type=submit]:focus,
input[type=reset]:focus, input[type=file]:focus,
button:focus, .button:focus
{
  outline: none;
  background: var(--button-focus-background, rgba(0, 16, 32, 0.7));
/*   border-color: var(--button-focus-linecolor, #37c); */
  border: none;
  box-shadow: var(--button-focus-shadow, 0 0 8px 2px #59e);
  color: var(--button-focus-color, #fff);
}
.btn i, .btn-large i, .btn-small i, .btn-floating i, .btn-flat i {
  font-size: 1.3rem;
  line-height: normal;
}
.btn-floating i {
  line-height: 37px;
}

/* 不活性 */
input[type=button]:disabled,
input[type=submit]:disabled,
input[type=reset]:disabled,
input[type=file]:disabled,
button:disabled,
.btn:disabled, .btn-large:disabled, .btn-small:disabled,
.btn-floating:disabled,
.btn-flat:disabled
{
  pointer-events: none;
  background-color: #DFDFDF !important;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #666 !important;
  cursor: default;
}



/* 入力エラー */
#allErrors {
    background: #ffe;
    border-radius: 5px;
    border: 4px solid #c99;
    padding: 5px;
    margin: 5px;
}
#allErrorsTitle {
    color: #933;
    font-size: 1.3rem;
    font-weight: bold;
    margin: 0px 0px 0.5em 0px;
}
#allErrorMessages {
    margin-left: 1em;
}
#allErrorMessages .allmsg {
}
#allErrorMessages .field {
    font-weight: bold;
    float: left;
    min-width: 80px;
}
#allErrorMessages .msg {
}


/* フォーム／スマホ */
@media only screen and (max-width: 600px) {
  input, select:not([multiple]]) {
    height: 3em;
  }
  input[type=checkbox],
  input[type=radio] {
    height: 2.2em;
    width: 2.2em;
    margin-top: 2px;
  }
  
  input[type=button],
  input[type=submit],
  input[type=reset],
  input[type=file],
  button,
  .btn, .btn-large, .btn-small,
  .btn-floating,
  .btn-flat
  {
    height: 3em;
    display: block !important;
    margin: 0.5em 0.5em 0.5em 0 !important;
  }

  input:not([type]),
  input[type=text],
  input[type=password],
  input[type=email],
  input[type=url],
  input[type=time],
  input[type=date],
  input[type=datetime-local],
  input[type=tel],
  input[type=number],
  input[type=search] {
    width: calc(99% - 10px) !important;
  }
  .input-field .prefix ~ input {
    width: calc(99% - 10px - 3rem) !important;
  }
  textarea {
    width: 99% !important;
  }
  select {
    width: 99% !important;
  }
  
  
  /* スクロール＋入力 */
  table.sp-table-scroll input:not([type]),
  table.sp-table-scroll input[type=text],
  table.sp-table-scroll input[type=password],
  table.sp-table-scroll input[type=email],
  table.sp-table-scroll input[type=url],
  table.sp-table-scroll input[type=time],
  table.sp-table-scroll input[type=date],
  table.sp-table-scroll input[type=datetime-local],
  table.sp-table-scroll input[type=tel],
  table.sp-table-scroll input[type=number],
  table.sp-table-scroll input[type=search] {
    width: auto !important;
  }
  table.sp-table-scroll .input-field .prefix ~ input {
    width: auto !important;
  }
  table.sp-table-scroll textarea {
    width: auto !important;
  }
  table.sp-table-scroll select {
    width: auto !important;
  }
}




/* ヘッダー・メイン・フッター（サイドメニュー調整） */
header, main, footer {
  margin-left: 300px;
}
@media only screen and (max-width: 1024px) {
  header, main, footer {
    margin-left: 0;
  }
}
header.login-inactive, main.login-inactive, footer.login-inactive {
  margin: 0;
}



/* ページヘッダー */
header.page-header {
}
header.page-header.fixed {
  position: fixed;
  top: 0;
  width: 100%;
  padding-bottom: 2px;
  z-index: 996;
}
header.page-header.login-active.fixed {
  width: calc(100% - 300px);
}
header.page-header.login-active.fixed + main.page-main {
  margin-top: 96px;
}
header.page-header .container {
  padding-top: 0px;
  margin: 0 2em;
}

/* ページヘッダー／タブレット・スマホ */
@media only screen and (max-width: 1024px) {
  header.page-header.login-active.fixed {
    width: 100%;
  }
  
  /* ヘッダー／中央寄せ */
  header.page-header .container {
    width: auto;
    max-width: 100%;
    margin: 0 1em;
  }
}

/* ページヘッダー／スマホ */
@media only screen and (max-width: 600px) {
  /* ボディ／中央寄せ */
  header.page-header .container {
    width: auto;
    max-width: 100%;
    margin: 0 1em;
  }
}

/* トップメニュー */
nav, .navbar-fixed {
  height: auto;
}
nav#top-nav {
  background: transparent !important;
  box-shadow: none;
}

nav#top-nav li {
  height: 56px;
  line-height: 56px;
  display: flex;
  align-items: center;
}
nav#top-nav .nav-wrapper .sidenav-btn {
  position: absolute;
  left: 0;
  /*right: 0.5em;*/
  top: 0.3em;
}
nav#top-nav .nav-wrapper .sidenav-trigger {
  margin: 0 !important;
  padding: 0;
  width: 32px;
  min-width: auto;
  height: 32px;
  line-height: 32px;
  border-radius: unset;
}

nav#top-nav .nav-wrapper .sidenav-trigger .material-icons {
  height: 32px;
  line-height: 32px;
}

nav#top-nav img.page-icon {
  width: 32px;
  height: 32px;
  margin: 0 12px 5px 0;
  vertical-align: middle;
}
nav#top-nav i.page-icon {
  font-size: 32px;
  vertical-align: middle;
}

nav#top-nav .page-title {
  padding: 0.5em 0.5em;
}
nav#top-nav .page-title .title {
  margin: 0;
  font-size: 32px;
  font-weight: normal;
  /*letter-spacing: 0.1em;*/
}
nav#top-nav .page-title .main {
  /*vertical-align: bottom;*/
}
nav#top-nav .page-title .sub-title {
  margin: 0 0 0 1em;
  font-size: 20px;
  font-weight: normal;
  letter-spacing: 0.1em;
}
nav#top-nav .page-title .helplink {
  color: var(--system-sidenav-trigger-background, #697989);
  float: right;
  margin: 0;
}
nav#top-nav .page-title .helplink .icon {
  font-size: 32px;
  height: 32px;
  line-height: 32px;
  width: 32px;
  margin: 0;
}
nav#top-nav .page-title .helplink .helptext {
  display: none;
  font-size: 8px;
}

/* トップメニュー／スマホ */
@media only screen and (max-width: 601px) {
  nav#top-nav {
    padding-left: 0px;
  }
  nav#top-nav img.page-icon {
    width: 24px;
    height: 24px;
    margin: 6px 12px 0 0;
  }
  nav#top-nav i.page-icon {
    font-size: 24px;
  }
  nav#top-nav .page-title span {
    font-size: 18px;
  }
  nav#top-nav .page-title .helplink {
    color: var(--system-sidenav-trigger-background, #697989);
    float: right;
    margin-top: 8px;
  }
  nav#top-nav .page-title .helplink .icon {
    font-size: 24px;
    height: 24px;
    line-height: 24px;
    width: 24px;
    margin: 0;
  }
  nav#top-nav .page-title .helplink .helptext {
    font-size: 8px;
  }
}

nav#top-nav .nav-wrapper a {
  text-decoration: none;
  border: none;
}
nav#top-nav .nav-wrapper a:hover {
  text-decoration: none;
  border: none;
}

/* パンくず */
.breadcrumb-box {
  height: 40px;
  line-height: 40px;
}
.breadcrumb-box .breadcrumb {
  color: #666;
  font-size: 1em;
  height: 40px;
  line-height: 40px;
  vertical-align: middle;
}
.breadcrumb-box .breadcrumb:first-child {
  margin-left: 44px;
}

.breadcrumb-box .breadcrumb i,
.breadcrumb-box .breadcrumb [class^="mdi-"], .breadcrumb [class*="mdi-"],
.breadcrumb-box .breadcrumb i.material-icons {
  display: inline-block;
  float: left;
  font-size: 1em;
}

.breadcrumb-box .breadcrumb:before {
  display: none;
}
.breadcrumb-box .breadcrumb:after {
  content: '\E5CC';
  color: #999;
  vertical-align: middle;
  display: inline-block;
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 1em;
  margin: 0 3px 0 3px;
  -webkit-font-smoothing: antialiased;
}


/* ロゴ */

nav#top-nav li.logo-wrapper {
  margin: 0px;
  padding: 0px;
  width: 240px;
  height: 48px;
  text-align: left;
}
nav#top-nav .brand-logo {
  font-size: 22px;
  font-weight: bold;
  height: 48px;
  line-height: 48px;
  position: relative;
}

/* ロゴ／タブレット */
@media only screen and (max-width: 1024px) {
  nav#top-nav li.logo-wrapper {
    margin-left: 50px;
  }
  nav#top-nav .brand-logo {
    font-size: 18px;
    left: 0;
    transform: unset;
  }
}
/* ロゴ／スマホ */
@media only screen and (max-width: 600px) {
  nav#top-nav li.logo-wrapper {
    margin-left: 50px;
    width: 68%;
  }
  nav#top-nav .brand-logo {
    font-size: 18px;
    left: 50%;
    transform: translateX(-50%);
  }
}


/* ツールバー */
nav#top-nav .toolbar-wrapper {
}
nav#top-nav .toolbar-wrapper a {
  font-size: 0.9em;
  line-height: normal;
  min-width: 6em;
  text-align: center;
  padding: 0 10px;
}
nav#top-nav .toolbar-wrapper a .material-icons {
  margin: 0 auto;
}
nav#top-nav .toolbar-wrapper img {
  width: 32px;
  height: 32px;
  margin-right: 5px;
  vertical-align: middle;
}
/* トップメニュー／ドロップダウン */
nav#top-nav .dropdown-content {
  min-width: 150px;
  width: auto !important;
}
nav#top-nav .dropdown-content li {
  min-height: 40px;
}
nav#top-nav .dropdown-content li a {
  color: #333;
}





/* ページフッター */
footer.page-footer {
  margin-top: 2em;
  margin-bottom: 2em;
  padding: 0;
}
footer.page-footer.login-inactive {
  margin: 0;
}

footer.page-footer .container {
  margin: 0 2em;
  padding: 0;
}
footer.page-footer .copyright-wrapper {
  text-align: right;
  vertical-align: middle;
}
footer.page-footer.login-inactive .copyright-wrapper {
  text-align: center;
  vertical-align: middle;
}

/* ページフッター／PC */
@media only screen and (min-width: 1025px) {
  /* 左寄せ */
/*   body footer.page-footer .container { */
/*     width: calc(100% - 3em); */
/*     max-width: 100%; */
/*     margin: 0 2em; */
/*   } */
}

/* ページフッター／タブレット・スマホ */
@media only screen and (max-width: 1024px) {
  /* フッター／中央寄せ */
  body footer.page-footer .container {
    width: auto;
    max-width: 100%;
    margin: 0 1em;
  }
}

/* ページフッター／スマホ */
@media only screen and (max-width: 600px) {
  /* フッター／中央寄せ */
  body footer.page-footer .container {
    width: auto;
    max-width: 100%;
    margin: 0 1em;
  }
}





/* サイドメニュー */
#sidenav-menu-wrapper {
  overflow: hidden;
}

#sidenav-menu {
}
#sidenav-menu-close-btn {
  position: fixed;
  right: 2px;
  top: 4px;
  z-index: 1000;
  background: transparent;
  color: #fff;
  border-bottom: 1px solid transparent;
  font-size: 1.5em;
}
#sidenav-menu ul {
  margin: 0;
}
#sidenav-menu .sidenav-menu-header {
}
#sidenav-menu .sidenav-menu-footer {
}
#sidenav-menu .system-logo {
  /*margin: 10px;*/
  padding: 0.5em 0;
  /*text-align: center;*/
  vertical-align: top;
  /*border-bottom: 1px solid #ccc;*/
}
#sidenav-menu .system-logo img {
  border: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  height: auto;
  margin: 0 auto;
  text-align: center;
  vertical-align: top;
}

#sidenav-menu .system-menu {
  background: none;
  /*margin: 0;*/
  margin: 2px 0 1em 0;
  padding: 0 4px;
}
#sidenav-menu .system-menu img {
  width: 24px;
  margin: 4px 0 4px 0;
  vertical-align: middle;
}
#sidenav-menu .system-menu .fas {
  font-size: 24px;
  margin: 4px 0 4px 0;
}
#sidenav-menu .system-menu .row {
  margin: 0;
  padding: 0;
}
#sidenav-menu .system-menu .col {
  text-align: center;
  margin: 0;
  padding: 0.5em;
}
#sidenav-menu .system-menu .row1 .col {
  height: 75px;
}
#sidenav-menu .system-menu a {
  border-bottom: 1px solid transparent;
  font-size: 0.9em;
  text-decoration: none;
  line-height: normal;
  width: 100%;
  height: 50px;
  padding: 0;
  margin: 0;
  border-radius: 0.5em;
}
#sidenav-menu .system-menu a.logout {
  height: 60px;
}


/* サイドメニューBODY */
#sidenav-menu .sidenav-body {
}
#sidenav-menu span.badge.new {
  float: right !important;
  margin: -0.3em 0.5em 0 0;
  font-size: 9px;
  font-weight: normal;
  line-height: 1.5em;
  height: 1.5em;
  padding: 0 0.5em;
}

#sidenav-menu .menu-top-new {
  margin: 1em;
  padding: 0.5em;
  border-radius: 0.5em;
}
#sidenav-menu .menu-top-new a {
  width: 100%;
  padding: 0.3em;
}
#sidenav-menu .menu-top-new img {
  width: 24px;
  margin: 0 0.5em 0 0;
}
#sidenav-menu .menu-top-new span.new.badge {
  position: absolute;
  right: 0px;
  top: 3px;
}

#sidenav-menu .submenu-bar {
  margin: 1em 0 0 0;
  padding: 0 4px 4px 4px;
}
#sidenav-menu .submenu-bar.menu-header {
  margin: 0.5em 0;
  padding: 0.5em 1em;
}
#sidenav-menu .submenu-bar.menu-footer {
  margin: 1em 0 3em 0;
  padding: 1em;
}

#sidenav-menu .menu-contents {
  margin-top: -1px;
}
#sidenav-menu .menu-contents .menu-content {
}


#sidenav-menu .menu-body .menu-tabs .tabs {
  height: auto;
}
#sidenav-menu .menu-body .menu-tabs .tabs .tab {
  height: auto;
  border: none;
}
#sidenav-menu .menu-body .menu-tabs .tabs .tab img {
  width: 24px;
  margin: 0 0.5em 0 0;
}
#sidenav-menu .menu-body .menu-tabs .tabs .tab .fas {
  font-size: 16px;
  margin: 0;
  height: auto;
  line-height: 36px;
}
#sidenav-menu .menu-body .menu-tabs .tabs .tab a {
  font-size: 0.9em;
  line-height: 36px;
}
#sidenav-menu .menu-body .menu-tabs .tabs .tab a.active {
  text-decoration: underline;
  border: none;
}

#sidenav-menu .submenu-bar .header {
  border-bottom: 2px solid var(--menu-list-linecolor, rgba(255, 255, 255, 0.2));
  padding: 0.5em;
  font-size: 1.2em;
/*   font-weight: bold; */
}
#sidenav-menu .submenu-bar .header .row2 {
  font-size: 0.85em;
  margin-left: 3em;
}
#sidenav-menu .submenu-bar .header img {
  width: 32px;
  vertical-align: middle;
  margin: 0.3em 0.5em 0.5em 0;
}
#sidenav-menu .submenu-bar .header .fas {
  font-size: 1.5em;
  margin: 0.3em 0.5em 0.5em 0.1em;
  height: auto;
  line-height: normal;
}
#sidenav-menu .submenu-bar .header a.tool-btn {
  font-size: 2em;
  float: right;
}

#sidenav-menu .menu-body .menu-all-list {
}

#sidenav-menu .submenu-bar ul {
  position: relative;
  margin: 0;
  padding: 0;
}
#sidenav-menu .submenu-bar ul li {
  position: relative;
  margin: 0;
  line-height: normal;
}
#sidenav-menu .submenu-bar ul li.menu-close {
/*   text-align: center; */
}
#sidenav-menu .submenu-bar ul li.menu-close a {
  padding: 0.5em 2em;
}
#sidenav-menu .submenu-bar ul li.menu-close i.material-icons {
  float: none;
  width: auto;
  height: auto;
  line-height: normal;
  margin: 0 0.2em 0 0.5em;
}
#sidenav-menu .submenu-bar ul li a {
  display: block;
  margin: 0;
  padding: 0.5em 1em 0.5em 4px;
  border-bottom: 1px solid transparent;
  position: relative;
  font-size: 1rem;
  font-weight: normal;
  height: auto;
  line-height: normal;
  text-decoration: none;
}
#sidenav-menu .submenu-bar ul li a.tab-link {
  font-size: 1.1rem;
}
#sidenav-menu .submenu-bar ul li a:hover {
  text-decoration: underline;
}
#sidenav-menu .submenu-bar ul li a.no-link {
  cursor: default;
  background: rgba(0, 0, 0, 0.05);
  opacity: 0.8;
}
#sidenav-menu .submenu-bar ul li a.no-link:hover {
  text-decoration: none;
}

#sidenav-menu .submenu-bar ul li a .title-hint {
  font-size: 0.85em;
  margin-left: 2em;
}
#sidenav-menu .submenu-bar ul li a .time {
  font-size: 0.85em;
  margin: 0;
  padding: 0;
}
#sidenav-menu .submenu-bar ul li img {
  width: 32px;
  height: auto;
  margin: 0 1em 0 0;
  padding: 0;
  text-align: center;
  vertical-align: middle;
}

#sidenav-menu .submenu-bar ul li a.next:after {
  content: "keyboard_arrow_right";
  font-family: 'Material Icons';
  font-size: 1.5em;
  position: absolute;
  right: -2px;
  top: calc(50% - 0.5em);
}
#sidenav-menu .submenu-bar ul li a span.arrow:after {
  content: "arrow_drop_down";
  font-family: 'Material Icons';
  font-size: 1.5em;
  position: absolute;
  right: -2px;
  top: 0.5em;
}

#sidenav-menu .submenu-bar ul li a.open {
  text-decoration: underline;
}
#sidenav-menu .submenu-bar ul li a.open img {
  filter: drop-shadow(2px 4px 4px #666);
}
#sidenav-menu .submenu-bar ul li a.open span.arrow:after {
  content: "arrow_drop_up";
  font-family: 'Material Icons';
  font-size: 1.5em;
  position: absolute;
  right: -2px;
  top: 0.5em;
}

#sidenav-menu .submenu-bar ul li a.sub-link {
  position: absolute;
  top: 0px;
  right: 16px;
  font-size: 0.9em;
  padding: 2.0em 0 0 0;
}
#sidenav-menu .submenu-bar ul li a.sub-link img {
  width: 16px;
  margin: 0 4px 0 0;
}
#sidenav-menu .submenu-bar ul li a.sub-link span.new.badge {
  position: absolute;
  right: 0px;
  top: 3px;
}

#sidenav-menu .submenu-bar .menu-tab-dir1 .menu-tab-header {
/*   background: rgba(64, 128, 192, 0.2); */
}
#sidenav-menu .submenu-bar .menu-tab-dir1 .menu-tab-header a {
  line-height: 24px;
}
#sidenav-menu .submenu-bar .menu-tab-dir1 .menu-tab-header a img {
  width: 48px;
  position: absolute;
  filter: opacity(0.2);
  top: 3em;
}
#sidenav-menu .submenu-bar .menu-tab-dir1 .menu-tab-header .title {
/*   font-size: 1.2em; */
/*   font-weight: bold; */
}

#sidenav-menu.menu-accordion .menu-tab-dir1-div {
  display: none;
}
#sidenav-menu.menu-accordion .menu-tab-dir1-div.open {
  display: block;
}
#sidenav-menu.menu-accordion .menu-tab-dir2-div {
  display: none;
}
#sidenav-menu.menu-accordion .menu-tab-dir2-div.open {
  display: block;
}



#sidenav-menu.menu-accordion .menu-tab-dir1-div ul li a,
#sidenav-menu.menu-dropdown .menu-tab-dir1-div ul li a,
#sidenav-menu.menu-accordion .menu-tab-dir1-div ul li .inner-menu-text,
#sidenav-menu.menu-dropdown .menu-tab-dir1-div ul li .inner-menu-text {
  padding-left: 2em;
}

#sidenav-menu.menu-dropdown .menu-tab-dir1-div {
  padding: 0;
  position: absolute;
  z-index: 2;
  left: 0px;
  width: 100%;
  height: auto;
}
#sidenav-menu.menu-dropdown.tree1 .menu-tab-dir1-div,
#sidenav-menu.menu-dropdown.tree2 .menu-tab-dir1-div {
  padding: 0;
  position: absolute;
  z-index: 2;
  left: 48px;
  width: calc(100% - 48px);
  height: auto;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  border-left: 1px solid rgba(0, 0, 0, 0.3);
  border-right: 1px solid rgba(0, 0, 0, 0.3);
}
#sidenav-menu .submenu-bar .menu-tab-dir1 ul li img {
  width: 24px;
  margin: 0 0.5em 0 0;
}

#sidenav-menu.menu-accordion .menu-tab-dir1 .menu-tab-dir2-div ul li a,
#sidenav-menu.menu-dropdown .menu-tab-dir1 .menu-tab-dir2-div ul li a,
#sidenav-menu.menu-accordion .menu-tab-dir1 .menu-tab-dir2-div ul li .inner-menu-text,
#sidenav-menu.menu-dropdown .menu-tab-dir1 .menu-tab-dir2-div ul li .inner-menu-text {
  padding-left: 4em;
}
#sidenav-menu.menu-dropdown .menu-tab-dir1 .menu-tab-dir2-div {
  padding: 0;
  position: absolute;
  z-index: 2;
  left: 0px;
  width: 100%;
  height: auto;
}
#sidenav-menu.menu-dropdown.tree1 .menu-tab-dir1 .menu-tab-dir2-div {
  padding: 0;
  position: relative;
  z-index: auto;
  left: auto;
  width: 100%;
  height: auto;
}
#sidenav-menu.menu-dropdown.tree2 .menu-tab-dir1 .menu-tab-dir2-div {
  padding: 0;
  position: absolute;
  z-index: 2;
  left: 36px;
  width: calc(100% - 36px);
  height: auto;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  border-left: 1px solid rgba(0, 0, 0, 0.3);
  border-right: 1px solid rgba(0, 0, 0, 0.3);
}

#sidenav-menu .submenu-bar .menu-ranking .rank {
/*   font-weight: bold; */
  margin-right: 1em;
  display: inline-block;
  width: 1.0em;
}
#sidenav-menu .submenu-bar .menu-ranking .count {
  float: right;
  margin-right: 1em;
  line-height: 2.5em;
}

/* サイドメニュー／PC */
@media only screen and (min-width: 1025px) {
  #sidebar-nav .sidenav.sidenav-fixed.right-aligned {
    right: unset;
    left: 0;
    transform: unset;
  }
}

/* サイドメニュー／スマホ */
@media only screen and (max-width: 600px) {
  #sidenav-menu .system-logo img {
    width: 70%;
  }
}



/* 各機能向けサイドナビ */
@media only screen and (min-width: 601px) {
  /* 各機能向けサイドナビ／トリガーボタン */
  .main-wrapper .func-sidenav-trigger {
    display: none !important;
  }
  /* 各機能向けサイドナビ／ナビ本体 */
  .main-wrapper .func-sidenav-wrapper {
    transform: none !important;
  }
  .main-wrapper .func-sidenav-wrapper .title {
    display: none !important;
  }
}

/* 各機能向けサイドナビ */
@media only screen and (max-width: 600px) {
  /* 各機能向けサイドナビ／トリガーボタン */
  .main-wrapper .func-sidenav-trigger {
    display: table;
    font-size: 1.2rem;
    border: 1px solid var(--header-linecolor);
    padding: 0.5em;
    width: 100%;
  }
  .main-wrapper .func-sidenav-trigger div {
    display: table-cell;
  }
  .main-wrapper .func-sidenav-trigger .title {
    padding-right: 1em;
  }
  .main-wrapper .func-sidenav-trigger .trigger {
    width: 32px;
  }
  .main-wrapper .func-sidenav-trigger .trigger .sidenav-trigger {
    background-color: var(--system-sidenav-trigger-background);
    color: var(--system-sidenav-trigger-color);
    padding: 0;
    width: 28px;
    min-width: auto;
    height: 28px;
    line-height: 28px;
  }
  .main-wrapper .func-sidenav-trigger .trigger .sidenav-trigger i.material-icons {
    font-size: 24px;
    height: 28px;
    line-height: 28px;
  }
  
  /* 各機能向けサイドナビ／ナビ本体 */
  .main-wrapper .func-sidenav-wrapper {
    position: fixed;
    width: 300px !important;
    left: 0;
    top: 0;
    margin: 0;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
    height: 100%;
    height: calc(100% + 60px);
    height: -moz-calc(100%);
    padding-bottom: 60px;
    z-index: 999;
    overflow-y: auto;
    will-change: transform;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-transform: translateX(-105%);
            transform: translateX(-105%);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
    background-color: var(--menu-background);
  }
  
  .main-wrapper .func-sidenav-wrapper .title {
    background-color: var(--system-logo-background);
    color: var(--system-logo-color);
    /*font-size: 1.5rem;*/
    /*height: 30px;*/
    padding: 0.5em 0.5em;
    vertical-align: top;
  }
  .main-wrapper .func-sidenav-wrapper .title span {
  }
  .main-wrapper .func-sidenav-wrapper table {
    border-spacing: 0;
  }
  .main-wrapper .func-sidenav-wrapper table td {
    border-bottom: 1px solid var(--menu-list-linecolor);
    background-color: var(--menu-list-background);
    color: var(--menu-list-color);
    font-weight: bold;
    line-height: 32px;
    padding: 0;
    vertical-align: middle;
  }
  .main-wrapper .func-sidenav-wrapper table td:hover {
    background-color: var(--menu-list-hover-background, rgba(0, 0, 0, 0.5));
    border-bottom: 1px solid var(--menu-list-hover-linecolor, rgba(255, 255, 255, 0.5));
    box-shadow: 0 0 4px;
    color: var(--menu-list-hover-color, #ffea00);
    text-decoration: none;
  }
  .main-wrapper .func-sidenav-wrapper a,
  .main-wrapper .func-sidenav-wrapper span {
    display: inline-block;
    position: relative;
    border: none;
    font-size: 1rem;
    font-weight: normal;
    line-height: normal;
    width: 90%;
    padding: 0.5em 1em 0.5em 0;
  }
  .main-wrapper .func-sidenav-wrapper a {
    color: var(--menu-list-color);
  }
  .main-wrapper .func-sidenav-wrapper a:after {
    content: "keyboard_arrow_right";
    font-family: 'Material Icons';
    font-size: 1.5em;
    position: absolute;
    right: -2px;
    top: calc(50% - 0.5em);
  }
  .main-wrapper .func-sidenav-wrapper .active {
    background-color: var(--menu-list-active-background) !important;
    color: var(--menu-list-active-color) !important;
    width: 100%;
  }
}



/* ツールチップ */
.material-tooltip {
  font-size: 0.8rem;
  padding: 5px;
  min-height: auto;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12);
}

.sidenav li:hover, .side-nav li.active {
  background-color: transparent;
}





/* mainコンテンツ */
main {
  margin-top: 2em;
}
/*
.container {
  margin: 0 20px 20px 20px;
  padding-top: 10px;
}
*/

/* ボディ／中央寄せ */
/*
body main.page-main > .container {
  margin: 0px auto;
}
*/

/* ボディ／左寄せ */
body main.page-main > .container {
  margin: 2em;
}

body main.page-main.login-inactive  > .container {
  margin: 0 auto;
}

.main-wrapper {
  position: relative;
  width: 100%;
  /*max-width: 1024px;*/
  padding: 0;
  opacity: 0.1;
}
#main-wrapper-loading {
  height: 300px;
  text-align: center;
}
#main-wrapper-loading-err {
  display: none;
}

/* mainコンテンツ／タブレット・スマホ */
@media only screen and (max-width: 1024px) {
  /* ボディ／中央寄せ */
  body main.page-main > .container, body main.page-main > .container {
    width: auto;
    max-width: 100%;
    margin: 1em;
  }
}





/* セクション */
.section {
  clear: both;
  border-bottom: 1px solid rgba(0,0,0,0.08);
  border-left: 10px solid rgba(0,0,0,0.10);
  margin: 10px 0px;
  padding: 5px 0px 5px 10px;
  width: 100%;
  letter-spacing: 0.1em;
  border-radius: 3px;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.05), 0 3px 1px -2px rgba(0, 0, 0, 0.05), 0 1px 3px 0 rgba(0, 0, 0, 0.1);
  background: var(--section-header-background, #f9fafc);
  color: var(--section-header-color, #333);
  line-height: 1.6em;
}





/* ダイアログ */
main.dailog {
  margin: 0px;
  padding: 0px;
}
.modal .modal-content {
  padding: 2rem;
}
.modal.modal-fixed-footer .modal-content {
  height: calc(100% - 65px);
}
.modal.modal-fixed-footer .modal-footer {
  height: 65px;
  text-align: right;
}
.modal .modal-footer .btn, .modal .modal-footer .btn-large, .modal .modal-footer .btn-flat {
  float: none;
  margin: 10px 3px;
}
/* ダイアログ／スマホ */
@media only screen and (max-width: 600px) {
  .modal .modal-content {
    padding: 0.5rem;
  }
}





/* ナビ・キューブリスト */
ul.nav-cube {
  margin: 20px;
}
ul.nav-cube .cube {
  float: left;
  width: 64px;
  height: 64px;
  margin: 0 20px 30px 0;
  text-align: center;
}
ul.nav-cube .cube a {
  padding: 0.5em 0.5em;
  margin-bottom: 5px;
  width: 100%;
  height: 100%;
}

ul.nav-cube .cube a .material-icons {
  font-size: 36px;
  line-height: 48px;
}

/* ナビ・キューブリスト／タブレッド・スマホ */
@media only screen and (max-width: 1024px) {
  ul.nav-cube {
    margin: 0px;
  }
  ul.nav-cube .cube {
    margin: 0 15px 30px 0;
  }
}

/* ナビ・キューブリスト／スマホ */
@media only screen and (max-width: 600px) {
  ul.nav-cube {
    margin: 0px;
  }
  ul.nav-cube .cube {
    margin: 0 10px 30px 0;
  }
}





/* スライダー／materialize(未使用) */
.slider {
  height: 280px;
  margin-bottom: 20px;
}
.slider .slides {
  height: 240px;
}
.slider .slides li {
  height: 240px;
}
.slider .slides li a {
  color: white;
}
.slider .slides li.active div {
}

/* スライダー／FlexSlider */
.flexslider {
  border: none;
  margin: 0 0 40px 0;
  padding: 0px;
  position: relative;
  -webkit-border-radius: unset;
  -moz-border-radius: unset;
  border-radius: unset;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -o-box-shadow: none;
  box-shadow: none;
  
  min-height: 50px;
}
.flexslider .flex-viewport {
  min-height: 50px;
}
.flexslider.top {
  margin: 0 0.75rem 50px 0.75rem;
}
.flex-direction-nav .flex-prev {
  left: 0px;
}
.flex-direction-nav .flex-next {
  right: 0px;
}
.flexslider .flex-direction-nav a, .flexslider .flex-direction-nav a:hover {
  border: 1px solid rgba(0, 0, 0, 0.3);
  border-radius: 40px;
  padding: 0px;
  line-height: 42px;
  height: 42px;
  width: 42px;
  text-align: center;
  padding: 0;
  
}
.flexslider .flex-direction-nav a, .flexslider .flex-direction-nav a:before {
  font-size: 32px;
}
.flexslider .flex-control-nav {
  width: 100%;
  position: absolute;
  bottom: -30px;
  text-align: center;
}
.flexslider .flex-control-nav li {
  margin: 0 10px;
  display: inline-block;
}
.flexslider .flex-control-paging li a {
  background-color: rgba(0, 0, 0, 0.3);
  width: 30px;
  height: 10px;
}
.flexslider .flex-control-paging li a.flex-active {
  background-color: #009688;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16), 0px 2px 10px 0px rgba(0, 0, 0, 0.12);
}
.flexslider .slides {
  margin: 0px;
}
.flexslider .slides li {
  width: 100%;
  height: 100%;
}
.flexslider .slides li > div {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 100%;
}
.flexslider .slides li a {
  color: #fff;
}
/* スライダー／FlexSlider／スマホ */
@media only screen and (max-width: 860px) {
  .flex-direction-nav a::before {
    font-size: 24px;
  }
  .flexslider .flex-direction-nav a, .flexslider .flex-direction-nav a:hover {
    border: 1px solid rgba(0, 0, 0, 0.3);
    border-radius: 32px;
    padding: 0px;
    line-height: 32px;
    height: 32px;
    width: 32px;
    text-align: center;
    padding: 0;
  }
  .flexslider .flex-direction-nav a, .flexslider .flex-direction-nav a:before {
    font-size: 24px;
  }
  .flex-direction-nav .flex-prev {
    opacity: 0.5;
    left: 5px;
  }
  .flex-direction-nav .flex-next {
    opacity: 0.5;
    right: 5px;
  }
}





/* カード／ログイン前 */
.login-inactive .card,
.login-inactive .card .card-content,
.login-inactive .card .card-action,
.login-inactive .card .card-action.title
 {
   margin: 0;
   padding: 0;
 }
 
/* カード／ログイン後 */
.login-active .card {
  background-color: var(--card-background, #f9f6ef);
  color: var(--card-color, #333);
  margin: 0px 10px 10px 0px !important;
    -webkit-transition: -webkit-box-shadow .25s;
  transition: -webkit-box-shadow .25s;
  transition: box-shadow .25s;
  transition: box-shadow .25s, -webkit-box-shadow .25s;
  border-radius: 2px;
  -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
.login-active .row > .col > .col .card {
  margin: 0px 10px 10px 0px !important;
}
.login-active .card .card-listbox {
  padding: 0px 15px 15px 15px;
}
.login-active .card .card-image {
}
.login-active .card .card-content {
  padding: 10px 5px !important;
}
.login-active .card.pickup .card-content a:not(.btn):not(.btn-large):not(.btn-floating) {
  color: #0d47a1;
  transition: color .3s ease;
  text-transform: none;
  margin: 1em;
}
.login-active .card.pickup .card-content a:not(.btn):not(.btn-large):not(.btn-floating):hover {
  color: #0097a7;
}
.login-active .card .card-title {
  font-size: 1.5rem;  /* 18px */
  font-weight: normal;
}
.login-active .card .card-content .card-title {
  line-height: unset;
  margin-bottom: 1em;
}
.login-active .card .card-action {
  padding: 10px 15px;
}
.login-active .card .card-action.title {
  font-size: 1.17rem;  /* 14.03px */
  font-weight: normal;
  padding: 0.5em;
}
.login-active .card .card-action.title img {
  width: 1.4em;
  height: auto;
  margin: 0 0.5em 0 0;
  vertical-align: middle;
}
.login-active .card .card-action a:not(.btn):not(.btn-large):not(.btn-floating) {
  color: #0d47a1;
  transition: color .3s ease;
  text-transform: none;
  margin: 1em;
}
.login-active .card .card-action a:not(.btn):not(.btn-large):not(.btn-floating):hover {
  color: #0097a7;
}
.login-active .card .card-action.portlet-title a {
  margin: 0 !important;
}
.login-active .card .card-action.portlet-title a img {
  margin: 0 !important;
}
.login-active .card-panel {
  padding: 10px;
  margin: 0px 0px 10px 0px;
}
.login-active .card-panel .card-content {
  margin: 0px 0px 5px 0px;
}
.login-active .card-panel .card-action {
  padding: 10px 15px;
}

/* slider */
.card[id^="wf_PTW0060100-slider"],
.card[id^="wf_PTW0060100-slider"] .card-content,
.card[id^="wf_PTW0060100-slider"] .card-action,
.card[id^="wf_PTW0060100-slider"] .card-action.title
 {
   background: transparent !important;
   box-shadow: none !important;
   margin: 0 !important;
   padding: 0 !important;
 }
 
/* カード／タブレット・スマホ */
@media only screen and (max-width: 1024px) {
  .login-active .card .card-content {
    padding: 5px !important;
  }
}




/* タブ */
.m-tabs {
  background-color: var(--tab-background, #c9d9df);
  color: var(--tab-color, #333);
  overflow-y: hidden;
  display: flex;
}

.m-tabs::-webkit-scrollbar {
  height: 5px;
}
.m-tabs::-webkit-scrollbar-track {
  margin: 0 2px;
  background: rgba(0,0,0,0.4);
  border-radius: 5px;
}
.m-tabs::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.4);
  border-radius: 5px;
}

.m-tabs .tab {
  flex-grow: 1;
}
.m-tabs.tabs-transparent .tab {
  background-color: var(--tab-background, #c9d9df);
}
.m-tabs .tab a, .tabs.tabs-transparent .tab a {
  position: relative;
  border: none;
  color: var(--tab-color, #333);
}
.m-tabs .tab a:hover {
  background-color: var(--tab-hover-background, rgba(0, 0, 0, 0.2));
  color: var(--tab-hover-color, #f0f0f0);
}
/*
.m-tabs .tab a:focus {
  background-color: unset;
  color: unset;
}
*/
.m-tabs .tab a.active, .tabs .tab a:focus.active {
  background-color: var(--tab-active-background, #293949);
  color: var(--tab-active-color, #f0f0f0);
}
/*
.m-tabs .tab a.active:after, .tabs .tab a:focus.active:after {
  content: "";
  position: absolute;
  top: 28px;
  left: 50%;
  margin-left: -10px;
  border: 10px solid transparent;
  border-bottom: 10px solid #fcf7f7;
}
*/
.m-tabs .tab a.active:after, .tabs .tab a:focus.active:after {
  display: block;
  content: 'done';
  font-family: 'Material Icons';
  font-size: 2em;
  font-weight: 900;
  position: absolute;
  left: -0.2em;
  margin-top: -0.3em;
  opacity: 0.6;
}
.m-tabs .indicator {
  display: none;
  position: absolute;
  bottom: 0;
  height: 2px;
  background-color: #49747b;
  will-change: left, right;
}
.card.tab {
  background-color: var(--card-background, #f9f6ef);
  color: var(--card-color, #333);
  -webkit-transition: none;
  transition: none;
  -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 5px 5px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 5px 5px 0 rgba(0, 0, 0, 0.2);
}


/* タブ／スマホ */
@media only screen and (max-width: 600px) {
  /* jQuery UI .tabs */
  .ui-tabs {
    width: 100% !important;
  }
  .ui-tabs .ui-tabs-nav li {
    width: 100% !important;
  }
  .ui-tabs .ui-tabs-nav .ui-tabs-anchor {
    width: 100% !important;
  }
}




/* ナビ・リンクリスト */
ul.nav.link-list {
  margin: 0px;
}
ul.nav.link-list li {
/*   height: 2.3em; */
/*   line-height: 2.3em; */
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
/*   padding-left: 30px; */
  padding: 0.2em 0.2em 0.2em 30px;
}
ul.nav.link-list li.icon {
  padding-left: 0;
}
/* h0 = 高さauto */
ul.nav.link-list.h0 {
}
ul.nav.link-list.h0 li {
  height: auto;
  line-height: normal;
  padding: 0px;
  margin: 0px 0px 0.3em 0px;
}
/* float = float: left */
ul.nav.link-list.float {
}
ul.nav.link-list.float li {
  float: left;
  margin-right: 3em;
}
ul.nav.link-list.float.sub-menu li {
  margin: 0.5em 1em 0.5em 0;
  min-width: 45%;
  line-height: normal;
  height: auto;
}

ul.nav.link-list li img {
  width: 24px;
  height: auto;
  margin-right: 6px;
  vertical-align: middle;
}
ul.nav.link-list li a {
/*   color: #333; */
  display: inline-block;
  line-height: 2.3em;
  height: 2.3em;
  padding: 0 0.2em;
}
ul.nav.link-list li a:hover {
}
ul.nav.link-list li a span {
  display: inline-block;
  vertical-align: middle;
}
ul.nav.link-list li a .badge.new {
  display: inline-block;
  vertical-align: middle;
  right: unset;
}
ul.nav.link-list li > span {
  margin-right: 0.5em;
}
/* ナビ・リンクリスト／スマホ */
@media only screen and (max-width: 600px) {
  ul.nav.link-list.h0 li {
    height: auto;
    line-height: normal;
    padding: 0px 0px 0.5em 0px;  /* 高さUP */
  }
  
  ul.nav.link-list.float.sub-menu li {
    float: none;
  }
  /* newバッジの画面オーバー防止の右寄せ */
  ul.nav.link-list a .badge.new {
    right: -5px;
  }
}


/* ユーザ切替 */
.switchuser-warning {
  font-size: 2rem;
  color: #FF0000;
  background-color: #ffffd0;
  text-align: center;
  margin-bottom: 1em;
}
.switchuser-warning-detail {
  font-size: 1.2rem;
}

/* ポータル（V50 override） */
/* @media only screen and (max-width: 1024px) { */
  .portlet-s {
    width: 100%;
    min-width: 100%;
  }
  .portlet-m {
    width: 100%;
    min-width: 100%;
  }
  .portlet-l {
    width: 100%;
    min-width: 100%;
  }
  .portlet-full {
    width: 100%;
    min-width: 100%;
  }
  .portlet-free {
    width: 100%;
    min-width: 100%;
  }
  .fixsize-s {
    width: 100%;
    min-width: 100%;
  }
  .fixsize-m {
    width: 100%;
    min-width: 100%;
  }
  .fixsize-l {
    width: 100%;
    min-width: 100%;
  }
/* } */


/* ポータル設定（V50 override） */
.PTW0060220.PortalLayoutSetting .portletSelecter {
    background: none;
    border: none;
    border-radius: unset;
    margin: 0.5em 0;
    padding: 2px;
}

.PTW0060220.PortalLayoutSetting .portletDesigner {
    background: #eee;
    border: 1px solid #ccc;
    border-radius: unset;
    padding: 3px;
}

.PTW0060220.PortalLayoutSetting .portlet-box {
    background: #fff;
    border: 1px solid #ccc;
    padding: 1em;
}
.PTW0060210.PortalDesignSetting .portal-setting-item .portal-setting-sub-margin-item {
  margin-bottom: 0;
}

/* jQuery UI */
.ui-datepicker.ui-widget.ui-widget-content {
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.5), 0px 10px 10px 0px rgba(0, 0, 0, 0.5);
  border: 2px solid rgb(136, 136, 136);
  background-color: #c6d6ec;
}
.ui-dialog {
  z-index: 2000 !important ;
  max-width: 100vw !important;
}
.ui-dialog .ui-dialog-titlebar-close {
  min-width: auto !important;
  margin: 0 !important;
  top: 4px;
}