/* main banner */
.main-banner{position:relative;height: 100vh;overflow: hidden;}
.main-banner .swiper-button-prev {width:1rem;height:1.8rem;background:url("/img/common/icon_swiper_arrow.png") no-repeat center / 100%;transform:rotate(180deg);right: 10px;position: relative;left: 0;top: 0;margin-top: 0;}
.main-banner .swiper-button-next {position: relative;width:1rem;height:1.8rem;l;background:url("/img/common/icon_swiper_arrow.png") no-repeat center / 100%;right: 0;top: 0;top: 0;margin-top: 0;}
.main-banner .swiper-button-prev:after,
.main-banner .swiper-button-next:after {content:"";}
.main-banner .swiper-horizontal>.swiper-pagination {left:22vw;bottom: 20%;width:auto;}
.main-banner .swiper-pagination-bullet {margin:0 0.6rem !important; background:rgb(255, 255, 255,.9); transition:width .5s;}
.main-banner .swiper-pagination-bullet.swiper-pagination-bullet-active {width:9.6rem; border-radius:.4rem; background:#fff;}
.main-banner .btn-play {position:absolute; left:18vw; bottom:7vw; z-index:5;}
.main-banner .ctrl-box {position:relative; margin-left:2rem;}
.main-banner .play-pause-btn {position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); display: flex;align-items: center;justify-content: center;cursor: pointer;z-index:5;}
.main-banner .icon {display: inline-block; width: 12px; height: 18px; transition:all 0.3s;}
.main-banner .pause {width: 11px; height: 14px; display: flex; justify-content: space-between; position:relative;}
.main-banner .pause::before,
.main-banner .pause::after {content: ""; position: absolute; width:4px; height: 14px; background: #fff; display: block;top: calc(50% - 7px);border-radius: 3px;}
.main-banner .pause::before{left: -1px;}
.main-banner .pause::after{right: -1px; }
.main-banner .play {width: 0;height: 0;border-left: 10px solid #fff;border-top: 7px solid transparent;border-bottom: 7px solid transparent;}

.main-banner .swiper-slide-visible{z-index:1;}
.main-banner .swiper-slide a img{width:100%;}
.main-banner .swiper-slide-visible a{pointer-events: visible;}

.swiper-ctrl{display:flex; position:absolute; width:auto; bottom:6rem; left:7rem; align-items:center; min-width:30rem; z-index:30}
.swiper-ctrl .arrows{width:6rem; display:flex; justify-content:space-between;}
.swiper-ctrl .swiper-pagination{position:static; color:#fff; left: 0; top: 1.2rem; font-size:0px; display: flex;}
.swiper-ctrl .swiper-pagination span{color:#fff; font-size:1.7rem;}
.swiper-ctrl .swiper-button-prev, .swiper-ctrl .swiper-button-next{width:1.2rem !important; height:2rem !important;}
.swiper-button-next:after, .swiper-button-prev:after{display:none !important;}

.main-intro-txt{display:flex;position:absolute;top: 0;left:7rem;z-index:15;color:#fff;height: 85vh;align-items: flex-end;padding-bottom: 0;}
.main-section-tit h3, .main-intro-txt dl dt{ font-family: "CodecCold"; font-size:6.5rem; line-height:1; font-weight:900; letter-spacing:-0.05em;}
.main-section-tit p, .main-intro-txt dl dd{font-size:2rem; display:block; margin-top:1rem; line-height:1.6}

.main-section-tit{display:block; margin-bottom:100px;}
.main-section.showcase {padding:100px 0px; margin-top:100px; position:relarive; display:block;}

.img-mask {width: 100%;height: 100%;display: block;position: absolute;top:0;left: 0;margin: 0 auto;box-sizing: border-box;z-index: 0;overflow:hidden;border-radius:0px;-webkit-transition: border-radius 0.4s ease-in-out 0s;transition: border-radius 0.4s ease-in-out 0s;}
.showcase-portfolio .lab301-item .img-mask {position: relative;}
.showcase-portfolio .lab301-item .img-mask a{height:100%;}
.section-image {position:relative;display:block;width:100%;height:100%;}
.item-image {width:100%;height: 100%!important;position:relative;display:block;z-index:10;object-position: center; object-fit: cover;}

.showcase-portfolio  {position: relative;display: flex;  flex-wrap: wrap;width:100%;margin:0 auto;margin-top:20px;}
.showcase-portfolio .lab301-item {position:relative;width: calc(33.3333% - 80px);height:18vw;margin:60px 40px 120px 40px;box-sizing:border-box;padding:0px;z-index:10;display:block;}
.showcase-portfolio .lab301-item:nth-of-type(1) {width: 100% ;height:40vw;margin-top: 0;}
.showcase-portfolio .lab301-item:nth-of-type(2) {width: calc(50% - 80px);height:33vw;}
.showcase-portfolio .lab301-item:nth-of-type(3) {width: calc(50% - 80px);height: 20vw;margin-left: 40px;}
.showcase-portfolio .lab301-item:nth-of-type(4) {width: calc(50% - 80px);height: 20vw;}
.showcase-portfolio .lab301-item:nth-of-type(5) {width: calc(50% - 80px);height:33vw;}
.showcase-portfolio .lab301-item.filtered {position:relative;width: calc(33.3333% - 80px);height:18vw;margin:60px 40px 120px 40px;box-sizing:border-box;padding:0px;z-index:10;display:block;}
.showcase-portfolio .slide-inner {padding-top: 0;width: 100%;height: 100%;margin:0;overflow:visible;}
.showcase-portfolio .slide-inner::after {display: block;content: "";clear: both;}
.showcase-portfolio.items-filtered .slide-inner {transform:none!important;}
.showcase-portfolio.ease-transform .slide-inner {transition-property: transform;transition-duration: 0.5s;transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);}
.showcase-portfolio .slide-inner.disabled {pointer-events:none;}

.showcase-portfolio .section-image {position:relative;width:100%;height:100%;left:0;overflow:hidden;-webkit-transform:scale(1.035);transform: scale(1.035);-webkit-transition: transform 0.3s ease-out 0s;transition: transform 0.3s ease-out 0s;}
.showcase-portfolio .slide-inner:hover .section-image, .showcase-portfolio .above .section-image {-webkit-transform:scale(1.005);transform: scale(1.005);}

.img-mask::before {content: "";display: block;width: 0;height: 0;border-bottom: 2rem solid transparent;border-top: 2rem solid #fff;border-left: 2rem solid #fff;border-right: 2rem solid transparent;position: absolute;left: 0;top: 0;z-index:99;}
.showcase-portfolio .slide-caption {z-index: 10;position: relative;left: 0px;top: 25px;height: auto;width: 100%;cursor: default;pointer-events: none;text-align: left;opacity: 1;display: block;}
.showcase-portfolio .slide-caption .slide-title {font-size: 2.1rem; font-weight: 700;line-height:32px;color: #282828; overflow:hidden; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; white-space: normal; text-overflow: ellipsis;}
.light-content .showcase-portfolio .slide-caption .slide-title {color: #fff;opacity: 0.5;}
.showcase-portfolio .slide-caption .slide-title span {display: block;}
.showcase-portfolio .slide-caption .slide-cat {font-size: 1.4rem;line-height:22px;font-weight: 300;color: #454545;z-index:10;overflow:hidden;}
.light-content .showcase-portfolio .slide-caption .slide-cat {color: #ccc;}
.showcase-portfolio .slide-caption .slide-cat span {display: block;}
.showcase-portfolio .slide-inner:hover .slide-title, .showcase-portfolio .slide-inner:hover .slide-cat {opacity:1;}
.showcase-portfolio .slide-inner .slide-cat {opacity: 0;transition: all 0.3s ease-in-out 0s;}


.showcase-list-item{margin: 60px 40px 0px 40px;}

#main-content, #main-content-bg {position:relative;opacity:1;z-index:10;-webkit-transition: all 0.4s ease-in-out 0s;transition: all 0.4s ease-in-out 0s;}
#main-page-content {position: relative;box-sizing:border-box;width:100%;margin:0 auto;margin-bottom: 0;overflow:hidden;max-width:none;}
#main-page-content::after {clear: both;content: " ";display: table;}
#main-page-content.project-page {margin-bottom: calc(200vh - 120px);}
.hero-below-caption #main-page-content.project-page {margin-bottom: calc(200vh - 120px);}
#main-content.portfolio-page {overflow:hidden;}
#main-content.portfolio-page #main-page-content {overflow:visible;width:100%;max-width:none;padding:0;}

.content-max-width {box-sizing:border-box;padding-left:80px;padding-right:80px;max-width:1600px;}
.content-full-width {box-sizing:border-box;padding-left:80px;padding-right:80px;max-width:100%;}

.light-section-wrapper, .dark-section-wrapper {margin-left: calc(50% - 50vw)!important;margin-right: calc(50% - 50vw)!important;max-width: 1000%!important;width: 100vw!important;}
.light-section-container, .dark-section-container {position: relative;box-sizing: border-box;width: 100%;margin: 0 auto;}
.content-row {position:relative;width:100%;margin:0 auto;z-index:1;opacity:1;box-sizing:border-box;}
.clip-effects {overflow:hidden;clip-path: inset(4% 10% round 40px);}
.content-row::after {clear: both;content: " ";display: table;}
.small {max-width:820px;width:100%;margin:0 auto;}
.large {max-width:1380px;width:100%;margin:0 auto;}
.full {margin-left: calc(50% - 50vw)!important;margin-right: calc(50% - 50vw)!important;max-width: 1000%!important;width: 100vw!important;}
.row_padding_bottom {padding-bottom:9vw;}
.row_padding_left {padding-left:80px;}
.row_padding_right {padding-right:80px;}
.row_padding_all {padding-top: 4vw;padding-bottom: 4vw;padding-left: 80px;padding-right: 80px;}

.slowed-pin {position:relative;overflow: hidden;}
.slowed-pin > .pin-spacer {pointer-events:none;}
.slowed-text {position:absolute;height:auto;min-height:100vh;width:100%;max-width:980px;display: flex;align-items: center;flex-direction: column;justify-content: center;box-sizing:border-box;padding:8vw 20px;z-index:1;pointer-events:none;margin:auto;left:0;right:0;}
.slowed-text-wrapper {position:relative;display:block;}
.slowed-image a{display: contents; position:relative;}
.slowed-image a video{position:relative;}
.slowed-image a video::before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-bottom: 2rem solid transparent;
    border-top: 2rem solid #fff;
    border-left: 2rem solid #fff;
    border-right: 2rem solid transparent;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 99;
}
.slowed-image video {width: auto;max-width: 45%!important;height: auto!important;display: block;cursor: pointer;margin-bottom: 0;position: relative;z-index: 9;-webkit-transform: scale(0.95) translateY(30%);transform: scale(0.95) translateY(30%);}
.imgVid + img.imgVid {display: none;}
.slowed-images {position: relative;top: 0;width: 100%;height:auto;box-sizing:border-box;overflow: hidden;z-index:0;margin:auto;}
.slowed-image {position: relative;width: 100%;height: auto;box-sizing: border-box;padding:0 0px;margin:0;display: flex;align-items: flex-start;flex-direction: column;}
.slowed-image .imgVid {position: absolute;}
.slowed-image::after {content: "";display: block;padding-bottom: 27%;}
.slowed-image:nth-of-type(9n+1) .imgVid {height: 100%;width: calc(70% - 80px);left:40px;}
.slowed-image:nth-of-type(9n+2) .imgVid {height: 100%;width: calc(50% - 80px);right:40px;}
.slowed-image:nth-of-type(9n+3) .imgVid {height: 100%;width: calc(70% - 80px);right:calc(25% + 40px);}
.slowed-image:nth-of-type(9n+4) .imgVid  {height: 100%;width: calc(55% - 80px);left:40px;top: 120px;}
.slowed-image:nth-of-type(9n+5) .imgVid  {height: 100%;width: calc(70% - 80px);right:40px;}
.slowed-image:nth-of-type(9n+6) .imgVid  {height: 100%;width: calc(45% - 80px);left:calc(25% + 40px);right:calc(25% + 40px);}
.slowed-image:nth-of-type(9n+7) .imgVid  {height: 100%;width: calc(45% - 80px);left:40px;}
.slowed-image:nth-of-type(9n+8) .imgVid  {height: 100%;width: calc(70% - 80px);left:calc(25% + 40px);right:calc(25% + 40px);}
.slowed-image:nth-of-type(9n+9) .imgVid  {height: 100%;width: calc(45% - 80px);right:40px;}
.parallax-grid.below-caption .item:last-child {margin-bottom:100px;}
.slowed-image .imgVid {width: auto;height: auto!important;display: block;margin-bottom: 10px;-webkit-transform: scale(0.95) translateY(30%);transform: scale(0.95) translateY(30%);overflow: hidden;}

.main-section.growth, .main-section.newsroom{display:block; position:relative; margin:100px 40px 0px 40px;}
.main-section.tomorrow{display:block; position:relative; margin:200px 40px 120px 40px;}
.main-section-tit-flex, .main-section-tit-flex .main-section-tit{display:flex; align-items: center; position:relative;justify-content: space-between;}
.main-section-tit-flex, .main-section-tit-flex .main-section-tit h3{padding-right:80px}

.tit-slider-nav{display:flex; gap:10px;}
.arrow-prev, .arrow-next{width:54px; height:54px;border-radius:100%;box-shadow: 6px 10px 30px rgba(16, 28, 93, .2); display:block; cursor:pointer}
.arrow-prev{background: #fff url('/img/common/icon-slide-arrow-prev-bk.png'); background-position:50%; background-size:17px auto; display:block; background-repeat:no-repeat;}
.arrow-next{background: #fff url('/img/common/icon-slide-arrow-next-bk.png'); background-position:50%; background-size:17px auto; display:block; background-repeat:no-repeat;}
.main-section.tomorrow .gry-list, .main-section.growth .gry-list {display: flex; justify-content: flex-start; flex-wrap: nowrap !important; margin-left: 0rem;}
.main-section.tomorrow .gry-list li, .main-section.growth .gry-list li{margin-left: 0rem !important;}

.newsroom-wrapper{width:1200px; margin:0 auto;}
.newsroom .main-section-tit{margin-bottom:60px;}
.newsroom-item .img-wrap{position:relative; }
.newsroom-item .img-wrap{display: block;padding-bottom: 68.14%;background-position: center !important;background-size: cover !important;overflow: hidden;}
.newsroom-item .img-wrap::before {content: "";display: block;width: 0;height: 0;border-bottom: 2rem solid transparent;border-top: 2rem solid #fff;border-left: 2rem solid #fff;border-right: 2rem solid transparent;position: absolute;left: 0;top: 0;}
.newsroom-item .news-title {letter-spacing: -1.2px;color: rgb(40 40 40 / 100%);font-size: 2.1rem;font-weight: 700;margin-top: 2.4rem;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;}
.newsroom-item .news-date{color:#666666;font-size:1.4rem;font-weight:300;margin-top: 1rem;word-break:keep-all;width: 95%;}
.newsroom-contents{display:flex;}
.newsroom-contents > div{width:50%;}
.news-cover{padding-right:30px; position:relative;}
.news-cover::after{content:""; display:block; right:0px; top:0px; width:1px; height:100%; background:#ddd; position:absolute;}
.news-list ul li {border-bottom:1px solid #ddd;}
.news-list ul li a{padding:0px 0px 30px 30px; display:flex; justify-content: space-between;}
.news-list ul li + li {margin-top:30px;}
.news-list ul li dl {width:60%; }
.news-list ul li > div{width:30%;}
.news-list ul li .img-wrap{display: block;width:130px; height:130px; padding-bottom:0; background-position: center !important;background-size: cover !important;overflow: hidden;}
.news-list ul li .news-title{margin-top:0px;}
.news-list ul li:last-child{border-bottom:0}
.s-img-wrap::before {content: "";display: block;width: 0;height: 0;border-bottom: 1.2rem solid transparent;border-top: 1.2rem solid #fff;border-left: 1.2rem solid #fff;border-right: 1.2rem solid transparent;position: absolute;left: 0;top: 0;}

.newsroom-btn{display:block; margin-top:60px;}
.btn-normal{position: relative;display: inline-block;padding: 1.7rem 8rem;font-size: 1.7rem;font-weight: 700;color: #fff;background: #363636;}
.tomorrow .main-section-tit-flex {flex-direction: row-reverse;}
.tomorrow .main-section-tit-flex h3{ padding-right:0}
.tomorrow .main-section-tit-flex .main-section-tit{text-align:right; flex-direction: column;align-items: flex-end;}
.tomorrowSlider, .growthSlider {overflow:hidden;}
.site-container {height:100%; overflow-y:scroll; overflow-x: hidden;}