@charset "UTF-8";
/*//////////////////////////////////////////////////////////

Copyright (C) apricot-design All Rights Reserved.
------------------------------------------------------------
CSS information
 file name  :  reset.css
 style info :  リセットファイル
 admin info :  apricot-design

//////////////////////////////////////////////////////////*/
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
  display: block;
}

audio[controls], canvas, video {
  display: inline-block;
  *display: inline;
  zoom: 1;
}

html {
  overflow-y: scroll;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, ul {
  margin: 0;
  padding: 0;
}

body, button, input, select, textarea {
  font-size: 100%;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b, strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

pre, code, kbd, samp {
  font-family: monospace, monospace;
  _font-family: "courier new", monospace;
  font-size: 1em;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

q {
  quotes: none;
}
q:before, q:after {
  content: "";
  content: none;
}

small {
  font-size: 75%;
}

sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

ul, ol {
  margin: 0;
  padding: 0;
}

dd {
  margin: 0px;
}

nav ul, nav ol {
  list-style: none;
}

img {
  border: 0;
  -ms-interpolation-mode: bicubic;
}

svg:not(:root) {
  overflow: hidden;
}

figure, form {
  margin: 0;
}

fieldset {
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  *margin-left: -7px;
}

button, input, select, textarea {
  font-size: 100%;
  margin: 0;
  vertical-align: baseline;
  *vertical-align: middle;
}

button, input {
  line-height: normal;
  *overflow: visible;
}

button {
  cursor: pointer;
  -webkit-appearance: button;
}

input[type=button], input[type=reset], input[type=submit] {
  cursor: pointer;
  -webkit-appearance: button;
}
input[type=checkbox], input[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
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;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-size: 100%;
}

img, abbr, acronym, fieldset {
  border: 0;
}

li {
  list-style: none;
}

/*画像を縦に並べた時に余白が出ないように*/
img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
}

/*box-sizingを全ブラウザに対応*/
* {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}
*:before, *:after {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

.ie6_error, .no_script {
  background: #F66;
  padding: 100px;
  text-align: center;
  font-size: 150%;
  color: #333;
}

.flt {
  float: left;
}

.flr {
  float: right;
}

.txt_l, td.txt_l, .txt_l td {
  text-align: left;
}

.txt_r, td.txt_r, .txt_r td {
  text-align: right;
}

.txt_c, td.txt_c, .txt_c td {
  text-align: center;
}

.valign_t, td.valign_t, .valign_t td {
  vertical-align: top;
}

.valign_m, td.valign_m, .valign_m td {
  vertical-align: middle;
}

.valign_b, td.valign_b, .valign_b td {
  vertical-align: bottom;
}

.clear {
  clear: both;
}

.clearfix {
  zoom: 1;
}
.clearfix:before {
  content: "";
  display: block;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.img_bd {
  border: solid 1px #E8E8E8;
}

.c_red {
  color: #FF3425;
}

/*
0:セット
------------------------------------------------------------
*/
html {
  width: 100%;
}

body {
  font-family: "Noto Sans JP", "メイリオ", Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
  color: #562E00;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  text-align: left;
  letter-spacing: 1px;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 15px;
  }
}

.win body {
  font-family: "Noto Sans JP", "メイリオ", Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
}

a {
  text-decoration: none;
  color: #562E00;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
a:link, a:active, a:visited {
  text-decoration: none;
}

.opacity {
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.opacity:hover {
  opacity: 0.5;
}

img {
  max-width: 100%;
  height: auto;
}
img[src$=".svg"] {
  max-width: 100%;
  width: 100%;
  height: auto;
}

.pc {
  display: inherit;
}
@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp {
    display: inherit;
  }
}

img.fit {
  -o-object-fit: cover;
     object-fit: cover;
  /* 他のブラウザ用(＝通常の指定) */
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  /* 他のブラウザ用(＝通常の指定) */
  font-family: "object-fit: cover; object-position: 50% 50%;";
}

/*
//ベース
------------------------------------------------------------
*/
#container_wrap {
  position: relative;
  overflow: hidden;
  min-width: 1200px;
}
@media screen and (max-width: 767px) {
  #container_wrap {
    min-width: 1px;
  }
}

.inner {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
}
.inner::after {
  content: "";
  display: block;
  clear: both;
}
.inner.center {
  text-align: center;
}

.section_wrap {
  padding: 100px 0 0;
}
@media screen and (max-width: 767px) {
  .section_wrap {
    padding: 20% 0 0;
  }
}
.section_wrap.position {
  position: relative;
}

.section_wrapB {
  padding: 100px 0;
}
@media screen and (max-width: 767px) {
  .section_wrapB {
    padding: 20% 0;
  }
}
.section_wrapB.bg_ticket {
  background: url("/wp-content/themes/ncf2020/images/bg_ticket.jpg") center center/cover no-repeat;
  position: relative;
}
.section_wrapB.bg_ticket::after {
  display: none;
  content: "";
  position: absolute;
  width: 50px;
  height: 89px;
  background: url("/wp-content/themes/ncf2020/images/top_illcap.svg") center center/contain no-repeat;
  bottom: -40px;
  left: 32px;
  -webkit-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  transform: rotate(-19deg);
}
@media screen and (max-width: 767px) {
  .section_wrapB.bg_ticket::after {
    display: block;
  }
}

/*
//ヘッダー
------------------------------------------------------------
*/
header {
  margin: 0 auto;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.3);
  width: 100%;
  padding: 15px 15px;
  z-index: 5;
}
@media screen and (max-width: 767px) {
  header {
    background: none;
    padding: 0;
  }
}

.header_box {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .header_box {
    display: block;
    overflow: inherit;
  }
}

.h_logo {
  display: none;
  width: 70px;
}
@media screen and (max-width: 767px) {
  .h_logo {
    display: none;
    padding: 18px 0 0 15px;
  }
}
.h_logo a {
  display: block;
}
.h_logo a:hover {
  opacity: 0.6;
}

.header_left {
  width: 390px;
  margin-left: 30px;
}
@media screen and (max-width: 767px) {
  .header_left {
    width: 100%;
    margin: 0 auto;
    height: 55px;
  }
}

.header_right {
  width: calc(100% - 100px);
}
@media screen and (max-width: 767px) {
  .header_right {
    width: 100%;
  }
}

#gnavi {
  max-width: 900px;
  width: 100%;
  float: right;
}
@media screen and (max-width: 767px) {
  #gnavi {
    display: block;
  }
}
#gnavi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #gnavi ul {
    display: block;
    padding: 70px 15px 20px;
  }
}
#gnavi ul li {
  width: 11.1%;
  line-height: 1;
  text-align: center;
  font-family: "Lexend Exa", sans-serif;
  margin: 0 1.5% 0 0;
}
@media screen and (max-width: 767px) {
  #gnavi ul li {
    width: 100%;
    margin: 0 auto 1.2em;
    font-weight: 700;
    font-family: "Staatliches", cursive;
    letter-spacing: 0.15em;
    font-size: 8vw;
  }
}
#gnavi ul li:last-child {
  margin: 0 0 0 0;
}
#gnavi ul li a {
  display: block;
  position: relative;
  padding: 1em 0;
  color: #562E00;
}
@media screen and (max-width: 767px) {
  #gnavi ul li a {
    color: #562E00;
    position: inherit;
    padding: 0 0 0 0;
  }
}
#gnavi ul li a:hover {
  opacity: 0.6;
}

