@charset "utf-8";


/*-------------Fonts---------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;600&display=swap'); /*--------- Header & Footer --------*/
@import url('https://fonts.googleapis.com/css2?family=Nanum+Myeongjo:wght@400;700&display=swap'); /*--------- About & Contact --------*/

/*-------------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,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td
{border:none;outline:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;text-decoration:none;margin:0;padding:0;}
table{border-collapse:separate;border-spacing:0}
blockquote:before,blockquote:after,q:before,q:after{content:""}
*{margin:0;padding:0;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block; }								  
ol, ul { list-style: none;}
blockquote, q { quotes: none;}
:focus { outline: 0;}
table { border-collapse: collapse; border-spacing: 0;}
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
a{text-decoration:none; position:relative; color:#000;}
audio,video,canvas {max-width: 100%;}
 
/*-------------General Style---------------------------------------*/

html {
	overflow-x:hidden !important;
	overflow-y:hidden !important;
	height: 100%;
}
html.scroll {
	overflow-y:auto !important;
}

body {
	margin: 0;
	padding: 0;
	font-weight: 400;
	font-size: 13px;
	height: 100%;
	text-align: center;
	background:#fff;
	color: #000;
	font-family: 'Ek Mukta', sans-serif;
}

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

/*--------------Typography--------------------------------------*/
p {
	font-size: 12px;
	line-height: 24px;
	padding-bottom: 10px;
	font-weight: 500;
	color: #5e646a;
	text-align:left;
}
blockquote {
	float: left;
	padding: 10px 20px;
	margin: 0 0 20px;
	font-size: 17.5px;
	border-left: 15px solid #eee;
	position: relative;
}
blockquote:before {
	font-family: Font Awesome\ 5 Pro;
	content: "\f10e";
	position: absolute;
	color: #ccc;
	bottom: 3px;
	font-size: 43px;
	right: 6px;
	opacity: 0.4
}
blockquote p {
	font-family: 'Libre Baskerville', serif;
    font-style:italic;
	color: #666;
}
.bold-title {
	margin: 15px 0;
	font-size: 24px;
	text-align: left;
	font-weight: 600;
}

/*--------------General--------------------------------------*/
#main {
	display:block;
    height: 100vh;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	padding:0;
	z-index: 2;
}
#main-home {
	display:block;
	height: 100vh;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	padding:0 50px;
	z-index: 2;
}
.fl-wrap {
	float: left;
	width: 100%;
	position: relative;
}
.content {
	float: left;
	width: 100%;
	position: relative;
	z-index: 5;
}
.container {
	max-width: 1224px;
	width: 92%;
	margin: 0 auto;
	position: relative;
	z-index: 5;
}
.full-height {
    height: calc(100vh - 155px);
}
#main-home .full-height {
    height: calc(100vh - 100px);
}
#wrapper {
	width: 100%;
    position: relative;
    float: left;
    padding-top: 75px;
    z-index: 5;
    height: 100%;
    -webkit-transition: all 300ms linear;
    transition: all 300ms linear;
}
#wrapper.fullsceen-wrap {
    padding-bottom: 80px;
}
.respimg {
	width: 100%;
	height: auto;
}
.hidden-item {
	overflow:hidden;
}
.bg {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-size:auto ;
    background-attachment: scroll;
    background-position: center;
    background-repeat:no-repeat;
    background-origin: content-box;
}
.overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    background: rgba(45,45,45,0.1);
	z-index: 3;
}
.dark-bg {
	background:#2A2A2E;
}

/* ------sections------------------------------------------------------------ */ 
section {
	float:left;
	width:100%;
	padding:90px 0;
}
.to-top-btn {
	font-size:10px;
	letter-spacing:2px;
	text-transform:uppercase;
	font-weight:700;
	position:relative;
	float: right;
	color:#fff;
	padding:13px 27px;
	background:#292929;
	margin-right:-30px;
}
.to-top-btn i {
	padding-left:20px;
	color:rgba(255,255,255,0.9)
}
.to-top-btn:hover {
	color:rgba(255,255,255,0.6)
}

.small-container {
	max-width:700px;
}


/* ------about & contact------------------------------------------------------------ */ 

/* Layout */ 
.flex-container {
	max-width: 100%;
	margin:0px auto;
}
.flex-col {
	padding: 1em;
}
.flex-container img {
	width:100%;
}

.flex-col-1 {
	flex:1;
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	align-self: flex-start;
}  
.flex-col-2 {
	flex: 1;  
	display:flex;
	align-items:center;
	justify-content:center;
	margin-bottom:75px;
}

@media only screen and (min-width: 900px) {
	.flex-layout {
		display: flex;
	}
}



/* Text */ 
.about, .contact {
	font-family: 'Nanum Myeongjo', serif;
}
.about h3, .contact h3 {
	position:relative;
	text-align: left;
    font-size: 24px;
    text-transform: uppercase;
    font-weight: 700;
    float: left;
    width: 100%;
	margin-bottom:40px;
	margin-top:0px;
}
.about h2, .contact h2 {
	text-align: left;
    font-size: 17px;
	color:#444;
    text-transform: uppercase;
    font-weight: 600;
    float: left;
    width: 100%;
	padding-bottom:0px;
	margin-top:30px;
	margin-bottom:20px;
}
.about h4, .contact h4 {
    font-style: italic;
	color:#444;
	text-align:left;
	font-size:13px;
	margin-bottom:40px;
}
.about p {
	font-size: 15px;
	margin-top:-10px;
	margin-bottom:10px;
}
.about span {
	font-style: italic;
}

/*------btn------------------------------------------------*/
.btn {
	padding: 15px 35px;
    cursor: pointer;
    background: #292929;
    -webkit-appearance: none;
    position: relative;
    color: #fff;
    font-size: 10px;
	letter-spacing:1px;
	text-transform:uppercase;
    font-weight: 700;
	display:inline-block;
}

