@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&subset=japanese);
/* ================================================================================
トップページ
================================================================================ */
#indexTop .keyVisual {
  display: block;
  width: 100%;
  padding: 0 20px 20px;
  max-width: 1280px;
  margin: 0 auto;
}

#indexTop .eventLayout {
  display: block;
  width: 100%;
}

#indexTop .eventLayout .borderWrapLayout {
  padding: 50px 20px;
}

#indexTop .eventLayout .eventTopTxt {
  padding-bottom: 50px;
}

#indexTop .eventLayout h3.topEventTit {
  width: 186px;
  margin: 0 auto 20px;
}

#indexTop .eventLayout h2.topNewTit {
  width: 100%;
  padding-bottom: 20px;
  margin: 0 auto;
}

#indexTop .eventLayout h2.topNewTit img {
  width: 187px;
  margin: 0 auto;
}

#indexTop .eventLayout h4.topTxtinfo {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 1.8px;
  text-align: center;
  color: #666666;
}

#indexTop .eventLayout .postMinesEventLayout {
  display: block;
  max-width: 1125px;
  margin: 0 auto;
  padding-bottom: 40px;
}

#indexTop .eventLayout .postMinesEventLayout h2 {
  font-weight: bold;
  line-height: 1.25;
  text-align: center;
  color: #e52d8a;
  margin-bottom: 30px;
}

#indexTop .eventLayout .postMinesEventLayout h2 span {
  display: inline-block;
  position: relative;
  font-size: 1.8rem;
  padding: 0 46px;
}

#indexTop .eventLayout .postMinesEventLayout h2 span::before, #indexTop .eventLayout .postMinesEventLayout h2 span::after {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  margin: auto;
  background-size: contain;
  background-repeat: no-repeat;
  width: 34px;
  height: 30px;
}

#indexTop .eventLayout .postMinesEventLayout h2 span::before {
  background-image: url("/fanclub/asset/images/icons/icon_line_pink_left.svg");
  left: 0;
}

#indexTop .eventLayout .postMinesEventLayout h2 span::after {
  background-image: url("/fanclub/asset/images/icons/icon_line_pink_right.svg");
  right: 0;
}

#indexTop .eventLayout .postMinesEventLayout .newPostList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

#indexTop .eventLayout .postMinesEventLayout .newPostList .eventNewCard {
  width: 31.6444%;
  margin-right: 1.33333%;
  margin-bottom: 60px;
}

#indexTop .eventLayout .postMinesEventLayout .newPostList .eventNewCard:nth-child(3n) {
  margin-right: 0;
}

#indexTop .eventLayout .postMinesEventLayout .newPostList .eventNewCard:last-of-type {
  margin-bottom: 0;
}

#indexTop .eventLayout .postOtherEventLayout {
  display: block;
  max-width: 980px;
  margin: 0 auto;
  padding-bottom: 36px;
}

#indexTop .eventLayout .postOtherEventLayout h2 {
  font-weight: bold;
  line-height: 1.25;
  text-align: center;
  color: #009fa9;
  margin-bottom: 30px;
}

#indexTop .eventLayout .postOtherEventLayout h2 span {
  display: inline-block;
  position: relative;
  font-size: 1.8rem;
  padding: 0 46px;
}

#indexTop .eventLayout .postOtherEventLayout h2 span::before, #indexTop .eventLayout .postOtherEventLayout h2 span::after {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  margin: auto;
  background-size: contain;
  background-repeat: no-repeat;
  width: 34px;
  height: 30px;
}

#indexTop .eventLayout .postOtherEventLayout h2 span::before {
  background-image: url("/fanclub/asset/images/icons/icon_line_green_left.svg");
  left: 0;
}

#indexTop .eventLayout .postOtherEventLayout h2 span::after {
  background-image: url("/fanclub/asset/images/icons/icon_line_green_right.svg");
  right: 0;
}

#indexTop .eventLayout .postOtherEventLayout .otherPostList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

#indexTop .eventLayout .postOtherEventLayout .otherPostList .otherPostCard {
  width: 46.9387%;
  margin-bottom: 24px;
}

@media screen and (max-width: 768px) {
  #indexTop .keyVisual {
    padding-bottom: 16px;
    padding: 0 0 16px;
  }
  #indexTop .eventLayout {
    padding: 0 16px;
  }
  #indexTop .eventLayout .borderWrapLayout {
    padding: 8.1743% 0 15.2172%;
  }
  #indexTop .eventLayout .eventTopTxt {
    padding-bottom: 10.2179%;
  }
  #indexTop .eventLayout h3.topEventTit {
    width: 36.1035%;
    margin: 0 auto 4.0871%;
  }
  #indexTop .eventLayout h2.topNewTit {
    max-width: none;
    padding-bottom: 4.0871%;
  }
  #indexTop .eventLayout h2.topNewTit img {
    width: 36.1035%;
  }
  #indexTop .eventLayout h4.topTxtinfo {
    line-height: 1.33;
    letter-spacing: 3px;
    font-size: 1.5rem;
  }
  #indexTop .eventLayout .postMinesEventLayout {
    padding-bottom: 26.5667%;
  }
  #indexTop .eventLayout .postMinesEventLayout h2 {
    margin-bottom: 8.17438%;
    letter-spacing: 1.5px;
  }
  #indexTop .eventLayout .postMinesEventLayout h2 span {
    font-size: 1.6rem;
    padding: 0 30px;
  }
  #indexTop .eventLayout .postMinesEventLayout h2 span::before, #indexTop .eventLayout .postMinesEventLayout h2 span::after {
    width: 22px;
    height: 20px;
  }
  #indexTop .eventLayout .postMinesEventLayout .newPostList {
    display: block;
    padding: 0 5.7220%;
  }
  #indexTop .eventLayout .postMinesEventLayout .newPostList .eventNewCard {
    width: 100%;
    margin-right: 0;
    margin-bottom: 6.9230%;
  }
  #indexTop .eventLayout .postOtherEventLayout {
    padding-bottom: 10.3260%;
  }
  #indexTop .eventLayout .postOtherEventLayout h2 {
    margin-bottom: 8.17438%;
    letter-spacing: 1.5px;
  }
  #indexTop .eventLayout .postOtherEventLayout h2 span {
    font-size: 1.6rem;
    padding: 0 30px;
  }
  #indexTop .eventLayout .postOtherEventLayout h2 span::before, #indexTop .eventLayout .postOtherEventLayout h2 span::after {
    width: 22px;
    height: 20px;
  }
  #indexTop .eventLayout .postOtherEventLayout .otherPostList {
    display: block;
    padding: 0 4.76839% 0 2.1798%;
  }
  #indexTop .eventLayout .postOtherEventLayout .otherPostList .otherPostCard {
    width: 100%;
    margin-bottom: 4.9780%;
  }
  #indexTop .eventLayout .postOtherEventLayout .otherPostList .otherPostCard:last-of-type {
    margin-bottom: 0;
  }
}
