@charset "UTF-8";

/*--------------------*/
/*      flex-box      */
/*--------------------*/
/*通常版*/
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}

/*左右中央寄せ*/
.flex_center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

/*天地中央寄せ*/
.flex_middle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

/*flex逆から*/
.flex_reverse {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

/*flex-boxを使った天地左右中央寄せ*/
.just_center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  flex-direction: column;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

/*左右詰め等倍*/
.space_between {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

/*-----------------------------*/
/*      form周りのリセット      */
/*----------------------------*/
input, button {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none transparent;
  background-clip: padding-box;
  color: inherit;
  font-size: inherit;
  vertical-align: middle;
  box-sizing: border-box;
  outline: none;
}

input::-ms-clear,
button:-ms-clear {
  display: none;
}

input::-ms-reveal,
button:-ms-reveal {
  display: none;
}

input::-ms-expand,
button:-ms-expand {
  display: none;
}

input:focus,
button:focus {
  outline: none;
}

/*----------------------------------*/
/*      slickスライダーのドット      */
/*---------------------------------*/
.slick-slider, .slick-slider * {
  outline: 0 !important;
}

.slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  position: absolute;
  bottom: -55px;
  right: 80px;
}

.slick-dots li {
  padding: 7px;
  font-weight: bold;
}

.slick-dots li button {
  display: block;
  width: 14px;
  height: 14px;
  font-size: 0;
  background: #c0c0c0;
  border-radius: 50%;
  transition: 0.3s;
}

.slick-dots li.slick-active button {
  background: #000;
}

@media only screen and (max-width: 767px) {
  .slick-dots {
    bottom: -34px;
    right: 10px;
  }

  .slick-dots li {
    padding: 4px;
  }

  .slick-dots li button {
    width: 10px;
    height: 10px;
  }
}

/*--------------------*/
li {
  list-style-type: none;
}

/*--------------------*/
.animated {
  animation-duration: 1.5s;
  opacity: 0;
}
