@charset "utf-8";

/*======================================


=======================================*/

body {
    font-size: 0.8rem;
    font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
    //line-height: 120%;
    background-color: #eeeeee;
}

/*
body {
    width: 100%;
    height: 100%;
    background: #FFF none repeat scroll 0% 0%;
    font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
    font-size: 80%;
    line-height: 120%;
}
*/

input[type=text] {
    width: 100%;
    z-index: 1;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

caption {
    caption-side: top;
    padding-bottom: 0.25rem;
    color: #000000;
}

ul {
    margin-block-end: 0;
    padding-inline-start: 0;
}
label {
    margin-bottom: 0;
}

input[type="checkbox"] {
    //margin: 0.25rem 0.25rem 0.25rem 0.3rem;
}
input[type="checkbox"]:checked + label {
    //font-weight: bold;
}
input[type="radio"] {
   // margin: 0.25rem 0.25rem 0.25rem 0.3rem;
}
input[type="radio"]:checked + label {
    //font-weight: bold;
}
input[type="text"],input[type="password"] {
    padding: 2px 4px;
}

input[type="checkbox"].check-sm {
    -ms-transform: scale(1.2);
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    margin:0 !important;
}

/* bootstrap上書 */

.form-control,
.custom-select {
//border: 1px solid #ced4da;
//border: 1px solid #8d99a5;
}


/** **/

button {
    border: 1px solid #666 !important;
    padding: 5px;
}

button.btn-close {
    border: none !important;
}

.pageNaviBox-r a {
    vertical-align: middle;
    font-size: 1rem;
    text-decoration: none;
}
.pageNaviBox-r a:hover {
    text-decoration: underline;
}

#searchModal {
    font-size: 1rem;
}

/* ナビ */

.bg-nav {
    background-color: #336 !important;
}

.navbar-dark .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.8);
}

.dropdown-menu {
    padding: 0.75rem 0 !important;
    line-height: 1.5rem;
}
.dropdown-item {
    font-size: 0.9rem;
}


/*--
ヘッダー・ナビ
 */

#header {
    margin: 0;
    height: 45px;
    background: #336 none repeat scroll 0% 0%;
    width: 100%;
}
#header-contents {
//margin-right: auto;
//margin-left : auto;
    width: 1200px;
}

#logo {
    color: #FFFFFF;
    font-size: 1.25rem;
    padding: 0.5rem 0 0 1rem;
    float: left;
    width: 200px;
}
#site-info {
    float: right;
    width: 720px;
}
#site-info p.info {
    padding-top: 16px;
    float: left;
    width: 400px;
    color: #FFF;
    font-size: 80%;
}
#site-info ul {
    padding-top: 14px;
    float: right;
}
#site-info ul li {
    margin-right: 10px;
    float: left;
}


nav {
    background: #eee;
    border-bottom: 1px solid #ccc;

}
#dropmenu{
//margin-right: auto;
//margin-left : auto;
//margin-left : auto;
    list-style-type: none;
    width: 980px;
    height: 35px;
//  margin: 30px auto 300px;
    padding: 0;
//  border-radius: 3px 3px 0 0;
}
#dropmenu li{
    position: relative;
    width: 120px;
    float: left;
    margin: 0;
    padding: 0;
    text-align: center;
}
#dropmenu li a{
    display: block;
    margin: 0;
    padding: 10px 0 11px;
    color: #333;
    font-size: 13px;
    font-weight: bold;
    line-height: 1;
    text-decoration: none;
}
#dropmenu li ul{
    list-style: none;
    position: absolute;
    top: 100%;
    left: 0;
    margin: 0;
    padding: 0;
//  border-radius: 0 0 3px 3px;
}
#dropmenu li:last-child ul{
    left: -100%;
    width: 100%
}
#dropmenu li ul li{
    overflow: hidden;
//  width: 100%;
    height: 0;
    color: #fff;
    -moz-transition: .2s;
    -webkit-transition: .2s;
    -o-transition: .2s;
    -ms-transition: .2s;
    transition: .2s;
}
#dropmenu li ul li a{
    padding: 12px 5px 12px 12px;
