
/** *******************************************
 * 全般
 ******************************************* **/

 html{
    overflow-y: scroll;
}
html, body {
  /*font-size: 28px;*/
    line-height: 1.4;
    box-sizing: border-box;
}
body {
    padding-top: 40px;
}

h1{
    font-size: 20px;
    border-left: 6px solid #333;
    padding-left: 10px;
}

h3{
    font-size: 16px;
    border-left: 6px solid #355692;
    padding-left: 10px;
    font-weight: normal;
    color: #355692;
    line-height: 1;
    margin-top: 20px;
    margin-bottom: 10px;
}

span.itemError {
    font-size: 80%;
    color: red;
}

div.cal-header a{
    font-family: monospace;
}

.hidden{
    display: none;
}

#content{
    margin: 0px auto 0px;
    padding-top: 10px;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    width: 1280px;
    box-sizing: border-box;
}

.far, .fas{
    transform: rotate(0.001deg);
}


/** *******************************************
 * ヘッダー
 ******************************************* **/

#header{
    padding: 6px 0px 0px 0px;
    position: fixed;
    top: 0px;
    z-index: 100;
    left: 0px;
    width: 100%;
    color: #fff;
    font-size: 24px;
    font-weight: normal;
    background-position-y: 6px;
    background-position-x: 5px;
    background-color: #2f3ed6;
    height: 38px;
    background-repeat: no-repeat;
    box-sizing: border-box;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4);

}
#header .headerLink{

    display: inline-block;
    width: 121px;
    height: 21px;
    margin-left: 10px;
    vertical-align: sub;
}
#header .headerLink img{

    position: absolute;
    top: 6px;
}

/** *******************************************
 * パンくずリスト
 ******************************************* **/
.breadcrumbs{
    border-radius: 4px;
    margin-left: 8px;
    overflow: hidden;
    margin-top: 4px;
    width: auto;
    display: inline-block;
    font-size: 0px;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4);
}
.breadcrumbs a {
    font-size: 14px;
    display: inline-block;

      color:#FFF;
      background-color: #66b8dc;
      text-decoration: none;
      position:relative;
      height: 30px;
      line-height:30px;
      padding: 0 10px 0 0px;
      text-align: center;
      margin-right: 23px;
    transition: background-color 0.2s;
}
.breadcrumbs a:before,
.breadcrumbs a:after{
    content: "";
    position:absolute;
    top: 0;
    border:0 solid #66b8dc;
    border-width:16px 10px;
    width: 4px;
    height: 0;
    transition: border-color 0.2s;
}

.breadcrumbs a:before{
    left: -24px;
    border-left-color:transparent;
}
.breadcrumbs a:nth-child(even) {
      background-color: #5991f9;
}
.breadcrumbs a:nth-child(even):before{
    border-color:#5991f9;
    border-left-color:transparent;
}
.breadcrumbs a:nth-child(even):after{
    border-left-color:#5991f9;
}

.breadcrumbs a:after{
    left:100%;
    border-color:transparent;
    border-left-color:#66b8dc;
}

.breadcrumbs a:first-child{
    border-radius: 4px 0 0 4px;
    padding-left: 12px;
    background-color: #ff7474;
    width:42px;
}
.breadcrumbs a:first-child:after{
    border-left-color: #ff7474;
}
.breadcrumbs a:first-child:before{
    border:none;
}
.breadcrumbs a:last-child{
    padding-right:15px;
    border-radius:0 4px 4px 0;
    margin-right: 0px;
}
.breadcrumbs a:last-child:after{
    border:none;
}

.breadcrumbs a:hover {
    text-decoration: none;
    background-color: #ff863e;
}
.breadcrumbs a:hover:after{
    border-left-color: #ff863e;
}
.breadcrumbs a:hover:before{
    border-color: #ff863e;
    border-left-color:transparent;
}
/** *******************************************
 * タブ
 ******************************************* **/
.tabHeader {
    margin-top: 10px;
     font-size: 14px;
}

