.dsvc-contents {
  font-size: 1.8rem;
  margin-top: 2em;
}
.winSP .dsvc-contents {
  font-size: 1.6rem;
  margin-top: 0;
}
.dsvc-contents + .dsvc-contents,
.winSP .dsvc-contents + .dsvc-contents  {
  margin-top: 3em;
}
.dsvc-contents div,
.dsvc-contents p,
.dsvc-contents ul,
.dsvc-contents h2 + * {
  margin-top: 1.5em;
}
.dsvc-contents h3 + * {
  margin-top: .5em;
}

.dsvc-contents h2 + .subttl {
  margin-top: 1em;
}
.winSP .dsvc-contents h2 + .subttl {
  margin-top: .5em;
}
.dsvc-details_area {
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.dsvc-details_area .thumb {
  width: 200px;
  -webkit-order: 1;
      -ms-order: 1;
          order: 1;
      display: block;
}

.isDeviceTB .dsvc-details_area .thumb {width: 150px;}
.dsvc-details_area .txtarea {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-order: 2;
      -ms-order: 2;
          order: 2;
      width: 100%;
      padding-left: 40px;
}
.winSP .dsvc-details_area .thumb,
.winSP .dsvc-details_area .txtarea {
  width: 100%;
}
.winSP .dsvc-details_area .thumb {
  text-align: center;
}
.winSP .dsvc-details_area .thumb img {
  width: 150px;
}
.winSP .dsvc-details_area .txtarea {
  margin-top: 15px;
  padding-left: 0;
}
.dsvc-details_area .txtarea {margin-top: 0;}
.dsvc-details_area .txtarea *:first-child {
margin-top: 0;
}

.dsvc-contents .ttl {
  color: #ae3f67;
  font-weight: bold;
  font-size: 3rem;
  line-height: 1.3;
  padding-left: 20px;
  position: relative;
}
.dsvc-contents .ttl:before {
  content: "";
  display: block;
  width: 8px;
  height: 90%;
  top: 0;
  
  background: #AE3F67;
  position: absolute;
  left: 0;
}
.winSP .dsvc-contents .ttl{
  padding-left: 15px;
}
.winSP .dsvc-contents .ttl:before {
  width: 5px;
}
.winSP .dsvc-contents .ttl {
  font-size: 2.2rem;
}

.dsvc-contents .subttl {
  color: #ae3f67;
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1.3;
  margin-top: 1.5em;
}

.winSP .dsvc-contents .subttl {
  font-size: 1.9rem;
}
.dsvc-details_area .caption {
  border: #a4a475 1px solid;
  background: #F9F9D8;
  padding: 20px;
}
.winSP .dsvc-details_area .caption {
  padding: 10px;
}

.dsvc-contents ol.decimal li ~ li{
  margin-top: .5em;
}

.dsvc-contents ol.decimal {
      counter-reset:ol-bullet;
}
.dsvc-contents ol.decimal > li {
  position: relative;
      padding-left: 34px;
}
.dsvc-contents ol.decimal > li:before {
  counter-increment: ol-bullet;
  content: counter(ol-bullet)'\002e\00a0';
  width: 34px;
  text-align: right;
  position: absolute;
  left: 0;
  top: 0;
  padding-right: 5px;
          text-align: right;
}
.dsvc-contents .youtubeRes-wrap {
    margin-right: auto;
    margin-left: auto;
    max-width: 600px;
  }

 .dsvc-contents .colBLU02 {
    color: #0066cc;
  }

.dokugaku_Bn {
    margin-top: 20px;
  }

/* 項目別音声: 見出し（まとめDL）と項目リストの間を詰める、編ブロック間は空ける */
.dsvc-contents ul.dsvc-itemlist-nested > li > ul {
  margin-top: 0.35em;
}
.dsvc-contents ul.dsvc-itemlist-nested > li + li {
  margin-top: 2em;
}