body {
	background: #fff;
	overflow: hidden;
	font-family:"Yu Gothic Medium", sans-serif;
  padding:0;
  margin:0;
	position: relative;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.mobile {
	display: none;
}

.tiny {
	display: none;
}

.wrapper {
	background: transparent linear-gradient(180deg, #D0F1F5 0%, #4ECFDD 100%) 0% 0% no-repeat padding-box;
	max-width: 1400px;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
}

.mobile {display: none;}
#background.mid {display: none;}
#background {
	z-index: 2;
	/* background-image: url("../img/town.jpg");
	background-repeat: no-repeat;
	background-attachment:fixed;
	background-position: top; */
	position: fixed;
	box-sizing: border-box;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
}

.particles-js, #overlap {
	z-index: 15;
	width: 100%;
	background-color:rgba(255,255,255, 0);
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
}

#overlap {
	opacity: 0;
}

#overlap.show {
	animation: fadein 3s ease 2s 1 forwards;
}

.playing, .title-logo {
  position:fixed;
	top: 30%;
	margin: 0 auto;
  left:0;
	right:0;
  text-align: center;
  font-size: 200%;
  z-index: 17;
}

.title-logo img {
	width: 280px;
}

.play-button, .replay-button {
	display: block;
	width: 160px;
	height: 160px;
	padding: 50px 0;
	box-sizing: border-box;
	margin : 0px auto;
	position: relative;
	text-decoration : none;
	z-index: 19;
	cursor: pointer;
}

.play-button img, .replay-button img {
	width: 100%;
	height: auto;
}

.play-button {
	transition: all 1s;
	opacity: 1;
}

.play-button.hide {
	opacity: 0;
}

.tree1 {
	overflow: hidden;
}

.tree1 img {
	width: 33%;
	margin-top:300px;
	margin-left: -4%;
}

.tree2 {
	overflow: hidden;
}

.tree2 img {
	width: 60%;
	float: right;
	margin-right: -6%;
	margin-top: 200px;
}

.tree3 {
	overflow-x: hidden;
	overflow-y: visible;
	width: 100%;
	margin-top: 300px;
	margin-bottom:-100px;
}

.tree3 .left {
	float:left;
	height: 900px;
	margin-left: -5%;
}

.tree3 .right {
	float: right;
	height: 900px;
	margin-right: -5%;
}

.tree3.right img {
	margin-right: -70%;
}


.message-zone {
	width: 100%;
	position: relative;
}

.message-zone .snow-ground {
	position: absolute;
	z-index: 9;
	top : 0;
}

.message-zone .logo-background {
	position: absolute;
	z-index: 10;
	width: 60%;
	margin: 0 auto;
	top: 30%;
	left: 0;
	right: 0;
	opacity: 0;
}

.message-zone .logo-background.show {
	animation: fadein 2s ease 5.5s 1 forwards;
}

.message-zone .logo-background img {
	width: 100%;
	height: auto;
}

.low-bottom {
	position: absolute;
	z-index: 14;
	width: 100%;
	margin: -200px auto 0;
	height: 200px;
	overflow: hidden;
}

.low-bottom .low-left,
.low-bottom .low-right {
	width: 140px;
}

.low-bottom .low-left {
	float: left;
	margin-left: 3%;
}

.low-bottom .low-right {
	float:right;
	margin-right: 3%;
}

.message-zone .decoration-top {
	position: absolute;
	z-index: 10;
	top: -200px;
	left: 0;
	right: 0;

	margin: auto;
	width: 60%;
	display: flex;
  justify-content: center;
	align-items : flex-end;
}

.message-zone .tent {
	width:200px;
}

.message-zone .kids {
	width :120px;
	margin-right: 20px;
}

.message-zone .papa {
	width :120px;
}

.message-zone .person {
	z-index: 12;
	position: absolute;
	width: 110px;
}

.message-zone .person.right {
	top: 200px;
	right: 12%;
	transform:translate(300px ,-50px) scale(0.8);
	transition: transform 3s 4s;
}

.message-zone .person.left {
	top: 80px;
	left: 10%;
	transform:translate(-300px,-50px) scale(0.8);
	transition: transform 2s 3s;
}

.message-zone .person.show {
	transform:translate(0,0) scale(1);
}


.messages {
	position: relative;
	width: 640px;
	z-index: 11;
	margin: 0 auto;
	padding: 60px 0 120px;
	text-align: center;
}

.messages p {
	line-height: 1.5em;
	color: #1A237E;
}

.messages.message-en {
	color : #3F4677;
}

.messages .title {
	display: block;
	width: 400px;
	height: auto;
	margin: 0 auto;
}

.messages > * {
	opacity: 0;
}

.messages > .show {
	animation: fadein 2s ease 0s 1 forwards;
}


.messages > .show:nth-child(2) {
	animation-delay: 1s;
}

.messages > .show:nth-child(3) {
	animation-delay: 2s;
}

.messages > .show:nth-child(4) {
	animation-delay: 3s;
}

@keyframes fadein {
    0% {opacity: 0}
    100% {opacity: 1}
}

.replay-button {
	position: fixed;
	width: 80px;
	height: 80px;
	padding: 10px 0;
	bottom: 30px;
	left: 0;
	right: 0;
	opacity: 0;
	transition: all 1s;
	display: none;
}

.replay-button.show {
	display: block;
	animation: fadein 2s ease 6s 1 forwards;
}

