/*
 Theme Name:   Heavens 
 Author:       Chika Kashima
*/
@charset "UTF-8";

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

* {
  margin: 0px;
  padding: 0px;
}

html,
body {
  padding: 0;
  margin: 0;
}

body {
  font-family: Raleway, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 16px;
  background: #fff;
}
img {
  max-width: 100%;
  height: auto;
}
ul,
ol {
  list-style: none;
  color: #fff;
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  text-decoration: none;
}
/* 画面全体の設定 */
#loader_wrap {
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100vw;
  height: 100vh;
  top: 0;
  background: #fff;
  }
  /* ローディングアニメーションの設定 */
  .loader {
  width: 150px;
  height: 150px;
  background: url(/img/dog/jpg) no-repeat;
  opacity: 0;
  animation: blink 1.5s infinite linear;
  }
  
  @keyframes blink {
  50% {
  opacity: 1;
  }
  }
  
  /* ローディング終了後 */
  .loaded {
  opacity: 0;
  visibility: hidden;
  }
@media(min-width:768px){
  .is-sp{
    display: none;
  }
}
@media (max-width:767px){
  .is-pc {
    display: none;
  }
}


header {
  background-color: #fff;
  height: 100px;
          box-shadow: 0px 3px 3px #00000029;
  opacity: 1;
  display: flex;
}

