@charset "UTF-8";
/** reset */
.curvyIn,
.pagewrapper {
  -webkit-text-size-adjust: 100%;
}

.curvyIn p, .curvyIn li, .curvyIn dt, .curvyIn dd, .curvyIn th, .curvyIn td, .curvyIn input, .curvyIn textarea, .curvyIn select, .curvyIn h1, .curvyIn h2, .curvyIn h3, .curvyIn h4, .curvyIn h5, .curvyIn h6,
.pagewrapper p,
.pagewrapper li,
.pagewrapper dt,
.pagewrapper dd,
.pagewrapper th,
.pagewrapper td,
.pagewrapper input,
.pagewrapper textarea,
.pagewrapper select,
.pagewrapper h1,
.pagewrapper h2,
.pagewrapper h3,
.pagewrapper h4,
.pagewrapper h5,
.pagewrapper h6 {
  font-size: 100%;
}

.curvyIn .text10,
.pagewrapper .text10 {
  font-size: 77% !important;
}

.curvyIn .text11,
.pagewrapper .text11 {
  font-size: 85% !important;
}

.curvyIn .text12,
.pagewrapper .text12 {
  font-size: 93% !important;
}

.curvyIn .text13,
.pagewrapper .text13 {
  font-size: 100% !important;
}

.curvyIn .text14,
.pagewrapper .text14 {
  font-size: 108% !important;
}

.curvyIn .text15,
.pagewrapper .text15 {
  font-size: 116% !important;
}

.curvyIn .text16,
.pagewrapper .text16 {
  font-size: 123.1% !important;
}

.curvyIn .text17,
.pagewrapper .text17 {
  font-size: 131% !important;
}

.curvyIn .text18,
.pagewrapper .text18 {
  font-size: 138.5% !important;
}

.curvyIn .text19,
.pagewrapper .text19 {
  font-size: 146.5% !important;
}

.curvyIn .text20,
.pagewrapper .text20 {
  font-size: 153.9% !important;
}

.curvyIn .text21,
.pagewrapper .text21 {
  font-size: 161.6% !important;
}

.curvyIn .text22,
.pagewrapper .text22 {
  font-size: 167% !important;
}

.curvyIn .text23,
.pagewrapper .text23 {
  font-size: 174% !important;
}

.curvyIn .text24,
.pagewrapper .text24 {
  font-size: 184% !important;
}

.curvyIn .text25,
.pagewrapper .text25 {
  font-size: 189% !important;
}

.curvyIn .text26,
.pagewrapper .text26 {
  font-size: 197% !important;
}

.curvyIn .section,
.pagewrapper .section {
  padding-left: 0;
  padding-right: 0;
}

/**  */
.mono {
  font-family: "ＭＳ ゴシック", "Osaka−等幅","ヒラギノ角ゴ Pro W3",monospace;
}

.red {
  color: #cc1800;
}

.nowrap {
  white-space: nowrap;
}

.clearfix {
  overfloa: hidden;
  _zoom: 1;
}

.contents_wrap {
  overflow: hidden;
  _zoom: 1;
}

p.notice,
.notice li {
  text-indent: -1.2em;
  padding-left: 1.2em;
  font-size: 90%;
}

p.notice .mono,
.notice li .mono {
  padding-right: 0.2em;
}

.flt_l {
  float: left;
}

.flt_r {
  float: right;
}

.blk01 {
  width: 120px;
}

.blk02 {
  width: 255px;
}

.blk03 {
  width: 390px;
}

.blk04 {
  width: 525px;
}

.blk05 {
  width: 660px;
}

/* ****************************************************************************

　おトクなチケット 共通CSS

------------------------------------------------------------------------------- */
.eki {
  white-space: nowrap;
}

.mono {
  font-family: "ＭＳ ゴシック", "Osaka−等幅","ヒラギノ角ゴ Pro W3",monospace;
}

.red {
  color: #cc1800;
}

.nowrap {
  white-space: nowrap;
}

.btn-wrap {
  text-align: center;
}

.borderTop {
  border-top: dotted 1px #c7c7c7;
  margin-top: 1.5em;
  padding-top: 1.5em;
}

/* タブリスト */
ul.tab-list {
  box-sizing: border-box;
  border-bottom: 3px solid #011961;
  display: flex;
  justify-content: center;
  padding: 0 0px;
}

ul.tab-list li {
  width: 100%;
  margin-left: 3px;
}

ul.tab-list li:first-of-type {
  margin-left: 0;
}