.btn:before {
	content:'';
	position:absolute;
	right:15px;
	top:50%;
	width:0;
	height:1px;
	background:#fff;
}
.btn:before , .btn , .follow-wrap_title i {
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.btn:hover{
	padding-right:55px;
	color:rgba(255,255,255,0.71);
}


.btn-lg {
	padding: 15px 40px;
	background:rgba(0,0,0,0.71);
	color: #fff;
	font-size: 12px;
	letter-spacing:1.5px;
}

.btn-lg:before {
	background:#fff;
}

.btn-lg:hover{
	padding-right:55px;
	color:rgba(255,255,255,1);
}

.btn-light {
    background:rgba(255,255,255,0.71);
    color: #000;
}
.btn-light:before {
	background:#000;
}
.btn-light:hover {
    color:rgba(0,0,0,1);
}

.pr-det-container .btn{
	-webkit-transition: all 0.0s ease-in-out;
	transition: all 0.0s ease-in-out;
}
.btn:hover:before {
	width:10px;
}
.fl-btn {
	float:left;
	margin-top:20px;
}



/* ------------------------------------------------------------- *
 * NEW PRELOADER
/* ------------------------------------------------------------- */

.preloader {
	position: fixed;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 999;
	background-color: white;
}
body.loaded .preloader {
	display: none;
}
.preloader img {
	width:100%;
	height:100%;
	max-width:100px;
	max-height:100px;
	opacity:.8;
	position: absolute;
	top: 50%;
	top:-webkit-calc(50% - 90px);
	top:-moz-calc(50% - 90px);
	top:calc(50% - 90px);
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-45%,-50%);
	transform: translate(-50%,-50%);
}
.preloader p {
	font-family: 'Nanum Myeongjo', serif;
	position: absolute;
	top: 50%;
	left: 50%;
	font-size: 15px;
	margin: 0;
	letter-spacing: 13px;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.preloader .circle {
	position: absolute;
	display: inline-block;
	width: 18px;
	height: 18px;
	top: 50%;
	top:-webkit-calc(50% - 16px);
	top:-moz-calc(50% - 16px);
	top:calc(50% - 16px);
	left: 80%;
	left:-webkit-calc(50% + 90px);
	left:-moz-calc(50% +90px);
	left:calc(50% + 90px);
	border-radius: 50%;
	color:#303030;
	border: 2px solid;
	border-right-color: transparent;
	background-color: transparent;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	-webkit-animation-duration: .65s;
	animation-duration: .65s;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-name: rotate;
	animation-name: rotate;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
}

@media (max-width: 900px) {

	.preloader img {
		max-width:70px;
		max-height:70px;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%,-50%);
		-ms-transform: translate(-50%,-50%);
		transform: translate(-50%,-50%);
	}
	.preloader p {
		top: 50%;
		left: 50%;
		top:-webkit-calc(50% + 70px);
		top:-moz-calc(50% + 70px);
		top:calc(50% + 70px);
		font-size: 12px;
		letter-spacing: 9px;
		-webkit-transform: translate(-50%,-50%);
		-ms-transform: translate(-50%,-50%);
		transform: translate(-50%,-50%);
	}
	.preloader .circle {
		width: 14px;
		height: 14px;
		top: 50%;
		top:-webkit-calc(50% + 57px);
		top:-moz-calc(50% + 57px);
		top:calc(50% + 57px);
		left: 80%;
		left:-webkit-calc(50% + 65px);
		left:-moz-calc(50% +65px);
		left:calc(50% + 65px);
		-webkit-transform: translate(-50%,-50%);
		-ms-transform: translate(-50%,-50%);
		transform: translate(-50%,-50%);
	}
}


@-webkit-keyframes rotate
{
	0% {
		-webkit-transform:rotate(0deg);
		-ms-transform:rotate(0deg);
		transform:rotate(0deg)
	}
	100% {
		-webkit-transform:rotate(360deg);
		-ms-transform:rotate(360deg);
		transform:rotate(360deg)
	}
}
@-moz-keyframes rotate
{
	0% {
		-webkit-transform:rotate(0deg);
		-ms-transform:rotate(0deg);
		transform:rotate(0deg)
	}
	100% {
		-webkit-transform:rotate(360deg);
		-ms-transform:rotate(360deg);
		transform:rotate(360deg)
	}
}
@keyframes rotate
{
	0% {
		-webkit-transform:rotate(0deg);
		-ms-transform:rotate(0deg);
		transform:rotate(0deg)
	}
	100% {
		-webkit-transform:rotate(360deg);
		-ms-transform:rotate(360deg);
		transform:rotate(360deg)
	}
}


/* ---------contact form--------------------------------------*/

.custom-form {
	float: left;
	width: 100%;
	position: relative;
}
.custom-form textarea,
.custom-form input[type="text"],
.custom-form input[type=email],
.custom-form input[type=password] {
	float: left;
	border: none;
	border: 1px solid #e4e4e4;
	background: #fff;
	width: 100%;
	padding: 20px 30px;
	color: #000;
	font-size: 12px;
	-webkit-appearance: none;
}
.custom-form input::-webkit-input-placeholder,
.custom-form textarea::-webkit-input-placeholder  {
	color: #000;
	font-weight: 600;
	font-size: 10px;
	position: relative;
	font-family: 'Ek Mukta', sans-serif;
	text-transform:uppercase;
	letter-spacing:2px;
}
.custom-form input:-moz-placeholder,
.custom-form textarea:-moz-placeholder {
	color: #000;
	font-weight: 600;
	font-size: 10px;
	position: relative;
	font-family: 'Ek Mukta', sans-serif;
	text-transform:uppercase;
	letter-spacing:2px;
}
.custom-form textarea {
	height: 200px;
	resize: none;
	padding: 25px 30px;
	-webkit-appearance: none;
}
.custom-form input {
	margin-bottom: 20px;
}
.custom-form button {
	padding: 0   25px;
	outline: none;
	border: none;
	cursor: pointer;
	background:#292929;
	-webkit-appearance: none;
	height:44px;
	line-height:44px;
	float:left;
	position:relative;
	color:#fff;
	font-size:11px;
	text-transform:none !important;
	font-weight:700;
	margin:25px 0 15px;
	border-radius:0;
}
#message {
	text-align:left;
	float:left;
	width:100%;
	padding-bottom:20px;
	color:#000;
}
#message h3 {
	font-size:16px;
	padding-bottom:10px;
 
}
#message p strong {
	font-weight:800px;
	color:#000;
}

#success_message {
	text-align: left;
	font-size:20px;
	line-height:30px;
	color:#2A2A2E;
	text-transform: none;
}

#error_message {
	text-align: left;
	font-size:20px;
	line-height:30px;
	color:red;
	text-transform:none;
}



/* ------------------------------------------------------------- *
 * MENU NAVIGATION
/* ------------------------------------------------------------- */

/* Header  
=============== */
#header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
    padding:15px 40px;
	background:#fff;
	color: #000;
	z-index: 10;
	pointer-events: none;
	font-family: 'Noto Serif JP', serif;
}
#main-home #header {
    padding:15px 50px;
	height:100px;
}


