*,
*::before,
*::after {
	box-sizing: border-box;
}


html {
	font-family: sans-serif;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-ms-overflow-style: scrollbar;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	font-size: 16px;
}

@-ms-viewport {
	width: device-width;
}

body {
	margin: 0;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: #212529;
	text-align: left;
	background-color: #fff;
}

.container {
	max-width: 600px;
	margin: auto;
}

h1 {
	margin-top: 0;
	margin-bottom: 0.5rem;
}

h4 {
	font-size: 1.3em;	
}

label {
	display: inline-block;
	margin-bottom: 0.5rem;
}

label p {
	display: inline;
}

button {
	border-radius: 0;
	text-transform: none;
}

button:focus {
	outline: 1px dotted;
	outline: 5px auto -webkit-focus-ring-color;
}

input,
textarea,
select,
button {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	overflow: visible;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	padding: 0;
	border-style: none;
}

input[type="checkbox"] {
	box-sizing: border-box;
	padding: 0;
}

[hidden] {
	display: none !important;
}

body {
	padding: 1rem;
}

.form-group {
	margin-bottom: 1rem;
}

.form-group label.required::after {
	content: "*";
	color: #c00;
	margin-left: 0.125rem;
}

.form-group input:not([type='checkbox']):not([type='radio']),
.form-group textarea,
.form-group select {
	display: block;
	width: 100%;
	height: calc(2.25rem + 2px);
	padding: 0.375rem 0.75rem;
	font-size: 1rem;
	line-height: 1.5;
	color: #495057;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #ced4da;
	border-radius: 0.25rem;
	transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-group textarea {
	height: calc(4.5rem + 2px);
}

.form-group input[type="checkbox"] {
	box-sizing: border-box;
	padding: 0;
	margin-right: 0.25rem;
}

.form-checkbox {
	position: relative;
	display: block;
	padding-left: 1.25rem;
}

.form-checkbox input {
	position: absolute;
	margin-top: .3rem;
	margin-left: -1.25rem;
}

.form-group label:first-child {
	font-weight: bold;
}

.form-group input:not([type='checkbox']):not([type='radio'])::-ms-expand {
	background-color: transparent;
	border: 0;
}

.form-group input:focus,
.form-group select:focus {
	color: #495057;
	background-color: #fff;
	border-color: #80bdff;
	outline: 0;
	box-shadow: 0 0 0.2rem 0.2rem rgba(0, 123, 255, 0.25);
}

.form-group input::-webkit-input-placeholder,
.form-group input::-moz-placeholder,
.form-group input:-ms-input-placeholder,
.form-group input::-ms-input-placeholder,
.form-group input::placeholder {
	color: #888;
	opacity: 1;
}

button {
	cursor: pointer;
	display: inline-block;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	border: 1px solid transparent;
	padding: 0.375rem 0.75rem;
	font-size: 1rem;
	line-height: 1.5;
	border-radius: 0.25rem;
	transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
	color: #fff;
	background-color: #007bff;
	border-color: #007bff;
}

button:hover,
button:focus {
	text-decoration: none;
	outline: 0;
	color: #fff;
	background-color: #0069d9;
	border-color: #0062cc;
}

button:focus {
	box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

button:disabled {
	opacity: 0.3;
}

a {
	color: #007bff;
	text-decoration: none;
	background-color: transparent;
}

a:hover,
a:focus {
	color: #0056b3;
	text-decoration: underline;
}

p {
	color: rgba(32, 67, 82, 0.8);
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
	margin-top: 1rem;
	margin-bottom: 1rem;
	border:0;
	border-top: 1px solid #ccc;
}
a.nps-option-inactive {
	opacity: 0.3;
}
input.invalid {
	border-color: red !important;
}
div.item-error {
	display: none;
	color: red;
}



/* for custom */
body {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	background-color: #ffffff;
	color: #545454;
}

p {
	color: #545454;
}

button {
	color: #ffffff;
	background-color: #e62714;
	border-color: #e62714;
}

a,
a:hover,
a:focus {
	color: #e62714;
}

button:hover,
button:focus {
	color: #ffffff;
	background-color: #a11b0e;
	border-color: #a11b0e;
}
body footer {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
	color: #545454 !important;
}
body footer a {
	color: #e62714 !important;
}
hr {
	border-color: #cccccc;
}

img.image_resized {
	height: auto;
}

.form-group input[disabled] {
	background-color: #f0f0f0 !important;	
	cursor: not-allowed;
}