@charset "Shift_JIS";
/*----------css��Sass���g�p���Ă��܂�����css���ҏW���Ȃ��ł�������----------*/
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:after, blockquote:before, q:after, q:before {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

body {
  font-family: serif;
  color: #000000;
  font-size: 100%;
  line-height: 1;
  padding: 0;
  margin: 0;
  font-family: "Lucida Grande",Verdana,"?q???M?m?p?S Pro W3","Hiragino Kaku Gothic Pro","Osaka","???C???I","Meiryo","?l?r ?o?S?V?b?N","MS P Gothic",sans-serif; }

html {
  font-size: 62.5%; }

img {
  vertical-align: top; }

.header {
  width: 100%;
  height: 80px;
  background: #ffffff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5;
  -webkit-transition: .5s;
  transition: .5s; }
  .header.is-fixed {
    background: rgba(255, 255, 255, 0.8); }
  .header .header-inner {
    width: 1080px;
    margin: 0 auto 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 20px 0;
    position: relative; }
  .header .logo {
    width: 115px;
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 2; }
    .header .logo a {
      display: block; }

.nav {
  width: 750px;
  float: right; }
  .nav .nav-list {
    padding: 10px 0;
    text-align: right;
    letter-spacing: -.4em; }
    .nav .nav-list > li {
      letter-spacing: normal;
      display: inline-block;
      margin: 0 0 0 40px;
      position: relative; }
      .nav .nav-list > li:nth-of-type(1) {
        width: 168px;
        margin: 0 0 0 0; }
      .nav .nav-list > li:nth-of-type(2) {
        width: 108px; }
      .nav .nav-list > li:nth-of-type(3) {
        width: 101px; }
      .nav .nav-list > li:nth-of-type(4) {
        width: 77px; }
      .nav .nav-list > li:nth-of-type(5) {
        width: 86px; }
      .nav .nav-list > li > a, .nav .nav-list > li > span {
        display: block;
        -webkit-transform: perspective(1px) translateZ(0);
        transform: perspective(1px) translateZ(0);
        -webkit-box-shadow: 0 0 1px transparent;
                box-shadow: 0 0 1px transparent;
        cursor: pointer; }
        .nav .nav-list > li > a:hover, .nav .nav-list > li > span:hover {
          -webkit-animation-name: hvr-wobble-vertical;
          animation-name: hvr-wobble-vertical;
          -webkit-animation-duration: .6s;
          animation-duration: .6s;
          -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
          -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1; }
    .nav .nav-list .nav-list-sub {
      display: none;
      background: #ffffff;
      padding: 15px;
      border-top: solid 1px #e6e6e6;
      position: absolute;
      top: 50px;
      left: 0;
      width: -webkit-max-content;
      width: -moz-max-content;
      width: max-content; }
      .nav .nav-list .nav-list-sub > li {
        margin: 10px 0 0;
        text-align: left; }
        .nav .nav-list .nav-list-sub > li:first-child {
          margin: 0 0 0; }
        .nav .nav-list .nav-list-sub > li a {
          display: block;
          -webkit-transition: all .3s;
          transition: all .3s; }
          .nav .nav-list .nav-list-sub > li a:hover {
            opacity: 0.7;
            -ms-filter: "alpha(opacity=70)"; }
        .nav .nav-list .nav-list-sub > li.icon-new:before {
          width: 34px;
          height: 24px;
          content: '';
          background: url(/2017/common/images/icon_new.png) no-repeat 0 0;
          background-size: 100%;
          display: inline-block;
          text-align: left;
          margin-right: 3px;
          margin-top: -5px; }
        .nav .nav-list .nav-list-sub > li.icon-new img {
          display: inline-block; }
        .nav .nav-list .nav-list-sub > li.icon-new a {
          vertical-align: top;
          display: inline-block; }

@-webkit-keyframes hvr-wobble-vertical {
  16.65% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px); }
  33.3% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px); }
  49.95% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px); }
  66.6% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px); }
  83.25% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px); }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

@keyframes hvr-wobble-vertical {
  16.65% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px); }
  33.3% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px); }
  49.95% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px); }
  66.6% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px); }
  83.25% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px); }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