header.low {
  background: #261d16;
  position: relative;
}
@media screen and (max-width: 767px) {
  header.low {
    padding: 0;
    background: none;
  }
}
header.low #gnavi {
  display: block;
}
header.low #gnavi a {
  color: #fff;
}
@media screen and (max-width: 767px) {
  header.low #gnavi a {
    color: #562E00;
  }
}
header.low .h_logo {
  display: block;
}
@media screen and (max-width: 767px) {
  header.low .h_logo {
    position: absolute;
    top: 0;
  }
}

header.clone-nav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  background: #261d16;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
}
@media screen and (max-width: 767px) {
  header.clone-nav {
    position: inherit;
    top: inherit;
    left: inherit;
    z-index: inherit;
    display: none;
  }
}
header.clone-nav .h_logo {
  display: block;
}
header.clone-nav #gnavi {
  display: block;
}
header.clone-nav #gnavi li {
  line-height: 1;
  text-align: center;
  font-size: 0.85em;
}

.is-show {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

@media screen and (max-width: 767px) {
  .menu-trigger,
.menu-trigger span {
    display: inline-block;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}

@media screen and (max-width: 767px) {
  .menu-trigger {
    position: fixed;
    top: 0;
    right: 0;
    width: 60px;
    height: 60px;
    z-index: 3;
    text-align: center;
    cursor: pointer;
    color: #fff;
    background: rgba(38, 20, 2, 0.9);
  }
  .menu-trigger span {
    position: absolute;
    z-index: 4;
    left: 0;
    width: 45%;
    height: 2px;
    background: #fff;
    right: 0;
    margin: auto;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 38%;
  }
  .menu-trigger span:nth-of-type(2) {
    bottom: 38%;
  }
  .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(20px) rotate(-45deg);
        -ms-transform: translateY(20px) rotate(-45deg);
            transform: translateY(20px) rotate(-45deg);
    top: 15%;
  }
  .menu-trigger.active span:nth-of-type(2) {
    -webkit-transform: translateY(-20px) rotate(45deg);
        -ms-transform: translateY(-20px) rotate(45deg);
            transform: translateY(-20px) rotate(45deg);
    bottom: 15%;
  }
}

@media screen and (max-width: 767px) {
  #overlay {
    display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 3;
    overflow-y: scroll;
    background: rgb(255, 255, 255);
  }
}

