@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans|Noto+Serif');
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,700');
@import url('https://fonts.googleapis.com/css?family=Vollkorn');
@import url('https://fonts.googleapis.com/css?family=Teko:600');
.info {
    margin: 80px auto;
}
.noto {
    font-family: 'Noto Serif', serif!important;
}
.gf_vollkorn {
    font-family: 'Vollkorn', serif!important;
}
.gf_open {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700!important;
}
a, body {
    color: #fff;
}
.current, em {
    font-weight: 700;
}
body {
    background: #000;
    font-family: 'Noto Sans', sans-serif!important;
    letter-spacing: .08em;
    line-height: 1.8;
}
#social_share .LINE a, #social_share .facebook a, #social_share .googleplus a, #social_share .hatena a, #social_share .twitter a {
    text-decoration: none;
    background-size: 40px 40px;
}
#page-top a, .current, .ttl2, em {
    color: #e4b954;
}
footer {
    border-top: 1px solid rgba(255,255,255,.15);
}
footer small {
    background-color: #111;
}
#google_translate {
    background-color: #000;
}
.current {
    border-bottom: dotted 2px #e4b954;
    padding-bottom: 7px;
}
em {
    font-size: 16px;
    font-style: normal;
}
dl.shop-info dd {
    border-bottom: 1px solid rgba(255,255,255,.15);
}
#social_share {
    height: 40px;
    width: 180px;
}
#social_share ul {
    display: flex;
}
#social_share li:first-child {
    margin-left: 0!important;
}
#social_share li {
    margin-left: 5px;
}
#social_share li a {
    display: block;
    overflow: hidden;
    width: 40px;
    height: 40px;
    cursor: pointer;
    text-indent: -999px;
    background-repeat: no-repeat;
    background-position: center center;
}
#social_share .LINE a {
    background-image: url(../img/social_line.png);
}
#social_share .facebook a {
    background-image: url(../img/social_facebook.png);
}
#social_share .twitter a {
    background-image: url(../img/social_twitter.png);
}
#social_share .googleplus a {
    background-image: url(../img/social_gplus.png);
}
#social_share .hatena a {
    background-image: url(../img/social_hatena.png);
}
.second dl {
    margin-top: 20px;
}
.ttl2 {
    border-bottom: solid 2px #444;
    position: relative;
    padding: 10px 0;
    font-size: 26px;
    line-height: 1.4;
}
.ttl2:after {
    border-bottom: solid 5px #e4b954;
    position: absolute;
    content: " ";
    display: block;
    bottom: -5px;
    width: 20%;
}

