/*元　#003143 ⇨ #82c0cf ⇨ #b9a39a*/

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

audio, canvas, video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden], template {
    display: none
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

a {
    background: 0 0
}

a:focus {
    outline: thin dotted
}

a:active, a:hover {
    outline: 0
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b, strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0
}

mark {
    background: #ff0;
    color: #000
}

code, kbd, pre, samp {
    font-family: monospace, serif;
    font-size: 1em
}

pre {
    white-space: pre-wrap
}

q {
    quotes: "\201C" "\201D" "\2018" "\2019"
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 0
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    border: 0;
    padding: 0
}

button, input, select, textarea {
    font-family: inherit;
    font-size: 100%;
    margin: 0
}

button, input {
    line-height: normal
}

button, select {
    text-transform: none
}

button, html input[type=button], input[type=reset], input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled], html input[disabled] {
    cursor: default
}

input[type=checkbox], input[type=radio] {
    box-sizing: border-box;
    padding: 0
}

input[type=search] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto;
    vertical-align: top
}

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

@charset "UTF-8";
* , * :after, * :before {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility
}

.clear {
    * zoom: 1;
}

.clear:before {
    content: ' ';
    display: block
}

.clear:after {
    content: ' ';
    display: block;
    clear: both
}

img {
    max-width: 100%;
    vertical-align: bottom
}

img[src$=".svg"] {
    width: 100%
}

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

a:hover {
    outline: 0
}

a:focus {
    outline: 0
}

a:active {
    outline: 0
}

input:focus {
    outline: 0
}

h1, h2, h3, h4, h5, p, table, ul, ol {
    margin: 0;
    padding: 0
}

.easing {
    -webkit-transition: .4s cubic-bezier(.81, .56, .85, .59);
    -moz-transition: .4s cubic-bezier(.81, .56, .85, .59);
    transition: .4s cubic-bezier(.81, .56, .85, .59)
}

@-webkit-keyframes opc {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes opc {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes fade {
    0% {
        -webkit-transform: translateY(10px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        opacity: 1
    }
}

@keyframes fade {
    0% {
        transform: translateY(10px);
        opacity: 0
    }

    100% {
        transform: translateY(0);
        opacity: 1
    }
}

@-webkit-keyframes marquee {
    0% {
        height: 0;
        background: #000
    }

    40% {
        height: 70px;
        -webkit-transform: translateY(0)
    }

    100% {
        height: 70px;
        background: #000;
        -webkit-transform: translateY(70px)
    }
}

@keyframes marquee {
    0% {
        height: 0;
        background: #000
    }

    40% {
        height: 70px;
        transform: translateY(0);
        @media all and (-ms-high-contrast:none) {
            transform:translateY(-100px)
        }
}

    100% {
        height: 70px;
        background: #000;
        transform: translateY(70px);
        @media all and (-ms-high-contrast:none) {
            transform:translateY(-30px)
        }
}
}

html {
    font-size: 62.5%
}

@media screen and (max-width:667px) {
    html {
        font-size: 53.5%
    }
}

body {
    font: 400 1.6rem / 1.8 cormorant-garamond, vdl-v7mincho, sans-serif;
    color: #000;
    letter-spacing: .1rem
}

h1, h2, h3, h4, h5, .bold, #header #nav ul li a, .intro > div:first-of-type p:first-of-type {
    font: 500 1.6rem / 1.8 vdl-v7mincho, cormorant-garamond, sans-serif
}

#loading {
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100vh;
    background: #b9a39a;
    -webkit-transition: .5s ease;
    transition: .5s ease;
    z-index: 10000
}

#loading img {
    display: block;
    width: 300px;
    height: auto;
    margin: 0 0 40px
}

#loading #progress {
    width: 200px;
    height: 1px;
    margin: 0 auto
}

.wrapper {
    min-width: 1000px;
    width: 100%;
    margin: 0 auto;
    position: relative
}

@media screen and (max-width:768px) {
    .wrapper {
        min-width: 0
    }
}

@media all and (-ms-high-contrast:none) {
    .wrapper {
        overflow: hidden
    }
}

@supports (-ms-ime-align:auto) {
    .wrapper {
        overflow: hidden
    }
}

#header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 50px 50px 0;
    line-height: 1;
    z-index: 999;
    color: #fff;
    text-decoration: none;
    opacity: 0;
    -webkit-transition: .8s cubic-bezier(.41, .14, .83, .58) 1.5s; /*元：4.5s→1.5s*/
    transition: .8s cubic-bezier(.41, .14, .83, .58) 1.5s; /*元：4.5s→1.5s*/
    will-change: opacity
}

@media screen and (max-width:768px) {
    #header {
        position: fixed;
        padding: 10px
    }
}

#header .inner {
    position: relative;
    width: 100%;
    height: 64px
}

#header .logo {
    width: 300px;
    height: auto;
    margin: 0 auto;
}

@media screen and (max-width:768px) {
    #header .logo {
        position: absolute;
        top: 5px;
        left: 5px;
        width: 200px;
        z-index: 1000
    }
}

#header .logo a {
    transition: .25s cubic-bezier(.41, .14, .83, .58);
    -webkit-transition: .25s cubic-bezier(.41, .14, .83, .58)
}

#header .logo a:hover {
    opacity: .7
}

#header .logo .logoColor {
    fill: #b9a39a;
}

#header #nav {
    position: absolute;
    top: 22px;
    right: 0;
    display: flex;
    align-items: center;
    vertical-align: middle;
    -webkit-transition: .55s cubic-bezier(.4, 0, .6, 1);
    transition: .55s cubic-bezier(.4, 0, .6, 1)
}

@media screen and (max-width:3768px) {
    #header #nav {
        position: fixed;
        flex-flow: column wrap;
        justify-content: center;
        background: #b9a39a;
        top: 0;
        right: -100vw;
        width: 100%;
        height: 100%;
        text-align: center;
        padding: 10px 0;
        z-index: 10;
        opacity: 0
    }
}

#header #nav ul {
    display: flex;
    list-style: none;
    margin: 0
}

@media screen and (max-width:3768px) {
    #header #nav ul {
        flex-flow: column wrap;
        margin: -100px auto 0
    }
}

#header #nav ul li {
    position: relative;
    margin: 0 25px 0 0;
    line-height: 10px
}

