@charset "UTF-8";

/* Vendors - include bootrap
========================================================================== */


/* Helpers - helpers Variable file along with starting point Mixins and Placeholders.
========================================================================== */


/*
 * Variables
 */

@font-face {
    font-family: "Garamond Premr Pro";
    src: url("../webfonts/garamond.eot");
    /* IE9*/
    src: url("../webfonts/garamond.eot?#iefix") format("embedded-opentype"), url("../webfonts/garamond.woff2") format("woff2"), url("../webfonts/garamond.woff") format("woff"), url("../webfonts/garamond.ttf") format("truetype"), url("../webfonts/garamond.svg#Garamond Premr Pro") format("svg");
    /* iOS 4.1- */
}


/*
 * Function
 */


/*
* mixins
*/


/*
 * Placeholders
 */


/* Base - reset and typography.
========================================================================== */


/*
 * reset
 */

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


/* HTML5 display-role reset for older browsers */

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

body {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

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

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

button {
    background-color: transparent;
    outline: none;
    border: 0;
    cursor: pointer;
}


/*
 * Typography
 */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-weight: 500;
    color: #604624;
    line-height: 1.4;
}

h1 {
    font-size: 1.2rem;
    font-weight: 500;
    color: #604624;
}

h2 {
    font-size: 4rem;
}

h3 {
    font-size: 3.2rem;
}

.block-margins {
    margin: 1em 0;
}

.unordered-list {
    list-style-type: disc;
}

.ordered-list {
    list-style: decimal;
}


/* Components - Re-usable site elements.
========================================================================== */

a {
    color: #604624;
    text-decoration: none;
}

a:visited {
    color: #604624;
    text-decoration: none;
}

a:hover,
a:visited:hover {
    color: #604624;
    text-decoration: none;
}

a:focus {
    outline: none;
    text-decoration: none;
}

.italic {
    font-style: italic;
}

.bold {
    font-weight: 700;
}

.more {
    transition: all 300ms ease-in-out;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
}

.more-btn {
    display: inline-block;
    width: 100%;
    max-width: 53.5rem;
    line-height: 10rem;
    position: relative;
    text-align: center;
    font-size: 2rem;
    color: #fff !important;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    background: #cfae66;
}

.more-btn i {
    position: absolute;
    top: 50%;
    left: 3rem;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.more-btn:hover {
    background: #e8ca88;
}

.more-btn-2 {
    display: inline-block;
    width: 100%;
    max-width: 50rem;
    position: relative;
    padding-left: 6rem;
    padding-top: 2.4rem;
    padding-bottom: 2.4rem;
    font-size: 2rem;
    line-height: 2.6rem;
    color: #fff !important;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    background: #cfae66;
    text-align: left;
}

.more-btn-2 i {
    position: absolute;
    top: 50%;
    left: 3rem;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.more-btn-2:hover {
    background: #e8ca88;
}

.more-btn-3 {
    display: inline-block;
    width: 100%;
    max-width: 60rem;
    position: relative;
    padding: 2.8rem 1.5rem;
    font-size: 2.2rem;
    line-height: 3.2rem;
    color: #fff !important;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    background: #cfae66;
    text-align: center;
}

.more-btn-3 i {
    position: absolute;
    top: 50%;
    right: 2rem;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.more-btn-3:hover {
    background: #e8ca88;
}

@media (max-width: 991px) {
    .more-btn {
        max-width: 30rem;
        line-height: 7rem;
        font-size: 1.6rem;
    }
    .more-btn i {
        left: 2rem;
    }
    .more-btn-2 {
        max-width: 30rem;
        position: relative;
        padding-left: 4rem;
        font-size: 1.6rem;
        line-height: 2.2rem;
    }
    .more-btn-2 i {
        left: 2rem;
    }
    .more-btn-3 {
        max-width: 30rem;
        font-size: 1.6rem;
        line-height: 2.6rem;
        padding: 2rem 0;
    }
}

.nav-bar-menu {
    background: #d9cfc4;
}

.nav-bar-menu ul {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.nav-bar-menu ul li {
    position: relative;
    padding: 4rem 0;
}

.nav-bar-menu ul li a {
    display: block;
    font-size: 1.6rem;
    line-height: 3.7rem;
    font-weight: 500;
    color: #604624;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    padding: 0 5.5rem;
    position: relative;
    transition: all 300ms ease-in-out;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
}

.nav-bar-menu ul li a i {
    position: absolute;
    left: 50%;
    bottom: -1rem;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.nav-bar-menu ul li a:hover {
    color: #604624;
    opacity: 0.6;
}

.nav-bar-menu ul li .dropdown-content {
    position: absolute;
    background-color: #675240;
    min-width: 28.8rem;
    z-index: 1;
    padding: 4rem 0;
    width: auto;
    display: none;
    top: 100%;
}

.nav-bar-menu ul li .dropdown-content li {
    padding: 0;
}

.nav-bar-menu ul li .dropdown-content li a {
    display: block;
    padding: 0.5rem 4rem;
    font-size: 1.6rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.6);
}

.nav-bar-menu ul li .dropdown-content li a::after {
    display: none !important;
}

.hamburger {
    display: none !important;
}

@media (min-width: 992px) {
    .nav-bar-menu ul li:hover ul {
        display: block;
    }
}

@media (max-width: 991px) {
    .hamburger {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        padding: 0 !important;
        background: #cfae66 !important;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 6rem;
        height: 6rem;
        text-align: center;
    }
    .hamburger b {
        display: block;
        width: 100%;
        color: #fff;
        font-size: 0.8rem;
        line-height: 1;
        margin-top: -1.5rem;
    }
    .nav-bar-menu {
        padding: 0;
        height: 100vh;
        width: 100vw;
        position: fixed;
        right: 0;
        top: 0;
        z-index: 999;
        overflow-x: hidden;
        transition: all 300ms ease-in-out;
        -webkit-transition: all 300ms ease-in-out;
        -moz-transition: all 300ms ease-in-out;
        -o-transition: all 300ms ease-in-out;
        -webkit-transform: translateX(200%);
        -ms-transform: translateX(200%);
        transform: translateX(200%);
        overflow-y: scroll;
        background: #ccc6c4;
    }
    .nav-bar-menu.is_active {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    .nav-bar-menu ul {
        margin: 7rem 0 0;
        padding: 0 3.5rem 10rem;
        width: 100%;
        display: block;
    }
    .nav-bar-menu ul li {
        width: 100%;
        padding: 1.5rem 0;
    }
    .nav-bar-menu ul li a {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        -webkit-box-pack: end;
        -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        line-height: 1.5;
        color: #0e0e23;
        font-weight: 500;
        padding: 0 3rem;
        position: relative;
        font-size: 1.8rem;
        transition: all 300ms ease-in-out;
        -webkit-transition: all 300ms ease-in-out;
        -moz-transition: all 300ms ease-in-out;
        -o-transition: all 300ms ease-in-out;
    }
    .nav-bar-menu ul li a i {
        display: none;
    }
    .nav-bar-menu ul li a::before {
        display: none;
    }
    .nav-bar-menu ul li a::after {
        font-family: "Font Awesome 5 Pro";
        font-weight: 400;
        content: "\f054";
        margin-right: 1rem;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        background: none;
    }
    .nav-bar-menu ul li a:hover {
        color: #604624;
    }
    .nav-bar-menu ul li .dropdown-content {
        display: none;
        position: static;
        top: 0;
        left: 0;
        width: 100%;
        min-width: none;
        margin: 2rem 0 0 0;
        padding: 2rem 3rem;
    }
    .nav-bar-menu ul li .dropdown-content li a {
        padding: 0.5rem 0;
    }
}


/* Arrows */

.info-thumb .slick-prev,
.info-thumb .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    z-index: 999;
    width: 40px;
    height: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}

.info-thumb .slick-prev:hover,
.info-thumb .slick-next:hover {
    opacity: 0.7;
}

.info-thumb .slick-prev {
    left: -50px;
}

.info-thumb .slick-next {
    right: -50px;
}

.info-thumb {
    background: #f2ecdf;
    margin-bottom: 10px;
}

.info-thumb .items {
    padding: 20px;
    text-align: center;
}

.info-thumb .items img {
    width: 100%;
    height: auto;
}

.info-nav li {
    border: 1px solid #f2ecdf;
    padding: 5px;
    margin: 0 3px;
}

.info-thumb .slick-arrow {
    position: absolute;
    left: 5px;
    width: 30px;
    height: 30px;
    top: calc(50% - 15px);
    background: #ba9e5d;
    overflow: hidden;
}

.info-thumb .slick-arrow:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    left: calc(50% - 2px);
    top: 50%;
    padding: 4px;
    border-right: 3px solid #4d4d4d;
    border-bottom: 3px solid #4d4d4d;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
}

.info-thumb .slick-next {
    left: auto;
    right: 5px;
}

.info-thumb .slick-prev:before {
    left: calc(50% + 2px);
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
    -ms-transform: translate(-50%, -50%) rotate(135deg);
    transform: translate(-50%, -50%) rotate(135deg);
}

.info-nav .slick-slide img {
    max-height: 85px;
}

.info-nav .slick-current {
    background: #f2ecdf;
}

.slider {
    position: relative;
    width: 100%;
    max-width: 100%;
}

.slider .slider__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 113rem;
    height: 60rem;
    margin: 0 auto;
}

.slider .slider__inner .slider__item {
    position: absolute;
    height: 38.1rem;
    width: 38.1rem;
    opacity: 0;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    z-index: -1;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.slider .slider__inner .slider__item-trigger-next {
    left: 15%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.slider .slider__inner .slider__item-trigger-previous {
    left: 85%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.slider .slider__inner .slider__item-selected {
    opacity: 1;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 2;
    height: 63.7rem;
    width: 63.7rem;
}

.slider .slider__inner .slider__item-previous,
.slider .slider__inner .slider__item-next {
    opacity: 1;
    z-index: 1;
    height: 44.8rem;
    width: 44.8rem;
}

.slider .slider__inner .slider__item-last,
.slider .slider__inner .slider__item-first {
    opacity: 1;
    z-index: 0;
}

.slider .slider__inner .slider__item-previous {
    left: 35%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.slider .slider__inner .slider__item-next {
    left: 65%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.slider .slider__inner .slider__item-first {
    left: 25%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.slider .slider__inner .slider__item-last {
    left: 75%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.slider .slider__inner .slider__item-container {
    position: relative;
    width: 100%;
    height: 100%;
}

.slider .slider__inner .slider__item-img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}

.slider .slider__controls {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 750px) {
    .slider .slider__controls {
        display: none;
    }
}

.slider .slider__controls-previous,
.slider .slider__controls-next {
    border: 0;
    cursor: pointer;
    font-size: 5rem;
    background-color: transparent;
    color: rgba(0, 0, 0, 0.75);
    padding: 0;
}

.slider .slider__controls-previous:focus,
.slider .slider__controls-next:focus {
    outline: none;
}

@media (max-width: 991px) {
    .slider .slider__inner {
        max-width: 37.5rem;
        height: 37.5rem;
    }
    .slider .slider__inner .slider__item {
        height: 18.8rem;
        width: 18.8rem;
    }
    .slider .slider__inner .slider__item-trigger-next {
        left: 50%;
    }
    .slider .slider__inner .slider__item-trigger-previous {
        left: 50%;
    }
    .slider .slider__inner .slider__item-selected {
        height: 31.5rem;
        width: 31.5rem;
    }
    .slider .slider__inner .slider__item-previous,
    .slider .slider__inner .slider__item-next {
        height: 23.9rem;
        width: 23.9rem;
    }
    .slider .slider__inner .slider__item-previous {
        left: 33%;
    }
    .slider .slider__inner .slider__item-next {
        left: 68%;
    }
    .slider .slider__inner .slider__item-first {
        left: 20%;
    }
    .slider .slider__inner .slider__item-last {
        left: 80%;
    }
}


/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */

.hamburger {
    padding: 1.5rem 1.5rem;
    display: inline-block;
    cursor: pointer;
    -webkit-transition-property: opacity, -webkit-filter;
    transition-property: opacity, -webkit-filter;
    -o-transition-property: opacity, filter;
    transition-property: opacity, filter;
    transition-property: opacity, filter, -webkit-filter;
    -webkit-transition-duration: 0.15s;
    -o-transition-duration: 0.15s;
    transition-duration: 0.15s;
    -webkit-transition-timing-function: linear;
    -o-transition-timing-function: linear;
    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.is-active:hover {
    opacity: 0.7;
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
    background-color: #fff;
}

.hamburger-box {
    width: 2.6rem;
    height: 2rem;
    display: inline-block;
    position: relative;
}

.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -0.1rem;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
    width: 2.6rem;
    height: 0.2rem;
    background-color: #fff;
    border-radius: 0;
    position: absolute;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: 0.15s;
    -o-transition-duration: 0.15s;
    transition-duration: 0.15s;
    -webkit-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease;
}

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

.hamburger-inner::before {
    top: -0.9rem;
}

.hamburger-inner::after {
    bottom: -0.9rem;
}


/*
   * 3DX
   */

.hamburger--3dx .hamburger-box {
    -webkit-perspective: 5.2rem;
    perspective: 5.2rem;
}

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

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

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

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

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


/*
   * 3DX Reverse
   */

.hamburger--3dx-r .hamburger-box {
    -webkit-perspective: 5.2rem;
    perspective: 5.2rem;
}

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

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

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

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

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


/*
   * 3DY
   */

.hamburger--3dy .hamburger-box {
    -webkit-perspective: 5.2rem;
    perspective: 5.2rem;
}

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

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

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

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

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


/*
   * 3DY Reverse
   */

.hamburger--3dy-r .hamburger-box {
    -webkit-perspective: 5.2rem;
    perspective: 5.2rem;
}

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

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

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

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

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


/*
   * 3DXY
   */

.hamburger--3dxy .hamburger-box {
    -webkit-perspective: 5.2rem;
    perspective: 5.2rem;
}

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

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

.hamburger--3dxy.is-active .hamburger-inner {
    background-color: transparent !important;
    -webkit-transform: rotateX(180deg) rotateY(180deg);
    transform: rotateX(180deg) rotateY(180deg);
}

.hamburger--3dxy.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(0, 0.9rem, 0) rotate(45deg);
    transform: translate3d(0, 0.9rem, 0) rotate(45deg);
}

.hamburger--3dxy.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -0.9rem, 0) rotate(-45deg);
    transform: translate3d(0, -0.9rem, 0) rotate(-45deg);
}


/*
   * 3DXY Reverse
   */

.hamburger--3dxy-r .hamburger-box {
    -webkit-perspective: 5.2rem;
    perspective: 5.2rem;
}

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

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

.hamburger--3dxy-r.is-active .hamburger-inner {
    background-color: transparent !important;
    -webkit-transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg);
    transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg);
}

.hamburger--3dxy-r.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(0, 0.9rem, 0) rotate(45deg);
    transform: translate3d(0, 0.9rem, 0) rotate(45deg);
}

.hamburger--3dxy-r.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -0.9rem, 0) rotate(-45deg);
    transform: translate3d(0, -0.9rem, 0) rotate(-45deg);
}


