@charset "UTF-8";
/*********************
IMPORTING PARTIALS
These files are needed at the beginning so that we establish all
our mixins, functions, and variables that we'll be using across
the whole project.
*********************/
/* normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Allura);
@import url(https://fonts.googleapis.com/css?family=Italiana);
@import url(https://fonts.googleapis.com/css?family=Kotta+One);
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block; }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent; }

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,
strong,
.strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn,
em,
.em {
  font-style: italic; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

/*
 * proper formatting (http://blog.fontdeck.com/post/9037028497/hyphens)
*/
p {
  -webkit-hyphens: auto;
  -epub-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto; }

/*
 * Addresses margins set differently in IE6/7.
 */
pre {
  margin: 0; }

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em; }

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre-wrap; }

/**
 * Set consistent quote types.
 */
q {
  quotes: "\201C" "\201D" "\2018" "\2019"; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
q:before,
q:after {
  content: '';
  content: none; }

small, .small {
  font-size: 75%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* ==========================================================================
  Lists
========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl,
menu,
ol,
ul {
  margin: 1em 0; }

dd {
  margin: 0; }

/*
 * Addresses paddings set differently in IE6/7.
 */
menu {
  padding: 0 0 0 40px; }

ol,
ul {
  padding: 0;
  list-style-type: none; }

/*
 * Corrects list images handled incorrectly in IE7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none; }

/* ==========================================================================
  Embedded content
========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img {
  border: 0; }

/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden; }

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0; }

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.image-replacement,
.ir {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden; }

.clearfix, .cf {
  zoom: 1; }
  .clearfix:before, .clearfix:after, .cf:before, .cf:after {
    content: "";
    display: table; }
  .clearfix:after, .cf:after {
    clear: both; }

/*
use the best ampersand
http://simplebits.com/notebook/2008/08/14/ampersands-2/
*/
span.amp {
  font-family: Baskerville,'Goudy Old Style',Palatino,'Book Antiqua',serif !important;
  font-style: italic; }

/******************************************************************
Site Name:
Author:

Stylesheet: Variables

Here is where we declare all our variables like colors, fonts,
base values, and defaults. We want to make sure this file ONLY
contains variables that way our files don't get all messy.
No one likes a mess.

******************************************************************/
/*********************
COLORS
Need help w/ choosing your colors? Try this site out:
http://0to255.com/
*********************/
/*
Here's a great tutorial on how to
use color variables properly:
http://sachagreif.com/sass-color-variables/
*/
/******************************************************************
Site Name:
Author:

Stylesheet: Typography

Need to import a font or set of icons for your site? Drop them in
here or just use this to establish your typographical grid. Or not.
Do whatever you want to...GOSH!

Helpful Articles:
http://trentwalton.com/2012/06/19/fluid-type/
http://ia.net/blog/responsive-typography-the-basics/
http://alistapart.com/column/responsive-typography-is-a-physical-discipline

******************************************************************/
/*********************
FONT FACE (IN YOUR FACE)
*********************/
/*  To embed your own fonts, use this syntax
  and place your fonts inside the
  library/fonts folder. For more information
  on embedding fonts, go to:
  http://www.fontsquirrel.com/
  Be sure to remove the comment brackets.
*/
/*  @font-face {
      font-family: 'Font Name';
      src: url('library/fonts/font-name.eot');
      src: url('library/fonts/font-name.eot?#iefix') format('embedded-opentype'),
             url('library/fonts/font-name.woff') format('woff'),
             url('library/fonts/font-name.ttf') format('truetype'),
             url('library/fonts/font-name.svg#font-name') format('svg');
      font-weight: normal;
      font-style: normal;
  }
*/
/*
The following is based of Typebase:
https://github.com/devinhunt/typebase.css
I've edited it a bit, but it's a nice starting point.
*/
/*
 i imported this one in the functions file so bones would look sweet.
 don't forget to remove it for your site.
*/
/*
some nice typographical defaults
more here: http://www.newnet-soft.com/blog/csstypography
*/
p {
  -ms-word-break: break-all;
  -ms-word-wrap: break-all;
  word-break: break-word;
  word-break: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
  -webkit-hyphenate-before: 2;
  -webkit-hyphenate-after: 3;
  hyphenate-lines: 3; }

/******************************************************************
Site Name:
Author:

Stylesheet: Sass Functions

You can do a lot of really cool things in Sass. Functions help you
make repeated actions a lot easier. They are really similar to mixins,
but can be used for so much more.

Anyway, keep them all in here so it's easier to find when you're
looking for one.

For more info on functions, go here:
http://sass-lang.com/documentation/Sass/Script/Functions.html

******************************************************************/
/*********************
COLOR FUNCTIONS
These are helpful when you're working
with shadows and such things. It's essentially
a quicker way to write RGBA.

Example:
box-shadow: 0 0 4px black(0.3);
compiles to:
box-shadow: 0 0 4px rgba(0,0,0,0.3);
*********************/
/*********************
RESPONSIVE HELPER FUNCTION
If you're creating a responsive site, then
you've probably already read
Responsive Web Design: http://www.abookapart.com/products/responsive-web-design

Here's a nice little helper function for calculating
target / context
as mentioned in that book.

Example:
width: cp(650px, 1000px);
or
width: calc-percent(650px, 1000px);
both compile to:
width: 65%;
*********************/
/******************************************************************
Site Name:
Author:

Stylesheet: Mixins Stylesheet

This is where you can take advantage of Sass' great features: Mixins.
I won't go in-depth on how they work exactly,
there are a few articles below that will help do that. What I will
tell you is that this will help speed up simple changes like
changing a color or adding CSS3 techniques gradients.

A WORD OF WARNING: It's very easy to overdo it here. Be careful and
remember less is more.

Helpful:
http://sachagreif.com/useful-sass-mixins/
http://thesassway.com/intermediate/leveraging-sass-mixins-for-cleaner-code
http://web-design-weekly.com/blog/2013/05/12/handy-sass-mixins/

******************************************************************/
/*********************
TRANSITION
*********************/
/*
I totally rewrote this to be cleaner and easier to use.
You'll need to be using Sass 3.2+ for these to work.
Thanks to @anthonyshort for the inspiration on these.
USAGE: @include transition(all 0.2s ease-in-out);
*/
/*********************
CSS3 GRADIENTS
Be careful with these since they can
really slow down your CSS. Don't overdo it.
*********************/
/* @include css-gradient(#dfdfdf,#f8f8f8); */
/*********************
BOX SIZING
*********************/
/* @include box-sizing(border-box); */
/* NOTE: value of "padding-box" is only supported in Gecko. So
probably best not to use it. I mean, were you going to anyway? */
/* ==========================================================================
indent
========================================================================== */
/* ==========================================================================
clearfix
========================================================================== */
/* ==========================================================================
hr
========================================================================== */
/******************************************************************
Site Name:
Author:

Stylesheet: Grid Stylesheet

I've seperated the grid so you can swap it out easily. It's
called at the top the style.scss stylesheet.

There are a ton of grid solutions out there. You should definitely
experiment with your own. Here are some recommendations:

http://gridsetapp.com - Love this site. Responsive Grids made easy.
http://susy.oddbird.net/ - Grids using Compass. Very elegant.
http://gridpak.com/ - Create your own responsive grid.
https://github.com/dope/lemonade - Neat lightweight grid.


The grid below is a custom built thingy I modeled a bit after
Gridset. It's VERY basic and probably shouldn't be used on
your client projects. The idea is you learn how to roll your
own grids. It's better in the long run and allows you full control
over your project's layout.

******************************************************************/
.last-col {
  float: right;
  padding-right: 0 !important; }

/*
Mobile Grid Styles
These are the widths for the mobile grid.
There are four types, but you can add or customize
them however you see fit.
*/
@media (max-width: 767px) {
  .m-all {
    float: left;
    padding-right: 0.75em;
    width: 100%;
    padding-right: 0; }

  .m-1of2 {
    float: left;
    padding-right: 0.75em;
    width: 50%; }

  .m-1of3 {
    float: left;
    padding-right: 0.75em;
    width: 33.33%; }

  .m-2of3 {
    float: left;
    padding-right: 0.75em;
    width: 66.66%; }

  .m-1of4 {
    float: left;
    padding-right: 0.75em;
    width: 25%; }

  .m-3of4 {
    float: left;
    padding-right: 0.75em;
    width: 75%; } }
/* Portrait tablet to landscape */
@media (min-width: 768px) and (max-width: 1029px) {
  .t-all {
    float: left;
    padding-right: 0.75em;
    width: 100%;
    padding-right: 0; }

  .t-1of2 {
    float: left;
    padding-right: 0.75em;
    width: 50%; }

  .t-1of3 {
    float: left;
    padding-right: 0.75em;
    width: 33.33%; }

  .t-2of3 {
    float: left;
    padding-right: 0.75em;
    width: 66.66%; }

  .t-1of4 {
    float: left;
    padding-right: 0.75em;
    width: 25%; }

  .t-3of4 {
    float: left;
    padding-right: 0.75em;
    width: 75%; }

  .t-1of5 {
    float: left;
    padding-right: 0.75em;
    width: 20%; }

  .t-2of5 {
    float: left;
    padding-right: 0.75em;
    width: 40%; }

  .t-3of5 {
    float: left;
    padding-right: 0.75em;
    width: 60%; }

  .t-4of5 {
    float: left;
    padding-right: 0.75em;
    width: 80%; } }
/* Landscape to small desktop */
@media (min-width: 1030px) {
  .d-all {
    float: left;
    padding-right: 0.75em;
    width: 100%;
    padding-right: 0; }

  .d-1of2 {
    float: left;
    padding-right: 0.75em;
    width: 50%; }

  .d-1of3 {
    float: left;
    padding-right: 0.75em;
    width: 33.33%; }

  .d-2of3 {
    float: left;
    padding-right: 0.75em;
    width: 66.66%; }

  .d-1of4 {
    float: left;
    padding-right: 0.75em;
    width: 25%; }

  .d-3of4 {
    float: left;
    padding-right: 0.75em;
    width: 75%; }

  .d-1of5 {
    float: left;
    padding-right: 0.75em;
    width: 20%; }

  .d-2of5 {
    float: left;
    padding-right: 0.75em;
    width: 40%; }

  .d-3of5 {
    float: left;
    padding-right: 0.75em;
    width: 60%; }

  .d-4of5 {
    float: left;
    padding-right: 0.75em;
    width: 80%; }

  .d-1of6 {
    float: left;
    padding-right: 0.75em;
    width: 16.6666666667%; }

  .d-1of7 {
    float: left;
    padding-right: 0.75em;
    width: 14.2857142857%; }

  .d-2of7 {
    float: left;
    padding-right: 0.75em;
    width: 28.5714286%; }

  .d-3of7 {
    float: left;
    padding-right: 0.75em;
    width: 42.8571429%; }

  .d-4of7 {
    float: left;
    padding-right: 0.75em;
    width: 57.1428572%; }

  .d-5of7 {
    float: left;
    padding-right: 0.75em;
    width: 71.4285715%; }

  .d-6of7 {
    float: left;
    padding-right: 0.75em;
    width: 85.7142857%; }

  .d-1of8 {
    float: left;
    padding-right: 0.75em;
    width: 12.5%; }

  .d-1of9 {
    float: left;
    padding-right: 0.75em;
    width: 11.1111111111%; }

  .d-1of10 {
    float: left;
    padding-right: 0.75em;
    width: 10%; }

  .d-1of11 {
    float: left;
    padding-right: 0.75em;
    width: 9.09090909091%; }

  .d-1of12 {
    float: left;
    padding-right: 0.75em;
    width: 8.33%; } }
@-webkit-keyframes bounce {
  0% {
    -webkit-transform: translateY(0); }
  20% {
    -webkit-transform: translateY(0); }
  40% {
    -webkit-transform: translateY(-30px); }
  50% {
    -webkit-transform: translateY(0); }
  60% {
    -webkit-transform: translateY(-15px); }
  80% {
    -webkit-transform: translateY(0); }
  100% {
    -webkit-transform: translateY(0); } }
@-moz-keyframes bounce {
  0% {
    -moz-transform: translateY(0); }
  20% {
    -moz-transform: translateY(0); }
  40% {
    -moz-transform: translateY(-30px); }
  50% {
    -moz-transform: translateY(0); }
  60% {
    -moz-transform: translateY(-15px); }
  80% {
    -moz-transform: translateY(0); }
  100% {
    -moz-transform: translateY(0); } }
@-ms-keyframes bounce {
  0% {
    -ms-transform: translateY(0); }
  20% {
    -ms-transform: translateY(0); }
  40% {
    -ms-transform: translateY(-30px); }
  50% {
    -ms-transform: translateY(0); }
  60% {
    -ms-transform: translateY(-15px); }
  80% {
    -ms-transform: translateY(0); }
  100% {
    -ms-transform: translateY(0); } }
@-o-keyframes bounce {
  0% {
    -o-transform: translateY(0); }
  20% {
    -o-transform: translateY(0); }
  40% {
    -o-transform: translateY(-30px); }
  50% {
    -o-transform: translateY(0); }
  60% {
    -o-transform: translateY(-15px); }
  80% {
    -o-transform: translateY(0); }
  100% {
    -o-transform: translateY(0); } }
@keyframes bounce {
  0% {
    transform: translateY(0); }
  20% {
    transform: translateY(0); }
  40% {
    transform: translateY(-30px); }
  50% {
    transform: translateY(0); }
  60% {
    transform: translateY(-15px); }
  80% {
    transform: translateY(0); }
  100% {
    transform: translateY(0); } }
.bounce {
  -webkit-animation-name: bounce;
  -moz-animation-name: bounce;
  -ms-animation-name: bounce;
  -o-animation-name: bounce;
  animation-name: bounce; }

@-webkit-keyframes flash {
  0% {
    opacity: 1; }
  25% {
    opacity: 0; }
  50% {
    opacity: 1; }
  75% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-moz-keyframes flash {
  0% {
    opacity: 1; }
  25% {
    opacity: 0; }
  50% {
    opacity: 1; }
  75% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-ms-keyframes flash {
  0% {
    opacity: 1; }
  25% {
    opacity: 0; }
  50% {
    opacity: 1; }
  75% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-o-keyframes flash {
  0% {
    opacity: 1; }
  25% {
    opacity: 0; }
  50% {
    opacity: 1; }
  75% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes flash {
  0% {
    opacity: 1; }
  25% {
    opacity: 0; }
  50% {
    opacity: 1; }
  75% {
    opacity: 0; }
  100% {
    opacity: 1; } }
.flash {
  -webkit-animation-name: flash;
  -moz-animation-name: flash;
  -ms-animation-name: flash;
  -o-animation-name: flash;
  animation-name: flash; }

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1); }
  50% {
    -webkit-transform: scale(1.1); }
  100% {
    -webkit-transform: scale(1); } }
@-moz-keyframes pulse {
  0% {
    -moz-transform: scale(1); }
  50% {
    -moz-transform: scale(1.1); }
  100% {
    -moz-transform: scale(1); } }
@-ms-keyframes pulse {
  0% {
    -ms-transform: scale(1); }
  50% {
    -ms-transform: scale(1.1); }
  100% {
    -ms-transform: scale(1); } }
@-o-keyframes pulse {
  0% {
    -o-transform: scale(1); }
  50% {
    -o-transform: scale(1.1); }
  100% {
    -o-transform: scale(1); } }
@keyframes pulse {
  0% {
    transform: scale(1); }
  50% {
    transform: scale(1.1); }
  100% {
    transform: scale(1); } }
.pulse {
  -webkit-animation-name: pulse;
  -moz-animation-name: pulse;
  -ms-animation-name: pulse;
  -o-animation-name: pulse;
  animation-name: pulse; }

@-webkit-keyframes shake {
  0% {
    -webkit-transform: translateX(0); }
  10% {
    -webkit-transform: translateX(-10px); }
  20% {
    -webkit-transform: translateX(10px); }
  30% {
    -webkit-transform: translateX(-10px); }
  40% {
    -webkit-transform: translateX(10px); }
  50% {
    -webkit-transform: translateX(-10px); }
  60% {
    -webkit-transform: translateX(10px); }
  70% {
    -webkit-transform: translateX(-10px); }
  80% {
    -webkit-transform: translateX(10px); }
  90% {
    -webkit-transform: translateX(-10px); }
  100% {
    -webkit-transform: translateX(0); } }
@-moz-keyframes shake {
  0% {
    -moz-transform: translateX(0); }
  10% {
    -moz-transform: translateX(-10px); }
  20% {
    -moz-transform: translateX(10px); }
  30% {
    -moz-transform: translateX(-10px); }
  40% {
    -moz-transform: translateX(10px); }
  50% {
    -moz-transform: translateX(-10px); }
  60% {
    -moz-transform: translateX(10px); }
  70% {
    -moz-transform: translateX(-10px); }
  80% {
    -moz-transform: translateX(10px); }
  90% {
    -moz-transform: translateX(-10px); }
  100% {
    -moz-transform: translateX(0); } }
@-ms-keyframes shake {
  0% {
    -ms-transform: translateX(0); }
  10% {
    -ms-transform: translateX(-10px); }
  20% {
    -ms-transform: translateX(10px); }
  30% {
    -ms-transform: translateX(-10px); }
  40% {
    -ms-transform: translateX(10px); }
  50% {
    -ms-transform: translateX(-10px); }
  60% {
    -ms-transform: translateX(10px); }
  70% {
    -ms-transform: translateX(-10px); }
  80% {
    -ms-transform: translateX(10px); }
  90% {
    -ms-transform: translateX(-10px); }
  100% {
    -ms-transform: translateX(0); } }
@-o-keyframes shake {
  0% {
    -o-transform: translateX(0); }
  10% {
    -o-transform: translateX(-10px); }
  20% {
    -o-transform: translateX(10px); }
  30% {
    -o-transform: translateX(-10px); }
  40% {
    -o-transform: translateX(10px); }
  50% {
    -o-transform: translateX(-10px); }
  60% {
    -o-transform: translateX(10px); }
  70% {
    -o-transform: translateX(-10px); }
  80% {
    -o-transform: translateX(10px); }
  90% {
    -o-transform: translateX(-10px); }
  100% {
    -o-transform: translateX(0); } }
@keyframes shake {
  0% {
    transform: translateX(0); }
  10% {
    transform: translateX(-10px); }
  20% {
    transform: translateX(10px); }
  30% {
    transform: translateX(-10px); }
  40% {
    transform: translateX(10px); }
  50% {
    transform: translateX(-10px); }
  60% {
    transform: translateX(10px); }
  70% {
    transform: translateX(-10px); }
  80% {
    transform: translateX(10px); }
  90% {
    transform: translateX(-10px); }
  100% {
    transform: translateX(0); } }
.shake {
  -webkit-animation-name: shake;
  -moz-animation-name: shake;
  -ms-animation-name: shake;
  -o-animation-name: shake;
  animation-name: shake; }

@-webkit-keyframes swing {
  20%, 40%, 60%, 80%, 100% {
    -webkit-transform-origin: top center; }
  20% {
    -webkit-transform: rotate(15deg); }
  40% {
    -webkit-transform: rotate(-10deg); }
  60% {
    -webkit-transform: rotate(5deg); }
  80% {
    -webkit-transform: rotate(-5deg); }
  100% {
    -webkit-transform: rotate(0deg); } }
@-moz-keyframes swing {
  20%, 40%, 60%, 80%, 100% {
    -moz-transform-origin: top center; }
  20% {
    -moz-transform: rotate(15deg); }
  40% {
    -moz-transform: rotate(-10deg); }
  60% {
    -moz-transform: rotate(5deg); }
  80% {
    -moz-transform: rotate(-5deg); }
  100% {
    -moz-transform: rotate(0deg); } }
@-ms-keyframes swing {
  20%, 40%, 60%, 80%, 100% {
    -ms-transform-origin: top center; }
  20% {
    -ms-transform: rotate(15deg); }
  40% {
    -ms-transform: rotate(-10deg); }
  60% {
    -ms-transform: rotate(5deg); }
  80% {
    -ms-transform: rotate(-5deg); }
  100% {
    -ms-transform: rotate(0deg); } }
@-o-keyframes swing {
  20%, 40%, 60%, 80%, 100% {
    -o-transform-origin: top center; }
  20% {
    -o-transform: rotate(15deg); }
  40% {
    -o-transform: rotate(-10deg); }
  60% {
    -o-transform: rotate(5deg); }
  80% {
    -o-transform: rotate(-5deg); }
  100% {
    -o-transform: rotate(0deg); } }
@keyframes swing {
  20%, 40%, 60%, 80%, 100% {
    transform-origin: top center; }
  20% {
    transform: rotate(15deg); }
  40% {
    transform: rotate(-10deg); }
  60% {
    transform: rotate(5deg); }
  80% {
    transform: rotate(-5deg); }
  100% {
    transform: rotate(0deg); } }
.swing {
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  -ms-transform-origin: top center;
  -o-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  -moz-animation-name: swing;
  -ms-animation-name: swing;
  -o-animation-name: swing;
  animation-name: swing; }

@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale(1); }
  10% {
    -webkit-transform: scale(0.9) rotate(-3deg); }
  20% {
    -webkit-transform: scale(0.9) rotate(-3deg); }
  30% {
    -webkit-transform: scale(1.1) rotate(3deg); }
  40% {
    -webkit-transform: scale(1.1) rotate(-3deg); }
  50% {
    -webkit-transform: scale(1.1) rotate(3deg); }
  60% {
    -webkit-transform: scale(1.1) rotate(-3deg); }
  70% {
    -webkit-transform: scale(1.1) rotate(3deg); }
  80% {
    -webkit-transform: scale(1.1) rotate(-3deg); }
  90% {
    -webkit-transform: scale(1.1) rotate(3deg); }
  100% {
    -webkit-transform: scale(1) rotate(0); } }
@-moz-keyframes tada {
  0% {
    -moz-transform: scale(1); }
  10% {
    -moz-transform: scale(0.9) rotate(-3deg); }
  20% {
    -moz-transform: scale(0.9) rotate(-3deg); }
  30% {
    -moz-transform: scale(1.1) rotate(3deg); }
  40% {
    -moz-transform: scale(1.1) rotate(-3deg); }
  50% {
    -moz-transform: scale(1.1) rotate(3deg); }
  60% {
    -moz-transform: scale(1.1) rotate(-3deg); }
  70% {
    -moz-transform: scale(1.1) rotate(3deg); }
  80% {
    -moz-transform: scale(1.1) rotate(-3deg); }
  90% {
    -moz-transform: scale(1.1) rotate(3deg); }
  100% {
    -moz-transform: scale(1) rotate(0); } }
@-ms-keyframes tada {
  0% {
    -ms-transform: scale(1); }
  10% {
    -ms-transform: scale(0.9) rotate(-3deg); }
  20% {
    -ms-transform: scale(0.9) rotate(-3deg); }
  30% {
    -ms-transform: scale(1.1) rotate(3deg); }
  40% {
    -ms-transform: scale(1.1) rotate(-3deg); }
  50% {
    -ms-transform: scale(1.1) rotate(3deg); }
  60% {
    -ms-transform: scale(1.1) rotate(-3deg); }
  70% {
    -ms-transform: scale(1.1) rotate(3deg); }
  80% {
    -ms-transform: scale(1.1) rotate(-3deg); }
  90% {
    -ms-transform: scale(1.1) rotate(3deg); }
  100% {
    -ms-transform: scale(1) rotate(0); } }
@-o-keyframes tada {
  0% {
    -o-transform: scale(1); }
  10% {
    -o-transform: scale(0.9) rotate(-3deg); }
  20% {
    -o-transform: scale(0.9) rotate(-3deg); }
  30% {
    -o-transform: scale(1.1) rotate(3deg); }
  40% {
    -o-transform: scale(1.1) rotate(-3deg); }
  50% {
    -o-transform: scale(1.1) rotate(3deg); }
  60% {
    -o-transform: scale(1.1) rotate(-3deg); }
  70% {
    -o-transform: scale(1.1) rotate(3deg); }
  80% {
    -o-transform: scale(1.1) rotate(-3deg); }
  90% {
    -o-transform: scale(1.1) rotate(3deg); }
  100% {
    -o-transform: scale(1) rotate(0); } }
@keyframes tada {
  0% {
    transform: scale(1); }
  10% {
    transform: scale(0.9) rotate(-3deg); }
  20% {
    transform: scale(0.9) rotate(-3deg); }
  30% {
    transform: scale(1.1) rotate(3deg); }
  40% {
    transform: scale(1.1) rotate(-3deg); }
  50% {
    transform: scale(1.1) rotate(3deg); }
  60% {
    transform: scale(1.1) rotate(-3deg); }
  70% {
    transform: scale(1.1) rotate(3deg); }
  80% {
    transform: scale(1.1) rotate(-3deg); }
  90% {
    transform: scale(1.1) rotate(3deg); }
  100% {
    transform: scale(1) rotate(0); } }
.tada {
  -webkit-animation-name: tada;
  -moz-animation-name: tada;
  -ms-animation-name: tada;
  -o-animation-name: tada;
  animation-name: tada; }

@-webkit-keyframes wobble {
  0% {
    -webkit-transform: translateX(0%); }
  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg); }
  30% {
    -webkit-transform: translateX(20%) rotate(3deg); }
  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg); }
  60% {
    -webkit-transform: translateX(10%) rotate(2deg); }
  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg); }
  100% {
    -webkit-transform: translateX(0%); } }
