.rangeslider,
.rangeslider__fill {
  display: block;
  max-width: 790px;
  margin: auto;
  -moz-box-shadow: inset 0px 0px 1px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: inset 0px 0px 1px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0px 0px 1px rgba(0, 0, 0, 0.2);
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
}

.rangeslider {
  background: #e6e6e6;
  position: relative;
  border: 3px solid #ffd20d;
}

.rangeslider--horizontal {
  height: 20px;
  width: 100%;
}
.rangeslider--horizontal::after {
  content: "18才以上";
  display: inline-block;
  width: 4rem;
  height: 1rem;
  font-size: 12px;
  position: absolute;
  top: 12.5%;
  right: -0.5rem;
}

.rangeslider--vertical {
  width: 20px;
  min-height: 150px;
  max-height: 100%;
}

.rangeslider--disabled {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
  opacity: 0.4;
}

.rangeslider__fill {
  background: #ff8a00;
  position: absolute;
  z-index: 2;
}
.rangeslider__fill::before {
  content: "0才";
  display: inline-block;
  width: 2rem;
  height: 1rem;
  font-size: 12px;
  position: absolute;
  top: 15%;
  left: 0.5rem;
}
.rangeslider--horizontal .rangeslider__fill {
  top: 0;
  height: 100%;
}
.rangeslider--vertical .rangeslider__fill {
  bottom: 0;
  width: 100%;
}

.rangeslider__handle {
    background: #ffd20d;
    border: 6px solid #ff5824;
    cursor: pointer;
    display: inline-block;
    width: 25px;
    height: 25px;
    position: absolute;
/*   background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4xIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(100%, rgba(0, 0, 0, 0.1)));
  background-image: -moz-linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1));
  background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1));
  background-image: linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1));
  -moz-box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.3); */
  -moz-border-radius: 40%;
  -webkit-border-radius: 40%;
  border-radius: 40%;
  z-index: 2;
  transition:
    border 100ms ease,
    background 100ms ease,
    border-radius 100ms ease,
    padding 100ms ease
  ;
}
.rangeslider__handle:active, .rangeslider--active .rangeslider__handle {
  /* background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjEiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4xMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0, 0, 0, 0.1)), color-stop(100%, rgba(0, 0, 0, 0.12)));
  background-image: -moz-linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
  background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
  background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12)); */
  background: #fff url(../img/step4_banner_hover2.jpg) no-repeat center 2px;
  background-size: 25px 25px;
  border-radius: 50%;
  border: 4px solid #ff5824;
  padding: 2px 3px;
}
.rangeslider--horizontal .rangeslider__handle {
  top: -10px;
  touch-action: pan-y;
  -ms-touch-action: pan-y;
}
.rangeslider--vertical .rangeslider__handle {
  left: -10px;
  touch-action: pan-x;
  -ms-touch-action: pan-x;
}

input[type="range"]:focus + .rangeslider .rangeslider__handle {
  -moz-box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
  -webkit-box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
  box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
}

output {
  font-family: "游ゴシック Medium", 游ゴシック体, "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  display: block;
  width: 10rem;
  font-size: 24px;
  text-align: center;
  white-space: nowrap;
  position: absolute;
  top: -1.8rem;
  left: -4rem;
  text-shadow: 0px 0px 1px #fff, 0px 0px 1px #fff, -1px -1px 1px #fff, -1px -1px 1px #fff, 1px 1px 1px #fff, 1px 1px 1px #fff, 1px 1px 1px #fff, 1px 1px 1px #fff, 1px 1px 1px #fff, 1px 1px 1px #fff, 1px 1px 1px #fff, 1px 1px 1px #fff, 1px 1px 1px #fff;
}
/* output:after {
  content: "才";
  display: inline-block;
  width: 1rem;
  height: 1rem;
} */
.output--dammy {
  display: none;
}

@media screen and (max-width: 768px) {
  .rangeslider--horizontal .rangeslider__handle {
    top: -15px;
  }
  .rangeslider__handle {
      width: 35px;
      height: 35px;
  }
  output {
    width: 5rem;
    left: -1.2rem;
    font-size: 18px;
  }

}