/* banner */
#banner { width: 100%; z-index: 3; }
#banner .item { height: 95vh; }
#banner .main-slider { }
#banner .item .clip >* { min-width: 100%; width: 100%; }
#banner .item .clip:before {content:'';position: absolute;top: 0;left: 0;background: linear-gradient(0deg, rgb(0 0 0 / 0%), rgb(251 250 250 / 90%));width: 100%;height: 30%;}
#banner .item .clip iframe { position: absolute; width: 100%; height: 100%; top: 0; left: 0; }
#banner .item .clip video { overflow: hidden; position: absolute; width: 100%; height: auto; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); }
#banner .item .info >div {margin: auto;width: calc(70% - 60px);}
#banner .item .info >div .txt { -webkit-transition-delay: .2s; transition-delay: .2s; transform: scaleX(0); -webkit-transform: scaleX(0); transform-origin: 0 0; -webkit-transform-origin: 0 0; }
#banner .item .info >div .txt:nth-child(2) { -webkit-transition-delay: .4s; transition-delay: .4s; }
#banner .item .info >div .txt >* {padding: 10px 15px;max-width: calc(100% - 30px);font-size: 30px;letter-spacing: 6px;}
#banner .item .info >div .txt .h3 {margin-bottom: 15px;line-height: 120%;letter-spacing: 0.04em;font-weight: 500;word-spacing: 100vw;font-size: max(5 * (1vw + 1vh) / 2, 30px);}
#banner .item .info >div .txt .h3:first-line{color:var(--primary)}
#banner .item .info >div .txt .en {line-height: 120%;font-size: 18px;font-family: "Arimo", sans-serif;font-weight: 700;letter-spacing: 0.18em;margin-top: 60px;}

#banner .item.slick-current .clip .bgBox { -webkit-animation: scale_banner 6s linear infinite; animation: scale_banner 6s linear infinite; }
#banner .item.slick-current .info >div .txt { transform: scaleX(1); -webkit-transform: scaleX(1); }


@media screen and (max-width: 1440px){
	#banner .item .info >div .txt >*{font-size:22px}
}
@media screen and (max-width: 1024px){
	#banner .item { height: 85vh; }
    #banner .item .clip .bgBox{background-position: 90% 50%;}
    #banner .item .info >div{width: calc(90% - 60px);}
}
@media screen and (max-width: 980px){
	#banner .item { height: 55vh; }
    #banner .item .info >div .txt .en{display:none;}
    #banner .item .info >div{margin-bottom: 15%;width: calc(100% - 60px);}
}
@media screen and (max-width: 640px){
    #banner .item .clip:before{background: linear-gradient(-90deg, rgb(0 0 0 / 0%) , rgb(251 250 250 / 90%) 80%);}
    #banner{padding-top: 70px;}
    #banner .item .info >div .txt .h3{margin-bottom:0;padding-bottom: 0;}
	#banner .item .info >div .txt >*{font-size: 15px;letter-spacing: 2px;}
    #banner .item .info >div{margin-bottom:10%}
	#banner .item { height: 45vh; }
}