/*
//フッター
------------------------------------------------------------
*/
#footer {
  width: 100%;
  overflow: hidden;
  background: #261d16;
  padding: 0 15px;
}

.footer_box {
  max-width: 1100px;
  margin: 0 auto;
  width: 100%;
  padding: 70px 0 15px;
  overflow: hidden;
}

.f_logo {
  text-align: center;
  display: block;
  width: 100px;
  margin: 0 auto 50px;
}

.copy {
  color: #fff;
  padding: 0;
  font-size: 0.87em;
  text-align: center;
}

/*
5:div
------------------------------------------------------------
*/
.bosyu_box {
  max-width: 800px;
  margin: 2rem auto 0;
  padding: 2rem 3rem;
  border: 1px #562E00 solid;
  border-radius: 15px;
}
@media screen and (max-width: 767px) {
  .bosyu_box {
    padding: 2rem 15px;
  }
}
.bosyu_box .big {
  font-size: 1.07rem;
  margin-bottom: 1.5rem;
  text-align: center;
  font-weight: 700;
}
.bosyu_box a {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(30%, rgba(242, 177, 64, 0.7)));
  background: -o-linear-gradient(transparent 70%, rgba(242, 177, 64, 0.7) 30%);
  background: linear-gradient(transparent 70%, rgba(242, 177, 64, 0.7) 30%);
}

