/*---------------------------------------------
		common CSS
---------------------------------------------*/
html {
	width: 100%;
	height: 100%;
	font-size: 14px;
}

body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	font-family: 'Kaisei Opti', serif;
	font-size: 20px;
}
a{
	color: #1b1f82;
	text-decoration: none;
}
a:link {
	font-weight: normal;
}
h3 {
	text-align: center;
}
i.fa-file-pdf {
	font-size: large;
	color: #DD0000;
}
/*---------------------------------------------
		common class
---------------------------------------------*/
.error,
.errmsg {
	color: #E00;
}
/*---------------------------------------------
		wraper (header & contents)
---------------------------------------------*/
#wrap {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	/* Negative indent footer by it's height */
	margin: 0 auto -50px;	/* マイナスマージンはフッターの高さ */
}
/*---------------------------------------------
		ヘッダー
---------------------------------------------*/
#header {
	width: 100%;
	border-bottom: dotted 4px #777777;
}
#header table {
	width: 100%;
}
#header td#logo img {
	width: 150px;
}
#header ul {
	margin: 1em auto 0;
	padding: 0;
	width: 80%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	list-style: none;
}
#header li {
	display: block;
}
/*---------------------------------------------
		コンテンツ
---------------------------------------------*/
#contents {
	clear: both;
	box-sizing: border-box;
	padding: 10px 10px 10px 10px;
	margin: 0 auto;
	width: 100%;
	max-width: 1220px;
	overflow: hidden;
}
.nmlmsg {
	width: 100%;
	text-align: center;
	color: #000;
}
#errmsg {
	width: 100%;
	text-align: center;
	color: #e00;
}
/*---------------------------------------------
		フッター
---------------------------------------------*/
#push {
	height: 100px;
}
#Footer {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 100px;
	font-size:medium;
	text-align: center;
	color: #ffffff;
	background-color: #555555;
	overflow: hidden;
}
#Footer a {
	color: #ffffff;
}
#Footer ul {
	margin: 1em auto 0;
	width: 80%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	list-style: none;
}
#Footer li {
	display: block;
}
/*---------------------------------------------
		フォーム部品
---------------------------------------------*/
form.input th {
	white-space: nowrap;
}
form.noborder {
	margin: 0;
	border: 0px;
}
form.noborder th {
	white-space: nowrap;
}
input:disabled {
	color: #aaa;
}
select,
input[type="text"],
input,
textarea {
	padding: 0;
	font-size: 16px;
	line-height: 2em;
	box-sizing: border-box;
}
textarea {
	width: 100%;
}
select {
	height: 2.5em;
}
select:focus,
input:focus,
textarea:focus {
	background: #ffe9e8;
	outline: none;
}
::selection {
	color: #ffffff;
	background: #005244;
}
::-moz-selection {
	color: #ffffff;
	background: #005244;
}
select {
	height: 2em;
	display: inline-block;
	vertical-align: top;
}
/* ボタン*/
input[type="reset"],
input[type="submit"],
input[type="button"],
button {
	color: #ffffff;
	padding: 0.1em 1em;
	font-size: 15px;
	font-weight: bold;
	white-space: nowrap;
	background: #00a900;
	border: 0;
	border-radius: 0.4em;
}
input[type="submit"]:hover,
input[type="button"]:hover,
button:hover  {
	background: #3b3fa2;
}
input[type="button"]:disabled,
button:disabled  {
	color: #f7f7f7;
	background: #8c8c8c;
}
#btnEnter {
	background: #00a900;
}
#btnCancel {
	background: #e40011;
	background: #4a4cad;
}
#btnCancel:hover {
	background: #f42031;
}
input.btnNotice {
	background: #e14e77;
	border: 2px solid #e14e77;
	border-color: #ec90aa #a43e59 #813548 #e67092;
	min-width: 120px;
	height: 28px;
}
input.btnNotuse {
	background: #cccccc;
	border: 2px solid #ccccc;
	border-color: #eeeeee #f7f7f7 #aaaaaa #f7f7f7;
	min-width: 120px;
	height: 28px;
	color: #777777;
}

/* CKEDITOR */
a.cke_dialog_ui_button_ok {
	color: #fff!important;
	background: #1a2380!important;
	border: 1px solid #1a2380!important;
}
/* ドラッグボタン */
.dragdealer {
	position: relative;
	width: 480px;
	height: 20px;
	text-align: center;
	background: #EEE;
}
.dragdealer:after {
	content: "スライドして時間を指定";
}
.dragdealer .handle {
	position: absolute;
	top: 0;
	left: 0;
	cursor: pointer;
}
/* タイムスライダー */
.dragdealer .time {
	width: 100px;
	height: 1.6em;;
	background: #1b1f82;
	border: 0;
	color: #ffffff;
	line-height: 1.6em;
	text-align: center;
}
.dragdealer .time::before {
	content: '◀';
}
.dragdealer .time::after {
	content: '▶';
}
.dragdealer .time:hover {
	background: #3b3fa2;
}
.dragdealer .time:active {
	background: #3b3ff2;
}
.dragdealer .disabled {
	background: #898989;
}

