﻿@charset 'utf-8';

/* ----------------------------------------
  基本設定
---------------------------------------- */
html {
  height: 100%;
  font-size: 62.5%;
}
body {
  height: 100%;
  color: #333;
  background-color: #f1f0ee;
  font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
  line-height: 1.4;
  position: relative;

}
input, select, textarea, button {
  font-size: 1.4rem;
  font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
}
body > div {
  font-size: 1.4rem;
}
a {
  color: #333;
  text-decoration: none;
}

/* ----------------------------------------
  コンテナ
---------------------------------------- */
.l-container {
  padding-top: 54px;
  min-width: 1024px;
  height: 100%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
}


/* ----------------------------------------
  グローバルヘッダ
---------------------------------------- */
.l-header {
  padding-right: 18px;
  padding-left: 18px;
  width: 100%;
  min-width: 1024px;
  height: 54px;
  box-shadow: 0 0 5px 0 rgba(12, 6, 14, 0.35);
  box-sizing: border-box;
  position: absolute;
  top: 0;
  z-index: 100;
  background-color: #fff;
}

/* BEGIN: clearfix */
.l-header:before,
.l-header:after {
  display: table;
  content: ' ';
}
.l-header:after {
  clear: both;
}
/* END: clearfix */

.l-header-logo {
  float: left;
  width:300px;
}
.l-header-logo-target {
  /*display: table;*/
}
.l-header-logo-image,
.l-header-logo-text {
  height: 26px;
  margin-top:14px;
  margin-bottom: 4px;
  vertical-align: bottom;

}
.l-header-logo-text {
  padding-left: 20px;
  font-size: 1.8rem;
  line-height: 1;
}
.l-header-logo-subtext{
  font-size: 16px;
  margin-left: 14px;
}

.l-header-link{
  margin-right: 20px;
  float: right;
  position: relative;
}

.l-header-link-target{
  margin-top: 15px;
  margin-bottom: 15px;
  margin-right: 10px;
  display: table;
  border-right: 1px solid #d9d9d9;
  padding-right: 20px;
  padding: 5px 20px 5px 0px;
}

.l-header-link-target span{
  display: table-cell;
  vertical-align: middle;
  color: #808080;
  line-height: 1;
}

.l-header-link span:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width:14px;
  height: 14px;
  display: block;
  position: absolute;
  top: -2px;
  left: -17px;
  bottom: 0;
  background: url('../Images/icon_arrow_link.svg') no-repeat 50% 50%;
  background-size: 14px 14px;
}

/*保存した検索条件ボタン */
.l-header-link-search {
}
.l-header-link-search .l-header-link-target {
    padding-left: 4px;
}


    .l-header-link-search .l-header-link-target span {
        font-weight: bold;
        color: #eda700;
        font-size: 15px;
    }

        .l-header-link-search .l-header-link-target span:after {
            background: url('../Images/icon_search_yellow.svg') no-repeat 50% 50%;
            background-size: 20px 20px;
            width: 20px;
            height: 20px;
        }

.l-header-user {
  float: right;
  position: relative;
}
.l-header-user-target {
  margin-top: 18px;
  margin-bottom: 18px;
  display: table;
}
.l-header-user-name,
.l-header-user-icon,
.l-header-user-image {
  display: table-cell;
  vertical-align: middle;
}
.l-header-user-name {
  color: #808080;
  line-height: 1;
}
.l-header-user-icon {
  padding-left: 8px;
  padding-right: 10px;
  width: 18px;
  height: 18px;
  background: url('../Images/icon-setting.svg') no-repeat 50% 50%;
}
.l-header-user-image {
  margin-bottom: 0;
}
.l-header-user-image > img {
  border-radius: 100%;
  vertical-align: top;
}
a .panel-btn{
  float: left;
  z-index: 100;
}
.panel {
  display: none;
  position: absolute;
  top: 54px;
  right: -18px;
  z-index: 1000;
  box-shadow: 0 2px 5px 0 rgba(12, 6, 14, 0.35);
  width:300px;
}
/* ----------------------------------------
  グローバルフッタ
---------------------------------------- */
.footer-menu{
  text-align: right;
  font-size: 1.4rem;
}
.footer-menu > span{
  margin:0 30px 0 0;
}
.footer-menu-login > span{
  margin:0 15px 0 15px;
}
.footer-menu a,
.footer-menu-login a {
  color: #808080;
}
.footer-menu-login{
  text-align: center;
  font-size: 1.4rem;
}
/* ----------------------------------------
  コンテンツエリア
---------------------------------------- */
.l-content {
  height: 100%;
  position: relative;
}

.l-content-w-fix .l-main .box{
  /*width:720px;*/
  width:640px;
}

.l-content-w-fix .footer-menu{
  /*max-width:995px;*/
  max-width:915px;
}

/* ----------------------------------------
  グローバルナビ
---------------------------------------- */
.l-gnav {
  padding-top: 41px;
  width: 100px;
  min-width: 100px;
  height: 100%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  float: left;
  background-color: #ddbb1d;
  color: #fff;
  font-size: 1.2rem;
  vertical-align: top;
}
.l-content .l-gnav {
  height: auto;
}
.l-gnav-list-item {
  text-align: center;
}
.l-gnav-list-item > a {
  /*height: 50px;
  line-height: 50px;*/
  position: relative;
  padding: 18px 0;
  display: block;
  color: #fff;
}
.l-gnav-list-item > a.is-active,
.l-gnav-list-item > a:hover {
  background-color: #dca309;
}


/* ----------------------------------------
  ローカルナビ
---------------------------------------- */
/* Top */
.l-lnav-top-list-item {
  display: table-cell;
  vertical-align: top;
}
.l-lnav-top-list-item > a,
.l-lnav-top-list-item > .is-active {
  padding: 14px 24px;
  display: block;
  position: relative;
  line-height: 1;
  text-align: center;
}
.l-lnav-top-list-item > a:hover {
  color: #eda700;
}
.l-lnav-top-list-item > .is-active {
  color: #eda700;
  font-weight: bold;
}
.l-lnav-top-list-item > a:hover:after,
.l-lnav-top-list-item > .is-active:after {
  content: '';
  width: 100%;
  height: 2px;
  display: block;
  background-color: #eda700;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

/* Botttom */
.l-lnav-btm-list-item {
  display: table-cell;
  vertical-align: top;
}
.l-lnav-btm-list-item > a,
.l-lnav-btm-list-item > .is-active {
  padding: 8px 20px;
  border-bottom-width: 2px;
  border-bottom-style: solid;
  display: block;
}
.l-lnav-btm-list-item > a {
  border-bottom-color: #e0dfdc;
}
.l-lnav-btm-list-item > a:hover {
  border-bottom-color: #eda700;
  color: #eda700;
}
.l-lnav-btm-list-item > .is-active {
  border-bottom-color: #eda700;
  color: #eda700;
  font-weight: bold;
}


/* ----------------------------------------
  メインエリア
---------------------------------------- */
.l-main {
  padding-left: 30px;
  padding-right: 30px;
  width: calc(100% - 100px);
  float: left;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  display: table-cell;
  vertical-align: top;
  margin-bottom: 10px;
}
.l-main-error {
  padding-right: 18px;
  padding-left: 18px;
  width: 100%;
  float: left;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  vertical-align: top;
  margin-bottom: 10px;
}
.col-1-main {
  padding-left: 30px;
  padding-right: 30px;
  width: 100%;
  float: left;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  display: table-cell;
  vertical-align: top;
  margin-bottom: 10px;
}



/* ----------------------------------------
  見出し
---------------------------------------- */
.hdg-wrapper {
  margin-left: -30px;
  margin-right: -30px;
  padding-left: 30px;
  min-height: 45px;
  position: relative;
  background-color: #eae8e2;
}
.hdg-01 {
  color: #808080;
  font-weight: normal;
  line-height: 45px;
}
.hdg-02 {
  margin-top: 14px;
  color: #808080;
  font-size: 2.8rem;
  font-weight: normal;
}
.hdg-03 {
  font-size: 2.0rem;
  font-weight: normal;
}
.hdg-btn {
  position: absolute;
  top: 8px;
  right: 30px;
}

.hdg-back {
  display: inline-block;
  padding: 8px 10px;
  background-color: #eae8e2;
  border: solid 1px #c8c8c8;
  border-radius: 3px;
  font-size: 1.4rem;
  line-height: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  cursor: pointer;
  text-decoration: none;
  color: #666666;
  white-space: nowrap;
}

.hdg-back:before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 15px;
  height: 15px;
  margin-top: -2px;
  margin-right: 6px;
  background: url('../Images/icon_back.svg') center center no-repeat;
  background-size: 20px auto;
}

.hdg-back + .hdg-01{
  margin-left: 15px;
  display: inline-block;
}

/* ----------------------------------------
  パンくず
---------------------------------------- */
.topicpath {
  display: table;
  width: 100%;
  height: 45px;
  line-height: 45px;
  color: #808080;
  font-size: 0 !important;
}
.topicpath-item,
.topicpath-glue {
  box-sizing: border-box;
  display: inline-block;
  font-size: 1.4rem;
  vertical-align: top;
}
.topicpath-item > a {
  color: #808080;
  font-weight: bold;
}
.topicpath-glue {
  margin-right: 1em;
  margin-left: 1em;
}


/* ----------------------------------------
  ボタン
---------------------------------------- */
.btn-01 {
  border: none;
  border-radius: 6px;
  height: 32px;
  line-height: 32px;
  box-sizing: border-box;
  display: inline-block;
  position: relative;
  overflow: hidden;
  background-color: #efede8;
  cursor: pointer;
}
.btn-01:active {
  color: inherit;
}
.btn-01-l {
  padding-right: 30px;
  padding-left: 30px;
}

/* エクスポート */
.btn-export,.btn-judgeHistory-export {
  padding-right: 15px;
  padding-left: 41px;
  border: solid 1px #c8c8c8;
  border-radius: 6px;
  height: 28px;
  line-height: 28px;
  display: inline-block;
  background: url('../Images/icon-export.svg') no-repeat 14px 50%;
}

.btn-judgeHistory-export {
  background-color: #F1F0EE;
}

.btn-export-02{
  padding-left: 30px;
  min-width: 148px;
  text-align: left;
}

.btn-export-02:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  background: url('../Images/icon-export.svg') no-repeat 50% 50%;
}

.btn-export-03{
  padding-left: 45px;
  min-width: 148px;
  text-align: left;
  line-height: 34px;
}

.btn-export-03:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 20px;
  background: url('../Images/icon-export.svg') no-repeat 50% 50%;
}

/* ファイルアップロード */
.btn-file-upload {
  padding-right: 15px;
  padding-left: 41px;
  border: solid 1px #c8c8c8;
  border-radius: 6px;
  height: 28px;
  line-height: 28px;
  display: inline-block;
  background: url('../Images/icon_file_upload.svg') no-repeat 5% 50%;
}

/* まとめて就業判定 */
.btn-judgetoallow-all {
  padding-left: 40px;
  min-width: 165px;
  text-align: left;
}
.btn-judgetoallow-all:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 15px;
  background: url('../Images/icon_memo.svg') no-repeat 50% 50%;
}

/* 全員に通知 */
.btn-notification-all {
  padding-left: 51px;
  min-width: 148px;
  text-align: left;
}
.btn-notification-all:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 25px;
  background: url('../Images/icon-notification.svg') no-repeat 50% 50%;
}

/* チェックした人に通知 */
.btn-notification-checked {
  padding-left: 30px;
  min-width: 148px;
  font-size: 1.1rem;
  text-align: left;
  letter-spacing: -0.05em;
}
.btn-notification-checked:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  background: url('../Images/icon-notification.svg') no-repeat 50% 50%;
}

/* 通知 */
.btn-notification,
.btn-flag{
  padding-right: 15px;
  padding-left: 33px;
}
.btn-notification:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 11px;
  background: url('../Images/icon-notification.svg') no-repeat 50% 50%;
}

.btn-followup {
    padding-left: 40px;
    min-width: 155px;
    text-align: left;
}
.btn-followup:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 11px;
  background: url('../Images/icon_memo.svg') no-repeat 50% 50%;
}

.btn-notification-disabled{
  color:#d9d9d9;
  cursor:default;
}

.btn-notification-disabled:after {
 background: url('../Images/icon-notification-disibled.svg') no-repeat 50% 50%;
}

.btn-delete-box {
    width: 32px;
}

.btn-delete {
    width: 32px;
    height: 32px;
    background-image: url(../Images/icon_delete.svg);
    background-size: 24px;
    background-position: center center;
    background-repeat: no-repeat;
    vertical-align: middle;
}

.search-list .btn-delete:hover {
    background-color: #cccccc;
}
/* グループを作成 */
.btn-add-group {
  margin-top: 9px;
  padding-left: 19px;
  border: none;
  float: left;
  position: relative;
  overflow: hidden;
  background: none;
  line-height: 1;
  cursor: pointer;
}
.btn-add-group:before,
.btn-add-group:after {
  content: '';
  position: absolute;
  background-color: #7b7b7b;
}
.btn-add-group:before {
  width: 14px;
  height: 2px;
  top: 7px;
  left: 0;
}
.btn-add-group:after {
  width: 2px;
  height: 14px;
  top: 1px;
  left: 6px;
}

/* フォームボタン */
.btn-02 {
  padding: 1px; /* for Firefox */
  border-style: solid;
  border-width: 1px;
  border-color: #c8c8c8;
  border-radius: 3px;
  width: 135px;
  height: 49px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  background-color: #d2d2d2;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  cursor: pointer;
}
.btn-02-em {
  border-color: #dca309;
  background-color: #ddbb1d;
}

/* 閉じるボタン */
.btn-close {
  border: none;
  width: 16px;
  height: 16px;
  display: inline-block;
  overflow: hidden;
  background: url('../Images/btn-close.svg') no-repeat 0 0 transparent;
  cursor: pointer;
}

.btn-03 {
  padding: 7px 10px;
  border: none;
  border-radius: 6px;
  box-sizing: border-box;
  display: inline-block;
  position: relative;
  overflow: hidden;
  background-color: #666;
  color: #fff;
  line-height: 1;
  cursor: pointer;
}
.btn-03:active {
  color: #fff;
}

/* テキストリンク */
.btn-text {
  padding: 0;
  border: none;
  background: none;
  color: #2b6fc9;
  text-decoration: underline;
  outline: none;
  cursor: pointer;
}
.btn-text:hover {
  text-decoration: none;
}

/*ヘルプボタン*/
.help-box{
  position: absolute;
  margin-top: 5px;
  margin-left: 22px;
  z-index:1;
}

.btn-help{
  padding: 0;
  border: none;
  background: none;
  margin-left: 20px;
  color:#909090;
  text-decoration: underline;
  outline: none;
  cursor: pointer;
}