.main_img {
  background: url("/wp-content/themes/ncf2020/images/main_img.jpg") center center/cover no-repeat;
  width: 100%;
  height: 100vh;
  position: relative;
  color: #fff;
}
.main_img .box {
  position: absolute;
  top: 75%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  left: 0;
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .main_img .box {
    top: 70%;
  }
}
.main_img .main_txt1 {
  display: inline-block;
  border-top: 1px #fff solid;
  border-bottom: 1px #fff solid;
  font-size: 1.8em;
  font-weight: 700;
  padding: 0.3em 2em;
  margin-top: 3em;
  line-height: 1.5;
  font-family: "Lexend Exa", sans-serif;
}
@media screen and (max-width: 767px) {
  .main_img .main_txt1 {
    border: none;
    font-size: 6.2vw;
    margin-top: 0;
    padding: 0 15px;
  }
}
.main_img .main_txt1 .big {
  display: block;
  font-size: 1.5em;
}
.main_img .main_txt1 .min {
  display: inline-block;
  margin-left: 5px;
  letter-spacing: 0.1em;
  font-size: 0.7em;
}
.main_img .main_txt2 {
  line-height: 2em;
  margin-top: 1em;
  font-size: 1.3em;
  font-weight: 700;
}
.main_img .main_logo {
  text-align: center;
  margin: 0 auto;
  top: 43%;
  position: absolute;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .main_img .main_logo {
    top: 37%;
  }
}
.main_img .main_logo img {
  display: block;
  max-width: 300px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .main_img .main_logo img {
    width: 65%;
  }
}
.main_img .main_logo .ttl_obuse {
  text-align: center;
  font-family: "Lexend Exa", sans-serif;
  display: block;
  padding: 0.2em 0 0;
  font-size: 1.8em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .main_img .main_logo .ttl_obuse {
    font-size: 2em;
  }
}
.main_img .scroll {
  color: #fff;
  text-align: center;
  display: block;
  position: absolute;
  bottom: 120px;
  left: 50px;
  letter-spacing: 0.15em;
  margin: 0 auto;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  -webkit-animation: scroll1 3s ease 1s infinite forwards;
          animation: scroll1 3s ease 1s infinite forwards;
}
@media screen and (max-width: 767px) {
  .main_img .scroll {
    left: 5px;
    bottom: 160px;
  }
}
.main_img .scroll::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 100px;
  background: url("/wp-content/themes/ncf2020/images/scroll_line.svg") center center/contain no-repeat;
  top: 70px;
  left: 45%;
}

.low_main_img {
  background: url("/wp-content/themes/ncf2020/images/low_main_shop.jpg") center center/cover no-repeat;
  width: 100%;
  height: 300px;
  position: relative;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .low_main_img {
    height: 200px;
  }
}

@-webkit-keyframes scroll1 {
  0% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  50% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}

@keyframes scroll1 {
  0% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  50% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}
.map {
  position: relative;
  margin: 60px auto 10%;
}
@media screen and (max-width: 767px) {
  .map {
    margin: 10% auto 15%;
  }
}
.map::before {
  content: "";
  display: block;
  padding: 30% 0 0;
}
@media screen and (max-width: 767px) {
  .map::before {
    padding: 70% 0 0;
  }
}
.map > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  height: 100%;
}

.copy_txt {
  text-align: center;
  font-size: 1.07em;
  line-height: 2.5em;
  position: relative;
}
.copy_txt .big {
  margin-bottom: 1.5em;
  display: block;
  font-size: 1.5em;
  letter-spacing: 0.1em;
  line-height: 2em;
}
.copy_txt::after {
  display: none;
  content: "";
  position: absolute;
  width: 62px;
  height: 85px;
  background: url("/wp-content/themes/ncf2020/images/top_illkanban.svg") center center/contain no-repeat;
  bottom: -58px;
  right: 0px;
}
@media screen and (max-width: 767px) {
  .copy_txt::after {
    display: block;
  }
}

.inbox {
  background: #fff;
  width: 50%;
  padding: 30px;
  text-align: left;
  margin-top: 30px;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .inbox {
    padding: 0;
    width: 100%;
    margin: 0 auto 15%;
  }
}
.inbox .top_ttl {
  text-align: left;
}

.img_box {
  position: absolute;
  top: 100px;
  right: 0;
  z-index: -1;
  width: 70%;
  height: 500px;
}
@media screen and (max-width: 767px) {
  .img_box {
    position: inherit;
    width: 100%;
    height: 250px;
    top: inherit;
    right: inherit;
  }
}
.img_box.event {
  background: url("/wp-content/themes/ncf2020/images/event_bg.jpg") center center/cover no-repeat;
}