.header-inner {
  max-width: 1280px;
  width:100%;
  padding:0 40px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header-nav{
 display: flex;
 margin-left: auto;
 color:#023E78;
 font-weight: bold;
font-size: 20px;
}
.header-nav a {
    position: relative;
    display: inline-block;
    text-decoration: none;
  }
.header-nav a::after {
    position: absolute;
    top:0px;
    left: -30px;
    width:30px;
    height:30px;
    content: '';
    background: url("https://img.icons8.com/color/50/000000/java-coffee-bean-logo.png")no-repeat center / cover;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
  }
 .header-nav a:hover::after {
    bottom: -4px;
    opacity: 1;
    visibility: visible;
  }

.header-nav li:nth-child(n + 2){
  margin-left: 50px;
}
.header-logo{
  background: url(/img/logo.jpg)no-repeat center  / cover ;
  width:200px;
  height:100px;

}
.header-nav i{
  font-size: 28px;
}

@media (max-width:767px) {
  header{
    height:80px;
  }
  .header-inner{
    padding:0 20px;
  }
  .header-logo{
    height:80px;
  }
  .header-logo img{
    width:160px;
  }
  .header-nav,
  .header-nav-btn{
    display: none;
  }
  .hamburger-menu{
    display: block;
  }
  .menu-btn {
    background-color: transparent;
}
.menu-btn span{
  position:absolute;
  top:40px;
   right:30px;
   cursor: pointer;
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 5px;
    width: 34px;
    border-radius: 6px;
    background-color: #023E78;
    position: absolute;
    cursor: pointer;
}

.menu-btn span:before {
    bottom: 10px;
}
.menu-btn span:after {
    top: 10px;
}
#menu-btn-check:checked ~ .menu-btn span {
  background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
  top: 0;
  transform: rotate(-45deg);
}
#menu-btn-check {
    display: none;
}
  .menu-content {
    width: 100%;
    padding:0 20px;
    height:calc(100vh - 80px);
    overflow:hidden;
    position: fixed;
   
    top: 0;
    left: 0;
    z-index: 80;
    background-color: #002a52;
}
.menu-content ul {
    text-align: center;
    margin-top: 40px;
    text-decoration: none;
    width:100%;
    height:100%;
}
.menu-content ul li {
    text-decoration: none;
    list-style: none;
    padding:3vh;
    font-weight: bold;
}
.menu-content ul a{
    display: block;
    width: 100%;
    font-size: 26px;
    box-sizing: border-box;
    text-decoration: none;
    color:#023E78;
    position: relative;
}
.menu-content {
  width: 100%;
  height: 60%;
  position: fixed;
  top: 80px;
  left: 100%;/*leftの値を変更してメニューを画面外へ*/
  z-index: 200;
  background-color: #fff;
  transition: all 0.5s;/*アニメーション設定*/
}
#menu-btn-check:checked ~ .menu-content {
  left: 0;/*メニューを画面内へ*/
}
}
@media(min-width:768px){
  .mainvisual{
    overflow: hidden;
    position: relative;
  }
.swiper-wrapper{
  width:100%;
  
}
.swiper-container {
    width: 100%;
    vertical-align: super;
    height: 100%; 
    z-index:98;
}
  
  .swiper-slide {
    width: 100%!important;
    height: 100%!important;
    text-align: center;
    font-size: 18px;
    background: #fff;
    /* Center slide text vertically */
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
  }
 
  
  .swiper-slide img{
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    
  }
  .is-sp{
    display: none;
  }
  .main-copy h1{
    position: absolute;
    top:10%;
    right:0;
    font-size: 3vw;
    color:#FFF;
    width:42%;
    z-index: 100;
    background: rgba(255, 255, 255, 0.5);
    padding:20px 30px;
  }
}
@media screen and (max-width:767px) {

  .swiper-wrapper{
    width:100%;
    height:600px;
  }
  .swiper-container {
      width: 100%;
      vertical-align: super;
      height: 100%; 
      z-index:98;
  }
    .swiper-slide {
      width: 100%!important;
      height: 100%!important; 
      text-align: center;
      font-size: 18px;
      background: #fff;
      /* Center slide text vertically */
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
    }
    
    .swiper-slide img{
      display: block;
      width:100%;
      height: auto;
      object-fit: cover;
      padding-right:0;
    }
    .is-pc{
      display: none;
    } 
    .main-copy h1{
      position: absolute;
      top:18%;
      right:0;
      font-size:7vw;
      color:#FFF;
      width:80%;
      z-index: 100;
      background: rgba(255, 255, 255, 0.5);
      padding:20px 30px;
    }
}
/*footer*/
footer{
  position: relative;
  background: #FFF;
}
.footer-inner{
  max-width:1280px;
  padding:0 40px;
  margin:0 auto;
}
.footer-top{
  display: flex;
  justify-content: space-between;
  padding-top: 40px;
}
.footer-left{
  display: flex;
  align-items: center;
}
.footer-logo img{
  width:220px;
}
.footer-nav{
  display: flex;
  flex-direction: column;
}
.footer-nav li a{
  color:#023E78;
  font-size: 16px;
  text-decoration: none;
}
.footer-nav li:nth-child(n + 2){
  margin-top: 12px;
}
.footer-icon{
  display: flex;
  margin-top: 46px;
}
.footer-icon a{
  color: #023E78;
}
.footer-icon a:nth-child(n + 2){
 margin-left: 24px;;
}
.footer-bottom{
  text-align: center;
  margin-top: 20px;
  margin-bottom: 10px;
}
small{
  font-size: 14px;
  color:#023E78;
  font-weight: bold;

}
@media (max-width:767px){
  .footer-inner{
    padding:0 20px;
  }
  .footer-left{
    margin:0 auto;
  }
  .footer-top{
    flex-direction: column;
    text-align: center;
  }
  .footer-icon{
    justify-content: center;
  }
  .footer-bottom{
    line-height:0.8;
    margin-bottom: 8px;
    margin-top: 40px;
  }
}
/*サイドバー*/
.sidebar{
  width:calc(29.09% - 40px / 2);
  padding:30px 0px;
  margin-bottom: 40px;
}
.new-article-wrapper{
  margin-top: 60px;
  margin-bottom: 60px;
  
  border:1px solid #FFF;
}
.sidebar-title h3{
  font-size: 32px;
  margin: 30px 0;
  color:#fff;
  text-align: center;
  position: relative;
}

