
.contents_body .table_wrapper .scroll {
  width: 100%;
  overflow-x: scroll;
}

@media print,screen and (min-width: 768px) {
    .contents_body h2{
      margin: 0 0 48px;
    }
    .contents_body p{
      font-size: 15px;
      line-height: 28px;
    }
    .contents_body p.att{
      font-size: 13px;
      color: #787878;
      margin: 28px 0 0;
    }
    .contents_body table{
      margin: 28px 0 0;
      width: 1150px;
      font-size: 15px;
      line-height: 28px;
    }
    .contents_body table th{
      font-weight: bold;
    }
    .contents_body table th:nth-child(1){
      width: 196px;
      text-align: left;
      border-right: 1px solid #E6E6E6;
    }
    .contents_body table tr:nth-child(1) th{
      text-align: left;
      padding: 10px 26px;
      border-right: 1px solid #E6E6E6;
      border-top: none;
    }
    .contents_body table tr:nth-child(1) th:nth-child(3){
      border-right: none;
      border-top: none;
    }
    .contents_body table tr:nth-child(2) th{
      font-weight: normal;
      box-sizing: border-box;
      padding-bottom: 8px;
      text-align: center;
      border-right: none;
      font-size: 13px;
    }
    .contents_body table tr th:nth-of-type(1){
      border-top: 1px solid #E6E6E6;
      border-bottom: 1px solid #E6E6E6;
      padding: 16px 0;
    }
    .contents_body table tr th.current{
      border-bottom: 1px solid #9FD9F6;
    }
    .contents_body table tr:nth-child(1) th:nth-of-type(1){
      border-top: none;
      padding: 0;
    }
    .contents_body table tr:nth-child(2) th:nth-of-type(1){
      border-top: none;
      padding: 0;
    }
    .contents_body table tr td{
      padding: 0 28px 0 0;
      vertical-align: middle;
    }
    .contents_body table td:nth-of-type(1){
      box-sizing: border-box;
      border-top: 1px solid #E6E6E6;
      padding: 16px 0 16px 28px;
      vertical-align: top;
    }
    .contents_body table tr td.spacer{
      width: 28px;
      padding: 0;
      border: none;
    }
    .contents_body table tr td.val{
      width: 200px;
      border: 1px solid #E6E6E6;
      text-align: center;
      padding: 16px;
      box-sizing: border-box;
    }

    .contents_body table tr td.val.current{
      padding: 16px;
      background-color: #E6F4FA;
      border: 1px solid #9FD9F6;
    }
    .contents_body table tr td.val{
      line-height: 1.2;
    }
    .contents_body table tr td.val small{
      display: block;
      margin: 5px 0;
    }
    .contents_body table tr td.val.large{
      font-size: 19px;
    }
    .contents_body table tr:last-child th{
      border-bottom: 1px solid #E6E6E6;
    }
    .contents_body table tr:last-child td:nth-of-type(1){
      border-bottom: 1px solid #E6E6E6;
    }
    .contents_body table tr td.last{
      padding: 0;
      width: 50px;
      text-align: center;
    }
    .contents_body table tr td small{
      font-size: 13px;
    }

    .pc_none {
        display: none !important
    }
}

.contents_body .table_wrapper table th{
    line-height: 1.4;
}
@media screen and (max-width: 767px) {

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

    body {
        min-width: 320px
    }

    .contents_body h2{
      margin: 0 0 28px;
    }
    .contents_body p{
      font-size: 15px;
      line-height: 28px;
    }
    .contents_body p.att{
      font-size: 13px;
      line-height: 21px;
      color: #787878;
      margin: 12px 0 0;
    }

    .contents_body .table_wrapper{
      /* margin-left: calc(-19 / 375 * 100vw); */
      width: 100vw;
      background: #FAFAFA;
      border-top: 1px solid #E6E6E6;
      border-bottom: 1px solid #E6E6E6;
      position: relative;
    }

    .contents_body .table_wrapper span{
      width: 56px;
      height: 56px;
      display: block;
      position: absolute;
      top: 154px;
      left: calc(50% - 28px);
      background: url('/jp/ja/company/plan/target/img/sp/icon_swipe.png') no-repeat center center / contain;
    }

    .contents_body table{
      margin: 12px calc(19 / 375 * 100vw);
      width: 1150px;
      font-size: 15px;
      line-height: 28px;
    }
    .contents_body table th{
      font-weight: bold;
    }
    .contents_body table th:nth-child(1){
      width: 196px;
      text-align: left;
      border-right: 1px solid #E6E6E6;
    }
    .contents_body table tr:nth-child(1) th{
      text-align: left;
      padding: 10px 26px 0;
      border-right: 1px solid #E6E6E6;
      border-top: none;
    }
    .contents_body table tr:nth-child(1) th:nth-child(3){
      border-right: none;
      border-top: none;
    }
    .contents_body table tr:nth-child(2) th{
      font-weight: normal;
      box-sizing: border-box;
      padding-bottom: 8px;
      text-align: center;
      border-right: none;
    }
    .contents_body table tr th:nth-of-type(1){
      border-top: 1px solid #E6E6E6;
      padding: 16px 0;
    }
    .contents_body table tr:nth-child(1) th:nth-of-type(1){
      border-top: none;
      padding: 0;
    }
    .contents_body table tr:nth-child(2) th:nth-of-type(1){
      border-top: none;
      padding: 0;
    }
    .contents_body table tr td{
      padding: 0 28px 0 0;
      vertical-align: middle;
    }
    .contents_body table td:nth-of-type(1){
      width: 240px;
      box-sizing: border-box;
      border-top: 1px solid #E6E6E6;
      padding: 16px 28px;
      vertical-align: top;
    }
    .contents_body table tr td.spacer{
      width: 28px;
      padding: 0;
      border: none;
    }
    .contents_body table tr td.val{
      width: 224px;
      border: 1px solid #E6E6E6;
      text-align: center;
      padding: 0;
      box-sizing: border-box;
      background: #ffffff;
    }
    .contents_body table tr td.val.current{
      padding: 16px 0;
      background-color: #E6F4FA;
      border: 1px solid #9FD9F6;
    }
    .contents_body table tr:last-child th{
      border-bottom: 1px solid #E6E6E6;
    }
    .contents_body table tr:last-child td:nth-of-type(1){
      border-bottom: 1px solid #E6E6E6;
    }
    .contents_body table tr td.last{
      padding: 0;
      width: 50px;
      text-align: center;
    }
    .contents_body table tr td small{
      font-size: 13px;
    }

    .sp_none {
        display: none !important
    }
}

.titletd{
  width: 340px;
}