/*! sanitize.css v5.0.0 | CC0 License | github.com/jonathantneal/sanitize.css */
/* Document (https://html.spec.whatwg.org/multipage/semantics.html#semantics)
   ========================================================================== */
/**
 * 1. Remove repeating backgrounds in all browsers (opinionated).
 * 2. Add box sizing inheritence in all browsers (opinionated).
 */
*,
::before,
::after {
  background-repeat: no-repeat;
  /* 1 */
  box-sizing: inherit;
  /* 2 */
}

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritence in all browsers (opinionated).
 */
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit;
  /* 2 */
}

/**
 * 1. Add border box sizing in all browsers (opinionated).
 * 2. Add the default cursor in all browsers (opinionated).
 * 3. Prevent font size adjustments after orientation changes in IE and iOS.
 */
html {
  box-sizing: border-box;
  /* 1 */
  cursor: default;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
}

/* Sections (https://html.spec.whatwg.org/multipage/semantics.html#sections)
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Remove the margin in all browsers (opinionated).
 */
html, body {
  position: relative;
  margin: 0;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
}

/* Grouping content (https://html.spec.whatwg.org/multipage/semantics.html#grouping-content)
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block;
}

figure {
  margin: 0;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
ol,
ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

dl, dt, dd {
  margin: 0;
  padding: 0;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics (https://html.spec.whatwg.org/multipage/semantics.html#text-level-semantics)
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ffff00;
  color: #000000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

/*
 * Remove the text shadow on text selections (opinionated).
 * 1. Restore the coloring undone by defining the text shadow (opinionated).
 */
::-moz-selection {
  background-color: #b3d4fc;
  /* 1 */
  color: #000000;
  /* 1 */
  text-shadow: none;
}

::selection {
  background-color: #b3d4fc;
  /* 1 */
  color: #000000;
  /* 1 */
  text-shadow: none;
}

/* Embedded content (https://html.spec.whatwg.org/multipage/embedded-content.html#embedded-content)
   ========================================================================== */
/*
 * Change the alignment on media elements in all browers (opinionated).
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
svg {
  fill: currentColor;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Tabular data (https://html.spec.whatwg.org/multipage/tables.html#tables)
   ========================================================================== */
/**
 * Collapse border spacing
 */
table {
  border-collapse: collapse;
}

/* Forms (https://html.spec.whatwg.org/multipage/forms.html#forms)
   ========================================================================== */
/**
 * Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  margin: 0;
}

/**
 * Inherit styling in all browsers (opinionated).
 */
button,
input,
select,
textarea {
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * 1. Remove the default vertical scrollbar in IE.
 * 2. Change the resize direction on textareas in all browsers (opinionated).
 */
textarea {
  overflow: auto;
  /* 1 */
  resize: vertical;
  /* 2 */
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

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

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive elements (https://html.spec.whatwg.org/multipage/forms.html#interactive-elements)
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Scripting (https://html.spec.whatwg.org/multipage/scripting.html#scripting-3)
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* User interaction (https://html.spec.whatwg.org/multipage/interaction.html#editing)
   ========================================================================== */
/*
 * Remove the tapping delay on clickable elements (opinionated).
 * 1. Remove the tapping delay in IE 10.
 */
a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
  /* 1 */
  touch-action: manipulation;
}

/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

/* ARIA (https://w3c.github.io/html-aria/)
   ========================================================================== */
/**
 * Change the cursor on busy elements (opinionated).
 */
[aria-busy="true"] {
  cursor: progress;
}

/*
 * Change the cursor on control elements (opinionated).
 */
[aria-controls] {
  cursor: pointer;
}

/*
 * Change the display on visually hidden accessible elements (opinionated).
 */
[aria-hidden="false"][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  display: inherit;
  position: absolute;
}

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements (opinionated).
 */
[aria-disabled] {
  cursor: default;
}

span.phrase {
  display: inline-block;
}

@media only screen and (min-width: 768px) {
  .small-visible {
    display: none !important;
  }
}

@media only screen and (max-width: 767px) {
  .large-visible {
    display: none !important;
  }
}

img.img-responsive {
  width: 100%;
  max-width: 100%;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 12pt 12pt;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}

.hamburger:hover {
  opacity: 0.7;
}

.hamburger-box {
  width: 22pt;
  height: 22px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -1px;
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 22pt;
  height: 2px;
  background-color: #FFF;
  border-radius: 4px;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}

.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}

.hamburger-inner::before {
  top: -10px;
}

.hamburger-inner::after {
  bottom: -10px;
}

/*
   * 3DX
   */
.hamburger--3dx .hamburger-box {
  perspective: 44pt;
}

.hamburger--3dx .hamburger-inner {
  transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateY(180deg);
}

.hamburger--3dx.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dx.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DX Reverse
   */
.hamburger--3dx-r .hamburger-box {
  perspective: 44pt;
}

.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateY(-180deg);
}

.hamburger--3dx-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dx-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DY
   */
.hamburger--3dy .hamburger-box {
  perspective: 44pt;
}

.hamburger--3dy .hamburger-inner {
  transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(-180deg);
}

.hamburger--3dy.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dy.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DY Reverse
   */
.hamburger--3dy-r .hamburger-box {
  perspective: 44pt;
}

.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(180deg);
}

.hamburger--3dy-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dy-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * Arrow
   */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-4.4pt, 0, 0) rotate(-45deg) scale(0.7, 1);
}

