/* RESET */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn,  img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
* {
  box-sizing: border-box;
}
/* RESET */
        




/* FONTS */
@font-face {
	font-family: 'Metropolis Light';
	src: url("/fonts/metropolis/Metropolis-Light.eot?#iefix") format("eot"), url("/fonts/metropolis/Metropolis-Light.woff2") format("woff2"), url("/fonts/metropolis/Metropolis-Light.woff") format("woff");
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Metropolis Regular';
	src: url("/fonts/metropolis/Metropolis-Regular.eot?#iefix") format("eot"), url("/fonts/metropolis/Metropolis-Regular.woff2") format("woff2"), url("/fonts/metropolis/Metropolis-Regular.woff") format("woff");
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Metropolis Medium';
	src: url("/fonts/metropolis/Metropolis-Medium.eot?#iefix") format("eot"), url("/fonts/metropolis/Metropolis-Medium.woff2") format("woff2"), url("/fonts/metropolis/Metropolis-Medium.woff") format("woff");
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Metropolis Bold';
	src: url("/fonts/metropolis/Metropolis-Bold.eot?#iefix") format("eot"), url("/fonts/metropolis/Metropolis-Bold.woff2") format("woff2"), url("/fonts/metropolis/Metropolis-Bold.woff") format("woff");
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'MyriadPro-BoldCond';
	src: url('/fonts/myriadpro/MyriadPro-BoldCond.eot?#iefix') format('embedded-opentype'),  url('/fonts/myriadpro/MyriadPro-BoldCond.otf')  format('opentype'),
		 url('/fonts/myriadpro/MyriadPro-BoldCond.woff') format('woff'), url('/fonts/myriadpro/MyriadPro-BoldCond.ttf')  format('truetype'), url('/fonts/myriadpro/MyriadPro-BoldCond.svg#MyriadPro-BoldCond') format('svg');
	font-weight: normal;
	font-style: normal;
}
.font-metropolis-light{
	font-family: 'Metropolis Light';
}
.font-metropolis-regular{
	font-family: 'Metropolis Regular';
}
.font-metropolis-medium{
	font-family: 'Metropolis Medium';
}
.font-metropolis-bold{ 
	font-family: 'Metropolis Bold';
}
.font-sofia-sans{
	font-family: 'Sofia Sans';
}
/* FONTS */



		

/* VARIABLES */
:root, :host {
	--Red: #ED1C24;
	--White: #FFFFFE;
	--Black: #060808;
	--Light-Grey: #DCDDDE;
	--Medium-Grey: #BCBEC0;
	--Dark-Grey: #777776;
	--Darkest-Grey: #414042;
	--Space-05x: 5px;
	--Space-1x: 10px;
	--Space-15x: 15px;
	--Space--2x: -20px;
	--Space-2x: 20px;
	--Space-25x: 25px;
	--Space--3x: -30px;
	--Space-3x: 30px;
	--Space-4x: 40px;
	--Space-5x: 50px;
	--Space--5x: -50px;
	--Space-6x: 60px;
	--Space-7x: 70px;
	--Space-8x: 80px;
	--Space-9x: 90px;
	--Space-16x: 160px;
	--bs-breakpoint-xxl: 1440px;
	--bs-dropdown-inner-border-radius:0;	
	--bs-dropdown-border-width:0;	
	--bs-dropdown-link-active-bg:transparent;
	--bs-body-color: #414042;
	--bs-heading-color: #414042;
	--bs-offcanvas-width:100%;
	--tk-gutter-x:20px!important;
	--tk-gutter-y:20px!important;
	--bs-heading-color:inherit!important;
}
/* VARIABLES */
 




/* BOOTSTRAP */
.row > * {
	padding-right: calc(var(--tk-gutter-x) * .5);
	padding-left: calc(var(--tk-gutter-x) * .5);
}
.row {
	margin-top: 0;
	margin-right: calc(-.5 * var(--tk-gutter-x));
	margin-left: calc(-.5 * var(--tk-gutter-x));
}
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
	padding-right: calc(var(--tk-gutter-x) * .5);
	padding-left: calc(var(--tk-gutter-x) * .5);
}
/* BOOTSTRAP */





/* SPLIDE */
.splide__pagination__page{
	opacity:1
}
/* SPLIDE */