ul.tab-list a:hover {
  text-decoration: none;
  opacity: .6;
}

ul.tab-list a::before {
  content: "";
  display: block;
  position: absolute;
  left: 10px;
  top: 50%;
  margin-top: -6.5px;
  width: 13px;
  height: 13px;
  background: url("/traffic/common/img/arrow05.png") no-repeat 0 0;
}

ul.tab-list .tab {
  box-sizing: border-box;
  display: block;
  position: relative;
  padding: .5em .3em .5em 18px;
  text-align: center;
  -webkit-border-radius: 5px 5px 0px 0px;
  -moz-border-radius: 5px 5px 0px 0px;
  border-radius: 5px 5px 0px 0px;
  background: #ffffff;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ffffff 1%, #ededed 99%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #ffffff 1%, #ededed 99%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #ffffff 1%, #ededed 99%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff',endColorstr='#ededed',GradientType=0 );
  /* IE6-9 */
  border-top: solid 1px #c9c9c9;
  border-right: solid 1px #c9c9c9;
  border-left: solid 1px #c9c9c9;
  letter-spacing: .08em;
  font-size: 16px;
  font-weight: bold;
  font-feature-settings: "palt";
}

ul.tab-list .tab.active {
  border-top: solid 1px #011961;
  border-right: solid 1px #011961;
  border-left: solid 1px #011961;
  background: #011961;
  color: #fff;
}

ul.tab-list .tab span {
  display: inline-block;
}

@media screen and (max-width: 767px) {
  ul.tab-list {
    margin-left: -20px;
    margin-right: -20px;
    padding: 0 5px;
    justify-content: space-between;
  }
  ul.tab-list .tab {
    line-height: 1.2;
  }
  ul.tab-list .tab span {
    font-size: 86%;
  }
}

/** ボタン類 */
a.arw01 {
  font-weight: bold;
}

a.arw01:before {
  content: "　";
  padding: 2px;
  font-family: "ＭＳ ゴシック", "Osaka−等幅","ヒラギノ角ゴ Pro W3",monospace;
  background: url("/common/css/img/icon/arrow01.png") no-repeat center left;
}

a.arw01:hover {
  text-decoration: none;
  opacity: .7;
}

a.btn-txt, a._btn {
  display: inline-block;
  padding: .8em 1em;
  font-weight: bold;
  color: #555;
  border: solid 1px #c9c9c9;
  background: #ffffff;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #ffffff 0%, #eeeeee 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
  /* IE6-9 */
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  position: relative;
  behavior: url("/traffic/js/PIE/PIE.htc");
}

a.btn-txt:hover, a._btn:hover {
  text-decoration: none;
  opacity: .6;
}

a.btn-pdf::before, a._pdf::before {
  content: "　";
  display: inline-block;
  width: 1.5em;
  padding: 0 5px;
  font-family: "ＭＳ ゴシック", "Osaka−等幅","ヒラギノ角ゴ Pro W3",monospace;
  background: url("/common/css/img/icon/pdf.gif") no-repeat center left;
}

a.btn-arrow::before, a._arrow::before {
  content: "　";
  display: inline-block;
  padding: 0 5px;
  font-family: "ＭＳ ゴシック", "Osaka−等幅","ヒラギノ角ゴ Pro W3",monospace;
  background: url("/common/css/img/icon/arrow01.png") no-repeat center left;
}

a._external::after {
  content: "　";
  padding: 5px;
  font-family: "ＭＳ ゴシック", "Osaka−等幅","ヒラギノ角ゴ Pro W3",monospace;
  background: url("/common/img/icon/external.gif") no-repeat center left;
  margin-left: .5em;
}

a.fit {
  display: block;
}

a.single {
  width: 30%;
}

a._center {
  margin: auto;
  display: inline-block;
}

.footerNav {
  text-align: center;
  padding-top: 1.5em;
  margin-top: 1.5em;
  border-top: dotted 1px #c7c7c7;
}

/**
  メインビジュアル
*/
.mainvisual {
  position: relative;
}

.mainvisual .keihantabi {
  position: absolute;
  left: 10px;
  top: 10px;
}

/** チケット概要 */
.overview {
  border-collapse: collapse;
  border: 1px solid #C7C7C7;
  border-bottom: none;
  width: 100%;
  margin-top: 20px;
}

.overview th,
.overview td {
  padding: 1em 1.5em;
}