//background: #99c;
    background: #eee;
    text-align: left;
    font-size: 12px;
    font-weight: normal;
}
#dropmenu li:hover > a{
//background: #eee;
    background-color: #a7c1f1;
    color: #333;
//font-weight: bold;
}
#dropmenu > li:hover > a{
//  border-radius: 3px 3px 0 0;
}
#dropmenu li:hover ul li{
    overflow: visible;
    height: 35px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
#dropmenu li:hover ul li:first-child{
    border-top: 0;
}
#dropmenu li:hover ul li:last-child{
    border-bottom: 0;
}
#dropmenu li:hover ul li:last-child a{
    border-radius: 0 0 3px 3px;
}

/*ツールボタン */
.btn-tool-format,
a.btn-tool-format:link,
a.btn-tool-format:visited {
    padding: 0 6px;
    margin-left:10px;
    border: solid 1px #6b6d87;
//    display: inline-block;
    color: #444757;
    background: #FFF none repeat scroll 0% 0%;
    background-origin: padding-box;
    background-attachment: scroll;
    background-clip: border-box;
//   background-color: #c9cbcb;
    font-weight: bold;
    font-size: 90%;
    text-decoration: none;
    cursor: pointer;

    /* CSS3 radius */
    border-radius: 4px;
    /* Safari, Chrome radius */
    -webkit-box-sizing: content-box;
    -webkit-border-radius: 4px;
    /* Firefox radius */
    -moz-border-radius: 4px;
    /* Safari, Chrome radius */
    -webkit-box-sizing: content-box;
    -webkit-border-radius: 4px;
    /* Firefox radius */
    -moz-border-radius: 4px;

}
span.icon-required {
    font-size: 90%;
    line-height: 100%;
//color: #FF3333;
//background: #fff;
//border: 1px solid #FF9999;
    color: #666666;
    background: #fff;
    border: 1px solid #aaaaaa;
    padding: 2px 4px;
    margin-right: 5px;
    cursor: default;
}


/*------------------------------------
コンテンツ
------------------------------------*/

#contents {
    padding: 20px 20px 50px 20px;
    //width: 1400px;
}

#contents .pageNaviBox-l {
    width: 15%;
    float: left;
    text-align: left;
    margin: 0.5rem 0 0 1rem;

}
#contents .pageNaviBox-c {
    width: 35%;
    float: left;
    text-align: center;
}

#contents .pageNaviBox-r {
    float: right;
}
#contents .pageNaviBox-r a {
    font-size: 0.85rem !important;
}


#contents .pageNaviBox2-l {
    width: 20%;
    float: left;
    text-align: left;
    margin-bottom:5px;
}
#contents .pageNaviBox2-c {
    width: 60%;
    float: left;
    text-align: center;
    margin-bottom:5px;
}

#contents .pageNaviBox2-r {
    width: 20%;
    float: left;
    text-align: right;
    margin-bottom:5px;
}



/* 見出し */

div.page-heading {
    font-size: 1.25rem;
    font-weight: bold;
    height: 1.75rem;
    background: linear-gradient(transparent 60%, #a7b6ff 60%);
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    margin: 0 0 15px 0;
    display: inline-block;
}
div.page-heading > span {
    font-weight: normal;
    font-size: 1rem;
}

div.page-heading2 {
    font-size: 1.25rem;
    font-weight: bold;
    height: 1.75rem;
    background: linear-gradient(transparent 60%, #ffc6a7 60%);
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    margin: 0 0 15px 0;
    display: inline-block;
}
div.page-heading2 > span {
    font-weight: normal;
    font-size: 1rem;
}


/*テーブル設定*/

table {
    margin: 0 0 10px;
    border-collapse: collapse;
    width: 100%;
    font-size: 100%;
    vertical-align: middle !important;
}

th,
td {
    //padding: 5px !important;
    //border: 1px solid #818181;
}

th {
    font-weight: bold;
    text-align: left;
}


/* ページナビ */

#contents ul.pageNav {
//    text-align: center;
}
#contents ul.pageNav li {
    display: inline;
    margin: 0 2px;
    padding: 0;
}
#contents ul.pageNav li span,
#contents ul.pageNav li a {
    display: inline-block;
    padding: 4px 8px;
    background: #fff;
    border: 1px solid #ccc;
    vertical-align: middle;
    text-decoration: none;
}
#contents ul.pageNav li span {
    background: #FAEAEA;
}
#contents ul.pageNav li span.clear{
    background: #fff;
    padding: 3px 5px;
    border: none;
}
#contents ul.pageNav li a:hover {
    background: #ccf;
}