.event_txt {
  text-align: left;
  font-size: 1.3em;
  font-weight: 700;
  line-height: 1.7;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767px) {
  .event_txt {
    font-size: 1.5em;
  }
}
.event_txt .en {
  font-size: 1.21em;
  font-family: "Lexend Exa", sans-serif;
}

.event_txt2 {
  margin-bottom: 0.5em;
  text-align: left;
  font-size: 1.5em;
  font-weight: 700;
  line-height: 2;
  padding: 1rem 0;
}
@media screen and (max-width: 767px) {
  .event_txt2 {
    font-size: 1.21em;
    line-height: 2.5;
  }
}

.event_txt3 {
  margin-bottom: 0.5em;
  text-align: left;
  font-size: 1.5em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .event_txt3 {
    font-size: 5.3vw;
    line-height: 2.5;
  }
}
.event_txt3 a {
  position: relative;
  display: inline-block;
  padding: 0px 28px 0 0;
}
.event_txt3 a::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 27px;
  background: url("/wp-content/themes/ncf2020/images/icon_map.svg") center center/contain no-repeat;
  right: 0;
  top: 20%;
}
.event_txt3 span {
  border-bottom: 2px rgba(242, 177, 64, 0.7) dashed;
  letter-spacing: 0.4em;
  font-size: 1.13em;
  position: relative;
}
.event_txt3 span::after {
  content: "";
  position: absolute;
  content: "";
  width: 30px;
  height: 32px;
  background: url("/wp-content/themes/ncf2020/images/top_ill3.svg") center center/contain no-repeat;
  bottom: -5px;
  right: -50px;
  -webkit-transform: rotate(10deg);
      -ms-transform: rotate(10deg);
          transform: rotate(10deg);
}

.access_box {
  text-align: center;
}

.access_box2 {
  background: rgba(255, 255, 255, 0.9);
  padding: 10% 5%;
  text-align: center;
}

.basic_txt {
  line-height: 2;
  font-size: 1.2em;
}
@media screen and (max-width: 767px) {
  .basic_txt {
    font-size: 1rem;
  }
}
.basic_txt.mb {
  margin: 0 auto 40px;
}
.basic_txt.center {
  text-align: center;
}
.basic_txt .big {
  font-weight: 700;
  font-size: 1.5rem;
}
@media screen and (max-width: 767px) {
  .basic_txt .big {
    font-size: 1.07rem;
  }
}

.left_txt {
  text-align: left;
  margin-bottom: 1rem;
}
.left_txt.mb {
  margin-bottom: 3rem;
}
.left_txt a {
  border-bottom: 1px #562E00 solid;
  display: inline-block;
}

.ncf_map {
  max-width: 308px;
  width: 100%;
  margin: 0 auto 8%;
}
@media screen and (max-width: 767px) {
  .ncf_map {
    margin: 0 auto 13%;
  }
}

.flex_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
}
.flex_box .left {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .flex_box .left {
    width: 100%;
    margin: 0 auto 10%;
  }
}
.flex_box .right {
  width: 50%;
  padding: 0 0 0 30px;
}
@media screen and (max-width: 767px) {
  .flex_box .right {
    width: 100%;
    padding: 0;
  }
}

/*
6:ul
------------------------------------------------------------
*/
.list_shop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0 auto 5%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.list_shop li {
  width: 32%;
  margin: 0 2% 5% 0;
}
.list_shop li:nth-child(3n) {
  margin: 0 0 5% 0;
}
@media screen and (max-width: 767px) {
  .list_shop li {
    width: 48%;
    margin: 0 4% 4% 0;
  }
  .list_shop li:nth-child(3n) {
    margin: 0 4% 4% 0;
  }
  .list_shop li:nth-child(2n) {
    margin: 0 0 4% 0;
  }
}
.list_shop dd {
  position: relative;
  overflow: hidden;
  margin: 0 0 20px;
}
.list_shop dd::before {
  content: "";
  display: block;
  padding: 100% 0 0;
}
.list_shop dd img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.list_two {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 600px;
  margin: 0 auto 5%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .list_two {
    display: block;
    margin: 0 auto 15%;
  }
}
@media screen and (max-width: 767px) {
  .list_two li:first-child {
    margin: 0 auto 30px;
  }
}

