._fnctWrap {line-height:1.5;}

.main-visual{position:relative}
.main-visual img{display:block;width:2000px;max-width:inherit;margin:0 auto}
.main-visual .container{position:relative}
.main-visual .main-slogan{position:absolute;color:#fff;width:100%;max-width:620px;left:0;bottom:325px;z-index:1}
.main-visual .main-slogan span{font-size:36px;font-family:'Montserrat-Thin',sans-serif;font-weight:100;letter-spacing:-2px;line-height:1.2}
.main-visual .main-slogan strong{display:block;font-family:'Montserrat-Medium',sans-serif;font-weight:500;font-size:72px;letter-spacing:-2px;line-height:1;margin-bottom:20px}
.main-visual .main-slogan p{font-size:26px; font-family:"Noto DemiLight"}
.main-visual .visual-ctrl{position:relative}
.main-visual .visual-ctrl .inner{position:absolute;height:50px;line-height:50px;left:0;bottom:200px;background-color:#fff}
.main-visual .visual-ctrl .inner>div,.main-visual .visual-ctrl .inner>button{float:left;line-height:50px}
.main-visual .visual-ctrl .prev,.main-visual .visual-ctrl .next{width:30px;text-indent:-99999px;background-image:url(../images/visual-ctrl.png);background-repeat:no-repeat}
.main-visual .visual-ctrl .prev{background-position:right -15px center}
.main-visual .visual-ctrl .next{background-position:right 18px center}
.main-visual .visual-ctrl .numbering{width:90px;color:#0c2c67;font-size:22px;font-weight:700;text-align:center}
.main-visual .visual-ctrl .numbering span.total{position:relative;margin-left:10px;padding-left:15px}
.main-visual .visual-ctrl .numbering span.total::before{content:'';position:absolute;left:0;top:10px;width:1px;height:15px;background-color:#0c2c67;transform:rotate(30deg)}
.main-visual .visual-ctrl .ply-stp{background-color:#e2a92a}
.main-visual .visual-ctrl .ply-stp button{display:none;width:50px;height:50px;text-indent:-99999px;background-image:url(../images/visual-ctrl.png);background-repeat:no-repeat}
.main-visual .visual-ctrl .ply-stp button.on{display:block}
.main-visual .visual-ctrl .ply-stp button.stop{background-position:right -30px center}
.main-visual .visual-ctrl .ply-stp button.play{background-position:right -65px center}

@media all and (max-width: 860px) {
	.main-visual .main-slogan{padding:0 20px; bottom:270px;}
	.main-visual .visual-ctrl .inner{left:20px; bottom:150px;}
	.main-visual img {max-width: none; max-height: 610px; width:auto;}
}

@media all and (max-width: 610px) {
	.main-visual .main-slogan span{font-size:32px}
	.main-visual .main-slogan strong{font-size:60px}
	.main-visual .main-slogan p{font-size:22px}
}

@media all and (max-width: 510px) {
	.main-visual .main-slogan strong {font-size:50px;}
	.main-visual .main-slogan p {font-size:19px;}
}

@media all and (max-width:420px) {
	.main-visual img {max-height:420px;}
	.main-visual .main-slogan {bottom:200px;}
	.main-visual .main-slogan strong {font-size:45px; margin-bottom:10px; letter-spacing:-1;}
	.main-visual .main-slogan span {font-size:22px; letter-spacing:0;}
	.main-visual .main-slogan p {font-size:16px;}
	.main-visual .visual-ctrl .inner {bottom:110px;}
}

