html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0;
    padding: 0;
    background-color: #000000;
    font-family: Arial, sans-serif; line-height: 1.5em; font-size: 1em;
}

.container { margin: 0 auto; padding: 1em; color: #ffffff;}

/* Route Info */
.route_title { font-size: 2em; line-height: 1.2em; display: block; vertical-align: -webkit-baseline-middle; }
.route_info { font-size: 1.1em; list-style-type: none; margin: 0; padding: 0; }
.route_info li { margin-bottom: 0.7em; }
.route_info .route_info_icon { display: inline-block; max-width: 20%; vertical-align: top; margin-right: 0.7em; text-align: center; width: 2em; padding: 5px; border-radius: 0.3em; }
.route_info .route_info_text { display: inline-block; width: 74%; vertical-align: top; }
.route_info .route_details { display: block; vertical-align: top; margin-top: 0.2em; margin-left: 2em; }
.route_info .route_details a { text-decoration: underline; color: #FFEA87; }
.route_info .route_details a.line { color: #ffffff; }
.route_info .route_details a.line.bus { color: #000000; }
.route_info .route_details.timetable { list-style-type: none; margin-left: 1em; }
.route_info .route_details.timetable .timestamp { background-color: #FF6B6B; padding: 0.1em 0.5em; border-radius: 0.3em; margin-right: 0.5em; line-height: 2em; }
.route_info .route_details.timetable .timestamp::before { font-family: 'FontAwesome'; content: '\f017'; display: inline; text-align: left; margin-right: 0.5em; }
.route_info .route_details .place_link { background-color: #FFEA87; color: #000000; padding: 0.1em 0.5em; border-radius: 0.3em; text-decoration: none; white-space: nowrap; }
.route_info .route_details .place_link::before { font-family: 'FontAwesome'; content: '\f041'; display: inline; text-align: left; margin-right: 0.5em; }
.route_info .route_details strong,
.route_info .route_info_text strong { color: #FFEA87; }

/* Menu */
.menu { list-style-type: none; margin: 0; margin-bottom: 1em; padding: 0; font-size: 1.3em; }
.menu .menu_item { margin-bottom: 0.5em; padding: 0; border: 1px solid #333; border-radius: 5px;  }
.menu .menu_item a { padding-left: 0.5em; line-height: 2em; display: block; position: relative; text-decoration: none; color: #FFFFFF; }
.menu .menu_item a::after { font-family: 'FontAwesome'; content: '\f105'; display: inline; text-align: right; position: absolute; right: 10;}
.menu .menu_item i { margin-right: 0.5em; }
.menu .menu_item.home { background-color: #73c11d; }
.menu .menu_item.airport { background-color: #FF6B6B;}
.menu .menu_item.bus { background-color: #FFFFFF; }
.menu .menu_item.bus a { color: #000000; }
.menu .menu_item.metro { background-color: #FF6B6B;}

/* AirBnB */
.airbnb_info { list-style-type: none; margin: 0; padding: 0; }
.airbnb_info .airbnb_info_item { margin-bottom: 0.7em; }
.airbnb_info .airbnb_info_item a { color:#FFFFFF; text-decoration: none; }
.airbnb_info .airbnb_info_item i { vertical-align: middle; margin-right: 0.7em; text-align: center; width: 2em; padding: 0.3em; border: 1px solid #ffffff; border-radius: 0.3em; }
.airbnb_info ol { margin-top: 0.5em; padding-left: 4.5em; }
.airbnb_info strong { color: #FFEA87; }

/* Destinatios */
.home .container { margin-top: 0; padding-top: 0;}
.destinations { list-style-type: none; margin: 0; padding: 0; font-size: 1.3em;}
.destinations li { margin-bottom: 0; padding: 0; border 0; }
.destinations .destination_image { display: block; max-width: 640px; width: 100%; height: auto; margin: 1em 0; }
@media screen and (max-width: 575px) { .destinations .destination_image { width: 111%; height: auto; margin: 0 0em 0em -0.75em; border-bottom: 1px solid #FFFFFF; } }

/* Places */
.places a { text-decoration: none; #FFFFFF; }
.place_title { font-size: 2em; line-height: 1.2em; display: block; vertical-align: -webkit-baseline-middle; }
.place_description { display: block; margin-bottom: 3em; }
.place_icons { margin-bottom: 1em; font-size: 1.5em; display: block; }
.places_container { font-size: 1.1em; list-style-type: none; margin: 0; padding: 0; }
.places_container .place { margin-bottom: 0.7em; }
.places_container .info_wrapper { margin-bottom: 2em; }
.places_container .info_image { display: block; max-width: 640px; width: 100%; height: auto; margin: 1em 0; }
@media screen and (max-width: 575px) { .places_container .info_image { width: 109.2%; height: auto; margin: 0 0em 1em -0.9em } }
.places_container .info_icon, .place_icons .info_icon  { color: #ffffff; vertical-align: middle; margin-right: 0.7em; text-align: center; width: 2em; padding: 0.3em; border: 1px solid #ffffff; border-radius: 0.3em; }
.place_icons .info_icon { margin-right: 0.5em; color: #ffffff; }
.place_icons .btn_back { cursor: pointer; }
.places_container .info_title { display: block; font-size: 1.2em; margin: 0; padding: 0; margin-top: 0.5em; }
.places_container .info_text { display: block; width: 100%; vertical-align: top; }
.admission_fee { vertical-align: middle; margin-right: 0.7em; text-align: center; min-width: 2em; padding: 0.3em 0.5em; border: 1px solid #ffffff; border-radius: 0.3em; }
.admission_fee::before { margin-right: 0.5em; font-family: 'FontAwesome'; content: "\f157"; }

/* Places */
.icon_map { padding: 6px 10px; text-transform: none; text-decoration: none;}
.icon_map i {color: #FF6B6B!important;}

/* Navigation */
.nav-container { margin: 0 auto; padding: 0; border-bottom: 1px solid #808080; background-color: #000; position: fixed; width: 100%; z-index: 1; }
.nav-content-push { top: 58px; height: 58px;}
.nav { display: block; margin: 0 auto; padding: 0 1em; list-style-type: none; min-height: 3.5em; color: #ffffff; }
.nav li { display: inline-block; margin-right: 1.5em; vertical-align: middle; }
.nav li .logo { height: 28px; }
.nav li a { display: inline-block; text-decoration: none; color: #ffffff; text-align: left; font-size: 1.2em; line-height: 3em; text-transform: uppercase; vertical-align: middle; }
.nav li a:hover, .nav li a i:hover {color: #FFEA87; cursor: pointer; }
.nav li a:visited, .nav li a i:visited { color: #ffffff; }
.nav li a i {font-size: 1.5em; vertical-align: middle; }
.nav, .container { max-width: 640px; }

.related_title { font-size: 1.5em; line-height: 1.2em; display: block; vertical-align: -webkit-baseline-middle; }

/* Icons Places */
.station { background-color: #73c11d!important; }
.park { background-color: #000000!important; }
.building { background-color: #000000!important; }
.shrine { background-color: #000000!important;  }
.food { background-color: #000000!important;  }
.shopping { background-color: #000000!important;  }
.street { background-color: #000000!important;  }
.onsen { background-color: #4ECDC4!important;  }

/* Transportation Lines */
.line { color: #ffffff; padding: 0em 0.5em; display: inline-block; border-radius: 0.3em; }
a.line { color: #ffffff; text-decoration: none!important; white-space: nowrap; }
.line:hover { color: #000000; cursor: pointer; }
.line i { margin-right: 0.3em; }
.toei {  background-color: #FFFFFF!important; color: #000000; }
a.toei { color: #000000; }
.tozai { background-color: #039be5!important; }
.yamanote {  background-color: #73c11d!important; border-color: #73c11d!important; }
.yurakucho {  background-color: #bb995d!important; }
.yurikamome {  background-color: #0277bd!important; }
.marunouchi {  background-color: #d32f2f!important; }
.hanzomon {  background-color: #806ea7!important; }
.fukutoshin {  background-color: #8f552b!important; }
.metro { background-color: #000000!important; }
.shinkansen { background-color: #01579b!important; border-color: #01579b!important; }
.keisei { background-color: #73c11d!important; }
.chuo-sobu { background-color: #c0ca33!important; border-color: #c0ca33!important; }
.nara { background-color: #b67c2b!important; border-color: #b67c2b!important; }
.san-in { background-color: #800080!important; border-color: #800080!important; }
.bus { background-color: #FFFFFF!important; border-color: #FFFFFF!important; color: #000000!important; }
.ginza { background-color: #f9a825!important; border-color: #f9a825!important; }
.tokyu-ikegami { background-color: #ff80ab!important; border-color: #ff80ab!important; }
.yokosuka { background-color: #0277bd!important; border-color: #0277bd!important; }

/* Icon Colors */
.transport { background-color: #008FA5!important; }
.money { background-color: #4ECDC4!important; }
.maps { background-color: #2F4073!important; }
.time { background-color: #FF6B6B!important; }
.details { background-color: #FFEA87!important; }
.walk { background-color: #8f552b!important; }
