/*top*/
ul.link {
 margin: 0 -10px;
}
ul.link li {
 display: block;
 border-top: 1px solid #d2d2d2;
}
ul.link li:last-child {
 border-bottom: 1px solid #d2d2d2;
}
ul.link li a {
 display: block;
 position: relative;
 padding: 15px 10px;
 font-size: 16px;
 font-weight: bold;
 text-decoration: none;
 color: #3bbbb6;
}
ul.link li.void {
 display: block;
 position: relative;
 padding: 15px 10px;
 font-size: 16px;
 font-weight: bold;
 text-decoration: none;
}
ul.performance {
 margin: 0 -10px;
}
ul.performance li {
 display: block;
 border-top: 1px solid #d2d2d2;
 background: #eeeeee;
 background: -moz-linear-gradient(top, #eeeeee 0%, #ffffff 60%);
 background: -webkit-linear-gradient(top, #eeeeee 0%, #ffffff 60%);
 background: linear-gradient(to bottom, #eeeeee 0%, #ffffff 60%);
}
ul.performance li:last-child {
 border-bottom: 1px solid #d2d2d2;
}
ul.performance li a,
ul.performance.nolink li {
 display: block;
 position: relative;
 padding: 10px;
 line-height: 1.3em;
 text-decoration: none;
 color: #333;
}
ul.performance li span.title{
 display: block;
 font-size: 16px;
 font-weight: bold;
}
ul.performance li span.date{
 display: block;
 font-size: 14px;
}
ul.performance li span.site{
 display: block;
 font-size: 14px;
}
ul.performance .cNumber{
 font-size: 16px;
 white-space: nowrap;
}
ul.performance li.void {
 display: block;
 position: relative;
 padding: 15px 10px;
 font-size: 16px;
 font-weight: bold;
 text-decoration: none;
}
.void.arrowP:after,
.void.arrowG:after {
 border-color: #ccc;
}
/*pagination*/
.pagination {
 margin: 15px 0;
 text-align: center;
}
.pagination:last-child {
 margin-top: 15px;
 margin-bottom: 0;
}
.pagination span,
.pagination a {
 display: inline-block;
 width: 36px;
 margin: 0 12px 0 0;
 border: 2px solid #3bbbb6;
 border-radius: 4px;
 -webkit-border-radius: 4px;
 -moz-border-radius: 4px;
 font-size: 14px;
 font-weight: bold;
 color: #3bbbb6;
 line-height: 34px;
 text-align: center;
 text-decoration: none;
}
.pagination span:last-child,
.pagination a:last-child {
 margin-right: 0;
}
.pagination span {
 background-color: #3bbbb6;
 color: #fff;
}

/*ticket*/
.ticketCheckbox {
 margin: 0 -10px;
}
.ticketCheckbox label{
 clear: both;
 position: relative;
 display: table;
 table-layout: auto;
 width: 100%;
 padding: 10px;
 border-bottom: 1px solid #d2d2d2;
}
.ticketCheckbox label input{
 position: absolute;
 filter: alpha(opacity=0);
 -moz-opacity: 0;
 opacity: 0;
}
.ticketCheckbox label .check{
 display: table-cell;
 position: relative;
 width: 26px;
 padding: 0 15px 0 0;
 vertical-align: middle;
}
.ticketCheckbox label .check span{
 display: block;
 width: 26px;
 height: 26px;
 background-color: #3bbbb6;
 border-radius:4px;
 -webkit-border-radius:4px;
 -moz-border-radius:4px;
}
.ticketCheckbox label input[type="checkbox"]:disabled + .check span{
  background-color: #d2d2d2;
}
.ticketCheckbox label input[type="checkbox"]:checked + .check span:after{
 content: "";
 position: absolute;
 top: 50%;
 left: 5px;
 width: 14px;
 height: 8px;
 margin: -8px 0 0;
 border-top: 3px solid #fff;
 border-right:  3px solid #fff;
 transform: rotate(120deg);
 -webkit-transform: rotate(120deg);
}
.ticketCheckbox label p.icon{
 display: table-cell;
 width: 70px;
 padding: 0 15px 0 0;
 vertical-align: middle;
}
.ticketCheckbox label p.icon img{
 width: 100%;
}
.ticketCheckbox label .information{
 display: table-cell;
 font-size: 13px;
 line-height: 1.4em;
 vertical-align: middle;
}
.ticketCheckbox label .information span.title{
 width: 5.8em;
 color: #3bbbb6;
}
.ticketCheckbox label .information span{
 display: table-cell;
}
.ticketCaution{
 margin: 15px 0;
}
.ticketCaution h3{
 color: #e00;
}
.ticketCaution p{
 font-size: 13px;
}
.caluclation table {
 margin: 10px 0 15px auto;
}
.caluclation table th{
 padding: 5px 0 0;
 border-bottom: 1px solid #d2d2d2;
 font-size: 14px;
 text-align: left;
 vertical-align: middle;
}
.caluclation table td{
 padding: 5px 0 0;
 border-bottom: 1px solid #d2d2d2;
 font-size: 13px;
 vertical-align: middle;
}
.caluclation table td.triangle{
 padding: 0 10px;
}
.caluclation table td.triangle span{
 display: block;
 width: 0;
 height: 0;
 border-top: 5px solid transparent;
 border-right: 0px solid transparent;
 border-bottom: 5px solid transparent;
 border-left: 6px solid #109ad7;
}
.caluclation table td.price{
 text-align: right;
}
.caluclation table td.price.minus{
 color: #e00;
}
.caluclation table th.total,
.caluclation table td.price.total{
 font-size: 15px;
 font-weight: bold;
}
/*ticket detail*/
.condition{
 margin: 20px 0 10px;
 text-align: center;
}
.condition p{
 clear: both;
 display: inline-block;
 padding: 10px 15px;
 border: 2px solid #f64e82;
 border-radius: 4px;
 -webkit-border-radius: 4px;
 -moz-border-radius: 4px;
 font-size: 14px;
 color: #f64e82;
 text-align: center;
}

/*error404*/
#main .error404{
 margin: 10px 0 0;
 padding: 10px;
 border: 1px solid #d2d2d2;
 border-radius:6px;
 -webkit-border-radius:6px;
 -moz-border-radius:6px;
}
#main .error404 h2{
 margin: 0;
 padding: 0;
 background-color: transparent;
 color: #000;
}
#main p{
 margin: 10px 0 0;
 font-size: 14px;
}
/* colors
pink #f64e82
green #3bbbb6
*/

/* modal */
#jumping-number-alert{
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform : translate(-50%,-50%);
    transform : translate(-50%,-50%);
    width:91%;
    padding:0 5px;
    border:2px solid #aaa;
    border-radius:10px;
    background:#fff;
    z-index:2;
}
#jumping-number-alert .modal-body p{
    font-size: 12px;
}
.button_wrapper{
    text-align:center;
}
.button_wrapper button{
    background-color: #0071BC;
    margin: 5px auto;
}
#modal-overlay{
    z-index:1;
    /*display:none;*/
    position: fixed;
    top:0;
    left:0;
    width:100%;
    height:120%;
    background-color: rgba(0,0,0,0.5);
}