.share {
  width: 155px;
  border-left: solid 4px #e6e6e6;
  border-radius: 4px;
  float: right;
  margin: 0 0 0 30px;
  padding: 7px 0 7px 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  letter-spacing: -.4em; }
  .share .share-heading {
    width: 38px;
    display: inline-block;
    letter-spacing: normal;
    vertical-align: top;
    margin: 10px 0 0; }
  .share .share-list {
    width: 80px;
    display: inline-block;
    letter-spacing: normal; }
    .share .share-list:after {
      content: '';
      display: block;
      clear: both; }
    .share .share-list li {
      width: 30px;
      float: left;
      margin: 0 0 0 10px; }
      .share .share-list li a {
        display: block;
        -webkit-transition: all .3s;
        transition: all .3s; }
        .share .share-list li a:hover {
          opacity: 0.7;
          -ms-filter: "alpha(opacity=70)"; }

.social {
  width: 577px;
  height: 171px;
  margin: 60px auto 0;
  background: url(/2017/common/images/social_bg.png) no-repeat 0 0; }
  .social .social-inner {
    position: relative;
    padding: 48px 0 0 340px; }
  .social .social-balloon {
    width: 170px; }
  .social .social-heading {
    text-align: center; }
  .social .social-list {
    width: 170px;
    text-align: center;
    margin: 10px 0 0; }
    .social .social-list:before, .social .social-list:after {
      content: "";
      display: table; }
    .social .social-list:after {
      clear: both; }
    .social .social-list li {
      width: 48px;
      float: left;
      margin: 0 0 0 10px; }
      .social .social-list li:first-child {
        margin: 0 0 0 0; }
      .social .social-list li a {
        display: block;
        -webkit-transition: all .3s;
        transition: all .3s; }
        .social .social-list li a:hover {
          opacity: 0.7;
          -ms-filter: "alpha(opacity=70)"; }
  .social .social-deco1 {
    background-image: url(/2017/common/images/sprite.png);
    background-position: -65px 0px;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 11px;
    left: -14px; }
  .social .social-deco2 {
    background-image: url(/2017/common/images/sprite.png);
    background-position: 0px 0px;
    width: 65px;
    height: 43px;
    position: absolute;
    top: 48px;
    left: 216px; }
  .social .social-deco3 {
    background-image: url(/2017/common/images/sprite.png);
    background-position: -65px -40px;
    width: 32px;
    height: 32px;
    position: absolute;
    top: 119px;
    left: 523px; }
  .social .social-deco4 {
    background-image: url(/2017/common/images/sprite.png);
    background-position: 0px -43px;
    width: 51px;
    height: 53px;
    position: absolute;
    top: 132px;
    left: 551px; }

