@charset "utf-8";
#screen {
	display: none;
}

@-webkit-keyframes wink {
	/* Safari & Chrome */
  25% {
	-webkit-transform: scale(1, 0);
  }

  50% {
	-webkit-transform: scale(1);
  }

  75% {
	-webkit-transform: scale(1, 0);
  }

  100% {
	-webkit-transform: scale(1);
  }
}

@keyframes wink {
  25% {
	transform: scale(1, 0);
  }

  50% {
	transform: scale(1);
  }

  75% {
	transform: scale(1, 0);
  }

  100% {
	transform: scale(1);
  }
}

@-webkit-keyframes lookleft {
	/* Safari & Chrome */
  25% {
	-webkit-transform: translateX(-400%);
  }

  75% {
	-webkit-transform: translateX(400%);
  }

  100% {
	-webkit-transform: translateX(0);
  }
}

@keyframes lookleft {
  25% {
	transform: translateX(-400%);
  }

  75% {
	transform: translateX(400%);
  }

  100% {
	transform: translateX(0);
  }
}

@-webkit-keyframes lookright {
	/* Safari & Chrome */
  25% {
	-webkit-transform: translateX(400%);
  }

  75% {
	-webkit-transform: translateX(-400%);
  }

  100% {
	-webkit-transform: translateX(0);
  }
}

@keyframes lookright {
  25% {
	transform: translateX(400%);
  }

  75% {
	transform: translateX(-400%);
  }

  100% {
	transform: translateX(0);
  }
}

@-webkit-keyframes lookupleft {
	/* Safari & Chrome */
  25% {
	-webkit-transform: translate(-400%, 200%);
  }

  75% {
	-webkit-transform: translate(400%, 200%);
  }

  100% {
	-webkit-transform: translate(0);
  }
}

@keyframes lookupleft {
  25% {
	transform: translate(-400%, 200%);
  }

  75% {
	transform: translate(400%, 200%);
  }

  100% {
	transform: translate(0);
  }
}

@-webkit-keyframes lookaround {
	/* Safari & Chrome */
  25% {
	-webkit-transform: rotate(180deg) translateY(-400%);
  }

  75% {
	-webkit-transform: rotate(540deg) translateY(-400%);
  }

  100% {
	-webkit-transform: rotate(720deg) translateY(0);
  }
}

@keyframes lookaround {
	/* Safari & Chrome */
  25% {
	transform: rotate(180deg) translateY(-400%);
  }

  75% {
	transform: rotate(540deg) translateY(-400%);
  }

  100% {
	transform: rotate(720deg) translateY(0);
  }
}

@-webkit-keyframes lookaroundunder {
	/* Safari & Chrome */
  25% {
	-webkit-transform: rotate(180deg) translateY(400%);
  }

  75% {
	-webkit-transform: rotate(540deg) translateY(400%);
  }

  100% {
	-webkit-transform: rotate(720deg) translateY(0);
  }
}

@keyframes lookaroundunder {
	/* Safari & Chrome */
  25% {
	transform: rotate(180deg) translateY(400%);
  }

  75% {
	transform: rotate(540deg) translateY(400%);
  }

  100% {
	transform: rotate(720deg) translateY(0);
  }
}

@-webkit-keyframes playmove1 {
	/* Safari & Chrome */
  10% {
	-webkit-transform: rotate(10deg) translate(0, 15%);
  }

  23% {
	-webkit-transform: rotate(-10deg) translate(-5%, 15%);
  }

  36% {
	-webkit-transform: rotate(10deg) translate(5%, 0);
  }

  60% {
	-webkit-transform: rotate(360deg) translate(10%, -8%);
  }

  70% {
	-webkit-transform: translate(0, -8%);
  }

  80% {
	-webkit-transform: rotate(5deg) translate(10%, 0);
  }

  90% {
	-webkit-transform: translate(0);
  }
}

@keyframes playmove1 {
	/* Safari & Chrome */
  10% {
	transform: rotate(10deg) translate(0, 15%);
  }

  23% {
	transform: rotate(-10deg) translate(-5%, 15%);
  }

  36% {
	transform: rotate(10deg) translate(5%, 0);
  }

  60% {
	transform: rotate(360deg) translate(10%, -8%);
  }

  70% {
	transform: translate(0, -8%);
  }

  80% {
	transform: rotate(5deg) translate(10%, 0);
  }

  90% {
	transform: translate(0);
  }
}

@keyframes playmove2 {
	/* Safari & Chrome */
  36% {
	transform: rotate(0) translate(0);
  }

  60% {
	transform: rotate(360deg) translate(8%, -12%);
  }

  70% {
	transform: translate(2%, -12%);
  }

  80% {
	transform: rotate(5deg) translate(8%, 0);
  }

  90% {
	transform: translate(0);
  }
}

@-webkit-keyframes playmove2_2 {
	/* Safari & Chrome */
  20% {
	-webkit-transform: rotateY(360deg) translate(10%, -8%);
  }

  100% {
	-webkit-transform: rotateY(0) translate(0);
  }
}

@keyframes playmove2_2 {
	/* Safari & Chrome */
  20% {
	transform: rotateY(360deg) translate(10%, -8%);
  }

  100% {
	transform: rotateY(0) translate(0);
  }
}

@-webkit-keyframes playmove3 {
	/* Safari & Chrome */
  12% {
	-webkit-transform: translate(-20%, 0) skew(10deg, 0);
  }

  25% {
	-webkit-transform: translate(-20%, 0) skew(0);
  }

  37% {
	-webkit-transform: translate(-40%, 0) skew(10deg, 0);
  }

  50% {
	-webkit-transform: translate(-40%, 0) skew(0);
  }

  62% {
	-webkit-transform: translate(-20%, 0) skew(-10deg, 0);
  }

  75% {
	-webkit-transform: translate(-20%, 0) skew(0);
  }

  87% {
	-webkit-transform: translate(0) skew(-10deg, 0);
  }

  100% {
	-webkit-transform: translate(0) skew(0);
  }
}

@keyframes playmove3 {
	/* Safari & Chrome */
  12% {
	transform: translate(-20%, 0) skew(10deg, 0);
  }

  25% {
	transform: translate(-20%, 0) skew(0);
  }

  37% {
	transform: translate(-40%, 0) skew(10deg, 0);
  }

  50% {
	transform: translate(-40%, 0) skew(0);
  }

  62% {
	transform: translate(-20%, 0) skew(-10deg, 0);
  }

  75% {
	transform: translate(-20%, 0) skew(0);
  }

  87% {
	transform: translate(0) skew(-10deg, 0);
  }

  100% {
	transform: translate(0) skew(0);
  }
}

