/* MEDIA START **********************************************/
/* @media screen and (max-width: 1120px) {} */
/* @media screen and (max-width: 990px) {} */
/* @media screen and (max-width:480px){} */
/* MEDIA END **********************************************/
    
/* @media screen and (max-width: 1120px) {} */
/* @media screen and (max-width: 990px) {} */
/* @media screen and (max-width:480px){} */
body{
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#global_container {
	margin-top: 70px;
}/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {
	#global_container {
        margin-top: 50px;
    }
}
@media screen and (max-width: 480px) {
	#global_container {
        margin-top: 60px;
    }
}/* MEDIA END **********************************************/

#main_container {
	max-width: 1200px;
	margin: 0 auto;
}


.spacer{
	width: 500px;
	height: 500px;
}

.link {
	text-decoration: none;
}
/*************************************************** header  ******************************************************/
/*************************************************** header  ******************************************************/
/*************************************************** header  ******************************************************/

.header {
	width: 100%;
	position: fixed;
	top: 0;
	z-index: 9;
}
/* MEDIA START **********************************************/
@media (max-width: 480px) {
	.header{
        z-index: 10;
    }
}/* MEDIA END **********************************************/

/* MEDIA START **********************************************/
@media (max-width: 990px) {
	.desktop-nav{
        display: none;
    }
}	/* MEDIA END **********************************************/
    

.main-nav {
	display: flex;
	flex-direction: row;
	/* justify-content: space-between; */
	justify-content: inherit;
	align-items: center;
	flex-wrap: nowrap;
	background-color: white;
	height: 70px;
}
/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {
	.main-nav {
		height: 50px;
	}
} /* MEDIA END **********************************************/

.toplogo_box {
	min-width: 160px;
	height: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	flex-basis: 160px;
}
/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {
	.toplogo_box {
        min-width: 100px;
        flex-basis: 100px;
    }
}/* MEDIA END **********************************************/

.logo--link-to-top {
	width: 100%;
	height: 70px;
	object-fit: contain;
}
/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {
	.logo--link-to-top {
        height: 50px;
    }
} /* MEDIA END **********************************************/

.productlink {
	color: white;
	display: block;
	width: 100%;
	height: 100%;
}

.main-nav__link {
	position: relative;
	padding: 20px;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-evenly;
	align-items: center;
	flex-basis: auto;
}	/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {
	.main-nav__link {
        padding: 10px;
    }
}  /* MEDIA END **********************************************/

.link_box {
	margin: 0 20px;
}	/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {
	.link_box {
		margin: 0 5px;
	}
}	/* MEDIA END **********************************************/

.main-nav__link--right{
	display: inline-block;
	position: relative;
	flex-basis: 300px;
	padding: 20px;
}	/* MEDIA START **********************************************/
@media screen and (max-width: 1120px) {
	.main-nav__link--right{ 
	padding: 5px;
	}
}
@media screen and (max-width: 990px) {
	.main-nav__link--right{ 
	padding: 5px;
	}
}	/* MEDIA END **********************************************/


.logo_toplogo {
	height:100%;
}


.product-sub-menu {
	z-index: -1;
	top: -120%;
	position: fixed;
	/* display: none; */
	left: 0;
	width: 100%;
	height: 600px;
	background-color: #000000bb;
	transition: top 0.8s;
}	/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {
	.product-sub-menu {
        height: 500px;
    }
}  /* MEDIA END **********************************************/


.product-sub-menu.menu-active {
	top: 70px;
	transition: top 0.8s;
}
/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {
	.product-sub-menu.menu-active {
        top: 50px;
    }
} /* MEDIA END **********************************************/

.sub-menu_flexcontainer {
	padding: 50px 100px;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
}
/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {
	.sub-menu_flexcontainer {
        padding: 20px;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
    }
} /* MEDIA END **********************************************/

.sub-menu_head-list {
	width: 40%;
}
.sub-menu_head {
	transition: all .5s;
	z-index: 3;
	position: relative;
	display: block;
	font-weight: 300;
	color: white;
	font-size: 16px;
	padding: 20px 10px;
	/* margin-bottom: 50px; */
	border-bottom: 1px solid white;
}
.sub-menu_head:hover {
	color: black;
}
.sub-menu_head::before {
	transition: all .5s;
	transform: scaleX(0);
	z-index: -1;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.79);
	transform-origin: left;
}
.sub-menu_head:hover::before {
	transition: all .5s;
	z-index: -1;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: scaleX(1);
	transform-origin: left;
	background-color: rgba(255, 255, 255, 0.79);
}

.submenu-image-container {
	width: 60%;
	height: 500px;
	/* background-color: #36dfb5; */
}
/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {
	.submenu-image-container {
        height: 100%;
    }
} /* MEDIA END **********************************************/

