
.contents {
  max-width: 600px;
  margin: 0 auto;
}

img {
  vertical-align: bottom;
}

/* section_main */
.section_main {
  position: relative;
  z-index: 99;
}

.section_main .main01 {
  position: absolute;
  bottom: 7%;
  right: 6%;
  width: 28%;
  -webkit-animation: 1.5s ease 0s infinite normal main02 both;
  animation: 1.5s ease 0s infinite normal main02 both;
}

@-webkit-keyframes main02 {
  0% {bottom:7%;}
  60% {bottom:7%;}
  72% {bottom:10%;}
  80% {bottom:7%;}
  92% {bottom:12%;}
  100% {bottom:7%;}
}
@keyframes main02 {
  0% {bottom:7%;}
  60% {bottom:7%;}
  72% {bottom:10%;}
  80% {bottom:7%;}
  92% {bottom:12%;}
  100% {bottom:7%;}
}


.section_main p {
  position:relative;
  z-index:99;
}

/* section_cv */
.section_cv {
  color: #212121;
	padding: 7% 0% 8%;
  text-align: center;
}

.section_cv.reserve {
	padding: 3% 5% 1%;
}

.section_cv .btn_cv:nth-child(1) {
  margin-bottom: 4%;
}

.section_cv .btn_cv:nth-child(2) {
  margin-bottom: 1%;
}

.section_cv .txt {
	font-size: 9px;
}

.section_cv .link {
  width: 66%;
  margin: 4% auto 0;
}

.btn_cv {
	width: 100%;
  position: relative;
}


@-webkit-keyframes phrase {
  0% {opacity: 0;}
  75% {opacity: .75;transform: scale(1.1);}
  100% {opacity: 1;transform: scale(1.0);}
}
@keyframes phrase {
  0% {opacity: 0;}
  75% {opacity: .75;transform: scale(1.1);}
  100% {opacity: 1;transform: scale(1.0);}
}

.phrase {
  opacity:0;
}

.phrase.open {
  -webkit-animation: 0.3s ease 0s normal phrase both;
  animation: 0.3s ease 0s normal phrase both;
  transition: 0.3s;
   -webkit-transition: 0.3s;
   opacity:1.0;
}


.section {
  position: relative;
  z-index: 99;
}

.section .qa_box {
  position: absolute;
  z-index: 999;
}

.section .kaisei {
  position: absolute;
  z-index: 999;
}

@-webkit-keyframes kaisei_slide {
  0% {margin-left:0%;}
  35% {margin-left:10%;}
  40% {margin-left:10%;}
  65% {margin-left:0%;}
  100% {margin-left:0%;}
}
@keyframes kaisei_slide {
  0% {margin-left:0%;}
  35% {margin-left:10%;}
  45% {margin-left:10%;}
  75% {margin-left:0%;}
  100% {margin-left:0%;}
}

@-webkit-keyframes kaisei_slide02 {
  0% {margin-top:0%;}
  55% {margin-top:10%;}
  60% {margin-top:10%;}
  85% {margin-top:0%;}
  100% {margin-top:0%;}
}
@keyframes kaisei_slide02 {
  0% {margin-top:0%;}
  55% {margin-top:10%;}
  60% {margin-top:10%;}
  85% {margin-top:0%;}
  100% {margin-top:0%;}
}

@-webkit-keyframes kaisei_slide03 {
  0% {margin-top:0%;}
  35% {margin-top:5%; margin-left: 3%; transform: rotate(90deg); -webkit-transform: rotate(90deg);}
  40% {margin-top:5%; margin-left: 3%; transform: rotate(90deg); -webkit-transform: rotate(90deg);}
  65% {margin-top:0%;}
  100% {margin-top:0%;}
}
@keyframes kaisei_slide03 {
  0% {margin-top:0%;}
  35% {margin-top:5%; margin-left: 5%; transform: rotate(90deg); -webkit-transform: rotate(90deg);}
  40% {margin-top:5%; margin-left: 5%; transform: rotate(90deg); -webkit-transform: rotate(90deg);}
  65% {margin-top:0%;}
  100% {margin-top:0%;}
}

