
* {
	margin:0;
	padding:0;
	font-size: 12px;
}

body {
	font-family: Verdana, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	text-align: center;
	color: #000;
	background-color: #FFF;
}

/* General Style Info */

a {
	color:#003d4c;
	text-decoration:underline;
}

a:hover {
	color:#003d4c;
	text-decoration:none;
}

a img { border:none; }

h1, h2, h3, h4 { font-weight:bold; }

h1 {
	color: #003d4c;
	margin:0 0 0 8px;
	font-family: Helvetica Ultra Compressed, Helvetica, Verdana, Geneva, sans-serif;
	font-size: 16px;
	float:left;
	font-weight:bold;
	line-height:36px;
}
h1 a {
	font-size: 16px !important;
	font-weight: bold !important;
	text-decoration: none !important;
}

h2 {
	color:#c6c65b;
	padding-top: 12px;
	margin: 0;
	font-size: 120%;
}

h3 {
	color:#c6c65b;
	padding-top:2em;
	font-size: 140%;
}

h4 {
	color:#c6c65b;
	padding-top:0.5em;
	font-weight:normal;
}

em { font-size: 12px; }

ul, li { margin: 0 12px; }

.h0 { height:0; }
.db  { display:block; }
.tm8 { margin-top:8px; }
.tm16 { margin-top:16px; }
.bm4 { margin-bottom:4px; display:block; }
.bm8 { margin-bottom:8px; display:block; }
.bm12 { margin-bottom:12px; display:block; }
.bm16 { margin-bottom:16px; display:block; }
.bm24 { margin-bottom:24px; display:block; }
.bm32 { margin-bottom:32px; display:block; }
.bm48 { margin-bottom:48px; display:block; }

.vcenter {
	display:table-cell;
	vertical-align:middle;
	width:auto;
}
* html .vcenter {/* IE 6 */
	display:inline;
	zoom:1;
}
*:first-child+html .vcenter {/* IE 7 */
	display:inline;
	zoom:1;
}
.lir {
	display:block;
	background-repeat: no-repeat;
	overflow: hidden;
	height: 0 !important;
}
/* clearfix */
.cr:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.cr {
	display: inline-table;
	overflow:hidden; /* Dreamweaver */
}

/* Layout */

#container { text-align:left; }

#header {
	border-bottom:2px solid #0071be;
	height:36px;
	margin-top:8px;
	padding:0 0 0 12px;
}

#content {
	clear:both;
	padding:0 0 0 11px;
	background-color: #fff;
	color: #333;
}

#footer {
	clear:both;
	border-top:2px solid #0071be;
	padding:16px 12px;
	text-align: right;
}
#footer a { text-decoration:none; }

/* tables */

table {
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	color:#333;
	background-color: #fff;
	clear:both;
	padding: 0;
	margin: 0 0 16px 0;
	white-space: normal;
}

th {
	background-color: #e2e2e2;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	border-right: 1px solid #003d4c;
	border-bottom: 1px solid #003d4c;
	text-align: center;
	padding:1px 4px;
}

table tr td {
	padding:4px 4px;
	vertical-align:center;
	text-align: center;
}

table tr.altRow td { background: #f4f4f4; }

table td.actions { white-space: nowrap; }

#cakeSqlLog td {
	text-align: left;
	padding: 4px 8px;
	background: #fff;
	border-bottom: 2px solid #ccc;
}

/* scaffold show */

div.related {
	clear:both;
	display:block;
}

dl {
	line-height:2em;
	margin:0em 1em;
	float:left;
	width: 400px;
}

dt {
	font-weight: bold;
	vertical-align:top;
}

dd {
	margin-left:10em;
	margin-top:-2em;
	vertical-align:top;
}

/* notices and errors */

#flashMessage, .message, .error, .error-message {
	color:#900;
	font-size: 16px;
	background-color: #fff;
	margin: 8px 0px;
	font-weight: bold;
}

.error-message { clear: both; }

.error em {
	font-size: 18px;
	color: #003d4c;
}

.notice {
	color: #656565;
	font-size: 14px;
	background-color: #f4f4f4;
	padding: 0.5em;
	margin: 1em 0;
	display:block;
}

.tip {
	color: #656565;
	background-color: #ddd;
}

/* forms */

form { margin-top: 0; }

form div {
	vertical-align: text-top;
	margin-left: 1em;
	margin-bottom:2em;
}

form div.date { margin-left: 0em; }

label { /*display: block;
width: 140px;
font-size: 14px;
padding-right: 20px;
*/}

input[type=checkbox] { /*float: left;
clear: left;
margin: 2px 6px 7px 2px;*/
}

input, select { position:relative; }

input[type=submit] {
	display: inline;
	vertical-align: baseline;
}

input[type=reset] {
	display: inline;
	vertical-align: baseline;
}

input, textarea {
	padding:2px;
	display:inline;
	font-family: inherit;
}

/* 上の display:inline が UA 既定の display:none を打ち消し、
   CSRFトークン等の hidden input が行を占有してしまうのを防ぐ。 */
input[type=hidden] { display: none; }

select { /*clear: both;*/
/*vertical-align: text-bottom;*/
font-family: inherit; }

option {
	font-family: inherit;
	padding: 0 0.3em;
}

div.required {
	clear: both;
	color:#222;
	font-weight:bold;
}

div.optional {
	clear: both;
	color:#555;
}

div.submit {
	clear: both;
	margin-top: 40px;
	margin-left: 140px;
}

/* action links */
ul.actions, div.actions {
	float: left;
	margin-left:20px;
	width: 200px;
}

ul.actions li { margin-top: 4px; }

div.actions a.back {
	display:block;
	font-size:14px;
	font-weight:bold;
	margin:16px 0 16px 0;
}

pre { padding: 1em; }
