/* kodomoen */
@-webkit-keyframes floating-x {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  50% {
    -webkit-transform: translateX(-2%);
            transform: translateX(-2%);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes floating-x {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  50% {
    -webkit-transform: translateX(-2%);
            transform: translateX(-2%);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes floating-y {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-1%);
            transform: translateY(-1%);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes floating-y {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-1%);
            transform: translateY(-1%);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes fuwafuwa-soft {
  /*
    0% {
      transform: translate(0, 0) rotate(0deg);
    }
    50% {
      transform: translate(4px, -12px) rotate(1deg);
    }
    100% {
      transform: translate(0, 0) rotate(0deg);
    }
  */
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  20% {
    -webkit-transform: translate(2px, -8px);
            transform: translate(2px, -8px);
  }
  50% {
    -webkit-transform: translate(-2px, -14px);
            transform: translate(-2px, -14px);
  }
  80% {
    -webkit-transform: translate(2px, -6px);
            transform: translate(2px, -6px);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@keyframes fuwafuwa-soft {
  /*
    0% {
      transform: translate(0, 0) rotate(0deg);
    }
    50% {
      transform: translate(4px, -12px) rotate(1deg);
    }
    100% {
      transform: translate(0, 0) rotate(0deg);
    }
  */
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  20% {
    -webkit-transform: translate(2px, -8px);
            transform: translate(2px, -8px);
  }
  50% {
    -webkit-transform: translate(-2px, -14px);
            transform: translate(-2px, -14px);
  }
  80% {
    -webkit-transform: translate(2px, -6px);
            transform: translate(2px, -6px);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
/*
@mixin line_dot() {
  background-image: repeating-linear-gradient(90deg, #003a91, #003a91 10px, transparent 10px, transparent 20px);
//  background-position: left bottom;
  background-position: left 15px bottom;
  background-repeat: repeat-x;
//  background-size: 100% 5px;
  background-size: calc(100% * 20) 5px;
  @include breakpoint__max(device_sp) {
    background-image: repeating-linear-gradient(90deg, #003a91, #003a91 5px, transparent 5px, transparent 10px);
    background-position: left 7px bottom;
    background-repeat: repeat-x;
    background-size: calc(100% * 10) 3px;
  }
}
*/
@-webkit-keyframes line-slide02 {
  0% {
    background-size: 100% 1px;
    background-position: bottom left;
  }
  50% {
    background-size: 0px 1px;
    background-position: bottom right;
  }
  50.01% {
    background-size: 0px 1px;
    background-position: bottom left;
  }
  100% {
    background-size: 100% 1px;
    background-position: bottom left;
  }
}
@keyframes line-slide02 {
  0% {
    background-size: 100% 1px;
    background-position: bottom left;
  }
  50% {
    background-size: 0px 1px;
    background-position: bottom right;
  }
  50.01% {
    background-size: 0px 1px;
    background-position: bottom left;
  }
  100% {
    background-size: 100% 1px;
    background-position: bottom left;
  }
}
/* privacy */
/* ------------------------------------ */
.privacy .policy.main_width {
  max-width: 1024px;
}
.privacy .policy .lead {
  margin-bottom: 50px;
}
.privacy .policy dl {
  margin-bottom: 50px;
}
.privacy .policy dl dt {
  margin-bottom: 20px;
  position: relative;
  padding-left: 20px;
  font-size: 2rem;
}
.privacy .policy dl dt::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 31px;
  background: #00989F;
  top: 0;
  left: 0;
}
.privacy .policy dl dd {
  line-height: 2;
}