.overview th {
  background-color: #f2f2f2;
  font-weight: bold;
  border-right: 1px solid #c7c7c7;
  border-bottom: 1px solid #C7C7C7;
  text-align: center;
  white-space: nowrap;
  min-width: 6em;
}

.overview th span.free {
  display: block;
}

.overview td {
  border-bottom: 1px solid #C7C7C7;
}

/**
  駅別発売額料金表
*/
.pricelist {
  width: 100%;
}

.pricelist th,
.pricelist td {
  border: solid 1px #c7c7c7;
  padding: .5em 1em;
}

.pricelist th {
  background: #f2f2f2;
  text-align: center;
  font-weight: bold;
}

.pricelist .price {
  text-align: right;
}

.pricelist .inner th,
.pricelist .inner td {
  border: none;
  padding: .25em .5em;
}

/** 
  内容別のお問い合わせ
*/
.inquiries > li {
  position: relative;
  display: block;
  float: left;
  width: 340px;
  box-sizing: border-box;
  padding: 0 10px;
  /**
    &:after{
      content: '';
      width: 1px;
      width: .1rem;
      height: 47px;
      height: 4.7rem;
      position: absolute;
      top: 0;
      left: -2.9296875%;
      background: #353636;
    }
    */
}

.inquiries > li:nth-child(2n+1) {
  margin: 10px 0px 20px 0px;
}

.inquiries > li:nth-child(2n+0) {
  margin: 10px 0px 20px 20px;
}

.inquiries > li h3 {
  border-bottom: solid 1px #c7c7c7;
  margin-bottom: 10px;
  padding-bottom: 5px;
  font-weight: bold;
  /** font-size: 16px; */
}

.inquiries > li > dl.sep {
  margin-top: .5em;
  padding-top: .5em;
  border-top: dotted 1px #ccc;
}

.inquiries > li > dl dt span,
.inquiries > li > dl dd span {
  display: inline-block;
}

.inquiries > li > dl dd {
  margin-top: .2em;
}

/** inquiries */
/** 大津線うりば案内 */
.ticketinfo th {
  white-space: nowrap;
  text-align: center;
}

.ticketinfo .innertbl {
  width: 100%;
  border: solid 1px #c7c7c7 !important;
}

.ticketinfo .innertbl th,
.ticketinfo .innertbl td {
  font-size: 100%;
  padding: 2px 12px;
}

.ticketinfo .innertbl thead th,
.ticketinfo .innertbl thead td {
  text-align: center;
  background: #f2f2f2;
}

.ticketinfo .innertbl tbody th,
.ticketinfo .innertbl tbody td {
  text-align: center;
}

.ticketinfo .innertbl tbody .eki {
  text-align: left;
}

/**
  多言語リンクボタン  
*/
.nav-language {
  margin: 20px 0;
  padding: 20px;
  border-top: 1px dotted #c7c7c7;
  border-bottom: 1px dotted #c7c7c7;
}

.nav-language .ttl {
  width: 100px;
  float: left;
}

.nav-language .btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-left: 120px;
}

.nav-language .btns li {
  margin-left: 5px;
}

.nav-language .btns li:first-child {
  margin-left: 0px;
}

.nav-language .btns a.btn {
  display: block;
  width: 120px;
  height: 32px;
  background-image: url("../i/btn-language.png");
  background-repeat: no-repeat;
  text-align: left;
  text-indent: -9999px;
}

.nav-language .btn-en {
  background-position: 0px 0px;
}

.nav-language .btn-en.selected, .nav-language .btn-en:hover {
  background-position: 0px -32px;
}

.nav-language .btn-cn {
  background-position: -120px 0px;
}

.nav-language .btn-cn.selected, .nav-language .btn-cn:hover {
  background-position: -120px -32px;
}

.nav-language .btn-tw {
  background-position: -240px 0px;
}

.nav-language .btn-tw.selected, .nav-language .btn-tw:hover {
  background-position: -240px -32px;
}

.nav-language .btn-kr {
  background-position: -360px 0px;
}

.nav-language .btn-kr.selected, .nav-language .btn-kr:hover {
  background-position: -360px -32px;
}

@media screen and (max-width: 767px) {
  .nav-language {
    padding: 1em 0;
  }
  .nav-language .ttl {
    width: 100% !important;
    float: none !important;
    text-align: center;
  }
  .nav-language .btns {
    margin-left: 0 !important;
  }
  .nav-language .btns li {
    margin: 0 5px 10px 5px !important;
  }
}

