/*
 * 入力系の共通スタイル
 *
 */
input[type="text"],
input[type="email"],
input[type="textarea"],
input[type="password"],
input[type="date"],
input[type="month"],
textarea,
select {
  	background:   #fff;
  	border-color: #bbb;
  	color:        #222;
  	height:		  40px;
}

input:focus,
select:focus,
textarea:focus {
  outline:			none;
  box-shadow: 		0 0 1px 3px rgba(180,222,250, 0.8);
  /*background-color:	transparent;*/
  color: 			#222;
  border:			1px solid #aaa;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
textarea:focus,
select:focus {
  	border-color: #888;
}

input[type="checkbox"] {

}

/*
 * 入力系の共通設定
 */
input,
textarea,
 select {
	box-sizing:     border-box;
	border-width:   1px;
  	border-style:   solid;
  	padding-left:   5px;
  	outline:        0;
  	font-family:    inherit;
  	font-size:      12pt;
  	
}

input[type="submit"] {
  	background:   #28d;
  	border-color: transparent;
  	color:        #fff;
  	cursor:       pointer;
}

input[type="submit"]:active {
	background:   #17c;
  	border-color: #05a;
}

/*
 * 日付入力のアイコンは無し
 */
input[type="date"],
input[type="month"] {
	padding-left:3px;
	padding-right:3px;
  	width:140px;
  	position: relative;
  	z-index:1;
}

input[type="date"]::-webkit-calendar-picker-indicator {
	/*
  	position: 	absolute;
    width: 		100%;
    height: 	100%;
    opacity: 	0;
    */
}

input.number {
	text-align:			right;
	padding-left:		3px;
	padding-right:		3px;
  	width:				120px;
  	position: 			relative;
  	z-index:			1;
}

.table_input_text,
.table_input_number,
.table_input_date {
	height:		15px;
}

.table_input_text {
	text-align:			left;
	padding-left:		5px;
}

.table_input_number {
	text-align:			right;
	padding-right:		5px;
}

.table_input_date {

}

.form_input_text {
	text-align:			left;
	padding-left:		5px;
	width:				300px;
}

.form_input_number {
	text-align:			right;
	padding-right:		5px;
	width:				300px;
}

.form_input_date {

}

input[type=checkbox] {
	width:				20px;
	height:				20px;
	//-moz-transform:		scale(1.8);
	//-webkit-transform:	scale(1.8);
	//transform:			scale(1.8);
}
input[type=radio] {
	width:				20px;
	height:				20px;
	//-moz-transform:		scale(1.8);
	//-webkit-transform:	scale(1.8);
	//transform:			scale(1.8);
}
input[type=radio] {
	width:				25px;
	height:				25px;
	//-moz-transform:		scale(1.8);
	//-webkit-transform:	scale(1.8);
	//transform:			scale(1.8);
	*/
}

.input_error{
	
	color:			 red;
	font-size: 		 80%;
	background:	  #ffee99;
	height: 		auto;
	padding:		10px;
	margin-top:		 5px;
	animation: input_error 0.5s 1;

}

@keyframes input_error {
  0% {
	opacity: 0;
	transform: translate(5px, 5px);
  }
  100% {
  	opacity: 1;
    transform: translate(0, 0);
  }
}

/*
 * オートフィルの背景色を変えない
 */
input:-webkit-autofill {
    box-shadow: 0 0 0 1000px white inset;
}

@media screen and (max-width: 480px){
	input[type="checkbox"] {
	  	top: 2px;
	}
}