@charset 'UTF-8';
#paris-main > section {
    padding: 60px 10px;
}
#paris-main > .main-banner-container {
    padding: 0;
}
#paris-main > section h2 {
    margin-bottom: 2em;
    text-align: center;
}
#paris-main .more-wrap {
    margin-top: 20px;
    text-align: center;
}

/* 1. 메인배너 */
.main-banner-container {
    position: relative;
}
.main-banner-wrap { /* 스크린 */
    /* position: relative; */
    width: 100%;
    height: calc(100vh - 180px);
    background-color: #ccc;
    overflow: hidden;
}
.main-banner { /* 5개짜리 전체 리스트 */
    /* position: absolute;
    left: 0;
    top: 0; */
    width: 700%;
    height: 100%;
    transition: transform 0.5s 0.2s;
    /* transition-property: left;
    transition-duration: 0.5s;
    transition-delay: 0.2s; */
}
.mb-slide { /* 개별 슬라이드 */
    float: left;
    width: calc(100% / 7);
    height: 100%;
    background-position: center center;
    background-size: cover;
}
.main-banner-slide1 {background-image: url('../images/main_img_01.jpg');}
.main-banner-slide2 {background-image: url('../images/main_img_02.jpg');}
.main-banner-slide3 {background-image: url('../images/main_img_03.jpg');}
.main-banner-slide4 {background-image: url('../images/main_img_04.jpg');}
.main-banner-slide5 {background-image: url('../images/main_img_05.jpg');}

.mb-slide a {
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    color: #fff;
    overflow: hidden;
    transition: 0.3s;
}
.mb-slide a:hover, .mb-slide.active a {
    background-color: rgba(0,0,0,0);
}
.mb-slide span {
    display: block;
    padding: 40px;
    font-size: 2em;
    opacity: 0;
    transition: 0.3s;
}
.mb-slide.active span {
    padding-left: 80px;
    opacity: 1;
}
.main-banner-pagination {
    height: 90px;
    padding: 24px 0;
    text-align: center;
    line-height: 0;
}
.mb-btn {
    display: inline-block;
    width: 40px;
    height: 16px;
    margin: 0 5px;
    font-size: 0;
    line-height: 0;
    text-indent: -9999em;
    overflow: hidden;
}
.mb-btn:after {
    display: block;
    height: 4px;
    margin-top: 0px;
    background-color: #023586;
    content: '';
    opacity: 0.2;
    transition: 0.3s;
    border-radius: 2px;
}
.mb-btn:hover:after {
    opacity: 0.5;
}
.mb-btn.active:after {
    position: relative;
    top: -1px;
    height: 6px;
    opacity: 1;
    border-radius: 3px;
}

.main-banner-controls {
    position: absolute;
    left: 0;
    top: calc((100vh - 180px) / 2);
    width: 100%;
}
.mb-control {
    width: 24px;
    height: 24px;
    margin-top: -12px;
    border: 2px solid #fff;
    border-width: 0 0 2px 2px;
    text-indent: -9999em;
    overflow: hidden;
    opacity: 0.5;
    transition: opacity 0.3s;
}
.mb-control:hover {
    opacity: 0.8;
}
/* 이전버튼 < */
.mb-prev {
    position: absolute;
    left: 10px;
    top: 0;
    transform: rotate(45deg);
}
/* 다음버튼 > */
.mb-next {
    position: absolute;
    right: 10px;
    top: 0;
    transform: rotate(-135deg);
}

/* 2. 프리젠테이션 */
.main-presentation {
    font-size: 1.2em;
}
.main-presentation li {
    margin: 8% 2%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
.main-presentation .presentation1 {
    background-image: url('../images/presentation_01.jpg');
}
.main-presentation .presentation2 {
    background-image: url('../images/presentation_02.jpg');
}
.main-presentation .presentation3 {
    display: none;
    background-image: url('../images/presentation_03.jpg');
}
.main-presentation a {
    position: relative;
    display: block;
    padding-top: 129%;
    color: #fff;
}
.main-presentation dl {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 10% 8%;
    /* 그라디언트 */
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.9) 100%); 
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.9) 100%); 
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.9) 100%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
}
.main-presentation dt {
    position: relative;
    font-size: 1.6em;
    z-index: 1;
}
.main-presentation dt:before {
    position: absolute;
    left: -10px;
    top: 0;
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-color: #023586;
    z-index: -1;
}
.main-presentation dd {
    height: 3.2em;
}