.submenu-image-container-inner {
	margin: 80px auto;
	width: 500px;
	height: 350px;
	/* background-color: #5c5b5b; */
	overflow: hidden;
}
/* MEDIA START **********************************************/
@media screen and (max-width: 990px) {  
    .submenu-image-container-inner {
        width: 350px;
        height: 300px;
    }
} /* MEDIA END **********************************************/

.image-box {
	width: 500px;
	height: auto;
	display: none;
	opacity:0;
	transition: all .3s;
}

.thumbnail-active {
	display: block;
	opacity: 1;
	transition: all .3s;
	animation: opacity .5s;
}

@keyframes opacity {
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
	}
}
.product-thumbnail {
	width: 100%;
	height: auto;
}

.main-nav__sub-link-wrapper {
	position: absolute;
	top: 72px;
	left: 30%;
	background-color: #00000085;
	padding: 10px;
	margin-left: -10%;
	/* margin-top: -5px; */
	display: none;
}
.main-nav__sub-link {
	display: block;
	color: white;
	line-height: 1rem;
	padding-bottom: 0.5rem;
}
.main-nav__link--last {
	margin-left: auto;
	margin-right: 30px;
}

.main-nav--right {
	margin-left: auto;
	margin-right: 10px;
}	/* MEDIA START **********************************************/
/* @media screen and (max-width: 1120px) {} */
@media screen and (max-width: 990px) {
	.main-nav--right {
        margin-right: 5px;
    }
}
/* @media screen and (max-width:480px){} */
	/* MEDIA END **********************************************/

.main-nav__text {
	color: #5c5b5b;
	font-size: 14px;
	font-weight: bold;
	text-decoration: none;
}
@media screen and (max-width: 990px) {
	.main-nav__text {
	font-size: 12px;
	}
}
.main-nav__text.right {
	margin-left: 20px;
}

.hover1 {
	display: inline-block;
	position: relative;
}
.hover1::after {
	position: absolute;
	content: '';
	bottom: -10px;
	left: 0;
	width: 0;
	height: 1px;
	background: #212121;
	transition: all 0.3s ease 0s;
}
.hover1:hover {
	cursor: pointer;
}
.hover1:hover::after {
	width: 100%;
}
.mobile-nav{
	display: none;
}	/* MEDIA START **********************************************/
@media (max-width: 990px) {
	.mobile-nav{
        display: block;
    }
}	/* MEDIA END **********************************************/

/************************************ mobile-menu **************************************/
/************************************ mobile-menu **************************************/
/************************************ mobile-menu **************************************/
.menu-wrapper {
	display: none;
	position: absolute;
	top: 5px;
	left: 5px;
	z-index: 10;
	width: 50px;
	height: 50px;
}	/* MEDIA START **********************************************/
@media (max-width: 990px) {
	.menu-wrapper {
        display: block;
    }
}	/* MEDIA END **********************************************/


.logo--link-to-top--mobile{
	height: 95%;
}

/* MEDIA START **********************************************/
@media (max-width: 990px) {
	#menu-button {
        overflow: hidden;
        display: block;
        position: relative;
        z-index: 0;
        width: 50px;
        height: 50px;
        cursor: pointer;
	}
	#menu-button span,
    #menu-button::before,
    #menu-button::after {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 20px;
        height: 2px;
        margin: auto;
        background: black;
    }
    #menu-button span {
        overflow: hidden;
        z-index: 1;
        color: #ffffff;
    }
    #menu-button::before {
        z-index: 2;
        transform: translate(0, -6px);
        content: "";
    }
    #menu-button::after {
        z-index: 2;
        transform: translate(0, 6px);
        content: "";
	}
	#menu-button {
        transition: transform 300ms;
    }
    #menu-button span {
        opacity: 1;
        transition: opacity 200ms;
    }
    #menu-button::before,
    #menu-button::after {
        transition: transform 200ms;
    }
    
    #menu-button.active {
        transform: rotate(180deg);
    }
    #menu-button.active span {
        opacity: 0;
    }
    #menu-button.active::before {
        transform: rotate(45deg);
    }
    #menu-button.active::after {
        transform: rotate(-45deg);
    }
}/* MEDIA END **********************************************/
    

.main-nav--mobile{
	background-color: #FFFFFF;
	height: 60px;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}

.sub-nav{
	display: none;
	position: fixed;
	z-index: 999;
	top: 60px;
	width: 80%;
	left: -100%;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	height: 100%;
	background-color: rgba(34, 34, 34, 0.9);
}
/* MEDIA START **********************************************/
@media (max-width: 990px) {
	.sub-nav{
        display: block;
    }
}
@media (max-width: 600px) {
	.sub-nav{
		height: 93vh;
    }
}
/* MEDIA END **********************************************/

.sub-nav_container {
	width: 100%;
}