.tabHeader:after {
    content: "";
    display: block;
    width: 100%;
    height: 0px;
    border-bottom: 2px solid  #3f3ee0;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4);

}

.tabHeader a {
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
    width: 140px;
    text-align: center;
    background-color: #ffffff;
    padding: 4px 10px 4px 5px;
    border-radius: 4px 4px 0px 0px;
    transition: background-color 0.4s;
}
.tabHeader a:hover {
    text-decoration: none;
    background-color: #f9ff8c;
}
.tabHeader a.on {
    background-color: #3f3ee0;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4);
    color: #FFF;
}
.tabHeader a.on:hover {
    background-color: #6487ff;
    color: #FFF;
}
.tabBody {
    padding: 15px 0;
}

/** *******************************************
 * フォーム
 ******************************************* **/

input[type=text],
input[type=password],
textarea, select{
    padding: 3px 5px;
    margin-top: 2px;
    border: 1px solid #999;
    margin-bottom: 2px;
    border-radius: 2px;
    outline: none;
}
select{
    padding: 1px 5px;
}
input[type=text]:focus,
input[type=text]:hover,
textarea:focus,
textarea:hover{
    background-color: #e7fff5;
}
input[type=text].error,
label.error,
select.error,
textarea.error{
    background-color: #ffe5e5;
}

input[type=button],
input[type=submit]{
    padding: 4px 12px;
    border: none;
    border-radius: 16px;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4);
    color: #fff;
    background: #5991f9;
    cursor: pointer;
    font-size: 14px;
    line-height: 1.4 !important;
    outline: none;
    transition: background-color 0.2s;
    transform: rotate(0.001deg);
    font-family: 'Font Awesome 5 Pro', 'M PLUS 1p', sans-serif;
}
input[type=button]:hover,
input[type=submit]:hover{
    background: #ff863e;
}
input[type=button].subButton{
    padding: 4px 12px;
    font-size: 12px;
    background: #39a747;
}
input[type=button].subButton:hover{
    background: #ff863e;
}
input[type=button].negativeButton{
    background: #ff7474;
}
input[type=button].negativeButton:hover{
    background: #ff863e;
}

input.date{
    width: 108px;
    margin: 10px 0px;
}
.ui-datepicker{
    z-index: 1000 !important;
}
input.number{
    text-align: right;
}

form label{
    padding-right: 8px;
    height: 32px;
    display: table-cell;
    vertical-align: middle;
}

form div.required.sub{
    background: #3232e0;
    display: none;
}

form .notice{
    font-size: 12px;
    color: #2e4fb1;
}
form:not(.edit) .notice{
    display: none;
}
form div.error{
    font-size: 12px;
    color: #ff0000;
}
form input[type=text][readonly],
form input[type=text][readonly]:hover,
form input[type=text][readonly]:focus,
form textarea[readonly],
form textarea[readonly]:hover,
form textarea[readonly]:focus{
    border: none;
    background-color: transparent;
    resize: none;
    overflow: hidden;
}
form div.required{
    display: inline-block;
    background: #e03232;
    padding: 1px 6px;
    border-radius: 4px;
    color: #FFF;
    font-size: 11px;
}
form span.readonly{
    margin-left: 5px;
}

form table tr.title th{
    text-align: left;
    /* font-weight: bold; */
    color: #ffffff;
    padding-left: 6px;
    font-size: 15px;
    background-color: #428ad2;
}
form table tr.title th i{
    margin-right: 6px;
}


form span.label {
    min-width: 76px;
    text-align: right;
    display: inline-block;
}

form .buttons{
    margin-top: 20px;
    margin-bottom: 20px;
}

.topButtons{
    margin-bottom: 20px;
}

.bottomButtons{
    margin-top: 20px;
}

table.report{
    width: 100%;
    /* height: 60px; */
    box-sizing: border-box;
    border-collapse: separate;
    border-spacing: 0px;
    /*background-color: #6c9ccc;*/
    /*background-color: #c5dbec;*/

    border: 1px solid #c5dbec;
    border-radius: 6px;
    overflow: hidden;
}

