@import '../fonts/avenir.css';

* {
	margin:0;
	padding:0;
}

html {
	font-size: 62.5%;
	padding:0;
	margin:0;
}

body {
	font: normal normal normal 1.4rem/2.4rem 'Avenir-Regular', Helvetica, Arial, sans-serif;
	letter-spacing: 0.1em;
	color: #000;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	background-color: #FFFFFF;
	-webkit-text-size-adjust: 100%;
}

:focus { 
	outline: 0px;
}

a {
	color: #000;
	text-decoration: none;
}

img {
	border: 0 none;
}

figure img {
	display: block;
	max-width: 100%;
}

input, textarea {
	-webkit-appearance: none;
	border-radius: 0;
}

h1, h2, h3, h4, h5, h6 {
	
}

article p {
	margin: 1.1rem 0;
}

p a {
	text-decoration: underline;
}

div,
header,
section,
article,
hgroup,
footer,
aside {
	position: relative;
}

#wrapper {
	position:relative;
	z-index: 103;
}

#content {
	
}

.center {
	max-width: 1280px;
	padding: 0 60px;
	margin: 0 auto;
}

.box-h {
	padding: 0 10px;
	box-sizing: border-box;
}

.box-v {
	padding: 10px 0;
	box-sizing: border-box;
}

.box {
	padding: 10px;
	box-sizing: border-box;
}

.clear:after,
.clear:before,
.masonry:after,
.masonry:before {
	content: "";
	display: table;
	clear: both;
}

.clear-fix {
	clear: both;
}

.text-center {
	text-align: center;
}

.text-right {
	text-align: right;
}

.float-left {
	float: left;
}

.float-right {
	float: right;
}

.table {
	display: table;
	width: 100%;
	height: 100%;
}

.middle {
	display: table-cell;
	vertical-align: middle;
}

.preload, 
.hide {
	display:none;
}

@media screen and (max-width: 1024px) {
	
	.center {
		padding: 0 20px;
	}
	
}

@media screen and (max-width: 767px) {
	
	.center {
		padding: 0 12px;
	}
	
}#content h1 img {
	max-width: 100%;
}

#home-navigation {
	position: fixed;
	top: 0;
	right: 30px;
	bottom: 0;
	z-index: 103;
	height: 100%;
	pointer-events: none;
}

#home-navigation nav {
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	pointer-events: auto;
}

#home-navigation a {
	display: block;
	padding: 10px;
}

#home-navigation span {
	display: block;
	width: 10px;
	height: 10px;
	border: 1px solid;
	border-radius: 50% 50%;
	box-sizing: border-box;
	background-color: transparent;
	transition: background-color 0.3s;
	-webkit-transition: background-color 0.3s;
}

#home-navigation a:hover span,
#home-navigation a.active span {
	background-color: #000;
}

section.fullscreen {
	min-height: 100vh;
	/*overflow-y: scroll;*/
}

.container {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

section.flowers {
	background-color: #FFF2F2;
}

section.flowers .heading {
	
}

section.flowers .center {
	z-index: 5;
}

section.flowers div.content {
	max-width: 620px;
	margin: 0 auto;
	text-align: justify;
	height: 100%;
	padding: 55px 0;
	top: 50%;}

a.next-tab, a.prev-tab {
	cursor:pointer;
	cursor:hand;
	text-decoration:underline;
}

div.background {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	pointer-events: none;
}

div.background img {
	position: absolute;
	max-width: 35%;
	max-height: 100%;
}

div.background .bottom-left {
	bottom: 0;
	left: 0;
	z-index: 1;
}

div.background .top-right {
	top: 0;
	right: 0;
	z-index: 1;
}

.heading {
	margin-bottom: 2.4rem;
}

.flowers .content article {
	margin: 60px 0;
}

section.contact-section div.content article {
	text-align: center;
}

section.contact-section div.content article p img {
	max-width: 100%;
}

section.gallery-section .center {
	padding-left: 30px;
	padding-right: 30px;
}

section.gallery-section div.category {
	width: 33.33%;
	float: left;
	box-sizing: border-box;
	padding: 30px 40px;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

section.gallery-section div.category figure {
	margin-bottom: 2.4rem;
}

a.open-gallery {
	cursor: pointer;
}

#content-overlay {
	background-color: rgba(255,255,255,0.95);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10300;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.3s;
	-webkit-transition: opacity 0.3s;
}

body.content-overlay #content-overlay {
	pointer-events: auto;
	opacity: 1;
}