/* 3. 스토리 */
.story-item {
    position: relative;
    margin-bottom: 15%;
}
.story-item a {
    display: block;
    padding-top: 45%;
}
.story-dl {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    padding-left: 48%;
    padding-right: 5%;
}
.story-dl dt {
    position: absolute;
    left: -9999em;
}
.story-dl dd {
    margin: 0.3em 0;
}
.story-cate {
    color: #023586;
}
.story-subject {
    font-size: 1.6em;
    color: #000;
    line-height: 1.2;
}
.story-summary {
    display: none;
    font-size: 0.9em;
}
.story-img {
    position: absolute;
    left: 0;
    top: 0;
    width: 45%;
    margin: 0 !important;
    background-color: #000;
    overflow: hidden;
}
.story-img img {
    width: 100%;
    opacity: 0.7;
}
.story-img:after { /*덮는 그라디언트*/
    position: absolute;
    left: 0;
    bottom: -100%;
    width: 100%;
    height: 100%;
    content: '';
    transition: bottom 0.3s;
    /* 그라디언트 */
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 30%, rgba(0,0,0,0.6) 100%); 
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 30%,rgba(0,0,0,0.6) 100%); 
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 30%,rgba(0,0,0,0.6) 100%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
}
.story-img:hover:after {
    bottom: 0;
}
.story-inner-txt {
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    color: #fff;
    font-weight: 700;
    font-size: 1.5em;
    text-align: center;
    transform: translateY(-50%); 
    /*-19px 이동
    1.top: calc(50% - 19px);
    2.top: 50%; margin-top: -19px;
    3.top: 50%; transform: translateY(-50%); 
    */
}
.story-date {
    font-size: 0.7em;
}
/* 4. 프로모션 */
.main-promotion a {
    display: block;
}
.pm-item {
    position: relative;
    padding-top: 100%;
    margin: 40px 0;
    box-shadow: 0 0 8px rgba(0,0,0,0.2);
}

.pm-dl {
    padding: 0 16px 32px;
}
.pm-dl dt {
    position: absolute;
    left: -9999em;
}
.pm-subject {
    padding: 0.8em 0;
    font-size: 1.4em;
    line-height: 1.4;
    /* 텍스트 생략 3단 세트 */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.pm-img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    padding-top: 100%;
}
.pm-img span {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.pm-img img {
    width: 100%;
}
/* 프로모션 아이템에 그라디언트 생성 
    1. 어디에? .pm-img:after
    2. 무엇을? 부모크기, 부모덮기, 배경그라디언트, 투명
    3. 어떻게? hover했을 때 진하게 보이도록
    4. 트랜지션 지정
*/
.pm-img:after { /*덮는 그라디언트*/
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: '';
    opacity: 0;
    transition: opacity 0.3s;
    /* 그라디언트 */
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 30%, rgba(0,0,0,0.6) 100%); 
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 30%,rgba(0,0,0,0.6) 100%); 
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 30%,rgba(0,0,0,0.6) 100%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
}
.pm-img:hover:after {
    opacity: 1;
}
.pm-go {
    color: #999;
    font-size: 0.8em;
    letter-spacing: 1px;
}
/* 진행중, 종료 라벨붙이기 */
.pm-item:after {
    position: absolute;
    left: 0;
    top: 0;
    width: 68px;
    border-radius: 0 0 3px 0;
    line-height: 2.2;
    text-align: center;
    font-size: 0.85em;
    color: #fff;
}
.pm-item.on:after {
    content: '진행중';
    background-color: #023586;
}
.pm-item.off:after {
    content: '종료';
    background-color: #666;
}

/* 5. 제품 */
.pd-item {
    position: relative;
    float: left;
    display: block;
    width: 50%;
    margin-bottom: 30px;
    text-align: center;
    font-size: 0.85em;
    font-weight: 700;
}
.pd-item:before { /* 제품 이미지 */
    position: relative;
    display: block;
    width: 90%;
    padding-top: 90%;
    margin: 5%;
    margin-bottom: 7%;
    background-size: cover;
    content: '';
    z-index: 1;
}
.pd-item1:before {background-image: url('../images/thumb_prd_01.jpg');}
.pd-item2:before {background-image: url('../images/thumb_prd_02.jpg');}
.pd-item3:before {background-image: url('../images/thumb_prd_03.jpg');}
.pd-item4:before {background-image: url('../images/thumb_prd_04.jpg');}
.pd-item5:before {background-image: url('../images/thumb_prd_05.jpg');}
.pd-item6:before {background-image: url('../images/thumb_prd_06.jpg');}
.pd-item:after { /* 제품 그라디언트 */
    position: absolute;
    left: 0;
    top: 0;
    content: '';
    width: 100%;
    padding-top: 100%;
    opacity: 0;
    transition: opacity 0.3s;
    /* 그라디언트 */
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.6) 100%); 
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.6) 100%); 
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.6) 100%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
}
.pd-item:hover:after {
    opacity: 0.5;
}

/* 커뮤니티 영역(그누보드 최근게시물) */
.main-g5-container {
    background-color: #f8f8f8;
}
.main-g5-latest > div {
    background-color: transparent;
}