/* BODY */
body{
	color:var(--Darkest-Grey);
	font-family: 'Metropolis Regular';
	font-size:16px;
	line-height:150%;
	letter-spacing:0;	
}
.block-grid-item{
/*	
    margin-top:var(--Space-4x);
	padding-top:var(--Space-4x);
	padding-bottom:var(--Space-4x);
*/
	margin-bottom:var(--Space-4x);
}
img{
	max-width:100%;
	height:auto;
}
.bordered,
img.bordered{
	border-bottom:10px solid var(--Light-Grey);
}
.bordered-small,
img.bordered-small{
	border-bottom:5px solid var(--Light-Grey);
}
.border-bottom{
	border-bottom:2px solid var(--Medium-Grey)!important;
}
@media (max-width: 767px){
	.block-grid-item{
/*
		margin-top:var(--Space-2x);
		margin-bottom:var(--Space-2x);
		padding-top:var(--Space-2x);
		padding-bottom:var(--Space-2x);
*/
	}
}
/* BODY */





/* BACKGROUNDS */
.bg-center{
	background-repeat:no-repeat;
	background-position:center center;
}
.bg-cover{
	background-size:cover;
}
.bg-red{
	background-color:var(--Red);
}
.bg-dark-grey{
	background-color:var(--Dark-Grey);
}
.bg-medium-grey{
	background-color:var(--Medium-Grey);
}
.bg-light-grey{
	background-color:var(--Light-Grey);
}
.bg-transparent{
	background-color:transparent!important;
}
/* BACKGROUNDS */





/* WIDTHS AND HEIGHTS */
.max-width-225{
	margin:0 auto;
} 
.max-width-360{
	max-width:360px;
}
.max-width-500{
	max-width:500px;
} 
.max-width-725{
	max-width:725px;
	margin:0 auto;
} 
.max-width-780{
	max-width:780px;
}
.max-width-790{
	max-width:790px;
	margin:0 auto;
}
.max-width-890{
	max-width:890px;
}
.max-width-990{
	max-width:990px;
	margin:0 auto;
}
.max-width-1120{
	max-width:1120px;
	margin:0 auto;
}
.mx-auto{
	margin:0 auto;
}
textarea{
	height:170px;
}
.article-content{
	margin-bottom:var(--Space-5x);
}
/* WIDTHS AND HEIGHTS */





/* COLORS */
.text-black{
	color:var(--Black)!important;
}
.text-white.richtext h2,
.text-white.richtext p,
.text-white{
	color:var(--White)!important;
}
.text-red{
	color:var(--Red)!important;
}
.text-white{
	color:var(--White)!important;
}
.text-darkest-grey{
	color:var(--Darkest-Grey)!important;
}
/* COLORS */





/* CONTAINER */
@media (min-width: 1400px) {
	.container-xxl {
		max-width: 1440px;
	}
	.container-lg{
		max-width: 1200px;
	}
	.container-md{
		max-width: 990px;
	}
}
/* CONTAINER */



/* TYPOGRAPHY */
a{
	text-decoration:none;
	color:var(--Darkest-Grey);
}
h2.page-h1,
h1{
	font-family: 'Metropolis Regular';
	font-size:42px;
	line-height:130%;
	text-transform:capitalize;
	padding:0;
	margin:0;
}
h1.homepage{
	font-family: Arial Black, Arial Bold, Gadget, sans-serif;
	font-weight:700;
	font-size:72px; 
	line-height:110%;
	letter-spacing:-0.02em;
	text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}
