/* header */
#header
{
    position:fixed;
    width:100%;
    top:0;
    z-index:-1;
}
#header img
{
    width:100%;
}

/* contents */
#contents
{
    visibility:hidden;
}

/* main visual slider */
#main-visual-slider
{
    width:100%;
    height:680px;
    background:#000000;
}
#main-visual-slider .cell
{
    width:1000px;
    height:500px;
    margin-bottom:180px;
}
#main-visual-slider .cell .date
{
    visibility:hidden;
    position:absolute;
    top:516px;
    left:10px;
    font-size:16px;
    line-height:1em;
    color:#FFFFFF;
}
#main-visual-slider .cell.is-selected .date
{
    visibility:visible;
}
#main-visual-slider .cell img
{
    width:100%;
    height:100%;
}
#main-visual-slider .cell .title
{
    visibility:hidden;
    position:absolute;
    top:540px;
    left:10px;
    font-size:30px;
    font-weight:bold;
    line-height:1em;
    color:#FFFFFF;
}
#main-visual-slider .cell.is-selected .title
{
    visibility:visible;
}
#main-visual-slider .cell .copyrights
{
    visibility:hidden;
    position:absolute;
    top:512px;
    right:10px;
    max-width:640px;
    overflow-wrap:break-word;
    font-size:14px;
    line-height:1em;
    color:#FFFFFF;
}
#main-visual-slider .cell.is-selected .copyrights
{
    visibility:visible;
}
#main-visual-slider .flickity-page-dots
{
    bottom:30px;
}
#main-visual-slider .flickity-page-dots .dot
{
    width:10px;
    height:10px;
    margin:0 20px;
    background:#FFFFFF;
    opacity:1;
}
#main-visual-slider .flickity-page-dots .dot.is-selected
{
    background:#90C70D;
}

/* CAMPAIGN */
#main-campain-bg
{
    /* height:513px; */
    background:#7D7D7D;
}
#main-campain
{
    width:1440px;
    margin:0 auto;
}
#main-campain h1
{
    position:relative;
    left:30px;
    margin:0;
    padding:0;
    font-size:30px;
    font-weight:bold;
    letter-spacing:0;
    line-height:4em;
    color:#FFFFFF;
}
#main-campain-carousel-navigation
{
    position:relative;
    height:113px;
}
#main-campain-carousel-navigation .link-more
{
    position:absolute;
    top:52px;
    right:229px;
    display:flex;
}
#main-campain-carousel-navigation .link-more .line
{
    margin-top:10px;
    margin-right:10px;
    width:50px;
    height:1px;
    background:#FFFFFF;
}
#main-campain-carousel-navigation .link-more a
{
    font-size:14px;
    text-decoration:none;
    color:#FFFFFF;
}
#main-campain-carousel-button
{
    width:154px;
    position:absolute;
    top:42px;
    right:50px;
}
#main-campain-carousel-button button
{
    background-color:transparent;
    border:none;
    cursor:pointer;
    outline:none;
    padding:0;
    appearance:none;
    font-size:34px;
    font-family:'Font Awesome 5 Free';
    font-weight:900;
    color: #FFFFFF;
}
#main-campain-carousel-button button:last-of-type
{
    position:relative;
    left:107px;
}
#main-campain-carousel-previous::before
{
    content:'\f053';
}
#main-campain-carousel-next::before
{
    content:'\f054';
}
#main-campain-carousel.flex-box
{
    display:flex;
}
#main-campain-carousel .cell
{
    position:relative;
    width:200px;
    height:283px;
    margin:0 11px;
    //background:#FFFFFF;
}
#main-campain-carousel .cell .contents
{
    position:absolute;
    left:10px;
    bottom:0;
}
#main-campain-carousel .cell img
{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* NEW RELEASE */
#main-new-release-bg
{
    height:737px;
    background:#FFFFFF;
}
#main-new-release
{
    width:1440px;
    margin:0 auto;
}
#main-new-release h1
{
    position:relative;
    left:30px;
    margin:0;
    padding:0;
    font-size:30px;
    font-weight:bold;
    letter-spacing:0;
    line-height:4em;
    color:#000000;
}
#main-new-release-navigation
{
    position:relative;
    height:107px;
}
#main-new-release-carousel-button
{
    width:154px;
    position:absolute;
    top:42px;
    right:50px;
}
#main-new-release-carousel-button button
{
    background-color:transparent;
    border:none;
    cursor:pointer;
    outline:none;
    padding:0;
    appearance:none;
    font-size:34px;
    font-family:'Font Awesome 5 Free';
    font-weight:900;
}
#main-new-release-carousel-button button:last-of-type 
{
    position:relative;
    left:107px;
}
#main-new-release-carousel-previous::before
{
    content:'\f053';
}
#main-new-release-carousel-next::before
{
    content:'\f054';
}
#main-new-release-carousel.flex-box
{
    display:flex;
}
#main-new-release-carousel a
{
    text-decoration:none;
}
#main-new-release-carousel .cell
{
    width:234px;
    height:331px;
    margin:0 5px;
    background:#FFFFFF;
}
#main-new-release-carousel img 
{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* 広告バナー */
#banner-carousel
{
    position: relative;
    width: 1440px;
    height: 120px;
    margin: 0px auto;
    padding: 25px 0px 0px;
    background: #7D7D7D;
    justify-content: center;
}
#banner-carousel.flex-box
{
    display:flex;
}
#banner-carousel a
{
    width: 288px;
    height: 72px;
}
#banner-carousel .cell
{
    width: 288px;
    height: 72px;
}
#banner-carousel img 
{
    width: 98%;
    height: 98%;
    margin: 0px 1%;
    object-fit: contain;
}
#banner-carousel .flickity-page-dots
{
    bottom: 15px;
}
#banner-carousel .flickity-page-dots .dot
{
    width:10px;
    height:10px;
    margin:0 20px;
    background:#000000;
    opacity:1;
}
#banner-carousel .flickity-page-dots .dot.is-selected
{
    background: #90C70D;
}