#solution #animation {
	position: fixed;
	height: 100%;
	width: 100%;
	z-index: 101;
	top: 0;
	left: 0;
	display: none;
	overflow: hidden;
}
#solution #animation img, #solution #animation object {
	display: block;
	width: 100%;
}
#solution.solution01 #animation .con_animation.action span {
	-webkit-transform: scale(1, 1);
	-moz-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	transform: scale(1, 1);
}
#solution.solution01 #animation .con_animation.action span.img2 img {
	-webkit-transform: scale(1, 1);
	-moz-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	transform: scale(1, 1);
}
#solution.solution01 #animation .con_animation span {
	display: block;
	width: 100%;
	position: absolute;
	left: -5%;
	bottom: 50%;
	-webkit-transform-origin: 16.3492% bottom;
	-ms-transform-origin: 16.3492% bottom;
	transform-origin: 16.3492% bottom;
	-webkit-transform: scale(6, 6);
	-moz-transform: scale(6, 6);
	-ms-transform: scale(6, 6);
	-o-transform: scale(6, 6);
	transform: scale(6, 6);
	-webkit-transition: all 1500ms ease-in-out 0ms;
	-moz-transition: all 1500ms ease-in-out 0ms;
	-ms-transition: all 1500ms ease-in-out 0ms;
	-o-transition: all 1500ms ease-in-out 0ms;
	transition-property: all;
	transition-duration: 1500ms;
	transition-timing-function: ease-in-out;
	transition-delay: 0ms;
}
#solution.solution01 #animation .con_animation span.img1 {
	z-index: 1;
}
#solution.solution01 #animation .con_animation span.img2 img {
	-webkit-transform-origin: 19.5238% 85.5319%;
	-ms-transform-origin: 19.5238% 85.5319%;
	transform-origin: 19.5238% 85.5319%;
	-webkit-transform: scale(0, 0);
	-moz-transform: scale(0, 0);
	-ms-transform: scale(0, 0);
	-o-transform: scale(0, 0);
	transform: scale(0, 0);
	-webkit-transition: all 1500ms ease-in-out 0ms;
	-moz-transition: all 1500ms ease-in-out 0ms;
	-ms-transition: all 1500ms ease-in-out 0ms;
	-o-transition: all 1500ms ease-in-out 0ms;
	transition-property: all;
	transition-duration: 1500ms;
	transition-timing-function: ease-in-out;
	transition-delay: 0ms;
}
@media only screen and (min-width: 768px) {
  #solution.solution01 #animation .con_animation span {
	width: 800px;
	left: 50%;
	margin-left: -500px;
	margin-bottom: -250px;
  }
}
#solution.solution02 #animation .con_animation {
	display: -webkit-flex;
	display: flex;
	position: absolute;
	width: 90%;
	left: 5%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	margin-top: -50px;
}
#solution.solution02 #animation .con_animation.active span img {
	opacity: 1;
	-webkit-transition: opacity 1000ms ease-in-out 6000ms;
	-moz-transition: opacity 1000ms ease-in-out 6000ms;
	-ms-transition: opacity 1000ms ease-in-out 6000ms;
	-o-transition: opacity 1000ms ease-in-out 6000ms;
	transition-property: opacity;
	transition-duration: 1000ms;
	transition-timing-function: ease-in-out;
	transition-delay: 6000ms;
}
#solution.solution02 #animation .con_animation.active span.wink:before, #solution.solution02 #animation .con_animation.active span.wink:after {
	-webkit-animation: wink 400ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: wink 400ms linear 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.left:before, #solution.solution02 #animation .con_animation.active span.left:after {
	-webkit-animation: lookleft 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookleft 4000ms ease-in-out 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.right:before, #solution.solution02 #animation .con_animation.active span.right:after {
	-webkit-animation: lookright 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookright 4000ms ease-in-out 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.around:before, #solution.solution02 #animation .con_animation.active span.around:after {
	-webkit-animation: lookaround 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookaround 4000ms linear 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.aroundunder:before, #solution.solution02 #animation .con_animation.active span.aroundunder:after {
	-webkit-animation: lookaroundunder 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookaroundunder 4000ms linear 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.confusion:before {
	-webkit-animation: lookaroundunder 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookaroundunder 4000ms linear 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.confusion:after {
	-webkit-animation: lookaround 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookaround 4000ms linear 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.upleft:before, #solution.solution02 #animation .con_animation.active span.upleft:after {
	-webkit-animation: lookupleft 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookupleft 4000ms ease-in-out 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.first.img1:before, #solution.solution02 #animation .con_animation.active span.first.img1:after {
	-webkit-animation: lookleft 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookleft 4000ms ease-in-out 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.first.img2:before, #solution.solution02 #animation .con_animation.active span.first.img2:after {
	-webkit-animation: lookaround 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookaround 4000ms linear 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.first.img3:before {
	-webkit-animation: lookaroundunder 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookaroundunder 4000ms linear 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.first.img3:after {
	-webkit-animation: lookaround 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookaround 4000ms linear 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation.active span.first.img4:before, #solution.solution02 #animation .con_animation.active span.first.img4:after {
	-webkit-animation: lookupleft 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: lookupleft 4000ms ease-in-out 0ms 1 normal forwards;
}
#solution.solution02 #animation .con_animation span {
	display: block;
	position: relative;
}
#solution.solution02 #animation .con_animation span img {
	opacity: 0;
	-webkit-transition: opacity 1000ms ease-in-out 0ms;
	-moz-transition: opacity 1000ms ease-in-out 0ms;
	-ms-transition: opacity 1000ms ease-in-out 0ms;
	-o-transition: opacity 1000ms ease-in-out 0ms;
	transition-property: opacity;
	transition-duration: 1000ms;
	transition-timing-function: ease-in-out;
	transition-delay: 0ms;
}
#solution.solution02 #animation .con_animation span:before, #solution.solution02 #animation .con_animation span:after {
	content: "";
	display: block;
	width: 0.7vw;
	height: 0.7vw;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	background: #000;
	position: absolute;
	top: 0;
	left: 0;
}
#solution.solution02 #animation .con_animation span.img1 {
	width: 1200px;
}
#solution.solution02 #animation .con_animation span.img1:before, #solution.solution02 #animation .con_animation span.img1:after {
	top: 27%;
}
#solution.solution02 #animation .con_animation span.img1:before {
	left: 44%;
}
#solution.solution02 #animation .con_animation span.img1:after {
	left: 74%;
}
#solution.solution02 #animation .con_animation span.img2 {
	width: 2000px;
}
#solution.solution02 #animation .con_animation span.img2:before, #solution.solution02 #animation .con_animation span.img2:after {
	top: 79%;
}
#solution.solution02 #animation .con_animation span.img2:before {
	left: 38%;
}
#solution.solution02 #animation .con_animation span.img2:after {
	left: 57%;
}
#solution.solution02 #animation .con_animation span.img3 {
	width: 1900px;
}
#solution.solution02 #animation .con_animation span.img3:before, #solution.solution02 #animation .con_animation span.img3:after {
	top: 42%;
}
#solution.solution02 #animation .con_animation span.img3:before {
	left: 46%;
}
#solution.solution02 #animation .con_animation span.img3:after {
	left: 64%;
}
#solution.solution02 #animation .con_animation span.img4 {
	width: 1200px;
}
#solution.solution02 #animation .con_animation span.img4:before, #solution.solution02 #animation .con_animation span.img4:after {
	top: 30%;
}
#solution.solution02 #animation .con_animation span.img4:before {
	left: 52%;
}
#solution.solution02 #animation .con_animation span.img4:after {
	left: 82%;
}
#solution.solution03 #animation .con_animation {
	display: -webkit-flex;
	display: flex;
	position: absolute;
	width: 80%;
	left: 10%;
	top: 35%;
}
#solution.solution03 #animation .con_animation.standby span {
	-webkit-transition: all 1200ms ease-out 0ms;
	-moz-transition: all 1200ms ease-out 0ms;
	-ms-transition: all 1200ms ease-out 0ms;
	-o-transition: all 1200ms ease-out 0ms;
	transition-property: all;
	transition-duration: 1200ms;
	transition-timing-function: ease-out;
	transition-delay: 0ms;
}
#solution.solution03 #animation .con_animation.standby span.img1 {
	-webkit-transform: translate(0.6vw, -0.6vh);
	-moz-transform: translate(0.6vw, -0.6vh);
	-ms-transform: translate(0.6vw, -0.6vh);
	-o-transform: translate(0.6vw, -0.6vh);
	transform: translate(0.6vw, -0.6vh);
}
#solution.solution03 #animation .con_animation.standby span.img2 {
	-webkit-transform: translate(0.12vw, -2.12vh);
	-moz-transform: translate(0.12vw, -2.12vh);
	-ms-transform: translate(0.12vw, -2.12vh);
	-o-transform: translate(0.12vw, -2.12vh);
	transform: translate(0.12vw, -2.12vh);
}
#solution.solution03 #animation .con_animation.standby span.img3 {
	-webkit-transform: translate(0, 1.44vh);
	-moz-transform: translate(0, 1.44vh);
	-ms-transform: translate(0, 1.44vh);
	-o-transform: translate(0, 1.44vh);
	transform: translate(0, 1.44vh);
}
#solution.solution03 #animation .con_animation.standby span.img4 {
	-webkit-transform: translate(-0.6vw, -1.6vh);
	-moz-transform: translate(-0.6vw, -1.6vh);
	-ms-transform: translate(-0.6vw, -1.6vh);
	-o-transform: translate(-0.6vw, -1.6vh);
	transform: translate(-0.6vw, -1.6vh);
}
#solution.solution03 #animation .con_animation.action span {
	-webkit-transition: all 400ms cubic-bezier(0.4, 1.32, 0.875, 1.32) 0ms;
	-moz-transition: all 400ms cubic-bezier(0.4, 1.32, 0.875, 1.32) 0ms;
	-ms-transition: all 400ms cubic-bezier(0.4, 1.32, 0.875, 1.32) 0ms;
	-o-transition: all 400ms cubic-bezier(0.4, 1.32, 0.875, 1.32) 0ms;
	transition-property: all;
	transition-duration: 400ms;
	transition-timing-function: cubic-bezier(0.4, 1.32, 0.875, 1.32);
	transition-delay: 0ms;
}
#solution.solution03 #animation .con_animation.action span.img1 {
	-webkit-transform: translate(-15vw, 15vh);
	-moz-transform: translate(-15vw, 15vh);
	-ms-transform: translate(-15vw, 15vh);
	-o-transform: translate(-15vw, 15vh);
	transform: translate(-15vw, 15vh);
}
#solution.solution03 #animation .con_animation.action span.img2 {
	-webkit-transform: translate(-3vw, 58vh);
	-moz-transform: translate(-3vw, 58vh);
	-ms-transform: translate(-3vw, 58vh);
	-o-transform: translate(-3vw, 58vh);
	transform: translate(-3vw, 58vh);
}
#solution.solution03 #animation .con_animation.action span.img3 {
	-webkit-transform: translate(0, -38vh);
	-moz-transform: translate(0, -38vh);
	-ms-transform: translate(0, -38vh);
	-o-transform: translate(0, -38vh);
	transform: translate(0, -38vh);
}
#solution.solution03 #animation .con_animation.action span.img4 {
	-webkit-transform: translate(15vw, 40vh);
	-moz-transform: translate(15vw, 40vh);
	-ms-transform: translate(15vw, 40vh);
	-o-transform: translate(15vw, 40vh);
	transform: translate(15vw, 40vh);
}
#solution.solution03 #animation .con_animation span {
	display: block;
	position: relative;
}
#solution.solution03 #animation .con_animation span.img1 {
	width: 1560px;
}
#solution.solution03 #animation .con_animation span.img2 {
	width: 1620px;
}
#solution.solution03 #animation .con_animation span.img3 {
	width: 1560px;
}
#solution.solution03 #animation .con_animation span.img4 {
	width: 1560px;
}
@media only screen and (min-width: 768px) {
  #solution.solution03 #animation .con_animation {
	width: 50%;
	left: 5vw;
	top: 30%;
  }
  #solution.solution03 #animation .con_animation.standby span {
	-webkit-transition: all 1200ms ease-out 0ms;
	-moz-transition: all 1200ms ease-out 0ms;
	-ms-transition: all 1200ms ease-out 0ms;
	-o-transition: all 1200ms ease-out 0ms;
	transition-property: all;
	transition-duration: 1200ms;
	transition-timing-function: ease-out;
	transition-delay: 0ms;
  }
  #solution.solution03 #animation .con_animation.standby span.img1 {
	-webkit-transform: translate(0.02vw, -0.3vh);
	-moz-transform: translate(0.02vw, -0.3vh);
	-ms-transform: translate(0.02vw, -0.3vh);
	-o-transform: translate(0.02vw, -0.3vh);
	transform: translate(0.02vw, -0.3vh);
  }
  #solution.solution03 #animation .con_animation.standby span.img2 {
	-webkit-transform: translate(0.06vw, -1.04vh);
	-moz-transform: translate(0.06vw, -1.04vh);
	-ms-transform: translate(0.06vw, -1.04vh);
	-o-transform: translate(0.06vw, -1.04vh);
	transform: translate(0.06vw, -1.04vh);
  }
  #solution.solution03 #animation .con_animation.standby span.img3 {
	-webkit-transform: translate(0, 0.76vh);
	-moz-transform: translate(0, 0.76vh);
	-ms-transform: translate(0, 0.76vh);
	-o-transform: translate(0, 0.76vh);
	transform: translate(0, 0.76vh);
  }
  #solution.solution03 #animation .con_animation.standby span.img4 {
	-webkit-transform: translate(-0.96vw, -1vh);
	-moz-transform: translate(-0.96vw, -1vh);
	-ms-transform: translate(-0.96vw, -1vh);
	-o-transform: translate(-0.96vw, -1vh);
	transform: translate(-0.96vw, -1vh);
  }
  #solution.solution03 #animation .con_animation.action span {
	-webkit-transition: all 400ms cubic-bezier(0.4, 1.32, 0.875, 1.32) 0ms;
	-moz-transition: all 400ms cubic-bezier(0.4, 1.32, 0.875, 1.32) 0ms;
	-ms-transition: all 400ms cubic-bezier(0.4, 1.32, 0.875, 1.32) 0ms;
	-o-transition: all 400ms cubic-bezier(0.4, 1.32, 0.875, 1.32) 0ms;
	transition-property: all;
	transition-duration: 400ms;
	transition-timing-function: cubic-bezier(0.4, 1.32, 0.875, 1.32);
	transition-delay: 0ms;
  }
  #solution.solution03 #animation .con_animation.action span.img1 {
	-webkit-transform: translate(-10vw, 15vh);
	-moz-transform: translate(-10vw, 15vh);
	-ms-transform: translate(-10vw, 15vh);
	-o-transform: translate(-10vw, 15vh);
	transform: translate(-10vw, 15vh);
  }
  #solution.solution03 #animation .con_animation.action span.img2 {
	-webkit-transform: translate(-3vw, 52vh);
	-moz-transform: translate(-3vw, 52vh);
	-ms-transform: translate(-3vw, 52vh);
	-o-transform: translate(-3vw, 52vh);
	transform: translate(-3vw, 52vh);
  }
  #solution.solution03 #animation .con_animation.action span.img3 {
	-webkit-transform: translate(0, -38vh);
	-moz-transform: translate(0, -38vh);
	-ms-transform: translate(0, -38vh);
	-o-transform: translate(0, -38vh);
	transform: translate(0, -38vh);
  }
  #solution.solution03 #animation .con_animation.action span.img4 {
	-webkit-transform: translate(48vw, 50vh);
	-moz-transform: translate(48vw, 50vh);
	-ms-transform: translate(48vw, 50vh);
	-o-transform: translate(48vw, 50vh);
	transform: translate(48vw, 50vh);
  }
}
#solution.solution04 #animation .con_animation.active img {
	-webkit-transform: translate(695vw, -50%);
	-moz-transform: translate(695vw, -50%);
	-ms-transform: translate(695vw, -50%);
	-o-transform: translate(695vw, -50%);
	transform: translate(695vw, -50%);
}
#solution.solution04 #animation .con_animation img {
	display: block;
	position: absolute;
	right: 100vw;
	top: 30%;
	width: 800%;
	max-width: none;
	-webkit-transform: translate(0, -50%);
	-moz-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	-o-transform: translate(0, -50%);
	transform: translate(0, -50%);
	-webkit-transition: all 3000ms cubic-bezier(0.695, 0.085, 0.59, 1.31) 0ms;
	-moz-transition: all 3000ms cubic-bezier(0.695, 0.085, 0.59, 1.31) 0ms;
	-ms-transition: all 3000ms cubic-bezier(0.695, 0.085, 0.59, 1.31) 0ms;
	-o-transition: all 3000ms cubic-bezier(0.695, 0.085, 0.59, 1.31) 0ms;
	transition-property: all;
	transition-duration: 3000ms;
	transition-timing-function: cubic-bezier(0.695, 0.085, 0.59, 1.31);
	transition-delay: 0ms;
}
@media only screen and (min-width: 768px) {
  #solution.solution04 #animation .con_animation.active img {
	-webkit-transform: translate(450vw, -50%);
	-moz-transform: translate(450vw, -50%);
	-ms-transform: translate(450vw, -50%);
	-o-transform: translate(450vw, -50%);
	transform: translate(450vw, -50%);
  }
  #solution.solution04 #animation .con_animation img {
	width: 500%;
	top: 50%;
  }
}
#solution.solution05 #page.movie #video .videooverlay {
	display: none;
}
#solution.solution05 #animation .con_animation.active {
	background: rgba(255, 255, 255, 0.9);
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	-webkit-transition: background 1000ms ease-in-out 1000ms;
	-moz-transition: background 1000ms ease-in-out 1000ms;
	-ms-transition: background 1000ms ease-in-out 1000ms;
	-o-transition: background 1000ms ease-in-out 1000ms;
	transition-property: background;
	transition-duration: 1000ms;
	transition-timing-function: ease-in-out;
	transition-delay: 1000ms;
}
#solution.solution05 #animation .con_animation.active .device {
	width: 60%;
	height: 45%;
}
#solution.solution05 #animation .con_animation.active .device .display span:before {
	width: 100%;
}
#solution.solution05 #animation .con_animation.active .device .img {
	width: 60%;
	opacity: 1;
}
#solution.solution05 #animation .con_animation .device {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: all 1000ms ease-in-out 1000ms;
	-moz-transition: all 1000ms ease-in-out 1000ms;
	-ms-transition: all 1000ms ease-in-out 1000ms;
	-o-transition: all 1000ms ease-in-out 1000ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: ease-in-out;
	transition-delay: 1000ms;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	border: 5px solid #000;
	border-bottom: 60px solid #000;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
	padding-bottom: 20%;
}
#solution.solution05 #animation .con_animation .device:before {
	content: "";
	display: block;
	position: absolute;
	bottom: -50px;
	left: 50%;
	background: #000;
	width: 30px;
	height: 30px;
	border: 1px solid #fff;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	margin-left: -15px;
}
#solution.solution05 #animation .con_animation .device .display {
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	-webkit-flex-direction: column;
	display: flex;
	justify-content: space-between;
	flex-direction: column;
	position: absolute;
	z-index: 1;
	height: 100%;
	width: 100%;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: all 1000ms ease-in-out 1000ms;
	-moz-transition: all 1000ms ease-in-out 1000ms;
	-ms-transition: all 1000ms ease-in-out 1000ms;
	-o-transition: all 1000ms ease-in-out 1000ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: ease-in-out;
	transition-delay: 1000ms;
}
#solution.solution05 #animation .con_animation .device .display span {
	display: block;
	width: 100%;
	height: 5%;
	position: relative;
}
#solution.solution05 #animation .con_animation .device .display span:before {
	content: "";
	display: block;
	width: 0;
	height: 100%;
	background: #000;
	position: absolute;
	top: 0;
	-webkit-transition: width 400ms ease-in-out 400ms;
	-moz-transition: width 400ms ease-in-out 400ms;
	-ms-transition: width 400ms ease-in-out 400ms;
	-o-transition: width 400ms ease-in-out 400ms;
	transition-property: width;
	transition-duration: 400ms;
	transition-timing-function: ease-in-out;
	transition-delay: 400ms;
}
#solution.solution05 #animation .con_animation .device .display span:nth-child(2n):before {
	left: 0;
}
#solution.solution05 #animation .con_animation .device .display span:nth-child(2n+1):before {
	right: 0;
}
#solution.solution05 #animation .con_animation .device .img {
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	width: 50%;
	opacity: 0;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: width 1000ms ease-in-out 1000ms, opacity 500ms ease-in-out;
	-moz-transition: width 1000ms ease-in-out 1000ms, opacity 500ms ease-in-out;
	-ms-transition: width 1000ms ease-in-out 1000ms, opacity 500ms ease-in-out;
	-o-transition: width 1000ms ease-in-out 1000ms, opacity 500ms ease-in-out;
	transition: width 1000ms ease-in-out 1000ms, opacity 500ms ease-in-out;
}
@media only screen and (min-width: 768px) {
  #solution.solution05 #animation .con_animation.active .device {
	width: 500px;
	height: 400px;
	padding-bottom: 1%;
	margin-top: -50px;
  }
  #solution.solution05 #animation .con_animation.active .device:before, #solution.solution05 #animation .con_animation.active .device:after {
	bottom: 0;
  }
  #solution.solution05 #animation .con_animation.active .device .display {
	height: 300px;
	width: 500px;
  }
  #solution.solution05 #animation .con_animation.active .device .display span:before {
	height: 100%;
  }
  #solution.solution05 #animation .con_animation.active .device .img {
	width: 250px;
  }
  #solution.solution05 #animation .con_animation .device {
	border: none;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-ms-border-radius: 0;
	-o-border-radius: 0;
	border-radius: 0;
  }
  #solution.solution05 #animation .con_animation .device:before, #solution.solution05 #animation .con_animation .device:after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	background: #000;
	bottom: -10vh;
	border: none;
	-webkit-transition: bottom 1000ms ease-in-out 1000ms;
	-moz-transition: bottom 1000ms ease-in-out 1000ms;
	-ms-transition: bottom 1000ms ease-in-out 1000ms;
	-o-transition: bottom 1000ms ease-in-out 1000ms;
	transition-property: bottom;
	transition-duration: 1000ms;
	transition-timing-function: ease-in-out;
	transition-delay: 1000ms;
  }
  #solution.solution05 #animation .con_animation .device:after {
	width: 4%;
	height: 10%;
	margin-left: -2%;
  }
  #solution.solution05 #animation .con_animation .device:before {
	width: 24%;
	height: 5%;
	margin-left: -12%;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
  }
  #solution.solution05 #animation .con_animation .device .display {
	-webkit-flex-direction: row;
	flex-direction: row;
	height: 120%;
	width: 150%;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
  }
  #solution.solution05 #animation .con_animation .device .display span {
	width: 5%;
	height: 100%;
  }
  #solution.solution05 #animation .con_animation .device .display span:before {
	width: 100%;
	height: 0;
	top: auto;
	left: 0;
	-webkit-transition: height 400ms ease-in-out 400ms;
	-moz-transition: height 400ms ease-in-out 400ms;
	-ms-transition: height 400ms ease-in-out 400ms;
	-o-transition: height 400ms ease-in-out 400ms;
	transition-property: height;
	transition-duration: 400ms;
	transition-timing-function: ease-in-out;
	transition-delay: 400ms;
  }
  #solution.solution05 #animation .con_animation .device .display span:nth-child(2n):before {
	top: 0;
  }
  #solution.solution05 #animation .con_animation .device .display span:nth-child(2n+1):before {
	bottom: 0;
  }
  #solution.solution05 #animation .con_animation .device .display span:first-child:before {
	border-radius: 10px 0 0 10px/10px 0 0 10px;
  }
  #solution.solution05 #animation .con_animation .device .display span:last-child:before {
	border-radius: 0 10px 10px 0/0 10px 10px 0;
  }
}
#solution.solution06 #animation .con_animation.active > span.img1 {
	-webkit-transform: translate(0, -50%) scale(1);
	-ms-transform: translate(0, -50%) scale(1);
	transform: translate(0, -50%) scale(1);
}
#solution.solution06 #animation .con_animation.active > span.img2 {
	bottom: -30vw;
}
#solution.solution06 #animation .con_animation.active > span.img3 {
	-webkit-transform: translateX(100%);
	-moz-transform: translateX(100%);
	-ms-transform: translateX(100%);
	-o-transform: translateX(100%);
	transform: translateX(100%);
	bottom: -30vw;
}
#solution.solution06 #animation .con_animation > span {
	display: block;
	position: absolute;
	width: 100%;
	left: 0;
	bottom: 38%;
}
#solution.solution06 #animation .con_animation > span.img1 {
	width: 90%;
	left: 5%;
	bottom: 50%;
	-webkit-transform-origin: 13% 50%;
	-ms-transform-origin: 13% 50%;
	transform-origin: 13% 50%;
	-webkit-transition: all 1000ms ease-in-out 2200ms;
	-moz-transition: all 1000ms ease-in-out 2200ms;
	-ms-transition: all 1000ms ease-in-out 2200ms;
	-o-transition: all 1000ms ease-in-out 2200ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: ease-in-out;
	transition-delay: 2200ms;
	-webkit-transform: translate(-50%, 80%) scale(40);
	-ms-transform: translate(-50%, 80%) scale(40);
	transform: translate(-50%, 80%) scale(40);
}
#solution.solution06 #animation .con_animation > span.img2 {
	width: 130vw;
	-webkit-transition: bottom 800ms ease-in-out 1800ms;
	-moz-transition: bottom 800ms ease-in-out 1800ms;
	-ms-transition: bottom 800ms ease-in-out 1800ms;
	-o-transition: bottom 800ms ease-in-out 1800ms;
	transition-property: bottom;
	transition-duration: 800ms;
	transition-timing-function: ease-in-out;
	transition-delay: 1800ms;
}
#solution.solution06 #animation .con_animation > span.img3 {
	width: 130vw;
	left: auto;
	right: 100vw;
	-webkit-transition: -webkit-transform 1500ms linear, bottom 800ms ease-in-out 1800ms;
	-ms-transition: -o-transform 1500ms linear,bottom 800ms ease-in-out 1800ms;
	transition: transform 1500ms linear,bottom 800ms ease-in-out 1800ms;
}
#solution.solution06 #animation .con_animation > span.img3 span {
	display: block;
	width: 100%;
	position: relative;
}
#solution.solution06 #animation .con_animation > span.img3 span img {
	width: 100%;
	max-width: none;
}
#solution.solution06 #animation .con_animation > span.img3 span:first-child {
	display: none;
}
#solution.solution06 #animation .con_animation > span.img3 span:last-child:after {
	content: "";
	display: block;
	width: 4px;
	height: 84.697509%;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: -2px;
}
@media only screen and (min-width: 768px) {
  #solution.solution06 #animation .con_animation.active > span.img1 {
	-webkit-transform: translate(-50%, 50%) scale(1);
	-ms-transform: translate(-50%, 50%) scale(1);
	transform: translate(-50%, 50%) scale(1);
  }
  #solution.solution06 #animation .con_animation > span {
	bottom: 0;
  }
  #solution.solution06 #animation .con_animation > span.img1 {
	width: 800px;
	left: 50%;
	margin-top: -50px;
	-webkit-transform: translate(-50%, 50%) scale(30);
	-ms-transform: translate(-50%, 50%) scale(30);
	transform: translate(-50%, 50%) scale(30);
  }
  #solution.solution06 #animation .con_animation > span.img2 {
	width: 100%;
  }
  #solution.solution06 #animation .con_animation > span.img3 {
	width: 200%;
	-webkit-display: flex;
	display: flex;
  }
  #solution.solution06 #animation .con_animation > span.img3 span {
	width: 100%;
  }
  #solution.solution06 #animation .con_animation > span.img3 span:first-child {
	display: block;
  }
  #solution.solution06 #animation .con_animation > span.img3 span:last-child:after {
	content: "";
	display: block;
	width: 4px;
	height: 84.697509%;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: -2px;
  }
}
#solution.solution07 #animation .con_animation {
	position: absolute;
	width: 100%;
	height: 100%;
	overflow: hidden;
	-webkit-transform: scale(8, 8);
	-moz-transform: scale(8, 8);
	-ms-transform: scale(8, 8);
	-o-transform: scale(8, 8);
	transform: scale(8, 8);
	-webkit-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-moz-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-ms-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-o-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: cubic-bezier(0.5, 0.31, 0.685, 1.195);
	transition-delay: 0ms;
}
#solution.solution07 #animation .con_animation.active {
	-webkit-transform: scale(1, 1);
	-moz-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	transform: scale(1, 1);
	-webkit-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-moz-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-ms-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-o-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: cubic-bezier(0.5, 0.31, 0.685, 1.195);
	transition-delay: 600ms;
}
#solution.solution07 #animation .con_animation.active > div.con_img1, #solution.solution07 #animation .con_animation.active > div.con_img2 {
	-webkit-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-moz-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-ms-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-o-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: cubic-bezier(0.5, 0.31, 0.685, 1.195);
	transition-delay: 600ms;
}
#solution.solution07 #animation .con_animation.active > div.con_img1 .img1:after, #solution.solution07 #animation .con_animation.active > div.con_img1 .img2:after, #solution.solution07 #animation .con_animation.active > div.con_img2 .img1:after, #solution.solution07 #animation .con_animation.active > div.con_img2 .img2:after {
	-webkit-transform: scale(1, 1);
	-moz-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	transform: scale(1, 1);
	-webkit-transition: all 200ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-moz-transition: all 200ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-ms-transition: all 200ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-o-transition: all 200ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	transition-property: all;
	transition-duration: 200ms;
	transition-timing-function: cubic-bezier(0.5, 0.31, 0.685, 1.195);
	transition-delay: 600ms;
}
#solution.solution07 #animation .con_animation.active > div.con_img1 {
	-webkit-transform: translate(-30vw, -30vw);
	-moz-transform: translate(-30vw, -30vw);
	-ms-transform: translate(-30vw, -30vw);
	-o-transform: translate(-30vw, -30vw);
	transform: translate(-30vw, -30vw);
}
#solution.solution07 #animation .con_animation.active > div.con_img2 {
	-webkit-transform: translate(30vw, -30vw);
	-moz-transform: translate(30vw, -30vw);
	-ms-transform: translate(30vw, -30vw);
	-o-transform: translate(30vw, -30vw);
	transform: translate(30vw, -30vw);
}
#solution.solution07 #animation .con_animation.active > div.con_img3 {
	-webkit-transform: translate(0, 20vw);
	-moz-transform: translate(0, 20vw);
	-ms-transform: translate(0, 20vw);
	-o-transform: translate(0, 20vw);
	transform: translate(0, 20vw);
	-webkit-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-moz-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-ms-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-o-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: cubic-bezier(0.5, 0.31, 0.685, 1.195);
	transition-delay: 600ms;
}
#solution.solution07 #animation .con_animation.active > div.con_img3 .img3 {
	-webkit-transform: scale(1, 1);
	-moz-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	transform: scale(1, 1);
	-webkit-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-moz-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-ms-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	-o-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 600ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: cubic-bezier(0.5, 0.31, 0.685, 1.195);
	transition-delay: 600ms;
}
#solution.solution07 #animation .con_animation.active > div .play {
	margin-left: -25px;
	-webkit-transition: transform 200ms ease-in-out, margin 1000ms cubic-bezier(0.5, 0.3, 0.7, 1.05) 600ms;
	-moz-transition: transform 200ms ease-in-out, margin 1000ms cubic-bezier(0.5, 0.3, 0.7, 1.05) 600ms;
	-ms-transition: transform 200ms ease-in-out, margin 1000ms cubic-bezier(0.5, 0.3, 0.7, 1.05) 600ms;
	-o-transition: transform 200ms ease-in-out, margin 1000ms cubic-bezier(0.5, 0.3, 0.7, 1.05) 600ms;
	transition: transform 200ms ease-in-out, margin 1000ms cubic-bezier(0.5, 0.3, 0.7, 1.05) 600ms;
}
#solution.solution07 #animation .con_animation.active > div .play:after, #solution.solution07 #animation .con_animation.active > div .play:before {
	border: none;
	width: 3px;
	height: 10px;
	background: #fff;
}
#solution.solution07 #animation .con_animation.active > div .play:after {
	margin: -5px 0 0 -5px;
}
#solution.solution07 #animation .con_animation.active > div .play:before {
	margin: -5px 0 0 2px;
}
#solution.solution07 #animation .con_animation.active > div .play.active {
	-webkit-transform: scale(1.1, 1.1);
	-moz-transform: scale(1.1, 1.1);
	-ms-transform: scale(1.1, 1.1);
	-o-transform: scale(1.1, 1.1);
	transform: scale(1.1, 1.1);
}
#solution.solution07 #animation .con_animation.active.move > div {
	-webkit-transform-origin: 50% 50%;
	-ms-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}
