@charset "utf-8";
/* ---------------------------
チケット料金表
-------------------------------*/
.tickets .heading{
  color: #fff;
}
.tickets .notes-wrap:first-of-type{
  margin-bottom:0%;
}
.tickets .notes-wrap dd .box{
  border:0 none;
  margin-top:0;
}


.sample  {
    table-layout:   fixed;
}

.tickets .notes-wrap dd table{
  border-collapse: collapse;
  width: 100%;
  margin:4% 0;
}
.tickets .notes-wrap dd table tr{
  border:1px solid #005557;
}
.tickets .notes-wrap dd table tr th,
.tickets .notes-wrap dd table tr td{
  padding:4%;
  line-height: 1.7;
}
.tickets .notes-wrap dd table tr th{
  background: #d9e7e8;
  width:25%;
  border-right:1px solid #005557;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: left;
  text-align: center;
}

.tickets .notes-wrap dd table tr th.pink{
  background: #ffc1ff;
}

.tickets .notes-wrap dd table tr th.blue{
  background: #c1e0ff;
}

.tickets .notes-wrap dd table tr th span{
  font-size: 1.2rem;
  font-weight: normal;
  margin-left:0.5em;
}
.tickets .notes-wrap dd table tr td{
  font-size: 1.6rem;
  font-weight: bold;
  background: #fff;
  border-right:1px solid #005557;
  width:25%;
  text-align: right;
}
.tickets .notes-wrap dd table tr td:first-of-type{
  font-weight: bold;
  text-align: center;
}
.tickets .notes-wrap dd table tr td.price span{
  font-size: 2rem;
  font-weight: bold;
}
.tickets .btn{
  display: flex;
  justify-content: center;
  align-items: center;
  width:100%;
  margin: 6% auto 0;
}
.tickets .btn img{
  width: 22px;
  margin-right:10px;
}
.tickets .btn::after{
  transform: rotate(135deg);
}
@media screen and (max-width:600px) {
  .tickets .notes-wrap dd table tr th{
    font-size: 1.1rem;
  }
  .tickets .notes-wrap dd table tr th span{
    font-size: 1rem;
    margin-left:3px;
  }
  .tickets .notes-wrap dd table tr td{
    font-size: 1.1rem;
  }
  .tickets .notes-wrap dd table tr td.price span{
    font-size: 1.6rem;
  }
  .tickets .btn img{
    width: 17px;
  }
}
/* ---------------------------
スペシャルチケット
-------------------------------*/
.special-ticket{
  border-top:1px solid #fff;
  margin:0 4%;
}
.special-ticket .heading{
  color: #fff;
}
.special-ticket figure figcaption{
  color: #fff;
  text-align: center;
  line-height: 1.7;
  margin-top:2%;
}
/* ---------------------------
カレンダー
-------------------------------*/
.calendar{
  background-image: none;
  background: #fff;
}
.calendar .ifram-wrap,
.calendar .ifram-wrap iframe {
  width: 100%;
}
.calendar .ifram-wrap{
  margin-bottom:2%;
}
.calendar .month-ttl{
  background: #008b92;
  padding:2% 4%;
  position: relative;
}
.calendar .month-ttl h3{
  font-weight: bold;
  color: #fff;
  text-align: center;
}
.calendar .month-ttl h3 span{
  font-weight: bold;
  font-size: 2.4rem;
}
.calendar .month-ttl .arrow{
  display: block;
  width: 10px;
  height: 10px;
  border: 2px solid;
  border-color: #fff #fff transparent transparent;
  position: absolute;
}
.calendar .month-ttl .arrow.pre{
  transform: rotate(225deg);
  top:0;
  bottom:0;
  margin:auto;
  left:4%;
}
.calendar .month-ttl .arrow.next{
  transform: rotate(45deg);
  top:0;
  bottom:0;
  margin:auto;
  right:4%;
}
.calendar table{
  width:100%;
  height: 100%;
  border-collapse: collapse;
}
.calendar table tr{
  border: 1px solid #dedede;
}
.calendar table tr th,
.calendar table tr td{
  padding: 2% 1%;
  text-align: center;
}
.calendar table tr th:not(:last-of-type),
.calendar table tr td:not(:last-of-type){
  border-right:1px solid #dedede;
}
.calendar table tr th:first-of-type .day,
.calendar table tr td:first-of-type .day{
  color: #e92e2e;
}
.calendar table tr th:nth-of-type(7) .day,
.calendar table tr td:nth-of-type(7) .day{
  color: #2d65e8;
}
.calendar table tr th{
  background: #f5f5f5;
  text-align: center;
}
.calendar table tr td{
  background: #fff;
  height: 150px;
}
.calendar table tr td.no-month{
  opacity: 0.25;
}
.calendar table tr td.high-season{
  background: #d9e7e8;
}
.calendar table tr td span{
  display: block;
  margin: 0.5em 0 1em;
}
@media screen and (max-width:600px) {
  .calendar table tr th,
  .calendar table tr td{
    font-size: 1rem;
  }
  .calendar table tr td{
    height:60px;
  }
}