html { font-size: 16px; min-height: 100%; font-family: 'Roboto', sans-serif; background-color: #eaeef1; } body { margin: 0; } /*@media (min-width: 768px) { html { font-size: 16px; } }*/ .wrapper { width: 70rem; margin: 2.5rem auto; } /* ~~~~~~ search block ~~~~~~ */ .search-block { background: #eaeef1; border-radius: 0.5rem; box-shadow: 0 1px 2.4rem 0 #c3c9d0; padding: 1.5rem 1.5rem 1.5rem 1.5rem; margin: 1.5rem 0; } .station, .date, div.search-btn { display: inline-block; margin: 0 1.5rem; } .title { font-weight: 500; color: #777a7e; margin-bottom: .3rem; } input.search-input { font-size: 1.5rem; color: #262626; font-weight: 500; line-height: 4.7rem; width: 15rem; height: 3rem; box-sizing: border-box; background: #dfe3e5; border: 1px solid #b8bfc7; box-shadow: 0 1px 0 0 #fff; border-radius: .3rem; padding: 0 1.1rem; text-align: left; } input.search-input:focus { outline: 0; border-color: #68b2dd; background-color: #fff; } input.search-btn { color: #1d4965; font-size: 1.6rem; font-weight: 700; line-height: 3rem; padding: 0 1.5rem; display: inline-block; background: linear-gradient(0deg,#79b6db,#b3dbf2); border: none; border-radius: .3rem; cursor: pointer; } input.search-btn:hover { opacity: 0.8; } /* ~~~~~~ route list table ~~~~~~ */ .route-list { margin-top: 3rem; } table { width: 100%; border-collapse: collapse; border: 1px solid #d7dce1; } th { line-height: 4rem; background: #e6e9ed; border: 1px solid #d7dce1; padding: 0 1rem; font-size: 1rem; text-align: start; font-weight: 700; color: #777a7e; } .departure, .arrival { line-height: 1.6rem; } .link-btn-sort { color: #777a7e; text-decoration: none; } .link-btn-sort:hover { color: #1d4965; cursor: pointer; } .link-btn-sort:visited, .link-btn-sort:active { text-decoration: none; } tr { line-height: 5rem; background-color: white; } tr:hover { background-color: #dee9f4; } td { padding: 0 1rem; border: 1px solid #d7dce1; text-align: center; } td.num, td.capacity { font-size: 1.5rem; font-weight: 700; line-height: 2rem; } .city-list-btn { font-size: 0.8rem; font-weight: 700; line-height: 0.5rem; color: #245c78; text-decoration: none; cursor: pointer; } .city-list-btn:visited { text-decoration: none; } .city-list-btn:hover { text-decoration: underline; } td.city { font-size: 1rem; font-weight: 700; line-height: 1.5rem; } td.time, td.duration { font-size: 1.2rem; font-weight: 900; line-height: 1.4rem; } .route-date { display: flex; justify-content: space-between; border-bottom: 1px solid #c5c7cc; font-size: 0.7rem; font-weight: 700; line-height: 1.25rem; } .link-btn-choose { line-height: 2.5rem; padding: 0 1rem; display: inline-block; color: #1d4965; font-weight: 500; background: linear-gradient(0deg,#79b6db,#b3dbf2); border: none; border-radius: .3rem; cursor: pointer; text-decoration: none; } .link-btn-choose:hover { opacity: 0.8; } .search-error { background: #f1f2f4; border: 1px solid #d7dce1; box-shadow: 0 0 4px 0 rgba(195,201,208,.5); font-weight: 500; font-size: 1.5rem; padding: 4rem 4rem; text-align: center; margin-top: 2rem; line-height: 3rem; } /* ~~~~~~ route city list popup ~~~~~~ */ .popup-container { position: fixed; top: 0; left: 0; z-index: 100; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.25); display: none; } .popup { width: 40rem; height: 30rem; background: #eaeef1; position: fixed; top: calc(50% - 15rem); left: calc(50% - 20rem); border-radius: 0.5rem; box-shadow: 0 10px 15px 5px #6c6e6f; } .popup-header { border-radius: 0.5rem 0.5rem 0 0; height: 3rem; background: #a1b0b9; color: white; font-weight: 700; font-size: 1.1rem; text-align: center; line-height: 3rem; } .popup-body { width: calc(100% - 2rem); height: calc(100% - 5rem); padding: 1rem 1rem; } .popup-body-main { height: calc(100% - 4rem); overflow-y: auto; overflow-x: hidden; } tr.tr-intermediate { font-weight: 500; } th.th-route, td.td-route { height: 4rem; line-height: 1.25rem; text-align: center; padding: 0 0.5rem; } td.address { font-size: 0.8rem; text-align: justify; line-height: 1rem; } tr.tr-departure, tr.tr-arrival { font-weight: 700; } .popup-body-footer { text-align: center; margin-top: 1rem; } .popup-footer-link-button { line-height: 2.5rem; padding: 0 1rem; margin: 0 0.5rem; display: inline-block; color: #1d4965; font-weight: 500; background: linear-gradient(0deg,#79b6db,#b3dbf2); border: none; border-radius: .3rem; cursor: pointer; text-decoration: none; } .popup-footer-button { line-height: 2.5rem; padding: 0 1rem; margin: 0 0.5rem; display: inline-block; color: #1d4965; font-weight: 700; font-size: 1rem; background: linear-gradient(0deg,#79b6db,#b3dbf2); border: none; border-radius: .3rem; cursor: pointer; text-decoration: none; } .popup-footer-button:hover, .popup-footer-link-button:hover { opacity: 0.8; } /* ~~~~~~ ticket ordering popup ~~~~~~ */ .ticket { width: 50rem; height: 20rem; background: #eaeef1; position: fixed; top: calc(50% - 10rem); left: calc(50% - 25rem); border-radius: 0.5rem; box-shadow: 0 10px 15px 5px #6c6e6f; } .ticket-header { border-radius: 0.5rem 0.5rem 0 0; height: 3rem; background: #a1b0b9; color: white; font-weight: 700; font-size: 1.1rem; text-align: center; line-height: 3rem; } .ticket-body { width: calc(100% - 2rem); height: calc(100% - 5rem); padding: 1rem 1rem; } .ticket-body-main { height: calc(100% - 4rem); overflow-y: auto; overflow-x: hidden; text-align: center; } form.ticket-form { } div.ticket-input-item { display: inline-block; width: 15rem; height: 5rem; line-height: 4.7rem; text-align: left; vertical-align: top; } input.ticket-input-firstname, input.ticket-input-lastname, select.ticket-place-select { display: flex; font-size: 1.5rem; color: #262626; font-weight: 500; box-sizing: border-box; background: #dfe3e5; border: 1px solid #b8bfc7; box-shadow: 0 1px 0 0 #fff; border-radius: .3rem; padding: 0 1rem; margin-top: 0.25rem; text-align: left; width: 100%; height: 3rem; } input.ticket-input-firstname:read-only, input.ticket-input-lastname:read-only, select.ticket-place-select:disabled { background: #bcbfc0; outline: none; color: #7a7c7d; } select { -webkit-appearance: menulist-button; color: #262626; } select:invalid { color: #7a7c7d; } div.ticket-validation-error { color: #777a7e; text-align: center; font-size: 0.9rem; font-weight: 700; line-height: 1rem;; margin: 0.25rem 0 0 0; } div.ticket-info div { font-weight: 700; font-size: 1.1rem; text-align: justify; line-height: 1.4rem; } div.ticket-info-line { display: flex; justify-content: space-between; border-bottom: 1px solid #c5c7cc; margin-bottom: 0.4rem; } div.ticket-info-line-left { display: inline-flex; justify-content: right; } div.ticket-info-line-right { width: 70%; display: inline-flex; justify-content: left; } div.ticket-info-line-right-block { display: inline-flex; } .ticket-body-footer { text-align: center; margin-top: 1rem; }