@charset "UTF-8";

.pc {
    display: none;
}
.sp {
    display: block;
}
.row .inner {
  padding: 0;
}
.pageTitleContainer .inner {
  padding: 20px;
}

.ticketTitle {
	margin: 30px;
}
.ticketTitle .titleText {
	font-size: 5vw;
}
.ticketTitle .titleText span {
	font-size: 8vw;
}
.ticketTitle .titleDate {
	font-size: 4vw;
	width: auto;
}

.ticketInfoBox,
.ticketInfoBox#dayTicket {
    width: 100%;
    margin: 0 0 20px;
    padding: 0;
    border: none;
    float: none;
}

.ticketInfo {
    width: 90%;
    margin: 0 auto;
}

.ticketPrice {
  width: 100%;
  margin-bottom: 20px;
}
.ticketPrice .inner{
  padding: 10px;
}
.ticketPrice h3 {
  font-size: 2.4rem;
  margin: 10px 0 20px;
}
.ticketPrice .price{
  font-size: 5rem;
  margin-bottom: 15px;
}
.ticketPrice .price span{
  font-size: 3rem;
}
.ticketPrice .limit{
  font-size: 1.6rem;
  line-height: 1;
}
.ticketContent .inner .ticketPrice a{
  color: #333;
  text-decoration: none;
}

/* インターネットで電子チケットを購入する */
.denshi .innerCont {
	width:100%;
}
.denshi .innerCont p span {
	display: inline-block;
	margin-bottom: 10px;
}
.denshi .innerCont p {
	height: auto;
}

#advanceTicket .price:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 14px;
    margin-top: -6px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #FFF834;
    border-right: 2px solid #FFF834;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

.free{
	font-size: 5vw;
}

.advanceInfoTitle {
    font-size: 22px;
    letter-spacing: 0;
    padding: 27px 0 25px 24px;
}
.advanceInfoTitle span:before {
    background-size: 50%;
    left: -54px;
    top: -35px;
    margin: 0;
}

.advanceInfoWrap{
  margin-top: -5px;
  padding-top: 5px;
}

.advanceInfoBox {
    width: 90%;
    padding: 20px 15px;
    border-radius: 10px;
    margin: 20px auto 0;
}

.advanceInfoBoxTitle {
    text-align: left;
    line-height: 1.3;
    padding: 0 0 10px 75px;
    font-size: 20px;
}
.advanceInfoBoxTitle br {
    display: block;
}

#advance01 .advanceInfoBoxTitle {
    background: url(../../images/ticket/flow01.png) no-repeat left top;
    background-size: 65px auto;
}
#advance02 .advanceInfoBoxTitle {
    background: url(../../images/ticket/flow02.png) no-repeat left top;
    background-size: 65px auto;
}
#advance03 .advanceInfoBoxTitle {
    background: url(../../images/ticket/flow03.png) no-repeat left top;
    background-size: 65px auto;
}

@media screen and (max-width: 410px) {
    .advanceInfoBoxTitle br {
        display: none;
    }
}

.advanceInfoBox#advance01:before,
.advanceInfoBox#advance02:before,
.advanceInfoBox#advance03:before {
    display: none;
}

.advanceInfoBoxNote {
  width: calc(100% + 75px);
  box-sizing: border-box;
  margin-left: -75px;
  padding: 5px 10px;
  line-height: 1.5;
}

.advanceInfoBoxSubTitle span {
  width: 100%;
  font-size: 16px;
  line-height: 1.5;
  padding: 5px 10px;
  box-sizing: border-box;
}

.passMarketBox {
    text-align: center;
    padding: 20px 15px;
}
.passMarketBox img {
    float: none;
}
.passMarketText {
    float: none;
    width: 100%;
    letter-spacing: 0;
    text-align: left;
    margin: 15px auto 0;
}

.advanceInfoBoxInner {
    display: block;
}
.innerCont,
#advance02 .innerCont {
    width: 100%;
    height: auto;
    padding: 20px;
    margin: 0 auto 20px;
}

.innerCont a.detailLink,
.innerCont a.commissionLink {
    position: static;
}

.innerCont a.buyBtn,
.passMarketText a.buyBtn {
    position: static;
    width: 70%;
    margin: 15px auto 0;
    display: block;
}

.attentBox {
    width: 90%;
    margin: 20px auto;
    padding: 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}
.attentBox p {
    width: 100%;
    line-height: 1.5em;
}
.ticketContent .inner .attentBox a {
    letter-spacing: 0;
    text-indent: 0;
    font-size: 15px;
    height: auto;
    padding: 10px 30px 10px 10px;
    text-align: left;
    width: 100%;
    line-height: 1.3;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}

.fee:after{
    top: 5px;
    left: 5px;
}

.registrationBox {
  padding: 20px 15px;
  margin-bottom: 40px;
}
.registrationBox .title {
  font-size: 20px;
  line-height: 1.5;
}
.registrationBox .text {
  text-align: left;
  margin-top: 10px;
}
.registrationBox .registrationLink {
  margin-top: 15px;
}
.registrationBox .buttonLink {
  width: 100%;
  font-size: 14px;
  box-sizing: border-box;
}