.new-article-items-wrapper{
  padding:20px;
}
.new-article-item{
  display: flex;
  flex-direction: column;
  

}
.new-article-item:not(:first-child){
  margin-top: 30px;
}
.new-article-item-image{
  max-width:220px;
  margin:0 auto;
}
.new-article-item-image img{
  
  object-fit: cover;
  vertical-align: top;
}
.new-article-item-text{
  width:100%;
  max-width:220px;
  margin:0 auto;
}
.new-article-item-text-top{
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-top: 16px;
  }
  .new-article-item-text-top .category{
    padding:6px 11px;
    border:1px solid #E61264;
    border-radius: 20px;
    color:#fff;
    background: #E61264;
    font-size: 14px;
    font-weight: bold;
    white-space: nowrap;
  }
  .new-article-item-text-top time{
    color:#FFF;
    font-size: 16px;
    font-weight: 600;
    margin-left: 12px;
  }
  .new-article-item-title{
    line-height: 1.43;
    font-size: 14px;
    font-weight: bold;
    margin-top: 8px;
    text-decoration: none;
    color:#FFF;
  }
  .news-link-btn{
    background: #fff;
    color:#002a52;
    border-radius: 6px;
    padding:12px 12px;
    text-align: center;
    margin: 30px auto;
    font-weight: bold;
    cursor: pointer;
    border:2px solid #fff;
    max-width:200px;
    
  }
  .news-link-btn:hover{
   background: #002a52;
   color:#fff;
   border:2px solid #FFF;
   padding:12px 12px;
   transition: .4s;
  }
  .twitter-flame{
    margin-top: 30px;
  }
  .twitter-timeline{
    height:400px;
  }
  .youtube-flame {
    position: relative;
    width: 100%;
    margin-top: 40px;
    padding-top: 56.25%;
  }
  .youtube-flame iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
  }

  @media(max-width:992px){
    .new-article-item-text-top{
      flex-direction: column;
    }
    .new-article-item-text-top time{
      margin-top: 10px;
    }
  }
  @media(max-width:767px){
    .sidebar{
      width:100%;
      padding:0;
      margin-bottom: 60px;
    }
    .new-article-item-text-top{
      flex-direction: row;
    }
    .new-article-item-text{
      max-width:220px;
      margin:0 auto;
    }
  }
  /*top*/
  .top{
    background:#fff;
    color:#002a52;
  }
  .top-inner{
    max-width: 1280px;
    padding:0 80px;
    margin:0 auto;
  }
  .top-wrapper{
    width:100%;
    margin:80px 0;
  }
  .top-title{
   font-size: 26px;
  }
  .top-title h2{
    padding: 0 0.5em;/*上下 左右の余白*/
    color: #002a52;/*文字色*/
    background: transparent;/*背景透明に*/
    border-left: solid 5px #002a52;/*左線*/
    font-size: 30px;
  }
  .top-item{
    display: flex;
    margin-top: 80px;
   
  }
  .top-image{
    width:50%;
    position: relative;
    z-index: 1;
    flex-shrink: 0;
  }
  .top-image img{
    width:100%;
  }
  .top-text{
    padding:40px 40px 40px 110px;
    background: rgb(118, 186, 212);  
    border-radius: 12px;
    position: relative;
    top:40px;
    width:calc(50% + 80px);
    margin-left: -80px;
    box-shadow: 14px 14px;
  }
 
  .top-text-reverse{
    margin-right: -80px;
    padding:40px 110px 40px 40px;
    border-radius: 12px;
    background:   rgb(118, 186, 212);
    position: relative;
    top:40px;
    width:calc(50% + 80px);
    box-shadow: 14px 14px;
  }
  .top-text h4,
  .top-text-reverse h4{
    font-size: 24px;
    margin-bottom: 18px;
  } 
  @media (min-width:992px){
   .top-text p,
   .top-text-reverse p{
     font-size: 20px;
     display: flex;
     align-items: center;
   }
  }
  .top-text p,
  .top-text-reverse p{
    font-weight: 600;
  }
  .top-item-reverse{
    display: flex;
    flex-direction: row-reverse;
    margin-top: 80px;
   
  }
  .top-news{
   margin-top: 140px;
  }

  .news-inner-top{
    display: flex;
    justify-content: space-between;
    margin-top: -18px;
  
  }

  .news-inner-bottom{
  margin: 40px auto 0;
  padding:0 40px;
  max-width:660px;
  }
  .news-topic-wrapper{
   
  margin:0 auto;
  background-color:rgb(118, 186, 212) ;
  box-shadow: 14px 14px;
  border-radius: 12px;
  }
  .news-topic-inner{
  padding:30px 40px 0px;
  }
  .news-item{
    cursor: pointer;
 
  }

  .news-topic{
    display: flex;
    justify-content: space-between;

  }
  .news-info{
   display: flex;
   
   height:30px;
  }
  .news-info label{
    padding:2px 10px;
    background: #002a52;
    color:#fff;
    border: #002a52 solid 1px;
    font-weight: 600;
    white-space: nowrap;
    border-radius: 12px;
    margin-left: 20px;
    font-size: 14px;
    line-height: 1.7;
  }
  .news-info time{
    color:#002a52;
    font-size: 16px;
  }
  .topic{
    
    font-weight: bold;
    color: #002a52;
    margin-bottom: 32px;
  }
  .top-news .news-link-btn{
    background: #002a52;
    border:2px solid #002a52;
    color:#FFF;
    border-radius: 6px;
    padding:12px 12px;
    text-align: center;
    margin: 30px 30px 50px;
    font-weight: bold;
    cursor: pointer;
    width:180px;
    margin-left:auto;
  }
  .top-news .news-link-btn:hover{
   background: #FFF;
   color:#002a52;
   border:2px solid #002a52;
   padding:12px 12px;
   transition: .4s;
  }
  .schedule{
    margin-top: 60px;
  }
  .schedule-calendar{
    margin-top: 40px;
  }

 @media (max-width:768px){
  .top-inner{
    padding:0 20px;
  }
  .top-wrapper{
    margin:60px 0;
  }
  .top-title h2{
    font-size: 24px;
  }
  .top-item{
     flex-direction:column;
     margin-top: 40px;
   }
   .top-item-reverse{
     flex-direction: column;
   }
   .top-image{
     width:100%;
     margin-left: -20px;
   }
   .top-item-reverse > .top-image{
     margin-left:40px;
   }
   .top-text{
     margin:-80px 0 0 0;
     width:100%;
     padding:60px 20px 20px 20px;
     box-shadow: 8px 8px;

   }
   .top-text-reverse{
     margin:-80px 0 0 0;
     padding:60px 20px 20px 20px;
     width:100%;
     box-shadow: 8px 8px;
   }
   .top-news{
     margin-top: 120px;
   }
  .news-inner-bottom{
    width:100%;
    max-width:100%;
    padding:0;
  }
  .news-topic-wrapper{
    box-shadow: 8px 8px;
    }
  .news-topic{
    flex-direction: column;
  }
  .news-topic-inner{
    padding:20px 20px 0px;
    }
    .top-news .news-link-btn{
      margin:20px auto;
    }
 }
  /* menu */
  
  .menu{
    background:#002a52;
    color:#FFF;
  }
  .common-inner{
    max-width:1280px;
    padding:0 40px;
    margin:0 auto;
    display: flex;
    justify-content: space-between;
  }
  .common-wrapper{
    width:calc(70.91% - 40px / 2);
    margin: 80px 0;
  }
  .common-top h2{
    color: #fff;
  font-size: 24px;
  line-height:2em;
  border-bottom: 4px dotted #fff;
    letter-spacing: 0.1em;
  width:80%;

  }
  .common-top h2:first-letter{
    font-size: 48px;
  }
  .menu-items{
    margin-top: 60px;
  }
  .menu-item{
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    margin-top: 30px;
  }
  .menu-item:nth-child(2){
   flex-direction: row;
  }
  .menu-text{
    width:80%;
    padding: 0 20px;
  }
  .menu-text-top{
    display: flex;
  }
  .menu-text h3{
    padding: 0 0.5em;/*上下 左右の余白*/
    color: #fff;/*文字色*/
    background: transparent;/*背景透明に*/
    border-left: solid 5px #fff;/*左線*/
    font-size: 30px;
  }
  .menu-text h4{
    font-family:serif ;
    font-size: 24px;
  }
  .menu-text p{
    margin-top: 20px;
    font-size: 18px;
  }
  .menu-text .menu-name{
    font-size: 24px;
  }
  .menu-image-figure img{
    max-width:200px;
    height:auto;
    margin-right: 0px;
    margin-top: -210px;
    transform: rotate( 25deg );
    filter:drop-shadow(8px 10px 6px rgba(255,255,255,0.2));
  }
  .menu-list{
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
    
  }
  .menu-cat{
    width:50%;
  }
  .menu-cat h5{
    font-size: 24px;
  }
  .menu-cat:last-child{
    margin-left: 40px;
  }
  .menu-image-bottom{
    max-width:500px;
    width:100%;
    margin: 40px auto;
  }

  @media(max-width:1280px){
   .menu-item,
   .menu-item:nth-child(2){
     flex-direction: column-reverse;
   }
   .menu-text{
     width:100%;
   }
   .menu-text p{
     font-size: 14px;
   }
   .menu-image{
     margin:30px auto;
   }
   .menu-image-figure img{
     display: none;
   }


  }
    
  @media(max-width:767px){
    .common-inner{
      flex-direction: column;
      padding:0 20px;
    }
    .common-wrapper{
      width:100%;
      margin: 40px 0;
    }
    .menu-text-top{
      flex-direction: column;
    }
    .menu-text{
      padding:0;
    }
    .common-top h2{
      width:100%;
      text-align: center;
    }
    .menu-text h4{
      font-size: 16px;
      margin-top: 8px;
    }
    .menu-list{
      flex-direction: column;
    }
    .menu-cat{
      width:100%;
    }
    .menu-cat:last-child{
      margin-left: 0;
      margin-top: 30px;
    }
    .menu-text .menu-name{
      font-size: 18px;
     }
     .menu-image-bottom{
      width:100%;
      margin: 40px auto 0;
    }
  }
  /*shop*/
  .shop{
    background: #002a52;
    color:#fff;
  }
  .shop-image{
    margin-top: 20px;
  }
  .shop-text{
    margin-top: 40px;
  }
  .shop-text h3{
    padding: 0 0.5em;/*上下 左右の余白*/
    color: #fff;/*文字色*/
    background: transparent;/*背景透明に*/
    border-left: solid 5px #fff;/*左線*/
    font-size: 24px;
    margin-bottom: 20px;
  }
  .shop-items{
    margin-top: 60px;
  }
  .item-name h4{
    border-bottom:1px solid #fff;
    font-size: 24px;
    display: inline-block;
  }
  .shop-item p{
    margin-top: 20px;
  }
  .item-info{
    display: flex;
    margin-top: 20px;
  }

  .shop-coffee-info{
    border-collapse: collapse;
    width:50%;
  }
  .shop-chart{
    width:50%;
    margin-left: 14px;
  }
  .shop-coffee-info th{
   width:30%;
   font-size: 14px;
  }
  .shop-coffee-info td{
    width:70%;
    padding: 0 14px;
  }
 
  .shop-btn{
    background: #002a52;
    color:#FFF;
    border-radius: 6px;
    padding:12px 12px;
    text-align: center;
    margin: 30px 30px 50px;
    font-weight: bold;
    cursor: pointer;
    width:180px;
    margin-left:auto;
    border:2px solid #FFF;
  }
  .shop-btn:hover{
   background: #FFF;
   color:#002a52;
   border:2px solid #002a52;
   padding:12px 12px;
   transition: .4s;
  }

  @media (max-width:768px) {
    .item-info{
    flex-direction: column;
    }
    .shop-coffee-info{
      width:100%;
    }
    .shop-chart{
      width:100%;
      margin-top: 20px;
      margin-left: 0;
    }
    .shop-chart img{
      width:100%;
      height:100%;
    }
  }
  /*contact*/
  .contact{
    background: url(img/IMG_1140.JPG)no-repeat right / 60%;
    background-color: rgba(255, 255, 255, 0.6);
    background-blend-mode: lighten;
  }
  .contact-form-wrapper{
    margin:60px auto 100px;
  }
  .contact-top{
    margin-bottom: 60px;
    text-align: center;
  }
  .contact-top h2{
    font-size: 40px;
    font-family: Quicksand;
    color:#023E78;
    font-weight: bold;
    border-bottom: #023E78 4px dotted;
  }
