body {
	color: #151514;
	font-size: 16px;
	line-height: 1.75;
}
a {
	color: #a59aca;
}
.container {
	max-width: 100%;
	border: 0;
}
.help-block {
	font-size: 0.75em;
}
.form-column {
	margin-bottom: 20px;
}
input,
button,
textarea,
select {
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	outline: none;
	font-size: 1em;
}

.form-column {
	display: table;
	width: 100%;
}
.form-column > label {
	padding-right: 10px;
	display: table-cell;
	width: 30%;
	text-align: right;
	vertical-align: top;
}
.form-column .input-group,
.form-column > input {
	display: table-cell;
	width: 70%;
}
.form-column .input-group label {
	display: inline-block;
}
.form-column fieldset {
	margin-bottom: 20px;
	padding: 0;
	border: none;
}
.form-column fieldset > legend {
	display: none;
}
.form-column fieldset > .form-column:last-of-type {
	margin-bottom: 0;
}
.form-column-heading h2 {
	font-size: 1.5em;
	margin: 0;
	font-weight: bold;
}
label h3 {
	font-size: 1em;
	display: inline-block;
	margin: 0 0 0.5em;
	font-weight: bold;
}
label .badge-optional {
	display: none;
}
label .badge-required {
	width: auto;
	display: inline-block;
	margin-left: 0.25em;
	padding: 4px 8px;
	line-height: 1;
	font-size: 0.75em;
	color: #fff;
	background-color: #c73b3b;
	border-radius: 4px;
}.description-block {
	color: #151514;
	margin-top: 0;
	margin-bottom: 0;
	font-size: 0.8em;
}
.button-group {
	margin-top: 1em;
	text-align: center;
}
.button-group .help-block {
	margin-top: 0.5em;
	font-size: 0.75em;
}
button {
	display: inline-block;
	padding: 0.5em 1em;
	text-align: center;
	cursor: pointer;
	border: 1px solid #6a767d;
	border-radius: 4px;
	margin: 0 0.5em 0 0;
	background-color: #fff;
}
button.button-submit {
	background-color: #316a8b;
	border: 1px solid #316a8b;
	color: #fff;
}
button.button-submit span.fa {
	margin-right: 4px;
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
textarea {
	height: 1.75em;
	width: 60%;
	min-width: 500px;
	max-width: 100%;
	outline: none;
	line-height: 1.75em;
	padding: 2px 4px;
	border: 1px solid #6a767d;
	transition: all 0.3s;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
textarea:focus {
	box-shadow: 0 0 2px #88c6ea;
	border: 1px solid #88c6ea;
}
textarea {
	width: 60%;
	height: 10em;
}
input[type="file"] {
	display: block;
	line-height: 1.75;
}input[type="password"] {
	height: 1.75em;
	width: 100%;
	utline: none;
	order: 1px solid #6a767d;
	ransition: all 0.3s;
}.form-column-date .input-group select {
	width: auto;
	display: inline-block;
}
.form-column-calendar input {
	width: auto;
}
.form-column-zip-code-jp .input-group input {
	width: auto;
	min-width: auto;
	display: inline-block;
}
.form-column-zip-code-autofill.form-column {
	border-bottom: 0;
	margin-bottom: 0;
}
.form-column-checkbox label,
.form-column-radio label {
	margin-right: 1em;
}
select {
	width: auto;
	height: 1.75em;
	display: block;
	border: 1px solid #6a767d;
}
.message-block-complete {
	border: 2px solid #316a8b;
	padding: 20px;
	text-align: center;
}

@media (max-width: 640px) {
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="url"],
	textarea {
		width: 100%;
		min-width: 100%;
	}
	select {
		width: 100%;
	}
	.form-column-calendar input {
		width: auto;
		min-width: auto;
	}
	.form-column-heading h2 {
		font-size: 1.25em;
	}
}
.form-column fieldset > legend {
    display: block;
    float: left;
}
@media (max-width: 640px) {
.form-column > label {
    display: block;
    padding-right: 10px;
    width: 100%;
    text-align: left;
    vertical-align: top;
}
.form-column fieldset > legend {
float: unset;
}
}