.input {
	position: relative;
	z-index: 1;
	display: inline-block;
	margin: 0 0 1em 0;
	/***
	max-width: 100%;
	***/
	/***
	width: calc(100% - 2em);
	***/
	width: 100%;
	vertical-align: top;
	font-size:90%;
}

.input__field {
	position: relative;
	display: block;
	float: right;
	padding: 0.8em;
	/***
	width: 60%;
	***/
	width: 100%;
	border: none;
	border-radius: 0;
	background: #f0f0f0;
	color: #aaa;
	font-weight: normal;
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,sans-serif;
	/***
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	***/
	-webkit-appearance: none; /* for box shadows to show on iOS */
}

.input__field:focus {
	outline: none;
}

.input__label {
	display: inline-block;
	float: right;
	padding: 0 1em;
	width: 40%;
	color: #6a7989;
	font-weight: bold;
	/***
	font-size: 70.25%;
	***/
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.input__label-content {
	position: relative;
	display: block;
	padding: 1.6em 0;
	width: 100%;
}

.graphic {
	position: absolute;
	top: 0;
	left: 0;
	fill: none;
}

.icon {
	color: #ddd;
	font-size: 150%;
}

/* Individual styles */


/* Minoru */
.input__field--minoru {
	width: 100%;
	background: #fff;
	box-shadow: 0px 0px 0px 0px transparent;
	/***
	color: #eca29b;
	***/
	color:#333333;

	transition: box-shadow 0.3s;
 	-moz-transition: box-shadow 0.3s; /* Firefox 4 */
 	-webkit-transition: box-shadow 0.3s; /* Safari and Chrome */
 	-o-transition: box-shadow 0.3s; /* Opera */

	/*** 
	border: 1px solid #cccccc;
	***/
}

.input__label--minoru {
	padding: 0;
	width: 100%;
	text-align: left;
}

.input__label--minoru::after {
	content: '';
  	position: absolute;
  	top: 0;
  	z-index: -1;
  	width: 100%;
  	height: 100%;
	box-shadow: 0px 0px 0px 0px;
	color: rgba(199,152,157, 0.6);
}

.input__field--minoru:focus {
	/***
	box-shadow: 0px 0px 0px 2px #eca29b;
	***/
	box-shadow: 0px 0px 0px 1px #d70e60;
}

.input__field--minoru:focus + .input__label--minoru {
	pointer-events: none;
}

.input__field--minoru:focus + .input__label--minoru::after {

	-webkit-animation: anim-shadow 0.5s forwards;
	-moz-animation: anim-shadow 0.5s forwards;
	animation: anim-shadow 0.5s forwards;
}

@keyframes anim-shadow
 {
	to {
		box-shadow: 0px 0px 100px 70px #d70e60;
    	opacity: 0;
	}
 }

 @-moz-keyframes anim-shadow /* Firefox */
 {
	to {
		box-shadow: 0px 0px 100px 70px #d70e60;
    	opacity: 0;
	}
 }

 @-webkit-keyframes anim-shadow /* Safari and Chrome */
 {
	to {
		box-shadow: 0px 0px 100px 70px #d70e60;
    	opacity: 0;
	}
 }


.input__label-content--minoru {
	padding: 0.75em 0.15em;
}




/* Kaede */
.input--kaede {
	display: block;
	overflow: hidden;
	margin: 1em auto 2em;
	background: #EFEEEE;
}

.input__field--kaede {
	position: absolute;
	top: 0;
	right: 100%;
	width: 60%;
	height: 100%;
	background: #fff;
	color: #9DABBA;
	-webkit-transition: -webkit-transform 0.5s;
	transition: transform 0.5s;
	-webkit-transition-timing-function: cubic-bezier(0.2, 1, 0.3, 1);
	transition-timing-function: cubic-bezier(0.2, 1, 0.3, 1);
}

.input__label--kaede {
	z-index: 10;
	display: block;
	width: 100%;
	height: 100%;
	text-align: left;
	cursor: text;
	-webkit-transform-origin: 0% 50%;
	transform-origin: 0% 50%;
	-webkit-transition: -webkit-transform 0.5s;
	transition: transform 0.5s;
	-webkit-transition-timing-function: cubic-bezier(0.2, 1, 0.3, 1);
	transition-timing-function: cubic-bezier(0.2, 1, 0.3, 1);
}

.input__label-content--kaede {
	padding: 1.5em 0;
}

.input__field--kaede:focus,
.input--filled .input__field--kaede {
	-webkit-transform: translate3d(100%, 0, 0);
	transform: translate3d(100%, 0, 0);
	-webkit-transition-delay: 0.06s;
	transition-delay: 0.06s;
}

.input__field--kaede:focus + .input__label--kaede,
.input--filled .input__label--kaede  {
	-webkit-transform: translate3d(60%, 0, 0);
	transform: translate3d(60%, 0, 0);
	pointer-events: none;
}

@media screen and (max-width: 34em) {
	.input__field--kaede:focus + .input__label--kaede,
	.input--filled .input__label--kaede  {
		-webkit-transform: translate3d(65%, 0, 0) scale3d(0.65, 0.65, 1);
		transform: translate3d(65%, 0, 0) scale3d(0.65, 0.65, 1);
		pointer-events: none;
	}
}