.contact-top p{
  margin-top: 20px;
  font-size: 16px;
  color:#023E78;
  font-weight: bold;
}
form{
  color:#023E78;
  font-weight: bold;
}
#wpcf7-f28-o1 > form > p:nth-child(3),
#wpcf7-f28-o1 > form > p:nth-child(4),
#wpcf7-f28-o1 > form > p:nth-child(5){
margin-top: 20px;
}
#wpcf7-f28-o1 > form > p:nth-child(2) > label > span > input,
#wpcf7-f28-o1 > form > p:nth-child(3) > label > span > input,
#wpcf7-f28-o1 > form > p:nth-child(4) > label > span > input{
  height:38px;
  width:70%;
  border:2px solid #023E78;
  border-radius: 6px;
  padding:0 10px;
}
textarea{
  width:70%;
  height:170px;
  border:2px solid #023E78;
  border-radius: 6px;
  padding:10px;
}
#wpcf7-f28-o1 > form > p:nth-child(2) > label,
#wpcf7-f28-o1 > form > p:nth-child(3) > label,
#wpcf7-f28-o1 > form > p:nth-child(4) > label,
#wpcf7-f28-o1 > form > p:nth-child(5) > label{
  font-size: 20px;
}
#wpcf7-f28-o1 > form > div.submit-button > input{
  margin-top: 30px;
  font-size: 16px;
    font-weight: bold;
    padding:18px 10px;
    width:140px;
    border:2px solid #023E78;
    border-radius: 6px;
    background-color: #023E78;
    color:#fff;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    white-space: nowrap;
  }
  #wpcf7-f28-o1 > form > div.submit-button > input:hover{
    border:2px solid #023E78;
    background-color: #fff;
    color:#023E78;
    transition: 0.4s;
  }
