html, body {
    font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    /*font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;*/
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    color: #393939;
    font-size: 100%;
    overflow: hidden;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scrollbar-width: thin;
}

#home {
    margin: 0;
    width: 100%;
    height: 100%;
    min-height: 100%;
}

.ui-content {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    min-height: 100%;
}

/* 地図キャンバス */
#map_canvas {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    min-height: 100%;
    z-index: 0;
}

.gm-tilt {
    display:none;
}

.search_popup {
    font-size: 0.875rem;
}

.main_menu, .zoom {
    display: none;
    position: absolute;
    background-image: url("//bus-routes.net/menu/main_menu20220627@2x.png");
    -webkit-background-size: 48px 1068px;
    -moz-background-size: 48px 1068px;
    -ms-background-size: 48px 1068px;
    -o-background-size: 48px 1068px;
    background-size: 48px 1068px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* メインメニュー */
.main_menu {
    width: 48px;
    height: 48px;
    right: 4px;
}

/* 地図メニュー */
.map_menu {
    display: none;
    position: absolute;
    width: 58px;
    height: 48px;
    -webkit-background-size: 174px 384px;
    -moz-background-size: 174px 384px;
    -ms-background-size: 174px 384px;
    -o-background-size: 174px 384px;
    background-size: 174px 384px;
    background-repeat: no-repeat;
    z-index: 5;
    cursor: pointer;
}

/* 外部マップ */
.outmap_menu {
    display: none;
    position: absolute;
    width: 58px;
    height: 38px;
    top: 212px;
    -webkit-background-size: 190px 38px;
    -moz-background-size: 190px 38px;
    -ms-background-size: 190px 38px;
    -o-background-size: 190px 38px;
    background-size: 190px 38px;
    background-repeat: no-repeat;
    z-index: 5;
    cursor: pointer;
}

/* 表示メニュー */
.disp_menu, .bridge, .cap, .specify {
    display: none;
    position: absolute;
    width: 58px;
    height: 48px;
    -webkit-background-size: 116px 404px;
    -moz-background-size: 116px 404px;
    -ms-background-size: 116px 404px;
    -o-background-size: 116px 404px;
    background-size: 116px 404px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* 交通メニュー */
.trans_menu {
    display: none;
    position: absolute;
    width: 58px;
    height: 48px;
    -webkit-background-size: 116px 576px;
    -moz-background-size: 116px 576px;
    -ms-background-size: 116px 576px;
    -o-background-size: 116px 576px;
    background-size: 116px 576px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* 検索メニュー */
.search_menu {
    display: none;
    position: absolute;
    width: 58px;
    height: 48px;
    -webkit-background-size: 174px 240px;
    -moz-background-size: 174px 240px;
    -ms-background-size: 174px 240px;
    -o-background-size: 174px 240px;
    background-size: 174px 240px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* 機能メニュー */
.action_menu {
    display: none;
    position: absolute;
    width: 58px;
    height: 48px;
    -webkit-background-size: 174px 192px;
    -moz-background-size: 174px 192px;
    -ms-background-size: 174px 192px;
    -o-background-size: 174px 192px;
    background-size: 174px 192px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* 温泉 */
.onsen_menu {
    display: none;
    position: absolute;
    width: 58px;
    height: 48px;
    right: 176px;
    -webkit-background-size: 58px 480px;
    -moz-background-size: 58px 480px;
    -ms-background-size: 58px 480px;
    -o-background-size: 58px 480px;
    background-size: 58px 480px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* 温泉絞り込み */
.spa_menu {
    display: none;
    position: absolute;
    width: 58px;
    height: 48px;
    right: 238px;
    -webkit-background-size: 58px 384px;
    -moz-background-size: 58px 384px;
    -ms-background-size: 58px 384px;
    -o-background-size: 58px 384px;
    background-size: 58px 384px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* オープン・閉館 */
.open_close {
    display: none;
    position: absolute;
    width: 58px;
    height: 58px;
    top: 272px;
    right: 238px;
    -webkit-background-size: 58px 58px;
    -moz-background-size: 58px 58px;
    -ms-background-size: 58px 58px;
    -o-background-size: 58px 58px;
    background-size: 58px 58px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* 宿 */
.yado_menu {
    display: none;
    position: absolute;
    width: 58px;
    height: 48px;
    right: 176px;
    -webkit-background-size: 116px 384px;
    -moz-background-size: 116px 384px;
    -ms-background-size: 116px 384px;
    -o-background-size: 116px 384px;
    background-size: 116px 384px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* 泉質 */
.quality_menu {
    display: none;
    position: absolute;
    width: 58px;
    height: 48px;
    right: 176px;
    -webkit-background-size: 116px 528px;
    -moz-background-size: 116px 528px;
    -ms-background-size: 116px 528px;
    -o-background-size: 116px 528px;
    background-size: 116px 528px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* ふるさと納税メニュー */
.furusato_menu {
    display: none;
    position: absolute;
    width: 58px;
    height: 48px;
    -webkit-background-size: 116px 624px;
    -moz-background-size: 116px 624px;
    -ms-background-size: 116px 624px;
    -o-background-size: 116px 624px;
    background-size: 116px 624px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* 次へ、前へボタン */
.next_prev {
    display: none;
    position: absolute;
    width: 48px;
    height: 48px;
    -webkit-background-size: 240px 96px;
    -moz-background-size: 240px 96px;
    -ms-background-size: 240px 96px;
    -o-background-size: 240px 96px;
    background-size: 240px 96px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

.furusato_genre {
    display: none;
    position: absolute;
    width: 58px;
    height: 36px;
    -webkit-background-size: 116px 652px;
    -moz-background-size: 116px 652px;
    -ms-background-size: 116px 652px;
    -o-background-size: 116px 652px;
    background-size: 116px 652px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

.suisan_menu {
    display: none;
    position: absolute;
    width: 116px;
    height: 38px;
    -webkit-background-size: 116px 76px;
    -moz-background-size: 116px 76px;
    -ms-background-size: 116px 76px;
    -o-background-size: 116px 76px;
    background-size: 116px 76px;
    background-repeat: no-repeat;
    z-index: 1;
    cursor: pointer;
}

/* ズームボタン */
.zoom {
    width: 48px;
    height: 46px;
    right: 4px;
}

/* ブリッジ */
.bridge {
    display: none;
    position: absolute;
    width: 8px;
    height: 8px;
    z-index: 2;
    background-position: 0px -384px;
    cursor: default;
}

.cap {
    display: none;
    position: absolute;
    width: 2px;
    height: 8px;
    z-index: 2;
    background-position: 0px -12px;
    cursor: default;
}

.specify {
    display: none;
    position: absolute;
    width: 50px;
    height: 20px;
    z-index: 1;
    background-position: -8px -384px;
    cursor: default;
}

.fullscreen {
    display: block;
    position: absolute;
    width: 48px;
    height: 32px;
    z-index: 0;
    cursor: default;
    -webkit-background-size: 48px 32px;
    -moz-background-size: 48px 32px;
    -ms-background-size: 48px 32px;
    -o-background-size: 48px 32px;
    background-size: 48px 32px;
}

#bridge1 {
    right: 50px;
}

#bridge2 {
    right: 170px;
}

#bridge3 {
    right: 232px;
}

#bridge4 {
    background-position: 0px -392px;
    top: 294px;
    right: 139px;
}

#bridge5 {
    background-position: 0px -392px;
    top: 294px;
    right: 81px;
}

#bridge6 {
    background-position: 0px -392px;
    top: 346px;
    right: 81px;
}

#cap1, #cap2 {
    right: 170px;
}

#specify {
    top: 4px;
    right: 56px;
}

#fullscreen {
    top: 4px;
    left: 4px;
    cursor: pointer;
}

/* ロゴ */
.logo {
    display: none;
    position: absolute;
    height: 19px;
    width: 74px;
    background-image: url("//bus-routes.net/imgs/logo/yu-logo@2x.png");
    -webkit-background-size: 74px 19px;
    -moz-background-size: 74px 19px;
    -ms-background-size: 74px 19px;
    -o-background-size: 74px 19px;
    background-size: 74px 19px;
    z-index: 0;
    cursor: pointer;
}

.yado-logo {
    background-image: url("//bus-routes.net/imgs/logo/yadococo@2x.png");
}

.bus-logo {
    height: 19px;
    width: 90px;
    background-image: url("//bus-routes.net/imgs/logo/bus-logo@2x.png");
    -webkit-background-size: 90px 19px;
    -moz-background-size: 90px 19px;
    -ms-background-size: 90px 19px;
    -o-background-size: 90px 19px;
    background-size: 90px 19px;
}
/*
.leaflet-control-attribution {
color: #003f88 !important;
}
*/
a.la {
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: bold !important;
}
a.la:link { color: #003f88 !important;}
a.la:visited { color: #003f88 !important; }
a.la:hover { color: #003f88 !important; }
a.la:active { color: #003f88 !important; }

.notes {
    margin: 0px;
    padding: 0px;
}

.slogo {
    display: block;
    font-weight: bold;
    font-size: 0.8175rem;
    color: #003f80;
    text-decoration: none;
    cursor: pointer;
    margin: 0px 0px -4px -4px;
}

.stime {
    font-size: 0.8175rem;
}

a {
    text-decoration: none;
    font-weight:bold;
    font-size: 0.875rem;
}
a:link {
    color:#003f80;
}
a:visited {color:#003f80;}
a:hover {color:#003f80; }
a:active {color:#003f80;}

.jlogo {
    margin-bottom: -2px;
}

.mlogo {
    color: #c53d43;
}

/* ロゴ */
#logo {
    top: 2px;
    left: 4px;
    display: none;
}

/* 地図 */
#map {
    top: 4px;
}

/* 表示 */
#display {
    top: 56px;
}

/* 交通 */
#transport {
    top: 108px;
}

/* 検索 */
#search {
    top: 160px;
}

/* 機能 */
#action {
    top: 212px;
}

/* 消去ボタン */
#clear {
    display: none;
    top: 264px;
    background-position: 0px -480px;
}

/* ONボタン */
#on {
    bottom: 24px;
    background-position: 0px -528px;
}

/* 計測終了ボタン */
#finish {
    top: 212px;
    background-position: 0px -576px;
}

/* 印刷ボタン */
#print {
    top: 56px;
    background-position: 0px -624px;
}

/* 戻るボタン */
#back {
    top: 4px;
    background-position: 0px -672px;
}

/* +ボタン */
#zoom_in {
    display: none;
    bottom: 74px;
    background-position: 0px -912px;
}

/* -ボタン */
#zoom_out {
    display: none;
    bottom: 28px;
    background-position: 0px -958px;
}

/* 地図メニュー */

/* Google地図 */
#road {
    top: 4px;
    right: 56px;
}

/* Google地形 */
#terrain {
    top: 4px;
    right: 114px;
}

/* Google航空写真 */
#hybrid {
    top: 4px;
    right: 172px;
}

/* 地理院地形図 */
#gsi {
    top: 52px;
    right: 56px;
}

/* 地理院白地図 */
#blank {
    top: 52px;
    right: 114px;
}

/* 地理院標高図 */
#relief {
    top: 52px;
    right: 172px;
}

/* Transport */
#trans {
    top: 100px;
    right: 56px;
}

/* OpenCycleMap */
#cycle {
    top: 100px;
    right: 114px;
}

/* OpenStreetMap */
#street {
    top: 100px;
    right: 172px;
}

/* 川だけ地形地図 */
#river {
    top: 148px;
    right: 56px;
}

/* WaterColor */
#water {
    top: 148px;
    right: 114px;
}

/* OFF */
#empty {
    top: 148px;
    right: 172px;
}

#google {
    right: 56px;
    background-position: -132px 0px;
}

#yahoo {
    right: 114px;
    background-position: -74px 0px;
}

#locasma {
    right: 172px;
    width: 74px;
    background-position: 0px 0px;
}

/* 表示メニュー */
/* グルメ */
#gourmet {
    top: 56px;
    right: 56px;
}

/* 日帰り温泉 */
#higaeri {
    top: 56px;
    right: 114px;
}

/* 天気 */
#weather {
    top: 104px;
    right: 56px;
}

/* 宿 */
#hotel {
    top: 104px;
    right: 114px;
}

/* 山 */
#mountain {
    top: 152px;
    right: 56px;
}

/* 泉質 */
#senshitsu {
    top: 152px;
    right: 114px;
}

/* 座標 */
#location {
    top: 200px;
    right: 56px;
}

/* 温泉地 */
#onsenchi {
    top: 200px;
    right: 114px;
}

/* ふるさと納税 */
#furusato {
    top: 248px;
    width: 116px;
    right: 56px;
}

#top100 {
    top: 300px;
    right: 114px;
}

#genre {
    top: 300px;
    right: 56px;
}

#rice {
    top: 260px;
    right: 56px;
}

#meat {
    top: 260px;
    right: 114px;
}

#seafood {
    top: 224px;
    right: 56px;
}

#deli {
    top: 224px;
    right: 114px;
}

#fruit {
    top: 188px;
    right: 56px;
}

#beer {
    top: 188px;
    right: 114px;
}

#sundries {
    top: 152px;
    right: 56px;
}

#sake {
    top: 152px;
    right: 114px;
}

#electric {
    top: 116px;
    right: 56px;
}

#drink {
    top: 116px;
    right: 114px;
}

#vegetable {
    top: 80px;
    right: 56px;
}

#noodle {
    top: 80px;
    right: 114px;
}

#sweet {
    top: 44px;
    right: 56px;
}

#kitchen {
    top: 44px;
    right: 114px;
}

#travel {
    top: 8px;
    right: 56px;
}