h1.homepage-small{
	font-family: Arial Black, Arial Bold, Gadget, sans-serif;
	font-weight:700;
	font-size:50px; 
	line-height:110%;
	letter-spacing:-2%;
	text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
	text-transform:none;
}
h1.product{
	font-family: Arial Black, Arial Bold, Gadget, sans-serif;
	font-weight:700;
	font-size:72px;
	line-height:110%;
	line-height:100%;
	text-shadow:none;
}
h1.product-listing{
	font-family: Arial Black, Arial Bold, Gadget, sans-serif;
	font-weight:700;
	font-size:64px;
	line-height:100%;
	text-shadow:none;
}
h2{
	font-family: 'Metropolis Light';
	font-size:32px;
	line-height:130%;
	padding:0;
	margin:0;
}
.modal-open h2{
	line-height:100%;
}
h2.page{
	font-size:36px;
}
h2.home-introduction{
	font-size:32px;
	line-height:140%;
	letter-spacing:-0.01em;
}
h3{
	font-family: 'Metropolis Light';
	font-size:24px;
	line-height:130%;
	padding:0;
	margin:0;
}
h3.product-card{
	font-size:32px;
	line-height:90%; 
	color:var(--Red);
}
h3.product-labels{
	font-family: 'Metropolis Medium';
	font-size:24px;
	line-height:140%;
	color:var(--Black);
}
h3.quick-links{
	font-family: Michroma;
	font-size:24px;
	line-height:130%;
	font-weight:400;
}
h3.product{
	font-family: Arial Black, Arial Bold, Gadget, sans-serif;
	color:var(--Dark-Grey);
	line-height:100%;
	text-transform:uppercase;
	font-size:40px;
}
h4{
	font-family: 'Metropolis Light';
	font-size:20px;
	line-height:130%;
	padding:0;
	margin:0;
}
h4.labels{
	font-family: 'Metropolis Medium';
	font-size:18px;
	line-height:140%;
}
h5{
	font-family: 'Sofia Sans';
	padding:0;
	margin:0;
}
h5.product-card-label,
h5.tag{
	font-size:16px;
	line-height:120%;
	letter-spacing:2%;
	text-transform:uppercase;
}
h5.product-card-label strong{
	font-weight:600;
}
label{
	font-family: 'Sofia Sans';
	padding:0;
	margin:0;
	font-size:16px;
	line-height:120%;
	letter-spacing:2%;
	text-transform:uppercase;
}
p{
	font-family: 'Metropolis Regular';
	font-size:16px;
	line-height:150%;	
	padding:0;
	margin:0;
}
p.larger{
	font-size:18px;
	line-height:150%;	
}
p.small,
p.smaller{
	font-size:14px;
	line-height:120%;	
}
p.lead{
	font-size:20px;
	line-height:130%;	
}
p.meta{
	font-family: 'Metropolis Medium';
	line-height:130%;	
}
p.breadcrumb{
	font-size:14px;
	line-height:120%;	
	text-transform:uppercase;
}
p.product-card-description{
	font-size:24px;
	line-height:120%;	
	letter-spacing:-2%;
}
blockquote{
	font-family: 'Metropolis Regular';
	font-size:32px;
	line-height:150%;	
	color:var(--Red);
	padding:0;
	margin:0;
}
ul,
ol,
ul li,
ol li{
	padding:0;
	margin:0;
}
.richtext a{
	color:var(--Dardkest-Grey);
	text-decoration:none;
	border-bottom:1px solid var(--Darkest-Grey);
}
.breadcrumb a:hover,
.richtext a:hover{
	border-bottom:1px solid var(--Red)!important;
}
.breadcrumb a:active,
.richtext a:active{
	color:var(--Red)!important;
	border-bottom:1px solid var(--Red)!important;
}
.breadcrumb a:visited,
.richtext a:visited{
	color:var(--Dark-Grey);
	border-bottom:1px solid var(--Dark-Grey);
}
.richtext h2{
	margin-bottom:var(--Space-2x);
}
.richtext h3{
	margin-bottom:var(--Space-2x);
}
.richtext h4{
	margin-bottom:var(--Space-2x);
}
.richtext p{
	margin-bottom:var(--Space-2x);
}
.richtext ul{
	margin:0 0 var(--Space-2x) var(--Space-4x);
}
.richtext ol{
	margin:0 0 var(--Space-2x) var(--Space-4x);
}
.richtext ol li{
	margin:0 0 var(--Space-1x);
	list-style:decimal;
	padding-left:var(--Space-1x);
}
.richtext ul li{
	margin:0 0 var(--Space-1x);
	list-style:square;
	padding-left:var(--Space-1x);
}
.richtext ul li::marker {
	color:var(--Red);
}
.richtext ol li::marker {
	color:var(--Red);
}
.richtext :last-child{
	margin-bottom:0!important;
}
.richtext strong{
	font-family: 'Metropolis Bold';
}
.richtext em{
}
code{
	text-align:center;
	width:100%;
	display:block;
	padding:10px 0;
	background-color:#0ff;
}
.filter-border{
	border-bottom:2px solid var(--Light-Grey);
	padding-bottom:var(--Space-1x);
}
sup{
  font-size: 0.7em;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  top: -0.5em;
}
.line-height-80p{
	line-height:80%!important;
}
@media (max-width: 1023px){
	h1.homepage{
		font-size:50px; 
	}
}
@media (max-width: 1023px){
	h3.quick-links{
		font-size:20px;
	}
}
@media (max-width: 990px){
    .block-pillars .richtext h2,
    h2.h2-heading-all{
        font-size: 32px;
    }
}
@media (max-width: 767px){
	h1{
		font-size:48px;
	}
	h1.homepage{
		font-size:44px; 
	}
	h1.homepage-small{
		font-size:34px; 
	}
	h1.product-listing{
		font-size:48px;
	}
	h1.product{
		font-size:48px;
	}
	.doc-takeuchi_article h1{
		font-size:36px;
	}
	h2.home-introduction{
		font-size:20px;
		line-height:130%;
	}
	h3.product-labels{
		font-size:18px;
		line-height:110%;
		letter-spacing:-1%;
	}
	h3.quick-links{
		font-size:20px;
	}
	h4.labels{
		font-family: 'Metropolis Medium';
		font-size:18px;
		line-height:140%;
	}
	blockquote{ 
		font-size:24px;
	}
	.richtext ul{
		margin:0 0 var(--Space-2x) var(--Space-3x);
	}
	.richtext ol{
		margin:0 0 var(--Space-2x) var(--Space-3x);
	}
}
/* TYPOGRAPHY */