@media only screen and (min-width: 2150px) {
	.low-bottom .low-left {
		margin-left: 23%;
	}
	.low-bottom .low-right {
		float:right;
		margin-right: 23%;
	}
}

@media only screen and (min-width: 1920px) and (max-width: 2149px) {
	.low-bottom .low-left {
		margin-left: 18%;
	}
	.low-bottom .low-right {
		float:right;
		margin-right: 18%;
	}
}

@media only screen and (min-width: 1400px) and (max-width: 1920px){
	.low-bottom .low-left {
		margin-left: 13%;
	}
	.low-bottom .low-right {
		float:right;
		margin-right: 13%;
	}
}
@media only screen and (max-width: 1000px) {
	.message-zone .snow-ground {
		height: 100%;
	}
	.low-bottom {
		display: none;
	}
	.message-zone .person.right {
		top: 200px;
		right: 10%;
	}
	.message-zone .person.left {
		top: 80px;
		left: 6%;
	}
}

@media only screen and (max-width: 940px) {
	.message-zone .snow-ground {
		left: -8%;
	}
	.tree3 .left {
		height: 700px;
		margin-left: -6%;
	}
	.tree3 .right {
		height: 700px;
		margin-right: -8%;
	}
	.message-zone .decoration-top {
		top: -200px;
	}
	.message-zone .person.right {
		top: 240px;
		right: 6%;
	}
	.message-zone .person.left {
		top: 240px;
		left: 6%;
	}
}

@media only screen and (max-width: 800px) {
	.message-zone .decoration-top {
		width: 80%;
	}
	.message-zone .snow-ground {
		left: -15%;
	}
}

@media only screen and (max-width: 768px) {
	.message-zone .snow-ground {
		left: -15%;
	}
	.message-zone .decoration-top {
		top: -36%;
	}
	.message-zone .person {
		width: 100px;
	}
	.message-zone .person.right {
		top: 200px;
		right: 6%;
	}
	.message-zone .person.left {
		top: 180px;
		left: 6%;
	}

	.tree1 img {
		margin-top:800px;
		width: 50%;
		margin-left: -6%;
	}

	.tree2 img {
		width: 80%;
		margin-right: -7%;
	}
}

@media only screen and (max-width: 700px) {
	.desktop {
		display: none;
	}
	.mobile {
		display: block;
	}
	.message-zone .snow-ground {
		left: -20%;
	}
	.message-zone .decoration-top {
		top: -26%;
	}

	.message-zone .person {
		width: 100px;
	}
	.message-zone .person.right {
		top: 200px;
		right: 4%;
	}
	.message-zone .person.left {
		top: 220px;
		left: 4%;
	}

	.message-zone .tent {
		width:120px;
	}
	.message-zone .kids {
		width :80px;
		margin-right: 20px;
	}
	.message-zone .papa {
		width :80px;
	}
	.messages {
		position: relative;
		width: 90%;
		margin: 0 auto;
		padding: 60px 0 120px;
	}

	.messages .title {
		width: 320px;
	}

	.messages p {
		font-size: 0.7em;
	}
	.tree3 .left {
		margin-left: -30%;
	}
	.tree3 .right {
		margin-right: -30%;
	}
}

@media only screen and (max-width: 639px) {
	.message-zone .snow-ground {
		left: -28%;
	}
	.message-zone .decoration-top {
		top: -25%;
	}

}

@media only screen and (max-width: 600px) {
	.message-zone .snow-ground {
		left: -32%;
	}
	.message-zone .decoration-top {
		top: -25%;
	}

	.message-zone .person {
		width : 80px;
	}

	.tree1 img {
		width: 70%;
		margin-left: -7%;
	}

	.tree2 img {
		width: 95%;
		margin-right: -8%;
	}

	.message-zone .logo-background {
		width: 80%;
	}
}

@media only screen and (max-width: 540px) {
	.message-zone .snow-ground {
		left: -40%;
	}
	.message-zone .decoration-top {
		top: -26%;
	}
	.tree3 .left {
		margin-left: -40%;
	}
	.tree3 .right {
		margin-right: -45%;
	}
	.messages .title {
		width: 280px;
	}
}

@media only screen and (max-width: 479px) {
	.message-zone .decoration-top {
		top: -24%;
	}
	.message-zone .snow-ground {
		left: -55%;
	}

	.message-zone .messages {
		padding-bottom: 160px;
	}
	.tree3 .left {
		height: 560px;
	}
	.tree3 .right {
		height: 560px;
	}
	.messages .title {
		width: 240px;
	}
	.wide {
		display: none;
	}
	.tiny {
		display: block
	}
	.message-zone .person.right,
	.message-zone .person.left {
		top: 280px;
	}
}

@media only screen and (max-width: 429px) {
	.message-zone .decoration-top {
		top: -23%;
	}
	.replay-button {
		bottom: 60px;
	}
}

@media only screen and (max-width: 360px) {
	.title-logo img {
		width: 240px;
	}

	.play-button {
		width:140px;
		height: 140px;
	}
	.message-zone .decoration-top {
		top: -24%;
	}
	.message-zone .snow-ground {
		left: -80%;
	}
	.tree3 .left {
		height: 540px;
		margin-left: -44%;
	}
	.tree3 .right {
		height: 540px;
		margin-left: -48%;
	}
	.replay-button {
		width: 60px;
		height: 60px;
	}

	.message-zone .person.right,
	.message-zone .person.left {
		width: 60px;
	}
}