.btn-help:after {
  content: '';
  width: 18px;
  height: 18px;
  display: block;
  position: absolute;
  top: 1px;
  left: 1px;
  background: url('../Images/icon_help.svg') no-repeat 50% 50%;
  background-size: 18px;
}

.clearfix:after {
  content: '';
  display: table;
  clear: both;
}

/*TOPへ戻る*/
.top-back-btn{
  width: 100%;
  text-align: center;
}

/*集計対象絞込みボタン*/
.btn-04{
  padding:10px;
  border: none;
  border-radius: 6px;
  box-sizing: border-box;
  overflow: hidden;
  background-color: #ddbb1d;
  color: #fff;
  line-height: 1;
  cursor: pointer;
}

.btn-04.active{
  background: #dca309;
}

.btn-back {
  color:#666666;
  padding-right: 20px;
  padding-left: 35px;
  border: solid 1px #c8c8c8;
  border-radius: 6px;
  height: 28px;
  line-height: 29px;
  display: inline-block;
  background-color: #c8c8c8;
  background: url('../Images/icon_back.svg') no-repeat 8px;
}

/*メモボタン*/
.btn-memo {
  width: 27px;
  height: 27px;
  padding: 0;
  background-image: url('../Images/icon_memo.svg');
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: middle;
}

.attachments{
    display: block;
    float: right;
    margin-right: 10px;
    right: 0;
    width: 14px;
    height: 14px;
    background-size: 100%;
    background-image: url(../Images/icon_file_gray.svg);
}

.flex-display{
    display:flex;
}
.icon-memo-attachment {
  width: 16px;
  height: 16px;
  padding: 0;
  background-image: url('../Images/icon-attachment.svg');
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: middle;
}

/*外部リンク*/
.btn-external-wrapper{
  margin: 15px 10px 20px 0px;
}

.btn-external-wrapper .btn-external{
  margin-top:5px;
  display: block;
  line-height: 22px;
}

.btn-external{
  position: relative;
  border: none;
  background: none;
  padding-left: 20px;
  color:#2b6fc9;
  outline: none;
  cursor: pointer;
}

.btn-external:after {
  content: '';
  width: 18px;
  height: 18px;
  display: block;
  position: absolute;
  top: 1px;
  left: 1px;
  background: url('../Images/icon_external.svg') no-repeat 50% 50%;
  background-size: 18px;
}

.btn-external-mail:after{
  background: url('../Images/icon_mail.svg') no-repeat 50% 50%;
  background-size: 18px;
}

.btn-add {
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    min-width: 200px;
    height: 36px;
    padding: 0 10px;
    line-height: 36px;
    background-color: #efede8;
    border: none;
    border-radius: 18px;
    overflow: hidden;
    text-align: center;
    cursor: pointer;
}

.btn-add-block {
    display: block;
    width: 100%;
}

.btn-add-search-list-box {
    width: 115px;
}

.btn-add-search-list {
    position: relative;
    padding: 10px 19px 10px 36px;
    border: 1px solid #d9d9d9;
    border: none;
    border-radius: 6px;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    background-color: #efede8;
    color: #333333;
    line-height: 1.2;
    cursor: pointer;
}

    .btn-add-search-list:after {
        content: '';
        width: 20px;
        height: 20px;
        display: block;
        position: absolute;
        top: 20%;
        left: 8px;
        background: url('../Images/icon_add.svg') no-repeat 50% 50%;
        background-size: 20px;
    }

/*ボタングループ*/
.btn-group {
    float: right;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.btn-group-target {
    border: solid 1px #e3e2e0;
    min-width: 140px;
    height: 30px;
    line-height: 30px;
    padding: 0 10px;
    display: block;
    background-color: #efede8;
    text-align: center;
}

    .btn-group-target.is-active {
        background-color: #ddbb1d;
        color: #fff;
    }

.btn-group-item:first-child .btn-group-target {
    border-right: none;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.btn-group-item:last-child .btn-group-target {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}

/* ----------------------------------------
  Balloon
  ---------------------------------------- */
.save-msg-balloon-success {
    font-weight: bold;
    font-size: 1.6rem;
    min-width: 1.6rem;
    padding: 1.5rem 5.0rem;
    border: 1px solid #b5b5b5;
    border-radius: 3px;
    box-shadow: 2px 2px 6px 1px #999999;
    color: #48c32f;
    background-color: #ffffff;
    opacity: 0.9;
    z-index: 20000;
    text-align: left;
}

.save-msg-balloon-error {
    font-weight: bold;
    font-size: 1.6rem;
    min-width: 1.6rem;
    padding: 1.5rem 5.0rem;
    border: 1px solid #b5b5b5;
    border-radius: 3px;
    box-shadow: 2px 2px 6px 1px #999999;
    color: red;
    background-color: #ffffff;
    opacity: 0.9;
    z-index: 20000;
    text-align: left;
}

/* ----------------------------------------
  ボタンリスト
  ---------------------------------------- */
.common-btn-list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    list-style: none;
}

    .common-btn-list > .btn-list-item + .btn-list-item {
        margin-left: 20px;
    }

/* ----------------------------------------
  ダイアログ 確認等小さなモジュール（width: 640px; height: auto;）
  ---------------------------------------- */
.dialog.dialog-confirm {
    left: 50%;
    right: auto;
    top: 50%;
    bottom: auto;
    display: table;
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed;
    width: 640px;
    min-height: 120px;
    margin: auto;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

    .dialog.dialog-confirm article {
        display: table-cell;
        vertical-align: top;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

        .dialog.dialog-confirm article .dialog-area {
            height: auto !important;
            min-height: 100px;
            padding-bottom: 48px;
            -webkit-box-sizing: border-box;
            box-sizing: border-box;
        }

    .dialog.dialog-confirm .dialog-block {
        padding: 0 30px;
    }

    .dialog.dialog-confirm .dialog-btn-wrapper {
        padding: 20px;
    }

/* ----------------------------------------
  フィルタ
---------------------------------------- */
.filter-category {
  margin-top: 14px;
  padding: 15px 19px;
  border-radius: 3px;
  box-shadow: 0 0 4px 0 rgba(12, 6, 14, 0.15);
  background-color: #fff;
}

.filter-category-dialog {
  margin-top: 14px;
  padding: 15px 19px;
  border-radius: 3px;
  border: solid 1px #c8c8c8;
  background-color: #fff;
}

.filter-category-checkbox {
    margin-top: 14px;
    margin-bottom: 10px;
    padding: 12px 19px 6px;
    border-radius: 3px;
    box-shadow: 0 0 4px 0 rgba(12, 6, 14, 0.15);
    background-color: #fff;
}

.form-input-text-singleline {
    height: 32px;
    padding: 4px;
    border: solid 1px #dfdfdf;
    border-radius: 3px;
    box-sizing: border-box;
    background-color: #fff;
}

.dialog input[type="text"].form-input-text-w-l {
    width: 400px;
}

.dialog input[type="text"].form-input-text-w-m {
    width: 202px;
}

.dialog input[type="text"].form-input-text-w-s {
    width: 100px;
}


.filter.box{
  padding:12px 20px;
  display: table;
}


/* BEGIN: clearfix */
.filter-category-dialog:before,
.filter-category-dialog:after,
.filter-category:before,
.filter-category:after {
  display: table;
  content: ' ';
}
.filter-category-dialog:after,
.filter-category:after {
  clear: both;
}
/* END: clearfix */

.filter-category-item,
.filter-category-item1 {
  margin-left: 20px;
  float: left;
  position: relative;
  line-height: 1.142857;
}
.filter-category-item:first-child {
  margin-left: 0;
}
.filter-category-item input[type="radio"],
.filter-category-item1 input[type="radio"] {
  /* ラジオボタンを非表示 */
  position: absolute;
  z-index: -1;
  transform: scale(0);
}
.filter-category-item input[type="radio"] + label {
  padding-left: 23px;
  display: inline-block;
}
.filter-category-item input[type="radio"] + label:before {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  background:#ffffff;
  border: solid 1px #c8c8c8;
  border-radius: 100%;
  width: 14px;
  height: 14px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
}
.filter-category-item input[type="radio"]:checked + label:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  border-radius: 100%;
  width: 10px;
  height: 10px;
  display: block;
  background-color: #eda700;
  position: absolute;
  top: 0;
  left: 3px;
  bottom: 0;
}

.filter-category-item.vertical,
.filter-category-item1.vertical{
  float:none;
  margin-left:0;
  margin-bottom:10px;
}

.filter-category-item1 input[type="radio"] + label {
  padding-left: 30px;
  display: inline-block;
  padding-top: 2px;
}

.filter-category-item1 input[type="radio"] + label:before {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  background:#ffffff;
  border: solid 1px #c8c8c8;
  border-radius: 100%;
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
}
.filter-category-item1 input[type="radio"]:checked + label:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  border-radius: 100%;
  width: 12px;
  height: 12px;
  display: block;
  background-color: #eda700;
  position: absolute;
  top: 0;
  left: 5px;
  bottom: 0;
}

.filter-category-checkbox input[type="checkbox"] + label {
    margin: 10px 20px 10px 0px;
}

.filter-group {
  margin-top: 14px;
  position: relative;
}

.filter.box > .filter-group{
  margin-top: 0px;
  display: table;
}

.filter-group:before,
.filter-group:after {
  display: table;
  content: ' ';
}
.filter-group:after {
  clear: both;
}
/*集計条件設定用*/
.fg-row-02{
  margin-left:40px;
}
.fg-row-03{
  margin-left:80px;
}
.fg-row-04{
  margin-left:120px;
}
.fg-row-05{
  margin-left:160px;
}

.fg-row-02:before,.fg-row-03:before,.fg-row-04:before,.fg-row-05:before{
  content: '';
  width: 19px;
  height: 12px;
  display: block;
  position: absolute;
  left: -25px;
  top: 10px;
  bottom: 0;
  background-color: #eee;
  background-repeat: no-repeat;
  background: url('../Images/icon_chain.svg') no-repeat 50% 50%;
}

.filter-group-select-wrapper.filter-pager{
  position: absolute;
  right:0;
  bottom:14px;
}

.filter-group-select-wrapper.filter-pager-02 {
    display: inline-block;
    float: right;
    margin: 0;
}

.filter-pager-02 .filter-group-select {
    min-width: 50px;
}

.filter-pager .filter-group-select {
    min-width: 50px;
}

.filter-pager .filter-group-select{
  min-width: 50px;
}

.filter-group-select-wrapper {
  display: table-cell;
  margin-right: 19px;
  position: relative;
}
.filter-group-select-wrapper:before {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 1px;
  height: 26px;
  display: block;
  position: absolute;
  top: 0;
  right: 27px;
  bottom: 0;
  background-color: #dfdfdf;
}
.filter-group-select-wrapper:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 7px;
  display: block;
  position: absolute;
  top: 0;
  right: 11px;
  bottom: 0;
  background: url('../Images/icon-arrow-down.svg') no-repeat 50% 50%;
  background-size: 7px 7px;
  pointer-events: none;
}

    .filter-group-select-wrapper.inline-block {
        display: inline-block;
    }
    .filter-group-select-wrapper.flex-layout-box:before {
        height: 30px;
        top: auto;
        bottom: auto;
    }

    .filter-group-select-wrapper.flex-layout-box:after {
        height: 30px;
        bottom: auto;
        margin-top: -30px;
        top: auto;
    }
