@charset "utf-8";

/* ----------------------------------------------
 * HanbitSoft Infra Development Team
 * GE 여름 코스튬 이벤트 Stylesheet
 * Author - hsa815@hanbitsoft.co.kr 250716
 ------------------------------------------------- */

/* CSS Reset
-------------------------------------------------------------- */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
img,
strong,
small,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
select,
input,
button,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
figure,
figcaption {
    margin: 0;
    padding: 0;
    font-size: 100%;
}
img,
fieldset,
button {
    border: 0;
}
article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}
body,
input,
button,
textarea,
select,
table,
kbd {
    line-height: 1.2;
    font-family: "돋움", dotum, Helvetica, sans-serif;
    font-size: 12px;
    color: #000;
}
img {
    vertical-align: middle;
}
ol,
ul {
    list-style: none;
}
a {
    text-decoration: none;
    color: #000;
}
a:hover,
a:focus,
a:active {
    text-decoration: underline;
    color: #0000ff;
}
button,
label {
    cursor: pointer;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
    padding: 0;
    border: 0;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
caption,
legend {
    width: 0;
    height: 0;
    font-size: 0;
    line-height: 0;
    text-indent: -9999px;
    visibility: hidden;
}

/* Reserved Class
-------------------------------------------------------------- */
.irPm {
    display: block;
    font-size: 0px;
    line-height: 0;
    text-indent: -9999px;
    overflow: hidden;
}
.irWa {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
}
.blind {
    position: absolute;
    top: 0;
    left: -1000%;
    width: 1px;
    height: 1px;
    font-size: 0;
    line-height: 0;
    overflow: hidden;
}
.show {
    display: block;
}
.hide {
    display: none;
}
.fL {
    float: left;
}
.fR {
    float: right;
}
.clearFix {
    zoom: 1;
}
.clearFix:after {
    display: block;
    content: "";
    clear: both;
}

/* Styles
-------------------------------------------------------------- */
#wrap {
    position: relative;
    width: 100%;
    min-width: 1200px;
    max-width: 2000px;
    margin: 0 auto;
}
.inner {
    position: relative;
    width: 1100px;
    height: 100%;
    margin: 0 auto;
}

.header,
.section,
.footer {
    image-rendering: pixelated;
    background-repeat: no-repeat;
    background-position: 50% 0;
}

.header {
    height: 1416px;
}

.link-costume-boutique {
    position: absolute;
    bottom: 350px;
    right: -164px;
    width: 213px;
    height: 276px;
    background: url(../images/btn_link.png) no-repeat;
    z-index: 2;
}

/* tab */
.nav {
    position: absolute;
    bottom: 263px;
    left: 0;
    width: 100%;
}
.nav .nav-list {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.nav .nav-list .nav-link {
    display: block;
    width: 363px;
    height: 100px;
}
.nav .nav-list .nav-item.none .nav-link {
    pointer-events: none;
}

.section-01 {
    height: 766px;
}
.section-02 {
    height: 950px;
}
.section-03 {
    height: 776px;
}
.section-04 {
    height: 950px;
}
.section-05 {
    height: 568px;
}

.section .inner .list-wrapper {
    width: 100%;
    padding-top: 222px;
}
.section-02 .inner .list-wrapper,
.section-03 .inner .list-wrapper,
.section-04 .inner .list-wrapper,
.section-05 .inner .list-wrapper {
    padding-top: 232px;
}
.section .inner .list-wrapper ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 932px;
    margin: 0 auto;
    box-sizing: border-box;
}
.section .inner .list-wrapper ul li {
    position: relative;
    width: 90px;
    height: 90px;
    margin-left: 50px;
}

.section .inner .list-wrapper ul li:nth-child(1),
.section .inner .list-wrapper ul li:nth-child(8),
.section .inner .list-wrapper ul li:nth-child(15) {
    margin-left: 0;
}

.section .inner .list-wrapper ul li .more {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
}
.section .inner .list-wrapper ul li .more .button {
    position: absolute;
    top: -20px;
    left: -17px;
    width: 24px;
    height: 24px;
    cursor: pointer;
}
.section .inner .list-wrapper ul li .more .content {
    position: absolute;
    top: 6px;
    left: -166px;
}
.section .inner .list-wrapper ul li .more.summer-festa .content {
    left: -195px;
}
.section .inner .list-wrapper ul li .more.total-character-card .content {
    left: -195px;
}

.section-01 .inner .list-wrapper ul {
    height: 345px;
}
.section-02 .inner .list-wrapper ul {
    height: 519px;
}
.section-03 .inner .list-wrapper ul {
    height: 345px;
}
.section-04 .inner .list-wrapper ul {
    height: 519px;
}
.section-05 .inner .list-wrapper ul {
    height: 187px;
}

