@charset "UTF-8";
/*共通css*/
* {
  box-sizing: border-box;
}
html {
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
/*PC・SP非表示*/
#event .pc {
  display: block;
}
#event .sp {
  display: none;
}
#event .mainvisual {
  margin-bottom: 100px;
}
/*インフォメーション*/
#event .topics {
  background: #fbe9e9;
  border-top: 1px solid #f2adad;
  border-bottom: 1px solid #f2adad;
  padding: 12px;
}
#event .topics p {
  font-size: 108%;
  color: #b20707;
}
#event .topics p a {
  color: #b20707;
  text-decoration: underline;
  padding: 2px;
}
/*セクション*/
#event .section {
  margin-bottom: 100px;
}
#event .section .section__ttl .h3 {
  color: rgb(25, 25, 26);
  font-size: 32px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-bottom: 40px;
  text-align: center;
}
/*4カラム・2カラム共通*/
#event .gridbox_col4 a:hover,#event .gridbox_col2 a:hover{
  opacity: 0.8;
}
/*4カラム*/
#event .gridbox_col4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px;
}
/*2カラム*/
#event .gridbox_col2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}
/*TB*/
@media screen and (max-width: 1020px) and (min-width: 768px) {
}
/*SP*/
@media screen and (max-width: 767px) {
  #event .pc {
    display: none;
  }
  #event .sp {
    display: block;
  }
  #event .mainvisual {
    margin: 0px calc(50% - 50vw) 20px;
    width: 100vw;
  }
  /*インフォメーション*/
  #event .topics p {
    font-size: 100%;
  }
  /*セクション*/
  #event .section {
    margin-bottom: 60px;
  }
  #event .section .section__ttl .h3 {
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.5em;
  }
  /*4カラム*/
  #event .gridbox_col4 {
    grid-template-columns: repeat(2, 1fr);
  }
  /*2カラム*/
  #event .gridbox_col2 {
  display: block;
}
  #event .gridbox_col2 div{
    margin-bottom: 15px;
  }
  #event .gridbox_col2 div:last-child{
    margin-bottom: 0;
  }
}