@charset "utf-8";
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 100;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 200;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 300;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 400;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}
#loading{
	background: #fff;
	position: fixed;
	top:0;
	left:0;
	bottom:0;
	right:0;
	z-index: 9999;
}
::selection {
	background: #000;
	color: #fff;
}
::-moz-selection {
 background: #000;
 color:#fff;
}
* {
	outline:none;
}
html{overflow: auto!important}
body {
	font-family: "Yu Gothic", YuGothic, sans-serif;
	font-weight: 500;
	font-size: 14px;
	color: #000;
	background-color: #fff;
    overflow: hidden;
    min-width: 1200px;
}
a { color: #b12828; }
a:hover { text-decoration: none; }
.ah { transition: all .4s ease; }
.ah:hover { opacity: 0.7; }
.pc { display: block; }
.sp { display: none; }
#fullWrap{
    position: relative;
}

/* ▼HEADER▼ --------------------------------- 
-------------------------------------------------*/

header{
    background: url(../images/pc/top_img.jpg) no-repeat center top;
    height: 1134px;
    position: relative;
    z-index: 1;
}
header:before{
    content: "";
    background: url(../images/pc/r_sideimg.png) no-repeat;
    width: 107px;
    height: 722px;
    top: 244px;
    right: 0;
    position: absolute;
}
header h1{
    position: absolute;
    width: 253px;
    height: 134px;
    left: 0;
    right: 0;
    top: 400px;
    margin: auto;
}
header #topTxt{
    position: absolute;
    background: url(../images/pc/title.png) no-repeat center top;
    height: 496px;
    width: 1200px;
    left: 0;
    right: 0;
    top: 554px;
    margin: auto;
}

/* ▼CONTENTS▼ --------------------------------- 
-------------------------------------------------*/

#contWrap{
    width: 900px;
    margin: -80px auto 90px;
    position: relative;
    z-index: 2;
}
#contWrap:before{
    content: "";
    background: url(../images/pc/under_img03.png) repeat-y;
    position: absolute;
    width: 1460px;
    height: calc(100% + 90px);
    z-index: -2;
    left: -280px;
}
#contWrap:after{
    content: "";
    background: url(../images/pc/bg_ptn.png) repeat;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
}
#inWrap{
    border: 7px solid #b12828;
    padding-top: 60px;
    position: relative;
}
#inWrap > dl > dt{
    font-family: 'Noto Serif JP', serif;
    color: #b12828;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.1em;
    position: relative;
    margin-bottom: 80px;
}
#inWrap > dl > dt:before{
    content: "";
    background: url(../images/pc/under_img01.png) no-repeat;
    position: absolute;
    width: 131px;
    height: 18px;
    margin: auto;
    top: 48px;
    left: 0;
    right: 0;
}
#inWrap > dl > dd{
    margin-bottom: 60px;
    font-size: 20px;
    font-weight: bold;
    color: #000;
    text-align: center;
}
#inWrap > dl > dd ul.start{
    margin-top: 20px;
}
#inWrap > dl > dd ul#castList01{
    width: 1000px;
    margin-left: -50px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: center;
    justify-content: center;
}
#inWrap > dl > dd ul#castList02{
    width: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: center;
    justify-content: center;
}
#inWrap > dl > dd ul#castList01 li,
#inWrap > dl > dd ul#castList02 li{
    margin: 0 7px 14px;
}
.fontS{
    font-size: 14px;
}
#inWrap > dl > dt.ticket{
    color: #000;
}
#inWrap > dl > dt.ticket:before {
    content: "";
    background: url(../images/pc/under_img02.png) no-repeat;
    position: absolute;
    width: 131px;
    height: 18px;
    margin: auto;
    top: 48px;
    left: 0;
    right: 0;
}
#inWrap > dl > dd.ticketBox > h3{
    font-weight: bold;
    color: #b12828;
    margin-bottom: 36px;
}
#inWrap > dl > dd.ticketBox > p{
    margin-bottom: 60px;
}
#inWrap > dl > dd ul#ticketList{
    width: 1095px;
    margin-left: -104px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: center;
    justify-content: center;
    margin-bottom: 40px;
}
#inWrap > dl > dd ul#ticketList li{
    margin: 0 5px;
    width: 355px;
    position: relative;
    border: 2px solid #c2a120;
    background: #f5f1e1;
    box-sizing: border-box;
    padding: 34px 25px 25px;
}
#inWrap > dl > dd ul#ticketList li:before{
    content: "";
    position: absolute;
    background: url(../images/pc/list_bg_ptn.png) repeat;
    width: calc(100% - 8px);
    height: calc(100% - 8px);
    border: 1px solid #c2a120;
    z-index: 0;
    left: 3px;
    top: 3px;
}
#inWrap > dl > dd ul#ticketList li >h3{
    position: absolute;
    width: 258px;
    margin: auto;
    left: 0;
    right: 0;
    z-index: 1;
    top: -18px;
    
}
#inWrap > dl > dd ul#ticketList li > dl{
    z-index: 1;
    position: relative;
    font-size: 16px;
    text-align: left;
}
#inWrap > dl > dd ul#ticketList li > dl > dd a{
    color: #b12828 !important;
}
#inWrap > dl > dd ul#ticketList li > dl > dt:after{
    content: "：";
}
#inWrap > dl > dd ul#ticketList li > dl > dt:not(:first-of-type),
#inWrap > dl > dd ul#ticketList li > dl > dd:not(:first-of-type){
    font-size: 14px;
}
#inWrap > dl > dd ul#ticketList li > dl > dt,
#inWrap > dl > dd ul#ticketList li > dl > dd{
    float: left;
    margin-bottom: 10px;
}
#inWrap > dl > dd ul#ticketList li > dl > dd:not(:first-of-type){
    width: 216px;
}
#inWrap > dl > dd ul#ticketList li > dl > dt:not(:first-of-type){
    width: calc(100% - 216px);
}
ul#caution{
    width: 800px;
    margin: 0 auto;
    text-align: left;
    font-size: 14px;
    font-weight: 400;
}
ul#caution li{
    margin-bottom: 14px;
}
.infoBox{
    margin-bottom: 40px;
}
.infoBox > h3{
    font-weight: bold;
    color: #b12828;
    margin-bottom: 10px;
}
ul.infoList li{
    margin-bottom: 10px;
}
#sps{
    margin-bottom: 80px;
    font-weight: bold;
    text-align: center;
    font-size: 20px;
    color: #000;
}
ul#eventList li{
    margin-bottom: 20px;
}
ul#eventList li:before{
    content: url(../../images/nav_listpoint.png);
    margin-right: 8px;
    vertical-align: middle;
}
ul#eventList {
	text-align: left;
	width: 410px;
	margin: 0 auto;
}
.eventListAdd{
	text-align: left !important;
	display: block;
	margin-left: 263px;
	margin-top: 28px;
	font-size: 12px;
}