.more .content {
    display: none;
}
.more:hover .content {
    display: block;
}

.section .link-purchase-item {
    display: block;
    width: 277px;
    height: 69px;
    margin: 32px auto 0;
}

.footer {
    height: 364px;
}

/* event01 */
.event01 .header {
    background-image: url(../images/event01/bg-header.jpg);
}

.event01 .section-01 {
    background-image: url(../images/event01/bg-section-01.jpg);
}
.event01 .section-02 {
    background-image: url(../images/event01/bg-section-02.jpg);
}
.event01 .section-03 {
    background-image: url(../images/event01/bg-section-03.jpg);
}
.event01 .section-04 {
    background-image: url(../images/event01/bg-section-04.jpg);
}
.event01 .section-05 {
    background-image: url(../images/event01/bg-section-05.jpg);
}
.event01 .footer {
    background-image: url(../images/event01/bg-footer.jpg);
}

/* event02 */
.event02 .header {
    background-image: url(../images/event02/bg-header.jpg);
}

.event02 .section-01 {
    background-image: url(../images/event02/bg-section-01.jpg);
}
.event02 .section-02 {
    background-image: url(../images/event02/bg-section-02.jpg);
}
.event02 .section-03 {
    background-image: url(../images/event02/bg-section-03.jpg);
}
.event02 .section-04 {
    background-image: url(../images/event02/bg-section-04.jpg);
}
.event02 .section-05 {
    background-image: url(../images/event02/bg-section-05.jpg);
}
.event02 .footer {
    background-image: url(../images/event02/bg-footer.jpg);
    height: 344px;
}

/* 마우스오버 효과 Buzz Out */
@-webkit-keyframes hvr-buzz-out {
    10% {
        -webkit-transform: translateX(3px) rotate(2deg);
        transform: translateX(3px) rotate(2deg);
    }

    20% {
        -webkit-transform: translateX(-3px) rotate(-2deg);
        transform: translateX(-3px) rotate(-2deg);
    }

    30% {
        -webkit-transform: translateX(3px) rotate(2deg);
        transform: translateX(3px) rotate(2deg);
    }

    40% {
        -webkit-transform: translateX(-3px) rotate(-2deg);
        transform: translateX(-3px) rotate(-2deg);
    }

    50% {
        -webkit-transform: translateX(2px) rotate(1deg);
        transform: translateX(2px) rotate(1deg);
    }

    60% {
        -webkit-transform: translateX(-2px) rotate(-1deg);
        transform: translateX(-2px) rotate(-1deg);
    }

    70% {
        -webkit-transform: translateX(2px) rotate(1deg);
        transform: translateX(2px) rotate(1deg);
    }

    80% {
        -webkit-transform: translateX(-2px) rotate(-1deg);
        transform: translateX(-2px) rotate(-1deg);
    }

    90% {
        -webkit-transform: translateX(1px) rotate(0);
        transform: translateX(1px) rotate(0);
    }

    100% {
        -webkit-transform: translateX(-1px) rotate(0);
        transform: translateX(-1px) rotate(0);
    }
}

@keyframes hvr-buzz-out {
    10% {
        -webkit-transform: translateX(3px) rotate(2deg);
        transform: translateX(3px) rotate(2deg);
    }

    20% {
        -webkit-transform: translateX(-3px) rotate(-2deg);
        transform: translateX(-3px) rotate(-2deg);
    }

    30% {
        -webkit-transform: translateX(3px) rotate(2deg);
        transform: translateX(3px) rotate(2deg);
    }

    40% {
        -webkit-transform: translateX(-3px) rotate(-2deg);
        transform: translateX(-3px) rotate(-2deg);
    }

    50% {
        -webkit-transform: translateX(2px) rotate(1deg);
        transform: translateX(2px) rotate(1deg);
    }

    60% {
        -webkit-transform: translateX(-2px) rotate(-1deg);
        transform: translateX(-2px) rotate(-1deg);
    }

    70% {
        -webkit-transform: translateX(2px) rotate(1deg);
        transform: translateX(2px) rotate(1deg);
    }

    80% {
        -webkit-transform: translateX(-2px) rotate(-1deg);
        transform: translateX(-2px) rotate(-1deg);
    }

    90% {
        -webkit-transform: translateX(1px) rotate(0);
        transform: translateX(1px) rotate(0);
    }

    100% {
        -webkit-transform: translateX(-1px) rotate(0);
        transform: translateX(-1px) rotate(0);
    }
}

.hvr-buzz-out {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}

.hvr-buzz-out:hover,
.hvr-buzz-out:focus,
.hvr-buzz-out:active {
    -webkit-animation-name: hvr-buzz-out;
    animation-name: hvr-buzz-out;
    -webkit-animation-duration: 0.75s;
    animation-duration: 0.75s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
}