/* フィルタ */

div#filterArea {
//border: 4px solid #99CC66;
    padding: 0;
    margin-bottom: 20px;
}

div#filterArea ul {
//width: 100%;
    padding-left: 0;
}

div#filterArea ul li {
    display: table-cell;
    padding: 0 10px 0 10px;
}
/*
div#filterArea ul li:first-child {
    width: 50px;
    font-size: 110%;
    //font-weight: bold;
}
*/
div#filterArea ul li:last-child {
    width: 200px;
    text-align: right;
}


/* モーダル */
.modal-base {
    //background: #E6EDE0;
    margin: 10px 20px;
    padding: 10px;
    font-size: 1.3rem;
    //font-weight: bold;
    //border-bottom: none;
}
.modal-base p {
    //color: #358D23;
    line-height: 1.4;
}
.modal-base button {
    padding-top: 0.75rem !important;
}
.modal-base > .modal-body {
    font-size: 0.9rem;
    padding: 1.5rem 1rem;
}
.modal-cog p:before {
    font-family: 'Font Awesome 5 Free';
    content: '\f4fe';
    padding-right: 5px;
    font-weight: 900;
}
.modal-delete p:before {
    font-family: 'Font Awesome 5 Free';
    content: '\f2ed';
    padding-right: 5px;
}
.search-scroll {
    max-height: calc(100vh - 200px);
    overflow-x: hidden;
    overflow-y: scroll;
}


/* 検索結果テーブル */

#search-result th,
#search-result td {
    text-align: center;
}
#search-result td {
    padding: 3px;
}
#search-result .tal {
    text-align: left;
}

#search-result input[type="checkbox"] {
    -ms-transform: scale(1.5, 1.5);
    -webkit-transform: scale(1.5, 1.5);
    transform: scale(1.5,1.5);
}

#search-result tr.status1 {
    background: #ffffff none repeat scroll 0% 0%;
}
#search-result tr.status2 {
    background: #ffb9ba none repeat scroll 0% 0%;
}
#search-result tr.status3 {
    background: #f5f2a5 none repeat scroll 0% 0%;
}
#search-result tr.status4 {
    background: #d1f4b4 none repeat scroll 0% 0%;
}
#search-result tr.status5 {
    background: #c9d8f4 none repeat scroll 0% 0%;
}
#search-result tr.status6 {
    background: #cbcbcb none repeat scroll 0% 0%;
}
#search-result tr.status7 {
    background: #9c9c9c none repeat scroll 0% 0%;
}
/*
#search-result tr.warning {
    background: #ffcccc none repeat scroll 0% 0%;
}
#search-result tr.caution {
    background: #f5f2a5 none repeat scroll 0% 0%;
}
#search-result tr.note {
    background: #d1f4b4 none repeat scroll 0% 0%;
}
*/
#search-result td a.large {
    font-size: 130%;
}
/* TOPへ戻る */
#page_top{
    width: 50px;
    height: 50px;
    position: fixed;
    right: 10px;
    bottom: 10px;
    background: #666666;
    opacity: 0.6;
}
#page_top a {
    position: relative;
    display: block;
    width: 50px;
    height: 70px;
    text-decoration: none;
}
#page_top a::before{
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f062';
    font-size: 25px;
    color: #fff;
    position: absolute;
    width: 25px;
    height: 25px;
    top: -30px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}



/**  **/

div#tikectHead {
    display: inline-block;
    width: 100%;
//padding-left:20px;
}