.filter-group-select {
  padding-right: 38px;
  padding-left: 10px;
  border: solid 1px #dfdfdf;
  border-radius: 3px;
  min-width: 134px;
  height: 32px;
  box-sizing: border-box;
  background-color: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.filter-group-select::-ms-expand {
  display: none;
}

.filter-group-select .optgroup-label{
  color:#999999;
  font-weight: normal;
}
.filter-group-select option{
  color:#333;
}

.filter-group-select option[selected]{
  background:#E5F1FF;
}

.filter-group-select-detail{
  display: table-cell;
  vertical-align: middle;
  text-decoration: underline;
}

.filter-group-select-detail > a{
  margin: 0 20px 0 12px;
}


.filter-group-btn {
  margin-top: 9px;
  padding-left: 19px;
  float: left;
}

.filter-group-btn-filter{
display: table-cell;
}

.filter-group-btn-filter > .btn-03{
  margin-left: 12px;
  padding:10px;
}

.filter-group-detail {
  margin-top: 2px;
  float: left;
}
.filter-group-terms {
  margin-top: 10px;
  margin-right: 18px;
  padding-right: 28px;
  padding-left: 30px;
  float: right;
  position: relative;
  line-height: 1;
}
.filter-group-terms-prev,
.filter-group-terms-next {
  width: 28px;
  height: 28px;
  display: block;
  position: absolute;
  top: -0.55em;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}
.filter-group-terms-prev {
  left: -5px;
}
.filter-group-terms-next {
  right: -5px;
}
.filter-group-terms-prev:after,
.filter-group-terms-next:after {
  content: '';
  margin: auto;
  border-top: solid 2px #808080;
  width: 7px;
  height: 7px;
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.filter-group-terms-prev:after {
  border-left: solid 2px #808080;
  transform: rotate(-45deg);
}
.filter-group-terms-next:after {
  border-right: solid 2px #808080;
  transform: rotate(45deg);
}
.filter-group-terms-btn {
  float: right;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.filter-group-terms-btn-target {
  border: solid 1px #666;
  width: 40px;
  height: 30px;
  line-height: 30px;
  display: block;
  background-color: #efede8;
  text-align: center;
}
.filter-group-terms-btn-target.is-active {
  background-color: #666;
  color: #fff;
}
.filter-group-terms-btn-item:first-child .filter-group-terms-btn-target {
  border-right: none;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}
.filter-group-terms-btn-item:last-child .filter-group-terms-btn-target {
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

.setFilter{
  color:#999999;
  margin-top: 5px;
  margin-right: 30px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
/*集計条件表示*/
.setFilter02{
  color:#999999;
  padding-top: 10px;
}

.setFilter02:after {
  content: '';
  display: table;
  clear: both;
}

.sf-title{
  float:left;
  width:70px;
  padding-left: 18px;
}

.sf-title02{
  float:left;
  width:140px;
  white-space: nowrap;
}

.sf-data{
  float:left;
  width:760px;
}

.sf-data.sf-data02{
  float:left;
  width:690px;
}

.sf-toggle-btn{
  color:#808080;
  margin-left: 15px;
}

.sf-toggle-btn-wrap .sf-toggle-btn:before{
  border-top-color:#808080;
}

.sf-toggle-btn-wrap{
  display: none;
  width:845px;
  text-align: right;
}

/* ----------------------------------------
  検索
---------------------------------------- */
.search-wrapper {
  width: 100%;
}

/* BEGIN: clearfix */
.search-wrapper:before,
.search-wrapper:after {
  display: table;
  content: ' ';
}
.search-wrapper:after {
  clear: both;
}
/* END: clearfix */

.search-label {
  float: left;
}
.search-field {
  margin-top: 1.25em;
  float: right;
  display: table;
  position: relative;
}
.search-field-left {
  display:table;
  float:left;
  margin-bottom:15px;
}
.search-field-text,
.search-btn {
  display: table-cell;
  vertical-align: top;
}
.search-field-text {
  padding: 5px 10px;
  border-top: solid 1px #c8c8c8;
  border-right: none;
  border-bottom: solid 1px #c8c8c8;
  border-left: solid 1px #c8c8c8;
  width: 160px;
  height: 2.25em;
  box-sizing: border-box;
}
.search-btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  min-width: 60px;
  height: 2.25em;
}
.search-results-list {
  border-bottom: solid 1px #c8c8c8;
  width: 282px;
  max-height: 20em;
  overflow: auto;
  position: absolute;
  top: 2.25em;
  left: 0;
  z-index: 200;
}
.search-results-list .mCSB_inside > .mCSB_container {
  margin-right: 20px;
}
.search-results-list .mCS-carada.mCSB_scrollTools.mCSB_scrollTools_vertical {
  border-bottom: none;
}
.search-results-list-item,
.user-menu {
  border-top: solid 1px #c8c8c8;
  border-right: solid 1px #c8c8c8;
  border-left: solid 1px #c8c8c8;
}
.search-results-list-item:first-child,
.user-menu:first-child,{
  border-top: none;
}
.search-results-list-target,
.user-menu-target {
  padding: 10px 30px 10px 10px;
  display: block;
  position: relative;
  background-color: #fff;
}
.search-results-list-target:hover,
.user-menu-target:hover {
  background-color: #e5f1ff;
}
.search-results-list-target:after,
.user-menu-target:after{
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 13px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  background: url('../Images/icon-arrow.svg') no-repeat 0 50%;
}
.search-results-list-item-name,
.search-results-list-item-division,
.user-menu > p {
  display: block;
}
.search-results-list-item-division {
  margin-top: 2px;
  color: #808080;
  font-size: 1.2rem;
}
[data-search-results="hide"] {
  display: none;
}

/* ----------------------------------------
  アイコン
---------------------------------------- */
/* カテゴリアイコン（ex. 高血圧） */
.icon-category {
  padding: 4px 15px;
  border-radius: 15px;
  background-color: #e0dfdc;
  color: #808080;
  font-size: 1.3rem;
  text-align: center;
  white-space: nowrap;
}

/* 追加(+)アイコン */
.icon-add {
    display: inline-block;
    position: relative;
    background-color: #666;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    margin: -2px 5px 0 0;
    vertical-align: middle;
}

    .icon-add:before,
    .icon-add:after {
        content: '';
        display: block;
        position: absolute;
        left: 50%;
        top: 50%;
        background-color: #fff;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

    .icon-add:before {
        width: 9px;
        height: 2px;
    }

    .icon-add:after {
        width: 2px;
        height: 9px;
    }


/* ----------------------------------------
  汎用ボックス
---------------------------------------- */
.box {
  margin-top: 14px;
  position: relative;
  box-shadow: 0px 0px 4px 0px rgba(12, 6, 14, 0.15);
  background-color: #fff;
}

.box-1 {
    margin-top: 14px;
    position: relative;
    box-shadow: 0px 0px 4px 0px rgba(12, 6, 14, 0.15);
    background-color: #fff;
    min-width:1065px;
}

.l-content-w-fix{
    min-width:1060px;
}


.l-content-w-fix-1 {
    min-width: 1200px;
}

.header-w-fix {
    min-width: 1220px;
}

.box01{
  padding:58px;
}

.box-chart-wrapper{
  position:relative;
  padding:0 6px;
  box-sizing:border-box;
}

a.box-chart-wrapper{
  cursor:default;
}

.box-chart{
  padding:5px;
  box-shadow: 0px 0px 4px 0px rgba(12, 6, 14, 0.15);
  background-color: #fff;
}

/* ----------------------------------------
  エラー画面用
---------------------------------------- */
.error-box-margin {
  margin-top: 10px;
}


/* ----------------------------------------
  表組みエリア
---------------------------------------- */
.table-area-header {
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 24px;
  position: relative;
}
.table-area-header-btn,
.table-area-header-btn-list {
  position: absolute;
  top: 15px;
  right: 28px;
}
.table-area-header-btn-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.table-area-header-btn-list-item {
  margin-left: 20px;
}
.table-area-header-btn-list-item:first-child {
  margin-left: 0;
}
.table-area-footer {
  padding:20px 0;
}

.table-area-footer-btn-list {
  display: inline-table;
  padding: 0 10px;
  vertical-align: middle;
}

.table-area-footer-btn {
  display: table-cell;
  vertical-align: middle;
  padding: 0 10px;
}

/* ----------------------------------------
  スクロールエリア（フッター固定）
---------------------------------------- */
.fixed-scroll-area {
  position: relative;
  overflow-y: hidden;
  min-height: 500px;
  background: #fff;
  box-sizing: border-box;
}

.fixed-scroll-area-inner {
  width: 100%;
  height: 100%;
  overflow: auto;
  box-sizing: border-box;
}

.fixed-scroll-area-content {
  padding-bottom: 90px;
}

.fixed-scroll-area .table-area-footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  background: #fff;
  border-top: 1px solid #e3e2e0;
}

/* ----------------------------------------
  表組み
---------------------------------------- */
.table {
  width: 100%;
}
.table a:link,
.table a:visited,
.table a:hover,
.table a:active,
.work-allow-table a:link,
.work-allow-table a:visited,
.work-allow-table a:hover,
.work-allow-table a:active,
.judge-a a:link,
.judge-a a:visited,
.judge-a a:hover,
.judge-a a:active {
  color: #2b6fc9;
}
.table a:link,
.work-allow-table a:link ,
.judge-a a{
  text-decoration: underline;
}
.table a:hover,
.work-allow-table a:hover,
.judge-a a:hover  {
  text-decoration: none;
}
.table th,
.table td {
  border-left: solid 1px #e3e2e0;
  vertical-align: middle;
}
.table th:first-child,
.table td:first-child {
  border-left: none;
}
.table thead th {
  padding: 8px 20px;
  background-color: #faf6e5;
  color: #808080;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: left;
  white-space: nowrap;
}
.table thead th[data-sortable] {
  background-image: url('../Images/icon-sortable.svg');
  background-repeat: no-repeat;
  background-position: 100% 100%;
  cursor: pointer;
}
.table tr > .down,
.table tr > .up{
  background-color: #ddbb1d;
  color:#FFF;
  background-position: 90% 48% !important;
  cursor: pointer;
}
.table tr > .down{
  background-image: url('../Images/icon-sortable-down.svg') !important;
}
.table tr > .up{
  background-image: url('../Images/icon-sortable-up.svg') !important;
}
.table thead tr:first-child th[colspan] {
  border-bottom: solid 1px #e3e2e0;
}
.table tbody td {
  padding: 6px 10px;
}
.table tbody td.table-data-narrow {
  padding-left: 10px;
}
.table tbody tr:nth-child(even) td,
.work-allow-table tbody tr:nth-child(even) td {
  background-color: #f9f9f9;
}
.table tbody tr:nth-child(odd) td,
.work-allow-table tbody tr:nth-child(odd) td  {
  background-color: #ffffff;
}
.table tbody td p{
  font-size:1.2rem;
}
.table tbody td p.is-down {
  color: #f7667e;
}
.table tbody td p.is-up {
  color: #48c32f;
}
/* ステータス */
.table tbody td.is-clear {
  color: #48c32f;
  background-color: #f5f9ed !important;
}
.table tbody td.is-not {
  color: #f7667e;
  background-color: #f9ecee !important;
}
.table tbody td.is-high,
.table tbody td.is-over {
  color: #f7667e;
  background-color: #f9ecee !important;
}
.table tbody td.is-low {
  color: #48c32f;
  background-color: #f5f9ed !important;
}
.table tbody td.is-under{
  color: #2b6fc9;
  background-color: #e9f1fb !important;
}

.table tbody td.is-data-complete {
  font-size: 12px;
  color: #b0b0b0;
}

/*通知履歴*/
.table-date{
  color:#808080;
  font-size: 1.2rem;
}

/*メモ*/
td.table-data-memo {
  font-size: 1.2rem;
}

.table-memo-date {
  color: #808080;
}

.table-memo {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-box-orient: horizontal;
  -moz-box-orient: horizontal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch;
  -webkit-box-align: center;
  -moz-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.table-memo-text {
  -webkit-box-ordinal-group: 1;
  -moz-box-ordinal-group: 1;
  -webkit-order: 0;
  -ms-flex-order: 0;
  order: 0;
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-align-self: auto;
  -ms-flex-item-align: auto;
  align-self: auto;
  width: 220px;
}

.table-memo-text-abstract {
  width: 100%;
  word-wrap:break-word;
  overflow-wrap:break-word;
  /*max-width: 100%;
  display: -webkit-box;
  text-overflow: ellipsis;
  word-break: break-all;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;*/
}

.table-memo-text-abstract.ellipsis:after {
  content: '…';
  font-family: sans-serif;
}

.table-memo-button {
  -webkit-box-ordinal-group: 1;
  -moz-box-ordinal-group: 1;
  -webkit-order: 0;
  -ms-flex-order: 0;
  order: 0;
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-align-self: auto;
  -ms-flex-item-align: auto;
  align-self: auto;
  width: 27px;
  padding-left: 13px;
  text-align: center;
}


/* 通知ボタン */
.table-notification {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  white-space: nowrap;
}
.table-notification-check {
  padding-top: 7px;
  padding-right: 10px;
}
.table-notification-noset{
  display:block;
  padding:7px 0 7px 0;
  text-align:center;
  width: 104px;
}
.attachments{
    display: block;
    float: right;
    margin-right: 10px;
    right: 0;
    width: 14px;
    height: 14px;
    background-size: 100%;
    background-image: url(../Images/icon_file_gray.svg);
}
/* ----------------------------------------
  cloned thead
---------------------------------------- */
.cloned-table,
.cloned-thead,
.cloned-th {
  display: block;
}
.cloned-table {
  overflow: hidden;
}
.cloned-thead + .presdo-thead-wrapper {
  position: absolute;
  top: 0;
  left: 380px;
}
/* クローンの項目名の行の右端のセルを固定 */
.cloned-table .cloned-thead:nth-child(3n){
  position: absolute;
  right: 20px;
  padding: 0 5px 0 0;
  border-left: 1px solid #e3e2e0;
}
.cloned-table .presdo-thead-wrapper{
  border-left: 1px solid #e3e2e0;
}
.cloned-thead {
  float: left;
  overflow: hidden;
}
.cloned-th {
  float: left;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
}
.verticalScroll .cloned-th {
  float: none;
  display: table-cell;
  text-align: center;
}
.presdo-thead-wrapper {
  position: relative;
}
.presdo-thead {
  position: absolute;
  top: 0;
}
.presdo-thead:first-child:last-child {
  position: absolute;
  top: 0;
}
.presdo-thead:last-child {
  position: absolute;
  top: auto;
  bottom: 0;
}


/* ----------------------------------------
  表組み（スタイル違い）
---------------------------------------- */
.table-01 {
  width: 100%;
  table-layout: fixed;
}
.table-01-wrapper {
  padding: 25px;
}
.table-01 thead th {
  padding: 12px 20px;
  border: solid 1px #e3e2e0;
  background-color: #faf6e5;
  color: #808080;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
}
.table-01 td {
  padding: 12px 20px;
  border: solid 1px #e3e2e0;
  vertical-align: middle;
}
.table-01 tbody th {
  padding: 12px 20px;
  border: solid 1px #e3e2e0;
  background-color: #faf6e5;
  color: #808080;
  text-align: left;
}

.table-fixed{
  table-layout:fixed;
}

.table-fixed tbody tr:nth-child(even) td:first-child {
  background-color: #ffffff;
}

.table-02 tbody tr td:first-child{
background: #fff;
}

.table-border-top{
  border-top:solid 1px #e3e2e0;
}

.table-even tbody tr:nth-child(even) td {
  background-color: #f9f9f9;
}
.table-even tbody tr:nth-child(odd) td {
  background-color: #ffffff;
}

thead.thin th {
  padding: 8px 20px;
  font-size: 12px;
  line-height: 16px;
}

.table-caption-01 {
  margin-bottom: 12px;
    font-size: 12px;
    font-weight: normal;
    color: #808080;
  text-align: left;
}

/* ----------------------------------------
  表組み内スクロール
---------------------------------------- */
.table-parent-wrapper {
  border-bottom: 1px solid #e3e2e0;
  position: relative;

}
.table-parent {
  width: 100%;
  box-sizing: border-box;
  position: relative;
}
.table-container-left {
  position: absolute;
  top: 0;
  left: 0;
}
.table-container-left {
  width: 380px;
}

.table-container-left-02 {
  position: absolute;
  top: 0;
  left: 0;
  width: 480px;
  border-right: solid 1px #e3e2e0;
}

.table-cell-division {
  width: 107px;
}
.table-cell-name {
  width: 128px;
}
.table-cell-age {
  width: 40px;
}
.table-cell-status {
    width: 100px;
    min-width: 80px;
}
.table-cell-notification {
    width: 180px;
    min-width: 120px;
}
.table-cell-memo {
    width: 240px;
}
.table-container-right {
  position: absolute;
  top: 0;
  right: 0;
}
.table-container-center {
  overflow: hidden;
}
.table-container-left {
  border-right: solid 1px #e3e2e0;
}
.table-container-right {
  border-left: solid 1px #e3e2e0;
}


/* ----------------------------------------
  スクロールバーのカスタマイズ
---------------------------------------- */
.mCS-carada {
  opacity: 1;
}

/* レール */
.mCS-carada.mCSB_scrollTools .mCSB_draggerRail {
  margin: 0;
  border-radius: 0;
  height: 20px;
  background-color: #fff;
}

/* 垂直スクロールバー */
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_vertical {
  border: solid 1px #ccc;
  width: 20px;
  background-color: #fff;
}

/* 垂直スクロールバーのドラッグバー */
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_vertical .mCSB_dragger .mCSB_dragger_bar {
  margin: 2px auto;
  border-radius: 0;
  width: 16px;
  background-color: #ccc;
}

/* 水平スクロールバー */
.mCSB_horizontal.mCSB_inside > .mCSB_container {
  margin-bottom: 0 !important;
}
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  border: solid 1px #ccc;
  height: 20px;
  position: relative;
  background-color: #fff;
  margin-bottom: 20px;
}

/* 水平スクロールバーのドラッグバー */
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  margin: 2px auto;
  border-radius: 0;
  height: 16px;
  background-color: #ccc;
}

/* 垂直スクロールバーの上下ボタン */
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_vertical .mCSB_buttonUp,
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_vertical .mCSB_buttonDown {
  margin-right: auto;
  margin-left: auto;
  width: 7px;
  height: 13px;
  position: absolute;
  right: 0;
  left: 0;
  background: url('../Images/icon-arrow.svg') no-repeat 0 50%;
  opacity: 1;
}
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_vertical .mCSB_buttonUp {
  top: 2px;
  bottom: auto;
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_vertical .mCSB_buttonDown {
  top: auto;
  bottom: 2px;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}


/* 水平スクロールバーの左右ボタン */
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft,
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 13px;
  position: absolute;
  top: 0;
  bottom: 0;
  background: url('../Images/icon-arrow.svg') no-repeat 0 50%;
  opacity: 1;
}
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft {
  left: 5px;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.mCS-carada.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
  right: 5px;
}


/* ----------------------------------------
  リスト
---------------------------------------- */
/* 管理者一覧 */

/* BEGIN: clearfix */
.list-user:before,
.list-user:after {
  display: table;
  content: ' ';
}
.list-user:after {
  clear: both;
}
/* END: clearfix */

.list-user-item {
  margin-right: 30px;
  margin-bottom: 12px;
  float: left;
  white-space: nowrap;
}
.list-user-image,
.list-user-name {
  display: table-cell;
  vertical-align: middle;
}
.list-user-image img {
  border-radius: 100%;
  vertical-align: top;
}
.list-user-name {
  padding-left: 7px;
}

/* 通知先一覧 */
.list-notification {
  line-height: 1.4;
}

/* BEGIN: clearfix */
.list-notification:before,
.list-notification:after {
  display: table;
  content: ' ';
}
.list-notification:after {
  clear: both;
}
/* END: clearfix */

.list-notification a:link,
.list-notification a:visited,
.list-notification a:hover,
.list-notification a:active {
  color: #2b6fc9;
}
.list-notification a:link {
  text-decoration: underline;
}
.list-notification a:hover {
  text-decoration: none;
}
.list-notification-item {
  margin-right: 1em;
  float: left;
  white-space: nowrap;
}
.list-notification + .list-notification-btn {
  margin-top: 10px;
}
[data-notification-toggle-list] {
  overflow: hidden;
  word-break:break-all;
}

[data-notification-toggle-list="close"] {
  height: 1.4em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

[data-notification-toggle-btn="open"],[data-notification-toggle-btn="close"]{
  line-height: 1.4rem;
  position: relative;
  margin-top:5px;
  padding-left:15px;
}

[data-notification-toggle-btn="close"]:before{
  box-sizing:border-box;
  position: absolute;
  top:2px;
  left:0px;
  content:"";
  border-top: 9px solid #2b6fc9;
  border-right: 6px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 6px solid transparent;
}

[data-notification-toggle-btn="open"]:before{
  box-sizing:border-box;
  position: absolute;
  top:-6px;
  left:0px;
  content:"";
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  border-top: 9px solid #2b6fc9;
  border-right: 6px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 6px solid transparent;
}

.notification-btn {
  float:right;
  padding-right:48px;
}

/* ----------------------------------------
  しぼりこみ結果
---------------------------------------- */
.result-count {
  display: table;
  line-height: 1;
}
.result-count-label,
.result-count-data {
  display: table-cell;
  vertical-align: bottom;
}
.result-count-label {
  padding-bottom: 0.25em;
  font-size: 1.6rem;
  font-weight: bold;
}
.result-count-label:after {
  content: '：';
}
.result-count-data {
  font-size: 1.8rem;
}
.result-count-num,
.result-count-num-total {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
.result-count-num {
  color: #e86b39;
  font-size: 3.0rem;
}
.result-count-num-total {
  color: #000105;
  font-size: 2.4rem;
}
.result-non{
  height: 300px;
}


/* ----------------------------------------
  表示中の項目
---------------------------------------- */
.display-count {
  margin-top: 15px;
}
.display-count-label,
.display-count-data,
.display-count-btn {
  display: table-cell;
  vertical-align: middle;
}
.display-count-data {
  padding-left: 15px;
}
.display-count-btn {
  padding-left: 15px;
}
.display-count-num {
  color: #e86b39;
  font-weight: bold;
}
.display-count-num-total {
  font-weight: bold;
}


/* ----------------------------------------
  ページ送り
---------------------------------------- */
.pager {
  display: table;
  width: 100%;
  font-size: 0 !important;
  text-align: center;
}
data-horizontal-scrollbar + .pager{
  margin-top: 20px;
}
.pager-prev,
.pager-next,
.pager-item {
  display: inline-block;
  box-sizing: border-box;
  font-size: 1.4rem;
  vertical-align: middle;
}
.pager-prev,
.pager-next {
  position: relative;
}
.pager-prev {
  margin-right: 15px;
  padding-left: 12px;
}
.pager-next {
  margin-left: 15px;
  padding-right: 12px;
}
.pager-prev:after,
.pager-next:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 13px;
  position: absolute;
  top: 0;
  bottom: 0;
  background: url('../Images/icon-arrow.svg') no-repeat 0 50%;
}
.pager-prev:after {
  left: 0;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.pager-next:after {
  right: 0;
}
.pager-item {
  margin-left: 10px;
  padding-right: 3px;
  padding-left: 3px;
  min-width: 18px;
  height: 21px;
  box-sizing: border-box;
  line-height: 21px;
  text-align: center;
}
.pager-item:first-child {
  margin-left: 0;
}
.pager-item:hover,
.pager-item.is-active {
  background-color: #e0dfdc;
}
.pager-item.is-active {
  font-weight: bold;
}

/* 前後リンクボタン */
.pager-prev-next {
  width: 100%;
  position: absolute;
  top: 50%;
}
.pager-prev-next-btn {
  border-radius: 100%;
  width: 34px;
  height: 34px;
  display: block;
  position: absolute;
  top: -7px;
  background-color: #e3e0d6;
}
.pager-prev-next-btn[rel="prev"] {
  left: -18px;
}
.pager-prev-next-btn[rel="next"] {
  right: -18px;
}
.pager-prev-next-btn-icon {
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 13px;
  position: absolute;
  top: 0;
  bottom: 0;
  fill: #808080;
}
.pager-prev-next-btn[rel="prev"] > .pager-prev-next-btn-icon {
  left: 12px;
}
.pager-prev-next-btn[rel="next"] > .pager-prev-next-btn-icon {
  right: 12px;
}


/* ----------------------------------------
  フォーム
---------------------------------------- */
/* チェックボックス */
.form-checkbox input[type="checkbox"] {
  /* チェックボックスを非表示 */
  position: absolute;
  z-index: -1;
  transform: scale(0);
}
.form-checkbox input[type="checkbox"] + label {
  padding-left: 25px;
  display: inline-block;
  position: relative;
}
.form-checkbox input[type="checkbox"] + label:before {
  content: '';
  border-radius: 3px;
  border: solid 1px #c8c8c8;
  width: 16px;
  height: 16px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 1px 2px;
}
.form-checkbox input[type="checkbox"]:checked + label:after {
  content: '';
  width: 18px;
  height: 18px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: url('../Images/icon-checked.svg') no-repeat 50% 50%;
}

/*ラベルなし*/
.form-checkbox.no-label input[type="checkbox"] + label {
  padding-left: 14px;
  position: relative;
}
.form-checkbox.no-label input[type="checkbox"] + label:before {
  content: '';
  border-radius: 3px;
  border: solid 1px #c8c8c8;
  width: 16px;
  height: 16px;
  position: absolute;
  top: -14px;
  left: 0;
  bottom: 0;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 1px 2px;
}
.form-checkbox.no-label input[type="checkbox"]:checked + label:after {
  content: '';
  width: 18px;
  height: 18px;
  display: block;
  position: absolute;
  top: -14px;
  left: 0;
  background: url('../Images/icon-checked.svg') no-repeat 50% 50%;
}

/* 通知のチェックボックス */
.form-check-notification input[type="checkbox"] {
  /* チェックボックスを非表示 */
  position: absolute;
  z-index: -1;
  transform: scale(0);
}
.form-check-notification input[type="checkbox"] + label {
  border: solid 1px #c8c8c8;
  border-radius: 3px;
  width: 16px;
  height: 16px;
  display: block;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 1px 2px;

  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}
.form-check-notification input[type="checkbox"]:checked + label {
  background-image: url('../Images/icon-checked.svg');
}

.form-check-notification input[type="checkbox"]:disabled + label {
  border:1px solid #d2d2d2;
  background-color: #eee;
}

/* フォームパーツ */
.form-input-text,
.form-textarea,
.form-select {
  padding: 10px;
  border: solid 1px #c8c8c8;
  border-radius: 3px;
  box-sizing: border-box;
  background-color: #fff;
  /*line-height: (24/14);*/
  line-height: -webkit-calc(24/14);
  line-height: calc(24/14);
}
.form-textarea {
  vertical-align: bottom;
  resize: none;
}
.form-select-wrapper {
  position: relative;
}
.form-select-wrapper:before {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 1px;
  height: 26px;
  display: block;
  position: absolute;
  top: 0;
  right: 27px;
  bottom: 0;
  background-color: #dfdfdf;
}
.form-select-wrapper:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 7px;
  display: block;
  position: absolute;
  top: 0;
  right: 11px;
  bottom: 0;
  background: url('../Images/icon-arrow-down.svg') no-repeat 50% 50%;
  background-size: 7px 7px;
}
.form-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.form-select::-ms-expand {
  display: none;
}


/* ----------------------------------------
  改善状況個別
---------------------------------------- */
.status-group {
  margin-top: 19px;
  margin-bottom: 20px;
  position: relative;
}

/* BEGIN: clearfix */
.status-group:before,
.status-group:after {
  display: table;
  content: ' ';
}
.status-group:after {
  clear: both;
}
/* END: clearfix */

.status-group-primary {
  float: left;
}
.status-group-secondary {
  padding-top: 5px;
  float: right;
}
.status-hdg,
.status-list {
  display: table-cell;
  vertical-align: middle;
}
.status-list-item {
  padding-left: 11px;
  display: table-cell;
  vertical-align: middle;
}
.status-hdg {
  font-size: 1.6rem;
  font-weight: bold;
}
.status-hdg-name {
  font-size: 2rem;
}
.status-icon-mood {
  margin-left: 8px;
  padding-left: 9px;
  display: block;
  position: relative;
}
.status-icon-mood-arrow {
  margin-top: auto;
  margin-bottom: auto;
  width: 9px;
  height: 8px;
  display: block;
  position: absolute;
  top: -1px;
  left: 0.75px;
  bottom: 0;
}
.status-icon-mood-arrow svg {
  vertical-align: top;
}
.status-icon-mood-arrow-mask {
  stroke: #f1f0ee;
}
.status-icon-mood-arrow-path {
  stroke: #78d266;
}
.status-icon-mood-text {
  padding: 5px 10px;
  border: solid 1px #78d266;
  display: block;
  color: #78d266;
  font-weight: bold;
}

/* `.btn-01` 上書き */
.status-list-btn.btn-01 {
    padding-right: 25px;
    padding-left: 44px;
    background-color: #fff;
    border: 1px solid #e3e2e0;
}
.status-list-btn.btn-01:after {
  left: 18px;
}

.status-category,
.status-pager {
  display: table-cell;
  vertical-align: middle;
}
.status-category {
  padding-right: 20px;
}


/* ----------------------------------------
  改善状況個別のチャート
---------------------------------------- */
/* ヘッダ */

/* BEGIN: clearfix */
.status-chart-header:before,
.status-chart-header:after {
  display: table;
  content: ' ';
}
.status-chart-header:after {
  clear: both;
}
/* END: clearfix */

.status-chart-header-nav {
  float: left;
}
.status-chart-header-filter {
  padding-right: 30px;
  float: right;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.status-chart-header-btn {
  margin-top: 13px;
  margin-right: 20px;
}
.status-chart-header-select {
  margin-top: 6px;
}
.status-chart-header-select .form-select {
  /* `.form-select ` 上書き */
  padding-top: 7px;
  padding-bottom: 7px;
  border: none;
  min-width: 214px;
  background-color: #efede8;
}
.status-chart-header-select.form-select-wrapper:before {
  /* `.form-select-wrapper:before ` 上書き */
  background-color: #d5d3ce;
}

/* チャート */
.status-chart-figure {
  padding-top: 35px;
  text-align: center;
}

/* フッタ */
.status-chart-footer {
  padding-right: 30px;
  padding-bottom: 16px;
}

/* BEGIN: clearfix */
.status-chart-footer:before,
.status-chart-footer:after {
  display: table;
  content: ' ';
}
.status-chart-footer:after {
  clear: both;
}
/* END: clearfix */

.status-chart-footer-nav {
  float: right;
}


/* ----------------------------------------
  改善状況個別のじぶんプログラム
---------------------------------------- */
.status-programs {
  padding: 15px 30px;
}
.status-programs-hdg {
  margin-bottom: 14px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1;
}
.status-programs-summary {
  padding: 17px 12px 2px;
  background-color: #eef9ec;
  font-size: 1.6rem;
}

/* BEGIN: clearfix */
.status-programs-summary:before,
.status-programs-summary:after {
  display: table;
  content: ' ';
}
.status-programs-summary:after {
  clear: both;
}
/* END: clearfix */

.status-programs-summary-term,
.status-programs-summary-desc {
  padding-bottom: 17px;
  float: left;
  line-height: 1.1;
}
.status-programs-summary-term {
  padding-left: 20px;
  clear: left;
  width: 85px;
  box-sizing: border-box;
  position: relative;
  color: #78d266;
}
.status-programs-summary-term:before {
  content: '';
  width: 14px;
  height: 16px;
  display: block;
  position: absolute;
  top: 1px;
  left: 0;
  background: url('../Images/icon-flag.svg') no-repeat 0 0;
}
.status-programs-list {
  margin-top: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
}
.status-programs-list:after {
  /* 下線のマスク */
  content: '';
  width: 100%;
  height: 1px;
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 100;
  background-color: #fff;
}
.status-programs-list-item {
  padding: 10px 10px 10px 39px;
  border-bottom: solid 1px #e3e2e0;
  width: 50%;
  box-sizing: border-box;
  position: relative;
}
.status-programs-list-item:nth-child(2n+1) {
  border-right: solid 1px #e3e2e0;
}
.status-programs-list-item:before {
  content: '';
  width: 10px;
  height: 9px;
  display: block;
  position: absolute;
  top: 15px;
  left: 20px;
  background: url('../Images/icon-checked-programs.svg') no-repeat 0 0;
}


/* ----------------------------------------
  企業情報照会
---------------------------------------- */
/* 管理対象従業員数 */
.company-employees {
  width: 100%;
  display: table;
}
.company-employees-data,
.company-employees-btn {
  display: table-cell;
  vertical-align: middle;
}
.company-employees-btn {
  width: 1%;
  text-align: right;
  white-space: nowrap;
}

/* 管理者 */
.table-01 td.company-admins-wrapper {
  padding-bottom: 0;
}
.company-admins {
  width: 100%;
  display: table;
}
.company-admins-list,
.company-admins-btn {
  display: table-cell;
  vertical-align: bottom;
}
.company-admins-btn {
  padding-bottom: 12px;
  width: 1%;
  text-align: right;
  white-space: nowrap;
}


/* ----------------------------------------
  ログイン
---------------------------------------- */
.login-hdg {
  padding-right: 18px;
  padding-left: 18px;
  height: 45px;
  line-height: 45px;
  background-color: #eae8e2;
  color: #808080;
  font-weight: normal;
}
.login-box {
  margin-top: 90px;
  margin-right: auto;
  margin-left: auto;
  padding: 58px 96px;
  width: 576px;
  box-sizing: border-box;
  margin-bottom: 10px;
}
.login-list-item {
  margin-bottom: 22px;
}
.login-list-item:last-child {
  margin-bottom: 37px;
}
.login-list-item > img {
  vertical-align: top;
}
.login-input-text {
  /* `.form-input-text` 上書き */
  padding: 13px 15px;
  border-color: #e3e2e0;
  width: 100%;
  background-color: #f8f8f8;
  font-weight: bold;
}
.login-input-text::-webkit-input-placeholder {
  color: #b6b6b6;
  font-weight: bold;
}
.login-input-text:-ms-input-placeholder {
  color: #b6b6b6;
  font-weight: bold;
}
.login-input-text::-moz-placeholder {
  color: #b6b6b6;
  font-weight: bold;
}
.login-btn {
  width: 100%;
}
.login-captcha {
  margin-bottom: 5px;
}
.login-error {
  margin-bottom: 15px;
  color: red;
  font-weight: bold;
  line-height: 1.2;
}

/* ----------------------------------------
  パスワード
---------------------------------------- */
.password-box {
  padding: 58px;
  width: 576px;
  box-sizing: border-box;
}

/* ----------------------------------------
  通知ダイアログ
---------------------------------------- */
.dialog {
  margin-right: auto;
  margin-left: auto;
  border-radius: 3px;
  width: 810px;
  height: 0;
  box-sizing: border-box;
  position: fixed;
  top: 44px;
  bottom: 44px;
  right: 0;
  left: 0;
  z-index: -1;
  visibility: hidden;
  overflow: hidden;
  background-color: #fff;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
.dialog-success {
  margin-bottom: 15px;
  color: green;
  font-weight: bold;
  line-height: 1.2;
}
.dialog-error {
  margin-bottom: 15px;
  color: red;
  font-weight: bold;
  line-height: 1.2;
}

body[data-dialog="fade-out"] .dialog[aria-hidden="false"] {
  height: auto;
  visibility: visible;
  z-index: 3000;
  opacity: 0;
}
body[data-dialog="true"] .dialog[aria-hidden="false"] {
  height: auto;
  visibility: visible;
  z-index: 3000;
  opacity: 1;
}
body[data-dialog="true"] .dialog[aria-hidden="false"][message-dialog="true"] {
  height: 75px;
  visibility: visible;
  z-index: 3000;
  opacity: 1;
}
.dialog-hdg-01 {
  margin-bottom: 15px;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.1;
  outline: solid 0px #fff;
}
.dialog-header {
  margin-bottom: 35px;
  margin-right: 30px;
  margin-left: 30px;
}
.dialog-header .dialog-hdg-01 {
  margin-bottom: 15px;
}
.dialog-header-only-hdg,
.dialog-header-only-hdg .dialog-hdg-01  {
  margin-bottom: 0;
}
.dialog-area {
  margin-bottom: 6.42857em; /* 90px */
  padding-top: 30px;
  box-sizing: border-box;
  overflow-y: auto;
}
.dialog-section {
  margin-bottom: 30px;
  margin-right: 30px;
  margin-left: 30px;
}
.dialog-judgeHistory-export {
  margin-bottom: 10px;
}

.dialog-section:first-child {
  margin-top: 0;
}

.dialog-text{
  line-height: 1.6;
}

.dialog-hdg-02 {
  margin-bottom: 10px;
  color: #808080;
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1.1;
}
.dialog-hdg-02-02 {
  padding: 12px 20px;
  border-top: solid 1px #e3e2e0;
  border-right: solid 1px #e3e2e0;
  border-left: solid 1px #e3e2e0;
  background-color: #ddbb1d;
  color: #fff;
}
.dialog-hdg-03 {
  padding: 12px 20px;
  border-right: solid 1px #e3e2e0;
  border-left: solid 1px #e3e2e0;
  background-color: #f9f9f9;
}
.dialog-hdg-02-02 + .dialog-change-section-sub > .dialog-hdg-03 {
  border-top: solid 1px #e3e2e0;
}
.dialog input[type="text"],
.dialog select,
.dialog textarea {
  width: 100%;
}

.dialog .filter-group-select {
    width: 200px;
}
    .dialog .filter-group-select.w-auto {
        width: auto;
        min-width: auto;
    }

.dialog-summary {
  height: 6.3em;
}
.dialog-btn-wrapper {
  padding-top: 20px;
  padding-bottom: 20px;
  border-top: solid 1px #e3e2e0;
  background-color: #fff;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
}
.dialog-judge-history {
  border-top: solid 1px #000000;
  background-color: #fff;
  position: absolute;
  right: 0;
  bottom: 0px;
  left: 0;
  height: 30%;
  overflow-y: auto;
  overflow-x: auto;
}

.dialog-judge-area {
    top: 0px;
    right: 0;
    left: 0;
    bottom: 0;
    position: absolute;
    height:calc(100% - 30%);
    overflow-y: auto;
    margin: 0;
    padding: 0;
    min-height:200px;
}
#judge-to-allow-work-form .u-text-l,
#followjudge-to-allow-work-form .u-text-l,
#judgeAll-to-allow-work-form .u-text-l {
  /*text-align: center !important;*/
}
#judge-to-allow-work-form .p6-4-b0,
#followjudge-to-allow-work-form .p6-4-b0,
#judgeAll-to-allow-work-form .p6-4-b0,
#edit-individualFlag-form .p6-4-b0,
#employeeFlag-form .p6-4-b0 {
  padding: 6px 4px !important;
    border: 0px !important;
   vertical-align: top;
}

.dialogJudge {
  width:82%;/*700px*/
}

.dialogJudge-Complete {
    width:810px !important;
}

.dialog-btn-01 {
  text-align: center;
}
.dialog-btn-02 {
  margin-right: auto;
  margin-left: auto;
  width: 329px;
}
.dialog-btn-03 {
  margin-right: auto;
  margin-left: auto;
  width: 465px;
}
.dialog-btn-04{
  margin-right: auto;
  margin-left: auto;
  width: 465px;
}
.dialog-box {
  margin:18px 30px 0px 30px;
}
.dialog-note{
  margin-bottom:10px;
  color:#808080;
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1.1;
}
.dialog-btn-wrapper input[type=button],
.dialog-btn-wrapper input[type=submit],
.dialog-btn-wrapper input[type=reset],
.dialog-btn-wrapper button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
/* BEGIN: clearfix */
.dialog-btn-02:before,
.dialog-btn-02:after {
  display: table;
  content: ' ';
}
.dialog-btn-02:after {
  clear: both;
}
/* END: clearfix */
.dialog-note,
.dialog-btn-02 .dialog-btn-item {
  float: right;
}
.dialog-btn-02-note,
.dialog-btn-02 .dialog-btn-item:first-child {
  float: left;
}
.dialog-btn-04 .dialog-btn-item{
  float:left;
  margin-left: 20px;
}

.dialog-btn-04 .dialog-btn-item .btn-03{
    border-radius: 3px;
    width: 135px;
    height: 49px;
}

/* フォームボタン */
.btn-05 {
  padding: 1px; /* for Firefox */
  border-style: solid;
  border-width: 1px;
  border-color: #c8c8c8;
  border-radius: 3px;
  width: 190px;
  height: 49px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  background-color: #d2d2d2;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  cursor: pointer;
}
.btn-05-em {
  border-color: #dca309;
  background-color: #ddbb1d;
}

/* 背景レイヤー */
#js-back-layer {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  visibility: hidden;
  background-color: #000;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
body[data-dialog="fade-out"] #js-back-layer {
  visibility: visible;
  z-index: 2000;
  opacity: 0;
}
body[data-dialog="true"] #js-back-layer {
  visibility: visible;
  z-index: 2000;
  opacity: 0.4;
}
.js-back-layer-notification-dialog {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2500;
}
.js-back-layer-notification-dialog {
  display: none;
}
#notification[aria-hidden="false"] + .js-back-layer-notification-dialog {
  display: block;
}
.dialog-table-note{
  margin-top: 10px;
}

/* ダイアログヘッダー固定 */
.dialog-header-fixed {
  outline: 0;
}
.dialog-header-fixed .dialog-area {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 90px;
  margin: 0;
  padding: 0;
}
.preview-bottom,
.editor-bottom {
  display: none;
}
#notification.is-preview .preview-header,
#notification.is-editor .editor-header {
  display: flex;
}
#notification.is-editor .editor-bottom,
#notification.is-preview .preview-bottom {
  display: block;
}
.dialog-header-fixed .dialog-header {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: none;
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-box-orient: horizontal;
  -moz-box-orient: horizontal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: start;
  -moz-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-align: center;
  -moz-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 82px;
  margin: 0;
  padding: 24px 30px;
  background-color: #fff;
  border-bottom: 1px solid #e3e2e0;
  color: #333;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.dialog-header-back {
  margin-right: 20px;
}