@media (max-width:767px){
  .contact{
    background: #FFF;
  }
  .contact-form-wrapper{
    margin:40px auto 60px;
  }
#wpcf7-f28-o1 > form > p:nth-child(2) > label > span > input,
#wpcf7-f28-o1 > form > p:nth-child(3) > label > span > input,
#wpcf7-f28-o1 > form > p:nth-child(4) > label > span > input{
  width:100%;
}
textarea{
  width:100%;
}

}
/*news*/
.news{
  background: #002a52;
}
.category-items-wrapper{
  margin: 40px 0;
}

.category-item{
  width:calc(100% - 40px / 2);
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}

.category-item-image{
  width:calc(34.21% - 20px / 2);
}
.category-item-image img{

  max-width:100%;
  object-fit: cover;
}
.category-item-text{
  margin-top:12px;
  width:calc(65.79% - 20px / 2);
}

.category-item-text-top{
  display: flex;
  justify-content: space-between;
}
.category-item-labels{
  display: flex;
  align-items: center;
}
.category-item-text-top .category,
.single-page-top .category{
 padding:4px 14px;
 background: #E61264;
 color:#fff;
 border: #E61264 solid 1px;
 font-weight: 600;
 white-space: nowrap;
 border-radius: 12px;
}
.category-item-text-top .new,
.new-article-item-text-top .new{
  color:#E61264;
  font-size: 16px;
  margin-left: 12px;
  font-weight: 600;
}
time{
  color:#fff;
  font-size: 16px;
  font-weight: 600;
  font-style: normal;
  margin-top: 8px;
  
 
}
.category-item-title{
font-weight: bold;
font-size: 16px;
margin-top: 16px;
color:#fff;
}
.pagination{
  margin:40px 0 ;
}
.nav-links{
  display:flex;
}
.pagination .page-numbers{
  display:inline-block;
  margin-right:10px;
  padding:8px 14px;
  color:#fff;
  border-radius:3px;
  border: 2px solid #fff;
  background:#002a52;
  font-weight: bold;
}
.page-numbers:hover{
  color:#002a52;
  border:#fff solid 2px;
  background: #fff;
  transition: .4s;
}
.pagination .current{
  padding:8px 14px;
  background:#fff;
  color:#002a52;
  border:2px solid #fff;
  font-weight: bold;
}
.pagination .prev,
.pagination .next{
  background:transparent;
  color:#fff;
  border: #002a52 2px solid;
}
.pagination .dots{
  background:transparent;
}
.news-sidebar{
  width:calc(29.09% - 40px / 2);
  margin-top: 80px;
}
.cats-list{
  margin: 80px 0;
}
.cats-list-wrapper{
 margin-top: 16px;
}
.cats-list-title h3{
  font-size: 24px;
  color:#fff;
  text-align: center;
}
.cats-list-items{
  border-top: 2px dotted #ddd;
  margin-top: 16px;
}
.cats-list-items li{
  position: relative;
  padding:16px 28px;
  border-bottom:2px dotted #ddd;

}