#solution.solution07 #animation .con_animation.active.move > div.con_img1 .img1 {
	-webkit-animation: playmove1 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 2;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: playmove1 4000ms linear 0ms 2 normal forwards;
}
#solution.solution07 #animation .con_animation.active.move > div.con_img2 .img2 {
	-webkit-animation: playmove2_2 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 2;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: playmove2_2 4000ms linear 0ms 2 normal forwards;
}
#solution.solution07 #animation .con_animation.active.move > div.con_img2 .img2:after {
	-webkit-animation: playmove2 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 2;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: playmove2 4000ms linear 0ms 2 normal forwards;
}
#solution.solution07 #animation .con_animation.active.move > div.con_img3 .img3 {
	-webkit-animation: playmove3 4000ms;
	/* Safari & Chrome */
	-webkit-animation-timing-function: linear;
	-webkit-animation-iteration-count: 2;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: forwards;
	animation: playmove3 4000ms linear 0ms 2 normal forwards;
}
#solution.solution07 #animation .con_animation > div {
	display: block;
	width: 32vw;
	height: 30vw;
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -15vw 0 0 -16vw;
}
#solution.solution07 #animation .con_animation > div > span {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
}
#solution.solution07 #animation .con_animation > div > span:after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#solution.solution07 #animation .con_animation > div.con_img1 .img1, #solution.solution07 #animation .con_animation > div.con_img1 .img2, #solution.solution07 #animation .con_animation > div.con_img2 .img1, #solution.solution07 #animation .con_animation > div.con_img2 .img2 {
	-webkit-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-moz-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-ms-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-o-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: cubic-bezier(0.5, 0.31, 0.685, 1.195);
	transition-delay: 0ms;
}
#solution.solution07 #animation .con_animation > div.con_img1 .img1:after, #solution.solution07 #animation .con_animation > div.con_img1 .img2:after, #solution.solution07 #animation .con_animation > div.con_img2 .img1:after, #solution.solution07 #animation .con_animation > div.con_img2 .img2:after {
	border-top: 6vw solid #000;
	border-right: 6vw solid #000;
	border-bottom: 6vw solid #000;
	-webkit-transform: scale(0, 1);
	-moz-transform: scale(0, 1);
	-ms-transform: scale(0, 1);
	-o-transform: scale(0, 1);
	transform: scale(0, 1);
}
#solution.solution07 #animation .con_animation > div.con_img3 {
	-webkit-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-moz-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-ms-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-o-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: cubic-bezier(0.5, 0.31, 0.685, 1.195);
	transition-delay: 0ms;
}
#solution.solution07 #animation .con_animation > div.con_img3 .img3 {
	-webkit-transform: scale(2, 2);
	-moz-transform: scale(2, 2);
	-ms-transform: scale(2, 2);
	-o-transform: scale(2, 2);
	transform: scale(2, 2);
	-webkit-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-moz-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-ms-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	-o-transition: all 1000ms cubic-bezier(0.5, 0.31, 0.685, 1.195) 0ms;
	transition-property: all;
	transition-duration: 1000ms;
	transition-timing-function: cubic-bezier(0.5, 0.31, 0.685, 1.195);
	transition-delay: 0ms;
}
#solution.solution07 #animation .con_animation > div.con_img3 .img3:after {
	border: 6vw solid #000;
}
#solution.solution07 #animation .con_animation > div .play {
	display: block;
	width: 30px;
	height: 30px;
	background: #e60020;
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -15px 0 0 -15px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
}
#solution.solution07 #animation .con_animation > div .play:before, #solution.solution07 #animation .con_animation > div .play:after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
}
#solution.solution07 #animation .con_animation > div .play:after {
	border-left: 9px solid #fff;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	margin: -5px 0 0 -3px;
}
@media only screen and (min-width: 768px) {
  #solution.solution07 #animation .con_animation {
	-webkit-transform: scale(14, 14);
	-moz-transform: scale(14, 14);
	-ms-transform: scale(14, 14);
	-o-transform: scale(14, 14);
	transform: scale(14, 14);
  }
  #solution.solution07 #animation .con_animation.active > div.con_img1 {
	-webkit-transform: translate(-180px, -180px);
	-moz-transform: translate(-180px, -180px);
	-ms-transform: translate(-180px, -180px);
	-o-transform: translate(-180px, -180px);
	transform: translate(-180px, -180px);
  }
  #solution.solution07 #animation .con_animation.active > div.con_img2 {
	-webkit-transform: translate(180px, -180px);
	-moz-transform: translate(180px, -180px);
	-ms-transform: translate(180px, -180px);
	-o-transform: translate(180px, -180px);
	transform: translate(180px, -180px);
  }
  #solution.solution07 #animation .con_animation.active > div.con_img3 {
	-webkit-transform: translate(0, 120px);
	-moz-transform: translate(0, 120px);
	-ms-transform: translate(0, 120px);
	-o-transform: translate(0, 120px);
	transform: translate(0, 120px);
  }
  #solution.solution07 #animation .con_animation > div {
	width: 160px;
	height: 150px;
	margin: -75px 0 0 -80px;
  }
  #solution.solution07 #animation .con_animation > div.con_img1 .img1:after, #solution.solution07 #animation .con_animation > div.con_img1 .img2:after, #solution.solution07 #animation .con_animation > div.con_img2 .img1:after, #solution.solution07 #animation .con_animation > div.con_img2 .img2:after {
	border-top: 33px solid #000;
	border-right: 33px solid #000;
	border-bottom: 33px solid #000;
  }
  #solution.solution07 #animation .con_animation > div.con_img3 .img3:after {
	border: 33px solid #000;
  }
}