/*
   * Arrow
   */

.hamburger--arrow.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(-0.52rem, 0, 0) rotate(-45deg) scale(0.7, 1);
    transform: translate3d(-0.52rem, 0, 0) rotate(-45deg) scale(0.7, 1);
}

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


/*
   * Arrow Right
   */

.hamburger--arrow-r.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(0.52rem, 0, 0) rotate(45deg) scale(0.7, 1);
    transform: translate3d(0.52rem, 0, 0) rotate(45deg) scale(0.7, 1);
}

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


/*
   * Arrow Alt
   */

.hamburger--arrowalt .hamburger-inner::before {
    -webkit-transition: top 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: top 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
    -o-transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

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

.hamburger--arrowalt.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transform: translate3d(-0.52rem, -0.65rem, 0) rotate(-45deg) scale(0.7, 1);
    transform: translate3d(-0.52rem, -0.65rem, 0) rotate(-45deg) scale(0.7, 1);
    -webkit-transition: top 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
    transition: top 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
    -o-transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
    transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
    transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22), -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt.is-active .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: translate3d(-0.52rem, 0.65rem, 0) rotate(45deg) scale(0.7, 1);
    transform: translate3d(-0.52rem, 0.65rem, 0) rotate(45deg) scale(0.7, 1);
    -webkit-transition: bottom 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
    transition: bottom 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
    -o-transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
    transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
    transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22), -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}


/*
   * Arrow Alt Right
   */

.hamburger--arrowalt-r .hamburger-inner::before {
    -webkit-transition: top 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: top 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
    -o-transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

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

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

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


/*
   * Arrow Turn
   */

.hamburger--arrowturn.is-active .hamburger-inner {
    -webkit-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
}

.hamburger--arrowturn.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
    transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

.hamburger--arrowturn.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
    transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}


/*
   * Arrow Turn Right
   */

.hamburger--arrowturn-r.is-active .hamburger-inner {
    -webkit-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
}

.hamburger--arrowturn-r.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
    transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

.hamburger--arrowturn-r.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
    transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
}


/*
   * Boring
   */

.hamburger--boring .hamburger-inner,
.hamburger--boring .hamburger-inner::before,
.hamburger--boring .hamburger-inner::after {
    -webkit-transition-property: none;
    -o-transition-property: none;
    transition-property: none;
}

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

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

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


/*
   * Collapse
   */

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

.hamburger--collapse .hamburger-inner::after {
    top: -1.8rem;
    -webkit-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
    -o-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}

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

.hamburger--collapse.is-active .hamburger-inner {
    -webkit-transform: translate3d(0, -0.9rem, 0) rotate(-45deg);
    transform: translate3d(0, -0.9rem, 0) rotate(-45deg);
    -webkit-transition-delay: 0.22s;
    -o-transition-delay: 0.22s;
    transition-delay: 0.22s;
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

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

.hamburger--collapse.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}


/*
   * Collapse Reverse
   */

.hamburger--collapse-r .hamburger-inner {
    top: auto;
    bottom: 0;
    -webkit-transition-duration: 0.13s;
    -o-transition-duration: 0.13s;
    transition-duration: 0.13s;
    -webkit-transition-delay: 0.13s;
    -o-transition-delay: 0.13s;
    transition-delay: 0.13s;
    -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse-r .hamburger-inner::after {
    top: -1.8rem;
    -webkit-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
    -o-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}

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

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

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

.hamburger--collapse-r.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}


/*
   * Elastic
   */

.hamburger--elastic .hamburger-inner {
    top: 0.1rem;
    -webkit-transition-duration: 0.275s;
    -o-transition-duration: 0.275s;
    transition-duration: 0.275s;
    -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    -o-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic .hamburger-inner::before {
    top: 0.9rem;
    -webkit-transition: opacity 0.125s 0.275s ease;
    -o-transition: opacity 0.125s 0.275s ease;
    transition: opacity 0.125s 0.275s ease;
}

.hamburger--elastic .hamburger-inner::after {
    top: 1.8rem;
    -webkit-transition: -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    -o-transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic.is-active .hamburger-inner {
    -webkit-transform: translate3d(0, 0.9rem, 0) rotate(135deg);
    transform: translate3d(0, 0.9rem, 0) rotate(135deg);
    -webkit-transition-delay: 0.075s;
    -o-transition-delay: 0.075s;
    transition-delay: 0.075s;
}

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

.hamburger--elastic.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -1.8rem, 0) rotate(-270deg);
    transform: translate3d(0, -1.8rem, 0) rotate(-270deg);
    -webkit-transition-delay: 0.075s;
    -o-transition-delay: 0.075s;
    transition-delay: 0.075s;
}


/*
   * Elastic Reverse
   */

.hamburger--elastic-r .hamburger-inner {
    top: 0.1rem;
    -webkit-transition-duration: 0.275s;
    -o-transition-duration: 0.275s;
    transition-duration: 0.275s;
    -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    -o-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic-r .hamburger-inner::before {
    top: 0.9rem;
    -webkit-transition: opacity 0.125s 0.275s ease;
    -o-transition: opacity 0.125s 0.275s ease;
    transition: opacity 0.125s 0.275s ease;
}

.hamburger--elastic-r .hamburger-inner::after {
    top: 1.8rem;
    -webkit-transition: -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    -o-transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic-r.is-active .hamburger-inner {
    -webkit-transform: translate3d(0, 0.9rem, 0) rotate(-135deg);
    transform: translate3d(0, 0.9rem, 0) rotate(-135deg);
    -webkit-transition-delay: 0.075s;
    -o-transition-delay: 0.075s;
    transition-delay: 0.075s;
}

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

.hamburger--elastic-r.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -1.8rem, 0) rotate(270deg);
    transform: translate3d(0, -1.8rem, 0) rotate(270deg);
    -webkit-transition-delay: 0.075s;
    -o-transition-delay: 0.075s;
    transition-delay: 0.075s;
}