@media screen and (min-width:768px) {
.btn, .persist-header, header p {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700!important;
}
.sp {
    display: none;
}
.persist-header {
    background: #000;
}
.kv_slider, footer {
    background-size: cover;
}
header {
    padding: 20px 30px 0;
}
h1.logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
}
header .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #e4b954;
}
header ul {
    display: flex;
}
header ul li {
    padding-left: 35px;
}
header p {
    font-size: 28px;
}
header i {
    font-size: 20px;
    vertical-align: 3px;
}
.kv_slider {
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../img/bg_kv_01.jpg);
    height: 100%;
    margin: 0 auto;
    position: relative;
}
#page-top, .persist-header {
    position: fixed;
    z-index: 9999;
}
.btn {
    border: 2px solid #bc9c50;
    text-align: center;
    letter-spacing: .1em;
    font-size: 13px;
}
.kv_second h1, h2.ttl {
    font-family: Teko, sans-serif;
    letter-spacing: .2em;
    text-align: center;
}
.btn a {
    display: block;
    padding: 8px 0;
    color: #bc9c50;
}
.gallery ul, .gallery-list, .map, .persist-header ul, .sns, footer div.inner, ul.lcmenu {
    display: flex;
}
.intro {
    padding: 80px 0;
}
h2.ttl {
    font-weight: 600;
    font-size: 32px;
    color: #e4b954;
    line-height: 1;
    margin-bottom: 30px;
}
h3.ttl {
    font-size: 20px;
    font-weight: 700;
    font-style: italic;
    text-align: center;
    margin-bottom: 20px;
}
p.txt {
    color: #ccc;
    font-size: 13px;
    line-height: 2;
    margin-bottom: 30px;
}
.intro figure, .intro p {
    text-align: center;
}
.menu {
    background: url(../img/bg1.jpg) center no-repeat;
    background-size: cover;
    text-align: center;
}
.menu div.inner {
    padding: 70px 5%;
    width: 40%;
    background: rgba(0,0,0,.75);
}
.access {
    background: url(../img/bg2.jpg) center no-repeat;
    background-size: cover;
    text-align: center;
}
.access div.inner {
    margin-left: 50%;
    padding: 70px 5%;
    width: 40%;
    background: rgba(0,0,0,.75);
}
.gallery ul li {
    width: 25%;
}
.gallery img {
    width: 100%;
    height: auto;
}
.gallery h2 {
    padding: 25px;
    margin: 0!important;
    color: #fff!important;
}
.sns {
    padding: 70px 0;
    width: 980px;
    margin: 0 auto;
    justify-content: space-around;
}
.second, .second-nrw {
    margin: 60px auto 80px;
}
.map div {
    width: 100%;
}
.bnr {
    text-align: center;
    padding: 10px 0 15px;
}
.insta {
    background: #aaa;
    text-align: center;
    width: 300px;
    height: 400px;
    line-height: 400px;
}
.second {
    width: 980px;
}
.second dl a {
    text-decoration: none!important;
}
.second-nrw {
    width: 720px;
}
.kv_second h1 {
    font-weight: 600;
    font-size: 46px;
    color: #e4b954;
    line-height: 1;
    margin-top: 25px;
    text-shadow: 0 0 8px #000, 0 0 8px #000;
}
dl.shop-info a, footer p, footer small {
    font-family: 'Open Sans', sans-serif;
}
.kv_second {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url(../img/bg_kv_01.jpg);
    height: 180px;
    margin: 0 auto;
}
ul.lcmenu {
    justify-content: center;
    margin-bottom: 40px;
}
ul.lcmenu li {
    padding: 0 20px;
    font-size: 17px;
}
ul.lcmenu li i {
    margin-right: 5px;
    vertical-align: 2px;
    font-size: 12px;
}
.second div.inner, .second-nrw div.inner {
    display: flex;
    padding-top: 25px;
    padding-bottom: 50px;
}
.second div.inner figure, .second-nrw div.inner figure {
    padding: 0!important;
}
.second div.inner figure img, .second-nrw div.inner figure img {
    padding-right: 30px;
    width: 400px;
    height: auto;
}
.second div.inner p, .second-nrw div.inner p {
    padding: 0!important;
}
.second figure, .second-nrw figure {
    padding-top: 30px;
    text-align: center;
}
.second p, .second-nrw p {
    padding-top: 25px;
    padding-bottom: 50px;
}
.pbn {
    padding-bottom: 0!important;
}
.second dl {
    margin-top: 30px;
}
.gallery-list {
    flex-wrap: wrap;
    justify-content: space-between;
    justify-content: center;
}
.gallery-list li {
    list-style: none;
    margin: 15px 15px 10px;
}
.gallery-list img {
    width: 160px;
    height: 160px;
    border-radius: 50%;
}
a[href^="tel:"] {
    /* pointer-events: none; */
	text-decoration: none!important;
}
a {
    text-decoration: none;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
a:hover {
    opacity: .4;
    filter: alpha(opacity=60);
}
#google_translate {
    height: 28px;
    margin: auto;
    padding: 0 10px;
}
.skiptranslate {
    float: right;
}
.skiptranslate select {
    font-size: 10px;
}
.persist-header {
    color: #fff;
    left: 0;
    line-height: 60px;
    top: -60px;
    width: 100%;
}
.persist-header ul {
    margin: 0 auto;
    flex-wrap: wrap;
    justify-content: center;
}
.persist-header ul li {
    padding: 0 30px;
    letter-spacing: .05em;
}
.persist-header a {







    color: #fff;
}
dl.shop-info dt {
    clear: both;
    float: left;
    font-weight: 700;
    padding: 10px 0 10px 2px;
    width: 25%;
    white-space: nowrap;
}
dl.shop-info dd {
    padding: 10px 0 10px 27%;
}
dl.shop-info dd:last-child {
    border-bottom: none;
}
dl.shop-info a {
    text-decoration: underline;
}
footer {
    padding: 25px 0 0;
}
footer div.inner {
    margin: 0 auto;
    width: 980px;
    justify-content: space-between;
    align-items: center;
}
footer p {
    font-size: 40px;
    font-weight: 700;
}
footer a {
    text-decoration: none!important;
}
footer p i {
    display: inline-block;
    font-size: 27px;
    vertical-align: 4px;
}
footer small {
    margin-top: 30px;
    padding: 15px 0;
    font-size: 11px;
    text-align: center;
    display: block;
    color: #fff;
}
footer small span {
    opacity: .7;
}
.info dl, footer dl {
    width: 980px;
    margin: 15px auto 0;
    font-size: 13px;
}
#page-top {
    font-size: 50px;
    bottom: 45px;
    right: 20px;
}
}

