#banner { position: relative; width: 100%; overflow: hidden; background: #eee; }
#banner .main-slider { position: relative; width: 100%; }
#banner .slick-list,#banner .slick-track { height: 100%; }
#banner .item {position: relative;height: clamp(650px,47.8vw,912px);overflow: hidden;background: #eee;}
#banner .banner_media { position: absolute; inset: 0; width: 100%; height: 100%; overflow: hidden; }
#banner .banner_media img { width: 100%; height: 100%; object-fit: cover; object-position: center center; transform: scale(1.02); transition: transform 7s cubic-bezier(.2,.6,.2,1); }
#banner .slick-current .banner_media img { transform: scale(1); }
#banner video { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; object-fit: cover; }
#banner .banner_white_shape {position: absolute;z-index: 2;left: 0;top: 0;width: 61%;height: 100%;background: rgba(255,255,255,.97);clip-path: polygon(0 0,87% 0,37% 100%,0 100%);pointer-events: none;}
#banner .banner_white_shape:after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: rgba(0,0,0,.05); }
#banner .banner_red_shape {position: absolute;z-index: 3;left: 0;bottom: -1px;width: 100%;height: 260px;background: linear-gradient(30deg, #EF8457 0%, #E84248 50%, #E50011 100%);clip-path: polygon(0 61%,34% 100%,57% 100%,100% 0%,100% 100%,0 100%);pointer-events: none;}
#banner .info { z-index: 5; inset: 0; align-items: center; pointer-events: none; }