/*
   * Emphatic
   */

.hamburger--emphatic {
    overflow: hidden;
}

.hamburger--emphatic .hamburger-inner {
    -webkit-transition: background-color 0.125s 0.175s ease-in;
    -o-transition: background-color 0.125s 0.175s ease-in;
    transition: background-color 0.125s 0.175s ease-in;
}

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

.hamburger--emphatic .hamburger-inner::after {
    top: 0.9rem;
    right: 0;
    -webkit-transition: top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
    transition: top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
    -o-transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
    transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
    transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
}

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

.hamburger--emphatic.is-active .hamburger-inner::before {
    left: -5.2rem;
    top: -5.2rem;
    -webkit-transform: translate3d(5.2rem, 5.2rem, 0) rotate(45deg);
    transform: translate3d(5.2rem, 5.2rem, 0) rotate(45deg);
    -webkit-transition: left 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: left 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    -o-transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.hamburger--emphatic.is-active .hamburger-inner::after {
    right: -5.2rem;
    top: -5.2rem;
    -webkit-transform: translate3d(-5.2rem, 5.2rem, 0) rotate(-45deg);
    transform: translate3d(-5.2rem, 5.2rem, 0) rotate(-45deg);
    -webkit-transition: right 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: right 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    -o-transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}


/*
   * Emphatic Reverse
   */

.hamburger--emphatic-r {
    overflow: hidden;
}

.hamburger--emphatic-r .hamburger-inner {
    -webkit-transition: background-color 0.125s 0.175s ease-in;
    -o-transition: background-color 0.125s 0.175s ease-in;
    transition: background-color 0.125s 0.175s ease-in;
}

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

.hamburger--emphatic-r .hamburger-inner::after {
    top: 0.9rem;
    right: 0;
    -webkit-transition: top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
    transition: top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
    -o-transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
    transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
    transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
}

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

.hamburger--emphatic-r.is-active .hamburger-inner::before {
    left: -5.2rem;
    top: 5.2rem;
    -webkit-transform: translate3d(5.2rem, -5.2rem, 0) rotate(-45deg);
    transform: translate3d(5.2rem, -5.2rem, 0) rotate(-45deg);
    -webkit-transition: left 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: left 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    -o-transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.hamburger--emphatic-r.is-active .hamburger-inner::after {
    right: -5.2rem;
    top: 5.2rem;
    -webkit-transform: translate3d(-5.2rem, -5.2rem, 0) rotate(45deg);
    transform: translate3d(-5.2rem, -5.2rem, 0) rotate(45deg);
    -webkit-transition: right 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: right 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    -o-transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}


/*
   * Minus
   */

.hamburger--minus .hamburger-inner::before,
.hamburger--minus .hamburger-inner::after {
    -webkit-transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear;
    -o-transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear;
    transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear;
}

.hamburger--minus.is-active .hamburger-inner::before,
.hamburger--minus.is-active .hamburger-inner::after {
    opacity: 0;
    -webkit-transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear;
    -o-transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear;
    transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear;
}

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

.hamburger--minus.is-active .hamburger-inner::after {
    bottom: 0;
}


/*
   * Slider
   */

.hamburger--slider .hamburger-inner {
    top: 0.1rem;
}

.hamburger--slider .hamburger-inner::before {
    top: 0.9rem;
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    -o-transition-property: transform, opacity;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease;
    -webkit-transition-duration: 0.15s;
    -o-transition-duration: 0.15s;
    transition-duration: 0.15s;
}

.hamburger--slider .hamburger-inner::after {
    top: 1.8rem;
}

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

.hamburger--slider.is-active .hamburger-inner::before {
    -webkit-transform: rotate(-45deg) translate3d(-0.37143rem, -0.7rem, 0);
    transform: rotate(-45deg) translate3d(-0.37143rem, -0.7rem, 0);
    opacity: 0;
}

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


/*
   * Slider Reverse
   */

.hamburger--slider-r .hamburger-inner {
    top: 0.1rem;
}

.hamburger--slider-r .hamburger-inner::before {
    top: 0.9rem;
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    -o-transition-property: transform, opacity;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease;
    -webkit-transition-duration: 0.15s;
    -o-transition-duration: 0.15s;
    transition-duration: 0.15s;
}

.hamburger--slider-r .hamburger-inner::after {
    top: 1.8rem;
}

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

.hamburger--slider-r.is-active .hamburger-inner::before {
    -webkit-transform: rotate(45deg) translate3d(0.37143rem, -0.7rem, 0);
    transform: rotate(45deg) translate3d(0.37143rem, -0.7rem, 0);
    opacity: 0;
}

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


/*
   * Spin
   */

.hamburger--spin .hamburger-inner {
    -webkit-transition-duration: 0.22s;
    -o-transition-duration: 0.22s;
    transition-duration: 0.22s;
    -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

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

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

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

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

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


/*
   * Spin Reverse
   */

.hamburger--spin-r .hamburger-inner {
    -webkit-transition-duration: 0.22s;
    -o-transition-duration: 0.22s;
    transition-duration: 0.22s;
    -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

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

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

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

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

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


/*
   * Spring
   */

.hamburger--spring .hamburger-inner {
    top: 0.1rem;
    -webkit-transition: background-color 0s 0.13s linear;
    -o-transition: background-color 0s 0.13s linear;
    transition: background-color 0s 0.13s linear;
}

.hamburger--spring .hamburger-inner::before {
    top: 0.9rem;
    -webkit-transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring .hamburger-inner::after {
    top: 1.8rem;
    -webkit-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring.is-active .hamburger-inner {
    -webkit-transition-delay: 0.22s;
    -o-transition-delay: 0.22s;
    transition-delay: 0.22s;
    background-color: transparent !important;
}

.hamburger--spring.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0.9rem, 0) rotate(45deg);
    transform: translate3d(0, 0.9rem, 0) rotate(45deg);
}

.hamburger--spring.is-active .hamburger-inner::after {
    top: 0;
    -webkit-transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0.9rem, 0) rotate(-45deg);
    transform: translate3d(0, 0.9rem, 0) rotate(-45deg);
}


/*
   * Spring Reverse
   */

.hamburger--spring-r .hamburger-inner {
    top: auto;
    bottom: 0;
    -webkit-transition-duration: 0.13s;
    -o-transition-duration: 0.13s;
    transition-duration: 0.13s;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring-r .hamburger-inner::after {
    top: -1.8rem;
    -webkit-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
    -o-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
}

.hamburger--spring-r .hamburger-inner::before {
    -webkit-transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

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

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

.hamburger--spring-r.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}


/*
   * Stand
   */

.hamburger--stand .hamburger-inner {
    -webkit-transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
    transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
    transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

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

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

.hamburger--stand.is-active .hamburger-inner {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    background-color: transparent !important;
    -webkit-transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
    transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
    transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
}

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

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


/*
   * Stand Reverse
   */

.hamburger--stand-r .hamburger-inner {
    -webkit-transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
    transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
    transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

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

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

.hamburger--stand-r.is-active .hamburger-inner {
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    background-color: transparent !important;
    -webkit-transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
    transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
    transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
}

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

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


/*
   * Squeeze
   */

.hamburger--squeeze .hamburger-inner {
    -webkit-transition-duration: 0.075s;
    -o-transition-duration: 0.075s;
    transition-duration: 0.075s;
    -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -o-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze .hamburger-inner::before {
    -webkit-transition: top 0.075s 0.12s ease, opacity 0.075s ease;
    -o-transition: top 0.075s 0.12s ease, opacity 0.075s ease;
    transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}

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

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

.hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    -webkit-transition: top 0.075s ease, opacity 0.075s 0.12s ease;
    -o-transition: top 0.075s ease, opacity 0.075s 0.12s ease;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}

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


/*
   * Vortex
   */

.hamburger--vortex .hamburger-inner {
    -webkit-transition-duration: 0.2s;
    -o-transition-duration: 0.2s;
    transition-duration: 0.2s;
    -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    -o-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

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

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

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

.hamburger--vortex.is-active .hamburger-inner {
    -webkit-transform: rotate(765deg);
    -ms-transform: rotate(765deg);
    transform: rotate(765deg);
    -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    -o-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    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 {
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
}

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

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


/*
   * Vortex Reverse
   */

.hamburger--vortex-r .hamburger-inner {
    -webkit-transition-duration: 0.2s;
    -o-transition-duration: 0.2s;
    transition-duration: 0.2s;
    -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    -o-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

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

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

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

.hamburger--vortex-r.is-active .hamburger-inner {
    -webkit-transform: rotate(-765deg);
    -ms-transform: rotate(-765deg);
    transform: rotate(-765deg);
    -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    -o-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    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 {
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    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;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
}


/* Layout - Structure and layout files.
========================================================================== */


/* -------------------->>> COMMON <<<-------------------- */

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

html {
    font-size: 10px;
}

body {
    background: #fff;
    font-family: "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    color: #604624;
    font-size: 1.6rem;
    line-height: 1.875;
    overflow-x: hidden;
    font-weight: 500;
    letter-spacing: 0;
    width: 100%;
}

body.is_active {
    height: 100vh;
    overflow: hidden;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    z-index: -1;
}

body.is_active::after {
    content: "";
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.33);
    position: fixed;
    overflow: hidden;
    top: 0;
    left: 0;
    z-index: 99;
}

hr {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: #000 -moz-use-text-color -moz-use-text-color;
    -o-border-image: none;
    border-image: none;
    border-style: solid none none;
    border-width: 0.2em 0 0 0;
    margin: 0;
}

.container {
    width: 100%;
    max-width: 123rem;
    padding: 0 1.5rem;
    margin: 0 auto;
}

p {
    margin-bottom: 1.5rem;
}

input:focus {
    outline: none;
}

a>img {
    transition: all 400ms ease-in-out;
    -webkit-transition: all 400ms ease-in-out;
    -moz-transition: all 400ms ease-in-out;
    -o-transition: all 400ms ease-in-out;
}

a>img:hover {
    opacity: 0.7;
}

img {
    width: auto;
    height: auto;
    max-width: 100%;
    vertical-align: middle;
}

.thumb-box a {
    display: block;
}

.thumb-box img {
    width: 100%;
    height: auto;
}

.img-cover figure {
    display: block;
    width: 100%;
    height: 100%;
}

.img-cover img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.thumb-over figure {
    display: block;
    position: relative;
    overflow: hidden;
}

.thumb-over figure::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.thumb-over figure img {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.thumb-over:hover figure::before {
    background: rgba(0, 0, 0, 0.5);
}

.thumb-over:hover figure img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}

.scrollTop {
    position: fixed;
    bottom: -50px;
    right: 4rem;
    z-index: 10;
    height: 200px;
    text-align: center;
    -webkit-transition: bottom 0.8s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
    -o-transition: bottom 0.8s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: bottom 0.8s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    z-index: 999;
    width: 8rem;
}

.scrollTop__main {
    cursor: pointer;
}

.scrollTop__main:hover {
    opacity: 0.7;
}

.scrollTop__main img {
    width: 7.6rem;
}

.scrollTop.active {
    bottom: 0;
    opacity: 1;
}

.w-100 {
    width: 100% !important;
}

.text-center {
    text-align: center !important;
}

.text-right {
    text-align: right !important;
}

.d-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.justify-content-between {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.justify-content-center {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.justify-content-end {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.align-items-center {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.align-items-start {
    -webkit-box-align: start;
    -webkit-align-items: start;
    -ms-flex-align: start;
    align-items: start;
}

.align-items-end {
    -webkit-box-align: end;
    -webkit-align-items: end;
    -ms-flex-align: end;
    align-items: end;
}

.flex-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.hide {
    display: none;
}

.header__main {
    padding-left: 4rem;
}

.header__main .logo {
    width: 33.2rem;
}

.header__main--info .tel {
    width: 25.4rem;
    margin-right: 2.3rem;
}

.header__main--info .web {
    width: 26rem;
    background: #cfae66;
    line-height: 12rem;
    text-align: center;
    font-size: 2rem;
    font-weight: 500;
    color: #fff;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.header__main--info .web:hover {
    background: #e8ca88;
    color: #fff;
}

@media (max-width: 991px) {
    .header {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        background: #fff;
        z-index: 9999;
    }
    .header__main {
        padding-left: 1rem;
    }
    .header__main .logo {
        width: 19rem;
    }
    .header__main--info {
        display: none;
    }
}

.banner__main {
    position: relative;
}

.banner__main .txt {
    width: 66.5rem;
    position: absolute;
    top: 50%;
    right: calc((100% - 120rem) / 2);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.banner__main h2 {
    color: #fff;
    text-align: center;
    font-size: 6rem;
    line-height: 8.5rem;
    text-shadow: 0px 0px 15px #fff;
    margin-bottom: 3rem;
}

.banner__main h3 {
    font-size: 3.4rem;
    color: #fff;
    text-align: center;
}

.banner__main .txt .more-box {
    padding-top: 4.5rem;
    width: 100%;
    text-align: center;
}

.banner__main .cover_btn {
    display: inline-block;
    width: 100%;
    max-width: 586px;
    text-align: center;
    line-height: 12rem;
    background: #cfae66;
    font-size: 1.8rem!important;
    color: #fff;
    position: relative;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    /* position: absolute; */
    /* right: 22%; */
    /* bottom: 10%; */
    margin: 5rem auto 0;
    /* left: 45%;*/
}
a.banner__main__img {
    max-width: 100%;
    margin: 4rem auto 0;
    display: block;
}
.banner__main_wr{
    position: absolute;
    right: 22%;
    top: 50%;
    /* margin: 5rem auto 0; */
    left: 40%;
    max-width: 850px;
    width: 50%;
    transform: translateY(-50%);
    text-align: center;
}
.banner__main__tit {
    width: 100%;
}

.banner__main__tit02 {
    width: 100%;
    margin: 4rem auto 0;
}
.banner__main .cover_btn::before {
    content: "";
    width: calc(100% - 1.5rem);
    height: calc(100% - 1.5rem);
    border: 1px solid #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.banner__main .cover_btn:hover {
    background: #e8ca88;
}

.head-box {
    text-align: center;
    margin-bottom: 8rem;
}

.head-box p {
    font-size: 2.8rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    margin-bottom: 1rem;
}

.head-box h2 {
    margin-bottom: 1rem;
}

.head-box span {
    font-family: "Garamond Premr Pro", "sans-serif", serif;
    font-size: 2.4rem;
    color: #beae9f;
}

.case-box {
    padding: 12rem 0;
    background-image: url("../images/case-bg.png");
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center bottom;
    overflow: hidden;
}

.case-box__main {
    text-align: center;
}

.case-box__main p {
    margin-bottom: 10rem;
}

.case-box__main .more-box {
    text-align: center;
    padding-top: 8rem;
}

.feature-box {
    padding: 12rem 0;
    background-image: url("../images/feature-bg.jpg");
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right top;
}

.feature-box__main {
    width: 50%;
    padding: 0 6rem;
}

.feature-box__main ul {
    counter-reset: section;
}

.feature-box__main ul li {
    padding: 0.8rem 3.5rem;
    background: #baac9e;
    margin-bottom: 3rem;
    font-size: 2.3rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    position: relative;
}

.feature-box__main ul li::before {
    counter-increment: section;
    content: "" counter(section) "";
    font-family: "Garamond Premr Pro", "sans-serif", serif;
    font-size: 7.6rem;
    line-height: 1;
    position: absolute;
    left: -2rem;
    bottom: 0;
}

.feature-box__main .more-box {
    text-align: center;
    padding-top: 2rem;
}

.feature-box__main .more-box a {
    font-size: 2.4rem;
}

.feature-box__main .more-box a:hover {
    opacity: 0.6;
}

.retreatment-box {
    padding: 13rem 0 14rem;
    background-image: url("../images/retreatment-bg.jpg");
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: left top;
    color: #fff;
}

.retreatment-box .head-box h2 {
    color: #fff;
}

.retreatment-box .head-box span {
    color: #fff;
}

.retreatment-box__main {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.retreatment-box__main .main {
    width: 55%;
    position: relative;
    z-index: 9;
}

.retreatment-box__main .main p {
    margin-bottom: 3rem;
}

.retreatment-box__main .main .more-box {
    text-align: center;
}

.retreatment-box__main .main p strong {
    position: relative;
}

.retreatment-box__main .main p strong::after {
    content: '';
    display: block;
    width: 100%;
    height: .3rem;
    background: #cfae66;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.featureList-box {
    padding: 12rem 0;
}

.featureList-box .container {
    max-width: 131rem;
}

.featureList-box__main .list-box {
    margin-bottom: 11.2rem;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.featureList-box__main .list-box .thumb-box {
    width: 50%;
    position: relative;
}

.featureList-box__main .list-box .thumb-box::after {
    content: "";
    width: 100%;
    height: 100%;
    background: #d9cfc4;
    position: absolute;
    right: -4rem;
    bottom: -4rem;
    z-index: -1;
}

.featureList-box__main .list-box .text-box {
    width: 50%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: 0 4rem;
    position: relative;
    padding-bottom: 3.5rem;
    padding-top: 7rem;
}

.featureList-box__main .list-box .text-box .main {
    width: 100%;
    max-width: 39rem;
}

.featureList-box__main .list-box .text-box .labels {
    margin-bottom: 9rem;
    font-size: 2.4rem;
    font-family: "Garamond Premr Pro", "sans-serif", serif;
    position: relative;
    display: inline-block;
    color: #beae9f;
}

.featureList-box__main .list-box .text-box .labels span {
    display: block;
    width: 15rem;
    height: 15rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    border: 1px solid #beae9f;
    font-size: 11.4rem;
    line-height: 1;
    position: absolute;
    right: -12.2rem;
    bottom: -3.3rem;
}

.featureList-box__main .list-box .text-box h3 {
    margin-bottom: 4.5rem;
}

.featureList-box__main .list-box .text-box p {
    margin-bottom: 2.5rem;
}

.featureList-box__main .list-box .text-box p:last-child {
    margin-bottom: 9;
}

.featureList-box__main .list-box .text-box .tt {
    font-size: 12.4rem;
    font-family: "Garamond Premr Pro", "sans-serif", serif;
    line-height: 10.8rem;
    color: #f5ece5;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.featureList-box__main .list-box .text-box .more-box a {
    font-size: 1.8rem;
}

.featureList-box__main .list-box .text-box .more-box a:hover {
    opacity: 0.6;
}

.featureList-box__main .list-box:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.featureList-box__main .list-box:nth-child(even) .text-box {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.featureList-box__main .list-box:nth-child(even) .text-box .main {
    margin-left: 3.5rem;
}

.featureList-box .more-box {
    text-align: center;
}

.caseList-box {
    padding: 12rem 0;
    background: #d9cfc4;
    overflow: hidden;
}

.caseList-box .des-box {
    text-align: center;
    margin-bottom: 7rem;
}

.caseList-box__main .list-box .items {
    padding: 0 1.5rem;
}

.caseList-box__main .list-box .items h3 {
    text-align: center;
    margin-bottom: 2rem;
    font-size: 1.8rem;
    font-weight: 700;
    font-family: "を指定", "Yu Gothic", YuGothic, "sans-serif", serif;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.caseList-box__main .list-box .items .thumb-box {
    margin-bottom: 2rem;
}

.caseList-box__main .list-box .items time {
    display: block;
    margin-bottom: 1.5rem;
}

.caseList-box__main .list-box .slick-list {
    margin-left: calc((100% - 120rem) / 2);
}

.caseList-box__main .list-box .slick-dots {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-top: 3rem;
}

.caseList-box__main .list-box .slick-dots li {
    padding: 0 0.9rem;
}

.caseList-box__main .list-box .slick-dots li button {
    padding: 0;
    width: 1.2rem;
    height: 1.2rem;
    background: #fff;
    border-radius: 50%;
    text-indent: -9999px;
}

.caseList-box__main .list-box .slick-dots li button:hover {
    background: #604624;
}

.caseList-box__main .list-box .slick-dots li.slick-active button {
    background: #604624;
}

.caseList-box__main .list-box .slick-arrow {
    width: 5rem;
    height: 5rem;
    text-indent: -9999px;
    background-color: #fcf7f4;
    border-radius: 50%;
    background-image: url("../images/arow-left.png");
    background-size: 8px auto;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -1rem;
    left: 50%;
    -webkit-transform: translateX(-305%);
    -ms-transform: translateX(-305%);
    transform: translateX(-305%);
}

.caseList-box__main .list-box .slick-arrow.slick-next {
    background-image: url("../images/arow-right.png");
    -webkit-transform: translateX(205%);
    -ms-transform: translateX(205%);
    transform: translateX(205%);
}

.caseList-box__main .more-box {
    text-align: center;
    padding-top: 7.5rem;
}

.caseList-box__main .more-box a {
    padding: 0 2.5rem 0 5rem;
    max-width: none;
    width: auto;
    line-height: 6rem;
}

.cunseling-box {
    padding: 12rem 0;
}

.cunseling-box__main {
    text-align: center;
}

.cunseling-box__main p {
    margin-bottom: 3rem;
}

.cunseling-box__main .thumb-box {
    padding-top: 3rem;
}

.cunseling-box__main .thumb-box figure {
    width: calc(100% / 5);
}

.cunseling-box__main .more-group {
    padding-top: 6rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.cunseling-box__main .more-group a {
    max-width: 33rem;
    margin: 0 1rem;
}

.cunseling-box__main .more-group a:last-child {
    background: #604624;
}

.about-box {
    padding: 12rem 0;
    background: #d9cfc4;
}

.about-box__main .thumb-box {
    width: 100%;
    margin: 0 -1.5rem;
}

.about-box__main .thumb-box figure {
    margin-bottom: 5rem;
    padding: 0 1.5rem;
    width: calc(100% / 3);
}

.about-box__main .thumb-box figure:last-child {
    margin-bottom: 0;
}

.about-box__main .blog-box {
    width: 50%;
    padding-left: 4rem;
}

.about-box__main .blog-box .tt {
    text-align: center;
    margin-bottom: 4rem;
    font-size: 3rem;
    font-family: "Garamond Premr Pro", "sans-serif", serif;
}

.about-box__main .blog-box .list {
    padding-bottom: 3rem;
    margin-bottom: 3rem;
    border-bottom: 1px solid #b8aea3;
}

.about-box__main .blog-box .list:last-child {
    margin-bottom: 0;
}

.about-box__main .blog-box .list .img {
    width: 18rem;
}

.about-box__main .blog-box .list .txt {
    width: calc(100% - 18rem);
    padding-left: 2rem;
}

.about-box__main .blog-box .list h3 {
    font-family: "を指定", "Yu Gothic", YuGothic, "sans-serif", serif;
    font-weight: 700;
    font-size: 1.8rem;
    margin-bottom: 1rem;
}

.about-box__main .blog-box .list time {
    display: block;
    margin-bottom: 1rem;
}

.about-box__main .blog-box .list p {
    margin-bottom: 0;
}

.about-box .more-group {
    padding-top: 8rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.about-box .more-group a {
    max-width: 33rem;
    margin: 0 1rem;
}

.greeting-box {
    position: relative;
}

.greeting-box .txt {
    position: absolute;
    top: 28%;
    left: 15%;
}

.greeting-box .txt-site {
    font-size: 1.4rem;
}

.greeting-box .txt h3 {
    font-size: 3.2rem;
    color: #604624;
    margin-bottom: .5rem;
    line-height: 1.2;
}

.greeting-box .txt h3 span {
    font-size: 1.4rem;
}

.greeting-box .txt-name {
    font-size: 2rem;
    color: #cfae66;
}

.greeting-box .container {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.greeting-box__main {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.greeting-box__main .main {
    width: 50%;
    padding-left: 2rem;
}

.greeting-box__main .head-box {
    text-align: left;
}

.greeting-box__main h3 {
    margin-bottom: 4.5rem;
    font-size: 3.4rem;
}

.greeting-box__main p {
    margin-bottom: 2.5rem;
}

.profile-box {
    background: #d9cfc4;
    padding: 12rem 0;
}

.profile-box h2 {
    text-align: center;
    margin-bottom: 2.5rem;
    font-size: 2.8rem;
}

.profile-box__main .items {
    width: 50%;
    padding: 0 8rem;
}

.profile-box__main .items h3 {
    font-size: 2.4rem;
    margin-bottom: 2rem;
}

.profile-box__main .items p {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}

.profile-box__main .items p span {
    margin-right: 1rem;
}

.profile-box .more-box {
    text-align: center;
    padding-top: 4rem;
}

.profile-box .more-box a {
    max-width: 33rem;
}

.instagram-box {
    padding: 13rem 0;
    background-image: url("../images/instagram-bg.jpg");
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
}

.instagram-box .container {
    max-width: 101rem;
}

.instagram-box__main .d-flex {
    margin: 0 -1rem;
}

.instagram-box__main .items {
    width: 50%;
    padding: 0 1rem;
}

.instagram-box__main .items a {
    display: block;
    text-align: center;
    line-height: 14rem;
    color: #fff;
    background: #604624;
    font-size: 2.2rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.instagram-box__main .items:last-child a {
    background-image: -webkit-gradient( linear, left top, right top, from(#f4b75e), color-stop(#f79f55), color-stop(#f88653), color-stop(#f56c57), color-stop(#ef505f), color-stop(#e5416d), color-stop(#d7377b), color-stop(#c43288), color-stop(#ab3d96), color-stop(#8e46a0), color-stop(#6e4ea4), to(#4b52a2));
    background-image: -o-linear-gradient( left, #f4b75e, #f79f55, #f88653, #f56c57, #ef505f, #e5416d, #d7377b, #c43288, #ab3d96, #8e46a0, #6e4ea4, #4b52a2);
    background-image: linear-gradient( to right, #f4b75e, #f79f55, #f88653, #f56c57, #ef505f, #e5416d, #d7377b, #c43288, #ab3d96, #8e46a0, #6e4ea4, #4b52a2);
}

.gmap-box {
    padding: 12rem 0;
}

.gmap-box__main .text-box {
    width: calc(100% - 73rem);
    padding-right: 6rem;
}

.gmap-box__main .text-box .logo {
    text-align: center;
    margin-bottom: 5rem;
}

.gmap-box__main .text-box .logo a {
    display: inline-block;
    width: 32.3rem;
}

.gmap-box__main .gmap {
    width: 73rem;
}

.gmap-box__main .more-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 3rem;
}

.gmap-box__main .more-box a {
    width: 20.2rem;
    margin-right: 1.4rem;
}

.gmap-box__main .more-box a:last-child {
    width: 19.5rem;
    margin: 0;
}

.gmap-box__main p {
    font-size: 1.4rem;
}

.gmap-box__main i {
    color: #cfae66;
}

.gmap-box__main .calenda {
    margin-bottom: 1rem;
}

.gmap-box__client {
    padding-top: 6rem;
}

.gmap-box__client .d-flex {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.gmap-box__client .items {
    width: calc(100% / 2);
    max-width: 24rem;
    padding: 0 1rem;
}

.banner-page__main {
    height: 40rem;
    background-image: url("../images/banner-bg-recovery.jpg");
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}

.banner-page__main h1 {
    font-size: 3.8rem;
    margin-bottom: 1.5rem;
    color: #fff;
}

.banner-page__main p {
    margin-bottom: 0;
    color: #fff;
    font-size: 2rem;
    font-family: "Garamond Premr Pro", "sans-serif", serif;
    text-transform: uppercase;
}

.breadcrumb-box {
    padding: 2rem;
}

.breadcrumb-box .container {
    max-width: 103rem;
}

.breadcrumb-box ul li {
    display: inline;
}

.breadcrumb-box ul li+li:before {
    padding: 0 5px;
    content: ">";
}

.breadcrumb-box ul li a {
    text-decoration: underline;
}

.pageTemplate-box {
    padding: 4rem 0 8rem;
}

.pageTemplate-box .container {
    max-width: 103rem;
}

.pageTemplate-box .postthumbnail {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 12rem;
}

.pageTemplate-box .postthumbnail .thumb-box {
    width: 50rem;
}

.pageTemplate-box .postthumbnail .text-box {
    width: calc(100% - 50rem);
    padding-left: 5rem;
}

.pageTemplate-box .postthumbnail .text-box p {
    margin-bottom: 1.5rem;
}

.pageTemplate-box .postthumbnail .text-box p:last-child {
    margin-bottom: 0;
}

.pageTemplate-box .postthumbnail-list .items {
    margin-bottom: 8rem;
    position: relative;
    background: #f3f0ed;
    padding: 2rem;
}

.pageTemplate-box .postthumbnail-list .items::after {
    content: "";
    width: 6rem;
    height: 0;
    padding-top: 3.2rem;
    background-image: url("../images/arow-3.png");
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    bottom: -5.6rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.pageTemplate-box .postthumbnail-list .items:last-child {
    margin-bottom: 0;
}

.pageTemplate-box .postthumbnail-list .items:last-child::after {
    display: none;
}

.pageTemplate-box .postthumbnail-list .items .thumb-box {
    width: 35%;
}

.pageTemplate-box .postthumbnail-list .items .text-box {
    width: 65%;
    padding-right: 2rem;
}

.pageTemplate-box .postthumbnail-list .items .text-box h3 {
    font-size: 2.5rem;
    margin-bottom: 2rem;
    padding: 1rem 1.5rem;
}

.pageTemplate-box .postthumbnail-list .items .text-box p {
    margin-bottom: 0;
}

.pageTemplate-box .postthumbnail-list .items .last {
    padding: 2rem;
}

.pageTemplate-box .listtwo-post {
    margin-bottom: 6rem;
}

.pageTemplate-box .listtwo-post .d-flex {
    margin: 0 -1.5rem;
}

.pageTemplate-box .listtwo-post .items {
    width: 50%;
    padding: 0 1.5rem;
    margin-bottom: 3rem;
}

.pageTemplate-box .listtwo-post .items .thumb-box {
    margin-bottom: 2rem;
}

.pageTemplate-box .listtwo-post .items .thumb-box img {
    width: 100%;
}

.pageTemplate-box .listtwo-post .items p {
    margin-bottom: 0;
}

.pageTemplate-box .grid-box {
    margin-bottom: 6rem;
}

.pageTemplate-box .grid-box .d-flex {
    margin: 0 -1rem;
}

.pageTemplate-box .grid-box .items {
    width: calc(100% / 4);
    padding: 0 1rem;
    margin-bottom: 2rem;
}

.pageTemplate-box h5 {
    font-size: 1.7rem;
    padding-bottom: 4rem;
    margin-bottom: 4rem;
    border-bottom: 1px solid #ccbcaa;
}

.pageTemplate-box h4 {
    padding: 3rem 2rem;
    font-size: 1.9rem;
    border-top: 1px solid #ccbcaa;
    border-bottom: 1px solid #ccbcaa;
    margin-bottom: 4rem;
}

.pageTemplate-box h3 {
    background: #604624;
    padding: 2.5rem 2rem;
    font-size: 1.9rem;
    color: #fff;
    margin-bottom: 4rem;
}

.pageTemplate-box h2 {
    text-align: center;
    margin-bottom: 6rem;
    font-size: 2.2rem;
}

.pageTemplate-box .des {
    background: #f3f0ed;
    padding: 6rem;
    margin-bottom: 12rem;
}

.pageTemplate-box .des p {
    margin-bottom: 0;
}

.pageTemplate-box .des div:last-child {
    margin-bottom: 0;
}

.pageTemplate-box .tabels-box {
    margin-bottom: 4rem;
    border: 1px solid #ccbcaa;
}

.pageTemplate-box .tabels-box .items {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-bottom: 1px solid #ccbcaa;
}

.pageTemplate-box .tabels-box .items:last-child {
    border-bottom: none;
}

.pageTemplate-box .tabels-box .items .labels {
    background: #f3f0ed;
    padding: 1rem 2rem;
    font-weight: 700;
    width: 20.5rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.pageTemplate-box .tabels-box .items .info {
    padding: 1rem 2rem;
    width: calc(100% - 20.5rem);
}

.pageTemplate-box .tabels2 .items .labels {
    width: 50%;
    text-align: center;
}

.pageTemplate-box .tabels2 .items .info {
    width: 50%;
}

.pageTemplate-box .tabels2 .items .info span {
    display: block;
    border-bottom: 1px solid #ccbcaa;
    padding: 0 2rem 1rem;
    margin: 0 -2rem;
}

.pageTemplate-box .tabels2 .items .info span:last-child {
    border: none;
    padding: 1rem 2rem 0;
}

.pageTemplate-box ul {
    margin-bottom: 7rem;
}

.pageTemplate-box ul li {
    margin-bottom: 1rem;
    font-weight: 700;
    padding-left: 3rem;
    position: relative;
}

.pageTemplate-box ul li::after {
    content: "";
    width: 0.9rem;
    height: 0.9rem;
    background: #cfae66;
    position: absolute;
    left: 0;
    border-radius: 50%;
    top: 0.8rem;
}

.pageTemplate-box ol {
    margin-bottom: 4rem;
    list-style: decimal;
    padding-left: 2rem;
}

.pageTemplate-box .more-box {
    text-align: center;
}

.pageTemplate-box iframe {
    width: 100%;
}

.pageTemplate-box .slider-box {
    margin-bottom: 6rem;
    position: relative;
}

.pageTemplate-box .txt-red {
    color: #ff0000;
}

.pageTemplate-box .list-link a {
    margin: 0 3px;
}

.pageTemplate-box .txt-box {
    margin-bottom: 6rem;
}

.pageTemplate-box .txt-box p {
    margin-bottom: 2rem;
}

.pageTemplate-box .txt-box p:last-child {
    margin-bottom: 0;
}

.pageTemplate-box .img-full {
    margin-bottom: 6rem;
}

.pageTemplate-box .img-full img {
    width: 100%;
}

.staff-frm {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background: url("../images/staff_bg.jpg") right top no-repeat;
    background-size: cover;
    padding: 5rem;
    min-height: 45rem;
    max-width: 80rem;
    margin: 0 auto 6rem;
    justify-content: flex-end;
}

.staff-frm-txt {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
    font-size: 2.5rem;
    text-align: right;
    line-height: 1.4em;
}

.staff-frm-txt span {
    font-size: 1.8rem;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
}

.staff-frm-txt span:first-child {
    margin-right: 2.5rem;
}

.mg-0 {
    margin: 0 !important;
}

.footer {
    background: #f3f0ed;
}

.footer__main {
    padding: 9rem 0;
}

.footer__main h3 {
    font-size: 1.6rem;
    font-weight: 700;
    font-family: "を指定", "Yu Gothic", YuGothic, "sans-serif", serif;
    margin-bottom: 3rem;
}

.footer__main ul {
    padding-top: 5rem;
}

.footer__main ul.pd-0 {
    padding: 0;
}

.footer__main ul li {
    margin-bottom: 1.5rem;
}

.footer__main ul li a {
    padding-left: 2rem;
    font-size: 1.4rem;
    position: relative;
    transition: all 300ms ease-in-out;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
}

.footer__main ul li a::after {
    content: "\f0da";
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    color: #cfae66;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.footer__main ul li a:hover {
    opacity: 0.6;
}

.footer .copyright {
    background: #604624;
    text-align: center;
}

.footer .copyright p {
    margin-bottom: 0;
    font-size: 1.4rem;
    color: #fff;
    padding: 1.7rem 0;
}

.pageTemplate-features h2 {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    position: relative;
}

.pageTemplate-features h2 .labels {
    margin-top: 5rem;
    margin-right: 15rem;
    font-size: 2.4rem;
    font-family: "Garamond Premr Pro", "sans-serif", serif;
    position: relative;
    display: inline-block;
    color: #beae9f;
}

.pageTemplate-features h2 .labels span {
    display: block;
    width: 15rem;
    height: 15rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    border: 1px solid #beae9f;
    font-size: 11.4rem;
    line-height: 1;
    position: absolute;
    right: -12.2rem;
    bottom: -3.3rem;
}

.pageTemplate-box-trouble h5 {
    padding-bottom: 0;
    border-bottom: none;
    border-left: 5px solid #604624;
    padding-left: 1rem;
    font-size: 2rem;
}

p.lang {
    font-size: 1.8rem;
}

.red {
    color: #f11f1e;
}

.color-1 {
    color: #fffd02;
}

.color-2 {
    color: #04fc04;
}

.color-3 {
    color: #00e4ff;
}

.txt-hide {
    position: relative;
}

.txt-hide span {
    font-size: 2rem;
    font-family: "Garamond Premr Pro", "sans-serif", serif;
    text-transform: uppercase;
    color: #beae9f;
    display: block;
    text-align: center;
    padding-top: 1rem;
}

.head-page {
    text-align: center;
    margin-bottom: 6rem;
}

.head-page h2 {
    margin-bottom: 2rem !important;
}

.contact-form .des {
    text-align: center;
    margin-bottom: 80px;
}

.contact-form .des h3 {
    font-size: 24px;
    line-height: 1.33333333;
    color: #000;
}

.contact-form .form-group {
    margin-bottom: 35px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.contact-form .form-group .labels {
    width: 30%;
    padding-right: 20px;
    font-size: 18px;
    font-weight: 700;
}

.contact-form .form-group .input {
    width: 70%;
    line-height: 2em;
    font-weight: 500;
    font-size: 16px;
}

.contact-form .form-group.required {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.contact-form .form-group.required .labels::after {
    content: "※";
    font-size: 13px;
    color: #de1515;
    margin-left: 15px;
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form select,
.contact-form textarea {
    border: 1px solid #e0d9c8;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -webkit-appearance: none;
    box-shadow: none;
    width: 100%;
    height: 60px;
    padding: 0 20px;
    font-size: 16px;
}

textarea,
select,
.contact-form input:focus {
    outline: 0;
    outline: none;
}

.contact-form textarea {
    min-height: 309px;
    padding: 20px;
}

.contact-form .check-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.contact-form .check-box .container-check {
    margin-right: 30px;
}

.contact-form .inquiry {
    overflow: hidden;
    border: 1px solid #e0d9c8;
    position: relative;
    word-break: break-all;
}

.contact-form .inquiry::after {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    content: "\f0dc";
    font-family: "Font Awesome 5 Pro";
    color: rgba(129, 109, 60, 0.9);
    font-size: 18px;
}

.contact-form .inquiry select {
    padding: 0 20px;
    width: 100%;
    height: 60px;
    border: 0;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    background: transparent;
    line-height: 2em;
    font-weight: 500;
    font-size: 16px;
    margin: 0;
}

.contact-form .cf-box {
    display: none;
}

.contact-form .more-box {
    text-align: center;
}

.contact-box .cfb {
    display: none;
}

.contact-form .policy {
    margin-bottom: 50px;
}

.contact-form .policy p {
    font-size: 16px;
}

.contact-form .more {
    cursor: pointer;
}

.idx_btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 300px;
    height: 70px;
    margin: 0 auto;
    background-color: #323232;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
    font-size: 16px;
    letter-spacing: 0.1em;
    color: #fff;
    transition: all 0.3s ease;
}

.idx_btn:hover {
    background-color: #ba9e5d;
}

.idx_btn::after {
    content: "";
    width: 8px;
    height: 13px;
    background: url(../images/ico_arrow_white.png) center no-repeat;
    background-size: cover;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

.loader_wrap {
    width: 100vw;
    height: 100vh;
    z-index: 9999;
    background: white;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
}

.loader {
    border: 5px solid #f3f3f3;
    border-top: 5px solid #555;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    -webkit-animation: spin 2s linear infinite;
    animation: spin 2s linear infinite;
}

#result input.error {
    border-color: #e41919;
}

#result div.error {
    margin-top: 20px;
    padding: 13px 20px;
    text-align: center;
    background: rgba(228, 25, 25, 0.75);
    color: #fff;
}

#result div.success {
    margin-top: 20px;
    padding: 13px 20px;
    text-align: center;
    background: rgba(50, 178, 95, 0.75);
    color: #fff;
}

.sm-input {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.sm-input .more {
    margin: 0 10px;
}

.more-back {
    background: #ba9e5d;
}

.thank-box {
    text-align: center;
}

.thank-box p {
    margin-bottom: 30px;
    line-height: 2;
    font-weight: 500;
}

.thank-box p a {
    color: #ba9e5d;
    text-decoration: underline;
}

.thank-box .more-box {
    padding-top: 30px;
}

.thank-box .more-box a {
    background-color: #ba9e5d;
    border: 2px solid #ba9e5d;
    color: #fff;
}

.thank-box .more-box a:hover {
    background-color: #fff;
    color: #000;
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.txt-underline {
    text-decoration: underline;
}

.news-box {
    margin: 6rem 0;
    padding: 3rem 0;
    position: relative;
}

.news-box::after {
    content: "";
    width: 65%;
    background: #d9cfc4;
    height: 9rem;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    -webkit-clip-path: polygon(0 1%, 97% 0, 100% 100%, 0% 100%);
    clip-path: polygon(0 1%, 97% 0, 100% 100%, 0% 100%);
}

.news-box__main .items a {
    display: block;
    color: #fff;
}

.news-box__main .items main {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    align-items: center;
}

.news-box__main .items main h3 {
    color: #fff;
    margin-right: 2rem;
}

.news-box__main .items main time {
    margin-right: 2rem;
}

.news-box__main .items main p {
    text-decoration: underline;
    margin-bottom: 0;
}

.pageTemplate-box .anc-link {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    list-style: none;
}

.pageTemplate-box .anc-link li {
    width: calc(33% - 20px);
    padding: 0 10px 20px;
}

.pageTemplate-box .anc-link li::after {
    display: none;
}

.pageTemplate-box .anc-link.access-anc-link a {
    display: block;
}

.anc-img img {
    margin-bottom: 2rem;
}

@media (max-width: 991px) {
    .footer__main {
        padding: 4rem 0;
    }
    .footer__main .items {
        width: 100%;
        margin-bottom: 3ren;
    }
    .footer__main h3 {
        margin-bottom: 2rem;
    }
    .footer__main ul {
        padding-top: 0;
    }
    .footer__main ul.pd-0 {
        padding: 0;
    }
    .footer__main ul li {
        margin-bottom: 1rem;
    }
    .footer .copyright p {
        font-size: 1.2rem;
    }
}


/* layout - Responsive .
========================================================================== */

.sp {
    display: none;
}

@media screen and (max-width: 1200px) and (min-width: 992px) {
    html {
        font-size: 9px;
    }
}

@media screen and (max-width: 1050px) and (min-width: 992px) {
    html {
        font-size: 8px;
    }
}

@media (max-width: 991px) {
    html {
        font-size: 2.666666vw;
    }
    body {
        font-size: 1.4rem;
        padding-top: 6rem;
        padding-bottom: 6.5rem;
    }
    .pc {
        display: none;
    }
    .sp {
        display: block;
    }
    h2 {
        font-size: 2.4rem;
    }
    h3 {
        font-size: 2.4rem;
    }
    .container {
        padding: 0 2.6rem;
    }
    .banner__main {
        position: relative;
    }
    .banner__main .txt {
        width: 100%;
        position: absolute;
        top: auto;
        bottom: 2.5rem;
        padding: 0 3.5rem;
        right: 0;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    }
    .banner__main h2 {
        font-size: 1.9rem;
        line-height: 4.5rem;
        display: flex;
        justify-content: flex-end;
        margin-right: -2rem;
    }
    .banner__main h3 {
        font-size: 1.2rem;
        margin-bottom: 3rem;
        display: flex;
        justify-content: flex-end;
    }
    .banner__main .txt .more-box {
        padding-top: 0;
    }
    .banner__main .cover_btn {
        width: 82%!important;
        text-align: left;
        line-height: 1.8rem;
        font-size: 15px!important;
        padding-left: 5rem;
        padding-top: 2rem;
        padding-bottom: 2rem;
        margin: 2rem auto 0;
        display: block;
        /* position: absolute; */
        /* bottom: 0; */
        /* left: 0; */
        /* right: 0; */
    }
    .banner__main_wr {
        width: 100%;
        left: 0;
        right: 0;
        margin: auto;
        top: auto;
        transform: unset;
        bottom: -10%;
    }
    
    .banner__main__tit h1 img {
        margin-left: auto;
        width: 72%;
        padding-right: 15px;
    }
    
    .banner__main__tit02 {margin: 2rem auto 0;width: 60%;}
    
    .banner__main__tit02 img {
        margin: auto;
    }
    
    a.banner__main__img {
        margin: 2rem auto 0;
        text-align: center;
        max-width: 80%;
    }
    
    a.banner__main__img a img {margin: auto;text-align: center;}
    
    a.banner__main__img img {
        margin: auto;
    }
    .banner__main .cover_btn i {
        position: absolute;
        top: 50%;
        left: 2rem;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        font-size: 1.7rem;
    }
    .head-box {
        margin-bottom: 3rem;
    }
    .head-box p {
        font-size: 1.5rem;
    }
    .head-box span {
        font-size: 1.4rem;
    }
    .case-box {
        padding: 5rem 0;
    }
    .case-box__main {
        text-align: left;
    }
    .case-box__main p {
        margin-bottom: 2.5rem;
    }
    .case-box__main .more-box {
        padding-top: 3rem;
    }
    .feature-box {
        padding: 5rem 0;
        background-image: url("../images/feature-bg-sp.jpg");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: left top;
        position: relative;
    }
    .feature-box::after {
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        background: #fff;
        opacity: 0.5;
        position: absolute;
        top: 0;
        left: 0;
    }
    .feature-box__main {
        width: 100%;
        padding: 0;
        position: relative;
        z-index: 99;
    }
    .feature-box__main ul li {
        line-height: 22px;
        font-size: 1.7rem;
        min-height: 6rem;
        display: flex;
        align-items: center;
    }
    .feature-box__main .more-box a {
        font-size: 2rem;
    }
    .retreatment-box {
        padding: 5rem 0;
        background-image: url("../images/retreatment-bg-sp.jpg");
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: left top;
    }
    .retreatment-box .head-box {
        margin-left: -2rem;
        margin-right: -2rem;
    }
    .retreatment-box .head-box h2 {
        font-size: 2.4rem;
    }
    .retreatment-box__main .main {
        width: 100%;
    }
    .retreatment-box__main .main p {
        margin-bottom: 2rem;
    }
    .retreatment-box__main .main .more-box {
        text-align: center;
    }
    .featureList-box {
        padding: 5rem 0;
    }
    .featureList-box__main .list-box {
        margin-bottom: 4rem;
    }
    .featureList-box__main .list-box .thumb-box {
        width: 100%;
        margin-bottom: 8rem;
    }
    .featureList-box__main .list-box .thumb-box::after {
        right: -2rem;
        bottom: -2rem;
    }
    .featureList-box__main .list-box .text-box {
        width: 100%;
        padding: 0;
        padding-bottom: 2.5rem;
        padding-top: 0;
    }
    .featureList-box__main .list-box .text-box .main {
        max-width: 100%;
    }
    .featureList-box__main .list-box .text-box .main .head {
        display: flex;
        align-items: center;
    }
    .featureList-box__main .list-box .text-box .labels {
        margin-bottom: 4rem;
        font-size: 1.2rem;
        display: block;
        width: 10rem;
    }
    .featureList-box__main .list-box .text-box .labels span {
        width: 7.5rem;
        height: 7.5rem;
        font-size: 5.6rem;
        right: 0;
        bottom: -2rem;
    }
    .featureList-box__main .list-box .text-box h3 {
        padding-left: 1.5rem;
        width: calc(100% - 10rem);
        font-size: 1.8rem;
    }
    .featureList-box__main .list-box .text-box .tt {
        font-size: 8.4rem;
        line-height: 6.8rem;
    }
    .featureList-box__main .list-box .text-box .more-box a {
        font-size: 1.6rem;
    }
    .featureList-box__main .list-box:nth-child(even) .text-box .main {
        margin-left: 0;
    }
    .caseList-box {
        padding: 5rem 0;
    }
    .caseList-box .des-box {
        text-align: left;
        margin-bottom: 2.3rem;
        padding: 0 3rem;
    }
    .caseList-box__main {
        padding: 0 3rem;
    }
    .caseList-box__main .list-box .items {
        padding: 0;
    }
    .caseList-box__main .list-box .items h3 {
        font-size: 1.6rem;
    }
    .caseList-box__main .list-box .slick-list {
        margin-left: 0;
    }
    .caseList-box__main .list-box .slick-dots {
        display: none;
    }
    .caseList-box__main .list-box .slick-arrow {
        display: none;
    }
    .caseList-box__main .more-box {
        padding-top: 2.5rem;
    }
    .caseList-box__main .more-box a {
        width: 30rem;
    }
    .cunseling-box {
        padding: 5rem 0;
    }
    .cunseling-box .container-fluid {
        padding: 0 3rem;
    }
    .cunseling-box__main {
        text-align: left;
    }
    .cunseling-box__main p {
        margin-bottom: 2rem;
    }
    .cunseling-box__main .thumb-box {
        margin: 0 -3rem;
    }
    .cunseling-box__main .more-group {
        padding-top: 6rem;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .cunseling-box__main .more-group a {
        max-width: 30rem;
        margin: 0 0 1rem;
    }
    .about-box {
        padding: 5rem 0;
    }
    .about-box__main .thumb-box {
        width: 100%;
        margin: 0 0 4rem;
    }
    .about-box__main .thumb-box figure {
        margin-bottom: 1rem;
        width: 100%;
        padding: 0;
    }
    .about-box__main .blog-box {
        width: 100%;
        padding-left: 0;
    }
    .about-box__main .blog-box .tt {
        text-align: center;
        margin-bottom: 4rem;
        font-size: 3rem;
        font-family: "Garamond Premr Pro", "sans-serif", serif;
    }
    .about-box__main .blog-box .list .img {
        width: 100%;
        margin-bottom: 2rem;
    }
    .about-box__main .blog-box .list .txt {
        width: 100%;
        padding-left: 0;
    }
    .about-box__main .blog-box .list h3 {
        font-size: 1.6rem;
        margin-bottom: 1rem;
    }
    .about-box .more-group {
        padding-top: 2rem;
    }
    .about-box .more-group a {
        max-width: 30rem;
        margin: 0 0rem 1rem;
    }
    .greeting-box .container {
        position: static;
        top: 0;
        left: 0;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
    .greeting-box .txt {
        top: 12rem;
        left: auto;
        right: 3rem;
    }
    .greeting-box .txt-site {
        font-size: 1rem;
        margin-bottom: -1rem;
    }
    .greeting-box .txt h3 {
        font-size: 2.5rem;
    }
    .greeting-box .txt h3 span {
        font-size: 1rem;
    }
    .greeting-box .txt-name {
        font-size: 1.4rem;
    }
    .greeting-box__main {
        padding-top: 4rem;
    }
    .greeting-box__main .main {
        width: 100%;
        padding-left: 0;
    }
    .greeting-box__main .head-box {
        text-align: center;
    }
    .greeting-box__main h3 {
        margin-bottom: 2.5rem;
        font-size: 3.2rem;
    }
    .profile-box {
        padding: 5rem 0;
    }
    .profile-box h2 {
        font-size: 2.2rem;
    }
    .profile-box__main .items {
        width: 100%;
        padding: 0 0 2rem;
        margin-bottom: 2rem;
        border-bottom: 1px solid #604624;
    }
    .profile-box__main .items:last-child {
        margin-bottom: 0;
        border: none;
    }
    .profile-box__main .items h3 {
        font-size: 2rem;
        margin-bottom: 1rem;
    }
    .profile-box__main .items p {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
    .profile-box__main .items p span {
        white-space: nowrap;
    }
    .profile-box .more-box {
        padding-top: 2rem;
    }
    .profile-box .more-box a {
        max-width: 30rem;
    }
    .instagram-box {
        padding: 5rem 0;
    }
    .instagram-box__main .d-flex {
        margin: 0;
    }
    .instagram-box__main .items {
        width: 100%;
        padding: 0;
        margin-bottom: 1rem;
    }
    .instagram-box__main .items a {
        line-height: 9rem;
    }
    .gmap-box {
        padding: 5rem 0;
    }
    .gmap-box__main {
        margin: 0 -3rem;
    }
    .gmap-box__main .text-box {
        width: 100%;
        padding: 0 3rem;
    }
    .gmap-box__main .text-box .logo {
        margin-bottom: 4rem;
    }
    .gmap-box__main .text-box .logo a {
        width: 26rem;
    }
    .gmap-box__main .gmap {
        width: 100%;
    }
    .gmap-box__main .gmap iframe {
        width: 100%;
        display: block;
        height: 27.5rem;
    }
    .gmap-box__main .more-box {
        display: block;
        margin-bottom: 3rem;
    }
    .gmap-box__main .more-box a {
        display: block;
        width: 20.2rem;
        margin: 0 auto 2rem;
    }
    .gmap-box__main .more-box a:last-child {
        width: 26rem;
        margin: 0 auto;
    }
    .gmap-box__main p {
        font-size: 1.4rem;
        text-align: center;
    }
    .gmap-box__client {
        padding-top: 3rem;
    }
    .gmap-box__client .d-flex {
        margin: 0 -0.5rem;
    }
    .gmap-box__client .items {
        width: calc(100% / 2);
        max-width: none;
        padding: 0 0.5rem;
        margin-bottom: 1rem;
    }
    .scrollTop {
        display: none;
    }
    .banner-page__main {
        height: 25rem;
    }
    .banner-page__main h1 {
        font-size: 2.5rem;
    }
    .banner-page__main p {
        font-size: 1.6rem;
    }
    .breadcrumb-box {
        padding: 2rem 0;
    }
    .pageTemplate-box {
        padding: 5rem 0;
    }
    .pageTemplate-box .postthumbnail {
        margin-bottom: 6rem;
    }
    .pageTemplate-box .postthumbnail .thumb-box {
        width: 100%;
        margin-bottom: 2rem;
    }
    .pageTemplate-box .postthumbnail .text-box {
        width: 100%;
        padding-left: 0;
    }
    .pageTemplate-box .postthumbnail .text-box p {
        margin-bottom: 0;
    }
    .pageTemplate-box .postthumbnail-list .items {
        margin-bottom: 6rem;
    }
    .pageTemplate-box .postthumbnail-list .items::after {
        bottom: -5.5rem;
    }
    .pageTemplate-box .postthumbnail-list .items .thumb-box {
        width: 100%;
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1;
        margin-bottom: 2rem;
    }
    .pageTemplate-box .postthumbnail-list .items .text-box {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
        width: 100%;
        padding: 1.5rem 0;
    }
    .pageTemplate-box .postthumbnail-list .items .text-box h3 {
        font-size: 2rem;
    }
    .pageTemplate-box .postthumbnail-list .items .last {
        -webkit-box-ordinal-group: 4;
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3;
        padding: 2rem 0;
    }
    .pageTemplate-box .listtwo-post {
        margin-bottom: 4rem;
    }
    .pageTemplate-box .listtwo-post .d-flex {
        margin: 0;
    }
    .pageTemplate-box .listtwo-post .items {
        width: 100%;
        padding: 0;
        margin-bottom: 4rem;
    }
    .pageTemplate-box .grid-box {
        margin-bottom: 4rem;
    }
    .pageTemplate-box .grid-box .items {
        width: calc(100% / 2);
    }
    .pageTemplate-box h5 {
        padding-bottom: 2rem;
        margin-bottom: 2rem;
    }
    .pageTemplate-box h4 {
        margin-bottom: 2rem;
        padding: 1.5rem;
    }
    .pageTemplate-box h3 {
        padding: 1.5rem;
        margin-bottom: 2rem;
    }
    .pageTemplate-box h2 {
        margin-bottom: 4rem;
    }
    .pageTemplate-box .des {
        padding: 2rem;
        margin-bottom: 6rem;
    }
    .pageTemplate-box .tabels-box {
        margin-bottom: 4rem;
        border: 1px solid #ccbcaa;
    }
    .pageTemplate-box .tabels-box .items .labels {
        width: 100%;
    }
    .pageTemplate-box .tabels-box .items .info {
        width: 100%;
    }
    .pageTemplate-box ul {
        margin-bottom: 4rem;
    }
    .pageTemplate-box .img-full {
        margin-bottom: 4rem;
    }
    .staff-frm {
        background-size: 100% auto;
        padding: 2rem;
        min-height: 21rem;
    }
    .staff-frm-txt {
        font-size: 1.5rem;
    }
    .staff-frm-txt span {
        font-size: 1.2rem;
    }
    .pageTemplate-features h2 {
        display: block;
    }
    .pageTemplate-features h2 .labels {
        text-align: center;
        margin-bottom: 4rem;
        font-size: 1.2rem;
        display: block;
        width: 100%;
        margin-left: -3.5rem;
    }
    .pageTemplate-features h2 .labels span {
        width: 7.5rem;
        height: 7.5rem;
        font-size: 5.6rem;
        right: 8rem;
        bottom: -2rem;
    }
    .pageTemplate-box-trouble h5 {
        padding-bottom: 0;
        font-size: 1.7rem;
    }
    .txt-hide span {
        font-size: 1.8rem;
    }
    .contact-form .form-group .labels {
        width: 100%;
        padding: 0;
    }
    .contact-form .form-group .input {
        width: 100%;
    }
    .contact-form textarea {
        min-height: 180px;
    }
    .contact-form .more-btn {
        margin-bottom: 20px;
    }
    .news-box {
        background: #d9cfc4;
    }
    .news-box::after {
        display: none;
    }
    .news-box__main .items main {
        display: block;
    }
    .news-box__main .items main h3 {
        margin-right: 0;
        margin-bottom: 1rem;
    }
    .news-box__main .items main time {
        margin-right: 0;
    }
    .banner-boot {
        position: fixed;
        width: 100%;
        bottom: 0;
        left: 0;
        z-index: 9999;
    }
    .banner-boot .items {
        width: 50%;
        background: #402f18;
    }
    .banner-boot .items:last-child {
        background: #cfae66;
    }
    .banner-boot .items a {
        display: block;
        text-align: center;
        line-height: 6.5rem;
        font-size: 1.6rem;
        color: #fff;
    }
    .banner-boot .tel a {
        line-height: 1.5;
        font-size: 1.2rem;
        padding-top: 1rem;
    }
    .banner-boot .tel a span {
        font-size: 2rem;
    }
    .banner-boot .tel a span.num {
        display: block;
        width: 100%;
    }
    .banner-boot .tel a span.sm {
        font-size: 1.2rem;
    }
    .pageTemplate-box .anc-link li {
        width: 100%;
        padding: 0;
        margin-bottom: 1rem;
    }
}


/* ipad Portrait */


/* ipad Landscape */


/* 08/17 */

.add_inner {
    background: #fff;
    padding: 20px 30px 13px;
}

h5.add_tit {
    font-size: 12px;
    margin: 0 0 5px;
    font-weight: 700;
}

.add_txt {
    font-size: 12px;
    line-height: 18px;
    margin-bottom: 10px!important;
}

.add_inner2 {
    max-width: 800px;
    width: 100%;
    margin: 40px auto 0;
    text-align: left;
}

.blog-page__content .add_inner2 {
    margin: 40px auto;
    display: none;
}

.case-02-3.add_inner2 {
    margin: 40px auto;
    display: block;
    background: #f3f0ed;
}

@media only screen and (max-width: 992px) {
    .add_inner {
        padding: 20px 20px 13px;
    }
    h5.add_tit {
        font-size: 12px;
        margin: 0 0 5px;
    }
    .add_txt {
        font-size: 12px;
        line-height: 18px;
    }
    .blog-page__content .add_inner2 {
        margin: 40px auto;
    }
}

/* 08/21 */

.slider_txt {
    margin-top: 10rem;
    margin-bottom: 0!important;
}
.more-box_btn{
    margin-bottom: 10rem!important;
}
.case_cta {
    padding: 4rem;
    background: #333;
    text-align: center;
    margin-bottom: 10rem!important;
}

.case_cta p {
    color: #fff;
    font-size: 2.5rem;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.case_cta p span {
    color: #cfae66;
}
@media only screen and (max-width: 992px) {
    .slider_txt {
        margin-top: 3rem;
        margin-bottom: 0!important;
    }
    .case_cta {
        padding: 2.5rem;
        margin-bottom: 5rem!important;
    }
    
    .case_cta p {
        font-size: 1.4rem;
    }
    .head-box2 p {
        font-size: 2.1rem;
    }
}
.case-box__main2{
    overflow-x: hidden;
}
.add_rec h5.add_tit {
    padding: 0;
    border: 0;
}

.add_inner.add_inner2.add_rec {
    margin-bottom: -50px;
    max-width: 650px;
}
@media only screen and (max-width: 992px) {
    .add_inner.add_inner2.add_rec {
        margin-bottom: 0px;
    }
}

/* 2025/06/24 */

html, body {
    overflow-x: clip; /* hiddenより確実な切り捨て */
    position: relative;
  }
  

/* 2025/08/27 */

.staff-frm-txt span:first-child {
    margin-right: 0;
}

.des.des_add ul {
    margin: 0;
}
@media (max-width: 991px) {
    .staff-frm-txt span {
        font-size: 1.1rem;
    }
    .pageTemplate-box h2 {
        font-size: 2rem;
    }
}

.greeting-box .txt {
    left: 6%;
}

@media (max-width: 991px) {
    .greeting-box .txt {
        left: auto;
    }
}