#interior {
    top: 8px;
    right: 114px;
}

#fgift {
    height: 38px;
    top: 352px;
    right: 56px;
}

#disaster {
    height: 38px;
    top: 352px;
    right: 114px;
}

#suisan {
    top: 394px;
    right: 56px;
}

/* 交通メニュー */
/* 高速バス */
#express {
    top: 66px;
    right: 78px;
    width: 72px;
    height: 42px;
}

/* GTFS */
#GTFS {
    top: 108px;
    right: 56px;
}

/* 旧バス */
#bus {
    top: 108px;
    right: 114px;
}

/* 鉄道 */
#railway {
    top: 156px;
    right: 56px;
}

/* 渋滞 */
#traffic {
    top: 156px;
    right: 114px;
}

/* 道の駅 */
#michieki {
    top: 204px;
    right: 56px;
}

/* SAPA */
#sapa {
    top: 204px;
    right: 114px;
}

/* シェアサイクル */
#bike {
    top: 252px;
    right: 56px;
}

/* フェリー */
#ferry {
    top: 252px;
    right: 114px;
}

/* 空港 */
#airport {
    top: 300px;
    right: 56px;
}

/* レンタカー */
#car {
    top: 300px;
    right: 114px;
}

/* 機能メニュー */
#search_position {
    top: 212px;
    right: 56px;
    background-position: -116px 0px;
}

/* ストリートビュー */
#streetview {
    top: 212px;
    right: 114px;
    background-position: -58px 0px;
}

/* OFF */
#off {
    top: 212px;
    right: 172px;
    background-position: 0px 0px;
}

/* 距離計測 */
#distance {
    top: 260px;
    right: 56px;
    background-position: -116px -48px;
}

/* 記憶 */
#memory {
    top: 260px;
    right: 114px;
    background-position: -58px -48px;
}

/* 印刷画面 */
#print_setup {
    top: 260px;
    right: 172px;
    background-position: 0px -48px;
}

#list {
    top: 308px;
    right: 56px;
    background-position: -116px -96px;
}

#URL {
    top: 308px;
    right: 114px;
    background-position: -58px -96px;
}

/* 使い方 */
#help {
    top: 308px;
    right: 172px;
    background-position: 0px -96px;
}

#twitter {
    right: 57px;
    background-position: -120px 0px;
}

#facebook {
    right: 101px;
    background-position: -80px 0px;
}

#LINE {
    right: 145px;
    background-position: -40px 0px;
}

#hatena {
    right: 189px;
    background-position: 0px 0px;
}

/* 検索メニュー */
#search_furusato {
    top: 108px;
    right: 56px;
    width: 116px;
    background-position: 0px 0px;
}

#search_gourmet {
    top: 160px;
    right: 56px;
    background-position: -116px -48px;
}

#search_onsen {
    top: 160px;
    right: 114px;
    width: 116px;
    background-position: -0px -48px;
}

#search_room {
    top: 208px;
    right: 56px;
    background-position: -116px -96px;
}

#search_yado {
    top: 208px;
    right: 114px;
    background-position: -58px -96px;
}

#search_onsenchi {
    top: 208px;
    right: 172px;
    background-position: 0px -96px;
}

#search_station {
    top: 256px;
    right: 56px;
    background-position: -116px -144px;
}

#search_michieki {
    top: 256px;
    right: 114px;
    background-position: -58px -144px;
}

#search_mount {
    top: 256px;
    right: 172px;
    height: 49px;
    background-position: 0px -144px;
}

#search_addr {
    top: 304px;
    right: 56px;
    background-position: -116px -192px;
}

#search_path {
    top: 304px;
    right: 114px;
    width: 59px;
    background-position: -57px -192px;
}

/* 日帰りメニュー */
#onsen {
    top: 56px;
}

#sento {
    top: 104px;
}

#yado {
    top: 152px;
}

#ashiyu {
    top: 200px;
}

#other {
    top: 248px;
}

#tennen {
    top: 56px;
}

#sroten {
    top: 104px;
}

#ssauna {
    top: 152px;
}

#discount {
    top: 200px;
}

/* 宿メニュー */
#roten {
    top: 56px;
}

#spa {
    top: 104px;
}

#big {
    top: 152px;
}

#sauna {
    top: 56px;
    right: 234px;
}

#smoking {
    top: 104px;
    right: 234px;
}

#single {
    top: 152px;
    right: 234px;
}

#luxury {
    top: 204px;
    width: 116px;
    height: 44px;
    background-position: 0px -292px;
}

#gramping {
    top: 252px;
    width: 116px;
    height: 44px;
    background-position: 0px -340px;
}

#tanjun {
    top: 56px;
}

#ryusan {
    top: 56px;
    right: 234px;
}

#enka {
    top: 104px;
}

#sansei {
    top: 104px;
    right: 234px;
}

#tansan {
    top: 152px;
}

#tetsu {
    top: 152px;
    right: 234px;
}

#iou {
    top: 200px;
}

#nisan {
    top: 200px;
    right: 234px;
}

#housha {
    top: 248px;
}

#youso {
    top: 248px;
    right: 234px;
}

#kounou {
    top: 300px;
    right: 205px;
    background-position: 0px -480px;
}

/* ルート検索 */
#walk {
    top: 108px;
    left: 4px;
}

#drive1 {
    top: 108px;
    left: 62px;
}

#drive2 {
    top: 108px;
    left: 120px;
}

#clear_route {
    width: 58px;
    height: 28px;
    top: 4px;
    left: 174px;
    background-position: -28px -96px;
}

#close_route {
    width: 28px;
    height: 28px;
    top: 4px;
    left: 236px;
    background-position: 0px -96px;
}

#change_route {
    width: 28px;
    height: 68px;
    top: 36px;
    left: 236px;
    background-position: -86px -96px;
}

#search_route {
    top: 108px;
    left: 206px;
    z-index: 2;
    background-position: -116px -96px;
}

#search_address {
    width: 48px;
    height: 32px;
    top: 4px;
    z-index: 2;
    background-position: 0px -124px;
}

#result_address {
    position: absolute;
    display: none;
    top: 4px;
    left: 4px;
    font-size: 0.875rem;
    background: rgba(255,255,255,0.0);
}

.item_box {
    margin-top: -1px;
    border: 1px solid #003f88;
    background-color: #efeeec;
    cursor: pointer;
}

.item_box:hover,
.item_box:focus {
    background-color: #d7f6de;
}

.item_name {
    margin: 0px 2px;
    font-size: 0.875rem;
    font-weight: bold;
}

.item_addr {
    margin: 0px 2px;
    height: 16px;
    font-size: 0.75rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    -webkit-text-overflow: ellipsis; /* Safari */
    -o-text-overflow: ellipsis; /* Opera */
}

.item_address {
    font-weight: bold;
    margin: 0px 2px;
    height: 48px;
    font-size: 0.875rem;
}

.address_box {
    background: rgba(255,255,255,0.0);
}

.yahoo_box {
    background: rgba(255,255,255,0.0);
}

/* オプションボタン */
.option {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0px;
    padding: 0px;
    width: 48px;
    height: 48px;
    line-height: 1.1rem;
    font-size: 0.875rem;
    font-weight: normal;
    text-decoration: none;
    color: #454545;
    border-radius:5px;
    cursor: pointer;
}

.tap_btn {
    display: inline-block;
    padding: 0px 4px;
    height: 40px;
    line-height: 40px;
    font-size: 1.0rem;
    font-weight: normal;
    text-decoration: none;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    text-align: center;
    vertical-align: middle;
    color: #fff;
    opacity: 0.9;
    border-radius: 5px;
    cursor: pointer;
}

/* 楽天ボタン */
.rakuten {
    height: 44px;
    line-height: 44px;
    font-size: 0.875rem;
    font-weight: normal;
    text-decoration:none;
    text-shadow: 0 1px 1px rgba(255, 255, 255, .3);
    color: #333;
    text-align: center;
    border-radius: 5px;
    cursor: pointer;
}

.option:hover,
.option:focus,
.woption:hover,
.woption:focus,
.tap_btn:hover,
.tap_btn:focus,
.rakuten:hover,
.rakuten:focus,
.obtn:hover,
.obtn:focus,
.gbtn:hover,
.gbtn:focus {
    background-image: -webkit-linear-gradient(top, rgba(255,255,255,.2), rgba(0,0,0,0));
    background-image:    -moz-linear-gradient(top, rgba(255,255,255,.2), rgba(0,0,0,0));
    background-image:     -ms-linear-gradient(top, rgba(255,255,255,.2), rgba(0,0,0,0));
    background-image:      -o-linear-gradient(top, rgba(255,255,255,.2), rgba(0,0,0,0));
    background-image:         linear-gradient(top, rgba(255,255,255,.2), rgba(0,0,0,0));
}

.btnbox {
    display: flex;
    width: 100%;
    margin: 4px 2px 0px;
}

.onflag {
    position: absolute;
    display: none;
    background: #b6cf45;
    border-radius: 50%;
    height: 8px;
    width: 8px;
    z-index: 100;
}

.wiki {
    margin-right: 4px;
}

#disp_on {
    top: 60px;
    right: 8px;
}

#trans_on {
    top: 112px;
    right: 8px;
}

/* ルート */
.groute, .broute {
    background-color: #d2e9eb;
}

/* FIT */
.bfit {
    background-color:#dee7e9;
}

/* 消去 */
.bclear {
    background-color:#727171;
    color: #fff;
    text-decoration: none;
    text-shadow: initial;
}

.gclear {
    background-color: #d8e698;
}

.ball {
    background-color:#d2e9eb;
}

#bzoom {
    background-color:#dedbc3;
}

#norikae {
    background-color:#f0dce2;
}

#bRail, #bFerry {
    background-color:#ebe6d6;
}

#bBus, #gBus {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: 48px;
    width: 48px;
    background-color:#ebe6d6;
}

#site {
    background-color:#f0dce2;
}

#csite {
    position: relative;
    background: linear-gradient(180deg, #f0dce2 0%, #f0dce2 70%, #fda523 30%, #fda523 100%);
}

.coupon {
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 48px;
    height: 15px;
}

#rakuten {
    background-color:#dde0c9;
}

.under_raku {
    border-bottom: solid 2px #09b303;
    padding-top: 4px;
    padding-bottom: 2px;
}

.under_hot {
    border-bottom: solid 2px #cc121b;
    padding-top: 4px;
    padding-bottom: 2px;
}

.under_ichi {
    border-bottom: solid 2px #bf0000;
    padding-top: 4px;
    padding-bottom: 2px;
}

#gsearch {
    background-color:#f0dad8;
}

#place {
    background-color: #d2e9eb;
}

#traf {
    background-color:#c0e3e5;
}

#outside {
    background-color:#d2d8e3;
}

#yimage {
    background-color:#dee7e9;
}

#skyview {
    background-color:#f5ddb9;
}

#route {
    background-color:#d2e2d8;
}

#access {
    background-color:#7a4171;
}

#ana {
    background-color: #ced8fc;
}

#jal {
    background-color: #fddbd9;
}

#finfo {
    background-color:#e5dee9;
}

#gift {
    width: 98px;
    background-color: #d2e9eb;
}

/* 温泉地メニュー */
#circle {
    background-color:#ede0df;
}

#fit2 {
    background-color:#dee7e9;
}

#choose {
    background-color:#c6cbd6;
}

#fit {
    background-color:#dee7e9;
    margin: 5px 2px 5px 1px;
}

#wnews {
    background-color:#b2dbeb;
}

#jma {
    width: 122px;
    background-color:#dde0c9;
}

#tenki {
    width: 123px;
    background-color:#ebe6d6;
}

#gpv {
    width: 122px;
    background-color:#dee7e9;
}

#windy {
    width: 123px;
    background-color:#ebdcdd;
}

#rfix {
    background-color: #d2e2d8;
    flex-grow: 1;
    margin: 0px 4px 0px 0px;
}

#spano {
    background-color: #ebe6d6;
    flex-grow: 1;
    margin: 0px 4px 0px 0px;
}

/* 住所 */
td.ad {
    font-size: 1.125rem;
    line-height: 26px;
    vertical-align: middle;
}

/* 地名かな */
td.ka {
    font-size: 0.75rem;
    line-height: 12px;
    vertical-align: bottom;
    padding-top: 8px;
}

/* 都市名 */
/* 都市名 */
td.ct {
    width: 240px;
    font-size: 1.25rem;
    line-height: 2.5rem;
    color:#fff;
    background: #5b8f8f;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    font-weight: normal;
    vertical-align: middle;
}

td.wt {
    width: 56px;
    vertical-align: middle;
}

img.wt {
    padding: 2px;
    width: 48px;
    height: 48px;
}

td.tm {
    width: 136px;
    padding-top: 4px;
    vertical-align: middle;
}

td.utc {
    padding-bottom: 4px;
}

span.temp {
    font-size: 2.5rem;
    line-height: 42px;
    vertical-align: middle;
}

td.wd {
    width: 56px;
    vertical-align: middle;
}

td.wl {
    padding: 2px;
}

/* 天気予報ボタン */
.woption {
    display: table-cell;
    width: 250px;
    height: 48px;
    line-height: 18px;
    font-size: 0.875rem;
    font-weight: normal;
    text-decoration: none;
    text-align:center;
    vertical-align: middle;
    border-radius:5px;
    cursor: pointer;
}

#request {
    display: none;
    position: absolute;
    width: auto;
    height: 48px;
    top: 4px;
    right: 56px;
    line-height: 48px;
    padding: 0px 8px;
    font-size: 0.875rem;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    color: #fff;
    text-decoration: none;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    background-color: #003f88;
    border-radius: 5px;
    z-index: 3;
}