/* PADDING */
.pb-05x{
	padding-bottom:var(--Space-05x)!important;
} 
.pb-1x{
	padding-bottom:var(--Space-1x)!important;
} 
.pb-2x{
	padding-bottom:var(--Space-2x)!important;
} 
.pb-3x{
	padding-bottom:var(--Space-3x)!important;
} 
.pb-4x{
	padding-bottom:var(--Space-4x)!important;
} 
.pb-5x{
	padding-bottom:var(--Space-5x)!important;
} 
.pl-0{
	padding-left:0!important;
}
.pl-1x{
	padding-left:var(--Space-1x)!important;
} 
.pr-0{
	padding-right:0!important;
}
.pr-2x{
	padding-right:var(--Space-2x)!important;
}
.pr-3x{
	padding-right:var(--Space-3x)!important;
}
.pr-7x{
	padding-right:var(--Space-7x)!important;
}
.pt-05x{
	padding-top:var(--Space-05x)!important;
}
.pt-2x{
	padding-top:var(--Space-2x)!important;
}
.pt-4x{
	padding-top:var(--Space-4x)!important;
}
.pt-6x{
	padding-top:var(--Space-6x)!important;
}
.pt-9x{ 
	padding-top:var(--Space-9x)!important;
}
.px-05x{
	padding-left:var(--Space-05x)!important;
	padding-right:var(--Space-05x)!important;
}
.px-1x{
	padding-left:var(--Space-1x)!important;
	padding-right:var(--Space-1x)!important;
}
.px-2x{
	padding-left:var(--Space-2x)!important;
	padding-right:var(--Space-2x)!important;
}
.px-4x{
	padding-left:var(--Space-4x)!important;
	padding-right:var(--Space-4x)!important;
}
.py-3x{
	padding-top:var(--Space-3x)!important;
	padding-bottom:var(--Space-3x)!important;
}
.py-2x{
	padding-top:var(--Space-2x)!important;
	padding-bottom:var(--Space-2x)!important;
}
.py-4x{
	padding-top:var(--Space-4x)!important;
	padding-bottom:var(--Space-4x)!important;
}
@media (min-width: 1024px) {
	.px-lg-0{
		padding-left:0!important;
		padding-right:0!important;
	}
	.px-lg-4x{
		padding-left:var(--Space-4x)!important;
		padding-right:var(--Space-4x)!important;
	}
}
@media (min-width: 990px) {
	.pt-mdd-4x{
	    padding-top:var(--Space-4x)!important;
	}
	.px-mdd-0{
		padding-left:0!important;
		padding-right:0!important;
	}
	.px-mdd-4x{
		padding-left:var(--Space-4x)!important;
		padding-right:var(--Space-4x)!important;
	}
	px-mdd-1x
}
@media (min-width: 768px) {
    .pl-md-0{
    	padding-left:0!important;
    }
    .pl-md-1x{
    	padding-left:var(--Space-1x)!important;
    } 
	.pr-md-3x{
		padding-right:var(--Space-3x)!important;
	}
	.pr-md-7x{
		padding-right:var(--Space-7x)!important;
	}
    .pt-md-0{
    	padding-top:0!important;
    }
	.py-md-4x{
		padding-left:var(--Space-4x)!important;
		padding-right:var(--Space-4x)!important;
	}
}
/* PADDING */


 