.dialog-header-title {
  -webkit-box-ordinal-group: 1;
  -moz-box-ordinal-group: 1;
  -webkit-order: 0;
  -ms-flex-order: 0;
  order: 0;
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-align-self: auto;
  -ms-flex-item-align: auto;
  align-self: auto;
  margin: 0;
  padding: 0.125em 0;
  font-weight: bold;
  font-size: 2.2rem;
  line-height: 1.25;
  white-space: nowrap;
  text-overflow: ellipsis;
  word-break: break-all;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.dialog-header-close {
  margin-left: 15px;
}
.dialog-header-fixed .dialog-content {
  position: absolute;
  left: 0;
  right: 0;
  top: 82px;
  bottom: 0;
  padding-top:18px;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}
.btn-dialog-back {
  padding: 8px 10px;
  background-color: #ffffff;
  border: solid 1px #c8c8c8;
  border-radius: 3px;
  font-size: 1.4rem;
  line-height: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  cursor: pointer;
  text-decoration: none;
  color: #333;
  white-space: nowrap;
}

.btn-dialog-back:before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 15px;
  height: 15px;
  margin-top: -2px;
  margin-right: 6px;
  background: url('../Images/icon_back.svg') center center no-repeat;
  background-size: 20px auto;
}

.btn-dialog-close {
  display: inline-block;
  vertical-align: middle;
  width: 30px;
  height: 30px;
  background: url('../Images/icon_close.svg') center center no-repeat;
  border: none;
  box-sizing: border-box;
  overflow: hidden;
  text-indent: -99999px;
  cursor: pointer;
}
/* ----------------------------------------
    通知ダイアログ
---------------------------------------- */
.preview-dialog,
.editor-dialog {
  display: none;
}

