@charset 'utf-8';
.carousel-control-prev, .carousel-control-next { display: none;}


.carousel { position: relative;}
.carousel img {max-width: 100%;}
.carousel p { word-break: keep-all;}

.carousel .visual-text { position: absolute; left: 50%; top: 15.189%; transform: translate(-50%, 0); z-index: 2; padding: 0 10px; width: 100%; max-width: 1320px; line-height: 1.5; color: #fff;}

.main-nav-pc { position: absolute; top: 0; animation: moveUpDown 1.5s linear infinite alternate;}
.main-nav-pc a {overflow:hidden; display: block; width: 294px; height: 315px; border-radius: 50% 50% 0 0;}
.main-nav-pc .btn_close2 { display: flex; justify-content: center; align-items: center; position: absolute; right: 0; top: 0; z-index: 10; width: 36px; height: 36px; color: #333; border-radius: 50%; background: #efefef;  border: 0; }
.main-nav-pc .btn_close2:focus { outline: 0;}

.carousel .img-wrap .img-item {background-size:auto 125%; animation:zoomInBg 5s 1 ease-in-out both}



.main-nav-mobile { display: none; padding:60px 42px 60px 28px; width: 300px;  border-radius: 13px; background: rgba(206,181,221,.7);}
.main-nav-mobile p { padding: 0 0 45px; font-size: 28px; font-weight: 700; color: #fff; line-height: 1.3; }
.main-nav-mobile ul {}
.main-nav-mobile ul li { margin-bottom: 10px;}
.main-nav-mobile ul li:last-of-type { margin-bottom: 0;}
.main-nav-mobile ul li a { display: block; position: relative; padding: 10px 15px; font-size: 20px; font-weight: 500; color: #333; line-height: 1.5; border-radius: 5px; background: rgba(255,255,255,.8); }
.main-nav-mobile ul li a:after { content:'\e940'; position: absolute; right: 15px; top: 50%; font-size: 16px; font-family: xeicon; color: #8e6da2; transform: translateY(-50%);}

@media(max-width:991px){
    
.carousel .visual-text {  left: 50%; top: 50%; transform: translate(-50%, -50%);}
    .main-nav-mobile { display: block;}
    .main-nav-pc { display: none;}

}
@media(max-width:576px){
    .main-nav-mobile { padding:30px 25px 40px; width: 260px; border-radius: 10px; }
    .main-nav-mobile p  {padding: 0 0 25px; font-size: 22px;}
    .main-nav-mobile ul li a { font-size: 16px;}
}


@keyframes moveUpDown {
    0% {top: 0;}
    50% {top: 15px;}
    100% {top: 0;}
}
@keyframes zoomInBg {
    0%{background-size:auto 125%;}    
    100%{background-size:auto 115%;}
}

