@charset "UTF-8";

@media print {
 a[href]:after {
 content: "" !important;
 }
 
 abbr[title]:after {
 content: "" !important;
 }
}

/********************************************************************/



.datepicker{ width:100px; }


/********************************************************************/
/* エラーメッセージ類
/********************************************************************/
/* ERROR */
.error_msg, .err_msg{
	color: #ff0000;
	font-weight: bold;
	font-family: "Verdana", sans-serif;
	}

/* WARNING */
.warning_msg, .wrn_msg{
	color: #ff6600;
	font-weight: bold;
	font-family: "Verdana", sans-serif;
	}
/* CAUTION */
.caution_msg, .cau_msg{
	color: #ff6600;
	font-family: "Verdana", sans-serif;
	}
	
/* RESULT */
.normal_msg, .nrm_msg{
	color: #666666;
	font-family: "Verdana", sans-serif;
	text-align: center;
	}
/********************************************************************/

.err_box, .wrn_box, .nrm_box {
	border: 1px solid #ccc;
	margin: 10px;
	padding:10px 10px 10px 10px;
	font-weight:bold;
	font-family:"Verdana", sans-serif;
	border-radius:5px;
}
.nrm_box {
	color: #333333;
	background-color: #FEEFB3;
}
.wrn_box {
	color: #ff3300;
	background-color: #ffbb99;
}
.err_box {
	color: #cc0000;
	background-color: #ff9999;
}
/********************************************************************/
.white_box{
	border: 1px solid #ccc;
	margin: 10px;
	padding:10px 10px 10px 10px;
	border-radius:5px;

	background-color: #fff;
}



.simple_box {
	border: 1px solid #4ebadb;
	margin: 0px;
	padding:2px;
	font-weight:normal;
	font-family: Consolas, 'Courier New', Courier, Monaco, monospace;
	font-size:12px;
	line-height:1.2em;
	color: #000000;
	background-color: #eeffee;
}

/********************************************************************/
/* ログイン画面
/********************************************************************/
body#login{
  background:#fafafa;
}
img.logo{
	margin:150px auto 40px auto;

}
.loginBox{
	width:300px;
	margin:0 auto;
	border:1px solid #ddd;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.13);
	padding:15px 30px;
	text-align:left;
	color:#666;
}

.loginBox p{
	width:100%;
}

.loginBox input[type=text]{
	background:#fafafa;
	font-size: 24px;
    padding: 3px;
    width: 100%;
    border: 1px solid #ddd;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.07) inset;
    color: #333;
    box-sizing: border-box;
}

/********************************************************************/
/* 開発用 */
/********************************************************************/

.todo{
	border: 3px double;
	margin: 5px;
	padding:5px 5px 5px 5px;
	font-weight:bold;
	font-family:"Verdana", sans-serif;
	font-size:100%;
	color: #f00;
	background-color: #fff;
}

.todo:before{ content: "《ToDo》"; }

span.todo{
	border: 1px solid;
	margin: 0;
	padding:0;
	font-weight:normal;
	font-family:"Verdana", sans-serif;
	font-size:90%;
	color: #f00;
	background-color: #fff;
}
.debug {
	border: 1px solid;
	margin: 10px;
	padding:5px 5px 5px 5px;
	font-weight:normal;
	font-family: Consolas, 'Courier New', Courier, Monaco, monospace;
	line-height:1.2em;
	color: #20d820;
	background-color: #003300;
	text-shadow: none;
}
input[type=hiddenx]{ 
	color: #20d820;
	background-color: #003300;
	text-shadow: none;
}
/********************************************************************/
/* 汎用表示テーブル */
/********************************************************************/
table.pubTable{
	margin:0;
	padding:0;
	border-collapse:collapse;
	border:1px solid #C1C1C1;
	font-weight:normal;
}
table.pubTable caption{
	color:black;
	font-weight:bold;
	text-align:left;
	padding:3px;
	background: #ffffff;
}
table.pubTable th{
	margin:0 0 5px 0;
	padding:2px;
	border:1px solid #C1C1C1;
	background:#e6e6e6;
	color:#444444;
	font-weight:bold;
	font-size:12px;
	text-align:left;
	vertical-align:middle;
	line-height: 1.2em;
}
table.pubTable td{
	margin:0;
	padding:3px;
	font-size:12px;
	background:transparent;
	border:1px solid #C1C1C1;color:#333333;
	vertical-align:middle;
}


