@charset "UTF-8";
/* ------------------------------------------------------------------
Source File: common.css
CSS file usage: MapFanスマートフォンサイト共通で使用するCSSを記述しています
Time Stamp: 2012/12/03
---------------------------------------------------------------------*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, option, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin:0;
    padding:0;
    outline:0;
    border:0;
    font-size:100%;
    vertical-align:baseline;
    -webkit-text-size-adjust:none;
    font-weight:normal;
}
input, button {
    margin:0;
    padding:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    -webkit-text-size-adjust:none;
    font-weight:normal;
}
input[type="submit"] {
    cursor: pointer;
}
article, aside, dialog, figure, footer, header, hgroup, nav, section {
    display:block
}
ul, ol {
    list-style-type:none
}
body {
    font-family:"メイリオ", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro","Helvetica Neue", sans-serif;
    font-size:14px;/*default size:14px*/
    line-height:1.28;
    color:#333;
    background:#bbb;
}
strong{
    text-shadow:1px 0 1px black;
}
em, dfn {
    font-style:normal
}
em {
    font-weight:700
}
blockquote, q {
    quotes:none
}
blockquote:before, blockquote:after, q:before, q:after {
    content:"";
    content:none
}
a {
    margin:0;
    padding:0;
    vertical-align:baseline;
    background:transparent;
    text-decoration:none;
    color:#333;
}
img {
    vertical-align:bottom
}
img.re_img {
    max-width:320px;
}
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none
}
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:700
}
.underline {
    text-decoration:underline !important;
}
del {
    text-decoration:line-through
}
table {
    border-collapse:collapse;
    border-spacing:0;
    width:100%
}
hr {
    margin:1em 0;
    padding:0;
    border:0;
    border-top:1px solid #ccc;
    display:block;
    height:1px;
}
input, select, button {
    vertical-align:middle
}
select, select option {
    height:2.6em;
    font-size:14px
}
label {
    font-weight:normal
}
ruby {
    display: inline;
    position: relative;
    top: 0;
    bottom: 0;
    padding: 0;
    line-height: 1em;
}
rt {
    position: absolute;
    top: -1em;
    left: 0;
    font-size: 50%;
    line-height: 1em;
    white-space: nowrap;
    text-indent: 0;
}

/*float*/
.fl {
    float:left
}
.fr {
    float:right
}
.fn {
    float:none
}
/*text-align*/
.al {
    text-align:left
}
.ar {
    text-align:right
}
.ac {
    text-align:center !important;
    margin-right:auto;
    margin-left:auto
}
/*position*/
/*ポジション左又は右に配置するコンテンツの親要素につけます*/
.pos {
    position:relative
}
/*posのついた要素の子要素につけることで、親の幅に対して相対的に右に配置されます*/
.pos_r {
    position:absolute;
    right:0;
    top:0
}
/*posのついた要素の子要素につけることで、親の幅に対して相対的に左に配置されます*/
.pos_l {
    position:absolute;
    left:0;
    top:0
}
/*clearfix*/
/*floatされる要素の親要素につけ、flaotを解除します*/
.cfx:after {
    content:" ";
    display:block;
    height:0;
    clear:both;
    visibility:hidden
}
/*text*/
/*デフォルトのテキスト*/
.text {
    display:block;
    line-height:1.3;
    font-size:14px;/*14px*/
}
/*テキスト11px*/
.xs_text {
    font-size:11px;/*11px*/
}
/*テキスト12px*/
.s_text {
    font-size:12px;/*12px*/
}
/*テキスト18px*/
.maintext {
    font-size:18px;/*18px*/
}
/*テキスト16px*/
.emtext {
    font-size:16px;/*16px*/
}
/*テキスト20px*/
.l_text {
    font-size:20px;/*20px*/
}
.text_lw1 {
    width:100%;
}
/*概要テキスト*/
.abstext {
    padding-left:0.5em;
    line-height:1.3;
    color:#666;
    font-weight:400;
    font-size:14px;
}
/*補足テキスト（小テキスト＆グレー）*/
.subtext {
    padding-left:10px;
    line-height:1.3;
    font-size:11px;/*11px*/
    color:#666;
}

/* ---------------------------------------------------------------------------------------
    色パターン
--------------------------------------------------------------------------------------- */
.notice, .notice a, .link.notice, .link.notice a, .point {/*赤文字注意書き*/
    color:#c5092f;
}
.notice2, .notice2 a, .link.notice2, .link.notice2 a {/*青文字注意書き*/
    color:#193590;
}
.info, .info a, .link.info, .link.info a {/*水色文字*/
    color:#51b6d4;
}
.success, .success a, .link.success, .link.success a {/*緑色文字*/
    color:#5ab45a;
}
.warning, .warning a, .link.warning, .link.warning a {/*黄色文字*/
    color:#fbb047;
}
/* -------------------------------------------------------------------------------------- */





.caption0 {/*小テキスト＆デフォルト色 */
    font-size:12px;
}
.caption {/*小テキスト＆グレー（パディング設定なし）*/
    font-size:12px;
    color:#666;
}
.com_ast {/*注釈＆上揃え*/
    vertical-align:top;
    font-size:10px;
}
.idt_m1 {/*注釈テキスト（頭一文字分インデント）*/
    padding-left:1em;
    text-indent:-1em;
}