/* header position fixed */
#header.header-fixed {
	position: fixed; 
}

/* header inner */
.header-inner {
	width: 100%;
	display: flex;
	padding-top: 10px;
	align-items: center;
}

body:not(.boxed) .header-inner,
.header-inner:not(.wrap) {
	padding-left: 0%;
	padding-right: 0%;
}

/* header columns */
.header-col {
	display: flex;
	align-items: center;
}
.header-col:first-child {
	margin-right: auto;
}


/* header logo */
.logo {
	position: absolute;
	top: 15px;
	margin-right: auto;
	line-height: 1;
	pointer-events: initial;
	z-index: 10;
	text-transform: uppercase;
	height:60px;
}
#main-home .logo {
	top: 20px;
}

.logo a {
	height:40px;
    color: #000;
    transition: all 0.2s ease-in-out;
}

.logo a h2 {
	display: inline-block;
	font-size: 21px;
	line-height: 21px;
	padding-left:10px;
	padding-top:0px;
	
}

.logo a h3 {
	font-size: 12px;
	line-height: 12px;
	padding-left:58px;
	padding-top:0px;
    letter-spacing:7.5px;
    margin-top:-13px;
}

.logo a:hover {
	color:rgba(0,0,0,0.7)
}
.logo img {
	padding-top: 12px;
	max-height: 50px; 
}




/* Classic menu (desktop)
========================== */
@media (min-width: 900px) {
	.main-menu {
		pointer-events: initial;
	}
	body.header-tools-on .main-menu {
		margin-right: 20px;
	}
	.main-menu-list {
		margin: 0;
		list-style: none;
		font-size: 0; /* inline list cap fix */
	}
	.main-menu-list > li {
		display: inline-block;
		font-size: inherit; /* inline list cap fix */
		padding: 0 20px;
		transition: opacity 0.2s;
	}
	.main-menu-list > li:first-child {
		margin-left: 0;
		padding-left: 0;
	}
	.main-menu-list > li:last-child {
		margin-right: 0;
		padding-right: 0;
	}
	.main-menu-list > li > a,
	.main-menu-list > li > .submenu-trigger > a {
		display: block;
		padding: 15px 5px;
		font-size: 12px;
		font-weight: 300;
		color: #000;
		transition: color 0.3s, opacity 0.3s;
	}
	
	/* Main menu hover */
	.main-menu-list.mm-hover > li > a:hover,
	.main-menu-list.mm-hover > li > .submenu-trigger > a:hover,
	.main-menu-list.mm-hover > li.active > .submenu-trigger > a,
	.main-menu-list.mm-hover > li.submenu-open > .submenu-trigger > a {
		opacity: 1;
		color: rgba(0, 0, 0, 0.5);
		cursor:pointer;
	}


	/* Submenu 
	============ */
	.submenu-wrap {
		position: relative;
	}

	.submenu {
		position: absolute;
		display: block !important;
		top: 75px;
		left: 0;
		width: 200px;
		background-color: #fff;
		text-align: left;
		visibility: hidden;
		opacity: 0;
		z-index: 99999;
		border-radius: 3px;
		transform: translate3d(0, 10px, 0);
		transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out, transform 0.3s ease-in-out;
        box-shadow: 3px 2px 7px 1px rgba(0,0,0,0.35);
        -moz-box-shadow: 3px 2px 7px 1px rgba(0,0,0,0.35);
        -webkit-box-shadow: 3px 2px 7px 1px rgba(0,0,0,0.35);
	}

	/* Open submenu on hover */
	.submenu-wrap.submenu-open > .submenu {
		visibility: visible;
		opacity: 1;
		transform: translate3d(0, 0, 0);
		transition-delay: 0.1s;
	}

	/* submenu links */
	.submenu-list {
		margin: 0;
		padding: 15px 0;
		list-style: none;
	}
	.submenu-list li {
		width: 100%;
	}
	/* 
	.submenu-list li:first-child {
	}
	.submenu-list li:last-child {
	}
	 */
	.submenu-list li a {
		position: relative;
		display: block;
		padding: 10px 25px 10px 20px;
		text-decoration: none;
		font-size: 12px;
		font-weight: 400;
		line-height: 1.4;
		color: #000;
		transition: all 0.2s ease-in-out;
	}
	.submenu-list > li a:hover, 
	.submenu-list > li > .submenu-trigger:hover a, 
	.submenu-list > li.active > a, 
	.submenu-list > li.active > .submenu-trigger a {
		color: rgba(0, 0, 0, 0.5);
	}

	/* Set submenu position to right on last menu list element */
	.main-menu-list > li:last-child > .submenu {
		left: auto;
		right: 0;
	}

	/* Sub-submenu */
	.submenu .submenu-wrap > .submenu { 
		left: 100%;
		right: auto;
		margin-top: -50px;
		margin-left: 0;
	}

	/* Submenu toggle */
	.m-caret {
		display: none;
	}

	/* Sub-submenu */
	.submenu .submenu-wrap > .submenu { 
		left: 100%;
		right: auto;
		margin-top: -50px;
		margin-left: 0;
	}

	/* Caret in sub-submenus */
	.submenu-wrap .submenu-wrap .submenu-trigger > a::after {
		position: absolute;
		right: 10px;
		top: 50%;
		transform: translate3d(0, -50%, 0) rotate(-90deg);
	}


	/* Submenu styles 
	================== */
	/* Submenu dark style */
	.submenu-dark .submenu {
		background-color: #212121;
		color: #a9a9a9;
	}
	.submenu-dark .submenu .submenu-list li a {
		color: #a9a9a9;
	}
	.submenu-dark .submenu .submenu-list > li a:hover, 
	.submenu-dark .submenu .submenu-list > li > .submenu-trigger:hover a, 
	.submenu-dark .submenu .submenu-list > li.active > a, 
	.submenu-dark .submenu .submenu-list > li.active > .submenu-trigger a {
		color: #555;
		background-color: transparent;
	}
}



/* ------------------------------------------------------------- *
 * FOOTER
/* ------------------------------------------------------------- */

  #footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 75px;
    z-index: 5;
    padding:0 40px;
	background-color:#fff;
}
#home-footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 75px;
    z-index: 5;
    padding:0px 100px 0 0px;
	background-color:#fff;
}

footer .copyright {
    position: relative;
    float: left;
    height: 75px;
    display: table;
    max-width: 50%;
    overflow: hidden;
}
footer .copyright p {
    display: table-cell;
    vertical-align: middle;
    font-size: 11px;
    color:#222;
    font-family: 'Noto Serif JP', serif;
}

