*, *:after, *:before { -webkit-box-sizing: border-box; box-sizing: border-box; }
.clearfix:before, .clearfix:after { content: ''; display: table; }
.clearfix:after { clear: both; }

.content {
	font-size: 150%;
	
}

.content p {
	margin: 1em 0;
	padding: 1em 0 0 0;
	font-size: 0.65em;
}

.input {
	position: relative;
	z-index: 1;
	display: inline-block;
	margin: 1em;
	width: 100%;
	width: calc(100% - 2em);
	vertical-align: top;
}
.t-area {
	position: relative;
	z-index: 1;
	display: inline-block;
	width: 96%;
	width: calc(100% - 2em);
	vertical-align: top;
	margin:0 1em;
}

.t-area textarea {
    padding: 18px 3px 13px;
}

.input_field {
	position: relative;
	display: block;
	float: right;
	padding: 2em;
	width: 60%;
	border: none;
	border-radius: 0;
	background: transparent;
	color: #ffffff;
	font-weight: lighter;
	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 {
    display: block;
    font-size: 14px;
    font-weight: 400;
    padding: 17px 0;
    position: relative;
    width: 100%;
}

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

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

/* Individual styles */

/* Haruki */

.input-haruki {
	margin: 4em 1em 1em;
}

.input_field-haruki {
	padding: 0.4em 0.25em;
	width: 100%;
	background: transparent;
	color: #AFB5BB;
	font-size: 1.55em;
}

.input_label-haruki {
	position: absolute;
	width: 100%;
	text-align: left;
	pointer-events: none;
}

.input_label-content-haruki {
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.input_label-haruki::before,
.input_label-haruki::after {
	content: '';
	position: absolute;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 4px;
	background: #6a7989;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.input_label-haruki::before {
	top: 0;
}

.input_label-haruki::after {
	bottom: 0;
}

.input_field-haruki:focus + .input_label-haruki .input_label-content-haruki,
.input-filled .input_label-content-haruki {
	-webkit-transform: translate3d(0, -90%, 0);
	transform: translate3d(0, -90%, 0);
}

.input_field-haruki:focus + .input_label-haruki::before,
.input-filled .input_label-haruki::before {
	-webkit-transform: translate3d(0, -0.5em, 0);
	transform: translate3d(0, -0.5em, 0);
}

.input_field-haruki:focus + .input_label-haruki::after,
.input-filled .input_label-haruki::after {
	-webkit-transform: translate3d(0, 0.5em, 0);
	transform: translate3d(0, 0.5em, 0);
}

/* Hoshi */
.input-hoshi {
	overflow: hidden;
}

.input_field-hoshi {
	margin-top: 1em;
	padding: 0.85em 0.15em;
	width: 100%;
	background: transparent;
	color: #fff;
}

.input_label-hoshi {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 0 0.25em;
	width: 100%;
	height: calc(100% - 1em);
	text-align: left;
	pointer-events: none;
}

.input_label-content-hoshi {
	position: absolute;
}

.input_label-hoshi::before,
.input_label-hoshi::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 10px);
	border-bottom: 1px solid #B9C1CA;
}

.input_label-hoshi::after {
	margin-top: 2px;
	border-bottom: 4px solid red;
	-webkit-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.input_label-hoshi-color-1::after {
	border-color: #bc820b;
}

.input_label-hoshi-color-2::after {
	border-color: hsl(160, 100%, 50%);
}

.input_label-hoshi-color-3::after {
	border-color: "#bc820b";
}

.input_field-hoshi:focus + .input_label-hoshi::after,
.input-filled .input_label-hoshi::after {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.input_field-hoshi:focus + .input_label-hoshi .input_label-content-hoshi,
.input-filled .input_label-content-hoshi {
	-webkit-animation: anim-1 0.3s forwards;
	animation: anim-1 0.3s forwards;
}

@-webkit-keyframes anim-1 {
	50% {
		opacity: 0;
		-webkit-transform: translate3d(1em, 0, 0);
		transform: translate3d(1em, 0, 0);
	}
	51% {
		opacity: 0;
		-webkit-transform: translate3d(-1em, -40%, 0);
		transform: translate3d(-1em, -40%, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, -40%, 0);
		transform: translate3d(0, -40%, 0);
	}
}

@keyframes anim-1 {
	50% {
		opacity: 0;
		-webkit-transform: translate3d(1em, 0, 0);
		transform: translate3d(1em, 0, 0);
	}
	51% {
		opacity: 0;
		-webkit-transform: translate3d(-1em, -40%, 0);
		transform: translate3d(-1em, -40%, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, -40%, 0);
		transform: translate3d(0, -40%, 0);
	}
}

