@charset "UTF-8";

#page-content .time-table-area {
    width: 1000px;
    margin: 2em auto 1em;
    max-width: 100%;
    padding: 0
}

#page-content .time-table-area > * {
    width: 100%;
    box-sizing: border-box
}
#page-content .time-table-area h3 {
    font-size: 24px;
    padding: 1em 0.5em;
    margin-bottom: 35px;
    background-color: #eee;
    border: 1px solid #9fa0a0;
    position: relative
}
#page-content .time-table-area h3 span {
    position: absolute;
    right: 1em;
    display: block;
    top: 1em
}
@media(max-width:767px) {
    #page-content .time-table-area h3 {
        font-size: 20px
    }
}
@media(max-width:640px) {
    #page-content .time-table-area h3 {
        font-size: 16px;
        padding: 1em 0.5em 2.5em
    }
    #page-content .time-table-area h3 span {
        top: auto;
        bottom: 0.5em
    }
}
@media(max-width:480px) {
    #page-content .time-table-area h3 {
        font-size: 3.9vmin
    }
}
#page-content .time-table-area.resort h3 {
    color: #2379d0
}
#page-content .time-table-area.airport h3 {
    color: #e83c5c
}


#page-content .time-table-area table.time-table {
    width: 100%;
    border-top: 1px solid #626262;
    border-left: 1px solid #626262 border-collapse: collapse;
    font-size: 14px
}

#page-content .time-table-area table.time-table tr td {
    line-height: 1.3em;
    font-size: 13px;
    min-height:4em;
    display: table-cell;
}

#page-content .time-table-area table.time-table tr .table-sticky {
    position: -webkit-sticky;
    position: sticky;
    left: 0;
    z-index: 2;
    background: #fff;
    min-width: 12em;
    border-left: none

}
#page-content .time-table-area table.time-table tr>:first-child {
    min-width: 7em
}
#page-content .time-table-area table.time-table tr td,
#page-content .time-table-area table.time-table tr th {
    padding: 0.6em 0.3em;
    border-right: 1px solid #626262;
    vertical-align: middle;
    position: relative
}
#page-content .time-table-area table.time-table tr td:first-child+:not(.bg-03),
#page-content .time-table-area table.time-table tr th:first-child+:not(.bg-03) {
    border: none;
}
#page-content .time-table-area table.time-table tr .table-sticky::before {
    content: "";
    position: absolute;
    top: 0;
    left: -1px;
    width: 0;
    height: 100%;
    border-left: 1px solid #626262
}
#page-content .time-table-area table.time-table tr .table-sticky::after,
#page-content .time-table-area table.time-table tr td:first-child::after,
#page-content .time-table-area table.time-table tr th:first-child::after {
    content: "";
    position: absolute;
    top: 0;
    right: -1px;
    width: 0;
    height: 100%;
    border-right: 1px solid #626262
}

#page-content .time-table-area table.time-table tr td span {
    font-size: 0.7em
}
#page-content .time-table-area table.time-table tr td:nth-child(n + 3),
#page-content .time-table-area table.time-table tr th:nth-child(n + 3) {
    text-align: center
}
#page-content .time-table-area table.time-table tr td:nth-child(n + 3) {
    width: 4.5em
}
#page-content .time-table-area table.time-table tr.row-span td,
#page-content .time-table-area table.time-table tr.row-span th {
    font-weight: 400;
    min-width: 4em
}
#page-content .time-table-area table.time-table tr th.res-th-01 {
    color: #444;
    font-size: 12px;
    background: #eee
}
#page-content .time-table-area table.time-table tr.row-span th.bg-02 {
    background: #d4edf9
}
#page-content .time-table-area table.time-table tr td.bg-03,
#page-content .time-table-area table.time-table tr.row-span th.bg-03 {
    background: #fce9f1
}
#page-content .time-table-area table.time-table tr td:first-child {
    font-size: 12px;
    border-right: 1px solid #626262;
    width: 6em;
    text-align: center;
    background: #eee
}
#page-content .time-table-area table.time-table.resort-liner tr td:first-child {
    color: #00a6d6
}
#page-content .time-table-area table.time-table.airport-liner tr td:first-child {
    color: #e83c5c
}
#page-content .time-table-area table.time-table tr.row-span th span.express {
    background: #e83c5c;
    color: #fff;
    font-size: 9px;
    font-weight: 400;
    padding: 0.2em 0.7em;
    border-radius: 4px
}
#page-content .time-table-area table.time-table tr > .table-sticky {
    position: -webkit-sticky;
    position: sticky;
    left: 0;
    z-index: 2;
    background: #fff;
    border-left: 2px solid #9fa0a0;
    border-right: 2px solid #9fa0a0
}
#page-content .time-table-area table.time-table th {
    width: inherit
}

.timetable-notes{
    max-width:1000px;
    width:100%;
    margin:0 auto;
    padding:0 0.5em 3em 0.5em;
}

#page .timetable-notes p{
    font-size:15px;
    color:#2f2f2f;
}

#page .timetable-notes h5{
    font-size:15px;
    font-weight:600;
}

.timetable-notes em{
    font-weight:500;
    color:#e60012;
}
.timetable-notes dl{
    padding:0.5em 0;
}

.timetable-notes dl dt{
    font-weight:600;
    color:#2f2f2f;
    font-size:14px;
    line-height:1.5em;
    margin-bottom:0.1em;
}

.timetable-notes dl dd{
    color:#2f2f2f;
    font-size:14px;
    line-height:1.4em;
    margin-bottom:0.8em;
}















