@charset "UTF-8";

@media(max-width:767.9px){

  .pc_infoContainer,
  .pc_mainContainer
  {
    display: none;
  }

  #infoContainer {
    padding: 60px 0 0 0; }
  #infoContainer.association,
  #infoContainer.qa {
    padding: 110px 0 0 0; }
  .innerWrapper {
    padding: 10px; }
  .mb1em {
    margin-bottom: 1em !important; }
  .mb2em {
    margin-bottom: 2em !important; }
  h4.privacy{
    margin: 0 0 5px;
    padding:0;
  }
  a {
    box-sizing: border-box; }
    
  /*../img/association/pic_association_h2bg.jpg*/
  /*h2*/
  .pageHeader {
    background: url(../img/pic_sitemap_h2bg.jpg) 10% 50% no-repeat;
    background-size: cover; }
  .pageHeader.vote {
    background: url(../img/pic_sitemap_h2bg_sp.jpg) 10% 50% no-repeat;
    background-size: cover; }
  .pageHeader.dirtrace {
    background: url(../img/dirtrace/pic_dirtrace_h2bg.jpg) 10% 50% no-repeat;
    background-size: cover; }
  
  .privacy_policy_01_pageHeader{
    background: url(../img/association/pic_association_h2bg.jpg) 50% 50% no-repeat;
    background-size: cover;
  }
  
  /*汎用*/
  section.content {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 5px 0;
    font-size: 13px;
    box-sizing: border-box;
    display: block; }
    section.content.tel {
      padding: 0 5px;  }
  h3 {
    width: 100%;
    height: auto;
    margin: 0 auto 13px;
    padding: 0 0 2px;
    box-sizing: border-box;
    display: block; }
  h4 {
    width: 100%;
    height: auto;
    margin: 0 auto 5px;
    padding: 0;
    box-sizing: border-box;
    display: block; }
  img.nraLogo {
    width: 90%;
    max-width: 250px;
    height: auto;
    margin: 0 auto 20px;
    padding: 0;
    box-sizing: border-box;
    display: block; }
  .signature {
    width: 100%;
    height: auto;
    margin: 0 auto 20px;
    padding: 0 10px;
    box-sizing: border-box;
    display: block;
    text-align: right; }
    .signature p {
      width: auto;
      height: auto;
      margin: 0 auto;
      padding: 0;
      text-align: left;
      display: inline-block; }
    .signature span {
      font-size: 13px;
      display: block; }
    .signature span.name {
      font-size: 16px; }
  .dataArea {
    width: 100%;
    min-height: 400px;
    height: auto;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: block; }
    .dataArea p {
      padding: 0 23px;
      line-height: 1.45; }
  ul li {
    width: 98%;
    height: auto;
    margin: 0 auto;
    padding: 10px 15px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: block;
    position: relative; }
    ul li span.title {
      width: 100%;
      height: auto;
      margin: 0 auto;
      padding: 0;
      display: block;
      font-weight: bold; }
  
  /*コンテンツ内ボタン汎用*/
  .btnWrapper {
    width: 100%;
    height: auto;
    margin: 0 auto 25px;
    padding: 0 0;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: block; }
    .btnWrapper.top {
      width: 100%;
      text-align: right; }
    .btnWrapper a.linkBtn {
      width: 100%;
      height: 35px;
      min-height: 35px;
      margin: 0 auto 5px;
      padding: 0 15px 0 25px;
      display: inline-block;
      background: url(../img/icon_linkbtn_arr_wh_sp.png) 10px 50% no-repeat #333;
      background-size: 8px auto;
      border-radius: 3px;
      color: #fff;
      line-height: 35px;
      font-size: 14px;
      vertical-align: top;
      text-decoration: none;
      text-align: left; }
      a.linkBtn.qa {
        font-size: 12px; }
      .btnWrapper a.linkBtn[href^="#"] {
        font-size: 13px; }
  a.txtLink {
    width: auto;
    height: auto;
    margin: 0 5px 0;
    padding: 5px 0 5px 20px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: inline-block;
    background: url(../img/icon_arr_right_circle_bl.png) 0 50% no-repeat;
    background-size: 14px 14px;
    font-size: 13px;
    text-decoration: none; }
  
  /*FAQ*/
  .dataArea .content > h4 {
    padding: 70px 0 0;
    margin: -70px auto 10px; }
  .qaArea {
    margin: 0 auto 2em; }
  
  /*インターネット投票サイト特集*/
  .dataArea p.chartText {
    margin: 0 auto 2em;
    padding: 0 5px 5px; }
  .chartWrapper table {
    width: 100%; }
    .chartWrapper table tr.thead {
      display: none; }
    .chartWrapper table th {
      width: auto;
      border-right: none;
      display: block; }
    .chartWrapper table td {
      width: auto;
      text-align: left;
      border-right: none;
      padding: 7px 10px;
      display: block; }
    .chartWrapper table td:before {
      display: block;
      text-align: left;
      padding: 0 0 3px;
      margin: 0 auto 5px;
      border-bottom: 1px dotted #9f9f9f;
      font-weight: bold;
      font-size: 14px; }
    .chartWrapper table td:nth-child(2) {
      padding: 10px 10px 5px; }
    .chartWrapper table td:not(:nth-child(1)):before {
      content: attr(data-head); }
    .chartWrapper a.linkBtn {
      width: 100%;
      height: 35px;
      margin: 0 auto 5px;
      padding: 0 15px 0 25px;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      display: inline-block;
      background: url(../img/icon_linkbtn_arr_wh_sp.png) 10px 50% no-repeat #1a74bc;
      background-size: 8px auto;
      border-radius: 3px;
      color: #fff;
      line-height: 35px;
      vertical-align: top;
      text-decoration: none;
      text-align: left;
      font-size: 13px; }
      .chartWrapper a.linkBtn.large {
        height: 35px;
        font-size: 13px;
        padding: 5px 10px 5px 20px;
        background: url(../img/icon_linkbtn_arr_wh_sp.png) 8px 10px no-repeat #1a74bc;
        background-size: 8px auto; }
  
  /*レーティング表組み*/
  h5.chartTitle {
    margin: 15px 0 0; }
  table.ratingList {
    width: 100%;
    height: auto;
    margin: 0 auto 30px;
    padding: 0;
    display: table;
    border: 1px solid #9f9f9f;
    border-bottom: none;
    font-size: 15px;
    text-align: left; }
    table.ratingList tr:nth-child(2n-1) {
      background: #fff; }
    table.ratingList td:nth-child(2n-1) {
      background: #fff; }
    table.ratingList td:nth-child(2n) {
      background: #f0f0f0; }
    table.ratingList th {
      background: #555;
      color: #fff;
      padding: 7px 0;
      border-right: 1px solid #9f9f9f;
      text-align: center;
      font-size: 12.5px;
      display: none; }
    table.ratingList tr th:last-child {
      border: none; }
    table.ratingList tr:nth-child(2n) {
      background: #fff; }
    table.ratingList tr td {
      padding: 5px;
      text-align: center;
      border-bottom: 1px solid #9f9f9f;
      border-right: none;
      display: block;
      font-size: 13px; }
    table.ratingList tr td:first-child {
      background: #555;
      color: #fff;
      text-align: center; }
      table.ratingList td:not(:nth-child(1)) {
        width: auto;
        position: relative;
        padding: 7px 5px 7px 45%;
        display: block;
        text-align: left; }
      table.ratingList td:nth-child(1) {
        background: #555;
        color: #fff;
        padding: 7px 0;
        text-align: center;
        font-weight: bold; }
      table.ratingList td:not(:nth-child(1)):before {
        content : attr(data-head);
        width: 38%;
        height: calc(100% - 7px);
        position: absolute;
        border-right: 1px solid #9f9f9f;
        padding: 7px 0 0 10px;
        top: 0;
        left: 0; }
      table.ratingList td.line02 {
        min-height: 35px;
        line-height: 35px; }
      table.ratingList td.line02:before {
        white-space: pre;
        line-height: 1.35; }
  
  /*電話*/
  .introArea .num a
  {
    color: #333;
    text-decoration: none;
   }
  .introArea {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
    display: block; }
    .introArea.tel{
      width: 100%;
      height: auto;
      margin: 0 auto;
      padding: 0;
      box-sizing: border-box;
      display: block; }
  .pdfArea {
    width: 100%;
    height: auto;
    margin: 0 auto 10px;
    padding: 10px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: contents;
    border-radius: 3px;
    text-align:left; }
    .pdfArea.tel {
      padding: 10px 0; 
    display: block; }
  .pdfAttention {
    width: 100%;
    height: auto;
    margin: 0 auto 30px;
    padding: 10px;
    border-radius: 3px;
    box-sizing: border-box;
    display: block;
    position: relative;
    background: #f0f0f0; }
  a.pdfBanner {
    width: 158px;
    height: 39px;
    margin: auto;
    padding: 0;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: block;
    position: static; }
    a.pdfBanner img {
      width: 100%;
      height: auto;
      margin: 0 auto;
      padding: 0;
      display: block; 
      width: 100%;
      height: 35px;
      min-height: 35px;
      margin: 3px auto 10px;
      padding: 0 15px 0 40px;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      display: block;
      background: url(../img/icon_pdf.png) 10px 50% no-repeat #1a74bc;
      background-size: 18px auto;
      border-radius: 3px;
      color: #fff;
      line-height: 35px;
      font-size: 14px;
      vertical-align: top;
      text-decoration: none;
      text-align: left;
  }
  a.download {
      width: 100%;
      height: 35px;
      margin: 0 auto;
      padding: 0 15px 0 40px;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      display: inline-block;
      background: url(../img/icon_pdf.png) 10px 50% no-repeat #1a74bc;
      background-size: 18px auto;
      border-radius: 3px;
      color: #fff;
      line-height: 35px;
      font-size: 14px;
      vertical-align: top;
      text-decoration: none;
  }
  a.download.line02 {
    width: auto;
    height: auto;
    line-height: normal;
    padding: 8px 15px 8px 40px;
    min-height: 35px;
    margin: 0 0 0 0;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: inline-block;
    background: url(../img/icon_pdf.png) 10px 50% no-repeat #1a74bc;
    background-size: auto;
    background-size: 18px auto;
    border-radius: 3px;
    color: #fff;
    font-size: 14px;
    vertical-align: top;
    text-align: left;
    text-decoration: none; }


    article.privacy a.download {
      width: 100%;
      height: 35px;
      min-height: 35px;
      margin: 3px auto 10px;
      padding: 0 15px 0 40px;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      display: block;
      background: url(../img/icon_pdf.png) 10px 50% no-repeat #1a74bc;
      background-size: 18px auto;
      border-radius: 3px;
      color: #fff;
      line-height: 35px;
      font-size: 14px;
      vertical-align: top;
      text-decoration: none;
      text-align: left;
  }
  p.attention {
    width: 100%;
    height: auto;
    margin: 5px auto;
    padding: 0 0 0 1.3em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: block;
    position: relative; }
    p.attention:after {
      content: "※";
      width: auto;
      height: auto;
      padding: 0;
      margin: auto;
      display: block;
      position: absolute;
      top: 0;
      left: 0; }
  p.date {
    width: 100%;
    height: auto;
    margin: 0 auto 5px;
    padding: 0;
    box-sizing: border-box;
    display: block;
    text-align: right; }
  
    table.tel {
      width: 100%; }
      table.tel tr th.a {
        width: 20%; }
      table.tel tr th.b {
        width: 20%; }
      table.tel tr th.c {
        width: 40%; }
      table.tel tr th.d {
        width: 20%; }
        article div.scroll,
      .scroll{
        overflow-x: scroll;
        white-space: nowrap;
      }  
      h4 {
    width: 100%;
    height: auto;
    margin: 0 auto 25px;
    padding: 0 0 0 3px;
    border-bottom: 1px dotted #333;
    font-weight: bold;
    font-size: 15.5px; }
  table {
    width: 100%;
    height: auto;
    margin: 0 auto 10px;
    padding: 0;
    display: table;
    border: 1px solid #9f9f9f;
    font-size: 12px; 
    }
    table.tel {
      height: auto;
      margin: 0 auto 10px;
      padding: 0;
      display: table;
      border: 1px solid #9f9f9f;
      font-size: 12.5px; 
      }
      table.tel tr td {
        padding: 7px;
      }
    table th {
      width: 20%;
      background: #555;
      color: #fff;
      padding: 10px;
      text-align: center;
      border-right: 1px solid #9f9f9f;
      vertical-align: middle; }
      table th img {
        width: 94px;
        height: 35px;
        margin: 0 auto;
        padding: 0;
        box-sizing: border-box;
        display: block;
        box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3); }
    table tr:nth-child(2n-1) {
      background: #f0f0f0; }
    table tr td {
      padding: 10px;
      border-right: 1px solid #9f9f9f;
      display: table-cell;
      text-align: center; }
    table tr td.head {
      text-align: left;
      font-weight: bold; }
    table a.link {
      width: 100%;
      height: auto;
      margin: 0 10px 0;
      padding: 0 0 0 15px;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      display: block;
      background: url(../img/icon_arr_right_circle_bl.png) 0 50% no-repeat;
      background-size: 10px 10px;
      font-size: 13px;
      text-decoration: none; }
    table tr td a.linkBtn {
      width: 100%;
      height: 30px;
      line-height: 30px;
      font-size: 13px;
      padding: 0 10px 0 20px;
      background: url(../img/icon_linkbtn_arr_wh_sp.png) 8px 50% no-repeat #1a74bc; }
    table a.linkBtn.large {
      width: 100%;
      height: auto;
      line-height: normal;
      padding: 5px 10px 5px 20px;
      background: url(../img/icon_linkbtn_arr_wh_sp.png
      ) 8px 10px no-repeat #1a74bc;
      font-size: 12.5px; }
    table td.txt {
      text-align: left;
      line-height: 1.3; }
      table td.txt p {
        padding: 3px 0; }
    table td.txt.vTop {
      vertical-align: top; }
      table td.txt.vTop p {
        display: inline-block; }
      table td.txt.vTop p span.title {
        width: auto;
        margin: 0 auto;
        padding: 0 0 5px 0;
        box-sizing: border-box;
        display: table-cell;
        font-weight: bold;
        vertical-align: middle; }
    table td span.small {
      font-size: 12px; }
  
  ul.numWrapper {
    width: 100%;
    height: auto;
    margin: 0 auto 20px;
    padding: 0;
    box-sizing: border-box;
    display: block; }
    ul.numWrapper li.num {
      width: 100%;
      height: auto;
      margin: 1em 2% 1em 0;
      padding: 10px;
      box-sizing: border-box;
      display: block;
      background: #f0f0f0;
      border-radius: 3px; }
      ul.numWrapper li.num:last-child {
        margin: 0; }
      ul.numWrapper li.num p.numtitle {
        width: 100%;
        height: auto;
        margin: 0 auto 10px;
        padding: 0;
        box-sizing: border-box;
        display: block;
        font-size: 15px;
        text-align: center; }
      ul.numWrapper li.num p.telNum {
        width: 100%;
        height: auto;
        margin: 0 auto;
        padding: 20px;
        box-sizing: border-box;
        display: block;
        font-size: 15px;
        text-align: center;
        background: #fff; }
  
  /*個人情報*/
  article.privacy {
    width: 100%;
    height: auto;
    margin: 0 auto 10px;
    padding: 0 0;
    box-sizing: border-box;
    display: block; }
    article.privacy h4 {
      border: none;
      height: auto;
      margin: 0 5px 5px;
      padding: 0;
      box-sizing: border-box;
      display: block;
      border-bottom: 1px dotted #9f9f9f;
      width: auto;
      margin-top: 2rem; 
    
    }
    article.privacy h4:nth-child(1) {
      margin-top: 0;
    }

    article.privacy h5 {
      font-size: 16px;
      border-bottom: 1px dotted #555;
      margin: 0 0 7px; }
    article.privacy h6 {
      font-size: 15px;
      font-weight: bold;
      margin: 20px 0 15px; }
    article.privacy .pdfArea {
      padding: 0; }
    article.privacy .dataArea p {
      padding: 0; }
      article.privacy .dataArea .innerTxt p {
      padding: 0 5px; }
    article.privacy .dataArea .num {
      padding: 10px 0 0 20px;
      width: 100%; }
  
  /*PDFダウンロード*/
  article.privacy .pdfArea {
    width: 100%;
    height: auto;
    margin: 0 auto 10px;
    padding: 0 5px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    text-align: center;
    display: block; }
    article.privacy .pdfArea p.fileName {
      width: 100%;
      height: auto;
      margin: 8px auto 4px;
      padding: 0;
      box-sizing: border-box;
      display: block;
      text-align: left;
      font-size: 13px; }
      article.privacy .pdfArea p.fileName {
        width: 100%;
        height: auto;
        margin: 8px auto 4px;
        padding: 0;
        box-sizing: border-box;
        display: block;
        text-align: left;
        font-size: 13px;
    }
  a.chartLink {
    width: 100%;
    height: 35px;
    min-height: 35px;
    margin: 3px auto 0;
    padding: 0 20px 0 30px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: inline-block;
    background: url(../img/icon_linkbtn_arr_wh_sp.png) 15px 50% no-repeat #333;
    background-size: 8px auto;
    border-radius: 3px;
    color: #fff;
    line-height: 35px;
    font-size: 14px;
    vertical-align: top;
    text-decoration: none;
    text-align: left; }
  
  /*お客様へのお願い*/
  #infoContainer.illegal {
    padding: 60px 0 0 0; }
  .pageHeader.association {
    background: url(../img/association/pic_association_h2bg.jpg) 50% 50% no-repeat;
    background-size: cover; }
  .dataArea.illegal h4 {
    width: 99%;
    height: auto;
    margin: 0 auto 10px;
    padding: 0;
    box-sizing: border-box;
    display: block;
    border-bottom: 1px dotted #9f9f9f; }
  .dataArea.illegal p {
    padding: 0; }
  }