/********************************************************************/
/* レイアウトテーブル */
/********************************************************************/
table.hidTable{
	margin:0;
	padding:0;
	border-collapse:collapse;
	border:1px none;
	font-weight:normal;
}
table.hidTable th{
	margin:0 0 5px 0;
	padding:0 5px;
	border:1px none;
	background:#ECF5FA;
	color:#333333;
	font-weight:bold;
	text-align:left;
	vertical-align:middle;
}
table.hidTable td{
	margin:0;
	padding:3px;
	border:1px none;
	vertical-align:middle;
	line-height: 1.2em;
}

/********************************************************************/
/* 汎用表示テーブル(背景白固定)*/
/********************************************************************/
table.whiteTable{
	margin:0;
	padding:0;
	border-collapse:collapse;
	border:1px solid #C1C1C1;
	font-weight:normal;
}
table.whiteTable th{
	margin:0 0 5px 0;
	padding:2px 0 2px 5px;
	border:1px solid #C1C1C1;
	background:#eeffee;
	color:#444444;
	font-weight:bold;
	font-size:12px;
	text-align:left;
	vertical-align:middle;
}
table.whiteTable td{
	margin:0;
	padding:3px 3px 3px 3px;
	font-size:12px;
	border-left:1px solid #C1C1C1;border-bottom:1px solid #C1C1C1;color:#333333;
	background:transparent;
	vertical-align:middle;
	text-align:left;

}

table.whiteTable thead th {
	margin:3px;
	padding:3px;
	border:1px solid #C1C1C1;
	background:#5b9bd5;
	color:#fff;
	font-weight:bold;
	font-size:12px;
	text-align:left;
	vertical-align:middle;
}


/********************************************************************/
/* 汎用表示テーブル */
/********************************************************************/
table.printTable{
	margin:0;
	padding:0;
	border-collapse:collapse;
	border:1px solid black;
	font-weight:normal;
}
table.printTable caption{
	font-weight:bold;
	text-align:left;
	padding:3px;
	background: #e3e3e3;
}
table.printTable th{
	margin:0;
	padding:2px;
	border:1px solid black;
	background:#dfffdf;
	color:#444444;
	font-weight:bold;
	font-size:12px;
	text-align:left;
	vertical-align:middle;
}
table.printTable td{
	margin:0;
	padding:3px;
	font-size:12px;
	border-left:1px solid black;border-bottom:1px solid black;color:#333333;
	vertical-align:middle;
}

/********************************************************************/
/* flexbox
/********************************************************************/
.flex{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: flex-start;
}
/********************************************************************/
/* flexbox 等幅
/********************************************************************/
.flexb{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: flex-start;
    justify-content: space-between; 
}


/********************************************************************/
/* レスポンシブ対応flexbox
/********************************************************************/
.flexr {
	display: flex;
	flex-wrap: wrap;
	padding: 0.4em;
	margin: 0 0 2em;
}

.flexr > div {
	padding: 1em;
	flex: 1 0 200px;
	margin: 0.4em;
}
/********************************************************************/
/* メニュー用ボタン
/********************************************************************/
input.cb{
  font-size:15px;
  font-weight:bold;
  width:200px;
  height:60px;
}
/********************************************************************/
/* コマンド用ボタン
/********************************************************************/


input.cmd{
  font-size:15px;
  font-weight:bold;
  min-width:150px;
  height:30px;
}
input.cs{
  font-size:12px;
  height:25px;
}