/**
  注意事項
*/
.note li {
  margin-top: .5em;
  padding-left: 1em;
  text-indent: -1em;
  text-align: left;
  line-height: 1.35;
}

.note li:first-child {
  margin-top: 0;
}

/**
  関連チケット
*/
.related_tickets > li {
  position: relative;
  display: block;
  border-top: dotted 1px #c7c7c7;
  padding-top: 20px;
  margin: 20px 0px 0px 0px;
  overflow: hidden;
  *zoom: 1;
}

.related_tickets > li:first-child {
  margin: 0px 0px 0px 0px;
  padding-top: 0px;
  border-top: none;
}

.related_tickets > li .thumb {
  width: 200px;
  float: left;
}

.related_tickets > li .thumb img {
  width: 100%;
}

.related_tickets > li .context {
  margin-left: 220px;
  padding: .5em 0 0 0;
}

.related_tickets > li a {
  margin: 0 0 .5em 0px;
  font-weight: bold;
  font-size: 14px;
}

.related_tickets > li p {
  margin: .3em 0 .3em 0px;
}

.related_tickets > li p.date {
  margin-bottom: 1em;
}

@media screen and (max-width: 767px) {
  .ttl-keihantabi {
    padding-right: 95px !important;
  }
  .related_tickets > li .thumb {
    width: 240px;
    float: none;
    margin: auto;
  }
  .related_tickets > li .thumb img {
    width: 100%;
  }
  .related_tickets > li .context {
    margin: auto;
    padding: 1.5em 0 0 0;
  }
  .related_tickets > li .context a {
    font-size: 1.0em;
  }
  .related_tickets > li .context p {
    font-size: .86em;
  }
}

/** 優待案内 */
.specialoffers > li {
  border-top: dotted 1px #c9c9c9;
  padding-top: 1.5em;
  margin-top: 1.5em;
}

.specialoffers > li:first-of-type {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

/**
  京阪優待
*/
.privilege h3 {
  font-size: 1.231em !important;
  font-weight: bold;
  margin: 0 0 1em;
}

.privilege .btnWrap {
  padding: 1em 0;
}

@media screen and (max-width: 767px) {
  .privilege h3 {
    font-size: 18px;
    margin-bottom: 0 !important;
  }
}

.keihancoupon .row figure {
  box-sizing: border-box;
  margin: auto;
  padding: 0 1em;
  text-align: center;
  width: 180px;
  float: right;
}

.keihancoupon .row figure img {
  display: block;
  width: 100%;
  margin-top: -20px;
}

.keihancoupon .row .context {
  width: auto;
  margin-right: 200px;
}

@media screen and (max-width: 767px) {
  .keihancoupon .row figure {
    float: none;
    width: 60%;
    margin: auto;
    padding: 1em 0;
  }
  .keihancoupon .row figure img {
    margin-top: 0;
    width: auto;
  }
  .keihancoupon .row .context {
    margin: auto;
  }
  .keihancoupon h3 {
    font-size: 18px;
  }
}

/*** 年末年始お知らせ */
.newsWrap {
  position: relative;
  box-sizing: border-box;
  margin-top: 30px;
  padding: 20px 30px;
  background: #FCFAED;
  border: solid 6px #F5927E;
}

.newsWrap a.boxLink {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.newsWrap a.boxLink:before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -17px;
  border-left: solid 3px #F5927E;
  border-top: solid 3px #F5927E;
  transform: rotate(135deg);
}

.newsWrap a.boxLink:hover {
  background: #C00;
  opacity: .5;
}

.newsWrap p {
  font-weight: bold;
  font-feature-settings: "palt";
  margin-bottom: .5em;
}

.newsWrap .note li:before {
  content: "※";
}

#okeihan_newyear a {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  border: solid 1px #ddd;
  padding: 10px;
  margin-top: 20px;
  color: #333;
  /** @media max-width: 767px */
}

#okeihan_newyear a:hover {
  text-decoration: none;
  opacity: .6;
}

#okeihan_newyear a .context {
  box-sizing: border-box;
  padding: 0 0 0 1em;
  text-align: left;
}

#okeihan_newyear a h3 {
  font-weight: bold;
  font-size: 1.231em;
}

#okeihan_newyear a p {
  margin-top: .5em;
}

@media screen and (max-width: 767px) {
  #okeihan_newyear a {
    flex-direction: column;
    max-width: 320px;
    margin: auto;
  }
  #okeihan_newyear a .context {
    padding: 1em 0 0 0;
  }
}
