@charset "UTF-8";
:root {
  --viewport-width: min(100vw, 1600px);
  --b: calc(var(--viewport-width) / 160);
}

/*
Theme Name: Twenty Twenty-one Child
Version: 1.6
Template: twentytwentyone
*/
h2.title {
  margin-bottom: 2%;
  font-size: max(3.6rem, 20px);
}
h2.title span {
  display: block;
  font-size: max(1.6rem, 12px);
  color: #0C81C5;
  padding-left: max(1.6rem, 10px);
  position: relative;
}
h2.title span::before {
  content: "●";
  font-size: max(0.8rem, 5px);
  position: absolute;
  transform: translate(0%, -50%);
  top: 50%;
  left: 0;
}

.terms {
  margin: max(7%, 70px) auto;
}
.terms > * {
  margin-bottom: 4%;
}
.terms * {
  font-weight: 400;
  font-size: max(1.6rem, 12px);
  line-height: 250%;
}
.terms *.fs-18 {
  font-size: max(1.8rem, 14px);
}
.terms *.fs-20 {
  font-size: max(2rem, 16px);
  font-weight: 700;
}
.terms h2 {
  font-size: max(2.8rem, 20px);
  color: #0C81C5;
  margin-bottom: 1%;
  font-weight: 700;
}
.terms ul {
  padding: revert;
  padding-left: max(2.8rem, 20px);
  list-style: number;
}
.terms ul.kakko {
  list-style: none;
  padding-left: 0;
}
.terms ul.kakko li {
  counter-increment: sublist;
  position: relative;
  padding-left: max(4rem, 30px);
}
.terms ul.kakko li::before {
  content: "（" counter(sublist) "）";
  position: absolute;
  left: 0;
}
.terms .h3box h3 {
  font-size: max(2rem, 16px);
  font-weight: 700;
}

.line {
  border-bottom: 1px solid #D1D1D1;
}