@charset "utf-8";

/* CSS Document */

body {
    background: #000;
}


/*BLACK BG*/

#event,
#info,
#ranking,
#shop {
    background: rgba(1, 1, 1, 0.5);
}

#top {
    background-size: cover;
    height: 75vh;
    position: relative;
    text-align: center;
    z-index: 0;
    /*-1*/
}

#top_logo {
    padding: 10% 0;
}


/*SPECIAL*/

#special {
    background: url(/img/bg_special.jpg) repeat-x left top;
    /*height: 440px;
	margin-top: -120px;*/
    padding: 2% 0 8%;
}

#special ul {
    margin: auto;
    max-width: 1300px;
    padding: 0 2%;
}

#special ul li {}

#special ul li.slick-slide {}

.slider-for .slick-slide {
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out;
}

.slick-prev::before,
.slick-next::before {
    /*color: black;*/
    font-size: 24px;
}

.slick-next {
    right: 0.5%;
}

.slick-prev {
    left: 0.5%;
    z-index: 5000;
}

.slick-slide img {
    width: 100%;
}


/* RANKING */

#ranking {
    margin: 0;
    padding: 4% 0;
    /*background:url("/img/bg_content.png") repeat;*/
}

#ranking .ttl {
    color: #fff;
}

#ranking li {
    float: left;
    width: 50%;
    position: relative;
    overflow: hidden;
}

#ranking li.rankHigher {
    /*1～3位*/
    width: 100%;
}

#ranking li img {
    width: 100%;
}

#ranking li article {
    padding: 2% 0;
    position: relative;
    text-align: center;
    width: 100%;
    background-size: cover;
    /*position:absolute;
  top:25%;
  left:0;
  width:100%;
  text-align: center;*/
}

#ranking li article .rank_type {
    font-size: 1rem;
    text-align: center;
}

#ranking li article .rank_type img {
    width: 50px;
    display: block;
    margin: auto;
}

#ranking li article h3 {
    font-size: 2rem;
    letter-spacing: -0.1em;
}

#ranking li figcaption {
    width: 98%;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 1%;
    background: rgba(1, 1, 1, 0.7);
}

#ranking li figcaption .rank {
    float: left;
    width: 40%;
    font-size: 3rem;
    font-style: italic;
    line-height: 1;
}

#ranking li figcaption h4 {
    float: right;
    width: 60%;
    text-align: center;
    font-size: 1.8rem;
    line-height: 1.2;
}

#ranking li figcaption h4 span {
    font-size: 0.8rem;
    display: block;
    color: #ccc;
}

.blkbg_fontcolor {
    color: #fff;
}

#ranking .subrank li article {
    position: relative;
    width: 100%;
    text-align: center;
    background-size: cover;
    padding-top: 2%;
}


/*EVENT*/


/*shop ver as NEWS*/

#event {
    text-align: center;
    /*background:
		url(/img/bg_content.png) repeat left top;
	position: relative;*/
    padding: 4% 0 5%;
    /*border-top:#fff 1px solid;*/
    color: #fff;
}

#event .sub {
    background: url("/img/bg_content.png") repeat-x center bottom;
    display: inline-block;
    font-family: "Anton", sans-serif;
    font-size: 1.23rem;
}

#event .ph {
    max-width: 1100px;
    margin: auto;
}

#event .ph img {
    width: 100%;
}

#top #event .comment {
    padding: 0 1%;
}

#maincon #event .comment {
    /*コンテンツページでの表示*/
    padding-bottom: 3%;
    border-bottom: 1px solid #555;
    margin-bottom: 3%;
}

#event .day {
    display: none;
    /*
    display: inline-block;
    font-size: 1.2rem;
    letter-spacing: 0;
    line-height: 1.3;
    margin: 2% auto 3%;
    padding: 5px 0 10px;
    position: relative;
    text-align: center;
    */
}

#event .day:after {
    background: #C3A269 none repeat scroll 0 0;
    bottom: -1px;
    content: "";
    height: 1px;
    left: 25%;
    position: absolute;
    width: 50%;
}

#event .title {
    font-size: 2.4rem;
    margin-bottom: 2%;
    font-weight: bold;
}

#event .title span {
    font-size: 1.1rem;
    display: block;
    font-weight: normal;
}


/*INFORMATION*/

#info {
    /*background-color: #FFF;*/
    padding: 4% 0;
    color: #fff;
}

#info dl {
    text-align: left;
    margin: 0 auto;
    padding: 1.5% 1%;
    border-bottom: 1px solid #555;
    max-width: 980px;
    overflow: hidden;
    font-size: 1rem;
    transition: all 0.3s ease-in-out 0s;
}

