/* reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

a{text-decoration: none;}
/* reset */

body .bat-wrapper {
    max-width: 100%;
}
.brand-header .bat-header--right {background: none !important;}
.brand-header .bat-header {background: #242c2c;}
.bat-header header {
    z-index: 40;
}
@media only screen and (min-width: 320px) and (max-width: 767px) {
    .bat-header.header-fixed {
        z-index: 40;
}}



:root {
    --x: 50vw;
    --y: 50vh;
    --size: max(150px, 210px);
}

.pc_only{display: block;}
.mo_only{display: none;}

html{
    width: 100%;
    height: 100%;
    overflow: hidden;
}
body {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    font-family:'Mont','NotoSans',sans-serif;
    }
.teacer_wrap{
    width: 100%;
    height: 100vh;
    position: relative;
}

main{
    /* position: relative; */
    width: 100vw;
    height: 100vh;
}
.main_wrap{
    text-align: center;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
main img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.title{
    position: absolute;
    top: 95px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    z-index: 10;
}
.title p{
    color: #fff;
    font-size: 24px;
    padding-top: 60px;

}
#spotlight {
    touch-action: none;
    position: fixed;
    top: 80px;
    left: 0;
    height: calc(100vh - 80px);
    width: 100vw;
    background-color: rgba(0, 0, 0, 1);
    
    mask:
    url(/content/dam/glo-jp/korea-images/brand-pages/images/2024/teaser/focus2.svg),
    linear-gradient(#fff 0 0);
    mask-size: var(--size), 100%;
    mask-position: calc(var(--x) - var(--size) / 2)
        calc(var(--y) - var(--size) / 2 * 3.5),
    left top;
    mask-repeat: no-repeat;
    mask-mode: alpha;

    -webkit-mask-composite: destination-out;
    -ms-mask-composite: destination-out;
    mask-composite: exclude;
    
}
#spotlight.all{
    opacity: 0;
    transition: 1.5s;
}

.kvi_wrap{
    width: 100%;
    height: auto;
}
.kvi{
    position: absolute;
    top: 39.5%;
    left: 25.6%;
    width: 10.5vw;
    height: 6vw;
}
video{
    width: 100%;
    height: 100%;
    object-fit: fill;
}
.btn_wrap{
    width: 100%;
    position: fixed;
    bottom: 70px;
    z-index: 20;
}
.btn_inner{
    display: flex;
    justify-content: center;
    align-items: center ;
    column-gap: 30px;
    margin-top: 40px;
}
.btn{
    width: 269px;
    height: 68px;
    border-radius: 200px;
    font-size: 24px;
    font-weight: 500;
    text-align: center;
    line-height: 66px;
}
.btn.line{
    border: 2px solid #E5451C;
    color: #E5451C;
    background-color: transparent;
}
.btn.full{
    background-color: #F6714F;
    color: #fff;
}
.view_wrap{
    text-align: center;
}
.viewAll, .viewBack{
    width: 160px;
    font-size: 24px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}
.viewBack{
    text-align: center;
    display: none;

}
.icon_right{
    display: inline-block;
    width: 18px;
    height: 18px;
    background: url(/content/dam/glo-jp/korea-images/brand-pages/images/2024/teaser/Icon_right.png) no-repeat center / contain;
    margin-left: 4px;

}

.popup{
    display: none;
    position: absolute;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 30;
}
.black_bg{
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
}
.pop_wrap{
    position: absolute;
    width: 1116px;
    height: 628px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.btn_close{
    position: absolute;
    width: 30px;
    height: 30px;
    top: -50px;
    right: 0;
    background: url(/content/dam/glo-jp/korea-images/brand-pages/images/2024/teaser/btn_X.png) no-repeat center / cover;
}

.pop_room{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 30;
}
.pop_room img{
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 1620px) {
    :root {
        --size: max(10vw, 210px);
    }
    #spotlight{
        mask-size: 10vw, 100%;
        mask-position: calc(var(--x) - var(--size) / 3)
        calc(var(--y) - var(--size) / 2 * 2.8),
    left top;
    }
    .kvi{
        width: 10.8vw;
        height: 6vw;
        top: 41.5%;
        left: 25%;
    }
}
@media screen and (max-width: 1480px) {
    .kvi{
        width: 12vw;
        height: 7vw;
        top: 41.5%;
        left: 23.3vw;
    }
}
@media screen and (max-width: 1280px) {
    #spotlight{
        mask-size: 10vw, 100%;
        mask-position: calc(var(--x) - var(--size) / 3.5)
        calc(var(--y) - var(--size) / 2 * 2.4),
    left top;
    }
    .pop_wrap{
        position: absolute;
        width: 80vw;
        height: 50vw;
        top: 45%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .kvi{
        width: 13vw;
        height: 7.8vw;
        top: 40.8%;
        left: 19.8vw;
    }
}
@media screen and (max-width: 1080px) {
    .kvi{
        width: 16.5vw;
        height: 9.5vw;
        top: 41%;
        left: 11.5vw;
    }
}


@media screen and (max-width: 768px) {
    :root {
        --size: max(20vw, 310px);
    }
    .pc_only{display: none;}
    .mo_only{ display: block;}

    .title{
        width: 100%;
        top: 40px;
    }
    .title img{
        width: 158.72px;
        height: 32.96px;
    }
    .title p{
        color: #fff;
        font-size: 16px;
        padding-top: 44px;
        line-height: 1.5;
    }
    /* .title p:after{
        content: '';
        display: block;
        width: 2px;
        height: 35px;
        border-left: 2px dotted #fff;
        position: absolute;
        bottom: -40px;
        left: 50%;
        transform: translateX(-50%);
    } */
    #spotlight{
        mask-size: 20vw, 100%;
        mask-position: calc(var(--x) - var(--size) / 3.8)
        calc(var(--y) - var(--size) / 2 * 2),
    left top;
        top: 98px;
        left: 0;
        height: calc(100vh - 98px);
    }
    .kvi{
        top: 57%;
        left: 29%;
        width: 34.3vw;
        height: 20vw;
    }
    .btn_wrap{
        bottom: 30px;
    }
    .btn_inner{
        column-gap: 20px;
    }
    .btn{
        width: 150px;
        height: 44px;
        font-size: 16px;
        font-weight: 700;
        line-height: 44px;
        letter-spacing: -1.5px;
    }
    .viewAll, .viewBack{
        font-size: 16px;
    }
    .icon_right{
        width: 12px;
        height: 12px;
    }
    .pop_wrap{
        width: 76vw;
        height: 112vw;
        top: 40%;
    }
    .btn_close{
        width: 15px;
        height: 15px;
        top: -30px;
    }
}

@media screen and (max-width: 480px) {
    #spotlight{
        mask-size: 30vw, 100%;
        mask-position: calc(var(--x) - var(--size) / 5)
        calc(var(--y) - var(--size) / 2 * 2),
    left top;
    }
    .pop_wrap{
        width: 84vw;
        height: 170vw;
    }
    .kvi {
        top: 54.8%;
        left: 21.8%;
        width: 45.3vw;
        height: 25.7vw;
    }
}
@media screen and (max-width: 390px) {
    :root {
        --size: max(30vw, 210px);
    }
    #spotlight{
        mask-size: 30vw, 100%;
        mask-position: calc(var(--x) - var(--size) / 4)
        calc(var(--y) - var(--size) / 2 * 2.6),
    left top;
    }
    .kvi{
        top: 54.8%;
        left: 21.8%;
        width: 46vw;
        height: 27vw;
    }
    .pop_wrap{
        width: 84vw;
        height: 140vw;
    }
}
@media screen and (max-width: 375px) {
    .kvi{
        top: 55.2%;
        left: 28.2%;
        width: 36vw;
        height: 21vw;
    }
    
}