/* CSS Document */
@keyframes bgroop {
    from {
        background-position: 3000px 0;
    }
    to {
        background-position: 0 0;
    }
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}


 .fadein {
  opacity: 0;
  transform : translate(0, 50px);
  transition : all 700ms;
}

.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}


div.logo_hori {
		background: url("img/logo_hori.png") repeat-x;
	background-size: auto 300px;
    background-position: 0 0;
    -webkit-animation: bgroop 50s linear infinite;
    animation: bgroop 50s linear infinite;	
	height: 300px;
	margin:  10px 0 50px 0;
	width: 100%;
	opacity: 0.8;
}

#top {
	background: url("img/bingata.png") top right repeat-x #fff;
	width: 100%;
	padding: 100px 0 0 0;
	position: relative;
}

#top h1 {
	width: 1200px;
	height: 600px;
	margin: auto;
	position: relative;
	display: block;
}

#top h1 img {
	position: absolute;
}
#top h1 img:nth-of-type(1) {
	top: 150px;
	left: 0;
	width: 33%;
}

#top h1 img:nth-of-type(2) {
	top: 0px;
	left: 0;
	right: 0;
	margin: auto;
	width: 38%;
}

#top h1 img:nth-of-type(3) {
	top: 0px;
	left: 60%;
	width: 150px;
}

#top h1 img:nth-of-type(4) {
	top: 160px;
	right: 0;
	width: 30%;
}

#top img.notice {
	top: 200px;
	right: 10px;
	width: 40px;
	position: absolute;
}

#partybox {
	background: url("img/bg.jpg") 50% 50% no-repeat fixed;
	background-size: cover;
	font-size: 1rem;
	line-height: 1.8;
	color: #84181d;
	padding: 1px 0;
}

#partybox p {
	margin-bottom: 20px;
}

p.linkbox {
	margin-top: 30px;
}
p.linkbox a {
	background: linear-gradient(0deg,rgba(245, 167, 48, 1) 0%, rgba(209, 82, 87, 1) 80%);
	color: #fff;
	transition: all ease 0.3s;
	display: inline-block;
	padding: 10px 30px;
	text-align: center;
	font-weight: bold;
	border-radius: 100vh;
	box-shadow: 7px 7px 0px 0px rgba(0, 0, 0, 0.1);
}


p.linkbox a:hover {
	transform: translateY(5px);
	text-decoration: none;
}


#whiteMainBox_fit img {
	max-width: 100%;
}

#whiteMainBox_fit p.linkbox img {
	height: 24px;
	margin-right: 10px;
}

#whiteMainBox_fit h2 {
	
    font-family: "Shin Go Ultra"; 
	font-size: 2.3rem;
	transform: scale(0.8, 1);
	transform-origin: top left;
    width: 125%;
	line-height: 1.5;
	margin-bottom: 30px;
}

.bg_logo {
	background: url("img/logo_vert.png") top right no-repeat;
	background-size: 250px auto;
}

#message {
	width: 33%;
	margin: 0 auto 0 0;
	padding: 150px 0 150px 48%;
	background: url("img/bg_glass.webp") 0% 10% no-repeat;
	background-size: 60%;
}
#video {
	width: 100%;
	background: #fff;
	padding: 100px 0;
}

#video iframe {
	width: 1000px;
	height:  563px;
	display: block;
	border: 0;
	margin: auto;
}

#package {
	width: 90%;
	margin: 150px auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#package div.img {
	width: 50%;
}

#package div.text {
	width: 45%;
	padding: 50px 3%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#package div.text div.box1 {
	width: 65%;
}

#package div.text div.box2 {
	width: 30%;
}

#designer {
	width: 90%;
	display: flex;
	margin: 100px auto;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
}

#designer div.text {
	width: 45%;
}

#designer div.img {
	width: 50%;
}

#items {
	display: flex;
	width: calc(100% - 50px);
	margin: 0;
	align-items: center;
	justify-content: space-between;
	background: #fff;
	padding: 50px 50px 50px 0;
}

#items div.text {
	width: 20%;
	padding: 5%;
	
}

#items div.img {
	width: 35%;
}

#about {
	width: 1000px;
	margin: 100px auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#about div.img {
	width: 35%;
}

#about div.text {
	width: 60%;
}



@media screen and (min-width: 0px) and (max-width: 480px) {


div.logo_hori {
	background: url("img/logo_hori.png") repeat-x;
	background-size: auto 200px;
    background-position: 0 0;
    -webkit-animation: bgroop 50s linear infinite;
    animation: bgroop 50s linear infinite;	
	height: 200px;
	margin:  10px 0 10px 0;
	width: 100%;
	opacity: 0.8;
}

	
  #top img.notice {
    top: 200px;
    right: 0;
    width: 35px;
    position: absolute;
  }
	
#partybox {
	background: url("img/bg.jpg") 0% 0% repeat scroll;
	background-size: auto;
	font-size: 1rem;
	line-height: 1.8;
	color: #84181d;
	padding: 1px 0;
}
	
	
#whiteMainBox_fit h2 {
	font-size: 2rem;
	margin-bottom: 10px;
}
	
	#top {
		background-size: auto 100px;
		padding: 100px 0 40px 0;
	}	
	#top h1 {
		width: 100%;
		height: auto;
		text-align: center;
	}

	
#top h1 img:nth-of-type(1) {
  width: 70%;
position: static;	
}
	
#top h1 img:nth-of-type(2) {
  width: 70%;
position: static;	
}
	
#top h1 img:nth-of-type(3) {
  top: -50px;
  left: 70%;
  width: 100px;
}
	
#top h1 img:nth-of-type(4) {
  top: 400px;
  right: 5%;
  width: 30%;
}
	
#message {
  width: 90%;
  margin: 0 auto;
  padding: 50px 5% 300px 5%;
  background: url("img/bg_glass.webp") 120% 150% no-repeat;
    background-size: auto;
  background-size: 80%;
}
	
	.bg_logo {
		background: none;
	}	
	#video {
	  width: 100%;
	  aspect-ratio: 16 / 9;
		margin: 0;
	}

	#video iframe {
		width: 100%;
		height: 100%;
		border: 0;
	}
	
#package {
	display: block;
	margin: 50px auto;
}
	
#package div.img {
  width: 100%;
}
	
#package div.text {
  width: 100%;
  padding: 20px 0;
}
	
	
#designer {
	margin: 50px auto;
	display: block;
}	
	
#designer div.text {
  width: 100%;
	margin-top: 20px;
}	
	
#designer div.img {
  width: 100%;
}	
	
#items {
  display: block;
  width: 90%;
  margin: 0 auto;
  padding: 50px 5%;
}
	
#items div.text {
  width: 100%;
	padding: 0;
}	

#items div.img {
  width: 100%;
}	
	
#about {
  width: 90%;
  margin: 50px auto;
  display: block;
}
	
	
#about div.img {
  width: 50%;
  display: block;
  margin: auto;
}	
	
#about div.text {
  width: 100%;
}	
	
	
	
	
	
	
	
	
}