@charset "utf-8";
.mainvisual{
	position:relative
}
.mainvisual .slide-text,.mainvisual .img,.mainvisual .photo,.mainvisual:before{
	position:absolute
}
.mainvisual:before{
	content:'';
	bottom:0;
	left:0;
	display:block;
	width:100%;
	height:25%;
	background:rgba(255,252,237,1.0);
	background:rgba(239,239,239,1.0);
}
.mainvisual .photo{
	right:0;
	width:60%;
	height:95%
}
.mainvisual .photo span{
	display:block;
	height:100%
}
.mainvisual .img{
	top:0;
	width:100%;
	height:100%;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:cover
}
.mainvisual .slide-text{
	overflow:hidden;
	top:40%;
	left:5%;
	-webkit-font-feature-settings:"palt";
	font-feature-settings:"palt";
	letter-spacing:.08em;
	z-index:2;
 text-shadow: white 0 0 5px;
}
.mainvisual .slide-text .catch1{
	display:block;
	margin:0 0 20px;
	font-size:2vw;
	font-weight:700;
	letter-spacing:0;
	line-height:1.2em;
	padding: 0.25em;
}
.mainvisual .slide-text .catch2{
	display:block;
	margin:0 0 20px;
	font-size:1.4vw;
	font-weight:600;
	letter-spacing:0;
	line-height:1.6em;
	padding: 0.25em;
}
.mainvisual .slide li{
	display:none
}
.mainvisual .slide li.current{
	display:block
}
.mainvisual .current .img{
	-webkit-animation:scale 10s linear 0s forwards;
	animation:scale 10s linear 0s forwards;
}
.mainvisual .slide li.current .photo .anime-lefttoright::before{
	-webkit-animation:showBlock1 1s cubic-bezier(0,1.07,1,1) 0s forwards,hideBlock1 1s cubic-bezier(0,1.07,1,1)11.7s forwards;
	animation:showBlock1 1s cubic-bezier(0,1.07,1,1) 0s forwards,hideBlock1 1s cubic-bezier(0,1.07,1,1)11.7s forwards
}
@-webkit-keyframes scale{
 0%{-webkit-transform:scale(1)}
100%{-webkit-transform:scale(1.13)}
}
@keyframes scale{
 0%{transform:scale(1)}
100%{transform:scale(1.13)}
}
@-webkit-keyframes showBlock1{
 0%,20%{left:101%}
100%,90%{left:205%}
}
@keyframes showBlock1{
 0%,20%{left:101%}
100%,90%{left:205%}
}
@-webkit-keyframes hideBlock1{
 0%{left:0;opacity:1}
100%,30%{left:101%}
}
@keyframes hideBlock1{
 0%{left:0;opacity:1}
100%,30%{left:101%}
}
.mainvisual .slide .slide-text .anime-lefttoright_inner{
	opacity:0
}
.mainvisual .slide .current .slide-text .anime-lefttoright_inner{
	-webkit-animation:showTxt 1s linear .5s forwards,hideTxt 1s linear 8.8s forwards;
	animation:showTxt 1s linear .5s forwards,hideTxt 1s linear 8.8s forwards
}
.mainvisual .slide .current .slide-text .anime-lefttoright::before{
	-webkit-animation:showBlock2 1s cubic-bezier(0,1.07,1,1) .5s forwards,hideBlock2 1s cubic-bezier(0,1.07,1,1) 8.8s forwards;
	animation:showBlock2 1s cubic-bezier(0,1.07,1,1) .5s forwards,hideBlock2 1s cubic-bezier(0,1.07,1,1) 8.8s forwards
}

@-webkit-keyframes showBlock2{
 0%{left:0}
50%{left:101%}
100%{left:205%}
}
@keyframes showBlock2{
 0%{left:0}
50%{left:101%}
100%{left:205%}
}
@-webkit-keyframes hideBlock2{
 0%{left:0}
50%{left:101%}
100%{left:205%}
}
@keyframes hideBlock2{
 0%{left:0}
50%{left:101%}
100%{left:205%}
}
@-webkit-keyframes showTxt{
 0%,50%{opacity:0}
100%,51%{opacity:1}
}
@keyframes showTxt{0%,50%{
 opacity:0}
100%,51%{opacity:1}
}
@-webkit-keyframes hideTxt{
 0%,50%{opacity:1}
100%,51%{opacity:0}
}
@keyframes hideTxt{
 0%,50%{ opacity:1}
100%,51%{opacity:0}
}
.anime-lefttoright::before,.news-title .title:after{
	content:''
}
.anime-lefttoright,.slide-text .anime-lefttoright,.slide-text .anime-lefttoright_inner {
	display:inline-block
}
.anime-lefttoright{
	position:relative;
	overflow:hidden
}
.anime-lefttoright::before{
	position:absolute;
	display:block;
	width:100%;
	left:0;
	top:0;
	bottom:0;
	background:#D2F2EB;
	z-index:2;
	-webkit-transform:translate3d(-101%,0,0);
	transform:translate3d(-101%,0,0);
	-webkit-transition:.3s all .1s cubic-bezier(0,1.07,1,1);
	transition:.3s all .1s cubic-bezier(0,1.07,1,1)
}
@keyframes title-RightToLeft {
  0% {
    opacity: 0;
    transform: translateX(50px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

/*　PC　*/
@media screen and (min-width:1020px){
.mainvisual .info p{
	display:inline-block
}
.mainvisual{
	height:60vh
}
.mainvisual .slide-text{
	font-size:2vw;
	font-weight:700;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%)
}
}

/*　PC（大）　*/
@media print, screen and (min-width: 1100px) {
}

/*　タブレット横　*/
@media screen and (min-width:900px) and ( max-width:1199px) {
}

/*　スマホ・タブレット共通　*/
@media screen and (max-width:1019px){
.mainvisual{
	height:70vh;
   height : -webkit-calc(70vh - 70px) ;
   height : calc(70vh - 70px) ;
}
.mainvisual .photo{
	top:0;
	width:100%;
	height:50%
}
.mainvisual .slide-text {
 top: 50%;
}
 .mainvisual .slide-text span{
	margin-bottom:2px
}
.mainvisual .slide-text .catch1{
	margin:0 0 10px;
	font-size:3.4vw;
	line-height:1.2em
}
.mainvisual .slide-text .catch2{
	margin:0 0 10px;
	font-size:2.4vw;
	line-height:1.6em;
 padding: 0.25em;
}
}

/*　タブレット縦　*/
@media screen and (min-width:600px) and ( max-width:1019px) {
.mainvisual .slide-text{
	top:56.5%;
	font-size:3vw;
	font-weight:700;
	line-height:1em
}
}

/*　スマホ横　*/
@media screen and (min-width:600px) and ( max-width:736px) {
.mainvisual .slide-text{
	top:56.5%;
	font-size:4vw;
	font-weight:700;
	line-height:1em
}
}

/*　スマホ縦　*/
@media screen and (max-width: 599px) {
.mainvisual .slide-text{
	top:56.5%;
	font-size:4vw;
	font-weight:700;
	line-height:1em
}
.mainvisual{
 height: 50vh;
 }
}