.section .qa_box .btn,
.section .qa_box .btn_cv {
  position: absolute;
  z-index: 9999;
}

.section01 .start {
  position: absolute;
  top: -4%;
  left: 2%;
  width: 24%;
  z-index: 999;
}

.section01 .kaisei01 {
  top: 5.8%;
  left: 5%;
  width: 28%;
  -webkit-animation: 1.4s ease 0s infinite normal kaisei_slide both;
  animation: 1.4s ease 0s infinite normal kaisei_slide both;
}

.section01 .kaisei02 {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  top: 70%;
  right: -7%;
  width: 28%;
  -webkit-animation: 1.4s ease 0s infinite normal kaisei_slide02 both;
  animation: 1.4s ease 0s infinite normal kaisei_slide02 both;
}

.section01 .qa_box {
  top: 12%;
  left: 5%;
  width: 80%;
}

.section02 .kaisei01 {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  top: 43%;
  left: 8%;
  width: 28%;
  -webkit-animation: 1.4s ease 0s infinite normal kaisei_slide03 both;
  animation: 1.4s ease 0s infinite normal kaisei_slide03 both;
}

.section02 .qa_box {
  top: 8%;
  right: 3%;
  width: 62%;
}

.section02 .qa_box .tit {
  position: absolute;
  top: -1%;
  left: -21%;
  width: 26%;
  z-index:9999;
}

.section02 .qa_box .btn {
  bottom: 5%;
  right: 10%;
  width: 80%;
}

.section03 .kaisei01 {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  top: 28%;
  left: -7%;
  width: 28%;
  -webkit-animation: 1.4s ease 0s infinite normal kaisei_slide02 both;
  animation: 1.4s ease 0s infinite normal kaisei_slide02 both;
}

.section03 .qa_box {
  top: 20%;
  right: 5%;
  width: 82%;
}

.section04 {
  z-index: 100;
}

.section04 .kaisei01 {
  top: -0.5%;
  left: 10%;
  width: 28%;
  -webkit-animation: 1.4s ease 0s infinite normal kaisei_slide both;
  animation: 1.4s ease 0s infinite normal kaisei_slide both;
}

.section04 .kaisei02 {
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  top: 94.5%;
  left: 47%;
  width: 28%;
  -webkit-animation: 1.4s ease 0s infinite normal kaisei_slide both;
  animation: 1.4s ease 0s infinite normal kaisei_slide both;
}

.section04 .qa_box {
  top: 7%;
  left: 5%;
  width: 80%;
}

.section04 .qa_box .btn_cv {
  bottom: 2%;
  left: 10%;
  width: 80%;
}

.section05 .kaisei01 {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  top: 52%;
  left: -7%;
  width: 28%;
  -webkit-animation: 1.4s ease 0s infinite normal kaisei_slide02 both;
  animation: 1.4s ease 0s infinite normal kaisei_slide02 both;
}

.section05 .qa_box {
  top: 3%;
  right: 3%;
  width: 80%;
}

.section05 .qa_box .btn_cv {
  bottom: 2%;
  left: 10%;
  width: 80%;
}

.section06 .kaisei01 {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  top: 32%;
  right: -6.5%;
  width: 28%;
  -webkit-animation: 1.4s ease 0s infinite normal kaisei_slide02 both;
  animation: 1.4s ease 0s infinite normal kaisei_slide02 both;
}

.section06 .kaisei02 {
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  top: 91.6%;
  left: 4%;
  width: 28%;
  -webkit-animation: 1.4s ease 0s infinite normal kaisei_slide both;
  animation: 1.4s ease 0s infinite normal kaisei_slide both;
}

.section06 .qa_box {
  top: 13%;
  left: 5%;
  width: 80%;
}

.section06 .qa_box .btn_cv {
  bottom: 1%;
  left: 10%;
  width: 80%;
}


/* section_last */
.section_last {
  width:100%;
  margin:0 auto;
  overflow-x:hidden;
  position: relative;
}

