@media screen and (max-width: 767px) {
  .w100p {
    width: 100% !important;
    height: auto !important; }
  #main {
    font-size: 15px !important; }
    #main img {
      max-width: 100%; }
  h1#title {
    position: relative;
    padding-right: 70px; }
    h1#title.normal {
      padding-right: 0 !important; }
    h1#title img.sp-item {
      position: absolute;
      top: 50%;
      right: 20px; }
  /*common*/
  .pd0 {
    padding-bottom: 0 !important; }
  .sp-item.caution {
    color: #F00;
    padding: 20px 0 0; }
  .table-wrap {
    width: 100% !important;
    overflow-x: scroll;
    padding: 0 !important;
    padding: 1px;
    box-sizing: border-box; }
    .table-wrap table th {
      padding: 5px !important;
      white-space: nowrap !important;
      width: auto !important; }
  .section {
    width: 100% !important;
    padding: 1px !important;
    box-sizing: border-box; }
  #michigan .table-wrap > table {
    width: 700px; }
  .table-wrap .tbl_tokuten {
    width: 700px; }
  div.curvy700 div.flyer {
    background: url("../ticket/hirapagogo/i/bg.jpg") no-repeat 0 0 !important; }
  .pulldown-sp {
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 0;
    margin-bottom: 10px; }
    .pulldown-sp .pulldown-btn {
      position: relative;
      display: block;
      padding: 10px;
      cursor: pointer; }
      .pulldown-sp .pulldown-btn::after {
        content: '';
        position: absolute;
        top: calc(50% - 4px);
        right: 10px;
        margin: auto 0;
        box-sizing: border-box;
        width: 8px;
        height: 8px;
        border-bottom: 2px solid #333;
        border-right: 2px solid #333;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
    .pulldown-sp .tab-list {
      border: none !important;
      display: none; }
      .pulldown-sp .tab-list li {
        position: relative;
        width: 100% !important;
        float: none !important;
        height: auto !important;
        margin-right: 0 !important;
        border-top: 1px dotted #ccc;
        padding: 10px 10px 10px 20px;
        display: block !important; }
        .pulldown-sp .tab-list li::before {
          content: '';
          top: 0;
          bottom: 0;
          margin: auto 0;
          position: absolute;
          left: 10px;
          width: 6px;
          height: 6px;
          border-top: 2px solid #333;
          border-right: 2px solid #333;
          -webkit-transform: rotate(45deg);
          transform: rotate(45deg); }
  .slideon {
    display: block !important; }
  .pdflink li {
    width: 100% !important;
    float: none !important; }
    .pdflink li + li {
      margin-top: 10px !important; }
  .overview {
    box-sizing: border-box;
    margin-left: -20px;
    margin-right: -20px;
    border: none;
    width: auto; }
    .overview th,
    .overview td {
      box-sizing: border-box;
      width: 100% !important;
      display: block !important;
      border-right: 0 !important;
      border: none; }
    .overview th {
      padding: 0.3em 20px !important; }
      .overview th span.free {
        display: inline-block; }
    .overview td {
      padding: 1em 20px !important; }
    .overview .validarea {
      margin: 0 !important; }
      .overview .validarea dt {
        margin: 0 !important;
        float: none !important;
        width: 100% !important; }
      .overview .validarea dd {
        margin: 0 0 10px 0 !important; }
    .overview .areamap {
      padding: 20px 0 0 !important; }
    .overview .places dt {
      float: none !important;
      width: 100% !important; }
    .overview .places dd {
      margin: 0 0 10px 0 !important; }
    .overview .places li.nowrap {
      white-space: normal !important; }
    .overview #salelocation .nowrap,
    .overview #train_area .nowrap {
      white-space: normal !important; }
    .overview #salelocation th,
    .overview #train_area th {
      padding: 0 !important;
      width: 100% !important;
      display: block !important;
      text-align: left !important; }
    .overview #salelocation td,
    .overview #train_area td {
      padding: 0 0 10px 0 !important;
      width: 100% !important;
      display: block !important;
      text-align: left !important; }
  .disp_block {
    display: block !important;
    width: 100% !important; }
  .biwakobox p {
    width: 100% !important;
    float: none !important;
    text-align: center !important; }
  .biwakobox a {
    float: none !important;
    width: 100% !important;
    text-align: center !important; }
  .col_l {
    float: none !important;
    width: 100% !important; }
  .col_r {
    float: none !important;
    width: 100% !important; }
  .col2.col_r {
    margin-top: 20px !important; }
  .schedules th {
    width: 40px !important;
    padding: 0 !important; }
  .schedules td {
    padding: 5px !important; }
  .timetable th,
  .timetable td {
    padding: 5px !important;
    font-size: 12px !important; }
  .otherticket .fr {
    width: 100% !important;
    float: none !important; }
  .otherticket .fl {
    width: 100% !important;
    float: none !important;
    text-align: center !important;
    padding-bottom: 20px !important; }
  .ticketinfo > tbody > tr > th,
  .ticketinfo > tbody > tr > td {
    width: 100% !important;
    display: block !important;
    padding: 10px !important; }
  .ticketinfo td {
    white-space: normal !important; }
  .ticketinfo #season th,
  .ticketinfo #season td {
    width: 100% !important;
    display: block !important;
    padding: 0; }
  .ticketinfo #season th,
  .ticketinfo #season td.label {
    padding-top: 1em !important;
    font-weight: bold; }
  .pricelist {
    border-bottom: 1px solid #c7c7c7;
    border-collapse: collapse;
    font-size: 13px !important; }
    .pricelist > tbody > tr th,
    .pricelist > tbody > tr td {
      width: 100% !important;
      display: block !important;
      padding: 10px !important; }
    .pricelist > tbody > tr td {
      border-bottom: none !important;
      border-top: none !important;
      padding: 5px !important; }
      .pricelist > tbody > tr td.price {
        text-align: center !important;
        white-space: nowrap; }
      .pricelist > tbody > tr td td {
        display: inline-block !important;
        padding: 0 !important; }
  .arashiyama .pricelist > tbody > tr > th,
  .arashiyama .pricelist > tbody > tr > td {
    width: auto !important;
    display: table-cell !important;
    padding: 5px !important; }
  .arashiyama .pricelist > tbody > tr > th {
    border-bottom: 0 !important; }
  .arashiyama .pricelist > tbody > tr > td {
    border-top: 1px solid #c7c7c7 !important; }
  .tbl_tokuten th,
  .tbl_tokuten td {
    padding: 5px !important;
    font-size: 12px !important; }
  .hieizan .tblStyle01 > tbody > tr > th,
  .hieizan .tblStyle01 > tbody > tr > td {
    width: 100% !important;
    display: block !important;
    border-right: 0 !important;
    padding: 10px !important; }
  .hieizan .tblStyle01 > tbody > tr > td th,
  .hieizan .tblStyle01 > tbody > tr > td td {
    display: block !important;
    width: 100% !important; }
  .hieizan .tblStyle01 > tbody > tr > td td {
    padding-bottom: 10px !important; }
  .related_tickets li + li {
    margin-top: 20px !important; }
  .sp-tc {
    text-align: center;
    display: block; }
  #train_area th {
    padding: 0 !important; }
  #train_area td {
    padding: 0 0 10px 0 !important; }
  .curvyIn .text16,
  .pagewrapper .text16,
  .text16 {
    font-size: 100% !important; }
  /*index.html*/
  .trafficTicket div.head_image .btn-kansai {
    width: 50px !important;
    height: 50px !important;
    left: 5px !important;
    top: 5px !important; }
  #valueticket .area_list li {
    width: 50%;
    margin: 0 0 5px 0 !important; }
  #valueticket .tktListCont {
    margin: 0 !important; }
  #valueticket .ticket {
    width: 100% !important;
    float: none !important; }
  #valueticket div.ticket ul {
    margin: 0 !important; }
    #valueticket div.ticket ul li {
      width: 100% !important;
      margin-right: 0 !important; }
  #valueticket div.ticket ul.boxList li {
    padding-bottom: 0 !important; }
    #valueticket div.ticket ul.boxList li + li {
      margin-top: 20px !important; }
  #valueticket div.ticket h3.ttl {
    margin: 1.5em 0 1em;
    padding: 1em;
    text-align: center;
    font-size: 1.0em; }
  #valueticket .sp-tc {
    display: block;
    text-align: center; }
  #valueticket .intro h3 {
    margin-bottom: 5px !important; }
  #valueticket .intro dt {
    padding-top: 10px !important;
    float: none !important;
    width: 100% !important; }
  #valueticket .intro dd {
    margin-left: 0 !important; }
  #valueticket .area {
    float: none !important;
    width: 100% !important; }
    #valueticket .area h3 {
      margin: 0 0 10px 0 !important; }
  #valueticket .otherplace {
    padding: 10px 10px 0 !important; }
    #valueticket .otherplace .boxList {
      margin: 0 !important; }
    #valueticket .otherplace ul.boxList li {
      display: block !important;
      width: 100% !important;
      margin: 0 !important; }
  #valueticket div.noevent {
    width: 100% !important; }
  .inquiries > li {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    height: auto !important; }
    .inquiries > li .nowrap {
      white-space: normal !important; }
  .peach-box1 .clearfix {
    text-align: center !important; }
  .peach-box1 img {
    float: none !important;
    margin-bottom: 10px; }
  .hirapa h2 strong {
    margin-left: 0 !important; }
  .kurama-box1 img {
    float: none !important;
    width: auto !important;
    margin: 0 !important; }
  .kurama-box1 .mt15 {
    margin: 5px 0 10px 0 !important; } }
