@charset "UTF-8";


/*! form（reset） ============================================== */

form, fieldset, label, legend,
input, button, optgroup, select, textarea {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	background: none;
	border-radius: 0;
  box-sizing: border-box;

	/* appearance */
	-webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;

	/* font */
	font-family: inherit;
	font-size: 12px;
	line-height: inherit;
	color: inherit;
	}

/* focus */
form input:focus,
form select:focus {
	outline: none;
	}

/* textarea */
form textarea {
	display: block;
	resize: none;
	}

/* select */
form select,
form select > option {
	cursor: pointer;
	}

form select > optgroup {
  font-weight: bold;
	font-style: normal;
	}

/* ! IE11 hack */
@media all and (-ms-high-contrast:none){
*::-ms-backdrop, select::-ms-expand {
	display: none;
	}
}

/* ! Firefox hack */
@-moz-document url-prefix() {
form select {
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
	}

form .fileup .filebtn {
  margin-top: 2px;
	}
}

/* search */
form input[type="search"]::-webkit-search-decoration { display: none;}
form input[type="search"]::-webkit-search-cancel-button { display: none;}
form input[type="search"]::-webkit-search-results-button { display: none;}
form input[type="search"]::-webkit-search-results-decoration { display: none;}
form input[type="search"]::-ms-clear { display: none;}

/* placeholder */
::-webkit-input-placeholder {
	padding-top: 2px;
	color: #a6a6a6;
	}
:-ms-input-placeholder {
	padding-top: 2px;
	color: #a6a6a6;
	}
:-moz-placeholder {
	padding-top: 2px;
	color: #a6a6a6;
	}
::-moz-placeholder {
	padding-top: 2px;
	color: #a6a6a6;
	opacity: 1;
	}


/*! text ============================================== */

form input[type="text"],
form input[type="password"],
form input[type="number"],
form input[type="date"],
form textarea {
	min-height: 32px;
	margin: 0 5px;
	padding: 4px 10px;
	background-color: #f5f5f5;
	border: 1px solid #c0c0c0;
	transition: 0.4s;
	}

form input[type="number"]:hover,
form input[type="text"]:hover {
	background-color: #fbf7ed;
	border: 1px solid #e9ca7d;
	}

form input[type="number"]:focus,
form input[type="text"]:focus {
	background-color: #ffffff;
	border: 1px solid #e9ca7d;
	}


/*! button ============================================== */

/* button */
form input[type="button"], form button {
	min-height: 32px;
	margin: 0 5px;
	padding: 4px 20px;
	background-color: #ffffff;
	border-radius: 2px;
	border: 1px solid #53a0bb;
	font-weight: bold;
	color: #53a0bb;
	transition: 0.4s;
	cursor: pointer;
	}

form input[type="button"]:hover, form button:hover {
	background-color: #fbf7ed;
	border: 1px solid #e9ca7d;
	color: #e59100;
	}

/* submit */
form .btn-form {
	margin-top: 20px;
	text-align: center;
	}

form .btn-form .cls-submit,
form .btn-form [type="submit"] {
	min-width: 150px;
	min-height: 40px;
	margin: 0 5px;
	padding: 5px 30px;
	background-color: #0081cc;
	border-radius: 2px;
	border: 1px solid #c0c0c0;
	border-radius: 2px;
	box-shadow: 0 0 0 1px #ffffff inset;
	font-weight: bold;
	color: #ffffff;
	transition: 0.4s;
	cursor: pointer;
	}

form .btn-form [type="submit"][disabled] {
    background-color: #aaa;
    cursor: default;
}

form .btn-form [type="submit"]:hover {
	background-color: #43c1e0;
	}
form .btn-form [type="submit"][disabled]:hover {
    background-color: #aaa;
	}


/*! check ============================================== */

form input[type=checkbox] {
	display: none;
	}

form input[type=checkbox] + span {
	position: relative;
	display: inline-block;
	margin: 0 5px;
	padding-left: 22px;
	transition: 0.4s;
	cursor: pointer;
	}

/* box */
form input[type=checkbox] + span::before {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	width: 16px;
	height: 16px;
	background: #f5f5f5;
	border: 1px solid #c0c0c0;
	border-radius: 2px;
	transition:	all 0.2s ease-in;
	}

/* checked */
form input[type="checkbox"] + span::after {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	width: 0;
	height: 16px;
	border-left: 2px solid #f39800;
	border-bottom: 2px solid #f39800;
	transition:	all 0.2s ease-out;
	opacity: 0;
	}

form input[type="checkbox"]:checked + span::after {
	top: 5px;
	width: 16px;
	height: 8px;	
	transform: rotate(-45deg);
	opacity: 1;
	}

form input[type=checkbox]:checked + span::before {
	opacity: 0;
	}

form input[type="checkbox"]:checked + span {
	color: #e59100;
	}

/* txt none */
form input[type=checkbox].nontxt + span {
	padding-left: 16px;
	text-indent: -9999px;
	}


/*! radio ============================================== */

form input[type=radio] {
	display: none;
	}

form input[type=radio] + span {
	position: relative;
	display: inline-block;
	margin: 0 5px;
	padding-left: 22px;
	transition: 0.4s;
	cursor: pointer;
	}

/* box */
form input[type=radio] + span::before {
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
	width: 16px;
	height: 16px;
	background: #f5f5f5;
	border: 1px solid #c0c0c0;
	border-radius: 50%;
	transition: 0.4s;
	}

/* checked */
form input[type="radio"]:checked + span::before {
	background: #f39800;
	border: 1px solid #f39800;
	box-shadow: inset 0 0 0 3px #ffffff;
	}

form input[type="radio"]:checked + span {
	color: #e59100;
	}


/*! select ============================================== */

form select {
	position: relative;
	min-height: 32px;
	margin: 0 5px;
	/* ! Firefox hack（top・bottom：9px） */
	padding: 4px 25px 4px 15px;
	background: #f5f5f5 url("../gfx/form_select_off.png") no-repeat right center;
	border: 1px solid #c0c0c0;
	border-radius: 2px;
	color: #4d4d4d;
	transition: 0.4s;
	}

form select:hover {
	background: #fbf7ed url("../gfx/form_select_on.png") no-repeat right center;
	border: 1px solid #e9ca7d;
	color: #e59100;
	}

form select:hover option {
	background-color: #f5f5f5;
	color: #4d4d4d;
	}

.error-message .message.error {
    color: #F00;
}
.error-message .message.error.hidden {
    display: none;
}


.paginator {
    overflow: hidden;
}
.paginator li {
    float: left;
    margin: 10px;
}

.flash-message {
    margin-bottom: 10px;
    font-size: large;
}
.flash-message.success {
    background-color: #7BE8FF;
    padding: 5px;
}
.flash-message.error {
    background-color: #FFD48D;
    color: #F00;
    padding: 5px;
}