#notification.is-preview .preview-dialog,
#notification.is-editor .editor-dialog {
  display: block;
}

#notification.is-preview .preview-category {
  margin-left: -8px;
}

.dialog-notification-editor
,.dialog-judgement-editor
,.dialog-followUpjudgement-editor
,.dialog-itIndividualFlag-editor
,.dialog-employeeIndividualFlag-editor {
  display: block;
  position: relative;
  z-index: 3001;
  height: 100%;
}

.dialog-preview-body {
  clear: both;
  padding: 10px;
  border: solid 1px #c8c8c8;
  border-radius: 3px;
  background-color: #f5f5f5;
}

.dialog-preview-body-inner {
  width: auto;
  margin: 0 auto;
  background-color: #fff;
  word-wrap:break-word;
  padding:10px;
  /*overflow:hidden;*/
}

.dialog-preview-body.is-preview-sp .dialog-preview-body-inner {
  width: 320px;
}

.dialog-preview-iframe {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
}

.prview-title {
   margin-bottom:20px;
   border-left:5px solid #ffba01;
   padding-left:15px;
}

.prview-title h2 {
   font-weight:bold;
   line-height:1.38889;
   font-size:2.0rem;
}
.prview-date {
  font-weight:300;
  margin-bottom:20px;
  font-size:12px;
}
.preview-body {
  padding-bottom:10px;
}
.preview-body img {
  vertical-align:middle;
}
.preview-body {
  font-size:16px;
}
.preview-body p {
  line-height:1.5625;
  margin:0 0 10px 0;
  font-weight:300;
  font-size:16px;
}
.preview-body a:link {
  color:#111111;
  line-height:1.42857143;
  transition:opacity .3s linear;
  font-size:16px;
}
.preview-body a:hover {
    text-decoration: none;
    opacity: 0.4;
    color: #444444; 
}
/* ラジオグループボタン */
ul.radio-group {
  list-style: none;
  display: -ms-inline-flexbox;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

ul.radio-group input[type=radio] {
  display: none;
}

ul.radio-group li {
  margin: 0;
  padding: 0;
  border: solid #666;
  border-width: 1px 1px 1px 0;
}

ul.radio-group li:first-child {
  border-left-width: 1px;
  border-radius: 5px 0 0 5px;
}

ul.radio-group li:last-child {
  border-radius: 0 5px 5px 0;
}

ul.radio-group li label {
  width: 40px;
  height: 30px;
  line-height: 30px;
  display: block;
  text-align: center;
  cursor: pointer;
}

ul.radio-group li input[type=radio]:checked + label {
  background-color: #666;
  color: #fff;
  cursor: default;
}

/* PC-SPプレビュー切替ボタン */
ul.radio-group li label.icon-preview-pc,
ul.radio-group li label.icon-preview-sp {
  background: center center no-repeat;
  text-indent: -9999px;
}

ul.radio-group li label.icon-preview-pc {
  background-image: url(../Images/icon_desktop_black.svg);
}

ul.radio-group li label.icon-preview-sp {
  background-image: url(../Images/icon_phone_black.svg);
}

ul.radio-group li input[type=radio]:checked + label.icon-preview-pc {
  background-image: url(../Images/icon_desktop_white.svg);
}

ul.radio-group li input[type=radio]:checked + label.icon-preview-sp {
  background-image: url(../Images/icon_phone_white.svg);
}
            
/* ----------------------------------------
      確認ダイアログ
---------------------------------------- */
.confirm-dialog {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 4000;
}

.confirm-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  background: rgba(0,0,0,0.4);
}

