@charset "utf-8";

.square_left.w100{
  width: 100% !important;
}

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

.sched-all{
  width: 24% !important;
  margin-right:1% !important;
}
}
/* カレンダー */
.event-calendar-warp{
  margin-left: 10px;
}

.event-calendar {
  background-color: white;
  border-radius: 16px;
  padding: 12px 0;
  position: relative;
  max-width: 356px;
}

.event-calendar table{
  border-collapse: collapse;
  border-spacing: 0;
  color: #616161;
  font-size: 16px;
  text-align: center;
  border: none;
  table-layout: fixed; 
  word-wrap: break-word;
  width: 300px;
  margin-left: 30px;
}

.event-calendar table tr,
.event-calendar table th,
.event-calendar table td{
  border: none;
  padding: 0;
  overflow: hidden;
  font-weight: bold;
}

.event-calendar .title{
  font-size: 19px;
  font-weight: bold;
}

.event-calendar .week td{
  padding: 0;
  width: 42px;
}

.event-calendar .day td:first-child a,
.event-calendar .week td:first-child{
  color: #B4302F;
}
.event-calendar .day td:last-child a,
.event-calendar .week td:last-child{
  color: #186EB3;
}

.event-calendar .day td > span{
  display: inline-block;
  background-color: #E7DEBB;
  border-radius: 17px;
  width: 32px;
  height: 32px;
  line-height: 32px;
  vertical-align: middle;
}


.event-calendar .day span.none{
  background-color: #F5F1DF;  /* none */
}
.event-calendar .day span.e01{
  background-color: #E7DEBB;
}
.event-calendar .day span.e02{
  background-color: #DCDBDC;
}
.event-calendar .day span.e03{
  background-color: #F6B176;
}
.event-calendar .day span.e04{
  background-color: #BED7E5;
}
.event-calendar .day span.e05{
  background-color: #E6C9D6;
}


.event-calendar .day td a{
  display: block;
}
.event-calendar .day td{
  padding: 0;
  text-align: center;
  width: 42px;
  height: 42px;
  max-width: 42px;
  max-height: 42px;
  vertical-align: middle;
}

.event-calendar p{
  font-size: 14px !important;
  font-feature-settings : "palt";
  padding-left:calc(1em + 14px)  !important;
  text-indent:-1em;
  line-height: 1.2em !important;
  margin-bottom: 4px !important;
}

.event-calendar .c05:before,
.event-calendar .c04:before,
.event-calendar .c03:before,
.event-calendar .c02:before,
.event-calendar .c01:before{
  content: "";
  position: relative;
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 8px;
  left: 0;
  top:2px;
  margin-right: 4px;
}
.event-calendar .c01:before{
  background-color: #E7DEBB;
}
.event-calendar .c02:before{
  background-color: #DCDBDC;
}
.event-calendar .c03:before{
  background-color: #F6B176;
}
.event-calendar .c04:before{
  background-color: #BED7E5;
}
.event-calendar .c05:before{
  background-color: #E6C9D6;
}

.event-calendar .c-red{
  color: #C11921;
}

#calendar-next{
  position: absolute;
  top:10px;
  right: 14px;
  
}

#calendar-prev{
  position: absolute;
  top:10px;
  left: 14px;
}

#calendar-next:hover,
#calendar-prev:hover{
  opacity: 0.7;
}



/* イベント詳細 */
.event-single{
  max-width: 1100px; /* 1060 + 20 + 20*/
  margin: 0 auto;
  padding: 50px 20px 0;
}
.event-single .entry-title{
  font-size: 24px !important;
}
.event-single .event-date{
  font-size: 18px;
}
.event-single .main-img img{
/*  width: 100%;*/
}

.event-single table{
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 16px;
  
}
.event-single table tr{
  border: 1px solid black;;
  margin-bottom: 8px;
}
.event-single table td{
  min-height: 32px;
  padding:5px 20px;
}
.event-single table th{
  background-color: #DBD9D9;
  width: 178px;
  min-width: 178px;
  font-weight: normal;
  border-right: 1px solid black;;
  padding:5px 20px 5px 38px;
}

.event-single .category-list > p{
  margin-bottom: 0;
}


.event-single  .btn-top{
  text-align: center;
}


