/*
 * FONTS
 *
 */
@font-face {
	font-family: "suzukipro-regular";
	src: url("../fonts/suzukipro-regular.ttf");
}
@font-face {
	font-family: "suzukipro-bold";
	src: url("../fonts/suzukipro-bold.ttf");
}
@font-face {
	font-family: "icomoon";
	src: url("../icons/icomoon/icomoon.eot");
}

/*
 * COLORS
 *
 */
:root {
	--sphc-white: 	   #f5f5f5;
	--sphc-red:  	   #de0039;
	--sphc-blue: 	   #027bbb;
	--sphc-light-blue: #e4f6ff;
	--sphc-dark-blue:  #23527c;
	--sphc-gray: 	   #6d6464;
	--sphc-light-gray: #ebebeb;
	--sphc-dark-gray:  #2e2f2f;
}

/*
 * PAGE DEFAULTS
 *
 */
html {
	color: var(--sphc-dark);
	font-size: 100%;
	font-family: 'suzukipro-regular';
	line-height: 1.5;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
*, *::before, *::after {
	-webkit-box-sizing: inherit;
	box-sizing: inherit;
}
img {
	display: block;
	width: 100%;
}
@media only screen and (min-width: 1024px) {
	body {
		overflow-y: hidden;
	}
}

/*
 * SCROLLBAR
 *
 */
::-webkit-scrollbar {
	width: .625rem;
	background: var(--sphc-white);
}
::-webkit-scrollbar-thumb {
	border-radius: 1rem;
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);
	background: var(--sphc-gray);
}
::-moz-scrollbar {
	width: .625rem;
	background: var(--sphc-white);
}
::-moz-scrollbar-thumb {
	border-radius: 1rem;
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);
	background: var(--sphc-gray);
}
::-ms-scrollbar {
	width: .625rem;
	background: var(--sphc-white);
}

::-ms-scrollbar-thumb {
	border-radius: 1rem;
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);
	background: var(--sphc-dark-gray);
}

/*
 * CAPTCHA
 *
 */
.grecaptcha-badge {
	z-index: 1055 !important;
}
@media only screen and (min-width: 1024px) {
	.grecaptcha-badge {
		bottom: 7.5rem !important;
	}
}
@media only screen and (min-width: 1590px) {
	.grecaptcha-badge {
		bottom: 8.75rem !important;
	}
}
@media only screen and (min-width: 1920px) {
	.grecaptcha-badge {
		bottom: 12rem !important;
	}
}

/*
 * INPUT,
 * SELECT
 *
 */