.confirm-dialog-main {
  position: absolute;
  top: 92px;
  left: 0;
  right: 0;
  z-index: 2;
  width: 640px;
  min-height: 224px;
  margin: 0 auto;
  padding: 30px;
  background-color: #fff;
  border-radius: 3px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.diagnosis-confirm-main {
  width:810px;
  padding:0px;
  height:auto;
  max-height:200px;
  top:44px;
  right:0;
  left:0;
  position: absolute;
  z-index: 2;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 3px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.confirm-dialog-main-text {
  min-height: 100px;
  font-weight: bold;
  font-size: 2.2rem;
  line-height: 1.36;
  color: #333;
}

.confirm-btn-list {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-inline-flexbox;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-box-orient: horizontal;
  -moz-box-orient: horizontal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -moz-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-align: start;
  -moz-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.confirm-btn-list-item + .confirm-btn-list-item {
  margin-left: 20px;
}

.mt-20 {
  margin-top: 20px;
}

#preview-text-area {
}

.js-iframe-adjust-height {
  overflow-y: visible;
}

.complete-area {
  height: 76px;
}
.complete-area  .dialog-section {
  margin-top: 30px !important;
}
.display-none {
  display:none !important;
}
/* ----------------------------------------
  未登録ダイアログ
---------------------------------------- */
.unregistered-dialog {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 3011;
  width: 100%;
  height: 100%;
}

.unregistered-dialog.is-open {
  display: block;
}

.unregistered-dialog-main {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 2;
  width: 640px;
  height: -webkit-calc(100% - 160px);
  height:         calc(100% - 160px);
  margin: auto;
  background: #fff;
  border-radius: 3px;
  overflow: hidden;
}

.unregistered-dialog-main .dialog-area {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin-bottom: 6.42857em; /* 90px */
  padding-top: 30px;
}

/* ----------------------------------------
  custom scrollbar
---------------------------------------- */
/* 横スクロールバーの位置を調整 */
#mCSB_1_scrollbar_horizontal {
  float: right;
  margin-right: 125px;
}
/* jquery mCustomScrollbarをover ride */
.mCSB_inside > .mCSB_container {
  margin-right: 25px;
}
.fixed-table-head-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
}
.fixed-table-head-wrapper.verticalScroll {
  width: calc(100% - 25px);
}


/* ----------------------------------------
  汎用クラス
---------------------------------------- */
.u-text-l {
  text-align: left !important;
}
.u-text-c {
  text-align: center !important;
}
.u-text-r {
  text-align: right !important;
}
.u-float-l{
  float:left!important;
}

.u-float-r{
  float:right!important;
}

.u-float-n{
  float:none!important;
}

.u-position-r{
  position: relative;
}

.u-table-border-l {
  border-left: solid 1px #e3e2e0 !important;
}

.u-w-full {
  width: 100%;
}

.u-w-150{
  width:150px;
}

.u-w-80{
  width:80px!important;
  min-width: 80px!important;
}

.u-width-m-200 {
    min-width:200px;
}

.u-height-m{
  min-height: 389px;
}

.h-25{
  height: 25px;
}

.mb-5{
  margin-bottom:5px;
}

.mb-10{
  margin-bottom:10px;
}

.mb-12{
  margin-bottom:12px;
}

.mb-15{
  margin-bottom: 15px;
}

.mb-20{
  margin-bottom: 20px;
}

.mb-30{
  margin-bottom: 30px;
}

.mb-50{
  margin-bottom: 50px;
}

.mt-0{
  margin-top: 0;
}

.mt-5{
  margin-top: 5;
}

.mt-10{
  margin-top:10px;
}

.ml-judge {
  margin-left: 20.7%;
}

.ml-judgeError {
  margin-left: 21.4%;
}

.mt-15{
  margin-top:15px;
}

.mt-30{
  margin-top: 30px;
}

.mt-40{
  margin-top: 40px;
}

.mt-n20{
  margin-top: -20px;
}

.ml-5{
  margin-left: 5px;
}

.ml-10{
  margin-left: 10px;
}

.ml-20{
  margin-left:20px;
}

.mr-0 {
    margin-right: 0px !important;
}

.mr-5 {
    margin-right: 5px !important;
}

.mx-auto {
    margin: 0 auto;
}

.mr-20{
  margin-right:20px;
}

.pb-0{
  padding-bottom:0;
}

.pl-20 {
    padding-left: 20px !important;
}

.pr-24 {
    padding-right: 24px;
}

.color-red{
  color:red;
}

.flex-layout{
  width:100%;
  display: table;
}

.flex-layout-box{
  display:table-cell;
}

.vertical-m{
  vertical-align: middle;
}

.inquiry-link-wrapper {
    margin: 10px 10px 30px 0px;
    position: relative;
}

.inquiry-link {
    color: #2b6fc9;
    margin-top: 15px;
}

/*pdfリンク*/

.pdf-link-wrapper{
  margin:10px 10px 30px 10px;
  position: relative;
}

.pdf-link{
  color: #2b6fc9;
  margin-top: 15px;
  padding-left: 10px;
}

.pdf-link:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -10px;
  background: url('../Images/icon-pdf.png') no-repeat 50% 50%;
}

/*お知らせ*/

.info-list{
  color:#2b6fc9;
  margin-bottom:10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.info-list-time{
  display: block;
  float:left;
  width:125px;
  color:#999999;
}

.info-list-link{
  color:#2b6fc9;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.info-detail-time{
  text-align: center;
  width:125px;
  padding:4px;
  background-color: #c0c0c0;
  color: #ffffff;
  margin-bottom: 20px;
}

.info-detail-title{
  padding-bottom: 5px;
  border-bottom:1px solid #ccc;
}

.info-detail-body{
  padding:20px;
  padding-top:30px;
  padding-bottom: 30px;
  word-break:break-all;
}

.info-detail-signature{
  float: right;
  margin:0 35px 20px 0;
}

.hdg-04{
  padding-bottom: 5px;
  font-weight:normal;
  font-size:1.6rem;
  border-bottom:1px solid #ccc;
}

/*問い合わせリンク*/
.contactBl .contackBl-block {
  font-weight: bold;
  background: no-repeat left center;
  padding: 5px 0 5px 25px;
  font-size: 1em;
}

.contactBl .mail {
  background-image: url(../Images/icon_contact02.png);
  margin: 10px 0 0 0;
}

.contactBl .phonenumber {
    font-weight: bold;
    background: no-repeat left center;
    font-size: 1em;
}

.contactBl .mail a {
  padding: 0;
  background: none;
  display: inline;
  color:#2b6fc9;
}

/* ----------------------------------------
  タブ
---------------------------------------- */
.tab-title-wrapper {
  margin-left: -30px;
  margin-right: -30px;
  position: relative;
  background: #eae8e2;
}

.tab-title {
  margin-left: 30px;
  margin-right: 30px;
  position: relative;
}

.tab-title:before, .tab-title:after {
  display: table;
  content: '';
}

.tab-title:after {
  clear: both;
}

.tab-title li {
  float: left;
  padding: .8em 0;
  color: #999;
  text-align: center;
  cursor: pointer;
  width: 180px;
}

.tab-title li:hover {
  color:#666;
}
.tab-title li.active{
  color:#333;
}

.tab-title-bar {
  margin:0;
  position: absolute;
  left: 0;
  bottom: 0;
  height: 2px;
  background-color: #ddbb1d;
  -webkit-transition: .45s ease-in-out;
  -moz-transition: .45s ease-in-out;
  -o-transition: .45s ease-in-out;
  transition: .45s ease-in-out;
}

.tab-title-bar.tab-02 {
  left: 180px;
}

.tab-title-bar.tab-03 {
  left: 360px;
}

.tab-title-bar.static {
  -webkit-transition:none;
  -moz-transition: none;
  -o-transition: none;
  transition:none;
  width: 180px;
}

.tab-item {
  display: block;
  position: absolute;
  left: -10000px;
  height: 0;
  overflow-y: hidden;
}

.tab-item.active {
  height: auto;
  display: block;
  position: static;
}

/* ----------------------------------------
  ラジオボタン
---------------------------------------- */
.category-1 ,.category-2{
  display: block;
  position: absolute;
  left: -10000px;
  height: 0;
  overflow-y: hidden;
}

.category-1.active ,.category-2.active {
  height: auto;
  display: block;
  position: static;
}


/* ----------------------------------------
  チャート
---------------------------------------- */
.chart-total-hdg{
  float:left;
  margin-top: 11px;
  margin-left: 18px;
  color:#666;
}

.chart-area{
  margin-top: 10px;
}


.chart-link{
  color:#ddbb1d;
  position: absolute;
  bottom:10px;
  right: 30px;
}

.chart-area .nodata-text{
  color:#ccc;
  font-size:20px;
  font-weight:bold;
  position:absolute;
  top:50%;
  left:50%;
  margin-top:-20px;
  margin-left: -90px;
  z-index:100;
}

/* BORDER TRANSITIONS */
/* Border Fade */
.hvr-border-fade {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0px 0px 4px 0px rgba(12, 6, 14, 0.15);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
  box-shadow: inset 0 0 0 6px #ffffff, 0px 0px 4px 0px rgba(12, 6, 14, 0.15);
  /* Hack to improve aliasing on mobile/tablet devices */
}
.hvr-border-fade:hover, .hvr-border-fade:focus, .hvr-border-fade:active {
  box-shadow: inset 0 0 0 6px rgba(12, 6, 14, 0.04), 0px 0px 4px 0px rgba(12, 6, 14, 0.15);
  /* Hack to improve aliasing on mobile/tablet devices */
}

.filter-category-chart{
    float:left;
    margin-top: 12px;
    margin-left: 17px;
}

/* ----------------------------------------
  プログレスバー bootstrap
---------------------------------------- */

.dialog-progressbar{
  height:260px !important;
}

/* ----------------------------------------
  ページTOPに戻る
---------------------------------------- */

   #back-top {
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 500;
    width: 60px;
    height: 60px;
    text-align: center;
    border-radius: 10px;
    line-height: 1.2;
    padding-top: 4px;
    color: #fff;
    background: rgba(0,0,0,0.5);
    -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, .175);
    box-shadow: 0 2px 6px rgba(0, 0, 0, .175);
    cursor: pointer;
  }
  #back-top img {
    width:17px;
    height:17px;
  }

/* ----------------------------------------
  従業員情報照会
---------------------------------------- */
.form-checkbox input[type="checkbox"]:disabled + label{
  color:#ccc;
}

.form-checkbox input[type="checkbox"]:disabled + label:before {
  content: '';
  border-radius: 3px;
  border: solid 1px #d2d2d2;
  width: 16px;
  height: 16px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: 1px 2px;
}
.form-checkbox input[type="checkbox"]:disabled:checked + label:after {
  content: '';
  width: 18px;
  height: 18px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: url('../Images/icon-checked-disabled.svg') no-repeat 50% 50%;
}

.table-condensed>thead>tr>th, .table-condensed>tbody>tr>th, .table-condensed>tfoot>tr>th, .table-condensed>thead>tr>td, .table-condensed>tbody>tr>td, .table-condensed>tfoot>tr>td {
    padding: 5px;
}

/* ----------------------------------------
  datepicker
---------------------------------------- */
/*共通*/
.customDatePicker{
  cursor:pointer;
}

.customDatePicker+.bootstrap-datetimepicker-widget table td.day:hover,
.customDatePicker+.bootstrap-datetimepicker-widget table td.hour:hover,
.customDatePicker+.bootstrap-datetimepicker-widget table td.minute:hover,
.customDatePicker+.bootstrap-datetimepicker-widget table td.second:hover {
  background: #666666;
}

.customDatePicker+.bootstrap-datetimepicker-widget table thead tr:first-child th.picker-switch{
  cursor:default;
}

.customDatePicker+.bootstrap-datetimepicker-widget table thead tr:first-child th.picker-switch:hover{
  background: none;
}

.customDatePicker+.bootstrap-datetimepicker-widget tr.active td{
  background: #DCA309;
  color:#ffffff;
}

.customDatePicker+.bootstrap-datetimepicker-widget tr.active:hover td{
  background: #666666;
}

.customDatePicker+.bootstrap-datetimepicker-widget tr.active td.new{
  color:#ffffff;
}

.customDatePicker+.bootstrap-datetimepicker-widget tr.active td.old{
  color:#ffffff;
}

.customDatePicker+.bootstrap-datetimepicker-widget table td.old,
.customDatePicker+.bootstrap-datetimepicker-widget table td.new {
  color:#dedede;
}

.customDatePicker+.bootstrap-datetimepicker-widget th,
.customDatePicker+.bootstrap-datetimepicker-widget td{
  color:#666666;
}

.customDatePicker+.bootstrap-datetimepicker-widget.dropdown-menu.bottom:after{
  left:47%;
}
.customDatePicker+.bootstrap-datetimepicker-widget.dropdown-menu.bottom:before{
  left:47%;
}

.customDatePicker+.bootstrap-datetimepicker-widget table th.prev,
.customDatePicker+.bootstrap-datetimepicker-widget table th.next{
  position:relative;
}
/*週選択*/
#weeklyDatePicker{
    width: 265px;
    background: #eee;
    border: 0;
    margin-top: -4px;
    background:url('../Images/icon_calendar.svg') no-repeat 100% 45%;
    background-size:20px 20px;
}

#weeklyDatePicker+.bootstrap-datetimepicker-widget tbody tr:hover {
  background-color: #666666;
}

#weeklyDatePicker+.bootstrap-datetimepicker-widget tbody tr:hover td{
  color:#ffffff;
}

#weeklyDatePicker+.bootstrap-datetimepicker-widget table td,
#weeklyDatePicker+.bootstrap-datetimepicker-widget table th {
  border-radius: 0;
}

#weeklyDatePicker+.bootstrap-datetimepicker-widget tbody tr:hover td:first-child{
  border-radius: 4px 0 0 4px;
}
#weeklyDatePicker+.bootstrap-datetimepicker-widget tbody tr:hover td:last-child{
  border-radius: 0 4px 4px 0;
}

#weeklyDatePicker+ .bootstrap-datetimepicker-widget table td.active{
  background:#DCA309;
}

#weeklyDatePicker+ .bootstrap-datetimepicker-widget table tr:hover td.active{
  background:#666666;
}

#weeklyDatePicker+ .bootstrap-datetimepicker-widget table td:before{
  border:none;
}
#weeklyDatePicker+ .bootstrap-datetimepicker-widget table td.active:before{
  border:none;
}