#room_label {
    display: none;
    position: absolute;
    top: 4px;
    right: 170px;
    width: 32px;
    height: 48px;
    z-index: 1;
    -webkit-background-size: 32px 48px;
    -moz-background-size: 32px 48px;
    -ms-background-size: 32px 48px;
    -o-background-size: 32px 48px;
    background-size: 32px 48px;
}

#room_info {
    display: none;
    position: absolute;
    top: 4px;
    right: 56px;
    width: 98px;
    height: 44px;
    text-align: right;
    line-height: 44px;
    vertical-align: middle;
    z-index: 0;
    background-color: rgba(255,255,255,0.85);
    padding: 0px 8px 0px 0px;
    border: 2px solid #003f88;
    border-radius: 5px;
    font-size: 1.0rem;
    font-weight: bold;
    text-decoration: none;
    /*text-shadow: 0 1px 1px rgba(0, 0, 0, .3);*/
}

#charge_pt {
    position: absolute;
    display: none;
    border-right: 4px solid transparent;
    border-bottom: 10px solid #83CC83;
    border-left: 4px solid transparent;
    top: 6px;
    right: 100px;
    z-index: 2;
}

#rating_pt {
    position: absolute;
    display: none;
    border-top: 10px solid #8099E4;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    top: 40px;
    right: 78px;
    z-index: 2;
}

.room_bar {
    position: absolute;
    display: none;
    width: 30px;
    height: 4px;
    z-index: 1;
    opacity: 0.5;
}

#charge_bar {
    top: 6px;
}

#rating_bar {
    top: 46px;
}

#next {
    display: none;
    position: absolute;
    top: 316px;
    right: 4px;
}

#prev {
    display: none;
    position: absolute;
    top: 368px;
    right: 4px;
}

.rakuten_info {
    text-align: center;
    width: 258px;
    border: 1px solid #003f88;
    background-color: #fff;
    border-radius: 3px;
    font-size: 1.0rem;
    margin: 2px -1px 0px 0px;
}

.rakuten_header {
    display: inline-block;
    width: 250px;
    font-size: 0.875rem;
    line-height: 16px;
    text-align: center;
    margin: 0px;
    padding: 4px;
    text-align: center;
    background: #003f88;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    color: #fff;
}

.bath {
    display: inline-block;
    padding: 0px 4px;
    margin: 0px 2px 2px;
    height: 24px;
    line-height: 24px;
    font-size: 0.875rem;
    text-decoration:none;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    text-align: center;
    vertical-align: middle;
    color: #fff;
    border-radius: 3px;
}

.bath_spa {
    background-color: #C94F55;/*#c53d43;*/
    /*background-color: #C94F55;   */
}

.bath_on {
    background-color: #2664C9/*#003f88;*/
    /*background-color: #0055B7; */
}

.bath_off {
    background-color:#ccc;
    font-weight: normal;
    text-shadow: 0 0 0;
}

.tanjun {
    background-color: #C94F55;
}

.enka {
    background-color: #C774A6;
}

.tansan {
    background-color: #7896e7;
}

.iou {
    background-color: #F49A0A;
}

.housha {
    background-color: #829F31;
}

.ryusan {
    background-color: #3DA4A7;
}

.sansei {
    background-color: #E87358;
}

.tetsu {
    background-color: #8F8265;
}

.nisan {
    background-color: #56B3E5;
}

.youso {
    background-color: #f86829;
}

.flag {
    display: inline-block;
    padding: 0px 3px;
    margin: 0px 2px 2px;
    min-width: 22px;
    height: 24px;
    line-height: 24px;
    font-size: 0.875rem;
    text-decoration:none;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    text-align: center;
    vertical-align: middle;
    color: #fff;
    border-radius: 3px;
}

.flag_spa {
    background-color: #CF6268;
}

.flag_on {
    background-color: #427CDB;
}

.flag_off {
    background-color:#ccc;
    font-weight: normal;
    text-shadow: 0 0 0;
}

.price_rank {
    width: 48px;
    height: 16px;
    padding: 0px 4px 4px;
    cursor: default;
}

.photo_box {
    position: relative;
    width: 250px;
    padding: 0px 4px 4px;
}

img.yado_photo {
    width: 100%;
    height: auto;
    object-fit: contain;
    max-width: 246px;
    max-height: 200px;
    min-height: 168px;
    cursor: pointer;
}

.gphoto_box {
    position: relative;
    width: 38px;
    padding: 0px 8px 4px;
}

img.gourmet_photo {
    width: 238px;
    height: auto;
    max-width: 238px;
    max-height: 238px;
    object-fit: contain;
    cursor: default;
}

.photo_box p {
    position: absolute;
    top: 0px;
    padding: 4px;
    margin: 0px;
    left: 50%;
    -ms-transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    color: white;
    background: #003f88;
    text-decoration:none;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    font-size: 0.875rem;
    line-height: 1rem;
    cursor: pointer;
}

.sml {
    display: inline-block;
    font-size: 0.75rem;
}

/* 十字 */
#crosshair {
    position: absolute;
    display: none;
    width: 22px;
    height: 22px;
    top: 50%;
    left: 50%;
    -webkit-background-size:22px 22px;
    -moz-background-size:22px 22px;
    -ms-background-size:22px 22px;
    -o-background-size:22px 22px;
    background-size:22px 22px;
    background-image: url("//bus-routes.net/imgs/other/cross@2x.png");
    z-index: 0;
    pointer-events: none;
}

/* 位置情報 */
#location_info {
    position: absolute;
    display: none;
    top: 4px;
    left: 4px;
    margin: 0px;
    z-index: 0;
    background-color: rgba(255,255,255,0.7);
    padding: 1px 4px;
    border: 2px solid #003f88;
    border-radius: 5px;
    font-size: 0.875rem;
}

/* ツールチップ */
#tooltip {
    border:1px solid #444;
    margin: 0px;
    padding: 2px 4px;
    background: #fff;
    font-size: 0.875rem;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    text-align: center;
}

