@charset "UTF-8";
/**
 * gemini-scrollbar
 * @version 1.3.1
 * @link http://noeldelgado.github.io/gemini-scrollbar/
 * @license MIT
 */
/* disable selection while dragging */
.gm-scrollbar-disable-selection {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

/* fallback for native floating scrollbars */
.gm-prevented {
  -webkit-overflow-scrolling: touch; }

.gm-prevented .gm-scrollbar {
  display: none; }

/* actual gemini-scrollbar styles */
.gm-scrollbar-container {
  position: relative;
  overflow: hidden !important;
  width: 100%;
  height: 100%; }

.gm-scrollbar {
  position: absolute;
  right: 2px;
  bottom: 2px;
  z-index: 1;
  border-radius: 3px; }

.gm-scrollbar.-vertical {
  width: 6px;
  top: 2px; }

.gm-scrollbar.-horizontal {
  height: 6px;
  left: 2px; }

.gm-scrollbar .thumb {
  position: relative;
  display: block;
  width: 0;
  height: 0;
  cursor: pointer;
  border-radius: inherit;
  background-color: rgba(0, 0, 0, 0.2); }

.gm-scrollbar .thumb:hover,
.gm-scrollbar .thumb:active {
  background-color: rgba(0, 0, 0, 0.3); }

.gm-scrollbar.-vertical .thumb {
  width: 100%; }

.gm-scrollbar.-horizontal .thumb {
  height: 100%; }

.gm-scrollbar-container .gm-scroll-view {
  width: 100%;
  height: 100%;
  overflow: scroll;
  -webkit-overflow-scrolling: touch; }

/* @option: autoshow */
.gm-scrollbar-container.gm-autoshow .gm-scrollbar {
  opacity: 0;
  transition: opacity 120ms ease-out; }

.gm-scrollbar-container.gm-autoshow:hover .gm-scrollbar,
.gm-scrollbar-container.gm-autoshow:focus .gm-scrollbar {
  opacity: 1;
  transition: opacity 340ms ease-out; }

.kpb-wrap {
  position: fixed;
  bottom: -120px;
  left: 0;
  right: 0;
  height: 60px;
  z-index: 9999;
  transition-property: bottom;
  transition-timing-function: ease-in-out;
  transition-duration: .3s; }

.kpb-wrap.kpb-open {
  bottom: 0; }

.kpb-container {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 0 20px 0 0;
  z-index: 10002;
  overflow: hidden;
  box-sizing: border-box; }

.kpb-background {
  position: absolute;
  top: -50%;
  bottom: -50%;
  left: -50%;
  right: -50%;
  z-index: -1; }

.kpb-panel {
  float: left;
  margin-right: 20px; }

.kpb-panel-right {
  position: absolute;
  right: 0;
  margin-right: 10px; }

.kpb-cover {
  position: relative;
  width: 54px;
  height: 54px;
  margin: 3px;
  margin-right: 30px; }
  .kpb-cover img {
    width: 100%;
    height: 100%; }

.kpb-info {
  height: 60px;
  line-height: 60px;
  max-width: 45%;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap; }

.kpb-status {
  height: 60px;
  line-height: 60px; }

.kpb-controls > button {
  margin-right: 5px; }

.kpb-progress-container {
  position: absolute;
  height: 3px;
  left: 0;
  right: 0;
  top: -5px; }

.kpb-progress {
  width: 100%;
  height: 100%; }

.kpb-progress-face {
  height: 100%; }

.kpb-collapse {
  width: 0 !important;
  overflow: hidden !important;
  margin-right: 0 !important; }

.kpb-collapse-transition {
  transition-property: width;
  transition-timing-function: ease-in-out;
  transition-duration: .3s; }

.kpb-volume-controls {
  width: 100px;
  margin-left: 10px; }

.kpb-panel.kpb-volume-mute {
  margin-right: 0; }

.kpb-custom-panel, .kpb-custom-panel-right {
  display: table;
  height: 60px; }
  .kpb-custom-panel .kpb-custom-panel-wrapper, .kpb-custom-panel-right .kpb-custom-panel-wrapper {
    display: table-cell;
    vertical-align: middle; }

@media only screen and (max-width: 667px) {
  .kpb-progress-container {
    left: 0; }
  .kpb-btn-prev, .kpb-btn-next {
    display: none !important; }
  .kpb-btn-playlist {
    margin: 0 !important; }
  .kpb-container {
    padding: 0 10px; }
  .kpb-controls {
    margin: 0; } }

.kpb-playlist-container {
  position: absolute;
  height: 280px;
  width: 560px;
  left: 200px;
  top: 0;
  opacity: 0;
  transition-property: top, opacity;
  transition-timing-function: ease-in-out;
  transition-duration: .3s;
  z-index: 10001; }
  .kpb-playlist-container .kpb-playlist-toggle {
    height: 40px;
    position: absolute;
    cursor: pointer; }
  .kpb-playlist-container .kpb-playlist-scroller {
    height: 100%;
    overflow: hidden; }
  .kpb-playlist-container .kpb-playlist-viewport {
    height: 240px;
    margin-top: 40px; }
  .kpb-playlist-container ol {
    color: #fff;
    list-style: none;
    padding: 0;
    margin: 0; }
    .kpb-playlist-container ol > li {
      position: relative;
      padding: 0 20px 0 30px;
      cursor: default;
      border-bottom: 1px solid #3b3b3b; }
      .kpb-playlist-container ol > li button.kpb-playlist-item {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        margin-right: 15px;
        margin-bottom: 0;
        font-size: 12px;
        border: 0;
        background-color: transparent;
        width: 100%;
        text-align: left;
        padding: 0 10px 0 0;
        line-height: 40px;
        color: #fff;
        cursor: pointer; }
        .kpb-playlist-container ol > li button.kpb-playlist-item:focus {
          outline: none; }
      .kpb-playlist-container ol > li:hover {
        background-color: rgba(0, 0, 0, 0.08); }
      .kpb-playlist-container ol > li.active {
        color: #41b5dd; }
        .kpb-playlist-container ol > li.active:before {
          content: '▶';
          display: block;
          position: absolute;
          left: 13px;
          line-height: 40px;
          font-size: 11px; }
  .kpb-playlist-container .simpleFade-leave {
    left: 0;
    opacity: 1; }
  .kpb-playlist-container .simpleFade-leave-active {
    opacity: 0.01;
    left: 100%;
    transition-property: opacity, left;
    transition-duration: .2s;
    transition-timing-function: ease-in-out; }
  .kpb-playlist-container .simpleFade-enter {
    opacity: 0.01; }
  .kpb-playlist-container .simpleFade-enter-active {
    opacity: 1;
    transition: opacity .2s ease-in; }

.kpb-playlist-open {
  top: -280px;
  opacity: 1; }

.kpb-playlist-delete {
  position: absolute;
  right: 0px;
  top: 0;
  cursor: pointer;
  visibility: hidden; }

.kpb-playlist-empty {
  line-height: 50px;
  text-align: center; }

.kpb-playlist-container li:hover .kpb-playlist-delete {
  visibility: visible; }

.gm-scrollbar.-vertical {
  width: 10px;
  right: 5px; }
  .gm-scrollbar.-vertical .thumb {
    border-radius: 5px;
    background-color: rgba(255, 255, 255, 0.3); }

@media only screen and (max-width: 667px) {
  .kpb-playlist-container {
    position: fixed;
    width: 100%;
    top: 100%;
    height: auto;
    left: 0; }
  .kpb-playlist-open {
    top: 0;
    bottom: 60px; }
  .kpb-playlist-delete {
    visibility: visible; }
  .kpb-playlist-container .kpb-playlist-viewport {
    height: 100%;
    box-sizing: border-box;
    position: relative; } }

.kpb-slider-container {
  height: 20px;
  margin-top: 20px;
  padding-top: 8px;
  cursor: pointer;
  width: 100%; }
  .kpb-slider-container .kpb-slider-bar {
    background-color: rgba(255, 255, 255, 0.4);
    border-radius: 8px;
    width: 100%;
    height: 4px; }
  .kpb-slider-container .kpb-slider-face, .kpb-slider-container .kpb-slider-handle {
    transition-property: box-shadow;
    transition-timing-function: ease-in-out;
    transition-duration: .3s; }
  .kpb-slider-container .kpb-slider-face {
    position: relative;
    height: 100%;
    background-color: #fff;
    border-radius: 8px; }
    .kpb-slider-container .kpb-slider-face.kpb-active {
      box-shadow: 0 0 5px 0 rgba(255, 255, 255, 0.7); }
    .kpb-slider-container .kpb-slider-face.kpb-active .kpb-slider-handle {
      box-shadow: 0 0 10px 0 rgba(255, 255, 255, 0.7); }
  .kpb-slider-container .kpb-slider-handle {
    border: 0;
    border-radius: 50%;
    background-color: #fff;
    width: 10px;
    height: 10px;
    position: absolute;
    right: -5px;
    top: -3px;
    padding: 0; }

.kpb-icon, .kpb-btn-play, .kpb-playing, .kpb-btn-prev, .kpb-btn-next, .kpb-btn-volume, .kpb-btn-playlist, .kpb-btn-close {
  background-image: url(../images/icons.png); }

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .kpb-icon, .kpb-btn-play, .kpb-playing, .kpb-btn-prev, .kpb-btn-next, .kpb-btn-volume, .kpb-btn-playlist, .kpb-btn-close {
    background-image: url(../images/icons@2x.png);
    background-size: 40px 466px; } }

.kpb-container {
  color: #fff;
  font-family: "Lucida Grande","Lucida Sans Unicode","HiraginoKaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","Helvetica Neue",Helvetica,Arial,sans-serif;
  box-sizing: border-box; }

.kpb-background {
  background-color: #000; }
  .kpb-background svg {
    opacity: .5; }

.kpb-cover {
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
  background-color: #efefef; }

.kpb-info {
  font-size: 13px; }
  .kpb-info a {
    color: inherit;
    text-decoration: none; }

.kpb-status {
  font-size: 13px;
  color: #fff;
  opacity: .5; }

.kpb-btn {
  display: inline-block;
  border: none;
  background-color: transparent;
  font-size: 0;
  color: transparent;
  cursor: pointer; }
  .kpb-btn:focus {
    outline: none; }
  .kpb-btn.active {
    color: #17b5da; }
  .kpb-btn.disabled, .kpb-btn[disabled] {
    opacity: 0.3;
    cursor: default; }
    .kpb-btn.disabled:hover, .kpb-btn[disabled]:hover {
      background-color: transparent; }

.kpb-progress {
  background-color: #666; }

.kpb-progress-face {
  background-color: #17b5da; }

.kpb-playlist-container {
  background-color: #111; }

.kpb-btn-play {
  background-position: 0px -299px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 29px;
  height: 29px;
  margin-top: 15.5px; }
  .kpb-btn-play:hover {
    background-position: 0px -270px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: inline-block;
    width: 29px;
    height: 29px; }

.kpb-playing {
  background-position: 0px -357px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 29px;
  height: 29px;
  margin-top: 15.5px; }
  .kpb-playing:hover {
    background-position: 0px -328px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: inline-block;
    width: 29px;
    height: 29px; }

.kpb-btn-prev {
  background-position: 0px -243px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 27px;
  height: 27px;
  margin-top: 16.5px; }
  .kpb-btn-prev:not([disabled]):hover {
    background-position: 0px -216px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: inline-block;
    width: 27px;
    height: 27px; }

.kpb-btn-next {
  background-position: 0px -162px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 27px;
  height: 27px;
  margin-top: 16.5px; }
  .kpb-btn-next:not([disabled]):hover {
    background-position: 0px -135px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: inline-block;
    width: 27px;
    height: 27px; }

.kpb-btn-volume {
  background-position: 0px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 27px;
  height: 27px;
  margin-top: 16.5px; }
  .kpb-btn-volume:hover, .kpb-btn-volume.kpb-active {
    background-position: 0px -189px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: inline-block;
    width: 27px;
    height: 27px; }
  .kpb-btn-volume.kpb-mute {
    background-position: 0px -108px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: inline-block;
    width: 27px;
    height: 27px; }
    .kpb-btn-volume.kpb-mute:hover {
      background-position: 0px -81px;
      background-repeat: no-repeat;
      overflow: hidden;
      display: inline-block;
      width: 27px;
      height: 27px; }

.kpb-btn-playlist {
  position: relative;
  width: 36px;
  height: 36px;
  margin-top: 12px;
  margin-left: 20px;
  color: #fff;
  background-position: 0px -54px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 27px;
  height: 27px;
  margin-top: 16.5px; }
  .kpb-btn-playlist.active {
    background-position: 0px -27px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: inline-block;
    width: 27px;
    height: 27px; }

.kpb-btn-close {
  position: relative;
  width: 36px;
  height: 36px;
  margin-top: 12px;
  background-position: 0px -386px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 40px;
  height: 40px; }
  .kpb-btn-close:hover {
    background-position: 0px -426px;
    background-repeat: no-repeat;
    overflow: hidden;
    display: inline-block;
    width: 40px;
    height: 40px; }

.kpb-playlist-delete {
  position: absolute;
  width: 40px;
  height: 40px; }
  .kpb-playlist-delete:after {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    content: '✕';
    width: 40px;
    height: 40px;
    line-height: 40px;
    color: #fff;
    font-size: 14px; }
  .kpb-playlist-delete:hover:after {
    text-shadow: 0 0 3px white; }

.kpb-playlist-toggle {
  background-color: transparent;
  border: 0;
  width: 100%;
  border-bottom: 1px solid #3b3b3b;
  color: rgba(255, 255, 255, 0.7);
  font-size: 12px; }
  .kpb-playlist-toggle:after {
    content: '∟';
    display: inline-block;
    transform: rotate(-45deg);
    top: 1px;
    left: 10px;
    position: relative;
    font-size: 11px;
    width: 0; }

.kpb-custom-button {
  border: 0;
  background: #00aed8;
  border-radius: 3px;
  font-size: 12px;
  padding: 7px 14px;
  color: #fff; }
  .kpb-custom-button:hover {
    background: #00bae7; }

.kpb-playlist-scroller.scrollarea .scrollbar-container.vertical {
  padding: 0 1px;
  width: 10px;
  box-sizing: content-box; }
  .kpb-playlist-scroller.scrollarea .scrollbar-container.vertical .scrollbar {
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 4px; }

@media only screen and (max-width: 667px) {
  .kpb-info, .kpb-status {
    font-size: 12px; }
  .kpb-btn {
    margin-right: 0 !important; }
  .kpb-panel {
    margin-right: 10px; } }

button:focus {
  outline: none; }

.kpb-disable-select {
  -webkit-user-select: none;
  user-select: none; }