#content-overlay .center {
	height: 100%;
}

#content-overlay .carousel {
	height: 100%;
	padding: 80px 0;
	box-sizing: border-box;
}

#content-overlay .owl-carousel,
#content-overlay .owl-carousel .owl-wrapper-outer,
#content-overlay .owl-carousel .owl-wrapper, 
#content-overlay .owl-carousel .owl-item,
#content-overlay .item {
	height: 100%;
}

#content-overlay .item:after,
#content-overlay .item:before {
	display: table;
	content: "";
	clear: both;
}

#content-overlay .item figure {
	display: block;
	position: relative;
	height: 100%;
	/*padding: 0 320px;*/
	width: 100%;
	box-sizing: border-box;
	text-align: center;
}

#content-overlay .item figure img.photo {
	display: inline-block;
	position: relative;
	max-height: 100%;
	max-width: calc(100% - 400px);
	margin: 0 40px 0 60px;
	vertical-align: top;
	top: 50%;
	transform: translateY(-50%);
}

#content-overlay .item figcaption {
	width: 300px;
	position: relative;
	display: inline-block;
	text-align: left;
	vertical-align: top;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	text-align: left;
}

#content-overlay .item figcaption img {
	display: block;
	margin-bottom: 6px;
}

#content-overlay .item figcaption a.view-project {
	display: inline-block;
	margin-top: 12px;
	line-height: 3.0rem;
	font-size: 1.2rem;
	border: 1px solid;
	padding: 0 8px;
}

#content-overlay .owl-controls,
#content-overlay .owl-buttons {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	pointer-events: none;
}

#content-overlay .owl-buttons div {
	pointer-events: auto;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	background-image: center center;
	background-repeat: no-repeat;
	width: 30px;
	height: 57px;
	position: absolute;
	z-index: 103;
}

#content-overlay .owl-prev {
	left: 10px;
	background-image: url('/img/arrow-left.svg');
	text-indent: -10300px;
}

#content-overlay .owl-next {
	right: 10px;
	background-image: url('/img/arrow-right.svg');
	text-indent: -10300px;
}

#content-overlay .close-gallery {
	position: absolute;
	top: 60px;
	right: 60px;
	cursor: pointer;
}

@media screen and (max-width: 768px) {
	
	#home-navigation {
		right: 10px;
	}
	/*
	#content-overlay .item {
		display: table;
	}
	
	#content-overlay .item figure {
		display: table-cell;
		vertical-align: middle;
	}
	
	#content-overlay .item figure img.photo {
		display: block;
		top: 0px;
		transform: none;
		max-width: 100%;
		max-height: calc(100% - 408px);
		max-height: calc(100% - 140px);
		margin: 0px auto;
		padding: 0 60px;
		box-sizing: border-box;
	}
	
	#content-overlay .item figcaption {
		top: 0px;
		transform: none;
		text-align: center;
		display: block;
		margin: 40px auto 0 auto;
	}
	
	#content-overlay .item figcaption img {
		margin: 0 auto 6px auto;		
	}
	*/
	
	#content-overlay .carousel {
		padding: 40px 0;
	}
	
	#content-overlay .item {
		
	}
	
	#content-overlay .item figure {
		height: auto;
		top: 50%;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}
	
	#content-overlay .item figure img.photo {
		display: inline-block;
		max-width: 100%;
		margin: 0;
		top: 0;
		transform: none;
		-webkit-transform: none;
		max-height: calc(100vh - 210px);
		padding: 0 30px;
		box-sizing: border-box;
	}
	
	#content-overlay .item figcaption {
		top: 0;
		transform: none;
		-webkit-transform: none;
		margin-top: 30px;
		width: 100%;
		padding: 0 30px;
		box-sizing: border-box;
		text-align: center;
	}
	
	#content-overlay .item figcaption img {
		margin: 0 auto 6px auto;
	}
	
	#content-overlay .close-gallery {
		right: 22px;
		top: 22px;
	}
	
}.fancybox-opened.lightbox .fancybox-skin {
	box-shadow: none;
}

