/*------------
    visual
------------*/
.visual {
  background: url(/common/img/bg_gr.png) left bottom repeat-x;
  width: 100%;
}

.visual div.img {
  display: table-cell;
  vertical-align: top;
  width: 365px;
  line-height: 0;
}

.visual div.img img {
  width: 100%;
}

.visual div.text {
  display: table-cell;
  vertical-align: top;
  width: 595px;
  padding-left: 25px;
}

.visual div.text h2 {
  background: url(/common/img/ic_title.png) no-repeat left center;
  font-size: 2.4rem;
  padding-left: 17px;
  padding-bottom: 4px;
  padding-top: 5px;
  font-weight: bold;
  color: #444444;
  margin-top: 10px;
}

.visual div.text h2 span {
  font-size: 1.7rem;
  display: block;
  padding-bottom: 3px;
  font-weight: bold;
  color: #444444;
}

.visual div.text .discription {
  font-size: 1.4rem;
  color: #444444;
  line-height: 28px;
  margin-top: 17px;
}

.visual div.top {
  display: block;
}

.visual div.top .img,
.visual div.top .text {
  display: block;
  width: 100%;
  padding: 0;
}

.visual div.top h2 {
  background-color: #eeeeee;
  padding: 15px 0 10px 20px;
}

.privacy-box {
  width: 720px;
  margin-top: 40px;
}

.privacy-box p.text {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #d6d6d6;
  line-height: 1.7;
}

.privacy-box dl {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #d6d6d6;
}

.privacy-box dl dt {
  font-weight: bold;
  font-size: 1.6rem;
  color: #3f3f3f;
}

.privacy-box dl dd {
  margin-top: 6px;
  font-size: 1.4rem;
  color: #3f3f3f;
  line-height: 1.7;
}

.privacy-box dl dd ol {
  counter-reset: number;
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
}

.privacy-box dl dd ol li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  position: relative;
  padding-left: 2em;
}

.privacy-box dl dd ol li:before {
  position: absolute;
  left: 0;
  display: marker;
  content: "(" counter(cnt) ") ";
}

.privacy-box dl:last-child {
  margin-bottom: 150px;
  border-bottom: none;
  padding-bottom: 0;
}
