.main__visual .fp-tableCell {position: relative;}
.main__visual-list {position: absolute; top: 0; left: 0;}
.main-visual-item { overflow: hidden;position:relative;}
.main__visual-bg {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}  
.main__visual-bg .main__visual-img {width: 100%; height: 100%; background: url('assets/images/banner/1.jpg') no-repeat center / cover; transform: scale(1.2); transition: all 5s ease-in;}
.main-visual-item.nth-2 .main__visual-bg .main__visual-img {background: url('assets/images/banner/2.JPG') no-repeat center / cover;}
.main-visual-item.nth-3 .main__visual-bg .main__visual-img {background: url('assets/images/banner/3.jpg') no-repeat center / cover;}
.main__visual-bg .main__visual-img.is-scale {transform: scale(1);}

.main__visual-inner {display: flex; justify-content: center; align-items: center; position: relative; z-index: 1; width: 100vw; height: 100vh; text-align: center;}
.main__visual-inner h2 {display: inline-block; padding: 35px 40px; font-weight: 700; font-size: 45px; line-height: 1.4; letter-spacing: 0.08em; color: #fff;}
.main__visual-inner h2 span { display: block;text-indent: 0.08em;}
.main__visual-inner p { width: 100%; margin-top: 24px; font-weight: 400;font-size: 16px; letter-spacing: 0.03em; color: #fff;}
.main-visual-item.nth-2 .main__visual-inner p {letter-spacing: -0.015em;}
.main-visual-item.nth-3 .main__visual-inner p {letter-spacing: -0.04em;}

.main__visual-dots {position: absolute; top: 50%; left: 50%; transform: translate(-50%, 205px);}
.main__visual-dots .slick-dots {display: flex;}
.main__visual-dots .slick-dots li+li {margin-left: 4px;}
.main__visual-dots .slick-dots button { width: 120px; height: 2px;border: 0; background: rgba(255, 255, 255, 0.25); font-size: 0;}
.main__visual-dots .slick-dots .slick-active button,
.main__visual-dots .slick-dots li:hover button {background: #fff;}

.main__visual-scroll {position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%);}
.scroll-btn {display: block; width: 12px; height: 19px; background: url('../images/common/scroll-arrow.png') no-repeat center;}
.scroll-btn::after {display: block; position: absolute; bottom: calc(100% + 10px); left: 50%; width: 21px; height: 30px; background: url('../images/common/scroll-ico.png') no-repeat center; content: ""; transform: translateX(-50%);}

@media only screen and (max-width: 1440px) {
	.main__visual-dots {left: calc(50% + 20px);}
}
@media only screen and (max-width: 1240px) {
	.main__visual-inner { width: auto;height: auto; padding: 20% 0;}
	.main__visual-dots {left: 50%;}
}

@media only screen and (max-width: 1024px) {
	.main__visual-inner {padding: 20% 0 25%;}
	.main__visual-inner h2 {padding: 30px 35px;font-size: 30px;}
	.main__visual-inner p {font-size: 15px;}
	
	.main__visual-dots {top: 40%; transform: translate(-50%, 195px);}
	.main__visual-dots .slick-dots button {width: 85px;}

	.main__visual-scroll {bottom: 25px;}
}

@media only screen and (max-width: 640px) {
	
	.main__visual-inner h2 { padding: 25px 30px;font-size: 26px;}
	.main__visual-inner p { margin-top: 15px;font-size: 14px;}
	.main__visual-dots {transform: translate(-50%, 155px);}
	
	.main__visual-dots .slick-dots button {width: 74px;}
	
	.main__visual-scroll {bottom: 20px;}
}

@media only screen and (max-width: 480px) {
	.main__visual-inner {padding: 40% 0;}
	.main__visual-dots {top: 44%;}
	.main__visual-scroll {bottom: 10px;}
}