.lightbox .fancybox-title {
	font: normal normal normal 1.4rem/2.4rem 'Avenir-Regular', Helvetica, Arial, sans-serif;
	position: absolute;
	width: 260px;
	right: -300px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	padding: 0;
}

.lightbox .fancybox-title img {
	display: block;
	margin-bottom: 6px;
}

.lightbox .view-project {
	display: inline-block;
	font-size: 1.2rem;
	line-height: 3.0rem;
	border: 1px solid;
	padding: 0 10px;
	margin-top: 14px;
}

.lightbox .fancybox-nav {
	position: fixed;
	width: 110px;
}

.lightbox .fancybox-nav span {
	width: 30px;
	height: 57px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto;
	visibility: visible;
}

.lightbox .fancybox-prev span {
	background-image: url('../img/arrow-left.svg');
	right: 0;
	left: auto;
}

.lightbox .fancybox-next span {
	background-image: url('../img/arrow-right.svg');
	left: 0;
	right: auto;
}

.lightbox .fancybox-image {

}/*! Flickity v2.2.2
https://flickity.metafizzy.co
---------------------------------------------- */

.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus { outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* draggable */

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- flickity-button ---- */

.flickity-button {
  position: absolute;
  background: hsla(0, 0%, 100%, 0.75);
  border: none;
  color: #333;
}

.flickity-button:hover {
  background: white;
  cursor: pointer;
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

/* ---- previous/next buttons ---- */

.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous { left: 10px; }
.flickity-prev-next-button.next { right: 10px; }
/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}
.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

/* ---- page dots ---- */

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots { direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}
#header {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 103;
	text-align: center;
	padding-top: 36px;
	padding-bottom: 30px;
	background-color: transparent;
	transition: background-color 0.3s;
	-webkit-transition: background-color 0.3s;
}

#header:hover {
	background-color: rgba(255,255,255,0.35);
}

#header h1 {
	position: absolute;
	left: 1px;
}

#header a {
	position: relative;
	display: inline-block;
}

#header nav a {
	margin: 0 5px;
}

#header img {
	/*
	transition: opacity 0.2s;
	-webkit-transition: opacity 0.2s;
	*/
	height: 36px;
	z-index: 1;
	opacity: 1;
}

#header img.hover {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	opacity: 0;
}

#header a:hover img,
#header a.active img {
	opacity: 0;
}

#header a:hover img.hover,
#header a.active img.hover {
	opacity: 1;
}

#header #show-menu {
	position: relative;
	float: right;
	padding: 10px;
	z-index: 15;
	display: none;
	cursor: pointer;
}

#show-menu img {
	display: block;
	height: 17px;
	opacity: 1 !important;
}

@media screen and (max-width: 810px) {
	
	#header nav {
		text-align: right;
	}
	
}

@media screen and (max-width: 767px) {
	
	#header #show-menu {
		display: inline-block;
	}
	
	#header h1 {
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		z-index: 10;
	}
	
	#header nav a {
		display: table;
		margin: 0 auto;
	}
	
	#header nav {
		z-index: 5;
		text-align: center;
		padding-top: 100px;
		padding-bottom: 20px;
		line-height: 4.0rem;
		background-color: #FFF;
		position: fixed;
		bottom: 100%;
		width: 100%;
		left: 0;
		transform: translateY(0);
		-webkit-transform: translateY(0);
		transition: all 0.45s;
		-webkit-transition: all 0.45s;
		box-sizing: border-box;
	}
	
	body.show-menu #header nav {
		transform: translateY(100%);
		-webkit-transform: translateY(100%);
	}
	
}#home .caption {
	position: absolute;
	bottom: 80px;
	text-align: center;
	width: 100%;
	left: 0px;
}