/* スケジュール */
/* 画像サイズが未定なので、トリミングする */
.schedule-box .sched_left .img{ 
  width:100%; 
  height: 0;
  padding-top: 59.5745%; 
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* 文字数でレイアウトが崩れるので、最低高さを入れる */
.schedule-box{
  min-height: 285px;  
}

.sp-calendar-event { margin-top:30px;}

.sp-calendar-event .schedule-box{
  min-height: auto;
}
.sp-calendar-event .schedule-box .img{
  width:180px; 
  height:180px; 
  background-size: cover;
}

.title-previous{
  border-bottom: 1px solid #e30617;
  padding-bottom: 25px;
  margin-bottom: 10px;
}

.btn-previous{
  text-align: right;  
}


.page-previous li{
  margin-left: 1em;
  color: #e30617;
}

.page-previous h5{
  font-size: 16px;
}


.swiper-container-autoheight .swiper-wrapper {
}
.swiper-slide{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content:flex-start;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;  
}

.more-pc-all { padding:3px; font-size:1.2em; text-align:center; font-weight:bold; border:1px solid #d12426; background-color:#d12426;
border-radius: 10px;        /* CSS3草案 */  
    -webkit-border-radius: 10px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 10px;   /* Firefox用 */  }

.more-pc-all a{ color:#FFFFFF;}

@media screen and (min-width : 751px) {
 .schedule-box.pc_more{
  display: none;
}
}

@media screen and (max-width : 750px) {
.free-contents img{
  width: 100%;
  height:auto;
}

.event-single .main-img img{
  width: 100%;
}

.more{
  width: 100%;
  display: block;
}

 .schedule-box.sp_more{
  display: none;
}

.schedule-box{
  min-height: auto;  
  display: block;
  overflow: hidden;
}


/*
.swiper-wrapper .swiper-slide > div:nth-child(n+7){
  display: none;
}

.swiper-wrapper .swiper-slide.active > div:nth-child(n+7){
  display: block;

}
*/
/* 左右の高さを合わせるためflexに変更 50% 50% */
.front-page.square_right,
.front-page .swiper-slide{
  display: -webkit-flex;
  display: flex;
  /* 
  -webkit-align-items:flex-start;
  align-items:flex-start;
  */
  -webkit-justify-content: space-between;
  justify-content:space-between;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  

}



.sp-calendar-event .schedule-box .img{
  width:100%; 
  height: 24vw !important;
  background-size: cover;
}


.front-page .schedule-box .img{ 
  padding-top: 59.5745%; 
}

.front-page .schedule-box{
  float: none !important;
  width: calc(50% - 5px) !important;
  margin: 0 !important;
  padding:0%; margin-right:1%; margin-left:1%; float:left; margin-bottom:2.5% !important;  
}

.schedule-box .cate{
  width: 17vw;
}




/* sp イベント詳細 */
.event-single table{
  width: 100%;
  border: 1px solid black;;
  border-bottom: none;
}

.event-single table th,
.event-single table td,
.event-single table tr{
  display: block;
  width: 100%;
  border: none;
  
  
}
.event-single table tr{
  margin-bottom: 0;
}

.event-single table td,
.event-single table th{
  border-bottom: 1px solid black;;
  padding:10px 20px;
}

.event-single table td:last-child{
}



.event-single{
  padding-left: 3.99999999vw !important;
  padding-right: 3.99999999vw !important;
}


/* sp カレンダー */
.sp-calendar .calendar-title{
  width: 100% !important;

}
.sp-calendar .event-calendar table{
  width: 74.66666648vw;
  margin: 0;
  margin-left: 3.333333325vw;
  font-size: 3.199999992vw;
  margin-bottom: 1.599999996vw;
}

.sp-calendar{
  background-color: #F2EDD2;
  overflow: hidden;
  padding: 0 7.99999998vw 6.66666665vw;
}

.sp-calendar .event-calendar-warp{
  margin: 0;
}

.sp-calendar .event-calendar {
  max-width: 100%;;
}

.sp-calendar .event-calendar .title{
  font-size: 3.733333324vw;
}

.sp-calendar .event-calendar .week td{
  width: 10.13333331vw;
}

.sp-calendar .event-calendar .day td > span{
  border-radius: 3.99999999vw;
  width: 7.99999998vw;
  height: 7.99999998vw;
  line-height: 7.99999998vw;
}


.sp-calendar .event-calendar .day td{
  width: 10.13333331vw;
  height: 10.13333331vw;
  max-width: 10.13333331vw;
  max-height: 10.13333331vw;
}

.sp-calendar .event-calendar p{
  font-size: 3.199999992vw !important;
  padding-left:calc(1em + 3.199999992vw)  !important;
  text-indent:-1em;
  line-height: 1.6em !important;
  margin-bottom: 4px !important;
}

.sp-calendar .event-calendar .c05:before,
.sp-calendar .event-calendar .c04:before,
.sp-calendar .event-calendar .c03:before,
.sp-calendar .event-calendar .c02:before,
.sp-calendar .event-calendar .c01:before{
  content: "";
  position: relative;
  display: inline-block;
  width: 3.99999999vw;
  height: 3.99999999vw;
  border-radius: 1.999999995vw;
  left: 0;
  top:0.799999998vw;
  margin-right: 0.533333332vw;
}

.sp-calendar #calendar-next{
  position: absolute;
  top:2.133333328vw;
  right: 2.133333328vw;
}

.sp-calendar #calendar-prev{
  
  position: absolute;
  top:2.133333328vw;
  left: 2.133333328vw;
}

.sp-calendar #calendar-prev img,
.sp-calendar #calendar-next img{
  width: 6.66666665vw;
}

#container{
  overflow: hidden;
}
.more-pc-all{
  display: none;
}

}