#weeklyDatePicker+ .bootstrap-datetimepicker-widget   tbody tr.active td:first-child{
  border-radius: 4px 0 0 4px;
}
#weeklyDatePicker+ .bootstrap-datetimepicker-widget  tbody tr.active td:last-child{
  border-radius: 0 4px 4px 0;
}

/*月選択*/
#montlyDatePicker{
    width: 118px;
    background: #eee;
    border: 0;
    margin-top: -4px;
    background:url('../Images/icon_calendar.svg') no-repeat 88% 45%;
    background-size:20px 20px;
}

#montlyDatePicker+.bootstrap-datetimepicker-widget tbody td span:hover {
  background-color: #666666;
}

#montlyDatePicker+.bootstrap-datetimepicker-widget tbody  td span:hover{
  color:#ffffff;
}

#montlyDatePicker+.bootstrap-datetimepicker-widget table td span.active{
  background:#DCA309;
}

#montlyDatePicker+.bootstrap-datetimepicker-widget table td span:before{
  border:none;
}
#montlyDatePicker+.bootstrap-datetimepicker-widget table td span.active:before{
  border:none;
}

#montlyDatePicker+.bootstrap-datetimepicker-widget{
 left: -50px!important;
}

.bootstrap-datetimepicker-widget .picker-switch td span {
  background:none;
  color:#666;
  line-height: 2.5;
  height: 2.5em;
  width: 50%;
}

.bootstrap-datetimepicker-widget .picker-switch td span:hover {
  background: #666;
  color:#fff;
}

#weeklyDatePicker+.bootstrap-datetimepicker-widget .picker-switch tbody tr:hover{
  background: none;
}


/* ----------------------------------------
  dropdown
---------------------------------------- */
.btn-dropdown{
  text-align: left;
  position:relative;
  padding:0;
  margin-top:-4px;
  background:none;
  border:none;
  background:url('../Images/icon-pulldown.svg') no-repeat 100% 30%;
  background-size:20px 20px;
  cursor:pointer;
  line-height: 1.3;
  min-width:200px;
}

.btn-dropdown-2 {
    position: relative;
    background: none;
    padding: 5px;
    padding-right: 32px;
    height: 32px;
    border: solid 1px #dfdfdf;
    border-radius: 3px;
    overflow: hidden;
}

.btn-dropdown-3 {
    position: relative;
    background: none;
    padding: 5px;
    padding-right: 32px;
    height: 32px;
    border: solid 1px #dfdfdf;
    border-radius: 3px;
    overflow: hidden;
    text-align: left;
    min-width: 200px;
    margin-top: -4px;
    cursor: pointer;
    line-height: 0.5;
}

.btn-dropdown .caret{
  margin-left:10px;
  border:none;
}
.btn-dropdown-2 .caret {
    position: absolute;
    top: 0;
    right: 0;
    width: 28px;
    height: 32px;
    box-sizing: border-box;
    border-left: 1px solid #dfdfdf;
    background: url(../Images/icon-arrow-down.svg) no-repeat 50% 50%;
}

.btn-dropdown-3 .caret {
    margin-left: 10px;
    border: none;
    border-left: 1px solid #dfdfdf;
}

.dropdown-menu01 > li >a{
 border-radius: 4px;
 margin: 0 5px;
}

.dropdown-menu.dropdown-menu01 > li >a:hover{
 background:#666666;
 color:#fff;
}

.dropdown-menu01  >li >a.is-active{
 background:#DCA309;
 color:#fff;
}

.scrollable-menu {
 height: auto;
 max-height: 260px;
 overflow-x: hidden;
}

.open > .dropdown-menu-wrap > .dropdown-menu {
 display: block;
 top:5px;
}

.dropdown-menu-wrap{
  position: relative;
}

.dropdown-menu-wrap:before,
.dropdown-menu-wrap:after {
  content: '';
  display: inline-block;
  position: absolute;
}
.open .dropdown-menu-wrap:before {
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #ccc;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  top: 1px;
  left: 50%;
}
.open  .dropdown-menu-wrap:after {
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid white;
  top: 2px;
  left: 50%;
  z-index:3000;
}

/*テキスト入力フォームのIE×ボタン消す*/
input::-ms-clear
{
  visibility:hidden;
}

.dropdown-menu-category-title:first-child {
    border-top: none;
}

.dropdown-menu-category-title {
    border-top: 1px solid #dcdcdc;
    padding: 3px 20px;
    font-size: 13px;
    color: #999999 !important;
}

.dialog .dropdown-menu {
    top: auto;
}

/*サブメニューがある場合*/

.dropdown-submenu {
    position: relative;
}

    .dropdown-submenu > .dropdown-menu {
        top: 0;
        left: 100%;
        margin-top: -6px;
        margin-left: -1px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
    }

    .dropdown-submenu:hover > .dropdown-menu {
        display: block;
    }

    .dropdown-submenu > a:after {
        display: block;
        content: " ";
        float: right;
        width: 0;
        height: 0;
        border-color: transparent;
        border-style: solid;
        border-width: 5px 0 5px 5px;
        border-left-color: #888;
        margin-top: 5px;
        margin-right: -10px;
    }

/* ----------------------------------------
 血圧管理画面
---------------------------------------- */

.table tbody td.wrap-form-input{
  min-width: 140px;
  padding:17px;
}

.table tbody td.wrap-form-input .form-input-text{
  padding:4px;
}

.wrap-form-input .error-text{
  position: absolute;
  font-size:1.2rem;
  color:red;
}

.error-msg{
  max-width:500px;
  border:1px solid red;
  border-radius: 2px;
  padding:10px;
  color:red;
}

.btn-input:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 16px;
  height: 16px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  background: url('../Images/icon_memo.svg') no-repeat 50% 50%;
  background-size: contain;
}

.btn-input {
  border:1px solid #dfdfdf;
  margin-left: 5px;
  padding-right: 15px;
  padding-left: 33px;
}

#alert_confirm.dialog
{
  max-height:200px;
}

#showMsg.dialog
{
  max-height:75px;
}

.borderleft {
  border-left: solid 1px #e3e2e0 !important;
}

.dialog-success-bpc {
  margin-bottom: 5px;
  color: green;
  font-weight: bold;
  line-height: 1.2;
  text-align:center;
}

.dialog-error-bpc {
  margin-bottom: 5px;
  color: red;
  font-weight: bold;
  line-height: 1.2;
  text-align:center;
}

.dialog-area-biko {
  padding-top: 25px !important;
}

/* ----------------------------------------
 メモ機能
---------------------------------------- */
.memo-component,
.memo-dialog {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3000;
}

.memo-component {
  display: none;
}

.memo-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  background: rgba(0,0,0,0.4);
}

/*メモ管理*/
.memo-main {
  position: absolute;
  top: 44px;
  bottom: 44px;
  left: 0;
  right: 0;
  z-index: 2;
  width: 960px;
  margin: auto;
  background: #fff;
  border-radius: 3px;
}

/*メモ管理　ヘッダー*/
.memo-main-head {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-box-orient: horizontal;
  -moz-box-orient: horizontal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: start;
  -moz-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-align: center;
  -moz-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 82px;
  padding: 20px 15px;
  border-bottom: 1px solid #e3e2e0;
  color: #333;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

.memo-main-head-item {
  padding: 0 15px;
}

.memo-main-head-item.back-to-list {
  display: none;
}

.memo-component.mode-edit .memo-main-head-item.back-to-list {
  display: block;
}

.memo-component.mode-edit .memo-main-head-item.new-create {
  display: none;
}

.memo-main-head .memo-name {
  -webkit-box-ordinal-group: 1;
  -moz-box-ordinal-group: 1;
  -webkit-order: 0;
  -ms-flex-order: 0;
  order: 0;
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-align-self: auto;
  -ms-flex-item-align: auto;
  align-self: auto;
  font-weight: bold;
  font-size: 2.2rem;
  line-height: 1.25;
  white-space: nowrap;
  text-overflow: ellipsis;
  word-break: break-all;
  overflow: hidden;
}

.btn-memo-back {
  padding: 8px 10px;
  background-color: #ffffff;
  border: solid 1px #c8c8c8;
  border-radius: 3px;
  font-size: 1.4rem;
  line-height: 1;
  box-sizing: border-box;
  overflow: hidden;
  cursor: pointer;
  text-decoration: none;
  color: #333;
}

.btn-memo-back:before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 15px;
  height: 15px;
  margin-top: -2px;
  margin-right: 6px;
  background: url('../Images/icon_back.svg') center center no-repeat;
  background-size: 20px auto;
}

.btn-memo-create {
  min-width: 148px;
  padding: 9px 10px;
  background-color: #efede8;
  border: none;
  border-radius: 6px;
  font-size: 1.4rem;
  line-height: 1;
  box-sizing: border-box;
  overflow: hidden;
  cursor: pointer;
  text-decoration: none;
  color: #333;
}

.btn-memo-create:before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 15px;
  height: 15px;
  margin-top: -2px;
  margin-left: -6px;
  margin-right: 6px;
  background: url('../Images/icon_memo.svg') center center no-repeat;
}

.btn-memo-close {
  display: inline-block;
  vertical-align: middle;
  width: 30px;
  height: 30px;
  background: url('../Images/icon_close.svg') center center no-repeat;
  border: none;
  box-sizing: border-box;
  overflow: hidden;
  cursor: pointer;
}

