@charset "utf-8";

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ",
    Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #000;
  line-height: 1.5em;
  margin-bottom: 230px;
}

.wrapper {
  margin: 0 auto;
  max-width: 640px;
  overflow-x: hidden;
  background: #000;
  display: flex;
  flex-direction: column;
}

ol,
ul {
  list-style-type: none;
}

a:hover {
  opacity: 0.9;
}

a:focus {
  outline: 0;
}

img {
  height: auto;
  border: 0;
  vertical-align: top;
  width: 100%;
  margin: 0;
}

.creative_button_wrapper {
  animation: fluffy1 1s infinite ease;
  position: relative;
}
.creative_button {
  position: absolute;
  bottom: 1.5em;
  left: 50%;
  transform: translateX(-50%);
  width: 95%;
}

.movie1 {
  position: absolute;
  top: 13em;
  left: 40%;
  transform: translateX(-55%);
  width: 25%;
}

.movie2 {
  position: absolute;
  bottom: 10em;
  left: -3%;
  transform: translateX(-30%);
  width: 40%;
}

.movie3 {
  position: absolute;
  bottom: 2em;
  left: 36%;
  transform: translateX(-55%);
  width: 30%;
}

.creative_button02 {
  position: absolute;
  bottom: 40%;
  left: 50%;
  transform: translateX(-50%);
  width: 95%;
}

.SR_wrapper {
  position: relative;
}

.SR {
  position: absolute;
  top: 23%;
  left: 55%;
  transform: translateX(-55%);
  width: 85%;
}

.gif_wrapper {
  position: relative;
}

.gif01_image {
  position: absolute;
  bottom: 0;
  left: 0;
}

.gif02_image {
  position: absolute;
  bottom: -20px;
  left: 0;
}

.gif03_image {
  position: absolute;
  width: 80%;
  left: 51%;
  transform: translateX(-50%);
  top: 25%;
  border-radius: 5px;
  z-index: 2;
}

.text_image {
  position: absolute;
  right: -8%;
  width: 40%;
  height: auto;
  top: 22%;
  z-index: 3;
}

.video_wrapper {
  position: relative;
}

.manufacture_video {
  position: absolute;
  width: 84.9%;
  left: 50%;
  bottom: 8.59%;
  transform: translateX(-49.9%);
  border-radius: 5px;
}

.manufacture3_video {
  position: absolute;
  width: 86.6%;
  left: 50%;
  bottom: 27%;
  transform: translateX(-49.9%);
  border-radius: 5px;
}

.manufacture4_video {
  position: absolute;
  width: 84.5%;
  left: 50%;
  bottom: 4.5%;
  transform: translateX(-49.5%);
  border-radius: 5px;
}

/*-----------------------------
背景動画
-------------------------------*/
.video_2wrapper{
  aspect-ratio: 750/1440;
  height: 100%;
  width: 100%;
  position: relative;
}

.video_3wrapper{
  aspect-ratio: 750/1414;
  height: 100%;
  width: 100%;
  position: relative;
}

.video_4wrapper{
  aspect-ratio: 750/1100;
  height: 100%;
  width: 100%;
  position: relative;
}

.video_5wrapper{
  aspect-ratio: 750/1098;
  height: 100%;
  width: 100%;
  position: relative;
}

.absolute01{
  position: absolute;
  width: 100% ;
}
.absolute01down{
  padding-top: 10%;
  width: 100% ;
}
.absolute02{
  position: absolute;
  z-index: 0;
}

.absolute03{
  position: absolute;
  width: 100% ;
}

.absolute04{
  position: absolute;
  z-index: 2; 
  top: 1700px;
}

.absolute05{
  position: absolute;
  z-index: 3;
  top: 2050px;
  width: 75%;
}
/*----*/

@media screen and (max-width: 767px) {
  .creative_button01y {
    bottom:28px;
  }

  .movie1 {
    position: absolute;
    top: 20%;
    left: 40%;
    transform: translateX(-55%);
    width: 25%;
  }
  
  .movie2 {
    position: absolute;
    bottom: 20%;
    left: -3%;
    transform: translateX(-30%);
    width: 40%;
  }
  
  .movie3 {
    position: absolute;
    bottom: 5%;
    left: 36%;
    transform: translateX(-55%);
    width: 30%;
  }
  

  .absolute03{
    position: absolute;
    width: 100% ;
  }
  
  .absolute04{
    position: absolute;
    z-index: 2; 
    top: 72%;
  }
  
  .absolute05{
    position: absolute;
    z-index: 3;
    top:87%;
  }

  .creative_button {
    position: absolute;
    bottom: 40%;
    left: 50%;
    transform: translateX(-50%);
    width: 95%;
  }
  
}
.creative_button02y {
  position: absolute;
  bottom: 20%;
  left: 50%;
  transform: translate(-50%, -20%);
  width: 95%;
}
.creative_button03y {
  position: absolute;
  bottom: 50%;
  left: 49%;
  transform: translate(-50%, -100%);
  width: 90%;
}
.creative_button04y {
  position: absolute;
  bottom: 30%;
  left: 50%;
  transform: translate(-50%, -20%);
  width: 84%;
}
.creative_button05y {
  position: absolute;
  bottom: 30%;
  left: 50%;
  transform: translate(-50%, -35%);
  width: 95%;
}

.gaiyo {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer {
  background-color: #e4e4e4;
  color: #000;
  text-align: center;
  padding: 10px 0px;
}

.oya {
  position: fixed;
  bottom: 0%;
  z-index: 2;
  max-width: 640px;
}
.btn02 {
  position: absolute;
  width: 50%;
  right: 0;
  top: 1%;
  z-index: 3;
}

.tel_oya {
  z-index: 2;
  max-width: 640px;
}
.tel_head{
  position: absolute;
  width: 50%;
  right: 0;
  top: 0.4%;
  z-index: 3;
}

.tel_order_button {
  max-width: 317px;
}

.tel_order{
  position: relative;
}
.tel_order_button2{
  position: absolute;
  top: 25%;
  left: 5%;
  width: 90%;
}

@keyframes fluffy1 {
  0% {
    transform: translateY(7px);
  }
  50% {
    transform: translateY(-7px);
  }
  100% {
    transform: translateY(7px);
  }
}

/*-----------------------------
 loading
-------------------------------*/
.wvLoading {
	width: 100vw;
	height: 100vh;
	background: #fff;
	display: flex;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	justify-content: center;
	-ms-align-items: center;
	align-items: center;
	font-size: 0;
	line-height: 1;
}
.wvLoadingCnt {
	display: inline-block;
	height: auto;
	text-align: center;
	margin-top: -100px;
}
.wvLoadingCnt img {
	height: 100%;
	position: static;
	-webkit-animation-name: loading;
	animation-name: loading;
	-webkit-animation-duration: 3s;
	animation-duration: 3s;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;		
}
.wvLoadingCnt span {
	display: block;
	font-size: 14px;
	margin-top: 35px;
	color: #333;
	font-weight: bold;
}