/*
#page-home #content .slides {
	position: fixed;
	top: 0;
	width: 100%;
	height: 400%;
	transition: all 1s cubic-bezier(0.77, 0, 0.175, 1);
	-webkit-transition: all 1s cubic-bezier(0.77, 0, 0.175, 1);
}

#page-home #content.home .slides {
	transform: translateY(0);
	-webkit-transform: translateY(0);
}

#page-home #content.about .slides {
	transform: translateY(-25%);
	-webkit-transform: translateY(-25%);
}
#page-home #content.gallery .slides {
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

#page-home #content.contact .slides {
	transform: translateY(-75%);
	-webkit-transform: translateY(-75%);
}
*/

#content .slides {
	
}

#content .slides .center {
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

#content .slides #about .center {
	top: auto !important;
	transform: translateY(0%);
	-webkit-transform: translateY(0%);
}

#gallery figure img {
	margin: 0 auto;
}

#home .carousel .owl-controls {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 30px;
	height: 30px;
	line-height: 30px;
}

#home .carousel .owl-pagination {
	height: 100%;
	text-align: center;
}

#home .carousel .owl-pagination .owl-page {
	display: inline-block;
	padding: 10px;
}

#home .carousel .owl-pagination .owl-page span {
	display: block;
	width: 10px;
	height: 10px;
	border: 1px solid;
	border-radius: 50% 50%;
	box-sizing: border-box;
	background-color: transparent;
	transition: background-color 0.3s;
	-webkit-transition: background-color 0.3s;
}

#home .carousel .owl-pagination .owl-page.active span {
	background-color: #000;
}

#home .owl-carousel .owl-wrapper, 
#home .owl-carousel .owl-wrapper-outer, 
#home .owl-carousel .owl-item, 
#home .owl-carousel .item {
	width: 100%;
	height: 100%;
}

#home .carousel {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

#home .carousel .item {
	background-size: cover;
	background-position: center center;
}

#home .carousel .item a {
	display: block;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 768px) {
	
	#gallery .category {
		width: 100%;
		top: 0;
		transform: none;
		-webkit-transform: none;
	}
		
}/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp
{
	padding: 0;
	margin: 0;
	border: 0;
	outline: none;
	vertical-align: top;
}

.fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 8020;
}

.fancybox-skin {
	position: relative;
	background: #f9f9f9;
	color: #444;
	text-shadow: none;
	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
	        border-radius: 4px;
}

.fancybox-opened {
	z-index: 8030;
}

.fancybox-opened .fancybox-skin {
	-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	   -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
	position: relative;
}

.fancybox-inner {
	overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
	-webkit-overflow-scrolling: touch;
}

.fancybox-error {
	color: #444;
	font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	margin: 0;
	padding: 15px;
	white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.fancybox-image {
	max-width: 100%;
	max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
	background-image: url('fancybox_sprite.png');
}

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	margin-top: -22px;
	margin-left: -22px;
	background-position: 0 -108px;
	opacity: 0.8;
	cursor: pointer;
	z-index: 8060;
}

#fancybox-loading div {
	width: 44px;
	height: 44px;
	background: url('fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
	position: absolute;
	top: -18px;
	right: -18px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 8040;
}

.fancybox-nav {
	position: absolute;
	top: 0;
	width: 40%;
	height: 100%;
	cursor: pointer;
	text-decoration: none;
	background: transparent url('blank.gif'); /* helps IE */
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	z-index: 8040;
}

.fancybox-prev {
	left: 0;
}

.fancybox-next {
	right: 0;
}

