@charset "utf-8";
/* html5のブラウザ互換用
----------------------------------------------------------- */

@import url("reset.css");
/* リセット及びbody基本設定
----------------------------------------------------------- */

/* 印刷禁止 */
@media print {
    body { display: none }
}
/*===============
 base
=================*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, input, p, blockquote, th, td {
    margin: 0;
    padding: 0;
}
img {
    border: 0;
    vertical-align: top;
}
p {
    word-break: break-all
}
a:link, a:visited, a:active {
    color: #0972ae;
    text-decoration: none;
}
a:hover {
    color: #00306d;
    text-decoration: none;
}
a[disabled] {
    pointer-events: none; /* マウスイベントの無効化 */
    opacity: 0.5; /* 操作できない感のあるスタイル付け */
}
.visibility {
    visibility: hidden;
}
body {
    font-size: 12px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #333;
    line-height: 1.4em;
    background-color: #FFF;
}
section {
    margin-right: 0;
    margin-bottom: 20px;
    margin-left: 0;
}
section:after {
    content: ".";
    display: block;
    visibility: hidden;
    height: 0.1px;
    font-size: 0.1em;
    line-height: 0;
    clear: both;
}
img {
    max-width: 100%;
    height: auto;
}
ul li {
    list-style: none
}
header,
.sub_header {
    padding: 15px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #CCC;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    box-sizing: border-box;
    align-items: center;
}
.space_between {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    box-sizing: border-box;
    align-items: center;
}
#logo {
    background-image: url(../images/logo.png);
    background-size: contain;
    background-repeat: no-repeat;
    text-indent: -99999em;
    height: 30px;
    width: 250px;
}
.header_contents li {
    margin-left: 20px;
    display: list-item;
}
.admin {
    text-align: right;
    padding: 10px;
    padding-bottom: 0;
}
.sub_header .company_name {
    color: #333333;
    text-decoration: underline;
}
.sub_header .link_btn a {
    padding: 7px;
}
.sideNavi {
    width: 15%;
    float: left;
    background-color:#FFF;
    border-right: 1px solid #CCCCCC;
    border-left: 1px solid #CCCCCC;
    height: 100vh;
    box-sizing: border-box;
    padding-bottom: 60px;
    overflow-y: hidden;
}
.sideNavi:hover {
    overflow-y: scroll;
}
.sideNavi li {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #CCC;
    font-size: 12px;
}
.sideNavi li a {
    display: block;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-left: 15px;
    color: #333333;
    padding-right: 20px;
    background-color: #FFFFFF;
}
.sideNavi li a:hover,
.sideNavi li .active {
    background-color: #E6E6E6;
    text-decoration: none;
}
.mainBox {
    min-height: 880px;
    padding-bottom: 20px;
    box-sizing: border-box;
}
.fixBox {
    position: fixed;
    top: 0px;
    left: 0px;
    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #CCC;
    height: 100%;
}
#back-top {
    position: fixed;
    bottom: 45px;
    right: 40px;
}
#back-top a {
    display: block;
    text-align: center;
}
#back-top img {
    width: 40px;
}
body.scrollbar_y {
    overflow-y: scroll;
}
.list{
  height: 50px;
  overflow: hidden;
}
.clear {
    clear: both
}
.float_r {
    float: right
}
.float_l {
    float: left
}
.txt_c {
    text-align: center
}
.txt_l {
    text-align: left
}
.txt_r {
    text-align: right
}
.gr_line {
    border-bottom-width: 2px;
    border-bottom-style: solid;
    border-bottom-color: #007946;
}
.relative {
    position: relative;
}
.flex {
    display: flex;
    justify-content: center;
}
.flex_box {
    display: flex;
    flex-wrap: wrap;
}
.flex_range {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
}
.flex_range p {
    width: 45%;
}
.flex_range span {
    margin-right: 10px;
}
.al_item_c {
    align-items: center;
}