.section_last .phrase {
  position:absolute;
  top:23%;
  left:50%;
  animation:none;
  transition: 1.0s;
    -webkit-transition: 1.0s;
  opacity:1;
}

.section_last .last01 {
  margin-left:-80%;
  width: 23%;
}

.section_last .last01.open {
  margin-left:-51%;
}

.section_last .last02 {
  padding-top: 8%;
  margin-left:50%;
  width: 20%;
}

.section_last .last02.open {
  margin-left:30.5%;
}



@-webkit-keyframes icon01 {
  0% { transform: rotate(-10deg); -webkit-transform: rotate(-10deg);}
  49% {transform: rotate(-10deg);-webkit-transform: rotate(-10deg);}
  50% {transform: rotate(10deg);-webkit-transform: rotate(10deg);}
  99% {transform: rotate(10deg);-webkit-transform: rotate(10deg);}
  100% {transform: rotate(-10deg);-webkit-transform: rotate(-10deg);}
}
@keyframes icon01 {
  0% { transform: rotate(-10deg); -webkit-transform: rotate(-10deg);}
  49% {transform: rotate(-10deg);-webkit-transform: rotate(-10deg);}
  50% {transform: rotate(10deg);-webkit-transform: rotate(10deg);}
  99% {transform: rotate(10deg);-webkit-transform: rotate(10deg);}
  100% {transform: rotate(-10deg);-webkit-transform: rotate(-10deg);}
}

@-webkit-keyframes icon02 {
  0% { transform: rotate(10deg); -webkit-transform: rotate(10deg);}
  49% {transform: rotate(10deg);-webkit-transform: rotate(10deg);}
  50% {transform: rotate(-10deg);-webkit-transform: rotate(-10deg);}
  99% {transform: rotate(-10deg);-webkit-transform: rotate(-10deg);}
  100% {transform: rotate(10deg);-webkit-transform: rotate(10deg);}
}
@keyframes icon02 {
  0% { transform: rotate(10deg); -webkit-transform: rotate(10deg);}
  49% {transform: rotate(10deg);-webkit-transform: rotate(10deg);}
  50% {transform: rotate(-10deg);-webkit-transform: rotate(-10deg);}
  99% {transform: rotate(-10deg);-webkit-transform: rotate(-10deg);}
  100% {transform: rotate(10deg);-webkit-transform: rotate(10deg);}
}


/*  gallery-flipsnap
 *---------------------------------------------------------- */	

.gallery-flipsnap {
  overflow: hidden;
  margin-right: auto;
  margin-left: auto;
  -webkit-transform: translateZ(0);
}
.gallery-flipsnap > ul {
  margin: 0 7.5%;
}
.gallery-flipsnap > ul > li {
  float: left;
  box-sizing: border-box;
  padding: 0 8px;
}
.gallery-flipsnap > ul:after {
  font-size: 0;
  display: block;
  visibility: hidden;
  clear: both;
  height: 0;
  content: "";
}
.gallery-flipsnap img {
  width: 100%;
}




/* section_ftbtn */
.section_ftbtn {
	background: #fff;
	padding: 0 5% 10%;
}

.btn_map {
	width: 96;
	margin: 0 auto 15px;
}

.btn_map a {
	display: block;
	width: 100%;
	height: 36px;
	line-height: 36px;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #8d8d8d;
	position: relative;
}

.btn_map a::after {
	display: block;
	content: "";
	border: 3px solid transparent;
	border-left: 5px solid #fff;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -4px;
}

.btn_line {
	width: 100%;
}

.btn_line a {
	display: block;
	width: 100%;
	height: 36px;
	line-height: 36px;
	border-radius: 5px;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #00bb23;
	position: relative;
	padding-right: 10%;
}

.btn_line a::after {
	display: block;
	content: "";
	width: 98px;
	height: 30px;
	background: url(../img/line_bg.png) no-repeat;
	background-size: 98px 30px;
	position: absolute;
	top: 50%;
	right: 3px;
	margin-top: -15px;
}