/* 情報BOX */
.info_box {
    width: 254px;
    border: 1px solid #444;
    margin: 12px 0px 4px 0px;
    padding: 1px 2px 2px 2px;
    /*background: #fff;*/
    background-color: #fff6e4;
    font-size: 0.875rem;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.gtfs_box {
    border: 1px solid #444;
    margin: 12px 0px 2px 0px;
    padding: 0px 2px 2px 2px;
    background-color: #fff;
    font-size: 0.875rem;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

/* 中央寄せ */
.center_box {
    text-align: center;
}

/* 画像全般 */
img {
    vertical-align: middle;
    margin: 0px;
    cursor: pointer;
}

/* テーブル内の画像を上下中央に配置 */
td img {
    display: inline-block;
    vertical-align: middle;
}

/* バス停イメージ */
img.bs {
    width: 32px;
    height: 32px;
    padding-bottom: 4px;
    cursor: default;
}

/* バスイメージ */
img.bus {
    width: 32px;
    height: 32px;
    padding: 2px;
    vertical-align: -12px;
    cursor: default;
}

img.con1 {
    width: 36px;
    height: 16px;
    margin: 0px 8px 2px 0px;
    cursor: default;
}

img.con2 {
    width: 36px;
    height: 16px;
    margin: 0px 8px 2px 0px;
    cursor: default;
}

img.con3 {
    width: 60px;
    height: 16px;
    margin: 0px 8px 2px 0px;
    cursor: default;
}

/* 駅イメージ */
img.st {
    width: 32px;
    height: 32px;
    padding: 2px 4px 2px 2px;
    vertical-align: -12px;
    cursor: pointer;
}

/* 歩く人 */
img.walking {
    cursor: default;
    width: 32px;
    height: 32px;
    padding: 4px 5px 2px;
}

/* 32×32pxイメージ */
img.i32 {
    cursor: default;
    width: 32px;
    height: 32px;
    padding-right: 5px;
}

img.i28 {
    cursor: default;
    vertical-align: middle;
    width: 28px;
    height: 28px;
    padding: 0px 2px 1px 0px;
}

/* 24×24pxイメージ */
img.i24 {
    cursor: default;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    margin: 0px 4px 1px 0px;
}

img.f24 {
    cursor: default;
    width: 24px;
    height: 24px;
    margin: 0px 2px 1px;
}

img.oi24 {
    cursor: default;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    margin: 0px 4px 4px 0px;
}

img.i20 {
    cursor: default;
    vertical-align: middle;
    width: 20px;
    height: 20px;
}

img.s24 {
    margin: 0px 1px 0px 0px;
}

img.i14 {
    cursor: default;
    width: 14px;
    height: 14px;
    margin: 0px 2px 2px 0px;
	vertical-align: middle;
}

img.i16 {
    cursor: default;
    width: 16px;
    height: 16px;
    margin-right: 2px;
}

img.g16 {
    cursor: default;
    width: 16px;
    height: 16px;
    margin-bottom: 2px;
}

img.b16 {
    cursor: default;
    width: 20px;
    height: 20px;
    margin: 0px 2px 0px 8px;
}

/* 禁煙 */
img.ns18 {
    cursor: default;
    width: 18px;
    height: 18px;
    margin: 4px 2px 2px;
}

/* テーブル */
table.tb {
    table-layout: fixed;
    border-collapse:collapse;
    border: 0px;
    padding: 0px;
    margin: 2px 0px 0px 1px;
    width: 252px;
}

/* leafletであれば、スクロールできるので不要 */
/* webkitで常にスクロールバーを表示 */
/*.stoptable::-webkit-scrollbar,
.routetable::-webkit-scrollbar,
#linetable::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

.stoptable::-webkit-scrollbar-track,
.routetable::-webkit-scrollbar-track,
#linetable::-webkit-scrollbar-track {
    border-radius: 10px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, .1);
}

.stoptable::-webkit-scrollbar-thumb,
.routetable::-webkit-scrollbar-thumb,
#linetable::-webkit-scrollbar-thumb {
    background-color: #bbb;
    border-radius: 10px;
    box-shadow:0 0 0 1px rgba(255, 255, 255, .3);
}
*/

/* PCはスクロールバーをつける */
/* leafletは、必要ないが、Google版と操作を統一するため */
.pc_bar::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

.pc_bar::-webkit-scrollbar-track {
    border-radius: 10px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, .1);
}

.pc_bar::-webkit-scrollbar-thumb {
    background-color: #bbb;
    border-radius: 10px;
    box-shadow:0 0 0 1px rgba(255, 255, 255, .3);
}

/* テーブル */
table.fx {
    table-layout: fixed;
    border-collapse:collapse;
    border: 0px;
    width: 100%;
    margin: 1px 0px 0px 0px;
}

/* テーブル */
table.wk {
    table-layout: fixed;
    border-collapse:collapse;
    border: 0px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

/* 天気 */
table.wt {
    margin: 2px 0px 0px;
}

/* シェアサイクル*/
table.bike {
    border-spacing: 0;
    border-collapse: separate;
    border-radius: 10px;
}

.bike_box {
    width: 252px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    margin: 2px 4px;
}

.bh {
    height: 32px;
    line-height: 32px;
    border-radius: 32vh;
    min-width: 100px;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    margin: 2px 4px 4px;
}

.bok {
    background-color: #09b303;
}

.bng {
    background-color: #cc121b;
}

.bd {
    height: 32px;
    width: 100px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    /*text-shadow: 0 1px 1px rgba(0, 0, 0, .3);*/
    text-decoration: none;
    font-size: 1.75rem;
    margin: 0px 4px;
}

.tok {
    color: #09b303;
}

.tng {
    color: #cc121b;
}

.example {
	font-size: 0.8rem !important;
	vertical-align: top;
}

/* バス停名 */
td.bn {
    display: table-cell;
    width: 252px;
    height: 32px;
    vertical-align: middle;
    text-align: center;
    color:#fff;
    background-color: #5b8f8f;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    padding: 3px 0 1px;
}

td.bn img {
    vertical-align: middle;
}

/* min-width:を付けないとchromeで表示されない */
td.bt1 {
    background-color: #ffff00;
    height: 3px;
    min-width: 10px;
}

td.bt2 {
    background-color: #00ff00;
    height: 3px;
    min-width: 10px;
}

td.bt4 {
    background-color: #00ffff;
    height: 3px;
    min-width: 10px;
}

td.bt8 {
    background-color: #ff00ff;
    height: 3px;
    min-width: 10px;
}

td.ul {
    background-color: #5b8f8f;
    height:8px;
}

/* 駅名 */
td.sn {
    display: table-cell;
    width: 252px;
    height: 32px;
    vertical-align: middle;
    text-align: center;
    color:#fff;
    background: #5b8f8f;
    font-size: 1.375rem;
    /*font-weight: bold;*/
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    padding: 3px 0 1px;
}

td.st1 {
    background-color: #003f88;
    height: 3px;
    min-width: 10px;
}

td.st2 {
    background-color: #ff8c00;
    height: 3px;
    min-width: 10px;
}

td.st4 {
    background-color: #a52a2a;
    height: 3px;
    min-width: 10px;
}

td.st8 {
    background-color: #008000;
    height: 3px;
    min-width: 10px;
}

td.bb {
    height: 48px;
    color: #313131;
    text-align: center;
    vertical-align: middle;
    margin: 0px;
}

td.rt {
    text-align: center;
    vertical-align: middle;
    font-size: 1.0rem;
    margin: 4px;
}

td.cn {
    height: 48px;
    -webkit-background-size: 24px 24px;
    -moz-background-size: 24px 24px;
    -ms-background-size: 24px 24px;
    -o-background-size: 32px 24px;
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: right 50%;
    background-image: url('//bus-routes.net/imgs/other/arrow@2x.png');
    vertical-align: middle;
    border-top: solid 1px #34495e;
    border-bottom: solid 1px #34495e;
    cursor: pointer;
    color: #005599;
}

/* 事業者名 */
span.cn {
    display: table-cell;
    height: 48px;
    width: 220px;
    font-size: 1.0rem;
    font-weight: bold;
    text-align: left;
    vertical-align: middle;
    cursor: pointer;
}

span.cn1 {
    background-color: #f5deb3;
}

span.cn2 {
    background-color: #90ee90;
}

span.cn4 {
    background-color: #afeeee;
}

span.cn8 {
    background-color: #e6e6fa;
}

/* 路線名 */
td.ln {
    width: 200px;
    font-size: 0.875rem;
    line-height: 20px;
    padding: 1px 2px 1px 4px;
    margin: 0px;
    vertical-align: middle;
}

/* 路線アイコン */
td.gi {
    width: 20px;
    vertical-align: middle;
    cursor: default;
}

td.gb {
    vertical-align: middle;
    border-bottom: solid 1px #003f88;
    padding: 2px 0px;
}

/* 路線名(GTFS) */
td.gl {
    width: 190px;
    font-size: 0.875rem;
    line-height: 22px;
    padding: 1px;
    margin: 0px;
    color: #1A0DAB;
    vertical-align: middle;
    cursor: pointer;
}

td.gd {
    font-size: 0.875rem;
    line-height: 16px;
    text-align: right;
    padding: 1px 2px;
}

/* 時刻表 */
td.tt {
    text-align: left;
    padding: 1px 2px;
    border-bottom: solid 1px #34495e;
}

td.line {
    /*background-color: #ffffff;*/
    background-color:#fff6e4;
}

/* 路線アクティブ */
.lact {
    background-color: #d8e698;
}

/* 全路線 */
td.lall {
    background-color: #cef6fe;
}

/* 路線名(鉄道) */
td.rl {
    width: 200px;
    font-size: 0.875rem;
    line-height: 16px;
    padding: 1px 2px;
    margin: 0px;
    border-bottom: solid 1px #34495e;
}

/* 運行本数 */
td.nn {
    font-size: 0.875rem;
    line-height: 16px;
    text-align: right;
    padding: 1px 4px;
    margin: 0px;
    border-bottom: solid 1px #34495e;
}

div.op {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    padding: 2px 3px;
    margin: 0px 2px 1px 4px;
    border-radius: 3px;
    font-size: 0.875rem;
    font-weight: normal;
}

/* 長距離 */
div.ld {
    background-color: #008b8b;
}

/* フェリー */
div.fd {
    background-color: #008b8b;
    padding: 0px 3px;
    margin-left: 6px;
}

/* 駅接続 */
div.cs {
    background-color: #0000cc;
}

/* ANA */
div.ANA {
    background-color: #13448f;
    font-size: 0.8175rem;
    margin: 0px 0px 0px 2px;
    padding: 0px 2px;
}

/* JAL */
div.JAL {
    background-color: #cc0100;
    font-size: 0.8175rem;
    margin: 0px 0px 0px 2px;
    padding: 0px 2px;
}

/* MCC */
div.MCC {
    background-color: #000000;
    font-size: 0.8175rem;
    margin: 0px 0px 0px 2px;
    padding: 0px 2px;
}

/* LCC */
div.LCC {
    background-color: #9c308c;
    font-size: 0.8175rem;
    margin: 0px 0px 0px 2px;
    padding: 0px 2px;
}

/* 朝食 */
div.bf {
    margin: 4px 2px;
    font-size: 0.75rem;
    background-color: #008b8b;
}

/* 夕食 */
div.dn {
    margin: 4px 2px;
    font-size: 0.75rem;
    background-color: #ee7800;
}

/* ボタンカラム */
td.bc {
    width: 46px;
    line-height: 46px;
    padding: 0px 1px 1px;
    margin: 0px;
    vertical-align: middle;
}

/* ルート*/
.route_head {
    font-size: 1.25rem;
    padding:4px;
}

/* ルート情報 */
td.ri {
    font-size: 1.0rem;
    text-align: left;
    padding: 4px;
    border-top:#739a3d 1px dashed;
    border-bottom:#739a3d 1px dashed;
    /*width: 156px;*/
}

table.tb tbody,
table.tb thead {
    display:block;
    empty-cells: show;
}

/* スクロール用 */
tbody.sb {
    display: block;
    overflow-y: scroll;
    max-height: 240px;
    /*-webkit-overflow-scrolling: auto;*/
}

/* スクロールなし */
tbody.ns {
    display:block;
    overflow-y:hidden;
}

/*スクロール用*/
thead.scrollHead,tbody.scrollBody {
    display:block;
}

tbody.scrollBody {
    overflow-y:scroll;
    height:100px;
}

/* 山名読み仮名 */
td.kn {
    font-size: 0.75rem;
    line-height: 12px;
    vertical-align: bottom;
    padding-top: 8px;
}

/* 山名 */
td.mn {
    font-size: 1.25rem;
    line-height: 26px;
    vertical-align: top;
    border-bottom: solid 1px #34495e;
}

/* 標高 */
td.ev {
    font-size: 1.0rem;
    padding-top: 5px;
    padding-bottom: 1px;
}

/* 都道府県 */
td.ar {
    font-size: 0.875rem;
    padding-bottom: 3px;
}

/* 名山 */
td.mz {
    font-size: 0.875rem;
    padding-top: 3px;
    padding-bottom: 3px;
    border-top: solid 1px #34495e;
}

/* ヘッダテーブル */
table.ob {
    table-layout: fixed;
    border-collapse:collapse;
    border-spacing: 0px;
    padding: 0px;
    margin: 2px 0px 0px 1px;
    border: 0px;
    width: 252px;
}

/* 情報テーブル */
table.ot {
    table-layout: fixed;
    border-collapse:collapse;
    padding: 0px;
    border: 0px;
    margin: 0px 1px;
    width: 250px;
}

table.yt {
    table-layout: fixed;
    border-collapse:collapse;
    padding: 0px;
    border: 0px;
    margin: 0px 1px;
    width: 250px;
}

table.rt {
    table-layout: fixed;
    border-collapse:collapse;
    padding: 0px;
    border: 0px;
    margin: 2px 1px 0px 1px;
    width: 210px;
}

/* 温泉名(サブ) */
div.os {
    font-size: 0.875rem;
    line-height: 1.2rem;
}

/* 温泉名(メイン) */
div.om {
    font-size: 1.25rem;
    line-height: 1.4rem;
}

.gn {
    flex-grow: 1;
    height: 48px;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    font-size: 0.875rem;
    font-weight: normal;
    background: #5b8f8f;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    cursor: default;
    margin: 2px;
}

.goff {
    display: none !important;
}

.gred {
    color: red !important;
}

.gplus {
    font-size: 0.75rem;
    position: absolute;
    right : 8px;
    top: 58px;
    color: #fff;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
}

.bplus {
    font-size: 0.75rem;
    position: absolute;
    right : 8px;
    top: 25px;
    color: #fff;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
}

.on {
    flex-grow: 1;
    height: 48px;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    border-radius: 5px;
    font-size: 0.875rem;
    font-weight: normal;
    /*text-shadow: 0 1px 1px rgba(0, 0, 0, .3);*/
    cursor: pointer;
    margin: 2px;
}

.on:hover,
.on:focus,
.gbox:hover,
.gbox:focus {
    background-image: -webkit-linear-gradient(top, rgba(255,255,255,.1), rgba(0,0,0,0));
    background-image:    -moz-linear-gradient(top, rgba(255,255,255,.1), rgba(0,0,0,0));
    background-image:     -ms-linear-gradient(top, rgba(255,255,255,.1), rgba(0,0,0,0));
    background-image:      -o-linear-gradient(top, rgba(255,255,255,.1), rgba(0,0,0,0));
    background-image:         linear-gradient(top, rgba(255,255,255,.1), rgba(0,0,0,0));
}

.off {
    flex-grow: 1;
    height: 48px;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    font-size: 0.875rem;
    font-weight: normal;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    cursor: normal;
    margin: 2px;
}

.closed {
    text-align: center;
    color: rgb(255, 60, 60);
    font-weight: bold;
    font-size: 1.0rem;
    padding: 2px;
}

.closing {
    text-align: center;
    color: rgb(255, 60, 60);
    font-weight: bold;
    font-size: 1.0rem;
    padding: 2px 0px 0px;
}

.open {
    text-align: center;
    color: rgb(0, 128, 255);
    font-weight: bold;
    font-size: 1.0rem;
    padding: 2px 0px 0px;
}

.price {
    font-size: 1.0rem;
    font-weight: bold;
    color: #555;
}

.holiday {
    color: red;
    font-weight: bold;
}

.discount_btn {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    background: #fff;
    border-radius: 50%;
    /*border: 1px solid #003f88;*/
    color: #158b2b;
    text-align: center;
    font-size: 0.875rem;
    font-weight: bold;
    text-shadow: 0 1px 1px rgba(255, 255, 255, .3);
    z-index: 2;
    cursor: pointer;
}

.discount_btn:hover {
    -webkit-transform: scale(1.2);
    transform: scale(1.1);
    transition: all 0.3s;
    background: #d8e698;
}

.flex_box {
    width: 252px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    margin: 4px 0px 4px 1px;
    padding: 0px;
}

.flex_box2 {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    margin: 4px 0px 2px 0px;
    padding: 0px;
}

.flex_box3 {
    width: 152px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    margin: 4px 0px 2px 50px;
    padding: 0px;
}

.flex_box4 {
    width: 204px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    margin: 4px 0px 4px 25px;
    padding: 0px;
}

.flex_center {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    margin: 4px 0px 0px 0px;
    padding: 0px;
}

.onsenchi_box {
    display: flex;
    flex: 0 0 100%;
    order: 2;
    flex-direction: row;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 4px 0px 2px;
}

.facility_box {
    display: flex;
    flex: 0 0 100%;
    flex-direction: row;
    flex-wrap: nowrap;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 0px 0px 2px 3px;
}

.quality_box {
    display: flex;
    flex: 0 0 100%;
    flex-direction: row;
    flex-wrap: wrap;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 4px 0px 0px 0px;
}

.flag_box {
    display: flex;
    flex: 0 0 100%;
    flex-direction: row;
    flex-wrap: nowrap;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 2px 0px 0px 0px;
}

.moyori_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    align-items: center;
}

.moyori {
    min-width: 100px;
}

.mess1 {
    line-height: 1.25rem;
    padding: 0px;
    margin-top: -8px;
}

.mess2 {
    line-height: 1.25rem;
    padding: 0px;
    margin-bottom: -8px;
}

.oa {
    text-align: center;
    vertical-align: center;
    font-size: 0.875rem;
    margin: 0px;
    padding: 2px 0px 4px;
    width: 252px;
    /*width: 100%;*/
}

.ooa {
    text-align: center;
    vertical-align: center;
    font-size: 0.875rem;
    margin: 0px;
    padding: 0px 0px 0px;
    width: 100%;
}

.bob {
    border-bottom:#003f88 1px solid;
}

.oad {
    text-align: center;
    vertical-align: center;
    font-size: 0.875rem;
    margin: 0px;
    padding: 4px 0px 0px;
    width: 100%;
}

.ya {
    text-align: center;
    vertical-align: center;
    font-size: 0.875rem;
    margin: 0px 0px;
    padding: 0px;
    width: 100%;
}

.room_param {
    font-size: 0.875rem;
    text-align: center;
}

.room_container {
    display: flex;
    background-color: #e7fde7;
    border: 1px solid #444;
    margin: 2px 0px;
    font-size: 0.875rem;
    width: 258px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.disc {
    background-color: #ffe7dd;
}

.plan_box {
    padding: 2px 4px 0px;
    width: 200px;
    cursor: pointer;
}

p.open_p,
p.null_p {
    color: #3388cc;
    font-weight: bold;
    border-bottom: 1px solid #a9a9a9;
    cursor: pointer;
    margin: 0;
}

.open_p:after,
.open_p.active:after {
    margin-left: 10px;
}

.open_p.active::after {
    color: #ee7800;
    content: "▲";
}

.open_p::after {
    color: #ee7800;
    content: "▼";
}

.p_info {
    margin: 4px 0px 0px !important;
    padding: 0px;
    font-size: 0.75rem;
}

.charge_box {
    display: flex;
    justify-content: flex-end;
    align-content: flex-end;
}

.charge_info {
    margin: 3px 0px 0px 2px;
    font-weight: bold;
    vertical-align: bottom;
    font-size: 1.0rem;
}

.chen {
    margin: 8px 0px 0px 2px;
    font-weight: bold;
    font-size: 0.75rem;
    vertical-align: bottom;
}

.reserve {
    font-size: 0.875rem;
    align-self: center;
    background-color: #009999;
    text-decoration:none;
    color: #fff;
    width: 36px;
    height: 36px;
    line-height: 36px;
    margin: 4px;
}

.rank_btn {
    width: 44px;
    height: 44px;
    line-height: 44px;
    margin: 0px;
    padding: 0px;
    font-size: 0.875rem;
    text-decoration:none;
    border: solid 2px #003f88;
    text-shadow: 0 1px 1px rgba(255, 255, 255, .3);
    color: #333;
    text-align: center;
    border-radius: 5px;
    cursor: pointer;
}

.rank_box {
    display: flex;
    flex: 0 0;
    justify-content: space-between;
    margin: 4px 0px 0px 1px;
    width: 252px;
}

.rank_text {
    font-size: 0.875rem;
    line-height: 18px;
    text-align: center;
    padding: 4px 0px 0px;
}

.val {
    font-size: 1.0rem;
    padding: 0px 0px 4px;
}

#raku_plan {
    width: 80px;
    height: 44px;
    line-height: 44px;
    background-color: #E7FEE6;
    text-decoration:none;
    border: solid 2px #09b303;
    color:#333;
}

#charge_rank {
    display: flex;
    flex-flow: column wrap;
    justify-content: center;
    align-content: center;
    width: 76px;
    background-color: #CCEACC;
    border: solid 2px #CCEACC;
    text-decoration:none;
    color:#333;
}

