.outline-sec {
  position: relative;
}
.outline-sec::before {
  position: absolute;
  content: "";
  inset: 0;
  background: url("../img/top/bg-top.svg") repeat-y;
  background-size: contain;
  z-index: -1;
}

.outline-inner {
  padding-top: 310px;
  padding-bottom: 128px;
}
@media screen and (max-width: 767px) {
  .outline-inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

.outline-ttl {
  max-width: 400px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .outline-ttl {
    max-width: 270px;
  }
}

.outline-subttl {
  margin-top: 16px;
}

.outline-cont {
  margin: 80px auto 0;
  max-width: 900px;
}
@media screen and (max-width: 767px) {
  .outline-cont {
    margin-top: 16px;
    padding: 0 16px;
  }
}
.outline-cont h4 {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .outline-cont h4 {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .outline-cont table {
    width: 100% !important;
    margin-left: 0 !important;
  }
}
.outline-cont tbody {
  pointer-events: none !important;
  outline: none !important;
}
.outline-cont tbody td,
.outline-cont tbody tr {
  font-size: 14px;
  box-sizing: border-box;
}
.outline-cont tbody tr {
  display: flex;
  pointer-events: none !important;
  outline: none !important;
  text-decoration: none !important;
}
@media screen and (max-width: 767px) {
  .outline-cont tbody tr {
    display: block;
  }
}
.outline-cont tbody tr + tr td {
  border-top: none !important;
}
@media screen and (max-width: 767px) {
  .outline-cont tbody tr + tr > td:first-of-type {
    border-top: none !important;
  }
}
.outline-cont tbody tr td {
  display: flex;
  align-items: center;
  padding: 12px !important;
  pointer-events: none !important;
  outline: none !important;
  text-decoration: none !important;
}
@media screen and (max-width: 767px) {
  .outline-cont tbody tr td {
    width: 100%;
    display: block;
    padding: 8px !important;
  }
}
.outline-cont tbody tr > td:first-of-type {
  width: 180px;
  background: #ebebeb !important;
  border-right: none !important;
}
@media screen and (max-width: 767px) {
  .outline-cont tbody tr > td:first-of-type {
    width: 100%;
    display: block;
    border-bottom: none !important;
    border-right: 1px solid #bfbfbf !important;
  }
}
.outline-cont tbody tr > td:last-of-type {
  background: #fff;
  flex: 1 0 auto;
  width: calc(100% - 180px);
}
@media screen and (max-width: 767px) {
  .outline-cont tbody tr > td:last-of-type {
    width: 100%;
    border-top: none !important;
  }
}