@media screen and (max-width:3768px) {
    #header #nav ul li {
        display: block;
        margin: 2px auto; /*元15px auto*/
        opacity: 0
    }

    #header #nav ul li:nth-of-type(1) {
        transition: .5s cubic-bezier(.41, .14, .83, .58) .2s;
        -webkit-transition: .5s cubic-bezier(.41, .14, .83, .58) .2s
    }

    #header #nav ul li:nth-of-type(2) {
        transition: .5s cubic-bezier(.41, .14, .83, .58) .4s;
        -webkit-transition: .5s cubic-bezier(.41, .14, .83, .58) .4s
    }

    #header #nav ul li:nth-of-type(3) {
        transition: .5s cubic-bezier(.41, .14, .83, .58) .6s;
        -webkit-transition: .5s cubic-bezier(.41, .14, .83, .58) .6s
    }

    #header #nav ul li:nth-of-type(4) {
        transition: .5s cubic-bezier(.41, .14, .83, .58) .8s;
        -webkit-transition: .5s cubic-bezier(.41, .14, .83, .58) .8s
    }

    #header #nav ul li:nth-of-type(5) {
        transition: .5s cubic-bezier(.41, .14, .83, .58) .10s;
        -webkit-transition: .5s cubic-bezier(.41, .14, .83, .58) .10s
    }

    #header #nav ul li:nth-of-type(6) {
        transition: .5s cubic-bezier(.41, .14, .83, .58) .12s;
        -webkit-transition: .5s cubic-bezier(.41, .14, .83, .58) .12s
    }

}

#header #nav ul li a {
    color: #000; /*#b9a39a*/
    line-height: 1.2
}

#header #nav ul li a:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: -5px;
    width: 0;
    height: 1px;
    background: #b9a39a;
    transition: .35s cubic-bezier(.41, .14, .83, .58);
    -webkit-transition: .35s cubic-bezier(.41, .14, .83, .58)
}

#header #nav ul li a:hover:after {
    width: 100%
}

@media screen and (max-width:3768px) {
    #header #nav ul li a {
        width: 100%;
        display: block;
        padding: 10px 0;
        color: #fff;
        font-size: 2rem
    }
}

#header #nav aside {
    display: flex;
    justify-content: space-between;
    width: 56px;
    height: 20px
}

@media screen and (max-width:3768px) {
    #header #nav aside {
        width: 85px;
        margin: 30px auto 0;
        opacity: 0;
        transition: .5s cubic-bezier(.41, .14, .83, .58) 1.2s;
        -webkit-transition: .5s cubic-bezier(.41, .14, .83, .58) 1.2s
    }
}

#header #nav aside a {
    display: block;
    width: 20px;
    height: auto;
    transition: .25s cubic-bezier(.41, .14, .83, .58);
    -webkit-transition: .25s cubic-bezier(.41, .14, .83, .58)
}

@media screen and (max-width:3768px) {
    #header #nav aside a {
        width: 30px
    }
}

#header #nav aside a:hover {
    opacity: .7
}

#header #nav aside a .fbColor {
    fill: #000; /*#b9a39a*/
}

@media screen and (max-width:3768px) {
    #header #nav aside a .fbColor {
        fill: #fff
    }
}

#header #nav aside a .twColor {
    fill: #000; /*#b9a39a*/
}

@media screen and (max-width:3768px) {
    #header #nav aside a .twColor {
        fill: #fff
    }
}

@media screen and (max-width:3768px) {
    #spHead {
        position: relative;
        width: 100%;
        height: 56px;
        z-index: 999
    }
}

#toggle {
    display: block;
    position: absolute;
    top: 5px;
    right: 5px;
    width: 145px;
    height: 45px;
    cursor: pointer;
    z-index: 999;
    background: #b9a39a;
    font-size: 1.5em;
    text-align: center;
    font-weight: bold;
    padding: 10px
}

@media screen and (max-width:768px) {
    #toggle {
        display: block;
        width: 85px;
        height: 35px;
        font-size: 1.2em;
        text-align: center;
        z-index: 999
    }
}

#toggle div {
    position: relative
}

#toggle div > span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    background: #fff;
    left: 0;
    transform-origin: center
}

#toggle div > span:nth-child(1) {
    top: 0;
    -webkit-transition: .8s .8s cubic-bezier(0, 1, 0, 1);
    transition: .8s .8s cubic-bezier(0, 1, 0, 1)
}

#toggle div > span:nth-child(1) > span {
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-transition: .8s cubic-bezier(0, .4, .6, 1);
    transition: .8s cubic-bezier(0, .4, .6, 1);
    transform-origin: center;
    top: 0;
    left: 0
}

#toggle div > span:nth-child(2) {
    top: 11px;
    -webkit-transition: .8s cubic-bezier(0, 1, 0, 1);
    transition: .8s cubic-bezier(0, 1, 0, 1)
}

#toggle div > span:nth-child(3) {
    top: 22px;
    -webkit-transition: .8s .8s cubic-bezier(0, 1, 0, 1);
    transition: .8s .8s cubic-bezier(0, 1, 0, 1)
}

#toggle div > span:nth-child(3) > span {
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-transition: .8s cubic-bezier(0, .4, .6, 1);
    transition: .8s cubic-bezier(0, .4, .6, 1);
    transform-origin: center;
    top: 0;
    left: 0
}

.open #toggle div > span {
    -webkit-transition: .8s 0s cubic-bezier(0, 1, 0, 1);
    transition: .8s 0s cubic-bezier(0, 1, 0, 1)
}

.open #toggle div > span:nth-child(1) {
    top: 11px;
    background: rgba(0, 49, 67, 0)
}

.open #toggle div > span:nth-child(1) > span {
    -webkit-transition: .8s .4s cubic-bezier(0, .4, .6, 1);
    transition: .8s .4s cubic-bezier(0, .4, .6, 1);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.open #toggle div > span:nth-child(2) {
    width: 0;
    left: 50%
}

.open #toggle div > span:nth-child(3) {
    top: 11px;
    background: rgba(0, 49, 67, 0)
}

.open #toggle div > span:nth-child(3) > span {
    -webkit-transition: .8s .4s cubic-bezier(0, .4, .6, 1);
    transition: .8s .4s cubic-bezier(0, .4, .6, 1);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.open #nav {
    -webkit-transform: translateX(-100vw);
    transform: translateX(-100vw);
    opacity: 1 !important
}

.open #nav ul li {
    opacity: 1 !important
}

.open aside {
    opacity: 1 !important
}

#mv {
    position: relative;
    display: flex;
    width: 100%;
    height: 100vh;
    overflow: hidden
}

@media screen and (max-width:768px) {
    #mv {
        flex-flow: column wrap;
        overflow: visible;
        height: auto
    }
}

#mv #scene {
    width: 67.1785%;
    height: 100%;
    overflow: hidden
}

@media screen and (max-width:768px) {
    #mv #scene {
        width: 100%;
        height: 60vh
    }
}

#mv #scene > div {
    width: 110%;
    height: 110%;
    margin: -5% 0 0 -5%;
    will-change: opacity, transform
}

#mv #scene > div > div {
    position: relative;
    width: 100%;
    height: 100%;
    /*background: url(../img/slider01.jpg) center center no-repeat;
    background-size: cover; */
    opacity: 0;
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition: all 1.5s cubic-bezier(0, .4, .6, 1) 1s;
    transition: all 1.5s cubic-bezier(0, .4, .6, 1) 1s
}

#mv > div:nth-of-type(2) {
    position: relative;
    display: flex;
    align-items: center;
    margin: 0 0 0 -110px
}