.fancybox-nav span {
	position: absolute;
	top: 50%;
	width: 36px;
	height: 34px;
	margin-top: -18px;
	cursor: pointer;
	z-index: 8040;
	visibility: hidden;
}

.fancybox-prev span {
	left: 10px;
	background-position: 0 -36px;
}

.fancybox-next span {
	right: 10px;
	background-position: 0 -72px;
}

.fancybox-nav:hover span {
	visibility: visible;
}

.fancybox-tmp {
	position: absolute;
	top: -99999px;
	left: -99999px;
	visibility: hidden;
	max-width: 99999px;
	max-height: 99999px;
	overflow: visible !important;
}

/* Overlay helper */

.fancybox-lock {
    overflow: hidden !important;
    width: auto;
}

.fancybox-lock body {
    overflow: hidden !important;
}

.fancybox-lock-test {
    overflow-y: hidden !important;
}

.fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	display: none;
	z-index: 8010;
	background: url('fancybox_overlay.png');
}

.fancybox-overlay-fixed {
	position: fixed;
	bottom: 0;
	right: 0;
}

.fancybox-lock .fancybox-overlay {
	overflow: auto;
	overflow-y: scroll;
}

/* Title helper */

.fancybox-title {
	visibility: hidden;
	font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	position: relative;
	text-shadow: none;
	z-index: 8050;
}

.fancybox-opened .fancybox-title {
	visibility: visible;
}

.fancybox-title-float-wrap {
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-bottom: -35px;
	z-index: 8050;
	text-align: center;
}

.fancybox-title-float-wrap .child {
	display: inline-block;
	margin-right: -100%;
	padding: 2px 20px;
	background: transparent; /* Fallback for web browsers that doesn't support RGBa */
	background: rgba(0, 0, 0, 0.8);
	-webkit-border-radius: 15px;
	   -moz-border-radius: 15px;
	        border-radius: 15px;
	text-shadow: 0 1px 2px #222;
	color: #FFF;
	font-weight: bold;
	line-height: 24px;
	white-space: nowrap;
}

.fancybox-title-outside-wrap {
	position: relative;
	margin-top: 10px;
	color: #fff;
}

.fancybox-title-inside-wrap {
	padding-top: 10px;
}

.fancybox-title-over-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px;
	background: #000;
	background: rgba(0, 0, 0, .8);
}

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
	   only screen and (min--moz-device-pixel-ratio: 1.5),
	   only screen and (min-device-pixel-ratio: 1.5){

	#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
		background-image: url('fancybox_sprite@2x.png');
		background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/
	}

	#fancybox-loading div {
		background-image: url('fancybox_loading@2x.gif');
		background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/
	}
}#contact #mc_embed_signup {

}

#contact #mc_embed_signup label {
	font-weight: normal;
}

#contact #mc_embed_signup input.email,
#contact #mc_embed_signup .button {
	font: normal normal normal 1.4rem/2.4rem 'Avenir-Regular', Helvetica, Arial, sans-serif;
}

#contact #mc_embed_signup input.email {
	border: 0 none;
	width: 200px;
}

#contact #mc_embed_signup .button {
	
}/* 
 * 	Core Owl Carousel CSS File
 *	v1.3.3
 */

/* clearfix */
.owl-carousel .owl-wrapper:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
/* display none until init */
.owl-carousel{
	display: none;
	position: relative;
	width: 100%;
	-ms-touch-action: pan-y;
}
.owl-carousel .owl-wrapper{
	display: none;
	position: relative;
	-webkit-transform: translate3d(0px, 0px, 0px);
}
.owl-carousel .owl-wrapper-outer{
	overflow: hidden;
	position: relative;
	width: 100%;
}
.owl-carousel .owl-wrapper-outer.autoHeight{
	-webkit-transition: height 500ms ease-in-out;
	-moz-transition: height 500ms ease-in-out;
	-ms-transition: height 500ms ease-in-out;
	-o-transition: height 500ms ease-in-out;
	transition: height 500ms ease-in-out;
}
	
