@charset "utf-8";

/*-----------------------------------------------------------------
	アニメーション
-----------------------------------------------------------------*/

/*.top_contents {
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px);
	transition: 1s;
	overflow: hidden;
}

.slide01 {
	transform: translate(0,0)!important; 
	-webkit-transform: translate(0,0)!important;
	opacity: 1.0!important;
}*/

/*-----------------------------------------------------------------
	共通CSS
-----------------------------------------------------------------*/	

.top_contents {
}

/*-----------------------------------------------------------------
	共通CSS
-----------------------------------------------------------------*/	

.top_wrap {  
	width: 100%;
	margin: auto;
	display: block;
}

.top_logo {
	left: inherit;
    right: 5%;
}

.top_logo img {
	max-width: auto;
    height: 100%;
}

/* タブレット */
@media print, screen and (min-width: 769px) {

.top_logo {
	left: 0;
    right: 0;
}

}

/* PC */
@media print, screen and (min-width: 1100px) {


}

/*-----------------------------------------------------------------
	静的MV
-----------------------------------------------------------------*/	

#mv {
  width: 100%;
  /*height: 500px;*/
  overflow: hidden;
  padding: 50px 0 0;
}

#mv img {
  width: 100%;
}

#mv a:hover {	
  opacity: 1;
}

.swiper-slide.top_img01 {
  position: relative;
}

.top_img01_txt {
  width: 90%;
  max-width: 290px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 5px;
  margin: auto;
}

.top_img01_txt img {
  width: 100%;
}

@keyframes moving {
  0% {
    transform: scale(1) translateY(0%);
  }
  75% {
    transform: scale(1.15) translateY(-38%);
  }
  100% {
    transform: scale(1.15) translateY(-38%);
  }
}

.slide-moving img {
  animation: moving 15s linear 0s normal both;
}

.slide-img.slide-reset img {
    transform: scale(1) translateY(0%)!important;
}

/*@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}

.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img{
  animation: zoomUp 10s linear 0s 1 normal both;  
}*/

.slide-img {
  height: 0;
  padding-bottom: 38%;
  overflow: hidden;
}

.slide-img img{
  display: block;
}
 
/* タブレット */
@media print, screen and (min-width: 769px) {

#mv {
  width: 100%;
  /*height: 500px;*/
  padding: 100px 0 0;
}
  
.top_img01_txt {
  width: 290px;
  left: auto;
  right: 20%;
  bottom: 15px;
  margin: 0;
}
  
}

/* PC */
@media print, screen and (min-width: 1100px) {


}

/*-----------------------------------------------------------------
	sublogo
-----------------------------------------------------------------*/

#top_sublogo {
    padding: 50px 0 50px;
  text-align: center;
}

#top_sublogo img {
  width: 98%;
  max-width: 500px;
}

/*-----------------------------------------------------------------
	XXX
-----------------------------------------------------------------*/

#top_menu01 {
    padding: 0 0 50px;
}

/*-----------------------------------------------------------------
	XXX
-----------------------------------------------------------------*/

#top_menu02 {
    padding: 0 0 35px;
}

.top_three_list {
	width: 88%;
	margin: 40px auto 0;
}

.top_three_list li {
	vertical-align: top;
	margin: 0 0 60px;
}

.top_three_img {
	width: 42%;
	float: right;
	text-align: center;
}

.top_three_img img {
	width: 90%;
}

.top_three_txtbox {
	width: 53%;
	float: left;
}

.top_three_title {
	font-size: 125%;
    font-weight: 700;
	margin: 0 0 5px;
	text-align: center;
}

/* タブレット */
@media print, screen and (min-width: 769px) {

.top_three_list {
	width: 100%;
	max-width: 834px;
	margin: 40px auto 0;
}

.top_three_list li {
	width: 25%;
	margin: 0 3% 60px 0;
}

.top_three_img,
.top_three_txtbox {
	width: auto;
	float: none;
	margin: 0 0 20px;
}
	
.top_three_img img {
	max-width: 150px;
}

}

/*-----------------------------------------------------------------
	print
-----------------------------------------------------------------*/

@media print { /* 紙媒体向けスタイル定義 */
	.top_header {
		height: auto;
		padding: 0;
		background: none;
		border-bottom: none;
		position: static!important;
	}
	.top_contents {
	opacity: 1;
}
}