@charset "UTF-8";
/*拡張クラスを追加するスタイルシート*/
.sankou,
.sanko,
.reffer,
.ref {
  color: #fff;
  background-color: #fc7a22;
  padding: 1px 5px 0;
  border-radius: 2px;
  font-size: 12px;
}

.ref-red {
  background-color: #f44336;
}

.ref-pink {
  background-color: #e91e63;
}

.ref-purple {
  background-color: #9C27B0;
}

.ref-blue {
  background-color: #2196F3;
}

.ref-green {
  background-color: #4CAF50;
}

.ref-yellow {
  background-color: #FFEB3B;
}

.ref-brown {
  background-color: #795548;
}

.ref-grey {
  background-color: #9E9E9E;
}

/*太字*/
.bold {
  font-weight: bold;
}

/*赤色*/
.red {
  color: #E50202;
}

/*太字で赤色*/
.bold-red {
  font-weight: bold;
  color: #E50202;
}

/*赤のアンダーライン*/
.red-under {
  border-bottom: 2px solid red;
}

/*マーカーの黄色のような色*/
.marker {
  background-color: #FF9;
}

/*下半分のマーカー色（km）*/
.marker-under {
  background: linear-gradient(transparent 60%, #ffff66 60%);
}

/*打ち消し線*/
.strike {
  text-decoration: line-through;
}

/*キーボードキーのスタイル*/
.keyboard-key {
  background-color: #f9f9f9;
  background-image: -moz-linear-gradient(center top, #eee, #f9f9f9, #eee);
  border: 1px solid #aaa;
  border-radius: 2px;
  box-shadow: 1px 2px 2px #ddd;
  font-family: inherit;
  font-size: 0.85em;
  padding: 1px 3px;
}

/*ブートストラップのインフォメーションライクな囲みが表示される*/
.sp-primary {
  background-color: #428BCA;
  color: #FFFFFF;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px;
}

/*サクセスメッセージ*/
.sp-success {
  background-color: #DFF0D8;
  border-color: #D6E9C6;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px;
}

/*インフォメッセージ*/
.sp-info {
  background-color: #D9EDF7;
  border-color: #BCE8F1;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px;
}

/*注意メッセージ*/
.sp-warning {
  background-color: #FCF8E3;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px;
  border-color: #FAEBCC;
}

/*警告メッセージ*/
.sp-danger {
  background-color: #F2DEDE;
  border-color: #EBCCD1;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px;
}

/*******************************
* 左からの吹き出し
********************************/
.left_balloon,
.left-balloon {
  position: relative;
  background: #fff;
  border: 1px solid #777;
  margin: 10px;
  padding: 10px;
  border-radius: 15px;
  margin-right: 20%;
  clear: both;
  max-width: 500px;
  float: left;
}

.left_balloon:after,
.left_balloon:before,
.left-balloon:after,
.left-balloon:before {
  right: 100%;
  top: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.left_balloon:after,
.left-balloon:after {
  border-color: rgba(255, 255, 255, 0);
  border-right-color: #fff;
  border-width: 7px;
  margin-top: -7px;
}

.left_balloon:before,
.left-balloon:before {
  border-color: rgba(0, 0, 0, 0);
  border-right-color: #000;
  border-width: 8px;
  margin-top: -8px;
}

/*******************************
* 右からの吹き出し
********************************/
.right_balloon,
.right-balloon {
  position: relative;
  background: #85e249;
  border: 1px solid #777;
  margin: 10px;
  padding: 10px;
  border-radius: 15px;
  margin-left: 20%;
  clear: both;
  max-width: 500px;
  float: right;
}

.right_balloon:after,
.right_balloon:before,
.right-balloon:after,
.right-balloon:before {
  left: 100%;
  top: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.right_balloon:after,
.right-balloon:after {
  border-color: rgba(133, 226, 73, 0);
  border-left-color: #85e249;
  border-width: 7px;
  margin-top: -7px;
}

.right_balloon:before,
.right-balloon:before {
  border-color: rgba(119, 119, 119, 0);
  border-left-color: #777;
  border-width: 8px;
  margin-top: -8px;
}

/*******************************
* 割り込みを解除
********************************/
.clear_balloon,
.clear-balloon {
  clear: both;
  margin: 20px;
}

/*******************************
* LINEの背景っぽいもの
********************************/
.line_back,
.line-back {
  background-color: #7897C5;
  padding: 10px;
  padding-bottom: 20px;
}

/*******************************
* 補足説明
********************************/
.information,
.question,
.alert {
  background-color: #F4F3EB;
  padding: 20px 20px 20px 72px;
  border-radius: 4px;
  position: relative;
  display: block;
  margin-top: 1em;
  margin-bottom: 1em;
}

.alert {
  background-color: #fdeff2;
}

.information::before,
.question::before,
.alert::before {
  font-family: "FontAwesome";
  font-size: 50px;
  position: absolute;
  top: 20px;
  left: 13px;
  color: #EAE3B4;
}

.information::before {
  content: "\f05a";
}

.question::before {
  content: "\f059";
}

.alert::before {
  content: "\f06a";
  color: #ee827c;
}

@media screen and (max-width: 440px) {
  .information,
  .question,
  .alert {
    padding: 10px 10px 10px 48px;
  }
  .information::before,
  .question::before,
  .alert::before {
    top: 10px;
    left: 10px;
    font-size: 32px;
  }
}
/*******************************
* 続きはWEBで的な検索ボックス
********************************/
.search-form {
  margin: 3em 0;
}

.search-form div {
  border: 1px solid #555;
  border-radius: 2px;
  padding: 5px;
  margin-left: 10px;
  display: inline-block;
}

.search-form div.sform {
  min-width: 280px;
  background-color: #fff;
}

.search-form div.sbtn {
  background-color: #1155EE;
  color: #fff;
  padding-left: 20px;
  padding-right: 30px;
  position: absolute;
}

.search-form div.sbtn:before {
  content: "\f002";
  font-family: FontAwesome;
  margin-right: 7px;
}

.search-form div.sbtn:after {
  content: "\f25a";
  font-family: FontAwesome;
  color: #000;
  position: absolute;
  bottom: -28px;
  font-size: 25px;
}

@media screen and (max-width: 450px) {
  .search-form div {
    padding: 3px 5px;
    font-size: 75%;
  }
  .search-form div.sform {
    min-width: 180px;
  }
  .search-form div.sbtn {
    padding-left: 5px;
    padding-right: 10px;
  }
  .search-form div.sbtn:after {
    font-size: 20px;
    margin-left: -10px;
  }
}
.btn:before {
  font-family: FontAwesome;
  margin-right: 10px;
}

.btn-m {
  padding: 16px 45px;
  font-size: 16px;
}

.btn-l {
  padding: 24px 0;
  font-size: 18px;
  display: block;
}

.btn-white {
  color: #333;
  background-color: #fff;
}

#container a.btn-white:hover {
  color: #333;
}

.btn-red {
  background-color: #f44336;
}

.btn-pink {
  background-color: #e91e63;
}

.btn-purple {
  background-color: #9C27B0;
}

.btn-deep {
  background-color: #673AB7;
}

.btn-indigo {
  background-color: #3F51B5;
}

.btn-blue {
  background-color: #2196F3;
}

.btn-light-blue {
  background-color: #03A9F4;
}

.btn-cyan {
  background-color: #00BCD4;
}

.btn-teal {
  background-color: #009688;
}

.btn-green {
  background-color: #4CAF50;
}

.btn-light-green {
  background-color: #8BC34A;
}

.btn-lime {
  background-color: #CDDC39;
}

.btn-yellow {
  background-color: #FFEB3B;
}

.btn-amber {
  background-color: #FFC107;
}

.btn-orange {
  background-color: #FF9800;
}

.btn-deep-orange {
  background-color: #FF5722;
}

.btn-brown {
  background-color: #795548;
}

.btn-grey {
  background-color: #9E9E9E;
}

.btn-blue-grey {
  background-color: #607D8B;
}

.btn-arrow-right:before {
  content: "\f061";
}

.btn-chevron-right:before {
  content: "\f054";
}

.btn-angle-right:before {
  content: "\f105";
}

.btn-caret-right:before {
  content: "\f0da";
}

.btn-long-arrow-right:before {
  content: "\f178";
}

.btn-chevron-circle-right:before {
  content: "\f138";
}

.btn-angle-double-right:before {
  content: "\f101";
}

.btn-arrow-circle-right:before {
  content: "\f0a9";
}

.btn-hand-o-right:before {
  content: "\f0a4";
}

.btn-arrow-circle-o-right:before {
  content: "\f18e";
}

.btn-caret-square-o-right:before {
  content: "\f152";
}

/*メインカランの2カラム化*/
.half-l,
.half-r {
  margin: 1em 0;
}

.half-l {
  float: left;
  width: 50%;
  padding-right: 10px;
  box-sizing: border-box;
}

.half-r {
  float: right;
  width: 50%;
  padding-left: 10px;
  box-sizing: border-box;
}

@media screen and (max-width: 639px) {
  .half-l,
  .half-r {
    float: none;
    width: auto;
    padding: 0;
  }
}