.link_white,
.link_gray,
.link_btn {
    width: 100px;
    text-align: center;
}

.link_white a {
    display: block;
    padding-top: 8px;
    padding-bottom: 8px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    border: 1px solid #ffffff;
    color: #070707;
    background-color: #d7d7d7;
}
.link_white a:hover {
    background-color: #757575;
    color: #ffffff;
}
.link_gray a {
    display: block;
    padding-top: 8px;
    padding-bottom: 8px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    border: 1px solid #959595;
    color: #FFF;
    background-color: #959595;
}
.link_gray a:hover {
    border: 1px solid #959595;
    color: #959595;
    background-color: #FFF;
}
.logout_btn a {
    padding: 4px 0;
}
.link_btn a{
    display:block;
    color: #333;
    background-color: #FFF;
    text-align: center;
    padding: 10px;
    border: 1px solid #CCC;
    border-radius: 5px;
}
.link_btn a:hover{
    background-color: #F2F2F2;
    text-decoration:none;
}
.aclink_btn a:hover {
    background-color: #005e9b;
    text-decoration: none !important;
}
.link_btn.light_gray a {
    background-color: #F2F2F2;
    border: 1px solid #CCCCCC;
}
.link_btn.light_gray a:hover {
    background-color: #FFFFFF;
    color: #333333;
}
.link_btn.light_blue a {
    background-color: #5CB9E5;
    border: 1px solid #5CB9E5;
    color: #FFFFFF;
}
.link_btn.light_blue a:hover {
    background-color: #FFFFFF;
    color: #5CB9E5;
}

table {
    width: 100%;
}
.table01 th, .table01 td {
    border: 1px solid #ccc;
    padding: 10px;
    box-sizing: border-box;
}
.table01 td {
    vertical-align: middle;
    text-align: left;
}
.table01 th {
    background-color: #F0F0F0;
    vertical-align: middle;
    text-align: left;
}
table.one-line {
    border-collapse: collapse;
}
.table02 th, .table02 td {
    border: 1px solid #ccc;
    padding: 10px;
    box-sizing: border-box;
}
.table02 td {
    vertical-align: middle;
    width: 30%;
}
.table02 th {
    background-color: #F0F0F0;
    vertical-align: middle;
    text-align: left;
    width: 20%;
}
.nontable td {
    padding: 10px;
}