div#tikectHead div.heading,
div#tikectHead div.headingcont {
    float: left;
    border: 1px solid #818181;
    height: 30px;
    text-align: center;
    vertical-align: bottom;
}
div#tikectHead div.heading {
    width: 80px;
    line-height: 30px;
    background: #c9d8f4;
}
div#tikectHead div.headingcont {
    padding: 3px 5px 0 5px ;
}
div#tikectHead div.bln {
    border-left: none;
}



/* 基本情報 */

div#tikectBaseinfo {
//padding-left:20px;
    margin-bottom: 30px;
}

div#tikectBaseinfo th {
    width:120px;
    text-align: center;
}

div#tikectBaseinfo div#heading {
    width: 150px;
    text-align: center;
    line-height: 25px;
    vertical-align: middle;
    font-size: 1.2em;
    background: #818181;
    color: #ffffff;
    margin: 10px 0;
    padding: 5px 0;
}

div#tikectBaseinfo div#infoArea1 {
    display: inline-block;
    width: 1200px;
}
div#tikectBaseinfo div#infoArea1 .box-l {
    float: left;
    width:38%;
}
div#tikectBaseinfo div#infoArea1 .box-c {
    float: left;
    width:42%;
}
div#tikectBaseinfo div#infoArea1 .box-r {
    float: left;
    width:10%;
}
div#tikectBaseinfo div#infoArea1 td .saiban {
    float: left;
    width: 200px;
}
div#tikectBaseinfo div#infoArea1 td .saiban-btn {
    float: right;
    width: 50px;
}


div#infoArea2 {
      display: inline-block;
      width: 1100px;
  }
div#infoArea2 .box-l {
    float: left;
    width:37%;
}
div#infoArea2 .box-c {
     float: left;
     width:37%;
}
div#infoArea2 .box-r {
    float: left;
    width:20%;
}



/** **/

table.noteTable {
    width: 1100px;
}
table.noteTable textarea {
    width: 98%;
    height: 5em;
}


/* 検索モーダル調整 */

#modal-search label {
//padding-left: 0;
//padding-right: 0;
    padding: 0;
}
#modal-search label.col-form-label {
    padding-left: 0;
    padding-right: 0;
}
#modal-search div {
//padding-left: 15px;
    padding-right: 0;
    margin-right: 0;
}
#modal-search ul {
    padding-left: 0;
}
#modal-search div.form-inline {
    padding-left: 0;
}

.modal.fade, .modal-backdrop.fade {
    transition-duration: 0.08s;
}
.modal.fade .modal-dialog {
    transition-property: opacity;
    transform: translate(0);
}


/**  **/

.error {
    color: #ff0000;
}

.fw30 {
    width: 30px !important;
}
.fw50 {
    width: 50px !important;
}
.fw70 {
    width: 70px !important;
}
.fw80 {
    width: 80px !important;
}
.fw100 {
    width: 100px !important;
}
.fw110 {
    width: 110px !important;
}
.fw120 {
    width: 120px !important;
}
.fw130 {
    width: 130px !important;
}

.fw150 {
    width: 150px !important;
}
.fw200 {
    width: 200px !important;
}
.fw400 {
    width: 400px !important;
}

/*
.w-80per {
    width: 80% !important;
}
*/

.err_txt {
    padding: 0 0 0 3px;
    color: #232323;
    background: #ffcdd5;
    border-left: solid 10px #ff000e;
}
.text-hissu {
    color: #ff0000;
}
.mr30 {
    margin-right: 30px;
}
.ps-row {
    padding-left: 12px;
}
p.clearfix {
    clear:both;
}

.textarea_pack {
    width:800px;
    height:100px;
}
.textarea_single {
    width:98%;
    height:80px;
}
button.button2 {
    font-size: 1.4em;
    font-weight: normal;
    width: 200px;
    padding: 10px 30px;
}
button.button3 {
    font-size: 1.4em;
    font-weight: normal;
    width: 300px;
    padding: 10px 30px;
}

.row > label {
    white-space: nowrap !important;
}

.invalid-feedback {
    display: inherit;
}