footer .social-links {
    position: relative;
    float: right;
    height: 75px;
    max-width: 50%;
    overflow: hidden;
}
footer .social-links ul {
    position: relative;
    height: 75px;
    display: table;
	margin-top:-5px;
}
footer .social-links ul li {
    display: table-cell;
    vertical-align: middle;
    padding: 0 10px 0;
}
footer .social-links ul li:first-child {
    padding-left: 0;
}
footer .social-links ul li:last-child {
    padding-right: 0;
}
footer .social-links ul li a {
	outline:none;
	font-size:14px;
	color:#424242;
}
footer .social-links ul li a:hover {
	color:#000;
}

@media only screen and (max-width: 900px) {
	#footer {
		height: 50px;
		line-height: 50px;
		padding: 0 25px;
	}
	#home-footer {
		height: 50px;
		line-height: 50px;
		padding:0px 35px 0px 0px;
	}
	footer .copyright {
		display: none;
		height: 50px;
	}
	footer .social-links {
		float: none;
		height: 50px;
		max-width: 100%;
		text-align: center;
		font-size: 12px;
	}
	footer .social-links ul {
		height: 50px;
		display: inline-block;
		padding-top:1px;
	}
	footer .social-links ul li {
		display: inline-block;
		line-height: 50px;
	}
}


/* ------------------------------------------------------------- *
 * HOMEPAGE SLIDER
/* ------------------------------------------------------------- */

.swiper-container {width:100%;height:100%;margin:0 auto;}  

.slider-wrap .swiper-slide, .homepage-gallery-wrap .swiper-slide , .portfolio-wrap .swiper-slide {position:relative; width: auto;}

.slider-wrap, .portfolio-wrap, .homepage-slider-img .swiper-slide {
	float:left;
	width:100%;
	height:100%;
	position:relative;
}
.swiper-slide { 
	transform: translate3D(0px, 0px, 0px);
	-webkit-transform:translate3D(0px, 0px, 0px);
	-o-transform: translate3D(0px, 0px, 0px);
	-moz-transform: translate3D(0px, 0px, 0px);
	-ms-transform: translate3D(0px, 0px, 0px);
	backface-visibility:hidden; 
	-webkit-backface-visibility:hidden; 
} 
.swiper-wrapper { 
	backface-visibility:hidden; 
	-webkit-backface-visibility:hidden; 
	transform-style: preserve-3d; 
	-webkit-transform-style: preserve-3d; 
	-webkit-transform: translate3D(0px, 0px, 0px);
	transform: translate3D(0px, 0px, 0px);
}
.hlaf-slider-pag {
    position: absolute;
    bottom:0px;
    right: 0px;
    z-index: 120;
}
.hlaf-slider-pag.hlaf-slider-pag_fs {
	bottom:20px;
	right: 30px;
	width: auto !important;
	left: auto !important;
	margin: 0;
}
.hlaf-slider-pag .swiper-pagination-bullet {
    width:50px;
    height:20px;
    display:block;
	float:left;
	margin-bottom:0px;
	line-height:20px;
    border-radius:0;
    background:none;
	overflow:hidden;
	opacity:0.8;
	position:relative;
}
.homepage-slider-wrap_pagination  .swiper-pagination-bullet:before {
	content:'';
	position:absolute;
	left:10px;
	height:1px;
	top:50%;
	background:#fff;
	width:0;
	margin-top:-1px;
	-webkit-transition: all 200ms linear;
    transition: all 200ms linear;
}
.homepage-slider-wrap_pagination  .swiper-pagination-bullet.swiper-pagination-bullet-active:before , .homepage-slider-wrap_pagination  .swiper-pagination-bullet:hover:before {
	width:10px;
}
.homepage-slider-wrap_pagination  .swiper-pagination-bullet:after {
	content:'01';
	position:absolute;
	left:30px;
	right:0;
	bottom:0;
	top:0;
	line-height:20px;
	color:#fff;
	font-size:18px;
	font-weight: 500;
	-webkit-transform: scale(0.5);
	-moz-transform: scale(0.5);
	transform: scale(0.5);
	-webkit-transition: all 100ms linear;
    transition: all 100ms linear;
	opacity:1;
}
.homepage-slider-wrap_pagination  .swiper-pagination-bullet.swiper-pagination-bullet-active:after , .homepage-slider-wrap_pagination  .swiper-pagination-bullet.swiper-pagination-bullet-active {
	opacity:1;
	-webkit-transform: scale(1.0);
	-moz-transform: scale(1.0);
	transform: scale(1.0);
}
.homepage-slider-item {
	height:100%;
}
.homepage-slider_align_title {
	position: absolute;
	top:50%;
	left:50%;
	transform: translate(-50%, -50%);
	z-index:20;
	opacity:0;
    background-color: white;
    width:300px;
    padding:50px;
    -moz-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out;
}
.swiper-slide-active  .homepage-slider_align_title {
    opacity: .8;
}
.swiper-slide-active:hover .homepage-slider_align_title{
    opacity: .8;
}
.homepage-slider-item .homepage-slider_align_title:hover {
    opacity: 1;
}
.homepage-slider_align_title h2 {
    font-family: 'Nanum Myeongjo', serif;
	font-weight:300;
    position: relative;
    display: block;
    font-size: 18px;
    line-height: 30px;
    margin-top:0px;
    letter-spacing: 4px;
    text-transform: uppercase;
	text-align: center;
}
.homepage-slider_align_title h2 , .homepage-slider_align_title h2 a {
    color:#000;
}
.homepage-slider_control-wrap {
	position:absolute;
	bottom:0;
	left:0;
	width:55%;
	padding:20px 40px 40px 170px;
	z-index:10;
}
.homepage-slider_control-wrap .scroll-down-wrap {
	top:14px;
}
.home-slider-counter-wrap {
	position:absolute;
	left:180px;
	bottom:50px;
	z-index:20;
}
.home-slider-counter-wrap .swiper-counter{
	padding:12px 25px;
	background:rgba(0,0,0,0.71);
	float:left;
	position:relative;
	visibility:hidden;
	opacity:0;
}
.home-slider-counter-wrap .swiper-counter:before {
    content: '';
    position: absolute;
    top: 18px;
    width: 12px;
    height: 1px;
    left: 50%;
    margin-left: -6px;
    background: rgba(255,255,255,0.41);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.home-slider-counter-wrap .swiper-counter div {
    float: left;
    width: 30px;
    position: relative;
    font-size: 10px;
    color: #fff;
    font-weight: 500;
}
.home-main_container {
	position:absolute;
	left:0;
    right:0;
    bottom:0;
    top:0;
	top:0;
	background:#fff;
}
.home-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background-size: cover;
	background-attachment: scroll;
	background-position: center;
	background-repeat: repeat;
	background-origin: content-box;
}
.homepage-slider-controls {
	position:absolute;
	bottom:-25px;
	height:50px;
	padding:0 50px;
	right:50px;
	z-index:10;
}
.homepage-slider-cont{
	position:absolute;
	top:50%;
	margin-top:-18px;
	width:45px;
	height:45px;
	color:#fff;
	cursor:pointer;
	font-size:12px;
	line-height:45px;
	z-index:20;
    background: rgba(0,0,0,0.71);
	border-radius:100%;
    display:none;
}
.homepage-slider-prev , .homepage-slider-cont-prev {
	left:40px;
}
.homepage-slider-next , .homepage-slider-cont-next {
	right:40px;
}
.homepage-slider-pagination_wrap {
	height:20px;
	line-height:20px;
	position:absolute;
	bottom:20px;
	z-index:10;
	left:0;
	width:100%;
}
.homepage-slider-pagination{
	position:relative;
	display:inline-block;
}
.homepage-slider-pagination:before {
    content: '';
    position: absolute;
    left: -40px;
    right: -40px;
    bottom: -8px;
    top: -8px;
    border-radius: 25px;
    background: rgba(0,0,0,0.51);
}
.homepage-slider-pagination .swiper-pagination-bullet  {
	background:rgba(255,255,255,0.41);
	margin:0 5px;
	padding:0;
	height:5px;
	border-radius:100%;
	opacity:1;
	width:5px;
	position:relative;
	top:-2px;
}
.homepage-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background:#fff;
}