@media screen and (max-width:767px) {
.kv_slider, footer {
    background-size: cover;
}
.btn, .drawer-nav {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700!important;
}
.pc, .persist-header {
    display: none;
}
.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
    background-color: #fff;
}
.drawer-nav {
    background-color: #000;
}
button {
    margin: 30px 0 0;
}
button span {
    color: #fff;
}
header {
    margin: 0 auto;
}
h2.ttl, h3.ttl, p.txt {
    margin-bottom: 15px;
}
h1.logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
}
header h1 img {
    width: 140px;
    height: auto;
}
.kv_slider {
    background-position: center;
    background-repeat: no-repeat;
    height: 100vh;
    height: 100dvh;
    width: 100%;
    background-image: url(../img/bg_kv_01.jpg);
    position: relative;
}
.btn {
    border: 2px solid #bc9c50;
    text-align: center;
    letter-spacing: .1em;
    font-size: 13px;
}
.kv_second h1, h2.ttl {
    font-family: Teko, sans-serif;
    letter-spacing: .2em;
    text-align: center;
}
.btn a {
    display: block;
    padding: 8px 0;
    color: #bc9c50;
}
.access, .intro, .menu {
    padding: 40px 20px;
}
h2.ttl {
    font-weight: 600;
    font-size: 32px;
    color: #e4b954;
    line-height: 1;
}
h3.ttl {
    font-size: 20px;
    font-weight: 700;
    font-style: italic;
}
p.txt {
    color: #ccc;
    font-size: 13px;
    line-height: 2;
}
.menu {
    background: url(../img/sp_bg1.jpg) center no-repeat;
    background-size: cover;
}
.access {
    background: url(../img/sp_bg2.jpg) center no-repeat;
    background-size: cover;
}
.access h3, .menu h3 {
    text-align: center;
}
.gallery ul {
    display: flex;
    flex-wrap: wrap;
}
.gallery ul li {
    width: 50%;
}
.gallery img {
    width: 100%;
    height: auto;
}
.gallery h2 {
    padding: 25px;
    margin: 0!important;
    color: #fff!important;
}
.sns {
    padding: 30px 0 10px;
}
.sns div {
    width: 300px;
    margin: 0 auto 20px;
}
.bnr {
    margin: 0 20px;
    padding: 0 0 15px;
}
.insta {
    background: #aaa;
    text-align: center;
    width: 300px;
    height: 400px;
    line-height: 400px;
}
.kv_second {
    height: 80px;
    background: url(../img/bg_kv_01.jpg) center no-repeat;
    background-size: cover;
}
.kv_second h1 {
    font-weight: 600;
    font-size: 32px;
    color: #e4b954;
    line-height: 80px;
    text-shadow: 0 0 8px #000, 0 0 8px #000;
}
.drawer-nav ul li:last-child, dl.shop-info a, footer p, footer small {
    font-family: 'Open Sans', sans-serif;
}
.second, .second-nrw {
    margin: 30px 20px 40px;
}
ul.lcmenu {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
ul.lcmenu li {
    padding: 0 10px 5px;
    font-size: 15px;
    margin-bottom: 3px;
}
ul.lcmenu li i {
    margin-right: 3px;
    vertical-align: 1px;
    font-size: 12px;
}
.second figure img, .second-nrw figure img {
    padding-top: 15px;
    width: 100%;
    height: 100%;
}
.second p, .second-nrw p {
    padding-top: 15px;
    padding-bottom: 30px;
}
.pbn {
    padding-bottom: 0!important;
}
.gallery-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    justify-content: center;
}
.gallery-list li {
    list-style: none;
    margin: 8px;
}
.gallery-list img {
    width: 70px;
    height: 70px;
    border-radius: 50%;
}
#google_translate {
    margin: auto;
    padding: 2px;
    height: 30px;
}
.skiptranslate {
    float: left;
}
a {
    text-decoration: none;
}
.drawer-nav {
    color: #fff;
    z-index: 9999;
}
.drawer-nav ul li {
    border-bottom: 1px solid rgba(255,255,255,.3);
}
.drawer-nav ul li:last-child a:before {
    content: "";
}
.drawer-nav ul li a {
    color: #fff;
    display: block;
    padding: 15px;
}
.drawer-nav ul li:last-child {
    border-bottom: none;
    font-size: 26px;
    line-height: .6;
    margin: 20px 0 60px;
    text-align: center;
    font-weight: 700;
}
.drawer-nav ul li:last-child span {
    font-size: 13px;
}
.drawer-nav ul li:last-child i {
    font-size: 17px;
    vertical-align: 2px;
}
dl.shop-info dd {
    padding: 0 10px 10px;
}
dl.shop-info dt {
    padding: 10px 10px 2px;
    clear: both;
    font-weight: 700;
}
dl.shop-info dd:last-child {
    border-bottom: none!important;
}
dl.shop-info a {
    text-decoration: underline;
    font-weight: 700;
}
footer {
    padding-top: 15px;
    font-size: 13px;
}
footer p {
    font-size: 36px;
    font-weight: 700;
    text-align: center;
}
footer p i {
    font-size: 23px!important;
    vertical-align: 4px;
}
footer small {
    padding: 10px 0;
    font-size: 11px;
    text-align: center;
    display: block;
    color: #fff;
    letter-spacing: .06em;
}
footer small span {
    opacity: .6;
}
#social_share {
    margin: 0 auto 10px!important;
}
#page-top {
    display: block;
    position: fixed;
    z-index: 1;
    bottom: 32px;
    right: 10px;
    font-size: 50px;
}
.fit {
    width: 100%;
    height: auto;
}
.info {
    margin: 40px auto;
    font-size: 13px;
}
}
.fa-x {
    font-size: 13px;
}