/* MARGIN */
.mb-05x{
	margin-bottom:var(--Space-05x)!important;
}
.mb-1x{
	margin-bottom:var(--Space-1x)!important;
}
.mb-15x{
	margin-bottom:var(--Space-15x)!important;
}
.mb-2x{
	margin-bottom:var(--Space-2x)!important;
}
.mb-25x{
	margin-bottom:var(--Space-25x)!important;
}
.mb-3x{
	margin-bottom:var(--Space-3x)!important;
}
.mb-4x{
	margin-bottom:var(--Space-4x)!important;
}
.mb-5x{
	margin-bottom:var(--Space-5x)!important;
}
.mb-6x{
	margin-bottom:var(--Space-6x)!important;
}
.mb-7x{
	margin-bottom:var(--Space-7x)!important;
}
.mb-8x{
	margin-bottom:var(--Space-8x)!important;
}
.mr-0{
	margin-right:0!important;
}
.mr-1x{
	margin-right:var(--Space-1x)!important;
}
.mr-2x{
	margin-right:var(--Space-2x)!important;
}
.mt-0{
	margin-top:0!important;
}
.mt-1x{
	margin-top:var(--Space-1x)!important;
}
.mt-2x{
	margin-top:var(--Space-2x)!important;
}
.mt-3x{
	margin-top:var(--Space-3x)!important;
}
.mt-4x{
	margin-top:var(--Space-4x)!important;
}
.mt-5x{
	margin-top:var(--Space-5x)!important;
}
.mt-6x{
	margin-top:var(--Space-6x)!important;
}
.mx-2x{
	margin-left:var(--Space-2x)!important;
	margin-right:var(--Space-2x)!important;
}
.my-2x{
	margin-top:var(--Space-2x)!important;
	margin-bottom:var(--Space-2x)!important;
}
.my-3x{
	margin-top:var(--Space-3x)!important;
	margin-bottom:var(--Space-3x)!important;
}
.my-4x{
	margin-top:var(--Space-4x)!important;
	margin-bottom:var(--Space-4x)!important;
}
@media (min-width: 990px) {
	.mx-mdd-0{
		margin-left:0!important;
		margin-right:0!important;
	}
    .mb-mdd-2x{
    	margin-bottom:var(--Space-2x)!important;
    }
    .mb-mdd-3x{
    	margin-bottom:var(--Space-3x)!important;
    }
    .mb-mdd-4x{
    	margin-bottom:var(--Space-4x)!important;
    }
}
@media (min-width: 768px) {
	.mt-md-0{
		margin-top:0!important;
	}
	.mb-md-3x{
		margin-bottom:var(--Space-3x)!important;
	}
	.mb-md-4x{
		margin-bottom:var(--Space-4x)!important;
	}
	.mb-md-7x{
		margin-bottom:var(--Space-7x)!important;
	}
	.mt-md-5x{
		margin-top:var(--Space-5x)!important;
	}
    .mt-mdd-6x{
    	margin-top:var(--Space-6x)!important;
    }
}
/* MARGIN */