#rating_rank {
    display: flex;
    flex-flow: column wrap;
    justify-content: center;
    align-content: center;
    width: 76px;
    background-color: #D4DDF6;
    border: solid 2px #D4DDF6;
    text-decoration:none;
    color:#333;
}

.active_mode {
    border: solid 2px #003f88 !important;
}

.gray {
    background-color: #cccccc !important;
    cursor: default;
}

/* 温泉ヘッダ */
td.oh {
    width: 46px;
    height: 28px;
    font-size: 0.9375rem;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    color:#888;
    margin-bottom: 2px;
}

/* 温泉情報 */
td.oi {
    text-align: left;
    vertical-align: middle;
    font-size: 0.9375rem;
    padding: 2px;
    width: 206px;
}

td.om {
    text-align: left;
    vertical-align: middle;
    font-size: 0.75rem;
    padding: 2px;
    width: 206px;
}

td.c1 {
	color: #d23f40;/* #c53d43;*/
}
td.c2 {
	color: #ff8c0a; /*#f08300;*/
}
td.c3 {
	color: #b2383e; /*#7c272b;*/
}
td.c4 {
	color: #3e62ad;/* #1e50a2;*/
}
td.c5 {
	color: #0073e0;
}
td.c6 {
	color: #E5001A;
}
td.c8 {
	color: #7a4171; /*#522f60;*/
}
td.c16 {
	color: #f96e29;
}
td.c17 {
	color: #f96e29;
}
td.c32 {
	color: #B6391A;
}
td.c64 {
	color: #00846C;/* #005243;*/
}
td.c128 {
	color: #474b42;
}

td.m0 {
    color: #1e50a2;
}
td.m1 {
	color: #f39800;
}
td.m2 {
	color: #c53d43;
}
td.m3 {
	color: #69b076;
}

td.y1 {
	color: #4a488e;
}
td.y2 {
	color: #d0576b;
}
td.y3 {
	color: #f39800;
}
td.y4 {
	color: #769164;
}

td.g1 {
    color: #db2822;
}
td.g2 {
    color: #b33e5c;
}
td.g3 {
    color: #288c66;
}
td.g4 {
    color: #7b8d42;
}
td.g5 {
    color: #f3981d;
}
td.g6 {
    color: #147f3a;
}
td.g7 {
    color: #e70013;
}
td.g8 {
    color: #bb5535;
}
td.g9 {
    color: #ec6800;
}
td.g10 {
    color: #ec6800;
}
td.g11 {
    color: #00ac97;
}
td.g12 {
    color: #00afcc;
}
td.g13 {
    color: #2b2b2b;
}
td.g14 {
    color: #0075c2;
}
td.g15 {
    color: #9fc24d;
}
td.g16 {
    color: #683f36;
}
td.g17 {
    color: #e70013;
}

/* レンタカー */
td.rc0 {
    color: #003f88;
}

td.rc13 {
    color: #fc0000;
}

td.rc14 {
    color: #0f3a61;
}

td.rc16 {
    color: #231e1f;
}

td.rc19 {
    color: #082c6e;
}

td.rc20 {
    color: #ec0000;
}

td.rc26 {
    color: #ec0000;
}

td.rc30 {
    color: #231e1f;
}

td.rc56 {
    color: #fc0000;
}

td.rc422 {
    color: #0073d3;
}

/* シェアサイクル */
td.bk1 {
    color: #000000;
}

td.bk2 {
    color: #cc0133;
}

/* 2行 */
div.l2 {
    font-size: 0.875rem;
    line-height: 1.25rem;
    padding: 0px;
}

/* 設備 */
td.ot {
    text-align: center;
    padding: 2px 0px 0px;
    width: 100%;
}

td.hh {
    padding: 4px;
    text-decoration: none;
    font-size: 1.0rem;
    text-align: center;
    background-color: #003f88;
    color: #fff;
    font-weight: normal;
    text-shadow: 0 0px 0px rgba(0, 0, 0, .3);
}

/* モバイル用TEL */
.tl {
    color: #06F;
    font-size: 1.0rem;
    font-weight: bold;
}

.wm {
    font-size: 0.875rem;
}

.rate {
    position: relative;
    display: inline-block;
    width: 86px;
    height: 16px;
    font-size: 1.0rem;
    vertical-align: middle;
}

.rate:before, .rate:after {
    position: absolute;
    left: 0;
    content: '★★★★★';
    display: inline-block;
    height: 16px;
    line-height: 16px;
}

.rate:before {
    color: #ccc;
}

.rate:after {
    overflow: hidden;
}

.access {
    border: 1px solid #003f88;
	background-color: rgba(255,255,255,0.5);
    color: #333;
    text-decoration: none;
    text-shadow: initial;
    font-size: 0.875rem;
    padding: 0px 4px;
    margin: 0px 8px;
	vertical-align : middle;
    height: 24px;
    line-height: 24px;
}

.moyori {
    margin: 0px;
}

.st_access {
    border: 1px solid #003f88;
	background-color: rgba(255,255,255,0.5);
    color: #333;
    text-decoration: none;
    text-shadow: initial;
    font-size: 0.875rem;
    padding: 0px 4px;
    margin: 0px;
    height: 24px;
    line-height: 24px;
}

.raku_review {
    min-width: 58px;
    margin: 4px;
    color: #fff;
    background-color: #EA8B47;
}

.rlow {
    background-color: #7b7c7d;/*#8b0000;*/
}

.rhigh {
    background-color: #93ca76;/*#32cd32;*/
}

/* 温泉地ヘッダ */
td.och {
    width: 84px;
    height: 24px;
    font-size: 1.0rem;
    font-weight: normal;
    text-align: left;
    vertical-align: middle;
    border-bottom:#003f88 1px solid;
    padding: 4px 4px 0px;
}

td.oct {
    padding: 4px;
    text-align: center;
}

/* 温泉情報 */
td.oci {
    width: 34px;
    font-size: 1.0rem;
    text-align: center;
    vertical-align: middle;
    padding: 2px;
    border-bottom:#003f88 1px solid;
}

/* 温泉ボタン色 */
.bc0 {
    background-color: #12509b;
}
.bc1 {
    background-color: #d23f40;  /* #C94F55;/*#c53d43;*/  /* 赤紅 */
}
.bc2 {
    background-color: #ff8c0a;/*#FF9823;/* #f08300;  /* 蜜柑色 */
}
.bc3 {
    background-color: #b2383e; /*9E3237;/*#7c272b;*/
}
.bc4 {
    background-color: #3e62ad;/* #4a488e;/* #2664C9;/* #1e50a2;  /* 瑠璃色 */
}
.bc5 {
    background-color: #0073e0;
}
.bc6 {
    background-color: #E5001A; /*#b60015;*/
}
.bc8 {
    background-color: #7a4171 /*#7c4892; /* #522f60;*/  /* 葡萄色 */
}
.bc16 {
    background-color: #f96e29; /* #ea5506; */
}
.bc17 {
    background-color: #f96e29; /* #ea5506;*/
}
.bc32 {
    background-color: #B6391A;/* #8f2e14;*/
}
.bc64 {
    background-color: #00846C; /*#005243;*/
}
.bc128 {
    background-color: #474b42;
}

/* 道の駅ボタン色 */
.mb0 {
    background-color: #1e50a2;  /* 瑠璃色 */
}
.mb1 {
    background-color: #f39800;  /* 金茶 */
}
.mb2 {
    background-color: #c53d43;  /* 赤紅 */
}
.mb3 {
    background-color: #69b076;  /* 薄緑 */
}

/* 道の駅背景色 */
.mc0 {
    background-color: #e1eeff;
}
.mc1 {
    background-color: #f5f0e1;
}
.mc2 {
    background-color: #fff0f5;
}
.mc3 {
    background-color: #e9f8f3;
}

/* 空港ボタン色 */
.ab1 {
    background-color: #c53d43;  /* 赤紅 */
}
.ab2, .ab3 {
    background-color: #1e50a2;  /* 瑠璃色 */
}

/* フェリーボタン色 */
.fr1 {
    background-color: #c53d43;  /* 赤紅 */
}
.fr2, .fr3 {
    background-color: #1e50a2;  /* 瑠璃色 */
}

/* 高速バスボタン色 */
.ex1 {
    background-color: #1e50a2;  /* 瑠璃色 */
}
.ex2, .ex3 {
    background-color: #c53d43;  /* 赤紅 */
}

/* 空港・天気・フェリー背景 */
.ar {
    background-color:#fff6e4;
}

/* レンタカーボタン色 */
.cr0 {
    background-color: #003f88;
}

.cr13 {
    background-color: #049f40;
}

.cr14 {
    background-color: #0f3a61;
    color: #fabe01;
    text-shadow: none;
}

.cr16 {
    background-color: #ffcd00;
    color: #000000;
    text-shadow: none;
}

.cr19 {
    background-color: #082c6e;
}

.cr20 {
    background-color: #ec0000;
}

.cr26 {
    background-color: #ec0000;
}

.cr30 {
    background-color: #ec0000;
}

.cr56 {
    background-color: #fc0000;
}

.cr422 {
    background-color: #0073d3;
}

/* レンタカー背景色 */
.cb0 {
    background-color: #E5F1FF;
}

.cb13 {
    background-color: #fbf0f0;
}

.cb14 {
    background-color: #FEF8E5;
}

.cb16 {
    background-color: #FFF9E5;
}

.cb19 {
    background-color: #E7EFFD;
}

.cb20 {
    background-color: #FFE5E5;
}

.cb26 {
    background-color: #FFE5E5;
}

.cb30 {
    background-color: #fdf3f3;
}

.cb56 {
    background-color: #FFFDE5;
}

.cb422 {
    background-color: #FFFFFF;
}

/* シェアサイクル */
td.bs1 {
    background-color: #fabe00;
    color: #000000;
    text-shadow: 0 1px 1px rgba(255, 255, 255, .3);
    height: 44px;
}

td.bs2 {
    background-color: #cc0133;
    height: 44px;
}

/* シェアサイクル背景色 */
.bb1 {
    background-color: #FFF8E5;
}

.bb2 {
    background-color: #FEE5EB;
}

/* 温泉背景色 */
.tc0 {
    background-color: #e1eeff;
}
.tc1 {
    background-color: #fff0f5;
}
.tc2 {
    background-color: #fdf5e6;
}
.tc3 {
    background-color: #fdeeee;
}
.tc4 {
    background-color: #e1eeff;
}
.tc5 {
    background-color: #e5f2ff;
}
.tc6 {
    background-color: #ffe5e8;
}
.tc8 {
    background-color: #e6e6fa;
}
.tc16 {
    background-color: #ffffe0;
}
.tc17 {
    background-color: #ffffe0;
}
.tc32 {
    background-color: #ffdab9;
}
.tc64 {
    background-color: #f0fff0;
}
.tc128 {
    background-color: #dcdcdc;
}

/* 宿ボタン色 */
.yb1 {
    background-color: #4a488e; /* ホテル:紺藍 */
}
.yb2 {
    background-color: #d0576b;  /* 旅館:今様色 */
}
.yb3 {
    background-color: #f39800;  /* ペンション: 金茶*/
}
.yb4 {
    background-color: #769164;  /* その他: 老竹色 */
}

/* 宿背景 */
.yc1 {
    background-color: #e1eeff;
}
.yc2 {
    background-color: #fff0f5;
}
.yc3 {
    background-color: #fdf5e6;
}
.yc4 {
    background-color: #f0ffff;
}

/* 温泉地ボタン色 */
.boc1 {
    background-color: #a22041;
}
.boc2 {
    background-color: #ec6800;
}
.boc3 {
    background-color: #824880;
}
.boc4 {
    background-color: #2a83a2;
}
.boc5 {
    background-color: #47885e;
}
.boc6 {
    background-color: #716246;
}

/* グルメボタン色 */
.gb1 {
    background-color: #db2822;
}
.gb2 {
    background-color: #b33e5c;
}
.gb3 {
    background-color: #288c66;
}
.gb4 {
    background-color: #7b8d42;
}
.gb5 {
    background-color: #f3981d;
}
.gb6 {
    background-color: #147f3a;
}
.gb7 {
    background-color: #e70013;
}
.gb8 {
    background-color: #bb5535;
}
.gb9 {
    background-color: #ec6800;
}
.gb10 {
    background-color: #ec6800;
}
.gb11 {
    background-color: #00ac97;
}
.gb12 {
    background-color: #00afcc;
}
.gb13 {
    background-color: #2b2b2b;
}
.gb14 {
    background-color: #0075c2;
}
.gb15 {
    background-color: #9fc24d;
}
.gb16 {
    background-color: #683f36;
}
.gb17 {
    background-color: #e70013;
}