.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-4.4pt, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
   * Arrow Right
   */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(4.4pt, 0, 0) rotate(45deg) scale(0.7, 1);
}

.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(4.4pt, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
   * Arrow Alt
   */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.15s ease, transform 0.15s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.15s ease, transform 0.15s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-4.4pt, -5.5pt, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.15s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-4.4pt, 5.5pt, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.15s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
   * Arrow Alt Right
   */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.15s ease, transform 0.15s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.15s ease, transform 0.15s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(4.4pt, -5.5pt, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.15s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(4.4pt, 5.5pt, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.15s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
   * Boring
   */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none;
}

.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg);
}

.hamburger--boring.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}

.hamburger--boring.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

/*
   * Collapse
   */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.15s;
  transition-delay: 0.15s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse .hamburger-inner::after {
  top: -20px;
  transition: top 0.3s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}

.hamburger--collapse .hamburger-inner::before {
  transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.32s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--collapse.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.3s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.27s linear;
}

.hamburger--collapse.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-90deg);
  transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Collapse Reverse
   */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.15s;
  transition-delay: 0.15s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse-r .hamburger-inner::after {
  top: -20px;
  transition: top 0.3s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}

.hamburger--collapse-r .hamburger-inner::before {
  transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(45deg);
  transition-delay: 0.32s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--collapse-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.3s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.27s linear;
}

.hamburger--collapse-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Elastic
   */
.hamburger--elastic .hamburger-inner {
  top: 1px;
  transition-duration: 0.4s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic .hamburger-inner::before {
  top: 10px;
  transition: opacity 0.15s 0.4s ease;
}

.hamburger--elastic .hamburger-inner::after {
  top: 20px;
  transition: transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(135deg);
  transition-delay: 0.1s;
}

.hamburger--elastic.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}

.hamburger--elastic.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(-270deg);
  transition-delay: 0.1s;
}

/*
   * Elastic Reverse
   */
.hamburger--elastic-r .hamburger-inner {
  top: 1px;
  transition-duration: 0.4s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic-r .hamburger-inner::before {
  top: 10px;
  transition: opacity 0.15s 0.4s ease;
}

.hamburger--elastic-r .hamburger-inner::after {
  top: 20px;
  transition: transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-135deg);
  transition-delay: 0.1s;
}

.hamburger--elastic-r.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}

.hamburger--elastic-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(270deg);
  transition-delay: 0.1s;
}

/*
   * Emphatic
   */
.hamburger--emphatic {
  overflow: hidden;
}

.hamburger--emphatic .hamburger-inner {
  transition: background-color 0.2s 0.25s ease-in;
}

.hamburger--emphatic .hamburger-inner::before {
  left: 0;
  transition: transform 0.2s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.2s linear, left 0.2s 0.25s ease-in;
}

.hamburger--emphatic .hamburger-inner::after {
  top: 10px;
  right: 0;
  transition: transform 0.2s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.2s linear, right 0.2s 0.25s ease-in;
}

.hamburger--emphatic.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent;
}

.hamburger--emphatic.is-active .hamburger-inner::before {
  left: -44pt;
  top: -44pt;
  transform: translate3d(44pt, 44pt, 0) rotate(45deg);
  transition: left 0.2s ease-out, top 0.05s 0.2s linear, transform 0.2s 0.25s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.hamburger--emphatic.is-active .hamburger-inner::after {
  right: -44pt;
  top: -44pt;
  transform: translate3d(-44pt, 44pt, 0) rotate(-45deg);
  transition: right 0.2s ease-out, top 0.05s 0.2s linear, transform 0.2s 0.25s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
   * Emphatic Reverse
   */
.hamburger--emphatic-r {
  overflow: hidden;
}

.hamburger--emphatic-r .hamburger-inner {
  transition: background-color 0.2s 0.25s ease-in;
}

.hamburger--emphatic-r .hamburger-inner::before {
  left: 0;
  transition: transform 0.2s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.2s linear, left 0.2s 0.25s ease-in;
}

.hamburger--emphatic-r .hamburger-inner::after {
  top: 10px;
  right: 0;
  transition: transform 0.2s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.2s linear, right 0.2s 0.25s ease-in;
}

.hamburger--emphatic-r.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent;
}

.hamburger--emphatic-r.is-active .hamburger-inner::before {
  left: -44pt;
  top: 44pt;
  transform: translate3d(44pt, -44pt, 0) rotate(-45deg);
  transition: left 0.2s ease-out, top 0.05s 0.2s linear, transform 0.2s 0.25s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.hamburger--emphatic-r.is-active .hamburger-inner::after {
  right: -44pt;
  top: 44pt;
  transform: translate3d(-44pt, -44pt, 0) rotate(45deg);
  transition: right 0.2s ease-out, top 0.05s 0.2s linear, transform 0.2s 0.25s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
  top: 1px;
}

.hamburger--slider .hamburger-inner::before {
  top: 10px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.2s;
}

.hamburger--slider .hamburger-inner::after {
  top: 20px;
}

.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--slider.is-active .hamburger-inner::before {
  transform: rotate(-45deg) translate3d(-3.14286pt, -8px, 0);
  opacity: 0;
}

.hamburger--slider.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(-90deg);
}

/*
   * Slider Reverse
   */
.hamburger--slider-r .hamburger-inner {
  top: 1px;
}

.hamburger--slider-r .hamburger-inner::before {
  top: 10px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.2s;
}

.hamburger--slider-r .hamburger-inner::after {
  top: 20px;
}

.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-45deg);
}

