@charset "utf-8";

/* COMMON
---------------------------------------------------------------------------- */	
@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

body{
	font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 14px;
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	color:#333;
}
.mac body{
	font-size: 13px;
}
a{
	text-decoration:underline; 
	color: #2c6cd6;
	outline: none;
}
a:hover{ text-decoration: none; }
button,input{
    font-family:inherit;
}

/* l-wrap
---------------------------------------------------------------------------- */
.l-wrap{
    width:100%;
    top:50px;
    left: 0;
    right: 0;
    bottom: 0;
    position: fixed;
    overflow-y: scroll;
}

/* l-header
---------------------------------------------------------------------------- */
.l-header{
    width:100%;
    background-color:#3f5db3;
    height:50px;
    display:table;
}

/* LOGO */
.l-header-logo{
    vertical-align:middle;
    padding:5px 10px;
    font-size:18px;
    display:table-cell;
}
.l-header-logo a{
    vertical-align:middle;
    color:#fff;
    text-decoration:none;
    font-weight:bold;
}
.l-header-logo img{
    width:40px;
    height:auto;
    margin-right:10px;
    vertical-align:middle;
}

/* NAV */
.l-header-nav{
    display:table-cell;
}
.l-header-nav ul{
    float:right;
}
.l-header-nav ul li{
    display:inline-block;
    float:left;
    vertical-align:middle;
    border-left:1px solid #fff;
    position:relative;
}
.l-header-nav ul li:last-child{
}
.l-header-nav ul li a,
.l-header-nav ul li span,
.l-header-nav ul li button{
    color:#fff;
    font-weight:bold;
    display:block;
    text-decoration:none;
    border:none;
    background-color:transparent;
    width:120px;
    height:50px;
    text-align:center;
    vertical-align:middle;
    padding:15px 5px;
    -webkit-transition: all 0.1s ease;
    -moz-transition: all 0.1s ease;
    -o-transition: all 0.1s ease;
    transition: all  0.1s ease;
    cursor:pointer;
}
.l-header-nav ul li a:hover,
.l-header-nav ul li span:hover,
.l-header-nav ul li button:hover{
    background-color:#71A3D4;
}

/* Dropdown Nav */
.l-header-nav-sub{
    display:none;
    position:absolute;
    top:50px;
    left:0;
    background-color:#5b8ad2;
    z-index:9999;
}
.l-header-nav-sub li{
    border-left:none !important;
    border-bottom:1px solid #fff;
}
.l-header-nav-sub li a,
.l-header-nav-sub li button{
    font-weight:normal !important;
    text-align:left !important;
}
.l-header-nav-sub li:last-child{
    border-bottom:none !important;
}



/* l-main
---------------------------------------------------------------------------- */
.l-main{
    padding:8px 10px;
}

/* カラムレイアウト
---------------------------------------------------------------------------- */
.l-2col,
.l-3col,
.l-4col{
    width:100%;
    display:table;
}
.cols{
    display:table-cell;
    padding:0 5px;
    vertical-align:top;
}

/* ２カラム */
.l-2col .cols{
    width:50%;
    max-width:50%;
}

/* ３カラム */
.l-3col .cols{
    width:33%;
    max-width:33%;
}

/* ４カラム */
.l-3col .cols{
    width:25%;
    max-width:25%;
}

@media screen and (max-width:1000px){
    .cols{
        display:block !important;
        padding:0 10px;
    }
    /* ２カラム */
    .l-2col .cols{
        width:100%;
        max-width:100%;
    }
    /* ３カラム */
    .l-3col .cols{
        width:100%;
        max-width:100%;
    }
    /* ４カラム */
    .l-3col .cols{
        width:100%;
        max-width:100%;
    }
}

/* 入力欄 + 検索ボタンの幅指定
---------------------------------------------------------------------------- */
.l-input-justify{
    width: 15em;
    display: inline-block;
    vertical-align: top;
}

.l-input-justify-2col{
    vertical-align: top;
    width: 100%;
    display: table;
}

.l-input-justify-2col > div{
  display: table-cell;
}

/* 一覧ページ絞り込み
---------------------------------------------------------------------------- */
.l-search{
    width: 100%;
    display: table;
    line-height: 40px;
}

.l-btn-search{
    height:100%;
    width:160px;
    display:table-cell;
    vertical-align:middle;
    text-align:center;
}


/* 単位
---------------------------------------------------------------------------- */
.l-unit{
    margin:0 5px 5px;
    display: inline-block;
}

/* 非表示
---------------------------------------------------------------------------- */
.displayNone{
    display: none;
}

/* 操作行
---------------------------------------------------------------------------- */
.operate{
    align-items: center;
}


/* モーダル絞り込み
---------------------------------------------------------------------------- */
.dataTables_addfilter{
    margin: 5px;
    width: 600px;
}
.dataTables_filterStatus{
    margin: 5px;
    width: auto;
}