.homepage-slider-wrap_pagination  .swiper-pagination-bullet:nth-child(2):after{
	content:'02';
}
.homepage-slider-wrap_pagination  .swiper-pagination-bullet:nth-child(3):after{
	content:'03';
}
.homepage-slider-wrap_pagination  .swiper-pagination-bullet:nth-child(4):after{
	content:'04';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(5):after{
	content:'05';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(6):after{
	content:'06';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(7):after{
	content:'07';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(8):after{
	content:'08';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(9):after{
	content:'09';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(10):after{
	content:'10';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(11):after{
	content:'11';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(12):after{
	content:'12';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(13):after{
	content:'13';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(14):after{
	content:'14';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(15):after{
	content:'15';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(16):after{
	content:'16';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(17):after{
	content:'17';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(18):after{
	content:'18';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(19):after{
	content:'19';
}
.homepage-slider-wrap_pagination .swiper-pagination-bullet:nth-child(20):after{
	content:'20';
} 




/* ------------------------------------------------------------- *
 * GALLERY SLIDER
/* ------------------------------------------------------------- */

.gallery {
    position:relative;
	display: block;
    margin: 75px auto;
    width:100%;
    height:720px;
}
.carousel{
    position:relative;
	display:block;
}
.slick-slide {
	height:720px;
    margin:0px 10px 0 10px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
	-moz-transition: all 700ms ease-in-out;
	-webkit-transition: all 700ms ease-in-out;
	-moz-transition: all 700ms ease-in-out;
	-o-transition: all 700ms ease-in-out;
	transition: all 700ms ease-in-out;
}
.slick-slide img { 
    height: 100%;
	width: auto; 
}
.customNavigation a {
    position:absolute;
    top:50%;
    width:35px;
    height:35px;
    background: rgba(0,0,0,0.5);
    color:#fff;
    line-height:35px;
    font-size:12px;
    z-index:5;
    margin-top:10px;
    border-radius:100%;
    cursor:pointer;
    transform: translate(0%, -50%);
}
.customNavigation a.next-slide {
    right:20px;
}
.customNavigation a.prev-slide{
    left:20px;
}

@media (max-width:899px) {
	.customNavigation a {
		width:30px;
		height:30px;
		line-height: 30px;
	 }
}
@media (max-width:500px) {
	.customNavigation a {
		width:20px;
		height:20px;
		line-height:20px;
		font-size:12px;
	}
	.customNavigation a.next-slide {
		right:10px;
	}
	.customNavigation a.prev-slide{
		left:10px;
	}
}

/*------ gallery bottom panel --------*/	
.vis-pan {
    position:fixed;
    bottom:75px;
    left:0;
    right:0;
    height:55px;
    z-index:5;
    background-color:;
}
.vis-pan i{
	position:relative;
	font-size: 25px;
	color:#ccc;
	text-align:center;
	display:inline-block;
	margin:15px 5px 0px 5px;
	-moz-transition: all .3s ease-in-out;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
   } 
.vis-pan i:hover{
	color:#444;
} 
.num-holder2 {
   font-family: 'Noto Serif JP', serif;
   position:absolute;
   right:10px;
   width:60px;
   font-weight:700;
   top:12px;
   font-size:15px;
   color:#000;
}

/*------ details ---------*/

.location {
	font-size:12px;
	margin:0 auto;
	text-align: center;
	display:inline-block;
	color:#000;
	letter-spacing:0px;
	font-family: 'Montserrat', sans-serif;
	font-weight:700;
	font-style:normal;
}
.location span {
	font-style:italic;
	font-family: Georgia, "Times New Roman", Times, serif;
	color:#666;
	padding-right:3px;
	font-weight:400;
}

.share-holder {
	position:relative;
	margin:0 auto;
	text-align: center;
	display:inline-block;
	width:100%;
	padding-top:50px;
}

.share-holder.block-share .share-container {
	position:relative;
	margin:0 auto;
	text-align: center;
	display:inline-block;
}
.share-holder.block-share {
	margin-top:10px;
}
.share-holder span {
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size:12px;
	color:#666;
	font-style:italic;
	padding-right:10px;
	position:relative;
	margin:0px auto;
}

.share-holder.block-share .share-container .share-icon {
	width:30px;
	height:30px;
	line-height:30px;
	border:1px solid #666;
	background:#fff;
	margin-right:10px;
	border-radius:100%;
	float:left;
	text-align:center;
}

.share-icon:before {
   font-family: Font Awesome\ 5 Brands;
   font-style: normal;
   font-weight: normal;
   text-decoration: inherit;
   color:#666;
   font-size:13px;
}
.share-icon-facebook:before  {
   content: "\f39e";
}
.share-icon-twitter:before {
   content: "\f099";
}
.share-icon-pinterest:before {
   content: "\f0d2";
}
.share-icon-googleplus:before {
  content: "\f0d5";
}
.share-icon-linkedin:before {
	content: "\f08c";
}
/*------ unused share
.share-icon-tumblr:before {
  content: "\f173";
}
.share-icon-vimeo:before {
  content: "\f194";
}
.share-icon-instagram:before {
   content: "\f16d";
}
.share-icon-in1:before {
   content: "\f08c";
}
.share-icon-stumbleupon:before {
   content: "\f1a4";
}
.share-icon-digg:before {
	content: "\f1a6";
 }
 .share-icon-email:before  {
	content: "\f003";
 }
 .share-icon-flickr:before  {
	content: "\f16e";
 }
 .share-icon-foursquare:before  {
	content: "\f180";
 }
 .share-icon-rss:before {
	content: "\f09e";
 }
 ---------*/
 

 .ssk-group {
	position:relative;
	margin:20px auto;
	text-align: center;
	display:inline-block;
 }


/*------ thumbnails ---------*/
#thumbnail-list {
	width: 500px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.thumbnail-item {
	flex: 0 1 30%;
	margin-bottom: 20px;
	box-sizing: border-box;
	position: relative;
}
.thumbnail-item img {
	width: 100%;
	margin: 0 auto;
	cursor:pointer;
}

@media (max-width:700px) {
	#thumbnail-list {
	width: 300px;
	}
}
@media (max-width:400px) {
	#thumbnail-list {
	width: 200px;
	}
}




/*------ gallery modal ---------*/
.modal {
	position: fixed;
	top: 0px;
	pointer-events: none;
	left: 0px;
	background: rgba(51, 51, 51, 0.9);
	width: 100vw;
	height: 100vh;
	z-index: 99999;
	opacity: 0;
}
.modal.active {
	opacity: 1;
	pointer-events: auto;
	animation-name: modalopen;
	animation-duration: .3s;
}
.modal .box {
	font-family: 'Noto Serif JP', serif;
	background-color: #fff;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 900px;
	height: 500px;
	border-radius: 4px;
	z-index: 99999;
	overflow-y:auto;
	overflow-x: hidden;
}
@keyframes modalopen {
	from{opacity: 0}
	to {opacity: 1}
}
.modal .close-modal {
	color:  #000;
	text-decoration: none;
	float: right;
	position: absolute;
	top: 10px;
	right: 20px;
	cursor:pointer;
	font-size:15px;
}
.modal-content {
	padding:50px;
}
.modal h1 {
	text-align:center;
	font-size:30px;
	padding:50px 0px;
}
.modal h2 {
	font-size:15px;
	text-align: center;
	padding-bottom:20px;
}
.modal p {
	font-size:14px;
	text-align:center;
	padding-bottom: 50px;
	color:#000;
	margin:0 auto;
	width:100%;
	max-width:700px;
}


@media (max-width:900px) {
	.modal .box {
		top: 0;
		left: 0;
		transform: translate(0);
		width: 100%;
		height: 100%;
		margin: 0;
		border-radius: 0px;
	}
	.modal .close-modal{
		top: 20px;
		right: 20px;
		font-size:20px;
	} 

}
@media (max-width:500px) {
	.modal h2 {
		font-size:15px;
		text-align: center;
		padding-bottom:20px;
	
	}
	.modal p {
		font-size:13px;
		text-align:center;
		padding-bottom: 50px;
		color:#000;
		margin:0 auto;
		width:100%;
		max-width:400px;
	
	}
	.modal-content {
		padding:20px;
	}
	.modal .box {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}

@media only screen and (max-width:2000px) {
#wrapper {
		padding-top:90px;
	}
}

/* MAIN
================================== */
@media only screen and (max-width:900px) {
	html.scroll {
		overflow-x:hidden !important;
		overflow-y:auto !important;
		height: 100%;
	}
	#main, #main-home {
	position:relative;
	-webkit-overflow-scrolling: touch;
	}
    #header {
        padding:0 15px;
    }
	#main-home #header {
        padding:10px 25px;
    }
    #main {
        padding:0;
        height: 100vh;
    }
	#main-home {
        padding:0 25px;
        height: 100%;
    }
    .full-height {
        height: calc(100vh - 145px);
    }
	#main-home .full-height {
        padding:0 5px;
        height: calc(100vh - 155px);
	}
	body:before , body:after  , #main:before , #main:after , nav li:before{
	display:none;
	}
	#wrapper {
		padding-top: 65px;
	}
	.flex-col-1 {
		position: relative;
		margin:0 auto;
	} 
	.about p {
		font-size:14px;
	}
	.about h3 {
		margin-top:20px;
	}
	.fixed-column {
		position:relative;
		width:100%;
		float:left;
		padding:250px 0;
		top:50px;
		bottom:0;
	}
	.fixed-column-left {
		position:relative;
		width:100%;
		float:left;
		height:500px;
		padding:0;
		top:0;
		bottom:0;
	}
	.hlaf-slider-pag  {
		display:none;
	}
	.home-slider-counter-wrap .swiper-counter{
		visibility:hidden;
		opacity:0;
	}
	.home-slider-counter-wrap {
		float:right;
		left:auto;
		right:30px;
		bottom: 30px;
	}
	.homepage-slider-next, .homepage-slider-cont-next {
		right:20px;
	}
	.homepage-slider-prev, .homepage-slider-cont-prev{
		left:20px;
	}
	#portfolio_horizontal_container  .portfolio_item .thumb-info h3 {
		font-size:18px;
	}
    .homepage-slider .swiper-slide-active  .homepage-slider_align_title {
        top: auto;
        bottom: 50px;
        padding: 20px 15px;
        max-width: 250px;
        width: 80%;
        opacity: 1;
        visibility: visible;
        -webkit-transform: translate(-50%, 0);
        -moz-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
    }
    .homepage-slider_align_title {
        -moz-transition: none;
        transition: none;
    }
    .homepage-slider .swiper-slide-active  .homepage-slider_align_title h2 {
        font-size: 14px;
        line-height: 24px;
    }
}
@media only screen and (max-width:640px) {
	section {
		padding: 50px 0;
	}
	.to-top-btn {
		float:left;
		margin-top:40px;
		margin-left:-20px;
	}
	.home-slider-counter-wrap {
		bottom: 50px;
	}
	.homepage-slider-det {
		padding-bottom:0;
	}
	.homepage-slider_control-wrap {
		width:100%;
		bottom:50px;
	}
	.homepage-slider_control_item {
		float:left;
	}
	.swiper-container {height: auto;} 
	.column-title {
		padding: 20px 20px;
	}

}
@media only screen and (max-width:530px) {

	#wrapper {
		padding-top: 65px;
	}
	.flex-col {
		padding: 0em;
	}
	.about p {
		font-size:12px;
	}
	.homepage-slider-cont{
		width:35px;
		height:35px;
		font-size:12px;
		line-height:35px;
	}
	.home-slider-counter-wrap .swiper-counter{
		padding:12px 12px;
	}
	.home-slider-counter-wrap {
		right:20px;
		bottom: 40px;
	}
	.full-height {
        height: calc(100vh - 125px);
    }
	#main-home #header {
		padding:0px 30px;
		height:75px;
	}
	#main-home .full-height {
        padding:0 5px;
        height: calc(100vh - 125px);
	}
	.about h3, .contact h3 {
		margin-top:40px;
	}
	.homepage-slider .swiper-slide-active  .homepage-slider_align_title {
        bottom: 85px;
    }
}


/* Galleries
================================== */

/*------ large screens --------*/

@media only screen and (min-width:1280px) and (min-height:1400px) {
	.gallery {
		margin:350px auto;
	}
}

@media only screen and (min-width:1280px) and (max-height:1400px) {
	.gallery {
		margin:150px auto;
	}
}
@media only screen and (min-width:1280px) and (max-height:1000px) {
	.gallery, .slick-slide {
		height:600px;
	}
}

@media only screen and (min-width:1280px) and (max-height:920px) {
	.gallery, .slick-slide {
		height:550px;
	}
}
@media only screen and (min-width:1280px) and (max-height:820px) {
	.gallery, .slick-slide {
		height:350px;
	}
}
@media only screen and (min-width:1280px) and (max-height:620px) {
	.gallery, .slick-slide {
		height:250px;
	}
}
@media only screen and (min-width:1280px) and (max-height:520px) {
	.gallery, .slick-slide {
		height:200px;
	}
} 


/*------ medium screens --------*/

@media only screen and (max-width:1280px) and (min-height:1400px) {
	.gallery {
		margin:350px auto;
	}
	.gallery, .slick-slide {
		height: 500px;
	}
}

@media only screen and (max-width:1280px) and (max-height:1400px) {
	.gallery {
		margin:250px auto;
	}
	.gallery, .slick-slide {
		height: 500px;
	}
}
@media only screen and (max-width:1280px) and (max-height:1000px) {
	.gallery {
		margin:150px auto;
	}
	.gallery, .slick-slide {
		height: 400px;
	}
}
@media only screen and (max-width:1280px) and (max-height:720px) {
	.gallery, .slick-slide {
		height:350px;
	}
}
@media only screen and (max-width:1280px) and (max-height:620px) {
	.gallery, .slick-slide {
		height:250px;
	}
}
@media only screen and (max-width:1280px) and (max-height:520px) {
	.gallery, .slick-slide {
		height:200px;
	}
} 



/*------ small screens --------*/

@media only screen and (max-width:900px) and (min-height:1400px) {
	.gallery {
		margin:350px auto;
	}
	.gallery, .slick-slide {
		height: 300px;
	}
}

@media only screen and (max-width:900px) and (max-height:1400px) {
	.gallery, .slick-slide {
		height:300px;
	}
}
@media only screen and (max-width:900px) and (max-height:1000px) {
	.gallery {
		margin:150px auto;
	}
	.gallery, .slick-slide {
		height:300px;
	}
}
@media only screen and (max-width:900px) and (max-height:720px) {
	.gallery, .slick-slide {
		height:200px;
	}
}
@media only screen and (max-width:900px) and (max-height:620px) {
	.gallery, .slick-slide {
		height:150px;
	}
}
@media only screen and (max-width:900px) and (max-height:520px) {
	.gallery, .slick-slide {
		height:100px;
	}
} 




/*------ mobile portrait -----------*/
	@media screen and (max-width:500px) {
	.gallery {
		margin:275px auto;
	}
	.gallery, .slick-slide {
		height: 240px;
	}
	.vis-pan {
		bottom:50px;
		height:45px;
	}
	.vis-pan i{
		font-size: 18px;
		margin:15px 5px 0px 5px;
	} 
	.num-holder2 {
		right:0px;
		top:10px;
		font-size:13px;
	}
}
@media screen and (max-width:400px) {
	.gallery, .slick-slide {
		height: 200px;
	}
}

@media screen and (max-width:500px) and (max-height: 700px) {
	.gallery {
		margin:200px auto;
	}
}

/*------ mobile landscape -----------*/
@media only screen and (max-width:900px) and (max-height: 500px) {
	.gallery {
		margin:75px auto;
	}
	.gallery, .slick-slide {
		height: 200px;
	}
	.vis-pan {
		bottom:40px;
		height:45px;
	}
	.vis-pan i{
		font-size: 18px;
		margin:15px 5px 0px 5px;
	} 
}
@media only screen and (max-width:900px) and (max-height: 375px) {
	.gallery, .slick-slide {
		height: 150px
	}
	.gallery {
		margin:65px auto;
	}
}  



/* Nav
================================== */

@media (max-width: 900px) {
	.header-inner {
		padding-top: 25px;
	}
    .logo {
		padding-left:5px;
		top: 10px;
	}
	#main-home .logo {
		top: 25px;
	}
	.logo img {
		max-height: 40px; 
	}
	.logo a h2 {
		font-size: 15px;
		line-height: 15px;
		padding-left:10px;
	}
	.logo a h3 {
		font-size: 8px;
		line-height: 8px;
		padding-left:48px;
		letter-spacing:5.8px;
		margin-top:-9px;
	}
}
@media (max-width: 530px) {
	.logo {
		padding-left:0px;
		top: 10px;
	}
	#main-home .logo {
		top: 10px;
	}
}