.hamburger--slider-r.is-active .hamburger-inner::before {
  transform: rotate(45deg) translate3d(3.14286pt, -8px, 0);
  opacity: 0;
}

.hamburger--slider-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(90deg);
}

/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
  top: 1px;
  transition: background-color 0s 0.15s linear;
}

.hamburger--spring .hamburger-inner::before {
  top: 10px;
  transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring .hamburger-inner::after {
  top: 20px;
  transition: top 0.3s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.32s;
  background-color: transparent;
}

.hamburger--spring.is-active .hamburger-inner::before {
  top: 0;
  transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.15s 0.32s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--spring.is-active .hamburger-inner::after {
  top: 0;
  transition: top 0.3s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.15s 0.32s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(-45deg);
}

/*
   * Spring Reverse
   */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.15s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring-r .hamburger-inner::after {
  top: -20px;
  transition: top 0.3s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
}

.hamburger--spring-r .hamburger-inner::before {
  transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.32s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spring-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.3s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.32s linear;
}

.hamburger--spring-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.15s 0.32s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Stand
   */
.hamburger--stand .hamburger-inner {
  transition: transform 0.1s 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.1s linear;
}

.hamburger--stand .hamburger-inner::before {
  transition: top 0.1s 0.1s ease-in, transform 0.1s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease-in, transform 0.1s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand.is-active .hamburger-inner {
  transform: rotate(90deg);
  background-color: transparent;
  transition: transform 0.1s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.22s linear;
}

.hamburger--stand.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.1s 0.12s ease-out, transform 0.1s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--stand.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.1s 0.12s ease-out, transform 0.1s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Stand Reverse
   */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.1s 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.1s linear;
}

.hamburger--stand-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease-in, transform 0.1s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease-in, transform 0.1s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand-r.is-active .hamburger-inner {
  transform: rotate(-90deg);
  background-color: transparent;
  transition: transform 0.1s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.22s linear;
}

.hamburger--stand-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.1s 0.12s ease-out, transform 0.1s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--stand-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.1s 0.12s ease-out, transform 0.1s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.3s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin .hamburger-inner::before {
  transition: top 0.1s 0.34s ease-in, opacity 0.1s ease-in;
}

.hamburger--spin .hamburger-inner::after {
  transition: bottom 0.1s 0.34s ease-in, transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.14s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spin.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.14s ease-out;
}

.hamburger--spin.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease-out, transform 0.3s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Spin Reverse
   */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.3s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin-r .hamburger-inner::before {
  transition: top 0.1s 0.34s ease-in, opacity 0.1s ease-in;
}

.hamburger--spin-r .hamburger-inner::after {
  transition: bottom 0.1s 0.34s ease-in, transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin-r.is-active .hamburger-inner {
  transform: rotate(-225deg);
  transition-delay: 0.14s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spin-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.14s ease-out;
}

.hamburger--spin-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease-out, transform 0.3s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.1s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze .hamburger-inner::before {
  transition: top 0.1s 0.14s ease, opacity 0.1s ease;
}

.hamburger--squeeze .hamburger-inner::after {
  transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.14s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--squeeze.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease, opacity 0.1s 0.14s ease;
}

.hamburger--squeeze.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Vortex
   */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.3s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}

.hamburger--vortex .hamburger-inner::before {
  transition-property: top, opacity;
}

.hamburger--vortex .hamburger-inner::after {
  transition-property: bottom, transform;
}

.hamburger--vortex.is-active .hamburger-inner {
  transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
  transition-delay: 0s;
}

.hamburger--vortex.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}

.hamburger--vortex.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
}

/*
   * Vortex Reverse
   */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.3s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}

.hamburger--vortex-r .hamburger-inner::before {
  transition-property: top, opacity;
}

.hamburger--vortex-r .hamburger-inner::after {
  transition-property: bottom, transform;
}