/*リンクテキスト*/
.linktext0 {
}
.linktext0>p {
    background-image:url(/img/common/icon_arrow_s.png);
    background-repeat:no-repeat;
    background-position:0 50%;
    -moz-background-size:12px 12px;
    -webkit-background-size:12px 12px;
    background-size:12px 12px;
}
.linktext0.vt>p {
    background-position:0 2px;
}
.linktext0 .label {
    display:block;
    padding:0 0 0 20px;
    font-size:14px;
    text-align:left;
}
.linktext0 a {
    color:#193590;
}
.linktext1 {
    border-bottom:1px solid #cacaca;
    background:-webkit-gradient(linear, left top, left bottom, from(#ababab), color-stop(0.1, #f5f5f5), to(#f5f5f5));
    background:-moz-linear-gradient(center top, #ababab, #f5f5f5 5%, #f5f5f5);
    padding:12px 8px;
}
.linktext1>p {
    background-image:url(/img/common/icon_arrow_s.png);
    background-repeat:no-repeat;
    background-position:0 50%;
    -moz-background-size:12px 12px;
    -webkit-background-size:12px 12px;
    background-size:12px 12px;
}
.linktext1 .label {
    display:block;
    padding:0 0 0 20px;
    font-size:14px;
    text-align:left;
}
.linktext2 {
    padding:5px 7px 5px 5px;
    border:1px solid #aaa;
    -moz-border-radius:2px;
    -webkit-border-radius:2px;
    border-radius:2px;
}
.linktext2>p {
    background:url(/img/common/icon_arrow_m.png) no-repeat 100% 50%;
    -moz-background-size:9px 13px;
    -webkit-background-size:9px 13px;
    background-size:9px 13px;
}
.linktext2 .label {
    display:block;
    padding:0 0 0 5px;
    font-size:14px;
    text-align:left;
}


/*-------- よく使うデザイン --------*/
/*スキン共通*/
.skin {
}

/*スキン共通 高さがあるもの*/
.skin_h {
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius:3px;
}

/*白グラデスキン*/
.skin_a {
    background: #fff;
    background:-webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.1, #fff), to(#dbdbdb));
    background:-moz-linear-gradient(center top, #fff, #fff 10%, #dbdbdb);
    border-color:#aaa !important;
    color:#333;
}
.skin_a a {
    color:#333;
    text-shadow:0 1px 0 #fff !important;
}
/*黒グラデスキン*/
.skin_b {
    background: #454545;
    background: -webkit-gradient(linear, left top, left bottom, from(#454545), color-stop(0.5, #454545), color-stop(0.51, #111), to(#666) );
    background: -moz-linear-gradient(center top, #454545, #454545 50%, #111 51%, #666);
    border-color:#333 !important;
    color: #fff;
}
.skin_b a {
    color: #fff;
    text-shadow:0 1px 0 #fff !important;
}
/*グレーグラデスキン*/
.skin_c {
    background: #96999d;
    background: -webkit-gradient(linear, left top, left bottom, from(#96999d), color-stop(0.5, #96999d), color-stop(0.51, #7e8387), to(#d0d2d3) );
    background: -moz-linear-gradient(center top, #96999d, #96999d 50%, #7e8387 51%, #d0d2d3);
    border-color:#727272 !important;
    color: #fff;
}
.skin_c a {
    color: #fff;
    text-shadow:0 1px 0 #696d6e !important;
}
/*赤グラデスキン*/
.skin_d {
    background: #d60a33;
    background: -webkit-gradient(linear, left top, left bottom, from(#d60a33), color-stop(0.5, #d60a33), color-stop(0.51, #ab092a), to(#d5153c) );
    background: -moz-linear-gradient(center top, #d60a33, #d60a33 50%, #ab092a 51%, #d5153c);
    border-color:#c5092f !important;
    color: #fff;
}
.skin_d a {
    color: #fff;
    text-shadow:0 1px 0 #ab0829 !important;
}

.hidden {/*非表示要素*/
    display:none !important;
}

/*ブロックレイアウト*/
.con_w_btn1_r.parent {/* ボタン右付きボックス(親) */
    margin-right:40px;
}
.con_w_btn1_r.parent .child:not(.button) {/* ボタン付きボックス(子)ボタン以外 */
}
.con_w_btn1_r.parent .child.button {/* ボタン付きボックス(子)ボタン以外 */
    right:-40px;
}


/*-------- タイトル一覧 --------*/
.title {/*タイトルの共通指定*/
    line-height:1.3;
    font-size:18px;
    background:#fff;
}
.title .subtext {/*タイトル内の子要素（サブテキスト）共通指定*/
    font-size:14px;
}
.title .subtext2 {/*タイトル内の子要素（サブテキスト）共通指定2*/
    font-size:11px;
    padding-left: 10px;
    line-height: 1.3;
    color: #666;
}
.title .label {
    display:block;
    padding:0;
    -webkit-border-radius:0;
    -moz-border-radius:0;
    border-radius:0;
    text-shadow:0 -1px 0 #fff;
    text-align:left;
    font-size:100%;
    white-space: nowrap;
    overflow: hidden;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}

.title .label2 {
    display:block;
    padding:0;
    -webkit-border-radius:0;
    -moz-border-radius:0;
    border-radius:0;
    text-shadow:0 -1px 0 #fff;
    text-align:left;
    font-size:100%;
}
.main_txt1 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
}
.main_txt1 {
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
}
.main_title .main_txt2 {
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    background-color: #000;
    text-align: center;
    line-height: 1.3;
    max-width: 320px;
    padding: 5px;
    margin: 15px auto 10px;
    box-sizing: border-box;
}

/*title0*/
.ttl_0 {
    background:#c5092f;
    padding:6px 10px 6px;
    color:#fff;
    font-size:100%;
}
.ttl_0 .subtext {
    color:#FBCED3;
}
/*title_a*/
.ttl_a {
    border-left:4px solid #c5092f;
}
.ttl_a .label {
    border-top:1px solid #aaa;
    border-bottom:1px solid #aaa;
    background:-webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.05, #fff), color-stop(0.05, #f0f0f0), to(#fff));
    background:-moz-linear-gradient(center top, #fff, #fff 5%, #f0f0f0 5%, #fff);
    padding:7px 10px 5px 13px;
}
.ttl_free {/*結果などテキストが動的に変わる場合のタイトル指定*/
    font-size:16px;
}
/*title_b*/
.ttl_b {
    padding:6px 10px 6px 0;
    background:#fff;
}
.ttl_b .label {
    display:block;
    background:url(/img/common/icon_subt.png) no-repeat 0 2px;
    -moz-background-size:3px 12px;
    -webkit-background-size:3px 12px;
    background-size:3px 12px;
    padding-left:6px;
    font-size:12px;
    font-weight:normal;
}
/*title_c1*/
.ttl_c1 {/*左アイコンつき、テキスト1行配置*/
    padding:0 0 8px 0;
    background:#fff;
}
.ttl_c1 .label {
    display:block;
    height: 54px;
    border-top:0;
    padding-left: 0px;
    margin-left: 53px;
    margin-bottom: -6px;
    font-size:21px;
    line-height:54px;
    font-weight:normal;
    text-shadow:0 1px 0 #fff;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    text-overflow: initial;
}

.ttl_c1 .label::-webkit-scrollbar {
    display: none;
}

/*subtitle_a*/
.subt_a {
    border-left:4px solid #c5092f;
}
.subt_a .label {
    border-top:1px solid #aaa;
    border-bottom:1px solid #aaa;
    background:-webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.05, #fff), color-stop(0.05, #f0f0f0), to(#fff));
    background:-moz-linear-gradient(center top, #fff, #fff 5%, #f0f0f0 5%, #fff);
    padding:3px 10px 4px 13px;
    font-size:16px;
}
/*subtitle_b*/
.subt_b {
    background:#7e8387;
}
.subt_b .label {
    border-top:0;
    padding:3px 15px;
    text-shadow:0 0 0 rgba(0,0,0,0);
    font-size:16px;
    color:#fff;
}

.subt_b .label2 {
    border-top:0;
    padding:3px 15px;
    text-shadow:0 0 0 rgba(0,0,0,0);
    font-size:16px;
    color:#fff;
}

.subt_b .subtext {
    color:#fff;
}
/*subtitle_c*/
.subt_c {
    background:#c5092f;
}
.subt_c .label {
    border-top:0;
    padding:3px 15px;
    text-shadow:0 0 0 rgba(0,0,0,0);
    font-size:16px;
    color:#fff;
}
.subt_c .subtext {
    color:#fff;
}
/*subtitle_d*/
.subt_d {
    padding:5px 0px 5px 0px;
    background:url(/img/common/icon_subt.png) no-repeat 0 2px;
    -moz-background-size:3px 14px;
    -webkit-background-size:3px 14px;
    background-size:3px 14px;
    background-position:left center;
}
.subt_d .label {
    border-top:0;
    padding:0px 7px 0px 10px;
    text-shadow:1px 1px 1px #ccc;
}
.step_short{
    display: inline-block;
    margin-top: 35px;
    padding-left: 15px;
}
.step_short li{
    text-align: left;
    margin-top: 5px;
}
.step_short li span:first-of-type{
    font-size: 14px;
    font-weight:bold;
    color: #696969;
    background-color: #fffff;
    width: 100px;
    height: 35:
    display: inline-block;
    vertical-align: center;
    text-align: center;
    padding: 0px 10px;
    border: solid 2px #808080;
    border-radius: 0.3em
}
.step_short li span:last-of-type{
    font-size: 14px;
    font-weight:bold;
    color: #696969;
    background-color: #fffff;
    width: 100px;
    height: 35:
    display: inline-block;
    vertical-align: center;
    text-align: left;
    padding: 0px 10px;
}
/*icon要素*/
.icon {/*imgタグのアイコンにつくクラス*/
    vertical-align:text-bottom
}
.icon0 {/*アイコンサイズ指定0(なし テキスト横に表示)*/
    width:auto;
    height:auto;
}
.icon1 {/*アイコンサイズ指定1(22px×22px)*/
    display:inline-block;
    width:22px;
    height:22px;
    background-repeat:no-repeat;
}
.icon1 a{/*アイコンが押せる場合*/
    display:block;
    height:22px;
}
.icon2 {/*アイコンサイズ指定2(32px×32px)*/
    display:inline-block;
    width:32px;
    height:32px;
    background-repeat:no-repeat;
}
.icon2 a{/*アイコンが押せる場合*/
    display:block;
    height:32px;
}
.icon3 {/*アイコンサイズ指定3(28px×28px)*/
    display:inline-block;
    width:28px;
    height:28px;
    background-repeat:no-repeat;
}
.icon3 a{/*アイコンが押せる場合*/
    display:block;
    height:28px;
}
.icon4 {/*アイコンサイズ指定4(48px×48px)*/
    display:inline-block;
    width:48px;
    height:48px;
    background-repeat:no-repeat;
}
.icon4 a{/*アイコンが押せる場合*/
    display:block;
    height:48px;
}
.icon5 {/*アイコンサイズ指定5(70px×70px)*/
    display:inline-block;
    width:70px;
    height:70px;
    background-repeat:no-repeat;
}


/*attentionアイコン*/
.icon_att {
    padding-left:24px;
    line-height:1.3;
    min-height:21px;
    background-image:url(/img/common/icon_info_caution.png);
    -moz-background-size:15px 15px;
    -webkit-background-size:15px 15px;
    background-size:15px 15px;
    background-position: 0 2px;
    background-repeat: no-repeat;
}
/*warningアイコン*/
.icon_warning {
    padding-left: 31px;
    line-height:1.3;
    background-image:url(/img/common/sp_icon_warning.png);
    -moz-background-size:22px 19px;
    -webkit-background-size:22px 19px;
    background-size: 22px 19px;
    background-position: 0 50%;
    background-repeat: no-repeat;
}

/* sp_icon_point.png スプライト */
.icon_via1,
.icon_via2,
.icon_via3,
.icon_via4,
.icon_via5,
.icon_via,
.icon_start,
.icon_goal,
.steplist1 > li .stepdata .icon
{
    background-image:url(/img/common/sp_icon_point.png);
    -moz-background-size:88px 1026px;
    -webkit-background-size:88px 1026px;
    background-size:88px 1026px;
    background-repeat: no-repeat;
}
    .icon_via1 {
        background-position: -64px 0;
    }
    .icon_via2 {
        background-position: -64px -82px;
    }
    .icon_via3 {
        background-position: -64px -164px;
    }
    .icon_via4 {
        background-position: -64px -246px;
    }
    .icon_via5 {
        background-position: -64px -328px;
    }
    .icon_via {
        background-position: -64px -410px;
    }
    .icon_start {
        background-position: 0 -82px;
    }
    .icon_goal {
        background-position: 0 0;
    }

/* sp_icon_function_v.png スプライト */
.icon_func,
.nonactive .label.icon_func,
.icon_clear,
.icon_link1,
.icon_del,
.icon_search,
.icon_map,
.icon_myspot,
.icon_navicon,
.icon_myhome,
.icon_mywork,
.icon_gurunavi,
.icon_checkweb,
.icon_tel,
.icon_moto,
.icon_mail,
.icon_app,
.btn_sub .label span,
.btn_add .label span,
.btn_mail .label span,
.btn_moto .label span,
.btn_twt .label span,
.btn_here .label span,
.btn_map .label,
.btn_search .label,
#head:not(.searchhead) .btn_regist .label,
.btn_regist_free_layout .label,
.btn_regist_free_view .label,
.btn_head_login .label,
.btn_head_config .label,
.btn_reload .label span,
.btn_entry .label span,
.btn_delete .label span,
#style-map  .input_con .btn_a a,
.route_con .input_con .btn_a a,
.route_con .btn_add a,
.route_con .reverse .button a:after{
    background-image:url(/img/common/sp_icon_function_v.png);
    background-repeat:no-repeat;
    -moz-background-size:104px 1387px;
    -webkit-background-size:104px 1387px;
    background-size:104px 1387px;
}
    .icon_func {
        background-color:#fff;
        background-position: 0 -144px;
    }
    .nonactive .label.icon_func {/*機能ボタン 展開時用*/
        background-position: 0 -216px;
        background-color:#fff;
    }
    .icon_clear {
        background-position: 0 -144px;
    }
    .icon_link1 {
        background-position: 0 0;
    }
    .icon_del {
        background-position: 0 -412px;
    }
    .icon_search {
        background-position: -70px 0;
    }
    .icon_map {
        background-position: 0 -542px;
    }
    .icon_myspot {
        background-position: 0 -678px;
    }
    .icon_navicon {
        background-position: 0 -1018px;
    }
    .icon_myhome {
        background-position: 0 -610px;
    }
    .icon_mywork {
        background-position: 0 -746px;
    }
    .icon_gurunavi {
        background-position: 0 -474px;
    }
    .icon_checkweb {
        background-position: 0 -882px;
    }
    .icon_tel {
        background-position: 0 -72px;
    }
    .icon_moto {
        background-position: -70px -1296px;
    }
    .icon_mail {
        background-position: 0 -950px;
    }
    .icon_app {
        background-position: 0 -1296px;
    }


/* sp_icon_function_set.png スプライト */
.icon_setgoal,
.icon_setstart,
.icon_myspot_set:before,
.icon_myhome_set:before,
.icon_mywork_set:before,
.icon_station_set:before,
.icon_bus_set:before{
    background-image:url(/img/common/sp_icon_function_set.png);
    -moz-background-size:28px 500px;
    -webkit-background-size:28px 500px;
    background-size:28px 500px;
    background-repeat: no-repeat;
}
    /* icon_setgoal,icon_setstart は例外 */
    .icon_setgoal {
        background-position: 0 0;
    }
    .icon_setstart {
        background-position: 0 -312px;
    }
    .icon_myspot_set:before,
    .icon_myhome_set:before,
    .icon_mywork_set:before,
    .icon_station_set:before,
    .icon_bus_set:before{
        content: '';
        position: absolute;
        top: 50%;
        left: 0;
        width: 28px;
        height: 28px;
        margin-top: -14px;
    }
    /*現在地*/
    .icon_myspot_set:before {
        background-position: 0 -154px;
    }
    /*自宅*/
    .icon_myhome_set:before {
        background-position: 0 -78px;
    }
    /*職場/学校*/
    .icon_mywork_set:before {
        background-position: 0px -234px;
    }
    /*最寄駅*/
    .icon_station_set:before {
        background-position: 2px -390px;
    }
    /*最寄バス停*/
    .icon_bus_set:before {
        background-position: 2px -472px;
    }

        /* linklist1 */
        .linklist1 .icon_myspot_set,
        .linklist1 .icon_myhome_set ,
        .linklist1 .icon_mywork_set ,
        .linklist1 .icon_station_set ,
        .linklist1 .icon_bus_set{
            padding-left:48px;
        }
            .linklist1 .icon_myspot_set:before,
            .linklist1 .icon_myhome_set:before,
            .linklist1 .icon_mywork_set:before,
            .linklist1 .icon_station_set:before,
            .linklist1 .icon_bus_set:before{
                left: 10px;
            }

        /* linklist-ckbx */
        .linklist-ckbx .icon_myspot_set,
        .linklist-ckbx .icon_myhome_set ,
        .linklist-ckbx .icon_mywork_set ,
        .linklist-ckbx .icon_station_set ,
        .linklist-ckbx .icon_bus_set{
            padding-left: 38px;
        }

/* ラージ ピン アイコン スプライト */
.pin_def_l,
.icon_h,
.icon_r{
    background-image: url(/img/common/sp_icon_def_l.png);
    background-repeat: no-repeat;
    -moz-background-size: 96px 556px;
    -webkit-background-size: 96px 556px;
    background-size: 96px 556px;
}
.icon_h,
.icon_r{
    font-size: 12px;
    display: inline-block;
    height: 14px;
    margin-right: 10px;
    margin-top: 8px;
    padding-left: 18px;
    line-height: 14px;
}
.icon_h{ background-position: 0 -528px;}
.icon_r{ background-position: 0 -542px;}

.pin_emp_l,
.pin_con_l,
.pin_unk_l,
.pin_full_l,
.icon_full,
.icon_emp,
.icon_con,
.icon_unk{
    background-image: url(/img/common/sp_icon_park_l.png);
    -moz-background-size: 384px 498px;
    -webkit-background-size: 384px 498px;
    background-size: 384px 498px;
    background-repeat: no-repeat;
}

.icon_full,
.icon_emp,
.icon_con,
.icon_unk{
    display: inline-block;
    margin-top: 4px;
    width: 31px;
    height: 18px;
    overflow: hidden;
    text-indent: -9999px;
}

.icon_unk{ background-position: -11px -480px;}
.icon_con{ background-position: -107px -480px;}
.icon_emp{ background-position: -203px -480px;}
.icon_full{ background-position: -299px -480px;}

/* ▼::::: 任意ピン / 検索ピン / 番号ピン :::::▼ */
.pin_def_l{
    width: 48px;
    height: 48px;
}
    /* 非アクティブ */
    .def_l_000 { background-position: 0 0; }
    .def_l_001 { background-position: 0 -48px; }
    .def_l_002 { background-position: 0 -96px; }
    .def_l_003 { background-position: 0 -144px; }
    .def_l_004 { background-position: 0 -192px; }
    .def_l_005 { background-position: 0 -240px; }
    .def_l_006 { background-position: 0 -288px; }
    .def_l_007 { background-position: 0 -336px; }
    .def_l_008 { background-position: 0 -384px; }
    .def_l_009 { background-position: 0 -432px; }
    .def_l_010 { background-position: 0 -480px; }

    /* アクティブ */
    .def_l_000.act { background-position: -48px 0; }
    .def_l_001.act { background-position: -48px -48px; }
    .def_l_002.act { background-position: -48px -96px; }
    .def_l_003.act { background-position: -48px -144px; }
    .def_l_004.act { background-position: -48px -192px; }
    .def_l_005.act { background-position: -48px -240px; }
    .def_l_006.act { background-position: -48px -288px; }
    .def_l_007.act { background-position: -48px -336px; }
    .def_l_008.act { background-position: -48px -384px; }
    .def_l_009.act { background-position: -48px -432px; }
    .def_l_010.act { background-position: -48px -480px; }


/* ▼::::: 駐車場 :::::▼ */
.pin_emp_l,
.pin_con_l,
.pin_unk_l,
.pin_full_l {
    width: 48px;
    height: 48px;
}

/* ▼::::: 駐車場 不明 :::::▼ */
    /*非アクティブ*/
    .unk_l_001 { background-position: 0 0; }
    .unk_l_002 { background-position: 0 -48px; }
    .unk_l_003 { background-position: 0 -96px; }
    .unk_l_004 { background-position: 0 -144px; }
    .unk_l_005 { background-position: 0 -192px; }
    .unk_l_006 { background-position: 0 -240px; }
    .unk_l_007 { background-position: 0 -288px; }
    .unk_l_008 { background-position: 0 -336px; }
    .unk_l_009 { background-position: 0 -384px; }
    .unk_l_010 { background-position: 0 -432px; }

    /*アクティブ*/
    .unk_l_001.act { background-position: -48px 0; }
    .unk_l_002.act { background-position: -48px -48px; }
    .unk_l_003.act { background-position: -48px -96px; }
    .unk_l_004.act { background-position: -48px -144px; }
    .unk_l_005.act { background-position: -48px -192px; }
    .unk_l_006.act { background-position: -48px -240px; }
    .unk_l_007.act { background-position: -48px -288px; }
    .unk_l_008.act { background-position: -48px -336px; }
    .unk_l_009.act { background-position: -48px -384px; }
    .unk_l_010.act { background-position: -48px -432px; }

/* ▼::::: 駐車場 混雑 :::::▼ */
    /*非アクティブ*/
    .con_l_001 { background-position: -96px 0; }
    .con_l_002 { background-position: -96px -48px; }
    .con_l_003 { background-position: -96px -96px; }
    .con_l_004 { background-position: -96px -144px; }
    .con_l_005 { background-position: -96px -192px; }
    .con_l_006 { background-position: -96px -240px; }
    .con_l_007 { background-position: -96px -288px; }
    .con_l_008 { background-position: -96px -336px; }
    .con_l_009 { background-position: -96px -384px; }
    .con_l_010 { background-position: -96px -432px; }

    /*アクティブ*/
    .con_l_001.act { background-position: -144px 0; }
    .con_l_002.act { background-position: -144px -48px; }
    .con_l_003.act { background-position: -144px -96px; }
    .con_l_004.act { background-position: -144px -144px; }
    .con_l_005.act { background-position: -144px -192px; }
    .con_l_006.act { background-position: -144px -240px; }
    .con_l_007.act { background-position: -144px -288px; }
    .con_l_008.act { background-position: -144px -336px; }
    .con_l_009.act { background-position: -144px -384px; }
    .con_l_010.act { background-position: -144px -432px; }

/* ▼::::: 駐車場 空車 :::::▼ */
    /*非アクティブ*/
    .emp_l_001 { background-position: -192px 0; }
    .emp_l_002 { background-position: -192px -48px; }
    .emp_l_003 { background-position: -192px -96px; }
    .emp_l_004 { background-position: -192px -144px; }
    .emp_l_005 { background-position: -192px -192px; }
    .emp_l_006 { background-position: -192px -240px; }
    .emp_l_007 { background-position: -192px -288px; }
    .emp_l_008 { background-position: -192px -336px; }
    .emp_l_009 { background-position: -192px -384px; }
    .emp_l_010 { background-position: -192px -432px; }

    /*アクティブ*/
    .emp_l_001.act { background-position: -240px 0; }
    .emp_l_002.act { background-position: -240px -48px; }
    .emp_l_003.act { background-position: -240px -96px; }
    .emp_l_004.act { background-position: -240px -144px; }
    .emp_l_005.act { background-position: -240px -192px; }
    .emp_l_006.act { background-position: -240px -240px; }
    .emp_l_007.act { background-position: -240px -288px; }
    .emp_l_008.act { background-position: -240px -336px; }
    .emp_l_009.act { background-position: -240px -384px; }
    .emp_l_010.act { background-position: -240px -432px; }

/*▼::::: 駐車場 満車 :::::▼*/
    /*非アクティブ*/
    .full_l_001 { background-position: -288px 0; }
    .full_l_002 { background-position: -288px -48px; }
    .full_l_003 { background-position: -288px -96px; }
    .full_l_004 { background-position: -288px -144px; }
    .full_l_005 { background-position: -288px -192px; }
    .full_l_006 { background-position: -288px -240px; }
    .full_l_007 { background-position: -288px -288px; }
    .full_l_008 { background-position: -288px -336px; }
    .full_l_009 { background-position: -288px -384px; }
    .full_l_010 { background-position: -288px -432px; }

    /*アクティブ*/
    .full_l_001.act { background-position: -336px 0; }
    .full_l_002.act { background-position: -336px -48px; }
    .full_l_003.act { background-position: -336px -96px; }
    .full_l_004.act { background-position: -336px -144px; }
    .full_l_005.act { background-position: -336px -192px; }
    .full_l_006.act { background-position: -336px -240px; }
    .full_l_007.act { background-position: -336px -288px; }
    .full_l_008.act { background-position: -336px -336px; }
    .full_l_009.act { background-position: -336px -384px; }
    .full_l_010.act { background-position: -336px -432px; }

/* バス停／Sta. ピン アイコン */
.pin_bus_l,
.pin_sta_l{
    background-image: url(/img/common/sp_icon_bus_station_l.png);
    background-repeat: no-repeat;
    -moz-background-size: 1156px 222px;
    -webkit-background-size: 578px 222px;
    background-size: 578px 222px;
}

/* ▼::::: バス停ピン :::::▼ */
.pin_bus_l{
    width: 48px;
    height: 53px;
}
    /* 非アクティブ */
    .bus_l_000 { background-position: 0 -58px; }
    .bus_l_001 { background-position: -53px -58px; }
    .bus_l_002 { background-position: -106px -58px; }
    .bus_l_003 { background-position: -159px -58px; }
    .bus_l_004 { background-position: -212px -58px; }
    .bus_l_005 { background-position: -265px -58px; }
    .bus_l_006 { background-position: -318px -58px; }
    .bus_l_007 { background-position: -371px -58px; }
    .bus_l_008 { background-position: -424px -58px; }
    .bus_l_009 { background-position: -477px -58px; }
    .bus_l_010 { background-position: -530px -58px; }

    /* アクティブ */
    .bus_l_000.act { background-position: 0 0; }
    .bus_l_001.act { background-position: -53px 0; }
    .bus_l_002.act { background-position: -106px 0; }
    .bus_l_003.act { background-position: -159px 0; }
    .bus_l_004.act { background-position: -212px 0; }
    .bus_l_005.act { background-position: -265px 0; }
    .bus_l_006.act { background-position: -318px 0; }
    .bus_l_007.act { background-position: -371px 0; }
    .bus_l_008.act { background-position: -424px 0; }
    .bus_l_009.act { background-position: -477px 0; }
    .bus_l_010.act { background-position: -530px 0; }

/* ▼::::: Sta.ピン :::::▼ */
.pin_sta_l{
    width: 48px;
    height: 53px;
}
    /* 非アクティブ */
    .sta_l_000 { background-position: 0 -174px; }
    .sta_l_001 { background-position: -53px -174px; }
    .sta_l_002 { background-position: -106px -174px; }
    .sta_l_003 { background-position: -159px -174px; }
    .sta_l_004 { background-position: -212px -174px; }
    .sta_l_005 { background-position: -265px -174px; }
    .sta_l_006 { background-position: -318px -174px; }
    .sta_l_007 { background-position: -371px -174px; }
    .sta_l_008 { background-position: -424px -174px; }
    .sta_l_009 { background-position: -477px -174px; }
    .sta_l_010 { background-position: -530px -174px; }

    /* アクティブ */
    .sta_l_000.act { background-position: 0 -121px; }
    .sta_l_001.act { background-position: -53px -121px; }
    .sta_l_002.act { background-position: -106px -121px; }
    .sta_l_003.act { background-position: -159px -121px; }
    .sta_l_004.act { background-position: -212px -121px; }
    .sta_l_005.act { background-position: -265px -121px; }
    .sta_l_006.act { background-position: -318px -121px; }
    .sta_l_007.act { background-position: -371px -121px; }
    .sta_l_008.act { background-position: -424px -121px; }
    .sta_l_009.act { background-position: -477px -121px; }
    .sta_l_010.act { background-position: -530px -121px; }



/* サービスアイコン SNSボタン */
.icon_fb,
.icon_twt,
.icon_mx,
.icon_inst,
.icon_4sq,
.lineup .linklist li .btn_traffic a,
.lineup .linklist li .btn_park a,
.lineup .linklist li .btn_gs a,
.lineup .linklist li .btn_twt a
.lineup .linklist li .btn_adrs a,
.lineup .linklist li .btn_myset a,
.lineup_btn .linklist li .btn_lineup a:before,
/* 時刻表 */
.lineup_btn .linklist li .btn_timetable a:before,
/* 路線図 */
.lineup_btn .linklist li .btn_route a:before,
/* 運行情報 */
.lineup_btn .linklist li .btn_serviceinfo a:before,
/* バス路線図 */
.lineup_btn .linklist li .btn_busroute a:before
 {
    background-image:url(/img/common/sp_icon_service.png);
    -moz-background-size:280px 13930px;
    -webkit-background-size:280px 1393px;
    background-size:280px 1393px;
    background-repeat: no-repeat;
}

/*Facebookボタン*/
.icon_fb {
    background-position: -210px -210px;
}
/*Twitterボタン*/
.icon_twt {
    background-position: -210px -650px;
}
/*mixiチェックボタン*/
.icon_mx {
    background-position: -210px -430px;
}
/*Instagramボタン*/
.icon_inst {
    background-position: -256px -850px;
}
/*foursquareボタン*/
.icon_4sq {
    background-position: -256px -880px;
}

/*マップコード*/
.data_mapcode {
    background-image:url(/img/common/sp_logo.png);
    background-repeat:no-repeat;
    background-position:0 0;
    -moz-background-size:200px 250px;
    -webkit-background-size:200px 250px;
    background-size:200px 250px;
    background-position: 0 -224px;
    padding-left:85px;
}
.data_mapcode .label {
    font-size:20px;
    color:#c5092f;
}


/*-------- リスト・リンクリスト一覧 --------*/
/*よく使うリスト・リンクリスト*/
.list, .link, .linklist li {/*リスト・リンクリスト・リンクテキスト共通指定*/
    font-size:16px;
    line-height:1.3;
}
.linklist {
    background-color:#fff;
}
.linklist a {/*リンクリスト共通指定*/
    white-space: nowrap;
    overflow: hidden;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}
/*リスト・リンクリスト・リンクテキスト共通色指定*/
.linklist a, .link a, .link {
}
.linklist a:visited, .link a:visited, .link:visited {/*参照後リンク色の変化あり*/
}
.linklist > li {
    border-bottom:1px solid #aaa;
    padding:10px
}
.linklist.lastbdb0 > li:last-child {/*リスト最終列の下線なし*/
    border-bottom:0;
}
.linklist > li.nonactive {/*非アクティブ*/
    color:#d2d2d2;
}
.linklist > li .subtext{
    font-size:12px;
}

/*linklist1 青色>右側に背景付き*/
.linklist1:not(.custom) > :nth-child(2n) {/*偶数列にグレーの背景色*/
    background-color:#f1f2f6
}

.linklist1 > li a {
    padding-right:15px;
    display:block;
    background-repeat:no-repeat;
    background-position:right center;
    background:url(/img/common/icon_arrow_m.png) no-repeat 99.5% 50%;
    -moz-background-size:9px 13px;
    -webkit-background-size:9px 13px;
    background-size:9px 13px;
}
.linklist1 > li a > span:nth-of-type(1) {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}
.linklist1 > li a.extlink {/*外部リンクアイコン*/
    padding-right:20px;
    display:block;
    background-repeat:no-repeat;
    background-position:right center;
    background:url(/img/common/icon_arrow_other_site.png) no-repeat 100% 50%;
    -moz-background-size:15px 12px;
    -webkit-background-size:15px 12px;
    background-size:15px 12px;
}
.linklist1 > li a.noicon {/*アイコンなし*/
    padding-right:0;
    background:none;
}
.linklist1 > li a:visited {/*参照後リンク色の変化なし*/
}
.linklist1 .selected {
    background:#1f5dca
}
.linklist1 .selected a {
    background-image:url(/img/common/icon_arrow_c_l.png);
}
.linklist1 .selected a, .linklist1 .selected span {
    color:#fff
}
/*linklist1 カスタム（角丸枠1）*/
.linklist1.rfrm {/*偶数列にグレーの背景色*/
    border:1px solid #aaa;
    -webkit-border-radius:2px;
    -moz-border-radius:2px;
    border-radius:2px;
}
.linklist1.rfrm.dot {/*枠線の見た目を点線に変更*/
    border:2px dotted #aaa;
}
.linklist1.rfrm li:first-child {/*最上段ボックス*/
}
.linklist1.rfrm li:last-child {/*最下段ボックス*/
    border-bottom:0;
}
/*アイコン左つき*/
.linklist1.icon_pos_l > li p:not(.icon),
.linklist1.icon_pos_l > li div:not(.icon) {
    padding-left:33px;
}
.linklist1.icon_pos_l > li p.icon3 {
    top:6px;
    left:6px;
}
/*アイコン左つき .pin_sta_l の場合のみ例外 */
.linklist1.icon_pos_l > li .pin_sta_l + p:not(.icon),
.linklist1.icon_pos_l > li .pin_sta_l + div:not(.icon) {
    padding-left:40px;
}

/*アイコン右つき*/
.linklist1.icon_pos_r > li p:not(.icon),
.linklist1.icon_pos_r > li div:not(.icon) {
    padding-right:33px;
}
.linklist1.icon_pos_r > li div.pr0 {
    padding-right:0;
}
.linklist1.icon_pos_r > li p.icon2 {
    top:4px;
    right:6px;
}

/*ボタン右つき*/
.linklist1.btn_pos_r > li {
    padding:0;
}
.linklist1.btn_pos_r > li p:not(.button),
.linklist1.btn_pos_r > li div:not(.button) {
    padding-right:56px;
}
.linklist1.btn_pos_r > li div.pr0 {
    padding-right:0;
}
.linklist1.btn_pos_r > li p.button {
    top:22%;
    right:10px;
}
.linklist1.btn_pos_r.dllist1 > li p.button {/*項目がリスト型*/
    top:30%;
    right:10px;
}
.linklist1.btn_pos_r > li div:not(.button) a {
    background-position:97% 50%;
}
.linklist1.btn_pos_r > li p.button a {
    background-image:none;
}

/*linklist2 左側に[>]背景なし*/
.linklist2 > li {
    border-bottom:0;
}
.linklist2 > li a {
    padding-left:15px;
    display:block;
    background:url(/img/common/icon_arrow_s.png) no-repeat 0 50%;
    -moz-background-size:12px 12px;
    -webkit-background-size:12px 12px;
    background-size:12px 12px;
    color:#333;
}
.linkc li,
.linkc li a {/*インラインリンク*/
    display:inline;
}
.link_bt {/*ページトップへ戻るリンク*/
    margin:0 0 10px;
    padding-left:18px;
    display:inline-block;
    background-position:0 -490px
}

/*特集リスト*/
.lineup .linklist {
    padding-left:10px;
    padding-bottom:20px;
}
.lineup .linklist li {
    float:left;
    padding:16px 0 0 0;
    margin-right:8px;
    border-bottom:0;
    -webkit-border-radius:2px;
    -moz-border-radius:2px;
    border-radius:2px;
}

.lineup .linklist li .btn_lineup a{
    background-position: 5px 50%;
    background-repeat:no-repeat;
    -moz-background-size:60px 60px;
    -webkit-background-size:60px 60px;
    background-size:60px 60px;
    padding:18px 10px 18px 68px;
    font-size:16px;
}
.lineup .linklist li .btn_lineup.row2 a{
    padding:8px 10px 8px 68px;
    font-size:14px;
}

.lineup .linklist li .btn_traffic a{
    background-position: 5px -213px;
}
.lineup .linklist li .btn_park a{
    background-position: 5px -632px;
}
.lineup .linklist li .btn_gs a{
    background-position: 5px -424px;
}
.lineup .linklist li .btn_twt a{
    background-position: -205px -4px;
}
.lineup .linklist li .btn_twt a span{
    background:none;
    padding-left:0;
    line-height:1.3;
    font-size:16px;
}
.lineup .linklist li .btn_adrs a{
    background-position: 5px -2px;
}
.lineup .linklist li .btn_myset a{
    background-position: 5px -843px;
}
.lineup .linklist li .btn_lineup a span {
    display:block;
    width:66px;
}

/* TOP リキッドボタン リスト*/
.lineup_btn .linklist {
    position: relative;
    padding-left:16px;
    padding-right:16px;
    padding-bottom:30px;
}
/* 便利機能のボタンのみ */
.lineup_btn.useful .linklist {
    padding-bottom:60px;
}

.lineup_btn .linklist li {
    position: relative;
    float:left;
    width: 33%;
    margin:16px 0 0 0;
    padding: 0;
    border-bottom:0;
    -webkit-border-radius:2px;
    -moz-border-radius:2px;
    border-radius:2px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.lineup_btn .linklist li:nth-child(3n-1) {
    width: 34%;
    padding: 0 10px;
}
.lineup_btn .linklist li:first-child {
    padding-right: 17px;
}
.lineup_btn .linklist li:last-child {
    padding-left: 17px;
}
.lineup_btn .linklist li .btn_lineup{
    position: relative;
    width: 100%;
}
.lineup_btn .linklist li .btn_lineup a{
    width: 100%;
    height: 68px;
    padding: 0;
    font-size:16px;
}

/* ボタン共通 */
.lineup_btn .linklist li .btn_lineup a:before{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -27px 0 0 -34px;
    width: 68px;
    height: 54px;
    z-index: 100;
}
/* 渋滞情報 */
.lineup_btn .linklist li .btn_traffic a:before{
    background-position: 0 -210px;
}
/* 駐車場 */
.lineup_btn .linklist li .btn_park a:before{
    background-position: 5px -632px;
}
/* ガソリン */
.lineup_btn .linklist li .btn_gs a:before{
    background-position: 5px -424px;
}
/* 現在地を共有 */
.lineup_btn .linklist li .btn_twt a:before{
    background-position: -205px -4px;
}
.lineup_btn .linklist li .btn_twt a span{
    background:none;
    padding-left:0;
    line-height:1.3;
    font-size:16px;
}
/* 住所一覧 */
.lineup_btn .linklist li .btn_adrs a:before{
    background-position: 5px -2px;
}
/* My設定 */
.lineup_btn .linklist li .btn_myset a:before{
    background-position: 5px -843px;
}
/* 時刻表 */
.lineup_btn .linklist li .btn_timetable a:before{
    background-position: 10px -1052px;
}
/* 路線図 */
.lineup_btn .linklist li .btn_route a:before{
    background-position: -206px -1052px;
}
/* 運行情報 */
.lineup_btn .linklist li .btn_serviceinfo a:before{
    background-position: 12px -1216px;
}
/* バス路線図 */
.lineup_btn .linklist li .btn_busroute a:before{
    background-position: -206px -1216px;
}

/* ボタン下部テキスト */
.lineup_btn .linklist li .btn_lineup a span {
    position: absolute;
    top: 75px;
    display:block;
    width: 100%;
    text-align: center;
}

/* バナーリスト - TOP便利機能エリア  */
.bnrlist li {
    width: 288px;
    margin: 0 auto;
}
.bnrlist li + li{
    padding-top: 17px;
}
.bnrlist .txt{
    padding-top: 8px;
}


/*手順リスト*/
.steplist {
}
/*steplist1 アイコンあり・垂直配置*/
.steplist1 > li {
    padding:15px 13px;
}
.steplist1 > li:not(:first-child) {
    border-top:1px solid #ddd;
}
.steplist1 > li .stepdata .icon {
    width:24px;
    height:24px;
}
.steplist1 > li .stepdata .label {
    padding:4px 0 4px 30px;
}

.steplist1 > li.list01 .icon {
    background-position: 0 -164px;
}
.steplist1 > li.list02 .icon {
    background-position: 0 -332px;
}
.steplist1 > li.list03 .icon {
    background-position: 0 -416px;
}
.steplist1 > li.list04 .icon {
    background-position: 0 -500px;
}
.steplist1 > li.list05 .icon {
    background-position: 0 -584px;
}
.steplist1 > li.list06 .icon {
    background-position: 0 -668px;
}
.steplist1 > li.list07 .icon {
    background-position: 0 -752px;
}
.steplist1 > li.list08 .icon {
    background-position: 0 -836px;
}
.steplist1 > li.list09 .icon {
    background-position: 0 -920px;
}
.steplist1 > li.list10 .icon {
    background-position: 0 -248px;
}
.steplist1 > li .img_con {
    padding-top:8px;
}

.steplist > li.disable .stepdata .icon {
    background-position-x: -32px;
}

/*項目リスト*/
.dllist {
}
/*dllist1 項目並列配置*/
.dllist1 > li {
    padding:10px;
    border-bottom:1px solid #aaa;
}
.dllist1 dl {
}
.dllist1 dl dt {
    background:url(/img/common/icon_subt.png) no-repeat 0 1px;
    -moz-background-size:3px 12px;
    -webkit-background-size:3px 12px;
    background-size:3px 12px;
    padding-left:10px;
    font-size:12px;
    font-weight:normal;
}
.dllist1 dl dd {/*データ右配置*/
    margin-top:-1.2em;
    padding-left:94px;
    font-size:14px;
}
.dllist1 dl dd.row_w {/*データ縦配置*/
    margin-top:0;
    padding:13px 13px 0;
    font-size:14px;
}
.dllist1 dl dd.row_w input {
    width:100%;
}
.dllist1 dl dd.row_w2 {/*データ縦配置2*/
    margin-top:0;
    padding:10px 13px 0;
    font-size:14px;
}
.dllist1 dl dd.row_w2 input {
    width:100%;
}
.dllist1 dl dd.row_w3 {/*データ縦配置3*/
    margin-top:0;
    padding:10px 0 0;
    font-size:14px;
}
.dllist1 dl dd.row_w3 input {
    width:100%;
}

/*ルートポイントリスト*/
.routepointlist > li {
    padding:0 10px 0 13px;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
    display:-moz-box;
    display:-webkit-box;
    display:box;
    width:100%;
    overflow:hidden;
    background-color:#fff;
    position:relative;
    overflow:visible;
    border-color:#ddd;
}

.routepointlist > li:last-child {
    border-color:#aaa;
}
.routepointlist .line {/*●を結ぶ上下の線*/
    margin-left:10px;
    margin-bottom:-1px;
    top:1.1em;
    border-left-width:6px;
    border-left-style:solid;
    position:relative;
    width:8px;
    display:-moz-box;
    display:-webkit-box;
    display:box;
    -box-pack:center;
    -moz-box-pack:center;
    -webkit-box-pack:center;
    z-index:2;
    background:none;
    box-align:start;
    -moz-box-align:start;
    -webkit-box-align:start
}
.routepointlist .line.empty, .routepointlist .line.last {/*●のない（停車駅でない）駅*/
    border:none;
    padding-left:6px
}
.routepointlist .dot {/*●を結ぶ上下の点線（通過）*/
    border-style:dotted
}
.icon_routepoint {/*ルート経由ポイントの描画*/
    margin-left:-14px;
    z-index:3;
    min-width:20px;
    height:20px;
    border:1px solid #333;
    -webkit-border-radius:2px;
    -moz-border-radius:2px;
    border-radius:2px;
    background-color:#fff;
    text-align:center;
    line-height:20px;
}
.icon_routepoint.icon1 {
    border:0;
    -webkit-border-radius:0;
    -moz-border-radius:0;
    border-radius:0;
    height:22px;
}
.routepointlist .via {/*経由フラグ配置*/
    top:1.1em;
    position:relative;
    display:-moz-box;
    display:-webkit-box;
    display:box;
    -box-pack:center;
    -moz-box-pack:center;
    -webkit-box-pack:center;
    box-align:start;
    -moz-box-align:start;
    -webkit-box-align:start;
    padding-left:10px;
}

.routepointlist li > a:last-child {
    position:relative;
    -webkit-box-flex:1;
    -moz-box-flex:1;
    box-flex:1
}
.routepointlist > li a {
    display:block;
    padding-right:30px;
}
.routepointlist > li a:visited {
}
.routepointlist .text1 {
    min-height:30px;
    margin-left:12px;
    padding:11px 0;
    display:block;
    width:100%;
    font-size:14px;
}
.routepointlist .text1 .spot1 {
    display:block;
    white-space: nowrap;
    overflow: hidden;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}
.routepointlist .text1 .sub {
}
.routepointlist .text1 .sub .dist {
}

.routepointlist .nospot .line {/*ポイント名称がない場合(アイコン配置)*/
    top:1em;
    margin-bottom:-2px;
}
.routepointlist .nospot .text1 .sub {
    padding-top:6px;
}
.routepointlist .nospot .via {/*ポイント名称がない場合(経由フラグ配置)*/
    top:1em;
}

.routepointlist .goalpoint .text1 {
    padding-top:18px;
}

.routepointlist .spot100 {/*経由地が3桁以上の場合*/
}

.routepointlist .spot100 .icon_routepoint {
    margin-left:-17px;
    padding-left:1px;
    padding-right:1px;
}

.li_h0 {
    height:auto;
}
.li_h1 {
    height:15px;
}
.li_h2 {
    height:20px;
}
.li_h3 {
    height:30px;
}
.li_h4 {
    height:40px;
}

.break_all {
    word-break: break-all;
}

/*-------- タブ一覧 --------*/
/*タブ共通指定*/
.tabs {
    display:-moz-box;
    display:-webkit-box;
    display:box;
    -moz-box-pack:center;
    -webkit-box-pack:center;
    box-pack:center;
    width:100%;
}
.tabs li {
}

.tabs li>p {
    -moz-box-pack:center;
    -webkit-box-pack:center;
    box-pack:center;
    border:1px solid #bcbcbc;
}

.tabs li:not(:first-child)>p {
    border-left-width:0;
}

.tabs a, .tabs span {
    padding:0.5em 0.7em;
     border:2px solid #fff;
    text-shadow:0 1px 1px #fff;
    display:block;
}

.tabs li.nonactive {
    color:#fff;
    background-color:#c1c1c1;
}
.tabs li.nonactive span {
    color:#fff;
    border-color:#c1c1c1;
}

.tabs li.selected a {/*選択されたタブ*/
    background: #d3d8ea;
    background:-webkit-gradient(linear, left top, left bottom, from(#d3d8ea), color-stop(0.1, #d3d8ea), to(#fff));
    background:-moz-linear-gradient(center top, #d3d8ea, #d3d8ea 10%, #fff);
    color:#193590;
    text-shadow:0 1px 1px #fff;
    display:block;
}

.tabs.col2 li {
    width:50%;
    font-size:17px;
}
.tabs.col2 li a ,.tabs.col2 li span {
    padding:0.3em 0.4em;
}
.tabs.col2 li span.fs_normal {
    font-size:14px;
}

.tabs.col3 li {
    width:33%;
}
.tabs.col3 li:nth-child(2),
.tabs.col3 li:nth-child(3) {
    width:33.5%;
}
.tabs.col4 li{
    width: 25%;
}

.tabs li.selected > p {
    border-bottom-color:#fff;
}

/* tabs_a1(薄いグレーボタン,100%幅コンテンツの上付け配置)*/
.tabs_a1 {/*width100%配置タブ*/
    display:block;
    width:100%;
}
.tabs_a1 li {
    float:left;
    border-top-width:0;
    background:#fff;
    background:-webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.5, #fff), color-stop(0.55, #e5e6e6), color-stop(0.90, #e5e6e6), to(#fff));
    background:-moz-linear-gradient(center top, #fff 50%, #e5e6e6 55%, #e5e6e6 90%, #fff);
}

.tabs_a1 li.selected {
    border-bottom-width:0;
}
.tabs_a1 a {
    border-bottom:0;
}
.tabs_a1 li:first-child p {/*左端のタブ*/
    border-left-width:0;
}
.tabs_a1 li:last-child {/*右端のタブ*/
/*	float:right; */
}
.tabs_a1 li:last-child p {/*右端のタブ*/
    border-right-width:0;
}

/* tabs_a2(薄いグレーボタン,100%幅コンテンツ。コンテンツから離れて配置)*/
.tabs_a2 {/*width100%配置タブ*/
    display:block;
    width:100%;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
    border-radius:4px;
}
.tabs_a2 li {
    float:left;
    border-top-width:0;
    background:none;

}
.tabs_a2 li p a {
    border:0;
    border-left:1px solid #fff;
}
.tabs_a2 li:first-child p a {
    border-left:0;
}
.tabs_a2 li:first-child li, .tabs_a2 li:first-child p, .tabs_a2 li:first-child a {/*左端のタブ*/
    -moz-border-radius:4px 0 0 4px;
    -webkit-border-radius:4px 0 0 4px;
    border-radius:4px 0 0 4px;
    border-left-width:1px;
}
.tabs_a2 li:first-child li, .tabs_a2 li:last-child p, .tabs_a2 li:last-child a {/*右端のタブ*/
    -moz-border-radius:0 4px 4px 0;
    -webkit-border-radius:0 4px 4px 0;
    border-radius:0 4px 4px 0;
}
.tabs_a2 li.selected > p {
    border-bottom-color:#bcbcbc;
}

.tabs_a2 a, .tabs_a2 span {
    border:0;
}



/* tabs_a3(薄いグレーボタン,テキスト量にフィット。コンテンツから離れて配置)*/
.tabs_a3 li {
    font-size:16px;
    min-width:13%;
    white-space:nowrap;
}
.tabs_a3 li a {
    border:0;
}
.tabs_a3 li:first-child p, .tabs_a3 li:first-child a {/*左端のタブ*/
    -moz-border-radius:4px 0 0 4px;
    -webkit-border-radius:4px 0 0 4px;
    border-radius:4px 0 0 4px;
    border-left-width:1px;
}
.tabs_a3 li:last-child p, .tabs_a3 li:last-child a {/*右端のタブ*/
    -moz-border-radius:0 4px 4px 0;
    -webkit-border-radius:0 4px 4px 0;
    border-radius:0 4px 4px 0
}
.tabs_a3 li.selected > p {
    border-bottom-color:#bcbcbc;
}

/* tabs_c3(濃いグレーボタン,テキスト量にフィット。コンテンツから離れて配置)*/
.tabs_c3 li {
    font-size:16px;
    min-width:13%;
    white-space:nowrap;
}
.tabs_c3 li a {
    border:0;
    border-left:1px solid #cbccd0;
}
.tabs_c3 li:first-child p, .tabs_c li:first-child a {/*左端のタブ*/
    -moz-border-radius:4px 0 0 4px;
    -webkit-border-radius:4px 0 0 4px;
    border-radius:4px 0 0 4px;
    border-left-width:0;
}
.tabs_c3 li:last-child p, .tabs_c li:last-child a {/*右端のタブ*/
    -moz-border-radius:0 4px 4px 0;
    -webkit-border-radius:0 4px 4px 0;
    border-radius:0 4px 4px 0
}
.tabs_c3 li.selected > p {
    border-bottom-color:#bcbcbc;
}




/*-------- ボタン一覧 --------*/
/*ボタン共通指定*/
.button {/*ボタン要素の共通指定*/
    margin:0 auto;
    width:auto;
    display:inline-block;
    white-space:nowrap;
    border:1px solid;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius:3px;
    -moz-box-shadow: 0 3px 1px #e5e6e6;
    -webkit-box-shadow: 0 3px 1px #e5e6e6;
    box-shadow: 0 3px 1px #e5e6e6;
}
.button .label {/*ボタン要素の子要素指定*/
    padding:5px 5px;
    border-top:none;
    display:block;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius:3px;
    text-align:center;
    font-size:12px;
    background-color:transparent;
}
.button input,
.button button {
    border:0;
}
.button.disable,
.disable .button {
    background: #e4e4e4;
    border: 1px solid #cecece;
}

.button.disable .label,
.disable .button .label {
    color: #d2d2d2;
    text-shadow:0 1px 0 #ffffff !important;
}

/*枠なしボタン*/
.btn0 {
    border:0;
    display:block;
    width:auto;
    -moz-box-shadow: 0 0 1px #fff;
    -webkit-box-shadow: 0 0 1px #fff;
    box-shadow: 0 0 1px #fff;
}
.btn0 .label {
    border:0;
    padding:0;
}
.button.btn_frm .label {
    border:0;
}

/*btn_a*/
.btn_a{
    border-color: #aaaaaa;
    background: #ffffff;
    background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.5, #ffffff), color-stop(0.5, #e5e6e6), to(#ffffff) );
    background: -moz-linear-gradient(center top, #ffffff, #ffffff 50%, #e5e6e6 5%, #ffffff);
    -moz-box-shadow:0 3px 1px #d9d9d9;
    -webkit-box-shadow:0 3px 1px #d9d9d9;
    box-shadow:0 3px 1px #d9d9d9;
    color: #333333;
    text-shadow:0 1px 0 #ffffff;
}
.nonactive .btn_a{/*非アクティブ状態*/
    border-color:#cecece;
    background:#e4e4e4;
    -moz-box-shadow: 0 0 0 #fff;
    -webkit-box-shadow: 0 0 0 #fff;
    box-shadow: 0 0 0 #fff;
}
/*btn_b*/
.btn_b {
    border-color:#484848;
    background: #454545;
    background: -webkit-gradient(linear, left top, left bottom, from(#454545), color-stop(0.5, #454545), color-stop(0.5, #111), to(#666) );
    background: -moz-linear-gradient(center top, #454545, #454545 50%, #111 5%, #666);
    -moz-box-shadow:0 3px 1px #d9d9d9;
    -webkit-box-shadow:0 3px 1px #d9d9d9;
    box-shadow:0 3px 1px #d9d9d9;
}
.btn_b .label {
    color:#fff;
    text-shadow:0 -1px 0 #3b3b3b;
}

/*btn_c*/
.btn_c{
    border-color: #727272;
    background: #96999d;
    background: -webkit-gradient(linear, left top, left bottom, from(#96999d), color-stop(0.5, #96999d), color-stop(0.5, #7e8387), to(#d0d2d3) );
    background: -moz-linear-gradient(center top, #96999d, #96999d 50%, #7e8387 50%, #d0d2d3);
    -moz-box-shadow:0 3px 1px #d9d9d9;
    -webkit-box-shadow:0 3px 1px #d9d9d9;
    box-shadow:0 3px 1px #d9d9d9;
}
.btn_c .label{
    color: #fff;
    text-shadow:0 1px 1px #696b6e;
}
.nonactive .btn_c{/*非アクティブ状態*/
    border-color:#cecece;
    background:#e4e4e4;
    -moz-box-shadow: 0 0 1px #fff;
    -webkit-box-shadow: 0 0 1px #fff;
    box-shadow: 0 0 1px #fff;
}
/*btn_d*/
.btn_d {
    border-color:#c5092f;
    background: #d60a33;
    background: -webkit-gradient(linear, left top, left bottom, from(#d60a33), color-stop(0.5, #d60a33), color-stop(0.5, #ab092a), to(#d5153c) );
    background: -moz-linear-gradient(center top, #d60a33, #d60a33 50%, #ab092a 50%, #d5153c);
    -moz-box-shadow:0 3px 1px #d9d9d9;
    -webkit-box-shadow:0 3px 1px #d9d9d9;
    box-shadow:0 3px 1px #d9d9d9;
}
.btn_d .label {
    color: #fff;
    text-shadow:0 -1px 0 #ab0829 !important;
}
/*btn_e*/
.btn_e {
    border-color:#edc900;
    background: #faefbb;
    background: -webkit-gradient(linear, left top, left bottom, from(#faefbb), color-stop(0.5, #f5df7b), color-stop(0.5, #eeca24), to(#f6e38b) );
    background: -moz-linear-gradient(center top, #faefbb, #f5df7b 50%, #eeca24 50%, #f6e38b);
    -moz-box-shadow:0 3px 1px #d9d9d9;
    -webkit-box-shadow:0 3px 1px #d9d9d9;
    box-shadow:0 3px 1px #d9d9d9;
}
.btn_e .label {
    color: #333;
    text-shadow:0 1px 0 #fff1b1 !important;
}

/*ボタンリスト*/
.btnlist {
}
.btnlist.col1{/*並列1つ配置*/
    text-align: center;
}
    .btnlist.col1 li{
        display: inline-block;
    }
.btnlist.col2 {/*並列2つ配置*/
    margin: 0 auto;
    display:-moz-box;
    display:-webkit-box;
    display:box;
    display:-ms-flexbox;
    -moz-box-pack:center;
    -webkit-box-pack:center;
    box-pack:center;
    -ms-flex-pack:center;
    width:100%;
}
.btnlist.col2 li {
    margin-right:10px;
    -moz-box-pack:center;
    -webkit-box-pack:center;
    box-pack:center;
}
.btnlist.col2 li .btn_lw3 {
    width:140px;
}
.btnlist.col2 li .btn_lw3 .label {
    padding:7px 5px;
}
.btnlist.col2 li .btn_lw3 .label.al {
    text-align:left;
}
.btnlist.col2 li:last-child {
    margin-right:0;
}
.btnlist.col3 {/*並列3つ配置*/
    margin: 0 auto;
    display:-moz-box;
    display:-webkit-box;
    display:box;
    -moz-box-pack:center;
    -webkit-box-pack:center;
    box-pack:center;
    width:100%;
}
.btnlist.col3 li {
    margin-right:10px;
    -moz-box-pack:center;
    -webkit-box-pack:center;
    box-pack:center;
}
.btnlist.col3 li .button {
    width:85px;
}
.btnlist.col3 li .button .label {
    padding:7px 5px;
}
.btnlist.col3 li:last-child {
    margin-right:0;
}
/*ページングボタン*/
.paging {
    margin: 0 auto;
    display:-moz-box;
    display:-webkit-box;
    display:box;
    -moz-box-pack:center;
    -webkit-box-pack:center;
    box-pack:center;
    width:100%;
}

.paging li{
    margin-right:6px;
    -moz-box-pack:center;
    -webkit-box-pack:center;
    box-pack:center;
}
.paging li:last-child{
    margin-right:0;
}

.paging li .button .label {
    font-size: 22px;
    line-height: 1;
    padding: 8px 0px;
    text-align:center;
    min-width:36px;
    display:block;
}

.paging .selected {
    border-color:#0f2064;
    -moz-box-shadow:0 0 3px #f5f5f5;
    -webkit-box-shadow:0 0 3px #f5f5f5;
    box-shadow:0 0 3px #f5f5f5;
}

.paging .selected a{
    background: -webkit-gradient(linear, left top, left bottom,
    from(#102166),
    to(#2249b9)
    );
    background: -moz-linear-gradient(center top,
    #102166,
    #2249b9
    );

    -moz-border-radius:2px;
    -webkit-border-radius:2px;
    border-radius:2px;

    color: #ffffff;
    text-shadow: -1px -1px 0 #04175e;

}

/*アイコン付きボタン*/
/*検索ボタン*/
.btn_sub .label span {
    background-repeat:no-repeat;
    background-position: -76px 0;
    line-height:28px;
    padding-left:24px;
    display:inline-block;
    font-size:18px;
}
.btn_lw3.btn_sub .label[value^=検索] {
    padding-left:0.5em;
    letter-spacing:0.5em;
}
/*経由地追加ボタン*/
.btn_add .label span {
    padding-left:1.5em;
    background-position: -72px -136px;
    line-height:28px;
    padding-left:31px;
    display:inline-block;
    font-size:14px;
}
/*メールで送るボタン*/
.btn_mail .label span {
    padding-left:1.5em;
    background-position: 0 -950px;
    line-height:28px;
    padding-left:31px;
    display:inline-block;
    font-size:14px;
}
.btn_mail.btn_lw3 .label span {
    background-position: 5px -950px;
    padding-left:35px;
}

/*地図の素へ送るボタン*/
.btn_moto .label span {
    padding-left:1.5em;
    background-position: -70px -1296px;
    line-height:28px;
    padding-left:31px;
    display:inline-block;
    font-size:14px;
}
.btn_moto.btn_lw3 .label span {
    background-position: -65px -1296px;
    padding-left:35px;
}

/* 更新ボタン・登録ボタン・削除ボタン */
.btn_reload .label span,
.btn_entry .label,
.btn_delete .label {
    padding: 0 5px;
}
.btn_reload .label span,
.btn_entry .label span,
.btn_delete .label span {
    padding-left:1.5em;
    background-repeat:no-repeat;
    line-height:28px;
    display:inline-block;
    font-size:14px;
}

/* 登録ボタン */
.btn_entry .label span {
    background-position: -74px -720px;
    padding-left:27px;
}

/* 削除ボタン */
.btn_delete .label span {
    background-position: -74px -787px;
    padding-left:20px;
}
    /* 登録ボタン／削除ボタン disable */
    .btn_entry.disable,
    .btn_delete.disable{
        background: #e4e4e4;
        border: 1px solid #cecece;
    }
    .btn_entry.disable .label,
    .btn_delete.disable .label{
        color: #d2d2d2;
        text-shadow:0 1px 0 #ffffff !important;
    }
    .btn_entry.disable .label span,
    .btn_delete.disable .label span{
        background: none;
        padding-left: 0;
    }

/* 更新ボタン */
.btn_reload .label span {
    background-position: -66px -652px;
    padding-left: 33px;
    padding-right: 22px;
}

/*つぶやくボタン*/
.btn_twt .label span {
    padding-left:1.5em;
    background-position: -72px -68px;
    line-height:28px;
    padding-left:31px;
    display:inline-block;
    font-size:14px;
}
.btn_twt.btn_lw3 .label span {
    background-position: -65px -68px;
    padding-left:39px;
}

.nonactive .btn_add .label span {/*非アクティブ状態*/
    background-image:none;
    color:#d2d2d2;
    padding-left:0;
}

/*現在地ボタン*/
.btn_here .label span {
    background-position: -72px -204px;
    line-height:18px;
    padding-left:22px;
    display:inline-block;
}
.nonactive .btn_lw.btn_here .label span {/*非アクティブ状態*/
    background-image:none;
    padding-left:0;
    color:#d2d2d2;
}
.btn_ns {
    width:auto;
}
/*検索ボタンを通常サイズのボタンにリサイズ*/
.btn_sub.btn_ns .label span {
    text-indent:13px;
    background-position:2px -385px;
    -moz-background-size:28px 546px;
    -webkit-background-size:28px 546px;
    background-size:28px 546px;
}
/*地図ボタン*/
.btn_map .label {
    background-position: 0 -542px;
    padding:7px 10px 7px 33px;
    text-align:left;
}
/*電話ボタン*/
dl.btn_tel {
    padding:4px 0 0;
    line-height:1.05;
}
dl.btn_tel dt {
    font-size:14px;
    background:none;
    padding-left:0;
}
dl.btn_tel dd {
    font-size:20px;
    margin-top:-0.95em;
    padding-left:60px;
}
/*検索絞込みボタン*/
.btn_search .label {
    background-repeat:no-repeat;
    background-position: 0 -814px;

    padding:7px 10px 7px 33px;
    text-align:left;
}

/*ボタン幅固定1　narrow*/
.btn_ln1 {
    width:32px;
}
.btn_ln1 .label {
    padding:0;
    font-size:12px;
}
/*ボタン幅固定1　wide*/
.btn_lw1 {
    width:115px;
}
.btn_lw1 .label {
    padding:7px 10px;
}
/*ボタン幅固定2　wide*/
.btn_lw2 {
    width:145px;
}
.btn_lw2 .label {
    padding:7px 10px;
}
/*ボタン幅固定3　wide*/
.btn_lw3 {
    width:184px;
}
.btn_lw3 .label {
    padding:7px 10px;
}
/*ボタン幅固定4　wide*/
/* 欠番 */

/*ボタン幅固定5　wide*/
.btn_lw5 {
    width:240px;
}
.btn_lw5 .label {
    padding:7px 10px;
}
/*ボタン幅固定6*/
.btn_lw6 {
    width: 88px;
}
/*ボタン幅固定9　wide*/
.btn_lw9 .label {
    padding:7px 10px;
}
/*ボタン幅固定10*/
.btn_lw10 {
    max-width:100%;
    text-overflow: ellipsis;
}



/*ボタン高さ幅固定1*/
.btn_h1 .label {
    height:26px;
    line-height:26px;
    padding-top:0;
    padding-bottom:0;
    font-size:12px;
}
/*ボタン高さ幅固定2*/
.btn_h2 .label {
    height:32px;
    line-height:32px;
    padding-top:0;
    padding-bottom:0;
    font-size:12px;
}
/*ボタン高さ幅固定3*/
.btn_h3 .label {
    height:38px;
    line-height:38px;
    padding-top:0;
    padding-bottom:0;
    font-size:18px;
}
/*ボタン高さ幅固定4*/
.btn_h4 .label {
    height:44px;
    line-height:44px;
    padding-top:0;
    padding-bottom:0;
    font-size:18px;
}
/*ボタン高さ幅固定5*/
.btn_h5 .label {
    height:50px;
    line-height:50px;
    padding-top:0;
    padding-bottom:0;
    font-size:18px;
}
/*ボタン高さ幅固定10*/
.btn_h10 .label {
    height:38px;
    line-height:38px;
    padding-top:0;
    padding-bottom:0;
    font-size:18px;
    text-overflow:ellipsis;
    overflow:hidden;
}
/*ボタン高さ幅自動*/
.btn_h11 .label {
    height:auto;
    line-height:38px;
    padding-top:0;
    padding-bottom:0;
    font-size:18px;
}


/*-------- 検索系 --------*/
input.label {
    width:100%;
}
.select option {
}
/*inputブロック*/
.input_con {/*角丸のテキスト入力エリア*/
    margin-bottom:8px;
    padding:0 10px 0 35px;
    border:1px solid #aaa;
    height:32px;
    background:#fff;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
    border-radius:4px;
    -webkit-box-shadow:inset 0px 2px 1px 1px #aaa;
    -moz-box-shadow: inset 0px 2px 1px 1px #aaa;
    box-shadow: inset 0px 2px 1px 1px #aaa;
}
.input_con.noiconhead {/*エリアにアイコンなし*/
    padding:0 10px;
}
.input_con.clearicon {/*右エリアに削除アイコン*/
    padding:0 40px 0 10px;
}
.input_con.mb0{/*角丸のテキスト入力エリアの下マージン0*/
    margin-bottom: 0;
}

.inputtext {/*テキスト入力要素*/
    border:none;
    min-height:32px;
    background:transparent;
    -webkit-appearance:none;
    width:100%;
}
textarea.inputtext {
    width:98%
}
.input_con.in_h3 {
    height:4em;
}
.input_con.in_h3 .inputtext {
    margin-top:4px;
    height:3.2em;
}
.input_con.in_h6 {
    height:7em;
}
.input_con.in_h6 .inputtext {
    margin-top:4px;
    height:6.2em;
}

span.inputpreview {/*テキストプレビュー要素*/
    border:none;
    min-height:32px;
    background:transparent;
    -webkit-appearance:none;
    width:100%;
    line-height:32px;
/*	word-break:break-all;	*/
    white-space: nowrap;
    overflow: hidden;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}

/*input form1*/
.form_inputs1 {
}
.form_inputs1.parent {/* ボタン右付きボックス(親) */
    margin-right:30px;
}
.form_inputs1.parent .child:not(.button) {/* ボタン付きボックス(子)ボタン以外 */
}
.form_inputs1.parent .child.button {/* ボタン付きボックス(子)ボタン */
    top:2px;
    right:-36px;
}
.form_inputs1.parent .child.button .icon2 .label {
    display:block;
    width:32px;
    height:32px;
}
.form_inputs1 .input_con .iconhead {
    top:6px;
    left:6px;
}
.form_inputs1 .input_con .iconfoot {
    top:6px;
    right:6px;
}
.form_inputs1 .checkbox1 {
    padding-top:10px;
    vertical-align:top;
}
.form_inputs1 .checkbox1 .label {
    padding-left:10px;
    line-height:1px;
}

/*input form2*/
.form_inputs2 {
}
.form_inputs2.parent {/* ボタン左右付きボックス(親) */
    margin-left:30px;
    margin-right:30px;
}
.form_inputs2.parent .child:not(.button) {/* ボタン付きボックス(子)ボタン以外 */
}
.form_inputs2.parent .child.button.pos_r {/* ボタン付きボックス(子)右ボタン */
    top:4px;
    right:-36px;
}
.form_inputs2.parent .child.button.pos_l {/* ボタン付きボックス(子)左ボタン */
    top:4px;
    left:-27px;
}
.form_inputs2.parent .child.button .icon2 .label {
    display:block;
    width:32px;
    height:32px;
}
.form_inputs2 .input_con .pos_l {
    top:6px;
    left:6px;
}
.form_inputs2 .input_con .pos_r {
    top:6px;
    right:6px;
}
/*input form3*/
.form_inputs3 {/*項目ごと枠線ありインプット*/
    border-top-width:0;
    background:#fff;
}
.form_inputs3 li {
    border:1px solid #aaa;
    padding:11px 10px;
    border-top-width:0;
}
.form_inputs3 li:first-child {/*最上段ボックス*/
    -moz-border-radius:2px 2px 0 0;
    -webkit-border-radius:2px 2px 0 0;
    border-radius:2px 2px 0 0;
    border-top-width:1px;
}
.form_inputs3 li:last-child {/*最下段ボックス*/
    -moz-border-radius:0 0 2px 2px;
    -webkit-border-radius:0 0 2px 2px;
    border-radius:0 0 2px 2px
}

.form_inputs3 .parent .child:not(.input_con) {/* ラベル付きボックス(子)インプット以外 */

}

.form_inputs3 .parent .child.input_label {/* ラベル付きボックス(子)ラベル */
    background:url(/img/common/icon_subt.png) no-repeat 0 1px;
    -moz-background-size:3px 12px;
    -webkit-background-size:3px 12px;
    background-size:3px 12px;
    padding-left:10px;
    text-align:left;
    font-size:12px;
    font-weight:normal;
}
.form_inputs3 .parent .child.input_label.pos_l {/* ラベル付きボックス(子)ラベル */
    top:8px;
}
.form_inputs3 .parent .child.input_con {/* ラベル付きボックス(子)インプット(並列) */
    margin-top:8px;
    margin-bottom:0;
    padding-left:10px;
}
.form_inputs3 .parent.pos .child.input_con {/* ラベル付きボックス(子)インプット（直列） */
    margin-top:0;
    margin-left:90px;
}
.form_inputs3 .parent.pos .child.select_con {/* ラベル付きボックス(子)セレクト(直列) */
    margin-top:0;
    margin-left:90px;
}
.form_inputs3 .parent.pos .child.checkbox_con {/* ラベル付きボックス(子)チェックボックス(直列) */
    margin-top:0;
    margin-left:90px;
}
.form_inputs3 .parent.pos .child.text_con {/* ラベル付きボックス(子)テキスト(直列) */
    margin-top:0;
    margin-left:90px;
}


/*search form1*/
.form_search1 {
}
.form_search1.parent {/* ボタン右付きボックス(親) */
    margin-right:40px;
}
.form_search1.parent .child.button.btn_frm {/* ボタン付きボックス(子)ボタン2(枠あり) */
    top:1px;
    right:-40px;
}

/*select form1*/
.form_select1 {
    padding:11px 10px;
    border:1px solid #aaa;
    border-top-width:0;
    background:#fff;
}
.form_select1:first-child {/*最上段ボックス*/
    -moz-border-top-left-radius:2px;
    -webkit-border-top-left-radius:2px;
    border-top-left-radius:2px;
    -moz-border-top-right-radius:2px;
    -webkit-border-top-right-radius:2px;
    border-top-right-radius:2px;
    border-top-width:1px;
/*
    -moz-border-radius:2px 2px 0 0;
    -webkit-border-radius:2px 2px 0 0;
    border-radius:2px 2px 0 0;
    border-top-width:1px;
 */
}
.form_select1:last-child {/*最下段ボックス*/
    -moz-border-bottom-left-radius:2px;
    -webkit-border-bottom-left-radius:2px;
    border-bottom-left-radius:2px;
    -moz-border-bottom-right-radius:2px;
    -webkit-border-bottom-right-radius:2px;
    border-bottom-right-radius:2px;
/*
    -moz-border-radius:0 0 2px 2px;
    -webkit-border-radius:0 0 2px 2px;
    border-radius:0 0 2px 2px
 */
}
.form_select1.bd0 {
    border:0;
}
.form_select1.parent {/* タイトル左付きボックス(親) */
    padding-left:6.2em;
}
.form_select1.parent.p0 {/* タイトル左付きボックス(親)(タイトルなし) */
    padding:0;
}
.form_select1.parent.bd0 {/* タイトル左付きボックス(親)(枠なし) */
    border:0;
}
.form_select1.parent .child:not(.dname) {/* タイトル左付きボックス(子)タイトル以外 */
}
.form_select1.parent .child.dname {/* タイトル左付きボックス(子)タイトル */
    top:1.5em;
    left:10px;
}
.form_select1.parent .child.dname.dllabel {/* タイトル左付きボックス(子)タイトル(ラインあり) */
    background:url(/img/common/icon_subt.png) no-repeat 0 2px;
    -moz-background-size:3px 12px;
    -webkit-background-size:3px 12px;
    background-size:3px 12px;
    padding-left:8px;
    font-size:12px;
    width:5.6em;
}
.form_select1.parent.dllabel_w1 {/* タイトル左付きボックス(親)(タイトル幅5文字) */
    padding-left:7em;
}
.form_select1.parent.dllabel_w1 .child.dname.dllabel {/* タイトル左付きボックス(子)タイトル(ラインあり)(タイトル幅5文字) */
    width:5.5em;
}
.form_select1.parent.dllabel_w2 {/* タイトル左付きボックス(親)(タイトル幅6文字) */
    padding-left:8em;
}
.form_select1.parent.dllabel_w2 .child.dname.dllabel {/* タイトル左付きボックス(子)タイトル(ラインあり)(タイトル幅6文字) */
    width:6.5em;
}
.form_select1.parent .child.dname.label_r2 {/* タイトル左付きボックス(子)タイトル(2行) */
    top:1em;
}

.form_select1.parent .child select {
    width:100%;
}
.form_select1.parent .child .radio_con:not(.dname):after { content: ''; display: block; clear: both; }
.form_select1.parent .child .radio_con:not(.dname) li {
    position: relative;
    list-style: none;
    float: left;
}
.form_select1.parent .child .radio_con.col2:not(.dname) li {
    width: 50%;
}
.form_select1.parent .child .radio_con.col3:not(.dname) li {
    width: 33%;
}
.form_select1.parent .child .radio_con.col3:not(.dname) li:last-child {
    width: 34%;
}
.form_select1.parent .child .radio_con:not(.dname) label {
    display: block;
    border-left: 1px solid #fff;
}
.form_select1.parent .child .radio_con:not(.dname) li:first-child label {
    -moz-border-radius: 2px 0 0 2px;
    -webkit-border-radius: 2px 0 0 2px;
    border-radius: 2px 0 0 2px;
    border-left: 0;
}

.form_select1.parent .child .radio_con:not(.dname).ac label span {
    padding:0.5em 0.2em;
}

.form_select1.parent .child .radio_con:not(.dname) li:last-child label {
    -moz-border-radius: 0 2px 2px 0;
    -webkit-border-radius: 0 2px 2px 0;
    border-radius: 0 2px 2px 0;
}

.form_select1.parent .child .radio_con:not(.dname) li:last-child label span {
    text-shadow:0 1px 0 #fff;
}

.form_select1.parent:not(.nonactive)  .child .radio_con:not(.dname) input[type="radio"]:checked + label {
    background: #d3d8ea;
    background:-webkit-gradient(linear, left top, left bottom, from(#d3d8ea), color-stop(0.1, #d3d8ea), to(#fff));
    background:-moz-linear-gradient(center top, #d3d8ea, #d3d8ea 10%, #fff);
    color:#193590;
    text-shadow:0 1px 0 #fff;
}
.form_select1.parent .child .radio_con:not(.dname) input[type="radio"] {
    opacity : 0;
    position: absolute;
    top: -3px;
    left: -3px;
    width: 100%;
    height: 100%;
    display:block;
    padding: 0;
    -webkit-tap-highlight-color:rgba(255,255,255,0);
}
/*select form3*/
.form_select3 {
    padding:0px 0px 14px 0px;
    margin:4px 0px 4px 0px;
    #padding:11px 10px;
    #border:1px solid #aaa;
    border:0px;
    background:#fff;
    height:26px;
}
.form_select3.parent .child.select_con {
    #border:1px solid #aaa;
    width:80%;
}
.form_select3.parent .child select {
    width:100%;
    padding: 0px 0px 0px 6px;
    font-size:16px;
}

/*-------- イメージ画像配置系 ----------*/
.img_con {
    width:294px;
    margin:0 auto;
}
.img_con.w1 {/*幅320px*/
    width:320px;
    margin:0 auto;
}
.img_con.w2 {/*幅100%*/
    width:100%;
    margin:0 auto;
}
.img_con.col2 {
}
.intro_img {
    margin:0;
    padding:0;
    text-align:center;
}
.intro_img .subject {
    font-size:12px;
    color:#193590;
}

.img_border {
    border:solid 2px #DFDCDC
}

/*-------- 検索結果系 --------*/
/*routesummary*/
.routesummarylist1 {
}

.routesummarylist1 .routesummary {
    padding:10px 14px;
    border-bottom:1px solid #aaa;
}
.routesummarylist1>li:not(:last-child) {
    border-color:#ddd;
}

.routesummarylist1 .data_con {
    padding:0 10px 0 35px;
}
.routesummarylist1 .icon_start.pos_l,
.routesummarylist1 .icon_goal.pos_l {
    top:2px;
}

.routesummarylist1 .route_start .data_con,
.routesummarylist1 .route_goal .data_con {
    padding-top:2px;
}
.routesummarylist1 .route_start .data_con .text1,
.routesummarylist1 .route_goal .data_con .text1 {
    font-size:18px;
}

.routesummarylist1 .route_start .line {
    height:100%;
    border-left:4px solid #193590;
}

.routesummarylist1 .route_goal .line {
    height:100%;
    border-left:4px solid #c5092f;
}

.routesummarylist2 {
    -moz-border-radius:2px;
    -webkit-border-radius:2px;
    border-radius:2px;
}
.routesummarylist2>li {
    padding-top:8px;
    padding-bottom:8px;
    padding-top:6px;
    padding-bottom:6px;
}
.routesummarylist2>li:last-child {
    border-width:0;
}
.routesummarylist2>li:not(:last-child) {
    border-color:#ddd;
}
.routesummarylist2 .text_date {
    font-size:12px;
}
.routesummarylist2 .text_start {
    font-size:18px;
    color:#193590;
    padding-right:6px;
}
.routesummarylist2 .text_to {
    padding:0 10px;
}
.routesummarylist2 .text_goal {
    font-size:18px;
    color:#c5092f;
    padding-right:6px;
}

/*-------- 凡例系 --------*/
.legendlist {
    padding-left:14px;
}
.legendlist li {
    padding-top:10px;
    margin-right:24px;
}
.legendlist .legend_item {
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
    display:-moz-box;
    display:-webkit-box;
    display:box;
}
.legendlist .legend_item .sts {
    display:block;
    margin-top:4px;
    margin-right:4px;
    width:30px;
    height:8px;
    display:-moz-box;
    display:-webkit-box;
    display:box;
    -box-pack:center;
    -moz-box-pack:center;
    -webkit-box-pack:center;
    z-index:2;
    background:none;
    vertical-align:middle;
    box-align:start;
    -moz-box-align:start;
    -webkit-box-align:start
}
.legendlist .legend_item .label {
    padding-left:2px;
}
.legendlist .legend_item .lc01 {
    background:#f12700;
}
.legendlist .legend_item .lc02 {
    background:#f08d00;
}
.legendlist .legend_item .lc03 {
    background:#03abfc;
}
.legendlist .legend_item .lc04 {
    background:#f0ee2c;
}
.legendlist .legend_item .lc05 {
    background:#000;
}

/*-------- ツールチップ1 --------*/
.tip{
    position: relative;
    z-index: 1000;
    bottom: -2px;
    left: -2px;
    display: none;
    width: 100%;
    color: #ffffff;
    background: rgba(59,62,66,0.9);
    text-align: center;
    padding: 5px;
    border: 2px solid #ffffff;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -moz-box-shadow:0 4px 4px #494949;
    -webkit-box-shadow:0 4px 4px #494949;
    box-shadow:0 4px 4px #494949;
    line-height: 1.4;
}
.tip:after{
    content: "";
    position: absolute;
    top: -9px;
    left: 0;
    width: 100%;
    height: 9px;
    background: url(/img/common/arrow_tool.png) no-repeat 50% 0;
    -moz-background-size: 13px 9px;
    -webkit-background-size: 13px 9px;
    background-size: 13px 9px;
}

/*-------- ツールチップ2 --------*/
label.error{
    position: relative;
    z-index: 1000;
    bottom: -2px;
    left: -2px;
    display: block;
    width: 100%;
    color: #ffffff;
    background: rgba(59,62,66,0.9);
    text-align: center;
    padding: 5px;
    border: 2px solid #ffffff;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -moz-box-shadow:0 4px 4px #494949;
    -webkit-box-shadow:0 4px 4px #494949;
    box-shadow:0 4px 4px #494949;
    line-height: 1.4;
}
label.error:after{
    content: "";
    position: absolute;
    top: -9px;
    left: 0;
    width: 100%;
    height: 9px;
    background: url(/img/common/arrow_tool.png) no-repeat 50% 0;
    -moz-background-size: 13px 9px;
    -webkit-background-size: 13px 9px;
    background-size: 13px 9px;
}


/*-------- 情報表示系 --------*/
/*インフォメーション*/
.linklist.information {
    border-top:1px solid #c5092f;
}
.linklist.information li {
    padding-top:6px;
    padding-bottom:6px;
    border-color:#c5092f;
}
/*バナーブロック*/
.bnrtxt1 {
    min-height:58px;
}
/*KENWOOD MapFan Club*/
.bnr_kmc {
    background-image:url(/img/common/sp_logo.png);
    background-repeat:no-repeat;
    background-position:0 0;
    -moz-background-size:200px 250px;
    -webkit-background-size:200px 250px;
    background-size:200px 250px;
    background-position: 0 -89px;
    width: 200px;
    height: 75px;
}
.bnr_kmc.ac {
    margin:0 auto;
}
.bnr_kmc span {
    display:block;
    width: 200px;
    height: 75px;
    text-indent:-9999px;
}

/*会員登録関連リンク*/
.memberlink1 {
}
.memberlink2 {
}

.memberlink2 a {
    padding-top:16px;
    padding-bottom:16px;
}

/*ローディング*/
.loadarea{
    min-height: 30px;
    padding: 20px 0;
}

.load{
    margin: 0 auto;
    width: 30px;
    height: 30px;
    background: url(/img/common/icon_load_red.png) no-repeat 0 0;
    -moz-background-size: 30px 30px;
    -webkit-background-size: 30px 30px;
    background-size: 30px 30px;
    -webkit-transform: rotate(0deg);
    -webkit-animation-play-state: running;
    -webkit-transform-origin: 50% 50%;
    -webkit-animation-name: loadanim;
    -webkit-animation-duration: 0.8s;
    -webkit-animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
}
@-webkit-keyframes loadanim{
    0%{
    -webkit-transform: rotate(0deg);
    }
    100%{
    -webkit-transform: rotate(360deg);
    }
}

/*キャンペーンバナー*/
.cmpbnr_800 {
    width:100%;
    max-width:800px;
}
.cmpbnr_640 {
    width:100%;
    max-width:640px;
}
.cmpbnr_600 {
    width:100%;
    max-width:600px;
}

/*-------- ページ共通要素 --------*/
/*メインコンテンツ*/
#contents {
    padding-bottom:25px;
}
#contents.pb0 {
    padding-bottom:0;
}
#page.page_no_con #contents .container {/*コンテンツ高さディスプレイサイズ（480px）固定*/
    display:table;
    width: 100%;
    margin-top: -56px;
    padding-bottom: 0;
}
#page.page_no_con #contents .container .con {/*コンテンツ高さディスプレイサイズ（480px）固定*/
    display:table-cell;
    height:350px;
    text-shadow: 0px 1px 1px white,0px 0px 1px white,1px 0px 1px white,0px -1px 1px white,-1px -1px 1px white,-1px 0px 1px white;
}
#page.page_no_con #contents .container .vt {/*コンテンツの上寄せ*/
    vertical-align:top;
}
#page.page_no_con #contents .container .vm {/*コンテンツの上下中央寄せ*/
    vertical-align:middle;
}


/*ヘッダー*/
#head:not(.searchhead) {
    position:relative;
    height:56px;
}

#head:not(.searchhead) .logo{
    position:absolute;
    top:10px;
    left:8px;
    background-image:url(/img/common/sp_logo.png);
    background-repeat:no-repeat;
    background-position:0 0;
    -moz-background-size:200px 250px;
    -webkit-background-size:200px 250px;
    background-size:200px 250px;
    background-position: 0 0;
    padding:0;
}

#head:not(.searchhead) .logo span {
    display:block;
    width:117px;
    height:29px;
    text-indent:-9999px;
}

/*btn_regist*/
#head:not(.searchhead) .regist {
    position:absolute;
    top:10px;
    right:12px;
}
#head:not(.searchhead) .btn_regist .label {
    display:block;
    background-position: -64px -256px;
    padding:7px 10px 7px 30px;
    text-size:24px;
    color:#fff;
}
.btn_regist_free_layout .label {
    display:block;
    background-position: -68px -378px;
    padding:7px 10px 7px 30px;
    text-size:24px;
    color:#fff;
}
.btn_regist_free_view .label {
    display:block;
    background-position: -68px -306px;
    padding:7px 10px 7px 36px;
    text-size:24px;
    color:#fff;
}

/*btn_head*/
#head:not(.searchhead) .btn_head {
    position:absolute;
    top:10px;
    right:12px;
}
/* ログインボタン */
.btn_head_login .label {
    display:block;
    background-position: -68px -1334px;
    padding:7px 10px 7px 26px;
    text-size:24px;
    color:#fff;
}
/* My設定ボタン */
.btn_head_config .label {
    display:block;
    background-position: -68px -1364px;
    padding:7px 10px 7px 26px;
    text-size:24px;
    color:#000;
}

/* キャリアログインボタン */
.btn_login {
    display: inline-block;
    width: 150px;
    height: 30px;
    margin: 20px 0;
    background: url(/img/common/carrier_id_login.png) no-repeat;
    -moz-background-size:150px 108px;
    -webkit-background-size:150px 108px;
    background-size:150px 108px;

}

.btn_login.docomo {
    background-position: 0 0px;
}

.btn_login.softbank {
    background-position: 0 -78px;
}

.btn_login.au {
    background-position: 0 -40px;
}

.area_login a{
    display: block;
}

/*ナビ*/

/*フッター*/
#foot {
    background:#fff;
    border-top:1px solid #aaa;
    border-bottom:4px solid #c5092f;
    padding:20px 0 6px;
    font-size:116.7%;
    max-width: 960px;
}
#foot.thin1 {
    border-top:0;
    padding-top:0;
}
#foot .linklist {
    padding-bottom:20px;
}
#foot .linklist li {
    padding:0;
    padding-right:8px;
}
#foot .linklist li:last-child {
    padding-right:0;
}

#foot .linklist a {
    padding-top:0;
    padding-bottom:0;
}


/*エリア内レイアウト*/
.container {
}
/*エリア共通指定*/
/*switchエリア*/
.switcharea {
    padding:15px 10px 0 10px
}
#page {
    background-color:#fff;
    background-image:url(/img/common/p_header.png);
    background-repeat:no-repeat;
    background-position:0 0;
    -moz-background-size:575px 200px;
    -webkit-background-size:575px 200px;
    background-size:575px 200px;
    border-top:4px solid #c5092f;
    overflow:hidden;
    max-width: 960px;
    margin: 0 auto 0 auto;
}
#page.nobg {
    background-image:none !important;
}
#page.page_no_con {
    background-image:url(/img/common/p_header_all.png) !important;
    -moz-background-size:575px 440px;
    -webkit-background-size:575px 440px;
    background-size:575px 440px;
}

#area1 {
}
.con {/*設定なしコンテナ*/
}
.con1 {/*内側左右に13pxの空白をもつコンテナ*/
    padding:0 13px;
}
.con2 {/*内側上下に15px左右に13pxの空白をもつコンテナ*/
    padding:15px 13px;
}
.con3 {/*内側上下に15pxの空白をもつコンテナ*/
    padding:15px 0;
}

.con_h1 {/*コンテンツ最小高さ固定1*/
    min-height:202px;
}
.con_h2 {/*コンテンツ最小高さ固定2*/
    min-height:400px;
}
/*padding*/
.pt0{
    padding-top:0
}
.pb0{
    padding-bottom:0
}
.pl0{
    padding-left:0
}
.pr0{
    padding-right:0
}
.p1{
    padding:10px
}
.pt1{
    padding-top:10px
}
.pb1{
    padding-bottom:10px
}
.pl1{
    padding-left:10px
}
.pr1{
    padding-right:10px
}
.p2{
    padding:15px
}
.pt2{
    padding-top:15px
}
.pb2{
    padding-bottom:15px
}
.pt3{
    padding-top:20px
}
.pb3{
    padding-bottom:20px
}
.pt4{
    padding-top:28px
}
.pb4{
    padding-bottom:28px
}
/*margin*/
.mt0{
    margin-top:0
}
.mb0{
    margin-bottom:0
}
.mt1{
    margin-top:10px
}
.mb1{
    margin-bottom:10px
}
.mt2{
    margin-top:15px
}
.mb2{
    margin-bottom:15px
}

/*背景テーマ色*/
.theme0 {
    background:#fff
}
.theme1 {
    background:#ebebeb;
}
.theme2 {
    background:#f5f5f5;
}
.theme3 {
    background:#FBE3D6;
}

/*--------機能別--------*/
/*枠線*/
.bd {/*上下左右に基本のグレーの枠線1*/
    border:1px solid #aaa;
}
.bd2 {/*上下左右に基本のグレーの枠線2*/
    border:1px solid #cacaca;
}
.bd3 {/*上下左右に基本の赤の枠線1*/
    border:1px solid #c5092f;
}
.bd4 {/*上下左右に基本のグレーの枠線3*/
    border:1px solid #ddd;
}
.dot {/*枠線の見た目を点線に変更*/
    border-style:dotted;
}
.bdrl {/*左右のみ線*/
    border-top:none;
    border-bottom:none;
}
.bdtb {/*上下のみ線*/
    border-right:none;
    border-left:none;
}
.bdrlb {/*左右下のみ線*/
    border-top:none;
}
.bdtrl {/*左右上のみ線*/
    border-bottom:none;
}
.bdb {/*下のみ線*/
    border-top:none;
    border-right:none;
    border-left:none;
}
.bdt {/*上のみ線*/
    border-bottom:none;
    border-right:none;
    border-left:none;
}
.bdr {/*右のみ線*/
    border-bottom:none;
    border-top:none;
    border-left:none;
}
.bdl {/*左のみ線*/
    border-bottom:none;
    border-right:none;
    border-top:none;
}
.custombd{
    border-color:#c5092f;
}
.rfrm {/*枠線角丸*/
    -webkit-border-radius:2px;
    -moz-border-radius:2px;
    border-radius:2px;
}
/*線色*/
.lc00 {
    border-color:#fff;
}
.lc01 {
    border-color:#000;
}
.lc02 {
    border-color:#33cc00;
}
.lc03 {
    border-color:#00ccff;
}
/*ボックスシャドウ*/
.sdw1 {
    position:relative;
    -moz-box-shadow:0 2px 1px #d9d9d9;
    -webkit-box-shadow:0 2px 1px #d9d9d9;
    box-shadow:0 2px 1px #d9d9d9;
}
/*テキスト略表記*/
.text_ellipsis {
    display:block;
    white-space: nowrap;
    overflow: hidden;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}

/* リンクリストの中（通常は尻切れ表示）等で改行する際に用いる */
.wrap,
.wrap p,
.wrap a {
    white-space: normal;
}

/* フォントサイズ標準指定 */
.fs_normal,
.fs_normal p,
.fs_normal a {
    font-size: 14px;
}


/* Amazonギフト用フォント指定 */
/* 「Amazon」 */
.ff_amazon_logo {
    font-family: Verdana;
}

/* 「ギフト券」 */
.ff_amazon_gift {
    font-family: "MS Pゴシック", sans-serif;
}

/* インラインブロック指定 */
.dib {
    display: inline-block;
}

/*-----------------------------
-----------------------------*/


/*------ JS用 ------*/
/*エキスパンド*/
.expand-content {/*非表示に設定されるエリア*/
    display:none
}
/*非アクティブのformブロック*/
.nonactive.form_input1,
.nonactive.form_select1 {
    color:#d2d2d2;
}
.nonactive.form_input1 input,
.nonactive.form_input1 label,
.nonactive.form_select1 select,
.nonactive.form_select1 label {
    color:#d2d2d2;
}

/*非アクティブのボタン*/
.button.nonactive {
    border-color:#c1c1c1;
    background:#c1c1c1;
    -moz-box-shadow:none;
    -webkit-box-shadow:none;
    box-shadow:none;
    text-shadow:0 -1px 0 #9a9a9a
}
.button.nonactive .label {
    border-color:#c1c1c1;
    color:#fff;
    text-shadow:0 -1px 0 #9a9a9a
}

/*画面全体ローティング*/
#overlayload {
    position: fixed;
    z-index: 10000;
    top: -100px;
    left: -5px;
    width: 105%;
    height: 1000%;
    min-height: 418px; /* for iOS */
    background: rgba(0,0,0,0.9);
}
#overlayload .load{
    position: relative;
    top: 300px;
    left: 50%;
    margin: -15px 0 0 -15px;
    background: none;
}
#page.loading a{
    -webkit-tap-highlight-color: rgba(0,0,0,0); /* for Android */
}


/**
 * ----------------------------------------------------------------------------------------------
 *
 * 2012年11月2日 納品用記述
 *  -- TOP 黒帯 タイトル パターン追加
 *
 * ----------------------------------------------------------------------------------------------
 */
/*subtitle_a_blk*/
.subt_a_blk {
    border-left:4px solid #c5092f;
}
.subt_a_blk .label {
    border-top:1px solid #333333;
    border-bottom:1px solid #333333;
    background:-webkit-gradient(linear, left top, left bottom, from(#666), color-stop(0.05, #666), color-stop(0.05, #333), to(#666));
    background:-moz-linear-gradient(center top, #666, #666 5%, #333 5%, #666);
    padding:4px 10px 3px 13px;
    font-size:16px;
    color: #ffffff;
    text-shadow: 0 -1px 0 #000;
}
.subt_a_blk .label .subtext {
    color: #cccccc;
}

/*subt_e*/
.subt_e {
    position: relative;
    border-top:1px solid #aaaaaa;
    border-bottom:3px solid #d9d9d9;
}
.subt_e .label {
    background:-webkit-gradient(linear, left top, left bottom, from(#efefef),  to(#fefefe));
    background:-moz-linear-gradient(center top, #efefef, #fefefe);
    border-top:2px solid #ffffff;
    border-bottom:3px solid #c5092f;
    padding:4px 10px 4px 16px;
    font-size:18px;
    color: #333333;
}
.subt_e .label .subtext {
    color: #333333;
}

.subt_e .label:before {
    content: '';
    position: absolute;
    top: 8px;
    left: 5px;
    width: 4px;
    height: 19px;
    border-top: 1px solid #b40b38;
    background: #a90418;
    background:-webkit-gradient(linear, left top, left bottom, from(#e00d45),  to(#a90418));
    background:-moz-linear-gradient(center top, #e00d45, #a90418);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}


/* ▼::::: TOP ルート検索／地図 タブ 切り替え ナビゲーション :::::▼ */
.tabs.col_top{
    padding: 0 8px 0 8px;
    border-bottom: 1px solid #bcbcbc;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.tabs.col_top li{
    width: 70px;
    margin-bottom: -1px;
    background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.5, #ffffff), color-stop(0.5, #e5e6e6), to(#ffffff) );
    background: -moz-linear-gradient(center top, #ffffff, #ffffff 50%, #e5e6e6 5%, #ffffff);
}
    .tabs.col_top li p{
    position: relative;
    border-bottom: none;
    }
    .tabs.col_top li.selected p{
    border-bottom: 1px solid #fff;
    }
    .tabs.col_top li a{
    text-indent:100%;
    white-space:nowrap;
    overflow:hidden;
    padding: 12px 0;
    }
    .tabs.col_top li a:before{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    background-position: 0 0;
    background-repeat: no-repeat;
    }

    /* タブ */
    .tabs.col_top li#tab_car a:before,
    .tabs.col_top li#tab_car.selected a:before,
    .tabs.col_top li#tab_bicycle a:before,
    .tabs.col_top li#tab_bicycle.selected a:before,
    .tabs.col_top li#tab_trainbus a:before,
    .tabs.col_top li#tab_trainbus.selected a:before,
    .tabs.col_top li#tab_map a:before,
    .tabs.col_top li#tab_map.selected a:before
    {
        background-image: url(/img/common/sp_top_tab.png);
        -moz-background-size: 130px 120px;
        -webkit-background-size: 130px 120px;
        background-size: 130px 120px;
        background-repeat: no-repeat;
    }

/* 車 */
.tabs.col_top li#tab_car{
    width: 30%;
}
.tabs.col_top li#tab_car p{
    border-left-width: 1px;
}
.tabs.col_top li#tab_car p,
.tabs.col_top li#tab_car a{
    -webkit-border-radius:4px 0 0 0;
    -moz-border-radius:4px 0 0 0;
    border-radius:4px 0 0 0;
}

    .tabs.col_top li#tab_car a:before{
        margin: -15px 0 0 -32px;
        width: 65px;
        height: 30px;
        background-position: 0 0;
    }
    .tabs.col_top li#tab_car.selected a:before{
        background-position: -65px 0;
    }


/* 自転車 */
.tabs.col_top li#tab_bicycle{
    width: 30%;
}
    .tabs.col_top li#tab_bicycle a:before{
        margin: -15px 0 0 -32px;
        width: 65px;
        height: 30px;
        background-position: 0 -30px;
    }
    .tabs.col_top li#tab_bicycle.selected a:before{
        background-position: -65px -30px;
    }

/* 電車・バス */
.tabs.col_top li#tab_trainbus{
    width: 29%;
}
    .tabs.col_top li#tab_trainbus p,
    .tabs.col_top li#tab_trainbus a{
        -webkit-border-radius: 0 4px 0 0;
        -moz-border-radius:0 4px 0 0;
        border-radius:0 4px 0 0;
    }
    .tabs.col_top li#tab_trainbus a:before{
        margin: -15px 0 0 -32px;
        width: 65px;
        height: 30px;
        background-position: 0 -60px;
    }
    .tabs.col_top li#tab_trainbus.selected a:before{
        background-position: -65px -60px;
    }

/* 地図 */
.tabs.col_top li#tab_map{
    width: 33%;
    float: right;
}
    .tabs.col_top li#tab_map p{
    border-left-width: 1px;
    border-right-width: 1px;
    }
    .tabs.col_top li#tab_map p,
    .tabs.col_top li#tab_map a{
    -webkit-border-radius:4px 4px 0 0;
    -moz-border-radius:4px 4px 0 0;
    border-radius:4px 4px 0 0;
    }

    .tabs.col_top li#tab_map a:before{
        margin: -15px 0 0 -32px;
        width: 65px;
        height: 30px;
        background-position: 0 -90px;
    }
    .tabs.col_top li#tab_map.selected a:before{
        background-position: -65px -90px;
    }

/* ▼::::: TOP ルート検索／地図 タブ 切り替え コンテンツ :::::▼ */
.route_con{
    display: table;
    width: 100%;
    padding: 20px 8px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.route_con .reverse{
    display: table-cell;
    width: 32px;
    vertical-align: middle;
}

    /* 入れ替えボタン */
    .route_con .reverse .button {
    position: relative;
    text-indent:100%;
    white-space:nowrap;
    overflow:hidden;
    width: 24px;
    height: 40px;
    }
    .route_con .reverse .button a:after{
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        margin: -14px 0 0 -6px;
        width: 12px;
        height: 28px;
        background-position: -73px -584px;
    }

.route_con .route{
    position: relative;
    display: table-cell;
}


/* フォーム下部マージン */
.route_con .input_con{
    margin-bottom: 10px;
}
/* 最後のフォーム(ゴール) だけ上部に5px 追加 合計15pxのマージン */
.route_con .route > .form_inputs1:last-child{
    position: relative;
    padding-top: 5px;
}
.route_con .route > .form_inputs1:last-child .input_con{
    margin-bottom: 0;
}

/* TOP ルート検索 ／ 地図 フォーム */
.route_con .input_con,
.route_con .inputtext,
#style-map .input_con,
#style-map .inputtext{
    height: 37px;
}

#style-map .input_con,
.route_con .input_con{
    padding-right:44px;
}

#style-map .input_con input,
.route_con .input_con input,
#style-map .input_con input:focus,
.route_con .input_con input:focus{
    outline: none;
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
}


/* スタート／ゴール アイコン */
.route_con .input_con .pos_l {
    top: 8px;
}

.route_con .form_inputs2.parent{
    margin-right: 0;
}

/* ×ボタン位置調整 */
.route_con .form_inputs2.parent .child.button.pos_l{
    top: 10px;
}


/* ブックボタン*/
#style-map .input_con .btn_a,
#style-route .input_con .btn_a{
    -moz-box-shadow:0 2px 1px #d9d9d9;
    -webkit-box-shadow:0 2px 1px #d9d9d9;
    box-shadow: 0 2px 1px #d9d9d9;
}


/* ブックボタン位置調整 */
.route_con .input_con .pos_r,
#style-map .input_con .pos_r{
    top: 4px;
    right: 4px;
}
.route_con .input_con .btn_a a{
    display: block;
    padding: 14px 17px;
    background-position: -65px -439px;
}


/* 経由地追加 */
.route_con .btn_add{
    position: absolute;
    z-index: 200;
    bottom: 15px;
    right: 50px;
    text-indent:100%;
    white-space:nowrap;
    overflow:hidden;
}
.route_con .btn_add a{
    display: block;
    width: 66px;
    height: 66px;
    background-position: -54px -490px;
}

/* 経路検索共通
----------------------------------------- */
#con_car .con1,
#con_bicycle .con1,
#con_trainbus .con1{
    padding-right: 8px;
    padding-left: 8px;
}

/* クルマ
-------------------------- */

/* 徒歩／自転車
-------------------------- */

/* 電車／バス／徒歩
-------------------------- */
.settime ul{
    display: table;
    width: 100%;
}
.settime ul li{
    display: table-cell;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.settime ul li .select{
    width: 100%;
}
.settime ul li.setdate{
    width: 45%;
    padding-right: 8px;
}
.settime ul li.sethours{
    width: 29%;
    padding-right: 8px;
}
.settime ul li.setminute{
    width: 26%;
}

#con_trainbus .form_inputs1.parent{
    margin-right: 40px;
}
#con_trainbus .form_inputs1.parent .child.button {
    right:-37px;
}

#con_trainbus .tabs.col2 li{
    font-size: 100%;
}

#con_trainbus ul.checkbox_con{
    display: table;
    width: 160px;
}
#con_trainbus ul.checkbox_con li{
    display: table-cell;
    width: 80px;
}