/* BUTTONS */
input.btn,
a.btn{
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	padding-left:var(--Space-2x);
	padding-right:var(--Space-2x);
	padding-bottom:var(--Space-1x);
	gap: 10px;
	height: 42px;
	background:var(--White);
	border: 2px solid var(--Medium-Grey)!important;
	border-radius: 6px;
	flex: none;
	align-self: stretch;
	flex-grow: 0;
	box-shadow: 0px 4px 2px 0px transparent;
	position:relative;
	font-family: Michroma;
	font-size:16px;
	line-height:100%;
	font-weight:400;
	letter-spacing:1%;
	color: var(--Black)!important;
}
input.btn:hover,
a.btn:hover{
	border: 2px solid var(--Dark-Grey);
	box-shadow: 0px 4px 2px 0px #0000001A;
}
.btn-container{
	display:flex;
	position:relative;
}
.btn.btn-primary{
}
.btn.btn-primary:active,
.btn.btn-primary:hover{
	background-color:var(--White);
	border: 2px solid var(--Black)!important;
}
.btn.btn-primary.btn-primarywitharrow,
.btn.btn-primary.btn-arrow{
	padding-right:var(--Space-4x);
}
.btn.btn-primary.btn-primarywitharrow::after,
.btn.btn-primary.btn-arrow::after{
	content:"";
	position:absolute;
	background-image:url(/images/takeuchi/icons/btn-arrow.svg);
	background-size:15px 16px;
	width:15px;
	height:16px;
	position:absolute;
	right:var(--Space-15x);
	top:50%;
	margin-top:-8px;	
}
.btn.btn-primary.btn-location{
	padding-right:var(--Space-4x);
}
.btn.btn-primary.btn-location::after{
	content:"";
	position:absolute;
	background-image:url(/images/takeuchi/icons/target-grey.svg);
	background-size:20px 20px;
	width:20px;
	height:20px;
	position:absolute;
	right:var(--Space-15x);
	top:50%; 
	margin-top:-10px;	
}
.btn.btn-secondary{
	color: var(--Red)!important;
	background-color:var(--White);
	border: 2px solid var(--Red)!important;
} 
.btn.btn-secondary:active,
.btn.btn-secondary:hover{
	color: var(--Black)!important;
	border: 2px solid var(--Black)!important;
} 
input.btn.btn-tertiary,
.btn.btn-tertiary{
	padding:0 var(--Space-25x) 0 0;
	border:0!important;
	box-shadow:none;
	height:16px; 
	color: var(--Darkest-Grey)!important;
	background-color:transparent;
}
.btn.btn-tertiary:active,
.btn.btn-tertiary:hover{
	border:0!important;
	color: var(--Black)!important;
	box-shadow: 0px 4px 2px 0px transparent;
}
.btn.btn-tertiary::after{
	content:"";
	position:absolute;
	background-image:url(/images/takeuchi/icons/btn-arrow.svg);
	width:15px;
	height:16px;
	position:absolute;
	right:0;
	top:50%;
	margin-top:-8px;	
}
.btn.arrow-white::after{
	background-image:url(/images/takeuchi/icons/btn-arrow-white.svg)!important;
}
.btn.text-white{
    color:#fff!important;
}
.btn.btn-no-shadow{
	box-shadow:none;
}
input.btn.btn-primary.btn-arrow{
	background-image:url(/images/takeuchi/icons/btn-arrow.svg);
	background-size:15px 16px;
	background-repeat:no-repeat;
	background-position:right 20px center;
}
.btn.btn-tertiary.text-white:active,
.btn.btn-tertiary.text-white:hover{
	border:0!important;
	color: var(--White)!important;
	box-shadow: 0px 4px 2px 0px transparent;
}
/* BUTTONS */





/* GAPS */
.row.g-2x{
	margin-top:var(--Space--2x)!important;
}
.row.gy-3x{
	margin-top:var(--Space--3x)!important;
}
.row.gy-5x{
	margin-top:var(--Space--5x)!important;
}
.g-2x{
	--bs-gutter-x:var(--Space-2x)!important;
	--bs-gutter-y:var(--Space-2x)!important;
}
.g-3x{
	--bs-gutter-x:var(--Space-3x)!important;
	--bs-gutter-y:var(--Space-3x)!important;
}
.g-4x{
	--bs-gutter-x:var(--Space-4x)!important;
	--bs-gutter-y:var(--Space-4x)!important;
}
.gx-15x{
	--bs-gutter-x:var(--Space-15x)!important;
}
.gx-2x{
	--bs-gutter-x:var(--Space-2x)!important;
}
.row.g-3x{
	margin-top:var(--Space--3x)!important;
}
.gx-3x{
	--bs-gutter-x:var(--Space-3x)!important;
}
.gy-4x{
	--bs-gutter-y:var(--Space-4x)!important;
}
.gy-5x{
	--bs-gutter-y:var(--Space-5x)!important;
}
/* GAPS */