/* グルメ背景色 */
.gr1 {
    background-color: #fff0f5;
}
.gr2 {
    background-color: #ffebf0;
}
.gr3 {
    background-color: #e3fcf2;
}
.gr4 {
    background-color: #f4fcdc;
}
.gr5 {
    background-color: #fdefdc;
}
.gr6 {
    background-color: #fde4e4;
}
.gr7 {
    background-color: #fcf0cf;
}
.gr8 {
    background-color: #fdeae4;
}
.gr9 {
    background-color: #ffeee1;
}
.gr10 {
    background-color: #fdecde;
}
.gr11 {
    background-color: #dcfffb;
}
.gr12 {
    background-color: #e4f9fd;
}
.gr13 {
    background-color: #f1efef;
}
.gr14 {
    background-color: #ddf2ff;
}
.gr15 {
    background-color: #f2fcda;
}
.gr16 {
    background-color: #ffe5df;
}
.gr17 {
    background-color: #ffdfe1;
}

.grcp {
    margin: 0px 0px 0px 4px;
    padding: 1px 3px;
    color: #fff;
    font-size: 0.875rem;
    font-weight: normal;
    text-decoration: none;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    background-color: #003f88;
    border-radius: 3px;
}

/* ふるさと納税ボタン色 */
.fu1 {
    background-color: #d23f40;
}

.fu2 {
    background-color: #ec6800;
}

.fu3 {
    background-color: #824880;
}

.fu4 {
    background-color: #3e62ad;
}

.fu6 {
    background-color: #006a6c;
}

.fu7 {
    background-color: #0066b7 !important;
}

.fu1_text {
    color: #d23f40;
}

.fu2_text {
    color: #ec6800;
}

.fu3_text {
    color: #824880;
}

.fu4_text {
    color: #3e62ad;
}

.fu6_text {
    color: #006a6c;
}

.pop_text {
    font-size: 1.0rem;
    font-weight: bold;
}

.pop_up {
    color: green;
}

.pop_down {
    color: red;
}

#furusato_box {
    display: flex;
    width: 252px;
    justify-content: center;
    flex-wrap: wrap;
    padding: 0px 0px 2px;
}

.fu_price {
    color: #bf0000;
    font-weight: bold;
    font-size: 1.25rem;
}

.fu_yen {
    color: #bf0000;
    font-weight: bold;
    font-size: 1.0rem;
}

.f_price {
    color: #fff;
    font-weight: bold;
    font-size: 1.25rem;
}

.f_yen {
    color: #fff;
    font-weight: bold;
    font-size: 1.0rem;
    padding-right: 10px;
}

.f_rakuten {
    float: right;
    width: 200px;
    height: 32px;
    background-color: #bf0000;
    color: #fff !important;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 32px;
    border-radius: 5px;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    margin-top: 4px;
}

.f_rank {
    width: 220px;
    font-size: 1.0rem;
    font-weight: bold;
    padding: 0px;
    text-align: center;
}

.f_name {
    font-size: 0.8125rem;
    font-weight: 500;
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    padding: 4px 4px 0px;
}

.f_thumb_box {
    display: flex;
    justify-content: center;
    align-items: center;
    margin:0px;
    padding:0px;
}

.f_thumb {
    width: 180px;
    height: 180px;
    cursor: default;
}

#furusato-genre .ui-btn-active {
    text-decoration: none;
    border: 1px solid   #669999;
    background:       #709f9f;
    color:        #ffffff;
    font-weight: bold;
    text-shadow: 0 -1px 1px #669999;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#709f9f), to(#5B8888));
    background-image: -webkit-linear-gradient(top, #709f9f, #5B8888);
    background-image:  -moz-linear-gradient(top, #709f9f, #5B8888);
    background-image:   -ms-linear-gradient(top, #709f9f, #5B8888);
    background-image:   -o-linear-gradient(top, #709f9f, #5B8888);
    background-image:     linear-gradient(top, #709f9f, #5B8888);
}

#furusato-genre {
    display: none;
}

#furusato_gift, #furusato_data {
    display: flex;
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
    padding: 0px 0px 2px 2px;
}

#chart_box {
    width: 256px;
    height: 226px;
    margin-top: -8px;
    padding: 0px;
}

#furusato_chart {
    display: none;
    cursor: pointer;
}

#furusato_table {
    table-layout: fixed;
    width: 244px;
    margin: 4px;
    font-size: 0.75rem;
    text-align: right;
    color: #454545;
}

#furusato_foot {
    display: flex;
    width: 244px;
    height: 20px;
    margin: 0px 4px -2px;
    justify-content: space-between;
    align-items: flex-end;
}

.f_head {
    font-size: 1.0rem;
    font-weight: bold;
    text-align: center;
    color: #484848;
    margin: 2px 0px 0px;
}

.f_ranking {
    font-size: 0.75rem;
    font-weight: bold;
    margin: 4px 0px 4px;
}

.f_last {
    text-align: center;
    font-size: 0.75rem;
    margin: 2px 0px -4px;
}

hr.f_hr {
    border-top: 1px solid #b7b7b7;
    padding: 0px;
    margin: 2px 0px 2px;
}

#furusato_table th:first-of-type {
	width: 98px;
}

.f_total {
    width: 98px;
}

.f_out {
    width: auto;
}

.f_in {
    width: auto;
}

#t_total {
    color: #2B6FAA;
    font-family: "Arial" !important;
    font-size: 1.5rem;
}

#t_out {
    color: #F90036;
    font-family: "Arial" !important;
    font-size: 1.0rem;
}

#t_in {
    color: #37A34A;
    font-family: "Arial";
    font-size: 1.0rem;
}

.furusato_rating {
    margin: 2px 0px 2px;
    text-align: center;
}

.fu_rating {
    font-size: 0.875rem !important;
    vertical-align: middle;
    text-align: center;
    font-weight: bold;
    color: #EA8B47;
}

.fu_review {
    font-size: 0.875rem !important;
    vertical-align: middle;
    color: #444444;
}

.sub_low {
    color: #333;
    font-size: 0.75rem;
}

#f_kaso {
    width: 60px;
    text-align: left;
}

#f_source {
    width: 48px;
    text-align: right;
}

#p_kaso {
    font-size: 0.75rem;
    color: rgb(255, 60, 60);
    text-decoration: none;
}

#p_source {
    font-size: 0.75rem;
    text-decoration: none;
}

.p_come {
	font-size: 0.75em;
	vertical-align: top;
}

.arrow {
    position: relative;
    display: inline-block;
    padding: 10px;
}

.arrow::before {
    content: '';
    width: 10px;
    height: 10px;
    border-top: solid 4px #003f88;
    border-right: solid 4px #003f88;
    position: absolute;
    top: 10px;
}

.arrow.arrow-top::before {
    transform: rotate(-45deg);
    top: 10px;
}

.arrow.arrow-bottom::before {
    transform: rotate(135deg);
}

.arrow.arrow-left::before {
    left: 12px;
    transform: rotate(-135deg);
}

.arrow.arrow-right::before {
    left: 5px;
    transform: rotate(45deg);
}

.arrow.arrow-gray::before  {
    border-top: solid 4px #eaeaea;
    border-right: solid 4px #eaeaea;;
}

.arrow-gray {
    cursor: default !important;
}

.arrow-box {
    width: 32px;
    height: 32px;
    cursor: pointer;
    margin: 3px;
    border-radius: 50%;
}

/* 広告 */
.ad_box {
    display: flex;
    justify-content: center;
    margin: 2px 0px -2px -8px;
}

.ad {
    font-size: 0.875rem;
    font-weight: bold;
}

.ad_travel {
    color: #03ad00;
    /*color: #03b900;*/
}

.ad_rakuten {
    color: #c53d43;
    /*color: #cc121b;*/
}

.ad_hotpepper {
    color: #d0121b;
}

/* GTFS */
.bsbg {
    background-color: #003f88;
}

.g2 {
    min-height: 32px;
    line-height: 16px;
}

.g3 {
    min-height: 48px;
    line-height: 16px;
}

.g4 {
    min-height: 64px;
    line-height: 16px;
}

.g5 {
    min-height: 80px;
    line-height: 16px;
}

/* 時刻ボタン*/
.gbtn {
    display: inline-block;
    margin: 2px;
    padding: 0px;
    width: 44px;
    height: 44px;
    line-height: 43px;
    font-size: 0.875rem;
    font-weight: bold;
    text-decoration: none;
    text-shadow: 0 1px 1px rgba(250, 250, 250, .3);
    text-align: center;
    vertical-align: middle;
    color: #1A0DAB;
    background-color: #ffe4c4;
    border-radius: 5px;
    cursor: pointer;
}

.gon {
    background-color: #d8e698 !important;
}

.r0 {
    background-color: #cccccc;
}

.r0 {
	background-color: #cccccc;
}
.r1 {
    background-color: #f2f5fd;
}
.r2 {
    background-color: #fdfdea;
}
.r3 {
    background-color: #ffecf2;
}
.r4 {
    background-color: #f0ffee;
}
.r5 {
	background-color: #fcf3e8;
}
.r6 {
    background-color: #effdfd;
}
.r7 {
    background-color: #f8f0ff;
}
.r8 {
	background-color: #fcf3eb;
}
.r9 {
	background-color: #e7eeff;
}
.r10 {
    background-color: #fcfcdd;
}
.r11 {
    background-color: #ffe4ed;
}
.r12 {
    background-color: #e6fde3;
}
.r13 {
	background-color: #fceede;
}
.r14 {
    background-color: #e4fdfd;
}
.r15 {
    background-color: #f4e9ff;
}
.r16 {
	background-color: #fff0e2;
}

/* GTFSルートボタン */
.obtn {
    display: inline-block;
    margin: 2px;
    padding: 0px;
    width: 44px;
    height: 44px;
    line-height: 44px;
    font-size: 0.875rem;
    font-weight: normal;
    text-decoration: none;
    text-align: center;
    vertical-align: middle;
    border-radius: 5px;
    cursor: pointer;
}

/* 2段組*/
.two_row {
    height: 38px;
    padding-top: 6px;
    line-height: 16px;
}

/* 3段組*/
.three_row {
    height: 42px;
    padding-top: 2px;
    line-height: 14px;
}

/* 曜日記載 */
.day_mess {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: normal;
}

.saturday {
    color: #4169e1;
}

.sunday {
    color: #dc143c;
}

#daytable,
#desttable {
    width: 252px;
    border-collapse: collapse;
    margin: 0px 0px 0px 1px;
    padding: 0px;
    border: 0px;
}

.stoptable {
    table-layout: fixed;
    min-width: 252px;
    max-width: 252px;
    max-height: 160px;
    border-collapse: collapse;
    border: 1px solid #003f88;
    margin: 0px 0px 0px 1px;
    padding: 0px;
    border: 0px;
    display: block;
    overflow-y: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: scrollbar;    /* IE, Edge 対応 */
    /*scrollbar-width: none; */      /* Firefox 対応 */
}

.stoptable td {
    border-bottom: 1px solid #003f88;
    min-height: 48px;
}

.routetable {
    table-layout: fixed;
    border-collapse: collapse;
    min-width: 252px;
    max-width: 252px;
    max-height: 120px;
    border: 1px solid #003f88;
    margin: 0px 0px;
    padding: 0px;
    border: 0px;
    margin: 2px 0px 0px 1px;
    width: 252px;
    display: block;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: scrollbar;   /* IE, Edge 対応 */
    /*scrollbar-width: none;*/       /* Firefox 対応 */
}

.routetable tr.btm {
    border-bottom: 1px solid #003f88;
}

td.dhead {
    min-width: 40px;
    max-width: 40px;
    line-height: 48px;
    background-color: #eee;
    font-size: 0.9375rem;
    font-weight: bold;
    color: #003f88;
    text-decoration: none;
    text-shadow: initial;
    text-align: center;
    vertical-align: middle;
}

td.ghead {
    min-width: 40px;
    max-width: 40px;
    line-height: 48px;
    background-color: #eee;
    font-size: 0.9375rem;
    font-weight: bold;
    color: #003f88;
    text-decoration: none;
    text-shadow: initial;
    text-align: center;
    vertical-align: middle;
    position: -webkit-sticky;
    position: sticky;
    left: 0;
}

.gdest {
    font-size: 1.0rem;
    width: 100%;
    background-color: #eee;
    padding: 4px;
    text-align: left;
    vertical-align: middle;
}

.gmin {
    width: 100%;
    text-align: left;
    vertical-align: middle;
}

select:focus {
    outline: 0;
    border: 0;
    background-color: #ffffff;
    border-color: inherit;
    box-shadow: none;
}

select.active {
    background-color: #d8e698 !important;
}

select.form-control {
    font-size: 0.875rem;
    width: 204px;
    margin: 0px 0px -2px -2px;
}

.form-group {
    margin: 0px;
    padding: 0px;
}

.warn_date {
    display: none;
    color: red;
    text-align: left;
    font-size: 0.875rem;
    font-weight: bold;
}

.warn_mess {
    padding: 4px;
}

.warn_off {
    display: none;
    padding: 4px 0px 16px;
    color: red;
    text-align: center;
    font-size: 1.25rem;
    font-weight: bold;
}

td.tb {
    text-align: center;
    margin: 0px;
    padding: 0px;
}

/* ボタンイメージ */
img.sb {
    margin: 4px 2px;
    width: 44px;
    height: 44px;
    cursor: pointer;
}

/* 三角点情報 */
td.ti {
    font-size: 1.0rem;
}

.rate_review:after {
    color: #EA8B47;
}

.rakuten_rating {
    text-align: center;
    margin-left: auto;
    margin-left: right;
}

.avg_rating {
    flex: 0 0 250px;
    font-size: 1.875rem;
    text-shadow: 1px 1px 0px rgba(255,255,255,.6);
    display: inline-block;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    color: #EA8B47;
    padding-right: 4px;
}

