:root {
  --color-event-unfinished: #a3a9aa;
  --color-event-finished: #00a0e9;
  --color-event-finished-icon: #e4007f;
}

/*------------------------------------------*/
/* 概要
/*------------------------------------------*/

.event-outline {
  position: relative;
  border: solid 2px var(--color-main);
  border-radius: 10px;
  padding: 10px;
  margin-top: 50px;
}

@media screen and (min-width: 834px), print {
  .event-outline {
    display: inline-block;
    padding: 40px;
  }
}

/* 見出し --------------------------------*/
.event-outline .heading {
  display: inline-block;
  background: var(--color-main);
  color: white;
  font-size: 1.2rem;
  font-weight: bold;
  padding: 0 5px;
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 834px), print {
  .event-outline .heading {
    font-size: 1.6rem;
  }
}

/* 表 --------------------------------*/
.event-outline .table {
  border-collapse: collapse;
  width: 100%;
}

.event-outline .table th,
.event-outline .table td {
  text-align: left;
  border-bottom: solid 1px #edf1f2;
  padding: 10px 0;
}

.event-outline .table th {
  font-weight: bold;
}

@media screen and (max-width: 767px) {

  .event-outline .table tr,
  .event-outline .table th,
  .event-outline .table td {
    display: block;
    width: auto;
  }

  .event-outline .table th,
  .event-outline .table td {
    font-size: 0.9rem;
    padding: 10px 0;
  }

  .event-outline .table th {
    border: 0;
  }
}

@media screen and (min-width: 768px), print {
  .event-outline .table th {
    width: 15em;
  }
}

/*------------------------------------------*/
/* 見出し H5
/*------------------------------------------*/
.heading-quinary {
  text-align: left;
  border-bottom: dashed 2px var(--color-event-unfinished);
  font-family: var(--font-family-maru);
  color: var(--color-text);
  font-size: 1.1rem;
  font-weight: bold;
  padding-bottom: 0.5em;
  margin-top: 1.5em;
  margin-bottom: 1em;
}

.heading-quinary.margin-non {
  margin-top: 0;
}

/*------------------------------------------*/
/* リスト 黒丸
/*------------------------------------------*/

.list-type-circle-black li {
  text-align: left;
  list-style: disc;
  margin-left: 2em;
}


/*------------------------------------------*/
/* 写真一覧
/*------------------------------------------*/
.event-photo-box, {
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 20px;
}

.event-photo-list {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 20px;
}

.event-photo-box li img {
  width: 100%;
  object-fit: cover;
  border-color: white;
  border-style: solid;
  border-width: 10px;
  box-shadow: var(--box-shadow);
  margin-bottom: 20px;
  margin-top: 20px;
}
.event-photo-list li img, 
.event-photo-list li img.square {
  width: 100%;
  border-color: white;
  border-style: solid;
  border-width: 10px;
  box-shadow: var(--box-shadow);
}

.event-photo-list li p{
    padding-top: 1em;
  }

@media screen and (min-width: 768px), print {
  .event-photo-box{
  margin-top: 40px;
  }

  .event-photo-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 40px;
    column-gap: 40px;
    margin-top: 40px;
  }

  .event-photo-box li img{
    width: 50%;
    border-width: 10px;
  }
  .event-photo-list li img {
    border-width: 10px;
  }

  .event-photo-list li img.square {
  width: 75%;
  border-width: 14px;
 }
}

@media screen and (min-width: 834px), print {
  .event-photo-list {
    row-gap: 60px;
    column-gap: 60px;
  }

  .event-photo-box li img, 
  .event-photo-list li img {
    border-width: 15px;
  }


}

.top-margin{
  margin-top: 20px;
}

@media screen and (min-width: 768px), print {
  .top-margin{
  margin-top: 40px;
  }
}