.hamburger--vortex-r.is-active .hamburger-inner {
  transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
  transition-delay: 0s;
}

.hamburger--vortex-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}

.hamburger--vortex-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

a {
  text-decoration: underline;
}

p {
  line-height: 2em;
}

.sans-serif {
  font-family: 'source-han-sans-japanese', 'Helvetica Neue', 'Helvetica', 'Hiragino Kaku Gothic ProN', YuGothic, 'Yu Gothic Medium', Meiryo, sans-serif;
}

.europa {
  font-family: europa, sans-serif;
  font-weight: 400;
  font-style: normal;
}

.vinyl {
  font-family: vinyl, sans-serif;
  font-weight: 400;
  font-style: normal;
}

@media only screen and (min-width: 768px) {
  a {
    transition: all .3s;
  }
  a:hover {
    opacity: .7;
  }
}

@media only screen and (max-width: 767px) {
  img {
    max-width: 100%;
  }
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

.section-heading {
  font-size: 2rem;
  font-weight: bold;
}

@media only screen and (min-width: 768px) {
  .section-heading {
    font-size: 2.5rem;
  }
}

.section-heading2 {
  font-size: 2rem;
  font-weight: bold;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .section-heading2 {
    font-size: 2.5rem;
  }
}

.section-heading2 span {
  display: inline-block;
  margin-left: 3em;
  font-size: .8rem;
  font-weight: normal;
  letter-spacing: .2em;
  position: relative;
  top: -.4em;
}

.section-heading2 span:after {
  content: '';
  display: block;
  height: 1px;
  width: 2em;
  background-color: #000;
  position: absolute;
  top: .5em;
  left: -2.4em;
}

img.section-border-image {
  height: 60vw;
  object-fit: cover;
  width: 100%;
}

@media only screen and (min-width: 768px) {
  img.section-border-image {
    height: 20vw;
  }
}

html {
  text-align: center;
  font-size: 10pt;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "palt";
}

@media only screen and (max-width: 767px) {
  html {
    width: 100%;
    overflow-x: hidden;
    position: relative;
  }
}

body {
  font-family: 'source-han-sans-japanese', 'Helvetica Neue', 'Helvetica', 'Hiragino Kaku Gothic ProN', YuGothic, 'Yu Gothic Medium', Meiryo, sans-serif;
  font-weight: 400;
  font-style: normal;
  overflow-x: hidden;
  position: relative;
}

@media only screen and (max-width: 767px) {
  body {
    width: 100%;
    overflow-y: hidden;
  }
}

@media only screen and (min-width: 768px) {
  body {
    font-size: 12pt;
  }
}

header {
  position: fixed;
  z-index: 9000;
  text-align: left;
  top: 0;
  width: 100%;
}

header h1 {
  letter-spacing: .5em;
  font-size: 1.3rem;
  font-weight: bold;
  color: #333;
}

header h1 img {
  width: 80px;
}

@media only screen and (max-width: 767px) {
  header h1 img {
    width: 60px;
  }
}

@media only screen and (max-width: 767px) {
  header h1 {
    letter-spacing: .2em;
  }
}

@media only screen and (max-width: 767px) {
  header h1 {
    font-size: 1rem;
  }
}

header button.hamburger {
  outline: none;
  position: absolute;
  right: 10pt;
  top: 8pt;
  z-index: 9000;
}

@media only screen and (max-width: 767px) {
  header button.hamburger {
    top: 0;
    right: 0;
  }
}

header button.hamburger span.hamburger-title {
  font-size: .7rem;
  letter-spacing: 1px;
}

nav#gnavi {
  position: fixed;
  z-index: 8000;
  top: 0;
  right: -300px;
  height: 100%;
  color: #FFF;
  background-color: #3a6308;
  width: 300px;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2) inset;
  transition: all 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}

nav#gnavi.open {
  right: 0;
}

nav#gnavi ul {
  padding-top: 90px;
}

@media only screen and (max-width: 767px) {
  nav#gnavi ul {
    padding-top: 60px;
  }
}

nav#gnavi ul li a {
  display: block;
  padding: 1em;
  color: #FFF;
  text-align: left;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  transition: all .5s linear;
  text-decoration: none;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1em;
}

nav#gnavi ul li a span {
  display: inline-block;
  font-size: .8rem;
  position: relative;
  top: -.15em;
  margin-left: .5em;
  font-weight: normal;
}

nav#gnavi ul li a:hover {
  background-color: #FFF;
  color: #6f0a8a;
}

section#shopdata {
  background-color: #60503c;
  color: #FFF;
}

@media only screen and (min-width: 768px) {
  section#shopdata div.flex-wrapper {
    display: flex;
    align-items: stretch;
  }
}

section#shopdata div.padding-wrapper {
  padding: 15pt;
}

@media only screen and (min-width: 768px) {
  section#shopdata div.padding-wrapper {
    padding: 40pt;
    width: 400px;
  }
}

section#shopdata div.padding-wrapper h3 img {
  width: 20pt;
}