@-moz-keyframes wobble {
  0% {
    -moz-transform: translateX(0%); }
  15% {
    -moz-transform: translateX(-25%) rotate(-5deg); }
  30% {
    -moz-transform: translateX(20%) rotate(3deg); }
  45% {
    -moz-transform: translateX(-15%) rotate(-3deg); }
  60% {
    -moz-transform: translateX(10%) rotate(2deg); }
  75% {
    -moz-transform: translateX(-5%) rotate(-1deg); }
  100% {
    -moz-transform: translateX(0%); } }
@-ms-keyframes wobble {
  0% {
    -ms-transform: translateX(0%); }
  15% {
    -ms-transform: translateX(-25%) rotate(-5deg); }
  30% {
    -ms-transform: translateX(20%) rotate(3deg); }
  45% {
    -ms-transform: translateX(-15%) rotate(-3deg); }
  60% {
    -ms-transform: translateX(10%) rotate(2deg); }
  75% {
    -ms-transform: translateX(-5%) rotate(-1deg); }
  100% {
    -ms-transform: translateX(0%); } }
@-o-keyframes wobble {
  0% {
    -o-transform: translateX(0%); }
  15% {
    -o-transform: translateX(-25%) rotate(-5deg); }
  30% {
    -o-transform: translateX(20%) rotate(3deg); }
  45% {
    -o-transform: translateX(-15%) rotate(-3deg); }
  60% {
    -o-transform: translateX(10%) rotate(2deg); }
  75% {
    -o-transform: translateX(-5%) rotate(-1deg); }
  100% {
    -o-transform: translateX(0%); } }
@keyframes wobble {
  0% {
    transform: translateX(0%); }
  15% {
    transform: translateX(-25%) rotate(-5deg); }
  30% {
    transform: translateX(20%) rotate(3deg); }
  45% {
    transform: translateX(-15%) rotate(-3deg); }
  60% {
    transform: translateX(10%) rotate(2deg); }
  75% {
    transform: translateX(-5%) rotate(-1deg); }
  100% {
    transform: translateX(0%); } }
.wobble {
  -webkit-animation-name: wobble;
  -moz-animation-name: wobble;
  -ms-animation-name: wobble;
  -o-animation-name: wobble;
  animation-name: wobble; }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-moz-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-ms-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-o-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
.fadeIn {
  -webkit-animation-name: fadeIn;
  -moz-animation-name: fadeIn;
  -ms-animation-name: fadeIn;
  -o-animation-name: fadeIn;
  animation-name: fadeIn; }

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }
@-moz-keyframes fadeInUp {
  0% {
    opacity: 0;
    -moz-transform: translateY(20px); }
  100% {
    opacity: 1;
    -moz-transform: translateY(0); } }
@-ms-keyframes fadeInUp {
  0% {
    opacity: 0;
    -ms-transform: translateY(20px); }
  100% {
    opacity: 1;
    -ms-transform: translateY(0); } }
@-o-keyframes fadeInUp {
  0% {
    opacity: 0;
    -o-transform: translateY(20px); }
  100% {
    opacity: 1;
    -o-transform: translateY(0); } }
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  -moz-animation-name: fadeInUp;
  -ms-animation-name: fadeInUp;
  -o-animation-name: fadeInUp;
  animation-name: fadeInUp; }

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }
@-moz-keyframes fadeInDown {
  0% {
    opacity: 0;
    -moz-transform: translateY(-20px); }
  100% {
    opacity: 1;
    -moz-transform: translateY(0); } }
@-ms-keyframes fadeInDown {
  0% {
    opacity: 0;
    -ms-transform: translateY(-20px); }
  100% {
    opacity: 1;
    -ms-transform: translateY(0); } }
@-o-keyframes fadeInDown {
  0% {
    opacity: 0;
    -o-transform: translateY(-20px); }
  100% {
    opacity: 1;
    -o-transform: translateY(0); } }
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  -moz-animation-name: fadeInDown;
  -ms-animation-name: fadeInDown;
  -o-animation-name: fadeInDown;
  animation-name: fadeInDown; }

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0); } }
@-moz-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -moz-transform: translateX(-20px); }
  100% {
    opacity: 1;
    -moz-transform: translateX(0); } }
@-ms-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -ms-transform: translateX(-20px); }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); } }
@-o-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -o-transform: translateX(-20px); }
  100% {
    opacity: 1;
    -o-transform: translateX(0); } }
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  -moz-animation-name: fadeInLeft;
  -ms-animation-name: fadeInLeft;
  -o-animation-name: fadeInLeft;
  animation-name: fadeInLeft; }

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0); } }
@-moz-keyframes fadeInRight {
  0% {
    opacity: 0;
    -moz-transform: translateX(20px); }
  100% {
    opacity: 1;
    -moz-transform: translateX(0); } }
@-ms-keyframes fadeInRight {
  0% {
    opacity: 0;
    -ms-transform: translateX(20px); }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); } }
@-o-keyframes fadeInRight {
  0% {
    opacity: 0;
    -o-transform: translateX(20px); }
  100% {
    opacity: 1;
    -o-transform: translateX(0); } }
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  -moz-animation-name: fadeInRight;
  -ms-animation-name: fadeInRight;
  -o-animation-name: fadeInRight;
  animation-name: fadeInRight; }

@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }
@-moz-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -moz-transform: translateY(2000px); }
  100% {
    opacity: 1;
    -moz-transform: translateY(0); } }
@-ms-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -ms-transform: translateY(2000px); }
  100% {
    opacity: 1;
    -ms-transform: translateY(0); } }
@-o-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -o-transform: translateY(2000px); }
  100% {
    opacity: 1;
    -o-transform: translateY(0); } }
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    transform: translateY(2000px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  -moz-animation-name: fadeInUpBig;
  -ms-animation-name: fadeInUpBig;
  -o-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig; }

@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }
@-moz-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -moz-transform: translateY(-2000px); }
  100% {
    opacity: 1;
    -moz-transform: translateY(0); } }
@-ms-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -ms-transform: translateY(-2000px); }
  100% {
    opacity: 1;
    -ms-transform: translateY(0); } }
@-o-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -o-transform: translateY(-2000px); }
  100% {
    opacity: 1;
    -o-transform: translateY(0); } }
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    transform: translateY(-2000px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  -moz-animation-name: fadeInDownBig;
  -ms-animation-name: fadeInDownBig;
  -o-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig; }

@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0); } }
@-moz-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -moz-transform: translateX(-2000px); }
  100% {
    opacity: 1;
    -moz-transform: translateX(0); } }
@-ms-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -ms-transform: translateX(-2000px); }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); } }
@-o-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -o-transform: translateX(-2000px); }
  100% {
    opacity: 1;
    -o-transform: translateX(0); } }
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    transform: translateX(-2000px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  -moz-animation-name: fadeInLeftBig;
  -ms-animation-name: fadeInLeftBig;
  -o-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig; }

@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0); } }
@-moz-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -moz-transform: translateX(2000px); }
  100% {
    opacity: 1;
    -moz-transform: translateX(0); } }
@-ms-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -ms-transform: translateX(2000px); }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); } }
@-o-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -o-transform: translateX(2000px); }
  100% {
    opacity: 1;
    -o-transform: translateX(0); } }
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    transform: translateX(2000px); }
  100% {
    opacity: 1;
    transform: translateX(0); } }
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  -moz-animation-name: fadeInRightBig;
  -ms-animation-name: fadeInRightBig;
  -o-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig; }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }
@-moz-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }
@-ms-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }
@-o-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }
@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }
.fadeOut {
  -webkit-animation-name: fadeOut;
  -moz-animation-name: fadeOut;
  -ms-animation-name: fadeOut;
  -o-animation-name: fadeOut;
  animation-name: fadeOut; }

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px); } }
@-moz-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -moz-transform: translateY(0); }
  100% {
    opacity: 0;
    -moz-transform: translateY(-20px); } }
@-ms-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -ms-transform: translateY(0); }
  100% {
    opacity: 0;
    -ms-transform: translateY(-20px); } }
@-o-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -o-transform: translateY(0); }
  100% {
    opacity: 0;
    -o-transform: translateY(-20px); } }
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translateY(0); }
  100% {
    opacity: 0;
    transform: translateY(-20px); } }
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  -moz-animation-name: fadeOutUp;
  -ms-animation-name: fadeOutUp;
  -o-animation-name: fadeOutUp;
  animation-name: fadeOutUp; }

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(20px); } }
@-moz-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -moz-transform: translateY(0); }
  100% {
    opacity: 0;
    -moz-transform: translateY(20px); } }
@-ms-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -ms-transform: translateY(0); }
  100% {
    opacity: 0;
    -ms-transform: translateY(20px); } }
@-o-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -o-transform: translateY(0); }
  100% {
    opacity: 0;
    -o-transform: translateY(20px); } }
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translateY(0); }
  100% {
    opacity: 0;
    transform: translateY(20px); } }
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  -moz-animation-name: fadeOutDown;
  -ms-animation-name: fadeOutDown;
  -o-animation-name: fadeOutDown;
  animation-name: fadeOutDown; }

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px); } }
@-moz-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -moz-transform: translateX(0); }
  100% {
    opacity: 0;
    -moz-transform: translateX(-20px); } }
