:root {
  --color-event-unfinished: #a3a9aa;
  --color-event-finished: #00a0e9;
  --color-event-finished-icon: #e4007f;
  --gradient-main: linear-gradient(90deg, rgba(0, 174, 239, 1) 0%, rgba(30, 145, 197, 1) 100%);
  --gradient-main-reverse: linear-gradient(90deg, rgba(30, 145, 197, 1) 0%, rgba(0, 174, 239, 1) 100%);
  --gradient-light-main: linear-gradient(90deg, rgba(182, 210, 220, 1) 0%, rgba(200, 230, 244, 1) 100%);
  --repeating-linear-gradient-main: repeating-linear-gradient(90deg, rgba(0, 174, 239, 1) 0%, rgba(30, 145, 197, 1) 100%);
}

/*****************************************
*
* 見出し
*
******************************************/

/*------------------------------------------*/
/* 見出し H2とか
/*------------------------------------------*/

.heading-secondary_sub {
  position: relative;
  text-align: left;
  font-family: var(--font-family-maru);
  color: transparent;
  background: var(--repeating-linear-gradient-main);
  -webkit-background-clip: text;
  font-weight: bold;
  padding-bottom: 10px;
  font-size: 1.1rem;
  margin-top: 2em;
  margin-bottom: 1.5em;
}

.heading-secondary_sub.red {
  background: var(--repeating-linear-gradient-red);
  -webkit-background-clip: text;
}

.heading-secondary_sub.green {
  background: var(--repeating-linear-gradient-green);
  -webkit-background-clip: text;
}

.heading-secondary_sub span {
  font-size: 1rem;
}

.heading-secondary_sub::after {
  content: '';
  display: inline-block;
  background: var(--gradient-main);
  border-radius: 2px;
  width: 100%;
  height: 3px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.heading-secondary_sub.red::after {
  background: var(--gradient-red);
}

.heading-secondary_sub.green::after {
  background: var(--gradient-green);
}

@media screen and (min-width: 1020px), print {
  .heading-secondary_sub {
    font-size: 1.6rem;
    margin-top: 3em;
    margin-bottom: 1.5em;
  }

  .heading-secondary_sub span {
    font-size: 1.2rem;
  }
}

.heading-secondary_sub.margin-non {
  margin-top: 0;
}

/*------------------------------------------*/
/* 見出し H3とか
/*------------------------------------------*/
.heading-tertiary_sub {
  position: relative;
  text-align: left;
  font-family: var(--font-family-maru);
  color: transparent;
  background: var(--repeating-linear-gradient-main);
  -webkit-background-clip: text;
  font-weight: bold;
  font-size: 1.1rem;
  padding-bottom: 10px;
  margin-top: 2em;
  margin-bottom: 1.5em;
}

.heading-tertiary_sub span {
  font-size: 1rem;
}

.heading-tertiary_sub::after {
  content: '';
  display: inline-block;
  background: var(--gradient-light-main);
  border-radius: 2px;
  width: 100%;
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
}

@media screen and (min-width: 1020px), print {
  .heading-tertiary_sub {
    font-size: 1.2rem;
    margin-top: 3em;
    margin-bottom: 1.5em;
  }

  .heading-tertiary_sub span {
    font-size: 1rem;
  }
}

.heading-tertiary_sub.margin-non {
  margin-top: 0;
}

.top-margin{
  margin-top: 20px;
}

@media screen and (min-width: 768px), print {
  .top-margin{
  margin-top: 40px;
  }
}
