@charset "utf-8";

*{ box-sizing:border-box; }

button,label{ cursor:pointer; }

/* レスポンシブ
----------------------------------------------------------------------------- */
/* PCのみ表示 */
@media screen and (max-width: 999px) {
  .pc-only {
    display: none !important;
  }
}
/* SPのみ表示 */
@media screen and (min-width: 1000px) {
  .sp-only {
    display: none !important;
  }
}

/* 分類：レスポンシブ
----------------------------------------------------------------------------- */
.inner{
    width:100%;
	max-width:1000px; /* 案件に応じてコンテンツ幅を指定 */
	margin:0 auto;
}
@media screen and (max-width:768px){
	.inner{
		width:100%; /* 案件に応じてコンテンツ幅を指定 */
	}
}

/* 分類：見出し
----------------------------------------------------------------------------- */
/* 大見出し（ページタイトル） */
.ttl-L{
    dispaly: table;
    font-size:18px;
    font-weight:bold;
    background-color:#eee;
    border-bottom:1px solid #ccc;
    padding:8px 10px;
}
/* 大見出しのサブエリア */
.ttl-L-sub{
    display:table-cell;
    font-weight:normal;
    font-size:14px;
    color:#333;
    padding-left:10px;
    float:right;
}
.ttl-L-sub a,
.ttl-L-sub button{
    margin-bottom:0 !important;
}

/* 中見出し */
.ttl-M{
    font-size:18px;
    font-weight:bold;
    color:#3f5db3;
    padding:0 0 0 25px;
    margin:0 0 3px;
    background-image:url("/common/images/icn_bh.png");
    background-repeat:no-repeat;
    background-position:left top 3px;
}
/* 中見出しのサブエリア */
.ttl-M-sub{
    display:inline-block;
    font-weight:normal;
    font-size:14px;
    color:#333;
    padding-left:10px;
}

/* 小見出し */
.ttl-S{
    font-size:16px;
    font-weight:bold;
    margin:0 0 15px;
    color:#444;
}