/* Mobile menu 
================================== */
@media (min-width: 900px) {
	#m-menu-toggle-btn-wrap { /* Hide on desktop */
		display: none;
	}
}

@media (max-width: 900px) {
	.main-menu {
		pointer-events: initial;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background-color: #fff;
		overflow: hidden;
		visibility: hidden;
		opacity: 0;
	}
	.main-menu-holder {
		position: relative;
		height: 100%;
		width: calc(100% + 17px);
		overflow-y: scroll;
		z-index: 20;
	}
	body.is-mobile .main-menu-holder {
		padding-right: 20px;
	}
	.main-menu-inner {
		width: 100%;
		height: 100%;
		padding: 20% 7%;
	}
	.main-menu-content {
		position: relative;
		top: 50%;
		transform: translateY(-50%);
	}

	/* Mobile menu list */
	.main-menu-list {
		display: inline-block;
		margin: 0;
		padding: 0;
		list-style: none;
	}
	.main-menu-list > li {
		margin-top: 15px;
		margin-bottom: 15px;
	}
	.main-menu-list > li:first-child {
		margin-top: 0;
	}
	.main-menu-list > li:last-child {
		margin-bottom: 0;
	}
	.main-menu-list > li a {
		position: relative;
		display: inline-block;
		font-size: 30px;
		line-height:40px;
		font-weight: 600;
		color: #000;
		transition: all 0.2s ease-in-out;
	}

	/* Mobile menu list hover/active (master parent) */
	.main-menu-list > li a:hover,
	.main-menu-list > li > .submenu-trigger:hover a,
	.main-menu-list > li > .submenu-trigger:hover .m-caret,
	.main-menu-list > li.active > a,
	.main-menu-list > li.active > .submenu-trigger a,
	.main-menu-list > li.active > .submenu-trigger .m-caret {
		color: #000;
		transition: all 0.2s ease-in-out;
		cursor:pointer;
	}


	/* Mobile submenu */
	.submenu-wrap {
		position: relative;
	}
	.submenu-trigger {
		position: relative;
		display: inline-block;
	}

	.submenu-trigger > a {
		position: relative;
		z-index: 1;
	}
	.submenu-trigger .submenu-trigger-m {
		position: absolute;
		display: block;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 2;
		cursor: pointer;
	}

	.submenu {
		display: none;
		position: relative;
		top: auto;
		left: 0 !important;
		min-width: 100%;
		background-color: transparent;
		margin-top: 15px;
		margin-bottom: 15px;
		color: #a9a9a9;
	}

	.submenu-list {
		margin: 0 0 0 20px;
		padding: 0;
		list-style: none;
	}
	.submenu-list .submenu {
		margin-top: 10px;
	}
	.submenu-list > li a {
		display: inline-block;
		padding-top: 8px;
		padding-bottom: 8px;
		font-size:18px;
		line-height:22px;
		font-weight: normal;
		color: #aaa;
		-webkit-text-stroke: 0;
	}


	/* Mobile submenu list hover/active */
	.submenu-list > li a:hover,
	.submenu-list > li > .submenu-trigger:hover a,
	.submenu-list > li > .submenu-trigger:hover .m-caret,
	.submenu-list > li > .submenu-trigger.m-submenu-open a,
	.submenu-list > li > .submenu-trigger.m-submenu-open .m-caret,
	.submenu-list > li.active > a,
	.submenu-list > li.active > .submenu-trigger a,
	.submenu-list > li.active > .submenu-trigger .m-caret {
		color: #000;
	}

	/* Mobile submenu caret (requires FontAwesome: https://fontawesome.com/) */
	.m-caret {
		position: absolute;
		top: 65%;
		right: -42px;
		width: 40px;
		height: 40px;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 17px;
		color: #000;
		cursor: pointer;
		z-index: 9;
		border-radius: 100%;
		transform: translate3d(0, -50%, 0);
	}
	.m-caret::after {
		font-family: Font Awesome\ 5 Pro;
		content: "\f107";
		font-weight: 900;
		display: inline-block;
		font-style: normal;
		font-variant: normal;
		text-rendering: auto;
		-webkit-font-smoothing: antialiased;
		transition: all 0.2s ease-in-out;
	}
	.submenu-trigger.m-submenu-open .m-caret::after {
		transform: rotate(180deg);
	}

	/* Mobile sub-submenu caret */
	.submenu-list > li > .submenu-trigger .m-caret {
		color: #8a8a8a;
	}

	/* Mobile menu toggle button */
	#m-menu-toggle-btn-wrap {
		position: relative;
		display: flex;
		align-items: center;
		pointer-events: initial;
		cursor: pointer;
		z-index: 9;
	}
	.m-menu-toggle-btn-holder {
		float: left;
	}

	.m-menu-toggle-btn {
		position: relative;
		display: block;
		width: 50px;
		height: 50px;
	}
	.m-menu-toggle-btn span {
		position: absolute;
		display: block;
		top: 20%;
		left: 60%;
		height: 2px;
		width: 24px;
		background-color: transparent;
		transform: translate(-40%, -40%);
		transition: all 0.3s ease-in-out;
	}
	.m-menu-toggle-btn span::before,
	.m-menu-toggle-btn span::after {
		position: absolute;
		display: block;
		content: '';
		height: 2px;
		width: 24px;
		background-color: #000;
		transition: all 0.3s ease-in-out;
	}
	.m-menu-toggle-btn span::before {
		top: -4px;
		width: 24px;
	}
	.m-menu-toggle-btn span::after {
		top: auto;
		bottom: -4px;
		width: 18px;
	}

	/* Toggle button text */
	.m-menu-toggle-btn-text {
		float: left;
		padding-right: 0px;
		margin-right:-10px;
		overflow: hidden;
		text-align: right;
		font-size: 14px;
		margin-top:-32px;
	}
	body.m-menu-open .m-menu-toggle-btn-text .m-menu-text-menu {
		display: none;
	}

	/* Toggle button close */
	body.m-menu-open .m-menu-toggle-btn span {
		width: 20px;
		background-color: transparent;
	}
	body.m-menu-open .m-menu-toggle-btn span::before {
		top: 0;
		width: 20px;
		transform: rotate(45deg);
	}
	body.m-menu-open .m-menu-toggle-btn span::after {
		bottom: 0;
		width: 20px;
		transform: rotate(-45deg);
	}

	.m-menu-toggle-btn-text .m-menu-text-close {
		display: none;
	}
	body.m-menu-open .m-menu-toggle-btn-text .m-menu-text-close {
		display: block;
	}

	/* Disable menu toggle button click until the animations last */
	body.m-menu-toggle-no-click #m-menu-toggle-btn-wrap {
		pointer-events: none;
	}

	/* Align mobile menu to center */
	.main-menu.m-menu-center .main-menu-content {
		text-align: center;
	}
	.main-menu.m-menu-center .submenu-list {
		margin: 0;
	}
}



@media only screen and (-webkit-min-device-pixel-ratio: 2) {
		.bg {
			background-attachment: scroll !important;
			background-size:contain;
			-webkit-background-size:contain;
			background-position: center;
		}
		.home-bg {
			background-attachment: scroll !important;
			background-size: cover;
			-webkit-background-size: cover;
			background-position: center;
		}
}