.not_regist {
    flex: 0 0 250px;
    font-size: 1.0rem;
    vertical-align: middle;
    text-align: center;
    margin: 2px 0px;
    color: #EA8B47;
}

.rating {
    font-size: 0.875rem;
    height: 14px;
    line-height: 14px;
}

.rating:after {
    color: #EA8B47;
}

.low {
    color: #7b7c7d;
}

.low:after {
    color: #7b7c7d;
}

.high {
    color: #32cd32;
}

.high:after {
    color: #32cd32;
}

.rate:before {
    color: #ccc;
}

.rate:after {
    overflow: hidden;
    white-space: nowrap;
}

.total {
    color: #EA8B47;
    font-size: 0.875rem;
}

#address, #start_place, #end_place {
    position: absolute;
    display: none;
    top: 4px;
    left: 4px;
    margin: 0px;
    padding: 4px;
    height: 32px;
    z-index: 0;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    outline: none;
    border: 2px solid #003f88;
    border-radius: 5px;
    font-size: 0.875rem;
    vertical-align: center;
    background-color: #fff;
    text-overflow: ellipsis;
}

#address:focus {
    border-color: #003f88;
    background-color: #d8e698;
}

#start_place {
    top: 36px;
}

#end_place {
    top: 72px;
}

.mess {
    padding: 4px;
}

tr.fl, tr.fr, tr.ex {
    border-bottom: solid 1px #003f88;
}

.flight_grid {
    display: grid;
    grid-template-columns: 44px minmax(142px, 154px);
    grid-template-rows: 22px 20px 20px;
    padding: 4px;
}

.flight_item {
    grid-column: 1/3;
    grid-row: 1/2;
    align-items: left;
    justify-content: center;
    font-size: 0.875rem;
}

.express_grid {
    display: grid;
    grid-template-columns: 58px minmax(128px, 140px);
    grid-template-rows: 22px 20px 20px;
    padding: 4px;
}

.express_arrival {
    grid-column: 1/3;
    grid-row: 1/2;
    align-items: left;
    justify-content: center;
    font-size: 0.875rem;
}

.express_item {
    grid-column: 2/3;
    grid-row: 2/4;
    align-items: center;
    justify-content: left;
    display: flex;
    font-size: 0.8125rem;
}

.ticket_item {
    grid-column: 1/2;
    grid-row: 2/4;
}

.info_item {
    grid-column: 2/3;
    grid-row: 2/3;
    align-items: center;
    justify-content: flex-end;
    font-size: 0.8175rem;
    display: flex;
}

.com_item {
    grid-column: 2/3;
    grid-row: 3/4;
    align-items: center;
    justify-content: flex-end;
    display: flex;
}

.air_arrow {
    color: #186fba;
}

.ticket_btn {
    font-size: 0.875rem;
    align-self: center;
    background-color: #186fba;
    width: 44px;
    height: 36px;
    line-height: 36px;
    margin: 2px 0px 0px 0px;
}

.rentacar_box {
    display: flex;
    width: 252px;
    justify-content: center;
    padding: 4px 0px 2px;
}

.rentacar_btn {
    font-size: 0.875rem;
    align-self: center;
    background-color: #76ae25;
    text-decoration: none;
    text-shadow: none;
    color: #fff;
    width: 180px;
    height: 36px;
    line-height: 18px;
    padding: 2px 0px 0px 0px;
    margin: 0px;
}

.bike_btn {
    font-size: 0.875rem;
    align-self: center;
    background-color: #fabe00;
    text-decoration: none;
    text-shadow: none;
    color: #222222;
    width: 180px;
    height: 40px;
    line-height: 20px;
    padding: 4px 0px;
    margin: 8px 0px;
}

.ferry_line {
    min-width: 180px;
    text-align: left;
    font-size: 0.875rem;
    line-height: 1.25rem;
    padding: 2px;
}

.p36 {
    width: 36px;
    height: 36px;
}

/* Swatches */
/* A
-----------------------------------------------------------------------------------------------------------*/
/* Bar: Toolbars, dividers, slider track */
.ui-bar-a,
.ui-page-theme-a .ui-bar-inherit,
html .ui-bar-a .ui-bar-inherit,
html .ui-body-a .ui-bar-inherit,
html body .ui-group-theme-a .ui-bar-inherit {
    background-color: #e9e9e9 /*{a-bar-background-color}*/;
    border-color: #dddddd /*{a-bar-border}*/;
    color: #333333 /*{a-bar-color}*/;
    text-shadow: 0;
    font-weight: normal;
}
.ui-bar-a {
    border-width: 0px;
    border-style: solid;
}
/* Page and overlay */
.ui-overlay-a,
.ui-page-theme-a,
.ui-page-theme-a .ui-panel-wrapper {
    background-color: #f9f9f9 /*{a-page-background-color}*/;
    border-color: #bbbbbb /*{a-page-border}*/;
    color: #333333 /*{a-page-color}*/;
    text-shadow: 0;
    /*	text-shadow: 0 1px 0 #f3f3f3;
    */
}

.ui-body-a,
.ui-page-theme-a .ui-body-inherit,
html .ui-bar-a .ui-body-inherit,
html .ui-body-a .ui-body-inherit,
html body .ui-group-theme-a .ui-body-inherit,
html .ui-panel-page-container-a {
    background-color: #ffffff /*{a-body-background-color}*/;
    border-color: #dddddd /*{a-body-border}*/;
    color: #333333 /*{a-body-color}*/;
    text-shadow: 0;
    /*text-shadow: 0 1px 0 #f3f3f3;*/
}
.ui-body-a {
    border-width: 0px;
    border-style: solid;
}
/* Links */
.ui-page-theme-a a,
html .ui-bar-a a,
html .ui-body-a a,
html body .ui-group-theme-a a {
    color: #3388cc /*{a-link-color}*/;
    font-weight: normal;
}
.ui-page-theme-a a:visited,
html .ui-bar-a a:visited,
html .ui-body-a a:visited,
html body .ui-group-theme-a a:visited {
    color: #3388cc /*{a-link-visited}*/;
}
.ui-page-theme-a a:hover,
html .ui-bar-a a:hover,
html .ui-body-a a:hover,
html body .ui-group-theme-a a:hover {
    color: #005599 /*{a-link-hover}*/;
}
.ui-page-theme-a a:active,
html .ui-bar-a a:active,
html .ui-body-a a:active,
html body .ui-group-theme-a a:active {
    color: #005599 /*{a-link-active}*/;
}
/* Button up */
.ui-page-theme-a .ui-btn,
html .ui-bar-a .ui-btn,
html .ui-body-a .ui-btn,
html body .ui-group-theme-a .ui-btn,
html head + body .ui-btn.ui-btn-a,
/* Button visited */
.ui-page-theme-a .ui-btn:visited,
html .ui-bar-a .ui-btn:visited,
html .ui-body-a .ui-btn:visited,
html body .ui-group-theme-a .ui-btn:visited,
html head + body .ui-btn.ui-btn-a:visited {
    background-color: #f6f6f6;
    border-color: #dddddd;
}
/* Button hover */
.ui-page-theme-a .ui-btn:hover,
html .ui-bar-a .ui-btn:hover,
html .ui-body-a .ui-btn:hover,
html body .ui-group-theme-a .ui-btn:hover,
html head + body .ui-btn.ui-btn-a:hover {
    background-color: #ededed;
    background-image: -webkit-linear-gradient(top, rgba(0,0,0,.1), rgba(0,0,0,0));
    background-image:    -moz-linear-gradient(top, rgba(0,0,0,.1), rgba(0,0,0,0));
    background-image:     -ms-linear-gradient(top, rgba(0,0,0,.1), rgba(0,0,0,0));
    background-image:      -o-linear-gradient(top, rgba(0,0,0,.1), rgba(0,0,0,0));
    background-image:         linear-gradient(top, rgba(0,0,0,.1), rgba(0,0,0,0));
    border-color: #dddddd /*{a-bhover-border}*/;
    color: #333333 /*{a-bhover-color}*/;
    text-shadow: 0;
    /*text-shadow: 0 1px 0 #f3f3f3;
    */
}
/* Button down */
.ui-page-theme-a .ui-btn:active,
html .ui-bar-a .ui-btn:active,
html .ui-body-a .ui-btn:active,
html body .ui-group-theme-a .ui-btn:active,
html head + body .ui-btn.ui-btn-a:active {
    background-color: #e8e8e8 /*{a-bdown-background-color}*/;
    border-color: #dddddd /*{a-bdown-border}*/;
    color: #333333;
    text-decoration: none;
    text-shadow: 0;
}
/* Active button */
.ui-page-theme-a .ui-btn.ui-btn-active,
html .ui-bar-a .ui-btn.ui-btn-active,
html .ui-body-a .ui-btn.ui-btn-active,
html body .ui-group-theme-a .ui-btn.ui-btn-active,
html head + body .ui-btn.ui-btn-a.ui-btn-active,
/* Active checkbox icon */
.ui-page-theme-a .ui-checkbox-on:after,
html .ui-bar-a .ui-checkbox-on:after,
html .ui-body-a .ui-checkbox-on:after,
html body .ui-group-theme-a .ui-checkbox-on:after,
.ui-btn.ui-checkbox-on.ui-btn-a:after,
/* Active flipswitch background */
.ui-page-theme-a .ui-flipswitch-active,
html .ui-bar-a .ui-flipswitch-active,
html .ui-body-a .ui-flipswitch-active,
html body .ui-group-theme-a .ui-flipswitch-active,
html body .ui-flipswitch.ui-bar-a.ui-flipswitch-active,
/* Active slider track */
.ui-page-theme-a .ui-slider-track .ui-btn-active,
html .ui-bar-a .ui-slider-track .ui-btn-active,
html .ui-body-a .ui-slider-track .ui-btn-active,
html body .ui-group-theme-a .ui-slider-track .ui-btn-active,
html body div.ui-slider-track.ui-body-a .ui-btn-active {
    background-color: #d8e698;
    color: #333333;
    text-decoration: none;
    text-shadow: 1px 1px 0px rgba(255,255,255,.8);
    border-color: #d8e698;/*#dddddd;*/
}

/* Active radio button icon */
.ui-page-theme-a .ui-radio-on:after,
html .ui-bar-a .ui-radio-on:after,
html .ui-body-a .ui-radio-on:after,
html body .ui-group-theme-a .ui-radio-on:after,
.ui-btn.ui-radio-on.ui-btn-a:after {
    background-color: #d8e698;
}
/* Focus */
.ui-page-theme-a .ui-btn:focus,
html .ui-bar-a .ui-btn:focus,
html .ui-body-a .ui-btn:focus,
html body .ui-group-theme-a .ui-btn:focus,
html head + body .ui-btn.ui-btn-a:focus,
/* Focus buttons and text inputs with div wrap */
.ui-page-theme-a .ui-focus,
html .ui-bar-a .ui-focus,
html .ui-body-a .ui-focus,
html body .ui-group-theme-a .ui-focus,
html head + body .ui-btn-a.ui-focus,
html head + body .ui-body-a.ui-focus {
    -webkit-box-shadow: 0 0 0px #d8e698;
    -moz-box-shadow: 0 0 0px #d8e698;
    box-shadow: 0 0 0px #d8e698;
}

.ui-select > .ui-btn {
    background: #f6f6f6 !important;
    padding: 8px !important;
}

#onsenDialog,
#spaDialog,
#michiekiDialog,
#yadoDialog,
#roomDialog,
#gourmetDialog {
    display: none;
    width: 300px;
    border: 2px solid rgba(0,63,136,1);
    border-radius: 5px;
    margin: 0px;
    padding: 4px;
    font-size: 0.875rem;
    background-color: #ebe8de;
}

.popup_head {
    font-size: 1.0rem;
    font-weight: normal;
    text-align: center;
}

.ui-header .ui-title {
    margin-left: 0%;
    margin-right: 0%;
}

.ui-controlgroup-controls {
    width: 100% !important;
}

.areaGroup .ui-select,
.areaGroup .ui-checkbox,
.useGroup .ui-select,
.genreGroup .ui-select,
.genreGroup .ui-checkbox {
    width: 100% !important;
}

#meizan .ui-select {
    width: 100% !important;
}

.onsenGroup .ui-checkbox {
    width: 33.33%;
}

.ui-checkbox label {
    text-align: center;
    white-space: nowrap;
    padding: 8px 0px;
}

.onsenGroup .ui-checkbox label {
    padding: 6px 0px;
}

#onsenGroup1,
#onsenGroup3 {
    margin: 0px;
    padding: 0px;
}

#onsenGroup2,
#onsenGroup4,
#onsenGroup5 {
    margin: -8px 0px 4px 0px;
    padding: 0px;
}

.ekiGroupA .ui-checkbox {
    width: 50%;
}

.ekiGroupA .ui-checkbox label {
    text-align: center;
    white-space: nowrap;
}

.ekiGroupC .ui-checkbox {
    width: 25%;
}

.ekiGroupC .ui-checkbox label {
    text-align: center;
    white-space: nowrap;
}

.ekiGroupA, .ekiGroupC {
    margin: -8px 0px 4px 0px;
    padding: 0px;
}

#ekiGroup1 {
    margin: -4px 0px 4px 0px;
    padding: 0px;
}

.yadoGroupA .ui-checkbox {
    width: 50%;
}
.yadoGroupB .ui-checkbox {
    width: 33.3%;
}
.yadoGroupC .ui-checkbox {
    width: 25%;
}
.yadoGroupD .ui-checkbox {
    width: 20%;
}

.yadoGroupA .ui-checkbox label,
.yadoGroupB .ui-checkbox label,
.yadoGroupC .ui-checkbox label,
.yadoGroupD .ui-checkbox label {
    text-align: center;
    white-space: nowrap;
}