.cats-list-items a{
  padding:4px 14px;
  background: #E61264;
  color:#fff;
  border: #E61264 solid 1px;
  font-weight: 600;
  white-space: nowrap;
  border-radius: 12px;
}
.cats-list-items a:before{

  content:">>>";

  position: absolute;
  height:16.026px;
  right:40px;
  top:50%;
  transform: translateY(-50%);
  width:9.424px;
}
@media(max-width:768px){
  .category-item{
    flex-direction: column;
    margin-top:40px;
    width:100%;
  }
  .category-item-image{
    width:100%;
  }
  .category-item-image img{
    width:100%;
    height:auto;
    
  } 
  .category-item-text{
    margin-top:12px;
    width:100%;
  }
  
  .news-sidebar{
    width:100%;
    margin-top: 0px;
    margin-bottom: 40px;
  }
  .cats-list{
    margin:0 0 60px;
  }
  .cats-list-wrapper{
   margin-top: 16px;
  }
  .cats-list-title h3{
    font-size: 24px;
    color:#fff;
    text-align: center;
  }
  .cats-list-items{
    border-top: 2px dotted #ddd;
    margin-top: 16px;
  }
  .cats-list-items li{
    position: relative;
    padding:16px 28px;
    border-bottom:2px dotted #ddd;
  
  }
  
  .cats-list-items a{
    padding:4px 14px;
    background: #E61264;
    color:#fff;
    border: #E61264 solid 1px;
    font-weight: 600;
    white-space: nowrap;
    border-radius: 12px;
  }
  .cats-list-items a:before{
  
    content:"▶";
    position: absolute;
    height:16.026px;
    right:20px;
    top:50%;
    transform: translateY(-50%);
    width:9.424px;
  }
}
/*single page*/
.single-page{
background: #002a52;
}