/* CHECKBOX CUSTOM START */
.mg-checkbox{
    position:relative;
}
.mg-checkbox label{
	position:relative;
}
.mg-checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}
.mg-checkbox .checkbox-checkmark{
    position: absolute;
    top:0;
    left:0;
    background-image:url(/images/takeuchi/form/checkbox-off.svg);
    background-repeat:no-repeat;
    background-position: center;
	background-size:30px 30px;
    width:30px;
    height:30px;
    border:0;
    cursor:pointer;
    padding:0;
}
.mg-checkbox-checkmark:hover{
    background-image:url(/images/takeuchi/form/checkbox-off.svg);
}
.mg-checkbox input:checked ~ .checkbox-checkmark {    
    background-position: center;
}
.mg-checkbox .checkbox-checkmark:after {
    content: "";
    position: absolute;
    display: none;
}
.mg-checkbox input:checked ~ .checkbox-checkmark:after {
    display: block;
}
.mg-checkbox input:checked ~ .checkbox-checkmark:before {
    display: block;
}
.mg-checkbox input:checked ~ .checkbox-checkmark {
}
.mg-checkbox .checkbox-checkmark:after {
    left:0;
    top: 0;
    width:30px;
    height:30px;
    border:0;
    background-image:url(/images/takeuchi/form/checkbox-on.svg);
    background-repeat:no-repeat;
    background-position: center;
	background-size:30px 30px;
}
.mg-checkbox .checkbox-checkmark:before {
    left: 0;
    top: 0;
    width:30px;
    height:30px;
    border:0;
}
.mg-checkbox span{
    padding-left:38px;
    padding-top:0;
    display:inline-block;
    cursor:pointer;
}
span.checkbox-checkmark-text{
  	color: #393939 !important;
	padding-top:6px;
	min-height:30px;
	vertical-align:top;
}
/* CHECKBOX CUSTOM END */





/* CUSTOM RADIO START */	
.mg-radio{
    position:relative;
}
.mg-radio label{
    position:relative;
}
.mg-radio input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}
.mg-radio .radio-checkmark{
    position: absolute;
    top: 0;
    left: 0;
    background-image:url(/images/takeuchi/form/radio-off.svg);
    background-repeat:no-repeat;
    background-position: center;
	background-size:30px 30px;
    width:30px;
    height:30px;
    border:0;
    cursor:pointer;
    padding:0;
}
.mg-radio .radio-checkmark:hover{
    background-image:url(/images/takeuchi/form/radio-off.svg);
}
.mg-radio input:checked ~ .radio-checkmark {    
    background-position: center;
}
.mg-radio .radio-checkmark:after {
    content: "";
    position: absolute;
    display: none;
}
.mg-radio .radio-checkmark:before {
    content: "";
    position: absolute;
    display: none;
}
.mg-radio input:checked ~ .radio-checkmark:after {
    display: block;
}
.mg-radio input:checked ~ .radio-checkmark:before {
    display: block;
}
.mg-radio input:checked ~ .radio-checkmark {
}
.mg-radio .radio-checkmark:after {
    left: 0;
    top: 0;
    width:30px;
    height:30px;
    border:0;
    background-image:url(/images/takeuchi/form/radio-on.svg);
    background-repeat:no-repeat;
    background-position: center;
	background-size:30px 30px;
}
.mg-radio .radio-checkmark:before {
    left: 0;
    top: 0;
    width:30px;
    height:30px;
    border:0;
}
.mg-radio span{
    padding-left:38px;
    padding-top:0;
    display:inline-block;
    cursor:pointer;
}
span.radio-checkmark-text{
  	color: #393939 !important;
	padding-top:3px;
	min-height:30px;
	vertical-align:top;
}
/* CUSTOM RADIO END */	





/* VIDEO */
.embed-container { 
	position: relative; 
	padding-bottom: 56.25%; 
	height: 0; 
	overflow: hidden; 
	max-width: 100%; 
	border-bottom:10px solid var(--Light-Grey)!important;
} 
.embed-container iframe, 
.embed-container object, 
.embed-container embed { 
	position: absolute; 
	top: 0; 
	left: 0; width: 100%; 
	height: 100%; 
}
/* VIDEO */





