.keyvisual {
  position: relative;
  margin-top: 50px;
  background: url(img/kv.jpg) no-repeat center/cover;
  height: 450px;
  margin-bottom: 36px;
}

.keyvisual .heading {
  position: absolute;
  top: 18px;
  left: 30px;
}

@media screen and (min-width: 980px) {
  .keyvisual {
    height: 750px;
  }
}

.section-flow {
  display: flex;
  flex-direction: column;
  gap: 60px;
  padding-bottom: 60px;
}

.section .section-heading {
  font-size: 22px;
  border-bottom: 2px solid var(--secondary-container);
  margin-bottom: 32px;
  font-family: var(--serif);
  font-weight: bold;
}

.card-flow {
  display: flex;
  flex-direction: column;
  gap: 36px;
}

.card .eyecatch {
  display: block;
  width: 100%;
  height: auto;
  margin-bottom: 12px;
}

.card .heading {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 12px;
}

.rentacar .links {
  display: flex;
  flex-direction: column;
  margin-top: 32px;
}

.rentacar .copy a {
  font-weight: bold;
  text-decoration: underline;
}

.rentacar .copy a.-ex::after {
  content: "";
  display: inline-block;
  background: url(/img/blank-icon.svg);
  width: 12px;
  height: 12px;
}