/*--------------------------------------------
  common
-------------------------------------------- */
.outline {
  position: relative;
}

/*--------------------------------------------
  outline
-------------------------------------------- */
.c-title--page {
  font-family: "Zen Old Mincho", serif;
  font-weight: 400 !important;
  line-height: unset !important;
  letter-spacing: 0.06em;
  margin: 0;
}
@media screen and (min-width: 769px) {
  .c-title--page {
    font-size: clamp(32px, 2.882vw, 48px);
    -webkit-padding-after: min(3.386vw, 56.4px);
            padding-block-end: min(3.386vw, 56.4px);
  }
}
@media screen and (max-width: 768px) {
  .c-title--page {
    font-size: clamp(16px, 5.333vw, 24px);
    -webkit-padding-after: min(6.933vw, 31.2px);
            padding-block-end: min(6.933vw, 31.2px);
  }
}

@media screen and (min-width: 769px) {
  .box01 {
    padding-block: min(1.729vw, 28.8px) min(10.591vw, 176.4px);
  }
}
@media screen and (max-width: 768px) {
  .box01 {
    padding-block: min(5.867vw, 26.4px) min(22.667vw, 102px);
  }
}
.box01 > br {
  display: none;
}
.box01 > table {
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
  line-height: 1.79;
  letter-spacing: 0.06em;
  width: 100%;
  background-color: transparent;
}
@media screen and (max-width: 768px) {
  .box01 > table tr {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.box01 > table tr[align=right] td {
  font-size: clamp(11.2px, 1.009vw, 16.8px);
}
@media screen and (max-width: 768px) {
  .box01 > table tr[align=right] td {
    font-size: clamp(9.6px, 3.2vw, 14.4px);
    line-height: 2;
    text-align: left;
  }
}
.box01 > table tr[align=left] td {
  font-size: clamp(12.8px, 1.153vw, 19.2px);
}
@media screen and (max-width: 768px) {
  .box01 > table tr[align=left] td {
    font-size: clamp(11.2px, 3.733vw, 16.8px);
  }
}
@media screen and (min-width: 769px) {
  .box01 > table td {
    font-size: clamp(11.2px, 1.009vw, 16.8px);
  }
}
@media screen and (max-width: 768px) {
  .box01 > table td {
    font-size: clamp(12px, 4vw, 18px);
    letter-spacing: 0;
  }
}
.box01 > table td.bg0 {
  background-color: transparent;
}
@media screen and (min-width: 769px) {
  .box01 > table td.bg0 {
    width: 26.5%;
    padding-block: min(0.72vw, 12px) min(1.081vw, 18px);
    border-bottom: solid 1px #999;
  }
}
@media screen and (max-width: 768px) {
  .box01 > table td.bg0 {
    width: 100%;
    padding-block: min(3.467vw, 15.6px) 0;
  }
}
.box01 > table td.bg1 {
  background-color: transparent;
  border-bottom: solid 1px #999;
}
@media screen and (min-width: 769px) {
  .box01 > table td.bg1 {
    padding-block: min(0.72vw, 12px) min(1.081vw, 18px);
  }
}
@media screen and (max-width: 768px) {
  .box01 > table td.bg1 {
    width: 100%;
    padding-block: 0 min(3.467vw, 15.6px);
  }
}
.box01 > table:not(:has(br)):has(b) td {
  display: block;
}
@media screen and (min-width: 769px) {
  .box01 > table:not(:has(br)):has(b) td {
    -webkit-margin-before: min(4.107vw, 68.4px);
            margin-block-start: min(4.107vw, 68.4px);
    padding-block: min(3.89vw, 64.8px);
    border-block: 1px solid #999;
  }
}
@media screen and (max-width: 768px) {
  .box01 > table:not(:has(br)):has(b) td {
    -webkit-margin-before: min(13.867vw, 62.4px);
            margin-block-start: min(13.867vw, 62.4px);
    padding-block: min(5.867vw, 26.4px) min(8.533vw, 38.4px);
    -webkit-border-before: 1px solid #999;
            border-block-start: 1px solid #999;
  }
}
.box01 > table:not(:has(br)):has(b) td b {
  line-height: 1.4;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .box01 > table:not(:has(br)):has(b) td b {
    font-size: clamp(24px, 2.161vw, 36px);
  }
}
@media screen and (max-width: 768px) {
  .box01 > table:not(:has(br)):has(b) td b {
    font-size: clamp(20px, 6.667vw, 30px);
  }
}
.box01 > table:has(br):has(b) td {
  display: block;
  border: 1px solid #eee;
}
@media screen and (min-width: 769px) {
  .box01 > table:has(br):has(b) td {
    padding: min(1.441vw, 24px) min(2.161vw, 36px);
    -webkit-margin-before: min(3.098vw, 51.6px);
            margin-block-start: min(3.098vw, 51.6px);
    font-size: clamp(11.2px, 1.009vw, 16.8px) !important;
  }
}
@media screen and (max-width: 768px) {
  .box01 > table:has(br):has(b) td {
    padding: min(4vw, 18px) min(5.333vw, 24px) min(2.667vw, 12px);
    -webkit-margin-before: min(11.733vw, 52.8px);
            margin-block-start: min(11.733vw, 52.8px);
  }
}
.box01 > table:has(br):has(b) td b span {
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .box01 > table:has(br):has(b) td b span {
    font-size: clamp(16px, 1.441vw, 24px) !important;
  }
}
@media screen and (max-width: 768px) {
  .box01 > table:has(br):has(b) td b span {
    font-size: clamp(12.8px, 4.267vw, 19.2px) !important;
  }
}
/*# sourceMappingURL=outline.css.map */