#info dl a {
    text-decoration: none;
    color: #fff;
}

#info dt {
    float: left;
}

#info dd span img {
    margin-right: 30px;
    width: 40px;
    vertical-align: middle;
}

#info dd {
    padding: 0 0 0 40px;
    /*  text-overflow: ellipsis;
  white-space: nowrap;*/
    overflow: hidden;
}

#info dl:hover {
    /*background-color:#F8F8F8;*/
}


/*SHOP*/

#shop {
    text-align: center;
    /*background-color:#fff;*/
    padding: 4% 0 5%;
    color: #fff;
}

#shop .sub {
    background: url("/img/sub_bg") repeat-x center bottom;
    display: inline-block;
    font-family: "Anton", sans-serif;
    font-size: 1.23rem;
}

#shop .comment {
    padding: 2% 0 3%;
}

#shop ul {
    width: 98%;
    max-width: 1300px;
    margin: auto;
}

#shop li {
    /*display: inline-block;*/
    float: left;
    width: 20%;
    height: 400px;
    margin: 0%;
    overflow: hidden;
}

#shop li a {}

#shop li img {
    max-width: 300px;
    width: 100%;
}

#shop li figure {
    position: relative;
}

#shop li figure .shoplogo {
    position: absolute;
    top: 30%;
    left: 10%;
    width: 80%;
    display: none;
}

.menu_book img {
    width: 100%;
    margin-bottom: 10px;
}

.menu_book {
    max-width: 720px;
}

@media screen and (max-width: 768px) {
    .menu_book img {
        width: 100%;
    }
}

@media screen and (min-width: 1420px) {}

@media screen and (max-width: 1280px) {}

@media screen and (max-width: 960px) {}

@media screen and (max-width: 768px) {
    /*#header #logo {
		width: 70%;
	}*/
    #top_logo {
        padding: 35% 0;
    }
    #top_logo img {
        width: 98%;
    }
    #special {
        padding: 4% 0 8%;
    }
    #ranking {
        padding: 10% 0;
    }
    #ranking li {
        float: none;
        width: 100%;
    }
    #ranking li article .rank_type {
        font-size: 0.8rem;
    }
    #ranking li article .rank_type img {
        width: 30px;
    }
    #ranking li article h3 {
        font-size: 1.5rem;
    }
    #ranking li figcaption .rank {
        font-size: 2rem;
    }
    #ranking li figcaption h4 {
        font-size: 1.3rem;
    }
    #ranking li figcaption h4 span {
        font-size: 0.6rem;
    }
    /*EVENT*/
    #event {
        margin: 0;
        padding: 4% 0 10%;
    }
    #event .day {
        font-size: 0.9rem;
    }
    #event .ph {
        width: 94%;
        padding: 3%;
    }
    #event .title {
        font-size: 1.6rem;
        margin-bottom: 3%;
        text-align: left;
        line-height: 1.3;
    }
    #event .title span {
        font-size: 0.9rem;
    }
    #event .comment {
        text-align: left;
        font-size: 0.9rem;
    }
    #info {
        padding: 10% 0;
    }
    #info h2 {
        font-size: 2rem;
    }
    #info dl {
        width: auto;
        padding: 3% 2%;
        font-size: 0.83rem;
    }
    #info dl:last-of-type {
        /*border:none;*/
    }
    #info dt {
        float: none;
        font-size: 0.6rem;
    }
    #info dd {
        padding: 0 0 0 0;
    }
    #info dd span img {
        margin-right: 20px;
        width: 40px;
        vertical-align: middle;
    }
    #shop {
        padding: 10% 0;
    }
    #shop ul {
        width: 98%;
    }
    #shop li {
        display: inline-block;
        float: none;
        margin: 1%;
        width: 30%;
        height: auto;
        overflow: hidden;
        height: 200px;
    }
    .moved figure {
        width: auto;
        height: auto;
    }
    #shop li img {
        width: 100%;
        vertical-align: top;
    }
    /*#shop li:nth-child(5), #shop li:nth-child(6) {
		display:none;
	}*/
    #shop .moved figcaption .title {
        display: none;
        /*
        opacity: 1;
        bottom: 40%;
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        transform: translateY(-30px);
        font-size: 1rem;
        */
    }
    #shop .moved figcaption .txt {
        display: none;
    }
    #shop .moved figure img {
        opacity: .4;
    }
    #shop .moved figure:hover img {
        opacity: 1;
    }
}

@media screen and (max-width: 480px) {
    #shop li {
        height: 150px;
    }
}