@-ms-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); }
  100% {
    opacity: 0;
    -ms-transform: translateX(-20px); } }
@-o-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -o-transform: translateX(0); }
  100% {
    opacity: 0;
    -o-transform: translateX(-20px); } }
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0); }
  100% {
    opacity: 0;
    transform: translateX(-20px); } }
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  -moz-animation-name: fadeOutLeft;
  -ms-animation-name: fadeOutLeft;
  -o-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft; }

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateX(20px); } }
@-moz-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -moz-transform: translateX(0); }
  100% {
    opacity: 0;
    -moz-transform: translateX(20px); } }
@-ms-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); }
  100% {
    opacity: 0;
    -ms-transform: translateX(20px); } }
@-o-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -o-transform: translateX(0); }
  100% {
    opacity: 0;
    -o-transform: translateX(20px); } }
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translateX(0); }
  100% {
    opacity: 0;
    transform: translateX(20px); } }
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  -moz-animation-name: fadeOutRight;
  -ms-animation-name: fadeOutRight;
  -o-animation-name: fadeOutRight;
  animation-name: fadeOutRight; }

@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px); } }
@-moz-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -moz-transform: translateY(0); }
  100% {
    opacity: 0;
    -moz-transform: translateY(-2000px); } }
@-ms-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -ms-transform: translateY(0); }
  100% {
    opacity: 0;
    -ms-transform: translateY(-2000px); } }
@-o-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -o-transform: translateY(0); }
  100% {
    opacity: 0;
    -o-transform: translateY(-2000px); } }
@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    transform: translateY(0); }
  100% {
    opacity: 0;
    transform: translateY(-2000px); } }
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  -moz-animation-name: fadeOutUpBig;
  -ms-animation-name: fadeOutUpBig;
  -o-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig; }

@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px); } }
@-moz-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -moz-transform: translateY(0); }
  100% {
    opacity: 0;
    -moz-transform: translateY(2000px); } }
@-ms-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -ms-transform: translateY(0); }
  100% {
    opacity: 0;
    -ms-transform: translateY(2000px); } }
@-o-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -o-transform: translateY(0); }
  100% {
    opacity: 0;
    -o-transform: translateY(2000px); } }
@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    transform: translateY(0); }
  100% {
    opacity: 0;
    transform: translateY(2000px); } }
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  -moz-animation-name: fadeOutDownBig;
  -ms-animation-name: fadeOutDownBig;
  -o-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig; }

@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px); } }
@-moz-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -moz-transform: translateX(0); }
  100% {
    opacity: 0;
    -moz-transform: translateX(-2000px); } }
@-ms-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); }
  100% {
    opacity: 0;
    -ms-transform: translateX(-2000px); } }
@-o-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -o-transform: translateX(0); }
  100% {
    opacity: 0;
    -o-transform: translateX(-2000px); } }
@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    transform: translateX(0); }
  100% {
    opacity: 0;
    transform: translateX(-2000px); } }
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  -moz-animation-name: fadeOutLeftBig;
  -ms-animation-name: fadeOutLeftBig;
  -o-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig; }

@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0); }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px); } }
@-moz-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -moz-transform: translateX(0); }
  100% {
    opacity: 0;
    -moz-transform: translateX(2000px); } }
@-ms-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); }
  100% {
    opacity: 0;
    -ms-transform: translateX(2000px); } }
@-o-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -o-transform: translateX(0); }
  100% {
    opacity: 0;
    -o-transform: translateX(2000px); } }
@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    transform: translateX(0); }
  100% {
    opacity: 0;
    transform: translateX(2000px); } }
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  -moz-animation-name: fadeOutRightBig;
  -ms-animation-name: fadeOutRightBig;
  -o-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig; }

@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.3); }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.05); }
  70% {
    -webkit-transform: scale(0.9); }
  100% {
    -webkit-transform: scale(1); } }
@-moz-keyframes bounceIn {
  0% {
    opacity: 0;
    -moz-transform: scale(0.3); }
  50% {
    opacity: 1;
    -moz-transform: scale(1.05); }
  70% {
    -moz-transform: scale(0.9); }
  100% {
    -moz-transform: scale(1); } }
@-ms-keyframes bounceIn {
  0% {
    opacity: 0;
    -ms-transform: scale(0.3); }
  50% {
    opacity: 1;
    -ms-transform: scale(1.05); }
  70% {
    -ms-transform: scale(0.9); }
  100% {
    -ms-transform: scale(1); } }
@-o-keyframes bounceIn {
  0% {
    opacity: 0;
    -o-transform: scale(0.3); }
  50% {
    opacity: 1;
    -o-transform: scale(1.05); }
  70% {
    -o-transform: scale(0.9); }
  100% {
    -o-transform: scale(1); } }
@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3); }
  50% {
    opacity: 1;
    transform: scale(1.05); }
  70% {
    transform: scale(0.9); }
  100% {
    transform: scale(1); } }
.bounceIn {
  -webkit-animation-name: bounceIn;
  -moz-animation-name: bounceIn;
  -ms-animation-name: bounceIn;
  -o-animation-name: bounceIn;
  animation-name: bounceIn; }

@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px); }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px); }
  80% {
    -webkit-transform: translateY(-10px); }
  100% {
    -webkit-transform: translateY(0); } }
@-moz-keyframes bounceInDown {
  0% {
    opacity: 0;
    -moz-transform: translateY(-2000px); }
  60% {
    opacity: 1;
    -moz-transform: translateY(30px); }
  80% {
    -moz-transform: translateY(-10px); }
  100% {
    -moz-transform: translateY(0); } }
@-ms-keyframes bounceInDown {
  0% {
    opacity: 0;
    -ms-transform: translateY(-2000px); }
  60% {
    opacity: 1;
    -ms-transform: translateY(30px); }
  80% {
    -ms-transform: translateY(-10px); }
  100% {
    -ms-transform: translateY(0); } }
@-o-keyframes bounceInDown {
  0% {
    opacity: 0;
    -o-transform: translateY(-2000px); }
  60% {
    opacity: 1;
    -o-transform: translateY(30px); }
  80% {
    -o-transform: translateY(-10px); }
  100% {
    -o-transform: translateY(0); } }
@keyframes bounceInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px); }
  60% {
    opacity: 1;
    transform: translateY(30px); }
  80% {
    transform: translateY(-10px); }
  100% {
    transform: translateY(0); } }
.bounceInDown {
  -webkit-animation-name: bounceInDown;
  -moz-animation-name: bounceInDown;
  -ms-animation-name: bounceInDown;
  -o-animation-name: bounceInDown;
  animation-name: bounceInDown; }

@-webkit-keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px); }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px); }
  80% {
    -webkit-transform: translateY(10px); }
  100% {
    -webkit-transform: translateY(0); } }
@-moz-keyframes bounceInUp {
  0% {
    opacity: 0;
    -moz-transform: translateY(2000px); }
  60% {
    opacity: 1;
    -moz-transform: translateY(-30px); }
  80% {
    -moz-transform: translateY(10px); }
  100% {
    -moz-transform: translateY(0); } }
@-ms-keyframes bounceInUp {
  0% {
    opacity: 0;
    -ms-transform: translateY(2000px); }
  60% {
    opacity: 1;
    -ms-transform: translateY(-30px); }
  80% {
    -ms-transform: translateY(10px); }
  100% {
    -ms-transform: translateY(0); } }
@-o-keyframes bounceInUp {
  0% {
    opacity: 0;
    -o-transform: translateY(2000px); }
  60% {
    opacity: 1;
    -o-transform: translateY(-30px); }
  80% {
    -o-transform: translateY(10px); }
  100% {
    -o-transform: translateY(0); } }
@keyframes bounceInUp {
  0% {
    opacity: 0;
    transform: translateY(2000px); }
  60% {
    opacity: 1;
    transform: translateY(-30px); }
  80% {
    transform: translateY(10px); }
  100% {
    transform: translateY(0); } }
.bounceInUp {
  -webkit-animation-name: bounceInUp;
  -moz-animation-name: bounceInUp;
  -ms-animation-name: bounceInUp;
  -o-animation-name: bounceInUp;
  animation-name: bounceInUp; }

@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px); }
  60% {
    opacity: 1;
    -webkit-transform: translateX(30px); }
  80% {
    -webkit-transform: translateX(-10px); }
  100% {
    -webkit-transform: translateX(0); } }
@-moz-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -moz-transform: translateX(-2000px); }
  60% {
    opacity: 1;
    -moz-transform: translateX(30px); }
  80% {
    -moz-transform: translateX(-10px); }
  100% {
    -moz-transform: translateX(0); } }
@-ms-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -ms-transform: translateX(-2000px); }
  60% {
    opacity: 1;
    -ms-transform: translateX(30px); }
  80% {
    -ms-transform: translateX(-10px); }
  100% {
    -ms-transform: translateX(0); } }
@-o-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -o-transform: translateX(-2000px); }
  60% {
    opacity: 1;
    -o-transform: translateX(30px); }
  80% {
    -o-transform: translateX(-10px); }
  100% {
    -o-transform: translateX(0); } }
@keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px); }
  60% {
    opacity: 1;
    transform: translateX(30px); }
  80% {
    transform: translateX(-10px); }
  100% {
    transform: translateX(0); } }
.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  -moz-animation-name: bounceInLeft;
  -ms-animation-name: bounceInLeft;
  -o-animation-name: bounceInLeft;
  animation-name: bounceInLeft; }

@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px); }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px); }
  80% {
    -webkit-transform: translateX(10px); }
  100% {
    -webkit-transform: translateX(0); } }
@-moz-keyframes bounceInRight {
  0% {
    opacity: 0;
    -moz-transform: translateX(2000px); }
  60% {
    opacity: 1;
    -moz-transform: translateX(-30px); }
  80% {
    -moz-transform: translateX(10px); }
  100% {
    -moz-transform: translateX(0); } }
@-ms-keyframes bounceInRight {
  0% {
    opacity: 0;
    -ms-transform: translateX(2000px); }
  60% {
    opacity: 1;
    -ms-transform: translateX(-30px); }
  80% {
    -ms-transform: translateX(10px); }
  100% {
    -ms-transform: translateX(0); } }
@-o-keyframes bounceInRight {
  0% {
    opacity: 0;
    -o-transform: translateX(2000px); }
  60% {
    opacity: 1;
    -o-transform: translateX(-30px); }
  80% {
    -o-transform: translateX(10px); }
  100% {
    -o-transform: translateX(0); } }
@keyframes bounceInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px); }
  60% {
    opacity: 1;
    transform: translateX(-30px); }
  80% {
    transform: translateX(10px); }
  100% {
    transform: translateX(0); } }
.bounceInRight {
  -webkit-animation-name: bounceInRight;
  -moz-animation-name: bounceInRight;
  -ms-animation-name: bounceInRight;
  -o-animation-name: bounceInRight;
  animation-name: bounceInRight; }

@-webkit-keyframes bounceOut {
  0% {
    -webkit-transform: scale(1); }
  25% {
    -webkit-transform: scale(0.95); }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.1); }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.3); } }
@-moz-keyframes bounceOut {
  0% {
    -moz-transform: scale(1); }
  25% {
    -moz-transform: scale(0.95); }
  50% {
    opacity: 1;
    -moz-transform: scale(1.1); }
  100% {
    opacity: 0;
    -moz-transform: scale(0.3); } }
@-ms-keyframes bounceOut {
  0% {
    -ms-transform: scale(1); }
  25% {
    -ms-transform: scale(0.95); }
  50% {
    opacity: 1;
    -ms-transform: scale(1.1); }
  100% {
    opacity: 0;
    -ms-transform: scale(0.3); } }
@-o-keyframes bounceOut {
  0% {
    -o-transform: scale(1); }
  25% {
    -o-transform: scale(0.95); }
  50% {
    opacity: 1;
    -o-transform: scale(1.1); }
  100% {
    opacity: 0;
    -o-transform: scale(0.3); } }
@keyframes bounceOut {
  0% {
    transform: scale(1); }
  25% {
    transform: scale(0.95); }
  50% {
    opacity: 1;
    transform: scale(1.1); }
  100% {
    opacity: 0;
    transform: scale(0.3); } }
.bounceOut {
  -webkit-animation-name: bounceOut;
  -moz-animation-name: bounceOut;
  -ms-animation-name: bounceOut;
  -o-animation-name: bounceOut;
  animation-name: bounceOut; }

@-webkit-keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0); }
  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px); } }
@-moz-keyframes bounceOutDown {
  0% {
    -moz-transform: translateY(0); }
  20% {
    opacity: 1;
    -moz-transform: translateY(-20px); }
  100% {
    opacity: 0;
    -moz-transform: translateY(2000px); } }
@-ms-keyframes bounceOutDown {
  0% {
    -ms-transform: translateY(0); }
  20% {
    opacity: 1;
    -ms-transform: translateY(-20px); }
  100% {
    opacity: 0;
    -ms-transform: translateY(2000px); } }
@-o-keyframes bounceOutDown {
  0% {
    -o-transform: translateY(0); }
  20% {
    opacity: 1;
    -o-transform: translateY(-20px); }
  100% {
    opacity: 0;
    -o-transform: translateY(2000px); } }
@keyframes bounceOutDown {
  0% {
    transform: translateY(0); }
  20% {
    opacity: 1;
    transform: translateY(-20px); }
  100% {
    opacity: 0;
    transform: translateY(2000px); } }
.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  -moz-animation-name: bounceOutDown;
  -ms-animation-name: bounceOutDown;
  -o-animation-name: bounceOutDown;
  animation-name: bounceOutDown; }

@-webkit-keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0); }
  20% {
    opacity: 1;
    -webkit-transform: translateY(20px); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px); } }
@-moz-keyframes bounceOutUp {
  0% {
    -moz-transform: translateY(0); }
  20% {
    opacity: 1;
    -moz-transform: translateY(20px); }
  100% {
    opacity: 0;
    -moz-transform: translateY(-2000px); } }
@-ms-keyframes bounceOutUp {
  0% {
    -ms-transform: translateY(0); }
  20% {
    opacity: 1;
    -ms-transform: translateY(20px); }
  100% {
    opacity: 0;
    -ms-transform: translateY(-2000px); } }
@-o-keyframes bounceOutUp {
  0% {
    -o-transform: translateY(0); }
  20% {
    opacity: 1;
    -o-transform: translateY(20px); }
  100% {
    opacity: 0;
    -o-transform: translateY(-2000px); } }
@keyframes bounceOutUp {
  0% {
    transform: translateY(0); }
  20% {
    opacity: 1;
    transform: translateY(20px); }
  100% {
    opacity: 0;
    transform: translateY(-2000px); } }
.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  -moz-animation-name: bounceOutUp;
  -ms-animation-name: bounceOutUp;
  -o-animation-name: bounceOutUp;
  animation-name: bounceOutUp; }

@-webkit-keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0); }
  20% {
    opacity: 1;
    -webkit-transform: translateX(20px); }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px); } }
@-moz-keyframes bounceOutLeft {
  0% {
    -moz-transform: translateX(0); }
  20% {
    opacity: 1;
    -moz-transform: translateX(20px); }
  100% {
    opacity: 0;
    -moz-transform: translateX(-2000px); } }
@-ms-keyframes bounceOutLeft {
  0% {
    -ms-transform: translateX(0); }
  20% {
    opacity: 1;
    -ms-transform: translateX(20px); }
  100% {
    opacity: 0;
    -ms-transform: translateX(-2000px); } }
@-o-keyframes bounceOutLeft {
  0% {
    -o-transform: translateX(0); }
  20% {
    opacity: 1;
    -o-transform: translateX(20px); }
  100% {
    opacity: 0;
    -o-transform: translateX(-2000px); } }
@keyframes bounceOutLeft {
  0% {
    transform: translateX(0); }
  20% {
    opacity: 1;
    transform: translateX(20px); }
  100% {
    opacity: 0;
    transform: translateX(-2000px); } }
.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  -moz-animation-name: bounceOutLeft;
  -ms-animation-name: bounceOutLeft;
  -o-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft; }

@-webkit-keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0); }
  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px); }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px); } }
@-moz-keyframes bounceOutRight {
  0% {
    -moz-transform: translateX(0); }
  20% {
    opacity: 1;
    -moz-transform: translateX(-20px); }
  100% {
    opacity: 0;
    -moz-transform: translateX(2000px); } }
@-ms-keyframes bounceOutRight {
  0% {
    -ms-transform: translateX(0); }
  20% {
    opacity: 1;
    -ms-transform: translateX(-20px); }
  100% {
    opacity: 0;
    -ms-transform: translateX(2000px); } }
@-o-keyframes bounceOutRight {
  0% {
    -o-transform: translateX(0); }
  20% {
    opacity: 1;
    -o-transform: translateX(-20px); }
  100% {
    opacity: 0;
    -o-transform: translateX(2000px); } }
@keyframes bounceOutRight {
  0% {
    transform: translateX(0); }
  20% {
    opacity: 1;
    transform: translateX(-20px); }
  100% {
    opacity: 0;
    transform: translateX(2000px); } }