section#shopdata div.padding-wrapper hr {
  width: 100pt;
  border: none;
  border-top: 1px solid #FFF;
  margin: 1rem auto;
}

section#shopdata div.padding-wrapper a.shopdata-tel-button {
  border: 1px solid #FFF;
  color: #FFF;
  display: inline-block;
  text-decoration: none;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 1em 2em;
  line-height: 1em;
}

section#shopdata div.padding-wrapper a.shopdata-tel-button span {
  font-size: 1.4rem;
  position: relative;
  margin-right: 5pt;
  top: .2rem;
}

section#shopdata div.padding-wrapper p.parking span {
  display: inline-block;
  margin-right: 5pt;
}

section#shopdata iframe {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  section#shopdata iframe {
    height: 100vw;
  }
}

@media only screen and (min-width: 768px) {
  section#shopdata iframe {
    height: 760px;
    width: calc(100% - 400px);
  }
}

footer {
  padding: 2rem;
  background-color: #4b3327;
  color: #FFF;
}

@media only screen and (min-width: 768px) {
  footer {
    padding: 4rem 2rem;
  }
}

footer ul#footer-sns {
  display: flex;
  justify-content: center;
}

footer ul#footer-sns li {
  width: 25pt;
  margin: 0 10pt;
}

footer ul#footer-sns li img {
  width: 100%;
}

footer small {
  display: block;
  padding-top: 2em;
  text-align: center;
}

section#index-title div#mainvisual {
  height: 100vw;
  position: relative;
}

@media only screen and (min-width: 768px) {
  section#index-title div#mainvisual {
    height: 40vw;
  }
}

section#index-title div#mainvisual > img {
  object-fit: cover;
  height: 100%;
  width: 100%;
  filter: brightness(0.8);
}

section#index-title div#mainvisual h2 img {
  position: absolute;
  top: calc(50% - 13%);
  left: 15%;
  width: 70%;
}

@media only screen and (min-width: 768px) {
  section#index-title div#mainvisual h2 img {
    width: 500px;
    top: 50%;
    left: calc(50% - 250px);
    transform: translate(0, -50%);
  }
}

section#index-title > div#index-title-content {
  padding: 15pt;
  background-color: #71a247;
  color: #FFF;
}

section#index-title > div#index-title-content > img:first-child {
  width: 30pt;
  margin-top: -40pt;
  position: relative;
  z-index: 100;
}

@media only screen and (min-width: 768px) {
  section#index-title > div#index-title-content {
    padding: 40pt 0;
  }
  section#index-title > div#index-title-content > img:first-child {
    width: 40pt;
    margin-top: -80pt;
  }
}

section#index-title > div#index-title-content .button1 {
  background: #FFF;
  border-bottom: 3px solid #3f8009;
  color: #3f8009;
  padding: 1em 2em;
  font-size: 1.1rem;
  display: inline-block;
  text-decoration: none;
  line-height: 1em;
  font-weight: 400;
  margin: 1em 0;
}

section#index-title > div#index-title-content .button1:hover {
  background-color: #3f8009;
  color: #FFF;
  border-bottom: 3px solid #FFF;
}

section#index-news, section#news-index {
  background-color: #5ca76b;
  color: #FFF;
}

@media only screen and (min-width: 768px) {
  section#index-news, section#news-index {
    display: flex;
    flex-direction: row-reverse;
  }
  section#index-news > div:first-child, section#news-index > div:first-child {
    width: 50%;
  }
  section#index-news > div:first-child img, section#news-index > div:first-child img {
    object-fit: cover;
    height: 100%;
  }
}

section#index-news > div:last-child, section#news-index > div:last-child {
  padding: 15pt;
}

@media only screen and (min-width: 768px) {
  section#index-news > div:last-child, section#news-index > div:last-child {
    width: 50%;
  }
}

section#index-news > div:last-child h3, section#news-index > div:last-child h3 {
  font-size: 1.6rem;
}

section#index-news > div:last-child ul, section#news-index > div:last-child ul {
  margin-top: 15pt;
}

section#index-news > div:last-child ul li, section#news-index > div:last-child ul li {
  display: flex;
  justify-content: space-between;
  padding: 1em 0;
  border-top: 1px solid #FFF;
}

section#index-news > div:last-child ul li time, section#news-index > div:last-child ul li time {
  padding: 2pt 0 0;
  width: 7rem;
  display: block;
  font-weight: 600;
  text-align: left;
}

section#index-news > div:last-child ul li p, section#news-index > div:last-child ul li p {
  width: calc(100% - 7rem);
  font-size: .9rem;
  margin: 0;
  text-align: left;
}

@media only screen and (min-width: 768px) {
  section#index-news > div:last-child ul li p, section#news-index > div:last-child ul li p {
    font-size: 1.1rem;
  }
}

section#index-news > div:last-child ul li p a, section#news-index > div:last-child ul li p a {
  color: #FFF;
}

section#index-menu, section#menu-title {
  background-color: #aea63c;
  color: #FFF;
}