#yadoGroup1 {
    margin: -4px 0px 4px 0px;
    padding: 0px;
}

#yadoGroup2 {
    margin: -8px 0px 4px 0px;
    padding: 0px;
}

#yadoGroup3 {
    margin: -4px 0px 4px 0px;
    padding: 0px;
}

#yadoGroup4 {
    margin: -8px 0px 4px 0px;
    padding: 0px;
}
/*
#yadoGroup1 {
    margin: -4px 0px 4px 0px;
    padding: 0px;
}

#yadoGroup2 {
    margin: -4px 0px 4px 0px;
    padding: 0px;
}

#yadoGroup3 {
    margin: -8px 0px 4px 0px;
    padding: 0px;
}
*/

.gourmetGroupB .ui-checkbox {
    width: 33.3%;
}
.gourmetGroupD .ui-checkbox {
    width: 20%;
}
.gourmetGroupB .ui-checkbox label,
.gourmetGroupD .ui-checkbox label {
    text-align: center;
    white-space: nowrap;
}

#genreGroup2 {
    margin: -8px 0px 4px 0px;
    padding: 0px;
}

#gourmetGroup {
    margin: -4px 0px 4px 0px;
    padding: 0px;
}

#gourmetGroup2 {
    margin: -8px 0px 4px 0px;
    padding: 0px;
}

.minp {
    padding-left: 0px;
    padding-right: 0px;
}

#children {
    width: 32%;
    padding: 8px 0px;
}

#child_option {
    border: 2px solid #00b900;
    border-radius: 5px;
}

#child_option * {
    font-size: 0.75rem;
}

/* 小さいフォント */
span.st {
    font-size: 0.875rem;
}

.ui-checkbox label.ui-btn {
    text-align: center;
}

.measure-tooltip {
    background-color: white;
    border-width: 2px;
    border-color: #003f88;
    padding: 2px 4px;
    font-size: 0.875rem;
}

.leaflet-popup-tip-container {
    display: none;
}

/* マーカーラベル用 */
.leaflet-tooltip.gtime {
    height: 20px;
    width: 42px;
    background-color: #003f88;
    border-width: 0px;
    border-radius: 5px;
    border: none;
    box-shadow: none;
    padding: 0px 2px;
    color: #fff;
    vertical-align: middle;
    text-shadow: 0px 1px 1 rgba(0,0,0,.3);
    font-size: 0.75rem;
    opacity: 1;
    z-index: 100;
}

.leaflet-tooltip.gname {
    background-color: #003f88;
    border: none;
    box-shadow: none;
    color: #fff;
    line-height: 18px;
    font-size: 0.75rem;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
    text-align: center;
    margin: 0px;
    padding: 0px 4px;
}

/* ダイアログ */
.roomGroup .ui-checkbox,
.roomGroup .ui-select
{
    width: 99.9%;
}

.roomGroupA .ui-checkbox,
.roomGroupA .ui-select {
    width: 49.99%;
}

.roomGroupB .ui-checkbox,
.roomGroupB .ui-select {
    width: 33.3%;
}

.roomGroupC .ui-checkbox {
    width: 24.99%;
}

#roomGroup1,
#roomGroup2,
#roomGroup4,
#roomGroup5 {
    margin: -4px 0px 4px 0px;
    padding: 0px;
}

#roomGroup3,
#roomGroup6 {
    margin: -8px 0px 4px 0px;
    padding: 0px;
}

.checkin_box {
    display: flex;
    flex-wrap: nowrap;
}

#checkin {
    display: inline-block;
    width: 230px;
}

#days {
    font-size: 1.0rem;
    width: 60px;
    height: 24px;
}

#child_option {
    display: none;
}

legend {
    font-size: 0.875rem;
}

legend.lt {
    margin: 2px 4px -2px;
    padding: 0px;
}

legend.lp {
    margin: 6px 4px -4px;
    padding: 0px;
}

legend.lg {
    margin: 2px 4px -4px;
    padding: 0px;
}

input#priceMin,
input#priceMax,
input#elevMin,
input#elevMax,
input#parkingMin,
input#parkingMax,
input#ratingMin,
input#ratingMax,
input#registMin,
input#registMax {
    width: 54px;
}

input#budgetMin,
input#budgetMax {
    padding: 4px 0px;
    width: 62px;
}

input#chMin,
input#chMax {
    width: 68px;
}

input#chargeMin,
input#chargeMax,
input#timeMin,
input#timeMax,
input#priceMin,
input#priceMax {
    display: none;
}

#elevSlider .ui-rangeslider-sliders,
#parkingSlider .ui-rangeslider-sliders,
#budgetSlider .ui-rangeslider-sliders,
#ratingSlider .ui-rangeslider-sliders,
#registSlider .ui-rangeslider-sliders {
    margin: 0 80px !important;
}

#chSlider .ui-rangeslider-sliders {
    margin: 0 94px !important;
}

#chargeSlider .ui-rangeslider-sliders ,
#timeSlider .ui-rangeslider-sliders,
#priceSlider .ui-rangeslider-sliders {
    margin: 0 14px !important;
}

.ok_cancel {
    margin: -11px 0px -8px 0px;
    padding: 0px;
}

.spa_time,
.spa_price,
.donation {
    margin-left: 8px;
    font-weight: bold;
    color: #0000cc;
}

/* 印刷ダイアログ */
#printDialog {
    display: none;
    width: 260px;
    border: 2px solid rgba(0,63,136,1);
    border-radius: 8px;
    margin: 0px;
    padding: 4px;
    font-size: 0.875rem;
    background-color: #ebe8de; /*#F6E3CE;*/
}

.ui-content {padding: 0px !important;}
.ui-listview-filter {margin: 0px !important;}
.ui-content .ui-listview {margin: 0px !important;}

#searchOnsen,
#searchOnsen:hover,
#searchOnsen:focus,
#setupPrint,
#setupPrint:hover,
#setupPrint:focus,
#searchMount,
#searchMount:hover,
#searchMount:focus,
#searchStation,
#searchStation:hover,
#searchStation:focus,
#searchEki,
#searchEki:hover,
#searchEki:focus,
#searchYado,
#searchYado:hover,
#searchYado:focus,
#searchRoom,
#searchRoom:hover,
#searchRoom:focus,
#searchGourmet,
#searchGourmet:hover,
#searchGourmet:focus,
#searchSpa,
#searchSpa:hover,
#searchSpa:focus,
#searchFurusato,
#searchFurusato:hover,
#searchFurusato:focus {
    background-color: #5CB811;
    border: 0px;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    text-shadow: 1px 1px 0 rgba(0,0,0,.5);
}

#childClose {
    background-color: #5CB811;
    margin: 0px 80px 4px;
    border: 0px;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    text-shadow: 1px 1px 0 rgba(0,0,0,.5);
}

#onsenClose,
#onsenClose:hover,
#onsenClose:focus,
#onsenClear,
#onsenClear:hover,
#onsenClear:focus,
#setupClose,
#setupClose:hover,
#setupClose:focus,
#mountClose,
#mountClose:hover,
#mountClose:focus,
#spaClose,
#spaClose:hover,
#spaClose:focus,
#spaClear,
#spaClear:hover,
#spaClear:focus,
#stationClose,
#stationClose:hover,
#stationClose:focus,
#ekiClose,
#ekiClose:hover,
#ekiClose:focus,
#ekiClear,
#ekiClear:hover,
#ekiClear:focus,
#yadoClose,
#yadoClose:hover,
#yadoClose:focus,
#yadoClear,
#yadoClear:hover,
#yadoClear:focus,
#roomClose,
#roomClose:hover,
#roomClose:focus,
#roomClear,
#roomClear:hover,
#roomClear:focus,
#gourmetClose,
#gourmetClose:hover,
#gourmetClose:focus,
#gourmetClear,
#gourmetClear:hover,
#gourmetClear:focus,
#furusatoClose,
#furusatoClose:hover,
#furusatoClose:focus,
#furusatoClear,
#furusatoClear:hover,
#furusatoClear:focus {
    background-color: #A4A4A4;
    border: 0px;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    text-shadow: 1px 1px 0 rgba(0,0,0,.5);
}

.paperSize .ui-radio label,
.orientation .ui-radio label {
    text-align: center;
    white-space: nowrap;
}

#paperSize .ui-radio {
    width: 24.99%;
}

#orientation .ui-radio {
    width: 49.99%;
}

/* 山検索ダイアログ */
#mountDialog {
    display: none;
    width: 300px;
    border: 2px solid rgba(0,63,136,1);
    border-radius: 8px;
    margin: 0px;
    padding: 4px;
    font-size: 0.875rem;
    background-color: #ebe8de; /*#F6E3CE;*/
}

/* バス停・駅検索ダイアログ */
#stationDialog {
    display: none;
    width: 300px;
    border: 2px solid rgba(0,63,136,1);
    border-radius: 8px;
    margin: 0px;
    padding: 4px;
    font-size: 0.875rem;
    background-color: #ebe8de;
}

.typeGroup .ui-checkbox label,
.spaGroup .ui-checkbox label {
    text-align: center;
    white-space: nowrap;
}

#spaGroup .ui-checkbox {
    width: 49.99%;
}

#typeGroup .ui-checkbox {
    width: 33.3%;
}

.tsub {
    font-size: 0.875rem;
    line-height: 1.0rem;
}

/* ふるさと納税検索ダイアログ */
#furusatoDialog {
    display: none;
    width: 300px;
    border: 2px solid #003f88;
    border-radius: 8px;
    margin: 0px;
    padding: 4px;
    font-size: 0.875rem;
    background-color: #fff6e4;;
}

#reviewGroup .ui-checkbox,
#reviewGroup .ui-select {
    width: 49.99%;
}

.leaflet-fade-anim .leaflet-popup {
    transition: none;
}

.custom_tooltip .leaflet-popup-content-wrapper {
    border: none;
    border: 1px solid #003f88;
    border-radius: 2px;
    padding: 2px 4px 1px;
    margin: 0px;
    box-shadow: none;
    font-size: 0.8125rem;
    color: #444;
    background-color: #ffffff;
    text-align: center;
}

.custom_tooltip .leaflet-popup-tip-container,
.custom_tooltip .leaflet-popup-content {
    padding: 0px;
    margin: 0px;
}

.custom_tooltip .leaflet-popup-tip-container,
.custom_tooltip .leaflet-popup-tip {
    padding: 0px;
    display: none;
    background: transparent;
    border: none;
    box-shadow: none;
}

.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
    position: absolute;
    pointer-events: none;
    border: none;
    background: transparent;
    box-shadow: none;
    content: "";
}

.select_box .leaflet-popup-content-wrapper {
    border: none;
    background: transparent;
    margin: 0px;
    padding: 0px;
    box-shadow: none;
}

.select_box .leaflet-popup-tip-container,
.select_box .leaflet-popup-content {
    padding: 10px 0px 0px 0px;
    margin: 0px;
}

a.leaflet-popup-close-button {
    color: #003f88 !important;
}

a.bottom-popup-close-button {
    position: absolute;
    top: -5px;
    right: -2px;
    border: none;
    text-align: center;
    width: 32px;
    height: 32px;
    background: transparent;
}

a.bottom-popup-close-button-small {
    position: absolute;
    top: -5px;
    right: -1px;
    border: none;
    text-align: center;
    width: 32px;
    height: 32px;
    background: transparent;
}

.select_box .leaflet-popup-tip-container,
.select_box .leaflet-popup-tip {
    padding: 0px;
    display: none;
    background: transparent;
    border: none;
    box-shadow: none;
}

/* ふるさと納税検索ダイアログ */
#furusatoDialog {
    display: none;
    width: 300px;
    border: 2px solid #003f88;
    border-radius: 8px;
    margin: 0px;
    padding: 4px;
    font-size: 0.875rem;
    background-color: #fff6e4;;
}

.furuAreaGroup .ui-select {
    width: 69.9% !important;
}

.furuAreaGroup .ui-checkbox {
    width: 30% !important;
}

.populationGroup .ui-select {
    width: 66.6%;
}

.populationGroup .ui-checkbox {
    width: 33.3%;
}

.ratingReview * {
    font-size: 0.875rem !important;
}

.reviewGroup .ui-select {
    width: 49.9%;
}

.orderGroup .ui-checkbox {
    width: 33.3%;
}

.tsub {
    font-size: 0.875rem;
    line-height: 1.0rem;
}

.useGroup {
    margin: -8px 0px 4px 0px;
    padding: 0px;
}

#donationSlider .ui-rangeslider-sliders {
    margin: 0 14px !important;
}

input#donationMin,
input#donationMax {
    display: none;
}

#furusatoOption {
    display: none;
}

/*
.donation {
    margin-left: 10px;
    font-size: 1.0rem;
    font-weight: bold;
}
*/

/* bootstrap select */
.form-control {
    display: block;
    width: 100%;
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 0.25rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #333;
    background-color: #fff;
    background-clip: padding-box;
    border: 0px;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-control::-ms-expand {
    background-color: transparent;
    border: 0;
}

.form-control:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #495057;
}

.form-control::-webkit-input-placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control::-moz-placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control::placeholder {
    color: #6c757d;
    opacity: 1;
}

@media only screen and (max-width: 720px) {

    .item_box {
        min-height: 48px;
    }
}

/* 印刷時 */
@media print {

    .main_menu, .map_menu, .outmap_menu, .disp_menu, .trans_menu, .action_menu, .onsen_menu, .spa_menu, .quality_menu, .open_close, .furusato_menu, .genre_menu, .zoom, .logo {
        display: none;
    }
}