/* -----------------------------------------------------------
	.solutionheader
----------------------------------------------------------- */
.solutionheader {
	background: #000;
	padding: 17px 15px 13px;
	color: #fff;
}
.solutionheader span {
	display: block;
}
.solutionheader span.en img {
	height: 18px;
	width: auto;
}
.solutionheader span.ja {
	height: 0;
	width: 100%;
	margin: 8px 0 1px 0;
	padding-top: 14px;
	overflow: hidden;
	background: url(../images/txt_solution_detail_SP.svg) left center no-repeat;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	-o-background-size: contain;
	background-size: contain;
}

@media only screen and (min-width: 768px) {
  .solutionheader {
	padding: 62px 58px 8px;
	min-height: 100px;
	min-width: 1200px;
  }
  .solutionheader span {
	display: inline-block;
  }
  .solutionheader span.en img {
	height: 24px;
  }
  .solutionheader span.ja {
	height: 0;
	width: 458px;
	margin: 0 0 0 15px;
	padding-top: 18px;
	overflow: hidden;
	background: url(../images/txt_solution_detail.svg) left center no-repeat;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	-o-background-size: contain;
	background-size: contain;
  }
}
/* -----------------------------------------------------------
	.con_solution_detail
----------------------------------------------------------- */
.con_solution_detail .con_title h1 {
	padding: 20px 15px;
	font-family: "A1 Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif;
	font-size: 7vw;
	-webkit-font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
	font-feature-settings: "palt";
	color: #000;
	line-height: 1.4;
	letter-spacing: 0.3ex;
}
#solution.solution01 .con_solution_detail .con_title h1 {
	letter-spacing: 0.1ex;
}
.con_solution_detail .con_title h1 .small {
	font-size: 1.0rem;
	letter-spacing: 0.3ex;
	display: block;
}
.con_solution_detail .con_title ul {
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	padding: 10px 15px;
	line-height: 1.4;
	font-size: 1.0rem;
	color: #000;
}
.con_solution_detail .con_title ul.andother:after {
	content: "他";
}
.con_solution_detail .con_title ul li {
	display: inline;
	margin-right: 0.6em;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, Meiryo, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	letter-spacing: 0.1ex;
	-webkit-font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
	font-feature-settings: "palt";
}
.con_solution_detail .box_solution_detail {
	padding: 20px 15px 40px;
}
.con_solution_detail .box_solution_detail .body_txt {
	text-align: justify;
	font-size: 1.4rem;
	line-height: 2.4;
	-webkit-font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.3ex;
}
.con_solution_detail .box_solution_detail .body_txt .small {
	font-size: 1.1rem;
	vertical-align: middle;
}
.con_solution_detail .box_solution_detail .tagline_txt {
	padding: 20px 0 0;
	-webkit-font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
	font-feature-settings: "palt";
	white-space: nowrap;
}
.con_solution_detail .box_solution_detail .tagline_txt .playmovie {
	display: inline-block;
	font-size: 6vw;
	font-family: "A1 Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif;
	-webkit-font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.3ex;
	position: relative;
}
.con_solution_detail .box_solution_detail .tagline_txt .playmovie:after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: rgba(0, 0, 0, 0.1);
	position: absolute;
	bottom: 0;
	left: 0;
	-webkit-transition: background 200ms ease-in-out 0ms;
	-moz-transition: background 200ms ease-in-out 0ms;
	-ms-transition: background 200ms ease-in-out 0ms;
	-o-transition: background 200ms ease-in-out 0ms;
	transition-property: background;
	transition-duration: 200ms;
	transition-timing-function: ease-in-out;
	transition-delay: 0ms;
}
.con_solution_detail .box_solution_detail .tagline_txt .playmovie.active:after {
	background: rgba(0, 0, 0, 0.8);
}
.con_solution_detail .box_solution_detail .btn_back {
	padding: 30px 0 0;
	text-align: center;
}
.con_solution_detail .box_solution_detail .btn_back a {
	display: inline-block;
	width: 200px;
	text-align: center;
	font-size: 1.3rem;
	line-height: 1;
	padding: 15px 0;
	position: relative;
	border: 1px solid #000;
	color: #000;
	letter-spacing: 0.3ex;
	text-indent: 0.3ex;
}
.con_solution_detail .box_solution_detail .btn_back a:after {
	content: "";
	width: 34px;
	height: 8px;
	border-left: 1px solid #333;
	border-bottom: 1px solid #333;
	position: absolute;
	bottom: 50%;
	left: 50%;
	margin-left: -60px;
	-webkit-transition: border 400ms ease-in-out 0ms;
	-moz-transition: border 400ms ease-in-out 0ms;
	-ms-transition: border 400ms ease-in-out 0ms;
	-o-transition: border 400ms ease-in-out 0ms;
	transition-property: border;
	transition-duration: 400ms;
	transition-timing-function: ease-in-out;
	transition-delay: 0ms;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transform: skewX(-45deg);
	-moz-transform: skewX(-45deg);
	-ms-transform: skewX(-45deg);
	-o-transform: skewX(-45deg);
	transform: skewX(-45deg);
}
.con_solution_detail .box_solution_detail .btn_back a:before {
	content: "";
	width: 0;
	height: 100%;
	background: #000;
	-webkit-transition: width 400ms ease-in-out 0ms;
	-moz-transition: width 400ms ease-in-out 0ms;
	-ms-transition: width 400ms ease-in-out 0ms;
	-o-transition: width 400ms ease-in-out 0ms;
	transition-property: width;
	transition-duration: 400ms;
	transition-timing-function: ease-in-out;
	transition-delay: 0ms;
	position: absolute;
	z-index: -1;
	right: 0;
	top: 0;
}
.con_solution_detail .box_solution_detail .btn_back a span {
	display: inline-block;
	position: relative;
	z-index: 1;
	-webkit-transition: color 400ms ease-in-out 0ms;
	-moz-transition: color 400ms ease-in-out 0ms;
	-ms-transition: color 400ms ease-in-out 0ms;
	-o-transition: color 400ms ease-in-out 0ms;
	transition-property: color;
	transition-duration: 400ms;
	transition-timing-function: ease-in-out;
	transition-delay: 0ms;
}

