@charset "utf-8";

.contents-wrap > h2 {
  font-size: 3.6rem;
  line-height: 1.2;
  position: relative;
  padding: 0 0 20px 0;
  border-bottom: 1px solid #dfdfe3;
  text-decoration: none;
  margin: 3em 0 1em;
}
.contents-wrap > h2::before {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 200px;
  height: 1px;
  background-color: #ff0000;
  content: "";
}
.contents-wrap > h3 {
  font-size: 3rem;
  line-height: 1.3;
  position: relative;
  padding: 0 0 15px 0;
  text-decoration: none;
  margin: 2.75em 0 1em;
}
.contents-wrap > h3::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 50px;
  height: 1px;
  background-color: #ff0000;
  content: "";
}
.contents-wrap > a:link {
  text-decoration: underline;
}
.contents-wrap > a[target="_blank"]::after,
.contents-wrap > a[href$=".pdf"]::after {
  position: relative;
  top: -2px;
  margin: 0 6px;
  display: inline-block;
  background-image: url(/common-files/img/cmn_sprite_ic01.png);
  background-repeat: no-repeat;
  vertical-align: middle;
  content: "";
}
.contents-wrap > a[target="_blank"]::after {
  width: 12px;
  height: 10px;
  background-position: 0px -80px;
}
.contents-wrap > a[href$=".pdf"] {
  width: 15px;
  height: 15px;
  background-position: 0px -120px;
}

.contents-wrap > p > a:link {
  text-decoration: underline;
}
.contents-wrap > p > a[target="_blank"]::after,
.contents-wrap > p > a[href$=".pdf"]::after {
  position: relative;
  top: -2px;
  margin: 0 6px;
  display: inline-block;
  background-image: url(/common-files/img/cmn_sprite_ic01.png);
  background-repeat: no-repeat;
  vertical-align: middle;
  content: "";
}
.contents-wrap > p > a[target="_blank"]::after {
  width: 12px;
  height: 10px;
  background-position: 0px -80px;
}
.contents-wrap > p > a[href$=".pdf"]::after {
  width: 15px;
  height: 15px;
  background-position: 0px -120px;
}
.contents-wrap > ul {
  margin-top: 1em;
}
.contents-wrap > ul li {
  position: relative;
  padding-left: 22px;
}
.contents-wrap > ul li:before {
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #999;
  content: "";
}
.contents-wrap > ol {
  margin-top: 1em;
  list-style: auto;
  padding-left: 1.1em;
}
.contents-wrap > ol li {
  position: relative;
  padding-left: 0.9em;
}
.contents-wrap > ol li::marker {
  font-weight: 700;
}

.contents-wrap > ul li + li,
.contents-wrap > ol li + li {
  margin-top: 0.75em;
}