.footer {
  width: 100%;
  background: #fff;
  padding: 15px 0;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .footer .copy {
    margin: 0 auto 0;
    display: block; }

.grad-bg-s {
  background: -webkit-gradient(linear, left top, left bottom, from(#90147e), color-stop(15%, #b23456), color-stop(34%, #de5f24), color-stop(68%, #ff9300), to(#ffe402));
  background: linear-gradient(to bottom, #90147e 0%, #b23456 15%, #de5f24 34%, #ff9300 68%, #ffe402 100%); }

.grad-bg-m {
  background: -webkit-gradient(linear, left top, left bottom, from(#90147e), color-stop(23%, #b23456), color-stop(41%, #de5f24), color-stop(68%, #ff9300), to(#ffe402));
  background: linear-gradient(to bottom, #90147e 0%, #b23456 23%, #de5f24 41%, #ff9300 68%, #ffe402 100%); }

.grad-bg-l {
  background: -webkit-gradient(linear, left top, left bottom, from(#880c87), color-stop(34%, #ac2e5d), color-stop(50%, #c24344), color-stop(69%, #f3780b), color-stop(81%, #ffb900), to(#ffe502));
  background: linear-gradient(to bottom, #880c87 0%, #ac2e5d 34%, #c24344 50%, #f3780b 69%, #ffb900 81%, #ffe502 100%); }

.bg-bubbles {
  background: url(/2017/common/images/bg_bubbles.png) repeat center 0; }

.main {
  display: block;
  padding: 60px 0;
  position: relative;
  z-index: 1; }

.main-inner {
  width: 720px;
  margin: 0 auto 0; }

.wrapper {
  padding: 80px 0 0; }

.btn-top {
  width: 214px;
  height: 59px;
  margin: 40px auto 0;
  overflow: hidden; }
  .btn-top a {
    width: 214px;
    height: 59px;
    display: block;
    background: url(/2017/common/images/btn_top.png) no-repeat 0 0;
    text-indent: -9999px; }
    .btn-top a:hover {
      background: url(/2017/common/images/btn_top.png) no-repeat 0 -59px; }

.other {
  width: 720px;
  position: relative;
  background: #160a8b;
  padding: 15px 0 20px;
  text-align: center; }
  .other:before {
    width: 100%;
    height: 24px;
    content: '';
    display: block;
    background: url(/2017/common/images/slanting_top.png) no-repeat center bottom;
    background-size: 100%;
    position: absolute;
    top: -15px;
    left: 0; }
  .other:after {
    width: 100%;
    height: 24px;
    content: '';
    display: block;
    background: url(/2017/common/images/slanting_btm.png) no-repeat center bottom;
    background-size: 100%;
    position: absolute;
    bottom: -15px;
    left: 0; }
  .other .detail-heading + .btn-detail {
    margin: 20px auto 0; }

/* utility margin setting
----------------------------------------------------------- */
/* margin-top */
.u-mt0 {
  margin-top: 0 !important; }

.u-mt5 {
  margin-top: 5px !important; }

.u-mt10 {
  margin-top: 10px !important; }

.u-mt12 {
  margin-top: 12px !important; }

.u-mt15 {
  margin-top: 15px !important; }

.u-mt20 {
  margin-top: 20px !important; }

.u-mt25 {
  margin-top: 25px !important; }

.u-mt30 {
  margin-top: 30px !important; }

.u-mt33 {
  margin-top: 33px !important; }

.u-mt35 {
  margin-top: 35px !important; }

.u-mt40 {
  margin-top: 40px !important; }

.u-mt45 {
  margin-top: 45px !important; }

.u-mt50 {
  margin-top: 50px !important; }

/* margin-right */
.u-mr0 {
  margin-right: 0 !important; }

.u-mr5 {
  margin-right: 5px !important; }

.u-mr10 {
  margin-right: 10px !important; }

.u-mr12 {
  margin-right: 12px !important; }

.u-mr15 {
  margin-right: 15px !important; }

.u-mr20 {
  margin-right: 20px !important; }

.u-mr25 {
  margin-right: 25px !important; }

.u-mr30 {
  margin-right: 30px !important; }

.u-mr35 {
  margin-right: 35px !important; }

.u-mr50 {
  margin-right: 40px !important; }

.u-mr45 {
  margin-right: 45px !important; }

.u-mr50 {
  margin-right: 50px !important; }

/* margin-bottom */
.u-mb0 {
  margin-bottom: 0 !important; }

.u-mb5 {
  margin-bottom: 5px !important; }

.u-mb8 {
  margin-bottom: 8px !important; }

.u-mb10 {
  margin-bottom: 10px !important; }

.u-mb12 {
  margin-bottom: 12px !important; }

.u-mb15 {
  margin-bottom: 15px !important; }

.u-mb20 {
  margin-bottom: 20px !important; }

.u-mb25 {
  margin-bottom: 25px !important; }

.u-mb30 {
  margin-bottom: 30px !important; }

.u-mb35 {
  margin-bottom: 35px !important; }

.u-mb40 {
  margin-bottom: 40px !important; }

.u-mb45 {
  margin-bottom: 45px !important; }

.u-mb50 {
  margin-bottom: 50px !important; }

/* margin-left */
.u-ml0 {
  margin-left: 0 !important; }

.u-ml5 {
  margin-left: 5px !important; }

.u-ml10 {
  margin-left: 10px !important; }

.u-ml12 {
  margin-left: 12px !important; }

.u-ml15 {
  margin-left: 15px !important; }

.u-ml20 {
  margin-left: 20px !important; }

.u-ml25 {
  margin-left: 25px !important; }

.u-ml30 {
  margin-left: 30px !important; }

.u-ml35 {
  margin-left: 35px !important; }

.u-ml40 {
  margin-left: 40px !important; }

.u-ml45 {
  margin-left: 45px !important; }

.u-ml50 {
  margin-left: 50px !important; }

/* utility padding setting
----------------------------------------------------------- */
/* padding-top */
.u-pt0 {
  padding-top: 0 !important; }

.u-pt5 {
  padding-top: 5px !important; }

.u-pt10 {
  padding-top: 10px !important; }

.u-pt12 {
  padding-top: 12px !important; }

.u-pt15 {
  padding-top: 15px !important; }

.u-pt20 {
  padding-top: 20px !important; }

.u-pt25 {
  padding-top: 25px !important; }

.u-pt30 {
  padding-top: 30px !important; }

.u-pt35 {
  padding-top: 35px !important; }

.u-pt40 {
  padding-top: 40px !important; }

.u-pt45 {
  padding-top: 45px !important; }

.u-pt50 {
  padding-top: 50px !important; }

/* padding-right */
.u-pr0 {
  padding-right: 0 !important; }

.u-pr5 {
  padding-right: 5px !important; }

.u-pr10 {
  padding-right: 10px !important; }

.u-pr15 {
  padding-right: 15px !important; }

.u-pr20 {
  padding-right: 20px !important; }

.u-pr25 {
  padding-right: 25px !important; }

.u-pr30 {
  padding-right: 30px !important; }

.u-pr35 {
  padding-right: 35px !important; }

.u-pr50 {
  padding-right: 40px !important; }

.u-pr45 {
  padding-right: 45px !important; }

.u-pr50 {
  padding-right: 50px !important; }

/* padding-bottom */
.u-pb0 {
  padding-bottom: 0 !important; }

.u-pb5 {
  padding-bottom: 5px !important; }

.u-pb10 {
  padding-bottom: 10px !important; }

.u-pb12 {
  padding-bottom: 12px !important; }

.u-pb15 {
  padding-bottom: 15px !important; }

.u-pb20 {
  padding-bottom: 20px !important; }

.u-pb25 {
  padding-bottom: 25px !important; }

.u-pb30 {
  padding-bottom: 30px !important; }

.u-pb35 {
  padding-bottom: 35px !important; }

.u-pb40 {
  padding-bottom: 40px !important; }

.u-pb45 {
  padding-bottom: 45px !important; }

.u-pb50 {
  padding-bottom: 50px !important; }

/* padding-left */
.u-pl0 {
  padding-left: 0 !important; }

.u-pl5 {
  padding-left: 5px !important; }

.u-pl10 {
  padding-left: 10px !important; }

.u-pl15 {
  padding-left: 15px !important; }

.u-pl20 {
  padding-left: 20px !important; }

.u-pl25 {
  padding-left: 25px !important; }

.u-pl30 {
  padding-left: 30px !important; }

.u-pl35 {
  padding-left: 35px !important; }

.u-pl40 {
  padding-left: 40px !important; }

.u-pl45 {
  padding-left: 45px !important; }

.u-pl50 {
  padding-left: 50px !important; }

/*! * * * * * * * * * * * * * * * * * * * *  CSShake :: shake
  v1.5.0
  CSS classes to move your DOM
  (c) 2015 @elrumordelaluz
  http://elrumordelaluz.github.io/csshake/
  Licensed under MIT
\* * * * * * * * * * * * * * * * * * * * */
.shake {
  display: inline-block;
  -webkit-transform-origin: center center;
          transform-origin: center center; }

.shake-freeze,
.shake-constant.shake-constant--hover:hover,
.shake-trigger:hover .shake-constant.shake-constant--hover {
  -webkit-animation-play-state: paused;
          animation-play-state: paused; }

.shake-freeze:hover,
.shake-trigger:hover .shake-freeze, .shake:hover,
.shake-trigger:hover .shake {
  -webkit-animation-play-state: running;
          animation-play-state: running; }

@-webkit-keyframes shake {
  2% {
    -webkit-transform: translate(0.5px, 0.5px) rotate(-0.5deg);
            transform: translate(0.5px, 0.5px) rotate(-0.5deg); }
  4% {
    -webkit-transform: translate(0.5px, 2.5px) rotate(1.5deg);
            transform: translate(0.5px, 2.5px) rotate(1.5deg); }
  6% {
    -webkit-transform: translate(-0.5px, 1.5px) rotate(0.5deg);
            transform: translate(-0.5px, 1.5px) rotate(0.5deg); }
  8% {
    -webkit-transform: translate(2.5px, 1.5px) rotate(-0.5deg);
            transform: translate(2.5px, 1.5px) rotate(-0.5deg); }
  10% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(1.5deg);
            transform: translate(-1.5px, 0.5px) rotate(1.5deg); }
  12% {
    -webkit-transform: translate(2.5px, -1.5px) rotate(-0.5deg);
            transform: translate(2.5px, -1.5px) rotate(-0.5deg); }
  14% {
    -webkit-transform: translate(0.5px, -0.5px) rotate(1.5deg);
            transform: translate(0.5px, -0.5px) rotate(1.5deg); }
  16% {
    -webkit-transform: translate(1.5px, 1.5px) rotate(-0.5deg);
            transform: translate(1.5px, 1.5px) rotate(-0.5deg); }
  18% {
    -webkit-transform: translate(-0.5px, 0.5px) rotate(0.5deg);
            transform: translate(-0.5px, 0.5px) rotate(0.5deg); }
  20% {
    -webkit-transform: translate(-0.5px, -0.5px) rotate(-0.5deg);
            transform: translate(-0.5px, -0.5px) rotate(-0.5deg); }
  22% {
    -webkit-transform: translate(-1.5px, -1.5px) rotate(-0.5deg);
            transform: translate(-1.5px, -1.5px) rotate(-0.5deg); }
  24% {
    -webkit-transform: translate(1.5px, -0.5px) rotate(1.5deg);
            transform: translate(1.5px, -0.5px) rotate(1.5deg); }
  26% {
    -webkit-transform: translate(1.5px, 1.5px) rotate(0.5deg);
            transform: translate(1.5px, 1.5px) rotate(0.5deg); }
  28% {
    -webkit-transform: translate(2.5px, 1.5px) rotate(0.5deg);
            transform: translate(2.5px, 1.5px) rotate(0.5deg); }
  30% {
    -webkit-transform: translate(2.5px, 0.5px) rotate(1.5deg);
            transform: translate(2.5px, 0.5px) rotate(1.5deg); }
  32% {
    -webkit-transform: translate(-0.5px, -0.5px) rotate(0.5deg);
            transform: translate(-0.5px, -0.5px) rotate(0.5deg); }
  34% {
    -webkit-transform: translate(-1.5px, -0.5px) rotate(-0.5deg);
            transform: translate(-1.5px, -0.5px) rotate(-0.5deg); }
  36% {
    -webkit-transform: translate(-1.5px, 2.5px) rotate(0.5deg);
            transform: translate(-1.5px, 2.5px) rotate(0.5deg); }
  38% {
    -webkit-transform: translate(2.5px, 2.5px) rotate(0.5deg);
            transform: translate(2.5px, 2.5px) rotate(0.5deg); }
  40% {
    -webkit-transform: translate(2.5px, 0.5px) rotate(0.5deg);
            transform: translate(2.5px, 0.5px) rotate(0.5deg); }
  42% {
    -webkit-transform: translate(1.5px, 2.5px) rotate(-0.5deg);
            transform: translate(1.5px, 2.5px) rotate(-0.5deg); }
  44% {
    -webkit-transform: translate(0.5px, -1.5px) rotate(1.5deg);
            transform: translate(0.5px, -1.5px) rotate(1.5deg); }
  46% {
    -webkit-transform: translate(2.5px, 0.5px) rotate(1.5deg);
            transform: translate(2.5px, 0.5px) rotate(1.5deg); }
  48% {
    -webkit-transform: translate(-0.5px, -0.5px) rotate(1.5deg);
            transform: translate(-0.5px, -0.5px) rotate(1.5deg); }
  50% {
    -webkit-transform: translate(2.5px, 1.5px) rotate(1.5deg);
            transform: translate(2.5px, 1.5px) rotate(1.5deg); }
  52% {
    -webkit-transform: translate(0.5px, 0.5px) rotate(0.5deg);
            transform: translate(0.5px, 0.5px) rotate(0.5deg); }
  54% {
    -webkit-transform: translate(-0.5px, -1.5px) rotate(-0.5deg);
            transform: translate(-0.5px, -1.5px) rotate(-0.5deg); }
  56% {
    -webkit-transform: translate(0.5px, 1.5px) rotate(0.5deg);
            transform: translate(0.5px, 1.5px) rotate(0.5deg); }
  58% {
    -webkit-transform: translate(2.5px, 0.5px) rotate(0.5deg);
            transform: translate(2.5px, 0.5px) rotate(0.5deg); }
  60% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(0.5deg);
            transform: translate(-1.5px, 0.5px) rotate(0.5deg); }
  62% {
    -webkit-transform: translate(0.5px, 1.5px) rotate(0.5deg);
            transform: translate(0.5px, 1.5px) rotate(0.5deg); }
  64% {
    -webkit-transform: translate(-0.5px, 0.5px) rotate(-0.5deg);
            transform: translate(-0.5px, 0.5px) rotate(-0.5deg); }
  66% {
    -webkit-transform: translate(0.5px, 0.5px) rotate(0.5deg);
            transform: translate(0.5px, 0.5px) rotate(0.5deg); }
  68% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(1.5deg);
            transform: translate(-1.5px, 0.5px) rotate(1.5deg); }
  70% {
    -webkit-transform: translate(-0.5px, 2.5px) rotate(1.5deg);
            transform: translate(-0.5px, 2.5px) rotate(1.5deg); }
  72% {
    -webkit-transform: translate(-0.5px, 0.5px) rotate(0.5deg);
            transform: translate(-0.5px, 0.5px) rotate(0.5deg); }
  74% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(0.5deg);
            transform: translate(-1.5px, 0.5px) rotate(0.5deg); }
  76% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(0.5deg);
            transform: translate(-1.5px, 0.5px) rotate(0.5deg); }
  78% {
    -webkit-transform: translate(-0.5px, 2.5px) rotate(1.5deg);
            transform: translate(-0.5px, 2.5px) rotate(1.5deg); }
  80% {
    -webkit-transform: translate(-1.5px, 1.5px) rotate(-0.5deg);
            transform: translate(-1.5px, 1.5px) rotate(-0.5deg); }
  82% {
    -webkit-transform: translate(1.5px, 1.5px) rotate(-0.5deg);
            transform: translate(1.5px, 1.5px) rotate(-0.5deg); }
  84% {
    -webkit-transform: translate(0.5px, -0.5px) rotate(1.5deg);
            transform: translate(0.5px, -0.5px) rotate(1.5deg); }
  86% {
    -webkit-transform: translate(0.5px, -1.5px) rotate(-0.5deg);
            transform: translate(0.5px, -1.5px) rotate(-0.5deg); }
  88% {
    -webkit-transform: translate(1.5px, 1.5px) rotate(0.5deg);
            transform: translate(1.5px, 1.5px) rotate(0.5deg); }
  90% {
    -webkit-transform: translate(2.5px, 0.5px) rotate(-0.5deg);
            transform: translate(2.5px, 0.5px) rotate(-0.5deg); }
  92% {
    -webkit-transform: translate(2.5px, -0.5px) rotate(-0.5deg);
            transform: translate(2.5px, -0.5px) rotate(-0.5deg); }
  94% {
    -webkit-transform: translate(-1.5px, 1.5px) rotate(0.5deg);
            transform: translate(-1.5px, 1.5px) rotate(0.5deg); }
  96% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(0.5deg);
            transform: translate(-1.5px, 0.5px) rotate(0.5deg); }
  98% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(1.5deg);
            transform: translate(-1.5px, 0.5px) rotate(1.5deg); }
  0%, 100% {
    -webkit-transform: translate(0, 0) rotate(0);
            transform: translate(0, 0) rotate(0); } }

@keyframes shake {
  2% {
    -webkit-transform: translate(0.5px, 0.5px) rotate(-0.5deg);
            transform: translate(0.5px, 0.5px) rotate(-0.5deg); }
  4% {
    -webkit-transform: translate(0.5px, 2.5px) rotate(1.5deg);
            transform: translate(0.5px, 2.5px) rotate(1.5deg); }
  6% {
    -webkit-transform: translate(-0.5px, 1.5px) rotate(0.5deg);
            transform: translate(-0.5px, 1.5px) rotate(0.5deg); }
  8% {
    -webkit-transform: translate(2.5px, 1.5px) rotate(-0.5deg);
            transform: translate(2.5px, 1.5px) rotate(-0.5deg); }
  10% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(1.5deg);
            transform: translate(-1.5px, 0.5px) rotate(1.5deg); }
  12% {
    -webkit-transform: translate(2.5px, -1.5px) rotate(-0.5deg);
            transform: translate(2.5px, -1.5px) rotate(-0.5deg); }
  14% {
    -webkit-transform: translate(0.5px, -0.5px) rotate(1.5deg);
            transform: translate(0.5px, -0.5px) rotate(1.5deg); }
  16% {
    -webkit-transform: translate(1.5px, 1.5px) rotate(-0.5deg);
            transform: translate(1.5px, 1.5px) rotate(-0.5deg); }
  18% {
    -webkit-transform: translate(-0.5px, 0.5px) rotate(0.5deg);
            transform: translate(-0.5px, 0.5px) rotate(0.5deg); }
  20% {
    -webkit-transform: translate(-0.5px, -0.5px) rotate(-0.5deg);
            transform: translate(-0.5px, -0.5px) rotate(-0.5deg); }
  22% {
    -webkit-transform: translate(-1.5px, -1.5px) rotate(-0.5deg);
            transform: translate(-1.5px, -1.5px) rotate(-0.5deg); }
  24% {
    -webkit-transform: translate(1.5px, -0.5px) rotate(1.5deg);
            transform: translate(1.5px, -0.5px) rotate(1.5deg); }
  26% {
    -webkit-transform: translate(1.5px, 1.5px) rotate(0.5deg);
            transform: translate(1.5px, 1.5px) rotate(0.5deg); }
  28% {
    -webkit-transform: translate(2.5px, 1.5px) rotate(0.5deg);
            transform: translate(2.5px, 1.5px) rotate(0.5deg); }
  30% {
    -webkit-transform: translate(2.5px, 0.5px) rotate(1.5deg);
            transform: translate(2.5px, 0.5px) rotate(1.5deg); }
  32% {
    -webkit-transform: translate(-0.5px, -0.5px) rotate(0.5deg);
            transform: translate(-0.5px, -0.5px) rotate(0.5deg); }
  34% {
    -webkit-transform: translate(-1.5px, -0.5px) rotate(-0.5deg);
            transform: translate(-1.5px, -0.5px) rotate(-0.5deg); }
  36% {
    -webkit-transform: translate(-1.5px, 2.5px) rotate(0.5deg);
            transform: translate(-1.5px, 2.5px) rotate(0.5deg); }
  38% {
    -webkit-transform: translate(2.5px, 2.5px) rotate(0.5deg);
            transform: translate(2.5px, 2.5px) rotate(0.5deg); }
  40% {
    -webkit-transform: translate(2.5px, 0.5px) rotate(0.5deg);
            transform: translate(2.5px, 0.5px) rotate(0.5deg); }
  42% {
    -webkit-transform: translate(1.5px, 2.5px) rotate(-0.5deg);
            transform: translate(1.5px, 2.5px) rotate(-0.5deg); }
  44% {
    -webkit-transform: translate(0.5px, -1.5px) rotate(1.5deg);
            transform: translate(0.5px, -1.5px) rotate(1.5deg); }
  46% {
    -webkit-transform: translate(2.5px, 0.5px) rotate(1.5deg);
            transform: translate(2.5px, 0.5px) rotate(1.5deg); }
  48% {
    -webkit-transform: translate(-0.5px, -0.5px) rotate(1.5deg);
            transform: translate(-0.5px, -0.5px) rotate(1.5deg); }
  50% {
    -webkit-transform: translate(2.5px, 1.5px) rotate(1.5deg);
            transform: translate(2.5px, 1.5px) rotate(1.5deg); }
  52% {
    -webkit-transform: translate(0.5px, 0.5px) rotate(0.5deg);
            transform: translate(0.5px, 0.5px) rotate(0.5deg); }
  54% {
    -webkit-transform: translate(-0.5px, -1.5px) rotate(-0.5deg);
            transform: translate(-0.5px, -1.5px) rotate(-0.5deg); }
  56% {
    -webkit-transform: translate(0.5px, 1.5px) rotate(0.5deg);
            transform: translate(0.5px, 1.5px) rotate(0.5deg); }
  58% {
    -webkit-transform: translate(2.5px, 0.5px) rotate(0.5deg);
            transform: translate(2.5px, 0.5px) rotate(0.5deg); }
  60% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(0.5deg);
            transform: translate(-1.5px, 0.5px) rotate(0.5deg); }
  62% {
    -webkit-transform: translate(0.5px, 1.5px) rotate(0.5deg);
            transform: translate(0.5px, 1.5px) rotate(0.5deg); }
  64% {
    -webkit-transform: translate(-0.5px, 0.5px) rotate(-0.5deg);
            transform: translate(-0.5px, 0.5px) rotate(-0.5deg); }
  66% {
    -webkit-transform: translate(0.5px, 0.5px) rotate(0.5deg);
            transform: translate(0.5px, 0.5px) rotate(0.5deg); }
  68% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(1.5deg);
            transform: translate(-1.5px, 0.5px) rotate(1.5deg); }
  70% {
    -webkit-transform: translate(-0.5px, 2.5px) rotate(1.5deg);
            transform: translate(-0.5px, 2.5px) rotate(1.5deg); }
  72% {
    -webkit-transform: translate(-0.5px, 0.5px) rotate(0.5deg);
            transform: translate(-0.5px, 0.5px) rotate(0.5deg); }
  74% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(0.5deg);
            transform: translate(-1.5px, 0.5px) rotate(0.5deg); }
  76% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(0.5deg);
            transform: translate(-1.5px, 0.5px) rotate(0.5deg); }
  78% {
    -webkit-transform: translate(-0.5px, 2.5px) rotate(1.5deg);
            transform: translate(-0.5px, 2.5px) rotate(1.5deg); }
  80% {
    -webkit-transform: translate(-1.5px, 1.5px) rotate(-0.5deg);
            transform: translate(-1.5px, 1.5px) rotate(-0.5deg); }
  82% {
    -webkit-transform: translate(1.5px, 1.5px) rotate(-0.5deg);
            transform: translate(1.5px, 1.5px) rotate(-0.5deg); }
  84% {
    -webkit-transform: translate(0.5px, -0.5px) rotate(1.5deg);
            transform: translate(0.5px, -0.5px) rotate(1.5deg); }
  86% {
    -webkit-transform: translate(0.5px, -1.5px) rotate(-0.5deg);
            transform: translate(0.5px, -1.5px) rotate(-0.5deg); }
  88% {
    -webkit-transform: translate(1.5px, 1.5px) rotate(0.5deg);
            transform: translate(1.5px, 1.5px) rotate(0.5deg); }
  90% {
    -webkit-transform: translate(2.5px, 0.5px) rotate(-0.5deg);
            transform: translate(2.5px, 0.5px) rotate(-0.5deg); }
  92% {
    -webkit-transform: translate(2.5px, -0.5px) rotate(-0.5deg);
            transform: translate(2.5px, -0.5px) rotate(-0.5deg); }
  94% {
    -webkit-transform: translate(-1.5px, 1.5px) rotate(0.5deg);
            transform: translate(-1.5px, 1.5px) rotate(0.5deg); }
  96% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(0.5deg);
            transform: translate(-1.5px, 0.5px) rotate(0.5deg); }
  98% {
    -webkit-transform: translate(-1.5px, 0.5px) rotate(1.5deg);
            transform: translate(-1.5px, 0.5px) rotate(1.5deg); }
  0%, 100% {
    -webkit-transform: translate(0, 0) rotate(0);
            transform: translate(0, 0) rotate(0); } }

.shake:hover,
.shake-trigger:hover .shake, .shake.shake-freeze, .shake.shake-constant {
  -webkit-animation-name: shake;
          animation-name: shake;
  -webkit-animation-duration: 100ms;
          animation-duration: 100ms;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; }
