@charset "utf-8";

/**
 * BootstrapのイケテないNavbarにスタイル適用。センターリング(justified)などについて
 * http://shared-blog.kddi-web.com/webinfo/12
 */
.navbar .nav {
    margin: 0;
    display: table;
    width: 100%;
}
.navbar .nav li {
    display: table-cell;
    float: none;
    width: 20%;
}
.navbar .nav li a {
    /*    font-weight: bold;*/
    text-align: center;
    padding-top: .2em;
    padding-bottom: .2em;
}
.navbar .nav li i {
    font-size: 10px;
}

.navbar-custom {
    background-color: #1284b5;
    border-color: #0f6e97;
    background-image: -webkit-gradient(linear, left 0%, left 100%, from(#17a6e3), to(#1284b5));
    background-image: -webkit-linear-gradient(top, #17a6e3, 0%, #1284b5, 100%);
    background-image: -moz-linear-gradient(top, #17a6e3 0%, #1284b5 100%);
    background-image: linear-gradient(to bottom, #17a6e3 0%, #1284b5 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff17a6e3', endColorstr='#ff1284b5', GradientType=0);
  }
  .navbar-custom .navbar-brand {
    color: #ffffff;
  }
  .navbar-custom .navbar-brand:hover,
  .navbar-custom .navbar-brand:focus {
    color: #e6e6e6;
    background-color: transparent;
  }
  .navbar-custom .navbar-text {
    color: #ffffff;
  }
  .navbar-custom .navbar-nav > li:last-child > a {
    border-right: 1px solid #0f6e97;
  }
  .navbar-custom .navbar-nav > li > a {
    color: #ffffff;
    border-left: 1px solid #0f6e97;
  }
  .navbar-custom .navbar-nav > li > a:hover,
  .navbar-custom .navbar-nav > li > a:focus {
    color: #c0c0c0;
    background-color: transparent;
  }
  .navbar-custom .navbar-nav > .active > a,
  .navbar-custom .navbar-nav > .active > a:hover,
  .navbar-custom .navbar-nav > .active > a:focus {
    color: #c0c0c0;
    background-color: #0f6e97;
    background-image: -webkit-gradient(linear, left 0%, left 100%, from(#0f6e97), to(#1490c5));
    background-image: -webkit-linear-gradient(top, #0f6e97, 0%, #1490c5, 100%);
    background-image: -moz-linear-gradient(top, #0f6e97 0%, #1490c5 100%);
    background-image: linear-gradient(to bottom, #0f6e97 0%, #1490c5 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0f6e97', endColorstr='#ff1490c5', GradientType=0);
  }
  .navbar-custom .navbar-nav > .disabled > a,
  .navbar-custom .navbar-nav > .disabled > a:hover,
  .navbar-custom .navbar-nav > .disabled > a:focus {
    color: #cccccc;
    background-color: transparent;
  }
  .navbar-custom .navbar-toggle {
    border-color: #dddddd;
  }
  .navbar-custom .navbar-toggle:hover,
  .navbar-custom .navbar-toggle:focus {
    background-color: #dddddd;
  }
  .navbar-custom .navbar-toggle .icon-bar {
    background-color: #cccccc;
  }
  .navbar-custom .navbar-collapse,
  .navbar-custom .navbar-form {
    border-color: #0f6c95;
  }
  .navbar-custom .navbar-nav > .dropdown > a:hover .caret,
  .navbar-custom .navbar-nav > .dropdown > a:focus .caret {
    border-top-color: #c0c0c0;
    border-bottom-color: #c0c0c0;
  }
  .navbar-custom .navbar-nav > .open > a,
  .navbar-custom .navbar-nav > .open > a:hover,
  .navbar-custom .navbar-nav > .open > a:focus {
    background-color: #0f6e97;
    color: #c0c0c0;
  }
  .navbar-custom .navbar-nav > .open > a .caret,
  .navbar-custom .navbar-nav > .open > a:hover .caret,
  .navbar-custom .navbar-nav > .open > a:focus .caret {
    border-top-color: #c0c0c0;
    border-bottom-color: #c0c0c0;
  }
  .navbar-custom .navbar-nav > .dropdown > a .caret {
    border-top-color: #ffffff;
    border-bottom-color: #ffffff;
  }
  @media (max-width: 767) {
    .navbar-custom .navbar-nav .open .dropdown-menu > li > a {
      color: #ffffff;
    }
    .navbar-custom .navbar-nav .open .dropdown-menu > li > a:hover,
    .navbar-custom .navbar-nav .open .dropdown-menu > li > a:focus {
      color: #c0c0c0;
      background-color: transparent;
    }
    .navbar-custom .navbar-nav .open .dropdown-menu > .active > a,
    .navbar-custom .navbar-nav .open .dropdown-menu > .active > a:hover,
    .navbar-custom .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #c0c0c0;
      background-color: #0f6e97;
    }
    .navbar-custom .navbar-nav .open .dropdown-menu > .disabled > a,
    .navbar-custom .navbar-nav .open .dropdown-menu > .disabled > a:hover,
    .navbar-custom .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #cccccc;
      background-color: transparent;
    }
  }
  .navbar-custom .navbar-link {
    color: #ffffff;
  }
  .navbar-custom .navbar-link:hover {
    color: #c0c0c0;
  }
/**
 * Bootstrapを使ってみる。フッター編（Sticky footer）
 * http://mizukazu.minibird.jp/bootstrap-stickyfooter/
 */
html {
    position: relative;
    min-height: 100%;
}
body {
/*    margin-bottom: 100px;*/
}
footer {
    position: absolute;
    bottom: 0;
    width: 100%;
/*    height: 80px; */
    color: #ffffff;
    background-color: #1e73be;
    font-size: 16px;
    text-align: right;
    padding-top: .4em;
    padding-bottom: .4em;
}
footer b {
    font-size: 18px;
}

/**
 * Bootstrapサイトの説明欄のCSSについて
 * http://qiita.com/village/items/55899ababd81474aef5e
 */
.bs-callout {
    /*    padding: 20px;*/
    padding: .2em 1em;
    /*    margin: 20px 0; */
    margin: 1em 0;
    border: 1px solid #eee;
    border-left-width: 4px;
    border-radius: 3px;
}
.bs-callout h4 {
    margin-top: 5px;
    margin-bottom: 5px;
}
.bs-callout p:last-child {
    margin-bottom: 0;
}
.bs-callout code {
    border-radius: 3px;
}
.bs-callout+.bs-callout {
    margin-top: -5px;
}
.bs-callout-default {
    border-left-color: #777;
}
.bs-callout-default h4 {
    color: #777;
}
.bs-callout-primary {
    border-left-color: #428bca;
}
.bs-callout-primary h4 {
    color: #428bca;
}
.bs-callout-success {
    border-left-color: #5cb85c;
}
.bs-callout-success h4 {
    color: #5cb85c;
}
.bs-callout-danger {
    border-left-color: #d9534f;
}
.bs-callout-danger h4 {
    color: #d9534f;
}
.bs-callout-warning {
    border-left-color: #f0ad4e;
}
.bs-callout-warning h4 {
    color: #f0ad4e;
}
.bs-callout-info {
    border-left-color: #5bc0de;
}
.bs-callout-info h4 {
    color: #5bc0de;
}

/**
 * CSS3 Flexbox の各プロパティの使い方をヴィジュアルで詳しく解説
 * http://coliss.com/articles/build-websites/operation/css/css3-flexbox-properties-by-scotch.html
 */
.flex-row {
    display: -webkit-flex;                  /* Safari */
    display: flex;
    -webkit-flex-direction: row;            /* Safari */
    flex-direction: row;
}
.flex-column {
    display: -webkit-flex;                  /* Safari */
    display: flex;
    -webkit-flex-direction: column;         /* Safari */
    flex-direction: column;
}
.flex-item {
    -webkit-flex: 1;                        /* Safari */
    flex: 1;
}
.flex-buttons {
    display: -webkit-flex;                  /* Safari */
    display: flex;
    -webkit-flex-direction: row;            /* Safari */
    flex-direction: row;
    -webkit-justify-content: center;        /* Safari */
    justify-content: center;
}
.flex-buttons .btn {
    margin-left: 3em;
    margin-right: 3em;
}

/**
 * typeahead.js-bootstrap3.less
 * https://github.com/hyspace/typeahead.js-bootstrap3.less
 */
.tt-dropdown-menu .tt-suggestion.tt-cursor, .tt-menu .tt-suggestion.tt-cursor, .tt-dropdown-menu .tt-suggestion:hover, .tt-menu .tt-suggestion:hover {
    color: #fff;
    background-color: #447299;
}

/**
 * アプリケーション
 *
 */
body {
/*    font-size: 14px;*/
    font-size: 12px;
}
.btn {
/*    font-size: 14px;*/
    font-size: 12px;
}
table {
/*    table-layout: fixed;*/
    width: 100%;
}
th, td {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/**
 * ボタン
 */
button i.fa, a i.fa {
    margin-right: 1em;
}

/**
 * メニューバー
 */
.navbar .container {
    display: -webkit-flex;                  /* Safari */
    display: flex;
    -webkit-flex-direction: row;            /* Safari */
    flex-direction: row;
}
.navbar .container > a {
    border-radius: 0;
    -webkit-flex: 1;                        /* Safari */
    flex: 1;
}
.navbar .container > a > i.fa {
    margin: 0;
}

/**
 * パネル
 */
.panel-footer {
    display: -webkit-flex;                  /* Safari */
    display: flex;
    -webkit-flex-direction: row;            /* Safari */
    flex-direction: row;
    -webkit-justify-content: flex-end;      /* Safari */
    justify-content: flex-end;
}
.panel-footer .btn {
    margin-left: .4em;
    margin-right: .4em;
}
.panel-footer .btn:first-child {
    margin-left: 0;
}
.panel-footer .btn:last-child {
    margin-right: 0;
}

/**
 * ローダー
 */
#loading {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.4;
    z-index: 1100;
}
#loading .la-ball-spin-clockwise-fade {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