/* 優先手段の見出しだけ例外位置調整 */
#con_trainbus .form_select1:last-child .child.dname{
    top: 14px;
}

#con_trainbus ul.checkbox_con li label{
    padding-left: 6px;
    vertical-align: middle;
}

#con_trainbus .caption{
    padding-top: 15px;
}

/* ▼::::: TOP 地図タブ :::::▼ */
#style-map .form_inputs1{
    padding: 0 24px;
}
#style-map  .input_con .btn_a a{
    display: block;
    padding: 14px 17px;
    background-position: -65px -439px;
}
/* 周辺検索 */
#style-map .con4{
    padding: 10px 8px 17px;
}
    #style-map .ttl_b{
    padding: 0 0 10px;
    background-color: transparent;
    }
    #style-map .title .label {
    border-top: none;
    }

#style-map .linklist{
    padding: 0;
    background-color: transparent;
}
#style-map .linklist li{
    -moz-box-pack:center;
    -webkit-box-pack:center;
    box-pack:center;
}
#style-map .linklist li:last-child{
    margin-right: 0;
}
#style-map .lineup_btn .linklist li .btn_lineup a{
    height: 58px;
    font-size: 11px;
}
#style-map .lineup_btn .linklist li .btn_lineup a span{
    font-size: 11px;
    top: 42px;
}