.list_archive {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.list_archive li {
  width: 48%;
  margin: 0 4% 5% 0;
}
.list_archive li:last-child {
  margin: 0 0 5% 0;
}
.list_archive li:nth-child(2n) {
  margin: 0 0 5% 0;
}
.list_archive li a {
  height: 60px;
  line-height: 60px;
  font-size: 1.2em;
  border-radius: 15px;
  display: block;
  text-align: center;
  background: #3d2312;
  color: #fff;
  border: 1px #3d2312 solid;
}
.list_archive li a:hover {
  color: #3d2312;
  background: #fff;
}

.sns_list {
  max-width: 150px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  .sns_list {
    margin: 0 auto;
  }
}
.sns_list.center {
  margin: 0 auto 40px;
}
.sns_list li.icon_insta {
  width: 50px;
}
.sns_list li.icon_fb {
  width: 50px;
}
.sns_list li a {
  display: block;
}
.sns_list li a:hover {
  opacity: 0.6;
}

/*
7:dl
------------------------------------------------------------
*/
/*
8:table
------------------------------------------------------------
*/
.shop_table {
  table-layout: fixed;
  text-align: left;
  margin-bottom: 10%;
}
.shop_table th {
  border-bottom: 1px #E3A980 dashed;
  width: 30%;
  padding: 1em 1em;
}
@media screen and (max-width: 767px) {
  .shop_table th {
    padding: 1em 0;
  }
}
.shop_table td {
  width: 70%;
  border-bottom: 1px #E3A980 dashed;
  padding: 1em 1em;
}
@media screen and (max-width: 767px) {
  .shop_table td {
    padding: 1em 0 1em 1em;
  }
}

/*
9:タイトル
------------------------------------------------------------
*/
.top_ill {
  max-width: 275px;
  width: 100%;
  margin: 0 auto 25px;
}

.top_ttl {
  font-size: 3.5em;
  margin: 0 auto 1em;
  text-align: center;
  position: relative;
  line-height: 1;
  font-family: "Staatliches", cursive;
}
@media screen and (max-width: 767px) {
  .top_ttl {
    font-size: 15vw;
    margin: 0 auto 0.8em;
  }
}
.top_ttl .jp {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.38em;
  display: block;
  margin-top: 0.5em;
}
@media screen and (max-width: 767px) {
  .top_ttl .jp {
    font-size: 16px;
  }
}
.top_ttl.left {
  font-size: 4em;
  display: inline-block;
  padding: 0 0 0 0;
  position: relative;
}
@media screen and (max-width: 767px) {
  .top_ttl.left {
    font-size: 15vw;
  }
}
.top_ttl.left .jp {
  display: inline-block;
  margin-top: 0em;
  padding-left: 50px;
  font-size: 0.27em;
}
.top_ttl.left::after {
  content: "";
  position: absolute;
  width: 2px;
  height: 80px;
  background: #562E00;
  -webkit-transform: rotate(40deg);
      -ms-transform: rotate(40deg);
          transform: rotate(40deg);
  top: -10px;
  right: 35%;
}

.low_main_ttl {
  position: absolute;
  right: 0;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 4em;
  padding: 0em;
  font-weight: 700;
  text-align: center;
  font-family: "Lexend Exa", sans-serif;
  line-height: 1.5;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
  .low_main_ttl {
    font-size: 3em;
  }
}
.low_main_ttl .jp {
  line-height: 1;
  letter-spacing: 0.1em;
  display: block;
  font-size: 0.25em;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 767px) {
  .low_main_ttl .jp {
    font-size: 0.4em;
  }
}

.sub_ttl {
  font-size: 1.65em;
  text-align: center;
  margin: 0 auto 1.5em;
  position: relative;
  display: inline-block;
  padding: 15px 0.8em 0px;
  background: url("/wp-content/themes/ncf2020/images/top_ill4.svg") 50% 0%/20px 20px no-repeat;
}
.sub_ttl::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 7px;
  background: -o-repeating-linear-gradient(135deg, #F2B140, #F2B140 2px, #fff 2px, #fff 4px);
  background: repeating-linear-gradient(-45deg, #F2B140, #F2B140 2px, #fff 2px, #fff 4px);
}
.sub_ttl.en {
  font-size: 3em;
  font-family: "Staatliches", cursive;
}

.sub_ttl2 {
  font-size: 1.65em;
  text-align: center;
  margin: 0 auto 1.5em;
  position: relative;
  display: inline-block;
  padding: 60px 0.8em 0px;
  background: url("/wp-content/themes/ncf2020/images/top_illtakeout.svg") 50% 0%/40px 59px no-repeat;
}
.sub_ttl2::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 7px;
  background: -o-repeating-linear-gradient(135deg, #90BCC7, #90BCC7 2px, #fff 2px, #fff 4px);
  background: repeating-linear-gradient(-45deg, #90BCC7, #90BCC7 2px, #fff 2px, #fff 4px);
}
.sub_ttl2.en {
  font-size: 3em;
  font-family: "Staatliches", cursive;
}

.soon_txt {
  font-size: 1.4em;
  letter-spacing: 0.25em;
  font-family: "Lexend Exa", sans-serif;
  font-weight: 700;
  position: relative;
  padding: 0 0 50px 0;
}
.soon_txt::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 60px;
  background: url("/wp-content/themes/ncf2020/images/icon_soon.svg") center center/contain no-repeat;
  right: 0;
  left: 0;
  bottom: 0;
}

.shop_ttl3 {
  font-size: 2em;
  text-align: center;
  margin: 0 auto 1.5em;
  position: relative;
  display: inline-block;
  padding: 0px 0.8em 0px;
  font-family: "Staatliches", cursive;
}
.shop_ttl3::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  width: 30px;
  height: 2px;
  background: #562E00;
  margin: 0 auto;
}
.shop_ttl3.en {
  font-size: 3em;
  font-family: "Staatliches", cursive;
}

/*
10：装飾
------------------------------------------------------------
*/
.bg_gray {
  background: #ccc;
}
.bg_white {
  background: #fff;
}
.bg_black {
  background: #000;
}

.txt_clr_gray {
  color: #ccc;
}
.txt_clr_white {
  color: #fff;
}
.txt_clr_black {
  color: #000;
}
.txt_clr_blue {
  color: #95C7D4;
}

/*
11:ボタン系
------------------------------------------------------------
*/
#topcontrol {
  width: 70px;
  height: 50px;
  background: url("/wp-content/themes/ncf2020/images/pagetop.svg") no-repeat center/auto 100%;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
#topcontrol:hover {
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
  -webkit-transform: translateY(-20px);
      -ms-transform: translateY(-20px);
          transform: translateY(-20px);
}