.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  -moz-animation-name: bounceOutRight;
  -ms-animation-name: bounceOutRight;
  -o-animation-name: bounceOutRight;
  animation-name: bounceOutRight; }

@-webkit-keyframes rotateIn {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    opacity: 0; }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1; } }
@-moz-keyframes rotateIn {
  0% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(-200deg);
    opacity: 0; }
  100% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(0);
    opacity: 1; } }
@-ms-keyframes rotateIn {
  0% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(-200deg);
    opacity: 0; }
  100% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(0);
    opacity: 1; } }
@-o-keyframes rotateIn {
  0% {
    -o-transform-origin: center center;
    -o-transform: rotate(-200deg);
    opacity: 0; }
  100% {
    -o-transform-origin: center center;
    -o-transform: rotate(0);
    opacity: 1; } }
@keyframes rotateIn {
  0% {
    transform-origin: center center;
    transform: rotate(-200deg);
    opacity: 0; }
  100% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1; } }
.rotateIn {
  -webkit-animation-name: rotateIn;
  -moz-animation-name: rotateIn;
  -ms-animation-name: rotateIn;
  -o-animation-name: rotateIn;
  animation-name: rotateIn; }

@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0; }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1; } }
@-moz-keyframes rotateInDownLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0; }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1; } }
@-ms-keyframes rotateInDownLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0; }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1; } }
@-o-keyframes rotateInDownLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(-90deg);
    opacity: 0; }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1; } }
@keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0; }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1; } }
.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  -moz-animation-name: rotateInDownLeft;
  -ms-animation-name: rotateInDownLeft;
  -o-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft; }

@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0; }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1; } }
@-moz-keyframes rotateInDownRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(90deg);
    opacity: 0; }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1; } }
@-ms-keyframes rotateInDownRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(90deg);
    opacity: 0; }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1; } }
@-o-keyframes rotateInDownRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(90deg);
    opacity: 0; }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1; } }
@keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0; }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1; } }
.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  -moz-animation-name: rotateInDownRight;
  -ms-animation-name: rotateInDownRight;
  -o-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight; }

@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0; }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1; } }
@-moz-keyframes rotateInUpLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(90deg);
    opacity: 0; }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1; } }
@-ms-keyframes rotateInUpLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(90deg);
    opacity: 0; }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1; } }
@-o-keyframes rotateInUpLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(90deg);
    opacity: 0; }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1; } }
@keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0; }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1; } }
.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  -moz-animation-name: rotateInUpLeft;
  -ms-animation-name: rotateInUpLeft;
  -o-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft; }

@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0; }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1; } }
@-moz-keyframes rotateInUpRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0; }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1; } }
@-ms-keyframes rotateInUpRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0; }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1; } }
@-o-keyframes rotateInUpRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(-90deg);
    opacity: 0; }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1; } }
@keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0; }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1; } }
.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  -moz-animation-name: rotateInUpRight;
  -ms-animation-name: rotateInUpRight;
  -o-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight; }

@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1; }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(200deg);
    opacity: 0; } }
@-moz-keyframes rotateOut {
  0% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(0);
    opacity: 1; }
  100% {
    -moz-transform-origin: center center;
    -moz-transform: rotate(200deg);
    opacity: 0; } }
@-ms-keyframes rotateOut {
  0% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(0);
    opacity: 1; }
  100% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(200deg);
    opacity: 0; } }
@-o-keyframes rotateOut {
  0% {
    -o-transform-origin: center center;
    -o-transform: rotate(0);
    opacity: 1; }
  100% {
    -o-transform-origin: center center;
    -o-transform: rotate(200deg);
    opacity: 0; } }
@keyframes rotateOut {
  0% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1; }
  100% {
    transform-origin: center center;
    transform: rotate(200deg);
    opacity: 0; } }
.rotateOut {
  -webkit-animation-name: rotateOut;
  -moz-animation-name: rotateOut;
  -ms-animation-name: rotateOut;
  -o-animation-name: rotateOut;
  animation-name: rotateOut; }

@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1; }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0; } }
@-moz-keyframes rotateOutDownLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1; }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(90deg);
    opacity: 0; } }
@-ms-keyframes rotateOutDownLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1; }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(90deg);
    opacity: 0; } }
@-o-keyframes rotateOutDownLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1; }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(90deg);
    opacity: 0; } }
@keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1; }
  100% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0; } }
.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  -moz-animation-name: rotateOutDownLeft;
  -ms-animation-name: rotateOutDownLeft;
  -o-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft; }

@-webkit-keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1; }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0; } }
@-moz-keyframes rotateOutDownRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1; }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0; } }
@-ms-keyframes rotateOutDownRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1; }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0; } }
@-o-keyframes rotateOutDownRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1; }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(-90deg);
    opacity: 0; } }
@keyframes rotateOutDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1; }
  100% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0; } }
.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  -moz-animation-name: rotateOutDownRight;
  -ms-animation-name: rotateOutDownRight;
  -o-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight; }

@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1; }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0; } }
@-moz-keyframes rotateOutUpLeft {
  0% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(0);
    opacity: 1; }
  100% {
    -moz-transform-origin: left bottom;
    -moz-transform: rotate(-90deg);
    opacity: 0; } }
@-ms-keyframes rotateOutUpLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1; }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0; } }
@-o-keyframes rotateOutUpLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1; }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(-90deg);
    opacity: 0; } }
@keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1; }
  100% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0; } }
.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  -moz-animation-name: rotateOutUpLeft;
  -ms-animation-name: rotateOutUpLeft;
  -o-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft; }

@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1; }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0; } }
@-moz-keyframes rotateOutUpRight {
  0% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(0);
    opacity: 1; }
  100% {
    -moz-transform-origin: right bottom;
    -moz-transform: rotate(90deg);
    opacity: 0; } }
@-ms-keyframes rotateOutUpRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1; }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(90deg);
    opacity: 0; } }
@-o-keyframes rotateOutUpRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1; }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(90deg);
    opacity: 0; } }
@keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1; }
  100% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0; } }
.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  -moz-animation-name: rotateOutUpRight;
  -ms-animation-name: rotateOutUpRight;
  -o-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight; }

@-webkit-keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out, webkit;
    -moz-animation-timing-function: ease-in-out, webkit;
    -ms-animation-timing-function: ease-in-out, webkit;
    -o-animation-timing-function: ease-in-out, webkit;
    animation-timing-function: ease-in-out, webkit;
    -webkit-transform: rotate(0);
    -webkit-transform-origin: top left; }
  20%, 60% {
    -webkit-animation-timing-function: ease-in-out, webkit;
    -moz-animation-timing-function: ease-in-out, webkit;
    -ms-animation-timing-function: ease-in-out, webkit;
    -o-animation-timing-function: ease-in-out, webkit;
    animation-timing-function: ease-in-out, webkit;
    -webkit-transform: rotate(80deg);
    -webkit-transform-origin: top left; }
  40% {
    -webkit-transform: rotate(60deg);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out, webkit;
    -moz-animation-timing-function: ease-in-out, webkit;
    -ms-animation-timing-function: ease-in-out, webkit;
    -o-animation-timing-function: ease-in-out, webkit;
    animation-timing-function: ease-in-out, webkit; }
  80% {
    opacity: 1;
    -webkit-animation-timing-function: ease-in-out, webkit;
    -moz-animation-timing-function: ease-in-out, webkit;
    -ms-animation-timing-function: ease-in-out, webkit;
    -o-animation-timing-function: ease-in-out, webkit;
    animation-timing-function: ease-in-out, webkit;
    -webkit-transform: rotate(60deg) translateY(0);
    -webkit-transform-origin: top left; }
  100% {
    -webkit-transform: translateY(700px);
    opacity: 0; } }
@-moz-keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out, moz;
    -moz-animation-timing-function: ease-in-out, moz;
    -ms-animation-timing-function: ease-in-out, moz;
    -o-animation-timing-function: ease-in-out, moz;
    animation-timing-function: ease-in-out, moz;
    -moz-transform: rotate(0);
    -moz-transform-origin: top left; }
  20%, 60% {
    -webkit-animation-timing-function: ease-in-out, moz;
    -moz-animation-timing-function: ease-in-out, moz;
    -ms-animation-timing-function: ease-in-out, moz;
    -o-animation-timing-function: ease-in-out, moz;
    animation-timing-function: ease-in-out, moz;
    -moz-transform: rotate(80deg);
    -moz-transform-origin: top left; }
  40% {
    -moz-transform: rotate(60deg);
    -moz-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out, moz;
    -moz-animation-timing-function: ease-in-out, moz;
    -ms-animation-timing-function: ease-in-out, moz;
    -o-animation-timing-function: ease-in-out, moz;
    animation-timing-function: ease-in-out, moz; }
  80% {
    opacity: 1;
    -webkit-animation-timing-function: ease-in-out, moz;
    -moz-animation-timing-function: ease-in-out, moz;
    -ms-animation-timing-function: ease-in-out, moz;
    -o-animation-timing-function: ease-in-out, moz;
    animation-timing-function: ease-in-out, moz;
    -moz-transform: rotate(60deg) translateY(0);
    -moz-transform-origin: top left; }
  100% {
    -moz-transform: translateY(700px);
    opacity: 0; } }
@-ms-keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out, ms;
    -moz-animation-timing-function: ease-in-out, ms;
    -ms-animation-timing-function: ease-in-out, ms;
    -o-animation-timing-function: ease-in-out, ms;
    animation-timing-function: ease-in-out, ms;
    -ms-transform: rotate(0);
    -ms-transform-origin: top left; }
  20%, 60% {
    -webkit-animation-timing-function: ease-in-out, ms;
    -moz-animation-timing-function: ease-in-out, ms;
    -ms-animation-timing-function: ease-in-out, ms;
    -o-animation-timing-function: ease-in-out, ms;
    animation-timing-function: ease-in-out, ms;
    -ms-transform: rotate(80deg);
    -ms-transform-origin: top left; }
  40% {
    -ms-transform: rotate(60deg);
    -ms-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out, ms;
    -moz-animation-timing-function: ease-in-out, ms;
    -ms-animation-timing-function: ease-in-out, ms;
    -o-animation-timing-function: ease-in-out, ms;
    animation-timing-function: ease-in-out, ms; }
  80% {
    opacity: 1;
    -webkit-animation-timing-function: ease-in-out, ms;
    -moz-animation-timing-function: ease-in-out, ms;
    -ms-animation-timing-function: ease-in-out, ms;
    -o-animation-timing-function: ease-in-out, ms;
    animation-timing-function: ease-in-out, ms;
    -ms-transform: rotate(60deg) translateY(0);
    -ms-transform-origin: top left; }
  100% {
    -ms-transform: translateY(700px);
    opacity: 0; } }
@-o-keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out, o;
    -moz-animation-timing-function: ease-in-out, o;
    -ms-animation-timing-function: ease-in-out, o;
    -o-animation-timing-function: ease-in-out, o;
    animation-timing-function: ease-in-out, o;
    -o-transform: rotate(0);
    -o-transform-origin: top left; }
  20%, 60% {
    -webkit-animation-timing-function: ease-in-out, o;
    -moz-animation-timing-function: ease-in-out, o;
    -ms-animation-timing-function: ease-in-out, o;
    -o-animation-timing-function: ease-in-out, o;
    animation-timing-function: ease-in-out, o;
    -o-transform: rotate(80deg);
    -o-transform-origin: top left; }
  40% {
    -o-transform: rotate(60deg);
    -o-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out, o;
    -moz-animation-timing-function: ease-in-out, o;
    -ms-animation-timing-function: ease-in-out, o;
    -o-animation-timing-function: ease-in-out, o;
    animation-timing-function: ease-in-out, o; }
  80% {
    opacity: 1;
    -webkit-animation-timing-function: ease-in-out, o;
    -moz-animation-timing-function: ease-in-out, o;
    -ms-animation-timing-function: ease-in-out, o;
    -o-animation-timing-function: ease-in-out, o;
    animation-timing-function: ease-in-out, o;
    -o-transform: rotate(60deg) translateY(0);
    -o-transform-origin: top left; }
  100% {
    -o-transform: translateY(700px);
    opacity: 0; } }
@keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out, none;
    -moz-animation-timing-function: ease-in-out, none;
    -ms-animation-timing-function: ease-in-out, none;
    -o-animation-timing-function: ease-in-out, none;
    animation-timing-function: ease-in-out, none;
    transform: rotate(0);
    transform-origin: top left; }
  20%, 60% {
    -webkit-animation-timing-function: ease-in-out, none;
    -moz-animation-timing-function: ease-in-out, none;
    -ms-animation-timing-function: ease-in-out, none;
    -o-animation-timing-function: ease-in-out, none;
    animation-timing-function: ease-in-out, none;
    transform: rotate(80deg);
    transform-origin: top left; }
  40% {
    transform: rotate(60deg);
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out, none;
    -moz-animation-timing-function: ease-in-out, none;
    -ms-animation-timing-function: ease-in-out, none;
    -o-animation-timing-function: ease-in-out, none;
    animation-timing-function: ease-in-out, none; }
  80% {
    opacity: 1;
    -webkit-animation-timing-function: ease-in-out, none;
    -moz-animation-timing-function: ease-in-out, none;
    -ms-animation-timing-function: ease-in-out, none;
    -o-animation-timing-function: ease-in-out, none;
    animation-timing-function: ease-in-out, none;
    transform: rotate(60deg) translateY(0);
    transform-origin: top left; }
  100% {
    transform: translateY(700px);
    opacity: 0; } }
.hinge {
  -webkit-animation-name: hinge;
  -moz-animation-name: hinge;
  -ms-animation-name: hinge;
  -o-animation-name: hinge;
  animation-name: hinge; }

@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg); } }
@-moz-keyframes rollIn {
  0% {
    opacity: 0;
    -moz-transform: translateX(-100%) rotate(-120deg); }
  100% {
    opacity: 1;
    -moz-transform: translateX(0px) rotate(0deg); } }
@-ms-keyframes rollIn {
  0% {
    opacity: 0;
    -ms-transform: translateX(-100%) rotate(-120deg); }
  100% {
    opacity: 1;
    -ms-transform: translateX(0px) rotate(0deg); } }
@-o-keyframes rollIn {
  0% {
    opacity: 0;
    -o-transform: translateX(-100%) rotate(-120deg); }
  100% {
    opacity: 1;
    -o-transform: translateX(0px) rotate(0deg); } }
@keyframes rollIn {
  0% {
    opacity: 0;
    transform: translateX(-100%) rotate(-120deg); }
  100% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg); } }
.rollIn {
  -webkit-animation-name: rollIn;
  -moz-animation-name: rollIn;
  -ms-animation-name: rollIn;
  -o-animation-name: rollIn;
  animation-name: rollIn; }

@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg); }
  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg); } }
@-moz-keyframes rollOut {
  0% {
    opacity: 1;
    -moz-transform: translateX(0px) rotate(0deg); }
  100% {
    opacity: 0;
    -moz-transform: translateX(100%) rotate(120deg); } }
@-ms-keyframes rollOut {
  0% {
    opacity: 1;
    -ms-transform: translateX(0px) rotate(0deg); }
  100% {
    opacity: 0;
    -ms-transform: translateX(100%) rotate(120deg); } }
@-o-keyframes rollOut {
  0% {
    opacity: 1;
    -o-transform: translateX(0px) rotate(0deg); }
  100% {
    opacity: 0;
    -o-transform: translateX(100%) rotate(120deg); } }
@keyframes rollOut {
  0% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg); }
  100% {
    opacity: 0;
    transform: translateX(100%) rotate(120deg); } }
.rollOut {
  -webkit-animation-name: rollOut;
  -moz-animation-name: rollOut;
  -ms-animation-name: rollOut;
  -o-animation-name: rollOut;
  animation-name: rollOut; }

@-webkit-keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotateY(0);
    -webkit-animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -webkit-animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -webkit-animation-timing-function: ease-in; }
  100% {
    -webkit-transform: perspective(400px) scale(1);
    -webkit-animation-timing-function: ease-in; } }
@-moz-keyframes flip {
  0% {
    -moz-transform: perspective(400px) rotateY(0);
    -moz-animation-timing-function: ease-out; }
  40% {
    -moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -moz-animation-timing-function: ease-out; }
  50% {
    -moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -moz-animation-timing-function: ease-in; }
  80% {
    -moz-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -moz-animation-timing-function: ease-in; }
  100% {
    -moz-transform: perspective(400px) scale(1);
    -moz-animation-timing-function: ease-in; } }
@-ms-keyframes flip {
  0% {
    -ms-transform: perspective(400px) rotateY(0);
    -ms-animation-timing-function: ease-out; }
  40% {
    -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -ms-animation-timing-function: ease-out; }
  50% {
    -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -ms-animation-timing-function: ease-in; }
  80% {
    -ms-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -ms-animation-timing-function: ease-in; }
  100% {
    -ms-transform: perspective(400px) scale(1);
    -ms-animation-timing-function: ease-in; } }
@-o-keyframes flip {
  0% {
    -o-transform: perspective(400px) rotateY(0);
    -o-animation-timing-function: ease-out; }
  40% {
    -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -o-animation-timing-function: ease-out; }
  50% {
    -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -o-animation-timing-function: ease-in; }
  80% {
    -o-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -o-animation-timing-function: ease-in; }
  100% {
    -o-transform: perspective(400px) scale(1);
    -o-animation-timing-function: ease-in; } }