/* カルテ */
#kartedtl thead th {
    position: -webkit-sticky;
    position: sticky;
    z-index: 100;
    border:none;
    padding-top: 0;
    padding-bottom: 0.25rem;

}
#kartedtl th {
    vertical-align: middle;
    background: #eeeeee !important;
    border-spacing:0;
}
#kartedtl thead tr:nth-child(1) th {
    top: 0;
}

#kartedtl tr.important {
    background-color: #ffcccc !important;
}

/* 支援内容記録 */
#supportrecorddtl thead th {
    position: -webkit-sticky;
    position: sticky;
    z-index: 100;
    border:none;
    padding-top: 0;
    padding-bottom: 0.25rem;

}
#supportrecorddtl th {
    vertical-align: middle;
    background: #eeeeee !important;
    border-spacing:0;
}
#supportrecorddtl thead tr:nth-child(1) th {
    top: 0;
}


/* 業務日誌 */

.reservetbl td {
    padding: 0.4rem 0.5rem !important;
}
.reservetbl [type=button] {
    padding: 0.15rem 0.5rem !important;
}
tr.clickable:hover td {
    background: #ecf2fa !important;
    cursor: pointer;
}

#reservedtl table {
    //border-collapse: separate;
    //border-spacing:0;
}
#reservedtl thead {

}
#reservedtl thead th {
    position: -webkit-sticky;
    position: sticky;
    z-index: 100;
//    border-bottom: 1px #eeeeee solid !important;
    border:none;
    padding-top: 0;
    padding-bottom: 0;

}
#reservedtl thead tr:nth-child(1) th {
    top: 0;
}
#reservedtl thead tr:nth-child(2) th {
    top: 1.2rem; /* 2行目は1行目の高さの位置に固定する */
}
#reservedtl th, #reservedtl td {
    padding: 0.2rem;
}
#reservedtl tbody {
}
#reservedtl th {
    font-weight: normal;
    vertical-align: middle;
    background: #eeeeee !important;
    border-spacing:0;
}
#reservedtl td {
    text-align: center;
    min-width: 30px;
    background-color: #FFFFFF;
    border: 1px #eeeeee solid !important;
    z-index: 2;

}
#reservedtl td:nth-child(3) {
    width:1.5rem;
}
#reservedtl th.seterm {
    min-width: 170px;
}
#reservedtl input[readonly] {
    background: #ffffff;
}
#reservedtl .is-invalid {
    padding-right: 4px;
    background-image: none;
}
#reservedtl tr:hover td {
    background-color: #d9efff;
}
#reservedtl tr.separate {
    border-bottom: #cccccc 2px solid;
}

/**** ****/

.arrow-circle {
    display: inline-block;
    width: 1.8rem;
    height: 1.8rem;
    text-align:center;
    line-height: 1.8rem;
}
.arrow-circle:hover {
    border-radius: 50%;
    background-color: #f9f9f9;
}

/** 各種帳票 **/

.frame-report {
    position: relative;
    margin: 2em auto;
    width: 100%;
    padding: 0.5em 1em;
    border: 2px solid #666;
    border-radius: 4px;
}
.frame-report .frame-report-title {
    position: absolute;
    display: inline-block;
    top: -0.4rem;
    left: 10px;
    padding: 0 5px;
    line-height: 1;
    //font-size: 18px;
    background: #eeeeee;
    color: #666;
    font-weight: bold;
}
.frame-report p {
    padding: 10px 15px 5px 15px;
    margin: 0;
}
.frame-report button {
    min-width: 100%;
    min-height: 3rem;
    font-size: 0.8rem;
    border-radius: 0.3rem;
    clear: both;
    margin: 2px auto;
}
.frame-report .button-print {
    color: #008040;
}
.frame-report .button-csv {
    color: #AA0000;
}
.frame-report button:hover {
    background: #dddddd;
}

/**** ****/

.sys-info td {
    padding: 0.75rem 0.75rem;
}
.sys-info td:first-child {
    vertical-align: top;
    width: 180px;
}

/**** ****/

.cal-sat {
    color: #0000ff;
}
.cal-ph,
.cal-sun {
    color: #FF0000;
}
.cal-ssh {
    background-color: #f1f1f1 !important;
}