@media only screen and (min-width: 768px) {
  .con_solution_detail .con_title h1 {
	padding: 50px 58px 20px;
	font-size: 4.9rem;
	letter-spacing: 0.5ex;
	line-height: 1.8;
  }
  #solution.solution01 .con_solution_detail .con_title h1 {
	letter-spacing: 0.5ex;
  }
  .con_solution_detail .con_title h1 br {
	display: none;
  }
  .con_solution_detail .con_title h1 .small {
	font-size: 2.0rem;
	margin-left: 1.5ex;
	letter-spacing: 0.5ex;
	display: inline;
  }
  .con_solution_detail .con_title ul {
	padding: 10px 58px;
	line-height: 1;
	font-size: 1.1rem;
  }
  .con_solution_detail .box_solution_detail {
	padding: 100px 0 70px;
  }
  .con_solution_detail .box_solution_detail .body_txt {
	font-size: 2.6rem;
	line-height: 2.6;
	letter-spacing: 0.6ex;
	width: 1000px;
	margin: 0 auto;
  }
  .con_solution_detail .box_solution_detail .body_txt .small {
	font-size: 1.5rem;
  }
  .con_solution_detail .box_solution_detail .tagline_txt {
	text-align: right;
	padding: 80px 50px 0;
  }
  .con_solution_detail .box_solution_detail .tagline_txt .playmovie {
	cursor: pointer;
	font-size: 4.4rem;
	letter-spacing: 0.8ex;
	-webkit-transform: translateX(0.9ex);
	-moz-transform: translateX(0.9ex);
	-ms-transform: translateX(0.9ex);
	-o-transform: translateX(0.9ex);
	transform: translateX(0.9ex);
  }
  .con_solution_detail .box_solution_detail .tagline_txt .playmovie:after {
	display: none;
  }
  .con_solution_detail .box_solution_detail .btn_back {
	padding: 70px 50px 0;
	text-align: right;
  }
  .con_solution_detail .box_solution_detail .btn_back a:hover:after {
	border-left-color: #fff;
	border-bottom-color: #fff;
  }
  .con_solution_detail .box_solution_detail .btn_back a:hover:before {
	width: 100%;
  }
  .con_solution_detail .box_solution_detail .btn_back a:hover span {
	color: #fff;
  }
}
/* -----------------------------------------------------------
	#solutionfooter
----------------------------------------------------------- */
#solutionfooter {
	background: #000;
	padding: 15px 15px 30px;
}
#solutionfooter ul li {
	font-size: 1.3rem;
	border-top: 1px solid #333;
}
#solutionfooter ul li:first-child {
	border: none;
}
#solutionfooter ul li a {
	display: block;
	color: #fff;
	letter-spacing: 0.4ex;
	text-indent: 0.4ex;
	padding: 10px 0;
}