/* ▼FOOTER▼ --------------------------------- 
-------------------------------------------------*/

footer{
    background: url(../images/pc/foot_bg.jpg) no-repeat center top;
    height: 408px;
    position: relative;
}
footer:after{
    content: "";
    background: url(../images/pc/foot_bg.jpg) no-repeat center top;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 0;
}
footer #footerIn{
    width: 1200px;
    margin: 0 auto;
    position: relative;
}
footer #footerIn:before{
    content: "";
    background: url(../images/pc/foot_img.png) no-repeat;
    width: 385px;
    height: 331px;
    position: absolute;
    top: -290px;
    left: 339px;
    z-index: 1; 
    pointer-events: none;
}
footer #footerIn #backTop{
    padding-top: 70px;
    position: relative;
    z-index: 3;
}
footer #footerIn #backTop a{
    display: block;
    width: 240px;
    height: 50px;
    line-height: 50px;
    border-radius: 25px;
    border:2px solid #000;
    background: #f5f1e1;
    color: #000;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    text-decoration: none;
    margin: 0 auto 70px;
}
footer #footerIn small{
    display: block;
    text-align: center;
    font-size: 10px;
    color: #000;
    font-weight: bold;
    position: relative;
    z-index: 3;
}
#eventCaution{
    width: 356px;
    height: 50px;
    line-height: 50px;
    margin: 30px auto 0;
}
#eventCaution > a{
    display: block;
    width: 100%;
    height: 100%;
    color: #000;
    font-weight: bold;
    text-align: center;
    font-size: 16px;
    background: #fff;
    border: solid 2px #000;
    border-radius: 50px;
    text-decoration: none;
    transition: .3s ease;
}
#eventCaution > a:hover{
    background: #000;
    color: #fff;
}

/*--GOODS--*/

ul.goodsList{
    width: 986px;
    margin: 0 auto;
    margin-left: -50px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
ul.goodsList li{
    margin-right: 31px;
    margin-bottom: 31px;
}
ul.goodsList li:nth-child(3n){
    margin-right: 0;
}
#goodsModal{
    position: fixed;
    overflow-y: scroll;
    z-index: 14000;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: #b12828;
    min-width: 1200px;
    -webkit-overflow-scrolling: touch;
    display: none;
}
#goodsModalIn{
    min-height: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    width: 1022px;
    position: relative;
}
.goodsDetail{
    padding: 20px 0;
    display: none;
}
.goodsDetail > h3{
    background: #e3c314;
    width: 100%;
    height: 64px;
    border-radius: 32px;
    text-align: center;
    line-height: 64px;
    font-size: 24px;
    font-weight: bold;
    color: #b12828;
    margin-bottom: 54px;
}
.imgArea{
    float: left;
    text-align: left;
    width: 428px;
}
.txtArea{
    float: right;
    width: calc(100% - 468px);
    text-align: left;
    color: #fff;
    font-size: 16px;
    line-height: 38px;
    margin-top: -10px;
}
.closeBtn {
    width: 83px;
    height: 83px;
    margin: 20px auto 0;
}
.closeBtn a{
    display: block;
    width: 100%;
    height: 100%;
}
.goodsCaution{
    text-align: left;
}
.goodsCaution > section:first-of-type{
    text-align: center;
    margin-bottom: 50px;
}
.goodsCaution > section:last-of-type{
    width: 800px;
    margin: 0 auto;
}
.goodsCaution > section:last-of-type > ul li{
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 14px;
}
.goodsCaution > section:last-of-type > h3{
    font-weight: 16px;
    margin-bottom: 10px;
}
.goodsCaution > section > h3{
    color: #b12828;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 18px;
}
.goodsCaution > section > p{
    font-weight: bold;
    font-size: 20px;
}