/* 周辺検索 アイコン設定 */
#style-map .lineup_btn .linklist li .btn_lineup a:before{
    content: '';
    position: absolute;
    top: 2px;
    left: 50%;
    margin: 0 0 0 -17px;
    width: 34px;
    height: 53px;
    z-index: 100;
    background-image:url(/img/common/sp_icon_facility.png);
    -moz-background-size: 70px 795px;
    -webkit-background-size: 70px 795px;
    background-size: 70px 795px;
    background-repeat: no-repeat;
}
    /* 駅 */
    #style-map .btn_search_station a:before{
        background-position: -2px -152px;
    }
    /* バス停 */
    #style-map .btn_search_bus a:before{
        background-position: -2px -208px;
    }
    /* コンビニ */
    #style-map .btn_search_convenience a:before{
        background-position: 0 -256px;
    }
    /* ATM */
    #style-map .btn_search_atm a:before{
        background-position: 0 -312px;
    }
    /* カフェ */
    #style-map .btn_search_cafe a:before{
        background-position: 0px -362px;
    }
    /* グルメ */
    #style-map .btn_search_gourmet a:before{
        background-position: 0 -420px;
    }
    /* ｼｮｯﾋﾟﾝｸﾞ */
    #style-map .btn_search_shopping a:before{
        background-position: -4px -474px;
    }
    /* ファミレス*/
    #style-map .btn_search_family a:before{
        background-position: -2px -525px;
    }
    /* 携帯ショップ */
    #style-map .btn_search_tel a:before{
        background-position: -1px -578px;
    }
    /* 公共施設 */
    #style-map .btn_search_public a:before{
        background-position: -2px -628px;
    }
    /* その他 */
    #style-map .btn_search_other a:before{
        background-position: -2px -670px;
    }