.index_html #google_translate {
    z-index: 1;
    position: relative;
}
.index_html header {
    padding: 0 30px 0;
    position: relative;
    height: 100vh;
    height: 100dvh;
}
.index_html h1.logo {
    position: absolute;
    top: 5px;
    left: 5px;
    width: 110px;
    z-index: 1;
    background-color: rgba(255, 149, 1, 0.8);
    transform: translateY(0) translateX(0);
    -webkit-transform: translateY(0) translateX(0);
}
.index_html h1.logo img {
    width: calc(100% - 20px);
    margin: 5px 10px;
}
.index_html header .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #e4b954;
    z-index: 1;
    position: absolute;
    background-color: rgba(255, 149, 1, 0.8);
    top: 0;
    right: 0;
    height: 70px;
}
.index_html header ul {
    display: flex;
}
.index_html header ul li {
    text-align: center;
    padding: 0 24px;
}
.index_html header ul li a{
    padding: 0;
    display: block;
    font-size: 11px;
    color: rgb(255,255,255);
}
.index_html header ul li a:before{
    display: block;
    font-size: 20px;
    padding: 4px 4px 8px;
}
.index_html header iframe {
  position: absolute;
  left: 0;
    top: -100px;
  width: 100vw;
  height: calc(100vh + 80px);
  height: calc(100dvh + 80px);
    overflow: hidden;
}