/*メモ管理　ボディ*/
.memo-main-body {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-box-orient: horizontal;
  -moz-box-orient: horizontal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: start;
  -moz-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-align: stretch;
  -moz-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  height: -webkit-calc(100% - 82px);
  height: calc(100% - 82px);
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

/*メモ機能　一覧*/
.memo-list {
  width: 260px;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  border-right: 1px solid #e3e2e0;
  font-size: 1.2rem;
  line-height: 1.33;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

.memo-component.mode-loading .memo-list,
.memo-component.mode-edit .memo-list,
.memo-component.mode-nodata .memo-list {
  display: none;
}

.memo-list > ul > li {
  display: block;
  padding: 13px 16px 13px 10px;
  background-color: #fff;
  border-bottom: 1px solid #e3e2e0;
  border-left: 6px solid transparent;
  cursor: pointer;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
  -webkit-transition: border-color .25s ease 0s, background-color .25s ease 0s;
  transition        : border-color .25s ease 0s, background-color .25s ease 0s;
}

.memo-list > ul > li:nth-child(even) {
  background-color: #f9f9f9;
}

.memo-list > ul > li.active {
  background-color: #faf6e5;
  border-left-color: #dca309;
  cursor: default;
}

.memo-list-time {
  color: #808080;
}

.memo-list-summary {
  width: 100%;
  word-wrap:break-word;
  overflow-wrap:break-word;
  /*max-width: 100%;
  display: -webkit-box;
  text-overflow: ellipsis;
  word-break: break-all;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;*/
}

.memo-list-summary.ellipsis:after {
  content: '…';
  font-family: sans-serif;
}

/*メモ機能　メモ詳細*/
.memo-view {
  position: relative;
  width: 700px;
  height: 100%;
  /*overflow: hidden;*/
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

.memo-component.mode-loading .memo-view,
.memo-component.mode-nodata .memo-view,
.memo-component.mode-edit .memo-view {
  display: none;
}

.memo-view-contents {
  height: -webkit-calc(100% - 90px);
  height: calc(100% - 90px);
  word-break: break-all;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  padding: 20px 30px;
  font-size: 1.4rem;
  line-height: 1.43;
  color: #333;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

.memo-view-contents .memo-head {
  font-weight: bold;
}

.memo-view-contents .memo-head dt,
.memo-view-contents .memo-head dd {
  margin: 0 auto;
  padding: 0;
  display: inline-block;
}

.memo-view-contents .memo-body {
  margin-top: 25px;
  height: calc(100% - 55px);
}

.memo-view-control {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 90px;
  padding: 20px 30px;
  border-top: 1px solid #e3e2e0;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

/*メモ機能　データなし*/
.memo-nodata {
  display: none;
  padding: 30px;
  font-size: 1.8rem;
  line-height: 1.67;
  color: #808080;
}

.memo-nodata:after {
  content: 'メモがございません。';
}

.memo-component.mode-nodata .memo-nodata {
  display: block;
}

.memo-component.mode-loading .memo-nodata,
.memo-component.mode-nodata.mode-edit .memo-nodata {
  display: none;
}

/*メモ機能　メモ作成・編集エディター*/
.memo-editor {
  display: none;
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

.memo-component.mode-edit .memo-editor {
  display: block;
}

.memo-editor-contents {
  height: -webkit-calc(100% - 90px);
  height: calc(100% - 90px);
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  padding: 20px 30px 30px;
  font-size: 1.4rem;
  line-height: 1.43;
  color: #333;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

.memo-editor-control {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 90px;
  padding: 20px 30px;
  border-top: 1px solid #e3e2e0;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

.memo-editor-head {
  display: table;
  table-layout: fixed;
  width: 100%;
  height: 20px;
  margin-bottom: 10px;
  font-size: 1.2rem;
  line-height: 1.67;
  color: #808080;
}

.memo-editor-head > div {
  display: table-cell;
  vertical-align: middle;
}

.memo-editor-aside {
  text-align: right;
}

.memo-editor-textarea {
  display: block;
  vertical-align: top;
  width: 100%;
  height: -webkit-calc(100% - 30px);
  height: calc(100% - 30px);
  padding: 20px;
  border: 1px solid #e3e2e0;
  border-radius: 3px;
  outline: 0;
  font-size: 1.4rem;
  line-height: 1.43;
  color: #333;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}
.memo-body-view {
  display: block;
  vertical-align: top;
  width: 100%;
  height: -webkit-calc(100% - 10px);
  height: calc(100% - 10px);
  border: none;
  border-radius: 3px;
  outline: 0;
  font-size: 1.4rem;
  line-height: 1.43;
  color: #333;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

/*Utility：メモ機能コントロールボタン*/
.memo-btn-list {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-inline-flexbox;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-box-orient: horizontal;
  -moz-box-orient: horizontal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -moz-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-align: start;
  -moz-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.memo-btn-list-item + .memo-btn-list-item {
  margin-left: 20px;
}

/*メモダイアログ*/
.memo-dialog,
.individualFlag-dialog {
  display: none;
}
.attachment-dialog {
  display: none;
}

.memo-dialog-main {
  position: absolute;
  top: 92px;
  left: 0;
  right: 0;
  z-index: 2;
  width: 640px;
  min-height: 224px;
  margin: 0 auto;
  padding: 30px;
  background-color: #fff;
  border-radius: 3px;
  -webkit-box-sizing: border-box;
  box-sizing        : border-box;
}

.memo-dialog-main-text {
  min-height: 100px;
  font-weight: bold;
  font-size: 2.2rem;
  line-height: 1.36;
  color: #333;
}

.memo-dialog-sub-text {
    margin-top: 12px;
    font-size: 15px;
    font-weight: normal;
    color: #333;
    word-wrap: break-word;
}

/* ----------------------------------------
  勤怠データ attendance
---------------------------------------- */
#attendance {}

#attendance .dialog-box {
  /*margin-top: 40px;*/
}

.attendance-box-01 {
  margin: 15px auto 40px;;
}

.upload-box {
  display: table;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  width: 100%;
  margin-top: 15px;
}

.upload-box > .upload-data,
.upload-box > .upload-status {
  display: table-cell;
  vertical-align: middle;
}

.upload-box > .upload-data {
  width: 145px;
  overflow: hidden;
}

.upload-box > .upload-status {
  width: auto;
}

.upload-box .progress {
  margin-bottom: 0;
}

.upload-box .upload-error {
  color: #ff0000;
}

.format-download {
  display: inline-block;
  position: relative;
  color: #2b6fc9;
}

.format-download:before {
  content: '';
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 2px 2px 0;
  background: url(../images/icon-download.svg) left top no-repeat;
  vertical-align: middle;
}

.label-upload,.label-followup {
  display: inline-block;
  min-width: 128px;
  padding: 7px 0;
  border: solid 1px #c8c8c8;
  border-radius: 6px;
  font-weight: normal;
  font-style: normal;
  font-size: 14px;
  line-height: 20px;
  color: #515151;
  text-align: center;
  cursor: pointer;
}

/*.label-upload:focus,
.label-upload:hover,
.label-upload:active {
  outline: inherit;
}*/

#btn-upload {
  display: none;
}

.notice {
  margin: 5px auto;
  font-size: 12px;
  line-height: 1.75;
  color: #808080;
}
.check:after{
    content: url('../Images/icon_target.svg');
}
.info-mark{
 position: relative;
 font-weight:bold;
 padding: 0;
 border: none;
 background: none;
 margin-left: 20px;
 outline: none;
 cursor: pointer;
}

.info-mark:after{
    content: '';
    width: 18px;
    height: 18px;
    display: block;
    position: absolute;
    top: 0;
    left: -20px;
    background: url(../Images/icon_info.svg) no-repeat 50% 50%;
    background-size: 18px;
}

.g-recaptchaEx {
    transform:scale(1.27,1.17);
    -ms-transform:scale(1.27,1.17);	/* IE 9 */
    -webkit-transform:scale(1.27,1.17); /* Safari 和 Chrome */
    -o-transform:scale(1.27,1.17);/* Opera */
    -moz-transform:scale(1.27,1.17); /* Firefox */

    transform-origin:0 0;
    -ms-transform-origin:0 0;
    -webkit-transform-origin:0 0;
    -o-transform-origin:0 0;
    -moz-transform-origin:0 0;
}

/* `.btn-01` 上書き */
#startButton.btn-01 {
   text-align: left;
   letter-spacing: -0.05em;
   padding-right: 25px;
}

.red-shadow{
    box-shadow: 0 0 4px 0 rgba(200, 50, 50, 1);
}

/* ----------------------------------------
  メモファイル添付機能
  ---------------------------------------- */
#image_upload_section{
  width: 100%;
}
#dragArea
{
  border:2px dotted #cccccc;
  background-color: #f0f0f0;
  color:#666666;
  text-align:center;
  vertical-align:middle;
  padding:30px 40px;
  margin:20px 0;
  line-height: 1.6;
  font-size:18px;
}

.file-load-area{
}
.progressBar-wrap{
  width:160px;
  display: table-cell;
  vertical-align:middle;
}
.progressBar {
  height:7px;
  box-sizing: border-box;
  vertical-align:middle;
  position: relative;;
  top:0;
}

.progressBar div {
  height:100%;
  color: #333;
  text-align: right;
  border-radius:4px;
  line-height:36px;
  background-color: #ddbb1d;
  font-size: 10px;
}
.statusbar
{
  display: table;
  min-height:20px;
  width: 100%;
  border-radius:6px;
  margin-bottom:10px;
}
.statusbar_content{
  display:table;
  width: 440px;
  background: #f9f9f9;
  border-radius: 6px;
  padding: 8px;
}

.filename
{
  display: table-cell;
  width:63%;
  word-wrap: break-word;
  font-size:12px;
  color:#999999;
}
.filesize
{
  display: table-cell;
  text-align: left;
  width:20%;
  padding-left:10px;
  font-size: 12px;
  color:#999999;
}
.abort{
  width: 24px;
  height: 24px;
  padding: 0;
  margin-left: 10px;
  border: none;
  background: transparent;
  background-image: url(../Images/icon_delete.svg);
  background-size: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: middle;
  cursor:pointer;
}
.abort:disabled{
  opacity: 0.5;
}

.file_upload{
  text-align: center;
  width:130px;
  display: block;
  color: #333333;
  font-size: 14px;
  border:2px solid #d5d5d5;
  background-color: #fefefe;
  margin:10px auto 0px;
  padding: 6px;
  border-radius: 4px;
}

.file_download{
  width: 22px;
  height: 22px;
  padding: 0;
  margin-left: 10px;
  border: none;
  background: transparent;
  background-image: url(../Images/icon-export.svg);
  background-size: 80%;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: middle;
  cursor:pointer;
}

.file_download:disabled{
  opacity: 0.5;
}

.memo-head-top {
  position:relative;
  margin-bottom:20px;
}
.upload_buttons
,.followup_buttons {
  position:absolute;
  top:0;
  right:10px
}

.followup_buttons {
    right:0px;
    margin-top: 5px;
}
.upload_area_cont_open
,.followup_area_cont_open {
  background-color: #ffffff;
  padding-right:10px;
  padding-left:10px;
}
.followup_area_cont_open {
  background-color: #F1F0EE;
}
.upload_area_cont_open:before{
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 18px;
  height: 18px;
  margin-right: 6px;
  background: url(../Images/icon_file_yellow.svg) center center no-repeat;
}

.followup_area_cont_open:before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 18px;
  height: 18px;
  margin-right: 6px;
  background: url(../Images/icon_memo.svg) center center no-repeat;
}

.upload_area_cont_close {
  display: none;
  min-width: 100px;
  padding: 7px 0;
  background-color: #666;
  border: solid 1px #666;
  border-radius: 6px;
  font-weight: normal;
  font-style: normal;
  font-size: 14px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  cursor: pointer;
}
#upload_area .dialog-area {
  margin-bottom: 30px;
}
#upload_area .dialog-header {
  margin-bottom: 0;
}

.btn-delete2{
  width: 130px;
  height: 32px;
  padding-left: 15px;
  background-image: url(../Images/icon_delete.svg);
  background-size: 24px;
  background-position: 5px center;
  background-repeat: no-repeat;
  vertical-align: middle;
  text-align: center;
}
.search-list .btn-delete2:hover{
  background-color: #cccccc;
}

.btn-02-green {
  border-color: #459611;
  background-color: #356d11;
}

.flex-layout2{
  width:100%;
  display:block;
}

.flex-layout-box2{
  display: inline-block;
}

ul.nav {
  margin: 0;
}

ul.nav li {
  width: 200px;
  margin: 0;
  padding: 0;
  display: inline-block;
  text-align: center;
}

ul.nav li a {
  width: 100%;
  padding-bottom: 10px;
  display: block;
  color: #999;
}

ul.nav li a:hover {
  color: #666;
}

ul.nav li div.active {
  width: 100%;
  padding: 0 0 10px 0;
  color: #333;
  border-bottom: 2px solid #ddbb1d;
  display: inline-block;
}

/* 保存した検索条件のボタン */
.w_btn {
  border: 1px solid #dfdfdf;
  border-radius: 6px;
  height: 32px;
  line-height: 32px;
  box-sizing: border-box;
  display: inline-block;
  position: relative;
  overflow: hidden;
  background-color: #fff;
  cursor: pointer;
}

.save_btn {
  margin-top: 1.5em;
  margin-left: 20px;
  padding-right: 15px;
  padding-left: 33px;
}

.save_btn:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 23px;
  height: 23px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  background: url(../Images/icon_search_yellow.svg) no-repeat 50% 50%;
  background-size: contain;
}

.plus_btn {
  margin-top: 1.5em;
  margin-left: 0;
  padding-right: 15px;
  padding-left: 33px;
}

.plus_btn:after {
  content: '';
  margin-top: auto;
  margin-bottom: auto;
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  background: url(../Images/icon-plus.svg) no-repeat 50% 50%;
  background-size: contain;
}

.plus_icon {
  margin: 15px 0 10px 5px;
  width: 15px;
  opacity: 0.3;
}

.partition_area {
  position: relative;
}

.partition_area:after {
  border-top: 1px solid #e3e2e0;
  content: "";
  position: absolute;
  top: 40%;
  left: 30px;
  width: 682px;
}

ul.dialog-btn-wrap-three {
  width: 455px;
  margin: 0 auto;
}

ul.dialog-btn-wrap-three li {
  display: inline-block;
  margin-right: 20px;
}

ul.dialog-btn-wrap-three li:last-child {
  margin-right: 0;
}

.result-txt {
  width: 70%;
}

.fl-r {
  float: right;
}

.fl-l {
  float: left;
}

.clearfix::after {
    content: "";
    display: table;
  clear: both;
}

/* アコーディオンテスト */
#acMenu, #acMenu2 {
  margin: 10px 0;
}

#acMenu dt, #acMenu2 dt{
  display:block;
  height: 36px;
  padding: 0 10px;
  line-height: 36px;
  background-color: #efede8;
  border: none;
  cursor: pointer;
  border-radius: 3px;
  position: relative;
}

#acMenu dt:after, #acMenu2 dt:after{
  content: "";
  width: 10px;
  height: 10px;
  display: inline-block;
  border-top: 2px solid #626262;
  border-right: 2px solid #626262;
  position: absolute;
  top: 30%;
  right: 20px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  transition: all .2s;
}

#acMenu dt.active:after, #acMenu2 dt.active:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
  
#acMenu dd, #acMenu2 dd{
  background:#fff;
  width:100%;
  padding: 15px 19px;
  border-radius: 3px;
  display:none;
  box-shadow: 0 0 4px 0 rgba(12, 6, 14, 0.15);
  background-color: #fff;
  box-sizing: border-box;
  }

ul.list-inline li {
  display: inline-block;
  margin-right: 30px;
  margin-bottom: 15px;
}

p.partition_txt {
  margin-top: 10px;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
  color: #666;
}

.reset_btn {
  width: 150px;
  padding-top: 10px;
  padding-left: 7px;
  vertical-align: bottom;
  background: url(../Images/btn-close.svg)no-repeat;
  background-position:left 10px;
}

.btn-03 a:link, .btn-03 a:visited {
  color: #fff;
}

.min-w45 {
  min-width: 45px;
}

/* ----------------------------------------
  loading layer
  ---------------------------------------- */
#loadlinglayer 
{
  width:100%;
  height:100%;
  position:fixed;
  top:0;
  left:0;
  bottom:0;
  right:0;
  filter:alpha(Opacity=70);
  -moz-opacity:0.3;
  opacity: 0.4;
  z-index:2100;
  background:center url('/Content/Images/icon_loading.gif') no-repeat lightgrey;
}
/* ----------------------------------------
  Qcc resetNavBgColor
  ---------------------------------------- */
ul.l-gnav-list li.l-gnav-list-item {
  background-color:#ddbb1d
}

.judge-a-color {
  margin-left:5px;
  /*color:blue;*/
}

.brMenu{
    line-height: 15px !important;
    height: auto !important;
    padding: 10px 0px;
}

.fontSize {
    font-size: 1.4rem !important;
}

.tableleft th:first-child,
.tableleft td:first-child{
    border-left: solid 1px #e3e2e0 !important;
}

.dialog-header-fixed .dialog-header-low {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-box-orient: horizontal;
  -moz-box-orient: horizontal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: start;
  -moz-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-align: center;
  -moz-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  /*height: 82px;*/
  margin: 0;
  padding: 4px 30px;
  background-color: #d2d2d2;
  border-bottom: 1px solid #e3e2e0;
  color: #333;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.dialog-content-low {
  top: 40px !important;
    padding-top: 0px;
}

.p6-4-b1 {
    padding: 0px 4px;
    border: 0px !important;
    vertical-align: top;
}

.labelHeight {
    height: 28px;
    border: solid 1px #c8c8c8;
    vertical-align: middle;
    text-align: center;
    background-color: #FAF6E5;
    line-height: 28px;
}

.individualFlagdialog {
    width: 600px;
    top:100px;
    bottom:100px; /*250px  0*/
}

.employeeIndividualFlag {
    width: 810px;
    top:44px;
    bottom:44px; /*250px  0*/
}

.individualFlag-dialog-main,
.employeeFlag-dialog-main {
    position: absolute;
    top: 150px;
    left: 0;
    right: 0;
    z-index: 3003;
    width: 520px;
    min-height: 150px;
    margin: 0 auto;
    padding: 30px;
    background-color: #fff;
    border-radius: 3px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.individualFlag-dialog {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3001;
}

.individualFlag-dialog-main-text，
.employeeFlag-dialog-main-text {
    min-height: 50px;
    font-weight: bold;
    font-size: 2.2rem;
    line-height: 1.36;
    color: #333;
}

.dialogJudge  .btn-upd-individualFlag,
.employeeIndividualFlag  .btn-upd-individualFlag,
.dialogJudge  .btn-manger-individualFlag,
.employeeIndividualFlag  .btn-manger-individualFlag {
  padding: 1px; /* for Firefox */
  border-style: solid;
  border-width: 1px;
  border-radius: 3px;
  display: inline-block;
  width: 100%;
  margin-top: 10px;
  height: 28px;
  line-height: 23px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  border-color: #c8c8c8;
  background-color: #d2d2d2;
  color: #fff;
  font-size: 100%;
  font-weight: normal !important;
  text-align: center;
  cursor: pointer;
}

.btn-flag-em {
  border-color: #666 !important;
  background-color: #666 !important;
}

.btn-flag:after {
    content: '';
    margin-top: auto;
    margin-bottom: auto;
    width: 15px;
    height: 15px;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 11px;
    background: url(../Images/icon-flag.svg) no-repeat 50% 50%;
}

.dialogJudge  input[name="PersonInCharge"],
.dialogJudge  select[name="Status"]{
  width: 182px !important;
  height: 30px;
}

.dialogJudge  select[name="InterviewTimeFromHH"],
.dialogJudge  select[name="InterviewTimeFromMM"],
.dialogJudge  select[name="InterviewTimeToHH"],
.dialogJudge  select[name="InterviewTimeToMM"]{
  width: 79px !important;
  height: 30px;
}

.dialogJudge  li.filter-category-item{
 margin-left: 0px;
 margin-right: 20px;
}

@media screen and (max-width: 1475px) {
  .m-db {
    display: block;
    margin: 0 auto;
  }
}