/*ヘッダ固定配置分下げる*/
body:not(.anpi-headless) {
  padding-top: 90px;
}

.anpi-header-logo {
  line-height: 55px;
  white-space: nowrap;
}

#header-logo-mark {
  max-height: 55px;
}

#header-logo-title {
  max-height: 24px;
}

@media (max-width: 767px) {
  #header-logo-mark {
    margin-left: -15px;
    max-width: 120px;
  }

  #header-logo-title {
    max-width: 180px;
  }
}

.header-logo-string-pc {
  width: 45vw;
  display: block;
  word-wrap: break-word;
  white-space: normal;
  line-height: 1em;
}

.header-logo-string-sp {
  width: 60vw;
  display: inline-block;
  white-space: normal;
  line-height: 1em;
  vertical-align: middle;
  font-size: 90%;
}

.anpi-header-user {
  margin-top: 8px;
  text-align: right;
}

.anpi-menu-bar-sp {
  background-color: #ffffff;
  margin: 0px -5px;
  min-width: 260px;
}

.anpi-comment {
  word-break: normal;
  overflow-wrap: break-word;
}
.anpi-break {
  word-break: normal;
  overflow-wrap: break-word;
}
.anpi-word-break-all {
  word-break: break-all;
}

.anpi-required:after {
  content: "*";
  /* .text-primary */
  color: #337ab7;
  /* lead */
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4;
  vertical-align: middle;
}
.anpi-marker:after {
  content: "＊";
  /* .text-danger */
  color: #a94442;
  /* lead */
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4;
  vertical-align: middle;
}
.anpi-marker-nomedia:after {
  content: "*";
  margin-left: 1px;
  /* .text-danger */
  color: #a94442;
  /* lead */
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4;
  vertical-align: middle;
}

.jgsy-header-user {
  margin: 8px 0px;
  text-align: right;
}
@media (min-width:768px){.anpi-required:after{font-size:21px}}
@media (min-width:768px){.anpi-marker:after{font-size:21px}}

/*カスタマイズボタン用CSS*/
/*通常時*/
.anpi-btn-navigation {
  color: #337ab7;
  background-color: #fff;
  border-color: #2e6da4;
  margin: 5px
}
/*disabled初期表示時*/
.anpi-btn-navigation[disabled] {
  color: #4e4e4e;
  background-color: #fff;
  border-color: #ccc
}
/*tab移動などでフォーカスが当たったとき*/
.anpi-btn-navigation.focus,.anpi-btn-navigation:focus {
  color: #286090;
  background-color: #d2e3f2;
  border-color: #204d74
}
/*マウスカーソルを当てたとき*/
.anpi-btn-navigation:hover {
  color: #286090;
  background-color: #d2e3f2;
  border-color: #204d74
}
/*ドロップダウン*/
.anpi-btn-navigation.active,.anpi-btn-navigation:active,.open>.dropdown-toggle.anpi-btn-navigation {
  color: #286090;
  background-color: #d2e3f2;
  border-color: #204d74
}
/*クリック時*/
.anpi-btn-navigation.active.focus,.anpi-btn-navigation.active:focus,.anpi-btn-navigation.active:hover,.anpi-btn-navigation:active.focus,.anpi-btn-navigation:active:focus,.anpi-btn-navigation:active:hover,.open>.dropdown-toggle.anpi-btn-navigation.focus,.open>.dropdown-toggle.anpi-btn-navigation:focus,.open>.dropdown-toggle.anpi-btn-navigation:hover {
  color: #204d74;
  background-color: #bbd4eb;
  border-color: #204d74
}
/*背景画像*/
.anpi-btn-navigation.active,.anpi-btn-navigation:active,.open>.dropdown-toggle.anpi-btn-navigation {
  background-image: none
}
/*disabledでマウスカーソルを当てた時*/
.anpi-btn-navigation.disabled.focus,.anpi-btn-navigation.disabled:focus,.anpi-btn-navigation.disabled:hover,.anpi-btn-navigation[disabled].focus,.anpi-btn-navigation[disabled]:focus,.anpi-btn-navigation[disabled]:hover,fieldset[disabled] .anpi-btn-navigation.focus,fieldset[disabled] .anpi-btn-navigation:focus,fieldset[disabled] .anpi-btn-navigation:hover {
  color: #4e4e4e;
  background-color: #fff;
  border-color: #ccc
}
/*バッヂ表示*/
.anpi-btn-navigation .badge {
  color: #fff;
  background-color: #337ab7
}

/*ラジオボタン、チェックボックス選択表示用*/
.anpi-style-selectlabel {
  display:block;
  font-weight: normal;
  border: transparent 2px solid;
  padding-left: 5px
}
.anpi-style-selectlabel > input {
  margin-right: 4px;
  position: relative;
  top: 2px;
}
.anpi-style-selectlabel.check-checked {
  color: #337ab7;
}
.anpi-style-selectlabel.radio-checked {
  color: #337ab7;
  border-color: #337ab7;
}
.anpi-style-selectlabel.radio-checked.disabled {
  color: #333;
  border-color: transparent;
}
fieldset[disabled] .anpi-style-selectlabel.radio-checked {
  color: #333;
  border-color: transparent;
}
.checkbox-inline.check-checked {
  color: #337ab7;
}
fieldset[disabled] .checkbox-inline.check-checked {
  color: #333;
}
.checkbox-inline.check-checked.disabled.label-disabled {
  color: #333;
}

