#contents h1 {
  color: #333;
  margin-bottom: 10px;
}
#contents .lead {
  margin-bottom: 20px;
}
#contents .alltop {
  font-size: 125%;
  font-weight: bold;
  margin-bottom: 35px;
  padding: 10px 0;
  border-top: 1px solid #e1e1e1;
  border-bottom: 1px solid #e1e1e1;
}
#contents .sitemap h2 {
  font-size: 125%;
  padding-bottom: 10px;
  margin-bottom: 15px;
  border-bottom: 1px solid #e1e1e1;
}
#contents .sitemap.useful h2 {
  color: #08c;
}
#contents .sitemap h3 {
  font-size: 87.5%;
  margin-bottom: 10px;
}
#contents .sitemap li {
  display: block;
  float: left;
  width: 33%;
  margin-bottom: 40px;
}
#contents .sitemap.useful li {
  width: 40%;
}
#contents .sitemap li a {
  font-size: 87.5%;
  background: url(/_shared/img/icon-arrow_side.gif) no-repeat left 0.2em;
  padding-left: 18px;
}
#contents .sitemap.useful .subnavi {
  padding-top: 35px;
  border-top: 1px solid #e1e1e1;

}

@media screen and (max-width: 768px){
  #contents h1{
    text-align: left;
    font-size: 125%;
  }
  #contents .article-body{
    width: 100%;
  }
  #contents .alltop,
  #contents .sitemap h2{
    font-size: 100%;
  }
  #contents .sitemap ul {
    border: 1px solid #e1e1e1;
    border-radius: 4px;
    width: 100%;
    margin-bottom: 30px;
  }
  #contents .sitemap li {
    float: none;
    margin: 0;
    width: 100%;
    border-bottom: 1px solid #e1e1e1;
  }
  #contents .sitemap li a {
    display: inline-block;
    width: 100%;
    margin: -2px 0 0;
    padding: 15px 30px 10px;
    box-sizing: border-box;
    background: url(/_shared/img/icon-arrow_side.gif) no-repeat;
    background-position: right 1em bottom 1em;
  }

  #contents .sitemap li:last-child {
    border-bottom: none;
  }

  #contents .sitemap.useful li {
    width: 100%;
  }

  #contents .sitemap.useful .subnavi {
    padding-top: 0;
  }
}