.more {
  width: 250px;
  height: 60px;
  line-height: 60px;
  border: 1px #1E120A solid;
  display: block;
  text-align: center;
  font-size: 0.93em;
  color: #2D220F;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .more {
    font-size: 1em;
  }
}
.more:hover {
  background: #1E120A;
  color: #fff;
}

/*
12:その他パーツ
------------------------------------------------------------
*/
#list_breadcrumb {
  font-size: 0.87em;
  padding: 1em 0;
  margin: 0;
}

/*
13:コンタクトフォーム
------------------------------------------------------------
*/
.contactform {
  margin: 30px auto 2em;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .contactform {
    margin-bottom: 1em;
  }
}
.contactform tr:last-child {
  border-bottom: none;
}
.contactform tr th {
  padding: 1.5em 1em 1em 0;
  color: #040000;
  text-align: left;
  vertical-align: top;
  width: 25%;
}
@media screen and (max-width: 767px) {
  .contactform tr th {
    width: 100%;
    display: block;
    padding: 0 0 0.5em;
  }
}
.contactform tr td {
  width: 75%;
  padding: 1em;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .contactform tr td {
    width: 100%;
    display: block;
    padding: 0 0 1em;
  }
}

input,
textarea,
select {
  width: 100%;
  padding: 1em;
  border-radius: 5px;
  border: 1px solid #ccc;
  font-family: "Noto Sans JP", sans-serif;
}