.index_html .sp header ul {
    flex-direction: column;
    margin-top: 60px;
}
.index_html .sp header ul li {
    padding: 0;
}
.index_html .sp header ul li a {
    color: #484848;
    padding: 10px 0;
    font-size: 12px;
}
.index_html .sp header ul li:last-of-type a {
    padding: 0;
}
.drawer--right.drawer-open .sp .drawer-hamburger{
  right:0!important;
    margin-top: 0;



}
.drawer-hamburger-icon,
.drawer-hamburger-icon:after,
.drawer-hamburger-icon:before {
    background-color: #fff!important;
}
.drawer--right.drawer-open .drawer-hamburger-icon:after,
.drawer--right.drawer-open .drawer-hamburger-icon:before {
    background-color: #484848!important;
}
.ifmbox ul li {
  list-style: none;
  width: auto;
  padding: 0 24px;
  text-align: center;
}
.slidemenu-list {
  position: absolute;
  transform: translateY(50%);
  right: 0;
  width: 320px;
  max-width: 100%;
  transition: all .3s ease-out;
  display: none;
}
.ifmbox li span {
  cursor: pointer;
}
.ifmbox li a, .ifmbox li span {
  padding: 0;
  display: block;
  font-size: 11px;
  color: rgb(255,255,255);
}
.menu-icon::before {
  display: block;
  font-size: 20px;
  padding: 4px 4px 8px;
}
.slidemenu-list.is-open {
  display: block;
}
.slidemenu-list {
  position: absolute;
  transform: translateY(50%);
  right: 0;
  width: 320px;
  max-width: 100%;
  transition: all .3s ease-out;
  display: none;
}
.slidemenu-list ul {
  margin: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0;
}
.index_html header .slidemenu-list ul li {
  list-style: none;
  padding: 12px;
  background-color: #fff;
  margin-bottom: 1px;
  line-height: 1.7;
}
.slidemenu-list ul li.sline a {
  background: url("./img/icons/line5.png") no-repeat center left;
  background-size: auto;
  background-size: auto 20px;
  padding: 0 0 0 32px;
}
.slidemenu-list ul li.sinsta a {background: url("./img/icons/instagram.svg") no-repeat center left;background-size: auto 20px;padding:0 0 0 32px;}
.index_html header .slidemenu-list ul li a {
  display: block;
  font-size: 16px;
  color: #222;
  line-height: 27.2px;
  font-weight: normal;
}
.index_html header .slidemenu-list ul li.menu-close {
  color: #222;
    font-weight: normal;
  cursor: pointer;
  width: 48px;
  padding: 24px 0 4px;
  margin: 8px 0 0 auto;
  background: #fff url("./img/icons/menu/close-kuro.svg") no-repeat center 5px;
    background-size: auto;
  background-size: auto 21px;
  font-size: 11px;
  text-align: center;
}
.cright {
    position: absolute;
    display: block;
    background-color: rgb(43, 43, 43);
    width: 100vw;
    top: calc(100vh - 20px);
    top: calc(100dvh - 20px);
    left: 0;
    text-align: center;
    font-size: 11px;
}
.cright small {
    font-weight: normal;
}
.slide-items {
  width: 100%;
  height: 100vh;
  overflow: hidden;
    z-index: 99;
    position: absolute!important;
}


.slide-items img {
  max-width: 100vw;
  height: 100vh;
  margin:0 auto;
    display:block;
}
.slide-items:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  display: block;
  background-size: 8px 8px;
  mix-blend-mode: screen;
  background-color: rgba(255,255,255,0.2);
  background-image:
    radial-gradient(#000 50%, transparent 60%),
    radial-gradient(#000 50%, transparent 60%);
  background-size: 5px 5px;
}
@media (max-width: 767px) {
    .sp {
        display: none;
    }
  .index_html h1.logo {
    width: 80px;
  }
    .index_html header iframe {
        height: calc(100vh + 25px);
        height: calc(100dvh + 25px);
    }
    .index_html header .inner {
        position: absolute;
        top: calc(100vh - 90px);
        top: calc(100dvh - 90px);
        width: 100vw;
        background-color: rgb(255, 149, 1);
    }
    .ifmbox {
        width: 100%;
        position: relative;
    }
    .index_html header ul {
        justify-content: space-around;
    }
    .slidemenu-list {
        bottom: calc(100% + 120px);
    }
    .index_html header ul li {
        padding: 0;
    }
    .slide-items img {
  width: 100vw;
  height: 100vh;
  object-fit: cover;
  object-position: bottom 0%;
}
}






.d_none {
  animation: fadeOut 4s;
  animation-fill-mode: both; /*0%の時と100%の時の状態を保つ*/
}

@keyframes fadeOut {
    0% {
      opacity: 1; /*初めに存在する*/
    }
    50% {
      opacity: 1; /*初めに存在する*/
    }
    100% {
      opacity: 0; /*最後に消える*/
      display: none!important;
      z-index: 0;
    }
}