@media only screen and (min-width: 768px) {
  section#index-menu, section#menu-title {
    display: flex;
  }
  section#index-menu > div:first-child, section#menu-title > div:first-child {
    width: 50%;
  }
  section#index-menu > div:first-child img, section#menu-title > div:first-child img {
    object-fit: cover;
    height: 100%;
  }
}

section#index-menu > div:last-child, section#menu-title > div:last-child {
  padding: 15pt;
}

@media only screen and (min-width: 768px) {
  section#index-menu > div:last-child, section#menu-title > div:last-child {
    padding: 40pt 15pt;
    width: 50%;
  }
}

section#index-menu > div:last-child h3 img, section#menu-title > div:last-child h3 img {
  width: 25pt;
}

section#index-menu > div:last-child .button1, section#menu-title > div:last-child .button1 {
  background: #FFF;
  border-bottom: 3px solid #736706;
  color: #736706;
  padding: 1em 2em;
  font-size: 1.1rem;
  display: inline-block;
  text-decoration: none;
  line-height: 1em;
  font-weight: 400;
  margin: 1em 0;
}

section#index-menu > div:last-child .button1:hover, section#menu-title > div:last-child .button1:hover {
  background-color: #736706;
  color: #FFF;
  border-bottom: 3px solid #FFF;
}

section#index-instagram {
  background-color: #b14d29;
  color: #FFF;
}

section#index-instagram > div {
  padding: 15pt;
}

@media only screen and (min-width: 768px) {
  section#index-instagram > div {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40pt 40pt;
  }
}

section#index-instagram > div h3 img {
  width: 20pt;
}

section#index-instagram > div > p {
  text-align: left;
  margin: 1.5em 0 .5em;
}

section#index-instagram > div > p a {
  color: #000;
}

section#index-instagram > div > p img {
  width: 1.2em;
  margin-right: .3em;
}

section#index-instagram > div div#insta-window {
  width: 100% !important;
  border: none !important;
  background: none !important;
  padding: 0 !important;
}

@media only screen and (min-width: 768px) {
  section#index-instagram > div .iswd-images-item {
    width: 25% !important;
  }
  section#index-instagram > div .iswd-images > div:last-child {
    display: none !important;
  }
}

section#index-instagram > div .button1 {
  background: #FFF;
  border-bottom: 3px solid #762609;
  color: #762609;
  padding: 1em 2em;
  font-size: 1.1rem;
  display: inline-block;
  text-decoration: none;
  line-height: 1em;
  font-weight: 400;
  margin: 1em 0;
}

section#index-instagram > div .button1:hover {
  background-color: #762609;
  color: #FFF;
  border-bottom: 3px solid #FFF;
}

section#moributter-title div#mainvisual {
  height: 40vw;
  position: relative;
}

@media only screen and (min-width: 768px) {
  section#moributter-title div#mainvisual {
    height: 20vw;
  }
}

section#moributter-title div#mainvisual > img {
  object-fit: cover;
  height: 100%;
  width: 100%;
  filter: brightness(0.8);
}

section#moributter-title div#mainvisual h2 img {
  position: absolute;
  top: calc(50% - 13%);
  left: 15%;
  width: 70%;
}

@media only screen and (min-width: 768px) {
  section#moributter-title div#mainvisual h2 img {
    width: 500px;
    top: calc(50% - 13%);
    left: calc(50% - 250px);
  }
}

section#moributter-title > div#moributter-title-content {
  padding: 15pt;
  background-color: #71a247;
  color: #FFF;
}

section#moributter-title > div#moributter-title-content > img:first-child {
  width: 30pt;
  margin-top: -40pt;
  position: relative;
  z-index: 100;
}

@media only screen and (min-width: 768px) {
  section#moributter-title > div#moributter-title-content {
    padding: 40pt 0;
  }
  section#moributter-title > div#moributter-title-content > img:first-child {
    width: 40pt;
    margin-top: -80pt;
  }
}

section#moributter-title > div#moributter-title-content .button1 {
  background: #FFF;
  border-bottom: 3px solid #3f8009;
  color: #3f8009;
  padding: 1em 2em;
  font-size: 1.1rem;
  display: inline-block;
  text-decoration: none;
  line-height: 1em;
  font-weight: 400;
  margin: 1em 0;
}

section#moributter-title > div#moributter-title-content .button1:hover {
  background-color: #3f8009;
  color: #FFF;
  border-bottom: 3px solid #FFF;
}

section.moributter-section1 {
  background-color: #edf0d9;
}

@media only screen and (min-width: 768px) {
  section.moributter-section1 {
    display: flex;
  }
}

section.moributter-section1 > div:first-child {
  padding: 15pt;
}

@media only screen and (min-width: 768px) {
  section.moributter-section1 > div:first-child {
    padding: 40pt 15pt;
    width: 50%;
  }
}

section.moributter-section1 > div:first-child h3 img {
  width: 25pt;
}