@keyframes flip {
  0% {
    transform: perspective(400px) rotateY(0);
    animation-timing-function: ease-out; }
  40% {
    transform: perspective(400px) translateZ(150px) rotateY(170deg);
    animation-timing-function: ease-out; }
  50% {
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    animation-timing-function: ease-in; }
  80% {
    transform: perspective(400px) rotateY(360deg) scale(0.95);
    animation-timing-function: ease-in; }
  100% {
    transform: perspective(400px) scale(1);
    animation-timing-function: ease-in; } }
.flip {
  -webkit-animation-name: flip;
  -moz-animation-name: flip;
  -ms-animation-name: flip;
  -o-animation-name: flip;
  animation-name: flip;
  -webkit-backface-visibility: visible !important;
  -moz-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  -o-backface-visibility: visible !important;
  backface-visibility: visible !important; }

@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotateX(-10deg); }
  70% {
    -webkit-transform: perspective(400px) rotateX(10deg); }
  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1; } }
@-moz-keyframes flipInX {
  0% {
    -moz-transform: perspective(400px) rotateX(90deg);
    opacity: 0; }
  40% {
    -moz-transform: perspective(400px) rotateX(-10deg); }
  70% {
    -moz-transform: perspective(400px) rotateX(10deg); }
  100% {
    -moz-transform: perspective(400px) rotateX(0deg);
    opacity: 1; } }
@-ms-keyframes flipInX {
  0% {
    -ms-transform: perspective(400px) rotateX(90deg);
    opacity: 0; }
  40% {
    -ms-transform: perspective(400px) rotateX(-10deg); }
  70% {
    -ms-transform: perspective(400px) rotateX(10deg); }
  100% {
    -ms-transform: perspective(400px) rotateX(0deg);
    opacity: 1; } }
@-o-keyframes flipInX {
  0% {
    -o-transform: perspective(400px) rotateX(90deg);
    opacity: 0; }
  40% {
    -o-transform: perspective(400px) rotateX(-10deg); }
  70% {
    -o-transform: perspective(400px) rotateX(10deg); }
  100% {
    -o-transform: perspective(400px) rotateX(0deg);
    opacity: 1; } }
@keyframes flipInX {
  0% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0; }
  40% {
    transform: perspective(400px) rotateX(-10deg); }
  70% {
    transform: perspective(400px) rotateX(10deg); }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1; } }
.flipInX {
  -webkit-animation-name: flipInX;
  -moz-animation-name: flipInX;
  -ms-animation-name: flipInX;
  -o-animation-name: flipInX;
  animation-name: flipInX;
  -webkit-backface-visibility: visible !important;
  -moz-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  -o-backface-visibility: visible !important;
  backface-visibility: visible !important; }

@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1; }
  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0; } }
@-moz-keyframes flipOutX {
  0% {
    -moz-transform: perspective(400px) rotateX(0deg);
    opacity: 1; }
  100% {
    -moz-transform: perspective(400px) rotateX(90deg);
    opacity: 0; } }
@-ms-keyframes flipOutX {
  0% {
    -ms-transform: perspective(400px) rotateX(0deg);
    opacity: 1; }
  100% {
    -ms-transform: perspective(400px) rotateX(90deg);
    opacity: 0; } }
@-o-keyframes flipOutX {
  0% {
    -o-transform: perspective(400px) rotateX(0deg);
    opacity: 1; }
  100% {
    -o-transform: perspective(400px) rotateX(90deg);
    opacity: 0; } }
@keyframes flipOutX {
  0% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1; }
  100% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0; } }
.flipOutX {
  -webkit-animation-name: flipOutX;
  -moz-animation-name: flipOutX;
  -ms-animation-name: flipOutX;
  -o-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  -moz-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  -o-backface-visibility: visible !important;
  backface-visibility: visible !important; }

@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg); }
  70% {
    -webkit-transform: perspective(400px) rotateY(10deg); }
  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1; } }
@-moz-keyframes flipInY {
  0% {
    -moz-transform: perspective(400px) rotateY(90deg);
    opacity: 0; }
  40% {
    -moz-transform: perspective(400px) rotateY(-10deg); }
  70% {
    -moz-transform: perspective(400px) rotateY(10deg); }
  100% {
    -moz-transform: perspective(400px) rotateY(0deg);
    opacity: 1; } }
@-ms-keyframes flipInY {
  0% {
    -ms-transform: perspective(400px) rotateY(90deg);
    opacity: 0; }
  40% {
    -ms-transform: perspective(400px) rotateY(-10deg); }
  70% {
    -ms-transform: perspective(400px) rotateY(10deg); }
  100% {
    -ms-transform: perspective(400px) rotateY(0deg);
    opacity: 1; } }
@-o-keyframes flipInY {
  0% {
    -o-transform: perspective(400px) rotateY(90deg);
    opacity: 0; }
  40% {
    -o-transform: perspective(400px) rotateY(-10deg); }
  70% {
    -o-transform: perspective(400px) rotateY(10deg); }
  100% {
    -o-transform: perspective(400px) rotateY(0deg);
    opacity: 1; } }
@keyframes flipInY {
  0% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0; }
  40% {
    transform: perspective(400px) rotateY(-10deg); }
  70% {
    transform: perspective(400px) rotateY(10deg); }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1; } }
.flipInY {
  -webkit-animation-name: flipInY;
  -moz-animation-name: flipInY;
  -ms-animation-name: flipInY;
  -o-animation-name: flipInY;
  animation-name: flipInY;
  -webkit-backface-visibility: visible !important;
  -moz-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  -o-backface-visibility: visible !important;
  backface-visibility: visible !important; }

@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1; }
  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0; } }
@-moz-keyframes flipOutY {
  0% {
    -moz-transform: perspective(400px) rotateY(0deg);
    opacity: 1; }
  100% {
    -moz-transform: perspective(400px) rotateY(90deg);
    opacity: 0; } }
@-ms-keyframes flipOutY {
  0% {
    -ms-transform: perspective(400px) rotateY(0deg);
    opacity: 1; }
  100% {
    -ms-transform: perspective(400px) rotateY(90deg);
    opacity: 0; } }
@-o-keyframes flipOutY {
  0% {
    -o-transform: perspective(400px) rotateY(0deg);
    opacity: 1; }
  100% {
    -o-transform: perspective(400px) rotateY(90deg);
    opacity: 0; } }
@keyframes flipOutY {
  0% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1; }
  100% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0; } }
.flipOutY {
  -webkit-animation-name: flipOutY;
  -moz-animation-name: flipOutY;
  -ms-animation-name: flipOutY;
  -o-animation-name: flipOutY;
  animation-name: flipOutY;
  -webkit-backface-visibility: visible !important;
  -moz-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  -o-backface-visibility: visible !important;
  backface-visibility: visible !important; }

/*********************
IMPORTING MODULES
Modules are reusable blocks or elements we use throughout the project.
We can break them up as much as we want or just keep them all in one.
I mean, you can do whatever you want. The world is your oyster. Unless
you hate oysters, then the world is your peanut butter & jelly sandwich.
*********************/
/******************************************************************
Site Name:
Author:

Stylesheet: Alert Styles

If you want to use these alerts in your design, you can. If not,
you can just remove this stylesheet.

******************************************************************/
.alert-help, .alert-info, .alert-error, .alert-success {
  margin: 10px;
  padding: 5px 18px;
  border: 1px solid; }