/*文字列省略化用*/
.anpi-style-abbreviation{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.anpi-style-abbreviation-multiline{
  font-size: 14px;
  height: 2.8em;
  line-height: 1.4;
  position: relative;
  overflow: hidden;
}
.anpi-style-abbreviation-multiline:before{
  background: #fff;
  position: absolute;
  content: "…";
  top: 1.4em;
  right: 0;
}
.anpi-style-abbreviation-multiline:after{
  background: #fff;
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
}
.anpi-style-abbreviation-multiline-even:before,.anpi-style-abbreviation-multiline-even:after{
  background: #f9f9f9;
}

/*(状況一覧)発信状況の色*/
.anpi-text-ok{
  color: #080
}
.anpi-text-okng{
  color: #ffd700
}
.anpi-text-ng{
  color: #f00
}
.anpi-text-calling{
  color: #800080
}
.anpi-text-abort{
  color: #48d1cc
}
.anpi-text-nothing{
  color: #000
}

/*ラベルエラー用*/
.anpi-label-error{
  background-color: #f2dede;
  color: #a94442;
}

/*テーブルホバー*/
.anpi-table-hover > td {
  background-color: #FC9;
}

/*震度5強*/
.anpi-intensity-5p {
  color: #ff9900;
}
/*震度6弱*/
.anpi-intensity-6m {
  color: #ff2800;
}
/*震度6強*/
.anpi-intensity-6p {
  color: #a50021;
}
/*震度7*/
.anpi-intensity-7 {
  color: #b40068;
}

.anpi-career-label {
  color: #00f;
  font-weight: bold;
  padding-left: 0.5em;
}

/*テーブル外枠*/
.DTFC_LeftHeadWrapper table {
  border-top: solid 2px #000;
  border-left: solid 2px #000;
}
.dataTables_scrollHeadInner table {
  border-top: solid 2px #000;
  border-left: solid 2px #000;
  border-right: solid 2px #000;
}
.DTFC_LeftBodyWrapper table {
  border-left: solid 2px #000;
  border-bottom: solid 2px #000;
}
.dataTables_scrollBody table {
  border-left: solid 2px #000;
  border-right: solid 2px #000;
  border-bottom: solid 2px #000;
}
.anpi-table-bordered {
  border: solid 2px #000;
}

@media (min-width:768px) {
  .anpi-sm-padding-left-zero { padding-left: 0px; }
  .anpi-sm-padding-right-zero { padding-right: 0px; }
  .anpi-text-nowrap { white-space:nowrap }
}

/*開閉パネル*/
.anpi-collapse-block {
  display: block;
  zoom: 1;
}

/*ツリービュー*/
.anpi-tree {
  cursor: pointer;
  padding: 5px;
  vertical-align: middle;
}
.anpi-tree:before {
  font-family: 'Glyphicons Halflings';
  content: "\e081";
  color: #28a745;
}
.shown .anpi-tree:before {
  font-family: 'Glyphicons Halflings';
  content: "\e082";
  color: #ff4136;
}
.anpi-tree-blank {
  padding: 5px;
}

/*行背景色*/
.anpi-table-striped > tbody > tr.odd {
    background-color: #f9f9f9;
}
.anpi-table-striped > tbody > tr.even {
    background-color: #ffffff;
}

/* IdPバナー画像(キャプション) */
.idp-caption-banner {
  width: 150px;
}
a.anpi-cog {
  color: inherit;
}
a.anpi-cog:hover {
  color: #23527c;
  text-shadow:
    1px  1px 1px #ffffff,
   -1px  1px 1px #ffffff,
    1px -1px 1px #ffffff,
   -1px -1px 1px #ffffff,
    1px  0px 1px #ffffff,
    0px  1px 1px #ffffff,
   -1px  0px 1px #ffffff,
    0px -1px 1px #ffffff;
}
input[type=checkbox][disabled].loading-message {
  cursor: default;
  position: relative;
}
input[type=checkbox][disabled].loading-message:hover:before {
  content:'処理中';
  color: rgb(51, 51, 51);
  position: absolute;
  left: -10px;
  top: -6px;
  white-space: nowrap;
  background-color: rgba(255, 255, 255, 1);
  padding: 2px 5px;
  border: 1px solid #ddd;
  border-radius: 3px;
  z-index: 1000;
}
button[disabled].btn-lg.anpi-btn-navigation.loading-message {
  cursor: default;
  position: relative;
}
button[disabled].btn-lg.anpi-btn-navigation.loading-message:hover:before {
  content:'処理中';
  color: rgb(51, 51, 51);
  position: absolute;
  left: 80%;
  top: -20px;
  white-space: nowrap;
  background-color: rgba(255, 255, 255, 1);
  padding: 2px 5px;
  border: 1px solid #ddd;
  border-radius: 3px;
  z-index: 1000;
}

/*フッターをページの下部に固定するためのスタイル*/

body:has(.footer-container){
  min-height: 100vh;
  min-height: 100dvh;
  position: relative;
  padding-bottom: 150px;
}

body.has-footer-container {
  min-height: 100vh;
  min-height: 100dvh;
  position: relative;
  padding-bottom: 150px;
}

body > .footer-container {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}