#banner .banner_txt { width: 47%; padding-bottom: 30px; pointer-events: auto; }
#banner .banner_en { display: flex; align-items: center; gap: 20px; margin-bottom: 24px; font-family: Arial,sans-serif; font-size: 13px; font-weight: 600; letter-spacing: .22em; color: #7b7b7b; }
#banner .banner_en:after { content: ""; display: block; width: 64px; height: 1px; background: #aaa; }
#banner .banner_title {max-width: 720px;font-size: clamp(46px,4.25vw,55px);font-weight: 900;line-height: 1.25;letter-spacing: -.04em;color: #171717;word-spacing: 100vw;max-width: 100%;}
#banner .banner_title span { display: block; color: #e50011; }
#banner .banner_desc { margin: 24px 0 30px; font-size: clamp(17px,1.12vw,21px); font-weight: 500; line-height: 1.8; letter-spacing: .08em; color: #333; }
#banner .banner_action { display: flex; flex-direction: column; align-items: flex-start; gap: 17px; }
#banner .bttmore a { display: flex; align-items: center; justify-content: center; gap: 28px; min-width: 150px; height: 54px; padding: 0 24px; background: #e50011; box-shadow: 0 10px 30px rgba(229,0,17,.16); font-size: 16px; font-weight: 700; letter-spacing: .06em; color: #fff; transition: .35s; }
#banner .bttmore a span {font-size: 20px;line-height: 1;transition: transform .35s;color: white;}
#banner .bttmore a:hover { background: #bd0010; transform: translateY(-3px); }
#banner .bttmore a:hover span { transform: translateX(5px); }
#banner .callphone a { display: flex; align-items: center; gap: 12px; font-family: Arial,sans-serif; font-size: 18px; font-weight: 600; letter-spacing: .08em; color: #262626; }
#banner .call_icon { display: flex; align-items: center; justify-content: center; width: 23px; height: 23px; }
#banner .call_icon svg { width: 100%; height: 100%; fill: #e50011; }
#banner .flm_img { position: absolute; z-index: 4; inset: 0; pointer-events: none; }
#banner .fyitem { position: absolute; opacity: 0; transform: translateY(25px); transition: opacity .8s .6s,transform .8s .6s; }
#banner .slick-current .fyitem { opacity: 1; transform: translateY(0); }
#banner .fyitem img { display: block; width: 100%; height: auto; }
#banner .banimg01 {top: 10%;right: 5.5%;wid;width: clamp(120px,13vw,250px);}
#banner .banimg02 {right: 5%;bottom: 20px;width: clamp(100px,10vw,190px);transition-delay: .8s;}
#banner .banner_link { z-index: 3; inset: 0; }
#banner .banner_bottom {position: absolute;z-index: 6;left: 0;bottom: 105px;width: 100%;pointer-events: none;}
#banner .banner_bottom  .workframe , #banner .info .workframe{width: min(1500px ,90%);}
#banner .banner_paging { display: flex; align-items: center; width: 43%; font-family: Arial,sans-serif; font-size: 11px; font-weight: 600; letter-spacing: .08em; color: #404040; }
#banner .banner_paging .current { color: #151515; }
#banner .banner_paging .slash { margin: 0 8px; color: #b0b0b0; }
#banner .banner_paging .total { color: #a0a0a0; }
#banner .banner_paging i { display: block; width: 67px; height: 1px; margin: 0 17px; background: #555; }
#banner .banner_paging .scroll_txt { font-size: 9px; letter-spacing: .12em; }
#banner .banner_paging b { display: block; width: 20px; height: 1px; margin-left: 11px; background: #555; animation: bannerScroll 1.8s ease-in-out infinite; transform-origin: left center; }
#banner .banner_txt>* { opacity: 0; transform: translateY(25px); transition: opacity .7s,transform .7s; }
#banner .slick-current .banner_en { opacity: 1; transform: translateY(0); transition-delay: .18s; }
#banner .slick-current .banner_title { opacity: 1; transform: translateY(0); transition-delay: .28s; }
#banner .slick-current .banner_desc { opacity: 1; transform: translateY(0); transition-delay: .38s; }
#banner .slick-current .banner_action { opacity: 1; transform: translateY(0); transition-delay: .48s; }
@keyframes bannerScroll { 0%,100% { transform: scaleX(.4); opacity: .4; } 50% { transform: scaleX(1); opacity: 1; } }
@media screen and (max-width:1600px) {
  #banner .item { height: clamp(620px,49vw,790px); }
  #banner .banner_white_shape { width: 72%; }
  #banner .banner_txt { width: 48%; }
  #banner .banimg02 { bottom: 15%; }
}
@media screen and (max-width:1470px) {
  #banner .item { height: 680px; }
  #banner .banner_white_shape {width: 68%;/* clip-path: polygon(0 0,88% 0,40% 100%,0 100%); */}
  #banner .banner_title {font-size: 50px;}
  #banner .banner_desc { font-size: 17px; }
  #banner .banner_red_shape {height: 200px;}
  #banner .banner_bottom {bottom: 90px;}
  #banner .banimg02 {bottom: 20px;}
  #banner .banner_txt{padding-bottom: 10px;}
  #banner .info .workframe{margin-bottom:20px;}
}
@media screen and (max-width:1200px) {
  #banner .item { height: 620px; }
  #banner .banner_white_shape { width: 82%; clip-path: polygon(0 0,88% 0,42% 100%,0 100%); }
  #banner .banner_txt { width: 53%; }
  #banner .banner_title { font-size: 47px; }
  #banner .banimg01 { right: 3%; }
  #banner .banimg02 { right: 2%; }
}
@media screen and (max-width:991px) {
  #banner .item { height: 680px; }
  #banner .banner_media img { object-position: 64% center; }
  #banner .banner_white_shape { width: 100%; background: linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.95) 47%,rgba(255,255,255,.25) 78%,rgba(255,255,255,0) 100%); clip-path: none; }
  #banner .banner_red_shape { height: 72px; clip-path: polygon(0 48%,45% 100%,100% 26%,100% 100%,0 100%); }
  #banner .banner_txt { width: 62%; padding-bottom: 30px; }
  #banner .banner_title { font-size: 45px; }
  #banner .banimg01 { top: 7%; width: 170px; }
  #banner .banimg02 { bottom: 12%; width: 145px; }
  #banner .banner_bottom { bottom: 50px; }
}
@media screen and (max-width:767px) {
  #banner .item { height: 660px; }
  #banner .banner_media:after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.92) 48%,rgba(255,255,255,.55) 72%,rgba(255,255,255,.25) 100%); }
  #banner .banner_media img { object-position: 67% center; }
  #banner .banner_white_shape {
    background: linear-gradient(90deg, rgba(255, 255, 255, .98) 0%, rgb(255 255 255 / 80%) 47%, rgba(255, 255, 255, .25) 78%, rgba(255, 255, 255, 0) 100%);
}
  #banner .info .workframe{margin-bottom: 0;margin-top: 20px;}
  #banner .info { align-items: center; }
  #banner .banner_txt { width: 82%; padding: 0 0 45px; }
  #banner .banner_en { margin-bottom: 18px; font-size: 10px; }
  #banner .banner_en:after { width: 38px; }
  #banner .banner_title { font-size: clamp(37px,8vw,48px); line-height: 1.18; }
  #banner .banner_desc { margin: 18px 0 24px; font-size: 16px; line-height: 1.7; }
  #banner .bttmore a { min-width: 135px; height: 49px; font-size: 15px; }
  #banner .callphone a { font-size: 16px; }
  #banner .banimg01 { top: 6%; right: 4%; width: 135px; opacity: .65; }
  #banner .banimg02 { display: none; }
  #banner .banner_paging { width: 70%; }
  #banner .banner_bottom {bottom: 40px;display: none;}
  #banner .banner_red_shape {height: 95px;}
}
@media screen and (max-width:575px) {
  #banner .item { height: 610px; min-height: 610px; }
  #banner .banner_media img { object-position: 65% center; }
  #banner .banner_txt {width: 92%;padding-bottom: 0;}
  #banner .banner_title {font-size: 37px;letter-spacing: -.05em;}
  #banner .banner_desc {max-width: 320px;font-size: 15px;letter-spacing: .04em;margin-bottom: 40px;}
  #banner .banimg01 {top: 14%;right: 6%;width: 110px;}
  #banner .banner_paging i { width: 42px; margin: 0 10px; }
  #banner .banner_paging .scroll_txt { display: none; }
  #banner .banner_paging b { display: none; }
}