/* SUBSCRIBE */
.subscribe-panel {
	width: 180px;
}
.subscribe-panel {
	position: fixed;
	z-index: 1000;        
	right: 0;
	bottom: 0;
    background-color:var(--Red);
	color: #fff;
	padding: 15px 20px 10px 20px;
}
.subscribe-panel p{
	margin-bottom:5px;
}
.success-panel-close, .subscribe-panel-close {
	position: absolute;
	right: 10px;
	top: 6px;
	color: #fff;
	font-weight: bold;
	font-size: 14px;
	cursor: pointer;
}
.subscribe-panel h3 {
	font-size: 20px;
	line-height: 24px;
	margin-top: 0;	
}
.subscribe-panel input.error {
	background-color: #FCC;
}
.subscribe-panel.form2 input {
	outline: none;
}
.subscribe-panel input{       
	border: 0;
	border-radius: 2px;
	color: #000;
	padding:0.375rem;
	width: 100%;
	font-size:12px;
	line-height:1;
}
.subscribe-form-success {
    position: fixed;
    z-index: 1000;
    width: 280px;
    right: 0;
    bottom: 0;
    background-color:var(--Red);
    color: #fff;
    padding: 20px 20px 10px 20px;
}
.success-panel-close, .subscribe-panel-close {
    position: absolute;
    right: 10px;
    top: 6px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    cursor: pointer;
}
.subscribe-panel input.btn{
	font-size:12px!important;
	line-height:1;
	height:auto;
	padding-top:6px;
	padding-bottom:6px;
}
/* SUBSCRIBE */






/* SUBSCRIBE */
.form-control{
    box-shadow:none!important;
}
.form-control:focus{
    box-shadow:none!important;
    border: 2px solid var(--Medium-Grey);
}
.error {
    border: 2px solid var(--Red)!important;
}
.captcha.error{
    border:0!important;
}
#uses-error{
    padding-left:0;
}
.doc-takeuchi_contact .form-control{
    box-shadow: 0px 4px 2px 0px rgba(0, 0, 0, 0.1)!important;
}
.doc-takeuchi_contact .ui-selectmenu-button.ui-button{
    box-shadow: 0px 4px 2px 0px rgba(0, 0, 0, 0.1)!important;
}
/* FORMS */





/* SELECT */
.ui-selectmenu-button.ui-button{
    width:100%;
    border:2px solid var(--Medium-Grey);
    border-radius:6px!important;
}
.ui-selectmenu-text{
    font-family: Metropolis Light;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 0%;
    vertical-align: middle;
    padding:0;
}
.ui-menu .ui-menu-item-wrapper{
    font-family: Metropolis Light;
    font-size: 18px;
    line-height: 150%;
    letter-spacing: 0%;
    vertical-align: middle;
    padding:0;
}
.ui-menu .ui-menu-item{
    padding:4px 20px;
}
.ui-menu{
    padding:10px 0 10px!important;
}
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover{
    border:none;
    background:transparent;
    font-weight: normal;
    color: var(--Darkest-Grey);
    padding:0;
}
.ui-menu .ui-menu-item-wrapper{
}
.ui-selectmenu-button.ui-button{
    padding:8px 10px 8px 20px;
}
.ui-menu .ui-state-focus, .ui-menu .ui-state-active{
    margin: 0;
}
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus, .ui-button:hover, .ui-button:focus{
    background-color:#fff!important;
    border:2px solid var(--Medium-Grey);
    border-radius: 6px !important;
    color: var(--Darkest-Grey);
}
.ui-widget.ui-widget-content {
    border: 2px solid var(--Medium-Grey);
}
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited, a.ui-button, a:link.ui-button, a:visited.ui-button, .ui-button{
    color: var(--Darkest-Grey);
}
.ui-button{
    background:#fff!important;
}
.ui-button:hover{
    background:var(--Light-Grey)!important;
}
.ui-icon-triangle-1-s{
    background-image:url(/images/takeuchi/icons/select-down-grey.svg)!important;
    background-position:center center;
    background-size:28px 13px;
}
.ui-icon{
    width:28px;
    height:18px;
}
/* SELECT */