@media only screen and (min-width: 768px) {
  #solutionfooter {
	background: #000;
	padding: 30px 20px;
	min-width: 1200px;
  }
  #solutionfooter ul {
	display: -webkit-flex;
	-webkit-justify-content: center;
	display: flex;
	justify-content: center;
  }
  #solutionfooter ul li {
	font-size: 1.3rem;
	border: none;
  }
  #solutionfooter ul li:first-child:before {
	display: none;
  }
  #solutionfooter ul li:before {
	content: "｜";
	color: #999;
	display: inline-block;
	margin: 0 0.6ex;
  }
  #solutionfooter ul li a {
	display: inline-block;
	color: #fff;
	padding: 0;
	position: relative;
  }
  #solutionfooter ul li a:after {
	content: "";
	display: block;
	width: 0;
	height: 1px;
	background: #666;
	position: absolute;
	left: 0;
	bottom: -3px;
	-webkit-transition: width 400ms ease-in-out 0ms;
	-moz-transition: width 400ms ease-in-out 0ms;
	-ms-transition: width 400ms ease-in-out 0ms;
	-o-transition: width 400ms ease-in-out 0ms;
	transition-property: width;
	transition-duration: 400ms;
	transition-timing-function: ease-in-out;
	transition-delay: 0ms;
  }
  #solutionfooter ul li a:hover:after {
	width: 100%;
  }
}
