/* CSS Document */
.logo-icon{
    display: none;
}
#theBody{
	height: 100%; overflow: hidden;
}
#theBody.fully_loaded{
	height: auto; overflow: visible;
}
.footer{
}
#mainsection{
    background: none;
}
#smooth-content {
	float: left;
}
.page-block-image{
    overflow: hidden;
}
#toTop{
    display: none;
}

.menu-default #mainsection, .menu-centered #mainsection{
	margin: 0px;
}


@media(min-width:768px) {  
}


.footerAddress p{
	width: 100%;
}

@media(min-width:1080px){
	.footerAddress{
		display: flex; flex-wrap: nowrap; justify-content: flex-start; align-content: center; align-items: center;
	}
	.footerAddress p{
		width: auto;
	}
}
#welcome{
	width: 100vw; height: 100vh;  max-width: none; background: #000; margin-bottom: 0px;
    position: fixed; top: 0px; left: 0px;
    z-index: -1; overflow: hidden;
}
#theBody.home #pageBlock1{
}
#welcome .page-block-page_image{
    position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;
}
#welcome .page-block-page_image img{
    width: 100%; height: 100%; object-fit: cover; object-position: center center;
}

#overlay{
    position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;
}
#overlay::before{
    position: absolute; width: 100%; height: 300%; left: -100%; top: -100%;
	background: var(--basecolor);
    content: ''; display: block;
}
#overlay::after{
    position: absolute; width: 100%; height: 300%; left: 100%; top: -100%;
	background: var(--basecolor);
    content: ''; display: block;
}

#topPart,
#bottomPart{
	position: absolute; width: 100%; left: 0px; top: -100vh; height: calc(150% - 9vw);
	background: var(--basecolor);
	font-size: 1.4em; letter-spacing: 0.1em; color: var(--textcolor);
	display: flex; justify-content: flex-end; align-items: center; z-index: 10002;
	
}
#bottomPart{
	top: auto; bottom: -100vh; margin-top: 0px;
}
#UPPER{
    position: absolute; top: 50%;
    margin-top: calc(-10vw + 1px);
    width: 100%; height: auto; border: 0px;
}
#BOTTOM{
    position: absolute; top: 50%; margin-bottom: 1px;
    width: 100%; height: auto;
}
#UPPER .st0,
#BOTTOM .st0{
    stroke-width: 0;
}

#logoAnim{
}
#B,
#C,
#D{
	visibility: hidden;
}
#II,
#III,
#IV{
	visibility: hidden;
}

#smooth-content {
    float: left;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    min-height: 100vh;
}

#header.menu-centered{
    width: 100vw;
	height: 100vh;
    position: relative; top: 0px; left: 0px; overflow: hidden; margin: 0px; padding: 0px;
    opacity: 0;
}
.nav-container{
    display: none!important;
}
#header.menu-centered #topbar,
#header .container{
	height: 100%;
}
#header .container{
    display: flex; justify-content: center; align-items: center;
}
#header.menu-centered .logo{
    opacity: 1; padding: 0px; margin: 0px; width: auto; height: auto;
}
#header.menu-centered .logo svg{
    width: 220px; height: auto;
}
#header.menu-centered .logo .st0{
    fill: #ffffff;
}
#pageBlock1.page-block.dark {
    margin: 0px; padding: 0px;
    opacity: 1; background: none;
    display: flex; justify-content: center;
}
#pageBlock1 .page-block-intro p, #pageBlock1 .page-block-intro ul{
    text-transform: none; font-family: "minion-pro", serif;
    font-weight: 400;
    font-style: normal;
}

#pageBlock1 .page-block-caption{
    padding: 30px; max-width: 900px;
}
.page-block .page-block-caption .page-block-txt{
    margin: 0px;
}
.footer {
    background: none; color: var(--textcolor); padding: 0px;
    opacity: 1;
}
.footer-menu{
    padding: 0px; margin: 0px;
}
.footerAddress{
    padding: 0px 15px; margin: 0px; font-size: 1em; max-width: none;
    display: flex; flex-wrap: wrap; justify-content: center;
    column-gap: 15px;
}
.footerAddress p{
    max-width: 160px; padding: 0px; margin: 0px 0px 30px 0px; font-size: 0.8em;
}
.footerAddress p a{
    color: var(--textcolor);  text-decoration: none;
}
@media(min-width:1080px){	
    .footerAddress{
        column-gap: 90px;
    }
	.footerAddress p{
		max-width: 190px; font-size: 1em;
	}
}