table.report a{
    font-weight: bold;
    text-decoration: underline;
    color: blue;
}
table.report td.price{
    font-family: "Arial";
}
table.report tr.delFlg1 {
    background: #ddd;
    color: #999;
}

table.report th,
table.report td {
    border: 0px solid #c5dbec;
}
table.report th:nth-child(n+2),
table.report td:nth-child(n+2) {
    border-left-width: 1px;
}
table.report tr:nth-child(n+2) th,
table.report tr:nth-child(n+2) td{
    border-top-width: 1px;
}
table.report tr:nth-child(1) th:nth-child(1),
table.report tr:nth-child(1) td:nth-child(1){
    border-top-width: 1px;
}
table.report th {
    padding: 3px 6px;
    background: #e5f3ff;
    text-align: right;
    font-weight: normal;
    color: #355692;
    font-size: 13px;
}
table.report td {
    padding: 3px 6px;
    background-color: #FFF;
}

table.report caption{
    text-align: left;
    font-weight: bold;
    margin-top: 20px;
}


div#progressDialog {
    /* display: none; */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.2;
    z-index: 100000;
}
div#progressDialog i{
    color: #FFF;
    font-size: 45px;
    top: 50%;
    left: 50%;
    position: absolute;
    margin-top: -20px;
    margin-left: -22px;
    z-index: 100001;
}

input.submitNotice {
    transition: all 500ms 0s ease;
}
input.submitNotice.on {
    box-shadow: 0 0px 10px 1px #f00;
}

a.disable{
    pointer-events: none;
    color: #999;
}

.grad {
    position: relative;

}
.grad:before {
    position: absolute;
    content: "";
    pointer-events: none;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    background: linear-gradient(to bottom, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.1) 45%, rgba(0,0,0,0.03) 51%, rgba(255,255,255,0) 100%);

}


/** *******************************************
 * jqGrid
 ******************************************* **/
#pager .ui-pg-input {
    width: 40px !important;
    text-align: center;
}

.listButtons input[type=button],
.listButtons input[type=submit]{
    padding: 2px 5px;
}
.listButtons input[type=button]:nth-child(n+1),
.listButtons input[type=submit]:nth-child(n+1){
    margin-left: 4px;
}

/** *******************************************
 * handsontable
 ******************************************* **/
.handsontable td, .handsontable th{
    font-size: 11px;
}

table.htCore tr th{
    background-color: #e5f3ff;
    color: #2e6e9e;
}
.handsontable tr:first-child td, .handsontable tr:first-child th {
    border-top: 1px solid #c5dbec;
}
.handsontable .htNoFrame+td, .handsontable .htNoFrame+th, .handsontable.htRowHeaders thead tr th:nth-child(2), .handsontable td:first-of-type, .handsontable th:first-child, .handsontable th:nth-child(2) {
    border-left: 1px solid #c5dbec;
}
.handsontable td, .handsontable th {
    border-top-width: 0;
    border-left-width: 0;
    border-right: 1px solid #c5dbec;
    border-bottom: 1px solid #c5dbec;
}
.handsontable .htNoFrame+td, .handsontable .htNoFrame+th, .handsontable.htRowHeaders thead tr th:nth-child(2), .handsontable td:first-of-type, .handsontable th:first-child, .handsontable th:nth-child(2) {
    border-left: 1px solid #c5dbec;
}
.handsontable th:last-child {
    border-right: 1px solid #c5dbec;
    border-bottom: 1px solid #c5dbec;
}
.handsontable tbody th.ht__highlight, .handsontable thead th.ht__highlight {
    background-color: #ffbdb3;
}
.handsontable td.edited {
    background-color: #ffff66 !important;
}

.handsontable td.center {
    text-align: center;
}

/** *******************************************
 * Other
 ******************************************* **/
.clearfix:after {content:''; display:table; clear:both;}