section.moributter-section1 > div:first-child .button2 {
  background: #71a247;
  border-bottom: 3px solid #3b720d;
  color: #FFF;
  padding: 1em 2em;
  font-size: 1.1rem;
  display: inline-block;
  text-decoration: none;
  line-height: 1em;
  font-weight: 400;
  margin: 1em 0;
}

section.moributter-section1 > div:first-child .button2:hover {
  background-color: #FFF;
  color: #71a247;
  border-bottom: 3px solid #FFF;
}

@media only screen and (min-width: 768px) {
  section.moributter-section1 > div:last-child {
    width: 50%;
  }
  section.moributter-section1 > div:last-child img {
    object-fit: cover;
    height: 100%;
  }
}

@media only screen and (min-width: 768px) {
  section#moributter-chef {
    flex-direction: row-reverse;
  }
}

section#news-index {
  padding-top: 60px;
  padding-bottom: 60px;
  display: block;
}

section#news-index > div {
  max-width: 1000px;
  margin: 0px auto;
}

section#avocado-description {
  padding-bottom: 10vw;
}

section#avocado-description > div:first-child img {
  width: 100%;
}

section#avocado-description p#avocado-description-more {
  font-size: 1.1rem;
  line-height: 2.5em;
}

section#menu-title {
  display: block;
}

section#menu-title > div {
  width: 100% !important;
}

section#menu-title .section-border-image {
  height: 40vw !important;
}

@media only screen and (min-width: 768px) {
  section#menu-title .section-border-image {
    height: 20vw !important;
  }
}

section.menu-content {
  padding: 20pt;
  max-width: 1000px;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  section.menu-content {
    display: flex;
    justify-content: space-between;
  }
  section.menu-content > ul {
    width: 48%;
  }
}

section.menu-content ul li {
  margin: 5pt 0;
}

section.menu-content ul li.text {
  position: relative;
  display: flex;
  justify-content: space-between;
}

section.menu-content ul li.text span:first-child {
  font-size: 1rem;
  display: block;
  background-color: #FFF;
  padding: .4rem;
}

section.menu-content ul li.text span:last-child {
  display: block;
  background-color: #FFF;
  color: #df253f;
  padding: .3rem;
  font-weight: bold;
  font-size: 1.3rem;
}

section.menu-content ul li.photo {
  margin: 20pt 0;
}

section.menu-content ul li.photo span:last-child {
  display: inline-block;
  background-color: #FFF;
  color: #df253f;
  padding: .3rem;
  font-weight: bold;
  font-size: 1.3rem;
}

section.menu-content ul li.photo > img {
  width: 100%;
}

section.menu-content ul li.text:after {
  content: '';
  height: 1px;
  border-bottom: 1px solid #000;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  z-index: -1;
}

section#form {
  padding: 60pt 0;
  max-width: 800px;
  margin: 0 auto;
}

section#form h2 {
  margin-bottom: 1em;
  font-size: 2.6rem;
  line-height: 1.3em;
}

section#form h2 span {
  position: relative;
}

section#form h2 span:before {
  content: '';
  background-color: #000;
  height: 3px;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
}

section#form h2 span:after {
  content: '';
  background-color: #000;
  height: 3px;
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  width: 100%;
}

section#form > p {
  margin-bottom: 3em;
}

section#form dl {
  text-align: left;
}

@media only screen and (min-width: 768px) {
  section#form dl {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
}

@media only screen and (max-width: 767px) {
  section#form dl {
    padding: 20pt;
  }
}

section#form dl dt {
  font-size: 1.1rem;
  margin-bottom: 10pt;
}

@media only screen and (min-width: 768px) {
  section#form dl dt {
    margin-bottom: 20pt;
    width: 10em;
  }
}

section#form dl dd {
  margin-bottom: 30pt;
}

@media only screen and (min-width: 768px) {
  section#form dl dd {
    margin-bottom: 20pt;
    width: calc(100% - 10em);
  }
}

@media only screen and (min-width: 768px) {
  section#form dl dd.reserve-sheet-layout {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

section#form dl dd.reserve-sheet-layout label {
  background-color: #e3e3e3;
  padding: 1em;
  display: block;
  margin-bottom: 10pt;
}

@media only screen and (min-width: 768px) {
  section#form dl dd.reserve-sheet-layout label {
    width: 48%;
  }
}

section#form dl dd.reserve-sheet-layout label input {
  margin-right: .5em;
}

section#form dl dd.reserve-sheet-layout label.active {
  background-color: #71a247;
  color: #FFF;
}

section#form dl input[type=text], section#form dl input[type=tel] {
  width: 100%;
  padding: .6em;
}

section#form dl textarea {
  width: 100%;
  padding: .6em;
  height: 6em;
}

section#form dl .width5em {
  width: 5em !important;
}

section#form .button2 {
  background: #ee3953;
  border-bottom: 3px solid #cb1e37;
  color: #FFF;
  padding: 1em 2em;
  font-size: 1.1rem;
  display: inline-block;
  text-decoration: none;
  line-height: 1em;
  font-weight: 400;
  margin: 1em 0;
  padding: 1em 5em;
}

