/*************** CSS for Desktop ***************/
@keyframes zoom {
	0% {
		transform: translate(-50%, -50%) scale(1.05);
	}

	70% {
		transform: translate(-50%, -50%) scale(1);
	}

	100% {
		transform: translate(-50%, -50%) scale(1.05);
	}
}
@-webkit-keyframes pulse {
    0% {
		/* transform: scale(0.95); */
        -webkit-filter: brightness(1.3);
        filter: brightness(1.3);
    }

    50% {
        /* transform: scale(1); */
        -webkit-filter: brightness(1);
        filter: brightness(1);
    }

    100% {
		/* transform: scale(0.95); */
        -webkit-filter: brightness(1.3);
        filter: brightness(1.3);
    }
}
@keyframes fadeInBottom {
    from {
        opacity: 0;
        transform: translateY(100%);
    }
    to {
        opacity: 1
    }
}
@keyframes fadeInBottomScale {
    from {
        opacity: 0;
        transform: scale(1.8) translateY(100%);
    }
    to { 
        opacity: 1;
        transform: scale(1);
    }
}
@-webkit-keyframes bounce {
  0% {
  }
  100% {
    transform:translateY(-10px);
  }
}
.bounce {
	animation: bounce .5s infinite alternate;
}
.zoom {
	animation: zoom .5s linear infinite;
}
.pulse {
	animation: pulse 1s linear infinite;
}
html, body, #main, #wrapper, .j-section {
    height: 100%;
}
html, body {
    background-color: #000B39 !important;
}
#main, #wrapper {
    background-color: transparent !important;
}
body, #main, #wrapper {
    overflow: hidden;
}
body {
    background-image: url(../img/bg-pc.webp);
    background-size: cover;
    background-attachment: fixed;
}
.j-section {
    margin: 0 auto;
    max-width: 100%;
}
.j-section .section-content {
    height: 100%;
    display: flex;
}
#main, #wrapper {
    background-color: transparent;
}
.col-inner>.img:not(:last-child), .col>.img:not(:last-child), blockquote, dl, figure, form, ol, p, pre, ul {
    margin-bottom: 0;
}
.j-slider .img {
    width: 33.333333% !important;
    display: flex;
    align-items: flex-end;
    min-height: 8.5vw;
}
.j-img {
    position: absolute;
    bottom: 0;
    left: 0;
	animation: fadeInBottomScale 0.5s linear;
}
.j-video {
    position: absolute;
    left: 0;
    top: 0;
	animation: fadeInBottom 0.7s linear;
}
.j-video .img-inner {
    width: 80%;
    margin: 0 auto;
	animation: bounce 1s infinite alternate;
}
.j-video lottie-player {
    width: 100%;
    height: 100%;
    display: block;
}
/*************** CSS for landscape Desktop ***************/
@media (max-width: 1750px) {
    .j-slider .img {
        min-height: calc(8.5vw*0.92);
    }
}
@media (max-width: 1500px) {
    .j-slider .img {
        min-height: calc(8.5vw*0.93);
    }
}
@media (max-height: 660px) and (orientation: landscape) {
    .j-section {
        max-width: 90%;
    }
}
/*************** CSS for Tablet ***************/
@media (max-width: 1023px) and (orientation: landscape) {
    .j-section {
        height: 100dvh;
        min-height: auto !important;
    }
}
@media (orientation: portrait) {
    body {
        background-image: url(../img/bg-mb-1.webp);
    }
    .j-video {
        left: -50vw;
        top: 0;
        width: 200% !important;
    }
    .j-video .img-inner {
        width: 100%;
    }
}
@media (min-width: 750px) and (orientation: portrait) {
    .j-section {
        min-height: 0 !important;
    }
    .j-section .row {
        /* max-width: 65% !important; */
    }
    .col, .row-collapse>.col {
        flex-basis: 100%;
        max-width: 100%;
        padding: 0 5% !important;
    }
    .hide-for-small, [data-show=hide-for-small], .hide-for-medium, [data-show=hide-for-medium] {
        display: none !important;
    }
    .show-for-small, [data-show=show-for-small] {
        display: block !important;
    }
}

/*************** CSS for mobile ***************/
@media (max-width: 549px) {
    .j-section {
        max-width: 100%;
    }
    .j-slider .img {
        width: 50% !important;
        min-height: 27.5vw;
    }
}

/*************** CSS for mobile ***************/
@media (max-width: 390px) {

}