input[type=text],
input[type=email],
select {
	color: #000;
	background: #fff;
	border: 1px solid var(--sphc-light-gray);
	border-radius: .5rem;
	font-family: 'suzukipro-regular';
	font-size: .75rem;
	padding: .75rem;
	/*-webkit-border-radius: 0;*/
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
}
input[type=submit] {
	font-size: .75rem;
	font-family: 'suzukipro-bold';
	border: 0;
	border-radius: .5rem;
	text-align: center;
	padding: 1rem;
	width: 100%;
	text-transform: uppercase;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
	-webkit-box-shadow: 0 0 0 5.625rem #fff inset;
}
input:focus,
select:focus {
	outline: 0;
}
select::ms-expand {
	display: none;
}
.input-wrap,
.select-wrap,
.checkbox-wrap {
	position: relative;
	width: 100%;
}
.input-wrap input,
.select-wrap select {
	position: relative;
}
.input-wrap input[type=text],
.input-wrap input[type=email],
.select-wrap select {
	padding: 1rem 3rem 1rem 1rem;
}
.input-wrap::after {
	color: #acacac;
	content: '\e924';
	font-family: 'icomoon';
	pointer-events: none;
	position: absolute;
	top: 50%;
	right: 1.2rem;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.select-wrap::after {
	color: #acacac;
	content: '\e916';
	font-family: 'icomoon';
	font-size: .5rem;
	pointer-events: none;
	position: absolute;
	top: 50%;
	right: 1.2rem;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.input-checkbox {
	cursor: pointer;
	position: relative;
	width: 1.25rem;
	height: 1.25rem;
	flex: 0 0 1.25rem;
	background: #fff;
	border: 1px solid #eaeaea;
	margin-right: .5rem;
}
.input-checkbox::before {
	content: '\e915';
	font-family: 'icomoon';
	position: absolute;
	top: 50%;
	left: 50%;
	opacity: 0;
	font-size: .75rem;
	-webkit-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.checkbox-wrap.checked .input-checkbox::before {
	opacity: 1;
}
::-webkit-input-placeholder { /* Edge */
	color: #000;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
	color: #000;
}
::placeholder {
	color: #000;
}

/*
 * TRANSITION
 *
 */
.ease {
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

/*
 * TYPOGRAPHY
 *
 */
p {
	font-size: .75rem;
	line-height: 1.25;
	margin-bottom: 1rem;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
a {
	font-size: .75rem;
	color: var(--sphc-red);
	text-decoration: none;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
a:hover {
	color: initial;
}
li {
	font-size: .75rem;
	line-height: 1.25;
}
label {
	font-size: .75rem;
}
strong {
	font-family: 'suzukipro-bold';
}
.title {
	font-family: 'suzukipro-bold';
}
.title-sphc-blue {
	color: var(--sphc-blue);
}
.title-sphc-red {
	color: var(--sphc-red);
}
.title-sphc-gray {
	color: var(--sphc-gray);
}
.title-sphc-dark-gray {
	color: var(--sphc-dark-gray);
}
.title-black {
	color: #000;
}
.title-1 {
	color: var(--sphc-blue);
	font-family: 'suzukipro-bold';
	font-size: 1rem;
	margin-bottom: .5rem;
	text-transform: uppercase;
}
.title-1--sphc-dark-blue {
	color: var(--sphc-dark-blue);
}
.title-2 {
	font-family: 'suzukipro-bold';
	font-size: 1rem;
	text-transform: uppercase;
}
.title-3 {
	font-family: 'suzukipro-bold';
	text-transform: uppercase;
}
.button {
	cursor: pointer;
	border-radius: .5rem;
	text-align: center;
	padding: 1rem;
	width: 90%;
	margin: 0 auto;
	text-transform: uppercase;
	font-family: 'suzukipro-bold';
	font-size: .75rem;
}
.button--red {
	color: #fff;
	background: var(--sphc-red);
}
.button--light-blue {
	color: var(--sphc-gray);
	background: var(--sphc-light-blue);
}
.button--dark-gray {
	color: #fff;
	background: var(--sphc-dark-gray);
}
@media only screen and (min-width: 600px) {
	p,a,
	li,
	label,
	button,
	input[type=text],
	input[type=submit],
	input[type=email],
	select {
		font-size: .85rem;
	}
	.title-1 {
		font-size: 1.5rem;
		margin-bottom: .75rem;
	}
}
@media only screen and (min-width: 768px) {}
@media only screen and (min-width: 993px) {
	.input-wrap input[type=text],
	.select-wrap select {
		padding: 1rem 3rem 1rem 2rem;
	}
}
@media only screen and (min-width: 1024px) {
	p,a,
	li,
	label,
	button,
	.button,
	input[type=text],
	input[type=submit],
	input[type=email],
	select {
		font-size: .75rem;
	}
	.title-1 {
		font-size: 1rem;
		margin-bottom: 1rem;
	}
}
@media only screen and (min-width: 1280px) {}
@media only screen and (min-width: 1366px) {
	p,a,
	li,
	button,
	.button,
	input[type=text],
	input[type=submit],
	input[type=email],
	select {
		font-size: .84375rem;
	}
}
@media only screen and (min-width: 1440px) {
	p,a,
	li,
	button,
	.button,
	input[type=text],
	input[type=submit],
	input[type=email],
	select {
		font-size: .85rem;
	}
	label {
		font-size: .875rem;
	}
	.title-1 {
		font-size: 1.25rem;
		margin-bottom: .75rem;
	}
}
@media only screen and (min-width: 1536px) {}
@media only screen and (min-width: 1590px) {
	p,a,
	button {
		font-size: 1rem;
		margin-bottom: 1rem;
	}
	li,
	input[type=text],
	input[type=submit],
	input[type=email],
	select,
	.button {
		font-size: 1rem;
	}
	.title-1 {
		font-size: 1.5rem;
		margin-bottom: 1.5rem;
	}
	.title-2 {
		font-size: 1.15rem;
	}
}
@media only screen and (min-width: 1920px) {
	.title-1 {
		font-size: 1.85rem;
		margin-bottom: 1.5rem;
	}
	.title-2 {
		font-size: 1.25rem;
	}
}


/*
 * ORDERED LIST
 *
 */
ol, ul {
	list-style-position: inside;
}
ul.ul-dash {
	list-style-type: '-';
}
ul.ul-disc {
	list-style-type: disc;
}
ol.ol-l-alpha {
	list-style-type: lower-alpha;
}
ol.ol-u-alpha {
	list-style-type: upper-alpha;
}
ol.ol-l-roman {
	list-style-type: lower-roman;
}
ol.ol-u-roman {
	list-style-type: upper-roman;
}
ol.ol-digits {
	list-style-type: decimal;
}


/*
 * SLICK
 *
 */
.slick-dots li {
	margin: 0;
}
.slick-dots li button {
	padding: 0;
}
.slick-dots li button:before {
	color: #fff;
	opacity: 1;
	font-size: .5rem;
}
.slick-dots li.slick-active button:before {
	color: var(--sphc-blue);
	opacity: 1;
}
@media only screen and (min-width: 1024px) {
	.slick-dots li button:before {
		font-size: .65rem;
	}
}


/*
 * COMMON CLASSES
 *
 */
.com-pad {
	padding: 2rem 1.5rem;
}
.com-t-b-pad {
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.com-l-r-pad {
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.img-w-auto {
	width: auto;
}
.uppercase {
	text-transform: uppercase;
}
.justify {
	text-align: justify;
}
.hide {
	display: none;
}
.m-auto {
	margin-bottom: 0;
}
.mb-0 {
	margin-bottom: 0;
}
.align-left {
	text-align: left;
}
.for-pc {
	display: none;
}
@media only screen and (min-width: 1024px) {
	.for-mob {
		display: none;
	}
	.for-pc {
		display: block;
	}
	.cms {
		overflow-y: auto;
	}
	.com-pad {
		padding: 2rem;
	}
	.com-t-b-pad {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
	.com-l-r-pad {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}