.sub-nav_head-container {
	padding: 20px 10px;
	margin: 20px 0;
	border-bottom: solid 1px #525252;
	right: 100%;
	color:white;
	font-size: 20px;
}
.sub-nav_arrow {
	position: absolute;
	display: inline-block;
	right: 20px;
}
.sub-nav_submenu-container {
	display: none;
	padding: 10px;

}
.submenu_list {
	padding: 5px 0;
	font-size: 16px;
}
.submenu_link {
	display: block;
	width: 100%;
	height: 100%;
	color: #d2d2d2;
	text-decoration: none;
}





.sub-nav__link{
	display: block;
	width: 100%;
	height: 100%;
	color:white;
	font-size: 20px;
	text-decoration: none;
}



/**************************************************** footer ****************************************************/
/**************************************************** footer ****************************************************/
/**************************************************** footer ****************************************************/
.footer {
	padding: 20px 0 50px 0;
	margin: auto;
	width: 100%;
	background-color: #212121;
}	/* MEDIA START **********************************************/
@media (min-width: 480px) {
	.footer {
		padding: 50px 0 100px 0;
	}
} /* MEDIA END **********************************************/

.footer__container {
	width: 100%;
	padding: 0;
	margin: 0 auto;
}	/* MEDIA START **********************************************/
@media (min-width: 480px) {
	.footer__container {
		max-width: 1230px;
		padding: 0 40px;
		margin: 0 auto;
	}
}	/* MEDIA END **********************************************/

.footer-nav {
	color: white;
}

.footer-nav__inner {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}	/* MEDIA START **********************************************/
@media (min-width: 480px) {

}	/* MEDIA END ************************************************/



.footer-nav__headline {
	color: white;
	font-size: 24px;
	line-height: 24px;
	margin: 0;
	padding: 20px 0 20px 20px;
	font-weight: 100;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}	/* MEDIA START **********************************************/
@media (min-width: 990px) { 
	.footer-nav__headline {
		margin: 0;
		margin-bottom: 30px;
	}
}	/* MEDIA END **********************************************/

.footer-nav__headline span {
	display: block;
	font-size: 20px;
	padding-right: 20px;
}	/* MEDIA START **********************************************/
@media (min-width: 480px) {
	.footer-nav__headline span {
		display: none;
	}
} /* MEDIA END **********************************************/


.footer-nav__calumn {
	width: 100%;
	border-bottom: solid 1px #999;
}	/* MEDIA START **********************************************/
@media (min-width: 990px) {
	.footer-nav__calumn {
		width: 25%;
		border-bottom: none;
	}
}	/* MEDIA END **********************************************/


.footer-nav__calumn--sns {
	width: 100%;
	border-bottom: none;
}	/* MEDIA START **********************************************/
@media (min-width: 990px) {
	.footer-nav__calumn--sns {
		width: 25%;
	}
}	/* MEDIA END **********************************************/


.footer-nav__headline--sns {
	display: none;
}	/* MEDIA START **********************************************/
@media (min-width: 990px) {
	.footer-nav__headline--sns {
		display: block;
	}
}	/* MEDIA END **********************************************/




.footer-nav__list-container {
	display: none;
	padding: 0 0 30px 20px;
	margin-right: 40px;
}	/* MEDIA START **********************************************/
@media (min-width: 990px) {
	.footer-nav__list-container {
		display: block;
		padding: 0 20px;
	}
}	/* MEDIA END **********************************************/

.footer-nav__list {
	font-size: 16px;
	padding-left: 3px;
	margin-bottom: 14px;
	line-height: 16px;
}	/* MEDIA START **********************************************/
@media (min-width: 990px) {
	.footer-nav__list {
		font-size: 14px;
		line-height: 14px;
	}
}	/* MEDIA END **********************************************/

.footer-nav__list:hover {
	color: white;
}


.footer-nav__list--last {
	padding-bottom: 15px;
}
.footer-nav__link {
	color: white;
}
.footer-bottom {
	margin-top:40px;
}
.footer-bottom__copyright {
	color: #999;
	font-size: 14px;
	font-weight: 300;
	line-height: 14px;
	text-align: center;
}	/* MEDIA START **********************************************/
@media (min-width: 990px) {
	.footer-bottom__copyright {
		text-align: left;
	}
}	/* MEDIA END **********************************************/

.footer-nav__icon-container {
	padding: 30px 0;
	display: inline-block;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	flex-wrap: nowrap;
}	/* MEDIA START **********************************************/
@media (min-width: 990px) {
	.footer-nav__icon-container {	
		justify-content: flex-start;
	}
}	/* MEDIA END **********************************************/


.footer-nav__sns-icon {
	width: 30px;
	margin: 0 10px;
}	/* MEDIA START **********************************************/
@media (min-width: 990px) {
	.footer-nav__sns-icon {
		margin: 0 0 0 20px;
	}
}	/* MEDIA END **********************************************/