.alert-help {
  border-color: #e8dc59;
  background: #ebe16f; }

.alert-info {
  border-color: #bfe4f4;
  background: #d5edf8; }

.alert-error {
  border-color: #f8cdce;
  background: #fbe3e4; }

.alert-success {
  border-color: #deeaae;
  background: #e6efc2; }

/******************************************************************
Site Name:
Author:

Stylesheet: Button Styles

Buttons are a pretty important part of your site's style, so it's
important to have a consistent baseline for them. Use this stylesheet
to create all kinds of buttons.

Helpful Links:
http://galp.in/blog/2011/08/02/the-ui-guide-part-1-buttons/

******************************************************************/
/*********************
BUTTON DEFAULTS
We're gonna use a placeholder selector here
so we can use common styles. We then use this
to load up the defaults in all our buttons.

Here's a quick video to show how it works:
http://www.youtube.com/watch?v=hwdVpKiJzac

*********************/
.blue-btn {
  display: inline-block;
  position: relative;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-decoration: none;
  color: #fff;
  font-size: 0.9em;
  font-size: 34px;
  line-height: 34px;
  font-weight: normal;
  padding: 0 24px;
  border-radius: 4px;
  border: 0;
  cursor: pointer;
  -webkit-transition: background-color 0.14s ease-in-out;
  transition: background-color 0.14s ease-in-out; }
  .blue-btn:hover, .blue-btn:focus {
    color: #fff;
    text-decoration: none; }
  .blue-btn:active {
    top: 1px; }

/*
An example button.
You can use this example if you want. Just replace all the variables
and it will create a button dependant on those variables.
*/
.blue-btn {
  background-color: #2980b9; }
  .blue-btn:hover, .blue-btn:focus {
    background-color: #2574a8; }
  .blue-btn:active {
    background-color: #2472a4; }

/******************************************************************
Site Name:
Author:

Stylesheet: Form Styles

We put all the form and button styles in here to setup a consistent
look. If we need to customize them, we can do this in the main
stylesheets and just override them. Easy Peasy.

You're gonna see a few data-uri thingies down there. If you're not
sure what they are, check this link out:
http://css-tricks.com/data-uris/
If you want to create your own, use this helpful link:
http://websemantics.co.uk/online_tools/image_to_data_uri_convertor/

******************************************************************/
/*********************
INPUTS
*********************/
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
select,
textarea,
.field {
  display: block;
  height: 40px;
  line-height: 40px;
  padding: 0 12px;
  font-size: 1em;
  color: #333;
  border-radius: 3px;
  vertical-align: middle;
  box-shadow: none;
  border: 0;
  width: 100%;
  max-width: 400px;
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  background-color: #fff;
  border: 1px solid #eee;
  -webkit-transition: background-color 0.24s ease-in-out;
  transition: background-color 0.24s ease-in-out; }
  input[type="text"]:focus, input[type="text"]:active,
  input[type="password"]:focus,
  input[type="password"]:active,
  input[type="datetime"]:focus,
  input[type="datetime"]:active,
  input[type="datetime-local"]:focus,
  input[type="datetime-local"]:active,
  input[type="date"]:focus,
  input[type="date"]:active,
  input[type="month"]:focus,
  input[type="month"]:active,
  input[type="time"]:focus,
  input[type="time"]:active,
  input[type="week"]:focus,
  input[type="week"]:active,
  input[type="number"]:focus,
  input[type="number"]:active,
  input[type="email"]:focus,
  input[type="email"]:active,
  input[type="url"]:focus,
  input[type="url"]:active,
  input[type="search"]:focus,
  input[type="search"]:active,
  input[type="tel"]:focus,
  input[type="tel"]:active,
  input[type="color"]:focus,
  input[type="color"]:active,
  select:focus,
  select:active,
  textarea:focus,
  textarea:active,
  .field:focus,
  .field:active {
    background-color: #f8f8f8; }
  input[type="text"].error, input[type="text"].is-invalid,
  input[type="password"].error,
  input[type="password"].is-invalid,
  input[type="datetime"].error,
  input[type="datetime"].is-invalid,
  input[type="datetime-local"].error,
  input[type="datetime-local"].is-invalid,
  input[type="date"].error,
  input[type="date"].is-invalid,
  input[type="month"].error,
  input[type="month"].is-invalid,
  input[type="time"].error,
  input[type="time"].is-invalid,
  input[type="week"].error,
  input[type="week"].is-invalid,
  input[type="number"].error,
  input[type="number"].is-invalid,
  input[type="email"].error,
  input[type="email"].is-invalid,
  input[type="url"].error,
  input[type="url"].is-invalid,
  input[type="search"].error,
  input[type="search"].is-invalid,
  input[type="tel"].error,
  input[type="tel"].is-invalid,
  input[type="color"].error,
  input[type="color"].is-invalid,
  select.error,
  select.is-invalid,
  textarea.error,
  textarea.is-invalid,
  .field.error,
  .field.is-invalid {
    color: #fbe3e4;
    border-color: #fbe3e4;
    background-color: #fff;
    background-position: 99% center;
    background-repeat: no-repeat;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NDM0NDREQkYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NDM0NDREQ0YwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjQ3ODRGRkE2RjA0QTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY0MzQ0NERBRjA0QjExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+U8iT5wAAAedJREFUeNqk1U9I02Ecx/HtV3aIFAc1hcRDUoGXRAq0oNLA2CrsEFmHbikZu0iQYIFGYAiegkCpLipBxPpDEBMUzB0EhSG2LhG7hMR2GviPgUTvB57Bw8P3+U23B16HPX8+e/b8nt93wezZSMCnhXETF3AcB5BDCnH8Dq98ExcGHcFn8Ah3cdDni+fxnPDv9oAnTB7CKu6VCFXtChZy56LxUjt+jfuB8toSOth9wd7xWAWhqrUjYR/FRTwWJm+iIPT/w7bQf5ljiZnBg45dtKFX6H+LU8gIY8OEV6vgTkStwXWE8BPTGDHGPqNPz2mCfSOOYkA99TvCt1bhGPL68zMcwmncMuape10jrI+q4BbHi/FLn31S9z2x5tRhTc+1W506ipM+T3oRD4X+8+qtc4SqFvL0z/Fr14S+Szjis8bz9Lvvaq8cwS/wwGfdlqfPSWqTiFlX77o13u9Ym1PBs8JAytpRoy44X9Ft9E/gvbA+rYKn8NcaaMVc8UHgBw4b9/iqUQZ6hOAJFbyDcUflmsEX4a6+wTtHGfhAIUqa1U29Zc2BytouThD8x6xuN5CtMPi2CrXLZkZf/HyZoRFCP7n+QVR4PV7uI/AjGghN7OU/r1ilnqILtfpNC+o6vIFljBKYlhb/F2AAgaBsWR5wRiIAAAAASUVORK5CYII=);
    outline-color: #fbe3e4; }
  input[type="text"].success, input[type="text"].is-valid,
  input[type="password"].success,
  input[type="password"].is-valid,
  input[type="datetime"].success,
  input[type="datetime"].is-valid,
  input[type="datetime-local"].success,
  input[type="datetime-local"].is-valid,
  input[type="date"].success,
  input[type="date"].is-valid,
  input[type="month"].success,
  input[type="month"].is-valid,
  input[type="time"].success,
  input[type="time"].is-valid,
  input[type="week"].success,
  input[type="week"].is-valid,
  input[type="number"].success,
  input[type="number"].is-valid,
  input[type="email"].success,
  input[type="email"].is-valid,
  input[type="url"].success,
  input[type="url"].is-valid,
  input[type="search"].success,
  input[type="search"].is-valid,
  input[type="tel"].success,
  input[type="tel"].is-valid,
  input[type="color"].success,
  input[type="color"].is-valid,
  select.success,
  select.is-valid,
  textarea.success,
  textarea.is-valid,
  .field.success,
  .field.is-valid {
    color: #e6efc2;
    border-color: #e6efc2;
    background-color: #fff;
    background-position: 99% center;
    background-repeat: no-repeat;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NDM0NDRERkYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NDM0NDRFMEYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjY0MzQ0NERERjA0QjExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY0MzQ0NERFRjA0QjExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+7olkTQAAAfhJREFUeNqklU9oE0EUhzdroWjw0tBeWlDxkEaIp55TsCU9VKIgCrHBelA8CQ1Kr1WPbZrQ3gqtQqvGqxpQc2jBk6BIIaAGD4qNCKURpDSKiPi98gLDsJt//uBjsztvfnk7895sIPAw6/joGMThFJyAXn2+A+9gA57/TaY/eU0OeBgfhGm4DiGnsb7DAszxBz/NAdcKjMJLuNWCqagHbsscN5+L+hmH4QkMOe1L5jzFfNA2PgT34ajTuY7AGuZB0/hmh5m+gS0r8xv1zRvg+gGCHZiOwnF4DP3iB3sQkYxPd2C6CWfhB9Xwlus5+K1j4jXuaq3a+gM1H9OPcAa+7q9lPidZJqHbiIm7Wg22rsEI7FrPSzAMX/T+ADyAKSsu7Fr1KplehLvwCs5DvfBf65p+MypqRbO1FXK9utH4/QKuaqYTsG3E3INJv00Q46px3+XxanJ/Ute2/vqP4FKDza2KcdljIKdnhS0xXYULTaqmLMZFn8FFSFtvt6x70ExFCS5oUXspq2ssa7oEl1swFa+CGFdgtkHgPDyDKy02zyxNU6lXRUZb1EuHYayNNs+Yh5B0WQo+/8fpJnNTZFuzz2OpjoQ2QruSOQlMy35fEGmEGMxY9e1brxobw7TkWA1h6xfckUPb+JhGoE/Hpfvew7qUld/H9J8AAwDpw3WYrxcZ3QAAAABJRU5ErkJggg==);
    outline-color: #e6efc2; }
  input[type="text"][disabled], input[type="text"].is-disabled,
  input[type="password"][disabled],
  input[type="password"].is-disabled,
  input[type="datetime"][disabled],
  input[type="datetime"].is-disabled,
  input[type="datetime-local"][disabled],
  input[type="datetime-local"].is-disabled,
  input[type="date"][disabled],
  input[type="date"].is-disabled,
  input[type="month"][disabled],
  input[type="month"].is-disabled,
  input[type="time"][disabled],
  input[type="time"].is-disabled,
  input[type="week"][disabled],
  input[type="week"].is-disabled,
  input[type="number"][disabled],
  input[type="number"].is-disabled,
  input[type="email"][disabled],
  input[type="email"].is-disabled,
  input[type="url"][disabled],
  input[type="url"].is-disabled,
  input[type="search"][disabled],
  input[type="search"].is-disabled,
  input[type="tel"][disabled],
  input[type="tel"].is-disabled,
  input[type="color"][disabled],
  input[type="color"].is-disabled,
  select[disabled],
  select.is-disabled,
  textarea[disabled],
  textarea.is-disabled,
  .field[disabled],
  .field.is-disabled {
    cursor: not-allowed;
    border-color: #cfcfcf;
    opacity: 0.6; }
    input[type="text"][disabled]:focus, input[type="text"][disabled]:active, input[type="text"].is-disabled:focus, input[type="text"].is-disabled:active,
    input[type="password"][disabled]:focus,
    input[type="password"][disabled]:active,
    input[type="password"].is-disabled:focus,
    input[type="password"].is-disabled:active,
    input[type="datetime"][disabled]:focus,
    input[type="datetime"][disabled]:active,
    input[type="datetime"].is-disabled:focus,
    input[type="datetime"].is-disabled:active,
    input[type="datetime-local"][disabled]:focus,
    input[type="datetime-local"][disabled]:active,
    input[type="datetime-local"].is-disabled:focus,
    input[type="datetime-local"].is-disabled:active,
    input[type="date"][disabled]:focus,
    input[type="date"][disabled]:active,
    input[type="date"].is-disabled:focus,
    input[type="date"].is-disabled:active,
    input[type="month"][disabled]:focus,
    input[type="month"][disabled]:active,
    input[type="month"].is-disabled:focus,
    input[type="month"].is-disabled:active,
    input[type="time"][disabled]:focus,
    input[type="time"][disabled]:active,
    input[type="time"].is-disabled:focus,
    input[type="time"].is-disabled:active,
    input[type="week"][disabled]:focus,
    input[type="week"][disabled]:active,
    input[type="week"].is-disabled:focus,
    input[type="week"].is-disabled:active,
    input[type="number"][disabled]:focus,
    input[type="number"][disabled]:active,
    input[type="number"].is-disabled:focus,
    input[type="number"].is-disabled:active,
    input[type="email"][disabled]:focus,
    input[type="email"][disabled]:active,
    input[type="email"].is-disabled:focus,
    input[type="email"].is-disabled:active,
    input[type="url"][disabled]:focus,
    input[type="url"][disabled]:active,
    input[type="url"].is-disabled:focus,
    input[type="url"].is-disabled:active,
    input[type="search"][disabled]:focus,
    input[type="search"][disabled]:active,
    input[type="search"].is-disabled:focus,
    input[type="search"].is-disabled:active,
    input[type="tel"][disabled]:focus,
    input[type="tel"][disabled]:active,
    input[type="tel"].is-disabled:focus,
    input[type="tel"].is-disabled:active,
    input[type="color"][disabled]:focus,
    input[type="color"][disabled]:active,
    input[type="color"].is-disabled:focus,
    input[type="color"].is-disabled:active,
    select[disabled]:focus,
    select[disabled]:active,
    select.is-disabled:focus,
    select.is-disabled:active,
    textarea[disabled]:focus,
    textarea[disabled]:active,
    textarea.is-disabled:focus,
    textarea.is-disabled:active,
    .field[disabled]:focus,
    .field[disabled]:active,
    .field.is-disabled:focus,
    .field.is-disabled:active {
      background-color: #d5edf8; }

textarea {
  max-width: 100%;
  min-height: 120px;
  line-height: 1.5em; }

select {
  -webkit-appearance: none;
  /* 1 */
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAHCAYAAADXhRcnAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpEOEZCMjYxMEYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpEOEZCMjYxMUYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQ4RkIyNjBFRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkQ4RkIyNjBGRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Vxkp9gAAAI9JREFUeNpidHFxucHAwKAOxE+AmJmBMPgLxDJAfJMFSKwD4kqoAClgA+P///8ZXF1dPaCGcBKh6QcQB+3evXs7WDMIAA2QB1I7gFgDj0aQFz2BGh+AOEwwUaDAQyBlCMR7cGjcC5KHaQQBuM3IAOiKTiBVhiTUDdRUhq4Oq2aoAelAahIQ5wM1zsCmBiDAADhYMJXVZ9u9AAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: 97.5% center; }

/*********************
BASE (MOBILE) SIZE
This are the mobile styles. It's what people see on their phones. If
you set a great foundation, you won't need to add too many styles in
the other stylesheets. Remember, keep it light: Speed is Important.
*********************/
/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
/* --------------------
Base styles: opinionated defaults
-------------------- */
html,
button,
input,
select,
textarea {
  color: #333; }

body {
  color: #333;
  font-size: 0.8175rem;
  font-family: Verdana, Roboto, "Droid Sans", "Noto Sans Japanese", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  line-height: 1.5;
  background: #fff;
  font-weight: 200; }

a:link,
a:visited {
  color: #333;
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1; }

a:hover,
a:focus,
a:active {
  color: #ed3c3c;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: color 0.5s;
  transition: color 0.5s; }

small {
  font-size: smaller; }

img {
  vertical-align: bottom; }

em {
  font-style: normal; }

table {
  border: 1px solid #ccc; }
  table th,
  table td {
    border: 1px solid #ccc; }
  table th {
    text-align: left;
    font-weight: 400;
    background: #eee; }

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none; }

::selection {
  background: #b3d4fc;
  text-shadow: none; }

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */
audio,
canvas,
img,
video {
  vertical-align: middle; }

/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical; }

.sp-none {
  display: none; }

.pc-none {
  display: block; }

/* --------------------
Browse Happy prompt
-------------------- */
.browsehappy {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0; }

/* ==========================================================================
slides
========================================================================== */
.fullSlideShow {
  position: relative; }
  .fullSlideShow ul {
    display: none; }

.sns-branding {
  width: 100%; }
  .sns-branding img {
    width: 100%;
    height: auto; }

/* header
--------------------------- */
.header {
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 100%;
  padding: 10px;
  margin-left: -50%;
  background: rgba(255, 239, 180, 0.5); }
  .header .site-title {
    float: right;
    font-size: 1rem;
    color: #8f6a4e;
    text-align: right;
    font-style: italic; }
    .header .site-title span {
      font-size: 0.6125rem; }

/* ==========================================================================
navigation
========================================================================== */
.g-nav .main-nav {
  zoom: 1;
  margin: 0;
  padding: 0 10px;
  background: rgba(255, 239, 180, 0.6); }
  .g-nav .main-nav:before, .g-nav .main-nav:after {
    content: " ";
    /* 1 */
    display: table;
    /* 2 */ }
  .g-nav .main-nav:after {
    clear: both; }
  .g-nav .main-nav li {
    float: left;
    width: 48%; }
    .g-nav .main-nav li a,
    .g-nav .main-nav li a:link {
      display: block;
      padding: 5px;
      color: #8f6a4e;
      font-size: 1rem;
      text-align: center;
      text-decoration: none; }
.g-nav .sns-nav {
  zoom: 1;
  margin: 0;
  padding: 10px;
  background: rgba(255, 239, 180, 0.9);
  text-align: center; }
  .g-nav .sns-nav:before, .g-nav .sns-nav:after {
    content: " ";
    /* 1 */
    display: table;
    /* 2 */ }
  .g-nav .sns-nav:after {
    clear: both; }
  .g-nav .sns-nav li {
    display: inline-block; }

/* fixed menu
--------------------------- */
.fixed {
  position: fixed;
  top: 0;
  z-index: 9999;
  width: 100%; }
  .fixed .main-nav {
    background: #fffae6; }
    .fixed .main-nav li {
      width: auto; }
      .fixed .main-nav li a,
      .fixed .main-nav li a:link {
        margin-right: 8px;
        padding: 8px 0;
        font-size: 0.75rem; }
  .fixed .sns-nav {
    background: #ffefb4;
    padding: 8px 0; }
    .fixed .sns-nav li {
      margin: 0 1%; }
    .fixed .sns-nav img {
      width: 16px;
      height: auto; }

/* ==========================================================================
title
========================================================================== */
.section-title {
  padding: 10px 0 0;
  background: url(../images/img_hline.png) 0 top no-repeat;
  font-size: 1.25rem;
  color: #8f6a4e; }

.sub-title {
  max-width: 360px;
  padding: 0 10px; }

.h1 {
  padding-top: 110px; }

.sub-section-title {
  margin-bottom: 0;
  color: #ed3c3c;
  font-size: 1rem;
  font-weight: 400; }

/* ==========================================================================
contents
========================================================================== */
/* common
--------------------------- */
.red {
  color: #ed3c3c; }

/* layout
--------------------------- */
.news,
.gift,
.guide,
.faq,
.shop,
.sns,
.tkg,
.iroha-description,
.iroha-title,
.iroha-lead,
.daikan .inner,
.tel-section .inner,
.sub-iroha,
.sub-shiro,
.sub-syoyu,
.sub-company,
.sub-contact,
.news-detail {
  max-width: 360px;
  margin: 0 auto; }

/* top page
--------------------------- */
.top-section {
  margin-bottom: 30px; }

.contents {
  position: relative; }

.news {
  padding: 0 10px; }

.news-list li {
  margin: 0 0 0.5em; }
.news-list .cat-name {
  padding: 2px 0.5em;
  background: #8f6a4e;
  color: #fff; }
.news-list .new-mark {
  color: #ed3c3c; }

.news-detail {
  padding: 0 10px; }
  .news-detail .news-title {
    padding: 5px 10px;
    background: #eee;
    border-left: 3px solid #8f6a4e;
    font-size: 1.125rem;
    line-height: 1.2; }
  .news-detail .news-date {
    text-align: right;
    margin: 5px 10px; }
  .news-detail .detailUpfile {
    margin: 5px 0 35px;
    text-align: center; }
  .news-detail .backORcloseBtn {
    text-align: center;
    line-height: 100%;
    margin-top: 15px; }
  .news-detail .backORcloseBtn a {
    display: inline-block;
    padding: 10px 15px;
    border: 1px solid #ccc;
    border-radius: 6px;
    text-decoration: none;
    font-size: 12px; }
  .news-detail .detailUpfile img {
    max-width: 100%;
    height: auto; }
  .news-detail .news-detail-text {
    font-size: 1rem;
    color: #333; }

.gift {
  padding: 0 10px; }

.gift-attention {
  display: block;
  width: 100%;
  margin: 0 auto 10px;
  padding: 10px;
  background: #ed3c3c;
  color: #fff;
  text-align: center; }

.gift-list {
  margin: 0; }
  .gift-list li {
    position: relative;
    margin: 0 0 30px; }
    .gift-list li img {
      display: block;
      width: 100%;
      height: auto;
      margin: 0 auto; }
    .gift-list li .gift-label {
      position: absolute;
      top: 20px;
      right: 20px;
      padding: 10px;
      background: #8f6a4e;
      -moz-border-radius: 10px;
      -webkit-border-radius: 10px;
      border-radius: 10px;
      color: #fff; }
    .gift-list li .gift-title {
      margin-top: 0;
      padding: 10px;
      background: #f7f5f5;
      color: #666;
      font-size: 1.25em;
      font-weight: normal; }

.gift-package .lead {
  font-size: 1.5em;
  color: #8f6a4e;
  text-align: center;
  font-weight: 400; }

.package-list {
  zoom: 1; }
  .package-list:before, .package-list:after {
    content: " ";
    /* 1 */
    display: table;
    /* 2 */ }
  .package-list:after {
    clear: both; }
  .package-list li {
    float: left;
    margin: 0 1% 10px;
    width: 48%; }
    .package-list li img {
      width: 100%;
      height: auto; }

.daikan {
  padding: 20px 10px;
  background: url(../images/bg_daikan.jpg) 0 0 repeat; }
  .daikan .inner {
    position: relative; }
  .daikan .daikan-title {
    margin-top: 0;
    margin-bottom: 30px;
    color: #003333;
    font-size: 1.5em; }
    .daikan .daikan-title span {
      margin: 0 0 0 0.5em;
      font-size: 1rem;
      color: #8f6a4e; }
  .daikan .daikan-label {
    position: absolute;
    display: inline-block;
    top: 0;
    right: 10px;
    padding: 10px;
    background: #ffefb4;
    -moz-border-radius: 40px;
    -webkit-border-radius: 40px;
    border-radius: 40px;
    color: #8f6a4e;
    text-align: center; }
  .daikan figure {
    width: 100%; }
    .daikan figure img {
      width: 100%;
      height: auto;
      border: 3px solid #fff; }

.iroha-section .iroha-text {
  position: relative;
  padding: 90px 10px 10px;
  background: url(../images/bg_iroha.jpg) 0 0 repeat; }
  .iroha-section .iroha-text .iroha-description {
    color: #fff;
    text-align: center;
    font-size: 1.125rem; }
  .iroha-section .iroha-text .iroha-title {
    font-size: 1.5rem;
    font-weight: 600;
    color: #fff;
    text-align: center; }
  .iroha-section .iroha-text .iroha-en {
    margin: 0;
    padding: 5px 0;
    font-family: Italiana;
    text-align: center;
    font-size: 1.875rem;
    letter-spacing: 0.3em;
    color: #fff; }
  .iroha-section .iroha-text .iroha-lead {
    padding: 10px;
    font-size: 1.125rem;
    color: #fff; }
  .iroha-section .iroha-text .iroha-label {
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 10px;
    background: #ed3c3c;
    color: #fff; }
.iroha-section .iroha-img {
  width: 100%;
  height: 360px;
  background: url(../images/img_top_tkg.jpg) 0 0 no-repeat;
  background-size: cover; }
.iroha-section .iroha-btn {
  display: block;
  margin: 10px; }
  .iroha-section .iroha-btn a,
  .iroha-section .iroha-btn a:link {
    display: block;
    padding: 10px 20px 10px 80px;
    background: url(../images/icon_top_minori.png) 20px center no-repeat;
    background-size: 50px;
    border: 3px solid #8f6a4e;
    color: #8f6a4e;
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none; }
    .iroha-section .iroha-btn a:hover, .iroha-section .iroha-btn a:active, .iroha-section .iroha-btn a:focus,
    .iroha-section .iroha-btn a:link:hover,
    .iroha-section .iroha-btn a:link:active,
    .iroha-section .iroha-btn a:link:focus {
      background-color: #8f6a4e;
      color: #fff;
      -webkit-transition: background-color, 0.5s;
      transition: background-color, 0.5s; }

.guide {
  padding: 10px; }
  .guide .guide-list {
    margin: 0 0 10px;
    padding: 10px;
    border: 1px solid #ccc;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    text-align: center; }
    .guide .guide-list .guide-title {
      font-size: 1.125rem;
      font-weight: 600; }
    .guide .guide-list:last-child {
      margin: 0; }

.faq {
  padding: 10px; }
  .faq .faq-title {
    font-size: 1.25rem;
    text-align: center; }
  .faq .faq-list dt {
    font-weight: 600;
    font-size: 1rem; }

.shop {
  padding: 10px; }
  .shop .shop-label {
    float: right;
    padding: 10px;
    background: #ed3c3c;
    color: #fff; }
  .shop .shop-map-wrapper {
    clear: both;
    text-align: center; }
  .shop .shop-map {
    width: 100%;
    height: auto; }
  .shop .shop-list li {
    margin: 0 0 10px; }
    .shop .shop-list li a {
      display: block;
      padding: 10px;
      border: 1px solid #ccc;
      -moz-border-radius: 10px;
      -webkit-border-radius: 10px;
      border-radius: 10px;
      text-decoration: none;
      font-size: 1.25rem;
      background: #eee; }

.sns {
  padding: 10px; }
  .sns .sns-title {
    color: #8f6a4e;
    font-size: 1rem; }
  .sns .sns-insta-list {
    zoom: 1; }
    .sns .sns-insta-list:before, .sns .sns-insta-list:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .sns .sns-insta-list:after {
      clear: both; }
    .sns .sns-insta-list li {
      float: left;
      width: 48%;
      margin: 0 1% 10px; }
      .sns .sns-insta-list li img {
        width: 100%;
        height: auto;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px; }
  .sns .sns-insta-link a {
    text-decoration: none; }
    .sns .sns-insta-link a img {
      width: 100px;
      height: auto; }

.tkg {
  padding: 10px;
  background: #ffefb4; }
  .tkg .t-shirt {
    width: 100%;
    height: auto; }
  .tkg .tkg-title {
    text-align: center; }
  .tkg .tkg-link {
    text-align: right; }
    .tkg .tkg-link a {
      text-decoration: none; }

/* ==========================================================================
footer
========================================================================== */
.footer {
  padding: 10px;
  background: url(../images/bg_footer.jpg) center center no-repeat;
  background-size: cover; }
  .footer .footer-link {
    zoom: 1; }
    .footer .footer-link:before, .footer .footer-link:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .footer .footer-link:after {
      clear: both; }
    .footer .footer-link li {
      float: left;
      margin: 0 0 8px;
      border-right: 1px solid #fff; }
      .footer .footer-link li:last-child {
        border: none; }
      .footer .footer-link li a {
        padding: 0 10px;
        color: #fff;
        text-decoration: none; }
  .footer .footer-sns-title {
    color: #fff; }
  .footer .fooer-sns {
    color: #fff;
    zoom: 1; }
    .footer .fooer-sns:before, .footer .fooer-sns:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .footer .fooer-sns:after {
      clear: both; }
  .footer .share-btn {
    width: 100px;
    float: left;
    border: 0;
    padding: 0;
    margin: 0 5px 0px 0;
    min-height: 30px;
    line-height: 18px;
    text-indent: 0; }
    .footer .share-btn:first-child {
      width: 70px;
      padding-left: 10px; }
  .footer .copyright {
    clear: both;
    margin-top: 30px;
    text-align: center;
    color: #fff; }

/* to top
--------------------------- */
#to-top {
  position: fixed;
  z-index: 99999;
  right: 20px;
  bottom: 20px; }
  #to-top a:link,
  #to-top a:visited {
    padding: 10px;
    background: #ccc;
    color: #666;
    text-decoration: none; }
  #to-top a:hover,
  #to-top a:active,
  #to-top a:focus {
    background: #ffefb4;
    color: #333;
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    -webkit-transition: background-color, 0.5s;
    transition: background-color, 0.5s; }
  #to-top a:focus {
    outline: none; }

/* ==========================================================================
tel link
========================================================================== */
.tel-section {
  margin: 0 0 30px;
  padding: 20px 10px;
  background: #ffefb4; }
  .tel-section .link-shop {
    margin: 0 0 30px;
    background: #ed3c3c; }
    .tel-section .link-shop a,
    .tel-section .link-shop a:link {
      display: block;
      padding: 20px;
      color: #fff;
      font-size: 1rem;
      font-weight: 600;
      text-decoration: none;
      text-align: center; }
  .tel-section .order-wrapper {
    zoom: 1; }
    .tel-section .order-wrapper:before, .tel-section .order-wrapper:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .tel-section .order-wrapper:after {
      clear: both; }
  .tel-section .order {
    width: 48%;
    float: left;
    margin: 0 1% 10px;
    padding: 5px;
    background: #fffae6; }
    .tel-section .order .order-title {
      display: block;
      font-size: 0.8125rem;
      text-align: center; }
    .tel-section .order .order-number,
    .tel-section .order a {
      display: block;
      margin: 10px 0;
      font-size: 1.125rem;
      text-align: center;
      color: #333; }
    .tel-section .order .order-sheet-wrapper {
      text-align: center; }
    .tel-section .order .order-sheet {
      display: inline-block;
      margin: 0 auto;
      background: #8f6a4e;
      vertical-align: middle;
      -moz-border-radius: 5px;
      -webkit-border-radius: 5px;
      border-radius: 5px; }
      .tel-section .order .order-sheet a {
        margin: 6px 0;
        padding: 0 5px;
        color: #fff;
        text-decoration: none;
        font-size: 0.625rem; }
    .tel-section .order .order-term {
      display: block;
      text-align: center; }

/* ==========================================================================
sub pages
========================================================================== */
/*
--------------------------- */
.sub-page .fullSlideShow {
  height: 300px !important;
  background: url(../images/slide03.jpg) center bottom no-repeat;
  background-size: cover; }

.sub-lead {
  padding: 0 10px; }

.sub-lead-list {
  margin: 0 0 0 1em;
  list-style: disc;
  padding-left: 1em; }

.sub-iroha,
.sub-shiro,
.sub-syoyu {
  padding: 0 10px; }
  .sub-iroha figure img,
  .sub-shiro figure img,
  .sub-syoyu figure img {
    width: 100%;
    max-width: 340px;
    height: auto; }
  .sub-iroha .sub-iroha-text p,
  .sub-shiro .sub-iroha-text p,
  .sub-syoyu .sub-iroha-text p {
    margin-bottom: 2em; }
  .sub-iroha .sub-iroha-list,
  .sub-shiro .sub-iroha-list,
  .sub-syoyu .sub-iroha-list {
    margin: 1em 0 2em; }
    .sub-iroha .sub-iroha-list li,
    .sub-shiro .sub-iroha-list li,
    .sub-syoyu .sub-iroha-list li {
      margin: 0 0 0 1em;
      list-style: disc; }
  .sub-iroha .sub-iroha-recommend,
  .sub-shiro .sub-iroha-recommend,
  .sub-syoyu .sub-iroha-recommend {
    position: relative;
    margin: 30px 0 0; }
    .sub-iroha .sub-iroha-recommend .title-recommend,
    .sub-shiro .sub-iroha-recommend .title-recommend,
    .sub-syoyu .sub-iroha-recommend .title-recommend {
      position: absolute;
      display: inline-block;
      top: -40px;
      left: 20px;
      padding: 12px 20px;
      background: #ffefb4;
      -moz-border-radius: 10px;
      -webkit-border-radius: 10px;
      border-radius: 10px;
      color: #8f6a4e; }
    .sub-iroha .sub-iroha-recommend .recommend-lead,
    .sub-shiro .sub-iroha-recommend .recommend-lead,
    .sub-syoyu .sub-iroha-recommend .recommend-lead {
      padding: 30px 20px 20px;
      border: 1px solid #666; }

.sub-tkg {
  background: url(../images/bg_daikan.jpg) 0 0 repeat;
  position: relative;
  padding: 30px 10px 0;
  background-size: auto; }
  .sub-tkg .sub-tkg-title {
    color: #8f6a4e;
    letter-spacing: 0.2em;
    font-weight: 400; }
  .sub-tkg .sub-tkg-label {
    position: absolute;
    top: 20px;
    right: 10px;
    text-align: right; }
    .sub-tkg .sub-tkg-label img {
      width: 60%;
      height: auto; }
  .sub-tkg .sub-tkg-img img {
    width: 100%;
    height: auto;
    vertical-align: bottom; }

.sub-shop figure {
  margin-bottom: 30px; }
.sub-shop .sub-shop-detail {
  width: 100%; }
  .sub-shop .sub-shop-detail th {
    width: 80px;
    padding: 5px 8px; }
  .sub-shop .sub-shop-detail td {
    padding: 5px 8px; }
.sub-shop .shop-point {
  padding: 20px;
  background: #ffefb4;
  color: #8f6a4e;
  font-size: 1rem; }
  .sub-shop .shop-point em {
    font-weight: 600; }

.shop-map {
  position: relative;
  /* height: 440px; */
  margin-top: 30px;
  margin-bottom: 30px;}
  .shop-map img {
    position: absolute;
    display: block;
    left: 50%;
    margin-left: -960px; }
  .shop-map .map-link {
    /* padding-top: 420px; */
    text-align: center; }

.sub-company {
  padding: 0 10px; }
  .sub-company .sub-company-detail {
    width: 100%;
    border: 1px solid #ccc; }
    .sub-company .sub-company-detail th,
    .sub-company .sub-company-detail td {
      padding: 5px 8px; }
    .sub-company .sub-company-detail th {
      width: 100px;
      font-weight: 600; }
    .sub-company .sub-company-detail .access {
      font-size: smaller; }
      .sub-company .sub-company-detail .access a:link,
      .sub-company .sub-company-detail .access a:visited {
        color: #8f6a4e; }

.sub-contact {
  padding: 0 10px; }

.form-table {
  width: 100%; }
  .form-table th,
  .form-table td {
    padding: 5px 8px; }

.btn {
  max-width: 700px;
  text-align: center; }
  .btn input[type="submit"],
  .btn input[type="reset"],
  .btn input[type="hidden"],
  .btn input[type="button"] {
    padding: 15px 20px;
    background: #ed3c3c;
    border: 1px solid #ed3c3c;
    color: #fff; }
  .btn input[type="reset"],
  .btn input[type="hidden"],
  .btn input[type="button"] {
    background: #ccc;
    border-color: #ccc; }

/* ==========================================================================
form
========================================================================== */
#formWrap {
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
  padding: 0 10px;
  color: #333;
  font-size: 1rem; }

table.formTable {
  width: 100%;
  margin: 0 auto;
  border-collapse: collapse; }

table.formTable td, table.formTable th {
  border: 1px solid #ccc;
  padding: 10px; }

table.formTable th {
  width: 30%;
  font-weight: normal;
  background: #efefef;
  text-align: left; }

p.error_messe {
  margin: 5px 0;
  color: red; }

/* ==========================================================================
loading
========================================================================== */
#loader {
  width: 80px;
  height: 80px;
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -80px;
  /* heightの半分のマイナス値 */
  margin-left: -80px;
  /* widthの半分のマイナス値 */
  z-index: 100; }

 
#fade {
  width: 100%;
  height: 100%;
  display: none;
  background-color: #FFFFFF;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 50; }

/*********************
LARGER MOBILE DEVICES
This is for devices like the Galaxy Note or something that's
larger than an iPhone but smaller than a tablet. Let's call them
tweeners.
*********************/
@media only screen and (min-width: 481px) {
  /******************************************************************
  Site Name:
  Author:
  
  Stylesheet: 481px and Up Stylesheet
  
  This stylesheet is loaded for larger devices. It's set to
  481px because at 480px it would load on a landscaped iPhone.
  This isn't ideal because then you would be loading all those
  extra styles on that same mobile connection.
  
  A word of warning. This size COULD be a larger mobile device,
  so you still want to keep it pretty light and simply expand
  upon your base.scss styles.
  
  ******************************************************************/
  /*
  IMPORTANT NOTE ABOUT SASS 3.3 & UP
  You can't use @extend within media queries
  anymore, so just be aware that if you drop
  them in here, they won't work.
  */
  /* ==========================================================================
  slides
  ========================================================================== */
  .fullSlideShow {
    width: 100%;
    height: 782px !important;
    text-align: left;
    position: relative;
    overflow: hidden; }

  .fullSlideShow ul {
    display: block;
    top: 50%;
    left: 50%;
    width: 100%;
    position: absolute;
    /* absolute or fixed */
    overflow: hidden; }

  .fullSlideShow ul li {
    top: 0;
    left: 0;
    width: 100%;
    display: none;
    position: absolute; }

  .fullSlideShow ul li img {
    width: 100%; }

  .sns-branding {
    display: none; }

  /* header
  --------------------------- */
  .header {
    z-index: 999; }
    .header img {
      float: left;
      width: 82px;
      margin-top: 5px; }
    .header .site-title {
      margin-top: 0;
      margin-bottom: 0;
      line-height: 1.2;
      font-size: 1.5rem; }

  /* ==========================================================================
  navigation
  ========================================================================== */
  .g-nav .main-nav {
    padding: 0 20px; }
    .g-nav .main-nav li {
      width: auto; }
      .g-nav .main-nav li a,
      .g-nav .main-nav li a:link {
        margin-right: 10px;
        padding: 10px 0;
        font-size: 1.125rem; }

  /* fixed menu
  --------------------------- */
  .fixed .sns-nav {
    padding: 8px 0; }
    .fixed .sns-nav li {
      margin: 0 5px; }
    .fixed .sns-nav img {
      width: auto;
      height: auto; }

  /* ==========================================================================
  title
  ========================================================================== */
  .h1 {
    padding-top: 130px; }

  .sub-section-title {
    margin-top: 0; }

  /* ==========================================================================
  tel-link
  ========================================================================== */
  .tel-section {
    text-align: center; }
    .tel-section .link-shop {
      display: inline-block; }
    .tel-section .order .order-title {
      font-size: 0.875rem; }
    .tel-section .order .order-sheet a {
      font-size: 1rem; }

  /* ==========================================================================
  contents
  ========================================================================== */
  /* layout
  --------------------------- */
  .news,
  .gift,
  .guide,
  .faq,
  .shop,
  .sns,
  .tkg,
  .iroha-description,
  .iroha-title,
  .iroha-lead,
  .daikan .inner,
  .tel-section .inner,
  .sub-title,
  .sub-iroha,
  .sub-shiro,
  .sub-syoyu,
  .sub-company,
  .sub-contact,
  .news-detail {
    max-width: 600px; }

  /* top page
  --------------------------- */
  .news-detail {
    padding: 0 10px; }

  .gift .gift-list {
    zoom: 1; }
    .gift .gift-list:before, .gift .gift-list:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .gift .gift-list:after {
      clear: both; }
    .gift .gift-list li {
      float: left;
      width: 48%;
      margin: 0 1%; }

  .gift-package .package-list li {
    width: 160px;
    margin: 0 10px 10px 0; }

  .daikan {
    zoom: 1; }
    .daikan:before, .daikan:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .daikan:after {
      clear: both; }
    .daikan .daikan-wrapper,
    .daikan figure {
      float: left;
      width: 48%;
      margin: 0 1%; }
    .daikan .daikan-wrapper {
      float: right; }
    .daikan .daikan-title {
      margin: 0;
      font-size: 1.875rem;
      line-height: 1.2; }

  .iroha-section .iroha-img {
    height: 460px; }
  .iroha-section .iroha-btn {
    width: 450px;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto; }

  .shop .shop-map {
    margin-bottom: 30px;
    width: auto; }

  /* ==========================================================================
  footer
  ========================================================================== */
  .footer .footer-link-wrapper {
    zoom: 1; }
    .footer .footer-link-wrapper:before, .footer .footer-link-wrapper:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .footer .footer-link-wrapper:after {
      clear: both; }
  .footer .footer-link {
    float: left; }
    .footer .footer-link li {
      margin: 0; }
  .footer .footer-sns {
    float: right;
    margin: 1em 10px 1em 0; }
  .footer .copyright {
    clear: both; }

  /* ==========================================================================
  sub page
  ========================================================================== */
  .sub-iroha .sub-iroha-wrapper,
  .sub-shiro .sub-iroha-wrapper,
  .sub-syoyu .sub-iroha-wrapper {
    zoom: 1; }
    .sub-iroha .sub-iroha-wrapper:before, .sub-iroha .sub-iroha-wrapper:after,
    .sub-shiro .sub-iroha-wrapper:before,
    .sub-shiro .sub-iroha-wrapper:after,
    .sub-syoyu .sub-iroha-wrapper:before,
    .sub-syoyu .sub-iroha-wrapper:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .sub-iroha .sub-iroha-wrapper:after,
    .sub-shiro .sub-iroha-wrapper:after,
    .sub-syoyu .sub-iroha-wrapper:after {
      clear: both; }
  .sub-iroha figure,
  .sub-shiro figure,
  .sub-syoyu figure {
    float: left;
    width: 48%;
    margin: 0 2% 0 0; }
    .sub-iroha figure img,
    .sub-shiro figure img,
    .sub-syoyu figure img {
      width: 100%;
      max-width: 430px; }
  .sub-iroha .sub-iroha-text,
  .sub-shiro .sub-iroha-text,
  .sub-syoyu .sub-iroha-text {
    float: right;
    width: 50%;
    padding-top: 0; }

  .sub-tkg {
    background-size: auto; }
    .sub-tkg .sub-tkg-title {
      font-size: 2.1875em; }
    .sub-tkg .sub-tkg-label img {
      width: auto; }
    .sub-tkg p {
      font-size: 1.25rem;
      font-weight: 400; }
    .sub-tkg .sub-tkg-img {
      text-align: center; }
      .sub-tkg .sub-tkg-img img {
        max-width: 676px; }

  .sub-company .sub-company-detail th,
  .sub-company .sub-company-detail td {
    padding: 5px 8px; } }
/*********************
TABLET & SMALLER LAPTOPS
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*********************/
@media only screen and (min-width: 768px) {
  /******************************************************************
  Site Name:
  Author:
  
  Stylesheet: Tablet & Small Desktop Stylesheet
  
  Here's where you can start getting into the good stuff.
  This size will work on iPads, other tablets, and desktops.
  So you can start working with more styles, background images,
  and other resources. You'll also notice the grid starts to
  come into play. Have fun!
  
  ******************************************************************/
  .sp-none {
    display: block; }

  .pc-none {
    display: none; }

  /* ==========================================================================
  slides
  ========================================================================== */
  .fullSlideShow {
    height: 770px !important; }

  /* ==========================================================================
  navigation
  ========================================================================== */
  .g-nav {
    background: #ffefb4;
    zoom: 1; }
    .g-nav:before, .g-nav:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .g-nav:after {
      clear: both; }
    .g-nav .main-nav {
      float: left;
      width: 80%;
      padding: 0; }
      .g-nav .main-nav li {
        padding: 0;
        margin: 0 20px 0 0; }
    .g-nav .sns-nav {
      float: right;
      width: 20%;
      margin-top: 9px;
      padding: 0 20px;
      text-align: right;
      filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
      opacity: 0.7; }

  /* fixed menu
  --------------------------- */
  .fixed {
    background: #ffefb4;
    zoom: 1; }
    .fixed:before, .fixed:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .fixed:after {
      clear: both; }
    .fixed .main-nav {
      float: left;
      width: 80%;
      margin: 0;
      background: #ffefb4; }
      .fixed .main-nav li {
        padding: 0;
        margin: 0 20px 0 0; }
    .fixed .sns-nav {
      float: right;
      width: 20%;
      margin: 9px 0 0;
      padding: 0 20px;
      text-align: right;
      filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
      opacity: 0.7; }
      .fixed .sns-nav li {
        margin: 0; }

  /* ==========================================================================
  title
  ========================================================================== */
  .sub-title {
    width: 100%;
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0.67em; }

  .sub-section-title {
    font-size: 1.25rem; }

  /* ==========================================================================
  tel link
  ========================================================================== */
  /* ==========================================================================
  contents
  ========================================================================== */
  /* layout
  --------------------------- */
  .news,
  .gift,
  .guide,
  .faq,
  .shop,
  .sns,
  .tkg,
  .iroha-description,
  .iroha-title,
  .iroha-lead,
  .daikan .inner,
  .tel-section .inner,
  .sub-iroha,
  .sub-shiro,
  .sub-syoyu,
  .sub-tkg-title,
  .sub-tkg-wrapper,
  .sub-company,
  .sub-contact {
    width: 100%;
    max-width: 1080px;
    padding: 0 20px;
    margin: 0 auto; }

  .contents {
    font-size: 0.875rem; }

  /* top page
  --------------------------- */
  .news-detail {
    max-width: 700px; }

  .gift {
    margin-top: 0;
    padding-top: 30px;
    position: relative; }
    .gift .gift-attention {
      position: absolute;
      display: inline;
      top: 50px;
      right: 20px;
      width: auto; }
    .gift .gift-list {
      margin-top: 30px; }
      .gift .gift-list li {
        width: 31.3333%;
        height: 350px; }
        .gift .gift-list li .gift-label {
          top: 15px;
          right: 15px;
          padding: 8px 10px;
          font-size: 0.75rem; }

  .daikan .daikan-title {
    font-size: 1.875rem; }
  .daikan .daikan-lead {
    margin-top: 30px;
    font-size: 1rem; }
  .daikan figure img {
    max-width: 360px; }
  .daikan .daikan-labe {
    right: 20px; }

  .iroha-section .iroha-wrapper {
    zoom: 1; }
    .iroha-section .iroha-wrapper:before, .iroha-section .iroha-wrapper:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .iroha-section .iroha-wrapper:after {
      clear: both; }
  .iroha-section .iroha-text {
    float: right;
    padding-top: 80px;
    width: 50%;
    height: 460px; }
  .iroha-section .iroha-img {
    float: left;
    width: 50%; }
  .iroha-section .iroha-btn {
    clear: both; }

  .guide .guide-list-wrapper {
    zoom: 1; }
    .guide .guide-list-wrapper:before, .guide .guide-list-wrapper:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .guide .guide-list-wrapper:after {
      clear: both; }
  .guide .guide-list {
    width: 31.3333%;
    margin: 0 1%;
    height: 340px;
    float: left;
    padding: 20px; }
    .guide .guide-list img {
      width: 100%;
      height: auto; }
    .guide .guide-list .guide02 {
      width: 60%; }

  .shop {
    position: relative; }
    .shop .shop-lead {
      width: 50%; }
    .shop .shop-label {
      float: none;
      position: absolute;
      top: 20px;
      right: 20px; }
    .shop .shop-map-wrapper {
      zoom: 1; }
      .shop .shop-map-wrapper:before, .shop .shop-map-wrapper:after {
        content: " ";
        /* 1 */
        display: table;
        /* 2 */ }
      .shop .shop-map-wrapper:after {
        clear: both; }
      .shop .shop-map-wrapper .shop-map {
        width: 48%;
        margin: 0 1%;
        float: left; }
        .shop .shop-map-wrapper .shop-map img {
          max-width: 372px; }
      .shop .shop-map-wrapper .shop-list {
        width: 48%;
        float: right;
        margin: 100px 1% 0; }
        .shop .shop-map-wrapper .shop-list li a {
          padding: 30px 20px;
          font-size: 1.5em; }

  .sns .sns-wrapper {
    zoom: 1; }
    .sns .sns-wrapper:before, .sns .sns-wrapper:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .sns .sns-wrapper:after {
      clear: both; }
    .sns .sns-wrapper .sns-fb {
      float: left;
      width: 48%;
      margin: 0 1%; }
    .sns .sns-wrapper .sns-insta {
      float: right;
      width: 48%;
      margin: 0 1%; }

  .tkg {
    padding: 30px;
    zoom: 1; }
    .tkg:before, .tkg:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .tkg:after {
      clear: both; }
    .tkg .tkg-text {
      width: 48%;
      float: right;
      margin: 0 1%;
      padding: 30px 70px; }
    .tkg .t-shirt {
      float: left;
      width: 48%;
      margin: 0 1%; }

  /* ==========================================================================
  sub page
  ========================================================================== */
  .sub-lead {
    width: 100%;
    margin: 0 auto;
    max-width: 1080px;
    padding: 0 20px; }

  .lead-inner {
    max-width: 700px; }

  .sub-iroha .sub-iroha-wrapper,
  .sub-syoyu .sub-iroha-wrapper,
  .sub-shiro .sub-iroha-wrapper {
    padding: 0 50px; }
  .sub-iroha .sub-iroha-list li,
  .sub-syoyu .sub-iroha-list li,
  .sub-shiro .sub-iroha-list li {
    font-size: 1rem; }
  .sub-iroha .sub-iroha-recommend,
  .sub-syoyu .sub-iroha-recommend,
  .sub-shiro .sub-iroha-recommend {
    margin-top: 50px;
    padding: 0 50px; }
    .sub-iroha .sub-iroha-recommend .title-recommend,
    .sub-syoyu .sub-iroha-recommend .title-recommend,
    .sub-shiro .sub-iroha-recommend .title-recommend {
      top: -51px;
      left: 100px;
      font-size: 1.25rem; }
    .sub-iroha .sub-iroha-recommend .recommend-lead,
    .sub-syoyu .sub-iroha-recommend .recommend-lead,
    .sub-shiro .sub-iroha-recommend .recommend-lead {
      padding-top: 50px; }
  .sub-iroha .sub-iroha-text p,
  .sub-syoyu .sub-iroha-text p,
  .sub-shiro .sub-iroha-text p {
    font-size: 1rem; }

  .sub-tkg {
    padding-top: 100px;
    padding-left: 0;
    padding-right: 0;
    background: none; }
    .sub-tkg .sub-tkg-title {
      padding-left: 0;
      padding-right: 0; }
    .sub-tkg .sub-tkg-wrap {
      padding-top: 30px;
      background: url(../images/bg_daikan.jpg) 0 0 repeat; }
    .sub-tkg .sub-tkg-wrapper {
      zoom: 1;
      position: relative;
      padding-left: 0;
      padding-right: 0; }
      .sub-tkg .sub-tkg-wrapper:before, .sub-tkg .sub-tkg-wrapper:after {
        content: " ";
        /* 1 */
        display: table;
        /* 2 */ }
      .sub-tkg .sub-tkg-wrapper:after {
        clear: both; }
      .sub-tkg .sub-tkg-wrapper .sub-tkg-text-wrapper {
        float: left;
        width: 38%;
        margin: 0 2% 0 0;
        padding-left: 0; }
      .sub-tkg .sub-tkg-wrapper .sub-tkg-label {
        right: auto;
        top: -170px;
        left: 330px; }
      .sub-tkg .sub-tkg-wrapper .sub-tkg-img {
        float: right;
        width: 60%;
        max-width: 676px;
        margin-top: -50px; }

  .sub-company .sub-company-detail {
    max-width: 900px;
    font-size: 1.125rem; }
    .sub-company .sub-company-detail th,
    .sub-company .sub-company-detail td {
      padding: 10px 16px; }
    .sub-company .sub-company-detail th {
      width: 200px; }

  .form-table {
    max-width: 700px; } }
@media only screen and (min-width: 1080px) {
  /******************************************************************
  Site Name:
  Author:
  
  Stylesheet: Desktop Stylsheet
  
  This is the desktop size. It's larger than an iPad so it will only
  be seen on the Desktop.
  
  ******************************************************************/
  .inner {
    width: 1080px;
    padding: 0 10px;
    margin: 0 auto; }

  /* ==========================================================================
  slide & header
  ========================================================================== */
  .fullSlideShow {
    height: 900px !important; }

  .header .site-title {
    font-size: 1.875rem; }

  /* ==========================================================================
  navigation
  ========================================================================== */
  .g-nav {
    background: #ffefb4;
    zoom: 1; }
    .g-nav:before, .g-nav:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .g-nav:after {
      clear: both; }
    .g-nav .main-nav {
      float: left;
      width: 700px; }
      .g-nav .main-nav li {
        padding: 0;
        margin: 0 20px 0 0; }
    .g-nav .sns-nav {
      float: right;
      width: 360px;
      margin-top: 9px;
      padding: 0;
      text-align: right;
      filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
      opacity: 0.7; }

  /* ==========================================================================
  title
  ========================================================================== */
  .section-title {
    font-size: 1.5rem; }

  /* ==========================================================================
  tel-link
  ========================================================================== */
  .tel-section .inner {
    zoom: 1;
    padding: 0; }
    .tel-section .inner:before, .tel-section .inner:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .tel-section .inner:after {
      clear: both; }
  .tel-section .link-shop {
    float: left;
    width: 530px;
    height: 110px;
    margin: 0 10px 0 0;
    padding: 0; }
    .tel-section .link-shop a,
    .tel-section .link-shop a:link {
      line-height: 70px;
      font-size: 2rem;
      font-weight: 400; }
      .tel-section .link-shop a:hover,
      .tel-section .link-shop a:link:hover {
        background: #8f6a4e;
        color: #fff;
        filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
        opacity: 1; }
  .tel-section .order-wrapper {
    float: left; }
  .tel-section .order {
    width: 250px;
    height: 110px;
    margin: 0 20px;
    padding: 10px 0; }
    .tel-section .order:last-child {
      margin: 0; }
    .tel-section .order .order-number {
      margin: 0;
      font-size: 1.875em; }

  /* ==========================================================================
  top page
  ========================================================================== */
  .contents {
    width: 100%;
    max-width: none;
    padding: 0; }

  .inner,
  .news,
  .gift,
  .gift-package,
  .guide,
  .faq,
  .shop,
  .sns {
    width: 1080px;
    padding: 0 10px;
    margin: 0 auto; }

  .top-section,
  .tel-section {
    margin-bottom: 60px; }

  .gift {
    padding-top: 0; }
    .gift .gift-attention {
      top: 0; }
    .gift .gift-list {
      width: 1080px;
      margin: 0 -20px 0 0; }
      .gift .gift-list li {
        width: 340px;
        margin: 0 20px 30px 0; }

  .gift-package {
    padding: 0; }
    .gift-package .package-list {
      width: 1080px;
      margin: 0 -20px 0 0; }
      .gift-package .package-list li {
        margin: 0 20px 20px 0; }

  .daikan .inner {
    padding: 30px 80px;
    zoom: 1; }
    .daikan .inner:before, .daikan .inner:after {
      content: " ";
      /* 1 */
      display: table;
      /* 2 */ }
    .daikan .inner:after {
      clear: both; }
  .daikan .daikan-wrapper {
    position: relative;
    margin: 40px 0 0;
    width: 500px; }
  .daikan .daikan-label {
    top: -50px;
    padding: 20px 30px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    border-radius: 60px;
    font-weight: 600; }
  .daikan figure {
    width: 360px;
    margin: 0; }
    .daikan figure img {
      border: 5px solid #fff; }
  .daikan .daikan-title span {
    margin-right: 1em; }
  .daikan .daikan-br {
    display: none; }
  .daikan .daikan-lead {
    font-size: 1.125rem;
    font-weight: 400; }
    .daikan .daikan-lead p {
      margin-bottom: 0; }
    .daikan .daikan-lead em {
      font-weight: 500; }

  .iroha-section .iroha-text {
    padding-left: 90px;
    padding-right: 90px; }
    .iroha-section .iroha-text .iroha-en {
      font-size: 1.5rem; }

  .guide .guide-list {
    width: 340px;
    margin: 0 20px 0 0; }
    .guide .guide-list img {
      width: auto; }
    .guide .guide-list .guide02 {
      width: 180px; }
    .guide .guide-list .guide-title {
      font-weight: 400; }
    .guide .guide-list .guide-lead {
      text-align: left; }

  .faq .faq-title {
    font-weight: 400; }
  .faq .faq-list {
    margin: 0 0 30px;
    padding: 0 160px; }
    .faq .faq-list dt,
    .faq .faq-list dd {
      margin: 0 0 1em; }
    .faq .faq-list dt {
      font-weight: 400; }

  .shop .shop-wrapper {
    padding: 0 80px; }
  .shop .shop-lead {
    width: 100%;
    line-height: 2; }
  .shop .shop-map-wrapper .shop-map {
    width: auto; }
  .shop .shop-map-wrapper .shop-list {
    margin-top: 30px; }
    .shop .shop-map-wrapper .shop-list li a {
      padding: 30px;
      background-position: 40px center; }
  .shop .shop-label {
    padding-left: 20px;
    padding-right: 20px;
    font-size: 1.125rem;
    font-weight: 400; }

  .sns .sns-wrapper .sns-fb {
    margin: 0;
    padding: 0 40px; }
  .sns .sns-wrapper .sns-insta {
    width: 540px;
    margin: 0; }
  .sns .sns-insta-list li {
    width: 250px;
    margin: 0 20px 20px 0; }
  .sns .sns-insta-link img {
    width: 140px;
    vertical-align: middle; }
  .sns .sns-insta-link a {
    font-size: 1.125rem;
    color: #8f6a4e;
    font-weight: 600; }

  .tkg .t-shirt {
    width: auto;
    margin: 0; }
  .tkg .tkg-text {
    width: 430px;
    padding: 0 89px;
    font-size: 1.125rem;
    font-weight: 400; }

  /* ==========================================================================
  sub page
  ========================================================================== */
  .sub-lead-list {
    padding-left: 2em; }

  .sub-tkg .sub-tkg-wrapper .sub-tkg-text-wrapper {
    width: 460px;
    margin-right: 0; }
  .sub-tkg .sub-tkg-wrapper .sub-tkg-img {
    width: 676px;
    margin-top: -200px;
    margin-right: -100px; }

  .sub-shop .sub-shop-detail th,
  .sub-shop .sub-shop-detail td {
    padding: 5px 8px; } }
/*********************
RETINA (2x RESOLUTION DEVICES)
This applies to the retina iPhone (4s) and iPad (2,3) along with
other displays with a 2x resolution. You can also create a media
query for retina AND a certain size if you want. Go Nuts.
*********************/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5), only screen and (min-resolution: 2dppx) {
  /******************************************************************
  Site Name: 
  Author: 
  
  Stylesheet: Retina Screens & Devices Stylesheet
  
  When handling retina screens you need to make adjustments, especially
  if you're not using font icons. Here you can add them in one neat
  place.
  
  ******************************************************************/
  /* 
  
  EXAMPLE 
  Let's say you have an image and you need to make sure it looks ok
  on retina screens. Let's say we have an icon which dimension are
  24px x 24px. In your regular stylesheets, it would look something
  like this:
  
  .icon {
  	width: 24px;
  	height: 24px;
  	background: url(img/test.png) no-repeat;
  }
  
  For retina screens, we have to make some adjustments, so that image
  doesn't look blurry. So, taking into account the image above and the
  dimensions, this is what we would put in our retina stylesheet:
  
  .icon {
  	background: url(img/test@2x.png) no-repeat;
  	background-size: 24px 24px;
  }
  
  So, you would create the same icon, but at double the resolution, meaning 
  it would be 48px x 48px. You'd name it the same, but with a @2x at the end
  (this is pretty standard practice). Set the background image so it matches
  the original dimensions and you are good to go. 
  
  */ }
/*********************
PRINT STYLESHEET
Feel free to customize this. Remember to add things that won't make
sense to print at the bottom. Things like nav, ads, and forms should
be set to display none.
*********************/
@media print {
  /* ==========================================================================
     Print styles.
     Inlined to avoid required HTTP connection: h5bp.com/r
     ========================================================================== */ }
@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster: h5bp.com/s */
    box-shadow: none !important;
    text-shadow: none !important; }

  a,
  a:visited {
    text-decoration: underline; }

  a[href]:after {
    content: " (" attr(href) ")"; }

  abbr[title]:after {
    content: " (" attr(title) ")"; }

  /*
   * Don't show links for images, or javascript/internal links
   */
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }

  thead {
    display: table-header-group;
    /* h5bp.com/t */ }

  tr,
  img {
    page-break-inside: avoid; }

  img {
    max-width: 100% !important; }

  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }

  h2,
  h3 {
    page-break-after: avoid; } }
@media print {
  /* ==========================================================================
     EXAMPLE Media Queries for Responsive Design.
     These examples override the primary ('mobile first') styles.
     Modify as content requires.
     ========================================================================== */ }
@media print, print and (-o-min-device-pixel-ratio: 5 / 4), print and (-webkit-min-device-pixel-ratio: 1.25), print and (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */ }


/* google maps */
.google-maps {
position: relative;
padding-bottom: 35%;
height: 0;
overflow: hidden;
}
.google-maps iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}