.main-visual-inner { position: relative; overflow: hidden; }
.main-visual-inner .swiper-slide img { width: 100%; height: 800px; object-fit: cover; object-position: center; }
.main-visual-inner .txt { position: absolute; top: 175px; left: calc((100% - 1440px) / 2); margin: auto; color: #fff; box-sizing: border-box; /*max-width: 725px; */}
.main-visual-inner .txt .txt01 { font-weight: 700; font-size: 75px; line-height: 120%; letter-spacing: -0.02em; font-family: "El Messiri", sans-serif; margin: 0 0 30px 0; }
.main-visual-inner .txt .txt02 { font-weight: 700; font-size: 24px; line-height: 160%; letter-spacing: -0.02em; color: #fff; }
.main-visual-inner .control { position: absolute; bottom: 244px; left: calc((100% - 1440px) / 2); display: flex; align-items: center; gap: 16px; width: 100%; z-index: 1; }
.main-visual-inner .control > * { cursor: pointer; }
.main-visual-inner .control .progress { display: flex; align-items: center; gap: 13px; }
.main-visual-inner .control .progress .current, .main-visual-inner .control .progress .total , .main-visual-inner .control .progress span { font-weight: 500; font-size: 18px; line-height: 120%; text-align: center; color: #fff; font-family: "El Messiri", sans-serif; }
.main-visual-inner .control .progress .bar { position: relative; width: 165px; height: 2px; background: rgb(255 255 255 / 50%); overflow: hidden; margin-right: 7px; }
.main-visual-inner .control .progress .fill { position: absolute; top: 0; left: 0; width: 0; height: 100%; background: #fff; transition: width linear; }
.main-visual-inner .control .pause { width: 30px; height: 30px; background: url('../img/main/visual_pause.png') no-repeat center; }
.main-visual-inner .control .play { display: none; width: 30px; height: 30px; background: url('../img/main/visual_play.png') no-repeat center; }
.main-visual-box .quick-box { position: absolute; bottom: -83px; right: 0; left: 0; max-width: 1440px; margin: auto;z-index: 2; }
.main-visual-box .quick-box ul { display: flex; }
.main-visual-box .quick-box ul li { flex: 1; position: relative; }
.main-visual-box .quick-box ul li:nth-child(1) { background: url(../img/main/bg-quick01.png) no-repeat center;border-radius: 5px 0 0 5px;background-size:cover;}
.main-visual-box .quick-box ul li:nth-child(2) { background: url(../img/main/bg-quick02.png) no-repeat center; border-radius: 0 5px 5px 0;background-size:cover;}
.main-visual-box .quick-box ul li:before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index:0;transition:0.3s;}
.main-visual-box .quick-box ul li:nth-child(1):before { background: rgba(237, 144, 63, 0.9); }
.main-visual-box .quick-box ul li:nth-child(2):before { background: rgba(50, 114, 219, 0.9);}

.main-visual-box .quick-box ul li:nth-child(1):hover:before { background: rgba(237, 144, 63,1); }
.main-visual-box .quick-box ul li:nth-child(2):hover:before { background: rgba(50, 114, 219,1);}
.main-visual-box .quick-box ul li a { position: relative; display: block; box-sizing: border-box; overflow: hidden; padding: 48px 60px 40px 40px; min-height: 166px; z-index:1;}
.main-visual-box .quick-box ul li a:before { content: ""; position: absolute; top: 50%; transform: translatey(-50%); right: 60px; width: 64px; height: 64px; border-radius: 50%; background: rgba(255, 255, 255, 0.1)  url(../img/main/ico-quick-link.png) no-repeat center; border: 1px solid rgba(255, 255, 255, 0.3); }
.main-visual-box .quick-box ul li a div { display: flex; align-items: center; gap: 30px; }
.main-visual-box .quick-box ul li a div img { width: 69px; }
.main-visual-box .quick-box ul li a div p { color: #fff; flex: 1; margin-right: 70px; }
.main-visual-box .quick-box ul li a div p span:first-child { display: block; font-weight: 700; font-size: 30px; line-height: 140%; margin: 0 0 10px 0; }
.main-visual-box .quick-box ul li a div p span:last-child { display: block; font-weight: 500; font-size: 18px; line-height: 140%; }
.scrolldown { position: fixed; right: 60px; top: 50%; transform: translatey(-50%); z-index: 999; }
.scrolldown a { position: relative; font-family: "El Messiri", sans-serif; font-weight: 500; font-size: 15px; line-height: 1; text-transform: uppercase; color: #fff; writing-mode: vertical-rl;}
.scrolldown a:before { content: ""; position: absolute; left: 50%; bottom: -40px; transform: translatex(-50%); width: 24px; height: 24px; background: url(../img/common/ico-scrolldown.png) no-repeat center; }
@media (max-width: 1440px) {
	.main-visual-inner .txt { left:20px; }
	.main-visual-inner .control { left: 20px;}
}
@media (max-width: 1200px) {
	.main-visual-box .quick-box ul li a div p { font-size: 16px; line-height: 19px; }
}
@media (max-width: 1024px) {
	.main-visual-inner .swiper-slide img { height: 710px; }
	.main-visual-inner .txt { top: 100px; left: 50%; top: 50%; transform: translate(-50%, -50%); padding: 0 20px; text-align: center; width: 100%; box-sizing: border-box; }
	.main-visual-inner .txt .txt01 {margin-bottom: 20px; font-size: 36px; line-height: 120%;}
	.main-visual-inner .txt .txt02 { font-size: 14px; line-height: 160%; }
	.main-visual-inner .control { top:calc(70% + 14px); left: 50%; transform: translateX(-50%); justify-content: center; }
	.main-visual-box .quick-box { position: static; padding: 0; }
	.main-visual-box .quick-box ul { flex-direction: column; }
	.main-visual-box .quick-box ul li a { padding: 25px 20px; min-height: 128px; }
	.main-visual-box .quick-box ul li a div { flex-direction: row; gap: 20px; }
	.main-visual-box .quick-box ul li a div img { width: 52px; }
	.main-visual-box .quick-box ul li a div p { margin-right: 70px; }
	.main-visual-box .quick-box ul li a div p span:first-child { font-size: 22px; margin: 0 0 7px 0; }
	.main-visual-box .quick-box ul li a div p span:last-child { font-size: 14px; }
	.main-visual-box .quick-box ul li a:before { right: 20px; width: 40px; height: 40px; }
	.main-visual-box .quick-box ul li:nth-child(1) { border-radius: 0; }
	.main-visual-box .quick-box ul li:nth-child(2) { border-radius: 0; }
	.main-visual-box .quick-box ul li a:before  {background: rgba(255, 255, 255, 0.1)  url(../img/main/ico-quick-link-mo.png) no-repeat center;}

	.scrolldown  {right: 15px;top: unset;transform: unset; bottom: 40px;}
}
@media (max-width: 768px) {
	.main-visual-inner .swiper-slide img { height: 510px; }
	.main-visual-inner .progress .current, .main-visual-inner .progress .total { width: 16px; }
	.main-visual-inner .txt .txt02 {max-width: 295px;margin: 0 auto;font-size: 11px;}
}