@charset "UTF-8";
.comContentsContainer {
  container: comContentsContainer/inline-size;
}

h1 {
  color: #bd3a3a;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 3;
}
@media screen and (min-width: 769px) {
  h1 {
    margin-bottom: 56px;
  }
  h1 span {
    font-size: clamp(28px, 2.75vw, 33px);
  }
}
@media screen and (max-width: 768px) {
  h1 {
    line-height: 1.4;
    margin-bottom: min(8vw, 30px);
  }
  h1 span {
    font-size: min(5.3333333333vw, 20px);
  }
}

.indexContents {
  display: flex;
  flex-flow: column wrap;
  align-items: center;
  max-width: 800px;
  width: 100%;
}

.indexDL {
  display: flex;
  flex-flow: column wrap;
  align-items: flex-start;
  width: 100%;
}
.indexDL:not(:last-of-type) {
  margin-bottom: 30px;
}
.indexDL > dt,
.inlineframeDL > dt {
  font-size: min(4.8vw, 18px);
  font-weight: bold;
  margin-bottom: 10px;
  padding-left: min(6.6666666667vw, 25px);
  position: relative;
  width: 100%;
}
.indexDL > dt::before,
.inlineframeDL > dt::before {
  content: "■";
  position: absolute;
  top: 0;
  left: 0;
}

.indexDL > dd,
.inlineframeDL > dd {
  font-size: min(3.7333333333vw, 14px);
  line-height: 1.6;
  position: relative;
  width: 100%;
}
.indexDL > dd > ul.dot > li,
.inlineframeDL > dd > ul.dot > li {
  position: relative;
  padding-left: 1em;
}
.indexDL > dd > ul.dot > li::before,
.inlineframeDL > dd > ul.dot > li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
.indexDL > dd a,
.inlineframeDL > dd a {
  text-decoration: underline;
}

.privacyNotes {
  color: #f92300;
  font-size: min(3.7333333333vw, 14px);
  margin-top: 5px;
}

.scrollWrap {
  margin-top: 30px;
  position: relative;
  width: 100%;
  z-index: 0;
}
.scrollWrap::after {
  border-radius: 4px;
  content: "";
  position: absolute;
  border: 2px solid #ddd;
  z-index: -1;
}
@media screen and (min-width: 769px) {
  .scrollWrap::after {
    top: -15px;
    left: -15px;
    right: -15px;
    bottom: -15px;
  }
}
@media screen and (max-width: 768px) {
  .scrollWrap::after {
    top: -15px;
    left: -10px;
    right: -10px;
    bottom: -15px;
  }
}

.inlineframeDL {
  font-size: min(3.7333333333vw, 14px);
  height: min(106.6666666667vw, 400px);
  padding-right: min(2.6666666667vw, 10px);
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}
.inlineframeDL > dd:not(:last-of-type) {
  margin-bottom: 30px;
}

.ex {
  margin-bottom: 20px;
}

.innerDL {
  counter-reset: number 0;
}
.innerDL > dt {
  margin-bottom: 10px;
  padding-left: min(5.3333333333vw, 20px);
  position: relative;
}
.innerDL > dt::before {
  counter-increment: number 1;
  content: counter(number) ".";
  position: absolute;
  top: 0px;
  left: 0px;
}
.innerDL > dd {
  padding-left: min(5.3333333333vw, 20px);
}
.innerDL > dd:not(:last-of-type) {
  margin-bottom: min(5.3333333333vw, 20px);
}

.ul-dot li {
  padding-left: min(4vw, 15px);
  position: relative;
}
.ul-dot li:not(:last-of-type) {
  margin-bottom: 5px;
}
.ul-dot li::before {
  content: "・";
  position: absolute;
  top: 0px;
  left: 0px;
}

.ol-paren {
  counter-reset: item;
  list-style: none;
}
.ol-paren li {
  padding-left: min(5.3333333333vw, 20px);
  position: relative;
}
.ol-paren li:not(:last-of-type) {
  margin-bottom: 5px;
}
.ol-paren li::before {
  content: "(" counters(item, "-") ")";
  counter-increment: item;
  position: absolute;
  top: 0px;
  left: 0px;
}

.js-kiyakuDate {
  margin-top: 20px;
  text-align: right;
}

.js-clip {
  position: relative;
  white-space: nowrap;
}
@media (hover: hover) and (pointer: fine) {
  .js-clip {
    cursor: pointer;
  }
}
.js-clip::after {
  background: url("../img/icon-copy.svg") no-repeat center center/100% auto;
  content: "";
  display: inline-block;
  height: 14px;
  margin-left: 2px;
  width: 14px;
  position: relative;
  top: 1px;
}

.successMsg {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  z-index: 10;
}
.successMsg span {
  border-radius: 15px;
  box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.3);
  color: #fff;
  font-size: min(4.2666666667vw, 16px);
  font-weight: bold;
  overflow: hidden;
  padding: 15px 25px;
  position: relative;
  z-index: 1;
}
.successMsg span::after {
  background: #ed1c25;
  content: "";
  opacity: 0.95;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  z-index: -1;
}