/* ▼::::: マイスポット・スポット履歴 例外タブ 指定 :::::▼ */
.tabs-rd {
    display: table;
    width:100%;
    margin-bottom: -1px;
    font-size: 17px;
}
.tabs-rd li{
    display: table-cell;
    width: 50%;
    border: 1px solid #aaaaaa;
    border-right-width: 0;
    background:none;
    background:-webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.5, #fff), color-stop(0.55, #e5e6e6), color-stop(0.90, #e5e6e6), to(#fff));
    background:-moz-linear-gradient(center top, #fff 50%, #e5e6e6 55%, #e5e6e6 90%, #fff);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.tabs-rd li p{
    position: relative;
}
.tabs-rd li p{
    position: relative;
}
.tabs-rd li:first-child{
    -webkit-border-radius: 7px 0 0 0;
    -moz-border-radius: 7px 0 0 0;
    border-radius: 7px 0 0 0;
}
    .tabs-rd li:first-child a{
        -webkit-border-radius: 6px 0 0 0;
        -moz-border-radius: 6px 0 0 0;
        border-radius: 6px 0 0 0;
    }
.tabs-rd li:last-child{
    border-right-width: 1px;
    -webkit-border-radius: 0 7px 0 0;
    -moz-border-radius: 0 7px 0 0;
    border-radius: 0 7px 0 0;
}
.tabs-rd li:last-child a{
    -webkit-border-radius: 0 6px 0 0;
    -moz-border-radius: 0 6px 0 0;
    border-radius: 0 6px 0 0;
}
.tabs-rd li a{
    display: block;
    padding:0.3em 0.4em;
    border:2px solid #fff;
    border-bottom-width: 0;
}
.tabs-rd li.selected {
    border-bottom: 1px solid #ffffff;
}
.tabs-rd li.selected a {/*選択されたタブ*/
    background: #d3d8ea;
    background:-webkit-gradient(linear, left top, left bottom, from(#d3d8ea), color-stop(0.1, #d3d8ea), to(#fff));
    background:-moz-linear-gradient(center top, #d3d8ea, #d3d8ea 10%, #fff);
    color:#193590;
    text-shadow:0 1px 1px #fff;
    display:block;
}
.tabs-rd li.selected a:after{
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 2px;
    background: #ffffff;
}

/* ▼::::: マイスポット・時刻表・運行情報 チェックボックス付リスト :::::▼ */
.linklist-ckbx li{
    position: relative;
    width: 100%;
    border-bottom: 1px solid #aaaaaa;
}
.linklist-ckbx li:first-child{
    border-top: 1px solid #aaaaaa;
}
.linklist-ckbx li .ckbx{
    position: absolute;
    top: 14px;
    left: 8px;
    text-align: center;
}
.linklist-ckbx li .abs{
    padding-right: 51px;
    padding-left: 43px;
}
/* 編集ボタンがない場合 */
.linklist-ckbx li > div.abs:last-child{
    padding-right: 0;
}
.linklist-ckbx li div.btn{
    position: absolute;
    top: 0;
    right: 0;
    width: 51px;
    height: 100%;
    border-left: 1px solid #dfdfdf;
    padding: 10px 0 0 8px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
/* 新規路線 追加ボタンの場合 */
.linklist-ckbx li > .abs:first-child + div.btn{
    border-left: none;
}
.linklist-ckbx li div.abs .label{
    position: relative;
    display: block;
    padding-top: 15px;
    padding-bottom: 15px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.linklist-ckbx li div.abs a.label{
    padding-right: 30px;
}
.linklist-ckbx li .abs .label div{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.linklist-ckbx li .abs a.label div:after{
    content: '';
    position: absolute;
    top: 50%;
    right: 8px;
    width: 9px;
    height: 13px;
    margin-top: -6px;
    background-repeat:no-repeat;
    background-position: 0 0;
    background-image:url(/img/common/icon_arrow_m.png);
    -moz-background-size:9px 13px;
    -webkit-background-size:9px 13px;
    background-size:9px 13px;
}



/**
 * ----------------------------------------------------------------------------------------------
 *
 *  時刻表詳細ページ（time_4.html）用スタイル
 *
 * ----------------------------------------------------------------------------------------------
 */

.timetable-container .timetable-detail{
    border-top: 1px solid #aaaaaa;
}

/*	路線カラー
----------------------------------------------------------- */
.timetable-container .yamanote{border-bottom-color:#53bd14;}

/* カラーパターンはここに追記 */




/*	駅名
----------------------------------------------------------- */
.timetable-container .stationwrap{
    padding: 10px 8px 0px 8px;
}
.timetable-container .station{
    position: relative;
    display: table;
    width: 100%;
    border: 1px solid #aaaaaa;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-color:#ffffff;
}
.timetable-container .station h1{
    font-size:23px;
    font-weight:bold;
    color:#333333;
    border-bottom-width:5px;
    border-bottom-style:solid;
    text-align:center;
    padding:7px 5px;
}

.timetable-container .station p{
    font-size:15px;
    color:#333333;
    text-align:center;
    padding:10px 5px;
        }




/*	方面／登録ボタン
----------------------------------------------------------- */

.timetable-container .timetable-detail .selecttime{
    position: relative;
    height:40px;
    padding: 15px 86px;
    display:block;
}

.timetable-container .btn_entry a::after{
    content: '';
    position: absolute;
    top: 50%;
    width: 9px;
    height: 14px;
    margin-top: -6px;
    background-repeat: no-repeat;
    -webkit-background-size: 9px 14px;
    -moz-background-size: 9px 14px;
    background-size: 9px 14px;
    background-position: 0 0;
}
/* 方面 */
.timetable-container .btn_prev{
    position: absolute;
    top: 15px;
    right: 8px;
    width:190px;
}
.timetable-container .btn_prev a.label{
    display: block;
    padding: 0px 22px 0px 13px;
    font-size: 14px;
    height:40px;
    line-height:40px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.timetable-container .btn_prev a::before{
    content: '';
    position: absolute;
    top: 50%;
    right: 8px;
    width: 9px;
    height: 13px;
    margin-top: -6px;
    background:url(/img/common/icon_arrow_m.png) no-repeat 99.5% 50%;
    -moz-background-size:9px 13px;
    -webkit-background-size:9px 13px;
    background-size:9px 13px;
}
/* 登録 */
.timetable-container .btn_entry{
    position: absolute;
    top: 15px;
    left: 8px;
}
.timetable-container .btn_entry a.label{
    display: block;
    padding: 0px 22px 0px 13px;
    font-size: 14px;
    height:40px;
    line-height:40px;
}
.timetable-container .btn_entry a::after{
    right: 5px;
}


/*	駅選択
----------------------------------------------------------- */
.timetable-container .selectstation{
    padding:0px 30px 20px 30px;
    text-align:center;
}
.timetable-container .selectstation select{
    width:100%;
    height:40px;
}


/*	タブ メニュー
----------------------------------------------------------- */
.timetable-container ul.tabs{
    margin-bottom:5px;
}
/* 土曜日 */
.timetable-container ul.tabs li.selected.tab2 a{
    background:-webkit-gradient(linear, left top, left bottom, from(#d2e1f1), color-stop(0.1, #d2e1f1), to(#fff));
    background:-moz-linear-gradient(center top, #d2e1f1, #d2e1f1 10%, #fff);
}
.timetable-container ul.tabs li.tab2 a.saturday{
        color:#1665b6;
    }
/* 休日 */
.timetable-container ul.tabs li.selected.tab3 a{
    background:-webkit-gradient(linear, left top, left bottom, from(#f4d0d7), color-stop(0.1, #f4d0d7), to(#fff));
    background:-moz-linear-gradient(center top, #f4d0d7, #f4d0d7 10%, #fff);
}
.timetable-container ul.tabs li.tab3 a.holiday{
        color:#c5092f;
    }

/*	時刻表 - 詳細
----------------------------------------------------------- */
.timetable-container #timetable1, .timetable-container #timetable2, .timetable-container #timetable3{
    border-top:#aaaaaa 1px solid;
}
.timetable-container #timetable2 .subt_b{background-color:#1665b6;}
.timetable-container #timetable3 .subt_b{background-color:#c5092f;}

.timetable-container .timetable-wrap h2{
    border-top:#ffffff 1px solid;
}
.timetable-container .timetable-wrap h2 .label{
    font-weight: bold;
}

.timetable-container .timetable-wrap div.cts-all{
    background-color:#ffffff;
    padding:5px 0px 10px 10px;
}
.timetable-container .timetable-wrap div.cts-all a{
    display:block;
    background-image:url(/img/common/toggle_open.png);
    background-repeat:no-repeat;
    background-position:right 50%;
    -moz-background-size:20px 22px;
    -webkit-background-size:20px 22px;
    background-size:20px 22px;
    width:98%;
}
.timetable-container .timetable-wrap div.open{
    background-color:#f2f2f2;
}
.timetable-container .timetable-wrap div.open a{
    background-image:url(/img/common/toggle_close.png);
}
.timetable-container .timetable-wrap div.cts-all ul{
    margin-right:20px;
}
.timetable-container .timetable-wrap div.cts-all ul li{
    float:left;
    width:46px;
    text-align:left;
    padding-top:4px;

}
.timetable-container .timetable-wrap div.cts-all ul li p{
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius:3px;
    width:70%;
    padding:1px 2px;
    font-weight: bold;
    font-size:15px;
}
.timetable-container .timetable-wrap div.cts-all ul li span{
    font-size:9px;
    padding:0px 0px 2px 2px;
    font-weight: normal;
    vertical-align:top;
}

.timetable-container .timetable-wrap div.cts-all ul li p.exp{
    color:#c5092f;
}

.timetable-container .timetable-wrap div.cts-all ul li.stay p{
    background-color:#333333;
    color:#ffffff;
    text-align:center;
}
.timetable-container .timetable-wrap div.cts-all ul li.stay p.exp{
    background-color:#c5092f;
    color:#ffffff;
}


.timetable-container .timetable-wrap div.cts-list{
    display:none;
}
.timetable-container .timetable-wrap div.open{
    display:block;
}
.timetable-container .timetable-wrap div.cts-list ul li{
    display: table;
    width: 100%;
    border-top:#dddddd 1px solid;
    padding:6px 10px 6px 10px;
    background-color:#ffffff;
}
.timetable-container .timetable-wrap div.cts-list ul li p.time{
    display: table-cell;
    vertical-align: middle;
    width: 88px;
    font-size:24px;
    line-height:40px;
    font-weight:bold;
    font-family: Helvetica;
    text-align:left;
}
.timetable-container .timetable-wrap div.cts-list ul li div{
    display: table-cell;
    vertical-align: middle;
    text-align:left;
    width: 100%;
    padding-left:20px;
}
.timetable-container .timetable-wrap div.cts-list ul li p{
    line-height:20px;
    font-size: 16px;
}
.timetable-container .timetable-wrap div.cts-list ul li p.exp{
    color:#c5092f;
}

.timetable-container #contents.pb0{
    border-top:#aaaaaa 1px solid;
}

.listcomment {
    font-size:75%;
    color:#888;
    margin-left:10px;
    margin-top:5px;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}
.kankou span {
    position: relative;
}
.kankou span:nth-of-type(1):after {
    content: "";
    display: block;
    position: absolute;

    background-image: url(/img/common/icon_kankou.png);
    background-size: 18px 18px;
    width: 18px;
    height: 18px;

    top: 0px;
    right: -28px;
}


/* ---------------------------------------------------------------------------------------
    観光楽地図スポット詳細
--------------------------------------------------------------------------------------- */

#flickKankou {
    background-color: #fff;
}

#flickKankou .img p {
    height: 200px;
    line-height: 200px;
}

#flickKankou .img p img {
    max-width: 360px;
    max-height: 200px;
}

#flickKankou .txt p {
    width: 260px;
    margin: auto;
    background-color: #eee;
}

#flickKankou {
    width: 100%;
    position: relative;
    overflow: auto;
}

#flickKankou ul {
    display: block;
    width: 400%;
    margin: 0;
    padding: 10px 0;
    text-align: center;
}

#flickKankou ul li {
    float: left;
    list-style-type: none;
    width: 25%;
    height: 250px;
}
ul.flickNav {
    margin: 10px 0;
    position: relative;
    left: 50%;
    float: left;
}
ul.flickNav li {
    float: left;
    display: inline;
    margin-right: 6px;
    margin-bottom: 6px;
    position: relative;
    left: -50%;
}
ul.flickNav li a {
    display: block;
    width: 30px;
    height: 30px;
    background-color: #ccc;
    background-size: 30px;
    background-repeat: no-repeat;
    background-position-y: 3px;

  border: 2px solid white;
}
ul.flickNav li.selected a {
    border-color: #ab0829;
}
ul.flickBtn li {
    padding: 5px 8px 5px 8px;
    display: inline;
    background-color: #ab0829;
    color: #fff;
    cursor: pointer;
    border-radius: 3px;
}
ul.flickBtn li.off {
    display: none;
}
ul.flickBtn li.prev {
    float: left;
}
ul.flickBtn li.next {
    float: right;
}


/* ---------------------------------------------------------------------------------------
    アコーディオンリスト系
--------------------------------------------------------------------------------------- */

/* ヘッダー部 */
.acd_head {
    font-size: 16px;
    padding: 12px 10px;
    border-bottom: 1px solid #aaa;
    background:-webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.3, #fff), to(#f0f0f0));
    background:-moz-linear-gradient(center top, #fff, #fff 30%, #f0f0f0);

}
/* アコーディオンオープン時は背景色をグレーに */
.acd_head.open {
    background-color: #cccccc;
}


.icon_arrow {
    background-image:url(/img/common/icon_arrow_m.png);
    background-repeat:no-repeat;
    -moz-background-size:9px 13px;
    -webkit-background-size:9px 13px;
    background-size:9px 13px;

    display: block;
    position: absolute;
    bottom: 10px;
    right: 7px;
    width: 21px;
    height: 21px;

    border-color: grey;
    border-width: 1px;
    border-style: solid;
    border-radius: 12px;
    background-position: 7px 4px;
    background-color: #fff;

    -webkit-transform-origin:50% 50%;
    -webkit-transform: rotate(90deg);

}

.open .icon_arrow {
    -webkit-transform: rotate(270deg);
}

.rotate {
    -webkit-animation-name: 'rotate_open';
    -webkit-animation-duration: 0.2s;
}
.open .rotate {
    -webkit-animation-name: 'rotate_close';
    -webkit-animation-duration: 0.2s;
}

@-webkit-keyframes 'rotate_open'{
  0% { -webkit-transform: rotate(90deg);}
  100% { -webkit-transform: rotate(270deg);}
}

@-webkit-keyframes 'rotate_close'{
  0% { -webkit-transform: rotate(270deg);}
  100% { -webkit-transform: rotate(90deg);}
}

/* -------------------------------------------------------------------------------------*/

/* -------------------------------------------------------------------------------------*/
/* トクー対応追加 */

.bold {
    font-weight: bold;
}

.subt_d .label2 {
    border-top:0;
    padding:0px 7px 0px 10px;
}

ul#tkrg li{
    padding-left: 1.0em;
    text-indent: -1.0em;
    margin-bottom: 5px;
}

.btn_tk {
    border-radius: 20px 20px;
    background-color: #c5092f;
}

.btn_tk .label{
    color: #ffffff;
}
.btn_taikai {
    display: inline-block;
    border-color: #aaaaaa;
    background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.5, #ffffff), color-stop(0.5, #e5e6e6), to(#ffffff) );
    background: -moz-linear-gradient(center top, #ffffff, #ffffff 50%, #e5e6e6 5%, #ffffff);
    border: 2px solid #bbb;
    color: #c5092f;
    font-weight: bold;
    padding: 0 2px;
    margin-right: 5px;
}
/* -------------------------------------------------------------------------------------*/