.table03 th {
    background-color: #F0F0F0;
    vertical-align: middle;
    width:20%;
    text-align:left;
}
.table03 td {
    vertical-align: middle;
    text-align: left;
    vertical-align:middle;
}
.table03 th   {
    border: 1px solid #CCCCCC;
    padding: 10px;
}
.table03{
    border: 1px solid #CCCCCC;
}
.th_white th {
    background-color: #FFFFFF;
}
.table_th_c th {
    text-align: center;
}
.table_th_r th {
    text-align: right;
}
.table_2cell td {
    width: 80%;
}
nav#breadcrumbs {
    background-color: #EFEFEF;
    padding: 10px;
}
nav#breadcrumbs a {
    color: #069;
    text-decoration: underline;
}
nav#breadcrumbs a:hover {
    text-decoration: none;
}
nav#breadcrumbs ol li {
    display: inline;
    list-style-type: none;
    font-size: 90%;
}
nav#breadcrumbs ol li:before {
    content: " > ";
}
nav#breadcrumbs ol li:first-child:before {
    content: "";
}
/* Font Size
----------------------------------------------- */
.fs08 {
    font-size: 50%;
}
.fs09 {
    font-size: 60%;
}
.fs10 {
    font-size: 77%;
}
.fs11 {
    font-size: 88%;
}
.fs12 {
    font-size: 93%;
}
.fs13 {
    font-size: 100%;
}
.fs14 {
    font-size: 108%;
}
.fs15 {
    font-size: 116%;
}
.fs16 {
    font-size: 123.1%;
}
.fs17 {
    font-size: 131%;
}
.fs18 {
    font-size: 138.5%;
}
.fs19 {
    font-size: 146.5%;
}
.fs20 {
    font-size: 153.9%;
}
.fs21 {
    font-size: 161.6%;
}
.fs22 {
    font-size: 167%;
}
.fs23 {
    font-size: 174%;
}
.fs24 {
    font-size: 178%;
}
.fs25 {
    font-size: 189%;
}
.fs26 {
    font-size: 200%;
}
.fw_bold {
    font-weight: bold;
}
/* Font Color
----------------------------------------------- */
.font-wh {
    color: #FFFFFF;
}
.font-rd {
    color: #C00;
}
.font-or {
    color: #F60;
}
.font-gr {
    color: #006E42;
}
.font-brown {
    color: #9D6600;
}
.font-bl {
    color: #00306D;
}
.font-pink {
    color: #D45477;
}
.black a {
    color: #333333;
    text-decoration: none;
}
/* Margin
----------------------------------------------- */
.m10 {
    margin: 10px
}
.m30 {
    margin: 30px;
}
/* margin-top */
.mt00 {
    margin-top: 0px;
}
.mt02 {
    margin-top: 2px;
}
.mt03 {
    margin-top: 3px;
}
.mt05 {
    margin-top: 5px;
}
.mt10 {
    margin-top: 10px;
}
.mt15 {
    margin-top: 15px;
}
.mt20 {
    margin-top: 20px;
}
.mt25 {
    margin-top: 25px;
}
.mt30 {
    margin-top: 30px;
}
.mt35 {
    margin-top: 35px;
}
.mt40 {
    margin-top: 40px;
}
.mt45 {
    margin-top: 45px;
}
.mt50 {
    margin-top: 50px;
}
.mt55 {
    margin-top: 55px;
}
.mt60 {
    margin-top: 60px;
}
.mt70 {
    margin-top: 70px;
}
.mt80 {
    margin-top: 80px;
}
.mt90 {
    margin-top: 90px;
}
.mt100 {
    margin-top: 100px;
}
.mt120 {
    margin-top: 120px;
}
.mt150 {
    margin-top: 150px;
}
.mt200 {
    margin-top: 200px;
}
.mt350 {
    margin-top: 350px;
}
.mt400 {
    margin-top: 400px;
}
/* margin-right */
.mr00 {
    margin-right: 0px;
}
.mr02 {
    margin-right: 2px;
}
.mr03 {
    margin-right: 3px;
}
.mr05 {
    margin-right: 5px;
}
.mr10 {
    margin-right: 10px;
}
.mr15 {
    margin-right: 15px;
}
.mr18 {
    margin-right: 18px;
}
.mr20 {
    margin-right: 20px;
}
.mr25 {
    margin-right: 25px;
}
.mr30 {
    margin-right: 30px;
}
.mr35 {
    margin-right: 35px;
}
.mr40 {
    margin-right: 40px;
}
.mr45 {
    margin-right: 45px;
}
.mr50 {
    margin-right: 50px;
}
.mr55 {
    margin-right: 55px;
}
.mr60 {
    margin-right: 60px;
}
.mr70 {
    margin-right: 70px;
}
.mr80 {
    margin-right: 80px;
}
.mr90 {
    margin-right: 90px;
}
.mr100 {
    margin-right: 100px;
}
/* margin-bottom */
.mb00 {
    margin-bottom: 0px;
}
.mb02 {
    margin-bottom: 2px;
}
.mb05 {
    margin-bottom: 5px;
}
.mb10 {
    margin-bottom: 10px;
}
.mb15 {
    margin-bottom: 15px;
}
.mb20 {
    margin-bottom: 20px;
}
.mb25 {
    margin-bottom: 25px;
}
.mb30 {
    margin-bottom: 30px;
}
.mb35 {
    margin-bottom: 35px;
}
.mb40 {
    margin-bottom: 40px;
}
.mb45 {
    margin-bottom: 45px;
}
.mb50 {
    margin-bottom: 50px;
}
.mb55 {
    margin-bottom: 55px;
}
.mb60 {
    margin-bottom: 60px;
}
.mb100 {
    margin-bottom: 100px;
}
/* margin-left */
.ml00 {
    margin-left: 0px;
}
.ml02 {
    margin-left: 2px;
}
.ml05 {
    margin-left: 5px;
}
.ml10 {
    margin-left: 10px;
}
.ml15 {
    margin-left: 15px;
}
.ml20 {
    margin-left: 20px;
}
.ml25 {
    margin-left: 25px;
}
.ml30 {
    margin-left: 30px;
}
.ml35 {
    margin-left: 35px;
}
.ml40 {
    margin-left: 40px;
}
.ml45 {
    margin-left: 45px;
}
.ml50 {
    margin-left: 50px;
}
.ml55 {
    margin-left: 55px;
}
.ml60 {
    margin-left: 60px;
}
.ml70 {
    margin-left: 70px;
}
.ml80 {
    margin-left: 80px;
}
.ml90 {
    margin-left: 60px;
}
.ml100 {
    margin-left: 100px;
}
.ml180 {
    margin-left: 180px;
}
.ml290 {
    margin-left: 290px;
}
.ml300 {
    margin-left: 300px;
}
/* Padding
----------------------------------------------- */
.pd05 {
    padding: 5px;
}
.pd10 {
    padding: 10px;
}
/* padding-top */
.pt05 {
    padding-top: 5px;
}
.pt10 {
    padding-top: 10px;
}
.pt20 {
    padding-top: 20px;
}
.pt30 {
    padding-top: 30px;
}
.pt40 {
    padding-top: 40px;
}
.pt50 {
    padding-top: 50px;
}
.pt70 {
    padding-top: 70px;
}
.pt75 {
    padding-top: 75px;
}
.pt80 {
    padding-top: 80px;
}
/* padding-left */
.pl03 {
    padding-left: 3px;
}
.pl10 {
    padding-left: 10px;
}
.pl30 {
    padding-left: 30px;
}
/* padding-right */
.pr10 {
    padding-right: 10px;
}
.pr30 {
    padding-right: 30px;
}
/* padding-bottom */
.pb05 {
    padding-bottom: 5px;
}
.pb10 {
    padding-bottom: 10px;
}
.pb30 {
    padding-bottom: 30px;
}
/* Width
----------------------------------------------- */
.wd10 {
    width: 10%;
}
.wd15 {
    width: 15%;
}
.wd20 {
    width: 20%
}
.wd25 {
    width: 25%
}
.wd30 {
    width: 30%
}
.wd40 {
    width: 40%
}
.wd45 {
    width: 45%;
}
.wd48 {
    width: 48%
}
.wd50 {
    width: 50%
}
.wd55 {
    width: 55%;
}
.wd60 {
    width: 60%
}
.wd70 {
    width: 70%
}
.wd80 {
    width: 80%
}
.wd90 {
    width: 90%
}
.wd100 {
    width: 100%
}
/* Height
----------------------------------------------- */
.hg40 {
    height: 40px;
}
.hg50 {
    height: 50%;
}
.hg60 {
    height: 60px;
}
.hg100 {
    height: 100%;
}
/* Background
----------------------------------------------- */
.bg-grey01 {
    background-color: #7D7D7D;
    color: #FFFFFF;
    padding-right: 5px;
    padding-left: 5px;
}
.bg-grey02 {
    background-color: #F2F1EC
}
.bg_beige {
    background-color: #EFEEEB;
    padding-top: 10px;
    padding-bottom: 5px;
}
.bk-sotodan {
    background-color: #F6EFED;
}
.bk-power {
    background-color: #DAE1E7;
}
.bk-plan {
    background-color: #FFFBF8;
}
.bk-layerd {
    background-color: #1C1916;
}
.bk-ylw {
    background-color: #FFFFDF;
}
.bg_white{ 
    background: #FFFFFF;
    padding: 10px;
}
/* Border
----------------------------------------------- */
.bd01s {
    border: 1px solid #CCCCCC;
    padding: 10px;
}
.bd01sc {
    border: 1px solid #CCCCCC;
}
.bd01sr {
    border: 1px solid #CC0000;
}
.bd-bt01s {
    border-bottom: 1px solid #CCCCCC;
    padding-top: 5px;
    padding-bottom: 10px;
}
.bd-bt03s {
    border-bottom: 3px solid #006633;
}
.bd-tp01s {
    border-top: 1px solid #CCCCCC;
}
.bd-l01dt {
    border-left: 1px dotted #CCCCCC;
}
.bd-r01dt {
    border-right: 1px dotted #CCCCCC;
}
.bd-b01dt {
    border-bottom: 1px dotted #CCCCCC;
}
.bd-t01dt {
    border-top: 1px dotted #CCCCCC;
}
/* Hover
----------------------------------------------- */
.hv a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
}

