@media screen and (min-width: 768px) {
    .contents_body p{
      font-size: 15px;
      line-height: 28px;
      margin: 28px 0 0;
    }
    .contents_body > p:first-child{
      margin: 0;
    }
    .contents_body p.att{
      font-size: 13px;
      line-height: 21px;
      color: #787878;
    }
    .contents_body h2{
      margin: 96px 0 0;
    }
    .contents_body .img{
      margin: 28px 0 0;
      padding-bottom: 28px;
    }
    .contents_body .img.npb{
      padding-bottom: 0;
    }
    .contents_body .img img{
      max-width: 100%;
    }
    .contents_body ol{
      margin: 28px 0 0;
      counter-reset: item;
    }
    .contents_body ol > li{
      position: relative;
      padding-left: 28px;
      font-size: 15px;
      line-height: 28px;
    }
    .contents_body ol > li:before{
      counter-increment: item;
      content: counter(item)'.';
      position: absolute;
      top: 0;
      left: 0;
      font-size: 13px;
      line-height: 28px;
    }

    .contents_body dl{
      margin: 28px 0 0;
      font-size: 15px;
      line-height: 28px;
    }
    .contents_body dl dt{
      float: left;
      width: 112px;
    }
    .contents_body dl dd{
      margin-left: 112px;
    }

    .contents_body h3{
      font-size: 21px;
      font-weight: bold;
      line-height: 28px;
      margin: 56px 0 0;
    }

    .contents_body .media h3{
      margin: 56px 0 0;
    }
    .contents_body .media ul{
      font-size: 0;
      margin: 0 -14px;
    }
    .contents_body .media ul li{
      display: inline-block;
      width: 308px;
      margin: 28px 14px 0;
    }
    .contents_body .media ul li img{
      width: 100%;
    }
    .contents_body .media ul li p{
      position: relative;
      font-size: 15px;
      font-weight: bold;
      line-height: 28px;
      color: #666666;
    }
    .contents_body .media ul li p:after{
      content: '';
      position: absolute;
      top: 7px;
      right: 7px;
      display: block;
      width: 14px;
      height: 14px;
      background: url(/jp/en/img/common/arrow.png) no-repeat center center;
      background-size: 100% auto;
    }

    .pc_none {
        display: none !important
    }
}

@media screen and (max-width: 767px) {

    html,
    body {
        /*font-size: .26667vw*/
    }

    body {
        min-width: 320px
    }
    .contents_body p{
      font-size: 15px;
      line-height: 28px;
      margin: 28px 0 0;
    }
    .contents_body > p:first-child{
      margin: 0;
    }
    .contents_body p.att{
      font-size: 13px;
      line-height: 21px;
      color: #787878;
    }
    .contents_body h2{
      margin: 56px 0 0;
    }
    .contents_body .img{
      margin: 28px 0 0;
    }
    .contents_body .img img{
      max-width: 100%;
    }
    .contents_body ol{
      margin: 28px 0 0;
      counter-reset: item;
    }
    .contents_body ol > li{
      position: relative;
      padding-left: 28px;
      font-size: 15px;
      line-height: 28px;
    }
    .contents_body ol > li:before{
      counter-increment: item;
      content: counter(item)'.';
      position: absolute;
      top: 0;
      left: 0;
      font-size: 13px;
      line-height: 28px;
    }

    .contents_body dl{
      margin: 28px 0 0;
      font-size: 15px;
      line-height: 28px;
    }
    .contents_body dl dt{
      float: left;
      width: 64px;
    }
    .contents_body dl dd{
      margin-left: 64px;
    }

    .contents_body h3{
      font-size: 21px;
      font-weight: bold;
      line-height: 28px;
      margin: 56px 0 0;
    }

    .contents_body .media h3{
      margin: 56px 0 0;
    }
    .contents_body .media ul li{
      margin: 28px 0 0;
    }
    .contents_body .media ul li img{
      width: 100%;
    }
    .contents_body .media ul li p{
      position: relative;
      font-size: 15px;
      font-weight: bold;
      line-height: 28px;
      color: #666666;
      margin: 12px 0 0;
    }
    .contents_body .media ul li p:after{
      content: '';
      position: absolute;
      top: 7px;
      right: 7px;
      display: block;
      width: 14px;
      height: 14px;
      background: url(/jp/en/img/common/arrow.png) no-repeat center center;
      background-size: 100% auto;
    }

    .sp_none {
        display: none !important
    }
}

.pt-1{
  padding-top: 1em !important;
}