:root {
  scroll-behavior: smooth;
  --color-text: #333;
  --color-red: #d70a17;
  --color-red-hover: #ff4a47;
}

.lockingstage {
  max-width: 710px;
  padding-bottom: 100px;
  margin-inline: auto;
}
.lockingstage section {
  margin-top: clamp(40px, 8vw, 80px);
}
.lockingstage section h2 {
  border-bottom: solid 1px #bbb;
  margin-bottom: clamp(10px, 2.5vw, 30px);
  padding-bottom: 5px;
}
.lockingstage section h2::first-letter {
  color: #b81c22;
}
.lockingstage .max_width {
  max-width: 500px;
  margin-inline: auto;
}
.lockingstage .w60 {
  width: 60%;
}
.lockingstage .fb {
  display: flex;
  justify-content: center;
  gap: clamp(20px, 8vw, 80px);
  padding-bottom: clamp(20px, 3vw, 30px);
}
@media screen and (max-width: 767px) {
  .lockingstage .fb {
    display: block;
    text-align: center;
  }
  .lockingstage .fb > div {
    margin-top: clamp(20px, 4vw, 40px);
  }
}
@media screen and (max-width: 767px) {
  .lockingstage .fb table {
    margin-inline: auto;
    margin-top: 10px;
  }
}
.lockingstage .fb th {
  text-align: left;
}
.lockingstage .fb td {
  text-align: left;
}
.lockingstage .grid {
  margin-bottom: clamp(20px, 5vw, 50px);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(20px, 4vw, 40px);
}
@media screen and (max-width: 767px) {
  .lockingstage .grid {
    grid-template-columns: repeat(1, 1fr);
    width: 90%;
    max-width: 400px;
    margin-inline: auto;
    gap: clamp(40px, 8vw, 80px);
  }
}
.lockingstage .grid img {
  margin-bottom: 10px;
}
.lockingstage ul {
  padding: 20px 0 20px 40px;
  list-style-type: disc;
}
.lockingstage ul strong {
  color: #b81c22;
}
.lockingstage .catalog_dl {
  margin-top: clamp(20px, 4vw, 40px);
  padding: clamp(20px, 3vw, 30px) 0;
  border-top: solid 1px #ddd;
  border-bottom: solid 1px #ddd;
}
.lockingstage .manual_dl {
  margin-top: clamp(20px, 4vw, 40px);
}
.lockingstage .btn {
  text-align: center;
}
.lockingstage .btn a {
  font-weight: 700;
  display: inline-block;
  padding: 10px clamp(50px, 7vw, 70px) 10px clamp(40px, 6vw, 60px);
  border: solid 1px #ddd;
  text-decoration: none;
  border-radius: 5px;
  color: #fff;
  background-color: var(--color-red);
  box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.1);
  background-image: url(../img/icon_pdf.svg);
  background-position: right 15px center;
  background-repeat: no-repeat;
  background-size: clamp(24px, 4vw, 40px);
  transition: background-color 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .lockingstage .btn a:hover, .lockingstage .btn a:focus-visible {
    background-color: var(--color-red-hover);
  }
}
.lockingstage .red {
  color: var(--color-red);
}
.lockingstage .contact_block h3 {
  font-feature-settings: "palt";
}