@media screen and (max-width:768px) {
    #mv > div:nth-of-type(2) {
        justify-content: center;
        width: 100%;
        margin: 0
    }
}

#mv > div:nth-of-type(2) > div {
    margin: 50px 0 0
}

@media screen and (max-width:667px) {
    #mv > div:nth-of-type(2) > div {
        width: 80%
    }
}

@media screen and (max-width:414px) {
    #mv > div:nth-of-type(2) > div {
        width: 90%
    }
}

#mv > div:nth-of-type(2) > div h1 {
    font-size: 4rem;
    letter-spacing: .45rem;
    color: #000;
    margin: 0 0 40px
}

@media screen and (max-width:667px) {
    #mv > div:nth-of-type(2) > div h1 {
        letter-spacing: .35rem
    }
}

@media screen and (max-width:414px) {
    #mv > div:nth-of-type(2) > div h1 {
        font-size: 3.2rem;
        letter-spacing: .28rem
    }
}

#mv > div:nth-of-type(2) > div h1 div {
    line-height: 1
}

#mv > div:nth-of-type(2) > div h1 div:first-of-type {
    margin: 0 0 10px
}

#mv > div:nth-of-type(2) > div h1 div span {
    opacity: 0;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
    -webkit-filter: blur(30px);
    filter: blur(30px);
    -webkit-transition: all 3s cubic-bezier(.41, .14, .83, .58);
    transition: all 3s cubic-bezier(.41, .14, .83, .58);
    will-change: transform, filter
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(1) {
    -webkit-transition-delay: calc((1 - 1) * 0.1s);
    transition-delay: calc((1 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(2) {
    -webkit-transition-delay: calc((2 - 1) * 0.1s);
    transition-delay: calc((2 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(3) {
    -webkit-transition-delay: calc((3 - 1) * 0.1s);
    transition-delay: calc((3 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(4) {
    -webkit-transition-delay: calc((4 - 1) * 0.1s);
    transition-delay: calc((4 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(5) {
    -webkit-transition-delay: calc((5 - 1) * 0.1s);
    transition-delay: calc((5 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(6) {
    -webkit-transition-delay: calc((6 - 1) * 0.1s);
    transition-delay: calc((6 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(7) {
    -webkit-transition-delay: calc((7 - 1) * 0.1s);
    transition-delay: calc((7 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(8) {
    -webkit-transition-delay: calc((8 - 1) * 0.1s);
    transition-delay: calc((8 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(9) {
    -webkit-transition-delay: calc((9 - 1) * 0.1s);
    transition-delay: calc((9 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(10) {
    -webkit-transition-delay: calc((10 - 1) * 0.1s);
    transition-delay: calc((10 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(11) {
    -webkit-transition-delay: calc((11 - 1) * 0.1s);
    transition-delay: calc((11 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(12) {
    -webkit-transition-delay: calc((12 - 1) * 0.1s);
    transition-delay: calc((12 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(13) {
    -webkit-transition-delay: calc((13 - 1) * 0.1s);
    transition-delay: calc((13 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(14) {
    -webkit-transition-delay: calc((14 - 1) * 0.1s);
    transition-delay: calc((14 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(15) {
    -webkit-transition-delay: calc((15 - 1) * 0.1s);
    transition-delay: calc((15 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(16) {
    -webkit-transition-delay: calc((16 - 1) * 0.1s);
    transition-delay: calc((16 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(17) {
    -webkit-transition-delay: calc((17 - 1) * 0.1s);
    transition-delay: calc((17 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(18) {
    -webkit-transition-delay: calc((18 - 1) * 0.1s);
    transition-delay: calc((18 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(19) {
    -webkit-transition-delay: calc((19 - 1) * 0.1s);
    transition-delay: calc((19 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div h1 div span:nth-of-type(20) {
    -webkit-transition-delay: calc((20 - 1) * 0.1s);
    transition-delay: calc((20 - 1) * 0.1s)
}

#mv > div:nth-of-type(2) > div p {
    font-size: 1.8rem;
    color: #333
}

#mv > div.scroll {
    position: absolute;
    right: 50px;
    bottom: 0;
    width: 30px;
    height: 133px;
    opacity: 0;
    -webkit-transition: .8s cubic-bezier(.41, .14, .83, .58) 4.5s;
    transition: .8s cubic-bezier(.41, .14, .83, .58) 4.5s;
    will-change: opacity
}

@media screen and (max-width:768px) {
    #mv > div.scroll {
        display: none
    }
}

#mv > div.scroll:after {
    content: "";
    display: block;
    width: 1px;
    height: 70px;
    margin: 16px auto 0;
    -webkit-animation: marquee 1.5s ease 1s infinite normal none;
    animation: marquee 1.5s ease 1s infinite normal none;
    background: #000
}

#mv > div.scroll p {
    display: block;
    font-size: 1.8rem;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl
}

@media all and (-ms-high-contrast:none) {
    #mv > div.scroll {
        bottom: 90px
    }

    #mv > div.scroll p {
        margin: 80px 0 0
    }
}

@supports (-ms-ime-align:auto) {
    #mv > div.scroll {
        bottom: 85px
    }

    #mv > div.scroll p {
        margin: 80px 0 0
    }
}

.container, .intro, .news > div, .access .shopinfo, .single .eyecatch > div > div,
.page_container {
    width: 78.125%;
    height: auto;
    margin: 0 auto
}

@media screen and (max-width:667px) {
    .container, .intro, .news > div, .access .shopinfo, .single .eyecatch > div > div,
    .page_container {
        width: 80%
    }
}

.scroll_blur {
    position: relative;
    opacity: 0;
    -webkit-filter: blur(30px);
    filter: blur(30px);
    -webkit-transition: 2s cubic-bezier(.41, .14, .83, .58);
    transition: 2s cubic-bezier(.41, .14, .83, .58);
    will-change: opacity, filter
}

.scroll_blur.is_animation {
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0)
}

.scroll_fade {
    position: relative;
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: 1s cubic-bezier(0, .4, .6, 1) 1.8s;
    transition: 1s cubic-bezier(0, .4, .6, 1) 1.8s;
    will-change: opacity, transform
}

.scroll_fade.is_animation {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px)
}

.intro {
    margin-top: 150px;
    margin-bottom: 150px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

@media screen and (max-width:768px) {
    .intro {
        flex-flow: column-reverse wrap;
        margin-top: 80px
    }
}

.intro > div {
    width: 46%;
    background: url(../img/textbg.png) no-repeat;
    height: auto
}

@media screen and (max-width:768px) {
    .intro > div {
        width: 90%;
        opacity: 0;
        -webkit-transition: .8s cubic-bezier(.41, .14, .83, .58) 4.5s;
        transition: .8s cubic-bezier(.41, .14, .83, .58) 4.5s;
        will-change: opacity
    }
}

@media screen and (max-width:667px) {
    .intro > div {
        width: 100%
    }
}

.intro > div:first-of-type {
    min-width: 460px
}

@media screen and (max-width:768px) {
    .intro > div:first-of-type {
        min-width: 0
    }
}

.intro > div:first-of-type h2 {
    font-size: 3.5rem
}

.intro > div:first-of-type p:first-of-type {
    font-size: 2.2rem;
    margin: 20px 0 0
}

.intro > div:first-of-type p:nth-of-type(2) {
    line-height: 2;
    margin: 30px 0 0;
    text-align: justify;
    text-justify: inter-ideograph
}

.intro > div:nth-of-type(2) {
    position: relative;
    margin: 0 0 80px
}

@media screen and (max-width:667px) {
    .intro > div:nth-of-type(2) {
        height: 200px
    }
}

.intro > div:nth-of-type(2) > figure:first-of-type {
    width: 76%;
    height: auto;
    margin: 80px 0 0;
    z-index: 2
}

@media screen and (max-width:667px) {
    .intro > div:nth-of-type(2) > figure:first-of-type {
        width: 65%
    }
}

.intro > div:nth-of-type(2) > figure:nth-of-type(2) {
    position: absolute;
    top: 0;
    right: -80px; /*元：0*/
    width: 65.651739%; /*元：45.651739%*/
    height: auto;
    z-index: 1
}

@media screen and (max-width:667px) {
    .intro > div:nth-of-type(2) > figure:nth-of-type(2) {
        width: 45%;
        right: 0;
        margin: 0 0 -40px
    }
}

.loaded #loading {
    opacity: 0
}

@media all and (-ms-high-contrast:none) {
    .loaded #loading {
        display: none
    }
}

.loaded #header {
    opacity: 1
}

.loaded #mv #scene > div > div {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.loaded #mv > div:nth-of-type(2) > div h1 div span {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-filter: blur(0);
    filter: blur(0)
}

.loaded #mv > div:nth-of-type(2) > div p {
    -webkit-animation: fade 1.2s cubic-bezier(.41, .14, .83, .58) 4.5s 1 normal both;
    animation: fade .8s cubic-bezier(.41, .14, .83, .58) 4.5s 1 normal both
}

.loaded #mv > div.scroll {
    opacity: 1
}

@media screen and (max-width:768px) {
    .loaded .intro > div {
        opacity: 1
    }
}

.boxMenu {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 150px 0 0
}

@media screen and (max-width:768px) {
    .boxMenu {
        flex-flow: column wrap;
        margin: 150px 0 100px       /*元：150px 0 400px*/
    }
}

.boxMenu > figure {
    flex: 0 1 64.453125%;
    height: auto
}

.boxMenu > div {
    flex: 0 1 calc(100% - 64.453125%);
    display: flex;
    justify-content: center;
    align-items: center;
    -webkit-transform: translate(0, -20px);
    transform: translate(0, -20px);
}

@media screen and (max-width:768px) {
    .boxMenu > div {
        background: #fff;
        width: 80%;
        height: auto;
        padding: 30px;
        margin: 0 0 -120px;
        box-shadow: 0 0 5px 5px rgba(0, 0, 0, .1);
        z-index: 2
    }
}

@media screen and (max-width:667px) {
    .boxMenu > div {
        margin: 0 0 -50px;
        padding: 20px
    }
}

.boxMenu > div > div {
    width: 100%;
    max-width: 350px;
    height: auto;
    text-align: center
}

.boxMenu > div > div h3 {
    font-size: 3rem
}

.boxMenu > div > div h3:after {
    content: "";
    display: block;
    width: 20px;
    height: 1px;
    background: #000;
    margin: 30px auto
}

.boxMenu > div > div > p {
    color: #333;
}

.boxMenu > div > div > p:first-of-type {
    line-height: 2
}

.boxMenu > div > div > p:nth-of-type(2) {
    font-size: 1.8rem
}

@media screen and (max-width:667px) {
    .boxMenu > div > div > p:nth-of-type(2) {
        margin: 10px 0 20px
    }
}

@media all and (-ms-high-contrast:none) {
    .boxMenu > div {
        margin: 0 auto
    }
}



.boxMenu.cate002 {
    flex-flow: row-reverse nowrap
}

@media screen and (max-width:768px) {
    .boxMenu.cate002 {
        flex-flow: column wrap
    }
}

@media screen and (max-width:768px) {
    .boxMenu.cate003 {
        margin: 150px 0 200px
    }
}

@media screen and (max-width:667px) {
    .boxMenu.cate003 p {
        margin: 0 0 20px
    }
}

.boxMenu.cate004 {
    flex-flow: row-reverse nowrap
}

@media screen and (max-width:768px) {
    .boxMenu.cate004 {
        flex-flow: column wrap
    }
}


.btn, .reserve .wpcf7-submit {
    position: relative;
    display: block;
    width: 250px;
    height: 60px;
    background: #000;
    color: #fff;
    margin: 40px auto 0;
    transition: .45s cubic-bezier(.41, .14, .83, .58);
    -webkit-transition: .45s cubic-bezier(.41, .14, .83, .58)
}

@media screen and (max-width:667px) {
    .btn, .reserve .wpcf7-submit {
        width: 100%
    }
}

.btn:before, .reserve .wpcf7-submit:before {
    content: "";
    display: block;
    position: absolute;
    top: 30px;
    left: 220px;
    width: 0;
    height: 1px;
    background: #64828d;
    transition: .3s cubic-bezier(.41, .14, .83, .58) .1s;
    -webkit-transition: .3s cubic-bezier(.41, .14, .83, .58) .1s;
    transform-origin: left
}

.btn p, .reserve .wpcf7-submit p {
    font-size: 1.8rem;
    text-align: center;
    line-height: 60px
}

.btn:hover, .reserve .wpcf7-submit:hover {
    transform: translateX(5px);
    -webkit-transform: translateX(5px)
}

.btn:hover:before, .reserve .wpcf7-submit:hover:before {
    width: 60px
}

.bgParallax {
    width: 100%;
    height: 55vh;
    background: url(../img/bg_top01.jpg) center center no-repeat;
    background-size: cover;
    margin: 150px 0 0
}

@media screen and (max-width:768px) {
    .bgParallax {
        margin: 0
    }
}

.news {
    background: #f9f6f3;
    padding: 150px 0
}

.news > div {
    position: relative
}

.news > div h2 {
    font-size: 4.5rem;
    text-align: center;
    margin: 0 0 100px
}

@media screen and (max-width:667px) {
    .news > div h2 {
        font-size: 3.5rem;
        text-align: left;
        margin: 0 0 60px
    }
}

.news > div > a {
    position: absolute;
    top: 25px;
    right: 0;
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    color: #b9a39a;
    line-height: 1;
    overflow: hidden
}

@media screen and (max-width:667px) {
    .news > div > a {
        top: 15px
    }
}

.news > div > a:before {
    content: "";
    display: inline-block;
    position: relative;
    left: 65px;
    width: 0;
    height: 1px;
    background: #b9a39a;
    transition: .15s cubic-bezier(.41, .14, .83, .58) .45s;
    -webkit-transition: .15s cubic-bezier(.41, .14, .83, .58) .45s;
    transform-origin: left
}

.news > div > a:after {
    content: "";
    display: inline-block;
    width: 50px;
    height: 1px;
    background: #b9a39a;
    margin: 0 0 0 20px;
    vertical-align: middle;
    transition: .15s cubic-bezier(.41, .14, .83, .58);
    -webkit-transition: .15s cubic-bezier(.41, .14, .83, .58)
}

.news > div > a:hover:before {
    width: 50px;
    left: 115px
}

.news > div > a:hover:after {
    transform: translateX(50px);
    -webkit-transform: translateX(50px)
}

.news > div ul {
    list-style: none;
    display: flex
}

@media screen and (max-width:768px) {
    .news > div ul {
        flex-flow: row wrap
    }
}

.news > div ul li {
    width: 100%;
    height: auto;
    flex: 0 1 20%;
    margin: 0 calc(20% / 3) 0 0
}

.news > div ul li:last-of-type {
    margin: 0
}

@media screen and (max-width:768px) {
    .news > div ul li {
        flex: 0 1 45%;
        margin-right: 10%;
        margin-bottom: 40px
    }

    .news > div ul li:nth-of-type(2), .news > div ul li:nth-last-of-type(1) {
        margin-right: 0
    }

    .news > div ul li:nth-last-of-type(1), .news > div ul li:nth-last-of-type(2) {
        margin-bottom: 40px
    }
}

.news > div ul li a {
    color: #b9a39a
}

.news > div ul li a figure {
    position: relative;
    width: 100%;
    padding-top: 70%;
    overflow: hidden;
    margin: 0 0 20px
}

.news > div ul li a figure img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transition: .4s cubic-bezier(.41, .14, .83, .58);
    transition: .4s cubic-bezier(.41, .14, .83, .58);
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    transform-origin: center;
    max-width: 120%;
    max-height: 120%
}

.news > div ul li a h3 {
    font-size: 1.6rem;
    line-height: 1.8;
    margin: 0 0 5px;
    text-align: justify;
    text-justify: inter-ideograph;
    transition: .25s cubic-bezier(.41, .14, .83, .58);
    -webkit-transition: .25s cubic-bezier(.41, .14, .83, .58)
}

.news > div ul li a .time {
    color: #b9a39a
}

.news > div ul li a:hover img {
    -webkit-transform: translate(-50%, -50%) scale(1.1);
    transform: translate(-50%, -50%) scale(1.1)
}

.news > div ul li a:hover h3 {
    opacity: .7
}

.brPC {
    display: none
}

@media screen and (max-width:1250px) { /*元414*/
    .brPC {
        display: block
    }
}

@media screen and (max-width:667px) {
    .brSP {
        display: none
    }
}

.access {
    width: 100%;
    height: auto;
    padding: 0 0 200px
}

.access #map {
    width: 100%;
    height: 420px
}

.access .shopinfo {
    position: relative;
    display: flex;
    padding: 40px;
    box-shadow: 0 0 5px 5px rgba(0, 0, 0, .1);
    margin-top: -40px;
    background: #fff
}

@media screen and (max-width:667px) {
    .access .shopinfo {
        flex-flow: column wrap;
        padding: 20px
    }
}

.access .shopinfo > div:first-of-type {
    flex: 0 1 33.333333%;
    height: auto
}

@media screen and (max-width:667px) {
    .access .shopinfo > div:first-of-type {
        width: 100%;
        margin: 0 0 30px
    }
}

.access .shopinfo > div:first-of-type h3 {
    font-size: 2.2rem
}

.access .shopinfo > div:first-of-type p {
    font-size: 1.4rem
}

.access .shopinfo > div:nth-of-type(2) {
    flex: 0 1 66.666666%;
    height: auto
}

@media screen and (max-width:667px) {
    .access .shopinfo > div:nth-of-type(2) {
        width: 100%
    }
}

.access .shopinfo > div:nth-of-type(2) table {
    border-collapse: collapse;
    width: 100%;
    height: auto
}

@media screen and (max-width:667px) {
    .access .shopinfo > div:nth-of-type(2) table {
        margin: 0 0 20px
    }
}

.access .shopinfo > div:nth-of-type(2) table tr th {
    width: 25%;
    padding: 0 0 30px;
    vertical-align: top;
    font-weight: 400;
    text-align: left;
    line-height: 2
}

@media screen and (max-width:667px) {
    .access .shopinfo > div:nth-of-type(2) table tr th {
        display: block;
        width: 100%;
        padding: 0
    }
}

.access .shopinfo > div:nth-of-type(2) table tr td {
    width: 75%;
    padding: 0 0 30px 40px;
    line-height: 2
}

@media screen and (max-width:667px) {
    .access .shopinfo > div:nth-of-type(2) table tr td {
        display: block;
        width: 100%;
        padding: 0 0 15px
    }
}

.access .shopinfo > div:nth-of-type(2) table tr td .jp {
    font-size: 1.4rem
}

.access .shopinfo > div:nth-of-type(2) table tr td .mapLink {
    color: #b9a39a;
    transition: .25s cubic-bezier(.41, .14, .83, .58);
    -webkit-transition: .25s cubic-bezier(.41, .14, .83, .58)
}

.access .shopinfo > div:nth-of-type(2) table tr td .mapLink:hover {
    opacity: .7
}

.access .shopinfo > div:nth-of-type(2) table tr td .mapLink:after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 12px;
    background: url(//lescepages.info/test/wp-content/themes/cepages/css/../img/ico_mapLink.svg) center center no-repeat;
    background-size: cover;
    vertical-align: middle;
    margin: -2px 0 0 10px
}

.footer {
    width: 100%;
    height: auto;
    background: #b9a39a;
    padding: 80px 0
}

.footer .logo {
    width: 200px;
    height: auto;
    margin: 0 auto
}

.footer .logo a {
    transition: .25s cubic-bezier(.41, .14, .83, .58);
    -webkit-transition: .25s cubic-bezier(.41, .14, .83, .58)
}

.footer .logo a:hover {
    opacity: .7
}

.footer .logo .logoColor {
    fill: #fff
}

.footer aside {
    display: flex;
    justify-content: space-between;
    width: 90px;
    height: 30px;
    margin: 30px auto
}

.footer aside a {
    display: block;
    width: 30px;
    height: auto;
    transition: .25s cubic-bezier(.41, .14, .83, .58);
    -webkit-transition: .25s cubic-bezier(.41, .14, .83, .58)
}

.footer aside a:hover {
    opacity: .7
}

.footer aside a .fbColor {
    fill: #fff
}

.footer aside a .twColor {
    fill: #fff
}

.footer .copyright {
    color: #fff;
    text-align: center;
    font-size: 1.2rem
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    body {
        background: #b9a39a
    }

    .wrapper {
        background: #fff
    }
}

.eyecatch {
    width: 100%;
    height: 60vh;
    overflow: hidden
}

.eyecatch > div {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition: 1.5s cubic-bezier(0, .4, .6, 1) 1s;
    transition: 1.5s cubic-bezier(0, .4, .6, 1) 1s
}

.eyecatch > div:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, .3)
}

.eyecatch > div h1 {
    position: relative;
    font-size: 5rem;
    letter-spacing: .45rem;
    color: #000;
    z-index: 10
}

@media screen and (max-width:667px) {
    .eyecatch > div h1 {
        letter-spacing: .35rem
    }
}

@media screen and (max-width:414px) {
    .eyecatch > div h1 {
        font-size: 4.2rem;
        letter-spacing: .28rem
    }
}

.page #header, .archive #header, .single #header {
    opacity: 0;
    -webkit-transition: .8s cubic-bezier(.41, .14, .83, .58) 2s;
    transition: .8s cubic-bezier(.41, .14, .83, .58) 2s;
    will-change: opacity
}

.loaded.page #header, .loaded.archive #header, .loaded.single #header {
    opacity: 1
}

.loaded.page .eyecatch > div, .loaded.archive .eyecatch > div, .loaded.single .eyecatch > div {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.loaded.page .eyecatch > div h1, .loaded.archive .eyecatch > div h1, .loaded.single .eyecatch > div h1 {
    -webkit-animation: fade 1.2s cubic-bezier(.41, .14, .83, .58) 1.2s 1 normal both;
    animation: fade .8s cubic-bezier(.41, .14, .83, .58) 1.2s 1 normal both
}

.loaded.page .eyecatch > div p, .loaded.archive .eyecatch > div p, .loaded.single .eyecatch > div p {
    -webkit-animation: fade 1.2s cubic-bezier(.41, .14, .83, .58) 1.2s 1 normal both;
    animation: fade .8s cubic-bezier(.41, .14, .83, .58) 1.2s 1 normal both
}

.about .eyecatch > div {
    background: url(../img/l1/bg_eye01.jpg) center center no-repeat;
    background-size: cover
}

.menu .eyecatch > div {
    background: url(//lescepages.info/test/wp-content/themes/cepages/css/../img/bg_eye02.jpg) center center no-repeat;
    background-size: cover
}

.reserve .eyecatch > div {
    background: url(//lescepages.info/test/wp-content/themes/cepages/css/../img/bg_eye03.jpg) center center no-repeat;
    background-size: cover
}

.archive .eyecatch > div {
    background: url(//lescepages.info/test/wp-content/themes/cepages/css/../img/bg_eye04.jpg) center center no-repeat;
    background-size: cover
}

.archive .eyecatch > div:after {
    background: rgba(255, 255, 255, .8)
}

.single .eyecatch > div {
    background: url(//lescepages.info/test/wp-content/themes/cepages/css/../img/bg_eye04.jpg) center center no-repeat;
    background-size: cover
}

.single .eyecatch > div:after {
    background: rgba(255, 255, 255, .8)
}

.single .eyecatch > div > div {
    margin: 100px 0 0
}

.single .eyecatch > div > div h1 {
    font-size: 3.2rem;
    line-height: 1.6;
    text-align: justify;
    text-justify: inter-ideograph
}

.single .eyecatch > div > div p {
    position: relative;
    font-size: 2.2rem;
    z-index: 10
}

.single .post {
    padding: 0;
    border-bottom: none
}

.error404 .eyecatch > div {
    background: #f8f6f3
}

.error404 .eyecatch > div:after {
    display: none
}

.error404 .eyecatch > div h1 {
    color: #000
}

.post {
    width: 100%;
    height: auto;
    margin: 0 0 40px;
    padding: 0 0 40px;
    border-bottom: 1px solid #ccc
}

.post:last-of-type {
    margin: 0
}

.post > a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: auto
}

@media screen and (max-width:414px) {
    .post > a {
        flex-flow: column wrap
    }
}

.post > a > div:first-of-type {
    flex: 0 1 40%;
    width: 100%
}

@media screen and (max-width:414px) {
    .post > a > div:first-of-type {
        margin: 0 0 20px
    }
}

.post > a > div:first-of-type figure {
    position: relative;
    width: 100%;
    padding-top: 70%;
    overflow: hidden
}

.post > a > div:first-of-type figure img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transition: .4s cubic-bezier(.41, .14, .83, .58);
    transition: .4s cubic-bezier(.41, .14, .83, .58);
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    transform-origin: center;
    max-width: 120%;
    max-height: 120%
}

.post > a > div:nth-of-type(2) {
    flex: 0 1 50%;
    width: 100%
}

.post > a > div:nth-of-type(2) h2 {
    line-height: 1.8;
    margin: 0 0 5px;
    text-align: justify;
    text-justify: inter-ideograph;
    transition: .25s cubic-bezier(.41, .14, .83, .58);
    -webkit-transition: .25s cubic-bezier(.41, .14, .83, .58)
}

.post > a > div:nth-of-type(2) .date {
    color: #b9a39a
}

.post > a:hover > div:first-of-type figure img {
    -webkit-transform: translate(-50%, -50%) scale(1.1);
    transform: translate(-50%, -50%) scale(1.1)
}

.post > a:hover h2 {
    opacity: .7
}

.pagination {
    display: flex;
    align-items: flex-end;
    margin: 60px 0 0
}

.pagination .page-numbers {
    display: block;
    text-align: center;
    font-size: 1.8rem;
    margin: 0 5px;
    line-height: 1
}

.pagination .page-numbers.next, .pagination .page-numbers.prev {
    font-size: 1.4rem;
    vertical-align: middle
}

.page_container {
    margin: 150px auto 200px;
    opacity: 0;
    -webkit-transition: .8s cubic-bezier(.41, .14, .83, .58) 2s;
    transition: .8s cubic-bezier(.41, .14, .83, .58) 2s;
    will-change: opacity
}

.loaded .page_container {
    opacity: 1
}

.prof {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 0 0 120px
}

/*レスポンシブ嫌なんだって
@media screen and (max-width:768px) {
    .prof {
        flex-flow: column wrap
    }
}
*/

.prof figure {
    flex: 0 1 35%;
    width: 100%;
    height: auto
}

.prof > div {
    flex: 0 1 67%;
    width: 100%;
    height: auto;
    padding: 40px;
    background: #fff;
    box-shadow: 0 0 5px 5px rgba(0, 0, 0, .1);
    margin: 0 0 0 -3px  /*元0 0 0 -30px*/
}

@media screen and (max-width:768px) {
    .prof .page_container {
        margin: 150px 0px 200px;
    }

    .prof > div {
        width: 100%;
        margin: -80px 0 0;
        padding: 10px;
    }
}

.prof > div .role {
    color: #b9a39a;
    font-size: 2.4rem;
    margin: 0 0 20px
}

.prof > div h3 {
    font-size: 3.8rem;
    line-height: 1.7
}

.prof > div .name_en {
    font-size: 2rem;
    margin: 0 0 30px
}

.prof > div .text {
    line-height: 1.8;
    text-align: justify;
    text-justify: inter-ideograph
}

.prof > div .text span {
    letter-spacing: -.45rem
}


/*追加20190910 レスポンシブ嫌対応*/
@media screen and (max-width:768px) {
    .prof figure {
        flex: 0 1 45%;
    }
    .prof > div {
        flex: 0 1 55%;
        margin: 0 0 0 0;
    }
    .prof > div .role {
        font-size: 12px;
        margin: 0 0 10px;
    }
    .prof > div h3 {
        font-size: 14px;
        line-height: 0.2;
        margin-top: 1px;
        margin-bottom: 1px;
    }
    .prof > div p {
        font-size: 12px;
    }
    .prof > div .text {
        line-height: 1.2;
        text-align: left;
    }
}




.slider {
    position: relative;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%)
}

.slider .swiper-container {
    width: 100%;
    height: 100%
}

.slider .swiper-slide {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center
}

.menu_container {
    margin: 0 0 120px
}

.menu_container h2 {
    font-size: 3rem;
    text-align: center
}

.menu_container h2:after {
    content: "";
    display: block;
    width: 20px;
    height: 1px;
    background: #000;
    margin: 30px auto 60px
}

.menu_Block {
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap
}

@media screen and (max-width:414px) {
    .menu_Block {
        flex-flow: column wrap
    }
}

.menu_course, .menu_sec, .menu_set {
    flex: 0 1 45%;
    width: 100%;
    height: auto;
    color: #333;
    margin: 0 0 60px
}

@media screen and (max-width:414px) {
    .menu_course, .menu_sec, .menu_set {
        margin: 0 0 30px
    }
}

.menu_course > h3, .menu_sec > h3, .menu_set > h3 {
    font-size: 1.8rem;
    text-align: center;
    display: flex;
    align-items: center
}

.menu_course > h3:before, .menu_sec > h3:before, .menu_set > h3:before,
.menu_course > h3:after, .menu_sec > h3:after, .menu_set > h3:after {
    border-top: 1px solid #ccc;
    content: "";
    display: inline;
    flex-grow: 1
}

.menu_course > h3:before, .menu_sec > h3:before, .menu_set > h3:before {
    margin-right: 10px
}

.menu_course > h3:after, .menu_sec > h3:after, .menu_set > h3:after {
    margin-left: 10px
}

.menu_course table, .menu_sec table, .menu_set table {
    width: 100%
}

.menu_course table th, .menu_sec table th, .menu_set table th {
    width: 70%;
    font-weight: 400;
    text-align: left;
    padding: 5px 0;
    vertical-align: middle;
    line-height: 1
}

.menu_course table th h3, .menu_sec table th h3, .menu_set table th h3 {
    font-size: 1.8rem
}

.menu_course table th h4, .menu_sec table th h4, .menu_set table th h4 {
    font-size: 1.2rem
}

.menu_course table td, .menu_sec table td, .menu_set table td {
    width: 30%;
    font-size: 1.8rem;
    text-align: right;
    padding: 5px 0;
    vertical-align: middle;
    line-height: 1
}

.menu_course p, .menu_sec p, .menu_set p {
    font-size: 1.2rem;
    text-align: justify;
    text-justify: inter-ideograph
}

.menu_sec, .menu_set {
    padding: 0 0 15px;
    border-bottom: 1px solid #ccc
}

.menu_sec > h3, .menu_set > h3 {
    margin: 0 0 5px
}

.menu_set {
    flex: none;
    margin: 0
}

.menu_set > h3 {
    margin: 0 0 5px
}

.menu_set > div {
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap
}

@media screen and (max-width:414px) {
    .menu_set > div {
        flex-flow: column wrap
    }
}

.menu_set > div > div {
    flex: 0 1 45%;
    width: 100%;
    height: auto;
    color: #333
}

.menu_set table tr th h4 {
    font-size: 1.6rem
}

.menu_set table tr td span {
    font-size: 1.2rem
}

.menu #cate001 .menu_set > div > div p {
    margin: 0 0 20px
}

.menu #cate001 .menu_set > div > div:last-of-type p {
    margin: 0
}

.menu #cate002 .menu_course:last-of-type, .menu #cate002 .menu_sec:last-of-type,
.menu #cate002 .menu_set:last-of-type {
    margin: 0
}

.menu #alacarte .menu_sec:nth-last-of-type(1), .menu #alacarte .menu_set:nth-last-of-type(1),
.menu #alacarte .menu_sec:nth-last-of-type(2), .menu #alacarte .menu_set:nth-last-of-type(2) {
    margin: 0
}

@media screen and (max-width:414px) {
    .menu #alacarte .menu_sec:nth-last-of-type(2), .menu #alacarte .menu_set:nth-last-of-type(2) {
        margin: 0 0 30px
    }
}

.menu #cate003 {
    margin: 0
}

.menu #cate003 .menu_Block h4 {
    font-size: 1.2rem
}

.menu #cate003 .menu_Block:first-of-type .menu_set {
    margin: 0 0 60px
}

@media screen and (max-width:414px) {
    .menu #cate003 .menu_Block:first-of-type .menu_set {
        margin: 0 0 30px
    }

    .menu #cate003 .menu_Block:first-of-type .menu_set:first-of-type > div > div:first-of-type {
        margin: 0 0 10px;
        padding: 0 0 10px;
        border-bottom: 1px solid #ccc
    }
}

@media screen and (max-width:414px) {
    .menu #cate003 .menu_Block:nth-of-type(3) .menu_set > div > div:nth-of-type(2) {
        margin: 10px 0 0;
        padding: 10px 0 0;
        border-top: 1px solid #ccc
    }
}

.reserve table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 80px
}

.reserve table tr th {
    width: 33%;
    padding: 0 0 50px;
    font-size: 1.8rem;
    font-weight: 400;
    color: #333;
    text-align: left;
    vertical-align: top
}

@media screen and (max-width:414px) {
    .reserve table tr th {
        display: block;
        width: 100%;
        padding: 0 0 10px
    }
}

.reserve table tr td {
    width: 77%;
    padding: 0 0 50px;
    font: 400 1.6rem / 1.8 "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif
}

@media screen and (max-width:414px) {
    .reserve table tr td {
        display: block;
        width: 100%
    }
}

.reserve table tr td .wpcf7-text, .reserve table tr td .wpcf7-date, .reserve table tr td .wpcf7-textarea {
    width: 100%;
    height: 40px;
    background: #f9f6f3;
    border: none;
    box-shadow: none;
    -webkit-appearance: none;
    padding: 0 10px
}

.reserve table tr td .wpcf7-select {
    width: 100%;
    height: 40px;
    background: #f9f6f3;
    border-radius: 0;
    border: none;
    -webkit-appearance: none;
    padding: 0 10px
}

.reserve table tr td .wpcf7-select:focus {
    outline: 0
}

.reserve table tr td .wpcf7-textarea {
    height: auto;
    padding: 10px
}

.reserve table tr td .wpcf7-textarea:focus {
    outline: 0
}

.reserve .wpcf7-submit {
    margin: 0 auto;
    border: none;
    outline: 0
}

.reserve .wpcf7-submit:before {
    display: none
}

::selection {
    background: #b9a39a;
    color: #fff;
    text-shadow: none
}

::-webkit-selection {
    background: #b9a39a;
    color: #fff;
    text-shadow: none
}

::-moz-selection {
    background: #b9a39a;
    color: #fff;
    text-shadow: none
}

.alignnone {
    margin: 5px 20px 20px 0
}

.aligncenter, div.aligncenter {
    display: block;
    margin: 5px auto 5px auto
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px
}

a img.alignnone {
    margin: 5px 20px 20px 0
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto
}

.wp-caption .wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px
}

.gallery-caption {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px
}

@media print {
    * {
        background: 0 0 !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important
    }

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

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

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

    .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
        content: ""
    }

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

    thead {
        display: table-header-group
    }

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

    img {
        max-width: 100% !important
    }

    @page {
        margin: .5cm
    }

    p, h2, h3 {
        orphans: 3;
        widows: 3
    }

    h2, h3 {
        page-break-after: avoid
    }
}

.swiper-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-container-no-flexbox .swiper-slide {
    float: left
}

.swiper-container-vertical > .swiper-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.swiper-container-android .swiper-slide, .swiper-wrapper {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.swiper-container-multirow > .swiper-wrapper {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.swiper-container-free-mode > .swiper-wrapper {
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-slide {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform
}

.swiper-invisible-blank-slide {
    visibility: hidden
}

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
    height: auto
}

.swiper-container-autoheight .swiper-wrapper {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-transition-property: height, -webkit-transform;
    transition-property: height, -webkit-transform;
    -o-transition-property: transform, height;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform
}

.swiper-container-3d {
    -webkit-perspective: 1200px;
    perspective: 1200px
}

.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-wrapper {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d
}

.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-container-wp8-horizontal, .swiper-container-wp8-horizontal > .swiper-wrapper {
    -ms-touch-action: pan-y;
    touch-action: pan-y
}

.swiper-container-wp8-vertical, .swiper-container-wp8-vertical > .swiper-wrapper {
    -ms-touch-action: pan-x;
    touch-action: pan-x
}

.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: 50%;
    width: 27px;
    height: 44px;
    margin-top: -22px;
    z-index: 10;
    cursor: pointer;
    background-size: 27px 44px;
    background-position: center;
    background-repeat: no-repeat
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
    left: 10px;
    right: auto
}

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
    right: 10px;
    left: auto
}

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E")
}

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E")
}

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E")
}

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E")
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    -webkit-transition: .3s opacity;
    -o-transition: .3s opacity;
    transition: .3s opacity;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transform: scale(.33);
    -ms-transform: scale(.33);
    transform: scale(.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    -webkit-transform: scale(.66);
    -ms-transform: scale(.66);
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    -webkit-transform: scale(.33);
    -ms-transform: scale(.33);
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    -webkit-transform: scale(.66);
    -ms-transform: scale(.66);
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    -webkit-transform: scale(.33);
    -ms-transform: scale(.33);
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: .2
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: #007aff
}

.swiper-container-vertical > .swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0)
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 8px
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    -webkit-transition: .2s top, .2s -webkit-transform;
    transition: .2s top, .2s -webkit-transform;
    -o-transition: .2s transform, .2s top;
    transition: .2s transform, .2s top;
    transition: .2s transform, .2s top, .2s -webkit-transform
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transition: .2s left, .2s -webkit-transform;
    transition: .2s left, .2s -webkit-transform;
    -o-transition: .2s transform, .2s left;
    transition: .2s transform, .2s left;
    transition: .2s transform, .2s left, .2s -webkit-transform
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transition: .2s right, .2s -webkit-transform;
    transition: .2s right, .2s -webkit-transform;
    -o-transition: .2s transform, .2s right;
    transition: .2s transform, .2s right;
    transition: .2s transform, .2s right, .2s -webkit-transform
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, .25);
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #007aff;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top
}

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-container-vertical > .swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-white .swiper-pagination-bullet-active {
    background: #fff
}

.swiper-pagination-progressbar.swiper-pagination-white {
    background: rgba(255, 255, 255, .25)
}

.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff
}

.swiper-pagination-black .swiper-pagination-bullet-active {
    background: #000
}

.swiper-pagination-progressbar.swiper-pagination-black {
    background: rgba(0, 0, 0, .25)
}

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
    background: #000
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, .1)
}

.swiper-container-horizontal > .swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-container-vertical > .swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, .5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 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;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    -webkit-transform-origin: 50%;
    -ms-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
    animation: swiper-preloader-spin 1s steps(12, end) infinite
}

.swiper-lazy-preloader:after {
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    background-position: 50%;
    background-size: 100%;
    background-repeat: no-repeat
}

.swiper-lazy-preloader-white:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")
}

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

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

.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.swiper-container-fade .swiper-slide {
    pointer-events: none;
    -webkit-transition-property: opacity;
    -o-transition-property: opacity;
    transition-property: opacity
}

.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube {
    overflow: visible
}

.swiper-container-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    -webkit-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-container-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
    -webkit-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    transform-origin: 100% 0
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .6;
    -webkit-filter: blur(50px);
    filter: blur(50px);
    z-index: 0
}

.swiper-container-flip {
    overflow: visible
}

.swiper-container-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-container-coverflow .swiper-wrapper {
    -ms-perspective: 1200px
}






/*20190701追加*/

.boxMenu.cate001 {
    background: #b1a29c;
}
.boxMenu.cate002 {
    background: #e5d5d2;
}
.boxMenu.cate003 {
    background: #cdb6ad;
}
.boxMenu.cate004 {
    background: #cdb0ad;
}

.droplogo {
    filter: drop-shadow(5px 5px 5px #aaa);
}
/*20190701追加ここまで*/

/*20190809追加*/
@keyframes anime_zoom {
0% {transform: scale(1);} /* アニメ前の状態 */
100% {transform: scale(1.2);} /* アニメ後の状態 */
}

#scene img {
    animation-name: anime_zoom;
    animation-duration: 10s;
    animation-timing-function: linear;
}
/*20190809追加ここまで*/


.wrapper {
    background: #fefdf8;
}


.boxMenu .lft {
    text-align:left;
    font-size: 14px;
}



.philosophy {
    width: 100%;
    /*border: solid 2px #cdcdcd;*/
    padding: 60px;
    background: #fff;
    box-shadow: 0 0 5px 5px rgba(0, 0, 0, .1);
}
.philosophy h3 {
    font-size: 2rem;
    margin-bottom: 40px;
}

@media screen and (max-width:900px) {
    .philosophy {
        padding: 14px;
        padding-top: 40px;
        margin-top: -100px;
    }
}