input.btn01		{ width:auto; height:auto; color:#fff; background:#de8a4d; text-align:center; border-bottom:1px solid #bc5a21; cursor:pointer }
input.btn02		{ width:auto; height:auto; color:#fff; background:#afc88c; text-align:center; border-bottom:1px solid #7b9e4b; cursor:pointer }



.tc{ text-align:center !important;}
.tl{ text-align:left !important;}
.tr{ text-align:right !important;}

.tcn{ white-space:nowrap; text-align:center !important;}
.tln{ white-space:nowrap; text-align:left !important;}
.trn{ white-space:nowrap; text-align:right !important;}

.vt{ vertical-align:top		!important; }
.vm{ vertical-align:middle	!important; }
.vb{ vertical-align:bottom	!important; }

.maru {
	display: inline-block;
	text-align:center;
	border: solid 1px black;
	border-radius: 50%;
}
/********************************************************************/
/* リンクボタン
/********************************************************************/
a.xbtn {
   display: block; /* ★ブロック化 */
   margin: 0.1em; /* 外側の余白 */
   padding: 0.3em; /* 内側の余白 */
   width: 5em; /* 横幅 */
   float: left; /* 続く内容を右側に */
   text-decoration: none; /* 下線を消す */
   text-align:center;
   
   background-color: #ffffcc; /* ★背景色 */
   color: #000080; /* 文字色 */
   border-width: 2px; /* ★枠線の太さ */
   border-style: outset; /* ★凸型に見えるように */
   border-color: #ffff55; /* ★枠線のベース色 */
}
a.xbtn:hover {
   background-color: #ffffaa; /* ★背景色 */
   color: red; /* 文字色 */
   border-style: inset; /* ★凹型に見えるように */
   text-decoration: underline; /* 下線を引く */
}


/********************************************************************/
/* 点滅
/********************************************************************/
.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}

.mfline{
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.attention{
	border: 1px solid #ccc;
	margin : 3px;
    padding: 2px 5px;
	color:white;
	background:#ff3333;
}
.attention:hover {
   background-color: #aa0000;
   color: white;
}
/********************************************************************/
/* レスポンシブテーブル
/********************************************************************/
@media only screen and (max-width: 600px) {
	.resp01 {
	  border-collapse: collapse;
	  width: 100%;
	}
	 
	.resp01 tr {
	  border-bottom: none;  
	}
	.resp01 tr:first-child {
	  border-top: none;  
	}
	 
	.resp01 th,
	.resp01 td {
	 /* padding: 8px 0; */
	}
	 
	.resp01 th {
	  text-align: left;
	  width: 120px;
	}
	 
	/*.resp01 input[type='text'],
	.resp01 textarea {
	  width: 50%;
	}
	.resp01 textarea {
	  height: 100px;
	}*/
 
	.resp01 tr,
	.resp01 th,
	.resp01 td {
		display: block;
		width: auto !important;
	}
	  
	.resp01 th {
	    padding-bottom: 0;
	}
	  
	.resp01 input[type='text'],
	.resp01 textarea {
	    width: 100%;
	}
}

/********************************************************************/
/* ログイン画面
/********************************************************************/
body#login{
  background:#fafafa;
}
img.logo{
	margin:150px auto 40px auto;

}
.loginBox{
	width:300px;
	margin:0 auto;
	border:1px solid #ddd;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.13);
	padding:15px 30px;
	text-align:left;
	color:#666;
}

.loginBox p{
	width:100%;
}

.loginBox input[type=text]{
	background:#fafafa;
	font-size: 24px;
    padding: 3px;
    width: 100%;
    border: 1px solid #ddd;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.07) inset;
    color: #333;
    box-sizing: border-box;
}

.loginBox input[type=password]{
	background:#fafafa;
	font-size: 24px;
    padding: 3px;
    width: 100%;
    border: 1px solid #ddd;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.07) inset;
    color: #333;
    box-sizing: border-box;
}
@media screen and (min-width: 768px){
.br-sp {display: none; }
}

/*** 打消し線 ***/
.line_through {
    background-image: linear-gradient(#fe3464, #fe3464);
    background-position: 0 55%;
    background-size: 100% 4px;
    background-repeat: repeat-x;
    color: #c0c0c0;
    margin: 0 0.4em;
    text-decoration: none;
    opacity: 0.5;
    
    
.tategaki{
	-webkit-writing-mode: vertical-rl;
	      -ms-writing-mode: tb-rl;
	          writing-mode: vertical-rl;
}