.owl-carousel .owl-item{
	float: left;
}
.owl-controls .owl-page,
.owl-controls .owl-buttons div{
	cursor: pointer;
}
.owl-controls {
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* mouse grab icon */
.grabbing { 
    cursor:url(grabbing.png) 8 8, move;
}

/* fix */
.owl-carousel  .owl-wrapper,
.owl-carousel  .owl-item{
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility:    hidden;
	-ms-backface-visibility:     hidden;
  -webkit-transform: translate3d(0,0,0);
  -moz-transform: translate3d(0,0,0);
  -ms-transform: translate3d(0,0,0);
}

#page-project {
	
	width: 100%;
	overflow: hidden;
	
}

#page-project .carousel-container {
	width: 100%;
	height: 100vh;
	padding: 110px 10px;
	box-sizing: border-box;
}

#page-project .carousel {
	height: 100%;
}

#page-project .carousel .flickity-prev-next-button {
	background-repeat: no-repeat;
	background-position: center;
	background-color: transparent;
	border-radius: 0;
	width: 30px;
	height: 58px;
	padding: 20px;
	box-sizing: content-box;
}
#page-project .carousel .flickity-prev-next-button:disabled {
	opacity: 0.2;
}

#page-project .carousel .flickity-prev-next-button svg {
	display: none;
}

#page-project .carousel .flickity-prev-next-button.next {
	background-image: url(/img/arrow-right.svg);
	right: -20px;
}

#page-project .carousel .flickity-prev-next-button.previous {
	background-image: url(/img/arrow-left.svg);
	left: -20px;
}

#page-project .carousel .flickity-viewport {
	overflow: visible;
}

#page-project .carousel .intro,
#page-project .carousel .photo {
	margin-right: 110px;
	opacity: 0.1;
	transition: opacity 0.66s;
	-webkit-transition: opacity 0.66s;
	-ms-transition: opacity 0.66s;
}

#page-project .carousel .photo img {
	opacity: 0;
	transition: opacity 0.66s;
	-webkit-transition: opacity 0.66s;
	-ms-transition: opacity 0.66s;
}

#page-project .carousel .photo img.flickity-lazyloaded {
	opacity: 1;
}

#page-project .carousel .intro.is-selected,
#page-project .carousel .photo.is-selected {
	opacity: 1;
}

#page-project .carousel .intro {
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	-webkit-flex-direction: column;
	justify-content: center;
	-webkit-justify-content: center;
	width: 100%;
	height: 100%;
}

#page-project .carousel .photo {
	height: 100%;
	display: block;
}

#page-project .carousel .photo img {
	position: relative;
	width: auto;
	max-height: 100%;
	max-width: 100vw;
	object-fit: contain;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

#page-project .carousel .photo figcaption {
	padding-top: 1.1rem;
	position: absolute;
	bottom: 0;
	width: 100%;
	text-align: center;
	transform: translateY(100%);
	-webkit-transform: translateY(100%);
	-ms-transform: translateY(100%);
}

#page-project .carousel .intro hgroup {
	text-align: center;
}

#page-project .carousel .intro hgroup,
#page-project .carousel .intro .text {
	max-width: 560px;
	margin: 0 auto;
	padding: 0 20px;
}

#page-project .carousel .intro .text {
	text-align: justify;
	overflow-y: auto;
}

#page-project .carousel .photo {
	
}.head {
	padding: 180px 0 0 0;
}

#project .text {
	margin: 0 auto;
	max-width: 406px;
	text-align: justify;
}

article hgroup {
	margin-bottom: 3.8rem;
}

article hgroup img {
	margin-bottom: 6px;
}

div.down {
	padding: 49px 0 60px 0;
}

#project figure {
	margin-bottom: 60px;
}

#project figure img {
	display: inline-block;
	max-height: calc(100vh - 120px);
	margin-bottom: 1.1rem;
}

#project {
	padding-bottom: 120px;
}

@media screen and (max-width: 768px) {
	
	.head {
		padding: 120px 0 0 0;
	}
	
}