textarea {
  height: 250px;
}

span.mwform-tel-field input {
  width: 25% !important;
}

.button_form {
  width: 250px;
  height: 60px;
  line-height: 60px;
  border: 1px #1E120A solid;
  display: block;
  text-align: center;
  font-size: 0.93em;
  color: #2D220F;
  margin: 0 auto 30px;
  background: #fff;
  padding: 0;
  font-family: "Noto Sans JP", sans-serif;
}

.required {
  font-size: 0.75em;
  display: inline-block;
  margin-left: 1em;
  line-height: 1;
  color: red;
}

.mw_wp_form_complete {
  background: #F9EDDC;
  padding: 1em;
  text-align: center;
  margin: 40px auto 20px;
}

/*------------------------
	コンタクトフォーム7用
--------------------------*/
/*
.wpcf7-textarea {
	width: 90%;
}
.wpcf7-text {
	width: 60%;
}
.zip1 {
	width: 60px;
}
.zip2 {
	width: 100px;
}
.formtel {
	width: 100px;
	height: 16px;
}
.wpcf7-form-control wpcf7-text zip {
	width: 30%;
}
.addr {
	width: 90%;
}
.contactformsubmit {
	text-align: center;
	height: 60px;
	margin-top: 30px;
}
.wpcf7-submit {
	background: #000;
	color: #FFF;
	text-align: center;
	font-weight: bold;
	border-radius: 5px;
	display: block;
	margin: 0 auto;
	padding: 15px 40px;
	border: none;
}
.wpcf7-submit:hover {
	text-decoration: none;
	opacity: .8;
} */
/*
animation
------------------------------------------------------------
*/
.u_line {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(30%, rgba(242, 177, 64, 0.7)));
  background: -o-linear-gradient(transparent 70%, rgba(242, 177, 64, 0.7) 30%);
  background: linear-gradient(transparent 70%, rgba(242, 177, 64, 0.7) 30%);
}

.u_lineB {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(30%, rgba(149, 199, 212, 0.7)));
  background: -o-linear-gradient(transparent 70%, rgba(149, 199, 212, 0.7) 30%);
  background: linear-gradient(transparent 70%, rgba(149, 199, 212, 0.7) 30%);
}

/*商品カルーセル*/
.gallery {
  margin: 0 auto;
  overflow: hidden;
}
.gallery dt {
  margin: 0 0 1.2% 0;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.gallery dt::before {
  content: "";
  display: block;
  padding: 100% 0 0;
}
.gallery dt img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (max-width: 767px) {
  .list_thumbnail {
    margin: 0 auto 0px;
  }
}
.list_thumbnail li {
  float: left;
  cursor: pointer;
  width: 32%;
  margin: 0 2% 2% 0;
  position: relative;
  overflow: hidden;
}
.list_thumbnail li::before {
  content: "";
  display: block;
  padding: 100% 0 0;
}
.list_thumbnail li:nth-child(3n) {
  margin: 0 0 2% 0;
}
.list_thumbnail li:last-child {
  margin: 0 0 2% 0;
}
.list_thumbnail .thumbnail {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

#sb_instagram .sbi_photo .caption {
  width: 100%;
  height: 100%;
  padding: 6px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: auto;
  background-color: rgba(3, 27, 56, 0.7);
  color: #fff;
  font-size: 0.93em;
  line-height: 1.5;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-out;
  -o-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}

#sb_instagram .sbi_photo:hover .caption,
#sb_instagram .sbi_photo:focus .caption {
  opacity: 1;
}

#sb_instagram .sbi_photo:hover .fa-clone,
#sb_instagram .sbi_photo:focus .fa-clone {
  display: none !important;
}

#sb_instagram #sbi_load {
  margin-top: 30px;
}