/* 分類：文字色
----------------------------------------------------------------------------- */
.fc-gray{color:#bbb;}
.fc-red{color:#c00;}


/* 分類：ボタン
----------------------------------------------------------------------------- */
/* 青ボタン */
.btn-blue-M,
.btn-blue-S{
    border:none;
    text-align:center;
    text-decoration:none;
    color:#fff;
    background-color:#506ec5;
    display:inline-block;
    margin:0 5px 5px;
    padding:3px 10px;
    font-size:14px;
    border-radius:3px;
    -webkit-transition: all 0.1s ease;
    -moz-transition: all 0.1s ease;
    -o-transition: all 0.1s ease;
    transition: all  0.1s ease;
}
.btn-blue-M:hover,
.btn-blue-S:hover{
    background-color:#5d9fe3;
}
/* 青ボタン（小） */
.btn-blue-S{
    min-width:40px;
}
/* 青ボタン（中） */
.btn-blue-M{
    min-width:150px;
}

/* 青ボタン2 クリア用 */
.btn-blue2-M,
.btn-blue2-S{
    border:none;
    text-align:center;
    text-decoration:none;
    color:#fff;
    background-color:#287d99;
    display:inline-block;
    margin:0 5px 5px;
    padding:3px 10px;
    font-size:14px;
    border-radius:3px;
    -webkit-transition: all 0.1s ease;
    -moz-transition: all 0.1s ease;
    -o-transition: all 0.1s ease;
    transition: all  0.1s ease;
}
.btn-blue2-M:hover,
.btn-blue2-S:hover{
    background-color:#5d9fe3;
}
/* 青ボタン2（小） */
.btn-blue2-S{
    min-width:40px;
}
/* 青ボタン2（中） */
.btn-blue2-M{
    min-width:150px;
}

/* 緑ボタン */
.btn-green-M,
.btn-green-S{
    border:none;
    text-align:center;
    text-decoration:none;
    color:#fff;
    background-color:#89ba5d;
    display:inline-block;
    margin:0 5px 5px;
    padding:3px 10px;
    font-size:14px;
    border-radius:3px;
    -webkit-transition: all 0.1s ease;
    -moz-transition: all 0.1s ease;
    -o-transition: all 0.1s ease;
    transition: all  0.1s ease;
}
.btn-green-M:hover,
.btn-green-S:hover{
    background-color:#b1d57e;
}
/* 緑ボタン（小） */
.btn-green-S{
    min-width:50px;
}
/* 緑ボタン（中） */
.btn-green-M{
    min-width:150px;
}

/* 橙ボタン */
.btn-orange-M,
.btn-orange-S{
    border:none;
    text-align:center;
    text-decoration:none;
    color:#fff;
    background-color:#ee8800;
    display:inline-block;
    margin:0 5px 5px;
    padding:3px 10px;
    font-size:14px;
    border-radius:3px;
    -webkit-transition: all 0.1s ease;
    -moz-transition: all 0.1s ease;
    -o-transition: all 0.1s ease;
    transition: all  0.1s ease;
}
.btn-orange-M:hover,
.btn-orange-S:hover{
    background-color:#ffbb11;
}
/* 緑ボタン（小） */
.btn-orange-S{
    min-width:50px;
}
/* 緑ボタン（中） */
.btn-orange-M{
    min-width:120px;
}


/* 青ボタン（メニュー） */
.btn-blue-menu{
    width: 100%;
    border: 1px solid #5d9fe3;
    text-align:center;
    text-decoration:none;
    color:#000;
    background-color:#fff;
    display:inline-block;
    margin:0 5px 5px;
    padding:5px 10px;
    font-size:14px;
    border-radius:5px;
    -webkit-transition: all 0.1s ease;
    -moz-transition: all 0.1s ease;
    -o-transition: all 0.1s ease;
    transition: all  0.1s ease;
}
.btn-blue-menu:hover{
    background-color:#5d9fe3;
}

/* オレンジボタン（メニュー） */
.btn-orange-menu{
    width: 100%;
    border: 1px solid #ff9900;
    text-align:center;
    text-decoration:none;
    color:#000;
    background-color:#fff;
    display:inline-block;
    margin:0 5px 5px;
    padding:5px 10px;
    font-size:14px;
    border-radius:5px;
    -webkit-transition: all 0.1s ease;
    -moz-transition: all 0.1s ease;
    -o-transition: all 0.1s ease;
    transition: all  0.1s ease;
}
.btn-orange-menu:hover{
    background-color:#ff9900;
}

/* 分類：リストテーブル
----------------------------------------------------------------------------- */
.tbl-list{
    width:100% !important;
    margin:0 0 10px;
    font-size:12.5px;
}

.tbl-list tr:nth-child(2n){
    background-color:#effafb
}

/* 見出しセル */
.tbl-list thead th{
    background-color:#506ec5;
    color:#fff;
    text-align:center !important;
    padding:3px !important;
    border:1px solid #eee !important;
    vertical-align:middle !important;
}
.tbl-list thead th a,
.tbl-list thead th button{
    display:block;
    text-align:center;
    text-decoration:none;
    color:#fff;
    width:100%;
    border:none;
    background-color:transparent;
    font-family:inherit;
}

/* 本文セル */
.tbl-list tbody td{
    border:1px solid #ccc;
    padding:3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis; /* Opera9,10対応 */
}

/* リストボタン調整(小) */
.tbl-list tbody td .btn-blue-S,
.tbl-list tbody td .btn-green-S,
.tbl-list tbody td .btn-orange-S
{
    margin-bottom:0;
    padding:2px 10px;
}

/* 検索モーダル時のアクティブ表示 */
.f-sort-search tr,
.modal-window-main .dataTable tr{
    cursor:pointer;
}
.f-sort-search tr:hover{
    background-color:#cfe6fe;
}
.tbl-list tbody tr.is-checked{
    background-color:#cfe6fe;
    font-weight:bold;
}

.tbl-wrap{
	display: block;
	overflow-x: hidden;
	overflow-y: scroll;
	width: 100%;
	max-height: 200px;
}

.thead-scroll-tbl,
.tbody-scroll-tbl{
  width: 100%;
}

.thead-scroll-tbl > tr > th{
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 2;
}

/* 分類：リストテーブル(さいけんかん)
.tbl-list-debt{
    width:100% !important;
    margin:0 0 10px;
    font-size:12.5px;
}

.tbl-list-debt tr:nth-child(2n){
    background-color:#effafb
}

/* 見出しセル */
.tbl-list-debt thead th{
    background-color:#506ec5;
    color:#fff;
    text-align:center !important;
    padding:3px !important;
    border:1px solid #eee !important;
    vertical-align:middle !important;
}
.tbl-list-debt thead th a,
.tbl-list-debt thead th button{
    display:block;
    text-align:center;
    text-decoration:none;
    color:#fff;
    width:100%;
    border:none;
    background-color:transparent;
    font-family:inherit;
}

/* 本文セル */
.tbl-list-debt tbody td{
    border:1px solid #ccc;
    padding:3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis; /* Opera9,10対応 */
}

/* リストボタン調整(小) */
.tbl-list-debt tbody td .btn-blue-S,
.tbl-list-debt tbody td .btn-green-S,
.tbl-list-debt tbody td .btn-orange-S
{
    margin-bottom:0;
    padding:2px 10px;
}

/* 検索モーダル時のアクティブ表示 */
.f-sort-search tr,
.modal-window-main .dataTable tr{
    cursor:pointer;
}
.f-sort-search tr:hover{
    background-color:#cfe6fe;
}
.tbl-list-debt tbody tr.is-checked{
    background-color:#cfe6fe;
    font-weight:bold;
}

/* 分類：一覧ページ用絞り込み
----------------------------------------------------------------------------- */
.tbl-filter > div{
    margin-left: 10px !important;
    margin-top: 10px !important;
    display: inline-flex;
    align-items: center;
}


/* 分類：リストテーブル用ページャー
----------------------------------------------------------------------------- */
/*　表示件数選択エリア　*/
.dataTables_length{
    text-align:right;
}

/* 表示件数エリア */
.dataTables_info{
    text-align:right;
}

/* ページャーエリア */
.dataTables_paginate{
    text-align:center;
}

/* ページャーボタン */
.paginate_button{
    color:#333;
    text-decoration:none;
    border:1px solid #ccc;
    border-radius:5px;
    display:inline-block;
    cursor:pointer;
    margin:0 5px;
    padding:5px;
    min-width:35px;
    -webkit-transition: all 0.1s ease;
    -moz-transition: all 0.1s ease;
    -o-transition: all 0.1s ease;
    transition: all  0.1s ease;

}
.paginate_button.current,
.paginate_button:hover{
    background-color:#5d9fe3;
    border:1px solid #5d9fe3;
    color:#fff;
}

/* 分類：検索モーダル用検索ボックス
----------------------------------------------------------------------------- */
.dataTables_filter{
    background-color:#eee;
    padding:10px;
}
.dataTables_filter input{
    padding:5px;
}


/* 分類：フォームテーブル（入力）
----------------------------------------------------------------------------- */
.tbl-form{
    width:100%;
    margin:0 0 5px;
}
.tbl-form tbody th{
    text-align:right;
    padding:2.5px;
    vertical-align:top;
    width:80px;
    white-space: nowrap;
}
.tbl-form tbody td{
    padding:2.5px;
    vertical-align:top;
}

/* 分類：フォームテーブル（検索）
----------------------------------------------------------------------------- */
.tbl-search{
    vertical-align: top;
    display:table-cell;
}
.tbl-search select{
    width:auto !important;
}

/* 分類：フォーム調整
----------------------------------------------------------------------------- */
input[type="text"],
input[type="password"],
input[type="date"],
input[type="time"],
input[type="number"],
select,
textarea{
    padding:2px;
    padding-left:10px;
    border:1px solid #ddd;
    width:100%;
    font-family:inherit;
}
input[type="number"]{
    text-align:right;
}
select{
    cursor:pointer;
}

label{
    display:inline-block;
}

input[type="date"]{
    width: 11em;
}
textarea{
    height:40px;
    resize:vertical;
}

/* 幅指定 */
.w10{width:10% !important;}
.w20{width:20% !important;}
.w30{width:30% !important;}
.w40{width:40% !important;}
.w50{width:50% !important;}
.w60{width:60% !important;}
.w70{width:70% !important;}
.w80{width:80% !important;}
.w90{width:90% !important;}

/* 縦幅指定 */
.lh190{height:190px;}

/* 分類：タブ切り替え
----------------------------------------------------------------------------- */
.tab{
    margin:0 0 10px;
    width:100%;
}

/* タブ */
.tab-select{
    border-bottom:1px solid #888;
}
.tab-select li{
    display:inline-block;
    padding:2px;
    border:1px solid #888;
    cursor:pointer;
    margin:0 3px -1px 0;
    border-radius: 5px 5px 0 0 / 5px 5px 0 0;
    -webkit-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
}
.tab-select li button{
    background-color:transparent;
    border:none;
    padding:1px 10px;
    border-radius: 5px 5px 0 0 / 5px 5px 0 0;
    -webkit-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
}
.tab-select li.is-active{
    border-bottom:1px solid #fff;
}
.tab-select li.is-active button{
    background-color:#d5e6e9;
}

/* タブコンテンツ */
.tab-contents-box{
    padding:4px;
}

/* 分類：モーダルウィンドウ
----------------------------------------------------------------------------- */
.modal{
    position:fixed;
    background-color:rgba(255,255,255,0.8);
    width:100%;
    height:100%;
    left:0;
    top:0;
    z-index:99998;
    display:none;
}

/* ウィンドウ */
.modal-window{
    background-color:#fff;
    margin:auto auto;
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    border:1px solid #ccc;
    box-shadow:0px 0px 15px -4px #2a2c57;
    width:90%;
    height:90%;
    z-index:99999;
}

/* タイトル */
.modal-window-ttl{
    background-color:#eee;
    border-bottom:1px solid #ccc;
    font-size:16px;
    font-weight:bold;
    padding:10px;
}
.modal-window-ttl-sub{
    display:inline-block;
    padding-left:10px;
    float:right;
}
.modal-window-ttl-sub a,
.modal-window-ttl-sub button{
    margin-bottom:0 !important;
}

/* モーダル本文 */
.modal-window-main{
    padding:10px;
    overflow-y:scroll;
}

/* モーダルローディング */
.modal-window-loading{
    position:absolute;
    width:100%;
    height:100%;
    background-color:rgba(255,255,255,0.5);
    text-align:center;
    padding-top:27%;
}

/* 分類：ムーバブルモーダルウィンドウ
----------------------------------------------------------------------------- */
.movable-modal{
    position:absolute;
    background-color:rgba(255,255,255,0.4);
    width:100%;
    height:100%;
    left:0;
    top:0;
    z-index:88888;
    display:none;
}

/* 分類：ボックス
----------------------------------------------------------------------------- */
.box-scroll{
    overflow:auto;
    height:250px;
    border:1px solid #ddd;
    padding:10px;
}

/* 画像アップローダー */
.f-upload{
	display:table;
	width:100%;
}

/* プレビューエリア */
.f-upload-preview{
	display:table-cell;
	vertical-align:middle;
	background-color:#eee;
	width:200px;
	height:120px;
	padding:10px;
	background-image:url("/common/images/pdf_nopdf.png");
	background-repeat:no-repeat;
	background-position:center center;
	background-size:64px 64px;
	cursor:pointer;
}
.f-upload-preview img{
	max-width:100%;
	height:auto;
}

/* インプットエリア */
.f-upload-input{
	display:table-cell;
	vertical-align:middle;
	padding-left:15px;
}
.f-upload-input textarea{
	margin-top:15px;
}

/* 分類：背景色
----------------------------------------------------------------------------- */
.alert-record{
    background-color:#fffa90 !important;
}

.subtotal-title{
    background-color:#dcdcdc !important;
}

.subtotal-cell{
    background-color:#f5deb3 !important;
}

.total-title{
    background-color:#506ec5;
    color:#fff;
    text-align:center !important;
    padding:3px !important;
    border:1px solid #eee !important;
    vertical-align:middle !important;
}

.total-cell{
    background-color:#f0f8ff;
    color:#000;
    padding:3px !important;
    border:1px solid #eee !important;
    vertical-align:middle !important;
}