.bg_about {
  background-image: url('/2021/assets/img/index/bg_about.jpg');
  background-position-y: 40%;
  background-size: cover;
  background-repeat: no-repeat;
}

.section_content h3::after {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  bottom: -5px;
  height: 4px;
  width: auto;
  margin: auto;
  background-image: url('/2021/assets/img/index/349.png');
  background-repeat: no-repeat;
  background-size: contain;
  background-position-x: center;
}

.theme_img {
  height: 10vh;
  width: auto;
}

.bg_schedule {
  position: absolute;
  z-index: -1;
}

.column {
  position: relative;
  margin-left: 101px;
  padding: 1rem 1rem 20rem 10rem;
  border-left: #888 solid 2px;
}

.column:last-of-type {
  border-left: none;
  padding-bottom: 10rem;
}

.column::before {
  position: absolute;
  background-color: #888;
  border-radius: 50%;
  width: 200px;
  height: 200px;
  top: 0;
  margin: auto;
  left: -102px;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font-size: 150px;
  line-height: 200px;
  color: #fff;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  text-align: center;
}

.icon_op::before {
  content: "\f04b";
  font-size: 80px;
}

/* 01 */
.icon_quiz::before {
  content: "";
  background-image: url('/2021/assets/img/schedule/quiz.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 120px;
}

/* 02 */
.icon_kasou::before {
  content: "";
  background-image: url('/2021/assets/img/schedule/kasou.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 120px;
}

/* 03 */
.icon_hackathon::before {
  content: "\f70c";
  font-size: 130px;
}

/* 04 */
.icon_ssb::before {
  content: "";
  background-image: url('/2021/assets/img/schedule/ssb.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 140px;
}

/* 05 */
.icon_chusen::before {
  content: "";
  background-image: url('/2021/assets/img/schedule/chusen.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 150px;
}

.icon_ed::before {
  content: "\f04d";
  font-size: 90px;
}

.schedule {
  text-align: left;
  font-size: 1.2rem;
  margin: auto;
  max-width: 800px;
}

.name {
  margin: 0.6rem 0 2rem;
  padding: 0;
}

.desc {
  position: absolute;
  margin: 0;
  padding: 0;
}

/* 900px以下 タブレット用 */
@media screen and (max-width: 900px) {
  .schedule {
    max-width: 600px;
    font-size: 1.1rem;
  }

  .column {
    margin-left: 91px;
  }

  .column::before {
    width: 180px;
    height: 180px;
    left: -92px;
    font-size: 130px;
    line-height: 180px;
  }

  .icon_op::before {
    font-size: 60px;
  }

  /* 01 */
  .icon_quiz::before {
    background-size: 110px;
  }

  /* 02 */
  .icon_kasou::before {
    background-size: 110px;
  }

  /* 03 */
  .icon_hackathon::before {
    font-size: 110px;
  }

  /* 04 */
  .icon_ssb::before {
    background-size: 120px;
  }

  /* 05 */
  .icon_chusen::before {
    background-size: 120px;
  }

  .icon_ed::before {
    font-size: 70px;
  }
}

/* 600px以下 スマホ用 */
@media screen and (max-width: 600px) {
  .schedule {
    font-size: .9rem;
    width: 90vw;
  }

  .column {
    margin-left: 51px;
    padding: .1rem 0 15rem 4rem;
  }

  .column::before {
    width: 100px;
    height: 100px;
    left: -52px;
    font-size: 50px;
    line-height: 100px;
  }

  .column:last-of-type {
    padding-bottom: 5rem;
  }

  .icon_op::before {
    font-size: 40px;
  }

  /* 01 */
  .icon_quiz::before {
    background-size: 60px;
  }

  /* 02 */
  .icon_kasou::before {
    background-size: 60px;
  }

  /* 03 */
  .icon_hackathon::before {
    font-size: 60px;
  }

  /* 04 */
  .icon_ssb::before {
    background-size: 70px;
  }

  /* 05 */
  .icon_chusen::before {
    background-size: 70px;
  }

  .icon_ed::before {
    font-size: 40px;
  }
}