.single-page-wrapper{
 width:calc(70.91% - 20px / 2);
 margin: 80px auto;
}

.single-page .sidebar time{
 margin-top: -2px;
 font-style: normal;
}
.single-page-top{
  position: relative;
  display: flex;
  justify-content: space-between;
}
.single-page time{
  margin-top: 10px;
  color:#fff;
font-size: 20px;
font-weight: 600;
font-style: normal;
}
.single-page-image{
  margin-top: 40px;
}
.single-page-image img{
  width:100%;
  height:100%;
}
.single-page-top-title{
  font-size: 24px;
  font-weight: bold;
  margin-top: 20px;
  line-height:1.38;
  color:#FFF;
}
.single-page-content{
  margin-top: 40px;
  color:#FFF;
}
  .single-page-link-btn{
    display: flex;
    justify-content: space-between;
    margin-top: 38px;

  }
  .single-page-link-btn a{
    font-size: 14px;
    color:#fff;
    border: #fff 2px solid;
    padding:8px 15px;
    border-radius: 12px;
  }
  .single-page .new-article-wrapper{
    margin-top: 0;
  }
@media(max-width:768px){
  .single-page-wrapper{
    width:100%;
    margin: 40px auto;
   }
   
}
/*カレンダー*/
.map-page-top{
  display: flex;
  flex-direction: column;
}
.map-page-top {
  color:#fff;
}
.venue-map{
  margin-top: 40px;
}


.fc-bg tr td:nth-of-type(7)
 {
  background-color:#ffd9db;
  }
  .fc-bg tr td:nth-of-type(6)
  {
  background-color:#dbffff;
  }
  