/* 画像アップロードボタン */
.file {
	display: inline-block;
	overflow: hidden;
	position: relative;
	min-width: 100px;
	height: 20px;
	text-align: center;
	background-color: #666666;
	border-radius: 0.4rem;
	border: 0;
	padding: 2px 10px;
	color: #fff;
}
.file input[type="file"] {
	opacity: 0;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
	position: absolute;
	right: 0;
	top: 0;
	margin: 0;
	cursor: pointer;
}
#img_src {
	margin: 0 auto;
}
/* アップロードプログレスバー */
#progress_frame {
	position: absolute;
	height:30px;
	border: 2px solid #6666aa;
}
#progress_bar {
	background-color: #6666aa;
	line-height: 30px;
	color: #ffffff;
	text-align: center;
}
/*---------------------------------------------
		ダウンロードボタン
---------------------------------------------*/
.DLbtn {
	padding: 0 5px;
	background-color: #666666;
	border: 0;
}
.DLbtn:hover {
	color: #ffffff;
	background-color: #666666;
}
/*---------------------------------------------
		フィルタ―ボタン
---------------------------------------------*/
#filter_btn {
	margin: 10px auto 15px;
	text-align: center;
}
#filter_btn ul {
	display: inline-block;
	list-style: none;
	margin: 0;
	padding-left: 0;
}
#filter_btn li {
	float: left;
}
#filter_btn li button {
	min-width: 100px;
}

/*---------------------------------------------
		ユーザーログイン
---------------------------------------------*/
.sns_login {
	margin-bottom: 10px;
	padding: 5px;
	background: #F5F1E9;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}
.sns_login table {
	border-collapse: collapse !important;
	border-spacing: 0 !important;
}
.sns_login td {
	min-width: 1em;
	white-space: nowrap;
	padding: 0 !important;
	vertival-align: middle;
}
.sns_login tr:first-child td:first-child {
	font-weight: bold;
}
.sns_login tr:first-child td:nth-child(4) {
	width: 100%;
	text-align: right;
}
.sns_login img {
	float: left;
	margin: 0 0.2em;
}
.sns_login ul {
	margin: 5px auto;
	list-style-type: none;
}
.sns_login li {
	float: left;
	margin: 0 0.4em;
}
/*---------------------------------------------
		一覧Table
---------------------------------------------*/
table.list {
	width: 100%;
	margin-bottom: 20px;
	border-collapse: collapse;
}
table.list button {
	min-width: 40px;
}
table.list th {
	white-space: nowrap;
	font-weight: bold;
	color: #ffffff;
	background-color: #555555;
	background-color: #aaaaaa;
	border-bottom: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
}
table.list td {
	padding: 0 5px;
	background-color: #eeeeee;
	border-bottom: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
}
table.list th:last-child,
table.list td:last-child {
	padding: 0;
	width: 62px;
}
table.list .ocel {	/* OpenChild用セル */
	width: 30px;
	text-align: center;
}
table.list tbody .ocel {	/* OpenChild用セル */
	vertical-align: top;
}
table.list input[type="reset"],
table.list input[type="submit"],
table.list input[type="button"],
table.list button {
	min-width: 30px;
}
table.list thead tr:first-child button {
	min-width: 62px;
}
table.list tr:nth-child(even) td {
	background: #dddddd;
}

table.list tfoot td {
	text-align: center;
	background-color: #555555;
	background-color: #aaaaaa;
}
tbody.sortable {
	cursor: move;
}
/*---------------------------------------------
		編集Table
---------------------------------------------*/
table.edit {
	width: 100%;
	border-collapse: collapse;
}
table.edit th,
table.edit td {
}
table.edit th {
	white-space: nowrap;
	text-align: right;
	vertical-align: top;
	font-weight: bold;
}
table.edit td {
}
table.edit th:first-child {
	width: 20%;
}

/*---------------------------------------------
		半幅Table
---------------------------------------------*/
table.narrow {
	margin: 0 auto;
	width: 50%;
	border-collapse: collapse;
}
table.narrow th,
table.narrow td {
	padding: 5px;
}
table.narrow th {
	white-space: nowrap;
	text-align: right;
	vertical-align: top;
	font-weight: bold;
	color: #ffffff;
	background-color: #555555;
	background-color: #aaaaaa;
	border-bottom: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
}
table.narrow td {
	background-color: #eeeeee;
	border-bottom: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
}
table.narrow th:first-child {
	width: 40%;
}

/*---------------------------------------------
		表左上ボタン枠
---------------------------------------------*/
#target_btn {
	box-sizing: border-box;
	margin: 20px 0;
	float: left;
	width: 50%;
	text-align: center;
}
#target_btn button {
	width: 80px;
}
/*---------------------------------------------
		表右上ボタン枠
---------------------------------------------*/
#search_btn {
	margin: 20px;
	float: left;
	width: 60%;
	text-align: center;
}
#search_btn {
	box-sizing: border-box;
	margin: 20px 0;
	width: 50%;
	float: left;
}
#search_btn input {
	box-sizing: border-box;
	margin: 0 0 0 20px;
	height: 28px;
	vertical-align: top;
	border-color: #3d3d66 #8585bb #a3a3cc #525288 ;
}

/*---------------------------------------------
		table cell valiation
---------------------------------------------*/
.cv_nopadding {
	padding: 0 !important;
}
.cv_prewrap {
	white-space: pre-wrap !important;
	overflow-wrap: break-word !important;
}
.cv_nowrap {
	white-space: nowrap !important;
}
.cv_odd {
	background-color: #fff !important;
}
.cv_evn {
	background-color: #ddd !important;
}
.cv_center {
	text-align: center !important;
}
.cv_right {
	text-align: right !important;
}
.cv_border_b {
	border-bottom: 1px !important;
}
.cv_vtop {
	display: inline-block;
	vertical-align: top !important;
}
.cv_vmiddle {
	display: inline-block;
	vertical-align: middle !important;
}
.cv_vbottom {
	display: inline-block !important;
	vertical-align: bottom !important;
}
.cv_datetime input {
	float: left !important;
}
.cv_datetime div {
	float: left !important;
}
.cv_datetime span {
	float: left !important;
}
.cv_datetime.dragdealer {
	width: 480px !important;
}
.cv_error {
	color: #cc0000 !important;
}
.cv_min {
	width: 10% !important;
}
.cv_max {
	width: 90% !important;
}