section#form .button2:hover {
  background-color: #FFF;
  color: #ee3953;
  border-bottom: 3px solid #FFF;
}

section#form p#form-error {
  background-color: #C00;
  color: #FFF;
  padding: 1em;
}

section#form div.error {
  text-align: left;
  color: #C00;
  margin-bottom: .5em;
}

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAic3R5bGUuY3NzIiwKCSJzb3VyY2VzIjogWwoJCSJzdHlsZS5zY3NzIiwKCQkiX3Nhbml0aXplLnNjc3MiLAoJCSJfbGliLnNjc3MiLAoJCSJoYW1idXJnZXJzL2hhbWJ1cmdlcnMuc2NzcyIsCgkJImhhbWJ1cmdlcnMvX2Jhc2Uuc2NzcyIsCgkJImhhbWJ1cmdlcnMvdHlwZXMvXzNkeC5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fM2R4LXIuc2NzcyIsCgkJImhhbWJ1cmdlcnMvdHlwZXMvXzNkeS5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fM2R5LXIuc2NzcyIsCgkJImhhbWJ1cmdlcnMvdHlwZXMvX2Fycm93LnNjc3MiLAoJCSJoYW1idXJnZXJzL3R5cGVzL19hcnJvdy1yLnNjc3MiLAoJCSJoYW1idXJnZXJzL3R5cGVzL19hcnJvd2FsdC5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3dhbHQtci5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fYm9yaW5nLnNjc3MiLAoJCSJoYW1idXJnZXJzL3R5cGVzL19jb2xsYXBzZS5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fY29sbGFwc2Utci5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fZWxhc3RpYy5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fZWxhc3RpYy1yLnNjc3MiLAoJCSJoYW1idXJnZXJzL3R5cGVzL19lbXBoYXRpYy5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fZW1waGF0aWMtci5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fc2xpZGVyLnNjc3MiLAoJCSJoYW1idXJnZXJzL3R5cGVzL19zbGlkZXItci5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fc3ByaW5nLnNjc3MiLAoJCSJoYW1idXJnZXJzL3R5cGVzL19zcHJpbmctci5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fc3RhbmQuc2NzcyIsCgkJImhhbWJ1cmdlcnMvdHlwZXMvX3N0YW5kLXIuc2NzcyIsCgkJImhhbWJ1cmdlcnMvdHlwZXMvX3NwaW4uc2NzcyIsCgkJImhhbWJ1cmdlcnMvdHlwZXMvX3NwaW4tci5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fc3F1ZWV6ZS5zY3NzIiwKCQkiaGFtYnVyZ2Vycy90eXBlcy9fdm9ydGV4LnNjc3MiLAoJCSJoYW1idXJnZXJzL3R5cGVzL192b3J0ZXgtci5zY3NzIiwKCQkiX2xheW91dC5zY3NzIiwKCQkiX3BhZ2Uuc2NzcyIKCV0sCgkibmFtZXMiOiBbXSwKCSJtYXBwaW5ncyI6ICJBQ0VBLGdGQUFnRjtBQUVoRjtnRkFDZ0Y7QUFFaEY7OztHQUdHO0FBRUgsQUFBQSxDQUFDO0FBQ0QsUUFBUTtBQUNSLE9BQU8sQ0FBQztFQUNQLGlCQUFpQixFQUFFLFNBQVM7RUFBRSxPQUFPO0VBQ3JDLFVBQVUsRUFBRSxPQUFPO0VBQUUsT0FBTztDQUM1Qjs7QUFFRDs7O0dBR0c7QUFFSCxBQUFBLFFBQVE7QUFDUixPQUFPLENBQUM7RUFDUCxlQUFlLEVBQUUsT0FBTztFQUFFLE9BQU87RUFDakMsY0FBYyxFQUFFLE9BQU87RUFBRSxPQUFPO0NBQ2hDOztBQUVEOzs7O0dBSUc7QUFFSCxBQUFBLElBQUksQ0FBQztFQUNKLFVBQVUsRUFBRSxVQUFVO0VBQUUsT0FBTztFQUMvQixNQUFNLEVBQUUsT0FBTztFQUFFLE9BQU87RUFDeEIsb0JBQW9CLEVBQUUsSUFBSTtFQUFFLE9BQU87RUFDbkMsd0JBQXdCLEVBQUUsSUFBSTtFQUFFLE9BQU87Q0FDdkM7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOztHQUVHO0FBRUgsQUFBQSxPQUFPO0FBQ1AsS0FBSztBQUNMLE1BQU07QUFDTixNQUFNO0FBQ04sR0FBRztBQUNILE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxLQUFLO0NBQ2Q7O0FBRUQ7O0dBRUc7QUFFSCxBQUFBLElBQUksRUFBRSxJQUFJLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsQ0FBQztDQUNUOztBQUVELEFBQUEs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 */