input[type="email"], input[type="text"], input[type="number"], input[type="tel"], input[type="search"], input[type="url"], input[type="password"], textarea {
    padding: 6px 10px;
    background: #FFFFFF;
    border: 1px solid #DDDDDD;
    border-radius: 4px;
    box-sizing: border-box;
    font-size: 12px;
}
#client_input {
    margin-top: 30px;
}
input[type="radio"], input[type="checkbox"] {
    display: none;
}
input[type="radio"]+label {
    padding: 3px 0 3px 30px;
    background: url(../images/radiooff.png) no-repeat left center;
    background-size: 27px 27px;
    cursor: pointer;
}
input[type="radio"]:checked+label {
    background: url(../images/radioon.png) no-repeat left center;
    background-size: 27px 27px;
    cursor: pointer;
}
input[type="checkbox"]+label {
    padding: 3px 0 3px 30px;
    background: url(../images/unchecked.png) no-repeat left center;
    background-size: 27px 27px;
    cursor: pointer;
}
input[type="checkbox"]:checked+label {
    background: url(../images/checked.png) no-repeat left center;
    background-size: 27px 27px;
    cursor: pointer;
}
.title,
.title_line {
    font-size: 20px;
    font-weight: bold;
    margin-top: 10px;
    margin-bottom: 20px;
    position: relative;
    border-bottom: 3px solid #CCCCCC;
    padding: 0.5em;
}
.title::after,
.title_line::after {
    position: absolute;
    bottom: -3px;
    left: 0;
    content: '';
    width: 10%;
    border-bottom-width: 3px;
    border-bottom-style: solid;
    border-bottom-color: #666666;
}
.title_contents {
    position: relative;
}
.title_contents .view_count {
    position: absolute;
    top: 15px;
    left: 220px;
}
.nav_tit {
    font-size: 14px;
    font-weight: bold;
    padding-top: 20px;
    padding-right: 25px;
    padding-bottom: 20px;
    padding-left: 15px;
    border-bottom-width: 3px;
    border-bottom-style: solid;
    border-bottom-color: #666666;
}
.pager {
    font-size: 14px;
    text-align: right;
}
/* 左メニュー SVユーザのみ表示するように制御 */
.sv_only {
    display: none;
}
.super_visor .sv_only {
    display: block;
}
/* Calendar
----------------------------------------------- */
table.ui-datepicker-calendar thead th:first-child span{
    color: #F00;
}
table.ui-datepicker-calendar tbody td:first-child a.ui-state-default{
    color: #F00;
    background-color: #FCC;
}
table.ui-datepicker-calendar thead th:last-child span{
    color: #00F;
}
table.ui-datepicker-calendar tbody td:last-child a.ui-state-default {
    color: #00F;
    background-color: #CCF;
}
