/* ------------------------------------------------------------ *\
	Reset
\* ------------------------------------------------------------ */

*,
*:before,
*:after { padding: 0; margin: 0; outline: 0; box-sizing: border-box; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, main { display: block; }

html,
body { height: 100%; }

html { tap-highlight-color: rgba(0,0,0,0); }

body { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-smoothing: antialiased; -webkit-text-size-adjust: none; -ms-text-size-adjust: none; text-size-adjust: none; }

img, iframe, video, audio, object { max-width: 100%; }

img { height: auto; display: inline-block; vertical-align: middle; }

b,
strong { font-weight: bold; }

address { font-style: normal; }

svg:not(:root) { overflow: hidden; }

a { color: inherit; text-decoration: none; display: inline-block; }

a:hover,
button:hover { cursor: pointer; text-decoration: none; }

a[href^="tel"] { text-decoration: none; }

img { border: 0; }

h1,
h2,
h3,
h4,
h5,
h6 { margin-bottom: 0; font-weight: normal; text-transform: none; font-size: inherit; }

p,
ul,
ol,
dl,
table,
blockquote { margin-bottom: 0; }

h1[class],
h2[class],
h3[class],
h4[class],
h5[class],
h6[class],
h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child,
ul:last-child,
ol:last-child,
dl:last-child,
table:last-child,
blockquote:last-child { margin-bottom: -6px; }

nav ul { list-style-type: none; padding: 0; }
nav ul:last-child { margin-bottom: 0; }

a,
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
input[type="file"],
input[type="image"],
label[for] { cursor: pointer; }

a[href^="tel"],
button[disabled],
input[disabled],
textarea[disabled],
select[disabled] { cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner { padding: 0; border: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button { display: none; -webkit-appearance: none; margin: 0; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

textarea { overflow: auto; resize: none; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; }

button,
input,
optgroup,
select,
textarea { border: none; border-radius: 0; font-family: inherit; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-smoothing: antialiased; }

button,
select { text-transform: none; }
table { width: 100%; border-collapse: collapse; border-spacing: 0; }


/* ------------------------------------------------------------ *\
	Base
\* ------------------------------------------------------------ */

body { background: #ffffff; font-family: 'Nunito Sans', sans-serif; font-size: 20px; line-height: 28px; color: #0d3155; }

button,
input,
optgroup,
select,
textarea { color: #0d3155; }

input,
button,
select { background: #ffffff; }

p { margin-top: 0; }
table, p, ul, ol, form { margin-bottom: 28px; }


ul { list-style: square outside; }
ol { list-style: decimal outside; }
ol, ul { padding-left: 0; margin-top: 0; }

.alignleft { float: left; }
.aligncenter { text-align: center; }
.alignright { float: right; }

[disabled],
.disabled { cursor: default; }

.mobileonly { display: none; }
[class^='ico'] { display: inline-block; font-size: 0; background-repeat: no-repeat; background-position: center; vertical-align: middle; }
.grayscale { -webkit-filter: grayscale(1); filter: grayscale(1); }
.grayscale:hover { -webkit-filter: none; filter: none; }


@media (max-width: 1219px){
	/*body { font-size: 12px; line-height: 20px; color: #0d3155; }*/
	table, p, ul, ol, form { margin-bottom: 12px; }
	.desktoponly { display: none; }
}

/* ------------------------------------------------------------ *\
	row / col
\* ------------------------------------------------------------ */


.wrapper { margin: 0 auto; display: inline; }
.shell { max-width: 1220px; margin: 0 auto; }

.row { clear: both; display: block; }
.row:after { clear: both; display: block; content: ' '; }

.row .col { margin-left: 40px; position: relative; float: left; }
.row .col:first-child { margin-left: 0; }


.col-1of6 { width: 170px; }
.col-2of6 { width: 380px; }
.col-3of6 { width: 590px; }
.col-4of6 { width: 800px; }
.col-5of6 { width: 1010px; }
.col-6of6 { width: 1220px; }

@media (max-width: 1219px){
	.wrapper { transition: left .3s; position: relative; left: 0; background: #ffffff; }
	.wrapper.active { left: 248px; overflow: visible; }
	
	.col-1of6, .col-2of6, .col-3of6, .col-4of6, .col-5of6, .col-6of6 { width: 100%; }
	
	.row .col { margin-left: 0; padding: 0 10px; }
	.col + .col { margin-top: 20px; }
}


/* ------------------------------------------------------------ *\
	header
\* ------------------------------------------------------------ */

.header { position: relative; }
.header:after { clear: both; content: ' '; display: block; }

.mobile-nav,
.open-nav { display: none; }

.header .logo { float: left; margin-top: 20px; margin-bottom: 20px; }
.header .cart, 
.header .phone { float: right; margin-top: 36px; margin-bottom: 36px; text-transform: uppercase; }
.header i { margin-right: 20px; }


@media (max-width: 1219px){
	.header .logo { text-align: center; float: none; }
	.header .cart, 
	.header .phone { display: none; }
	.header .col + .col { margin: 0; }
}

/* ------------------------------------------------------------ *\
	header-nav
\* ------------------------------------------------------------ */

.header-nav { margin-top: 20px; text-align: left; display: inline-block; }
.header-nav ul { font-size: 0; display: block; }
.header-nav li { display: inline-block; font-size: 20px; text-transform: uppercase; color: #999999; }
.header-nav li.current { color: #0d3155; }
.header-nav li a { display: block; padding: 16px 40px 16px 40px; }
.header-nav .number { background: #999999; color: #ffffff; padding-top: 1px; text-align: center; width: 24px; height: 24px; margin-right: 10px; line-height: 24px; display: inline-block; }
.header-nav li.current .number { background: #0d3155; }


@media (max-width: 1219px){
	.header-nav { display: none; }
}

/* ------------------------------------------------------------ *\
	footer-nav
\* ------------------------------------------------------------ */

.footer-nav { margin-top: 24px; margin-bottom: 12px; }
.footer-nav ul { font-size: 0; display: block; }
.footer-nav li { display: inline-block; font-size: 20px; }
.footer-nav li a { display: block; padding: 12px 40px 11px 40px; }

@media (max-width: 1219px){
	.footer-nav { margin-top: 12px; margin-bottom: 0; }
	.footer-nav li { display: block; }
	.footer-nav li a { padding: 6px 40px 5px 40px; }
}

/* ------------------------------------------------------------ *\
	social-nav
\* ------------------------------------------------------------ */

.social-nav ul { font-size: 0; display: block; padding-bottom: 40px; }
.social-nav li { display: inline-block; font-size: 20px; }
.social-nav li a { display: block; padding: 12px 80px 11px 80px; }


@media (max-width: 1219px){
	.social-nav ul { text-align: center; padding-bottom: 12px; }
	.social-nav li a { padding: 12px 10px 11px 10px; }
}


/* ------------------------------------------------------------ *\
	teaser custom
\* ------------------------------------------------------------ */

.slide { position: relative; }

.slick-dots { position: absolute; bottom: -46px; display: block; width: 100%; padding: 0; list-style: none; text-align: center; }
.slick-dots li { position: relative; display: inline-block; width: 10px; height: 10px; margin: 0 5px; padding: 0; cursor: pointer; }
.slick-dots li button { text-indent: -9999px; background: #ffffff; border-radius: 50%; width: 10px; height: 10px; }
.slick-dots .slick-active button,
.slick-dots button:hover { background: blue; }

.slick-dots li { margin: 0 10px; }
.slick-dots li button { border: 1px solid #ffffff; background: #ffffff; width: 16px; height: 16px; outline: 0; }
.slick-dots li button:hover,
.slick-dots li.slick-active button { border: 1px solid #dd0b2f; background: #dd0b2f; }


/* ------------------------------------------------------------ *\
	content
\* ------------------------------------------------------------ */


.content .row { padding-top: 40px; }
.content .row.sub-row { padding-top: 0; }

h1, h2 { font-size: 48px; line-height: 64px; margin-top: -14px; margin-bottom: 10px; text-transform: uppercase; font-weight: bold; }
h3 { font-size: 28px; line-height: 34px; margin-bottom: 40px; text-transform: uppercase; }

.form h1, .form h2 { text-transform: none; }

.content p a { text-decoration: underline; }

p + .btn { margin-top: 34px; }
p + .accordion { margin-top: 32px; }
p + form { margin-top: 38px; }
p + form + p { margin-top: 32px; }

.spacer .col { margin-bottom: 43px; }
.spacer img { padding-top: 26px; }
.gray:not(.background) img { padding-top: 126px; }

.content .row.sub-row + .row.sub-row { margin-top: 26px; }
.content .row.sub-row p { margin-bottom: 0; }
.content .row.sub-row p + p { margin-top: 6px; }
.content .row.sub-row + form { margin-top: 40px; }

ul { padding-left: 20px; }

[class^='ico'] + h1,
[class^='ico'] + h2,
[class^='ico'] + h3 { margin-top: 40px; }


.row:not(.blue) + .row.blue { margin-top: 40px; }

.row.blue { background-color: #0d3155; color: #ffffff; }
.row.gray { background-color: #eeeeee; color: #0d3155; }
.row.background { background-image: url("/images/background.jpg"); background-position: right bottom; background-repeat: no-repeat; }

.row.background h3 { margin-top: 140px; }

figure.image.alignright { margin-left: 40px; margin-bottom: 40px; }
figure.image.alignleft  { margin-right: 40px; margin-bottom: 40px; }

figure .caption { font-size: 14px; margin-top: 12px; margin-bottom: 80px; }

.cropped-image { position: relative; overflow: hidden; }
.cropped-image img { display: inline; margin: 0 auto; height: 100%; object-fit: cover; }


.map { padding-top: 5px; margin-bottom: 32px; }

hr { border: none; border-bottom: 1px solid #0d3155; height: 1px; }

@media (max-width: 1219px){
	.content .row { padding-top: 12px; }
	h1, h2 { font-size: 28px; line-height: 34px; margin-bottom: 10px; padding-top: 12px; }
	h3 { font-size: 20px; line-height: 28px; margin-bottom: 20px; }
	
	
	p + .btn { margin-top: 14px; }
	p + .accordion { margin-top: 16px; }
	p + form { margin-top: 16px; }
	p + form + p { margin-top: 16px; }
	
	.map { margin-bottom: 12px; }
	
	.row.background { background-image: none; }
	.row.background h3 { margin-top: 0; }
	.content .row.sub-row .col { padding: 0; }
	.content .row.sub-row + form { margin-top: 20px; }
	.spacer .col { margin-bottom: 20px; }
	.spacer img { padding-top: 0; width: 100%; }
	.gray:not(.background) img { padding-top: 0; margin-bottom: 20px; }
	.row:not(.blue) + .row.blue { margin-top: 20px; }
}

/* ------------------------------------------------------------ *\
	btn
\* ------------------------------------------------------------ */

.btn { border: 1px solid #ffffff; background-color: #ffffff; color: #0d3155; display: inline-block; font-size: 20px; padding: 12px 10px 13px 10px; text-align: center; position: relative; }
.header .btn { border: 1px solid #0d3155; background-color: #0d3155; color: #ffffff; font-weight: bold; }

.btn[disabled] { background-color: transparent; color: #ffffff; }

.row.gray .btn { border: 1px solid #0d3155; background-color: #0d3155; color: #ffffff; }
.row.gray .btn[disabled] { background-color: transparent; color: #0d3155; }


/* ------------------------------------------------------------ *\
	form
\* ------------------------------------------------------------ */

.form { padding-top: 40px; }
.map-spacer { height: 240px; }

.form-cols,
.form-col { display: inline-block; vertical-align: top; }


.form-label,
.form-row { display: block; font-size: 0; }

.form-row + .form-row { margin-top: 8px; }

.form-label { font-size: 26px; vertical-align: top; text-align: left; margin-top: -10px; text-transform: uppercase; }

.form-col + .form-col,
.form-cols + .form-cols { margin-left: 40px; }

.form-col { padding-bottom: 2px; }

.form-row.center { text-align: center; margin-top: 23px; margin-bottom: 38px; }
.form-row + .form-row.center { margin-top: 38px; }

.form-controls + .form-controls { margin-top: 20px; }

input,
select,
textarea { padding-left: 9px; padding-right: 9px; font-size: 20px; color: #0d3155; }

input,
select { vertical-align: middle; height: 54px; border: 1px solid #ffffff; }


textarea { vertical-align: top; padding-left: 7px; padding-top: 6px; height: 104px; border: 1px solid #ffffff; }


.form-1of6 input,
.form-1of6 select,
.form-1of6 textarea,
.form-1of6 button,
.form-1of6 a.btn,
.form-1of6.feature-checkbox,
.form-1of6 .custom-checkbox label { width: 170px; }

.form-2of6 input,
.form-2of6 select,
.form-2of6 textarea,
.form-2of6 button,
.form-2of6 a.btn,
.form-2of6.feature-checkbox,
.form-2of6 .custom-checkbox label { width: 380px; }

.form-3of6 input,
.form-3of6 select,
.form-3of6 textarea,
.form-3of6 button,
.form-3of6 a.btn,
.form-3of6.feature-checkbox,
.form-3of6 .custom-checkbox label { width: 590px; }

.form-4of6 input,
.form-4of6 select,
.form-4of6 textarea,
.form-4of6 button,
.form-4of6 a.btn,
.form-4of6.feature-checkbox,
.form-4of6 .custom-checkbox label { width: 800px; }

.form-5of6 input,
.form-5of6 select,
.form-5of6 textarea,
.form-5of6 button,
.form-5of6 a.btn,
.form-5of6.feature-checkbox,
.form-5of6 .custom-checkbox label { width: 1010px; }

.form-6of6 input,
.form-6of6 select,
.form-6of6 textarea,
.form-6of6 button,
.form-6of6 a.btn,
.form-6of6.feature-checkbox,
.form-6of6 .custom-checkbox label { width: 1220px; }

.custom-textarea { margin-top: 4px; }

.custom-select { }


.custom-checkbox .form-controls { display: block; position: relative; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.custom-checkbox label { font-size: 20px; }
.custom-checkbox .form-controls label { min-height: 36px; margin-top: -2px; padding-left: 42px; padding-bottom: 0; display: inline-block; vertical-align: middle; }
.custom-checkbox input { display: none; }

.custom-checkbox span { position: absolute; top: 0; left: 0; height: 24px; width: 24px; }
.custom-checkbox span:after { content: " "; position: absolute; display: none; }
.custom-checkbox input:checked ~ span:after { display: block; }

.custom-checkbox span { background: none; border: 2px solid #ffffff; }

.row.gray .custom-checkbox span { border: 2px solid #0d3155; }

.custom-checkbox span:after { border: solid #ffffff; border-width: 0 2px 2px 0; }
.row.gray .custom-checkbox span:after { border: solid #0d3155; border-width: 0 2px 2px 0; }


.custom-checkbox span:after { left: 6px; top: 1px; width: 8px; height: 15px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }

.custom-checkbox .form-controls { margin-top: 20px; }
.custom-checkbox a { text-decoration: underline; }

.feature-checkbox { cursor: pointer; border: 2px solid #ffffff; color: #ffffff; font-size: 20px; position: relative; margin-top: 15px; margin-bottom: 17px; padding: 9px 0 8px 0; }
.feature-checkbox p { padding: 4px 18px 3px 18px; margin-bottom: 0; }
.feature-checkbox input { display: none; }
.feature-checkbox:has(> input:checked) { background: #ffffff; color: #0d3155; }

.form-row + .form-row .form-label { margin-top: 19px; }


@media (max-width: 1219px){
	.form-cols { display: block; }
	.form-col + .form-col,
	.form-cols + .form-cols { margin-left: 0; }
	
	.form-col + .form-col { margin-top: 22px; }

	.form-1of6, .form-2of6, .form-3of6, .form-4of6, .form-5of6, .form-6of6,
	.form-1of6 input, .form-1of6 select, .form-1of6 textarea, .form-1of6 button, .form-1of6.feature-checkbox, .form-1of6 .custom-checkbox label,
	.form-2of6 input, .form-2of6 select, .form-2of6 textarea, .form-2of6 button, .form-2of6.feature-checkbox, .form-2of6 .custom-checkbox label, 
	.form-3of6 input, .form-3of6 select, .form-3of6 textarea, .form-3of6 button, .form-3of6.feature-checkbox, .form-3of6 .custom-checkbox label,
	.form-4of6 input, .form-4of6 select, .form-4of6 textarea, .form-4of6 button, .form-4of6.feature-checkbox, .form-4of6 .custom-checkbox label,
	.form-5of6 input, .form-5of6 select, .form-5of6 textarea, .form-5of6 button, .form-5of6.feature-checkbox, .form-5of6 .custom-checkbox label,
	.form-6of6 input, .form-6of6 select, .form-6of6 textarea, .form-6of6 button, .form-6of6.feature-checkbox, .form-6of6 .custom-checkbox label { width: 100%; }
	
	.form-row.center { margin-top: 22px; margin-bottom: 22px; }
	.form-row + .form-row.center { margin-top: 22px; }

	.feature-checkbox { margin-top: 19px; margin-bottom: 2px; padding: 9px 0 8px 0; }
	.custom-checkbox .form-controls { margin-top: 10px; }
}


/* ------------------------------------------------------------ *\
	datepicker
\* ------------------------------------------------------------ */

.form-1of6 .ui-datepicker { width: 170px; }
.form-2of6 .ui-datepicker { width: 380px; }
.form-3of6 .ui-datepicker { width: 590px; }
.form-4of6 .ui-datepicker { width: 800px; }
.form-5of6 .ui-datepicker { width: 1010px; }
.form-6of6 .ui-datepicker { width: 1220px; }

.form-col.equal .ui-datepicker { height: 420px; }

.ui-datepicker { font-size: 20px; background: #ffffff; color: #0d3155; }
.ui-datepicker th { font-weight: bold; padding: 0; padding-bottom: 6px; }
.ui-datepicker .ui-datepicker-title { font-weight: bold; }

.ui-datepicker { padding: 0; padding: 10px 15px 0 15px; }

.ui-datepicker table { margin-bottom: 10px; }
.ui-datepicker td { padding: 5px; }

.ui-datepicker td span,
.ui-datepicker td a { width: 40px; height: 40px; padding-top: 6px; }

.ui-datepicker td span { text-align: center; border: 1px solid #999999; }
.ui-datepicker td a { text-align: center; border: 1px solid #0d3155; }


.ui-datepicker .ui-datepicker-title { text-transform: uppercase; font-size: 0; margin-top: 2px; margin-bottom: 23px; }
.ui-datepicker .ui-datepicker-month { font-size: 26px; line-height: 28px; }
.ui-datepicker .ui-datepicker-year { display: none; }
.ui-datepicker .ui-datepicker-other-month a { color: #999999; }

.ui-datepicker .ui-state-active,
.ui-datepicker .ui-state-hover, 
.ui-datepicker .ui-datepicker-other-month .ui-state-active,
.ui-datepicker .ui-datepicker-other-month .ui-state-hover,
.ui-datepicker .ui-state-active a,
.ui-datepicker .ui-state-hover a { background-color: #0d3155; color: #ffffff; }
.ui-datepicker-unselectable span { text-decoration: line-through !important; color: #999999; }

.ui-datepicker a { color: #0d3155; }
.ui-datepicker-week-end a { color: #0d3155; }

.ui-datepicker-prev.ui-state-disabled,
.ui-datepicker-next.ui-state-disabled { display: none; }

.ui-datepicker-prev { margin-left: 5px; background-image: url(../images/ui-datepicker-prev.png); background-repeat: no-repeat; background-position: center; }
.ui-datepicker-next { margin-right: 5px; background-image: url(../images/ui-datepicker-next.png); background-repeat: no-repeat; background-position: center; }

.ui-datepicker-prev.ui-datepicker-prev-hover { background-color: #0d3155; background-image: url(../images/ui-datepicker-prev_hover.png); background-repeat: no-repeat; background-position: center; }
.ui-datepicker-next.ui-datepicker-next-hover { background-color: #0d3155; background-image: url(../images/ui-datepicker-next_hover.png); background-repeat: no-repeat; background-position: center; }


@media (max-width: 1219px){
	.form-col.equal .ui-datepicker { height: auto; }
	.form-1of6 .ui-datepicker, .form-2of6 .ui-datepicker, .form-3of6 .ui-datepicker,
	.form-4of6 .ui-datepicker, .form-5of6 .ui-datepicker, .form-6of6 .ui-datepicker { width: 100%; }
	
	.ui-datepicker { padding: 12px 5px 0 5px; }
	.ui-datepicker table { margin-bottom: 16px; }
	.ui-datepicker .ui-datepicker-title { margin-bottom: 5px; }
	.ui-datepicker th { padding-bottom: 8px; }
	.ui-datepicker td { padding: 6px; }
	.ui-datepicker td span, .ui-datepicker td a { width: auto; }
}

/* ------------------------------------------------------------ *\
	timepicker
\* ------------------------------------------------------------ */

.form-1of6 .timepicker { width: 170px; }
.form-2of6 .timepicker { width: 380px; }
.form-3of6 .timepicker { width: 590px; }
.form-4of6 .timepicker { width: 800px; }
.form-5of6 .timepicker { width: 1010px; }
.form-6of6 .timepicker { width: 1220px; }

.form-col.equal .timepicker { height: 420px; }

.timepicker { background: #ffffff; color: #0d3155; font-size: 20px; padding: 15px 20px 20px 20px; }
.timepicker .headline { font-weight: bold; display: block; font-size: 26px; text-transform: uppercase; padding: 1px 0 20px 0; }
.timepicker .sub-headline { font-weight: bold; display: block; padding-top: 6px; }
.timepicker ul { padding: 0; padding-top: 12px; margin-left: -10px; font-size: 0; display: block; list-style-type: none; }
.timepicker ul li { border: 1px solid #0d3155; margin-left: 10px; margin-bottom: 10px; font-size: 20px; padding-top: 5px; display: inline-block; cursor: pointer; width: 76px; height: 40px; text-align: center; }
.timepicker ul li.disabled { border: 1px solid #999999; text-decoration: line-through; color: #999999; cursor: unset; }

.timepicker ul li.active,
.timepicker ul li:hover:not(.disabled) { background-color: #0d3155; color: #ffffff; }


@media (max-width: 1219px){
	.form-col.equal .timepicker { height: auto; }
	.form-1of6 .timepicker, .form-2of6 .timepicker, .form-3of6 .timepicker,
	.form-4of6 .timepicker, .form-5of6 .timepicker, .form-6of6 .timepicker { width: 100%; }
	.timepicker { padding: 17px 10px 16px 10px; }
	.timepicker .headline { padding: 1px 0 5px 0; }
	.timepicker ul { padding-top: 14px; }
	.timepicker ul li { width: calc((100vw - 70px) / 4); margin-bottom: 12px; }
}


/* ------------------------------------------------------------ *\
	infobox
\* ------------------------------------------------------------ */

.form-1of6 > .infobox,
.col-1of6 > .infobox { width: 170px; }
.form-2of6 > .infobox,
.col-2of6 > .infobox { width: 380px; }
.form-3of6 > .infobox,
.col-3of6 > .infobox { width: 590px; }
.form-4of6 > .infobox,
.col-4of6 > .infobox { width: 800px; }
.form-5of6 > .infobox,
.col-5of6 > .infobox { width: 1010px; }
.form-6of6 > .infobox,
.col-6of6 > .infobox { width: 1200px; }

.form-col.equal .infobox { height: 420px; }

.infobox { background-color: #ffffff; color: #0d3155; font-size: 20px; padding: 15px 20px 20px 20px; }
.infobox .headline { font-weight: bold; display: block; font-size: 26px; text-transform: uppercase; padding: 1px 0 20px 0; }
.infobox .sub-headline { display: block; padding-top: 6px; margin-bottom: 12px; }

.infobox p { margin-bottom: 12px; margin-top: 14px; }
.infobox i { margin-right: 15px; margin-top: -5px; margin-left: -4px; }
.infobox p:last-child { margin-top: 13px; margin-bottom: -2px; font-weight: bold; }

.infobox.margin { margin-bottom: 40px; }


@media (max-width: 1219px){
	.form-col.equal .infobox { height: auto; }
	.form-1of6 > .infobox, .col-1of6 > .infobox, 
	.form-2of6 > .infobox, .col-2of6 > .infobox, 
	.form-3of6 > .infobox, .col-3of6 > .infobox, 
	.form-4of6 > .infobox, .col-4of6 > .infobox, 
	.form-5of6 > .infobox, .col-5of6 > .infobox, 
	.form-6of6 > .infobox, .col-6of6 > .infobox { width: 100%; }
	.infobox { padding: 16px 10px 18px 10px; }
	.infobox .headline { padding: 1px 0 5px 0; }
	.infobox .sub-headline { margin-bottom: 15px; }
	.infobox p { margin-bottom: 15px; margin-top: 17px; }
	.infobox p:last-child { margin-top: 16px; }
	.infobox.margin { margin-bottom: 20px; }
}

/* ------------------------------------------------------------ *\
	accordion
\* ------------------------------------------------------------ */

.accordion { list-style-type: none; font-size: 0; padding: 0; }
ul.accordion:last-child { margin-bottom: 0; }
.accordion li { font-size: 20px; position: relative; }
.accordion li + li { margin-top: 20px; }
.accordion li .accordion-head { background-color: #0d3155; color: #ffffff; cursor: pointer; padding: 14px 64px 13px 20px; }
.accordion li .accordion-head i { position: absolute; right: 20px; top: 16px; cursor: pointer; }
.accordion .accordion-content { display: none; }
.accordion li.active .accordion-content { display: block; margin-bottom: -6px; margin-top: 14px; padding: 0 20px; }

@media (max-width: 1219px){
	.accordion li .accordion-head { background-color: #0d3155; color: #ffffff; cursor: pointer; padding: 18px 64px 17px 20px; }
	.accordion li + li { margin-top: 24px; }
	.accordion li.active .accordion-content { margin-top: 18px; }
}

/* ------------------------------------------------------------ *\
	review
\* ------------------------------------------------------------ */

.review { background: #eeeeee; text-align: center; min-height: 370px; padding: 20px; }
.review ul { font-size: 0; display: inline-block; padding: 0; margin: 13px 0 10px -10px; }
.review ul li { font-size: 20px; display: inline-block; margin-left: 10px; }
.review p { margin: 0; }
.review .ico-note { margin-bottom: 62px; }

@media (max-width: 1219px){
	.review { min-height: auto; padding: 20px 10px; }
	.review .ico-note { margin-bottom: 22px; }
}

/* ------------------------------------------------------------ *\
	product
\* ------------------------------------------------------------ */

.product { text-align: center; }
.product p { margin: 0; margin-bottom: 5px; }
.product p b { display: block; margin-top: 22px; }
.product img + p { margin-top: 21px; }

@media (max-width: 1219px){
	.product p b { display: block; margin-top: 12px; }
	.product img + p { margin-top: 1px; }
}

/* ------------------------------------------------------------ *\
	store
\* ------------------------------------------------------------ */

.store { text-align: center; margin-bottom: 38px; }
.store p { margin: 0; margin-bottom: 5px; }
.store p b { display: block; margin-top: 22px; }
.store h3 { margin-top: 38px; margin-bottom: 30px; }

@media (max-width: 1219px){
	.store { margin-bottom: 0; margin-top: -18px; }
	.store p b { margin-top: 12px; }
	.store h3 { margin-top: 18px; margin-bottom: 20px; }
	.store .form-row.center { margin-top: 12px; margin-bottom: 18px; }
}


/* ------------------------------------------------------------ *\
	footer
\* ------------------------------------------------------------ */

.footer { margin-top: 40px; text-align: center; }

@media (max-width: 1219px){
	.footer { margin-top: 20px; }
}

/* ------------------------------------------------------------ *\
	ico
\* ------------------------------------------------------------ */

i.ico-phone { background: url(/images/ico-phone.png) no-repeat center; width: 24px; height: 24px; }
i.ico-cart { background: url(/images/ico-cart.png) no-repeat center; width: 24px; height: 24px; }

i.ico-toggle { background: url(/images/ico-toggle_closed.png) no-repeat center; width: 24px; height: 24px; }
li.active i.ico-toggle { background: url(/images/ico-toggle_open.png) no-repeat center; width: 24px; height: 24px; }

i.ico-calendar { background: url(/images/ico-calendar.png) no-repeat center; width: 24px; height: 24px; }
i.ico-note { background: url(/images/ico-note.png) no-repeat center; width: 48px; height: 48px; }
i.ico-star { background: url(/images/ico-star.png) no-repeat center; width: 32px; height: 32px; }


/* ------------------------------------------------------------ *\
	ico
\* ------------------------------------------------------------ */


.note { position: fixed; z-index: 100; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; }
.note { background-color: rgb(0,0,0); background-color: rgba(0,0,0,0.4); }
.note-box { background-color: #ffffff; margin: 15% auto; padding: 20px; border: 5px solid #0d3155; width: 35%; text-align: center; animation: note_down 0.5s linear; }
.note-content { color: #000000; margin-bottom: 20px; }

.note-close .note-box { animation: note_up 0.5s linear; margin: -16% auto; }

.note-button { color: #ffffff; background: #0d3155; padding: 8px 20px 8px 20px; display: inline-block; }
.note-button .btn { display: inline-block; }

@keyframes note_down { 
	0% { margin: -16% auto; }
	50% { margin: 0% auto; }
	100% { margin: 15% auto; }
}

@keyframes note_up { 
	0% { margin: 15% auto; }
	50% { margin: 0% auto; }
	100% { margin: -16% auto; }
}